Должны запоминаться все 4 диска. Так было в смуке 1.2, 1.3. Unreal 0.32 с Проф-ПЗУ 4.01 также запоминает все диски.Сообщение от ewgeny7
Не совсем так. вот кусок дизассемблера:Сообщение от ewgeny7
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, если диск B - проверяется бит 6. Если они установлены - переход на процедуры работы с ВГ93, если сброшены - RST8: DB #81. Для дисков С и D сразу идет переход на RST8.
Если в Unreale включить Проф-ПЗУ и СМУК, то 3D13 никогда не обращается к реальным диководам C и D.




Ответить с цитированием