Lemonboy2x Emu


juanvvc said:
doc5avage said:
Cool, so this is changable? or would it be better if I just made a subfolder of each set of 256 roms? Will that work?
There is not subfolder support at this moment, but I will code it in the near future. The limit is changeable only in the code, and the next version will have a higher limit. 1000 is ok? 2000?


According to wikipedia there are 476 licensed gbc games.
And for original gameboy, wikipedia, has 712 games I think you will be safe with 1256.

Thoughts?

Thanks Juanvvc

Edit: Silly me was linking and referring to NES rather than gb/gbc
 
Last edited by a moderator:
Nice work Juanvvc! Gnuboy2x was good but still not perfect. This has a lot of promise. :)

Is the source going to be made available so others can contribute?

Obviously noticed the pauses (wondering if this is when it emulates memory access) which slow things down and others have mentioned. Also the sound is not perfect (it suffers the same unaudible speech on games like Pokemon Yellow, you can't hear Pikachu make any other noise than... well... noise heh) but it's a nice start.

Saves are compatible with Gnuboy2x, just copy them between the saves directory and remove the .gb extension.

The keys could use some work though, it's very easy to accidentally save to a slot when you mean to load, and also go back to the main menu. Always been a fan of combinations to do things like this.
 
RobertJ said:
The keys could use some work though, it's very easy to accidentally save to a slot when you mean to load, and also go back to the main menu. Always been a fan of combinations to do things like this.
In other emu's (I think picodrive), it will give you a confirm dialog before overwriting a save. Would be good to stick to standards.
 
Last edited by a moderator:
Thanks, doc5avage, but we are talking about Gameboy here :) In the same place (http://147.83.47.153/~juanvi/lemonboy2x.zip) I have just uploaded a quick version with these minor changes:

- L/R support for page up/down
- List up to 1024 games
- More files in each screen (10, it was 8)
- Framelimit bug solved. Do not wait while loading data
- Customizable roms path: open etc/system.gp2x and write your path in romsdir . Example: "set romsdir /mnt/sd/roms/gameboy"

To do in the next days:
- quick moves in list holding up/down/l/r
- compilation with profiling to gain speed
- the sound bug
- previews for games
- support for subdirectories in the rom list

If you want to test the new version you should overwrite at least the files lemon2x.gpe and etc/system.gp2x, or use a clean install.

RobertJ said:
it's very easy to accidentally save to a slot when you mean to load, and also go back to the main menu. Always been a fan of combinations to do things like this.
In Picodrive I deactivate the overwrite confirmation :), but it is a nice idea anyway. In the meanwhile, you can always deactivate L/R buttons in etc/system.gp2x and use the save/load state options of the menu.

The source code is under the GPL in the same package that you downloaded, in the 'src' directory.
 
Last edited by a moderator:
While playing this last night I turned on the frame rate display and I noticed that even with the frame limit, it sits around 63 FPS. Is there anyway to get this down to 60?

Also the color black seems to be transparent and displays the border behind it in full-screen mode, the new version of the emulator just freezes when loading most games, and palettes affect the gameboy color games as well which makes blacks look green on the default setting(the only setting that displays color). Tv-out doesn't work either and sometimes when loading games the emulator exits.
 
Thanks for your feedback, Metalwario64

Is there anyway to get this down to 60? The emu uses milliseconds for waiting. It waits 16ms while it should wait 16.6ms. There is a round error of 3 frames each second, 63FPS, the same that old Gnuboy2x. It is hardly noticeable, and anyway the real Gameboy isn't very acurate with the FPS :) I'll try to fix this, but it is not a priority at this moment.

Also the color black seems to be transparent and displays the border behind it in full-screen mode True, black is transparent but I though that the screen was cleared out before loading games. I'll check it out.

the new version of the emulator just freezes when loading most games Could you please give me an example? Every game that I tested works. Please, give me the complete name of your rom, maybe this bug is related with "weird" symbols in the file name. Besides, if you use .zip files keep in mind that the emulator supposes that the rom is the first file in the zip. Maybe you have more that one file inside the zip?

and palettes affect the gameboy color games as well This is intentional. Actually there are only three useful palettes for GBC: default (washed up colors), contrasted (normal colors) and grey. The rest of palettes are nearly useless in GBC, but work as examples of filtering. Palettes are in the 'palettes' directory, and they are text files that you can modify. Anyway, these useless palettes in GBC are great for GB. Besides, make sure that you test GB palettes in 16bits mode. They are way more colorful :)

Tv-out doesn't work either I do not own a TV, so TV support must be included by other person :(
 
This still doesn't show all of my ROMs. It selectively cuts some out. I don't know the reason as I have less than 1000.

The sound also cuts out after loading a few games.

