Esempio n. 1
0
void bottom9_main_write(unsigned short address, unsigned char data)
{
    switch (address)
    {
    case 0x1f80:
        bankswitch(data);
        return;

    case 0x1f90:
    {
        K052109RMRDLine      =  data & 0x04;
        bottom9_video_enable = ~data & 0x08;
        zoomreadroms         =  data & 0x10;
        K052109_selected     =  data & 0x20;
    }
    return;

    case 0x1fa0:
        // watchdog
        return;

    case 0x1fb0:
        *soundlatch = data;
        return;

    case 0x1fc0:
        ZetSetVector(0xff);
        ZetSetIRQLine(0, ZET_IRQSTATUS_ACK);
        return;
    }

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

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

        if ((address & 0xf800) == 0x2000) {
            DrvPalRAM[address & 0x7ff] = data;
            return;
        }
    }

    if ((address & 0xc000) == 0x0000) {
        K052109_051960_w(address & 0x3fff, data);
        return;
    }
}
Esempio n. 2
0
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;
	}
}
Esempio n. 3
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;
	}
}