mirror of
https://github.com/Tolik-Trek/FORMAT.git
synced 2026-06-15 09:21:40 +03:00
first beta
This commit is contained in:
parent
bb0a225030
commit
8955783ba6
50
Messages.z80
50
Messages.z80
@ -88,22 +88,50 @@ PARAMS_MSG: BYTE "\r\nDrive "
|
|||||||
PARAMS_MSG: BYTE "\r\nDrive "
|
PARAMS_MSG: BYTE "\r\nDrive "
|
||||||
.disk: BYTE "A: "
|
.disk: BYTE "A: "
|
||||||
BYTE "will be formatted using the current settings:\r\n\r\n"
|
BYTE "will be formatted using the current settings:\r\n\r\n"
|
||||||
BYTE "Partition size:\t"
|
BYTE "Partition size:\t "
|
||||||
.fullSize: BYTE " bytes\r\n"
|
.fullSize: BYTE " bytes\r\n"
|
||||||
BYTE "Available size:\t"
|
BYTE "Available size:\t "
|
||||||
.dataSize: BYTE " bytes\r\n"
|
.dataSize: BYTE " bytes\r\n"
|
||||||
BYTE "Unused space:\t"
|
BYTE "Unused space:\t "
|
||||||
.unused: BYTE " bytes\r\n"
|
.unused: BYTE " bytes\r\n"
|
||||||
BYTE "Clusters:\t"
|
BYTE "Clusters:\t "
|
||||||
.Clusters: BYTE " \r\n"
|
.Clusters: BYTE " \r\n"
|
||||||
BYTE "Cluster size:\t"
|
BYTE "Cluster size:\t "
|
||||||
.Clu_size: BYTE " bytes\r\n"
|
.Clu_size: BYTE " bytes\r\n"
|
||||||
BYTE "File system:\t"
|
BYTE "File system:\t "
|
||||||
.FATtxt: BYTE "FAT \r\n"
|
.FATtxt: BYTE "FAT \r\n"
|
||||||
BYTE "Serial:\t\t"
|
BYTE "Serial:\t\t "
|
||||||
.Serial: BYTE "0000-0000\r\n"
|
.Serial: BYTE "0000-0000\r\n"
|
||||||
BYTE "Label:\t\t"
|
BYTE "Label:\t\t ", '"'
|
||||||
.LabelTxt: BYTE "NO LABEL \r\n\r\n"
|
.LabelTxt: BYTE 'NO LABEL "',"\r\n\r\n"
|
||||||
BYTE 'Press "Y" for format or any other key to exit', "\r\n"
|
BYTE 'Press "Y" for format or any other key to exit', "\r\n"
|
||||||
BYTE 0
|
BYTE 0
|
||||||
;-----------------------------------------------------------------------
|
;-----------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
|
;-----------------------------------------------------------------------
|
||||||
|
FORMATING_MSG: DZ "\rFormating drive. Please wait...\r\n"
|
||||||
|
;-----------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
|
;-----------------------------------------------------------------------
|
||||||
|
DONE_MSG: DZ "Done!\r\n\r\n"
|
||||||
|
;-----------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
|
;-----------------------------------------------------------------------
|
||||||
|
CANCELED_MSG: DZ "\r‘ancelled!\r\n\r\n"
|
||||||
|
;-----------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
|
;-----------------------------------------------------------------------
|
||||||
|
HELP_MSG: BYTE "DDF it`s quck formating utility.\r\n"
|
||||||
|
BYTE "First parameter - drive letter.\r\n"
|
||||||
|
BYTE "Available keys:\r\n"
|
||||||
|
BYTE "/? - for this help,\r\n"
|
||||||
|
BYTE '/l "label" - for label.',"\r\n"
|
||||||
|
BYTE "Example:\r\n"
|
||||||
|
DZ 'format e: /l "dsk label"',"\r\n\r\n"
|
||||||
|
;-----------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
39
Strings.asm
39
Strings.asm
@ -35,8 +35,11 @@ PRINT_5BYTES: PUSH BC
|
|||||||
CALL GET_BIG_DIG
|
CALL GET_BIG_DIG
|
||||||
; DE':DE = 100,000,000
|
; DE':DE = 100,000,000
|
||||||
CALL .skip_1
|
CALL .skip_1
|
||||||
POP DE ; "000 000 000 000"
|
;
|
||||||
LD HL,L40BIT.Str ; "0000000000"
|
; ä®à¬ â¨à®¢ ¨¥ ¯® à §àï¤ ¬
|
||||||
|
POP DE ; "000.000.000.000"
|
||||||
|
PUSH DE
|
||||||
|
LD HL,L40BIT.Str ; "000000000000"
|
||||||
LDI
|
LDI
|
||||||
LDI
|
LDI
|
||||||
LD A,(HL)
|
LD A,(HL)
|
||||||
@ -44,7 +47,7 @@ PRINT_5BYTES: PUSH BC
|
|||||||
CP " "
|
CP " "
|
||||||
JR Z,1F
|
JR Z,1F
|
||||||
;
|
;
|
||||||
LD A,"," ; à §¤. à §à冷¢
|
LD A,"." ; à §¤. à §à冷¢
|
||||||
1: LD (DE),A
|
1: LD (DE),A
|
||||||
INC DE
|
INC DE
|
||||||
LDI
|
LDI
|
||||||
@ -54,7 +57,7 @@ PRINT_5BYTES: PUSH BC
|
|||||||
CP " "
|
CP " "
|
||||||
JR Z,1F
|
JR Z,1F
|
||||||
;
|
;
|
||||||
LD A,"," ; à §¤. à §à冷¢
|
LD A,"." ; à §¤. à §à冷¢
|
||||||
1: LD (DE),A
|
1: LD (DE),A
|
||||||
INC DE
|
INC DE
|
||||||
LDI
|
LDI
|
||||||
@ -64,13 +67,33 @@ PRINT_5BYTES: PUSH BC
|
|||||||
CP " "
|
CP " "
|
||||||
JR Z,1F
|
JR Z,1F
|
||||||
;
|
;
|
||||||
LD A,"," ; à §¤. à §à冷¢
|
LD A,"." ; à §¤. à §à冷¢
|
||||||
1: LD (DE),A
|
1: LD (DE),A
|
||||||
INC DE
|
INC DE
|
||||||
LDI
|
LDI
|
||||||
LDI
|
LDI
|
||||||
LDI
|
LDI
|
||||||
;SCF
|
;
|
||||||
|
POP HL
|
||||||
|
LD D,H
|
||||||
|
LD E,L
|
||||||
|
LD BC,15 + 1 ;!HARDCODE ¤«¨ ¢ë室®£® ¡ãä¥à á ä®à¬ â¨à®¢ ë¬ ç¨á«®¬
|
||||||
|
.loop_space: DEC C
|
||||||
|
INC B
|
||||||
|
LD A,(HL)
|
||||||
|
INC HL
|
||||||
|
SUB ' '
|
||||||
|
JR Z,.loop_space
|
||||||
|
;
|
||||||
|
DEC HL
|
||||||
|
LD A,B
|
||||||
|
LD B,0
|
||||||
|
LDIR
|
||||||
|
LD B,A
|
||||||
|
EX DE,HL
|
||||||
|
.loop2: LD (HL),' '
|
||||||
|
INC HL
|
||||||
|
DJNZ .loop2
|
||||||
RET
|
RET
|
||||||
;
|
;
|
||||||
.skip_1: EXX
|
.skip_1: EXX
|
||||||
@ -184,9 +207,7 @@ GET_BIG_DIG: LD B,"0"-1
|
|||||||
RET
|
RET
|
||||||
;
|
;
|
||||||
L40BIT: DB " " ; ¬ àª¥à ¤«ï ix-1
|
L40BIT: DB " " ; ¬ àª¥à ¤«ï ix-1
|
||||||
.Str: DB " " ; 00
|
.Str: DB " 0" ; 12 § ª®¢
|
||||||
L32BIT_: DB " " ; 000000000
|
|
||||||
.end: DB "0"
|
|
||||||
;
|
;
|
||||||
; SIZE_BUFFER: db " " ; ¬ àª¥à ¤«ï ix-1
|
; SIZE_BUFFER: db " " ; ¬ àª¥à ¤«ï ix-1
|
||||||
; .high db " " ; "00"
|
; .high db " " ; "00"
|
||||||
|
|||||||
@ -40,7 +40,7 @@
|
|||||||
; ®¬¥à ¢¥àᨨ (0..9)
|
; ®¬¥à ¢¥àᨨ (0..9)
|
||||||
VERS EQU 0
|
VERS EQU 0
|
||||||
; ®¬¥à ¬®¤¨ä¨ª 樨 (0..99)
|
; ®¬¥à ¬®¤¨ä¨ª 樨 (0..99)
|
||||||
MODF EQU 50
|
MODF EQU 60
|
||||||
; ®¬¥à ¡¨«¤ (0..999)
|
; ®¬¥à ¡¨«¤ (0..999)
|
||||||
BUILD EQU lua_BUILD
|
BUILD EQU lua_BUILD
|
||||||
;
|
;
|
||||||
|
|||||||
47
data.z80
47
data.z80
@ -33,30 +33,47 @@ FAT_ReservedSectors:
|
|||||||
|
|
||||||
;-----------------------------------------------------------------------
|
;-----------------------------------------------------------------------
|
||||||
MACRO FAT_TYPES_LINE vol_size, clu_size, fat_type
|
MACRO FAT_TYPES_LINE vol_size, clu_size, fat_type
|
||||||
WORD vol_size, clu_size
|
DWORD vol_size
|
||||||
|
WORD clu_size
|
||||||
BYTE fat_type
|
BYTE fat_type
|
||||||
ENDM
|
ENDM
|
||||||
|
|
||||||
MODULE TABLES
|
MODULE TABLES
|
||||||
; VOL SIZE CLUSTER SIZE FAT TYPE
|
; VOL SIZE CLUSTER SIZE FAT TYPE
|
||||||
FAT_TYPES: FAT_TYPES_LINE #0800, 32768, CONSTANTS.FAT32 ; > 32768
|
FAT_TYPES: FAT_TYPES_LINE #04000000, 32768, CONSTANTS.FAT32 ; > 16383
|
||||||
FAT_TYPES_LINE #0400, 16384, CONSTANTS.FAT32 ; 16384..32768 Mb
|
FAT_TYPES_LINE #02000000, 16384, CONSTANTS.FAT32 ; 8191..16383 Mb
|
||||||
FAT_TYPES_LINE #0200, 8192, CONSTANTS.FAT32 ; 8192..16384 Mb
|
FAT_TYPES_LINE #01000000, 8192, CONSTANTS.FAT32 ; 4095..8191 Mb
|
||||||
FAT_TYPES_LINE #0080, 4096, CONSTANTS.FAT32 ; 2048..8192 Mb
|
FAT_TYPES_LINE #007FFE80, 4096, CONSTANTS.FAT32 ; 2048..4095 Mb
|
||||||
FAT_TYPES_LINE #0060, 32768, CONSTANTS.FAT16 ; 1536..2047 Mb
|
FAT_TYPES_LINE #00400140, 32768, CONSTANTS.FAT16 ; 1023..2047 Mb
|
||||||
FAT_TYPES_LINE #0040, 16384, CONSTANTS.FAT16 ; 1023..1535 Mb
|
FAT_TYPES_LINE #002002A0, 16384, CONSTANTS.FAT16 ; 511..1023 Mb
|
||||||
FAT_TYPES_LINE #0020, 8192, CONSTANTS.FAT16 ; 511..1023 Mb
|
FAT_TYPES_LINE #00100350, 8192, CONSTANTS.FAT16 ; 255..511 Mb
|
||||||
FAT_TYPES_LINE #0010, 4096, CONSTANTS.FAT16 ; 256..511 Mb
|
FAT_TYPES_LINE #000803A8, 4096, CONSTANTS.FAT16 ; 127..255 Mb
|
||||||
FAT_TYPES_LINE #0008, 2048, CONSTANTS.FAT16 ; 128..256 Mb
|
FAT_TYPES_LINE #0001FED0, 2048, CONSTANTS.FAT16 ; 32..127 Mb
|
||||||
FAT_TYPES_LINE #0004, 1024, CONSTANTS.FAT16 ; 64..128 Mb
|
FAT_TYPES_LINE #0000FF80, 8192, CONSTANTS.FAT12 ; 16..32 Mb
|
||||||
FAT_TYPES_LINE #0002, 512, CONSTANTS.FAT16 ; 32..64 Mb
|
FAT_TYPES_LINE #00007FD8, 4096, CONSTANTS.FAT12 ; 8..16 Mb
|
||||||
; ¥á«¨ ¬¥ìè¥, â® FAT12
|
FAT_TYPES_LINE #00004004, 2048, CONSTANTS.FAT12 ; 4..8 Mb
|
||||||
.LineSize EQU 5
|
FAT_TYPES_LINE #0000201A, 1024, CONSTANTS.FAT12 ; 2..4 Mb
|
||||||
|
FAT_TYPES_LINE #000012C0, 512, CONSTANTS.FAT12 ; 1,2..2 Mb
|
||||||
|
FAT_TYPES_LINE #000005A0, 1024, CONSTANTS.FAT12 ; 0,36..1.1 Mb
|
||||||
|
FAT_TYPES_LINE #00000008, 512, CONSTANTS.FAT12 ; 0..0,35 Mb
|
||||||
|
; ¥á«¨ ¬¥ìè¥, â® error
|
||||||
|
.LineSize EQU 7
|
||||||
.Records EQU ($ - FAT_TYPES)/.LineSize
|
.Records EQU ($ - FAT_TYPES)/.LineSize
|
||||||
ENDMODULE
|
ENDMODULE
|
||||||
|
;
|
||||||
|
; ¤«ï ¤¢ãå â ¡«¨æ FAT „«ï ®¤®©
|
||||||
|
; #007FFE80 #007FFC80 ; 2048..8191 Mb
|
||||||
|
; #00400140 #003FFF40 ; 1023..2047 Mb
|
||||||
|
; #002002A0 #002000A0 ; 511..1023 Mb
|
||||||
|
; #00100350 #00100150 ; 255..511 Mb
|
||||||
|
; #000803A8 #000801A8 ; 127..255 Mb
|
||||||
|
; #0001FED0 #0001FEB8 ; 32..127 Mb
|
||||||
|
; #0000FF80 #0000FF68 ; 16..32 Mb
|
||||||
|
; #00007FD8 #00007FC0 ; 8..16 Mb
|
||||||
|
; #00004004 #00003FEC ; 4..8 Mb
|
||||||
|
; #0000201A #00002002 ; 2..4 Mb
|
||||||
;-----------------------------------------------------------------------
|
;-----------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
;-----------------------------------------------------------------------
|
;-----------------------------------------------------------------------
|
||||||
MODULE KEYS_PARAMETERS
|
MODULE KEYS_PARAMETERS
|
||||||
|
|
||||||
|
|||||||
@ -1 +1 @@
|
|||||||
69
|
95
|
||||||
BIN
fat_table.xlsx
Normal file
BIN
fat_table.xlsx
Normal file
Binary file not shown.
116
format.asm
116
format.asm
@ -153,11 +153,13 @@ DSS_DRIVE_FORMAT:
|
|||||||
;
|
;
|
||||||
MAKE_AUTO: CALL CALCULATE_FAT
|
MAKE_AUTO: CALL CALCULATE_FAT
|
||||||
CALL SHOW_FORMAT_PARAMETERS
|
CALL SHOW_FORMAT_PARAMETERS
|
||||||
JP C,STOP_ERROR ; abort
|
;JP C,STOP_ERROR ; abort
|
||||||
CALL FORMAT_DRIVE
|
CALL FORMAT_DRIVE
|
||||||
CALL MAKE_LABEL_IN_DIR ; ¯¥à¢ ï § ¯¨áì ¢ root dir - ¬¥âª , ¯®â®¬ 㫨
|
CALL MAKE_LABEL_IN_DIR ; ¯¥à¢ ï § ¯¨áì ¢ root dir - ¬¥âª , ¯®â®¬ 㫨
|
||||||
JP C,STOP_ERROR
|
JP C,STOP_ERROR
|
||||||
LD B,DSS_Error.sys.NO_ERROR
|
LD B,DSS_Error.sys.NO_ERROR
|
||||||
|
LD HL,DONE_MSG
|
||||||
|
LD (EXIT.msg),HL
|
||||||
JP EXIT
|
JP EXIT
|
||||||
|
|
||||||
;-----------------------------------------------------------------------
|
;-----------------------------------------------------------------------
|
||||||
@ -178,7 +180,7 @@ CALCULATE_FAT: CALL .STEP1 ;
|
|||||||
RST ToDSS.DRV
|
RST ToDSS.DRV
|
||||||
JR NC,.set_hidden
|
JR NC,.set_hidden
|
||||||
;
|
;
|
||||||
CP BIOS.Error.InvalidSubFunction
|
CP DSS_Error.drv.INVALID_COMMAND
|
||||||
JP NZ,STOP_ERROR
|
JP NZ,STOP_ERROR
|
||||||
; ¥á«¨ ¥â â ª®© ¯®¤äãªæ¨¨ ¢ ¤à ©¢¥à¥, ⮠ᬥ饨¥ = 0
|
; ¥á«¨ ¥â â ª®© ¯®¤äãªæ¨¨ ¢ ¤à ©¢¥à¥, ⮠ᬥ饨¥ = 0
|
||||||
LD HL,0
|
LD HL,0
|
||||||
@ -320,6 +322,8 @@ CALCULATE_FAT: CALL .STEP1 ;
|
|||||||
STOP_ERROR:
|
STOP_ERROR:
|
||||||
.Save_SP+1: LD SP,0
|
.Save_SP+1: LD SP,0
|
||||||
LD B,DSS_Error.sys.INVALID_FUNCTION
|
LD B,DSS_Error.sys.INVALID_FUNCTION
|
||||||
|
LD HL,Error_Msg
|
||||||
|
LD (EXIT.msg),HL
|
||||||
;!TODO
|
;!TODO
|
||||||
|
|
||||||
EXIT: LD C,Dss.Exit
|
EXIT: LD C,Dss.Exit
|
||||||
@ -328,13 +332,13 @@ EXIT: LD C,Dss.Exit
|
|||||||
LD C,Dss.ChDir
|
LD C,Dss.ChDir
|
||||||
RST ToDSS
|
RST ToDSS
|
||||||
;
|
;
|
||||||
POP BC
|
; POP BC
|
||||||
LD A,B
|
; LD A,B
|
||||||
AND A
|
; AND A
|
||||||
JP Z,ToDSS
|
; JP Z,ToDSS
|
||||||
;
|
;
|
||||||
PUSH BC
|
; PUSH BC
|
||||||
LD HL,Error_Msg
|
.msg+1: LD HL,Error_Msg
|
||||||
LD C,Dss.PChars
|
LD C,Dss.PChars
|
||||||
RST ToDSS
|
RST ToDSS
|
||||||
;
|
;
|
||||||
@ -679,36 +683,47 @@ GET_DRIVE_TYPE: LD A,(FAT_PARAMETERS.BPB_PHISICAL_DRIVE_NUMBER)
|
|||||||
; <- DE - CLUSTER SIZE.
|
; <- DE - CLUSTER SIZE.
|
||||||
; C - FAT TYPE.
|
; C - FAT TYPE.
|
||||||
AUTO_CHOOSE_FAT_PARAMS:
|
AUTO_CHOOSE_FAT_PARAMS:
|
||||||
LD DE,(VARIABLES.VOLUME_SIZE_BYTES + 3)
|
LD DE,(VARIABLES.VOLUME_SIZE_BYTES + 1)
|
||||||
|
EXX
|
||||||
|
LD DE,(VARIABLES.VOLUME_SIZE_BYTES + 3) ; 00:0000:0000
|
||||||
LD IX,TABLES.FAT_TYPES
|
LD IX,TABLES.FAT_TYPES
|
||||||
LD A,TABLES.FAT_TYPES.Records
|
LD A,TABLES.FAT_TYPES.Records
|
||||||
LD BC,TABLES.FAT_TYPES.LineSize
|
LD BC,TABLES.FAT_TYPES.LineSize
|
||||||
.loop: LD L,(IX)
|
.loop: LD L,(IX+2)
|
||||||
LD H,(IX+1)
|
LD H,(IX+3)
|
||||||
AND A
|
AND A
|
||||||
SBC HL,DE
|
SBC HL,DE
|
||||||
JR C,.found
|
JR C,.found
|
||||||
|
JR NZ,.next
|
||||||
|
;
|
||||||
|
EXX
|
||||||
|
LD L,(IX)
|
||||||
|
LD H,(IX+1)
|
||||||
|
SBC HL,DE
|
||||||
|
EXX
|
||||||
|
JR C,.found
|
||||||
JR Z,.found
|
JR Z,.found
|
||||||
;
|
;
|
||||||
ADD IX,BC
|
.next: ADD IX,BC
|
||||||
DEC A
|
DEC A
|
||||||
JR NZ,.loop
|
JR NZ,.loop
|
||||||
; ã á FAT12 c ª« áâ¥à®¬ ¢ 512
|
; ã á FAT12 c ª« áâ¥à®¬ ¢ 512
|
||||||
; ¤® ¯à®¢¥à¨âì à §¤¥« ¬¨¨¬ «ìë© à §¬¥à ¤«ï FAT
|
; ¤® ¯à®¢¥à¨âì à §¤¥« ¬¨¨¬ «ìë© à §¬¥à ¤«ï FAT
|
||||||
; sec_bpb + sec_fat + sec_root_dir + sec_for_data
|
; sec_bpb + sec_fat + sec_root_dir + sec_for_data
|
||||||
LD A,D
|
; LD A,D
|
||||||
OR E
|
; OR E
|
||||||
JR NZ,.found
|
; JR NZ,.found
|
||||||
;
|
; ;
|
||||||
LD HL,(VARIABLES.VOLUME_SIZE_BYTES + 1)
|
; LD HL,(VARIABLES.VOLUME_SIZE_BYTES + 1)
|
||||||
LD DE,8
|
; LD DE,8
|
||||||
SBC HL,DE
|
; SBC HL,DE
|
||||||
RET C ; à §¤¥« ᫨誮¬ ¬ « ¤«ï FAT12 (<2048)
|
RET C ; à §¤¥« ᫨誮¬ ¬ « ¤«ï FAT12 (<2048)
|
||||||
.found: ; ¤®áâ ñ¬ ¯ à ¬¥âàë ¨§ â ¡«¨æë
|
.found: ; ¤®áâ ñ¬ ¯ à ¬¥âàë ¨§ â ¡«¨æë
|
||||||
DI
|
DI
|
||||||
LD (.restore_SP),SP
|
LD (.restore_SP),SP
|
||||||
LD SP,IX
|
LD SP,IX
|
||||||
POP HL ; 宫®á⮥
|
POP HL ; 宫®á⮥
|
||||||
|
POP HL ; 宫®á⮥
|
||||||
POP DE ; CLUSTER SIZE
|
POP DE ; CLUSTER SIZE
|
||||||
POP BC ; C - FAT TYPE
|
POP BC ; C - FAT TYPE
|
||||||
LD A,C
|
LD A,C
|
||||||
@ -1054,7 +1069,7 @@ PARSE_CMD: LD A,(HL)
|
|||||||
INC HL
|
INC HL
|
||||||
AND %1101'1111
|
AND %1101'1111
|
||||||
SUB 'A'
|
SUB 'A'
|
||||||
JP C,STOP_ERROR
|
JP C,SHOW_HELP_NO_DISK
|
||||||
;
|
;
|
||||||
LD (VARIABLES.CurrentDrive),A
|
LD (VARIABLES.CurrentDrive),A
|
||||||
LD D,A
|
LD D,A
|
||||||
@ -1065,7 +1080,7 @@ PARSE_CMD: LD A,(HL)
|
|||||||
AND ~' '
|
AND ~' '
|
||||||
ADD A,E
|
ADD A,E
|
||||||
SUB ':'
|
SUB ':'
|
||||||
JP NZ,STOP_ERROR
|
JP NZ,SHOW_HELP_NO_DISK
|
||||||
; ⮫쪮 ¤«ï ⮣®, ç⮡ ®¡®¢¨âì ¯ à ¬¥âàë ¤à ©¢ (¢¤à㣠¤¨áª¥âã ᬥ¨«¨?)
|
; ⮫쪮 ¤«ï ⮣®, ç⮡ ®¡®¢¨âì ¯ à ¬¥âàë ¤à ©¢ (¢¤à㣠¤¨áª¥âã ᬥ¨«¨?)
|
||||||
PUSH HL
|
PUSH HL
|
||||||
LD A,D
|
LD A,D
|
||||||
@ -1180,7 +1195,7 @@ SHOW_FORMAT_PARAMETERS:
|
|||||||
LD HL,(FAT_PARAMETERS.ID_FAT+3)
|
LD HL,(FAT_PARAMETERS.ID_FAT+3)
|
||||||
LD (PARAMS_MSG.FATtxt + 3),HL
|
LD (PARAMS_MSG.FATtxt + 3),HL
|
||||||
;.Serial
|
;.Serial
|
||||||
LD HL,FAT_PARAMETERS.SERIAL_NUMBER_2
|
LD HL,FAT_PARAMETERS.SERIAL_NUMBER_2 + 1
|
||||||
LD DE,PARAMS_MSG.Serial
|
LD DE,PARAMS_MSG.Serial
|
||||||
CALL .make_Serial
|
CALL .make_Serial
|
||||||
INC DE
|
INC DE
|
||||||
@ -1207,8 +1222,11 @@ SHOW_FORMAT_PARAMETERS:
|
|||||||
LD A,D
|
LD A,D
|
||||||
AND %0111'1111
|
AND %0111'1111
|
||||||
CP #15
|
CP #15
|
||||||
RET Z
|
JR NZ,SHOW_CANCELED
|
||||||
SCF
|
;
|
||||||
|
LD HL,FORMATING_MSG
|
||||||
|
LD C,Dss.PChars
|
||||||
|
RST ToDSS
|
||||||
RET
|
RET
|
||||||
;
|
;
|
||||||
;
|
;
|
||||||
@ -1231,13 +1249,47 @@ SHOW_FORMAT_PARAMETERS:
|
|||||||
|
|
||||||
|
|
||||||
;-----------------------------------------------------------------------
|
;-----------------------------------------------------------------------
|
||||||
SHOW_VERSION: LD SP,(STOP_ERROR.Save_SP)
|
SHOW_VERSION: LD HL,Version_Msg
|
||||||
|
;-----------------------------------------------------------------------
|
||||||
|
PRINT_AND_EXIT: LD SP,(STOP_ERROR.Save_SP)
|
||||||
|
LD C,Dss.PChars
|
||||||
|
RST ToDSS
|
||||||
|
LD BC,Dss.Exit
|
||||||
|
RST ToDSS
|
||||||
|
;-----------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
|
;-----------------------------------------------------------------------
|
||||||
|
SHOW_DONE: LD HL,DONE_MSG
|
||||||
|
LD (EXIT.msg),HL
|
||||||
|
JP EXIT
|
||||||
|
;-----------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
|
;-----------------------------------------------------------------------
|
||||||
|
SHOW_CANCELED: LD HL,CANCELED_MSG
|
||||||
|
LD (EXIT.msg),HL
|
||||||
|
JP EXIT
|
||||||
|
;-----------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
|
;-----------------------------------------------------------------------
|
||||||
|
SHOW_HELP: LD HL,Version_Msg
|
||||||
|
LD C,Dss.PChars
|
||||||
|
RST ToDSS
|
||||||
|
LD HL,HELP_MSG
|
||||||
|
LD (EXIT.msg),HL
|
||||||
|
JP EXIT
|
||||||
|
;-----------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
|
;-----------------------------------------------------------------------
|
||||||
|
SHOW_HELP_NO_DISK:
|
||||||
LD HL,Version_Msg
|
LD HL,Version_Msg
|
||||||
LD C,Dss.PChars
|
LD C,Dss.PChars
|
||||||
RST ToDSS
|
RST ToDSS
|
||||||
;
|
LD HL,HELP_MSG
|
||||||
LD BC,Dss.Exit ; + 256*DSS_Error.sys.INVALID_DRIVE
|
JR PRINT_AND_EXIT
|
||||||
RST ToDSS
|
|
||||||
;-----------------------------------------------------------------------
|
;-----------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
@ -1348,14 +1400,6 @@ STRING_TO_WORD: CALL STR_TO_WORD
|
|||||||
;-----------------------------------------------------------------------
|
;-----------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
;-----------------------------------------------------------------------
|
|
||||||
;!FIXIT
|
|
||||||
SHOW_HELP: LD SP,(STOP_ERROR.Save_SP)
|
|
||||||
DI
|
|
||||||
HALT
|
|
||||||
;-----------------------------------------------------------------------
|
|
||||||
|
|
||||||
|
|
||||||
;-----------------------------------------------------------------------
|
;-----------------------------------------------------------------------
|
||||||
;!FIXIT
|
;!FIXIT
|
||||||
GET_KEY_FAT: DI
|
GET_KEY_FAT: DI
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user