It seems to run very slow at 200 MHz if I use 16 bit mode or shut off frameskipping.

Hope this helps. Thanks again.
 
Not looked at the source and have no idea what SDL supports, plus I have no idea how practical this is (ie. how much speed it'll eat up), but it might be you could add two more options for resizing the video to full screen.

One would be a simple resample with a bilinear filter, whilst the other (more cpu intensive but will produce a much sharper image) would be to double the image size using nearest neighbour, and then reduce with bilinear.
 
Thanks DaveC and RobertJ for your feedback,

This still doesn't show all of my ROMs. Can you find any pattern for the ignored files? The only ones that are filtered out are those starting with a dot, in order to filter '.', '..' and following the *nix standard for hidden files.

The sound also cuts out after loading a few games. I'm working on it. The code comes from the old Gnuboy2x and I didn't touch a bit. I'm working on putting the sound code in the same thread that the emulator, maybe this will improve speed and prevent buffer overflows for inaccurate buffer management (the current bug, I think)

It seems to run very slow at 200 MHz Slowness is a real problem. Fortunately most GB and GBC games run ok at 150-175MHz and frameskip is hardly noticeable. Some of the later GBC games need 200-225Mhz, and I can't find any speed improvement in the code appart from writing the core in assembler. That's completely beyond my knowledge. K-Teto couldn't help me, either, and any technical help for speed improvement would be greatly appreciated. Anyway, keep in mind that I will compile the final version with profiling, and in my test that meant about 20% gain in speed.

Not looked at the source and have no idea what SDL supports (...) but it might be you could add two more options for resizing the video to full screen. Current implementation does not use SDL, but Rlyeh's minilib. SDL is much slower than minilib, even for emulating the little gameboy. Currently lemonboy uses fast hardware scaling, but a nice fullscreen algorithm was one of the initial objectives of the project. At the time being I prefer focusing on the audio bug, but this issue is next in my list.
 
Whenever I open lemonboy2x on my gp2x it just goes black and I have to shut off the power. Someone please help me!!!
 
pittpens2008, are you sure that you copied all files and directories in the zip (except src directory)?
 
That's really strange. What model of Gp2x do you have? And what firmware? Do you have problems with other emulators? Are you sure that your SD is not corrupted? Could you please remove the complete lemonboy2x directory and install again?

Hey, these are a lot of questions :D Many thanks in advance!
 
I have a gp2x F-200 with firmware 4.0, I have the same problem with fishy nes but all the other emulators run fine, and I don't think that my sd is corrupted because everything else on there works fine, I reinstalled lemonboy2x and it still only works 1/10 of the time.
 
DaveC said:
This still doesn't show all of my ROMs. It selectively cuts some out. I don't know the reason as I have less than 1000.
Just so that you know, I'm pretty sure that it is seeing all of my roms now.
 
Last edited by a moderator:
I think it sees more of mine but they are all out of order towards the end of the list. It skips some letters but adds others in the wrong spot etc. It seems like the sorting is all buggered.
 
I use standard sort routines. Maybe the strange sorting is due to the original case of the filename? In this case, 'Zelda' comes before 'mario' :) It is only an idea, I'll check it out. Thanks!

pittpens2008, I really have no clue about what's happening to your copy :( Just an advice, for the NES emulation use Notaz's Gpfce2x, not Fishy Nes.
 
My F200 freezes whenever I try to load a game (FW 4.0)

Also, while the lemon menu skin looks very nice, it's not so handy to have the rom's filenames cut off:

Super Mario Land 1
Super Mario Land 2
=
Super Mario L
Super Mario L

so you have to guess which one is which :p

EDIT: Oh, just figured out how to switch off the preview box, that way it shows the full file names :)

Will mess with it a bit more in hope to get a game running.

"SunSpire"
 
SunSpire, are you using roms in zip? Lemboy only tries to load the first file in the zip, and it seems to freeze if it can't. Use zip with only one file, or use uncompressed roms. Some sites distribute roms in 7z, decompress them since this format won't work on Lemonboy.

In order to switch previews off, you have to edit etc/system.gp2x and "set previews false", or configure "mode 8" as the default setting and restart the emulator. I knew that not everybody will like previews :)
 
If you are testing lemonboy, please download the very last version from http://147.83.47.153/~juanvi/lemonboy2x.zip

One of my Spanish testers found that his SD was corrupted after pressing several times and very quickly L+R (http://www.gp32spain.com/foros/showthread.php?t=55136&page=7). This last version has a more restrictive management of double keys.

Furthermore, if you still dare to run lemonboy2x, I think that I nearly solved the sound bug. Sound still crash after loading dozens of games, but not as often as the previous version.
 
Back
Top