#define X6502_AddCycles X6502_AddCycles_d
#define X6502_IRQBegin X6502_IRQBegin_d
#define X6502_IRQEnd X6502_IRQEnd_d
#define X6502_AddCycles X6502_AddCycles_d
#define X6502_IRQBegin X6502_IRQBegin_d
#define X6502_IRQEnd X6502_IRQEnd_d
#define X6502_AddCycles X6502_AddCycles_a
#define X6502_IRQBegin X6502_IRQBegin_a
#define X6502_IRQEnd X6502_IRQEnd_a
#define X6502_AddCycles X6502_AddCycles_a
#define X6502_IRQBegin X6502_IRQBegin_a
#define X6502_IRQEnd X6502_IRQEnd_a
- nes_registers[7]+=cycles; \
- if (nes_registers[7] > 0) { \
- cycles = (int32)nes_registers[7]; \
+ nes_registers[7]+=cycles<<16; \
+ cycles=(int32)nes_registers[7]>>16; \
+ if (cycles > 0) { \
#define X6502_AddCycles X6502_AddCycles_c
#define X6502_IRQBegin X6502_IRQBegin_c
#define X6502_IRQEnd X6502_IRQEnd_c
#define X6502_AddCycles X6502_AddCycles_c
#define X6502_IRQBegin X6502_IRQBegin_c
#define X6502_IRQEnd X6502_IRQEnd_c
void X6502_AddCycles_a(int x);
void X6502_IRQBegin_a(int w);
void X6502_IRQEnd_a(int w);
void X6502_AddCycles_a(int x);
void X6502_IRQBegin_a(int w);
void X6502_IRQEnd_a(int w);
void X6502_AddCycles_d(int x);
void X6502_IRQBegin_d(int w);
void X6502_IRQEnd_d(int w);
void X6502_AddCycles_d(int x);
void X6502_IRQBegin_d(int w);
void X6502_IRQEnd_d(int w);