ROLAND  0.70
Amstrad Emulator based on Caprice Source rewritten in C++.
z80.h
Go to the documentation of this file.
1 /***************************************************************************
2  * Copyright (C) by Fred Klaus *
3  * development@fkweb.de *
4  * *
5  * This program is free software; you can redistribute it and/or modify *
6  * it under the terms of the GNU General Public License as published by *
7  * the Free Software Foundation; either version 2 of the License, or *
8  * (at your option) any later version. *
9  * *
10  * This program is distributed in the hope that it will be useful, *
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of *
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
13  * GNU General Public License for more details. *
14  * *
15  * You should have received a copy of the GNU General Public License *
16  * along with this program; if not, write to the *
17  * Free Software Foundation, Inc., *
18  * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
19  ***************************************************************************/
20 #ifndef CPC_Z80_H
21 #define CPC_Z80_H
22 
23 #include "types.h"
24 #include "register.h"
25 
26 namespace cpcx
27 {
28 
29 #define MF2_ACTIVE 1
30 #define MF2_RUNNING 2
31 #define MF2_INVISIBLE 4
32 
33  class Cpc;
34  extern Cpc cpc;
35 
36 #define z80_IN_handler (cpc.*IN_handler)
37 #define z80_OUT_handler (cpc.*OUT_handler)
38 #define z80_wait_states (cpc.*WS_handler)(); iCycleCountSum += iCycleCount;
39 
40 
44  class Z80 final
45  {
46 
47  // using Z80_IN_Handler = tUBYTE (*) (tREGPAIR port);
48  typedef tUBYTE (Cpc::*Z80_IN_Handler) (tREGPAIR port);
49  typedef void (Cpc::*Z80_OUT_Handler)(tREGPAIR port, tUBYTE value);
50  typedef void (Cpc::*Z80_WS_Handler) (void);
51 
52  public:
53  Z80();
55 
56  //typedef void (*CB_WaitStates)(void);
57 
58 
59  enum Flags : tUBYTE
60  {
61  Sflag = 0x80, // sign flag
62  Zflag = 0x40, // zero flag
63  Hflag = 0x10, // halfcarry flag
64  Pflag = 0x04, // parity flag
65  Vflag = 0x04, // overflow flag
66  Nflag = 0x02, // negative flag
67  Cflag = 0x01, // carry flag
68  Xflags = 0x28 // bit 5 & 3 flags
69  };
70 
71  enum Flags2 : tUBYTE
72  {
73  CF = 0x01,
74  NF = 0x02,
75  PF = 0x04,
76  VF = PF,
77  XF = 0x08,
78  HF = 0x10,
79  YF = 0x20,
80  ZF = 0x40,
81  SF = 0x80
82  };
83 
84 
86  {
88  EC_TRACE = 20,
92  };
93 
94 
95  enum opcodes : tUBYTE
96  {
129  };
130 
132  {
165  };
166 
168  {
201  };
202 
203  //void access_video_memory(int repeat_count); // not provided by Z80.c
204 
205  tUBYTE read_mem (tUWORD addr) // returns a tUBYTE from a 16KB memory bank
206  {return (*(membank_read[addr >> 14] + (addr & 0x3fff)));}
207 
208  void write_mem (tUWORD addr, tUBYTE val) // writes a tUBYTE to a 16KB memory bank
209  {*(membank_write[addr >> 14] + (addr & 0x3fff)) = val;}
210 
211  void setMembank_read (tUBYTE bank, tUBYTE* ptr) {membank_read [bank]=ptr;}
212  void setMembank_write(tUBYTE bank, tUBYTE* ptr) {membank_write[bank]=ptr;}
213 
214  void setInHandler (Z80_IN_Handler handler) {IN_handler=handler;}
215  void setOutHandler(Z80_OUT_Handler handler) {OUT_handler=handler;}
216  void setWsHandler (Z80_WS_Handler handler) {WS_handler=handler;}
217 
218 
219  Register & reg() {return z80;}
220 
221  void init();
222  int execute(int cc);
223  void stop() {mStop=true;}
224  void init_tables();
225 
226  int cycleCount() {return iCycleCount;}
227 
228  void mf2stop();
230 
231  //void doNothing() {return;}
232 
235 
236  void initMemMap() {}
237  void endMemMap() {}
238 
239  void z80_pfx_cb();
240  void z80_pfx_dd();
241  void z80_pfx_ddcb();
242  void z80_pfx_ed();
243  void z80_pfx_fd();
244  void z80_pfx_fdcb();
245 
246  inline tUBYTE RES(tUBYTE bit, tUBYTE val);
247  inline tUBYTE RLC(tUBYTE val);
248  inline tUBYTE RL (tUBYTE val);
249  inline tUBYTE RRC(tUBYTE val);
250  inline tUBYTE RR (tUBYTE val);
251  inline tUBYTE SET(tUBYTE bit, tUBYTE val);
252  inline tUBYTE SLA(tUBYTE val);
253  inline tUBYTE SLL(tUBYTE val);
254  inline tUBYTE SRA(tUBYTE val);
255  inline tUBYTE SRL(tUBYTE val);
256 
257  private:
259 
262 
266 
269 
274 
275  bool mStop;
276 
277  static const tUBYTE irep_tmp1[4][4];
278  static const tUBYTE drep_tmp1[4][4];
279  static const tUBYTE breg_tmp2[256];
280  static const tUBYTE cc_op[256];
281  static const tUBYTE cc_cb[256];
282  static const tUBYTE cc_ed[256];
283  static const tUBYTE cc_xy[256];
284  static const tUBYTE cc_ex[256];
285  static const tUBYTE cc_xycb[256];
286  static const tUWORD DAATable[2048];
287 
288  tUBYTE SZ[256]; // zero and sign flags
289  tUBYTE SZ_BIT[256]; // zero, sign and parity/overflow (=zero) flags for BIT opcode
290  tUBYTE SZP[256]; // zero, sign and parity flags
291  tUBYTE SZHV_inc[256]; // zero, sign, half carry and overflow flags INC r8
292  tUBYTE SZHV_dec[256]; // zero, sign, half carry and overflow flags DEC r8
293 
294  };
295 
296 } // cpc
297 
298 #endif // CPC_Z80_H
299 
Definition: z80.h:178
Definition: z80.h:111
Definition: z80.h:98
Definition: z80.h:159
Definition: z80.h:142
EDcodes
Definition: z80.h:167
Definition: z80.h:162
Definition: z80.h:112
void init()
Definition: z80.cpp:446
Definition: z80.h:116
Definition: z80.h:177
Definition: z80.h:161
Definition: z80.h:137
Definition: z80.h:105
Definition: z80.h:181
Definition: z80.h:98
Definition: z80.h:152
Definition: z80.h:103
Definition: z80.h:196
Definition: z80.h:117
void setMF2ExitAddr(tUDWORD addr)
Definition: z80.h:229
Definition: z80.h:139
void(Cpc::* Z80_WS_Handler)(void)
Definition: z80.h:50
Definition: z80.h:155
Definition: z80.h:195
Definition: z80.h:176
Definition: z80.h:164
Definition: z80.h:158
Definition: z80.h:183
Definition: z80.h:125
Definition: z80.h:128
Definition: z80.h:118
Definition: z80.h:114
Definition: z80.h:99
Definition: z80.h:103
tUBYTE RLC(tUBYTE val)
Definition: z80.cpp:370
Definition: z80.h:73
Definition: z80.h:194
Definition: z80.h:153
Definition: z80.h:126
Definition: z80.h:156
Definition: z80.h:198
Definition: z80.h:161
Definition: z80.h:196
Definition: z80.h:192
Definition: z80.h:163
Definition: z80.h:161
Definition: z80.h:143
Definition: z80.h:193
int iCycleCount
Definition: z80.h:271
tUBYTE intPending()
Definition: z80.h:234
Definition: z80.h:190
Definition: z80.h:158
Definition: z80.h:153
tUBYTE RL(tUBYTE val)
Definition: z80.cpp:379
Definition: z80.h:188
Definition: z80.h:153
Definition: z80.h:188
Definition: z80.h:123
Definition: z80.h:103
Definition: z80.h:170
Definition: z80.h:183
Definition: z80.h:98
Definition: z80.h:180
Definition: z80.h:127
Definition: z80.h:128
Definition: z80.h:164
Definition: z80.h:120
Definition: z80.h:171
void setOutHandler(Z80_OUT_Handler handler)
Definition: z80.h:215
Definition: z80.h:137
Definition: z80.h:99
Definition: z80.h:74
Definition: z80.h:122
Definition: z80.h:179
void mf2stop()
Definition: z80.cpp:503
Definition: z80.h:115
Definition: z80.h:199
Definition: z80.h:151
Definition: z80.h:105
Definition: z80.h:106
Definition: z80.h:124
Definition: z80.h:108
Definition: z80.h:127
Definition: z80.h:134
Definition: z80.h:88
Definition: z80.h:171
Definition: z80.h:128
Definition: z80.h:133
Definition: z80.h:104
Definition: z80.h:111
Definition: z80.h:154
Definition: z80.h:79
Definition: z80.h:175
Definition: z80.h:198
Definition: z80.h:199
Definition: z80.h:179
Definition: z80.h:126
Definition: z80.h:169
Definition: z80.h:148
Definition: z80.h:156
Definition: z80.h:112
Definition: z80.h:145
tUBYTE SZHV_inc[256]
Definition: z80.h:291
Definition: z80.h:175
Definition: z80.h:104
Definition: z80.h:192
Definition: z80.h:175
Definition: z80.h:181
Definition: z80.h:169
Definition: z80.h:100
Definition: z80.h:171
Definition: z80.h:159
Definition: z80.h:127
Definition: z80.h:158
Definition: z80.h:126
Definition: z80.h:154
Definition: z80.h:110
Definition: z80.h:115
Definition: z80.h:192
Definition: z80.h:183
Definition: z80.h:160
Definition: z80.h:142
Definition: z80.h:177
Definition: z80.h:173
Z80_IN_Handler IN_handler
Definition: z80.h:263
tUBYTE SLL(tUBYTE val)
Definition: z80.cpp:417
Definition: z80.h:128
Definition: z80.h:142
Definition: z80.h:126
Definition: z80.h:158
Definition: z80.h:190
Definition: z80.h:153
Definition: z80.h:78
Definition: z80.h:133
Definition: z80.h:135
Definition: z80.h:102
Definition: z80.h:116
Definition: z80.h:126
Definition: z80.h:117
Definition: z80.h:116
Definition: z80.h:115
CBcodes
Definition: z80.h:131
Definition: z80.h:156
Definition: z80.h:159
void init_tables()
Definition: z80.cpp:461
Definition: z80.h:140
tUBYTE SRL(tUBYTE val)
Definition: z80.cpp:435
Definition: z80.h:151
Definition: z80.h:99
Definition: z80.h:119
Definition: z80.h:105
Definition: z80.h:141
Definition: z80.h:103
Definition: z80.h:111
Definition: z80.h:195
Definition: z80.h:75
Definition: z80.h:148
tUBYTE read_mem(tUWORD addr)
Definition: z80.h:205
Definition: z80.h:105
Definition: z80.h:147
Definition: z80.h:173
Definition: z80.h:184
Definition: z80.h:191
Definition: z80.h:101
Definition: z80.h:109
Definition: z80.h:200
Definition: z80.h:147
Definition: z80.h:186
Definition: z80.h:164
Definition: z80.h:136
Definition: z80.h:116
Definition: z80.h:144
Definition: z80.h:138
Definition: z80.h:157
Namespace for all CPC components.
Definition: colours.cpp:22
tUBYTE SZHV_dec[256]
Definition: z80.h:292
Definition: z80.h:162
Definition: z80.h:164
Definition: z80.h:195
Definition: z80.h:125
Definition: z80.h:182
Definition: z80.h:139
void z80_pfx_dd()
Definition: z80.cpp:2479
Definition: z80.h:115
Definition: z80.h:118
Definition: z80.h:146
Definition: z80.h:195
Definition: z80.h:179
Definition: z80.h:187
Definition: z80.h:196
Definition: z80.h:160
Definition: z80.h:155
int iWSAdjust
Definition: z80.h:273
Definition: z80.h:120
Definition: z80.h:169
Definition: z80.h:109
Definition: z80.h:149
Definition: z80.h:154
Definition: z80.h:176
static const tUBYTE breg_tmp2[256]
Definition: z80.h:279
Definition: z80.h:119
Definition: z80.h:128
Definition: z80.h:108
Definition: z80.h:120
void setMembank_read(tUBYTE bank, tUBYTE *ptr)
Definition: z80.h:211
Definition: z80.h:189
uint32_t tUDWORD
Definition: types.h:86
Definition: z80.h:187
Definition: z80.h:109
Definition: z80.h:136
Definition: z80.h:160
Definition: z80.h:133
Definition: z80.h:102
Definition: z80.h:139
Definition: z80.h:124
Definition: z80.h:102
Definition: z80.h:149
Definition: z80.h:179
Definition: z80.h:189
Definition: z80.h:138
Definition: z80.h:138
Definition: z80.h:122
Definition: z80.h:124
Definition: z80.h:102
Definition: z80.h:152
Definition: z80.h:180
Definition: z80.h:157
Definition: z80.h:135
Definition: z80.h:105
Definition: z80.h:199
Definition: z80.h:189
Definition: z80.h:124
Definition: z80.h:173
Definition: z80.h:97
Definition: z80.h:145
Definition: z80.h:110
Definition: z80.h:192
Definition: z80.h:180
Definition: z80.h:151
Definition: z80.h:182
Definition: z80.h:87
Definition: z80.h:134
Definition: z80.h:91
Definition: z80.h:137
Definition: z80.h:183
Definition: z80.h:193
Definition: z80.h:81
Definition: z80.h:117
Definition: z80.h:144
Definition: z80.h:110
Definition: z80.h:190
Definition: z80.h:181
Definition: z80.h:153
Definition: z80.h:173
Definition: z80.h:97
Definition: z80.h:138
void write_mem(tUWORD addr, tUBYTE val)
Definition: z80.h:208
Definition: z80.h:136
Definition: z80.h:106
Definition: z80.h:154
Definition: z80.h:113
Definition: z80.h:191
Definition: z80.h:108
Definition: z80.h:191
Definition: z80.h:107
Definition: z80.h:189
Definition: z80.h:152
Definition: z80.h:143
static const tUBYTE cc_op[256]
Definition: z80.h:280
Definition: z80.h:103
Definition: z80.h:135
Definition: z80.h:174
Cpc cpc
Definition: z80.h:33
Definition: z80.h:173
Definition: z80.h:173
Definition: z80.h:189
tUBYTE SZP[256]
Definition: z80.h:290
Definition: z80.h:113
Definition: z80.h:123
Definition: z80.h:120
Definition: z80.h:154
void(Cpc::* Z80_OUT_Handler)(tREGPAIR port, tUBYTE value)
Definition: z80.h:49
Definition: z80.h:139
Z80()
Definition: z80.cpp:444
Definition: z80.h:145
void stop()
Definition: z80.h:223
Definition: z80.h:120
Definition: z80.h:185
Definition: z80.h:97
tDWORD dwMF2ExitAddr
Definition: z80.h:267
Definition: z80.h:121
void z80_pfx_ddcb()
Definition: z80.cpp:3596
Definition: z80.h:191
Definition: z80.h:184
int iCycleCountSum
Definition: z80.h:270
Definition: z80.h:140
Definition: z80.h:110
Definition: z80.h:185
Definition: z80.h:100
Definition: z80.h:136
Definition: z80.h:171
Definition: z80.h:97
Definition: z80.h:148
Definition: z80.h:80
Definition: z80.h:181
Definition: z80.h:106
Definition: z80.h:163
Definition: z80.h:101
Definition: z80.h:124
Definition: z80.h:141
Definition: z80.h:174
Definition: z80.h:150
Definition: z80.h:135
Definition: z80.h:112
Definition: z80.h:133
Definition: z80.h:177
Definition: z80.h:111
Definition: z80.h:123
Definition: z80.h:137
Definition: z80.h:179
Definition: z80.h:175
Definition: z80.h:152
Definition: z80.h:193
Definition: z80.h:149
tUBYTE SLA(tUBYTE val)
Definition: z80.cpp:408
tUBYTE RR(tUBYTE val)
Definition: z80.cpp:397
Definition: z80.h:148
Definition: z80.h:161
Definition: z80.h:200
Definition: z80.h:143
Definition: z80.h:194
Definition: z80.h:137
Definition: z80.h:196
Definition: z80.h:101
Definition: z80.h:115
Definition: z80.h:161
Definition: z80.h:142
Definition: z80.h:191
static const tUBYTE cc_cb[256]
Definition: z80.h:281
Definition: z80.h:120
Definition: z80.h:76
Definition: z80.h:194
Definition: z80.h:156
Definition: z80.h:149
Definition: z80.h:191
Definition: z80.h:172
Definition: z80.h:177
Definition: z80.h:189
Definition: z80.h:175
Definition: z80.h:106
Definition: z80.h:183
Definition: z80.h:151
Definition: z80.h:182
tUBYTE(Cpc::* Z80_IN_Handler)(tREGPAIR port)
Definition: z80.h:48
Definition: z80.h:146
Definition: z80.h:163
Definition: z80.h:137
Definition: z80.h:120
Definition: z80.h:176
Definition: z80.h:122
Definition: z80.h:156
void setIntPending(tUBYTE ip)
Definition: z80.h:233
Definition: z80.h:99
Definition: z80.h:196
static const tUBYTE cc_ed[256]
Definition: z80.h:282
Definition: z80.h:187
Definition: z80.h:194
Definition: z80.h:109
Definition: z80.h:124
Definition: z80.h:197
Definition: z80.h:140
Definition: z80.h:107
Definition: z80.h:144
Definition: z80.h:160
Definition: z80.h:111
Definition: z80.h:146
static const tUBYTE irep_tmp1[4][4]
Definition: z80.h:277
Definition: z80.h:184
Definition: z80.h:179
Definition: z80.h:181
Definition: z80.h:182
Definition: z80.h:101
Definition: z80.h:111
Definition: z80.h:89
Definition: z80.h:101
Definition: z80.h:90
Definition: z80.h:102
Definition: z80.h:111
bool mStop
Definition: z80.h:275
Definition: z80.h:119
Definition: z80.h:199
Definition: z80.h:118
Definition: z80.h:134
tUBYTE RES(tUBYTE bit, tUBYTE val)
Definition: z80.cpp:368
Definition: z80.h:141
Definition: z80.h:145
Definition: z80.h:170
Definition: z80.h:163
Definition: z80.h:127
Definition: z80.h:135
Definition: z80.h:192
Definition: z80.h:135
Definition: z80.h:198
Definition: z80.h:172
Definition: z80.h:98
Definition: z80.h:123
Definition: z80.h:174
Definition: z80.h:186
Definition: z80.h:136
Definition: z80.h:189
Definition: z80.h:157
Definition: z80.h:177
Definition: z80.h:152
Definition: z80.h:184
Definition: z80.h:101
Definition: z80.h:118
Definition: z80.h:176
Definition: z80.h:114
Definition: z80.h:109
Definition: z80.h:173
Definition: z80.h:148
Definition: z80.h:178
Get byte from port
Definition: 8255.txt:134
Definition: z80.h:98
Definition: z80.h:152
Definition: z80.h:120
Definition: z80.h:172
Definition: z80.h:134
int execute(int cc)
Definition: z80.cpp:516
Definition: z80.h:193
Definition: z80.h:104
Definition: z80.h:174
tUBYTE SZ_BIT[256]
Definition: z80.h:289
Definition: z80.h:157
Definition: z80.h:141
Definition: z80.h:179
Definition: z80.h:44
static const tUBYTE cc_xycb[256]
Definition: z80.h:285
Definition: z80.h:148
Flags2
Definition: z80.h:71
Definition: z80.h:140
Definition: z80.h:170
Definition: z80.h:153
Definition: z80.h:98
Definition: z80.h:195
Definition: z80.h:123
Definition: z80.h:128
Definition: z80.h:107
Definition: z80.h:159
tDWORD dwMF2Flags
Definition: z80.h:268
Definition: z80.h:113
Definition: z80.h:114
tUBYTE * membank_write[4]
Definition: z80.h:261
Definition: z80.h:149
static const tUWORD DAATable[2048]
Definition: z80.h:286
Definition: z80.h:199
Definition: z80.h:178
Definition: z80.h:164
Definition: z80.h:149
Definition: z80.h:125
Definition: z80.h:126
Definition: z80.h:112
Definition: z80.h:196
Definition: z80.h:160
Definition: z80.h:108
Definition: z80.h:119
Definition: z80.h:113
Definition: z80.h:187
Definition: z80.h:185
Definition: z80.h:126
Definition: z80.h:197
Definition: z80.h:149
Definition: z80.h:185
Definition: z80.h:182
Definition: z80.h:198
Definition: z80.h:121
Definition: z80.h:145
Definition: z80.h:147
Definition: z80.h:160
Definition: z80.h:193
Definition: z80.h:103
void initMemMap()
Definition: z80.h:236
Definition: z80.h:200
Definition: z80.h:172
Definition: z80.h:121
Definition: z80.h:161
Definition: z80.h:124
Definition: z80.h:180
Definition: z80.h:188
Definition: z80.h:108
opcodes
Definition: z80.h:95
Definition: z80.h:110
Definition: z80.h:177
Definition: z80.h:114
Definition: z80.h:140
Definition: z80.h:106
Definition: z80.h:195
int iCycleCountInit
Definition: z80.h:272
Definition: z80.h:186
void setWsHandler(Z80_WS_Handler handler)
Definition: z80.h:216
Definition: z80.h:155
Definition: z80.h:170
Definition: z80.h:100
Definition: z80.h:190
Definition: z80.h:125
Definition: z80.h:194
Definition: z80.h:187
Definition: z80.h:181
Definition: z80.h:140
Definition: z80.h:121
Definition: z80.h:178
Definition: z80.h:155
Definition: z80.h:133
Definition: z80.h:191
Definition: z80.h:157
Definition: z80.h:142
Definition: z80.h:199
Definition: z80.h:141
Definition: z80.h:200
Definition: z80.h:113
Definition: z80.h:178
Definition: z80.h:109
Definition: z80.h:158
tUBYTE SZ[256]
Definition: z80.h:288
Definition: z80.h:108
Definition: z80.h:154
Definition: z80.h:128
Definition: z80.h:162
Definition: z80.h:156
Definition: z80.h:151
Definition: z80.h:114
Definition: z80.h:104
Definition: z80.h:157
Definition: z80.h:107
Definition: z80.h:123
Definition: z80.h:116
Definition: z80.h:174
Definition: z80.h:146
Definition: z80.h:125
Definition: z80.h:110
Definition: z80.h:150
Definition: z80.h:197
void setInHandler(Z80_IN_Handler handler)
Definition: z80.h:214
Definition: z80.h:98
void endMemMap()
Definition: z80.h:237
Definition: z80.h:114
Definition: z80.h:113
Definition: z80.h:106
static const tUBYTE drep_tmp1[4][4]
Definition: z80.h:278
Definition: z80.h:139
Definition: z80.h:121
Definition: z80.h:117
Definition: z80.h:185
Definition: z80.h:133
Definition: z80.h:169
Definition: z80.h:104
Definition: z80.h:122
Definition: z80.h:184
Definition: z80.h:102
Definition: z80.h:138
Definition: z80.h:161
Definition: z80.h:111
Definition: z80.h:163
Definition: z80.h:136
Definition: z80.h:190
Definition: z80.h:159
Definition: z80.h:117
Definition: z80.h:138
Definition: z80.h:109
Definition: z80.h:156
Definition: z80.h:134
Definition: z80.h:148
Definition: z80.h:142
Definition: z80.h:101
Definition: z80.h:144
Definition: z80.h:135
Definition: z80.h:197
Definition: z80.h:105
Definition: z80.h:99
Definition: z80.h:154
Definition: z80.h:186
Definition: z80.h:119
Definition: z80.h:127
Definition: z80.h:146
Definition: z80.h:99
Definition: z80.h:187
Definition: z80.h:143
Definition: z80.h:184
Definition: z80.h:176
Definition: z80.h:195
Definition: z80.h:187
Definition: z80.h:98
Definition: z80.h:107
Definition: z80.h:134
Definition: z80.h:185
Definition: z80.h:175
Definition: z80.h:125
Definition: z80.h:146
static const tUBYTE cc_xy[256]
Definition: z80.h:283
Definition: z80.h:121
Definition: z80.h:122
Definition: z80.h:188
Definition: z80.h:160
Definition: z80.h:175
Definition: z80.h:183
Definition: z80.h:108
Definition: z80.h:194
Definition: z80.h:159
Definition: z80.h:104
Definition: z80.h:192
void z80_pfx_fdcb()
Definition: z80.cpp:6421
Definition: z80.h:99
Definition: z80.h:164
Definition: z80.h:105
Definition: z80.h:77
Definition: z80.h:150
Definition: z80.h:114
Definition: z80.h:112
Definition: z80.h:192
Definition: z80.h:186
Definition: z80.h:150
Definition: z80.h:127
Definition: z80.h:184
Definition: z80.h:97
Definition: z80.h:134
Definition: z80.h:151
Definition: z80.h:198
Definition: z80.h:158
Definition: z80.h:170
Definition: z80.h:155
Definition: z80.h:113
Definition: z80.h:139
Definition: register.h:36
Definition: z80.h:200
Definition: z80.h:110
Definition: z80.h:118
void setMembank_write(tUBYTE bank, tUBYTE *ptr)
Definition: z80.h:212
Definition: z80.h:125
Register & reg()
Definition: z80.h:219
Definition: z80.h:192
Definition: z80.h:176
Definition: z80.h:115
Definition: z80.h:193
Definition: z80.h:110
Definition: z80.h:107
Definition: z80.h:187
Definition: z80.h:146
#define ROLAND_DEFAULT
Definition: compspec.h:46
uint8_t tUBYTE
Definition: types.h:74
Definition: z80.h:173
Definition: z80.h:143
Definition: z80.h:178
Definition: z80.h:163
tUBYTE SRA(tUBYTE val)
Definition: z80.cpp:426
Definition: z80.h:157
Definition: z80.h:100
Definition: z80.h:155
Definition: z80.h:144
Definition: z80.h:185
Definition: z80.h:172
Definition: z80.h:101
Definition: z80.h:97
Definition: z80.h:182
Definition: z80.h:118
Definition: z80.h:186
int cycleCount()
Definition: z80.h:226
Definition: z80.h:137
Definition: z80.h:140
Definition: z80.h:162
Definition: z80.h:175
Definition: z80.h:139
Definition: z80.h:185
Definition: z80.h:124
Definition: z80.h:97
Definition: z80.h:189
Definition: z80.h:135
Definition: z80.h:119
Definition: z80.h:123
Definition: z80.h:102
Definition: z80.h:178
Definition: z80.h:97
Definition: z80.h:106
void z80_pfx_ed()
Definition: z80.cpp:4673
Definition: z80.h:172
Definition: z80.h:138
Definition: z80.h:200
Definition: z80.h:181
Definition: z80.h:161
Definition: z80.h:119
Definition: z80.h:144
Definition: z80.h:100
Definition: z80.h:108
Definition: z80.h:177
Definition: z80.h:174
Definition: z80.h:141
Definition: z80.h:147
Definition: z80.h:180
Definition: z80.h:136
Definition: z80.h:197
Definition: z80.h:147
Definition: z80.h:159
Definition: z80.h:100
Definition: z80.h:176
Definition: z80.h:141
Definition: z80.h:105
Definition: z80.h:174
Definition: z80.h:147
Definition: z80.h:199
Definition: z80.h:180
Definition: z80.h:145
Definition: z80.h:107
Definition: z80.h:169
Definition: z80.h:143
Definition: z80.h:136
Definition: z80.h:100
Definition: z80.h:139
Definition: z80.h:191
Definition: z80.h:151
Definition: z80.h:162
Definition: z80.h:148
Definition: z80.h:193
Definition: z80.h:162
Definition: z80.h:160
Definition: z80.h:194
Definition: cpc.h:61
Definition: z80.h:122
Definition: z80.h:182
Definition: z80.h:116
Definition: z80.h:127
Definition: z80.h:126
Definition: z80.h:194
Definition: z80.h:195
Register z80
Definition: z80.h:258
Definition: z80.h:193
Definition: z80.h:121
Definition: z80.h:200
Definition: z80.h:198
Definition: z80.h:177
Definition: z80.h:103
Definition: z80.h:152
Definition: z80.h:144
uint16_t tUWORD
Definition: types.h:80
Definition: z80.h:112
Definition: z80.h:103
Definition: z80.h:183
tUBYTE RRC(tUBYTE val)
Definition: z80.cpp:388
Definition: z80.h:127
Definition: z80.h:151
Definition: z80.h:197
Definition: z80.h:154
Definition: z80.h:115
Definition: z80.h:169
Definition: z80.h:182
Definition: z80.h:155
Definition: z80.h:162
Definition: z80.h:122
ExitCode
Definition: z80.h:85
Definition: z80.h:123
Definition: z80.h:133
Definition: z80.h:141
Definition: z80.h:174
Definition: z80.h:147
Definition: z80.h:150
Definition: z80.h:171
Definition: z80.h:153
Definition: z80.h:186
Definition: z80.h:172
Definition: z80.h:188
Definition: z80.h:117
Definition: z80.h:186
Definition: z80.h:188
Definition: z80.h:134
Definition: z80.h:122
Definition: z80.h:164
Definition: z80.h:179
Z80_OUT_Handler OUT_handler
Definition: z80.h:264
Definition: z80.h:171
Definition: z80.h:112
Definition: z80.h:112
Definition: z80.h:196
Definition: z80.h:190
Definition: z80.h:197
Definition: z80.h:104
Definition: z80.h:181
Definition: z80.h:145
Definition: z80.h:145
Definition: z80.h:169
Definition: z80.h:163
Definition: z80.h:176
Definition: z80.h:199
Definition: z80.h:178
Definition: z80.h:162
Definition: z80.h:184
Definition: z80.h:170
Definition: z80.h:152
Definition: z80.h:143
Definition: z80.h:113
Definition: z80.h:190
Definition: z80.h:158
Definition: z80.h:118
Definition: z80.h:125
Definition: z80.h:188
Definition: z80.h:170
Definition: z80.h:170
Definition: z80.h:158
Definition: z80.h:157
tUBYTE SET(tUBYTE bit, tUBYTE val)
Definition: z80.cpp:406
Definition: z80.h:147
Definition: z80.h:109
Definition: z80.h:171
static const tUBYTE cc_ex[256]
Definition: z80.h:284
Definition: z80.h:144
Definition: z80.h:142
Definition: z80.h:106
Definition: z80.h:198
Definition: z80.h:142
Definition: z80.h:117
Definition: z80.h:172
Definition: z80.h:121
Definition: z80.h:133
Definition: z80.h:99
Definition: z80.h:116
Definition: z80.h:100
Definition: z80.h:200
Definition: z80.h:150
tUBYTE int_pending
Definition: register.h:48
Definition: z80.h:197
Definition: z80.h:190
Definition: z80.h:114
Definition: z80.h:164
Definition: z80.h:146
Definition: z80.h:138
Definition: z80.h:115
Definition: z80.h:143
Definition: z80.h:196
Definition: z80.h:169
Definition: z80.h:155
Definition: z80.h:104
Definition: z80.h:156
int32_t tDWORD
Definition: types.h:52
Z80_WS_Handler WS_handler
Definition: z80.h:265
Definition: z80.h:163
Definition: z80.h:116
Definition: z80.h:137
Definition: z80.h:149
Definition: z80.h:188
void z80_pfx_cb()
Definition: z80.cpp:1627
Definition: z80.h:198
Definition: z80.h:159
Definition: z80.h:140
Definition: z80.h:150
Definition: z80.h:171
Definition: z80.h:183
void z80_pfx_fd()
Definition: z80.cpp:5304
Definition: z80.h:117
Definition: z80.h:128
Definition: z80.h:102
tUBYTE * membank_read[4]
Definition: z80.h:260
Definition: z80.h:118
Definition: z80.h:107
Definition: z80.h:153
Definition: z80.h:150
Definition: z80.h:119
Definition: z80.h:180
Definition: z80.h:180