Subversion Repositories pentevo

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
716 lvd 1
#pragma once
2
 
3
namespace z80gs
4
{
5
const int GSCPUFQ = 24000000; // hz //12
6
extern const unsigned GSCPUINT;
7
extern unsigned __int64 gs_t_states; // inc'ed with GSCPUINT every gs int
8
 
9
void apply_gs();
10
void init_gs_frame();
11
void flush_gs_frame();
12
 
13
u8 in_gs(unsigned port);
14
void out_gs(unsigned port, u8 val);
15
void reset();
16
void __cdecl BankNames(int i, char *Name);
17
__int64 __cdecl delta();
18
void __cdecl SetLastT();
19
 
20
u8 __fastcall Xm(u32 addr);
21
u8 __fastcall Rm(u32 addr);
22
void __fastcall Wm(u32 addr, u8 val);
23
u8 __fastcall DbgXm(u32 addr);
24
u8 __fastcall DbgRm(u32 addr);
25
void __fastcall DbgWm(u32 addr, u8 val);
26
}
27
 
28
class TGsZ80 : public Z80
29
{
30
public:
31
   TGsZ80(u32 Idx,
32
       TBankNames BankNames, TStep Step, TDelta Delta,
33
       TSetLastT SetLastT, u8 *membits, const TMemIf *FastMemIf, const TMemIf *DbgMemIf) :
34
       Z80(Idx, BankNames, Step, Delta, SetLastT, membits, FastMemIf, DbgMemIf) { }
35
 
36
   virtual u8 *DirectMem(unsigned addr) const override; // get direct memory pointer in debuger
37
/*
38
   virtual unsigned char rm(unsigned addr) override;
39
   virtual unsigned char dbgrm(unsigned addr) override;
40
   virtual void wm(unsigned addr, unsigned char val) override;
41
   virtual void dbgwm(unsigned addr, unsigned char val) override;
42
*/
43
   virtual unsigned char m1_cycle() override;
44
   virtual unsigned char in(unsigned port) override;
45
   virtual void out(unsigned port, unsigned char val) override;
46
   virtual u8 IntVec() override;
47
   virtual void CheckNextFrame() override;
48
   virtual void retn() override;
49
};