Недокументированные особенности КР1818ВГ93 — ZXNet «code.zx»

Недокументированные особенности КР1818ВГ93

ZXNet echo conference «code.zx»



from: Дмитрий Лимонов
to: All
date: 12 December 2006
Hello, All После операции чтения/записи сектора возникает необходимость чтения порта #1F, на предмет проверки возникновения ошибки на предыдущей операции. В TR-DOS мне попался следующий кусок (по адресу #3EF3): ┌─- CODE ─── IN H,(C) .wait; IN; A,(#FF) AND #C0 JR Z,.wait EI RET M DI IN A,(#7F) JR .wait └── CODE ─── Понятно, что напрямую эту часть для чтения произвольного порта не получится, т.к. после завершения команда чтения/записи сектора это приведет к зацикливанию. Hо этого можно избежать. После завершения какой-либо операции мы посылаем в регистр #1F код #E0 (команда "сырого" чтения дорожки). Эта команда не изменяет содержимое регистра состояния до своего завершения, а значит считываемое значение состояние контроллера остается от предыдущей операции. Посылка же команды "сырого" чтения дорожки контроллеру позволяла всего лишь избежать зацикливания. Hу вот, всю идею я вроде описал, а теперь мне интересно, чтобы кто-нибудь проверил это на реальных машинах, потому что в эмуляторах это, кажется, не учитывается. Можно ли использовать данный трюк при программировании контроллера ВГ93? Будет ли он работать на всех машинах?

from: Evgeny Muchkin
to: All
date: 13 December 2006
Hello, EARL Если не ошибаюсь, то как раз этот момент в ПЗУ все и используют для вышеописанной надобности чтения любого порта TR-DOS (например если посмотреть 35 номер ZXNews - статья про CMOS часы). :)

from: Марк Антонов
to: All
date: 13 December 2006
Hello, Evgeny Muchkin Evg> Если не ошибаюсь, то как раз этот момент в ПЗУ все и используют для Evg> вышеописанной надобности чтения любого порта TR-DOS (например если Evg> посмотреть 35 номер ZXNews - статья про CMOS часы). нет, в прошивках трдос профпзу (всех версий) по одним и тем же адресам адресам #3ffx прошиты out (c),a ret и in a,(c) ret но ориентироваться на это само собой нельзя

from: Дмитрий Лимонов
to: All
date: 13 December 2006
Hello, Evgeny Muchkin Evg> Если не ошибаюсь, то как раз этот момент в ПЗУ все и используют для Evg> вышеописанной надобности чтения любого порта TR-DOS (например если Evg> посмотреть 35 номер ZXNews - статья про CMOS часы). :) Во как оказывается! А я и не знал. Похоже я слишком отстал от жизни и прогресса в мире спектрума :v2_blink: