
Сообщение от
Black_Cat
так вроде же кондратьевскую схему с NMI переделали на INT в режиме IM2.. Для такой переделки есть где-нидь поддержка?
Не слышал, откуда информация?

Сообщение от
Black_Cat
А в чём была проблема с исправлением ошибки NMI, что её до сих пор не исправили?
В некоторых модифицированных прошивках эта ошибка исправлена, но не во всех.
А в базовой прошивке BASIC 48 это выглядит так:
Код:
0066 .NMI
0066 F5 PUSH AF
0067 E5 PUSH HL
0068 2A B0 5C LD HL,(NMIADD)
006B 7C LD A,H
006C B5 OR L
006D 20 01 JR NZ,#0070 ; Return if non zero
006F E9 JP (HL)
0070 E1 POP HL
0071 F1 POP AF
0072 ED 45 RETN
Здесь есть ошибка, которая заключается в том, что переход по адресу, записанному
в переменную (NMIADD) происходит только при его нулевом значении,
тоесть всегда приводит к перезапуску BASICа.
В адресе 006D должен стоять код 28, что означает команду JR Z,#0070
Вот тогда, записав в NMIADD адрес процедуры обработки NMI,
можно писать программы использующие этот вектор для аппаратного
перехвата событий.