mirror of
https://github.com/bsnes-emu/bsnes.git
synced 2025-10-04 17:31:50 +02:00
Initial commit of bgameboy v000.
The source tarball also included empty obj/ and out/ directories which git does not support. byuu says: Project started, so basically everything is new. It's basically a rough skeleton that mimics bsnes project structure. Eventually the src/gameboy folder will be copied into bsnes-official and used by the chip/supergameboy core. The middleware layer (supergameboy/interface) will be merged into a new chip/icd2 folder that will represent direct Super Game Boy emulation in the future. At least, if all goes according to plan. There is a simple GUI that can load ROMs, but do nothing after it. It's not hooked up to ruby yet. There is a basic system class and interface to expose the video/audio/input functions. There is a basic memory bus that doesn't support any MBCs yet. There is a CPU skeleton that only handles easy read/write access to the CPU registers (AF is a really fucked up register.) The core is not hooked up to libco yet, but I intend for it to be, so that I can run the CPU + LCD how I like. If it turns out the LCD+audio is easily enslavable, then I'll probably drop libco and just run it like a regular emulator, using a thread wrapper around it in bsnes only. We'll see. The CPU doesn't actually support any opcodes, and loading a ROM won't actually execute anything.
This commit is contained in:
26
ui/main.cpp
Executable file
26
ui/main.cpp
Executable file
@@ -0,0 +1,26 @@
|
||||
#include "base.hpp"
|
||||
Application application;
|
||||
|
||||
#include "interface.cpp"
|
||||
|
||||
#include "general/main-window.cpp"
|
||||
|
||||
void Application::main(int argc, char **argv) {
|
||||
quit = false;
|
||||
|
||||
mainWindow.create();
|
||||
|
||||
mainWindow.setVisible();
|
||||
|
||||
GameBoy::system.init(&interface);
|
||||
|
||||
while(quit == false) {
|
||||
OS::run();
|
||||
}
|
||||
}
|
||||
|
||||
int main(int argc, char **argv) {
|
||||
application.main(argc, argv);
|
||||
|
||||
return 0;
|
||||
}
|
Reference in New Issue
Block a user