From 497530f8426302eb465925981f2068bd292f5300 Mon Sep 17 00:00:00 2001 From: Tolik <85737314+Tolik-Trek@users.noreply.github.com> Date: Tue, 9 Jul 2024 23:46:57 +1000 Subject: [PATCH] =?UTF-8?q?=D0=9F=D1=80=D0=BE=D0=B1=D0=B5=D0=BB=20=D0=BF?= =?UTF-8?q?=D1=80=D0=B8=20CAD=20=D0=BC=D0=B5=D0=BD=D1=8F=D0=B5=D1=82=20?= =?UTF-8?q?=D0=BA=D1=83=D0=B4=D0=B0=20=D1=80=D0=B5=D1=81=D0=B5=D1=82=D0=B8?= =?UTF-8?q?=D1=82=D1=81=D1=8F=20=D0=BD=D0=B0=20=D0=BF=D1=80=D0=BE=D1=82?= =?UTF-8?q?=D0=B8=D0=B2=D0=BE=D0=BF=D0=BE=D0=BB=D0=BE=D0=B6=D0=BD=D0=BE?= =?UTF-8?q?=D0=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- spectrum.asm | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/spectrum.asm b/spectrum.asm index 4b762b0..87a8868 100644 --- a/spectrum.asm +++ b/spectrum.asm @@ -939,14 +939,21 @@ RESTORE_PORT_HOLD: ;******************************************** EXIT_TO_DSS: DI LD SP,stack_point - LD A,CNF_PORT.CNF_0 - OUT (SYS_PORT.OFF),A - LD A,(#FFF0) ;!HARDCODE + LD A,high ZXKeys.Line_7 + IN A,(ZXKeys) + AND #1F + CP #1E + JP Z,RESET_TO_ZX.cont + +.cont: LD A,(#FFF0) ;!HARDCODE OUT (SLOT0),A CALL RESTORE_PORT_HOLD + LD A,CNF_PORT.CNF_0 + OUT (SYS_PORT.OFF),A + XOR A LD BC,3*256+BIOS.SET_PAL_INIT ; SET IBM PAL RST ToBIOS @@ -1104,10 +1111,10 @@ RESET_TO_ZX: DI IN A,(ZXKeys) AND #1F CP #1E - JP Z,EXIT_TO_DSS + JP Z,EXIT_TO_DSS.cont ; фикс неполной дешифрации порта #FFFD (пишут в #C0FD) - LD A,#FF +.cont: LD A,#FF LD HL,%00'010'1'1110'1101 LD DE,%10'111'1'1111'1111 ; CNF_0, CNF_1 LD BC,ACEX.AY_FFFD_WRITE*256 + BIOS.DCP_CONFIG