Master blaster fix
[fceu.git] / cart.h
1 extern uint8 *Page[32],*VPage[8],*MMC5SPRVPage[8],*MMC5BGVPage[8];
2
3 void ResetCartMapping(void);
4 void SetupCartPRGMapping(int chip, uint8 *p, uint32 size, int ram);
5 void SetupCartCHRMapping(int chip, uint8 *p, uint32 size, int ram);
6 void SetupCartMirroring(int m, int hard, uint8 *extra);
7
8 DECLFR(CartBR);
9
10 extern uint8 *PRGptr[32];
11 extern uint8 *CHRptr[32];
12
13 extern uint32 PRGsize[32];
14 extern uint32 CHRsize[32];
15
16 extern uint32 PRGmask2[32];
17 extern uint32 PRGmask4[32];
18 extern uint32 PRGmask8[32];
19 extern uint32 PRGmask16[32];
20 extern uint32 PRGmask32[32];
21
22 extern uint32 CHRmask1[32];
23 extern uint32 CHRmask2[32];
24 extern uint32 CHRmask4[32];
25 extern uint32 CHRmask8[32];
26
27 void FASTAPASS(2) setprg2(uint32 A, uint32 V);
28 void FASTAPASS(2) setprg4(uint32 A, uint32 V);
29 void FASTAPASS(2) setprg8(uint32 A, uint32 V);
30 void FASTAPASS(2) setprg16(uint32 A, uint32 V);
31 void FASTAPASS(2) setprg32(uint32 A, uint32 V);
32
33 void FASTAPASS(3) setprg2r(int r, unsigned int A, unsigned int V);
34 void FASTAPASS(3) setprg4r(int r, unsigned int A, unsigned int V);
35 void FASTAPASS(3) setprg8r(int r, unsigned int A, unsigned int V);
36 void FASTAPASS(3) setprg16r(int r, unsigned int A, unsigned int V);
37 void FASTAPASS(3) setprg32r(int r, unsigned int A, unsigned int V);
38
39 void FASTAPASS(3) setchr1r(int r, unsigned int A, unsigned int V);
40 void FASTAPASS(3) setchr2r(int r, unsigned int A, unsigned int V);
41 void FASTAPASS(3) setchr4r(int r, unsigned int A, unsigned int V);
42 void FASTAPASS(2) setchr8r(int r, unsigned int V);
43
44 void FASTAPASS(2) setchr1(unsigned int A, unsigned int V);
45 void FASTAPASS(2) setchr2(unsigned int A, unsigned int V);
46 void FASTAPASS(2) setchr4(unsigned int A, unsigned int V);
47 void FASTAPASS(2) setchr8(unsigned int V);
48
49 void FASTAPASS(2) setvram4(uint32 A, uint8 *p);
50 void FASTAPASS(1) setvram8(uint8 *p);
51
52 void FASTAPASS(3) setvramb1(uint8 *p, uint32 A, uint32 b);
53 void FASTAPASS(3) setvramb2(uint8 *p, uint32 A, uint32 b);
54 void FASTAPASS(3) setvramb4(uint8 *p, uint32 A, uint32 b);
55 void FASTAPASS(2) setvramb8(uint8 *p, uint32 b);
56
57 void FASTAPASS(1) setmirror(int t);
58 void setmirrorw(int a, int b, int c, int d);
59 void FASTAPASS(3) setntamem(uint8 *p, int ram, uint32 b);
60
61 #define MI_H 0
62 #define MI_V 1
63 #define MI_0 2
64 #define MI_1 3
65
66 extern int geniestage;
67
68 void GeniePower(void);
69
70 void OpenGenie(void);
71 void CloseGenie(void);