X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?p=fceu.git;a=blobdiff_plain;f=x6502.h;h=31216f4d6a74bdaebef08302058fa870f139144d;hp=f13bbdd1f6f0e12c0ca693dd0c94e4648c5b9965;hb=527b98f6e7965f464c804ee5279855326c78dc6d;hpb=d97315ac0bca825d2d50a44453bc5652946e2c67 diff --git a/x6502.h b/x6502.h index f13bbdd..31216f4 100644 --- a/x6502.h +++ b/x6502.h @@ -58,7 +58,7 @@ extern void FP_FASTAPASS(1) (*MapIRQHook)(int a); #if defined(DEBUG_ASM_6502) #define TriggerIRQ TriggerIRQ_d #define TriggerNMI TriggerNMI_d -#define TriggerNMINSF TriggerNMINSF_d +#define X6502_Init X6502_Init_c #define X6502_Run X6502_Run_d #define X6502_Reset X6502_Reset_d #define X6502_Power X6502_Power_d @@ -66,7 +66,7 @@ extern void FP_FASTAPASS(1) (*MapIRQHook)(int a); #define X6502_IRQBegin X6502_IRQBegin_d #define X6502_IRQEnd X6502_IRQEnd_d #define X6502_Rebase X6502_Rebase_d -#define X6502_GetCycleCount() 0 +#define X6502_GetCycleCount() g_cnt #define X6502_C #define X6502_A #define X6502_D @@ -74,12 +74,14 @@ extern void FP_FASTAPASS(1) (*MapIRQHook)(int a); #elif defined(ASM_6502) #define TriggerIRQ TriggerIRQ_a #define TriggerNMI TriggerNMI_a -#define TriggerNMINSF TriggerNMINSF_a +#define X6502_Init() #define X6502_Reset X6502_Reset_a #define X6502_Power X6502_Power_a #define X6502_AddCycles X6502_AddCycles_a -#define X6502_IRQBegin X6502_IRQBegin_a -#define X6502_IRQEnd X6502_IRQEnd_a +//#define X6502_IRQBegin X6502_IRQBegin_a +//#define X6502_IRQEnd X6502_IRQEnd_a +#define X6502_IRQBegin(w) nes_registers[4]|=w<<8 +#define X6502_IRQEnd(w) nes_registers[4]&=~(w<<8) #define X6502_Rebase X6502_Rebase_a #define X6502_GetCycleCount() ((int32)nes_registers[7]>>16) #define X6502_A @@ -93,14 +95,14 @@ extern void FP_FASTAPASS(1) (*MapIRQHook)(int a); if (cycles > 0) { \ X6502_Run_a(); \ cycles -= (int32)nes_registers[7]>>16; \ - asmcpu_update(cycles); \ + FCEU_SoundCPUHook(cycles); \ } \ } #else #define TriggerIRQ TriggerIRQ_c #define TriggerNMI TriggerNMI_c -#define TriggerNMINSF TriggerNMINSF_c +#define X6502_Init X6502_Init_c #define X6502_Reset X6502_Reset_c #define X6502_Power X6502_Power_c #define X6502_AddCycles X6502_AddCycles_c @@ -124,7 +126,7 @@ extern void FP_FASTAPASS(1) (*MapIRQHook)(int a); #ifdef X6502_C void TriggerIRQ_c(void); void TriggerNMI_c(void); -void TriggerNMINSF_c(void); +void X6502_Init_c(void); void X6502_Run_c(void); void X6502_Reset_c(void); void X6502_Power_c(void); @@ -139,7 +141,6 @@ extern uint32 nes_registers[0x10]; extern uint32 pc_base; void TriggerIRQ_a(void); void TriggerNMI_a(void); -void TriggerNMINSF_a(void); void X6502_Run_a(void); void X6502_Reset_a(void); void X6502_Power_a(void); @@ -151,9 +152,9 @@ void X6502_Rebase_a(void); // debug #ifdef X6502_D +extern int32 g_cnt; void TriggerIRQ_d(void); void TriggerNMI_d(void); -void TriggerNMINSF_d(void); void X6502_Run_d(int32 c); void X6502_Reset_d(void); void X6502_Power_d(void);