Line 1... |
Line 1... |
#pragma once
|
#pragma once
|
#include "stdafx.h"
|
#include "clsThor.h"
|
#include "clsKeyboard.h"
|
|
|
|
extern char refscreen;
|
extern char refscreen;
|
extern unsigned int dataBreakpoints[30];
|
extern unsigned int dataBreakpoints[30];
|
extern int numDataBreakpoints;
|
extern int numDataBreakpoints;
|
extern int runstop;
|
extern bool runstop;
|
extern clsKeyboard keybd;
|
|
extern volatile unsigned __int8 keybd_status;
|
extern volatile unsigned __int8 keybd_status;
|
extern volatile unsigned __int8 keybd_scancode;
|
extern volatile unsigned __int8 keybd_scancode;
|
|
|
class clsSystem
|
class clsSystem
|
{
|
{
|
public:
|
public:
|
unsigned __int64 memory[16777216]; // 128 MB
|
unsigned __int64 memory[16777216]; // 128 MB
|
unsigned __int64 rom[32768];
|
unsigned __int64 rom[32768];
|
unsigned long VideoMem[4096];
|
unsigned long VideoMem[4096];
|
bool VideoMemDirty[4096];
|
bool VideoMemDirty[4096];
|
|
unsigned long DBGVideoMem[4096];
|
|
bool DBGVideoMemDirty[4096];
|
unsigned int leds;
|
unsigned int leds;
|
int m_z;
|
int m_z;
|
int m_w;
|
int m_w;
|
char write_error;
|
char write_error;
|
unsigned int radr1;
|
unsigned int radr1;
|
unsigned int radr2;
|
unsigned int radr2;
|
bool WriteROM;
|
bool WriteROM;
|
|
bool quit;
|
|
clsThor cpu2;
|
|
clsPIC pic1;
|
|
clsUart uart1;
|
|
clsKeyboard keybd;
|
|
|
clsSystem();
|
clsSystem();
|
void Reset();
|
void Reset();
|
unsigned __int64 Read(unsigned int ad, int sr=0);
|
unsigned __int64 Read(unsigned int ad, int sr=0);
|
unsigned __int64 ReadByte(unsigned int ad);
|
unsigned __int64 ReadByte(unsigned int ad);
|
|
unsigned __int64 ReadChar(unsigned int ad);
|
|
unsigned __int64 ReadHalf(unsigned int ad);
|
int Write(unsigned int ad, unsigned __int64 dat, unsigned int mask, int cr=0);
|
int Write(unsigned int ad, unsigned __int64 dat, unsigned int mask, int cr=0);
|
int random();
|
int random();
|
|
void Run();
|
|
void Step();
|
};
|
};
|
|
|
No newline at end of file
|
No newline at end of file
|