From 7c47b9c1e7bdfb9cc7fc118f403d743ccb337176 Mon Sep 17 00:00:00 2001 From: Maxim Poliakovski Date: Wed, 13 Oct 2021 09:06:16 +0200 Subject: [PATCH] amic: implement AMIC2 identification. --- devices/amic.cpp | 3 +++ devices/amic.h | 2 ++ 2 files changed, 5 insertions(+) diff --git a/devices/amic.cpp b/devices/amic.cpp index 34ea2d5..23ef892 100644 --- a/devices/amic.cpp +++ b/devices/amic.cpp @@ -91,6 +91,8 @@ uint32_t AMIC::read(uint32_t reg_start, uint32_t offset, int size) return this->snd_out_dma->read_stat(); case AMICReg::Diag_Reg: return 0xFFU; // this value allows the machine to boot normally + case AMICReg::SCSI_DMA_Ctrl: + return this->scsi_dma_cs; default: LOG_F(WARNING, "Unknown AMIC register read, offset=%x", offset); } @@ -177,6 +179,7 @@ void AMIC::write(uint32_t reg_start, uint32_t offset, uint32_t value, int size) break; case AMICReg::SCSI_DMA_Ctrl: LOG_F(INFO, "AMIC SCSI DMA Ctrl updated, val=%x", value); + this->scsi_dma_cs = value; break; case AMICReg::Enet_DMA_Rcv_Ctrl: LOG_F(INFO, "AMIC Ethernet Receive DMA Ctrl updated, val=%x", value); diff --git a/devices/amic.h b/devices/amic.h index 62c9180..3156bbe 100644 --- a/devices/amic.h +++ b/devices/amic.h @@ -139,6 +139,8 @@ private: uint16_t snd_buf_size = 0; // sound buffer size in bytes uint8_t snd_out_ctrl = 0; + uint8_t scsi_dma_cs = 0; // SCSI DMA control/status register value + std::unique_ptr viacuda; std::unique_ptr awacs;