shithub: psxe

Download patch

ref: 2edfc7dd2902b1867d7e2fb2a62f8cc27223d771
parent: 354f803be6edddf33f203a162984ec83c659bdd3
author: allkern <lisandroaalarcon@gmail.com>
date: Sun Jul 9 18:52:53 EDT 2023

Fix CDROM state when no disc inserted

--- a/psx/dev/cdrom.c
+++ b/psx/dev/cdrom.c
@@ -184,6 +184,10 @@
         SET_BITS(stat, GETSTAT_TRAYOPEN, 0);
     }
 
+    if (!cdrom->disc) {
+        SET_BITS(stat, GETSTAT_TRAYOPEN, 0xff);
+    }
+
     RESP_PUSH(cdrom->stat);
     SEND_INT3(COMMAND_DELAY);
 }
@@ -221,7 +225,7 @@
         // RESP_PUSH(cdrom->stat);
         SEND_INT3(COMMAND_DELAY);
 
-        cdrom->delayed_response_command = cdrom->command;
+        cdrom->delayed_response_command = cdrom->disc ? cdrom->command : 0;
     } else {
         if (!cdrom->disc) {
             RESP_PUSH(0x00);
--