функции работы с памятью не используют теперь SLOT2 - это могло вызвать баги

This commit is contained in:
Anatoliy Belyanskiy 2023-09-23 07:29:45 +10:00
parent 412759754c
commit 1506291b8d
3 changed files with 114 additions and 112 deletions

View File

@ -1,15 +1,16 @@
;===================[ ”㭪樨 à á¯à¥¤¥«¥­¨ï ¯ ¬ï⨠]===================; ;===================[ ”㭪樨 à á¯à¥¤¥«¥­¨ï ¯ ¬ï⨠]===================;
; ‚ë室: BC - FREE MEM ¢ ¡«®ª å ¯® 16k, HL - FULL MEM
;!TEST ¢á¥ SLOT2 ­  SLOT1
; ;
;----------------------------------------------------------------------; ;----------------------------------------------------------------------;
; Ž¯à¥¤¥«¥­¨¥ ®¡ê¥¬  ¯ ¬ïâ¨. ; Ž¯à¥¤¥«¥­¨¥ ®¡ê¥¬  ¯ ¬ïâ¨.
; ‚ë室: BC - FREE MEM ¢ ¡«®ª å ¯® 16k, HL - FULL MEM ; ‚ë室: BC - FREE MEM ¢ ¡«®ª å ¯® 16k, HL - FULL MEM
EMM.GetMemSize: EMM.GetMemSize:
IN A,(SLOT2) IN A,(SLOT1)
LD B,A LD B,A
LD A,SYS_PAGE LD A,SYS_PAGE
OUT (SLOT2),A OUT (SLOT1),A
LD HL,SYS_PAGE.RAMD_FAT-#4000 LD HL,SYS_PAGE.RAMD_FAT-#4000 - #4000
LD C,0 LD C,0
.loop: LD A,(HL) .loop: LD A,(HL)
INC L INC L
@ -21,7 +22,7 @@ EMM.GetMemSize:
.exit: LD HL,#100 .exit: LD HL,#100
LD A,B LD A,B
LD B,0 LD B,0
OUT (SLOT2),A OUT (SLOT1),A
RET RET
;----------------------------------------------------------------------; ;----------------------------------------------------------------------;
; ;
@ -36,11 +37,11 @@ EMM.InitMem:
PUSH HL PUSH HL
PUSH DE PUSH DE
IN A,(SLOT2) IN A,(SLOT1)
LD C,A LD C,A
LD A,SYS_PAGE LD A,SYS_PAGE
OUT (SLOT2),A OUT (SLOT1),A
LD HL,SYS_PAGE.RAMD_FAT-#4000 ; €¤à¥á FAT އ“. LD HL,SYS_PAGE.RAMD_FAT-#4000 - #4000 ; €¤à¥á FAT އ“.
; ®¡­ã«ï¥¬ â ¡«¨æã ; ®¡­ã«ï¥¬ â ¡«¨æã
.loopFree: .loopFree:
LD (HL),0 LD (HL),0
@ -65,13 +66,13 @@ EMM.InitMem:
LD L,A LD L,A
LD (HL),A LD (HL),A
; ˆ­¨æ¨ «¨§ æ¨ï ª«î祩 RAM-Disks ; ˆ­¨æ¨ «¨§ æ¨ï ª«î祩 RAM-Disks
LD HL,SYS_PAGE.RAMD_KEYS-#4000 LD HL,SYS_PAGE.RAMD_KEYS-#4000 - #4000
LD B,SYS_PAGE.RAMD_KEYS.NUM LD B,SYS_PAGE.RAMD_KEYS.NUM
.loop2: LD (HL),0 .loop2: LD (HL),0
INC L INC L
DJNZ .loop2 DJNZ .loop2
LD A,C LD A,C
OUT (SLOT2),A OUT (SLOT1),A
POP DE POP DE
POP HL POP HL
@ -115,12 +116,12 @@ RESERVED_PAGES:
EMM.GetMem: EMM.GetMem:
;PUSH DE ;PUSH DE
PUSH BC PUSH BC
IN A,(SLOT2) IN A,(SLOT1)
EX AF,AF' EX AF,AF'
LD A,SYS_PAGE LD A,SYS_PAGE
OUT (SLOT2),A OUT (SLOT1),A
LD C,B ; á®åà ­¨âì ç¨á«® ­ã¦­ëå ¡«®ª®¢ LD C,B ; á®åà ­¨âì ç¨á«® ­ã¦­ëå ¡«®ª®¢
LD HL,SYS_PAGE.RAMD_FAT-#4000 LD HL,SYS_PAGE.RAMD_FAT-#4000 - #4000
; –¨ª« ¯à®¢¥àª¨ ­ «¨ç¨ï ­ã¦­ëå ¡«®ª®¢. ; –¨ª« ¯à®¢¥àª¨ ­ «¨ç¨ï ­ã¦­ëå ¡«®ª®¢.
.loop: DEC L .loop: DEC L
JR Z,.noRAM JR Z,.noRAM
@ -132,7 +133,7 @@ EMM.GetMem:
; Œ¥áâ® ¥áâì ! ; Œ¥áâ® ¥áâì !
LD B,C ; ‚®ááâ ­®¢¨âì ­ã¦­ë© ®¡ê¥¬ ¤¨áª  LD B,C ; ‚®ááâ ­®¢¨âì ­ã¦­ë© ®¡ê¥¬ ¤¨áª 
LD C,#FF ; Œ…’Š€ ŠŽ<C5A0>€ RAM-Disk LD C,#FF ; Œ…’Š€ ŠŽ<C5A0>€ RAM-Disk
LD HL,SYS_PAGE.RAMD_FAT-#4000 LD HL,SYS_PAGE.RAMD_FAT-#4000 - #4000
; ‡ ¯®«­¨âì RAMD_FAT ; ‡ ¯®«­¨âì RAMD_FAT
.loop2: DEC L .loop2: DEC L
@ -145,7 +146,7 @@ EMM.GetMem:
; L - 㪠§ â¥«ì 楯®çª¨. ; L - 㪠§ â¥«ì 楯®çª¨.
EX AF,AF' EX AF,AF'
OUT (SLOT2),A OUT (SLOT1),A
LD A,L LD A,L
AND A AND A
POP BC POP BC
@ -154,7 +155,7 @@ EMM.GetMem:
.noRAM: LD L,1 ; <20> <20>€ŒŸˆ .noRAM: LD L,1 ; <20> <20>€ŒŸˆ
EX AF,AF' EX AF,AF'
OUT (SLOT2),A OUT (SLOT1),A
LD A,L LD A,L
SCF SCF
POP BC POP BC
@ -203,13 +204,13 @@ EMM.FreeMemRMD:
SCF SCF
RET Z RET Z
LD C,A LD C,A
IN A,(SLOT2) IN A,(SLOT1)
LD B,A LD B,A
LD A,SYS_PAGE LD A,SYS_PAGE
OUT (SLOT2),A OUT (SLOT1),A
LD (HL),0 LD (HL),0
LD A,B LD A,B
OUT (SLOT2),A OUT (SLOT1),A
LD A,C LD A,C
;JR EMM.FreeMem ;JR EMM.FreeMem
;------[ ;------[
@ -222,12 +223,12 @@ EMM.FreeMem:
RET Z RET Z
LD L,A LD L,A
IN A,(SLOT2) IN A,(SLOT1)
EX AF,AF' EX AF,AF'
LD A,SYS_PAGE LD A,SYS_PAGE
OUT (SLOT2),A OUT (SLOT1),A
LD H,high (SYS_PAGE.RAMD_FAT - #4000) LD H,high (SYS_PAGE.RAMD_FAT - #4000 - #4000)
LD A,L LD A,L
EMM_F3M_L1: EMM_F3M_L1:
LD L,A LD L,A
@ -239,14 +240,14 @@ EMM_F3M_L1:
JR NZ,EMM_F3M_L1 ; ¯à®¤®«¦ âì JR NZ,EMM_F3M_L1 ; ¯à®¤®«¦ âì
EX AF,AF' EX AF,AF'
OUT (SLOT2),A OUT (SLOT1),A
LD A,0 ;!FIXIT ­¥¤®ªã¬¥­â¨à®¢ ­® LD A,0 ;!FIXIT ­¥¤®ªã¬¥­â¨à®¢ ­®
AND A AND A
RET RET
EMM_FN3M_ERR: EMM_FN3M_ERR:
EX AF,AF' EX AF,AF'
OUT (SLOT2),A OUT (SLOT1),A
LD A,2 ;!FIXIT ­¥¤®ªã¬¥­â¨à®¢ ­® LD A,2 ;!FIXIT ­¥¤®ªã¬¥­â¨à®¢ ­®
SCF SCF
RET RET
@ -273,13 +274,13 @@ EMM.GetMemPageRMD:
;EMM_FN4M: ;EMM_FN4M:
EMM.GetMemPage: EMM.GetMemPage:
LD L,A LD L,A
IN A,(SLOT2) IN A,(SLOT1)
EX AF,AF' EX AF,AF'
LD A,SYS_PAGE LD A,SYS_PAGE
OUT (SLOT2),A OUT (SLOT1),A
INC B INC B
LD H,high (SYS_PAGE.RAMD_FAT - #4000) LD H,high (SYS_PAGE.RAMD_FAT - #4000 - #4000)
EMM_F4M_L1: EMM_F4M_L1:
LD A,(HL) LD A,(HL)
AND A AND A
@ -292,14 +293,14 @@ EMM_F4M_L1:
EMM_F4M_ERR: EMM_F4M_ERR:
LD L,A LD L,A
EX AF,AF' EX AF,AF'
OUT (SLOT2),A OUT (SLOT1),A
LD A,L LD A,L
SCF SCF
RET RET
EMM_F4M_END: EMM_F4M_END:
EX AF,AF' EX AF,AF'
OUT (SLOT2),A OUT (SLOT1),A
LD A,L LD A,L
AND A AND A
RET RET
@ -319,14 +320,14 @@ EMM.GetMemPageNext:
AND A AND A
SCF SCF
RET Z RET Z
IN A,(SLOT2) IN A,(SLOT1)
LD H,A LD H,A
LD A,SYS_PAGE LD A,SYS_PAGE
OUT (SLOT2),A OUT (SLOT1),A
LD A,H LD A,H
LD H,high (SYS_PAGE.RAMD_FAT - #4000) LD H,high (SYS_PAGE.RAMD_FAT - #4000 - #4000)
LD L,(HL) LD L,(HL)
OUT (SLOT2),A OUT (SLOT1),A
LD A,L LD A,L
AND A AND A
SCF SCF
@ -361,14 +362,14 @@ EMM.GetMemBlkPages:
CP #FF CP #FF
JR Z,.end JR Z,.end
; ;
IN A,(SLOT2) IN A,(SLOT1)
LD C,A LD C,A
LD A,SYS_PAGE LD A,SYS_PAGE
OUT (SLOT2),A OUT (SLOT1),A
LD H,high (SYS_PAGE.RAMD_FAT - #4000) LD H,high (SYS_PAGE.RAMD_FAT - #4000 - #4000)
LD L,(HL) LD L,(HL)
LD A,C LD A,C
OUT (SLOT2),A OUT (SLOT1),A
; ;
INC B INC B
JR NZ,.loop JR NZ,.loop
@ -450,34 +451,34 @@ BLK_RD_WR:
PUSH HL PUSH HL
PUSH BC PUSH BC
LD C,SLOT2 LD C,SLOT1
IN B,(C) IN B,(C)
ld h,a LD H,A
LD A,SYS_PAGE LD A,SYS_PAGE
OUT (SLOT2),A OUT (SLOT1),A
ld a,h LD A,H
LD H,high (SYS_PAGE.RAMD_FAT - #4000) LD H,high (SYS_PAGE.RAMD_FAT - #4000 - #4000)
LD L,A LD L,A
INC D INC D
RAMD_LOOP_D: .RAMD_LOOP_D:
DEC D DEC D
JR Z,NOT_FOUR_BLK JR Z,.NOT_FOUR_BLK
LD L,(HL) LD L,(HL)
LD L,(HL) LD L,(HL)
LD L,(HL) LD L,(HL)
LD L,(HL) LD L,(HL)
JR RAMD_LOOP_D JR .RAMD_LOOP_D
NOT_FOUR_BLK: .NOT_FOUR_BLK:
LD A,E LD A,E
.loop: SUB #40 .loop: SUB #40
JR C,NOT_ONE_BLK JR C,.NOT_ONE_BLK
LD L,(HL) LD L,(HL)
JR .loop JR .loop
NOT_ONE_BLK: .NOT_ONE_BLK:
AND #3F AND #3F
LD D,A ; DE - ADRESS in RAM-Disk LD D,A ; DE - ADRESS in RAM-Disk
LD E,0 LD E,0
@ -490,65 +491,65 @@ NOT_ONE_BLK:
POP HL ;  ¤à¥á ¡ãä¥à  POP HL ;  ¤à¥á ¡ãä¥à 
BIT 7,H BIT 7,H
JR NZ,BLK_PAGE1 ; !!!!! JR NZ,BLK_PAGE1 ? JR NZ,.BLK_PAGE1 ; !!!!! JR NZ,BLK_PAGE1 ?
BLK_PAGE3: ; !TODO ¯¥à¥¤¥« âì ­  SLOT ????? .BLK_PAGE3: ; !TODO ¯¥à¥¤¥« âì ­  SLOT ?????
LD C,SLOT3 LD C,SLOT3
IN C,(C) IN C,(C)
OUT (SLOT3),A OUT (SLOT3),A
SET 7,D SET 7,D
SET 6,D SET 6,D
JR BLK_CONT1 JR .BLK_CONT1
BLK_PAGE1: .BLK_PAGE1:
LD C,SLOT1 LD C,SLOT1
IN C,(C) IN C,(C)
OUT (SLOT1),A OUT (SLOT1),A
RES 7,D RES 7,D
SET 6,D SET 6,D
BLK_CONT1: ; DE - RamDisk, HL - data .BLK_CONT1: ; DE - RamDisk, HL - data
EX AF,AF' EX AF,AF'
JR Z,NO_EX_RW1 ; WRITE JR Z,.NO_EX_RW1 ; WRITE
EX DE,HL ; for READ EX DE,HL ; for READ
NO_EX_RW1: .NO_EX_RW1:
EX AF,AF' EX AF,AF'
LD A,16 LD A,16
BLK_LL1: .BLK_LL1:
DUP 16 DUP 16
LDI LDI
EDUP EDUP
DEC A DEC A
JR NZ,BLK_LL1 JR NZ,.BLK_LL1
EX AF,AF' EX AF,AF'
JR Z,NO_EX_RW2 ; WRITE JR Z,.NO_EX_RW2 ; WRITE
EX DE,HL ; for READ EX DE,HL ; for READ
NO_EX_RW2: .NO_EX_RW2:
EX AF,AF' ; DEC C ¯à®ªàã⨫áï 256 à § ¨ ¢¥à­ã«áï EX AF,AF' ; DEC C ¯à®ªàã⨫áï 256 à § ¨ ¢¥à­ã«áï
INC B ; B 㦥 㬥­ì訫áï ­  1, INC B ; B 㦥 㬥­ì訫áï ­  1,
DEC B DEC B
JP Z,BLK_EXIT_1 JP Z,.BLK_EXIT_1
BIT 6,D BIT 6,D
JP NZ,BLK_CONT1 JP NZ,.BLK_CONT1
BIT 7,D BIT 7,D
JR Z,BLK_PAGE3_X JR Z,.BLK_PAGE3_X
IN A,(SLOT1) IN A,(SLOT1)
LD E,A LD E,A
LD D,#42 LD D,high (SYS_PAGE.RAMD_FAT - #4000 - #4000)
LD A,SYS_PAGE LD A,SYS_PAGE
OUT (SLOT1),A OUT (SLOT1),A
LD A,(DE) LD A,(DE)
OUT (SLOT1),A OUT (SLOT1),A
LD DE,#4000 LD DE,#4000
JP BLK_CONT1 JP .BLK_CONT1
BLK_PAGE3_X: .BLK_PAGE3_X:
IN A,(SLOT3) IN A,(SLOT3)
LD E,A LD E,A
LD D,#C2 LD D,#C2
@ -559,7 +560,7 @@ BLK_PAGE3_X:
LD DE,#C000 LD DE,#C000
BIT 7,H BIT 7,H
JP Z,BLK_CONT1 JP Z,.BLK_CONT1
LD E,A LD E,A
LD A,C LD A,C
@ -569,17 +570,17 @@ BLK_PAGE3_X:
LD A,E LD A,E
OUT (SLOT1),A OUT (SLOT1),A
LD DE,#4000 LD DE,#4000
JP BLK_CONT1 JP .BLK_CONT1
BLK_EXIT_1: .BLK_EXIT_1:
LD A,D LD A,D
DEC A DEC A
RLCA RLCA
LD A,C LD A,C
JR C,BLK_EXIT_2 JR C,.BLK_EXIT_2
OUT (SLOT1),A OUT (SLOT1),A
RET RET
BLK_EXIT_2: .BLK_EXIT_2:
OUT (SLOT3),A OUT (SLOT3),A
AND A AND A
RET RET
@ -794,17 +795,17 @@ RAMD_CALC_PAGE:
; A - Number (0..15) ; A - Number (0..15)
GET_RAMD_NUM: GET_RAMD_NUM:
EX AF,AF' EX AF,AF'
IN A,(SLOT2) IN A,(SLOT1)
EX AF,AF' EX AF,AF'
LD BC,SYS_PAGE * 256 + SLOT2 LD BC,SYS_PAGE * 256 + SLOT1
OUT (C),B OUT (C),B
LD HL,SYS_PAGE.RAMD_KEYS-#4000 LD HL,SYS_PAGE.RAMD_KEYS-#4000 - #4000
LD BC,SYS_PAGE.RAMD_KEYS.NUM LD BC,SYS_PAGE.RAMD_KEYS.NUM
CPIR CPIR
EX AF,AF' EX AF,AF'
OUT (SLOT2),A OUT (SLOT1),A
EX AF,AF' EX AF,AF'
SCF SCF
@ -830,17 +831,17 @@ GET_RAMD_ST:
PUSH BC PUSH BC
LD HL,SYS_PAGE.RAMD_KEYS-#4000 LD HL,SYS_PAGE.RAMD_KEYS-#4000 - #4000
ADD A,L ADD A,L
LD L,A LD L,A
IN A,(SLOT2) IN A,(SLOT1)
LD B,A LD B,A
LD A,SYS_PAGE LD A,SYS_PAGE
OUT (SLOT2),A OUT (SLOT1),A
LD C,(HL) LD C,(HL)
LD A,B LD A,B
OUT (SLOT2),A OUT (SLOT1),A
LD A,C LD A,C
POP BC POP BC
AND A AND A
@ -861,12 +862,12 @@ BLK_TO_RAMD:
PUSH HL PUSH HL
LD L,A LD L,A
IN A,(SLOT2) IN A,(SLOT1)
LD C,A LD C,A
LD A,SYS_PAGE LD A,SYS_PAGE
OUT (SLOT2),A OUT (SLOT1),A
LD A,L LD A,L
LD HL,SYS_PAGE.RAMD_KEYS-#4000 LD HL,SYS_PAGE.RAMD_KEYS-#4000 - #4000
ADD A,L ADD A,L
LD L,A LD L,A
LD A,(HL) ; ª«îç ¡«®ª  LD A,(HL) ; ª«îç ¡«®ª 
@ -875,7 +876,7 @@ BLK_TO_RAMD:
LD (HL),B LD (HL),B
LD A,C LD A,C
OUT (SLOT2),A OUT (SLOT1),A
LD A,B LD A,B
AND A AND A
@ -884,7 +885,7 @@ BLK_TO_RAMD:
BLK_BUSY: BLK_BUSY:
LD A,C LD A,C
OUT (SLOT2),A OUT (SLOT1),A
SCF SCF
POP HL POP HL
@ -905,12 +906,12 @@ RAMD_CLEAR:
PUSH HL PUSH HL
LD L,A LD L,A
IN A,(SLOT2) IN A,(SLOT1)
LD C,A LD C,A
LD A,SYS_PAGE LD A,SYS_PAGE
OUT (SLOT2),A OUT (SLOT1),A
LD A,L LD A,L
LD HL,SYS_PAGE.RAMD_KEYS-#4000 ; RAM-Disk ᢮¡®¤¥­ LD HL,SYS_PAGE.RAMD_KEYS-#4000 - #4000 ; RAM-Disk ᢮¡®¤¥­
ADD A,L ADD A,L
LD L,A LD L,A
LD B,A ; § ¯®¬­¨âì 㤠«ï¥¬ë© à ¬¤¨áª LD B,A ; § ¯®¬­¨âì 㤠«ï¥¬ë© à ¬¤¨áª
@ -919,7 +920,7 @@ RAMD_CLEAR:
JR Z,BLK_BUSY ; ¢®§¢à â á ®è¨¡ª®© JR Z,BLK_BUSY ; ¢®§¢à â á ®è¨¡ª®©
LD (HL),0 LD (HL),0
LD A,C LD A,C
OUT (SLOT2),A OUT (SLOT1),A
AND A AND A
POP HL POP HL
@ -945,19 +946,19 @@ EMM.DivMemBlocks:
RET C RET C
LD D,A LD D,A
IN A,(SLOT2) IN A,(SLOT1)
EX AF,AF' EX AF,AF'
LD A,SYS_PAGE LD A,SYS_PAGE
OUT (SLOT2),A OUT (SLOT1),A
LD H,high (SYS_PAGE.RAMD_FAT - #4000) LD H,high (SYS_PAGE.RAMD_FAT - #4000 - #4000)
LD L,D LD L,D
LD A,(HL) LD A,(HL)
LD (HL),0FFH LD (HL),#FF
LD B,A LD B,A
EX AF,AF' EX AF,AF'
OUT (SLOT2),A OUT (SLOT1),A
LD A,E LD A,E
AND A AND A
@ -974,35 +975,36 @@ EMM.DivMemBlocks:
; ¢ë室: € - ¡«®ª ; ¢ë室: € - ¡«®ª
EMM.MergeMemBlocks: EMM.MergeMemBlocks:
LD E,A LD E,A
IN A,(SLOT2) IN A,(SLOT1)
EX AF,AF' EX AF,AF'
LD A,SYS_PAGE LD A,SYS_PAGE
OUT (SLOT2),A OUT (SLOT1),A
LD H,high (SYS_PAGE.RAMD_FAT - #4000) LD H,high (SYS_PAGE.RAMD_FAT - #4000 - #4000)
LD L,E LD L,E
LD C,B LD C,B
LD B,0 LD B,0
EMM_ADD_L: .EMM_ADD_L:
LD A,(HL) LD A,(HL)
AND A AND A
JR Z,EMM_ADD_ERR JR Z,.EMM_ADD_ERR
CP 0FFH CP #FF
JR Z,EMM_ADD_NEXT JR Z,.EMM_ADD_NEXT
LD L,A LD L,A
DJNZ EMM_ADD_L DJNZ .EMM_ADD_L
EMM_ADD_ERR:
.EMM_ADD_ERR:
EX AF,AF' EX AF,AF'
OUT (SLOT2),A OUT (SLOT1),A
SCF SCF
RET RET
EMM_ADD_NEXT: .EMM_ADD_NEXT:
LD A,C LD A,C
AND A AND A
JR Z,EMM_ADD_ERR JR Z,.EMM_ADD_ERR
LD (HL),A LD (HL),A
EX AF,AF' EX AF,AF'
OUT (SLOT2),A OUT (SLOT1),A
AND A AND A
LD A,E LD A,E
RET RET

View File

@ -20,7 +20,7 @@
DEFINE TEST_INT 1 ; ’¥áâ®¢ë© ®¡à ¡®â稪 ¯®«ì§®¢ â¥«ì᪮£® INT DEFINE TEST_INT 1 ; ’¥áâ®¢ë© ®¡à ¡®â稪 ¯®«ì§®¢ â¥«ì᪮£® INT
DEFINE NEW_FEATURE 0 ; !TODO ¯ã­ªâë ¢ á¥â ¯ DEFINE NEW_FEATURE 0 ; !TODO ¯ã­ªâë ¢ á¥â ¯
DEFINE HDDwriteProtect 0 DEFINE HDDwriteProtect 0
DEFINE RECOVERYmountTYPE 1 ; 1 - ¡ëáâàë© ­¥¬­®£® § å à¤ª®¦¥­ë© ¢ à¨ ­â. 2 - ¡®«¥¥ "¯à ¢¨«ì­ë©" DEFINE RECOVERYmountTYPE 2 ; 1 - ¡ëáâàë© ­¥¬­®£® § å à¤ª®¦¥­ë© ¢ à¨ ­â. 2 - ¡®«¥¥ "¯à ¢¨«ì­ë©"
DEFINE RECOVERYrdChooseTYPE 1 ; 1 - RECOVERY ¢á¥£¤  £à㧨âáï ¢ ¤¨áª 15, 2 - ¨é¥âáï ᢮¡®¤­ë© à ¬¤¨áª ¨ ¥á«¨ â ª®£® ­¥â, â® § ­¨¬ ¥âáï 15ë© DEFINE RECOVERYrdChooseTYPE 1 ; 1 - RECOVERY ¢á¥£¤  £à㧨âáï ¢ ¤¨áª 15, 2 - ¨é¥âáï ᢮¡®¤­ë© à ¬¤¨áª ¨ ¥á«¨ â ª®£® ­¥â, â® § ­¨¬ ¥âáï 15ë©
DEFINE FDD_NormalCount 0 DEFINE FDD_NormalCount 0
; ;

Binary file not shown.