Beispiel #1
0
void TMS9928APostLoad()
{
	for (int i = 0; i < 8; i++)
		change_register(i, tms.Regs[i]);

	if (tms.INTCallback) tms.INTCallback(tms.INT);
}
Beispiel #2
0
void TMS9928A_post_load (running_machine &machine) {
	int i;

	/* all registers need to be re-written, so tables are recalculated */
	for (i=0;i<8;i++)
		change_register (machine, i, tms.Regs[i]);

	/* make sure the interrupt request is set properly */
	if (tms.INTCallback) tms.INTCallback (machine, tms.INT);
}
Beispiel #3
0
void TMS9928AWriteRegs(int data)
{
	if (tms.latch) {
		if (data & 0x80) {
			change_register(data & 0x07, tms.FirstByte);
		} else {
			tms.Addr = ((unsigned short)data << 8 | tms.FirstByte) & (tms.vramsize - 1);
			if (!(data & 0x40)) {
				TMS9928AReadVRAM();
			}
		}

		tms.latch = 0;
	} else {
		tms.FirstByte = data;
		tms.latch = 1;
	}
}