SI: Fix COMERR update

This commit is contained in:
Bonta-kun 2021-04-30 04:55:13 +02:00 committed by Vicki Pfau
parent e70193195c
commit bb1dd31f53

View File

@ -240,7 +240,6 @@ static void SetNoResponse(u32 channel)
s_status_reg.NOREP3 = 1; s_status_reg.NOREP3 = 1;
break; break;
} }
s_com_csr.COMERR = 1;
} }
static void ChangeDeviceCallback(u64 user_data, s64 cycles_late) static void ChangeDeviceCallback(u64 user_data, s64 cycles_late)
@ -331,6 +330,7 @@ static void RunSIBuffer(u64 user_data, s64 cycles_late)
if (actual_response_length != 0) if (actual_response_length != 0)
{ {
s_com_csr.TSTART = 0; s_com_csr.TSTART = 0;
s_com_csr.COMERR = actual_response_length < 0;
if (actual_response_length < 0) if (actual_response_length < 0)
SetNoResponse(s_com_csr.CHANNEL); SetNoResponse(s_com_csr.CHANNEL);
GenerateSIInterrupt(INT_TCINT); GenerateSIInterrupt(INT_TCINT);
@ -503,8 +503,6 @@ void RegisterMMIO(MMIO::Mapping* mmio, u32 base)
s_com_csr.RDSTINTMSK = tmp_com_csr.RDSTINTMSK; s_com_csr.RDSTINTMSK = tmp_com_csr.RDSTINTMSK;
s_com_csr.TCINTMSK = tmp_com_csr.TCINTMSK; s_com_csr.TCINTMSK = tmp_com_csr.TCINTMSK;
s_com_csr.COMERR = 0;
if (tmp_com_csr.RDSTINT) if (tmp_com_csr.RDSTINT)
s_com_csr.RDSTINT = 0; s_com_csr.RDSTINT = 0;
if (tmp_com_csr.TCINT) if (tmp_com_csr.TCINT)