mirror of
https://github.com/Tolik-Trek/Sprinter-BIOS.git
synced 2026-06-15 09:21:46 +03:00
Merge remote-tracking branch 'refs/remotes/Sprinter-Core/beta' into beta
This commit is contained in:
commit
53ee837c81
@ -1 +1 @@
|
|||||||
Subproject commit 6073b8787867fe5d217d064c9f5f77972303148c
|
Subproject commit 2fec6202f716cfa3ed48fb9bfd79d1081cc2721b
|
||||||
@ -29,12 +29,13 @@
|
|||||||
; A - D0 - "1" - Removable media
|
; A - D0 - "1" - Removable media
|
||||||
;[]===========================================================[]
|
;[]===========================================================[]
|
||||||
;!FIXIT ¢á¥£¤ ¨¤¥â à ¡®â á ¤ 묨 ¤«ï ¤¨áª €
|
;!FIXIT ¢á¥£¤ ¨¤¥â à ¡®â á ¤ 묨 ¤«ï ¤¨áª €
|
||||||
|
;!FIXIT ç¨â âì ¤ ë¥ á ã«¥¢®© ¤®à®¦ª¨? <20>ਤ㬠âì çâ® ¤¥« âì á £¥®¬¥âਥ© ä«®¯ ३
|
||||||
FDD_5x_GET_PAR: IN A,(SLOT3)
|
FDD_5x_GET_PAR: IN A,(SLOT3)
|
||||||
EX AF,AF'
|
EX AF,AF'
|
||||||
LD A,SYS_PAGE
|
LD A,SYS_PAGE
|
||||||
OUT (SLOT3),A
|
OUT (SLOT3),A
|
||||||
;
|
;
|
||||||
LD HL,(SYS_PAGE.FDD_TABLE.SECTORS)
|
LD HL,(SYS_PAGE.FDD_TABLE.SECTORS) ; L - Sectors, H - Heads
|
||||||
LD DE,(SYS_PAGE.FDD_TABLE.CYLINDL)
|
LD DE,(SYS_PAGE.FDD_TABLE.CYLINDL)
|
||||||
LD IX,(SYS_PAGE.FDD_TABLE.BytesPerSector)
|
LD IX,(SYS_PAGE.FDD_TABLE.BytesPerSector)
|
||||||
LD A,(SYS_PAGE.FDD_TABLE.DISK)
|
LD A,(SYS_PAGE.FDD_TABLE.DISK)
|
||||||
@ -98,7 +99,7 @@ FDD_5x_DETECT: CALL SAVE_INTERRUPTS.switch_off
|
|||||||
;[]===========================================================[]
|
;[]===========================================================[]
|
||||||
FDD_5x_RESET: CALL SAVE_INTERRUPTS.switch_off
|
FDD_5x_RESET: CALL SAVE_INTERRUPTS.switch_off
|
||||||
CALL SET_DOS_ON
|
CALL SET_DOS_ON
|
||||||
CALL S_FDD
|
CALL SET_FDD
|
||||||
CALL DISK_ID
|
CALL DISK_ID
|
||||||
JR C,.int
|
JR C,.int
|
||||||
; [ ] à §¬¥à ᥪâ®à
|
; [ ] à §¬¥à ᥪâ®à
|
||||||
@ -181,32 +182,34 @@ FDD_5x_LONG_READ:
|
|||||||
EX AF,AF'
|
EX AF,AF'
|
||||||
PUSH BC
|
PUSH BC
|
||||||
CALL SET_DOS_ON
|
CALL SET_DOS_ON
|
||||||
CALL S_FDD
|
CALL SET_FDD
|
||||||
CALL SET_SPEED
|
CALL SET_SPEED
|
||||||
CALL NTRACK
|
CALL NTRACK
|
||||||
POP BC
|
POP BC
|
||||||
EX DE,HL
|
EX DE,HL
|
||||||
IN A,(SLOT3)
|
IN A,(SLOT3)
|
||||||
EX AF,AF'
|
EX AF,AF'
|
||||||
LD A,SYS_PAGE
|
LD A,SYS_PAGE
|
||||||
OUT (SLOT3),A
|
OUT (SLOT3),A
|
||||||
LD IY,(SYS_PAGE.FDD_TABLE.BytesPerSector)
|
LD IY,(SYS_PAGE.FDD_TABLE.BytesPerSector) ; ãáâ ¢«¨¢ âì ®â¤¥«ì® ¯¥à¥¬¥ãî current BytesPerSector?
|
||||||
LD XH,C ; Memory Page Number
|
LD XH,C ; Memory Page Number
|
||||||
LD A,(SYS_PAGE.FDD_TABLE.SECTORS)
|
LD A,(SYS_PAGE.FDD_TABLE.SECTORS)
|
||||||
LD C,A
|
LD C,A
|
||||||
EX AF,AF'
|
EX AF,AF'
|
||||||
OUT (SLOT3),A
|
OUT (SLOT3),A
|
||||||
|
;
|
||||||
.DSK_LP: LD A,D
|
.DSK_LP: LD A,D
|
||||||
EXX
|
EXX
|
||||||
PUSH BC
|
PUSH BC
|
||||||
CALL SEEK
|
CALL SEEK
|
||||||
|
;!FIXIT ª®âà®«ì ®è¨¡ª¨
|
||||||
POP BC
|
POP BC
|
||||||
EXX
|
EXX
|
||||||
PUSH DE
|
PUSH DE
|
||||||
PUSH BC
|
PUSH BC
|
||||||
PUSH HL
|
PUSH HL
|
||||||
CALL FDD_RW_SECTOR
|
CALL FDD_RW_SECTOR
|
||||||
JR C,ERRDOS
|
JR C,.ERRDOS
|
||||||
; à §¬¥à ᥪâ®à
|
; à §¬¥à ᥪâ®à
|
||||||
LD D,YH
|
LD D,YH
|
||||||
LD E,YL
|
LD E,YL
|
||||||
@ -214,17 +217,18 @@ FDD_5x_LONG_READ:
|
|||||||
POP HL
|
POP HL
|
||||||
POP BC
|
POP BC
|
||||||
ADD HL,DE
|
ADD HL,DE
|
||||||
;
|
|
||||||
CALL C,CHANGE_MEM_BLK
|
CALL C,CHANGE_MEM_BLK
|
||||||
;
|
;.THISRD
|
||||||
.THISRD: POP DE
|
POP DE
|
||||||
LD A,C
|
LD A,C
|
||||||
INC E
|
INC E
|
||||||
CP E
|
CP E
|
||||||
JR NZ,.NINC_T
|
JR NZ,.NINC_T
|
||||||
|
;
|
||||||
LD E,0
|
LD E,0
|
||||||
INC D
|
INC D
|
||||||
.NINC_T: DJNZ .DSK_LP
|
.NINC_T: DJNZ .DSK_LP
|
||||||
|
;
|
||||||
.RETDOS: CALL SET_DOS_OFF
|
.RETDOS: CALL SET_DOS_OFF
|
||||||
LD A,XH ; Memory Page Number
|
LD A,XH ; Memory Page Number
|
||||||
EX AF,AF'
|
EX AF,AF'
|
||||||
@ -239,6 +243,7 @@ FDD_5x_LONG_READ:
|
|||||||
DEC B
|
DEC B
|
||||||
LD B,0
|
LD B,0
|
||||||
JR NZ,.ADD8BIT
|
JR NZ,.ADD8BIT
|
||||||
|
;
|
||||||
INC B
|
INC B
|
||||||
.ADD8BIT: ADD IX,BC
|
.ADD8BIT: ADD IX,BC
|
||||||
;!TEST
|
;!TEST
|
||||||
@ -254,7 +259,7 @@ FDD_5x_LONG_READ:
|
|||||||
XOR A
|
XOR A
|
||||||
RET
|
RET
|
||||||
;
|
;
|
||||||
ERRDOS: POP HL
|
.ERRDOS: POP HL
|
||||||
POP BC
|
POP BC
|
||||||
POP DE
|
POP DE
|
||||||
CALL SET_DOS_OFF
|
CALL SET_DOS_OFF
|
||||||
@ -400,8 +405,10 @@ FDD_RW_SECTOR: LD D,5 ;RETRY COUNT
|
|||||||
PUSH DE
|
PUSH DE
|
||||||
PUSH HL
|
PUSH HL
|
||||||
CALL RESWG ; RESET_WG
|
CALL RESWG ; RESET_WG
|
||||||
|
;!FIXIT ª®âà®«ì ®è¨¡ª¨
|
||||||
LD A,XL
|
LD A,XL
|
||||||
CALL SEEK ; !!!!! ¯®á¬®âà¥âì
|
CALL SEEK ; !!!!! ¯®á¬®âà¥âì
|
||||||
|
;!FIXIT ª®âà®«ì ®è¨¡ª¨
|
||||||
POP HL
|
POP HL
|
||||||
POP DE
|
POP DE
|
||||||
JR .RETRY
|
JR .RETRY
|
||||||
@ -434,9 +441,9 @@ FDD_RW_SECTOR: LD D,5 ;RETRY COUNT
|
|||||||
JR Z,.SectorSizeError
|
JR Z,.SectorSizeError
|
||||||
;
|
;
|
||||||
OUTI
|
OUTI
|
||||||
.wwait_data: IN A,(FDC_93.DrvCTRL)
|
.wait_data_w: IN A,(FDC_93.DrvCTRL)
|
||||||
AND %1100'0000 ;b6: DRQ (§ ¯à®á ¤ ëå = 1). b7: INTRQ (¢ë¯®«ï¥âáï ª®¬ ¤ = 0).
|
AND %1100'0000 ;b6: DRQ (§ ¯à®á ¤ ëå = 1). b7: INTRQ (¢ë¯®«ï¥âáï ª®¬ ¤ = 0).
|
||||||
JR Z,.wwait_data
|
JR Z,.wait_data_w
|
||||||
JP P,.write_loop
|
JP P,.write_loop
|
||||||
JP .rw_return
|
JP .rw_return
|
||||||
;
|
;
|
||||||
@ -468,12 +475,33 @@ SET_DOS_OFF: EX AF,AF'
|
|||||||
EX AF,AF'
|
EX AF,AF'
|
||||||
RET
|
RET
|
||||||
|
|
||||||
;
|
////////////////////////////////////////////////////////////////////////
|
||||||
S_FDD: PUSH BC
|
; <20>… ƒ<>Ž•€’œ. ‚¥àá¨ï ¤«ï FDD AUTO ®¤¨¬ ¡ãä¥à®¬ FDD_TABLE
|
||||||
|
; SET_FDD: PUSH BC
|
||||||
|
; AND 1
|
||||||
|
; LD B,A
|
||||||
|
; OR #3C
|
||||||
|
; OUT (FDC_93.DrvCTRL),A
|
||||||
|
; IN A,(SLOT3)
|
||||||
|
; EX AF,AF'
|
||||||
|
; LD A,SYS_PAGE
|
||||||
|
; OUT (SLOT3),A
|
||||||
|
; LD A,(SYS_PAGE.FDD_TABLE.DISK)
|
||||||
|
; AND #FE
|
||||||
|
; OR B
|
||||||
|
; LD (SYS_PAGE.FDD_TABLE.DISK),A
|
||||||
|
; EX AF,AF'
|
||||||
|
; OUT (SLOT3),A
|
||||||
|
; POP BC
|
||||||
|
; RET
|
||||||
|
////////////////////////////////////////////////////////////////////////
|
||||||
|
////////////////////////////////////////////////////////////////////////
|
||||||
|
SET_FDD: PUSH BC
|
||||||
AND 1
|
AND 1
|
||||||
LD B,A
|
LD B,A
|
||||||
OR #3C
|
OR #3C
|
||||||
OUT (FDC_93.DrvCTRL),A
|
OUT (FDC_93.DrvCTRL),A
|
||||||
|
|
||||||
IN A,(SLOT3)
|
IN A,(SLOT3)
|
||||||
EX AF,AF'
|
EX AF,AF'
|
||||||
LD A,SYS_PAGE
|
LD A,SYS_PAGE
|
||||||
@ -486,7 +514,8 @@ S_FDD: PUSH BC
|
|||||||
OUT (SLOT3),A
|
OUT (SLOT3),A
|
||||||
POP BC
|
POP BC
|
||||||
RET
|
RET
|
||||||
;
|
////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
|
||||||
;----------------------------------------------------------------------;
|
;----------------------------------------------------------------------;
|
||||||
; CHANGE_SPEED: IN A,(SLOT3)
|
; CHANGE_SPEED: IN A,(SLOT3)
|
||||||
@ -521,6 +550,42 @@ S_FDD: PUSH BC
|
|||||||
; OUT (FDD_Density),A
|
; OUT (FDD_Density),A
|
||||||
; RET
|
; RET
|
||||||
|
|
||||||
|
<<<<<<< HEAD:src/bios/exp/EXTENDED/FDD_DRIVER_2.asm
|
||||||
|
;----------------------------------------------------------------------;
|
||||||
|
; CHANGE_SPEED: IN A,(SLOT3)
|
||||||
|
; EX AF,AF'
|
||||||
|
; LD A,SYS_PAGE
|
||||||
|
; OUT (SLOT3),A
|
||||||
|
; LD A,(SYS_PAGE.FDD_TABLE.DISK)
|
||||||
|
; XOR #80
|
||||||
|
; LD (SYS_PAGE.FDD_TABLE.DISK),A
|
||||||
|
; RLA
|
||||||
|
; EX AF,AF'
|
||||||
|
; OUT (SLOT3),A
|
||||||
|
; EX AF,AF'
|
||||||
|
; JR NC,FDD.SET720
|
||||||
|
; FDD.SET1440: LD A,FDD_Density.SET_1440
|
||||||
|
; OUT (FDD_Density),A
|
||||||
|
; RET
|
||||||
|
; ;
|
||||||
|
; ;
|
||||||
|
; SET_SPEED: IN A,(SLOT3)
|
||||||
|
; EX AF,AF'
|
||||||
|
; LD A,SYS_PAGE
|
||||||
|
; OUT (SLOT3),A
|
||||||
|
; LD A,(SYS_PAGE.FDD_TABLE.DISK)
|
||||||
|
; ;AND #80
|
||||||
|
; RLA
|
||||||
|
; EX AF,AF'
|
||||||
|
; OUT (SLOT3),A
|
||||||
|
; EX AF,AF'
|
||||||
|
; JR C,FDD.SET1440
|
||||||
|
; FDD.SET720: LD A,FDD_Density.SET_720
|
||||||
|
; OUT (FDD_Density),A
|
||||||
|
; RET
|
||||||
|
|
||||||
|
=======
|
||||||
|
>>>>>>> refs/remotes/Sprinter-Core/beta:src/bios/exp/EXTENDED/FDD_DRIVER.asm
|
||||||
CHANGE_SPEED: IN A,(SLOT3)
|
CHANGE_SPEED: IN A,(SLOT3)
|
||||||
EX AF,AF'
|
EX AF,AF'
|
||||||
LD A,SYS_PAGE
|
LD A,SYS_PAGE
|
||||||
@ -529,9 +594,13 @@ CHANGE_SPEED: IN A,(SLOT3)
|
|||||||
XOR #80
|
XOR #80
|
||||||
LD (SYS_PAGE.FDD_TABLE.DISK),A
|
LD (SYS_PAGE.FDD_TABLE.DISK),A
|
||||||
JR SET_SPEED.set
|
JR SET_SPEED.set
|
||||||
|
<<<<<<< HEAD:src/bios/exp/EXTENDED/FDD_DRIVER_2.asm
|
||||||
|
|
||||||
;
|
;
|
||||||
;
|
;
|
||||||
|
=======
|
||||||
|
;
|
||||||
|
>>>>>>> refs/remotes/Sprinter-Core/beta:src/bios/exp/EXTENDED/FDD_DRIVER.asm
|
||||||
SET_SPEED: IN A,(SLOT3)
|
SET_SPEED: IN A,(SLOT3)
|
||||||
EX AF,AF'
|
EX AF,AF'
|
||||||
LD A,SYS_PAGE
|
LD A,SYS_PAGE
|
||||||
@ -548,6 +617,41 @@ SET_SPEED: IN A,(SLOT3)
|
|||||||
;----------------------------------------------------------------------;
|
;----------------------------------------------------------------------;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
////////////////////////////////////////////////////////////////////////
|
||||||
|
; ‚室: BC - ¢ãâ२© ¨ ¢¥è¨© áçñâ稪¨
|
||||||
|
WAIT_FDD_FOR_SEARCH_TRACK:
|
||||||
|
LD A,#C0 ;!HARDCODE CMD Š<>1818‚ƒ93
|
||||||
|
OUT (FDC_93.Command),A
|
||||||
|
PUSH BC
|
||||||
|
CALL .LOOP
|
||||||
|
POP BC
|
||||||
|
RET NC
|
||||||
|
;
|
||||||
|
CALL CHANGE_SPEED
|
||||||
|
DEC C
|
||||||
|
JR NZ,WAIT_FDD_FOR_SEARCH_TRACK
|
||||||
|
;
|
||||||
|
SCF
|
||||||
|
RET
|
||||||
|
;
|
||||||
|
.LOOP: LD HL,#F000
|
||||||
|
.loop_reg_HL: IN A,(FDC_93.DrvCTRL)
|
||||||
|
AND #C0
|
||||||
|
RET NZ
|
||||||
|
;
|
||||||
|
.ID_LP4: DEC HL
|
||||||
|
LD A,H
|
||||||
|
OR L
|
||||||
|
JR NZ,.loop_reg_HL
|
||||||
|
;
|
||||||
|
DJNZ .LOOP
|
||||||
|
SCF
|
||||||
|
RET
|
||||||
|
////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
|
||||||
|
////////////////////////////////////////////////////////////////////////
|
||||||
; ¯à¥àë¢ ¨ï ¤®«¦ë ¡ëâì ®âª«îç¥ë
|
; ¯à¥àë¢ ¨ï ¤®«¦ë ¡ëâì ®âª«îç¥ë
|
||||||
; ¢ë室: A - FDD_INIT_TABLE.DISK, B - sector size high byte
|
; ¢ë室: A - FDD_INIT_TABLE.DISK, B - sector size high byte
|
||||||
DISK_ID: EXX
|
DISK_ID: EXX
|
||||||
@ -556,6 +660,7 @@ DISK_ID: EXX
|
|||||||
OUT (FDC_93.Data),A
|
OUT (FDC_93.Data),A
|
||||||
LD A,#18 ;!TODO ¢ë¯¨á âì ª®¬¬ ¤ë ‚ƒ ;SEARCH ;!HARDCODE CMD Š<>1818‚ƒ93
|
LD A,#18 ;!TODO ¢ë¯¨á âì ª®¬¬ ¤ë ‚ƒ ;SEARCH ;!HARDCODE CMD Š<>1818‚ƒ93
|
||||||
CALL EXECOM
|
CALL EXECOM
|
||||||
|
<<<<<<< HEAD:src/bios/exp/EXTENDED/FDD_DRIVER_2.asm
|
||||||
LD C,4 ; áçñâ稪
|
LD C,4 ; áçñâ稪
|
||||||
.loop_reg_C: LD A,#C0 ;!HARDCODE CMD Š<>1818‚ƒ93
|
.loop_reg_C: LD A,#C0 ;!HARDCODE CMD Š<>1818‚ƒ93
|
||||||
OUT (FDC_93.Command),A
|
OUT (FDC_93.Command),A
|
||||||
@ -572,18 +677,33 @@ DISK_ID: EXX
|
|||||||
CALL CHANGE_SPEED
|
CALL CHANGE_SPEED
|
||||||
DEC C
|
DEC C
|
||||||
JR NZ,.loop_reg_C
|
JR NZ,.loop_reg_C
|
||||||
|
=======
|
||||||
|
; ªã᮪ ¤«ï ¡ëáâàëå ä«®¯¯ ३
|
||||||
|
LD BC,#0104 ; áçñâ稪¨
|
||||||
|
CALL WAIT_FDD_FOR_SEARCH_TRACK
|
||||||
|
JR NC,.Read_Index
|
||||||
|
; ªã᮪ ¤«ï â®à¬®§ëå ä«®¯¯ ३
|
||||||
|
LD BC,#0804 ; áçñâ稪¨
|
||||||
|
CALL WAIT_FDD_FOR_SEARCH_TRACK
|
||||||
|
JR NC,.Read_Index
|
||||||
|
>>>>>>> refs/remotes/Sprinter-Core/beta:src/bios/exp/EXTENDED/FDD_DRIVER.asm
|
||||||
EXX
|
EXX
|
||||||
SCF
|
;SCF
|
||||||
RET
|
RET
|
||||||
;
|
;
|
||||||
.Read_Index: ;
|
.Read_Index: ;
|
||||||
; „ ë¥ FDC_93.Data:
|
; „ ë¥ FDC_93.Data:
|
||||||
; ®¬¥à 樫¨¤à BYTE
|
; ®¬¥à 樫¨¤à BYTE
|
||||||
; ®¬¥à £®«®¢ª¨ BYTE
|
; ®¬¥à £®«®¢ª¨ BYTE
|
||||||
; ®¬¥à ᥪâ®à BYTE
|
; ®¬¥à ᥪâ®à BYTE
|
||||||
; ¤«¨ ᥪâ®à BYTE
|
; ¤«¨ ᥪâ®à BYTE
|
||||||
|
<<<<<<< HEAD:src/bios/exp/EXTENDED/FDD_DRIVER_2.asm
|
||||||
; ª®â஫ì ï á㬬 WORD
|
; ª®â஫ì ï á㬬 WORD
|
||||||
LD H,4 ; !HARDCODE áçñâ稪 ¤® ¡ ©â à §¬¥à ᥪâ®à
|
LD H,4 ; !HARDCODE áçñâ稪 ¤® ¡ ©â à §¬¥à ᥪâ®à
|
||||||
|
=======
|
||||||
|
; ª®â஫ì ï á㬬 WORD
|
||||||
|
LD H,4 ; !HARDCODE áçñâ稪 ¤® ¡ ©â à §¬¥à ᥪâ®à
|
||||||
|
>>>>>>> refs/remotes/Sprinter-Core/beta:src/bios/exp/EXTENDED/FDD_DRIVER.asm
|
||||||
.ID_LP2: IN A,(FDC_93.Data)
|
.ID_LP2: IN A,(FDC_93.Data)
|
||||||
DEC H
|
DEC H
|
||||||
JR NZ,.ID_LP3
|
JR NZ,.ID_LP3
|
||||||
@ -605,6 +725,7 @@ DISK_ID: EXX
|
|||||||
EX AF,AF'
|
EX AF,AF'
|
||||||
AND #80
|
AND #80
|
||||||
RET
|
RET
|
||||||
|
////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
;
|
;
|
||||||
SEEK: LD XL,A
|
SEEK: LD XL,A
|
||||||
@ -658,22 +779,47 @@ P50ms: PUSH BC
|
|||||||
RET
|
RET
|
||||||
;
|
;
|
||||||
|
|
||||||
|
|
||||||
|
////////////////////////////////////////////////////////////////////////
|
||||||
|
;RESWG: LD A,8
|
||||||
|
; ;
|
||||||
|
;EXECOM: OUT (FDC_93.Command),A
|
||||||
|
; LD HL,#0000 ; áçñâ稪
|
||||||
|
;.WREST: DEC HL
|
||||||
|
; LD A,H
|
||||||
|
; OR L
|
||||||
|
; SCF
|
||||||
|
; RET Z
|
||||||
|
; ;
|
||||||
|
; IN A,(FDC_93.DrvCTRL)
|
||||||
|
; AND #80
|
||||||
|
; JR Z,.WREST
|
||||||
|
; RET
|
||||||
;
|
;
|
||||||
RESWG: LD A,8 ;!HARDCODE CMD Š<>1818‚ƒ93
|
RESWG: LD A,8 ;!HARDCODE CMD Š<>1818‚ƒ93
|
||||||
;
|
;
|
||||||
EXECOM: OUT (FDC_93.Command),A
|
EXECOM: OUT (FDC_93.Command),A
|
||||||
LD HL,#0000 ; áçñâ稪
|
LD HL,#0000 ; áçñâ稪
|
||||||
|
PUSH BC
|
||||||
|
LD B,3 ; áçñâ稪
|
||||||
|
;
|
||||||
.WREST: DEC HL
|
.WREST: DEC HL
|
||||||
LD A,H
|
LD A,H
|
||||||
OR L
|
OR L
|
||||||
SCF
|
JR NZ,.get_state
|
||||||
RET Z
|
|
||||||
;
|
;
|
||||||
IN A,(FDC_93.DrvCTRL)
|
DJNZ .WREST
|
||||||
|
;
|
||||||
|
POP BC
|
||||||
|
SCF
|
||||||
|
RET
|
||||||
|
;
|
||||||
|
.get_state: IN A,(FDC_93.DrvCTRL)
|
||||||
AND #80
|
AND #80
|
||||||
JR Z,.WREST
|
JR Z,.WREST
|
||||||
|
POP BC
|
||||||
RET
|
RET
|
||||||
;
|
////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
;
|
;
|
||||||
;-------------------------------
|
;-------------------------------
|
||||||
@ -676,6 +676,7 @@ WAITPRT: LD DE,256*(IDE.CtrlByte.Busy+IDE.CtrlByte.Ready+IDE.CtrlByte.Error) + I
|
|||||||
AND D
|
AND D
|
||||||
CP E
|
CP E
|
||||||
JR Z,.ok
|
JR Z,.ok
|
||||||
|
;
|
||||||
DEC HL
|
DEC HL
|
||||||
LD A,L
|
LD A,L
|
||||||
OR H
|
OR H
|
||||||
@ -684,8 +685,8 @@ WAITPRT: LD DE,256*(IDE.CtrlByte.Busy+IDE.CtrlByte.Ready+IDE.CtrlByte.Error) + I
|
|||||||
POP HL
|
POP HL
|
||||||
DEC L
|
DEC L
|
||||||
JR NZ,.loop
|
JR NZ,.loop
|
||||||
;
|
; error
|
||||||
.error: LD A,BIOS.Error.NotReady
|
LD A,BIOS.Error.NotReady
|
||||||
SCF
|
SCF
|
||||||
RET
|
RET
|
||||||
;
|
;
|
||||||
|
|||||||
@ -89,89 +89,63 @@ RAM_DRV_READ_WRITE:
|
|||||||
LD L,B
|
LD L,B
|
||||||
IN A,(SLOT3)
|
IN A,(SLOT3)
|
||||||
LD H,A
|
LD H,A
|
||||||
|
|
||||||
; LD A,H
|
|
||||||
; OR L
|
|
||||||
; JR NZ,.error_stack2 ; if sector_high > 0
|
|
||||||
; POP AF
|
|
||||||
|
|
||||||
POP AF
|
POP AF
|
||||||
EX (SP),HL
|
EX (SP),HL
|
||||||
PUSH AF
|
PUSH AF
|
||||||
|
LD A,H
|
||||||
LD A,H
|
OR L
|
||||||
OR L
|
JR NZ,.error_stack2 ; if sector_high > 0
|
||||||
JR NZ,.error_stack2 ; if sector_high > 0
|
;
|
||||||
POP AF
|
POP AF
|
||||||
|
|
||||||
EX AF,AF'
|
EX AF,AF'
|
||||||
OUT (SLOT3),A
|
OUT (SLOT3),A
|
||||||
LD A,C ; ¢ ॣ C ª®¬ ¤ çâ¥¨ï ¨«¨ § ¯¨á¨
|
LD A,C ; ¢ ॣ C ª®¬ ¤ çâ¥¨ï ¨«¨ § ¯¨á¨
|
||||||
EX AF,AF'
|
EX AF,AF'
|
||||||
; A' = command
|
; A' = command
|
||||||
|
|
||||||
PUSH BC ; Sector_counter
|
PUSH BC ; Sector_counter
|
||||||
PUSH DE ; Address
|
PUSH DE ; Address
|
||||||
PUSH IX ; Sector_low
|
PUSH IX ; Sector_low
|
||||||
|
|
||||||
AND #0F ;®¬¥à à ¬¤¨áª
|
AND #0F ;®¬¥à à ¬¤¨áª
|
||||||
;LD C,BIOS.GET_RAMD_ST
|
|
||||||
;RST_to_BIOS
|
|
||||||
CALL GET_RAMD_ST
|
CALL GET_RAMD_ST
|
||||||
; A = Memory Block ID
|
; A = Memory Block ID
|
||||||
|
|
||||||
POP DE ; Sector_low
|
POP DE ; Sector_low
|
||||||
POP HL ; Address
|
POP HL ; Address
|
||||||
POP BC ; Sector_counter
|
POP BC ; Sector_counter
|
||||||
JR C,.error_stack1
|
JR C,.error_stack1
|
||||||
|
;
|
||||||
SLA E
|
SLA E
|
||||||
RL D ; Sector_low * 2
|
RL D ; Sector_low * 2
|
||||||
JR C,.error_stack1
|
JR C,.error_stack1
|
||||||
|
;
|
||||||
|
|
||||||
PUSH BC
|
PUSH BC
|
||||||
SLA B ; Sector_counter * 2 - ⨯ ã ¤¨áª¥âë ᥪâ®à 512 ¡ ©â®¢
|
SLA B ; Sector_counter * 2 - ⨯ ã ¤¨áª¥âë ᥪâ®à 512 ¡ ©â®¢
|
||||||
JR C,.error_stack2
|
JR C,.error_stack2
|
||||||
|
;
|
||||||
PUSH DE
|
PUSH DE
|
||||||
//PUSH BC
|
|
||||||
;LD C,BIOS.BLK_RD_WR
|
|
||||||
;RST_to_BIOS
|
|
||||||
CALL BLK_RD_WR
|
CALL BLK_RD_WR
|
||||||
JR C,.error_stack3
|
JR C,.error_stack3
|
||||||
; hl = address + Sector_low * 256 * Sector_counter
|
;
|
||||||
|
; hl = address + Sector_low * 256 * Sector_counter
|
||||||
//POP BC
|
|
||||||
//SRL B
|
|
||||||
|
|
||||||
POP DE
|
POP DE
|
||||||
; de = Sector_low * 2
|
; de = Sector_low * 2
|
||||||
|
|
||||||
SRL D
|
SRL D
|
||||||
RR E
|
RR E
|
||||||
; de = Sector_low
|
; de = Sector_low
|
||||||
|
|
||||||
POP BC
|
POP BC
|
||||||
; b = Sector_counter
|
; b = Sector_counter
|
||||||
|
|
||||||
LD A,E
|
LD A,E
|
||||||
ADD A,B
|
ADD A,B
|
||||||
LD E,A
|
LD E,A
|
||||||
LD A,D
|
LD A,D
|
||||||
ADC A,0
|
ADC A,0
|
||||||
LD D,A
|
LD D,A
|
||||||
; de = Sector_counter + Sector_low
|
; de = Sector_counter + Sector_low
|
||||||
|
|
||||||
PUSH DE
|
PUSH DE
|
||||||
POP IX
|
POP IX
|
||||||
; ix = Sector_counter + Sector_low
|
; ix = Sector_counter + Sector_low
|
||||||
|
|
||||||
EX DE,HL
|
EX DE,HL
|
||||||
; de = address + Sector_low * 256 * Sector_counter
|
; de = address + Sector_low * 256 * Sector_counter
|
||||||
|
|
||||||
LD HL,0
|
LD HL,0
|
||||||
|
|
||||||
POP AF
|
POP AF
|
||||||
OUT (SLOT3),A
|
OUT (SLOT3),A
|
||||||
AND A
|
AND A
|
||||||
@ -179,6 +153,7 @@ RAM_DRV_READ_WRITE:
|
|||||||
; HL:IX - Sector + Sector counter
|
; HL:IX - Sector + Sector counter
|
||||||
; DE - Address + (Sector counter * Size sector)
|
; DE - Address + (Sector counter * Size sector)
|
||||||
RET
|
RET
|
||||||
|
;
|
||||||
.error_stack3:
|
.error_stack3:
|
||||||
POP BC
|
POP BC
|
||||||
.error_stack2:
|
.error_stack2:
|
||||||
@ -85,8 +85,8 @@ DRV_LIST:
|
|||||||
; RET
|
; RET
|
||||||
; ;
|
; ;
|
||||||
|
|
||||||
INCLUDE 'EXTENDED/FDD_DRIVER_2.asm'
|
INCLUDE 'EXTENDED/FDD_DRIVER.asm'
|
||||||
INCLUDE 'EXTENDED/RAM_DISK_DRIVER_1.asm'
|
INCLUDE 'EXTENDED/RAM_DISK_DRIVER.asm'
|
||||||
INCLUDE 'EXTENDED/IDE/ATA_DRV.asm'
|
INCLUDE 'EXTENDED/IDE/ATA_DRV.asm'
|
||||||
INCLUDE 'EXTENDED/IDE/ATAPI_DRV.asm'
|
INCLUDE 'EXTENDED/IDE/ATAPI_DRV.asm'
|
||||||
INCLUDE 'EXTENDED/IDE/SHARED.asm'
|
INCLUDE 'EXTENDED/IDE/SHARED.asm'
|
||||||
|
|||||||
@ -345,13 +345,14 @@ FN_TURBO:
|
|||||||
;!FIXIT ¬¥ï¥¬ ¯«®â®áâì - ¬¥ï¥¬ ¢ á¨á⥬®© áâà ¨æ¥ ¨äã ®¡ í⮬
|
;!FIXIT ¬¥ï¥¬ ¯«®â®áâì - ¬¥ï¥¬ ¢ á¨á⥬®© áâà ¨æ¥ ¨äã ®¡ í⮬
|
||||||
.SET_FDD_720:
|
.SET_FDD_720:
|
||||||
LD A,FDD_Density.SET_720
|
LD A,FDD_Density.SET_720
|
||||||
OUT (FDD_Density),A
|
JR .set
|
||||||
AND A
|
; OUT (FDD_Density),A
|
||||||
RET
|
; AND A
|
||||||
|
; RET
|
||||||
;!FIXIT ¬¥ï¥¬ ¯«®â®áâì - ¬¥ï¥¬ ¢ á¨á⥬®© áâà ¨æ¥ ¨äã ®¡ í⮬
|
;!FIXIT ¬¥ï¥¬ ¯«®â®áâì - ¬¥ï¥¬ ¢ á¨á⥬®© áâà ¨æ¥ ¨äã ®¡ í⮬
|
||||||
.SET_FDD_1440:
|
.SET_FDD_1440:
|
||||||
LD A,FDD_Density.SET_1440
|
LD A,FDD_Density.SET_1440
|
||||||
OUT (FDD_Density),A
|
.set: OUT (FDD_Density),A
|
||||||
AND A
|
AND A
|
||||||
RET
|
RET
|
||||||
|
|
||||||
|
|||||||
@ -1201,56 +1201,109 @@ SYSID: DZ "Starting..."
|
|||||||
; .Size EQU $ - FD144A
|
; .Size EQU $ - FD144A
|
||||||
; FD720A: DB #00,#09,#02,#50,#00,#00,#02,FDD_INIT_TABLE.FDD
|
; FD720A: DB #00,#09,#02,#50,#00,#00,#02,FDD_INIT_TABLE.FDD
|
||||||
; .Size EQU $ - FD720A
|
; .Size EQU $ - FD720A
|
||||||
FDD_INIT_TABLE: FDD_1440_TABLE
|
|
||||||
|
|
||||||
|
FDD_INIT_TABLE_35: FDD_TABLE_s {
|
||||||
|
#80, ;.DISK
|
||||||
|
#12, ;.SECTORS
|
||||||
|
#02, ;.HEADS
|
||||||
|
#50, ;.CYLINDL
|
||||||
|
#00, ;.CYLINDH
|
||||||
|
#0200, ;.BytesPerSector
|
||||||
|
#03 ;.ID
|
||||||
|
}
|
||||||
|
;
|
||||||
|
FDD_INIT_TABLE_525: FDD_TABLE_s {
|
||||||
|
#00 ;.DISK
|
||||||
|
#09 ;.SECTORS
|
||||||
|
#02 ;.HEADS
|
||||||
|
#50 ;.CYLINDL
|
||||||
|
#00 ;.CYLINDH
|
||||||
|
#0200 ;.BytesPerSector
|
||||||
|
#03 ;.ID
|
||||||
|
}
|
||||||
|
|
||||||
FDD_INSTAL: IN A,(SLOT3)
|
FDD_INSTAL: IN A,(SLOT3)
|
||||||
EX AF,AF'
|
EX AF,AF'
|
||||||
LD A,SYS_PAGE
|
LD A,SYS_PAGE
|
||||||
OUT (SLOT3),A
|
OUT (SLOT3),A
|
||||||
LD HL,SYS_PAGE.FDD_TABLE
|
LD HL,SYS_PAGE.FDD_TABLE
|
||||||
LD BC,SYS_PAGE.FDD_TABLE.Size*256 + #FF ; table_size*256 + fill_byte
|
LD BC,2*(SYS_PAGE.FDD_TABLE.Size*256) + #FF ; table_size*256 + fill_byte
|
||||||
.FILLFDD: LD (HL),C
|
.FILLFDD: LD (HL),C
|
||||||
INC HL
|
INC HL
|
||||||
DJNZ .FILLFDD
|
DJNZ .FILLFDD
|
||||||
;
|
;
|
||||||
;EX AF,AF'
|
;
|
||||||
;OUT (SLOT3),A
|
LD BC,CMOS_CELL.DrivesSetup_1.Mask.FirstFDD ;#0311
|
||||||
;LD BC,CMOS_CELL.DrivesSetup_1.Mask.FirstFDD ;#0311
|
CALL .Choose_FDD_Type
|
||||||
;CALL GET_CMOS_VALUE
|
JR NZ,.next_FDD
|
||||||
;LD HL,FD720A
|
;
|
||||||
;OR A
|
LD DE,SYS_PAGE.FDD_TABLE
|
||||||
;JR Z,.SETFD0
|
LD BC,SYS_PAGE.FDD_TABLE.Size
|
||||||
LD HL,FDD_INIT_TABLE
|
LDIR
|
||||||
;DEC A
|
.next_FDD: LD BC,CMOS_CELL.DrivesSetup_1.Mask.SecondFDD ;#0C11
|
||||||
;JR NZ,.NOFDD0
|
CALL .Choose_FDD_Type
|
||||||
;.SETFD0: ;IN A,(SLOT3)
|
JR NZ,.NOFDD1
|
||||||
|
;
|
||||||
|
LD DE,SYS_PAGE.FDD_1_TABLE
|
||||||
|
LD BC,SYS_PAGE.FDD_1_TABLE.Size
|
||||||
|
LDIR
|
||||||
|
.NOFDD1: EX AF,AF'
|
||||||
|
OUT (SLOT3),A
|
||||||
|
RET
|
||||||
|
;
|
||||||
|
.Choose_FDD_Type:
|
||||||
|
CALL GET_CMOS_VALUE
|
||||||
|
LD HL,FDD_INIT_TABLE_35
|
||||||
|
OR A
|
||||||
|
RET Z
|
||||||
|
;
|
||||||
|
LD HL,FDD_INIT_TABLE_525
|
||||||
|
DEC A
|
||||||
|
RET
|
||||||
|
/*
|
||||||
|
LD BC,CMOS_CELL.DrivesSetup_1.Mask.FirstFDD ;#0311
|
||||||
|
CALL GET_CMOS_VALUE
|
||||||
|
LD HL,FDD_INIT_TABLE_525
|
||||||
|
OR A
|
||||||
|
JR Z,.SETFD0
|
||||||
|
;
|
||||||
|
LD HL,FDD_INIT_TABLE_35
|
||||||
|
DEC A
|
||||||
|
JR NZ,.NOFDD0
|
||||||
|
;
|
||||||
|
.SETFD0: ;
|
||||||
|
;IN A,(SLOT3)
|
||||||
;EX AF,AF'
|
;EX AF,AF'
|
||||||
;LD A,SYS_PAGE
|
;LD A,SYS_PAGE
|
||||||
;OUT (SLOT3),A
|
;OUT (SLOT3),A
|
||||||
LD DE,SYS_PAGE.FDD_TABLE
|
LD DE,SYS_PAGE.FDD_TABLE
|
||||||
; B=0
|
LD BC,SYS_PAGE.FDD_TABLE.Size
|
||||||
LD C,SYS_PAGE.FDD_TABLE.Size
|
|
||||||
LDIR
|
LDIR
|
||||||
;EX AF,AF'
|
;EX AF,AF'
|
||||||
;OUT (SLOT3),A
|
;OUT (SLOT3),A
|
||||||
;.NOFDD0: LD BC,CMOS_CELL.DrivesSetup_1.Mask.SecondFDD ;#0C11
|
.NOFDD0: LD BC,CMOS_CELL.DrivesSetup_1.Mask.SecondFDD ;#0C11
|
||||||
;CALL GET_CMOS_VALUE
|
CALL GET_CMOS_VALUE
|
||||||
;LD HL,FD720A
|
LD HL,FDD_INIT_TABLE_525
|
||||||
;OR A
|
OR A
|
||||||
;JR Z,.SETFD1
|
JR Z,.SETFD1
|
||||||
;LD HL,FD144A
|
;
|
||||||
;DEC A
|
LD HL,FDD_INIT_TABLE_35
|
||||||
;JR NZ,.NOFDD1
|
DEC A
|
||||||
;.SETFD1: IN A,(SLOT3)
|
JR NZ,.NOFDD1
|
||||||
|
;
|
||||||
|
.SETFD1: ;
|
||||||
|
;IN A,(SLOT3)
|
||||||
;EX AF,AF'
|
;EX AF,AF'
|
||||||
;LD A,SYS_PAGE
|
;LD A,SYS_PAGE
|
||||||
;OUT (SLOT3),A
|
;OUT (SLOT3),A
|
||||||
;LD DE,SYS_PAGE.FDD_1_TABLE
|
LD DE,SYS_PAGE.FDD_1_TABLE
|
||||||
;LD BC,FD144A.Size
|
LD BC,FD144A.Size
|
||||||
;LDIR
|
LDIR
|
||||||
EX AF,AF'
|
.NOFDD1: EX AF,AF'
|
||||||
OUT (SLOT3),A
|
OUT (SLOT3),A
|
||||||
.NOFDD1: RET
|
RET
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
PIDNUM: LD HL,memBUFFER.ID
|
PIDNUM: LD HL,memBUFFER.ID
|
||||||
|
|||||||
@ -279,22 +279,28 @@ SettingsItemsTabs:
|
|||||||
IF NEW_FEATURE : DB paramLine : ENDIF
|
IF NEW_FEATURE : DB paramLine : ENDIF
|
||||||
DB columnNum,lineNum
|
DB columnNum,lineNum
|
||||||
DB paramName
|
DB paramName
|
||||||
DW CMOS_CELL.DrivesSetup_1.Mask.FirstFDD : DB %0000'0000
|
DW CMOS_CELL.DrivesSetup_1.Mask.FirstFDD : DB %0000'0010
|
||||||
DB msgStrings.valAuto
|
DB msgStrings.val35
|
||||||
|
DB msgStrings.val525
|
||||||
|
DB msgStrings.valDash6
|
||||||
|
; DB msgStrings.valAuto
|
||||||
; DB msgStrings.val720
|
; DB msgStrings.val720
|
||||||
; DB msgStrings.val1440
|
; DB msgStrings.val1440
|
||||||
; DB msgStrings.valDash6
|
; DB msgStrings.val1200
|
||||||
|
|
||||||
_mSETitemParams FddSecond
|
_mSETitemParams FddSecond
|
||||||
DW OnChangeAction.nothing
|
DW OnChangeAction.nothing
|
||||||
IF NEW_FEATURE : DB paramLine : ENDIF
|
IF NEW_FEATURE : DB paramLine : ENDIF
|
||||||
DB columnNum,lineNum
|
DB columnNum,lineNum
|
||||||
DB paramName
|
DB paramName
|
||||||
DW CMOS_CELL.DrivesSetup_1.Mask.SecondFDD : DB %0000'0000
|
DW CMOS_CELL.DrivesSetup_1.Mask.SecondFDD : DB %0000'1000
|
||||||
DB msgStrings.valAuto
|
DB msgStrings.val35
|
||||||
|
DB msgStrings.val525
|
||||||
|
DB msgStrings.valDash6
|
||||||
|
; DB msgStrings.valAuto
|
||||||
; DB msgStrings.val720
|
; DB msgStrings.val720
|
||||||
; DB msgStrings.val1440
|
; DB msgStrings.val1440
|
||||||
; DB msgStrings.valDash6
|
; DB msgStrings.val1200
|
||||||
|
|
||||||
_mSETitemParams PriIdeMA
|
_mSETitemParams PriIdeMA
|
||||||
DW OnChangeAction.nothing
|
DW OnChangeAction.nothing
|
||||||
@ -653,6 +659,8 @@ msgStrings:
|
|||||||
_mSetStr valAuto, tmp_Counter : DZ 'Auto '
|
_mSetStr valAuto, tmp_Counter : DZ 'Auto '
|
||||||
; _mSetStr val720, tmp_Counter : DZ '720K '
|
; _mSetStr val720, tmp_Counter : DZ '720K '
|
||||||
; _mSetStr val1440, tmp_Counter : DZ '1.44M '
|
; _mSetStr val1440, tmp_Counter : DZ '1.44M '
|
||||||
|
_mSetStr val35, tmp_Counter : DZ '3.5" '
|
||||||
|
_mSetStr val525, tmp_Counter : DZ '5.25" '
|
||||||
_mSetStr valDash6, tmp_Counter : DZ '------'
|
_mSetStr valDash6, tmp_Counter : DZ '------'
|
||||||
_mSetStr parFddSecond, tmp_Counter : DZ 'FDD second : '
|
_mSetStr parFddSecond, tmp_Counter : DZ 'FDD second : '
|
||||||
_mSetStr parPriIdeMA, tmp_Counter : DZ 'Primary IDE Master',#FF,' : '
|
_mSetStr parPriIdeMA, tmp_Counter : DZ 'Primary IDE Master',#FF,' : '
|
||||||
@ -832,6 +840,8 @@ msgRusStrings:
|
|||||||
_mSetStrRus valAuto, tmp_Counter : DZ '€¢â® '
|
_mSetStrRus valAuto, tmp_Counter : DZ '€¢â® '
|
||||||
; _mSetStrRus val720, tmp_Counter : DZ '720K '
|
; _mSetStrRus val720, tmp_Counter : DZ '720K '
|
||||||
; _mSetStrRus val1440, tmp_Counter : DZ '1.44M '
|
; _mSetStrRus val1440, tmp_Counter : DZ '1.44M '
|
||||||
|
_mSetStrRus val35, tmp_Counter : DZ '3.5" '
|
||||||
|
_mSetStrRus val525, tmp_Counter : DZ '5.25" '
|
||||||
_mSetStrRus valDash6, tmp_Counter : DZ '------'
|
_mSetStrRus valDash6, tmp_Counter : DZ '------'
|
||||||
_mSetStrRus parFddSecond, tmp_Counter : DZ 'FDD ¢â®à®© : '
|
_mSetStrRus parFddSecond, tmp_Counter : DZ 'FDD ¢â®à®© : '
|
||||||
_mSetStrRus parPriIdeMA, tmp_Counter : DZ 'Primary IDE Master',#FF,' : '
|
_mSetStrRus parPriIdeMA, tmp_Counter : DZ 'Primary IDE Master',#FF,' : '
|
||||||
|
|||||||
@ -1,8 +1,10 @@
|
|||||||
;=======================[All shared EQUs]=======================;
|
;=======================[All shared EQUs]=======================;
|
||||||
|
DEFINE SET_EXPID_VER 3
|
||||||
|
DEFINE SET_EXPID_MOD 07
|
||||||
BETA_BUILD EQU 1 ; 40 ; ¤®¡ ¢«ï¥â áâப㠨 á®®¡é¥¨¥ ® â¥á⮢®© ᡮથ áâ à⮢®¬ íªà ¥
|
BETA_BUILD EQU 1 ; 40 ; ¤®¡ ¢«ï¥â áâப㠨 á®®¡é¥¨¥ ® â¥á⮢®© ᡮથ áâ à⮢®¬ íªà ¥
|
||||||
BETA_RC EQU 0 ; 2 ;
|
BETA_RC EQU 0 ; 2 ;
|
||||||
RELEASEhotFIX EQU 0 ;
|
RELEASEhotFIX EQU 0 ;
|
||||||
DEFINE RELEASE_BUILD_DATE "25.06.2025"
|
DEFINE RELEASE_BUILD_DATE "19.01.2026"
|
||||||
;======================[All shared defines]=====================;
|
;======================[All shared defines]=====================;
|
||||||
DEFINE PACKED_MAIN 0 ; ¯ ª®¢ âì MAIN ¨«¨ ¢«¥§ ¥â ¡¥§ í⮣®?
|
DEFINE PACKED_MAIN 0 ; ¯ ª®¢ âì MAIN ¨«¨ ¢«¥§ ¥â ¡¥§ í⮣®?
|
||||||
DEFINE SP2000_Loader_Flag #0107 ;
|
DEFINE SP2000_Loader_Flag #0107 ;
|
||||||
|
|||||||
Binary file not shown.
@ -2,8 +2,8 @@
|
|||||||
; ============[For EXP part]=============
|
; ============[For EXP part]=============
|
||||||
; ------[Version of BIOS "VER.MOD"]------
|
; ------[Version of BIOS "VER.MOD"]------
|
||||||
EXP_ID:
|
EXP_ID:
|
||||||
.VER EQU 3 ; <EFBFBD>®¬¥à ¢¥àᨨ ¬¥ïâì âãâ!
|
.VER EQU SET_EXPID_VER ; <EFBFBD>®¬¥à ¢¥àᨨ ¬¥ïâì âãâ!
|
||||||
.MOD EQU 07 ; <EFBFBD>®¬¥à ¢¥àᨨ ¬¥ïâì âãâ!
|
.MOD EQU SET_EXPID_MOD ; <EFBFBD>®¬¥à ¢¥àᨨ ¬¥ïâì âãâ!
|
||||||
BIOS_ver_hex EQU EXP_ID.VER*256+EXP_ID.MOD
|
BIOS_ver_hex EQU EXP_ID.VER*256+EXP_ID.MOD
|
||||||
|
|
||||||
DEFINE BIOS_ver_string '0'+EXP_ID.VER, '.', '0'+EXP_ID.MOD/10, '0'+EXP_ID.MOD-(EXP_ID.MOD/10)*10
|
DEFINE BIOS_ver_string '0'+EXP_ID.VER, '.', '0'+EXP_ID.MOD/10, '0'+EXP_ID.MOD-(EXP_ID.MOD/10)*10
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user