похоже на старое новьё ?
похоже на старое новьё ?
С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
Надо б почитать, гы.
goodboy, положи сюда.
кусок журнального кода выполняется некорректно. мне пока трудно понять кто виноват: некорректный FDIобраз или эмуляция ВГшки.
знатоки объясните что тут делается
DOS это выполнение программы в ПЗУtrdos по-адресу в IX.Код:PUSH HL PUSH BC PUSH DE XOR A LD C,#3F LD IX,#2A53 ; out (c),a CALL #DOS ; ret LD A,#0A LD C,#5F LD IX,#2A53 ; out (c),a CALL #DOS ; ret LD D,#01 LD IX,#3F33 ; ??? CALL #DOS LD A,#02 LD C,#3F LD IX,#2A53 ; out (c(a) CALL #DOS ; ret LD A,B POP DE POP BC POP HL AND #1F CP #08 JP Z,NEXT ERROR
Последний раз редактировалось goodboy; 22.01.2014 в 23:42.
Я не знаток, но прокомментировал в коде.
Надо ставить точку останова на ERROR, и смотреть, что в аккумуляторе и запостить сюда. Еще интересно знать, какую команду выполняла ВГэйка.
Посмотреть в анриле. Запостить.
Как? На скриншоте выделено. Красный квадратик - код команды ВГ, желтый квадратик состояние ВГ.
P.S. Желательно отключить trap и no_delay в анриле.
В этом листинге приведен классический алгоритм процедуры чтения регистра состояний #1f ("ZX-Spectrum & TR-DOS Для пользователей и программистов" А.Ларченко и Н.Родинов. Питер'93, с.211:
На выходе, в регистре b будет находиться значение регистра состояний #1f, т.е. таким способом эмулируется команда in b,(#1f). Однако, при выполнении данной процедуры будут запорчены регистры дорожки #3f и сектора #5f, поэтому, при необходимости, следует восстановить в них исходные значения.Код:(c) Andrew MOA Larchenko in_1f out (#3f),0 out (#5f),#a ld d,#01 jp #3f33
Расшифровка данных из регистра b, полученных после чтения регистра состояний #1f:
Когда на твой вопрос отвечает философ, перестаешь понимать вопрос
goodboy, а на реале пробовал?
ну а вдруг?)
Хороший.. Плохой.. Главное - у кого ружьё !!
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)