...
This commit is contained in:
parent
ee0a29a034
commit
72e8008dd0
@ -1 +1 @@
|
|||||||
Subproject commit a6dee8e17ae12b251f306290793a56a6b0dd5ae3
|
Subproject commit e7e58e7b816a25137a0a253321164e863bbe782e
|
||||||
@ -212,16 +212,19 @@ NMI_Point:
|
|||||||
; BLOCK MEM_MAP.ID_Version-$,0 ;#C0-$,0
|
; BLOCK MEM_MAP.ID_Version-$,0 ;#C0-$,0
|
||||||
ID_Version:
|
ID_Version:
|
||||||
dw bitstream_ver_hex ; Version of bitstream hex
|
dw bitstream_ver_hex ; Version of bitstream hex
|
||||||
|
|
||||||
ID_SPRINTER_length:
|
ID_SPRINTER_length:
|
||||||
DB ID_SPRINTER.LENGTH
|
DB ID_SPRINTER.LENGTH
|
||||||
|
ID_SPRINTER: ; § ¯¨áì 1
|
||||||
ID_SPRINTER:
|
|
||||||
DB 'Hardware v'
|
DB 'Hardware v'
|
||||||
.bitstream_ver:
|
.bitstream_ver: DB bitstream_ver_string,0
|
||||||
DB bitstream_ver_string,0
|
; § ¯¨áì 2
|
||||||
DB 'Sprinter',0
|
DB 'Sprinter',0
|
||||||
|
; § ¯¨áì 3 - ¤¢ ¡ ©â ¤«ï ¢¥àᨨ 稯 Altera
|
||||||
|
;DW #FFFF - ¯®¤áâ ¢«ï¥âáï ¢ äãªæ¨¨ FN_VERSION
|
||||||
|
; ª®¥æ
|
||||||
DB 0
|
DB 0
|
||||||
|
;
|
||||||
|
.Records_Num EQU 3
|
||||||
.LENGTH EQU $-ID_SPRINTER
|
.LENGTH EQU $-ID_SPRINTER
|
||||||
|
|
||||||
; Check for max length of string
|
; Check for max length of string
|
||||||
@ -814,13 +817,10 @@ Check_EE_Port:
|
|||||||
OUT (SLOT1),A
|
OUT (SLOT1),A
|
||||||
LD A,(Spec_Page.page_2) ; PAGE2
|
LD A,(Spec_Page.page_2) ; PAGE2
|
||||||
OUT (SLOT2),A
|
OUT (SLOT2),A
|
||||||
LD A,(Spec_Page.page_3) ; PAGE3
|
|
||||||
OUT (SLOT3),A
|
|
||||||
LD A,(Spec_Page.Reload_Version)
|
LD A,(Spec_Page.Reload_Version)
|
||||||
CP #FF
|
CP #FF
|
||||||
JR NZ,.ver_2
|
JR Z,.JPHL ; olg logic
|
||||||
JP (HL)
|
; new logic
|
||||||
;
|
|
||||||
.ver_2: EXX
|
.ver_2: EXX
|
||||||
LD HL,(Spec_Page.Stack_Point)
|
LD HL,(Spec_Page.Stack_Point)
|
||||||
LD SP,HL
|
LD SP,HL
|
||||||
@ -828,11 +828,12 @@ Check_EE_Port:
|
|||||||
AND A
|
AND A
|
||||||
LD A,#FF
|
LD A,#FF
|
||||||
LD (Spec_Page.Reload_Version),A
|
LD (Spec_Page.Reload_Version),A
|
||||||
JR NZ,ver_2_sys_port_on
|
LD A,(Spec_Page.page_3) ; PAGE3
|
||||||
|
OUT (SLOT3),A
|
||||||
|
JR Z,.JPHL
|
||||||
PUSH HL
|
PUSH HL
|
||||||
JP EXP_FNS_2_RET
|
JP EXP_FNS_2_RET
|
||||||
ver_2_sys_port_on:
|
.JPHL: JP (HL)
|
||||||
JP (HL)
|
|
||||||
;
|
;
|
||||||
;--[¯¥à¥å¢ â soft/hard reset #41 page]--
|
;--[¯¥à¥å¢ â soft/hard reset #41 page]--
|
||||||
Check_Spec_Page:
|
Check_Spec_Page:
|
||||||
@ -1335,17 +1336,19 @@ RES128_PROG:
|
|||||||
|
|
||||||
INC D
|
INC D
|
||||||
DEC D
|
DEC D
|
||||||
JP Z,0 ; 0 ‚•Ž„ ‚ BASIC-128
|
; 0 ‚•Ž„ ‚ BASIC-128
|
||||||
|
JP Z,0
|
||||||
|
; 1 ‚•Ž„ ‚ BASIC-48
|
||||||
LD A,#10
|
LD A,#10
|
||||||
OUT (C),A
|
OUT (C),A
|
||||||
DEC D
|
DEC D
|
||||||
JP Z,0 ; 1 ‚•Ž„ ‚ BASIC-48
|
JP Z,0
|
||||||
|
; 2 ‚•Ž„ ‚ TR-DOS
|
||||||
LD HL,0
|
LD HL,0
|
||||||
PUSH HL
|
PUSH HL
|
||||||
DEC D
|
DEC D
|
||||||
JP Z,#3D29 ; 2 ‚•Ž„ ‚ TR-DOS
|
JP Z,#3D29
|
||||||
|
; 3 ‚•Ž„ ‚ EXPANSION
|
||||||
;!TODO ¯®ª ¥ à ¡®â ¥â
|
;!TODO ¯®ª ¥ à ¡®â ¥â
|
||||||
XOR A
|
XOR A
|
||||||
OUT (C),A
|
OUT (C),A
|
||||||
@ -1353,17 +1356,22 @@ RES128_PROG:
|
|||||||
LD B,#1F
|
LD B,#1F
|
||||||
OUT (C),A
|
OUT (C),A
|
||||||
DEC D
|
DEC D
|
||||||
JP Z,0 ; 3 ‚•Ž„ ‚ EXPANSION ???
|
JP Z,0
|
||||||
;
|
;
|
||||||
|
|
||||||
XOR A
|
XOR A
|
||||||
OUT (C),A
|
OUT (C),A
|
||||||
LD A,#30
|
LD A,#30
|
||||||
LD B,#7F
|
LD B,#7F
|
||||||
OUT (C),A
|
OUT (C),A
|
||||||
|
;!TEST
|
||||||
|
LD A,CNF_PORT.PENT_RESET + CNF_PORT.SCORP_RESET
|
||||||
|
OUT (CNF_PORT.OFF),A
|
||||||
|
;
|
||||||
DEC D
|
DEC D
|
||||||
JP Z,#3D29 ; 4 ‚•Ž„ ‚ TR-DOS á § ªàëâ묨 128-¬¨ ¯®àâ ¬¨
|
; 4 ‚•Ž„ ‚ TR-DOS á § ªàëâ묨 128-¬¨ ¯®àâ ¬¨
|
||||||
JP 0 ; 5 ‚•Ž„ ‚ BASIC-48 á § ªàëâ묨 128-¬¨ ¯®àâ ¬¨
|
JP Z,#3D29
|
||||||
|
; 5 ‚•Ž„ ‚ BASIC-48 á § ªàëâ묨 128-¬¨ ¯®àâ ¬¨
|
||||||
|
JP 0
|
||||||
ENT
|
ENT
|
||||||
LEN_RES128 EQU $-RES128_PROG
|
LEN_RES128 EQU $-RES128_PROG
|
||||||
;-----------------------------------------------------------------------;
|
;-----------------------------------------------------------------------;
|
||||||
|
|||||||
@ -778,16 +778,5 @@ SCREEN_TABLES:
|
|||||||
DB 1 : DW .SCR
|
DB 1 : DW .SCR
|
||||||
DB 1 : DW .RES
|
DB 1 : DW .RES
|
||||||
DB 0 ; end
|
DB 0 ; end
|
||||||
|
|
||||||
; ;!TEST
|
|
||||||
;.L_ORIGINAL: DB 32 : DW L_SCR
|
|
||||||
; DB 4 : DW L_SNC
|
|
||||||
; DB 1 : DW L_INT
|
|
||||||
; DB 1 : DW L_SNC
|
|
||||||
; DB 1 : DW L_BLN
|
|
||||||
; DB 1 : DW L_SCR
|
|
||||||
; DB 2 : DW L_RES
|
|
||||||
; DB 0 ; end
|
|
||||||
|
|
||||||
;---------------------------------------
|
;---------------------------------------
|
||||||
FLEX_END:
|
FLEX_END:
|
||||||
|
|||||||
@ -59,6 +59,7 @@ RST_CONF:
|
|||||||
|
|
||||||
|
|
||||||
;--[]
|
;--[]
|
||||||
|
;[x]
|
||||||
.SP2000:
|
.SP2000:
|
||||||
LD BC,Port_All_Mode
|
LD BC,Port_All_Mode
|
||||||
IN A,(C)
|
IN A,(C)
|
||||||
@ -135,17 +136,42 @@ RST_CONF:
|
|||||||
; ãáâ ¢«¨¢ ¥¬ ã«¥¢ãî ª àâã ¯®à⮢
|
; ãáâ ¢«¨¢ ¥¬ ã«¥¢ãî ª àâã ¯®à⮢
|
||||||
LD A,CNF_PORT.CNF_0
|
LD A,CNF_PORT.CNF_0
|
||||||
OUT (SYS_PORT.ON),A
|
OUT (SYS_PORT.ON),A
|
||||||
|
; ¨ â ª ¯®ïâ® çâ® ¤¥« ¥â
|
||||||
|
IN A,(SLOT3) ; á®åà 塞 ®¬¥à ¢®âªã⮩ áâà ¨æë
|
||||||
|
PUSH AF
|
||||||
|
LD A,Spec_Page
|
||||||
|
OUT (SLOT3),A
|
||||||
|
; ¯à®¢¥à塞 à §¬¥à ¡«®ª á ª®ä®© ¨ ¯®«ãç ¥¬ áâà ¨æë ª®äë
|
||||||
|
LD HL,Spec_Page.bitstream_pages
|
||||||
|
LD A,B
|
||||||
|
AND A
|
||||||
|
JR Z,.INIT_ACEX.ReloadConfFromROM
|
||||||
|
;
|
||||||
|
CALL EMM.GetMemBlkPages
|
||||||
|
LD A,B
|
||||||
|
JR C,.INIT_ACEX.ERROR
|
||||||
|
CP BitStream_SizeInPages+1 ; ª®«¨ç¥á⢮ áâà ¨æ ¢ ªíè ¤«ï ¡¨áâਬ ¯«îá ®¤
|
||||||
|
JR NC,.INIT_ACEX.ERROR
|
||||||
|
LD A,(Spec_Page.bitstream_pages)
|
||||||
|
INC A
|
||||||
|
JR Z,.INIT_ACEX.ERROR
|
||||||
|
;
|
||||||
|
.INIT_ACEX.ReloadConfFromROM:
|
||||||
|
; § ª¨¤ë¢ ¥¬ ¢ Spec_Page ¯à®£ã ¤«ï § «¨¢ª¨ ª®äë
|
||||||
|
LD HL,.INIT_ACEX.PROGRAM
|
||||||
|
LD DE,Spec_Page.init_acex
|
||||||
|
LD BC,.INIT_ACEX.PROGRAM.Size
|
||||||
|
LDIR
|
||||||
|
; ¥á«¨ ZF=0, â® ¯à®æ¥¤ãà ᤥ« ¥â à¥á¥â á ¯¥à¥§ «¨¢ª®© ¨§ BIOS, ¨ ç¥ ¨§ Š<>˜
|
||||||
|
CALL Spec_Page.init_acex
|
||||||
; á®åà 塞 ¢®âªãâë¥ áâà ¨æë ¢ Spec_Page
|
; á®åà 塞 ¢®âªãâë¥ áâà ¨æë ¢ Spec_Page
|
||||||
IN A,(SLOT0)
|
IN A,(SLOT0)
|
||||||
LD E,A
|
LD E,A
|
||||||
IN A,(SLOT1)
|
IN A,(SLOT1)
|
||||||
LD D,A
|
LD D,A
|
||||||
IN A,(SLOT2)
|
IN A,(SLOT2)
|
||||||
|
POP HL ; ¢®ááâ ¢«¨¢ ¥¬ ®¬¥à ¢®âªã⮩ áâà ¨æë
|
||||||
LD L,A
|
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_0),DE
|
||||||
LD (Spec_Page.page_2),HL
|
LD (Spec_Page.page_2),HL
|
||||||
; ¤®áâ ñ¬ ¤à¥á ¢®§¢à â ¢ ¢ë§ë¢ îéãî äãªæ¨î ¨ á®åà 塞 ¢ Spec_Page
|
; ¤®áâ ñ¬ ¤à¥á ¢®§¢à â ¢ ¢ë§ë¢ îéãî äãªæ¨î ¨ á®åà 塞 ¢ Spec_Page
|
||||||
@ -163,27 +189,13 @@ RST_CONF:
|
|||||||
LD HL,0
|
LD HL,0
|
||||||
ADD HL,SP
|
ADD HL,SP
|
||||||
LD (Spec_Page.Stack_Point),HL
|
LD (Spec_Page.Stack_Point),HL
|
||||||
; ¯à®¢¥à塞 à §¬¥à ¡«®ª á ª®ä®© ¨ ¯®«ãç ¥¬ áâà ¨æë ª®äë
|
; “áâ ¢«¨¢ ¥¬ ª«îç¨
|
||||||
;PUSH BC
|
LD HL,Spec_Page.flag_R
|
||||||
LD HL,Spec_Page.bitstream_pages
|
LD (HL),"R"
|
||||||
LD A,B
|
INC HL
|
||||||
CALL EMM.GetMemBlkPages
|
LD (HL),"S"
|
||||||
LD A,B
|
INC HL
|
||||||
;POP BC
|
LD (HL),"T"
|
||||||
;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 ᤥ« âì äãªæ¨î ¯® § «¨¢ª¥ ᢮¥© ª®äë, ¯¥à¥å¢ âã à¥á¥â .
|
||||||
@ -195,12 +207,9 @@ RST_CONF:
|
|||||||
; .. ... ... ..
|
; .. ... ... ..
|
||||||
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:
|
.INIT_ACEX.ERROR:
|
||||||
POP BC
|
POP AF
|
||||||
LD A,(Spec_Page.page_2)
|
|
||||||
OUT (SLOT2),A
|
|
||||||
LD A,(Spec_Page.page_3)
|
|
||||||
OUT (SLOT3),A
|
OUT (SLOT3),A
|
||||||
SCF
|
SCF
|
||||||
RET
|
RET
|
||||||
@ -208,62 +217,25 @@ RST_CONF:
|
|||||||
.INIT_ACEX.PROGRAM:
|
.INIT_ACEX.PROGRAM:
|
||||||
DISPLAY " !!! !!! .INIT_ACEX.PROGRAM !!! !!!"
|
DISPLAY " !!! !!! .INIT_ACEX.PROGRAM !!! !!!"
|
||||||
DISP Spec_Page.init_acex
|
DISP Spec_Page.init_acex
|
||||||
|
;
|
||||||
|
SAFE_PORTY
|
||||||
IN A,(FastRAM.ON)
|
IN A,(FastRAM.ON)
|
||||||
EXX
|
IN A,(SLOT1)
|
||||||
|
LD (.slot1_page),A
|
||||||
;
|
;
|
||||||
LD A,(Spec_Page.bitstream_pages)
|
LD A,#FE ; ç⮡ ¯à®¢¥à¨âì, çâ® ¢ë§ë¢ âì ¯®á«¥ CALL NZ,.INIT_ACEX.PROGRAM.LOAD
|
||||||
OUT (SLOT1),A ; áâà ¨æ á ¤ 묨 ä ©«
|
; âãâ ZF ¤®«¦¥ ¡ëâì ¨§ ¢ë§ë¢ î饩 ¯à®æ¥¤ãàë
|
||||||
;
|
CALL NZ,.INIT_ACEX.PROGRAM.LOAD ; ¥á«¨ RAM_BLOCK ID ¥ à ¢¥ 0, â® ¢ë¯®«ï¥âáï
|
||||||
XOR A
|
INC A ; ä« £ ZF=0 £à㧨¬ ¨§ ROM
|
||||||
OUT (FastRAM.SLOT0),A ; ‘âà ¨æ Š<>˜ = 0
|
|
||||||
;
|
|
||||||
LD HL,#5000 ; ¯¥à¥ª¨¤ë¢ ¨¥ ¤ ëå ¢ áâà ¨æã Š<>˜ = 0
|
|
||||||
LD DE,#1000
|
|
||||||
LD BC,#3000
|
|
||||||
LDIR
|
|
||||||
;
|
|
||||||
LD A,(Spec_Page.bitstream_pages+1)
|
|
||||||
CP #FF
|
|
||||||
JR Z,.INIT_ACEX.PROGRAM.SET_KEYS
|
|
||||||
OUT (SLOT1),A ; á«¥¤ãîé ï áâà ¨æ á ¤ 묨 ä ©«
|
|
||||||
LD A,1
|
|
||||||
OUT (FastRAM.SLOT0),A ; ‘âà ¨æ Š<>˜ = 1
|
|
||||||
;
|
|
||||||
LD H,D ; LD HL,#4000
|
|
||||||
LD D,E ; LD DE,#0000
|
|
||||||
LD B,H ; LD BC,#4000
|
|
||||||
LDIR
|
|
||||||
;
|
|
||||||
LD A,(Spec_Page.bitstream_pages+2)
|
|
||||||
CP #FF
|
|
||||||
JR Z,.INIT_ACEX.PROGRAM.SET_KEYS
|
|
||||||
OUT (SLOT1),A ; á«¥¤ãîé ï áâà ¨æ á ¤ 묨 ä ©«
|
|
||||||
LD A,2
|
|
||||||
OUT (FastRAM.SLOT0),A ; ‘âà ¨æ Š<>˜ = 2 ; á«¥¤ãîé ï áâà ¨æ á ¤ 묨 ä ©«
|
|
||||||
;
|
|
||||||
EX DE,HL ; LD HL,#4000
|
|
||||||
LD D,E ; LD DE,#0000
|
|
||||||
LD B,H ; LD BC,#4000
|
|
||||||
LDIR
|
|
||||||
;
|
|
||||||
LD A,(Spec_Page.bitstream_pages+3)
|
|
||||||
CP #FF
|
|
||||||
JR Z,.INIT_ACEX.PROGRAM.SET_KEYS
|
|
||||||
OUT (SLOT1),A ; á«¥¤ãîé ï áâà ¨æ á ¤ 묨 ä ©«
|
|
||||||
LD A,3
|
|
||||||
OUT (FastRAM.SLOT0),A ; ‘âà ¨æ Š<>˜ = 1
|
|
||||||
;
|
|
||||||
LD H,D ; LD HL,#4000
|
|
||||||
LD D,E ; LD DE,#0000
|
|
||||||
LD BC,#3EDF ; !HARDCODE ®á⠢訩áï à §¬¥à ¡¨âáâਬ
|
|
||||||
LDIR
|
|
||||||
;
|
;
|
||||||
.INIT_ACEX.PROGRAM.SET_KEYS:
|
.INIT_ACEX.PROGRAM.SET_KEYS:
|
||||||
LD A,3
|
LD A,3
|
||||||
OUT (FastRAM.SLOT0),A ; ‘âà ¨æ Š<>˜ = 3
|
OUT (FastRAM.SLOT0),A ; ‘âà ¨æ Š<>˜ = 3
|
||||||
;
|
;
|
||||||
LD HL,.INIT_ACEX.Reload_String ; ä« £ ¯¥à¥§ £à㧪¨ ¨§ Š<>˜-
|
LD HL,.INIT_ACEX.Reload_String ; ä« £ ¯¥à¥§ £à㧪¨ ¨§ Š<>˜-
|
||||||
LD DE,ACEX.LOADER.String_Address-#C000
|
JR Z,1F ; ãáâ ¢«¨¢ ¥¬ ä« £ ¯¥à¥§ £à㧪¨ ¨§ Š<>˜-
|
||||||
|
INC L ; § â¨à ¥¬ ä« £ ¯¥à¥§ £à㧪¨ ¨§ Š<>˜-
|
||||||
|
1: LD DE,ACEX.LOADER.String_Address-#C000
|
||||||
LD BC,#10
|
LD BC,#10
|
||||||
LDIR
|
LDIR
|
||||||
|
|
||||||
@ -275,8 +247,43 @@ RST_CONF:
|
|||||||
XOR A
|
XOR A
|
||||||
OUT (FastRAM.SLOT0),A
|
OUT (FastRAM.SLOT0),A
|
||||||
IN A,(FastRAM.OFF)
|
IN A,(FastRAM.OFF)
|
||||||
|
.slot1_page+1: LD A,0
|
||||||
|
OUT (SLOT1),A
|
||||||
RET
|
RET
|
||||||
;
|
;
|
||||||
|
;
|
||||||
|
.INIT_ACEX.PROGRAM.LOAD:
|
||||||
|
XOR A ; áâà ¨æ Š<>˜
|
||||||
|
LD HL,Spec_Page.bitstream_pages
|
||||||
|
OUT (FastRAM.SLOT0),A ; ‘âà ¨æ Š<>˜ = 0
|
||||||
|
INC A
|
||||||
|
.INIT_ACEX.PROGRAM.load_loop:
|
||||||
|
EX AF,AF'
|
||||||
|
LD A,(HL)
|
||||||
|
INC HL
|
||||||
|
CP #FF
|
||||||
|
RET Z
|
||||||
|
OUT (SLOT1),A ; áâà ¨æ á ¤ 묨 ä ©«
|
||||||
|
EX AF,AF'
|
||||||
|
;
|
||||||
|
; ¯¥à¥ª¨¤ë¢ ¨¥ #3000 ¡ ©â®¢ ¢ Š<>˜(0) = #1000
|
||||||
|
EXX
|
||||||
|
LD HL,#4000
|
||||||
|
LD DE,#1000
|
||||||
|
LD BC,#3000
|
||||||
|
LDIR
|
||||||
|
; ¤®ª¨¤ë¢ ¨¥ #1000 ¡ ©â®¢ ¢ Š<>˜(1) = #0000
|
||||||
|
; HL = #7000
|
||||||
|
OUT (FastRAM.SLOT0),A ; ‘âà ¨æ Š<>˜ = 1
|
||||||
|
INC A
|
||||||
|
;
|
||||||
|
LD D,C ; LD DE,0
|
||||||
|
LD B,#10 ; LD BC,#1000
|
||||||
|
LDIR
|
||||||
|
EXX
|
||||||
|
JR .INIT_ACEX.PROGRAM.load_loop
|
||||||
|
|
||||||
|
|
||||||
.INIT_ACEX.Reload_String:
|
.INIT_ACEX.Reload_String:
|
||||||
DB ACEX.RELOAD_STRING
|
DB ACEX.RELOAD_STRING
|
||||||
;
|
;
|
||||||
|
|||||||
@ -53,15 +53,15 @@ FN_VERSION:
|
|||||||
PUSH HL
|
PUSH HL
|
||||||
EX DE,HL
|
EX DE,HL
|
||||||
LD HL,ID_SPRINTER_length
|
LD HL,ID_SPRINTER_length
|
||||||
|
;
|
||||||
|
LD B,0
|
||||||
LD C,(HL)
|
LD C,(HL)
|
||||||
INC HL
|
INC HL
|
||||||
LD B,0
|
|
||||||
LDIR
|
LDIR
|
||||||
|
;
|
||||||
POP HL
|
POP HL
|
||||||
LD DE,(ID_Version) ;rdlow-ok
|
LD DE,(ID_Version) ;rdlow-ok
|
||||||
|
;
|
||||||
IN A,(SLOT2)
|
IN A,(SLOT2)
|
||||||
EX AF,AF'
|
EX AF,AF'
|
||||||
LD A,SYS_PAGE
|
LD A,SYS_PAGE
|
||||||
@ -69,16 +69,25 @@ FN_VERSION:
|
|||||||
LD BC,(SYS_PAGE.CONFIG_BYTE-#4000) ; Version PLD ; !TODO ç¥à¥§ áâàãªâãàã ¤«ï ¯¥à¥¬¥ëå ¡¨®á
|
LD BC,(SYS_PAGE.CONFIG_BYTE-#4000) ; Version PLD ; !TODO ç¥à¥§ áâàãªâãàã ¤«ï ¯¥à¥¬¥ëå ¡¨®á
|
||||||
EX AF,AF'
|
EX AF,AF'
|
||||||
OUT (SLOT2),A
|
OUT (SLOT2),A
|
||||||
LD A,2 ; —¨á«® ¯®«¥©
|
LD A,ID_SPRINTER.Records_Num ; —¨á«® ¯®«¥©
|
||||||
AND A
|
AND A
|
||||||
RET
|
RET
|
||||||
;----------------------------------------------------------------------;
|
;----------------------------------------------------------------------;
|
||||||
|
|
||||||
;----------------------------------------------------------------------;
|
;----------------------------------------------------------------------;
|
||||||
FN_CRIPT:
|
FN_CRIPT:
|
||||||
|
DEC B
|
||||||
|
JR Z,.board_id
|
||||||
DEC B
|
DEC B
|
||||||
SCF
|
SCF
|
||||||
RET NZ
|
RET NZ
|
||||||
|
; [ ] 25/01/24
|
||||||
|
.Acex_ver:
|
||||||
|
;!TODO
|
||||||
|
AND A
|
||||||
|
RET
|
||||||
|
;
|
||||||
|
.board_id:
|
||||||
LD HL,(ROM_NUMBER.part1) ;rdlow-ok
|
LD HL,(ROM_NUMBER.part1) ;rdlow-ok
|
||||||
LD A,(ROM_NUMBER.part2) ;rdlow-ok
|
LD A,(ROM_NUMBER.part2) ;rdlow-ok
|
||||||
LD BC,(BoardID.start) ;rdlow-ok
|
LD BC,(BoardID.start) ;rdlow-ok
|
||||||
@ -100,6 +109,7 @@ EMM.CheckColdInit:
|
|||||||
LD HL,SYS_PAGE.ID_FLAG - #4000
|
LD HL,SYS_PAGE.ID_FLAG - #4000
|
||||||
LD DE,ID_SPRINTER_length
|
LD DE,ID_SPRINTER_length
|
||||||
LD A,(DE)
|
LD A,(DE)
|
||||||
|
DEC A
|
||||||
INC DE
|
INC DE
|
||||||
LD B,A
|
LD B,A
|
||||||
.loop: LD A,(DE)
|
.loop: LD A,(DE)
|
||||||
|
|||||||
@ -1,3 +1,5 @@
|
|||||||
; Header of bitstream which non packed
|
; Header of bitstream which non packed
|
||||||
DB #FF,#FF,#62,#7B,#39,#00,#FF,#FF
|
DB #FF,#FF,#62,#7B,#39,#00,#FF,#FF ; 1k30
|
||||||
|
; Packed:
|
||||||
|
;DB #FF,#FF,#62,#7B,#3C,#00,#01,#FF ; 1k50
|
||||||
;
|
;
|
||||||
@ -280,7 +280,7 @@ CLEARM: IN A,(SLOT3)
|
|||||||
CALL NZ,CCHAIN
|
CALL NZ,CCHAIN
|
||||||
POP AF
|
POP AF
|
||||||
OUT (SLOT3),A
|
OUT (SLOT3),A
|
||||||
;!TEST; [ ] 04/11/2023 Žâ¤¥«ìë¥ à ¬¤¨áª¨ ¤«ï ०¨¬ ᯥªâà㬠¨ DSS. BLK_TO_RAMD
|
;!TEST; [ ] 04/11/2023 Žâ¤¥«ìë¥ à ¬¤¨áª¨ ¤«ï ०¨¬ ᯥªâà㬠¨ DSS.
|
||||||
LD B,high BIOS.SWAP_RAM_DRIVES.Sp2000
|
LD B,high BIOS.SWAP_RAM_DRIVES.Sp2000
|
||||||
JP SWAP_RAM_DRIVES
|
JP SWAP_RAM_DRIVES
|
||||||
;
|
;
|
||||||
|
|||||||
@ -49,13 +49,13 @@ COMAND_LOOP:
|
|||||||
INC HL
|
INC HL
|
||||||
CP ":"
|
CP ":"
|
||||||
JR Z,COMAND_L1
|
JR Z,COMAND_L1
|
||||||
CP #0D
|
CP ZX_Char.carriage_return
|
||||||
JR NZ,COMAND_LOOP
|
JR NZ,COMAND_LOOP
|
||||||
RET
|
RET
|
||||||
|
|
||||||
COMAND_L1:
|
COMAND_L1:
|
||||||
LD A,(HL)
|
LD A,(HL)
|
||||||
CP #EA ;!HARDCODE
|
CP ZX_Token.rem
|
||||||
RET NZ
|
RET NZ
|
||||||
INC HL
|
INC HL
|
||||||
COMAND_OK: ; Ž<><C5BD>€<EFBFBD>“†…<E280A0>€ ŠŽŒ€<C592>„€ „‹Ÿ 'expansion'
|
COMAND_OK: ; Ž<><C5BD>€<EFBFBD>“†…<E280A0>€ ŠŽŒ€<C592>„€ „‹Ÿ 'expansion'
|
||||||
@ -63,7 +63,7 @@ COMAND_OK: ;
|
|||||||
INC HL
|
INC HL
|
||||||
CP ':'
|
CP ':'
|
||||||
JP Z,MENU_S1
|
JP Z,MENU_S1
|
||||||
CP #0D
|
CP ZX_Char.carriage_return
|
||||||
JP Z,MENU_S1
|
JP Z,MENU_S1
|
||||||
CP 'I'
|
CP 'I'
|
||||||
JR Z,COMAND_ISD
|
JR Z,COMAND_ISD
|
||||||
@ -123,7 +123,7 @@ TASK_SWITCH:
|
|||||||
RLCA
|
RLCA
|
||||||
RLCA
|
RLCA
|
||||||
RLCA
|
RLCA
|
||||||
AND 30H ; ®¢ ï § ¤ ç 0..3
|
AND #30 ; ®¢ ï § ¤ ç 0..3
|
||||||
LD C,A
|
LD C,A
|
||||||
|
|
||||||
IN A,(SLOT3)
|
IN A,(SLOT3)
|
||||||
|
|||||||
@ -233,8 +233,8 @@ BASIC_MENU:
|
|||||||
LD DE,(ZX_VARS.CH_ADR)
|
LD DE,(ZX_VARS.CH_ADR)
|
||||||
PUSH DE
|
PUSH DE
|
||||||
LD (ZX_VARS.CH_ADR),HL
|
LD (ZX_VARS.CH_ADR),HL
|
||||||
CALL_48X 1C8Ch ; SYMBOL VAR
|
CALL_48X #1C8C ; SYMBOL VAR
|
||||||
CALL_48X 2BF1h ; input txt !!!
|
CALL_48X #2BF1 ; input txt !!!
|
||||||
; DE - adr
|
; DE - adr
|
||||||
; BC - len
|
; BC - len
|
||||||
PUSH DE
|
PUSH DE
|
||||||
|
|||||||
@ -8,7 +8,7 @@
|
|||||||
DEFINE Pashalki 0 ;
|
DEFINE Pashalki 0 ;
|
||||||
DEFINE PICTURE_FILE './src/bios/logo/psfathers.bmp'
|
DEFINE PICTURE_FILE './src/bios/logo/psfathers.bmp'
|
||||||
DEFINE StandartCGApallete 1 ; <20>®¤ª«îç âì ¯ «¨âàã ¨§ standart_colors.inc
|
DEFINE StandartCGApallete 1 ; <20>®¤ª«îç âì ¯ «¨âàã ¨§ standart_colors.inc
|
||||||
|
DEFINE BitStream_SizeInPages 4
|
||||||
|
|
||||||
; ‡ ¤¥à¦ª ¢ ª ¤à å ¯®á«¥ ®âà¨á®¢ª¨ «®£®â¨¯ (0 = 256)
|
; ‡ ¤¥à¦ª ¢ ª ¤à å ¯®á«¥ ®âà¨á®¢ª¨ «®£®â¨¯ (0 = 256)
|
||||||
DEFINE LOGO_DELAY_MIN 25
|
DEFINE LOGO_DELAY_MIN 25
|
||||||
|
|||||||
Binary file not shown.
Loading…
Reference in New Issue
Block a user