Homebrew Emulation GameYob, a gameboy emulator for DS

  • Thread starter Thread starter Drenn
  • Start date Start date
  • Views Views 1,014,857
  • Replies Replies 2,250
  • Likes Likes 86
I'm a fan of lameboy, but I'm disappointed that it's been abandoned, and that no source is available. If this is actively worked on, some missing features from lameboy are implemented, and the source is eventually released, I'd see no more need for lameboy.

Will there be support for launching games via arguments on DSTwo? With lameboy when I choose a GBC game in BagPlug, it just loads the emulator, and I have to choose the game again from there.
Apart that arg isn't a DSTwo only feature, can use it on any flashcart that can use hbmenu, please do your emulator MoonShell2 friendly (support for extlink).
THANKS for a new homebrew emulator, i like them all, and specially for a GB/GBC one.

PS: Can some moderator post that thread on main page? I think that's a great news
 
Actually I kind of like lameboy's brutalist approach to menus. Fancy UIs aren't really my thing, plus it's really quick to throw in some temporary debugging options this way... I could probably at least get a font that's nicer to look at. Cheats, palettes, and wifi linking are definitely on my to-do list.

Could you do a separate UI for the debug build or at least touch screen menus and emulation resume while using menus?
I was thinking about NiFi as in the local play that NesDS uses, not WiFi. I don't think WiFi would be that useful anyways since most people have WPA nowadays.
 
Could you do a separate UI for the debug build or at least touch screen menus and emulation resume while using menus?
I was thinking about NiFi as in the local play that NesDS uses, not WiFi. I don't think WiFi would be that useful anyways since most people have WPA nowadays.
Oh, I thought that was a typo. I suppose NiFi is how DS games communicate without needing a network? I'll have to check out nesDS's source code... as for the UI, I'll give it some thought, but it's low-priority. I'll probably make a touch interface eventually.
 
Oh, I thought that was a typo. I suppose NiFi is how DS games communicate without needing a network? I'll have to check out nesDS's source code... as for the UI, I'll give it some thought, but it's low-priority. I'll probably make a touch interface eventually.
In terms of UI, if the argument stuff is implemented properly it should be possible for anyone to write their own interface that would work with the emulator. i.e. have a separate .NDS which displays the games, then when one is loaded pass it to the emulator .NDS which would load it.

The advantages of this approach would be (i) less work for you, as you wouldn't have to create the UI [or at least, could delay it much longer] (ii) better than people creating forks of your emulator with their UI added, as this way users could just update the emulator .NDS when the emulator is updated, rather than the fork having to be recompiled with the latest emulator source.

Just a thought.

