UINT8 __fastcall rallybik_sound_read_port(UINT16 p) { switch (p & 0xff) { case 0x00: return DrvInputs[0]; case 0x10: return DrvInputs[1]; case 0x20: return DrvInputs[2]; case 0x40: return DrvDips[0]; case 0x50: return DrvDips[1]; case 0x60: case 0x61: return BurnYM3812Read(p & 1); case 0x70: return DrvDips[2]; } return 0; }
UINT8 __fastcall truxtonZ80In(UINT16 nAddress) { nAddress &= 0xFF; switch (nAddress) { case 0x60: return BurnYM3812Read(0); case 0x40: // DIP A return DrvInput[2]; case 0x50: // DIP B return DrvInput[3]; case 0x20: // Sysytem inputs return DrvInput[4] | (ToaVBlankRegister() << 7); case 0x00: // Player 1 return DrvInput[0]; case 0x10: // Player 2 return DrvInput[1]; case 0x70: // Region return DrvInput[5]; } // bprintf(PRINT_NORMAL, _T("z80 read %4X\n"), nAddress); return 0; }
UINT8 __fastcall demonwld_sound_read_port(UINT16 p) { switch (p & 0xff) { case 0x00: case 0x01: return BurnYM3812Read(p & 1); case 0x20: return DrvDips[2]; case 0x60: return DrvInputs[2]; case 0x80: return DrvInputs[0]; case 0xa0: return DrvDips[1]; case 0xc0: return DrvInputs[1]; case 0xe0: return DrvDips[0]; } return 0; }
unsigned char __fastcall outzoneZ80In(unsigned short nAddress) { // bprintf(PRINT_NORMAL, _T("z80 read %4X\n"), nAddress); nAddress &= 0xFF; switch (nAddress) { case 0x00: return BurnYM3812Read(0); case 0x08: // DIP A return DrvInput[2]; case 0x0C: // DIP B return DrvInput[3]; case 0x10: // Sysytem inputs return DrvInput[4] | (ToaVBlankRegister() << 7); case 0x14: // Player 1 return DrvInput[0]; case 0x18: // Player 2 return DrvInput[1]; case 0x1C: // Region return DrvInput[5]; } return 0; }
UINT8 __fastcall pipibibs_sound_read(UINT16 address) { switch (address) { case 0xe000: case 0xe001: return BurnYM3812Read(0); } return 0; }
unsigned char __fastcall rollerg_sound_read(unsigned short address) { switch (address) { case 0xc000: case 0xc001: return BurnYM3812Read(address & 1); } if (address >= 0xa000 && address <= 0xa02f) { // not sure... if ((address & 0x3e) == 0x00) ZetSetIRQLine(0, ZET_IRQSTATUS_NONE); return K053260Read(0, address & 0x3f); } return 0; }
UINT8 __fastcall hcastle_sound_read(UINT16 address) { if (address >= 0xb000 && address <= 0xb00d) { return K007232ReadReg(0, address & 0x0f); } switch (address) { case 0xa000: case 0xa001: return BurnYM3812Read(address & 1); case 0xd000: ZetSetIRQLine(0, ZET_IRQSTATUS_NONE); return *soundlatch; } return 0; }