mirror of
https://github.com/Tolik-Trek/FORMAT.git
synced 2026-06-15 17:31:40 +03:00
...
This commit is contained in:
parent
ee38a525f0
commit
3d8f5ff222
@ -8,6 +8,11 @@ FAT16 EQU 2 ;
|
|||||||
FAT12 EQU 3 ; § ®¤® ¨ ¬®¦¨â¥«ì
|
FAT12 EQU 3 ; § ®¤® ¨ ¬®¦¨â¥«ì
|
||||||
FAT32 EQU 4 ; § ®¤® ¨ ¬®¦¨â¥«ì
|
FAT32 EQU 4 ; § ®¤® ¨ ¬®¦¨â¥«ì
|
||||||
;
|
;
|
||||||
|
FilesInRootDIR:
|
||||||
|
.FDD_DD EQU 112
|
||||||
|
.FDD_HD EQU 224
|
||||||
|
.HDD EQU 512
|
||||||
|
;
|
||||||
FAT_ReservedSectors:
|
FAT_ReservedSectors:
|
||||||
.FDD EQU 1
|
.FDD EQU 1
|
||||||
.HDD EQU 8
|
.HDD EQU 8
|
||||||
@ -24,17 +29,17 @@ FAT_ReservedSectors:
|
|||||||
|
|
||||||
MODULE TABLES
|
MODULE TABLES
|
||||||
; VOL SIZE CLUSTER SIZE FAT TYPE
|
; VOL SIZE CLUSTER SIZE FAT TYPE
|
||||||
FAT_TYPES: FAT_TYPES_LINE #0800, 32768, FAT32 ; > 32768
|
FAT_TYPES: FAT_TYPES_LINE #0800, 32768, CONSTANTS.FAT32 ; > 32768
|
||||||
FAT_TYPES_LINE #0400, 16384, FAT32 ; 16384..32768 Mb
|
FAT_TYPES_LINE #0400, 16384, CONSTANTS.FAT32 ; 16384..32768 Mb
|
||||||
FAT_TYPES_LINE #0200, 8192, FAT32 ; 8192..16384 Mb
|
FAT_TYPES_LINE #0200, 8192, CONSTANTS.FAT32 ; 8192..16384 Mb
|
||||||
FAT_TYPES_LINE #0100, 4096, FAT32 ; 4096..8192 Mb
|
FAT_TYPES_LINE #0100, 4096, CONSTANTS.FAT32 ; 4096..8192 Mb
|
||||||
FAT_TYPES_LINE #0080, 32768, FAT16 ; 2048..4096 Mb
|
FAT_TYPES_LINE #0080, 32768, CONSTANTS.FAT16 ; 2048..4096 Mb
|
||||||
FAT_TYPES_LINE #0040, 16384, FAT16 ; 1023..2048 Mb
|
FAT_TYPES_LINE #0040, 16384, CONSTANTS.FAT16 ; 1023..2048 Mb
|
||||||
FAT_TYPES_LINE #0020, 8192, FAT16 ; 511..1023 Mb
|
FAT_TYPES_LINE #0020, 8192, CONSTANTS.FAT16 ; 511..1023 Mb
|
||||||
FAT_TYPES_LINE #0010, 4096, FAT16 ; 256..511 Mb
|
FAT_TYPES_LINE #0010, 4096, CONSTANTS.FAT16 ; 256..511 Mb
|
||||||
FAT_TYPES_LINE #0008, 2048, FAT16 ; 128..256 Mb
|
FAT_TYPES_LINE #0008, 2048, CONSTANTS.FAT16 ; 128..256 Mb
|
||||||
FAT_TYPES_LINE #0004, 1024, FAT16 ; 64..128 Mb
|
FAT_TYPES_LINE #0004, 1024, CONSTANTS.FAT16 ; 64..128 Mb
|
||||||
FAT_TYPES_LINE #0002, 512, FAT16 ; 32..64 Mb
|
FAT_TYPES_LINE #0002, 512, CONSTANTS.FAT16 ; 32..64 Mb
|
||||||
; ¥á«¨ ¬¥ìè¥, â® FAT12
|
; ¥á«¨ ¬¥ìè¥, â® FAT12
|
||||||
.LineSize EQU 5
|
.LineSize EQU 5
|
||||||
.Records EQU ($ - FAT_TYPES)/.LineSize
|
.Records EQU ($ - FAT_TYPES)/.LineSize
|
||||||
@ -51,7 +56,7 @@ VARIABLES EQU $
|
|||||||
;.FatHDD_ReservedSectors WORD 8
|
;.FatHDD_ReservedSectors WORD 8
|
||||||
;.Fat32_ReservedSectors WORD 32
|
;.Fat32_ReservedSectors WORD 32
|
||||||
.ReservedSectors WORD 0 ; [ ]
|
.ReservedSectors WORD 0 ; [ ]
|
||||||
.RootDirSectors WORD 0 ; [ ]
|
.RootDirSectors D24 0 ; [ ]
|
||||||
.NotUsedSpace BYTE 0 ; in sectors
|
.NotUsedSpace BYTE 0 ; in sectors
|
||||||
.total_clusters_L: WORD 0 ; [x]
|
.total_clusters_L: WORD 0 ; [x]
|
||||||
.total_clusters_H: WORD 0 ; [x]
|
.total_clusters_H: WORD 0 ; [x]
|
||||||
@ -111,7 +116,7 @@ FAT_PARAMETERS:
|
|||||||
.SectorsPerCluster: BYTE 0 ; [x]
|
.SectorsPerCluster: BYTE 0 ; [x]
|
||||||
.RESERVED_SECTORS: WORD 0 ; [x]
|
.RESERVED_SECTORS: WORD 0 ; [x]
|
||||||
.Number_of_FATs: BYTE 2 ; predefined ; [x]
|
.Number_of_FATs: BYTE 2 ; predefined ; [x]
|
||||||
.FilesInRootDIR: WORD 0 ; FAT32 constant ; [ ] FAT ; [x] FAT32
|
.FilesInRootDIR: WORD 0 ; FAT32 constant ; [x]
|
||||||
.SectorsPerDrive: WORD 0 ; FAT32 constant ; [x] +-
|
.SectorsPerDrive: WORD 0 ; FAT32 constant ; [x] +-
|
||||||
.DRIVE_TYPE: BYTE 0 ; ; [x] +-
|
.DRIVE_TYPE: BYTE 0 ; ; [x] +-
|
||||||
.SectorsPerFAT16: WORD 0 ; FAT32 constant ; [x]
|
.SectorsPerFAT16: WORD 0 ; FAT32 constant ; [x]
|
||||||
|
|||||||
@ -52,6 +52,27 @@ DEBCxA: LD HL,0
|
|||||||
;-----------------------------------------------------------------------
|
;-----------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
|
;-----------------------------------------------------------------------
|
||||||
|
AHL_RL_B: SLA L
|
||||||
|
RL H
|
||||||
|
RLA
|
||||||
|
JP C,STOP_ERROR
|
||||||
|
DJNZ AHL_RL_B
|
||||||
|
RET
|
||||||
|
;-----------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
|
;-----------------------------------------------------------------------
|
||||||
|
AHL_RR_B: AND A
|
||||||
|
.loop: RRA
|
||||||
|
RR H
|
||||||
|
RR L
|
||||||
|
JP C,STOP_ERROR
|
||||||
|
DJNZ .loop
|
||||||
|
RET
|
||||||
|
;-----------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
;-----------------------------------------------------------------------
|
;-----------------------------------------------------------------------
|
||||||
;HLIX/BC -> HLIX remainder DE
|
;HLIX/BC -> HLIX remainder DE
|
||||||
HLIX_div_BC: EX DE,HL
|
HLIX_div_BC: EX DE,HL
|
||||||
|
|||||||
@ -112,7 +112,7 @@ MAKE_AUTO: LD (STOP_ERROR.Save_SP),SP
|
|||||||
CALCULATE_FAT: CALL .STEP1 ; íâ ¤®«¦ ¡ëâì ®¡é¥© ¤«ï § ¯®«¥¨ï £¥®¬¥âਨ ¤¨áª
|
CALCULATE_FAT: CALL .STEP1 ; íâ ¤®«¦ ¡ëâì ®¡é¥© ¤«ï § ¯®«¥¨ï £¥®¬¥âਨ ¤¨áª
|
||||||
; €¢â®¬ â¨ç¥áª¨© ¢ë¡®à FAT_TYPE, RESERVED_SECTORS, SectorsPerCluster
|
; €¢â®¬ â¨ç¥áª¨© ¢ë¡®à FAT_TYPE, RESERVED_SECTORS, SectorsPerCluster
|
||||||
CALL .STEP2
|
CALL .STEP2
|
||||||
; ¤ «ìè¥ ãáâ ¢«¨¢ ¥¬ £¥®¬¥âà¨î. “¦¥ ¤®«¦¥ ¡ëâì ¢ë¡à ⨯ FAT
|
; RESERVED_SECTORS, RootDir, ¤ «ìè¥ ãáâ ¢«¨¢ ¥¬ £¥®¬¥âà¨î. “¦¥ ¤®«¦¥ ¡ëâì ¢ë¡à ⨯ FAT
|
||||||
CALL .STEP3
|
CALL .STEP3
|
||||||
CALL MAKE_SERIAL
|
CALL MAKE_SERIAL
|
||||||
RET
|
RET
|
||||||
@ -177,7 +177,7 @@ CALCULATE_FAT: CALL .STEP1 ;
|
|||||||
|
|
||||||
|
|
||||||
;--------------;
|
;--------------;
|
||||||
; €¢â®¬ â¨ç¥áª¨© ¢ë¡®à FAT_TYPE, RESERVED_SECTORS, SectorsPerCluster
|
; €¢â®¬ â¨ç¥áª¨© ¢ë¡®à FAT_TYPE, SectorsPerCluster
|
||||||
.STEP2: CALL AUTO_CHOOSE_FAT_PARAMS
|
.STEP2: CALL AUTO_CHOOSE_FAT_PARAMS
|
||||||
JR C,STOP_ERROR
|
JR C,STOP_ERROR
|
||||||
;
|
;
|
||||||
@ -204,57 +204,7 @@ CALCULATE_FAT: CALL .STEP1 ;
|
|||||||
JR C,STOP_ERROR
|
JR C,STOP_ERROR
|
||||||
;
|
;
|
||||||
LD (FAT_PARAMETERS.SectorsPerCluster),A
|
LD (FAT_PARAMETERS.SectorsPerCluster),A
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
TODO
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
LD A,(VARIABLES.FAT_TYPE)
|
|
||||||
CP CONSTANTS.FAT32
|
|
||||||
LD HL,CONSTANTS.FAT_ReservedSectors.FAT32
|
|
||||||
JR Z,.set_RS
|
|
||||||
;
|
|
||||||
LD A,(KEYS_PARAMETERS.FilesInRootDIR + KEYS_PARAMETERS.Status)
|
|
||||||
AND A
|
|
||||||
LD HL,(KEYS_PARAMETERS.FilesInRootDIR + KEYS_PARAMETERS.Data)
|
|
||||||
JR NZ,.set_RS
|
|
||||||
;
|
|
||||||
LD A,(FAT_PARAMETERS.BPB_PHISICAL_DRIVE_NUMBER)
|
|
||||||
SRL A
|
|
||||||
LD HL,CONSTANTS.FAT_ReservedSectors.FDD
|
|
||||||
JR Z,.set_RS
|
|
||||||
LD HL,CONSTANTS.FAT_ReservedSectors.HDD
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
LD HL,CONSTANTS.FAT_ReservedSectors.HDD
|
|
||||||
JR Z,.next_RS
|
|
||||||
LD HL,CONSTANTS.FAT_ReservedSectors.HDD
|
|
||||||
|
|
||||||
;
|
|
||||||
;
|
|
||||||
LD HL,CONSTANTS.FAT_ReservedSectors.HDD
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.set_RS: LD (VARIABLES.ReservedSectors),HL
|
|
||||||
LD (FAT_PARAMETERS.RESERVED_SECTORS),HL
|
|
||||||
|
|
||||||
|
|
||||||
RET
|
RET
|
||||||
;
|
|
||||||
.choose_RS: LD HL,CONSTANTS.FAT_ReservedSectors.FDD
|
|
||||||
|
|
||||||
;--------------;
|
;--------------;
|
||||||
|
|
||||||
|
|
||||||
@ -274,11 +224,16 @@ CALCULATE_FAT: CALL .STEP1 ;
|
|||||||
; FAT_PARAMETERS.DRIVE_TYPE
|
; FAT_PARAMETERS.DRIVE_TYPE
|
||||||
; FAT_PARAMETERS.SectorsPerFAT16
|
; FAT_PARAMETERS.SectorsPerFAT16
|
||||||
; FAT_PARAMETERS.SectorsPerFAT32
|
; FAT_PARAMETERS.SectorsPerFAT32
|
||||||
|
; FAT_PARAMETERS.RESERVED_SECTORS
|
||||||
|
; FAT_PARAMETERS.FilesInRootDIR
|
||||||
.STEP3: CALL GET_DRIVE_TYPE
|
.STEP3: CALL GET_DRIVE_TYPE
|
||||||
JR C,STOP_ERROR
|
JR C,STOP_ERROR
|
||||||
;
|
;
|
||||||
LD A,B
|
LD A,B
|
||||||
LD (FAT_PARAMETERS.DRIVE_TYPE),A
|
LD (FAT_PARAMETERS.DRIVE_TYPE),A
|
||||||
|
;
|
||||||
|
CALL SET_RESERVED_AND_ROOTDIR
|
||||||
|
;
|
||||||
LD HL,(FAT_PARAMETERS.SectorsPerDrive)
|
LD HL,(FAT_PARAMETERS.SectorsPerDrive)
|
||||||
LD A,H
|
LD A,H
|
||||||
OR L
|
OR L
|
||||||
@ -292,6 +247,7 @@ CALCULATE_FAT: CALL .STEP1 ;
|
|||||||
LD HL,(CALC_TOTAL_CLUSTERS.fat_size_l)
|
LD HL,(CALC_TOTAL_CLUSTERS.fat_size_l)
|
||||||
LD A,(VARIABLES.FAT_TYPE)
|
LD A,(VARIABLES.FAT_TYPE)
|
||||||
CP CONSTANTS.FAT32
|
CP CONSTANTS.FAT32
|
||||||
|
LD DE,"32"
|
||||||
JR Z,.it_is_fat32
|
JR Z,.it_is_fat32
|
||||||
;
|
;
|
||||||
LD (FAT_PARAMETERS.SectorsPerFAT16),HL
|
LD (FAT_PARAMETERS.SectorsPerFAT16),HL
|
||||||
@ -322,15 +278,45 @@ STOP_ERROR:
|
|||||||
; (VARIABLES.total_clusters_H)
|
; (VARIABLES.total_clusters_H)
|
||||||
; (CALC_TOTAL_CLUSTERS.fat_size_l)
|
; (CALC_TOTAL_CLUSTERS.fat_size_l)
|
||||||
; (CALC_TOTAL_CLUSTERS.fat_size_h)
|
; (CALC_TOTAL_CLUSTERS.fat_size_h)
|
||||||
|
|
||||||
CALC_TOTAL_CLUSTERS:
|
CALC_TOTAL_CLUSTERS:
|
||||||
; calc rootdir sectors
|
|
||||||
LD A,(VARIABLES.FAT_TYPE)
|
LD A,(VARIABLES.FAT_TYPE)
|
||||||
SUB CONSTANTS.FAT32
|
SUB CONSTANTS.FAT32
|
||||||
LD B,A
|
JR Z,.no_root_dir
|
||||||
LD C,A
|
; calc rootdir sectors
|
||||||
JR Z,
|
LD HL,(FAT_PARAMETERS.FilesInRootDIR)
|
||||||
|
XOR A
|
||||||
|
LD B,5 ; AHL<<5 = AHL*32
|
||||||
|
CALL AHL_RL_B
|
||||||
|
; B=0
|
||||||
|
PUSH HL
|
||||||
|
POP IX
|
||||||
|
LD H,B
|
||||||
|
LD L,A
|
||||||
|
LD BC,(FAT_PARAMETERS.BytesPerSector)
|
||||||
|
;HLIX/BC -> HLIX remainder DE
|
||||||
|
CALL HLIX_div_BC
|
||||||
|
LD A,D
|
||||||
|
OR E
|
||||||
|
JR Z,.no_plus_one
|
||||||
|
;
|
||||||
|
LD BC,1
|
||||||
|
ADD IX,BC
|
||||||
|
DEC C
|
||||||
|
ADC HL,BC
|
||||||
|
.no_plus_one: ; HL:IX - rootdir sectors
|
||||||
|
LD (VARIABLES.RootDirSectors),IX
|
||||||
|
LD A,L
|
||||||
|
LD (VARIABLES.RootDirSectors + 2),A
|
||||||
|
; ª®à४â¨à㥬 § 票¥ FilesInRootDIR
|
||||||
|
LD BC,(FAT_PARAMETERS.BytesPerSector)
|
||||||
|
LD DE,(VARIABLES.RootDirSectors)
|
||||||
|
CALL MUL32_POWER2
|
||||||
|
LD A,L
|
||||||
|
EX DE,HL
|
||||||
|
LD B,5 ; AHL>>5 = AHL/32
|
||||||
|
CALL AHL_RR_B
|
||||||
|
LD (FAT_PARAMETERS.FilesInRootDIR),HL
|
||||||
|
.no_root_dir: ;
|
||||||
.t_sec_h+1: LD DE,0
|
.t_sec_h+1: LD DE,0
|
||||||
.t_sec_l+1: LD HL,0
|
.t_sec_l+1: LD HL,0
|
||||||
; data_sectors
|
; data_sectors
|
||||||
@ -343,7 +329,7 @@ CALC_TOTAL_CLUSTERS:
|
|||||||
AND A
|
AND A
|
||||||
DEC DE
|
DEC DE
|
||||||
.skip_dec_DE: ; DE:HL = total_sectors - reserved_sectors
|
.skip_dec_DE: ; DE:HL = total_sectors - reserved_sectors
|
||||||
PUSH DE
|
.push_regs: PUSH DE
|
||||||
PUSH HL
|
PUSH HL
|
||||||
;num_fats * fat_sz32; fat_sz32 ¢ ª« áâ¥à å
|
;num_fats * fat_sz32; fat_sz32 ¢ ª« áâ¥à å
|
||||||
.fat_size_l+1: LD BC,0
|
.fat_size_l+1: LD BC,0
|
||||||
@ -357,13 +343,14 @@ CALC_TOTAL_CLUSTERS:
|
|||||||
POP DE
|
POP DE
|
||||||
;num_fats * fat_sz32 = BCDE
|
;num_fats * fat_sz32 = BCDE
|
||||||
;
|
;
|
||||||
LD HL,(VARIABLES.RootDirSectors) ; !FIXIT ¯¨á âì ¯à®æ¥¤ãàã ¢ëç¨á«¥¨ï RootDirSectors ¤® ¢ë§®¢ í⮩
|
LD HL,(VARIABLES.RootDirSectors)
|
||||||
ADD HL,DE
|
ADD HL,DE
|
||||||
JR NC,.skip_inc
|
EX DE,HL
|
||||||
;
|
LD HL,(VARIABLES.RootDirSectors + 2)
|
||||||
AND A
|
LD H,0
|
||||||
INC BC
|
ADC HL,BC
|
||||||
.skip_inc: EX DE,HL
|
LD B,H
|
||||||
|
LD C,L
|
||||||
;num_fats * fat_sz32 + root_dir_sectors = BC:DE
|
;num_fats * fat_sz32 + root_dir_sectors = BC:DE
|
||||||
;
|
;
|
||||||
POP HL
|
POP HL
|
||||||
@ -439,13 +426,83 @@ CALC_TOTAL_CLUSTERS:
|
|||||||
|
|
||||||
|
|
||||||
;-----------------------------------------------------------------------
|
;-----------------------------------------------------------------------
|
||||||
;!TODO ¤®¤¥« âì ¤«ï ¤¨áª¥â
|
SET_RESERVED_AND_ROOTDIR:
|
||||||
|
LD A,(VARIABLES.FAT_TYPE)
|
||||||
|
CP CONSTANTS.FAT32
|
||||||
|
JR Z,.for_fat32
|
||||||
|
; FAT12_16
|
||||||
|
; ‘â ¢¨¬ ¤¥ä®«âë¥ § 票ï
|
||||||
|
LD A,(FAT_PARAMETERS.DRIVE_TYPE)
|
||||||
|
CP BOOT_SECTOR.Hard_Drive
|
||||||
|
LD HL,CONSTANTS.FAT_ReservedSectors.HDD
|
||||||
|
LD DE,CONSTANTS.FilesInRootDIR.HDD
|
||||||
|
JR Z,.set_vars
|
||||||
|
; #F0
|
||||||
|
CP BOOT_SECTOR.Floppy_3x5_1x44
|
||||||
|
LD HL,CONSTANTS.FAT_ReservedSectors.FDD
|
||||||
|
LD DE,CONSTANTS.FilesInRootDIR.FDD_HD
|
||||||
|
JR Z,.set_vars
|
||||||
|
; #F9
|
||||||
|
LD A,(VARIABLES.DriveExtendedParameters)
|
||||||
|
RLA
|
||||||
|
JR C,.set_vars ; 5.25 / 1200
|
||||||
|
; 720
|
||||||
|
LD DE,CONSTANTS.FilesInRootDIR.FDD_DD
|
||||||
|
.set_vars: CALL .ChooseReserved
|
||||||
|
EX DE,HL
|
||||||
|
CALL .ChooseFilesInRootDIR
|
||||||
|
RET
|
||||||
|
;
|
||||||
|
.for_fat32: LD A,(KEYS_PARAMETERS.FilesInRootDIR + KEYS_PARAMETERS.Status)
|
||||||
|
DEC A
|
||||||
|
JR NZ,.set_for_fat32
|
||||||
|
;
|
||||||
|
LD A,KEYS_PARAMETERS.Status.Ignored
|
||||||
|
LD (KEYS_PARAMETERS.FilesInRootDIR + KEYS_PARAMETERS.Status),A
|
||||||
|
.set_for_fat32: LD HL,CONSTANTS.FAT_ReservedSectors.FAT32
|
||||||
|
LD DE,CONSTANTS.FilesInRootDIR.HDD
|
||||||
|
JR .set_vars
|
||||||
|
;
|
||||||
|
;
|
||||||
|
.ChooseFilesInRootDIR:
|
||||||
|
LD A,(KEYS_PARAMETERS.FilesInRootDIR + KEYS_PARAMETERS.Status)
|
||||||
|
DEC A
|
||||||
|
JR NZ,.noChangeRootDir
|
||||||
|
;
|
||||||
|
LD HL,(KEYS_PARAMETERS.FilesInRootDIR + KEYS_PARAMETERS.Data)
|
||||||
|
.noChangeRootDir:
|
||||||
|
LD (FAT_PARAMETERS.FilesInRootDIR),HL
|
||||||
|
RET
|
||||||
|
;
|
||||||
|
;
|
||||||
|
.ChooseReserved:
|
||||||
|
LD A,(KEYS_PARAMETERS.RESERVED_SECTORS + KEYS_PARAMETERS.Status)
|
||||||
|
DEC A
|
||||||
|
JR NZ,.noChangeReserved
|
||||||
|
;
|
||||||
|
LD HL,(KEYS_PARAMETERS.RESERVED_SECTORS + KEYS_PARAMETERS.Data)
|
||||||
|
.noChangeReserved:
|
||||||
|
LD (FAT_PARAMETERS.RESERVED_SECTORS),HL
|
||||||
|
RET
|
||||||
|
;-----------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
|
;-----------------------------------------------------------------------
|
||||||
GET_DRIVE_TYPE: LD A,(FAT_PARAMETERS.BPB_PHISICAL_DRIVE_NUMBER)
|
GET_DRIVE_TYPE: LD A,(FAT_PARAMETERS.BPB_PHISICAL_DRIVE_NUMBER)
|
||||||
CP DRIVE_CODES.SPRINTER.ATA
|
AND A ; DRIVE_CODES.SPRINTER.FDD
|
||||||
LD B,BOOT_SECTOR.Hard_Drive
|
LD B,BOOT_SECTOR.Hard_Drive
|
||||||
|
RET NZ
|
||||||
|
; FDD
|
||||||
|
LD A,(VARIABLES.DriveExtendedParameters)
|
||||||
|
RLA
|
||||||
|
LD B,BOOT_SECTOR.Floppy_3x5_720
|
||||||
|
RET NC
|
||||||
|
;
|
||||||
|
AND %0000'1000
|
||||||
|
LD B,BOOT_SECTOR.Floppy_3x5_1x44
|
||||||
RET Z
|
RET Z
|
||||||
; ¤¨áª¥âë ¨ ª®£¤ -¨¡ã¤ì ATAPI
|
;
|
||||||
SCF
|
LD B,BOOT_SECTOR.Floppy_8_1x20
|
||||||
RET
|
RET
|
||||||
;-----------------------------------------------------------------------
|
;-----------------------------------------------------------------------
|
||||||
|
|
||||||
@ -630,7 +687,7 @@ FORMAT_DRIVE: CALL CLEAN_SECTOR_BUFFER
|
|||||||
.loop32: INC HL
|
.loop32: INC HL
|
||||||
LD (HL),E
|
LD (HL),E
|
||||||
DJNZ .loop32
|
DJNZ .loop32
|
||||||
INC Hl
|
INC HL
|
||||||
LD (HL),D
|
LD (HL),D
|
||||||
; EX DE,HL
|
; EX DE,HL
|
||||||
; ;LD DE,SECTOR_BUFFER + 3
|
; ;LD DE,SECTOR_BUFFER + 3
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user