From dc4c7ded26389ba716bacfc6cc066e739b2017ab Mon Sep 17 00:00:00 2001 From: Philip Smart Date: Fri, 15 May 2020 01:15:16 +0100 Subject: [PATCH] Updates so ROM drives are fixed drives, saves some RAM. --- software/asm/cbios.asm | 8 +++++--- software/roms/MROM_256.bin | Bin 503040 -> 503040 bytes software/roms/cbios.rom | Bin 4096 -> 4096 bytes 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/software/asm/cbios.asm b/software/asm/cbios.asm index 0595ac6..7835b6d 100644 --- a/software/asm/cbios.asm +++ b/software/asm/cbios.asm @@ -421,7 +421,7 @@ STRT5: LD DE,CBIOSIGNEND ; Termi BIT 1,A JR Z,STRT7 ; No ROM drives available then skip. ; - LD BC,64/4 ; 32/4 ; Setup CSV/ALV parameters for a ROM drive. + LD BC,0 ; Setup CSV/ALV parameters for a ROM drive - ie. fixed drive so 0. LD (CDIRBUF+3),BC LD BC,20 ; 240/8 + 1 ; 240/8 + 1 for a 240K drive with 1024B block, 159/8 + 1 for a 320K drive with 2048B block. LD (CDIRBUF+5),BC @@ -470,6 +470,8 @@ STRT8: LD A,(DRVAVAIL) CALL COPYDPB ; Add in 2 SD drives by default. STRT9: CALL COPYDPB + ; + ; Now add as many additional SD drives as we have RAM available within the CBIOS. ; LD BC,(CDIRBUF+1) LD HL,CSVALVEND - 2048/8 + 1 ; Subtract the size of the ALV (CSV has no size for a fixed SD drive) @@ -2685,7 +2687,7 @@ DPB1: DW 128 ; SPT - DW 63 ; 31 ; DRM - Number of directory entries - 1 DB 128 ; AL0 - 1 bit set per directory block DB 0 ; AL1 - " - DW 16 ; CKS - DIR check vector size (DRM+1)/4 (0=fixed disk) + DW 0 ; 16 ; CKS - DIR check vector size (DRM+1)/4 (0=fixed disk) DW 0 ; OFF - Reserved tracks DB 16 ; CFG - MZ80A Addition, configuration flag: ; Bit 1:0 = FDC: Sector Size, 00 = 128, 10 = 256, 11 = 512, 01 = Unused. @@ -2703,7 +2705,7 @@ DPB2: DW 128 ; SPT - DW 63 ; 31 ; DRM - Number of directory entries - 1 DB 128 ; AL0 - 1 bit set per directory block DB 0 ; AL1 - " - DW 16 ; CKS - DIR check vector size (DRM+1)/4 (0=fixed disk) + DW 0 ; 16 ; CKS - DIR check vector size (DRM+1)/4 (0=fixed disk) DW 0 ; OFF - Reserved tracks DB 48 ; CFG - MZ80A Addition, configuration flag: ; Bit 1:0 = FDC: Sector Size, 00 = 128, 10 = 256, 11 = 512, 01 = Unused. diff --git a/software/roms/MROM_256.bin b/software/roms/MROM_256.bin index 2bb70cfb635c6dc395c1a69850b7e0912b766df2..88b9384df794cdc0fbe235fc204f1678150b652c 100644 GIT binary patch delta 67 zcmZp;CD(9EZbO$6Bg5uyB>`SR1|Se`SR0R{#Jfd&Q^eunuB_6!XS0?ljm+t=tb0x=U1GXpUT P5VHa?+x9j3>>;%PmV^{G diff --git a/software/roms/cbios.rom b/software/roms/cbios.rom index cbf8b4987f219216df09ebb8243f984329a116fd..ce782a4110620a7000141b77d657beb2fbf6c3a2 100644 GIT binary patch delta 36 qcmZorXi(VD#l*<4xtmFVSC9b+1R5Av_!;Ii*fTURFic*<9|8cAUI&i= delta 36 rcmZorXi(VD#l$GExtmFVS5Sa~fkB{wfrX!8K7&0&1B1ZiHT)p}mc9qS