mirror of
https://github.com/Tolik-Trek/Estex-DSS.git
synced 2026-06-15 17:31:47 +03:00
optimization. bug with BootSector size fixed
This commit is contained in:
parent
f59cca8dfa
commit
35e9b7b9fe
@ -30,7 +30,7 @@ DRIVE:
|
||||
DI
|
||||
LD (DRIVE),A
|
||||
LD C,BIOS.EXT_VERSION
|
||||
RST #18
|
||||
RST ToBIOS_18
|
||||
LD A,INCORR
|
||||
JR C,FAIL
|
||||
LD A,(DRIVE)
|
||||
@ -45,9 +45,9 @@ GOOD_DRIVE:
|
||||
LD DE,#8200
|
||||
LD HL,0
|
||||
LD IX,2
|
||||
LD BC,2*256+BIOS.DRV_READ
|
||||
LD BC,2*256 + BIOS.DRV_READ
|
||||
LD A,(DRIVE)
|
||||
RST #18
|
||||
RST ToBIOS_18
|
||||
JR C,NULL
|
||||
JP CONTINU
|
||||
|
||||
@ -88,37 +88,37 @@ PRINTX CP #0D
|
||||
JR Z,CR_
|
||||
CP #0A
|
||||
JR Z,LF_
|
||||
LD BC,#0182
|
||||
RST #18
|
||||
LD BC,1*256 + BIOS.LP_PRINT_SYM
|
||||
RST ToBIOS_18
|
||||
RET
|
||||
CR_ LD C,#8E
|
||||
RST #18
|
||||
CR_ LD C,BIOS.LP_GET_PLACE
|
||||
RST ToBIOS_18
|
||||
LD E,0
|
||||
LD C,#84
|
||||
RST #18
|
||||
RST ToBIOS_18
|
||||
RET
|
||||
LF_ LD C,#8E
|
||||
RST #18
|
||||
LF_ LD C,BIOS.LP_GET_PLACE
|
||||
RST ToBIOS_18
|
||||
LD A,#1F
|
||||
CP D
|
||||
JR NZ,LF2
|
||||
PUSH DE
|
||||
PUSH HL
|
||||
LD DE,#0020
|
||||
LD BC,#018A
|
||||
RST #18
|
||||
LD BC,1*256 + BIOS.LP_SCROLL_UD
|
||||
RST ToBIOS_18
|
||||
LD DE,#1F00
|
||||
LD C,#84
|
||||
RST #18
|
||||
LD C,BIOS.LP_SET_PLACE
|
||||
RST ToBIOS_18
|
||||
LD A," "
|
||||
LD BC,#5082
|
||||
RST #18
|
||||
LD BC,#50 + BIOS.LP_PRINT_SYM
|
||||
RST ToBIOS_18
|
||||
POP HL
|
||||
POP DE
|
||||
DEC D
|
||||
LF2 INC D
|
||||
LD C,#84
|
||||
RST #18
|
||||
LD C,BIOS.LP_SET_PLACE
|
||||
RST ToBIOS_18
|
||||
RET ;R01
|
||||
;R01 End
|
||||
|
||||
@ -155,8 +155,8 @@ CONTINU
|
||||
LD (DISKL),HL
|
||||
LD (DISKH),HL
|
||||
|
||||
LD BC,1*256+BIOS.GetMem
|
||||
RST #18 ;GET PAGE FOR DOS
|
||||
LD BC,1*256 + BIOS.GetMem
|
||||
RST ToBIOS_18 ;GET PAGE FOR DOS
|
||||
LD (BANKDOS),A
|
||||
CALL GET_BPB ;READ BPB
|
||||
LD A,ERRIBPB
|
||||
@ -290,9 +290,9 @@ YEPDOS LD E,(IX+08)
|
||||
LD (DISKL),IX
|
||||
LD (DISKH),HL
|
||||
LD DE,BOOT
|
||||
LD BC,1*256+BIOS.DRV_READ
|
||||
LD BC,1*256 + BIOS.DRV_READ
|
||||
LD A,(DRIVE)
|
||||
RST #18
|
||||
RST ToBIOS_18
|
||||
POP BC
|
||||
LD A,C
|
||||
RET
|
||||
@ -300,13 +300,13 @@ YEPDOS LD E,(IX+08)
|
||||
SET_PRM PUSH BC
|
||||
LD A,B
|
||||
LD C,BIOS.DRV_GET_PAR
|
||||
RST #18
|
||||
RST ToBIOS_18
|
||||
LD A,(BOOT.S_P_T)
|
||||
LD L,A
|
||||
POP AF
|
||||
PUSH AF
|
||||
LD C,BIOS.DRV_SET_PAR
|
||||
RST #18
|
||||
RST ToBIOS_18
|
||||
POP BC
|
||||
LD A,C
|
||||
RET
|
||||
@ -314,9 +314,9 @@ SET_PRM PUSH BC
|
||||
GET_BPB LD IX,#0000
|
||||
LD HL,#0000
|
||||
LD DE,BOOT
|
||||
LD BC,1*256+BIOS.DRV_READ
|
||||
LD BC,1*256 + BIOS.DRV_READ
|
||||
LD A,(DRIVE)
|
||||
RST #18
|
||||
RST ToBIOS_18
|
||||
RET C
|
||||
LD A,(DRIVE)
|
||||
LD B,A
|
||||
@ -416,9 +416,9 @@ BPB_FAT
|
||||
ADC HL,BC
|
||||
;HL:IX
|
||||
LD DE,FAT
|
||||
LD BC,3*256+BIOS.DRV_READ
|
||||
LD BC,3*256 + BIOS.DRV_READ
|
||||
LD A,(DRIVE)
|
||||
RST #18
|
||||
RST ToBIOS_18
|
||||
RET C
|
||||
LD HL,0
|
||||
LD (FATCASH),HL
|
||||
@ -447,10 +447,10 @@ NEXTSEC PUSH AF
|
||||
;HL:IX
|
||||
PUSH IX
|
||||
PUSH HL
|
||||
LD BC,1*256+BIOS.DRV_READ
|
||||
LD BC,1*256 + BIOS.DRV_READ
|
||||
LD DE,DIR
|
||||
LD A,(DRIVE)
|
||||
RST #18
|
||||
RST ToBIOS_18
|
||||
CALL SEARCH
|
||||
POP HL
|
||||
POP IX
|
||||
@ -510,21 +510,21 @@ LD_FILE PUSH HL
|
||||
LD A,(BOOT.S_P_C)
|
||||
CP #20
|
||||
JR C,SMCLUS
|
||||
LD BC,#2052
|
||||
LD BC,#20*256 + BIOS.DRV_READ_LONG
|
||||
LD A,(BANKDOS)
|
||||
EX AF,AF'
|
||||
LD A,(DRIVE)
|
||||
RST #18
|
||||
RST ToBIOS_18
|
||||
POP HL
|
||||
AND A
|
||||
RET
|
||||
|
||||
SMCLUS LD B,A
|
||||
LD C,#52
|
||||
LD C,BIOS.DRV_READ_LONG
|
||||
LD A,(BANKDOS)
|
||||
EX AF,AF'
|
||||
LD A,(DRIVE)
|
||||
RST #18
|
||||
RST ToBIOS_18
|
||||
LD HL,(READMEM)
|
||||
LD DE,(CLU_LEN)
|
||||
ADD HL,DE
|
||||
@ -670,9 +670,9 @@ NOINX2 ADD IX,BC
|
||||
POP IX
|
||||
POP HL
|
||||
LD DE,FAT
|
||||
LD BC,#0355
|
||||
LD BC,3*256 + BIOS.DRV_READ
|
||||
LD A,(DRIVE)
|
||||
RST #18
|
||||
RST ToBIOS_18
|
||||
POP HL
|
||||
RET
|
||||
|
||||
|
||||
@ -277,8 +277,8 @@ F_START:
|
||||
RST #30
|
||||
;CALL INITDVC ;R05
|
||||
;R05
|
||||
LD C,#00
|
||||
RST #18
|
||||
LD C,Dss.DRV.Init
|
||||
RST ToDSS.DRV
|
||||
LD (LDRIVE),A
|
||||
;R05
|
||||
|
||||
@ -437,6 +437,14 @@ BUFFER EQU BUFFERSplace.Buffer
|
||||
SECBUF EQU BUFFER
|
||||
|
||||
CLEAR_ZONE.size EQU _sBuffers
|
||||
DISPLAY "--- --- --- --- --- --- --- ---"
|
||||
DISPLAY "BUFFERSplace.BootSector ",/H,BUFFERSplace.BootSector
|
||||
DISPLAY "BootSector ", /H, BootSector
|
||||
DISPLAY "EXEBUFF ", /H, EXEBUFF
|
||||
DISPLAY "Size ", /H, EXEBUFF-BootSector
|
||||
DISPLAY "--- --- --- --- --- --- --- ---"
|
||||
|
||||
|
||||
/*
|
||||
;R11 \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
|
||||
;!TEST
|
||||
|
||||
43
DSS/DOS5.ASM
43
DSS/DOS5.ASM
@ -155,11 +155,11 @@ DELETE LD DE,MASKARE
|
||||
RET C
|
||||
DELFILE LD A,DIRPAGE
|
||||
CALL BANK
|
||||
PUSH AF
|
||||
;PUSH AF
|
||||
LD (IX+_sFM.NAME),#E5
|
||||
LD E,(IX+_sFM.ST_CLUSTER)
|
||||
LD D,(IX+_sFM.ST_CLUSTER+1)
|
||||
POP AF
|
||||
;POP AF
|
||||
OUT (SLOT3),A
|
||||
LD A,E
|
||||
OR D
|
||||
@ -656,8 +656,8 @@ CHNDISK:
|
||||
;????? R10
|
||||
OPENDSK:
|
||||
PUSH AF
|
||||
LD C,1
|
||||
RST #18
|
||||
LD C,Dss.DRV.Open
|
||||
RST ToDSS.DRV
|
||||
POP BC
|
||||
JP C,.error
|
||||
LD A,B
|
||||
@ -802,7 +802,7 @@ FINDDIR LD A,DIRPAGE
|
||||
ADDSPEC LD E,XL
|
||||
LD D,XH
|
||||
LD HL,DIRSPEC+1
|
||||
LD BC,DIRSPEC.DEPTH
|
||||
LD BC,DIRSPEC.DEPTH-1
|
||||
XOR A
|
||||
CPIR ;!FIXIT ¥â ¯à®¢¥àª¨ § ¢¥à襨¥ ¯® BC=0
|
||||
DEC HL
|
||||
@ -879,11 +879,11 @@ LOADDIR:
|
||||
CALL BANK
|
||||
PUSH AF
|
||||
;!FIXIT ᫨誮¬ ¤®«£®
|
||||
LD HL,#C000
|
||||
LD DE,#C001
|
||||
LD BC,#3FFF
|
||||
LD (HL),L
|
||||
LDIR
|
||||
; LD HL,#C000
|
||||
; LD DE,#C001
|
||||
; LD BC,#3FFF
|
||||
; LD (HL),L
|
||||
; LDIR
|
||||
;
|
||||
LD A,(FatBuffer.DRIVE)
|
||||
LD (IY+_sFM.DRIVE),A
|
||||
@ -911,9 +911,9 @@ LROTDIR LD HL,(FatBuffer.DIR_FRH)
|
||||
ADD A,B
|
||||
LD B,A
|
||||
RTD1 LD A,(FatBuffer.DRIVE)
|
||||
LD C,5
|
||||
LD DE,DIR
|
||||
RST #18
|
||||
LD C,Dss.DRV.Read
|
||||
RST ToDSS.DRV
|
||||
POP AF
|
||||
OUT (SLOT3),A
|
||||
AND A
|
||||
@ -952,9 +952,9 @@ SROTDIR LD HL,(FatBuffer.DIR_FRH)
|
||||
ADD A,B
|
||||
LD B,A
|
||||
RTD1S LD A,(FatBuffer.DRIVE)
|
||||
LD C,6
|
||||
LD DE,DIR
|
||||
RST #18
|
||||
LD C,Dss.DRV.Write
|
||||
RST ToDSS.DRV
|
||||
POP AF
|
||||
OUT (SLOT3),A
|
||||
AND A
|
||||
@ -1634,7 +1634,7 @@ MKD04 EX DE,HL
|
||||
INC DE
|
||||
LD (HL),0
|
||||
LD BC,512-65
|
||||
LDIR
|
||||
LDIR ;!FIXIT 㦮 «¨ â ª ¬®£® £à®å âì?
|
||||
POP HL
|
||||
CALL NSECTOR
|
||||
LD A,(BootSector.S_P_C)
|
||||
@ -1646,11 +1646,10 @@ MKD12 PUSH AF
|
||||
IN A,(SLOT0)
|
||||
OUT (SLOT3),A
|
||||
;
|
||||
LD DE,SECBUF+#C000
|
||||
LD B,1
|
||||
LD A,(FatBuffer.DRIVE)
|
||||
LD C,6
|
||||
RST #18
|
||||
LD DE,SECBUF+#C000
|
||||
LD BC,1*256 + Dss.DRV.Write
|
||||
RST ToDSS.DRV
|
||||
;
|
||||
POP AF
|
||||
OUT (SLOT3),A
|
||||
@ -1659,7 +1658,7 @@ MKD12 PUSH AF
|
||||
LD DE,SECBUF+1
|
||||
LD BC,511
|
||||
LD (HL),0
|
||||
LDIR
|
||||
LDIR ;!FIXIT 㦮 «¨ â ª ¬®£® £à®å âì?
|
||||
POP IX
|
||||
POP HL
|
||||
INC IX
|
||||
@ -1706,9 +1705,9 @@ RMD12 PUSH AF
|
||||
OUT (SLOT3),A
|
||||
|
||||
LD DE,SECBUF+#C000
|
||||
LD BC,#0105
|
||||
LD BC,1*256 + Dss.DRV.Read
|
||||
LD A,(FatBuffer.DRIVE)
|
||||
RST #18
|
||||
RST ToDSS.DRV
|
||||
|
||||
POP AF
|
||||
OUT (SLOT3),A
|
||||
|
||||
@ -177,7 +177,7 @@ BLOK_RD PUSH BC
|
||||
LD A,(BootSector.S_P_C) ;SECTORS PER CLUSTER
|
||||
LD C,A
|
||||
LD B,0
|
||||
CALL DIV32
|
||||
CALL DIV32 ;!FIXIT § ¬¥¨âì ¢ë§®¢ HLDE/BC HLDE/C
|
||||
LD B,XH
|
||||
LD C,XL
|
||||
PUSH HL ;RESIDUE
|
||||
@ -218,8 +218,8 @@ BLOKRD3 LD A,B ; /
|
||||
BLOKRD4 LD DE,(READMEM)
|
||||
LD A,(FatBuffer.DRIVE)
|
||||
LD B,C
|
||||
LD C,5
|
||||
RST #18
|
||||
LD C,Dss.DRV.Read
|
||||
RST ToDSS.DRV
|
||||
JP C,BLOKRD0
|
||||
POP BC
|
||||
LD HL,(READMEM)
|
||||
@ -256,7 +256,7 @@ BLOKRD7 EX DE,HL
|
||||
LD A,(FatBuffer.DRIVE)
|
||||
LD B,C
|
||||
LD C,5
|
||||
RST #18
|
||||
RST ToDSS.DRV
|
||||
JP C,BLOKRD0
|
||||
POP BC
|
||||
LD HL,(READMEM)
|
||||
@ -345,8 +345,8 @@ BLOKWR3 LD A,B
|
||||
BLOKWR4 LD DE,(READMEM)
|
||||
LD A,(FatBuffer.DRIVE)
|
||||
LD B,C
|
||||
LD C,6
|
||||
RST #18
|
||||
LD C,Dss.DRV.Write
|
||||
RST ToDSS.DRV
|
||||
JP C,BLOKWR0
|
||||
POP BC
|
||||
LD HL,(READMEM)
|
||||
@ -387,8 +387,8 @@ BLOKWR9 POP BC
|
||||
LD DE,(READMEM)
|
||||
LD A,(FatBuffer.DRIVE)
|
||||
LD B,C
|
||||
LD C,6
|
||||
RST #18
|
||||
LD C,Dss.DRV.Write
|
||||
RST ToDSS.DRV
|
||||
JP C,BLOKWR0
|
||||
POP BC
|
||||
LD HL,(READMEM)
|
||||
@ -625,8 +625,9 @@ WRITE LD (R_POINT),HL
|
||||
OR A
|
||||
RR L
|
||||
RR D
|
||||
RR E ;HL:DE FP (in sectors)
|
||||
; BC FP residue (in bytes)
|
||||
RR E
|
||||
; HL:DE FP (in sectors)
|
||||
; BC FP residue (in bytes)
|
||||
LD A,B
|
||||
OR C
|
||||
JP NZ,WOV1
|
||||
|
||||
@ -71,9 +71,9 @@ SETBOOT:
|
||||
LD C,0
|
||||
.loop: PUSH BC
|
||||
LD A,C
|
||||
LD BC,#0008
|
||||
LD DE,#55AA
|
||||
RST #18
|
||||
LD BC,256*0 + Dss.DRV.GenIOCTL
|
||||
RST ToDSS.DRV
|
||||
POP BC
|
||||
JR C,.NoSupport
|
||||
EX AF,AF' ;PHISICAL DRIVE NUMBER
|
||||
@ -100,8 +100,8 @@ SETBOOT:
|
||||
/*
|
||||
CHNDISK:
|
||||
PUSH AF
|
||||
LD C,1
|
||||
RST #18
|
||||
LD C,Dss.DRV.Open
|
||||
RST ToDSS.DRV
|
||||
POP BC
|
||||
JP C,NDISK11
|
||||
LD A,B
|
||||
@ -181,30 +181,24 @@ TCOUNT: DW #0000
|
||||
|
||||
; !FIXIT çñâ ¥ ¨á¯®«ì§ã¥âáï
|
||||
TESTDSK LD A,(FatBuffer.DRIVE)
|
||||
LD C,3
|
||||
RST #18
|
||||
LD C,Dss.DRV.MediaCheck
|
||||
RST ToDSS.DRV
|
||||
OR A
|
||||
RET Z
|
||||
RD_BPB LD C,SLOT3
|
||||
IN B,(C)
|
||||
PUSH BC
|
||||
|
||||
;!!!!! «ãçè¥ ®áâ ¢¨âì ª ª ¢ ®à¨£¨ «¥, ¯®â®¬ã çâ® ¢ë§®¢ í⮩ äãªæ¨¨
|
||||
; ¬®¦¥â ¢ ¤ «ì¥©è¥¬ ¯® ¤®¡¨âìáï, ¨ ¯ã᪠© ® á ¬ ¤®áâ ñâ ¯¥à¥¬¥ãî DRIVE
|
||||
; ex af,af' ;1451
|
||||
; in a,(SLOT0) ;1452
|
||||
; out (SLOT3),a ;1454
|
||||
; ld de,SECBUF+#C000 ;1456
|
||||
; ex af,af' ;1459
|
||||
IN A,(SLOT0)
|
||||
OUT (SLOT3),A
|
||||
;R08 LD DE,BOOT+#C000
|
||||
LD DE,SECBUF+#C000 ;R08
|
||||
LD A,(FatBuffer.DRIVE)
|
||||
;!!!!! ------------------------------
|
||||
;R08
|
||||
;LD DE,BOOT+#C000
|
||||
LD DE,SECBUF+#C000
|
||||
;R08
|
||||
LD A,(FatBuffer.DRIVE) ;¢ë§®¢ RD_BPB ¬®¦¥â ¢ ¤ «ì¥©è¥¬ ¯® ¤®¡¨âìáï, ¯ã᪠© ® á ¬ ¤®áâ ñâ ¯¥à¥¬¥ãî DRIVE
|
||||
|
||||
LD C,4
|
||||
RST #18
|
||||
LD C,Dss.DRV.GetBPB
|
||||
RST ToDSS.DRV
|
||||
POP BC
|
||||
OUT (C),B
|
||||
JP C,RDERR1
|
||||
@ -226,10 +220,16 @@ RD_BPB LD C,SLOT3
|
||||
LD A,(IY+_sBOOT_SEC.ID_FORM)
|
||||
CP #F0
|
||||
JP C,ERR_BPB
|
||||
LD HL,0 ; calc. first sector FAT
|
||||
LD E,(IY+_sBOOT_SEC.RESERVE) ;Reserve sec
|
||||
LD D,(IY+_sBOOT_SEC.RESERVE+1)
|
||||
ADD HL,DE
|
||||
|
||||
;!TEST
|
||||
;LD HL,0 ; calc. first sector FAT
|
||||
;LD E,(IY+_sBOOT_SEC.RESERVE) ;Reserve sec
|
||||
;LD D,(IY+_sBOOT_SEC.RESERVE+1)
|
||||
;ADD HL,DE
|
||||
LD L,(IY+_sBOOT_SEC.RESERVE) ;Reserve sec
|
||||
LD H,(IY+_sBOOT_SEC.RESERVE+1)
|
||||
;
|
||||
|
||||
; LD E,(IY+#1C) ;Hidden sec
|
||||
; LD D,(IY+#1D)
|
||||
; ADD HL,DE
|
||||
@ -311,15 +311,15 @@ R_BPBL1
|
||||
DJNZ R_BPBL1
|
||||
FID LD A,(HL)
|
||||
INC HL
|
||||
CP #20
|
||||
CP ' '
|
||||
JR Z,FID
|
||||
CP "1"
|
||||
CP '1'
|
||||
JP NZ,ERR_BPB
|
||||
LD A,(HL)
|
||||
CP "6" ; FAT16
|
||||
CP '6' ; FAT16
|
||||
LD HL,#FFFF
|
||||
JR Z,BPB_FAT
|
||||
CP "2" ; FAT12
|
||||
CP '2' ; FAT12
|
||||
JP NZ,ERR_BPB
|
||||
LD HL,#0FFF
|
||||
BPB_FAT
|
||||
@ -356,7 +356,7 @@ BPB_L1: ; calc. sector per cylinder
|
||||
DEC BC
|
||||
JP HDDBIG
|
||||
HDDSMAL:
|
||||
; AND A ;âãâ CF ¯®«î¡ á á¡à®è¥ ¤®«¦¥ ¡ëâì
|
||||
;AND A ;âãâ CF ¯®«î¡ á á¡à®è¥ ¤®«¦¥ ¡ëâì
|
||||
SBC HL,DE
|
||||
LD BC,0
|
||||
HDDBIG LD A,(BootSector.S_P_C)
|
||||
@ -376,8 +376,8 @@ S4C02 INC HL
|
||||
; LD IX,(FAT_FRM)
|
||||
; LD B,3
|
||||
; LD A,(DRIVE)
|
||||
; LD C,5
|
||||
; RST #18
|
||||
; LD C,Dss.DRV.Read
|
||||
; RST ToDSS.DRV
|
||||
; JP C,RDERR1
|
||||
LD HL,0
|
||||
LD (FATCASH),HL
|
||||
@ -443,7 +443,7 @@ FatBuffer:
|
||||
|
||||
;
|
||||
DIRSPEC: DB '\'
|
||||
BLOCK DIRSPEC.DEPTH,0 ;????? <20>ë«® 255, ã ‘ ©¬ 256
|
||||
BLOCK DIRSPEC.DEPTH-1,0 ;????? <20>ë«® 255, ã ‘ ©¬ 256
|
||||
;
|
||||
|
||||
;R11
|
||||
|
||||
@ -53,7 +53,6 @@ INC_FA2 CALL R_F_FAT
|
||||
|
||||
; HL - CLUSTER
|
||||
; DE - (CLUSTER)
|
||||
|
||||
R_F_FAT EX DE,HL
|
||||
LD HL,(MAX_CLU)
|
||||
AND A
|
||||
@ -229,7 +228,8 @@ W_T_FAT PUSH DE
|
||||
LD A,(FatBuffer.FAT_TYP)
|
||||
CP "2"
|
||||
JP Z,W_T_F12
|
||||
W_T_F16 PUSH DE
|
||||
W_T_F16:
|
||||
PUSH DE
|
||||
LD A,H
|
||||
LD B,A
|
||||
AND #0F
|
||||
@ -327,19 +327,17 @@ RE_FAT PUSH HL
|
||||
ADD HL,HL
|
||||
ADD HL,HL
|
||||
ADD HL,HL
|
||||
ADD HL,HL ;FAT BLOCK * 16 = SECTOR OF FAT
|
||||
ADD HL,HL ;FAT BLOCK * 16 = SECTOR OF FAT
|
||||
LD DE,(FatBuffer.FAT_FRM)
|
||||
ADD HL,DE
|
||||
EX DE,HL
|
||||
LD IX,0
|
||||
ADD IX,DE
|
||||
LD HL,0 ;HL:IX - SECTOR FAT FOR READING
|
||||
LD DE,FAT ; DE - FAT ADDRESS
|
||||
LD HL,0 ;HL:IX - SECTOR FAT FOR READING
|
||||
LD DE,FAT ; DE - FAT ADDRESS
|
||||
LD A,(FatBuffer.DRIVE)
|
||||
; LD B,16
|
||||
; LD C,5
|
||||
LD BC,16*256 + 5 ;ॣ B: 16 * 512 = 8192 (CASH SIZE)
|
||||
RST #18
|
||||
LD BC,16*256 + Dss.DRV.Read ;ॣ B: 16 * 512 = 8192 (CASH SIZE)
|
||||
RST ToDSS.DRV
|
||||
POP HL
|
||||
RET
|
||||
|
||||
@ -388,10 +386,10 @@ WALLFAT LD H,B
|
||||
LD HL,0 ;HL:IX - SECTOR OF FAT FOR SAVE
|
||||
LD DE,FAT
|
||||
LD B,A
|
||||
LD C,6
|
||||
LD C,Dss.DRV.Write
|
||||
LD A,(FatBuffer.DRIVE)
|
||||
PUSH BC
|
||||
RST #18
|
||||
RST ToDSS.DRV
|
||||
POP BC
|
||||
POP HL
|
||||
LD DE,(FatBuffer.FAT2_XX)
|
||||
@ -402,8 +400,8 @@ WALLFAT LD H,B
|
||||
LD DE,FAT
|
||||
LD HL,0
|
||||
LD A,(FatBuffer.DRIVE)
|
||||
LD C,6
|
||||
RST #18
|
||||
LD C,Dss.DRV.Write
|
||||
RST ToDSS.DRV
|
||||
RET
|
||||
;R01
|
||||
|
||||
|
||||
@ -21,7 +21,7 @@ RESERVED2 BLOCK 490,0
|
||||
;
|
||||
|
||||
;File Manipulator (FM)
|
||||
STRUCT _sFM ; 44 bytes
|
||||
STRUCT _sFM ; 44 bytes
|
||||
.NAME: TEXT 8,{". "," "} ;+00 NAME
|
||||
.EXT: TEXT 3,{" "," "} ;+08 EXT
|
||||
.ATTRIBUT: BYTE #10 ;+11 ATTRIBUT
|
||||
|
||||
@ -1 +1 @@
|
||||
Subproject commit 6e9cb7fd969b98df5cc98ec109bab2be59d46208
|
||||
Subproject commit ced877c153d64941d9ab3a1808d21bc559113e4b
|
||||
Loading…
Reference in New Issue
Block a user