mirror of
https://github.com/Tolik-Trek/Spectrum.EXE.git
synced 2026-06-15 09:01:38 +03:00
исправлены баги в перехватчике ресета, теперь перед вызовом биоса настраивается SYS_PORT
This commit is contained in:
parent
497530f842
commit
e7a42481ab
@ -1 +1 @@
|
|||||||
Subproject commit 04aaef8ac955971d913babd95921a62937b597ae
|
Subproject commit 4f546cb1d2cd8eeb1aec0de2c3e9902d1bb52fee
|
||||||
30
spectrum.asm
30
spectrum.asm
@ -935,24 +935,26 @@ RESTORE_PORT_HOLD:
|
|||||||
LD C,BIOS.SET_PORTS
|
LD C,BIOS.SET_PORTS
|
||||||
JP ToBIOS
|
JP ToBIOS
|
||||||
; ; ;
|
; ; ;
|
||||||
|
FIRST_PREPARE: LD A,CNF_PORT.CNF_0
|
||||||
;********************************************
|
OUT (SYS_PORT.OFF),A
|
||||||
EXIT_TO_DSS: DI
|
CALL RESTORE_PORT_HOLD
|
||||||
LD SP,stack_point
|
|
||||||
|
|
||||||
LD A,high ZXKeys.Line_7
|
LD A,high ZXKeys.Line_7
|
||||||
IN A,(ZXKeys)
|
IN A,(ZXKeys)
|
||||||
AND #1F
|
AND #1F
|
||||||
CP #1E
|
CP #1E
|
||||||
|
RET
|
||||||
|
;********************************************
|
||||||
|
EXIT_TO_DSS: DI
|
||||||
|
LD SP,stack_point
|
||||||
|
|
||||||
|
CALL FIRST_PREPARE
|
||||||
JP Z,RESET_TO_ZX.cont
|
JP Z,RESET_TO_ZX.cont
|
||||||
|
|
||||||
.cont: LD A,(#FFF0) ;!HARDCODE
|
.cont: LD A,(#FFF0) ;!HARDCODE
|
||||||
OUT (SLOT0),A
|
OUT (SLOT0),A
|
||||||
|
LD A,(#FFF3) ;!HARDCODE
|
||||||
CALL RESTORE_PORT_HOLD
|
OUT (SLOT3),A
|
||||||
|
|
||||||
LD A,CNF_PORT.CNF_0
|
|
||||||
OUT (SYS_PORT.OFF),A
|
|
||||||
|
|
||||||
XOR A
|
XOR A
|
||||||
LD BC,3*256+BIOS.SET_PAL_INIT ; SET IBM PAL
|
LD BC,3*256+BIOS.SET_PAL_INIT ; SET IBM PAL
|
||||||
@ -1100,17 +1102,15 @@ NO_RET_FN: LD (#FFF4),DE ;
|
|||||||
LD (#FFF1),A
|
LD (#FFF1),A
|
||||||
IN A,(SLOT2) ; á®åà ¨âì áâà ¨æã
|
IN A,(SLOT2) ; á®åà ¨âì áâà ¨æã
|
||||||
LD (#FFF2),A ; ¯à®£à ¬¬ë ¤«ï ¢®§¢à â
|
LD (#FFF2),A ; ¯à®£à ¬¬ë ¤«ï ¢®§¢à â
|
||||||
IN A,(SLOT3)
|
;IN A,(SLOT3)
|
||||||
|
LD A,(SAVE_SLOT3)
|
||||||
LD (#FFF3),A ;
|
LD (#FFF3),A ;
|
||||||
;********************************************
|
;********************************************
|
||||||
|
|
||||||
RESET_TO_ZX: DI
|
RESET_TO_ZX: DI
|
||||||
LD SP,stack_point ; #BFF0
|
LD SP,stack_point ; #BFF0
|
||||||
|
|
||||||
LD A,high ZXKeys.Line_7
|
CALL FIRST_PREPARE
|
||||||
IN A,(ZXKeys)
|
|
||||||
AND #1F
|
|
||||||
CP #1E
|
|
||||||
JP Z,EXIT_TO_DSS.cont
|
JP Z,EXIT_TO_DSS.cont
|
||||||
|
|
||||||
; ä¨ªá ¥¯®«®© ¤¥è¨äà æ¨¨ ¯®àâ #FFFD (¯¨èãâ ¢ #C0FD)
|
; ä¨ªá ¥¯®«®© ¤¥è¨äà æ¨¨ ¯®àâ #FFFD (¯¨èãâ ¢ #C0FD)
|
||||||
@ -1120,8 +1120,6 @@ RESET_TO_ZX: DI
|
|||||||
LD BC,ACEX.AY_FFFD_WRITE*256 + BIOS.DCP_CONFIG
|
LD BC,ACEX.AY_FFFD_WRITE*256 + BIOS.DCP_CONFIG
|
||||||
RST ToBIOS
|
RST ToBIOS
|
||||||
;
|
;
|
||||||
CALL RESTORE_PORT_HOLD
|
|
||||||
;
|
|
||||||
;[x] 04/11/2023 Žâ¤¥«ìë¥ à ¬¤¨áª¨ ¤«ï ०¨¬ ᯥªâà㬠¨ DSS. BLK_TO_RAMD
|
;[x] 04/11/2023 Žâ¤¥«ìë¥ à ¬¤¨áª¨ ¤«ï ०¨¬ ᯥªâà㬠¨ DSS. BLK_TO_RAMD
|
||||||
LD BC,BIOS.SWAP_RAM_DRIVES.ZX
|
LD BC,BIOS.SWAP_RAM_DRIVES.ZX
|
||||||
RST ToBIOS
|
RST ToBIOS
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user