mirror of
https://github.com/bsnes-emu/bsnes.git
synced 2025-10-05 05:11:51 +02:00
byuu says: Changelog: - fixed LYC interrupt at LY=0 (fixes Makai Toushi SaGa) - fixed MBC3 ROM bank mapping (fixes Harvest Moon GBC) - added Super Game Boy MLT_REQ support to JOYP, needed for ICD2-R emulation - temporarily changed System::run() to execute only four cycles before exiting for bsnes, will make two versions later - uses actual boot ROMs, has DMG+SGB1 for now. Need SGB2, don't care about CGB. Defaults to SGB1, no way to select just yet. DMG 4-second wait is annoying. Does not force games to act like SGB on bgameboy itself, because that has no ICD2 and fails the required MLT_REQ check
27 lines
475 B
C++
Executable File
27 lines
475 B
C++
Executable File
class Interface;
|
|
|
|
enum class Input : unsigned {
|
|
Up, Down, Left, Right, B, A, Select, Start,
|
|
};
|
|
|
|
struct System : MMIO {
|
|
struct BootROM {
|
|
static const uint8 dmg[256];
|
|
static const uint8 sgb[256];
|
|
} bootROM;
|
|
|
|
uint8 mmio_read(uint16 addr);
|
|
void mmio_write(uint16 addr, uint8 data);
|
|
|
|
void init(Interface*);
|
|
void power();
|
|
void run();
|
|
|
|
Interface *interface;
|
|
unsigned clocks_executed;
|
|
};
|
|
|
|
#include <gameboy/interface/interface.hpp>
|
|
|
|
extern System system;
|