Ну вот эт другое дело .... Щас сделаю )))
---------- Post added at 22:31 ---------- Previous post was at 22:23 ----------
Пробовал с FF - то же самое.
Ну вот эт другое дело .... Щас сделаю )))
---------- Post added at 22:31 ---------- Previous post was at 22:23 ----------
Пробовал с FF - то же самое.
у меня трассировка медленная - я втыкаюсь в клавиатурный порт и пишусь в текстовом редакторе. Могу запуститься по известному критерию и вывести содержимое нужных регистров, но не всю трассировку вывести. А как можно делать трассировкуиз эмуляторов?
Есть ещё один момент: я не инициализирую I при включении питания и сбросе. Это плохо?
Последний раз редактировалось Lisitsin; 02.12.2011 в 23:46.
Дровишки из лесуоно так для контроллера прерываний
![]()
а вот для нашего случая адрес берут из FF и (FF+1)
Сорри что немного ввел в заблуждение.
Короче не вдаваясь в лишние подробности для примера :
LD A,#C0
LD I,A
IM2
будет исполнятся примерно так :
PUSH PC
LD PC,(#C0FF) ( 256*RAM[#C100]+RAM[#C0FF])
Amiga 1200+Blizzard 1260 72 Mb+Mtek 68030,Compozit 128, Leningrad 2,
Atari STE 1040,ZX Spectrum +2,Pentagon 48, Speccy2007 - 2 , ATAS 256k.
ZX Evo 4Mb- в строю.
Speccy2010 v1
Специалист (пока готовлюсь к восстановлению).
Это все мое!
Родное!
Все люблю на свете я! Это родина моя!
А так если сделать?Код:IM_2: LDI ZL,0XFF ;Здесь обрабатывается IM2. В регистр косвенной адресации заношу: IN ZH,I ; 0xFE – в младший регистр, I – в старший регистр. CPI ZH,0X40
И посмотреть бы код LOAD_PC_Z[12].
Последний раз редактировалось balu_dark; 03.12.2011 в 01:10.
Amiga 1200+Blizzard 1260 72 Mb+Mtek 68030,Compozit 128, Leningrad 2,
Atari STE 1040,ZX Spectrum +2,Pentagon 48, Speccy2007 - 2 , ATAS 256k.
ZX Evo 4Mb- в строю.
Speccy2010 v1
Специалист (пока готовлюсь к восстановлению).
Это все мое!
Родное!
Все люблю на свете я! Это родина моя!
Test-48 дает такой трейсинг :
С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
А вот ниже самое интересное
![]()
Ничего не понял. В одном месте читаю:
Команда RET I.
Код - ED 4D. Эта команда аналогична команде RET (возврат после вызова подпрограммы), но выполняет двойную функцию:
· возврат из подпрограммы, обслуживающей маскируемое прерывание;
· разрешение маскированного прерывания (ведь во время работы обслуживающей программы оно запрещалось, иначе новое прерывание могло бы прервать обработку прерывания и т.д.).
В другом: пользователь должен сам разрешать прерывания через EI, так как RETI этого не делает. Так как же на самом деле?
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)