zx-roms adaptation in progress
This commit is contained in:
parent
6a170dff30
commit
ac41dad886
@ -1 +1 @@
|
|||||||
Subproject commit 80b60f7294ce3eee958a0c4e9a6f29577cee496f
|
Subproject commit d8f20a33b9525ba38e6f87956f88081375a81526
|
||||||
@ -1345,11 +1345,11 @@ SW_ROM_1:
|
|||||||
;***************************************
|
;***************************************
|
||||||
_mInfoBLOCK #3CF8-$,0
|
_mInfoBLOCK #3CF8-$,0
|
||||||
; no basic-48!
|
; no basic-48!
|
||||||
JP_HL_48:
|
;JP_HL_48:
|
||||||
PUSH HL
|
PUSH HL
|
||||||
SW_ROM:
|
;SW_ROM:
|
||||||
PUSH AF
|
PUSH AF
|
||||||
LD A,ROM.BIOS
|
LD A,ROM.BIOS ;!FIXIT ĽŻŕ ˘¨ŤěŽĽ §˘ ¨Ľ ŞŽáâ âë
|
||||||
OUT (SYS_PORT.RAM),A
|
OUT (SYS_PORT.RAM),A
|
||||||
POP AF
|
POP AF
|
||||||
RET
|
RET
|
||||||
|
|||||||
@ -8,11 +8,18 @@
|
|||||||
; ¥á«¨ A=-1, â® ¢®§¢à â,
|
; ¥á«¨ A=-1, â® ¢®§¢à â,
|
||||||
; ¨ ç¥ ¢ë¯®«¥¨¥
|
; ¨ ç¥ ¢ë¯®«¥¨¥
|
||||||
;*****************************
|
;*****************************
|
||||||
|
|
||||||
|
|
||||||
EXEC_PNT:
|
EXEC_PNT:
|
||||||
INC A
|
INC A
|
||||||
RET Z
|
RET Z
|
||||||
|
;!FIXIT ¯®ç¥¬ã ¥ â ª?
|
||||||
|
; DEC A
|
||||||
|
; JR Z,EXEC_HL
|
||||||
|
; LD D,0
|
||||||
|
; LD E,A
|
||||||
|
; XOR A
|
||||||
|
; ADC HL,DE
|
||||||
|
; ADC HL,DE
|
||||||
|
;
|
||||||
EXEC_PNT_LOOP:
|
EXEC_PNT_LOOP:
|
||||||
DEC A
|
DEC A
|
||||||
JR Z,EXEC_HL
|
JR Z,EXEC_HL
|
||||||
@ -33,7 +40,7 @@ RET_FROM_M:
|
|||||||
;****************************************
|
;****************************************
|
||||||
; <20>€<EFBFBD>Ž’€ ‘ MENU_128
|
; <20>€<EFBFBD>Ž’€ ‘ MENU_128
|
||||||
;****************************************
|
;****************************************
|
||||||
; ‚•Ž„: - DE - ¤à¥á ¬¥î
|
; ‚•Ž„: DE - ¤à¥á ¬¥î
|
||||||
; BC - ¤«¨ ¬¥î
|
; BC - ¤«¨ ¬¥î
|
||||||
; ‚›•Ž„: A - ¢ë¡à ë© ¯ãªâ
|
; ‚›•Ž„: A - ¢ë¡à ë© ¯ãªâ
|
||||||
;****************************************
|
;****************************************
|
||||||
@ -44,17 +51,17 @@ RUN_MENU:
|
|||||||
|
|
||||||
LD A,(DE)
|
LD A,(DE)
|
||||||
DEC A ; ç¨á«® CMD
|
DEC A ; ç¨á«® CMD
|
||||||
CP 9
|
CP 9 ; !HARDCODE ¬ ª¨á¬ «ì®¥ ç¨á«® ¯ãªâ®¢ ¬¥î
|
||||||
JR C,RUN_M_1
|
JR C,RUN_M_1
|
||||||
RUN_MN_ERR:
|
RUN_MN_ERR:
|
||||||
POP BC
|
POP BC
|
||||||
POP DE
|
POP DE
|
||||||
LD A,0FFh ; ¢¥àãâìáï á ®¬¥à®¬ 255 - ®è¨¡ª
|
LD A,#FF ; ¢¥àãâìáï á ®¬¥à®¬ 255 - ®è¨¡ª
|
||||||
POP IX
|
POP IX
|
||||||
RET
|
RET
|
||||||
RUN_M_1:
|
RUN_M_1:
|
||||||
LD A,(5B00H)
|
LD A,(ZX_VARS.SWAP_ROM)
|
||||||
CP #F5 ; ‘<EFBFBD>€‚<EFBFBD>ˆ’œ € ‘ ŠŽ„ŽŒ PUSH AF
|
CP #F5 ; áà ¢¨âì € á ®¯ª®¤®¬ PUSH AF
|
||||||
JR NZ,RUN_MN_ERR
|
JR NZ,RUN_MN_ERR
|
||||||
|
|
||||||
|
|
||||||
@ -62,7 +69,7 @@ RUN_M_1:
|
|||||||
ADD HL,BC ; HL - ã¦ ï ¤«¨ ¯ ¬ïâ¨
|
ADD HL,BC ; HL - ã¦ ï ¤«¨ ¯ ¬ïâ¨
|
||||||
LD B,H ; HL -> BC
|
LD B,H ; HL -> BC
|
||||||
LD C,L
|
LD C,L
|
||||||
LD HL,(5C61h) ; HL - ç «® à ¡ ®¡«
|
LD HL,(ZX_VARS.WORK_SPACE) ; HL - ç «® à ¡ ®¡«
|
||||||
|
|
||||||
PUSH BC
|
PUSH BC
|
||||||
PUSH HL
|
PUSH HL
|
||||||
@ -105,10 +112,11 @@ JP_HL: JP (HL)
|
|||||||
;**************************************
|
;**************************************
|
||||||
; 128k MENU
|
; 128k MENU
|
||||||
;**************************************
|
;**************************************
|
||||||
MENU_PROG EQU 25B9h
|
;!HARDCODE
|
||||||
SWAP_ROM EQU 5B00h
|
MENU_PROG EQU #25B9 ; #25B9 in sp_128.asm
|
||||||
NEW_SP EQU 1F45h
|
;SWAP_ROM EQU #5B00
|
||||||
RET_SP EQU 1F20h
|
NEW_SP EQU #1F45 ; L1F45: in sp_128.asm
|
||||||
|
RET_SP EQU #1F20 ; L1F20: in sp_128.asm
|
||||||
|
|
||||||
;**************************************
|
;**************************************
|
||||||
; <20>à®£à ¬¬ ¢ë§®¢ MENU_128 ¨§ އ“.
|
; <20>à®£à ¬¬ ¢ë§®¢ MENU_128 ¨§ އ“.
|
||||||
@ -131,33 +139,35 @@ MN_128_S:
|
|||||||
; <20>â ¯à®£à ¬¬ ¯¥à¥¬¥é ¥âáï ¢ ®§ã
|
; <20>â ¯à®£à ¬¬ ¯¥à¥¬¥é ¥âáï ¢ ®§ã
|
||||||
;**************************************
|
;**************************************
|
||||||
MENU_128:
|
MENU_128:
|
||||||
LD A,0
|
XOR A
|
||||||
OUT (SYS_PORT.OFF),A
|
OUT (SYS_PORT.RAM),A
|
||||||
CALL SWAP_ROM
|
CALL ZX_VARS.SWAP_ROM
|
||||||
CALL NEW_SP
|
CALL NEW_SP
|
||||||
|
|
||||||
SH_1: LD DE,MENU_DAT - MENU_128
|
SH_1: LD DE,MENU_DAT - MENU_128
|
||||||
LD HL,#F6EA
|
LD HL,ZX_VARS.MENU_TBL.JUMP
|
||||||
LD BC,4
|
LD BC,4
|
||||||
LDIR
|
LDIR
|
||||||
|
|
||||||
SH_2: LD HL,MENU_128_E - MENU_128
|
SH_2: LD HL,MENU_128_E - MENU_128
|
||||||
LD (#F6EA),HL
|
LD (ZX_VARS.MENU_TBL.JUMP),HL
|
||||||
SH_3: LD HL,MENU_128_E2 - MENU_128
|
SH_3: LD HL,MENU_128_E2 - MENU_128
|
||||||
LD (#F6EC),HL
|
LD (ZX_VARS.MENU_TBL.TEXT),HL
|
||||||
JP MENU_PROG
|
JP MENU_PROG
|
||||||
|
|
||||||
RET_M EQU $-MENU_128
|
RET_M EQU $-MENU_128
|
||||||
SH_4: LD HL,MENU_DAT - MENU_128
|
SH_4: LD HL,MENU_DAT - MENU_128
|
||||||
LD DE,#F6EA
|
LD DE,ZX_VARS.MENU_TBL.JUMP
|
||||||
LD BC,4
|
LD BC,4
|
||||||
LDIR
|
LDIR
|
||||||
|
|
||||||
CALL RET_SP
|
CALL RET_SP
|
||||||
CALL SWAP_ROM
|
CALL ZX_VARS.SWAP_ROM
|
||||||
EX AF,AF'
|
EX AF,AF'
|
||||||
LD A,0
|
;LD A,0
|
||||||
OUT (CNF_PORT),A
|
;OUT (CNF_PORT),A
|
||||||
|
LD A,SYS_PORT.EXTENSION
|
||||||
|
OUT (SYS_PORT.ROM),A ;!!!!! ¢¥àá¨ï ¤«ï <20>‡“
|
||||||
EX AF,AF'
|
EX AF,AF'
|
||||||
RET
|
RET
|
||||||
MENU_DAT:
|
MENU_DAT:
|
||||||
@ -186,7 +196,7 @@ LEN_P_M EQU $-MENU_128
|
|||||||
|
|
||||||
;**************************************
|
;**************************************
|
||||||
; RST 30 - ¯®«ã票¥ BC SPACES á ¤à¥á HL
|
; RST 30 - ¯®«ã票¥ BC SPACES á ¤à¥á HL
|
||||||
; 19E8h - ®á¢®¡®¦¤¥¨¥ BC spaces á ¤à¥á HL
|
; #19E8 - ®á¢®¡®¦¤¥¨¥ BC spaces á ¤à¥á HL
|
||||||
; HL - à ¡. ï祩ª
|
; HL - à ¡. ï祩ª
|
||||||
; BC - ¤à¥á ¯à®£à ¬¬ë
|
; BC - ¤à¥á ¯à®£à ¬¬ë
|
||||||
; DE - ¤à¥á ¤ ëå ¤«ï ¯¥à¥¬¥é¥¨ï
|
; DE - ¤à¥á ¤ ëå ¤«ï ¯¥à¥¬¥é¥¨ï
|
||||||
@ -276,8 +286,8 @@ ERR_TST_M:
|
|||||||
;**************************************
|
;**************************************
|
||||||
|
|
||||||
CALL_DOS_MOVE:
|
CALL_DOS_MOVE:
|
||||||
LD DE,#5C00 - DOS_PROG.Size ;!HARDCODE
|
|
||||||
LD HL,DOS_PROG
|
LD HL,DOS_PROG
|
||||||
|
LD DE,DOS_PROG.Exec
|
||||||
LD BC,DOS_PROG.Size
|
LD BC,DOS_PROG.Size
|
||||||
LDIR
|
LDIR
|
||||||
RET
|
RET
|
||||||
@ -290,50 +300,56 @@ CALL_DOS1:
|
|||||||
LD DE,(ZX_VARS.E_LINE)
|
LD DE,(ZX_VARS.E_LINE)
|
||||||
LD (ZX_VARS.CH_ADR),DE
|
LD (ZX_VARS.CH_ADR),DE
|
||||||
LDIR
|
LDIR
|
||||||
LD (ZX_VARS.WORK_SP),DE
|
LD (ZX_VARS.WORK_SPACE),DE
|
||||||
LD (ZX_VARS.STK_BOT),DE
|
LD (ZX_VARS.STK_BOT),DE
|
||||||
LD (ZX_VARS.STK_END),DE
|
LD (ZX_VARS.STK_END),DE
|
||||||
CALL CALL_DOS_MOVE
|
CALL CALL_DOS_MOVE
|
||||||
JP #5C00 - DOS_PROG.Size
|
JP DOS_PROG.Exec
|
||||||
|
|
||||||
|
DOS_PROG:
|
||||||
|
DISP #5C00 - DOS_PROG.Size ;!HARDCODE
|
||||||
|
//DOS_PROG:
|
||||||
|
.Exec: PUSH AF
|
||||||
|
XOR A
|
||||||
|
OUT (SYS_PORT.RAM),A
|
||||||
|
POP AF
|
||||||
|
//DOS_PROG_A+1:
|
||||||
|
.Patch+2: CALL #3D03 ;!HARDCODE
|
||||||
|
PUSH AF
|
||||||
|
;!FIXIT ᤥ« âì ç¥à¥§ ãá«®¢¨¥ ª®¬¯¨«ï樨 ZX_ROM_BIOS
|
||||||
|
//LD A,0
|
||||||
|
//OUT (CNF_PORT),A
|
||||||
|
LD A,SYS_PORT.EXTENSION
|
||||||
|
OUT (SYS_PORT.ROM),A ;!!!!! ¢¥àá¨ï ¤«ï <20>‡“
|
||||||
|
POP AF
|
||||||
|
RET
|
||||||
|
//DOS_PROG_LEN
|
||||||
|
.Size EQU $ - .Exec
|
||||||
|
ENT
|
||||||
|
|
||||||
|
;????? ¢à®¤¥, ¥ ¨á¯®«ì§ãîâáï
|
||||||
|
CONT_PROG:
|
||||||
|
LD HL,#1AFD ;!HARDCODE COM_LN:
|
||||||
|
PUSH HL
|
||||||
|
LD HL,#5B00 ;!HARDCODE
|
||||||
|
PUSH HL
|
||||||
|
LD DE,ZX_VARS.FLG_INPUT
|
||||||
|
LD BC,1
|
||||||
|
LD A,#E8 ;!HARDCODE
|
||||||
|
LD (DE),A
|
||||||
|
JP SW_ROM
|
||||||
CALL_DOS:
|
CALL_DOS:
|
||||||
PUSH HL
|
PUSH HL
|
||||||
PUSH DE
|
PUSH DE
|
||||||
PUSH BC
|
PUSH BC
|
||||||
PUSH AF
|
PUSH AF
|
||||||
CALL CALL_DOS_MOVE
|
CALL CALL_DOS_MOVE
|
||||||
LD A,13H
|
LD A,#13 ;!HARDCODE #13 ¨§ AUTO_1303
|
||||||
LD (5C00H-DOS_PROG.Size+DOS_PROG_A),A
|
LD (DOS_PROG.Patch),A
|
||||||
POP AF
|
POP AF
|
||||||
POP BC
|
POP BC
|
||||||
POP DE
|
POP DE
|
||||||
POP HL
|
POP HL
|
||||||
JP #5C00-DOS_PROG.Size
|
JP DOS_PROG.Exec
|
||||||
|
;
|
||||||
DOS_PROG:
|
;
|
||||||
PUSH AF
|
|
||||||
XOR A
|
|
||||||
OUT (SYS_PORT.OFF),A
|
|
||||||
POP AF
|
|
||||||
CALL #3D03 ;!HARDCODE
|
|
||||||
DOS_PROG_A EQU $-DOS_PROG-1
|
|
||||||
PUSH AF
|
|
||||||
LD A,0
|
|
||||||
OUT (CNF_PORT),A
|
|
||||||
POP AF
|
|
||||||
RET
|
|
||||||
DOS_PROG.Size EQU $-DOS_PROG
|
|
||||||
|
|
||||||
CONT_PROG:
|
|
||||||
LD HL,1AFDH
|
|
||||||
PUSH HL
|
|
||||||
LD HL,5B00H
|
|
||||||
PUSH HL
|
|
||||||
LD DE,5C71H
|
|
||||||
LD BC,1
|
|
||||||
LD A,0E8H
|
|
||||||
LD (DE),A
|
|
||||||
JP SW_ROM
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -1,12 +1,13 @@
|
|||||||
;.PRINTX "Service."
|
;.PRINTX "Service."
|
||||||
|
|
||||||
SERVICE:
|
SERVICE:
|
||||||
LD HL,SR_TAB
|
//LD HL,SR_TAB
|
||||||
LD DE,SR_MENU
|
LD DE,SR_MENU
|
||||||
LD BC,SR_MENU.Size
|
LD BC,SR_MENU.Size
|
||||||
PUSH HL
|
//PUSH HL
|
||||||
CALL RUN_MENU ;09f3
|
CALL RUN_MENU ;09f3
|
||||||
POP HL
|
LD HL,SR_TAB
|
||||||
|
//POP HL
|
||||||
CALL EXEC_PNT
|
CALL EXEC_PNT
|
||||||
JR SERVICE
|
JR SERVICE
|
||||||
|
|
||||||
@ -29,7 +30,7 @@ SR_MENU:
|
|||||||
DC 'TURBO ON '
|
DC 'TURBO ON '
|
||||||
DC 'Clear RAM'
|
DC 'Clear RAM'
|
||||||
DC 'RETURN'
|
DC 'RETURN'
|
||||||
DC ' ' ; ¬ àª¥à ª®æ
|
DC " " ; ¬ àª¥à ª®æ
|
||||||
.Size EQU $-SR_MENU
|
.Size EQU $-SR_MENU
|
||||||
|
|
||||||
;*****************************
|
;*****************************
|
||||||
@ -136,7 +137,7 @@ IS_MENU:
|
|||||||
DC 'Pentagon 512'
|
DC 'Pentagon 512'
|
||||||
DC 'Restart '
|
DC 'Restart '
|
||||||
DC 'RETURN'
|
DC 'RETURN'
|
||||||
DC ' ' ; ¬ àª¥à ª®æ
|
DC " " ; ¬ àª¥à ª®æ
|
||||||
.Size EQU $-IS_MENU
|
.Size EQU $-IS_MENU
|
||||||
|
|
||||||
;******************************
|
;******************************
|
||||||
@ -267,6 +268,7 @@ CNF_PN_320:
|
|||||||
LD A,Port_VSYNC.SET_320L
|
LD A,Port_VSYNC.SET_320L
|
||||||
OUT (Port_VSYNC),A
|
OUT (Port_VSYNC),A
|
||||||
RET
|
RET
|
||||||
|
|
||||||
; LD A,CNF_0
|
; LD A,CNF_0
|
||||||
; OUT (SYS_PORT.ROM),A
|
; OUT (SYS_PORT.ROM),A
|
||||||
; CALL DOS_OFF
|
; CALL DOS_OFF
|
||||||
|
|||||||
@ -465,9 +465,9 @@ RET_FROM_BIOS_TO_BASIC48:
|
|||||||
;***************************************
|
;***************************************
|
||||||
_mInfoBLOCK #3CF8-$,0
|
_mInfoBLOCK #3CF8-$,0
|
||||||
; no basic-48!
|
; no basic-48!
|
||||||
;JP_HL_48:
|
JP_HL_48:
|
||||||
PUSH HL
|
PUSH HL
|
||||||
;SW_ROM:
|
SW_ROM:
|
||||||
PUSH AF
|
PUSH AF
|
||||||
LD A,ROM.BIOS ;!FIXIT ¨«¨ ¯®áâ ¢¨âì âãâ ROM.EXPANSION ???
|
LD A,ROM.BIOS ;!FIXIT ¨«¨ ¯®áâ ¢¨âì âãâ ROM.EXPANSION ???
|
||||||
OUT (SYS_PORT.RAM),A
|
OUT (SYS_PORT.RAM),A
|
||||||
|
|||||||
@ -6,7 +6,7 @@
|
|||||||
DEFINE PACKED_MAIN 0;| | ; ¯ ª®¢ âì MAIN ¨«¨ ¢«¥§ ¥â ¡¥§ í⮣®?
|
DEFINE PACKED_MAIN 0;| | ; ¯ ª®¢ âì MAIN ¨«¨ ¢«¥§ ¥â ¡¥§ í⮣®?
|
||||||
DEFINE SetFullZXromLoader 0;| ; ¤®¡ ¢«ïâì ¢ ¯à®è¨¢ªã ¨ £à㧨âì ¢á¥ ROM ᯥªâà㬠¨«¨ ç áâì?
|
DEFINE SetFullZXromLoader 0;| ; ¤®¡ ¢«ïâì ¢ ¯à®è¨¢ªã ¨ £à㧨âì ¢á¥ ROM ᯥªâà㬠¨«¨ ç áâì?
|
||||||
DEFINE IDE_Optimization 1;| ; á«¥£ª ®¯â¨¬¨§¨àã¥â ¥ª®â®àë¥ ¯à®æ¥¤ãàë à ¡®âë á HDD
|
DEFINE IDE_Optimization 1;| ; á«¥£ª ®¯â¨¬¨§¨àã¥â ¥ª®â®àë¥ ¯à®æ¥¤ãàë à ¡®âë á HDD
|
||||||
DEFINE NeedSafePort_Y 1;| ============== ; £®¢®à¨â á ¬® § ᥡï)))
|
DEFINE NeedSafePort_Y 1;| ============== ; !!!!! ¥á«¨ 0, â® ¢ ०¨¬¥ sp-ᯥªâà㬠¥ª®â®àë¥ ¯à®æ¥¤ãàë ¬®£ãâ § áà âì íªà
|
||||||
DEFINE Pashalki 0; \__________________/\
|
DEFINE Pashalki 0; \__________________/\
|
||||||
DEFINE PICTURE_FILE './src/bios/logo/psfathers.bmp';|
|
DEFINE PICTURE_FILE './src/bios/logo/psfathers.bmp';|
|
||||||
;____________________________________________________________/
|
;____________________________________________________________/
|
||||||
|
|||||||
@ -7,6 +7,7 @@
|
|||||||
INCLUDE 'src/bios/Loader/Loader.asm' ; Bitstream loader as macros
|
INCLUDE 'src/bios/Loader/Loader.asm' ; Bitstream loader as macros
|
||||||
INCLUDE 'src/bios/shared/CompMacro.asm' ; ¬ ªà®áë
|
INCLUDE 'src/bios/shared/CompMacro.asm' ; ¬ ªà®áë
|
||||||
INCLUDE 'Shared_Includes/constants/SP2000.inc' ; ª®áâ âë
|
INCLUDE 'Shared_Includes/constants/SP2000.inc' ; ª®áâ âë
|
||||||
|
INCLUDE 'Shared_Includes/constants/zx_char_codes.inc' ; ª®áâ âë
|
||||||
INCLUDE 'Shared_Includes/macroses/macros.z80'
|
INCLUDE 'Shared_Includes/macroses/macros.z80'
|
||||||
INCLUDE 'src/bios/ROM/MEM_MAP.inc' ; ª àâ ¯ ¬ïâ¨
|
INCLUDE 'src/bios/ROM/MEM_MAP.inc' ; ª àâ ¯ ¬ïâ¨
|
||||||
INCLUDE 'src/bios/shared/VERSION.inc' ; ‚¥àá¨ï EXP ¨ ROM
|
INCLUDE 'src/bios/shared/VERSION.inc' ; ‚¥àá¨ï EXP ¨ ROM
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user