mirror of
https://github.com/Tolik-Trek/Spectrum.EXE.git
synced 2026-06-15 09:01:38 +03:00
SET_ROM переделана под переделанную функцию BIOS - SET_PORTS
This commit is contained in:
parent
8135e13343
commit
90593508ed
98
spectrum.asm
98
spectrum.asm
@ -586,7 +586,7 @@ PARAM_E2: EX (SP),HL ;
|
|||||||
;************************************
|
;************************************
|
||||||
IF NEW_MEMORY_LOGIC
|
IF NEW_MEMORY_LOGIC
|
||||||
BUFFER_RAM_PAGES:
|
BUFFER_RAM_PAGES:
|
||||||
.ROM: BLOCK 6 ; ª®«¨ç¥á⢮ ¯®à⮢ í¬ã«ïâ®à <20>‡“
|
.ROM: BLOCK 10 ; ª®«¨ç¥á⢮ ¯®à⮢ í¬ã«ïâ®à <20>‡“
|
||||||
.RAM: BLOCK 16 ; 256 ª¡
|
.RAM: BLOCK 16 ; 256 ª¡
|
||||||
.Size EQU $-BUFFER_RAM_PAGES
|
.Size EQU $-BUFFER_RAM_PAGES
|
||||||
.end_marker: BYTE #FF
|
.end_marker: BYTE #FF
|
||||||
@ -606,22 +606,24 @@ BUFFER_RAM_PAGES:
|
|||||||
OR B
|
OR B
|
||||||
JR Z,.next
|
JR Z,.next
|
||||||
LD A,dcp_port ; ROM-ID
|
LD A,dcp_port ; ROM-ID
|
||||||
|
PUSH HL
|
||||||
CALL SET_ROM
|
CALL SET_ROM
|
||||||
|
POP HL
|
||||||
.next:
|
.next:
|
||||||
ENDM
|
ENDM
|
||||||
|
|
||||||
PARAM_END: LD HL,BUFFER_RAM_PAGES.ROM
|
PARAM_END: LD HL,BUFFER_RAM_PAGES.ROM
|
||||||
|
|
||||||
vROM_set ACEX.vROM.BASIC_128 ; ROM-ID - BASIC 128
|
vROM_set ACEX.vROM.BASIC_128 ; ROM-ID - BASIC 128
|
||||||
vROM_set ACEX.vROM.BASIC_48 ; ROM-ID - BASIC 48
|
vROM_set ACEX.vROM.BASIC_48 ; ROM-ID - BASIC 48
|
||||||
vROM_set ACEX.vROM.TR_DOS ; ROM-ID - TR-DOS
|
vROM_set ACEX.vROM.TR_DOS ; ROM-ID - TR-DOS
|
||||||
vROM_set ACEX.vROM.BIOS ; ROM-ID - EXPANSION
|
vROM_set ACEX.vROM.BIOS ; ROM-ID - EXPANSION
|
||||||
vROM_set ACEX.vROM.BIOS_3 ; ROM-ID - BIOS-1
|
vROM_set ACEX.vROM.BIOS_3 ; ROM-ID - BIOS-1
|
||||||
vROM_set ACEX.vROM.BIOS_4 ; ROM-ID - BIOS-2
|
vROM_set ACEX.vROM.BIOS_4 ; ROM-ID - BIOS-2
|
||||||
;vROM_set ACEX.vROM.BASIC_128_2 ; BASIC 128 - 2
|
;vROM_set ACEX.vROM.BASIC_128_2 ; BASIC 128 - 2
|
||||||
;vROM_set ACEX.vROM.BASIC_48_2 ; BASIC 48 - 2
|
;vROM_set ACEX.vROM.BASIC_48_2 ; BASIC 48 - 2
|
||||||
;vROM_set ACEX.vROM.TR_DOS_2 ; TR-DOS - 2
|
;vROM_set ACEX.vROM.TR_DOS_2 ; TR-DOS - 2
|
||||||
;vROM_set ACEX.vROM.BIOS_2 ; BIOS (ZX_EXP) - 2
|
;vROM_set ACEX.vROM.BIOS_2 ; BIOS (ZX_EXP) - 2
|
||||||
|
|
||||||
LD HL,(IMAGE_NAME)
|
LD HL,(IMAGE_NAME)
|
||||||
LD A,H
|
LD A,H
|
||||||
@ -667,44 +669,44 @@ SKIP_IMAGE: LD A,(No_run_+2)
|
|||||||
; out B - old ROM-page
|
; out B - old ROM-page
|
||||||
;!FIXIT ᤥ« âì ç¥à¥§ ¢ë§®¢ äãªæ¨¨ <20>ˆŽ‘
|
;!FIXIT ᤥ« âì ç¥à¥§ ¢ë§®¢ äãªæ¨¨ <20>ˆŽ‘
|
||||||
SET_ROM: DI
|
SET_ROM: DI
|
||||||
|
LD C,BIOS.SET_PORTS
|
||||||
|
JP ToBIOS
|
||||||
|
|
||||||
EX AF,AF'
|
; DI
|
||||||
|
; ;
|
||||||
IN A,(SLOT3)
|
; EX AF,AF'
|
||||||
PUSH AF
|
; IN A,(SLOT3)
|
||||||
|
; PUSH AF
|
||||||
LD A,DCP_PAGE ; ãáâ ®¢¨âì ®¢ãî
|
; LD A,DCP_PAGE ; ãáâ ®¢¨âì ®¢ãî
|
||||||
OUT (SLOT3),A
|
; OUT (SLOT3),A
|
||||||
|
; ;
|
||||||
LD A,(#C400) ; á®åà ¨âì â® çâ® ¡ë«®
|
; LD A,(#C400) ; á®åà ¨âì â® çâ® ¡ë«®
|
||||||
LD E,A
|
; LD E,A
|
||||||
LD A,(#C600)
|
; LD A,(#C600)
|
||||||
LD D,A
|
; LD D,A
|
||||||
|
; ;
|
||||||
EX AF,AF' ; áâà ¨æ
|
; EX AF,AF' ; áâà ¨æ
|
||||||
|
; LD (#C400),A ; ãáâ ®¢¨âì ¯®àâ ROM
|
||||||
LD (#C400),A ; ãáâ ®¢¨âì ¯®àâ ROM
|
; LD (#C600),A
|
||||||
LD (#C600),A
|
; ;
|
||||||
EX AF,AF'
|
; EX AF,AF'
|
||||||
|
; LD A,B
|
||||||
LD A,B
|
; LD BC,0
|
||||||
LD BC,0
|
; EX AF,AF'
|
||||||
EX AF,AF'
|
; IN A,(C)
|
||||||
IN A,(C)
|
; EX AF,AF'
|
||||||
EX AF,AF'
|
; OUT (C),A ; ãáâ ®¢¨âì ®¢ë© ROM
|
||||||
OUT (C),A ; ãáâ ®¢¨âì ®¢ë© ROM
|
; EX AF,AF'
|
||||||
EX AF,AF'
|
; ;
|
||||||
LD B,A
|
; LD B,A
|
||||||
|
; LD A,E
|
||||||
LD A,E
|
; LD (#C400),A ; ¢¥àãâì ¯®àâ
|
||||||
LD (#C400),A ; ¢¥àãâì ¯®àâ
|
; LD A,D
|
||||||
LD A,D
|
; LD (#C600),A ; ¢¥àãâì ¯®àâ
|
||||||
LD (#C600),A ; ¢¥àãâì ¯®àâ
|
; ;
|
||||||
|
; POP AF
|
||||||
POP AF
|
; OUT (SLOT3),A
|
||||||
OUT (SLOT3),A
|
; RET
|
||||||
|
|
||||||
RET
|
|
||||||
;********************************************
|
;********************************************
|
||||||
|
|
||||||
READ_IMAGE: LD DE,ONE_FILE
|
READ_IMAGE: LD DE,ONE_FILE
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user