Да, я эту инфу тоже нашел на тут форуме:
Код:
LAB_0A01: ld a,(5cf6h)
0a04 c5 push bc
0a05 01ba7f ld bc,7fbah
0a08 ed48 in c,(c)
0a0a fe01 cp 01h
0a0c 2808 jr z,LAB_0A16
0a0e 300a jr nc,LAB_0A1A
0a10 cb79 bit 7,c
0a12 2019 jr nz,LAB_0A2D
0a14 1808 jr LAB_0A1E
LAB_0A16: bit 6,c
0a18 2013 jr nz,LAB_0A2D
LAB_0A1A: cp 04h
0a1c 300f jr nc,LAB_0A2D
LAB_0A1E: pop bc
0a1f 51 ld d,c
0a20 c5 push bc
0a21 0e02 ld c,02h
0a23 cd2608 call LAB_0826 ; RST 8
0a26 81 db #81
0a27 c1 pop bc
0a28 dae73e jp c,LAB_3EE7
0a2b e1 pop hl
0a2c c9 ret
LAB_0A2D: pop bc
0a2e c3eb1f jp LAB_1FEB
Это из функций 5/6 3D13. Берется текущий диск, читается 7FBA
(7 и 6 биты этого порта предназначены для быстрой
проверки "виртуальности" дисков A и B), если диск А - проверяется
бит 7, если диск B - проверяется бит 6. Если они установлены - переход
на процедуры работы с ВГ93, если сброшены - RST8: DB #81.
Для дисков С и D сразу идет переход на RST8
Сейчас примерно понятно, какие места в ПЗУ надо будет править. Один только момент неясен: можно ли проверять "виртуальность" дисков C и D, используя какие-то (если такие есть) флаги виртуальности, находящиеся в системных переменных теневика (тобешь в памяти), чтобы не переделывать железную часть порта 7FBA смака, задействуя еще 2 его бита.