From c7bee46f60ebdfffb7875a532db92e6a3a364bfb Mon Sep 17 00:00:00 2001 From: Wayne Warthen Date: Mon, 18 Dec 2023 17:35:57 -0800 Subject: [PATCH] Workaround CH376 Reset Behavior I am encountering some CH376 chips that go haywire after a reset command. They stop responding for a very long time. I am seeing this only on "LC Tech" adapters and only on Z80 systems (not Z180). No idea what is going on, so I am giving up for now and removing the reset. --- Source/HBIOS/ch.asm | 9 ++++++++- Source/ver.inc | 2 +- Source/ver.lib | 2 +- 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/Source/HBIOS/ch.asm b/Source/HBIOS/ch.asm index 84fb6def..9eae6985 100644 --- a/Source/HBIOS/ch.asm +++ b/Source/HBIOS/ch.asm @@ -155,7 +155,14 @@ CH_INIT2: XOR A ; UNKNOWN MODE LD (CH_MODE),A ; SAVE IT ;CALL CH_FLUSH ; FLUSH DEVICE OUTPUT QUEUE - CALL CH_RESET ; FULL CH37X RESET +; + ; I AM ENCOUNTERING SOME CH376 CHIPS THAT GO HAYWIRE AFTER A + ; RESET COMMAND. THEY STOP RESPONDING FOR A VERY LONG TIME. + ; I AM SEEING THIS ONLY ON "LC TECH" ADAPTERS AND ONLY ON Z80 + ; SYSTEMS (NOT Z180). NO IDEA WHAT IS GOING ON, SO I AM + ; GIVING UP FOR NOW AND REMOVING THE RESET. + ;CALL CH_RESET ; FULL CH37X RESET +; CALL CH_DETECT ; DETECT CHIP PRESENCE JR Z,CH_INIT3 ; GO AHEAD IF CHIP FOUND LD DE,CH_STR_NOHW ; NOT PRESENT diff --git a/Source/ver.inc b/Source/ver.inc index 33d93470..d8cdd1ce 100644 --- a/Source/ver.inc +++ b/Source/ver.inc @@ -2,7 +2,7 @@ #DEFINE RMN 4 #DEFINE RUP 0 #DEFINE RTP 0 -#DEFINE BIOSVER "3.4.0-dev.36" +#DEFINE BIOSVER "3.4.0-dev.37" #define rmj RMJ #define rmn RMN #define rup RUP diff --git a/Source/ver.lib b/Source/ver.lib index 016d1e8b..54c608fb 100644 --- a/Source/ver.lib +++ b/Source/ver.lib @@ -3,5 +3,5 @@ rmn equ 4 rup equ 0 rtp equ 0 biosver macro - db "3.4.0-dev.36" + db "3.4.0-dev.37" endm