notaz.gp2x.de
/
picodrive.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
input: detect dead devices, always set keynames
[picodrive.git]
/
cpu
/
cz80
/
cz80.h
diff --git
a/cpu/cz80/cz80.h
b/cpu/cz80/cz80.h
index
a5da31d
..
9b97d3b
100644
(file)
--- a/
cpu/cz80/cz80.h
+++ b/
cpu/cz80/cz80.h
@@
-24,7
+24,7
@@
extern "C" {
#endif
\r
\r
#ifndef INT8
\r
#endif
\r
\r
#ifndef INT8
\r
-#define INT8 char
\r
+#define INT8
signed
char
\r
#endif
\r
\r
#ifndef UINT16
\r
#endif
\r
\r
#ifndef UINT16
\r
@@
-32,7
+32,7
@@
extern "C" {
#endif
\r
\r
#ifndef INT16
\r
#endif
\r
\r
#ifndef INT16
\r
-#define INT16 short
\r
+#define INT16 s
igned s
hort
\r
#endif
\r
\r
#ifndef UINT32
\r
#endif
\r
\r
#ifndef UINT32
\r
@@
-40,7
+40,11
@@
extern "C" {
#endif
\r
\r
#ifndef INT32
\r
#endif
\r
\r
#ifndef INT32
\r
-#define INT32 int
\r
+#define INT32 signed int
\r
+#endif
\r
+
\r
+#ifndef FPTR
\r
+#define FPTR unsigned long
\r
#endif
\r
\r
/*************************************/
\r
#endif
\r
\r
/*************************************/
\r
@@
-52,6
+56,7
@@
extern "C" {
#define CZ80_FETCH_SFT (16 - CZ80_FETCH_BITS)
\r
#define CZ80_FETCH_BANK (1 << CZ80_FETCH_BITS)
\r
\r
#define CZ80_FETCH_SFT (16 - CZ80_FETCH_BITS)
\r
#define CZ80_FETCH_BANK (1 << CZ80_FETCH_BITS)
\r
\r
+#define PICODRIVE_HACKS 1
\r
#define CZ80_LITTLE_ENDIAN 1
\r
#define CZ80_USE_JUMPTABLE 1
\r
#define CZ80_BIG_FLAGS_ARRAY 1
\r
#define CZ80_LITTLE_ENDIAN 1
\r
#define CZ80_USE_JUMPTABLE 1
\r
#define CZ80_BIG_FLAGS_ARRAY 1
\r
@@
-60,7
+65,7
@@
extern "C" {
//#else
\r
#define CZ80_ENCRYPTED_ROM 0
\r
//#endif
\r
//#else
\r
#define CZ80_ENCRYPTED_ROM 0
\r
//#endif
\r
-#define CZ80_EMULATE_R_EXACTLY
0
\r
+#define CZ80_EMULATE_R_EXACTLY
1
\r
\r
#define zR8(A) (*CPU->pzR8[A])
\r
#define zR16(A) (CPU->pzR16[A]->W)
\r
\r
#define zR8(A) (*CPU->pzR8[A])
\r
#define zR16(A) (CPU->pzR16[A]->W)
\r
@@
-221,7
+226,7
@@
typedef struct cz80_t
union16 IX;
\r
union16 IY;
\r
union16 SP;
\r
union16 IX;
\r
union16 IY;
\r
union16 SP;
\r
- UINT32
PC;
\r
+ UINT32
unusedPC; /* left for binary compat */
\r
\r
union16 BC2;
\r
union16 DE2;
\r
\r
union16 BC2;
\r
union16 DE2;
\r
@@
-241,11
+246,12
@@
typedef struct cz80_t
INT32 ICount;
\r
INT32 ExtraCycles;
\r
\r
INT32 ICount;
\r
INT32 ExtraCycles;
\r
\r
- UINT32 BasePC;
\r
- UINT32 Fetch[CZ80_FETCH_BANK];
\r
+ FPTR BasePC;
\r
+ FPTR PC;
\r
+ FPTR Fetch[CZ80_FETCH_BANK];
\r
#if CZ80_ENCRYPTED_ROM
\r
#if CZ80_ENCRYPTED_ROM
\r
-
INT32
OPBase;
\r
-
INT32
OPFetch[CZ80_FETCH_BANK];
\r
+
FPTR
OPBase;
\r
+
FPTR
OPFetch[CZ80_FETCH_BANK];
\r
#endif
\r
\r
UINT8 *pzR8[8];
\r
#endif
\r
\r
UINT8 *pzR8[8];
\r
@@
-283,7
+289,7
@@
void Cz80_Set_IRQ(cz80_struc *CPU, INT32 line, INT32 state);
UINT32 Cz80_Get_Reg(cz80_struc *CPU, INT32 regnum);
\r
void Cz80_Set_Reg(cz80_struc *CPU, INT32 regnum, UINT32 value);
\r
\r
UINT32 Cz80_Get_Reg(cz80_struc *CPU, INT32 regnum);
\r
void Cz80_Set_Reg(cz80_struc *CPU, INT32 regnum, UINT32 value);
\r
\r
-void Cz80_Set_Fetch(cz80_struc *CPU, UINT32 low_adr, UINT32 high_adr,
UINT32
fetch_adr);
\r
+void Cz80_Set_Fetch(cz80_struc *CPU, UINT32 low_adr, UINT32 high_adr,
FPTR
fetch_adr);
\r
#if CZ80_ENCRYPTED_ROM
\r
void Cz80_Set_Encrypt_Range(cz80_struc *CPU, UINT32 low_adr, UINT32 high_adr, UINT32 decrypted_rom);
\r
#endif
\r
#if CZ80_ENCRYPTED_ROM
\r
void Cz80_Set_Encrypt_Range(cz80_struc *CPU, UINT32 low_adr, UINT32 high_adr, UINT32 decrypted_rom);
\r
#endif
\r