Пример #1
0
void __fastcall SupermanZ80Write(unsigned short a, unsigned char d)
{
	switch (a) {
		case 0xe000:
		case 0xe001:
		case 0xe002:
		case 0xe003:
			BurnYM2610Write(a & 3, d);
			return;
		case 0xe200:
			tc0140_slave_port_w(d);
			return;
		case 0xe201:
			tc0140_slave_comm_w(d);
			return;
		case 0xf200:
			SupermanBankSwitch(d);
			return;
	}
}
Пример #2
0
void __fastcall RastanZ80Write(unsigned short a,unsigned char d)
{
	switch (a)
	{
	case 0xb000:
		{
		UINT8 *rom = MSM5205ROM;
		int len = 0x10000;
		int start = d << 8;
		int end;

		/* look for end of sample */
		end = (start + 3) & ~3;
		while (end < len && *((unsigned int *)(&rom[end])) != 0x08080808)
			end += 4;

		MSM5205Play(start,(end-start)*2,0);
		}
		return;
	case 0xc000:
		return;
	case 0xd000:
		return;
	case 0x9000:
		BurnYM2151SelectRegister(d);
		return;
	case 0x9001:
		BurnYM2151WriteRegister(d);
		return;
	case 0xa000:
		tc0140_slave_port_w(d);
		return;
	case 0xa001:
		tc0140_slave_comm_w(d);
		return;
	default:
		bprintf(PRINT_NORMAL, _T("z80write %x\n"),a);
	}


}
Пример #3
0
void __fastcall twinhawkZ80Write(unsigned short a,unsigned char d)
{
	switch (a)
	{
	case 0xe000:
		BurnYM2151SelectRegister(d);
		return;
	case 0xe001:
		BurnYM2151WriteRegister(d);
		return;
	case 0xe200:
		tc0140_slave_port_w(d);
		return;
	case 0xe201:
		tc0140_slave_comm_w(d);
		return;
	case 0xf200:
		twinhawkBankSwitch(0,d);
	default:
		return;
	}
}