1 |
william |
31 |
/* PCSX2 - PS2 Emulator for PCs |
2 |
|
|
* Copyright (C) 2002-2010 PCSX2 Dev Team |
3 |
|
|
* |
4 |
|
|
* PCSX2 is free software: you can redistribute it and/or modify it under the terms |
5 |
|
|
* of the GNU Lesser General Public License as published by the Free Software Found- |
6 |
|
|
* ation, either version 3 of the License, or (at your option) any later version. |
7 |
|
|
* |
8 |
|
|
* PCSX2 is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; |
9 |
|
|
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR |
10 |
|
|
* PURPOSE. See the GNU General Public License for more details. |
11 |
|
|
* |
12 |
|
|
* You should have received a copy of the GNU General Public License along with PCSX2. |
13 |
|
|
* If not, see <http://www.gnu.org/licenses/>. |
14 |
|
|
*/ |
15 |
|
|
|
16 |
|
|
#ifndef __CACHE_H__ |
17 |
|
|
#define __CACHE_H__ |
18 |
|
|
|
19 |
|
|
#include "Common.h" |
20 |
|
|
|
21 |
|
|
struct _u8bit_128 { |
22 |
|
|
u8 _8[16]; |
23 |
|
|
|
24 |
|
|
}; |
25 |
|
|
|
26 |
|
|
struct u8bit_128 { |
27 |
|
|
_u8bit_128 b8; |
28 |
|
|
|
29 |
|
|
}; |
30 |
|
|
|
31 |
|
|
struct _cacheS { |
32 |
|
|
u32 tag[2]; |
33 |
|
|
u8bit_128 data[2][4]; |
34 |
|
|
}; |
35 |
|
|
|
36 |
|
|
extern _cacheS pCache[64]; |
37 |
|
|
|
38 |
|
|
void writeCache8(u32 mem, u8 value); |
39 |
|
|
void writeCache16(u32 mem, u16 value); |
40 |
|
|
void writeCache32(u32 mem, u32 value); |
41 |
|
|
void writeCache64(u32 mem, u64 value); |
42 |
|
|
void writeCache128(u32 mem, u64 *value); |
43 |
|
|
u8 *readCache(u32 mem); |
44 |
|
|
|
45 |
|
|
// Fixme - these two functions do nothing, and the cache code relies on these two functions. |
46 |
william |
62 |
static __fi u32 getMemR(s32 mem) |
47 |
william |
31 |
{ |
48 |
|
|
return 0;//memLUTR[mem >> 12]; |
49 |
|
|
} |
50 |
|
|
|
51 |
william |
62 |
static __fi u32 getMemW(s32 mem) |
52 |
william |
31 |
{ |
53 |
|
|
return 0;//memLUTW[mem>>12]; |
54 |
|
|
} |
55 |
|
|
|
56 |
|
|
#endif /* __CACHE_H__ */ |