User Tag List

Страница 6 из 18 ПерваяПервая ... 2345678910 ... ПоследняяПоследняя
Показано с 51 по 60 из 178

Тема: Справочник по Z80?

  1. #51

    Регистрация
    01.03.2005
    Адрес
    Новосибирск
    Сообщений
    2,081
    Спасибо Благодарностей отдано 
    88
    Спасибо Благодарностей получено 
    480
    Поблагодарили
    145 сообщений
    Mentioned
    7 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от litwr Посмотреть сообщение
    Несложно догадаться, что RETI при выходе из маскируемого прерывания, если обработчик флаги не менял, просто опять запишет запрет на прерывания. Поэтому Z80 и требует EI перед RET/RETI. Если RETI используется для выхода из немаскируемого прерывания, то флаг прерывания восстановится таким, каким он был на старте обработчика. Ничего в IFF2 не копируется - в официальных доках ошибка.
    Вроде как эти команды в связке с Z80-DMA актуальны...

  2. #52

    Регистрация
    27.02.2005
    Адрес
    москва
    Сообщений
    14,293
    Записей в дневнике
    1
    Спасибо Благодарностей отдано 
    203
    Спасибо Благодарностей получено 
    1,456
    Поблагодарили
    946 сообщений
    Mentioned
    18 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от litwr Посмотреть сообщение
    Добавлю вроде бы лучшую книжку, где про Z80 изложено наверное всё.
    переведи пожалуйста вот этот момент
    "The INI/INIR/IND/INDR instructions use BC after decrementing B, and the OUTI/OTIR/OUTD/OTDR instructions before"

  3. #53

    Регистрация
    04.07.2012
    Адрес
    г. Москва
    Сообщений
    578
    Спасибо Благодарностей отдано 
    5
    Спасибо Благодарностей получено 
    88
    Поблагодарили
    43 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Э-э-э, а что тут переводить?

    Инструкции INI/INIR/IND/INDR сначала декрементируют B, после чего используют BC, а инструкции OUTI/OTIR/OUTD/OTDR - наоборот.

  4. #54

    Регистрация
    03.07.2021
    Адрес
    г. Кировск
    Сообщений
    922
    Спасибо Благодарностей отдано 
    87
    Спасибо Благодарностей получено 
    211
    Поблагодарили
    156 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от haywire Посмотреть сообщение
    инструкции OUTI/OTIR/OUTD/OTDR - наоборот
    Встречал инфу, что декремент идет ДО команд вывода в порт. Тут же, где-то на форуме. И адреса #BFFD/#FFFD для AY превращаются в #BEFD/#FEFD.
    Однако муз. плееры для AY работают без проблем, потому как в дешифрации AY бит 8 не участвует.

  5. #55

    Регистрация
    27.02.2005
    Адрес
    москва
    Сообщений
    14,293
    Записей в дневнике
    1
    Спасибо Благодарностей отдано 
    203
    Спасибо Благодарностей получено 
    1,456
    Поблагодарили
    946 сообщений
    Mentioned
    18 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от reddie Посмотреть сообщение
    декремент идет ДО команд вывода в порт.
    так и есть.

  6. #56

    Регистрация
    07.10.2006
    Сообщений
    1,730
    Спасибо Благодарностей отдано 
    257
    Спасибо Благодарностей получено 
    275
    Поблагодарили
    167 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от litwr Посмотреть сообщение
    Несложно догадаться, что RETI при выходе из маскируемого прерывания, если обработчик флаги не менял, просто опять запишет запрет на прерывания. Поэтому Z80 и требует EI перед RET/RETI. Если RETI используется для выхода из немаскируемого прерывания, то флаг прерывания восстановится таким, каким он был на старте обработчика. Ничего в IFF2 не копируется - в официальных доках ошибка. Об этом и другая информация про Z80 изложена на русском года 3 назад - буду рад добавочной информации и критическим замечаниям.
    В IFF2 ничего не копируется - копируется сам флаг IFF2 во флаг IFF1 при выполнении команд RETI/RETN. Но при заходе в маскируемое прерывание в оба флага заносится 0. Поэтому при выполнении RETI/RETN на выходе из маскируемого прерывания прерывания будут запрещены. А при выполнении RETI/RETN при выходе из НЕмаскируемого прерывания восстановится состояние маскируемых прерываний до входа в немаскируемое (IFF1:=IFF2).

    - - - Добавлено - - -

    Цитата Сообщение от haywire Посмотреть сообщение
    Инструкции INI/INIR/IND/INDR сначала декрементируют B, после чего используют BC, а инструкции OUTI/OTIR/OUTD/OTDR - наоборот.
    Наоборот. INI/INIR/IND/INDR сначала читают из порта, потом декрементируют B,
    OUTI/OTIR/OUTD/OTDR сначала декрементируют B, потом выводят в порт.

    Этот пользователь поблагодарил Spectramine за это полезное сообщение:

    Ped7g(01.02.2022)

  7. #57

    Регистрация
    11.01.2008
    Адрес
    Ладошкино
    Сообщений
    1,811
    Записей в дневнике
    4
    Спасибо Благодарностей отдано 
    386
    Спасибо Благодарностей получено 
    339
    Поблагодарили
    244 сообщений
    Mentioned
    14 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Блочные инструкции хорошо работают в реальных процессорах, и немножко нехорошо - в эмуляторах В некоторых правда - уже хорошо.
    Вот видео теста флагов , полулегендарный как-бы-советский клон Т34
    А вот флаги SCF\CCF на разных процессорах точно работают по разному)) Но это надо тестировать еще на чем нибудь, кроме жменьки моих процессоров ) Некомуу
    Последний раз редактировалось zebest; 27.01.2022 в 22:36.
    Profi v3.2 -=- Speccy2010,r2

  8. #58

    Регистрация
    16.08.2005
    Адрес
    Estonia,Tallinn
    Сообщений
    1,131
    Спасибо Благодарностей отдано 
    55
    Спасибо Благодарностей получено 
    257
    Поблагодарили
    195 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от zebest Посмотреть сообщение
    Вот видео теста флагов , полулегендарный как-бы-советский клон Т34
    а что за утилита? где скачать?

  9. #59

    Регистрация
    11.01.2008
    Адрес
    Ладошкино
    Сообщений
    1,811
    Записей в дневнике
    4
    Спасибо Благодарностей отдано 
    386
    Спасибо Благодарностей получено 
    339
    Поблагодарили
    244 сообщений
    Mentioned
    14 Post(s)
    Tagged
    0 Thread(s)
    Profi v3.2 -=- Speccy2010,r2

    Эти 2 пользователя(ей) поблагодарили zebest за это полезное сообщение:

    litwr(28.01.2022), Raydac(28.01.2022)

  10. #60

    Регистрация
    16.12.2014
    Адрес
    г. Ожерелье
    Сообщений
    769
    Спасибо Благодарностей отдано 
    252
    Спасибо Благодарностей получено 
    46
    Поблагодарили
    42 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от drbars Посмотреть сообщение
    Вроде как эти команды в связке с Z80-DMA актуальны...
    Реально для Спека, Амстрада и большинство компов на Z80 RETI и RET работают абсолютно одинаково. Особый эффект от RETI возникает только если используется режим 2 и есть дополнительная аппаратура для его поддержки (это не только Z80-DMA). И подозреваю, что из NMI никакой код по RETI не выходит.

    Цитата Сообщение от zebest Посмотреть сообщение
    Блочные инструкции хорошо работают в реальных процессорах, и немножко нехорошо - в эмуляторах В некоторых правда - уже хорошо.
    Интересно! Не знал про такие открытия. Наверное есть только два варианта таких штук: NMOS и CMOS. И трудно понять, неужели это может быть важно? Что это может быть за код, который проверяет флаги PF или HF после OTxR/INxR?! Особенно на Спектруме или приставке для BBC Micro. В официальной документации эти флаги имеют неопределённое значение.
    Последний раз редактировалось litwr; 28.01.2022 в 23:13.

Страница 6 из 18 ПерваяПервая ... 2345678910 ... ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •