diff --git a/devices/common/dbdma.cpp b/devices/common/dbdma.cpp index 08019e1..9b0a7f5 100644 --- a/devices/common/dbdma.cpp +++ b/devices/common/dbdma.cpp @@ -263,6 +263,9 @@ void DMAChannel::reg_write(uint32_t offset, uint32_t value, int size) { break; case DMAReg::CH_STAT: break; // ingore writes to ChannelStatus + case DMAReg::CMD_PTR_HI: // Mac OS X writes this optional register with zero + LOG_F(9, "CommandPtrHi set to 0x%X", value); + break; case DMAReg::CMD_PTR_LO: if (!(this->ch_stat & CH_STAT_RUN) && !(this->ch_stat & CH_STAT_ACTIVE)) { this->cmd_ptr = value; diff --git a/devices/common/dbdma.h b/devices/common/dbdma.h index fc3a405..67dabad 100644 --- a/devices/common/dbdma.h +++ b/devices/common/dbdma.h @@ -39,6 +39,7 @@ along with this program. If not, see . enum DMAReg : uint32_t { CH_CTRL = 0, CH_STAT = 4, + CMD_PTR_HI = 8, CMD_PTR_LO = 12, INT_SELECT = 16, BRANCH_SELECT = 20,