void k033906_device::k033906_reg_w(int reg, UINT32 data) { switch (reg) { case 0x00: break; case 0x01: // command register break; case 0x04: // memBaseAddr { if (data == 0xffffffff) { m_reg[0x04] = 0xff000000; } else { m_reg[0x04] = data & 0xff000000; } break; } case 0x0f: // interrupt_line, interrupt_pin, min_gnt, max_lat { m_reg[0x0f] = data; break; } case 0x10: // initEnable { voodoo_set_init_enable(m_voodoo, data); break; } case 0x11: // busSnoop0 case 0x12: // busSnoop1 break; case 0x38: // ??? break; default: fatalerror("%s:K033906_w: %08X, %08X", m_machine.describe_context(), data, reg); } }
void magictg_state::voodoo_1_pci_w(int function, int reg, uint32_t data, uint32_t mem_mask) { switch (reg) { case 0x04: voodoo_pci_regs[1].command = data & 0x3; break; case 0x10: if (data == 0xffffffff) m_voodoo_pci_regs[1].base_addr = 0xff000000; else m_voodoo_pci_regs[1].base_addr = data; break; case 0x40: m_voodoo_pci_regs[1].init_enable = data; voodoo_set_init_enable(state->m_voodoo[1], data); break; default: logerror("Voodoo [%x]: %x\n", reg, data); } }
static void voodoo_0_pci_w(device_t *busdevice, device_t *device, int function, int reg, UINT32 data, UINT32 mem_mask) { funkball_state* state = device->machine().driver_data<funkball_state>(); printf("Voodoo [%x]: %x\n", reg, data); switch (reg) { case 0x04: state->m_voodoo_pci_regs.command = data & 0x3; break; case 0x10: if (data == 0xffffffff) state->m_voodoo_pci_regs.base_addr = 0xff000000; else state->m_voodoo_pci_regs.base_addr = data; break; case 0x40: state->m_voodoo_pci_regs.init_enable = data; voodoo_set_init_enable(state->m_voodoo, data); break; } }
static void voodoo_1_pci_w(device_t *busdevice, device_t *device, int function, int reg, UINT32 data, UINT32 mem_mask) { magictg_state* state = space.machine().driver_data<magictg_state>(); switch (reg) { case 0x04: voodoo_pci_regs[1].command = data & 0x3; break; case 0x10: if (data == 0xffffffff) state->m_voodoo_pci_regs[1].base_addr = 0xff000000; else state->m_voodoo_pci_regs[1].base_addr = data; break; case 0x40: state->m_voodoo_pci_regs[1].init_enable = data; voodoo_set_init_enable(state->m_voodoo[1], data); break; default: osd_printf_debug("Voodoo [%x]: %x\n", reg, data); } }