Представим что вся память компьютера выглядит так.
Код:
0000 ----- ----- ----- ----- ------ ------ ------ ------
! 0 ! ! 4 ! ! 8 ! ! C ! ! 10 ! ! 14 ! ! 18 ! ! 1C !
4000 ----- ----- ----- ----- ------ ------ ------ ------
! 1 ! ! 5 ! ! 9 ! ! D ! ! 11 ! ! 15 ! ! 19 ! ! 1D !
8000 ----- ----- ----- ----- ------ ------ ------ ------
! 2 ! ! 6 ! ! A ! ! E ! ! 12 ! ! 16 ! ! 1A ! ! 1E !
C000 ----- ----- ----- ----- ------ ------ ------ ------
! 3 ! ! 7 ! ! B ! ! F ! ! 13 ! ! 17 ! ! 1B ! ! 1F !
FFFF ----- ----- ----- ----- ------ ------ ------ ------
BANK 1 BANK 2 BANK 3 BANK 4 BANK 5 BANK 6 BANK 7 BANK 8
Номером в клетке обозначен номер 16КБ страницы во всей памяти компьютера
N.B. Однако D28 не имеет возможности адресоваться в в банки с 5 до 8
Тест памяти который мне дал Дмитрий, работал так: перебилал все возможные страницы во всех банках.
Код:
#7FXX
D7 D6 D5 D4 D3 D2 D1 D0
1 1 b b b 1 n n
Где номер nn это номер страницы внутри банка а bbb это номер банка, старший бит которого игнорирован. D5 в игноре.
В результате когда тест перебирая значение bbbnn от 1FH до 0H но при D2=1. Получалется следующая послдовательность страниц в адресном пространстве с 4000-7FFFF
Код:
7 6 5 4 F E D C B A 9 8 7 6 5 4 7 6 5 4 F E D C B A 9 8 7 6 5 4
Оригинальная прошивка получила бы
Код:
F E D C F E D C B A 9 8 7 6 5 4 F E D C F E D C B A 9 8 7 6 5 4
Но изменение прошивки касается и отсальных конфигураций, тех которые при D2=0