-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy pathNuanceEmulatorShell.h
63 lines (57 loc) · 1.63 KB
/
NuanceEmulatorShell.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
#ifndef NUANCEEMULATORSHELL_H
#define NUANCEEMULATORSHELL_H
#include "EmulatorShell.h"
#include "QApplication.h"
#include "QObject.h"
#include "QCombobox.h"
#include "QPixmap.h"
#include "NuonEnvironment.h"
#include "NuanceVideoDisplay.h"
#include "NuanceRegisterWindow.h"
#include "NuanceProcessorThread.h"
extern NuonEnvironment *nuonEnv;
class NuanceEmulatorShell : public EmulatorShell
{
public:
NuanceEmulatorShell() : EmulatorShell()
{
setIcon(QPixmap("nuance.bmp","BMP"));
setWFlags(Qt::WidgetFlags::WStyle_DialogBorder);
setMinimumWidth(699);
setMinimumHeight(301);
setMaximumWidth(699);
setMaximumHeight(301);
ddlbMPESelect->setCurrentItem(3);
ddlbRefreshRate->setCurrentItem(3);
processorThread = new NuanceProcessorThread;
processorThread->RegisterEmulatorShell(this);
nuonEnv->RegisterEditControls(ebStdOut, ebStdErr);
}
~NuanceEmulatorShell()
{
if(processorThread)
{
delete processorThread;
}
}
void RegisterApplication(QApplication *);
void RegisterDisplay(NuanceVideoDisplay *);
void RegisterRegisterWindow(NuanceRegisterWindow *);
void UpdateDisassembly(void);
void UpdateButtonStates(bool);
private:
void OnMPESelect(int);
void OnRefreshRate(int);
void OnLoadFile();
void OnStartMPE();
void OnStopMPE();
void OnRunMPE();
void OnResetMPE();
void OnSingleStepMPE();
virtual void timerEvent(QTimerEvent *);
QApplication *registeredApp;
NuanceVideoDisplay *registeredDisplay;
NuanceRegisterWindow *registeredRegisterWindow;
NuanceProcessorThread *processorThread;
};
#endif