Commit | Line | Data |
---|---|---|
ef79bbde P |
1 | /*************************************************************************** |
2 | * PCSX-Revolution - PlayStation Emulator for Nintendo Wii * | |
3 | * Copyright (C) 2009-2010 PCSX-Revolution Dev Team * | |
4 | * <http://code.google.com/p/pcsx-revolution/> * | |
5 | * * | |
6 | * This program is free software; you can redistribute it and/or modify * | |
7 | * it under the terms of the GNU General Public License as published by * | |
8 | * the Free Software Foundation; either version 2 of the License, or * | |
9 | * (at your option) any later version. * | |
10 | * * | |
11 | * This program is distributed in the hope that it will be useful, * | |
12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of * | |
13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * | |
14 | * GNU General Public License for more details. * | |
15 | * * | |
16 | * You should have received a copy of the GNU General Public License * | |
17 | * along with this program; if not, write to the * | |
18 | * Free Software Foundation, Inc., * | |
19 | * 51 Franklin Street, Fifth Floor, Boston, MA 02111-1307 USA. * | |
20 | ***************************************************************************/ | |
21 | ||
59774ed0 | 22 | #ifdef FLAGLESS |
23 | ||
24 | #define gteRTPS gteRTPS_nf | |
25 | #define gteOP gteOP_nf | |
26 | #define gteNCLIP gteNCLIP_nf | |
27 | #define gteDPCS gteDPCS_nf | |
28 | #define gteINTPL gteINTPL_nf | |
29 | #define gteMVMVA gteMVMVA_nf | |
30 | #define gteNCDS gteNCDS_nf | |
31 | #define gteNCDT gteNCDT_nf | |
32 | #define gteCDP gteCDP_nf | |
33 | #define gteNCCS gteNCCS_nf | |
34 | #define gteCC gteCC_nf | |
35 | #define gteNCS gteNCS_nf | |
36 | #define gteNCT gteNCT_nf | |
37 | #define gteSQR gteSQR_nf | |
38 | #define gteDCPL gteDCPL_nf | |
39 | #define gteDPCT gteDPCT_nf | |
40 | #define gteAVSZ3 gteAVSZ3_nf | |
41 | #define gteAVSZ4 gteAVSZ4_nf | |
42 | #define gteRTPT gteRTPT_nf | |
43 | #define gteGPF gteGPF_nf | |
44 | #define gteGPL gteGPL_nf | |
45 | #define gteNCCT gteNCCT_nf | |
46 | ||
6c0eefaf | 47 | #define gteGPL_part_noshift gteGPL_part_noshift_nf |
48 | #define gteGPL_part_shift gteGPL_part_shift_nf | |
49 | #define gteDPCS_part_noshift gteDPCS_part_noshift_nf | |
50 | #define gteDPCS_part_shift gteDPCS_part_shift_nf | |
51 | #define gteINTPL_part_noshift gteINTPL_part_noshift_nf | |
52 | #define gteINTPL_part_shift gteINTPL_part_shift_nf | |
53 | #define gteMACtoRGB gteMACtoRGB_nf | |
54 | ||
55 | #undef __GTE_H__ | |
59774ed0 | 56 | #endif |
57 | ||
ef79bbde P |
58 | #ifndef __GTE_H__ |
59 | #define __GTE_H__ | |
60 | ||
61 | #ifdef __cplusplus | |
62 | extern "C" { | |
63 | #endif | |
64 | ||
65 | #include "psxcommon.h" | |
66 | #include "r3000a.h" | |
67 | ||
6c0eefaf | 68 | struct psxCP2Regs; |
f74fb727 | 69 | |
630b122b | 70 | extern const unsigned char gte_cycletab[64]; |
71 | ||
72 | int gteCheckStallRaw(u32 op_cycles, psxRegisters *regs); | |
73 | void gteCheckStall(u32 op); | |
74 | ||
75 | // for lightrec | |
6f1edc3c PC |
76 | u32 MFC2(int reg); |
77 | void MTC2(u32 value, int reg); | |
78 | void CTC2(u32 value, int reg); | |
79 | ||
ef79bbde P |
80 | void gteMFC2(); |
81 | void gteCFC2(); | |
82 | void gteMTC2(); | |
83 | void gteCTC2(); | |
84 | void gteLWC2(); | |
85 | void gteSWC2(); | |
630b122b | 86 | void gteLWC2_stall(); |
87 | void gteSWC2_stall(); | |
ef79bbde | 88 | |
6c0eefaf | 89 | void gteRTPS(struct psxCP2Regs *regs); |
90 | void gteOP(struct psxCP2Regs *regs); | |
91 | void gteNCLIP(struct psxCP2Regs *regs); | |
92 | void gteDPCS(struct psxCP2Regs *regs); | |
93 | void gteINTPL(struct psxCP2Regs *regs); | |
94 | void gteMVMVA(struct psxCP2Regs *regs); | |
95 | void gteNCDS(struct psxCP2Regs *regs); | |
96 | void gteNCDT(struct psxCP2Regs *regs); | |
97 | void gteCDP(struct psxCP2Regs *regs); | |
98 | void gteNCCS(struct psxCP2Regs *regs); | |
99 | void gteCC(struct psxCP2Regs *regs); | |
100 | void gteNCS(struct psxCP2Regs *regs); | |
101 | void gteNCT(struct psxCP2Regs *regs); | |
102 | void gteSQR(struct psxCP2Regs *regs); | |
103 | void gteDCPL(struct psxCP2Regs *regs); | |
104 | void gteDPCT(struct psxCP2Regs *regs); | |
105 | void gteAVSZ3(struct psxCP2Regs *regs); | |
106 | void gteAVSZ4(struct psxCP2Regs *regs); | |
107 | void gteRTPT(struct psxCP2Regs *regs); | |
108 | void gteGPF(struct psxCP2Regs *regs); | |
109 | void gteGPL(struct psxCP2Regs *regs); | |
110 | void gteNCCT(struct psxCP2Regs *regs); | |
111 | ||
112 | void gteSQR_part_noshift(struct psxCP2Regs *regs); | |
113 | void gteSQR_part_shift(struct psxCP2Regs *regs); | |
114 | void gteOP_part_noshift(struct psxCP2Regs *regs); | |
115 | void gteOP_part_shift(struct psxCP2Regs *regs); | |
116 | void gteDCPL_part(struct psxCP2Regs *regs); | |
117 | void gteGPF_part_noshift(struct psxCP2Regs *regs); | |
118 | void gteGPF_part_shift(struct psxCP2Regs *regs); | |
119 | ||
120 | void gteGPL_part_noshift(struct psxCP2Regs *regs); | |
121 | void gteGPL_part_shift(struct psxCP2Regs *regs); | |
122 | void gteDPCS_part_noshift(struct psxCP2Regs *regs); | |
123 | void gteDPCS_part_shift(struct psxCP2Regs *regs); | |
124 | void gteINTPL_part_noshift(struct psxCP2Regs *regs); | |
125 | void gteINTPL_part_shift(struct psxCP2Regs *regs); | |
126 | void gteMACtoRGB(struct psxCP2Regs *regs); | |
ef79bbde P |
127 | |
128 | #ifdef __cplusplus | |
129 | } | |
130 | #endif | |
131 | #endif |