FN_CRIPT - Acex version
This commit is contained in:
parent
d1b155f0b2
commit
c8d95662c8
@ -1 +1 @@
|
||||
Subproject commit d3cdfc6e7644fab96ebe2c6e87959359cda6319c
|
||||
Subproject commit 84d47b2818758fdceda21ecf2953324c1f339858
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -504,8 +504,8 @@ DCP_CONFIG:
|
||||
AND A
|
||||
JP Z,PORTS_INIT
|
||||
|
||||
LD A,R
|
||||
DI
|
||||
LD A,R
|
||||
DI
|
||||
PUSH AF
|
||||
|
||||
PUSH IX
|
||||
@ -526,7 +526,6 @@ DCP_CONFIG:
|
||||
RET PO
|
||||
EI
|
||||
RET
|
||||
|
||||
.PARSE_TABLE:
|
||||
LD A,L
|
||||
AND E
|
||||
|
||||
@ -565,6 +565,8 @@ FN_HDD_INIT:
|
||||
OUT (C),B
|
||||
INC A
|
||||
JR Z,FN_HDD_PART
|
||||
|
||||
; !FIXIT ᤥ« âì âãâ ¢ë¡®à ¯¥à¢®£® ¯®¯ ¢è¥£®áï ¨§ SYS.IDE_0-3
|
||||
CALL TEST_HDD_DRV
|
||||
SCF
|
||||
RET NZ
|
||||
|
||||
@ -229,19 +229,21 @@ EMM.FreeMemRMD:
|
||||
; ‚室: A - <20>€—€‹Ž –…<E28093>Ž—Šˆ
|
||||
;EMM_FN3M:
|
||||
EMM.FreeMem:
|
||||
AND A
|
||||
AND A
|
||||
SCF
|
||||
RET Z
|
||||
RET Z
|
||||
;
|
||||
LD L,A
|
||||
CP ZX_RAM_ID
|
||||
CALL Z,SET_ROM_FLAG_ZX
|
||||
LD L,A
|
||||
IN A,(SLOT3)
|
||||
EX AF,AF'
|
||||
LD A,SYS_PAGE
|
||||
OUT (SLOT3),A
|
||||
;
|
||||
IN A,(SLOT3)
|
||||
EX AF,AF'
|
||||
LD A,SYS_PAGE
|
||||
OUT (SLOT3),A
|
||||
|
||||
LD H,high (SYS_PAGE.RAMD_FAT); - #4000 - #4000) ; !FIXIT SAFE_RGADR +
|
||||
LD A,L
|
||||
LD H,high (SYS_PAGE.RAMD_FAT); - #4000 - #4000) ; !FIXIT SAFE_RGADR +
|
||||
LD A,L
|
||||
EMM_F3M_L1:
|
||||
LD L,A
|
||||
LD A,(HL) ; á«¥¤ãî騩 ¡«®ª
|
||||
@ -253,14 +255,13 @@ EMM_F3M_L1:
|
||||
|
||||
EX AF,AF'
|
||||
OUT (SLOT3),A
|
||||
XOR A ;!FIXIT ¥¤®ªã¬¥â¨à®¢ ®
|
||||
;AND A
|
||||
XOR A ; no error code
|
||||
RET
|
||||
|
||||
EMM_FN3M_ERR:
|
||||
EX AF,AF'
|
||||
OUT (SLOT3),A
|
||||
LD A,2 ;!FIXIT ¥¤®ªã¬¥â¨à®¢ ®
|
||||
LD A,2 ;!HARDCODE error code
|
||||
SCF
|
||||
RET
|
||||
;----------------------------------------------------------------------;
|
||||
@ -710,7 +711,7 @@ ROM_DISK:
|
||||
PUSH BC
|
||||
|
||||
LD A,E
|
||||
AND 63 ; ADRESS in ROM-Page
|
||||
AND #3F ; ADRESS in ROM-Page
|
||||
PUSH AF ; á®åà ¨âì ¤à¥á
|
||||
|
||||
EX DE,HL ; DE - ¤à¥á ¡ãä¥à
|
||||
@ -732,73 +733,73 @@ ROM_DISK:
|
||||
; B - ç¨á«® ᥪâ®à®¢
|
||||
; A - ROM-Page
|
||||
.loopRead:
|
||||
PUSH HL ; ®âªã¤
|
||||
PUSH DE ; ªã¤
|
||||
PUSH HL ; ®âªã¤
|
||||
PUSH DE ; ªã¤
|
||||
|
||||
LD HL,-.stackDepth - .readProcedure.size ; memory stack use!
|
||||
ADD HL,SP ; stack
|
||||
LD HL,-.stackDepth - .readProcedure.size ; memory stack use!
|
||||
ADD HL,SP ; stack
|
||||
|
||||
PUSH HL ; ¤à¥á ¯à®£à ¬¬ë .readProcedure
|
||||
PUSH HL ; ¤à¥á ¯à®£à ¬¬ë .readProcedure
|
||||
|
||||
LD DE,.readProcedure ; ¯¥à¥¥á⨠¯à®£à ¬¬ã á⥪
|
||||
LD DE,.readProcedure ; ¯¥à¥¥á⨠¯à®£à ¬¬ã á⥪
|
||||
EX DE,HL
|
||||
LD BC,.readProcedure.size
|
||||
LDIR ; ¯à®£à ¬¬ á⥪¥
|
||||
LD BC,#100 ; ¤«¨ ᥪâ®à
|
||||
RET ; ¨á¯®«¨âì ¯à®£à ¬¬ã .readProcedure, á⥪¥ ¤à¥á ¡ãä¥à ¨ ROM
|
||||
LDIR ; ¯à®£à ¬¬ á⥪¥
|
||||
LD BC,#100 ; ¤«¨ ᥪâ®à
|
||||
RET ; ¨á¯®«¨âì ¯à®£à ¬¬ã .readProcedure, á⥪¥ ¤à¥á ¡ãä¥à ¨ ROM
|
||||
; DE - next address
|
||||
; HL - ROM address
|
||||
.readNext:
|
||||
POP BC ; ç¨á«® ᥪâ®à®¢
|
||||
POP BC ; ç¨á«® ᥪâ®à®¢
|
||||
|
||||
INC C ; áç¥â稪 áç¨â ëå ᥪâ®à®¢
|
||||
DEC B ; ᥪâ®à ª®ç¨«¨áì?
|
||||
INC C ; áç¥â稪 áç¨â ëå ᥪâ®à®¢
|
||||
DEC B ; ᥪâ®à ª®ç¨«¨áì?
|
||||
|
||||
JR Z,.normExit
|
||||
BIT 6,H ; ç⥨¥ ¥ § ª®ç¥®
|
||||
BIT 6,H ; ç⥨¥ ¥ § ª®ç¥®
|
||||
|
||||
PUSH BC ; á®åà ¨âì áç¥â稪¨
|
||||
JR Z,.loopRead ; ç¨â âì ¤ «ìè¥
|
||||
PUSH BC ; á®åà ¨âì áç¥â稪¨
|
||||
JR Z,.loopRead ; ç¨â âì ¤ «ìè¥
|
||||
POP BC
|
||||
|
||||
POP HL ; ®¬¥à ᥪâ®à
|
||||
POP HL ; ®¬¥à ᥪâ®à
|
||||
|
||||
LD A,B
|
||||
LD B,0
|
||||
ADD HL,BC
|
||||
LD B,A ; ¢ëç¨á«¨âì á«¥¤.ᥪâ®à
|
||||
LD B,A ; ¢ëç¨á«¨âì á«¥¤.ᥪâ®à
|
||||
|
||||
EX DE,HL ; ⥯¥àì HL - ¤à¥á, DE ᥪâ®à, B - ᪮«ìª® ¥é¥ ç¨â âì
|
||||
EX DE,HL ; ⥯¥àì HL - ¤à¥á, DE ᥪâ®à, B - ᪮«ìª® ¥é¥ ç¨â âì
|
||||
|
||||
JP .loop ; ç âì ¢á¥ á®¢ !
|
||||
JP .loop ; ç âì ¢á¥ á®¢ !
|
||||
; ç⥨¥ § ª®ç¥®
|
||||
.normExit:
|
||||
POP HL ; ᥪâ®à, ®âªã¤ ¢¥«®áì ç⥨¥
|
||||
ADD HL,BC ; ¯® ¢®§¢à âã: HL - á«¥¤. ¤à¥á
|
||||
EX DE,HL ; DE - á«¥¤.ᥪâ®à
|
||||
AND A
|
||||
RET
|
||||
.normExit:
|
||||
POP HL ; ᥪâ®à, ®âªã¤ ¢¥«®áì ç⥨¥
|
||||
ADD HL,BC ; ¯® ¢®§¢à âã: HL - á«¥¤. ¤à¥á
|
||||
EX DE,HL ; DE - á«¥¤.ᥪâ®à
|
||||
AND A
|
||||
RET
|
||||
; ®è¨¡ª
|
||||
.errorExit: ; !TODO ᤥ« âì, ç⮡ ¢ë室¥ ¯®ª §ë¢ «®áì ª®«¨ç¥á⢮ ¯à®ç¨â ëå ᥪâ®à®¢
|
||||
POP BC
|
||||
POP DE
|
||||
SCF
|
||||
RET
|
||||
POP BC
|
||||
POP DE
|
||||
SCF
|
||||
RET
|
||||
; ¯à®æ¥¤ãà , ¯¥à¥®á¨¬ ï á⥪ ¤«ï çâ¥¨ï ¨§ ROM-Disk
|
||||
; ®áâ®à®¦¥¥ á PUSH, ¥á«¨ ¤® ¬®£®, ⮠㢥«¨ç¨¢ © .stackDepth
|
||||
.readProcedure:
|
||||
POP DE ; ªã¤
|
||||
POP HL ; ®âªã¤
|
||||
OUT (ROM.SLOT0),A ; ROM_PAGE
|
||||
LDIR ; §¤¥áì ç¨â ¥âáï ¨§ ROM-Disk
|
||||
LD B,A
|
||||
XOR A
|
||||
OUT (ROM.SLOT0),A
|
||||
OUT (SYS_PORT.ROM),A
|
||||
LD A,B
|
||||
JP .readNext
|
||||
.stackDepth EQU 8 ; à ááâ®ï¨¥ ®â ª®æ ¯à®æ¥¤ãàë ¤® ¢¥àè¨ë á⥪ .
|
||||
.readProcedure.size EQU $-.readProcedure
|
||||
POP DE ; ªã¤
|
||||
POP HL ; ®âªã¤
|
||||
OUT (ROM.SLOT0),A ; ROM_PAGE
|
||||
LDIR ; §¤¥áì ç¨â ¥âáï ¨§ ROM-Disk
|
||||
LD B,A
|
||||
XOR A
|
||||
OUT (ROM.SLOT0),A
|
||||
OUT (SYS_PORT.ROM),A
|
||||
LD A,B
|
||||
JP .readNext
|
||||
.stackDepth EQU 8 ; à ááâ®ï¨¥ ®â ª®æ ¯à®æ¥¤ãàë ¤® ¢¥àè¨ë á⥪ .
|
||||
.readProcedure.size EQU $-.readProcedure
|
||||
;----------------------------------------------------------------------;
|
||||
;
|
||||
|
||||
|
||||
@ -406,17 +406,16 @@ REINIT: DEC B
|
||||
;
|
||||
;----------------------------------------------------------------------;
|
||||
SET_ROM_FLAG_ZX:
|
||||
LD C,A
|
||||
IN A,(SLOT3)
|
||||
PUSH AF
|
||||
EX AF,AF'
|
||||
IN A,(SLOT3)
|
||||
EX AF,AF'
|
||||
LD A,Spec_Page
|
||||
OUT (SLOT3),A
|
||||
XOR A
|
||||
LD (Spec_Page.flag_Z),A
|
||||
LD (Spec_Page.flag_X),A
|
||||
POP AF
|
||||
EX AF,AF'
|
||||
OUT (SLOT3),A
|
||||
LD A,C
|
||||
RET
|
||||
;----------------------------------------------------------------------;
|
||||
;
|
||||
@ -23,27 +23,6 @@ EMM.GetBanksPorts:
|
||||
RET ;84t
|
||||
.error: SCF
|
||||
RET ;74t
|
||||
|
||||
; old version
|
||||
; LD C,SLOT0
|
||||
; IN B,(C)
|
||||
; AND A
|
||||
; RET Z ;34t
|
||||
; LD C,SLOT1
|
||||
; IN B,(C)
|
||||
; DEC A
|
||||
; RET Z ;62t
|
||||
; LD C,SLOT2
|
||||
; IN B,(C)
|
||||
; DEC A
|
||||
; RET Z ;90t
|
||||
; LD C,SLOT3
|
||||
; IN B,(C)
|
||||
; DEC A
|
||||
; RET Z ;118t
|
||||
; SCF
|
||||
; RET ;150t
|
||||
|
||||
;----------------------------------------------------------------------;
|
||||
|
||||
;----------------------------------------------------------------------;
|
||||
@ -75,18 +54,12 @@ FN_VERSION:
|
||||
;----------------------------------------------------------------------;
|
||||
|
||||
;----------------------------------------------------------------------;
|
||||
; [ ] 28/01/24 ¤®¡ ¢«¥ ¯®¤äãªæ¨ï ¢ë¤ ç¨ ¨äë ¯à® Acex
|
||||
FN_CRIPT:
|
||||
DEC B
|
||||
JR Z,.board_id
|
||||
DEC B
|
||||
SCF
|
||||
RET NZ
|
||||
; [ ] 25/01/24
|
||||
.Acex_ver:
|
||||
;!TODO
|
||||
AND A
|
||||
RET
|
||||
DJNZ .Acex_ver
|
||||
;
|
||||
; BoardID_start old address #312A
|
||||
; BoardID_end old address #312D
|
||||
.board_id:
|
||||
LD HL,(ROM_NUMBER.part1) ;rdlow-ok
|
||||
LD A,(ROM_NUMBER.part2) ;rdlow-ok
|
||||
@ -94,8 +67,73 @@ FN_CRIPT:
|
||||
LD DE,(BoardID.end) ;rdlow-ok
|
||||
AND A
|
||||
RET
|
||||
; BoardID_start old address #312A
|
||||
; BoardID_end old address #312D
|
||||
;
|
||||
.error: LD A,BIOS.Error.InvalidSubFunction
|
||||
SCF
|
||||
RET
|
||||
;
|
||||
.Acex_ver:
|
||||
DJNZ .error
|
||||
PUSH HL
|
||||
LD A,R
|
||||
DI
|
||||
PUSH AF
|
||||
;
|
||||
LD HL,-.stackDepth - .readProcedure.size ; memory stack use!
|
||||
ADD HL,SP
|
||||
PUSH HL ; ¤à¥á ¯à®£à ¬¬ë .readProcedure
|
||||
LD DE,.readProcedure ; ¯¥à¥¥á⨠¯à®£à ¬¬ã á⥪
|
||||
EX DE,HL
|
||||
LD BC,.readProcedure.size
|
||||
LDIR ; ¯à®£à ¬¬ á⥪¥
|
||||
LD A,+(12 xor %0000'1000) ; !HARDCODE bitstream page in rom
|
||||
RET
|
||||
.return:;
|
||||
POP AF
|
||||
JP PO,.no_EI
|
||||
EI
|
||||
.no_EI: CALL .choose_chip
|
||||
POP DE
|
||||
LD BC,.chip_ID_TXT.RecordSize
|
||||
LDIR
|
||||
RET
|
||||
;
|
||||
.choose_chip:
|
||||
XOR A
|
||||
LD HL, - ACEX.Chip_ID.K30
|
||||
ADD HL,DE
|
||||
LD HL,.chip_ID_TXT.K30
|
||||
RET Z
|
||||
INC A
|
||||
LD HL, - ACEX.Chip_ID.K50
|
||||
ADD HL,DE
|
||||
LD HL,.chip_ID_TXT.K50
|
||||
RET Z
|
||||
POP HL ; ¡ « á á⥪
|
||||
.error_unknownChip:
|
||||
SCF
|
||||
POP HL
|
||||
LD A,BIOS.Error.UnknownDevice
|
||||
RET
|
||||
;
|
||||
; ¯à®æ¥¤ãà , ¯¥à¥®á¨¬ ï á⥪ ¤«ï ç⥨ï Acex ID
|
||||
; ®áâ®à®¦¥¥ á PUSH, ¥á«¨ ¤® ¬®£®, ⮠㢥«¨ç¨¢ © .stackDepth
|
||||
.readProcedure:
|
||||
OUT (ROM.SLOT0),A ; ROM_PAGE
|
||||
LD DE,(#100 + 3) ; !HARDCODE §¤¥áì ç¨â ¥âáï Acex ID
|
||||
XOR A
|
||||
OUT (ROM.SLOT0),A
|
||||
OUT (SYS_PORT.ROM),A
|
||||
JP .return
|
||||
.stackDepth EQU 2 ; à ááâ®ï¨¥ ®â ª®æ ¯à®æ¥¤ãàë ¤® ¢¥àè¨ë á⥪ .
|
||||
.readProcedure.size EQU $-.readProcedure
|
||||
;
|
||||
.chip_ID_TXT:
|
||||
.chip_ID_TXT.K30: DZ "K30"
|
||||
.chip_ID_TXT.RecordSize EQU $-.chip_ID_TXT
|
||||
.chip_ID_TXT.K50 DZ "K50"
|
||||
;.chip_ID_TXT.K100 DZ "K100"
|
||||
.chip_ID_TXT.Size EQU $-.chip_ID_TXT
|
||||
;----------------------------------------------------------------------;
|
||||
|
||||
;----------------------------------------------------------------------;
|
||||
@ -201,7 +239,7 @@ INIT_VSyncAndWaits:
|
||||
|
||||
.cmos_OK:
|
||||
and CMOS.Cell.ScreenSET.Mask.Sinc
|
||||
bit 6,a
|
||||
and #40
|
||||
ld a,3 ; 320 lines & no waits
|
||||
jr z,.setVSyncAndWaits
|
||||
dec a ; 312 lines & no waits
|
||||
@ -444,24 +482,21 @@ LOOP_EQ: ;
|
||||
; START_DI:
|
||||
; PUSH AF
|
||||
; LD A,R
|
||||
; JP PE,XX_DI
|
||||
; LD A,R
|
||||
; XX_DI: LD A,#80
|
||||
; LD A,#80
|
||||
; JP PE,XX_DI2
|
||||
; XOR A
|
||||
; XX_DI2: LD R,A
|
||||
; DI
|
||||
; POP AF
|
||||
; RET
|
||||
|
||||
;
|
||||
; END_DI: PUSH AF
|
||||
; LD A,R
|
||||
; BIT 7,A
|
||||
; AND #80
|
||||
; JR Z,XX_DI3
|
||||
; EI
|
||||
; POP AF ; PE
|
||||
; RET
|
||||
|
||||
; XX_DI3: DI
|
||||
; POP AF ; PO
|
||||
; RET
|
||||
|
||||
@ -28,14 +28,7 @@ Disk_subsystem_ver_hex EQU ROM_ID.VER*256+ROM_ID.MOD
|
||||
DEFINE Disk_subsystem_ver_txt '0'+ROM_ID.VER, '.', '0'+ROM_ID.MOD/10, '0'+ROM_ID.MOD-(ROM_ID.MOD/10)*10
|
||||
;---------------------------------------
|
||||
|
||||
DEFINE SPTeam_year '2023'
|
||||
DEFINE SPTeam_year '2024'
|
||||
DEFINE SetupVer '1.60'
|
||||
|
||||
|
||||
;
|
||||
;2.48 New BIOS for Sp2000
|
||||
;2.50 02-08-2001 ADD BUILD-IN CD DRIVER (Not release)
|
||||
;2.51 14-09-2001 Removed 2 IDE (if with_2ide) and added print board serial number
|
||||
;2.52 Add new items to SETUP Utility for screen position.
|
||||
;2.53 Add CMOS install routine. Disabled TRDOS install.
|
||||
;=======================================
|
||||
;=======================================
|
||||
;
|
||||
Loading…
Reference in New Issue
Block a user