+- BIOS function for ACEX reload by custom bitstream
This commit is contained in:
parent
681c2cfdff
commit
730aae8a89
@ -1 +1 @@
|
|||||||
Subproject commit a15861c07cab60eaf09c28226d0c7761b4fd8235
|
Subproject commit 8c5550f810d173790e4665d610328b9247b00f02
|
||||||
@ -709,10 +709,26 @@ FN_5x_Parser:
|
|||||||
EX (SP),HL
|
EX (SP),HL
|
||||||
RET
|
RET
|
||||||
|
|
||||||
EXP_FNS: ; ‚室 ¢ äãªæ¨î ¨§ TR-DOS
|
; ‚室 ¢ äãªæ¨¨ <20>ˆŽ‘ ¨§ TR-DOS
|
||||||
POP AF
|
EXP_FNS:; ®âª«îç ¥¬ § ¯¨áì ¢ íªà ᯥªâàã¬
|
||||||
|
EX (SP),HL
|
||||||
|
IN A,(RGADR)
|
||||||
|
LD L,A
|
||||||
|
LD A,#C0
|
||||||
|
OUT (PORT_Y),A
|
||||||
|
LD A,H
|
||||||
|
EX (SP),HL ; (SP) = port_y
|
||||||
|
;
|
||||||
CALL EXP_FNS_RST18
|
CALL EXP_FNS_RST18
|
||||||
CALL DOS_ON
|
CALL DOS_ON
|
||||||
|
; ¢®§¢à é ¥¬ § ¯¨áì ¢ íªà ᯥªâàã¬
|
||||||
|
EX (SP),HL
|
||||||
|
PUSH AF
|
||||||
|
LD A,L
|
||||||
|
OUT (RGADR),A
|
||||||
|
POP AF
|
||||||
|
POP HL
|
||||||
|
; ¢®§¢à â
|
||||||
JP EXP_FNS_RET
|
JP EXP_FNS_RET
|
||||||
|
|
||||||
;! ! ! ! ! ! ! !
|
;! ! ! ! ! ! ! !
|
||||||
|
|||||||
@ -49,7 +49,7 @@ RST_10:
|
|||||||
JP EXP_FNS_RST18
|
JP EXP_FNS_RST18
|
||||||
RST_18_1:
|
RST_18_1:
|
||||||
CALL EXP_FNS_RST18
|
CALL EXP_FNS_RST18
|
||||||
JR EXP_FNS_2_RET
|
.exit: JR EXP_FNS_2_RET
|
||||||
|
|
||||||
;=======================================
|
;=======================================
|
||||||
|
|
||||||
@ -772,6 +772,8 @@ set_config:
|
|||||||
|
|
||||||
; JR NZ,NO_SETUP_2
|
; JR NZ,NO_SETUP_2
|
||||||
|
|
||||||
|
;[---------------------------------------------------------------------]
|
||||||
|
|
||||||
MODULE Reset_Handler
|
MODULE Reset_Handler
|
||||||
start:
|
start:
|
||||||
IN A,(SLOT3)
|
IN A,(SLOT3)
|
||||||
@ -853,21 +855,22 @@ init_rom_address EQU #8200 ;!HARDCO
|
|||||||
;!FIXIT ᤥ« âì ¢ë¡®à £à㧨âì ¤ /¥â <20>‡“ ᯥªâà㬠¯à¨ áâ àâ¥, [-------]
|
;!FIXIT ᤥ« âì ¢ë¡®à £à㧨âì ¤ /¥â <20>‡“ ᯥªâà㬠¯à¨ áâ àâ¥, [-------]
|
||||||
; ¥á«¨ ¥â - â® ¢®âªãâì íâ®â ª®¤:
|
; ¥á«¨ ¥â - â® ¢®âªãâì íâ®â ª®¤:
|
||||||
; LD HL,PROG_NO_ROM
|
; LD HL,PROG_NO_ROM
|
||||||
; LD DE,#C000 + #38
|
; LD DE,#C000 + Spec_Page.no_zx_rom
|
||||||
; LD BC,PROG_NO_ROM.size
|
; LD BC,PROG_NO_ROM.size
|
||||||
; LDIR
|
; LDIR
|
||||||
|
|
||||||
; LD HL,RAM_BIOS_PROG
|
; LD HL,RAM_BIOS_PROG
|
||||||
; LD DE,#C000 + #08
|
; LD DE,#C000 + Spec_Page.to_bios
|
||||||
; LD BC,RAM_BIOS_PROG.Length
|
; LD BC,RAM_BIOS_PROG.Length
|
||||||
; LDIR
|
; LDIR
|
||||||
;[---------------------------------------------------------------------]
|
;---------------------------------------
|
||||||
|
|
||||||
Spec_Page_handler_OK:
|
Spec_Page_handler_OK:
|
||||||
pop af
|
pop af
|
||||||
OUT (SLOT3),A
|
OUT (SLOT3),A
|
||||||
|
|
||||||
ENDMODULE
|
ENDMODULE
|
||||||
|
;[---------------------------------------------------------------------]
|
||||||
;
|
;
|
||||||
;**************************************
|
;**************************************
|
||||||
;
|
;
|
||||||
@ -1370,7 +1373,7 @@ Length EQU $-Setup_Starter.Start
|
|||||||
;---------------------[ ‡€ƒ‹“˜Šˆ „‹Ÿ #41 ‘’<E28098>€<EFBFBD>ˆ–›]----------------------;
|
;---------------------[ ‡€ƒ‹“˜Šˆ „‹Ÿ #41 ‘’<E28098>€<EFBFBD>ˆ–›]----------------------;
|
||||||
;-------------[RST 08]
|
;-------------[RST 08]
|
||||||
; RAM_BIOS_PROG: ; for CALL BIOS in #41 page
|
; RAM_BIOS_PROG: ; for CALL BIOS in #41 page
|
||||||
; DISP #08
|
; DISP Spec_Page.to_bios
|
||||||
; PUSH AF
|
; PUSH AF
|
||||||
; LD A,ROM.BIOS
|
; LD A,ROM.BIOS
|
||||||
; OUT (SYS_PORT.ROM),A
|
; OUT (SYS_PORT.ROM),A
|
||||||
@ -1382,7 +1385,7 @@ Length EQU $-Setup_Starter.Start
|
|||||||
|
|
||||||
; ;-------------[RST 38]
|
; ;-------------[RST 38]
|
||||||
; PROG_NO_ROM:
|
; PROG_NO_ROM:
|
||||||
; DISP #38
|
; DISP Spec_Page.no_zx_rom
|
||||||
; DI
|
; DI
|
||||||
|
|
||||||
; LD A,#FF
|
; LD A,#FF
|
||||||
|
|||||||
@ -585,13 +585,13 @@ WIN_SET_ZG: ; LP_SET_ZG:
|
|||||||
RET
|
RET
|
||||||
.SET: IN A,(SLOT1)
|
.SET: IN A,(SLOT1)
|
||||||
LD (SYS_PAGE.COPY_SLOT1),A
|
LD (SYS_PAGE.COPY_SLOT1),A
|
||||||
LD A,#FF
|
LD A,SHARED_PAGE
|
||||||
OUT (SLOT1),A
|
OUT (SLOT1),A
|
||||||
EXX
|
EXX
|
||||||
LD BC,Port_All_Mode
|
LD BC,Port_All_Mode
|
||||||
IN A,(C)
|
IN A,(C)
|
||||||
LD (SYS_PAGE.SYS_WORK1),A
|
LD (SYS_PAGE.SYS_WORK1),A
|
||||||
AND #FE ; accelerator and keyboard interrupt off
|
AND #FE ; Spectrum Screen on, accelerator and keyboard interrupt off
|
||||||
OUT (C),A
|
OUT (C),A
|
||||||
EX AF,AF'
|
EX AF,AF'
|
||||||
LD B,A
|
LD B,A
|
||||||
|
|||||||
@ -30,7 +30,7 @@ EMM.GetMemSize:
|
|||||||
|
|
||||||
|
|
||||||
;
|
;
|
||||||
;----------------------------------------------------------------------;
|
;----------------------------------------------------------------------; !FIXIT SAFE_RGADR
|
||||||
; ˆ¨æ¨ «¨§ æ¨ï à á¯à¥¤¥«¥¨ï ¯ ¬ïâ¨.
|
; ˆ¨æ¨ «¨§ æ¨ï à á¯à¥¤¥«¥¨ï ¯ ¬ïâ¨.
|
||||||
EMM.InitMem:
|
EMM.InitMem:
|
||||||
PUSH BC
|
PUSH BC
|
||||||
@ -107,7 +107,7 @@ RESERVED_PAGES:
|
|||||||
|
|
||||||
|
|
||||||
;
|
;
|
||||||
;----------------------------------------------------------------------;
|
;----------------------------------------------------------------------; !FIXIT SAFE_RGADR
|
||||||
; <20>®«ãç¨âì ¡«®ª ¯ ¬ï⨠N bytes,
|
; <20>®«ãç¨âì ¡«®ª ¯ ¬ï⨠N bytes,
|
||||||
; ‚室: B - ç¨á«® ¥®¡å®¤¨¬ëå ¡«®ª®¢
|
; ‚室: B - ç¨á«® ¥®¡å®¤¨¬ëå ¡«®ª®¢
|
||||||
; ‚ë室: L,A - Š‹ž— RAM-Disk/ª®¤ ®è¨¡ª¨
|
; ‚ë室: L,A - Š‹ž— RAM-Disk/ª®¤ ®è¨¡ª¨
|
||||||
@ -228,7 +228,7 @@ EMM.FreeMem:
|
|||||||
LD A,SYS_PAGE
|
LD A,SYS_PAGE
|
||||||
OUT (SLOT1),A
|
OUT (SLOT1),A
|
||||||
|
|
||||||
LD H,high (SYS_PAGE.RAMD_FAT - #4000 - #4000)
|
LD H,high (SYS_PAGE.RAMD_FAT - #4000 - #4000) ; !FIXIT SAFE_RGADR
|
||||||
LD A,L
|
LD A,L
|
||||||
EMM_F3M_L1:
|
EMM_F3M_L1:
|
||||||
LD L,A
|
LD L,A
|
||||||
@ -345,6 +345,38 @@ EMM.GetMemPageNext:
|
|||||||
; ‚室: A - ¡«®ª, HL - ¤à¥á ¡ãä¥à - 256 ¡ ©â.
|
; ‚室: A - ¡«®ª, HL - ¤à¥á ¡ãä¥à - 256 ¡ ©â.
|
||||||
; ‚ë室: HL - ¤à¥á ¡«®ª , B - ¤«¨ ¡«®ª ¢ áâà ¨æ å Ž‡“
|
; ‚ë室: HL - ¤à¥á ¡«®ª , B - ¤«¨ ¡«®ª ¢ áâà ¨æ å Ž‡“
|
||||||
;EMM_FN5M:
|
;EMM_FN5M:
|
||||||
|
; EMM.GetMemBlkPages:
|
||||||
|
; PUSH DE
|
||||||
|
; PUSH HL
|
||||||
|
; EX DE,HL
|
||||||
|
; LD B,0
|
||||||
|
; LD L,A
|
||||||
|
|
||||||
|
; .loop: LD A,L
|
||||||
|
; LD (DE),A
|
||||||
|
; INC DE
|
||||||
|
; AND A
|
||||||
|
; JR Z,.error
|
||||||
|
; CP #FF
|
||||||
|
; JR Z,.end
|
||||||
|
; ;
|
||||||
|
; IN A,(SLOT1)
|
||||||
|
; LD C,A
|
||||||
|
; LD A,SYS_PAGE
|
||||||
|
; OUT (SLOT1),A
|
||||||
|
; LD H,high (SYS_PAGE.RAMD_FAT - #4000 - #4000)
|
||||||
|
; LD L,(HL)
|
||||||
|
; LD A,C
|
||||||
|
; OUT (SLOT1),A
|
||||||
|
; ;
|
||||||
|
; INC B
|
||||||
|
; JR NZ,.loop
|
||||||
|
|
||||||
|
; .error: SCF
|
||||||
|
; .end: POP HL
|
||||||
|
; POP DE
|
||||||
|
; RET
|
||||||
|
|
||||||
EMM.GetMemBlkPages:
|
EMM.GetMemBlkPages:
|
||||||
PUSH DE
|
PUSH DE
|
||||||
PUSH HL
|
PUSH HL
|
||||||
@ -352,7 +384,10 @@ EMM.GetMemBlkPages:
|
|||||||
LD B,0
|
LD B,0
|
||||||
LD L,A
|
LD L,A
|
||||||
|
|
||||||
LD A,R
|
IN A,(SLOT1)
|
||||||
|
LD C,A
|
||||||
|
LD A,SYS_PAGE
|
||||||
|
OUT (SLOT1),A
|
||||||
|
|
||||||
.loop: LD A,L
|
.loop: LD A,L
|
||||||
LD (DE),A
|
LD (DE),A
|
||||||
@ -362,34 +397,24 @@ EMM.GetMemBlkPages:
|
|||||||
CP #FF
|
CP #FF
|
||||||
JR Z,.end
|
JR Z,.end
|
||||||
;
|
;
|
||||||
IN A,(SLOT1)
|
|
||||||
LD C,A
|
|
||||||
LD A,SYS_PAGE
|
|
||||||
OUT (SLOT1),A
|
|
||||||
LD H,high (SYS_PAGE.RAMD_FAT - #4000 - #4000)
|
LD H,high (SYS_PAGE.RAMD_FAT - #4000 - #4000)
|
||||||
LD L,(HL)
|
LD L,(HL)
|
||||||
LD A,C
|
|
||||||
OUT (SLOT1),A
|
|
||||||
;
|
|
||||||
INC B
|
INC B
|
||||||
JR NZ,.loop
|
JR NZ,.loop
|
||||||
|
|
||||||
.error: SCF
|
.error: SCF
|
||||||
.end: POP HL
|
.end: LD A,C
|
||||||
|
OUT (SLOT1),A
|
||||||
|
POP HL
|
||||||
POP DE
|
POP DE
|
||||||
RET
|
RET
|
||||||
|
|
||||||
; .end: POP HL
|
|
||||||
; POP DE
|
|
||||||
; AND A
|
|
||||||
; RET
|
|
||||||
;----------------------------------------------------------------------;
|
;----------------------------------------------------------------------;
|
||||||
;
|
;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
;
|
;
|
||||||
;----------------------------------------------------------------------;
|
;----------------------------------------------------------------------; !FIXIT SAFE_RGADR
|
||||||
;RAMD_R_W:
|
;RAMD_R_W:
|
||||||
; ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
|
; ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
|
||||||
; º RD/WR SECTOR º\
|
; º RD/WR SECTOR º\
|
||||||
@ -493,7 +518,6 @@ BLK_RD_WR:
|
|||||||
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 ?????
|
|
||||||
LD C,SLOT3
|
LD C,SLOT3
|
||||||
IN C,(C)
|
IN C,(C)
|
||||||
OUT (SLOT3),A
|
OUT (SLOT3),A
|
||||||
@ -852,7 +876,7 @@ GET_RAMD_ST:
|
|||||||
|
|
||||||
|
|
||||||
;
|
;
|
||||||
;----------------------------------------------------------------------;
|
;----------------------------------------------------------------------; !FIXIT SAFE_RGADR
|
||||||
; RAM-Disk A, BLK - B
|
; RAM-Disk A, BLK - B
|
||||||
BLK_TO_RAMD:
|
BLK_TO_RAMD:
|
||||||
CP SYS_PAGE.RAMD_KEYS.NUM
|
CP SYS_PAGE.RAMD_KEYS.NUM
|
||||||
@ -896,7 +920,7 @@ BLK_BUSY:
|
|||||||
|
|
||||||
|
|
||||||
;
|
;
|
||||||
;----------------------------------------------------------------------;
|
;----------------------------------------------------------------------; !FIXIT SAFE_RGADR
|
||||||
; RAM-Disk A
|
; RAM-Disk A
|
||||||
RAMD_CLEAR:
|
RAMD_CLEAR:
|
||||||
CP SYS_PAGE.RAMD_KEYS.NUM
|
CP SYS_PAGE.RAMD_KEYS.NUM
|
||||||
@ -931,7 +955,7 @@ RAMD_CLEAR:
|
|||||||
|
|
||||||
|
|
||||||
;
|
;
|
||||||
;----------------------------------------------------------------------;
|
;----------------------------------------------------------------------; !FIXIT SAFE_RGADR
|
||||||
; à §¤¥«¨âì ¡«®ª ¯ ¬ï⨠¤¢ ¡«®ª
|
; à §¤¥«¨âì ¡«®ª ¯ ¬ï⨠¤¢ ¡«®ª
|
||||||
; A - ¡«®ª, B - ¤«¨ ¯¥à¢®£® ¡«®ª ¯®á«¥ à §¤¥«¥¨ï
|
; A - ¡«®ª, B - ¤«¨ ¯¥à¢®£® ¡«®ª ¯®á«¥ à §¤¥«¥¨ï
|
||||||
; ¢ë室: A - ¡«®ª 1, B - ¡«®ª 2
|
; ¢ë室: A - ¡«®ª 1, B - ¡«®ª 2
|
||||||
@ -969,7 +993,7 @@ EMM.DivMemBlocks:
|
|||||||
|
|
||||||
|
|
||||||
;
|
;
|
||||||
;----------------------------------------------------------------------;
|
;----------------------------------------------------------------------; !FIXIT SAFE_RGADR
|
||||||
; ᫨âì ¤¢ ¡«®ª ¯ ¬ï⨠¢ ®¤¨
|
; ᫨âì ¤¢ ¡«®ª ¯ ¬ï⨠¢ ®¤¨
|
||||||
; € - ¡«®ª 1, B - ¡«®ª 2
|
; € - ¡«®ª 1, B - ¡«®ª 2
|
||||||
; ¢ë室: € - ¡«®ª
|
; ¢ë室: € - ¡«®ª
|
||||||
|
|||||||
@ -100,7 +100,7 @@ RST_CONF:
|
|||||||
.CHOOSE_CNF:
|
.CHOOSE_CNF:
|
||||||
;!TEST
|
;!TEST
|
||||||
CP PG_Sp2000
|
CP PG_Sp2000
|
||||||
LD DE,SP2000_ConfID
|
;LD DE,SP2000_ConfID
|
||||||
JR Z,.INIT_ACEX
|
JR Z,.INIT_ACEX
|
||||||
;
|
;
|
||||||
|
|
||||||
@ -117,13 +117,109 @@ RST_CONF:
|
|||||||
SCF
|
SCF
|
||||||
RET
|
RET
|
||||||
|
|
||||||
.INIT_ACEX:
|
.INIT_ACEX: ;!FIXIT ;!TODO <20>…„Ž„…‹€<E280B9>Ž!!!!
|
||||||
|
DI
|
||||||
|
; ãáâ ¢«¨¢ ¥¬ ã«¥¢ãî ª àâã ¯®à⮢
|
||||||
|
LD A,CNF_PORT.CNF_0
|
||||||
|
OUT (SYS_PORT.ON),A
|
||||||
|
; á®åà 塞 ¢®âªãâë¥ áâà ¨æë ¢ Spec_Page
|
||||||
|
IN A,(SLOT0)
|
||||||
|
LD E,A
|
||||||
|
IN A,(SLOT1)
|
||||||
|
LD D,A
|
||||||
|
IN A,(SLOT2)
|
||||||
|
LD L,A
|
||||||
|
IN A,(SLOT3)
|
||||||
|
LD H,A
|
||||||
|
LD A,Spec_Page
|
||||||
|
OUT (SLOT3),A
|
||||||
|
LD (Spec_Page.page_0),DE
|
||||||
|
LD (Spec_Page.page_2),HL
|
||||||
|
; ¤®áâ ñ¬ ¤à¥á ¢®§¢à â ¢ ¢ë§ë¢ îéãî äãªæ¨î ¨ á®åà 塞 ¢ Spec_Page
|
||||||
|
POP DE
|
||||||
|
LD HL,RST_18_1.exit
|
||||||
|
AND A
|
||||||
|
SBC HL,DE
|
||||||
|
JR NZ,1F ; NZ - ¥á«¨ ¢ë§®¢ ¡ë« ¯® RST #18
|
||||||
|
POP DE ; ¥á«¨ ¢ë§®¢ ¡ë« ¢ އ“ ¯® RST 8
|
||||||
|
1: LD (Spec_Page.RET_addr),DE
|
||||||
|
; ¯à®¢¥à塞 à §¬¥à ¡«®ª á ª®ä®© ¨ ¯®«ãç ¥¬ áâà ¨æë ª®äë
|
||||||
|
PUSH BC
|
||||||
|
LD HL,Spec_Page.bitstream_pages
|
||||||
|
LD A,B
|
||||||
|
CALL EMM.GetMemBlkPages
|
||||||
|
LD A,B
|
||||||
|
POP BC
|
||||||
|
LD B,A
|
||||||
|
JR C,.INIT_ACEX.ERROR
|
||||||
|
CP 4+1 ;!HARDCODE ª®«¨ç¥á⢮ áâà ¨æ ¢ ªíè ¤«ï ¡¨áâਬ ¯«îá ®¤
|
||||||
|
JR NC,.INIT_ACEX.ERROR
|
||||||
|
PUSH BC
|
||||||
|
; § ª¨¤ë¢ ¥¬ ¢ Spec_Page ¯à®£ã ¤«ï § «¨¢ª¨ ª®äë
|
||||||
|
LD HL,.INIT_ACEX.PROGRAM
|
||||||
|
LD DE,Spec_Page.init_acex
|
||||||
|
LD BC,.INIT_ACEX.PROGRAM.Size
|
||||||
|
LDIR
|
||||||
|
;
|
||||||
|
POP BC
|
||||||
|
; B = size of ram block in pages
|
||||||
|
CALL Spec_Page.init_acex
|
||||||
|
;
|
||||||
; .. ... ... ..
|
; .. ... ... ..
|
||||||
;!TODO ᤥ« âì äãªæ¨î ¯® § «¨¢ª¥ ᢮¥© ª®äë, ¯¥à¥å¢ âã à¥á¥â .
|
;!TODO ᤥ« âì äãªæ¨î ¯® § «¨¢ª¥ ᢮¥© ª®äë, ¯¥à¥å¢ âã à¥á¥â .
|
||||||
|
; *. ‚室 ¢ ¯®¤äãªæ¨î ⮫쪮 ç¥à¥§ RST 08 ¨«¨ #18
|
||||||
|
; *. ‘®åà ¨âì ¢á¥ áâà ¨æë ¯®«ì§®¢ â¥«ï ¢ SYS_PAGE ¤«ï ¯¥à¥å¢ â à¥á¥â
|
||||||
|
; *. „®áâ âì á® á⥪ ¤à¥á ¢®§¢à â ¨ á®åà ¨âì ¢ SYS_PAGE ¤«ï ¯¥à¥å¢ â à¥á¥â
|
||||||
|
; *. ‘®åà ¨âì ªã¤ -¨¡ã¤ì § 票¥ á⥪
|
||||||
|
; *
|
||||||
; .. ... ... ..
|
; .. ... ... ..
|
||||||
LD BC,256*BIOS.REINIT.HARD_RESET + BIOS.REINIT
|
LD BC,256*BIOS.REINIT.HARD_RESET + BIOS.REINIT
|
||||||
JP_to_BIOS
|
JP_to_BIOS
|
||||||
|
|
||||||
|
.INIT_ACEX.ERROR:
|
||||||
|
POP BC
|
||||||
|
LD A,(Spec_Page.page_2)
|
||||||
|
OUT (SLOT2),A
|
||||||
|
LD A,(Spec_Page.page_3)
|
||||||
|
OUT (SLOT3),A
|
||||||
|
SCF
|
||||||
|
RET
|
||||||
|
;
|
||||||
|
.INIT_ACEX.PROGRAM:
|
||||||
|
DISP Spec_Page.init_acex
|
||||||
|
; B = size of ram block in pages
|
||||||
|
;
|
||||||
|
IN A,(FastRAM.ON)
|
||||||
|
XOR A
|
||||||
|
EXX
|
||||||
|
LD HL,Spec_Page.bitstream_pages
|
||||||
|
LD BC,SLOT2
|
||||||
|
EXX
|
||||||
|
.load_loop:
|
||||||
|
EXX
|
||||||
|
OUTI
|
||||||
|
EXX
|
||||||
|
PUSH BC
|
||||||
|
OUT (FastRAM.SLOT0),A
|
||||||
|
LD HL,0
|
||||||
|
LD DE,#8000
|
||||||
|
LD BC,#4000
|
||||||
|
LDIR
|
||||||
|
;
|
||||||
|
INC A
|
||||||
|
POP BC
|
||||||
|
DJNZ .load_loop
|
||||||
|
|
||||||
|
; ... ....
|
||||||
|
; acex loading and flags
|
||||||
|
; ... ....
|
||||||
|
XOR A
|
||||||
|
OUT (FastRAM.SLOT0),A
|
||||||
|
IN A,(FastRAM.OFF)
|
||||||
|
RET
|
||||||
|
ENT
|
||||||
|
.INIT_ACEX.PROGRAM.Size EQU $-.INIT_ACEX.PROGRAM
|
||||||
|
;
|
||||||
;***************************************
|
;***************************************
|
||||||
|
|
||||||
;!TEST
|
;!TEST
|
||||||
|
|||||||
Binary file not shown.
Loading…
Reference in New Issue
Block a user