UINT32 igs028_device::olds_read_reg(UINT16 addr) { UINT32 protaddr = (olds_prot_addr(addr) - 0x400000) / 2; return m_sharedprotram[protaddr] << 16 | m_sharedprotram[protaddr + 1]; }
uint32_t igs028_device::olds_read_reg(uint16_t addr) { uint32_t protaddr = (olds_prot_addr(addr) - 0x400000) / 2; return m_sharedprotram[protaddr] << 16 | m_sharedprotram[protaddr + 1]; }
case 0x7: return 0x403000; case 0x9: return 0x40306e; } return 0; } UINT32 igs028_device::olds_read_reg(UINT16 addr) { UINT32 protaddr = (olds_prot_addr(addr) - 0x400000) / 2; return m_sharedprotram[protaddr] << 16 | m_sharedprotram[protaddr + 1]; } void igs028_device::olds_write_reg( UINT16 addr, UINT32 val ) { m_sharedprotram[((olds_prot_addr(addr) - 0x400000) / 2) + 0] = val >> 16; m_sharedprotram[((olds_prot_addr(addr) - 0x400000) / 2) + 1] = val & 0xffff; } void igs028_device::IGS028_do_dma(UINT16 src, UINT16 dst, UINT16 size, UINT16 mode) { UINT16 param = mode >> 8; UINT16 *PROTROM = (UINT16*)memregion(":user1")->base(); // logerror ("mode: %2.2x, src: %4.4x, dst: %4.4x, size: %4.4x, data: %4.4x\n", (mode &0xf), src, dst, size, mode); mode &= 0x0f; switch (mode & 0x7) { // igs022 has an 'IGS ' encryption mode, a plain copy, and a NOP, these aren't covered at the moment..
UINT32 pgm_028_025_state::olds_read_reg(UINT16 addr) { UINT32 protaddr = (olds_prot_addr(addr) - 0x400000) / 2; return m_sharedprotram[protaddr] << 16 | m_sharedprotram[protaddr + 1]; }