Example #1
0
static int op_rb3ixd(int data)		/* RES 3,(IX+d) */
{
#ifdef BUS_8080
	cpu_bus = CPU_WO | CPU_MEMR;
#endif
#ifdef FRONTPANEL
	fp_sampleLightGroup(0, 0);
#endif
	//*(ram + IX + data) &= ~8;
	memwrt(ram + IX + data, *(ram + IX + data) & ~8);
#ifdef BUS_8080
	cpu_bus = 0;
#endif
#ifdef FRONTPANEL
	fp_sampleLightGroup(0, 0);
#endif
	return(23);
}
Example #2
0
static int op_ldydl(void)		/* LD (IY+d),L */
{
#ifdef BUS_8080
	cpu_bus = CPU_WO | CPU_MEMR;
#endif
#ifdef FRONTPANEL
	fp_sampleLightGroup(0, 0);
#endif
	//*(IY + (signed char) *PC++ + ram) = L;
	memwrt(ram + IY + (signed char) *PC++, L);
#ifdef BUS_8080
	cpu_bus = 0;
#endif
#ifdef FRONTPANEL
	fp_sampleLightGroup(0, 0);
#endif
	return(19);
}
Example #3
0
static int op_ldiny(void)		/* LD (nn),IY */
{
	register BYTE *p;

#ifdef BUS_8080
	cpu_bus = 0;
#endif
#ifdef FRONTPANEL
	fp_sampleLightGroup(0, 0);
#endif
	p = ram	+ *PC++;
	p += *PC++ << 8;
	//*p++ = IY;
	memwrt(p++, IY);
	//*p = IY >> 8;
	memwrt(p, IY >> 8);
	return(20);
}
Example #4
0
static int op_ldydn(void)		/* LD (IY+d),n */
{
	register int d;

#ifdef BUS_8080
	cpu_bus = CPU_WO | CPU_MEMR;
#endif
#ifdef FRONTPANEL
	fp_sampleLightGroup(0, 0);
#endif
	d = (signed char) *PC++;
	//*(IY + d + ram) = *PC++;
	memwrt(ram + IY + d, *PC++);
#ifdef BUS_8080
	cpu_bus = 0;
#endif
#ifdef FRONTPANEL
	fp_sampleLightGroup(0, 0);
#endif
	return(19);
}
Example #5
0
static int op_pusiy(void)		/* PUSH IY */
{
#ifdef BUS_8080
	cpu_bus = CPU_STACK;
#endif
#ifdef FRONTPANEL
	fp_sampleLightGroup(0, 0);
#endif
#ifdef WANT_SPC
	if (STACK <= ram)
		STACK = ram + 65536L;
#endif
	//*--STACK = IY >> 8;
	memwrt(--STACK, IY >> 8);
#ifdef WANT_SPC
	if (STACK <= ram)
		STACK = ram + 65536L;
#endif
	//*--STACK = IY;
	memwrt(--STACK, IY);
	return(15);
}
Example #6
0
static int op_exspy(void)		/* EX (SP),IY */
{
	register int i;

#ifdef BUS_8080
	cpu_bus = CPU_WO | CPU_STACK | CPU_MEMR;
#endif
#ifdef FRONTPANEL
	fp_sampleLightGroup(0, 0);
#endif
	i = *STACK + (*(STACK + 1) << 8);
	//*STACK = IY;
	memwrt(STACK, IY);
	//*(STACK + 1) = IY >> 8;
	memwrt(STACK + 1, IY >> 8);
	IY = i;
#ifdef BUS_8080
	cpu_bus = CPU_STACK;
#endif
#ifdef FRONTPANEL
	fp_sampleLightGroup(0, 0);
#endif
	return(23);
}