From 412759754c0e56dffcf5af7a711ffa0b73bb83ca Mon Sep 17 00:00:00 2001 From: Anatoliy Belyanskiy Date: Wed, 20 Sep 2023 01:00:54 +1000 Subject: [PATCH] ... --- src/bios/exp/EXTENDED/RAM_DISK_DRIVER_1.asm | 13 ++++++------- src/bios/exp/FUNC_RAM_ROM_DRV.ASM | 16 +++++++++------- 2 files changed, 15 insertions(+), 14 deletions(-) diff --git a/src/bios/exp/EXTENDED/RAM_DISK_DRIVER_1.asm b/src/bios/exp/EXTENDED/RAM_DISK_DRIVER_1.asm index 43c93bb..cb95869 100644 --- a/src/bios/exp/EXTENDED/RAM_DISK_DRIVER_1.asm +++ b/src/bios/exp/EXTENDED/RAM_DISK_DRIVER_1.asm @@ -42,8 +42,7 @@ RMD_5x.GETMED: RET C SCF RET Z - - + ; LD C,A LD B,#FF .loop: INC B @@ -52,16 +51,16 @@ RMD_5x.GETMED: CALL EMM.GetMemPage ; получить физический номер страницы из блока POP BC JR NC,.loop - CP #FF - RET NZ + ; CF==1, A==0 - ошибка, A==#FF - ok + INC A + RET NZ ; если выходит, то с фдагами CF==1, ZF==1 + LD E,B LD B,C - -; тут в E количество страниц в рамдиске, B - ID рамдиска + ; тут в E количество страниц в рамдиске, B - ID рамдиска LD HL,1*256 + #4000/.SectorSize LD D,0 LD IX,.SectorSize - RET //////////////////////////////////////////////////////////////////////////////////// diff --git a/src/bios/exp/FUNC_RAM_ROM_DRV.ASM b/src/bios/exp/FUNC_RAM_ROM_DRV.ASM index 60b9adb..c7cb952 100644 --- a/src/bios/exp/FUNC_RAM_ROM_DRV.ASM +++ b/src/bios/exp/FUNC_RAM_ROM_DRV.ASM @@ -351,6 +351,8 @@ EMM.GetMemBlkPages: LD B,0 LD L,A + LD A,R + .loop: LD A,L LD (DE),A INC DE @@ -358,7 +360,7 @@ EMM.GetMemBlkPages: JR Z,.error CP #FF JR Z,.end - + ; IN A,(SLOT2) LD C,A LD A,SYS_PAGE @@ -367,19 +369,19 @@ EMM.GetMemBlkPages: LD L,(HL) LD A,C OUT (SLOT2),A - + ; INC B JR NZ,.loop .error: SCF - POP HL +.end: POP HL POP DE RET -.end: POP HL - POP DE - AND A - RET +; .end: POP HL +; POP DE +; AND A +; RET ;----------------------------------------------------------------------; ;