goodbye fastapass and c80x86

This commit is contained in:
zeromus 2008-06-06 03:02:00 +00:00
parent c1b20f3050
commit 43908a249d
61 changed files with 216 additions and 291 deletions

View File

@ -65,7 +65,7 @@ static void M43Reset(void)
{
}
static void FP_FASTAPASS(1) M43IRQHook(int a)
static void M43IRQHook(int a)
{
IRQCount+=a;
if(IRQa)

View File

@ -366,7 +366,7 @@ static void ClockCounter(void)
}
}
void FP_FASTAPASS(1) CPUWrap(int a)
void CPUWrap(int a)
{
int x;
if((IRQMode&3)==0) for(x=0;x<a;x++) ClockCounter();
@ -379,7 +379,7 @@ static void SLWrap(void)
}
static uint32 lastread;
static void FP_FASTAPASS(1) M90PPU(uint32 A)
static void M90PPU(uint32 A)
{
if((IRQMode&3)==2)
{

View File

@ -79,7 +79,7 @@ static DECLFW(Mapper95_write)
}
}
static void FP_FASTAPASS(1) dragonbust_ppu(uint32 A)
static void dragonbust_ppu(uint32 A)
{
static int last=-1;
static uint8 z;

View File

@ -213,7 +213,7 @@ static uint32 NWCIRQCount;
static uint8 NWCRec;
#define NWCDIP 0xE
static void FP_FASTAPASS(1) NWCIRQHook(int a)
static void NWCIRQHook(int a)
{
if(!(NWCRec&0x10))
{

View File

@ -312,7 +312,7 @@ static void GenMMC3Close(void)
}
//static uint16 _a12;
//static void FP_FASTAPASS(1) MMC3_PPU(uint32 A)
//static void MMC3_PPU(uint32 A)
//{
// if(A&0x2000)return;
// if((!_a12)&&(A&0x1000))
@ -915,7 +915,7 @@ void Mapper116_Init(CartInfo *info)
static uint8 PPUCHRBus;
static uint8 TKSMIR[8];
static void FP_FASTAPASS(1) TKSPPU(uint32 A)
static void TKSPPU(uint32 A)
{
A&=0x1FFF;
A>>=10;
@ -992,7 +992,7 @@ static void M165CWM(uint32 A, uint8 V)
M165PPUFE();
}
static void FP_FASTAPASS(1) M165PPU(uint32 A)
static void M165PPU(uint32 A)
{
if((A&0x1FF0)==0x1FD0)
{

View File

@ -200,7 +200,7 @@ static void MMC5CHRB(void)
}
}
static void FASTAPASS(2) MMC5WRAM(uint32 A, uint32 V)
static void MMC5WRAM(uint32 A, uint32 V)
{
//printf("%02x\n",V);
V=MMC5WRAMIndex[V&7];

View File

@ -70,7 +70,7 @@ static void SyncPRG(void)
setprg8(0xe000,0x3F);
}
static void FP_FASTAPASS(1) NamcoIRQHook(int a)
static void NamcoIRQHook(int a)
{
if(IRQa)
{
@ -104,7 +104,7 @@ static DECLFR(Namco_Read5800)
return(IRQCount>>8);
}
static void FASTAPASS(2) DoNTARAMROM(int w, uint8 V)
static void DoNTARAMROM(int w, uint8 V)
{
NTAPage[w]=V;
if(V>=0xE0)
@ -123,7 +123,7 @@ static void FixNTAR(void)
DoNTARAMROM(x,NTAPage[x]);
}
static void FASTAPASS(2) DoCHRRAMROM(int x, uint8 V)
static void DoCHRRAMROM(int x, uint8 V)
{
CHR[x]=V;
if(!is210 && !((gorfus>>((x>>2)+6))&1) && (V>=0xE0))

View File

@ -36,10 +36,10 @@ static SFORMAT Rambo_StateRegs[]={
{0}
};
static void FP_FASTAPASS(2) (*setchr1wrap)(unsigned int A, unsigned int V);
static void (*setchr1wrap)(unsigned int A, unsigned int V);
//static int nomirror;
static void FP_FASTAPASS(1) RAMBO1_IRQHook(int a)
static void RAMBO1_IRQHook(int a)
{
static int smallcount;
if(!IRQmode) return;
@ -158,7 +158,7 @@ static void RAMBO1_init(void)
AddExState(Rambo_StateRegs, ~0, 0, 0);
}
static void FP_FASTAPASS(2) CHRWrap(unsigned int A, unsigned int V)
static void CHRWrap(unsigned int A, unsigned int V)
{
setchr1(A,V);
}
@ -173,7 +173,7 @@ void Mapper64_init(void)
static int MirCache[8];
static unsigned int PPUCHRBus;
static void FP_FASTAPASS(2) MirWrap(unsigned int A, unsigned int V)
static void MirWrap(unsigned int A, unsigned int V)
{
MirCache[A>>10]=(V>>7)&1;
if(PPUCHRBus==(A>>10))
@ -181,7 +181,7 @@ static void FP_FASTAPASS(2) MirWrap(unsigned int A, unsigned int V)
setchr1(A,V);
}
static void FP_FASTAPASS(1) MirrorFear(uint32 A)
static void MirrorFear(uint32 A)
{
A&=0x1FFF;
A>>=10;

View File

@ -156,29 +156,29 @@ DECLFR(CartBROB)
return Page[A>>11][A];
}
void FASTAPASS(3) setprg2r(int r, unsigned int A, unsigned int V)
void setprg2r(int r, unsigned int A, unsigned int V)
{
V&=PRGmask2[r];
setpageptr(2,A,PRGptr[r]?(&PRGptr[r][V<<11]):0,PRGram[r]);
}
void FASTAPASS(2) setprg2(uint32 A, uint32 V)
void setprg2(uint32 A, uint32 V)
{
setprg2r(0,A,V);
}
void FASTAPASS(3) setprg4r(int r, unsigned int A, unsigned int V)
void setprg4r(int r, unsigned int A, unsigned int V)
{
V&=PRGmask4[r];
setpageptr(4,A,PRGptr[r]?(&PRGptr[r][V<<12]):0,PRGram[r]);
}
void FASTAPASS(2) setprg4(uint32 A, uint32 V)
void setprg4(uint32 A, uint32 V)
{
setprg4r(0,A,V);
}
void FASTAPASS(3) setprg8r(int r, unsigned int A, unsigned int V)
void setprg8r(int r, unsigned int A, unsigned int V)
{
if(PRGsize[r]>=8192)
{
@ -194,12 +194,12 @@ void FASTAPASS(3) setprg8r(int r, unsigned int A, unsigned int V)
}
}
void FASTAPASS(2) setprg8(uint32 A, uint32 V)
void setprg8(uint32 A, uint32 V)
{
setprg8r(0,A,V);
}
void FASTAPASS(3) setprg16r(int r, unsigned int A, unsigned int V)
void setprg16r(int r, unsigned int A, unsigned int V)
{
if(PRGsize[r]>=16384)
{
@ -216,12 +216,12 @@ void FASTAPASS(3) setprg16r(int r, unsigned int A, unsigned int V)
}
}
void FASTAPASS(2) setprg16(uint32 A, uint32 V)
void setprg16(uint32 A, uint32 V)
{
setprg16r(0,A,V);
}
void FASTAPASS(3) setprg32r(int r,unsigned int A, unsigned int V)
void setprg32r(int r,unsigned int A, unsigned int V)
{
if(PRGsize[r]>=32768)
{
@ -238,12 +238,12 @@ void FASTAPASS(3) setprg32r(int r,unsigned int A, unsigned int V)
}
}
void FASTAPASS(2) setprg32(uint32 A, uint32 V)
void setprg32(uint32 A, uint32 V)
{
setprg32r(0,A,V);
}
void FASTAPASS(3) setchr1r(int r, unsigned int A, unsigned int V)
void setchr1r(int r, unsigned int A, unsigned int V)
{
if(!CHRptr[r]) return;
FCEUPPU_LineUpdate();
@ -255,7 +255,7 @@ void FASTAPASS(3) setchr1r(int r, unsigned int A, unsigned int V)
VPageR[(A)>>10]=&CHRptr[r][(V)<<10]-(A);
}
void FASTAPASS(3) setchr2r(int r, unsigned int A, unsigned int V)
void setchr2r(int r, unsigned int A, unsigned int V)
{
if(!CHRptr[r]) return;
FCEUPPU_LineUpdate();
@ -267,7 +267,7 @@ void FASTAPASS(3) setchr2r(int r, unsigned int A, unsigned int V)
PPUCHRRAM&=~(3<<(A>>10));
}
void FASTAPASS(3) setchr4r(int r, unsigned int A, unsigned int V)
void setchr4r(int r, unsigned int A, unsigned int V)
{
if(!CHRptr[r]) return;
FCEUPPU_LineUpdate();
@ -280,7 +280,7 @@ void FASTAPASS(3) setchr4r(int r, unsigned int A, unsigned int V)
PPUCHRRAM&=~(15<<(A>>10));
}
void FASTAPASS(2) setchr8r(int r, unsigned int V)
void setchr8r(int r, unsigned int V)
{
int x;
@ -295,27 +295,27 @@ void FASTAPASS(2) setchr8r(int r, unsigned int V)
PPUCHRRAM&=~(255);
}
void FASTAPASS(2) setchr1(unsigned int A, unsigned int V)
void setchr1(unsigned int A, unsigned int V)
{
setchr1r(0,A,V);
}
void FASTAPASS(2) setchr2(unsigned int A, unsigned int V)
void setchr2(unsigned int A, unsigned int V)
{
setchr2r(0,A,V);
}
void FASTAPASS(2) setchr4(unsigned int A, unsigned int V)
void setchr4(unsigned int A, unsigned int V)
{
setchr4r(0,A,V);
}
void FASTAPASS(1) setchr8(unsigned int V)
void setchr8(unsigned int V)
{
setchr8r(0,V);
}
void FASTAPASS(1) setvram8(uint8 *p)
void setvram8(uint8 *p)
{
int x;
for(x=7;x>=0;x--)
@ -323,7 +323,7 @@ void FASTAPASS(1) setvram8(uint8 *p)
PPUCHRRAM|=255;
}
void FASTAPASS(2) setvram4(uint32 A, uint8 *p)
void setvram4(uint32 A, uint8 *p)
{
int x;
for(x=3;x>=0;x--)
@ -331,21 +331,21 @@ void FASTAPASS(2) setvram4(uint32 A, uint8 *p)
PPUCHRRAM|=(15<<(A>>10));
}
void FASTAPASS(3) setvramb1(uint8 *p, uint32 A, uint32 b)
void setvramb1(uint8 *p, uint32 A, uint32 b)
{
FCEUPPU_LineUpdate();
VPageR[A>>10]=p-A+(b<<10);
PPUCHRRAM|=(1<<(A>>10));
}
void FASTAPASS(3) setvramb2(uint8 *p, uint32 A, uint32 b)
void setvramb2(uint8 *p, uint32 A, uint32 b)
{
FCEUPPU_LineUpdate();
VPageR[(A>>10)]=VPageR[(A>>10)+1]=p-A+(b<<11);
PPUCHRRAM|=(3<<(A>>10));
}
void FASTAPASS(3) setvramb4(uint8 *p, uint32 A, uint32 b)
void setvramb4(uint8 *p, uint32 A, uint32 b)
{
int x;
@ -355,7 +355,7 @@ void FASTAPASS(3) setvramb4(uint8 *p, uint32 A, uint32 b)
PPUCHRRAM|=(15<<(A>>10));
}
void FASTAPASS(2) setvramb8(uint8 *p, uint32 b)
void setvramb8(uint8 *p, uint32 b)
{
int x;
@ -367,7 +367,7 @@ void FASTAPASS(2) setvramb8(uint8 *p, uint32 b)
/* This function can be called without calling SetupCartMirroring(). */
void FASTAPASS(3) setntamem(uint8 *p, int ram, uint32 b)
void setntamem(uint8 *p, int ram, uint32 b)
{
FCEUPPU_LineUpdate();
vnapage[b]=p;
@ -386,7 +386,7 @@ void setmirrorw(int a, int b, int c, int d)
vnapage[3]=NTARAM+d*0x400;
}
void FASTAPASS(1) setmirror(int t)
void setmirror(int t)
{
FCEUPPU_LineUpdate();
if(!mirrorhard)

View File

@ -52,39 +52,39 @@ extern uint32 CHRmask2[32];
extern uint32 CHRmask4[32];
extern uint32 CHRmask8[32];
void FASTAPASS(2) setprg2(uint32 A, uint32 V);
void FASTAPASS(2) setprg4(uint32 A, uint32 V);
void FASTAPASS(2) setprg8(uint32 A, uint32 V);
void FASTAPASS(2) setprg16(uint32 A, uint32 V);
void FASTAPASS(2) setprg32(uint32 A, uint32 V);
void setprg2(uint32 A, uint32 V);
void setprg4(uint32 A, uint32 V);
void setprg8(uint32 A, uint32 V);
void setprg16(uint32 A, uint32 V);
void setprg32(uint32 A, uint32 V);
void FASTAPASS(3) setprg2r(int r, unsigned int A, unsigned int V);
void FASTAPASS(3) setprg4r(int r, unsigned int A, unsigned int V);
void FASTAPASS(3) setprg8r(int r, unsigned int A, unsigned int V);
void FASTAPASS(3) setprg16r(int r, unsigned int A, unsigned int V);
void FASTAPASS(3) setprg32r(int r, unsigned int A, unsigned int V);
void setprg2r(int r, unsigned int A, unsigned int V);
void setprg4r(int r, unsigned int A, unsigned int V);
void setprg8r(int r, unsigned int A, unsigned int V);
void setprg16r(int r, unsigned int A, unsigned int V);
void setprg32r(int r, unsigned int A, unsigned int V);
void FASTAPASS(3) setchr1r(int r, unsigned int A, unsigned int V);
void FASTAPASS(3) setchr2r(int r, unsigned int A, unsigned int V);
void FASTAPASS(3) setchr4r(int r, unsigned int A, unsigned int V);
void FASTAPASS(2) setchr8r(int r, unsigned int V);
void setchr1r(int r, unsigned int A, unsigned int V);
void setchr2r(int r, unsigned int A, unsigned int V);
void setchr4r(int r, unsigned int A, unsigned int V);
void setchr8r(int r, unsigned int V);
void FASTAPASS(2) setchr1(unsigned int A, unsigned int V);
void FASTAPASS(2) setchr2(unsigned int A, unsigned int V);
void FASTAPASS(2) setchr4(unsigned int A, unsigned int V);
void FASTAPASS(1) setchr8(unsigned int V);
void setchr1(unsigned int A, unsigned int V);
void setchr2(unsigned int A, unsigned int V);
void setchr4(unsigned int A, unsigned int V);
void setchr8(unsigned int V);
void FASTAPASS(2) setvram4(uint32 A, uint8 *p);
void FASTAPASS(1) setvram8(uint8 *p);
void setvram4(uint32 A, uint8 *p);
void setvram8(uint8 *p);
void FASTAPASS(3) setvramb1(uint8 *p, uint32 A, uint32 b);
void FASTAPASS(3) setvramb2(uint8 *p, uint32 A, uint32 b);
void FASTAPASS(3) setvramb4(uint8 *p, uint32 A, uint32 b);
void FASTAPASS(2) setvramb8(uint8 *p, uint32 b);
void setvramb1(uint8 *p, uint32 A, uint32 b);
void setvramb2(uint8 *p, uint32 A, uint32 b);
void setvramb4(uint8 *p, uint32 A, uint32 b);
void setvramb8(uint8 *p, uint32 b);
void FASTAPASS(1) setmirror(int t);
void setmirror(int t);
void setmirrorw(int a, int b, int c, int d);
void FASTAPASS(3) setntamem(uint8 *p, int ram, uint32 b);
void setntamem(uint8 *p, int ram, uint32 b);
#define MI_H 0
#define MI_V 1

View File

@ -127,7 +127,7 @@ void FlushGenieRW(void)
}
}
readfunc FASTAPASS(1) GetReadHandler(int32 a)
readfunc GetReadHandler(int32 a)
{
if(a>=0x8000 && RWWrap)
return AReadG[a-0x8000];
@ -135,7 +135,7 @@ readfunc FASTAPASS(1) GetReadHandler(int32 a)
return ARead[a];
}
void FASTAPASS(3) SetReadHandler(int32 start, int32 end, readfunc func)
void SetReadHandler(int32 start, int32 end, readfunc func)
{
int32 x;
@ -156,7 +156,7 @@ void FASTAPASS(3) SetReadHandler(int32 start, int32 end, readfunc func)
ARead[x]=func;
}
writefunc FASTAPASS(1) GetWriteHandler(int32 a)
writefunc GetWriteHandler(int32 a)
{
if(RWWrap && a>=0x8000)
return BWriteG[a-0x8000];
@ -164,7 +164,7 @@ writefunc FASTAPASS(1) GetWriteHandler(int32 a)
return BWrite[a];
}
void FASTAPASS(3) SetWriteHandler(int32 start, int32 end, writefunc func)
void SetWriteHandler(int32 start, int32 end, writefunc func)
{
int32 x;

View File

@ -7,14 +7,14 @@
extern int fceuindbg;
void ResetGameLoaded(void);
#define DECLFR(x) uint8 FP_FASTAPASS(1) x (uint32 A)
#define DECLFW(x) void FP_FASTAPASS(2) x (uint32 A, uint8 V)
#define DECLFR(x) uint8 x (uint32 A)
#define DECLFW(x) void x (uint32 A, uint8 V)
void FCEU_MemoryRand(uint8 *ptr, uint32 size);
void FASTAPASS(3) SetReadHandler(int32 start, int32 end, readfunc func);
void FASTAPASS(3) SetWriteHandler(int32 start, int32 end, writefunc func);
writefunc FASTAPASS(1) GetWriteHandler(int32 a);
readfunc FASTAPASS(1) GetReadHandler(int32 a);
void SetReadHandler(int32 start, int32 end, readfunc func);
void SetWriteHandler(int32 start, int32 end, writefunc func);
writefunc GetWriteHandler(int32 a);
readfunc GetReadHandler(int32 a);
int AllocGenieRW(void);
void FlushGenieRW(void);

View File

@ -57,7 +57,7 @@ static DECLFR(FDSBIOSRead);
static DECLFR(FDSRAMRead);
static DECLFW(FDSRAMWrite);
static void FDSInit(void);
static void FP_FASTAPASS(1) FDSFix(int a);
static void FDSFix(int a);
#define FDSRAM GameMemBlock
#define CHRRAM (GameMemBlock+32768)
@ -184,7 +184,7 @@ void FCEU_FDSSelect(void)
FCEU_DispMessage("Disk %d Side %c Selected",SelectDisk>>1,(SelectDisk&1)?'B':'A');
}
static void FP_FASTAPASS(1) FDSFix(int a)
static void FDSFix(int a)
{
if((IRQa&2) && IRQCount)
{

View File

@ -760,7 +760,7 @@ char *iNesShortFName() {
return ret+1;
}
void FASTAPASS(2) VRAM_BANK1(uint32 A, uint8 V)
void VRAM_BANK1(uint32 A, uint8 V)
{
V&=7;
PPUCHRRAM|=(1<<(A>>10));
@ -768,7 +768,7 @@ void FASTAPASS(2) VRAM_BANK1(uint32 A, uint8 V)
VPage[(A)>>10]=&CHRRAM[V<<10]-(A);
}
void FASTAPASS(2) VRAM_BANK4(uint32 A, uint32 V)
void VRAM_BANK4(uint32 A, uint32 V)
{
V&=1;
PPUCHRRAM|=(0xF<<(A>>10));
@ -778,20 +778,20 @@ void FASTAPASS(2) VRAM_BANK4(uint32 A, uint32 V)
CHRBankList[((A)>>10)+3]=(V<<2)+3;
VPage[(A)>>10]=&CHRRAM[V<<10]-(A);
}
void FASTAPASS(2) VROM_BANK1(uint32 A,uint32 V)
void VROM_BANK1(uint32 A,uint32 V)
{
setchr1(A,V);
CHRBankList[(A)>>10]=V;
}
void FASTAPASS(2) VROM_BANK2(uint32 A,uint32 V)
void VROM_BANK2(uint32 A,uint32 V)
{
setchr2(A,V);
CHRBankList[(A)>>10]=(V<<1);
CHRBankList[((A)>>10)+1]=(V<<1)+1;
}
void FASTAPASS(2) VROM_BANK4(uint32 A, uint32 V)
void VROM_BANK4(uint32 A, uint32 V)
{
setchr4(A,V);
CHRBankList[(A)>>10]=(V<<2);
@ -800,7 +800,7 @@ void FASTAPASS(2) VROM_BANK4(uint32 A, uint32 V)
CHRBankList[((A)>>10)+3]=(V<<2)+3;
}
void FASTAPASS(1) VROM_BANK8(uint32 V)
void VROM_BANK8(uint32 V)
{
setchr8(V);
CHRBankList[0]=(V<<3);
@ -813,14 +813,14 @@ void FASTAPASS(1) VROM_BANK8(uint32 V)
CHRBankList[7]=(V<<3)+7;
}
void FASTAPASS(2) ROM_BANK8(uint32 A, uint32 V)
void ROM_BANK8(uint32 A, uint32 V)
{
setprg8(A,V);
if(A>=0x8000)
PRGBankList[((A-0x8000)>>13)]=V;
}
void FASTAPASS(2) ROM_BANK16(uint32 A, uint32 V)
void ROM_BANK16(uint32 A, uint32 V)
{
setprg16(A,V);
if(A>=0x8000)
@ -830,7 +830,7 @@ void FASTAPASS(2) ROM_BANK16(uint32 A, uint32 V)
}
}
void FASTAPASS(1) ROM_BANK32(uint32 V)
void ROM_BANK32(uint32 V)
{
setprg32(0x8000,V);
PRGBankList[0]=V<<2;
@ -839,7 +839,7 @@ void FASTAPASS(1) ROM_BANK32(uint32 V)
PRGBankList[3]=(V<<2)+3;
}
void FASTAPASS(1) onemir(uint8 V)
void onemir(uint8 V)
{
if(Mirroring==2) return;
if(V>1)
@ -848,14 +848,14 @@ void FASTAPASS(1) onemir(uint8 V)
setmirror(MI_0+V);
}
void FASTAPASS(1) MIRROR_SET2(uint8 V)
void MIRROR_SET2(uint8 V)
{
if(Mirroring==2) return;
Mirroring=V;
setmirror(V);
}
void FASTAPASS(1) MIRROR_SET(uint8 V)
void MIRROR_SET(uint8 V)
{
if(Mirroring==2) return;
V^=1;

View File

@ -82,16 +82,16 @@ struct iNES_HEADER {
uint8 reserve[8];
};
void FASTAPASS(2) VRAM_BANK1(uint32 A, uint8 V);
void FASTAPASS(2) VRAM_BANK4(uint32 A,uint32 V);
void VRAM_BANK1(uint32 A, uint8 V);
void VRAM_BANK4(uint32 A,uint32 V);
void FASTAPASS(2) VROM_BANK1(uint32 A,uint32 V);
void FASTAPASS(2) VROM_BANK2(uint32 A,uint32 V);
void FASTAPASS(2) VROM_BANK4(uint32 A, uint32 V);
void FASTAPASS(1) VROM_BANK8(uint32 V);
void FASTAPASS(2) ROM_BANK8(uint32 A, uint32 V);
void FASTAPASS(2) ROM_BANK16(uint32 A, uint32 V);
void FASTAPASS(1) ROM_BANK32(uint32 V);
void VROM_BANK1(uint32 A,uint32 V);
void VROM_BANK2(uint32 A,uint32 V);
void VROM_BANK4(uint32 A, uint32 V);
void VROM_BANK8(uint32 V);
void ROM_BANK8(uint32 A, uint32 V);
void ROM_BANK16(uint32 A, uint32 V);
void ROM_BANK32(uint32 V);
extern uint8 vmask;
extern uint32 vmask1;
@ -101,9 +101,9 @@ extern uint32 pmask8;
extern uint8 pmask16;
extern uint8 pmask32;
void FASTAPASS(1) onemir(uint8 V);
void FASTAPASS(1) MIRROR_SET2(uint8 V);
void FASTAPASS(1) MIRROR_SET(uint8 V);
void onemir(uint8 V);
void MIRROR_SET2(uint8 V);
void MIRROR_SET(uint8 V);
void Mapper0_init(void);
void Mapper1_init(void);

View File

@ -93,7 +93,7 @@ static INPUTC DummyJPort={0,0,0,0,0};
static INPUTC *JPorts[2]={&DummyJPort,&DummyJPort};
static INPUTCFC *FCExp=0;
static uint8 FP_FASTAPASS(1) ReadGPVS(int w)
static uint8 ReadGPVS(int w)
{
uint8 ret=0;
@ -108,7 +108,7 @@ static uint8 FP_FASTAPASS(1) ReadGPVS(int w)
return ret;
}
static uint8 FP_FASTAPASS(1) ReadGP(int w)
static uint8 ReadGP(int w)
{
uint8 ret;
@ -174,7 +174,7 @@ static DECLFW(B4016)
LastStrobe=V&0x1;
}
static void FP_FASTAPASS(1) StrobeGP(int w)
static void StrobeGP(int w)
{
joy_readbit[w]=0;
}
@ -337,7 +337,7 @@ static void CheckSLHook(void)
InputScanlineHook=SLHLHook;
}
static void FASTAPASS(1) SetInputStuff(int x)
static void SetInputStuff(int x)
{
switch(JPType[x])
{
@ -363,7 +363,7 @@ static void StrobeFami4(void)
F4ReadBit[0]=F4ReadBit[1]=0;
}
static uint8 FP_FASTAPASS(2) ReadFami4(int w, uint8 ret)
static uint8 ReadFami4(int w, uint8 ret)
{
ret&=1;

View File

@ -2,21 +2,21 @@
#define _INPUT_H_
typedef struct {
uint8 FP_FASTAPASS(1) (*Read)(int w);
void FP_FASTAPASS(1) (*Write)(uint8 v);
void FP_FASTAPASS(1) (*Strobe)(int w);
void FP_FASTAPASS(3) (*Update)(int w, void *data, int arg);
void FP_FASTAPASS(3) (*SLHook)(int w, uint8 *bg, uint8 *spr, uint32 linets, int final);
void FP_FASTAPASS(3) (*Draw)(int w, uint8 *buf, int arg);
uint8 (*Read)(int w);
void (*Write)(uint8 v);
void (*Strobe)(int w);
void (*Update)(int w, void *data, int arg);
void (*SLHook)(int w, uint8 *bg, uint8 *spr, uint32 linets, int final);
void (*Draw)(int w, uint8 *buf, int arg);
} INPUTC;
typedef struct {
uint8 FP_FASTAPASS(2) (*Read)(int w, uint8 ret);
void FP_FASTAPASS(1) (*Write)(uint8 v);
uint8 (*Read)(int w, uint8 ret);
void (*Write)(uint8 v);
void (*Strobe)(void);
void FP_FASTAPASS(2) (*Update)(void *data, int arg);
void FP_FASTAPASS(3) (*SLHook)(uint8 *bg, uint8 *spr, uint32 linets, int final);
void FP_FASTAPASS(2) (*Draw)(uint8 *buf, int arg);
void (*Update)(void *data, int arg);
void (*SLHook)(uint8 *bg, uint8 *spr, uint32 linets, int final);
void (*Draw)(uint8 *buf, int arg);
} INPUTCFC;
void FCEU_DrawInput(uint8 *buf);

View File

@ -36,7 +36,7 @@ static void StrobeARKFC(void)
}
static uint8 FP_FASTAPASS(2) ReadARKFC(int w,uint8 ret)
static uint8 ReadARKFC(int w,uint8 ret)
{
ret&=~2;
@ -64,7 +64,7 @@ static uint32 FixX(uint32 x)
return(x);
}
static void FP_FASTAPASS(2) UpdateARKFC(void *data, int arg)
static void UpdateARKFC(void *data, int arg)
{
uint32 *ptr=(uint32 *)data;
FCArk.mzx=FixX(ptr[0]);
@ -80,7 +80,7 @@ INPUTCFC *FCEU_InitArkanoidFC(void)
return(&ARKCFC);
}
static uint8 FP_FASTAPASS(1) ReadARK(int w)
static uint8 ReadARK(int w)
{
uint8 ret=0;
@ -97,12 +97,12 @@ static uint8 FP_FASTAPASS(1) ReadARK(int w)
}
static void FP_FASTAPASS(1) StrobeARK(int w)
static void StrobeARK(int w)
{
NESArk[w].readbit=0;
}
static void FP_FASTAPASS(3) UpdateARK(int w, void *data, int arg)
static void UpdateARK(int w, void *data, int arg)
{
uint32 *ptr=(uint32*)data;
NESArk[w].mzx=FixX(ptr[0]);

View File

@ -25,7 +25,7 @@ static int seq,ptr,bit,cnt,have;
static uint8 bdata[20];
static uint8 FP_FASTAPASS(2) Read(int w, uint8 ret)
static uint8 Read(int w, uint8 ret)
{
if(w && have)
{
@ -48,12 +48,12 @@ static uint8 FP_FASTAPASS(2) Read(int w, uint8 ret)
return(ret);
}
static void FP_FASTAPASS(1) Write(uint8 V)
static void Write(uint8 V)
{
//printf("%02x\n",V);
}
static void FP_FASTAPASS(2) Update(void *data, int arg)
static void Update(void *data, int arg)
{
if(*(uint8 *)data)
{

View File

@ -51,7 +51,7 @@ static uint16 matrix[9][2][4]=
{AK(DOWN),AK(SPACE),AK(DELETE),AK(INSERT)}},
};
static void FP_FASTAPASS(1) FKB_Write(uint8 v)
static void FKB_Write(uint8 v)
{
v>>=1;
if(v&2)
@ -62,7 +62,7 @@ static void FP_FASTAPASS(1) FKB_Write(uint8 v)
ksmode=v;
}
static uint8 FP_FASTAPASS(2) FKB_Read(int w, uint8 ret)
static uint8 FKB_Read(int w, uint8 ret)
{
//printf("$%04x, %d, %d\n",w+0x4016,ksindex,ksmode&1);
if(w)
@ -87,7 +87,7 @@ static void FKB_Strobe(void)
//printf("strobe\n");
}
static void FP_FASTAPASS(2) FKB_Update(void *data, int arg)
static void FKB_Update(void *data, int arg)
{
memcpy(bufit+1,data,0x48);
}

View File

@ -24,7 +24,7 @@
static uint32 FTVal,FTValR;
static char side;
static uint8 FP_FASTAPASS(2) FT_Read(int w, uint8 ret)
static uint8 FT_Read(int w, uint8 ret)
{
if(w)
{
@ -33,7 +33,7 @@ static uint8 FP_FASTAPASS(2) FT_Read(int w, uint8 ret)
return(ret);
}
static void FP_FASTAPASS(1) FT_Write(uint8 V)
static void FT_Write(uint8 V)
{
FTValR=0;
@ -51,7 +51,7 @@ static void FP_FASTAPASS(1) FT_Write(uint8 V)
FTValR<<=1;
}
static void FP_FASTAPASS(2) FT_Update(void *data, int arg)
static void FT_Update(void *data, int arg)
{
FTVal=*(uint32 *)data;
}

View File

@ -24,7 +24,7 @@
static uint8 HSVal,HSValR;
static uint8 FP_FASTAPASS(2) HS_Read(int w, uint8 ret)
static uint8 HS_Read(int w, uint8 ret)
{
if(w) ret|=HSValR;
@ -36,7 +36,7 @@ static void HS_Strobe(void)
HSValR=HSVal<<1;
}
static void FP_FASTAPASS(2) HS_Update(void *data, int arg)
static void HS_Update(void *data, int arg)
{
HSVal=*(uint8*)data;
}

View File

@ -23,7 +23,7 @@
static uint32 MReal,MRet;
static uint8 FP_FASTAPASS(2) MJ_Read(int w, uint8 ret)
static uint8 MJ_Read(int w, uint8 ret)
{
if(w)
{
@ -36,7 +36,7 @@ static uint8 FP_FASTAPASS(2) MJ_Read(int w, uint8 ret)
return(ret);
}
static void FP_FASTAPASS(1) MJ_Write(uint8 v)
static void MJ_Write(uint8 v)
{
/* 1: I-D7, J-D6, K-D5, L-D4, M-D3, Big Red-D2
2: A-D7, B-D6, C-D5, D-D4, E-D3, F-D2, G-D1, H-D0
@ -63,7 +63,7 @@ static void FP_FASTAPASS(1) MJ_Write(uint8 v)
// HSValR=HSVal<<1;
}
static void FP_FASTAPASS(2) MJ_Update(void *data, int arg)
static void MJ_Update(void *data, int arg)
{
MReal=*(uint32*)data;
//printf("%08x\n",MReal>>13);

View File

@ -30,12 +30,12 @@ typedef struct {
static MOUSE Mouse;
static void FP_FASTAPASS(1) StrobeMOUSE(int w)
static void StrobeMOUSE(int w)
{
Mouse.readbit=0;
}
static uint8 FP_FASTAPASS(1) ReadMOUSE(int w)
static uint8 ReadMOUSE(int w)
{
uint8 ret=0;
if(Mouse.readbit>=8)
@ -49,7 +49,7 @@ static uint8 FP_FASTAPASS(1) ReadMOUSE(int w)
return(ret);
}
static void FP_FASTAPASS(3) UpdateMOUSE(int w, void *data, int arg)
static void UpdateMOUSE(int w, void *data, int arg)
{
uint32 *ptr=(uint32*)data;
Mouse.data=0;

View File

@ -25,7 +25,7 @@ static uint8 OKValR,LastWR;
static uint32 OKData;
static uint32 OKX,OKY,OKB;
static uint8 FP_FASTAPASS(2) OK_Read(int w, uint8 ret)
static uint8 OK_Read(int w, uint8 ret)
{
if(w)
{
@ -34,7 +34,7 @@ static uint8 FP_FASTAPASS(2) OK_Read(int w, uint8 ret)
return(ret);
}
static void FP_FASTAPASS(1) OK_Write(uint8 V)
static void OK_Write(uint8 V)
{
if(!(V&0x1))
{
@ -72,7 +72,7 @@ static void FP_FASTAPASS(1) OK_Write(uint8 V)
LastWR=V;
}
static void FP_FASTAPASS(2) OK_Update(void *data, int arg)
static void OK_Update(void *data, int arg)
{
//puts("Sync");
OKX=((uint32*)data)[0];
@ -80,7 +80,7 @@ static void FP_FASTAPASS(2) OK_Update(void *data, int arg)
OKB=((uint32*)data)[2];
}
static void FP_FASTAPASS(2) DrawOeka(uint8 *buf, int arg)
static void DrawOeka(uint8 *buf, int arg)
{
if(arg && OKY<44)
FCEU_DrawCursor(buf, OKX, OKY);

View File

@ -27,7 +27,7 @@ static char side;
static uint32 pprsb[2];
static uint32 pprdata[2];
static uint8 FP_FASTAPASS(1) ReadPP(int w)
static uint8 ReadPP(int w)
{
uint8 ret=0;
ret|=((pprdata[w]>>pprsb[w])&1)<<3;
@ -43,12 +43,12 @@ static uint8 FP_FASTAPASS(1) ReadPP(int w)
return ret;
}
static void FP_FASTAPASS(1) StrobePP(int w)
static void StrobePP(int w)
{
pprsb[w]=0;
}
void FP_FASTAPASS(3) UpdatePP(int w, void *data, int arg)
void UpdatePP(int w, void *data, int arg)
{
static const char shifttableA[12]={8,9,0,1,11,7,4,2,10,6,5,3};
static const char shifttableB[12]={1,0,9,8,2,4,7,11,3,5,6,10};

View File

@ -24,7 +24,7 @@
static uint8 QZVal,QZValR;
static uint8 FunkyMode;
static uint8 FP_FASTAPASS(2) QZ_Read(int w, uint8 ret)
static uint8 QZ_Read(int w, uint8 ret)
{
if(w)
{
@ -55,13 +55,13 @@ static void QZ_Strobe(void)
//puts("Strobe");
}
static void FP_FASTAPASS(1) QZ_Write(uint8 V)
static void QZ_Write(uint8 V)
{
//printf("Wr: %02x\n",V);
FunkyMode=V&4;
}
static void FP_FASTAPASS(2) QZ_Update(void *data, int arg)
static void QZ_Update(void *data, int arg)
{
QZVal=*(uint8 *)data;
}

View File

@ -33,7 +33,7 @@ typedef struct {
static ZAPPER ZD;
static void FP_FASTAPASS(3) ZapperFrapper(uint8 *bg, uint8 *spr, uint32 linets, int final)
static void ZapperFrapper(uint8 *bg, uint8 *spr, uint32 linets, int final)
{
int xs,xe;
int zx,zy;
@ -94,7 +94,7 @@ static INLINE int CheckColor(void)
}
static uint8 FP_FASTAPASS(2) ReadZapper(int w, uint8 ret)
static uint8 ReadZapper(int w, uint8 ret)
{
if(w)
{
@ -115,13 +115,13 @@ static uint8 FP_FASTAPASS(2) ReadZapper(int w, uint8 ret)
return ret;
}
static void FP_FASTAPASS(2) DrawZapper(uint8 *buf, int arg)
static void DrawZapper(uint8 *buf, int arg)
{
if(arg)
FCEU_DrawCursor(buf, ZD.mzx, ZD.mzy);
}
static void FP_FASTAPASS(2) UpdateZapper(void *data, int arg)
static void UpdateZapper(void *data, int arg)
{
uint32 *ptr=(uint32*)data;

View File

@ -39,7 +39,7 @@ static uint16 matrix[13][2][4]=
{AK(F9),AK(NUMPAD3),AK(DECIMAL),AK(NUMPAD0)}},
};
static void FP_FASTAPASS(1) SuborKB_Write(uint8 v)
static void SuborKB_Write(uint8 v)
{
v>>=1;
if(v&2)
@ -50,7 +50,7 @@ static void FP_FASTAPASS(1) SuborKB_Write(uint8 v)
ksmode=v;
}
static uint8 FP_FASTAPASS(2) SuborKB_Read(int w, uint8 ret)
static uint8 SuborKB_Read(int w, uint8 ret)
{
if(w)
{
@ -79,7 +79,7 @@ static void SuborKB_Strobe(void)
ksindex=0;
}
static void FP_FASTAPASS(2) SuborKB_Update(void *data, int arg)
static void SuborKB_Update(void *data, int arg)
{
memcpy(bufit+1,data,0x60);
}

View File

@ -24,7 +24,7 @@
static uint32 bs,bss;
static uint32 boop;
static uint8 FP_FASTAPASS(2) Read(int w, uint8 ret)
static uint8 Read(int w, uint8 ret)
{
if(w)
{
@ -37,7 +37,7 @@ static uint8 FP_FASTAPASS(2) Read(int w, uint8 ret)
return(ret);
}
static void FP_FASTAPASS(1) Write(uint8 V)
static void Write(uint8 V)
{
// if(V&0x2)
bs=bss;
@ -45,7 +45,7 @@ static void FP_FASTAPASS(1) Write(uint8 V)
// boop=0xC0;
}
static void FP_FASTAPASS(2) Update(void *data, int arg)
static void Update(void *data, int arg)
{
bss=*(uint8*)data;
bss|=bss<<8;

View File

@ -33,7 +33,7 @@ typedef struct {
static ZAPPER ZD[2];
static void FP_FASTAPASS(3) ZapperFrapper(int w, uint8 *bg, uint8 *spr, uint32 linets, int final)
static void ZapperFrapper(int w, uint8 *bg, uint8 *spr, uint32 linets, int final)
{
int xs,xe;
int zx,zy;
@ -94,7 +94,7 @@ static INLINE int CheckColor(int w)
return(1);
}
static uint8 FP_FASTAPASS(1) ReadZapperVS(int w)
static uint8 ReadZapperVS(int w)
{
uint8 ret=0;
@ -115,12 +115,12 @@ static uint8 FP_FASTAPASS(1) ReadZapperVS(int w)
return ret;
}
static void FP_FASTAPASS(1) StrobeZapperVS(int w)
static void StrobeZapperVS(int w)
{
ZD[w].zap_readbit=0;
}
static uint8 FP_FASTAPASS(1) ReadZapper(int w)
static uint8 ReadZapper(int w)
{
uint8 ret=0;
if(ZD[w].bogo)
@ -130,13 +130,13 @@ static uint8 FP_FASTAPASS(1) ReadZapper(int w)
return ret;
}
static void FASTAPASS(3) DrawZapper(int w, uint8 *buf, int arg)
static void DrawZapper(int w, uint8 *buf, int arg)
{
if(arg)
FCEU_DrawGunSight(buf, ZD[w].mzx,ZD[w].mzy);
}
static void FP_FASTAPASS(3) UpdateZapper(int w, void *data, int arg)
static void UpdateZapper(int w, void *data, int arg)
{
uint32 *ptr=(uint32 *)data;

View File

@ -21,7 +21,7 @@
#include "mapinc.h"
static void FP_FASTAPASS(1) BandaiIRQHook(int a)
static void BandaiIRQHook(int a)
{
if(IRQa)
{
@ -260,7 +260,7 @@ int FCEUI_DatachSet(const uint8 *rcode)
return(1);
}
static void FP_FASTAPASS(1) BarcodeIRQHook(int a)
static void BarcodeIRQHook(int a)
{
BandaiIRQHook(a);

View File

@ -22,7 +22,7 @@
static void FP_FASTAPASS(1) FFEIRQHook(int a)
static void FFEIRQHook(int a)
{
if(IRQa)
{

View File

@ -23,7 +23,7 @@
#define K4buf mapbyte2
#define K4buf2 mapbyte3
void FP_FASTAPASS(1) JalecoIRQHook(int a)
void JalecoIRQHook(int a)
{
if(IRQa && IRQCount)
{

View File

@ -82,7 +82,7 @@ DECLFW(Mapper21_write)
case 0xf006:IRQa=K4IRQ;X6502_IRQEnd(FCEU_IQEXT);break;
}
}
static void FP_FASTAPASS(1) KonamiIRQHook(int a)
static void KonamiIRQHook(int a)
{
#define LCYCS ((227*2)+1)
//#define LCYCS 341

View File

@ -80,7 +80,7 @@ static DECLFW(Mapper23_write)
}
}
void FP_FASTAPASS(1) KonamiIRQHook2(int a)
void KonamiIRQHook2(int a)
{
#define LCYCS 341
if(IRQa)

View File

@ -34,7 +34,7 @@ static int swaparoo;
static int acount=0;
static void FP_FASTAPASS(1) KonamiIRQHook(int a)
static void KonamiIRQHook(int a)
{
#define LCYCS 341
// #define LCYCS ((227*2)+1)

View File

@ -72,7 +72,7 @@ static DECLFW(Mapper25_write)
}
}
static void FP_FASTAPASS(1) KonamiIRQHook(int a)
static void KonamiIRQHook(int a)
{
// #define LCYCS ((227*2))
#define LCYCS 341

View File

@ -31,7 +31,7 @@ static DECLFW(Mapper40_write)
}
}
static void FP_FASTAPASS(1) Mapper40IRQ(int a)
static void Mapper40IRQ(int a)
{
if(IRQa)
{

View File

@ -33,7 +33,7 @@ static DECLFW(Mapper42_write)
}
}
static void FP_FASTAPASS(1) Mapper42IRQ(int a)
static void Mapper42IRQ(int a)
{
if(IRQa)
{

View File

@ -44,7 +44,7 @@ static DECLFW(M43Low)
//printf("$%04x:$%02x\n",A,V);
}
static void FP_FASTAPASS(1) M43Ho(int a)
static void M43Ho(int a)
{
IRQCount+=a;
if(IRQa)

View File

@ -21,7 +21,7 @@
#include "mapinc.h"
static void FP_FASTAPASS(1) Mapper50IRQ(int a)
static void Mapper50IRQ(int a)
{
if(IRQa)
{

View File

@ -24,7 +24,7 @@ static uint8 FFEmode;
#define FVRAM_BANK8(A,V) {VPage[0]=VPage[1]=VPage[2]=VPage[3]=VPage[4]=VPage[5]=VPage[6]=VPage[7]=V?&MapperExRAM[(V)<<13]-(A):&CHRRAM[(V)<<13]-(A);CHRBankList[0]=((V)<<3);CHRBankList[1]=((V)<<3)+1;CHRBankList[2]=((V)<<3)+2;CHRBankList[3]=((V)<<3)+3;CHRBankList[4]=((V)<<3)+4;CHRBankList[5]=((V)<<3)+5;CHRBankList[6]=((V)<<3)+6;CHRBankList[7]=((V)<<3)+7;PPUCHRRAM=0xFF;}
static void FP_FASTAPASS(1) FFEIRQHook(int a)
static void FFEIRQHook(int a)
{
if(IRQa)
{

View File

@ -21,7 +21,7 @@
#include "mapinc.h"
void FP_FASTAPASS(1) IREMIRQHook(int a)
void IREMIRQHook(int a)
{
if(IRQa)
{

View File

@ -58,7 +58,7 @@ static DECLFW(Mapper67_write)
case 0xf800:ROM_BANK16(0x8000,V);break;
}
}
static void FP_FASTAPASS(1) SunIRQHook(int a)
static void SunIRQHook(int a)
{
if(IRQa)
{

View File

@ -198,7 +198,7 @@ static void AYHiSync(int32 ts)
CAYBC[x]=ts;
}
static void FP_FASTAPASS(1) SunIRQHook(int a)
static void SunIRQHook(int a)
{
if(IRQa)
{

View File

@ -38,7 +38,7 @@ static DECLFW(Mapper73_write)
}
}
static void FP_FASTAPASS(1) Mapper73IRQHook(int a)
static void Mapper73IRQHook(int a)
{
if(IRQa)
{

View File

@ -24,7 +24,7 @@ static uint32 lastA;
static int isfu;
static uint8 CCache[8];
static void FP_FASTAPASS(1) Fudou_PPU(uint32 A)
static void Fudou_PPU(uint32 A)
{
static int last=-1;
static uint8 z;

View File

@ -26,7 +26,7 @@
}
*/
static void FP_FASTAPASS(1) m83IRQHook(int a)
static void m83IRQHook(int a)
{
if(IRQa)
{

View File

@ -113,7 +113,7 @@ DECLFW(Mapper85_write)
}
}
static void FP_FASTAPASS(1) KonamiIRQHook(int a)
static void KonamiIRQHook(int a)
{
#define ACBOO 341
// #define ACBOO ((227*2)+1)

View File

@ -25,7 +25,7 @@
#define latcha2 mapbyte2[1]
static void FP_FASTAPASS(1) latchcheck(uint32 VAddr)
static void latchcheck(uint32 VAddr)
{
uint8 l,h;

View File

@ -55,7 +55,7 @@ static DECLFW(Mapper96_write)
setchr4r(0x10,0x1000,(latche&4)|3);
}
static void FP_FASTAPASS(1) M96Hook(uint32 A)
static void M96Hook(uint32 A)
{
if((A&0x3000)!=0x2000) return;
//if((A&0x3ff)>=0x3c0) return;

View File

@ -53,7 +53,7 @@
#define Pal (PALRAM)
static void FetchSpriteData(void);
static void FASTAPASS(1) RefreshLine(int lastpixel);
static void RefreshLine(int lastpixel);
static void RefreshSprites(void);
static void CopySprites(uint8 *target);
@ -123,7 +123,7 @@ static uint8 deemp=0;
static int deempcnt[8];
void (*GameHBIRQHook)(void), (*GameHBIRQHook2)(void);
void FP_FASTAPASS(1) (*PPU_hook)(uint32 A);
void (*PPU_hook)(uint32 A);
uint8 vtoggle=0;
uint8 XOffset=0;
@ -496,7 +496,7 @@ static int spork=0; /* spork the world. Any sprites on this line?
*/
// lasttile is really "second to last tile."
static void FASTAPASS(1) RefreshLine(int lastpixel)
static void RefreshLine(int lastpixel)
{
static uint32 pshift[2];
static uint32 atlatch;
@ -1003,13 +1003,8 @@ static void RefreshSprites(void)
for(n=numsprites;n>=0;n--,spr--)
{
//#ifdef C80x86
//register uint32 pixdata asm ("eax");
//register uint8 J, atr;
//#else
register uint32 pixdata;
register uint8 J,atr;
//#endif
uint32 pixdata;
uint8 J,atr;
int x=spr->x;
uint8 *C;

View File

@ -6,7 +6,7 @@ int FCEUPPU_Loop(int skip);
void FCEUPPU_LineUpdate();
void FCEUPPU_SetVideoSystem(int w);
extern void FP_FASTAPASS(1) (*PPU_hook)(uint32 A);
extern void (*PPU_hook)(uint32 A);
extern void (*GameHBIRQHook)(void), (*GameHBIRQHook2)(void);
/* For cart.c and banksw.h, mostly */

View File

@ -21,60 +21,7 @@
pixdata|=ppulut3[XOffset|(atlatch<<3)];
//printf("%02x ",ppulut3[XOffset|(atlatch<<3)]);
#ifdef C80x86
asm volatile(
"movl %%ebx,%%eax\n\t"
"andl $15,%%eax\n\t"
"movb (%%esi,%%eax),%%cl\n\t"
"shrl $4, %%ebx\n\t"
"movb %%cl, (%%edi)\n\t"
"movl %%ebx,%%eax\n\t"
"andl $15,%%eax\n\t"
"movb (%%esi,%%eax),%%cl\n\t"
"shrl $4, %%ebx\n\t"
"movb %%cl, 1(%%edi)\n\t"
"movl %%ebx,%%eax\n\t"
"andl $15,%%eax\n\t"
"movb (%%esi,%%eax),%%cl\n\t"
"shrl $4, %%ebx\n\t"
"movb %%cl, 2(%%edi)\n\t"
"movl %%ebx,%%eax\n\t"
"andl $15,%%eax\n\t"
"movb (%%esi,%%eax),%%cl\n\t"
"shrl $4, %%ebx\n\t"
"movb %%cl, 3(%%edi)\n\t"
"movl %%ebx,%%eax\n\t"
"andl $15,%%eax\n\t"
"movb (%%esi,%%eax),%%cl\n\t"
"shrl $4, %%ebx\n\t"
"movb %%cl, 4(%%edi)\n\t"
"movl %%ebx,%%eax\n\t"
"andl $15,%%eax\n\t"
"movb (%%esi,%%eax),%%cl\n\t"
"shrl $4, %%ebx\n\t"
"movb %%cl, 5(%%edi)\n\t"
"movl %%ebx,%%eax\n\t"
"andl $15,%%eax\n\t"
"movb (%%esi,%%eax),%%cl\n\t"
"shrl $4, %%ebx\n\t"
"movb %%cl, 6(%%edi)\n\t"
//"movl %%ebx,%%eax\n\t"
//"andl $15,%%eax\n\t"
//"movb (%%esi,%%eax),%%cl\n\t"
//"movb %%cl, 7(%%edi)\n\t"
"movb (%%esi, %%ebx),%%cl\n\t"
"movb %%cl, 7(%%edi)\n\t"
:
: "S" (S), "D" (P), "b" (pixdata)
: "eax", "cl" );
#else
P[0]=S[pixdata&0xF];
pixdata>>=4;
P[1]=S[pixdata&0xF];
@ -90,7 +37,6 @@
P[6]=S[pixdata&0xF];
pixdata>>=4;
P[7]=S[pixdata&0xF];
#endif
P+=8;
}

View File

@ -159,7 +159,7 @@ static void PrepDPCM()
/* Instantaneous? Maybe the new freq value is being calculated all of the time... */
static int FASTAPASS(2) CheckFreq(uint32 cf, uint8 sr)
static int CheckFreq(uint32 cf, uint8 sr)
{
uint32 mod;
if(!(sr&0x8))
@ -339,7 +339,7 @@ static DECLFR(StatusRead)
return ret;
}
static void FASTAPASS(1) FrameSoundStuff(int V)
static void FrameSoundStuff(int V)
{
int P;
@ -503,7 +503,7 @@ static INLINE void DMCDMA(void)
}
}
void FASTAPASS(1) FCEU_SoundCPUHook(int cycles)
void FCEU_SoundCPUHook(int cycles)
{
fhcnt-=cycles*48;
if(fhcnt<=0)

View File

@ -62,7 +62,7 @@ void FCEUSND_Reset(void);
void FCEUSND_SaveState(void);
void FCEUSND_LoadState(int version);
void FASTAPASS(1) FCEU_SoundCPUHook(int);
void FP_FASTAPASS(2) Write_IRQFM (uint32 A, uint8 V); //mbg merge 7/17/06 brought over from latest mmbuild
void FCEU_SoundCPUHook(int);
void Write_IRQFM (uint32 A, uint8 V); //mbg merge 7/17/06 brought over from latest mmbuild
#endif

View File

@ -131,24 +131,8 @@ typedef uint32_t uint32;
#endif
#ifdef __GNUC__
#ifdef C80x86
#define FASTAPASS(x) __attribute__((regparm(x)))
#define FP_FASTAPASS FASTAPASS
#else
#define FASTAPASS(x)
#define FP_FASTAPASS(x)
#endif
#elif MSVC
#define FP_FASTAPASS(x)
#define FASTAPASS(x)
#else
#define FP_FASTAPASS(x)
#define FASTAPASS(x)
#endif
typedef void (FP_FASTAPASS(2) *writefunc)(uint32 A, uint8 V);
typedef uint8 (FP_FASTAPASS(1) *readfunc)(uint32 A);
typedef void (*writefunc)(uint32 A, uint8 V);
typedef uint8 (*readfunc)(uint32 A);
template<typename T, int N>

View File

@ -28,4 +28,4 @@ void *FCEU_malloc(uint32 size);
void *FCEU_gmalloc(uint32 size);
void FCEU_gfree(void *ptr);
void FCEU_free(void *ptr);
void FASTAPASS(3) FCEU_memmove(void *d, void *s, uint32 l);
void FCEU_memmove(void *d, void *s, uint32 l);

View File

@ -27,7 +27,7 @@
X6502 X;
uint32 timestamp;
void FP_FASTAPASS(1) (*MapIRQHook)(int a);
void (*MapIRQHook)(int a);
#define ADDCYC(x) \
{ \
@ -61,13 +61,13 @@ static INLINE void WrRAM(unsigned int A, uint8 V)
RAM[A]=V;
}
uint8 FASTAPASS(1) X6502_DMR(uint32 A)
uint8 X6502_DMR(uint32 A)
{
ADDCYC(1);
return(X.DB=ARead[A](A));
}
void FASTAPASS(2) X6502_DMW(uint32 A, uint8 V)
void X6502_DMW(uint32 A, uint8 V)
{
ADDCYC(1);
BWrite[A](A,V);
@ -339,12 +339,12 @@ static uint8 CycTable[256] =
/*0xF0*/ 2,5,2,8,4,4,6,6,2,4,2,7,4,4,7,7,
};
void FASTAPASS(1) X6502_IRQBegin(int w)
void X6502_IRQBegin(int w)
{
_IRQlow|=w;
}
void FASTAPASS(1) X6502_IRQEnd(int w)
void X6502_IRQEnd(int w)
{
_IRQlow&=~w;
}

View File

@ -118,7 +118,7 @@ extern uint32 timestamp;
#define Z_FLAG 0x02
#define C_FLAG 0x01
extern void FP_FASTAPASS(1) (*MapIRQHook)(int a);
extern void (*MapIRQHook)(int a);
#define NTSC_CPU 1789772.7272727272727272
#define PAL_CPU 1662607.125
@ -140,11 +140,11 @@ void X6502_Power(void);
void TriggerNMI(void);
void TriggerNMI2(void);
uint8 FASTAPASS(1) X6502_DMR(uint32 A);
void FASTAPASS(2) X6502_DMW(uint32 A, uint8 V);
uint8 X6502_DMR(uint32 A);
void X6502_DMW(uint32 A, uint8 V);
void FASTAPASS(1) X6502_IRQBegin(int w);
void FASTAPASS(1) X6502_IRQEnd(int w);
void X6502_IRQBegin(int w);
void X6502_IRQEnd(int w);
#define _X6502H
#endif