void rollerg_main_write(unsigned short address, unsigned char data)
{
	switch (address)
	{
		case 0x0010:
			readzoomroms = data & 0x04;
			K051316WrapEnable(0, data & 0x20);
		return;

		case 0x0020:
			// watchdog
		return;

		case 0x0030:
		case 0x0031:
			K053260Write(0, address & 1, data);
		return;

		case 0x0040:
			ZetSetVector(0xff);
		//	ZetRaiseIrq(0);
			ZetSetIRQLine(0, ZET_IRQSTATUS_ACK);
		return;
	}

	if ((address & 0xfff0) == 0x0200) {
		K051316WriteCtrl(0, address & 0x0f, data);
		return;
	}

	if ((address & 0xfff0) == 0x0300) {
		K053244Write(0, address & 0x0f, data);
		return;
	}

	if ((address & 0xf800) == 0x0800) {
		K051316Write(0, address & 0x7ff, data);
		return;
	}

	if ((address & 0xf800) == 0x1000) {
		K053245Write(0, address & 0x7ff, data);
		return;
	}
}
Beispiel #2
0
void rollerg_main_write(UINT16 address, UINT8 data)
{
	switch (address)
	{
		case 0x0010:
			readzoomroms = data & 0x04;
			K051316WrapEnable(0, data & 0x20);
		return;

		case 0x0020:
			// watchdog
		return;

		case 0x0030:
		case 0x0031:
			K053260Write(0, address & 1, data);
		return;

		case 0x0040:
			ZetSetVector(0xff);
			ZetSetIRQLine(0, CPU_IRQSTATUS_ACK);
		return;
	}

	if ((address & 0xfff0) == 0x0200) {
		K051316WriteCtrl(0, address & 0x0f, data);
		return;
	}

	if ((address & 0xfff0) == 0x0300) {
		K053244Write(0, address & 0x0f, data);
		return;
	}

	if ((address & 0xf800) == 0x0800) {
		K051316Write(0, address & 0x7ff, data);
		return;
	}

	if ((address & 0xf800) == 0x1000) {
		K053245Write(0, address & 0x7ff, data);
		return;
	}
}