-
Notifications
You must be signed in to change notification settings - Fork 22
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
is it possible to load a .gb file? #24
Comments
No, because gbsplay only supports the sound hardware of a Gameboy. Nothing related to screen or buttons is included (well, I think we have vsync/hsync, but that is timing only). You should look for a "real" Gameboy emulator that emulates the whole Gameboy like VisualboyAdvance-M or Gnuboy. |
Ok, I don't know anything about that in detail. @ranma? |
There is rudimentary support for .gb roms, but I only really tested it with one of the Pokemon roms, YMMV. |
Thank you for your replies
Would it be possible to press a button, using a custom plugin? it seems that the gameboy only reads a register at FF00 to know if somme buttons are depressed |
They aren't. A .gb file is raw ROM data; the header is part of the ROM itself, not some separate header. It has a fixed entry point ($0100) and it starts executing from there.
It's a bit more complicated than that:
Not to mention that it's not just input that you'd need to emulate. You'd have to emulate the whole state of the device up to the point when the first track plays. GBS files have their own special cut-down routines for playing a selected song after being given an ID externally. An actual ROM would attempt to initialize most of the GB's hardware, and most likely fail at it. |
Some examples of GB roms that work: VGM files converted from VGM into a GB rom with https://vgmrips.net/wiki/Dmvgm (For some you need to override the default silence timeout) |
great, thanks for your answers and the progress on this issue |
I'd like to load a .gb file, simulate keypresses, and log the register writes.
is it possible or doable with the help of plugins?
Thx
The text was updated successfully, but these errors were encountered: