Посмотрел внимательно на код определения наличия ПЗУ в "заводском" загрузчике:
; проверка наличия модуля ППЗУ
M0107H: MVI A,82H
OUT 04
MVI B,0FFH
M010DH: MOV A,B
OUT 05
...
M012EH: MOV A,B
SUI 20H
MOV B,A
JM M010DH ; продолжить поиск если старший бит "1"
XRA A
M0136H: ORA A
RET
Соответственно, поиск ПЗУ вообще прекращается после 9F-20=7F...
Похоже А15 действительно не участвует в формировании адреса для ПЗУ, иначе проверка была-бы только с адреса FF до 9F.
Мир рушится, Шахматы (и чего-то там ещё) нельзя загрузить из ПЗУ, поскольку из ПЗУ можно загрузить только до 32КБ...
Посыпаю голову пеплом, признаю, заблуждался, я был о "загрузчике" лучшего мнения...
На фоне всего этого, стало понятно, что и в загрузчике "hdd_boot.bin" тоже проверка идёт с FF до 9F (с адреса 7F по 1F), просто код изменен:
; проверка наличия МППЗУ
L0530: mvi a,$82
out $04
mvi h,$1F
L0536: mov a,h
sui $20
rp ; выход если старший бит "0"
mov h,a
out $05
...
Всё, пошел "бухать с горя", напьюсь минералки, и буду валяться под столом в забытии...





Ответить с цитированием
Размещение рекламы на форуме способствует его дальнейшему развитию 
