2015-02-28 01:51:53 +00:00
|
|
|
struct Program : Emulator::Interface::Bind {
|
|
|
|
//program.cpp
|
2015-08-21 10:56:39 +00:00
|
|
|
Program(lstring args);
|
2015-02-28 01:51:53 +00:00
|
|
|
auto main() -> void;
|
2015-03-02 09:13:28 +00:00
|
|
|
auto quit() -> void;
|
2015-02-28 01:51:53 +00:00
|
|
|
|
|
|
|
//interface.cpp
|
2015-12-21 09:16:47 +00:00
|
|
|
auto loadRequest(uint id, string name, string type, bool required) -> void override;
|
|
|
|
auto loadRequest(uint id, string path, bool required) -> void override;
|
|
|
|
auto saveRequest(uint id, string path) -> void override;
|
|
|
|
auto videoColor(uint source, uint16 alpha, uint16 red, uint16 green, uint16 blue) -> uint32 override;
|
|
|
|
auto videoRefresh(const uint32* palette, const uint32* data, uint pitch, uint width, uint height) -> void override;
|
2015-02-28 01:51:53 +00:00
|
|
|
auto audioSample(int16 lsample, int16 rsample) -> void override;
|
2015-12-21 09:16:47 +00:00
|
|
|
auto inputPoll(uint port, uint device, uint input) -> int16 override;
|
|
|
|
auto inputRumble(uint port, uint device, uint input, bool enable) -> void override;
|
|
|
|
auto dipSettings(const Markup::Node& node) -> uint override;
|
|
|
|
auto path(uint group) -> string override;
|
2015-02-28 01:51:53 +00:00
|
|
|
auto notify(string text) -> void override;
|
|
|
|
|
|
|
|
//media.cpp
|
|
|
|
auto loadMedia(string location) -> void;
|
|
|
|
auto loadMedia(Emulator::Interface& interface, Emulator::Interface::Media& media, const string& location) -> void;
|
2015-03-02 09:13:28 +00:00
|
|
|
auto unloadMedia() -> void;
|
2015-02-28 01:51:53 +00:00
|
|
|
|
2015-04-13 11:16:33 +00:00
|
|
|
//state.cpp
|
2015-12-21 09:16:47 +00:00
|
|
|
auto stateName(uint slot, bool manager = false) -> string;
|
|
|
|
auto loadState(uint slot, bool manager = false) -> bool;
|
|
|
|
auto saveState(uint slot, bool manager = false) -> bool;
|
2015-04-13 11:16:33 +00:00
|
|
|
|
Update to v094r13 release.
byuu says:
This version polishes up the input dialogue (reset, erase, disable
button when item not focused, split device ID from mapping name), adds
color emulation toggle, and add dummy menu items for remaining features
(to be filled in later.)
Also, it now compiles cleanly on Windows with GTK.
I didn't test with TDM-GCC-32, because for god knows what reason, the
32-bit version ships with headers from Windows 95 OSR2 only. So I built
with TDM-GCC-64 with arch=x86.
And uh, apparently, moving or resizing a window causes a Visual C++
runtime exception in the GTK+ DLLs. This doesn't happen with trance or
renshuu built with TDM-GCC-32. So, yeah, like I said, don't use -m32.
2015-03-07 10:21:47 +00:00
|
|
|
//utility.cpp
|
2015-04-21 11:51:57 +00:00
|
|
|
auto powerCycle() -> void;
|
|
|
|
auto softReset() -> void;
|
2015-04-13 11:16:33 +00:00
|
|
|
auto showMessage(const string& text) -> void;
|
|
|
|
auto updateStatusText() -> void;
|
Update to v094r13 release.
byuu says:
This version polishes up the input dialogue (reset, erase, disable
button when item not focused, split device ID from mapping name), adds
color emulation toggle, and add dummy menu items for remaining features
(to be filled in later.)
Also, it now compiles cleanly on Windows with GTK.
I didn't test with TDM-GCC-32, because for god knows what reason, the
32-bit version ships with headers from Windows 95 OSR2 only. So I built
with TDM-GCC-64 with arch=x86.
And uh, apparently, moving or resizing a window causes a Visual C++
runtime exception in the GTK+ DLLs. This doesn't happen with trance or
renshuu built with TDM-GCC-32. So, yeah, like I said, don't use -m32.
2015-03-07 10:21:47 +00:00
|
|
|
auto updateVideoFilter() -> void;
|
|
|
|
auto updateVideoPalette() -> void;
|
2015-06-15 22:26:47 +00:00
|
|
|
auto updateAudio() -> void;
|
2015-11-16 08:38:05 +00:00
|
|
|
auto updateAudioVolume() -> void;
|
2015-06-15 22:26:47 +00:00
|
|
|
auto updateDSP() -> void;
|
Update to v094r13 release.
byuu says:
This version polishes up the input dialogue (reset, erase, disable
button when item not focused, split device ID from mapping name), adds
color emulation toggle, and add dummy menu items for remaining features
(to be filled in later.)
Also, it now compiles cleanly on Windows with GTK.
I didn't test with TDM-GCC-32, because for god knows what reason, the
32-bit version ships with headers from Windows 95 OSR2 only. So I built
with TDM-GCC-64 with arch=x86.
And uh, apparently, moving or resizing a window causes a Visual C++
runtime exception in the GTK+ DLLs. This doesn't happen with trance or
renshuu built with TDM-GCC-32. So, yeah, like I said, don't use -m32.
2015-03-07 10:21:47 +00:00
|
|
|
|
2015-02-28 01:51:53 +00:00
|
|
|
DSP dsp;
|
2015-04-21 11:51:57 +00:00
|
|
|
bool pause = false;
|
2015-02-28 01:51:53 +00:00
|
|
|
|
|
|
|
vector<Emulator::Interface*> emulators;
|
2015-04-13 11:16:33 +00:00
|
|
|
|
2015-02-28 01:51:53 +00:00
|
|
|
vector<string> mediaPaths;
|
2015-04-13 11:16:33 +00:00
|
|
|
vector<string> folderPaths;
|
|
|
|
|
|
|
|
string statusText;
|
|
|
|
string statusMessage;
|
|
|
|
time_t statusTime = 0;
|
2015-02-28 01:51:53 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
extern Program* program;
|