mirror of
https://github.com/Tolik-Trek/Spectrum.EXE.git
synced 2026-06-15 17:11:38 +03:00
testing pages
This commit is contained in:
parent
fd88f5d232
commit
01ed8404f7
@ -1 +1 @@
|
|||||||
Subproject commit c821d325066267e711886212aa3dfc4b83f5b64f
|
Subproject commit 38c3f62f6d7fa9f4c977eb23e3ff9ea7bf3638f0
|
||||||
93
spectrum.asm
93
spectrum.asm
@ -122,8 +122,7 @@ OPTIONS_LINE EQU (CFG_FILE_LINES-1)*2
|
|||||||
ORG org_addr-CLP_Buffer
|
ORG org_addr-CLP_Buffer
|
||||||
ENDIF
|
ENDIF
|
||||||
|
|
||||||
BEGIN:
|
BEGIN: LD (LINE_X),IX
|
||||||
LD (LINE_X),IX
|
|
||||||
|
|
||||||
LD HL,START_MSG
|
LD HL,START_MSG
|
||||||
LD C,Dss.PChars
|
LD C,Dss.PChars
|
||||||
@ -132,13 +131,27 @@ BEGIN:
|
|||||||
IN A,(SLOT3)
|
IN A,(SLOT3)
|
||||||
LD (SAVE_SLOT3),A
|
LD (SAVE_SLOT3),A
|
||||||
|
|
||||||
|
;!TEST
|
||||||
|
LD BC,BUFFER_RAM_PAGES.Size * 256 + Dss.GetMem
|
||||||
|
RST ToDSS
|
||||||
|
JR C,Error_NoMemForSPpages
|
||||||
|
LD HL,BUFFER_RAM_PAGES
|
||||||
|
LD C,BIOS.GetMemBlkPages
|
||||||
|
RST ToBIOS
|
||||||
|
;
|
||||||
|
|
||||||
|
|
||||||
JP COMAND_LINE
|
JP COMAND_LINE
|
||||||
|
|
||||||
|
Error_NoMemForSPpages:
|
||||||
|
LD HL,NO_MEM_MSG2
|
||||||
|
JR ERROR_FILE.prn_msg
|
||||||
ERROR_FILE:
|
ERROR_FILE:
|
||||||
LD HL,ERROR_FILE_MSG_X
|
LD HL,ERROR_FILE_MSG_X
|
||||||
LD C,Dss.PChars
|
LD C,Dss.PChars
|
||||||
RST ToDSS
|
RST ToDSS
|
||||||
LD HL,ONE_FILE
|
LD HL,ONE_FILE
|
||||||
LD C,Dss.PChars
|
.prn_msg: LD C,Dss.PChars
|
||||||
RST ToDSS
|
RST ToDSS
|
||||||
|
|
||||||
LD HL,ERROR_FILE_MSG
|
LD HL,ERROR_FILE_MSG
|
||||||
@ -359,29 +372,38 @@ N_LINE: LD (HL),0
|
|||||||
|
|
||||||
; ¢ë¤¥«¥® 8 áâப ¢ CNF
|
; ¢ë¤¥«¥® 8 áâப ¢ CNF
|
||||||
;*************************************
|
;*************************************
|
||||||
MACRO vROM_LOAD romLine,pageNumber
|
;!TODO ¥á«¨ ¯à®¯ã᪠¥¬ § £à㧪ã ROM ¤«ï 48, 128 ¨«¨ trdos, â® ¢áâ ¢«ïâì ¢ ¯®àâ vROM ®¬¥à ¨§ áâ ¤ à⮣® ¯¥à¢®£® ¡«®ª
|
||||||
|
MACRO vROM_LOAD romLine;,pageNumber
|
||||||
LD HL,(A_LINES+romLine)
|
LD HL,(A_LINES+romLine)
|
||||||
LD A,(HL)
|
LD A,(HL)
|
||||||
CP ';'
|
CP ';'
|
||||||
JR Z,.skip_load
|
JR Z,.skip_load
|
||||||
LD A,pageNumber
|
;!TEST
|
||||||
|
;LD A,pageNumber
|
||||||
|
LD A,(BC)
|
||||||
|
INC BC
|
||||||
|
PUSH BC
|
||||||
CALL READ_FILE_1
|
CALL READ_FILE_1
|
||||||
|
POP BC
|
||||||
|
;
|
||||||
LD A,Spec_Page
|
LD A,Spec_Page
|
||||||
OUT (SLOT3),A
|
OUT (SLOT3),A
|
||||||
JP C,ERROR_FILE
|
JP C,ERROR_FILE
|
||||||
.skip_load:
|
.skip_load:
|
||||||
ENDM
|
ENDM
|
||||||
|
|
||||||
vROM_LOAD BASIC128_LINE, #42 ; 2-ï áâப - ¨¬ï ä ©« BASIC128
|
LD BC,BUFFER_RAM_PAGES.ROM
|
||||||
vROM_LOAD BASIC_48_LINE, #43 ; 3-ï áâப - ¨¬ï ä ©« BASIC 48
|
|
||||||
vROM_LOAD TRDOS_LINE, #44 ; 4-ï áâப - ¨¬ï ä ©« TR-DOS
|
vROM_LOAD BASIC128_LINE;, #42 ; 2-ï áâப - ¨¬ï ä ©« BASIC128
|
||||||
vROM_LOAD EXP_LINE, #45 ; 5-ï áâப - ¨¬ï ä ©« EXPANSION
|
vROM_LOAD BASIC_48_LINE;, #43 ; 3-ï áâப - ¨¬ï ä ©« BASIC 48
|
||||||
vROM_LOAD BIOS_LINE, #46 ; 6-ï áâப - ¨¬ï ä ©« BIOS
|
vROM_LOAD TRDOS_LINE ;, #44 ; 4-ï áâப - ¨¬ï ä ©« TR-DOS
|
||||||
vROM_LOAD BIOS2_LINE, #47 ; 7-ï áâப - ¨¬ï ä ©« BIOS2
|
vROM_LOAD EXP_LINE ;, #45 ; 5-ï áâப - ¨¬ï ä ©« EXPANSION
|
||||||
;vROM_LOAD _LINE, #42 ; 8-ï áâப - ¨¬ï ä ©«
|
vROM_LOAD BIOS_LINE ;, #46 ; 6-ï áâப - ¨¬ï ä ©« BIOS
|
||||||
;vROM_LOAD _LINE, #42 ; 9-ï áâப - ¨¬ï ä ©«
|
vROM_LOAD BIOS2_LINE ;, #47 ; 7-ï áâப - ¨¬ï ä ©« BIOS2
|
||||||
;vROM_LOAD _LINE, #42 ; 10-ï áâப - ¨¬ï ä ©«
|
;vROM_LOAD _LINE ;, #42 ; 8-ï áâப - ¨¬ï ä ©«
|
||||||
;vROM_LOAD _LINE, #42 ; 11-ï áâப - ¨¬ï ä ©«
|
;vROM_LOAD _LINE ;, #42 ; 9-ï áâப - ¨¬ï ä ©«
|
||||||
|
;vROM_LOAD _LINE ;, #42 ; 10-ï áâப - ¨¬ï ä ©«
|
||||||
|
;vROM_LOAD _LINE ;, #42 ; 11-ï áâப - ¨¬ï ä ©«
|
||||||
|
|
||||||
; ä ©«ë áç¨â ë
|
; ä ©«ë áç¨â ë
|
||||||
;*************************************
|
;*************************************
|
||||||
@ -468,29 +490,48 @@ PARAM_E2: EX (SP),HL ;
|
|||||||
JR LOOP_PAR1
|
JR LOOP_PAR1
|
||||||
|
|
||||||
;************************************
|
;************************************
|
||||||
|
BUFFER_RAM_PAGES:
|
||||||
|
.ROM: BLOCK 10 ; ª®«¨ç¥á⢮ ¯®à⮢ í¬ã«ïâ®à <20>‡“
|
||||||
|
.RAM: BLOCK 16 ; 256 ª¡
|
||||||
|
.Size EQU $-BUFFER_RAM_PAGES
|
||||||
|
.end_marker: BYTE #FF
|
||||||
|
PARAM_END:
|
||||||
|
LD HL,BUFFER_RAM_PAGES.ROM
|
||||||
|
|
||||||
PARAM_END: LD A,#E2 ; ROM-ID - BASIC 128
|
LD B,(HL) ; page
|
||||||
LD B,#42 ; page
|
INC HL
|
||||||
|
LD A,#E2 ; ROM-ID - BASIC 128
|
||||||
|
//LD B,#42 ; page
|
||||||
CALL SET_ROM
|
CALL SET_ROM
|
||||||
|
|
||||||
|
LD B,(HL) ; page
|
||||||
|
INC HL
|
||||||
LD A,#E3 ; ROM-ID - BASIC 48
|
LD A,#E3 ; ROM-ID - BASIC 48
|
||||||
LD B,#43 ; page
|
//LD B,#43 ; page
|
||||||
CALL SET_ROM
|
CALL SET_ROM
|
||||||
|
|
||||||
|
LD B,(HL) ; page
|
||||||
|
INC HL
|
||||||
LD A,#E1 ; ROM-ID - TR-DOS
|
LD A,#E1 ; ROM-ID - TR-DOS
|
||||||
LD B,#44 ; page
|
//LD B,#44 ; page
|
||||||
CALL SET_ROM
|
CALL SET_ROM
|
||||||
|
|
||||||
|
LD B,(HL) ; page
|
||||||
|
INC HL
|
||||||
LD A,#E0 ; ROM-ID - EXPANSION
|
LD A,#E0 ; ROM-ID - EXPANSION
|
||||||
LD B,#45 ; page
|
//LD B,#45 ; page
|
||||||
CALL SET_ROM
|
CALL SET_ROM
|
||||||
|
|
||||||
|
LD B,(HL) ; page
|
||||||
|
INC HL
|
||||||
LD A,#EB ; ROM-ID - BIOS-1
|
LD A,#EB ; ROM-ID - BIOS-1
|
||||||
LD B,#46 ; page
|
//LD B,#46 ; page
|
||||||
CALL SET_ROM
|
CALL SET_ROM
|
||||||
|
|
||||||
|
LD B,(HL) ; page
|
||||||
|
INC HL
|
||||||
LD A,#EF ; ROM-ID - BIOS-2
|
LD A,#EF ; ROM-ID - BIOS-2
|
||||||
LD B,#47 ; page
|
//LD B,#47 ; page
|
||||||
CALL SET_ROM
|
CALL SET_ROM
|
||||||
|
|
||||||
LD HL,(IMAGE_NAME)
|
LD HL,(IMAGE_NAME)
|
||||||
@ -560,9 +601,9 @@ SET_ROM: DI
|
|||||||
OUT (SLOT3),A
|
OUT (SLOT3),A
|
||||||
|
|
||||||
LD A,(#C400) ; á®åà ¨âì â® çâ® ¡ë«®
|
LD A,(#C400) ; á®åà ¨âì â® çâ® ¡ë«®
|
||||||
LD L,A
|
LD E,A
|
||||||
LD A,(#C600)
|
LD A,(#C600)
|
||||||
LD H,A
|
LD D,A
|
||||||
|
|
||||||
EX AF,AF' ; áâà ¨æ
|
EX AF,AF' ; áâà ¨æ
|
||||||
|
|
||||||
@ -579,9 +620,9 @@ SET_ROM: DI
|
|||||||
EX AF,AF'
|
EX AF,AF'
|
||||||
LD B,A
|
LD B,A
|
||||||
|
|
||||||
LD A,L
|
LD A,E
|
||||||
LD (#C400),A ; ¢¥àãâì ¯®àâ
|
LD (#C400),A ; ¢¥àãâì ¯®àâ
|
||||||
LD A,H
|
LD A,D
|
||||||
LD (#C600),A ; ¢¥àãâì ¯®àâ
|
LD (#C600),A ; ¢¥àãâì ¯®àâ
|
||||||
|
|
||||||
POP AF
|
POP AF
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user