(Something like DSCovered could probably be made to work, although it would probably require an additional helper loader, but that shouldn't be overly difficult)
 
I've created the repository. I used to have a version which compiles on a PC, but it was becoming too much of a hassle to optimize for DS while maintaining it... so I did some reorganizing and got rid of that. RIP GameYob for PC...

Anyway, the repository has a slightly newer build. Fixed a few cases where debug output prints no matter what "console output" is set to. Also it reads the first argument as a filename. Let me know if it works...

In terms of UI, if the argument stuff is implemented properly it should be possible for anyone to write their own interface that would work with the emulator. i.e. have a separate .NDS which displays the games, then when one is loaded pass it to the emulator .NDS which would load it.

The advantages of this approach would be (i) less work for you, as you wouldn't have to create the UI [or at least, could delay it much longer] (ii) better than people creating forks of your emulator with their UI added, as this way users could just update the emulator .NDS when the emulator is updated, rather than the fork having to be recompiled with the latest emulator source.

Just a thought.

(Something like DSCovered could probably be made to work, although it would probably require an additional helper loader, but that shouldn't be overly difficult)
I still think a menu within my program would be quite important. That would work fine for loading games, but what if you want to access some settings while playing a game? It can't switch back-and-forth with the loader, can it? Anyway I don't consider this an issue right now, the menu may not be pretty, but it's functional. I'll deal with this later, unless of course someone else wants to help out.
 
That's fantastic news indeed.
Any chance to make it run in DSi mode ?
A little extra memory and processing power could go a long way to improve compatibility...however a now-dead Cyclo evo flashcard or a sudokuhaxed DSi would be required and by the looks of it you don't have it.......
I'd gladly let you borrow my sudokuhaxed DSiXL if I was anywhere near you !
Anyway, thanks for the project and I hope you keep up the good work :)
 
In terms of UI, if the argument stuff is implemented properly it should be possible for anyone to write their own interface that would work with the emulator. i.e. have a separate .NDS which displays the games, then when one is loaded pass it to the emulator .NDS which would load it.

The advantages of this approach would be (i) less work for you, as you wouldn't have to create the UI [or at least, could delay it much longer] (ii) better than people creating forks of your emulator with their UI added, as this way users could just update the emulator .NDS when the emulator is updated, rather than the fork having to be recompiled with the latest emulator source.

Just a thought.

(Something like DSCovered could probably be made to work, although it would probably require an additional helper loader, but that shouldn't be overly difficult)
But if something else is just passing args through its really not doing anything but selecting the game and possibly a save file, which works just fine with a simple text based interface and is already done with loaders like Moonshell and Bagplug (not to mention that you'd be right back at the default UI right after a single switch of a save, game, or option). It's the scrolling through the menus (scaling options, debug texts, save states, continue emulation button) that feels inefficient and a bit unwieldy about lameboy. Once the source code is up someone else can work on a UI or bring over NesDS's (me? I've never done DS programming but I'm certainly intrested in learning now) and if you like it Drenn you can include it in the main branch.

lol mobile gbatemp I got ninja'd by half an hour, I'll try out the arg loader and look at the github as soon as I get home.
 
But if something else is just passing args through its really not doing anything but selecting the game and possibly a save file, which works just fine with a simple text based interface and is already done with loaders like Moonshell and Bagplug (not to mention that you'd be right back at the default UI right after a single switch of a save, game, or option).

Well ideally, the emulator would be able to auto load a save, and could implement hot keys for save state loading and screen scaling (or maybe just big touch screen buttons?). Then for passing args, you would make up your own favorite configurations to pass to the emulator. There shouldn't be too many options to change once the emulator has good compatibility, so you should only need a menu for selecting games. But for a stand-alone binary of the emulator, it would have to implement its own version of everything anyway.
 
That's fantastic news indeed.
Any chance to make it run in DSi mode ?
A little extra memory and processing power could go a long way to improve compatibility...however a now-dead Cyclo evo flashcard or a sudokuhaxed DSi would be required and by the looks of it you don't have it.......
I'd gladly let you borrow my sudokuhaxed DSiXL if I was anywhere near you !
Anyway, thanks for the project and I hope you keep up the good work :)
I have a DSi, but no access to DSi-mode... and I have no idea how to make DSi homebrew, but the info must be somewhere. If it just involves a recompile without changes to the code, you can test it for me. At this point there's not much I could do with the extra memory, aside from loading the big roms completely into ram. I'm not sure how much difference that would make.
 
you should also check out http://sourceforge.net/projects/gambatte/files/gambatte/ this project is suppose to be a clean and easy to read code for coders who want to develop gameboy emu.
I wish I knew that 2 years ago. The pc version of my emulator is practically perfect, I've only found 1 game with issues, Harry Potter and the Chamber of Secrets. Well, the craziest tech demos wouldn't run either. But most issues in GameYob probably aren't related to the emulation itself, they appeared after porting to the ds.
 
Just tried the argv direct boot with DStwo BAGplug and my game (sqrxz) booted and plays fine- in fact it looks and runs better than on lameboy=)
however, it doesnt seem to like my sub-folder structure (i keep my games in a-l and k-z folders within my Gameboy folder), as when i go to select a new game i get a guru med error.
 
Just tried the argv direct boot with DStwo BAGplug and my game (sqrxz) booted and plays fine- in fact it looks and runs better than on lameboy=)
however, it doesnt seem to like my sub-folder structure (i keep my games in a-l and k-z folders within my Gameboy folder), as when i go to select a new game i get a guru med error.
I just remembered, I was lazy when writing the file chooser and it only supports up to 70 files/directories per folder. Is that the issue?
 
I have a DSi, but no access to DSi-mode... and I have no idea how to make DSi homebrew, but the info must be somewhere. If it just involves a recompile without changes to the code, you can test it for me. At this point there's not much I could do with the extra memory, aside from loading the big roms completely into ram. I'm not sure how much difference that would make.
Well , I've read somewhere that projects recompiled with the latest devkit ( at the time when sudokuhax was new ) would run in DSi mode without problems and support extra speed and memory.
It probably just requires some optimization to make sure that games still run at the right speed.
NesDS for example runs just fine in DSi mode, can boot from the SD card and read / save to it too.
Also it has some extra more demanding screen scaling / filtering options.
I'm not too sure about compatibility though.
Definitely worth a try if you find yourself short on resources on the limited DS hardware.
Not that the DSi is such a power house in comparison, but still some more features can be squeezed in I suppose, plus running homebrew from the SD slot it's always nice.
By the way, yeah, sure, if you need me to test anything count me in , anytime.
 
Maybe you could integrate a feature that a Game Boy Color and Game Boy emulator should have, but Lameboy does not. The Game Boy Color has specialized colour palettes for specific Game Boy cartridges, (the palette file is available on the internet). The reason I use Goomba, the GBA homebrew for playing Game Boy games instead of Lameboy, is that Lameboy has only generic colourization options, but Goomba simulates at least a few of the colour palettes for specific games, (but not all game-specific colour palettes).
 
Class news, love the gameboy and gambatte, this is great stuff...
if its possible in the future to add gb/gbc/sgb pallettes support (official bios support) that would be nice too.
Thank you kind developer :)
 
good call, i would imagine thats it. ive got like 10x that in each folder =)
Ok, it should be fixed now. Try again with the latest build.
Class news, love the gameboy and gambatte, this is great stuff...
if its possible in the future to add gb/gbc/sgb pallettes support (official bios support) that would be nice too.
Thank you kind developer :)
That's on my todo list. In fact the pc version could run the gameboy color bios, I basically just need to re-enable it.
 
  • Like
Reactions: kineticUk

Site & Scene News