Release GnGB a Game Boy and Color Game Boy emulator for Testing


dgame

Active Member
Joined
Oct 1, 2006
Messages
945
EDIT: New Version Here: http://boards.openpa...post__p__132776


Description:


-------------


GnGB is a Game Boy and Color Game Boy emulator for Linux written in C using the SDL.


It runs most GB and GBC ROMs and also supports zipped (.zip) ROMs.


GnGB is written by Frogus and Pepone http://m.peponas.free.fr/gngb


New:


This PND version uses the PickleLauncher for ROM selection.


This PND version uses Notaz's improved SDL Library.


The new default keys are Game Boy B,A,Select,Start -> Pandora X,B, Select,Start


Edit the gngbrc file located in the pandora\appdata\gngb\.gngb\ folder on your SD card to change default keys.


The .gngb folder may be hidden.


Enable "Show Hidden Files" on the "View" menu in the File Manager.


If you have an existing gngbrc it will NOT be over written and you will have the previous key mappings, you can either delete the gngbrc file or edit the map_key line.



Code:
To Set Default Keys:

	edit [SD CARD]\pandora\appdata\gngb\.gngb\gngbrc


edit map_key line with corresponding Pandora Keysym codes:


map_key line order:

    	UP,DOWN,LEFT,RIGHT,A,B,START,SELECT

map_key 273,274,276,275,279,281,308,306


Some Pandora Keysym codes:

	UP=273,DOWN=274,LEFT=276,RIGHT=275,A=278,Y=280,X=281,B=279

	START=308,SELECT=306

Press F12 In-Game to Show the SDL Keysm code for any key you press.



Read me:



gngb.pnd

Code:
Description:

-------------

GnGB is a Game Boy and Color Game Boy emulator for Linux written in C using the SDL. It runs most GB and GBC ROMs and also supports zipped (.zip) ROMs.


GnGB is written by Frogus and Pepone [url="http://m.peponas.free.fr/gngb"]http://m.peponas.free.fr/gngb[/url]


This PND version uses the PickleLauncher for ROM selection.

This PND version uses Notaz's improved SDL Library.


PickleLauncher keys:

-------------

Dpad Up and Down: Scroll list by single line

Dpad Right and Left: Scroll list by page

A: Enter Folder

X: Go Back

B: Enter Folder/Run ROM

ESC: Exit PickleLauncher


In-Game keys:

-------------

Pandora X,B,Select,Start buttons: Game Boy B,A,Select,Start

Tab: Open Menu to Load/Save States and Configure Emulator

	Enter: Select Menu Items

	ESC: Close Menus (Exits Emulator if No Menu is Open)

1-5: Switch Game Boy 2-bit Color Palettes

6: Toggle Game Boy Color Color Filter

9: Pause Emulator AND 0: Unpause Emulator

F8: Toggle Rumble (screen shake)

F10: Show FPS

F11: Reset Emulator

F12: Show SDL Keycodes

ESC: Exit Emulator


Default Resolution:

-------------

To set the Default Resolution using PickleLauncher navigate to a ROM and press the onscreen "Edit Item" button.


A "Resolution" parameter will be shown indicating the current resolution.


Press the onscreen "Select" button to show the available resolutions.

	160x144 : Native GB/GBC resolution (stamp sized on Pandora)

	320x288 : 2x integer scaled

	480x432*: 3x integer scaled (Default)

	532x480 : Stretched to screen height

	800x480 : Stretched to full screen

The Default resolution is indicated by an asterisk.


Use the Dpad or pointer to select the desired resolution.

The selected resolution is indicated in bold with an arrow.


Press the onscreen "Default" button to choose the selected resolution for all ROMs (indicated by an asterisk) or press the "Set" button to choose this resolution only for the selected ROM (indicated by color change).


Press the onscreen "Back" button once to verify the change to the "Resolution" parameter and press "Back" button again to return to the main menu.


Configuration File:

-------------

Edit the gngbrc file located in the pandora\appdata\gngb\.gngb\ folder on your SD card to change default keys.


The .gngb folder may be hidden.

Enable "Show Hidden Files" on the "View" menu in the File Manager.


To Set Default Keys:

	edit [SD CARD]\pandora\appdata\gngb\.gngb\gngbrc


edit map_key line with correspondig Pandora Keysym codes:


map_key line order:

    	UP,DOWN,LEFT,RIGHT,A,B,START,SELECT

map_key 273,274,276,275,279,281,308,306


Some Pandora Keysym codes:

	UP=273,DOWN=274,LEFT=276,RIGHT=275,A=278,Y=280,X=281,B=279

	START=308,SELECT=306

Press F12 In-Game to Show the SDL Keysm code for any key you press.
 

Attachments

  • gngb.pnd
    1.8 MB · Views: 338
Last edited by a moderator:
This is a spot on emulator.


Plays GBA roms smooth as jam. Just played Warioland 2&3.


Thank you dgame!!!


Cheers.
 
DaMummy,


I want this to be as user friendly as possible before I post to any official distribution channels.


Gruso is working on a nice skin which will be included before it goes final.


Gruso,


Thanks for the skin! I sent you a reply.


PokeParadox,


The Super Game Boy (SGB) emulation uses its own color palette . The SGB support is listed as experimental and the source code has several "fix me' comments. It may be possible to use the GBC color mode and SGB borders but that is beyond my current skill level.


The SGB mode also seems to not like notaz's improved SDL, so it is effectively broken by this new packaging. EDIT: Fixed.


I am not the author of this emulator I just compiled it to work on the Pandora and I wrote a little script to allow PickleLauncer to be able to set the resolution.


Pepone is a member of this forum and one of the authors of GnGB maybe he can help here.


Thanks for the support!!!
 
Last edited by a moderator:
Works great! I am having a problem with Donkey Kong, as it is a super gameboy game, so hopefully that can be fixed in time. Everything seems to work fine otherwise, and I'm looking forward to the final version with the nice skin.


Chris
 
Okay I have SGB Mode working again. I am adding some more options under the "Edit Item" selection.


One of them is to choose Game Boy type so you can have specific games run in Super Game Boy mode if you want to.


The other one has to do with how sharp the scaling looks, but there are tradeoffs so I made it an option. More to come.


Gruso's skin in nice, it will be included in the next Beta.


The graphical glitches in Donkey Kong when in Super Game Boy mode are probably due to the Super Game Boy mode being 'experimental'.
 
Last edited by a moderator:
A keymap for anyone who wants it. (Dead easy to do yourself really, but it might save you a minute of thinkin')


Open /appdata/gngb/.gngb/gngbrc (remember, the . means /.gngb is hidden, so press ctrl-h to show if needed)


Paste this line over the old one:



Code:
map_key      273,274,276,275,279,281,280,278


This maps:


- Gameboy Select to Pandora A


- Gameboy Start to Pandora Y


- Gameboy B to Pandora X


- Gameboy A to Pandora B


(Using Mario as the reference point, this is for normal people who dash with X and jump with B.)
 
I am making good progress on the next release.


PickleLauncher is able to configure just about every option.


Working with Gruso the skin is evolving nicely.


What do you all think about having Pandora’s START and SELECT hard-coded as Game Boy START and SELECT and using the map_key value as additional START and SELECT buttons?


In other words Pandora START and SELECT will always be Game Boy START and SELECT and the last two values of the map_key line (in \pandora\appdata\gngb\.gngb\gngbrc) will be also be Game Boy START and SELECT.


That way by using:


map_key 273,274,276,275,279,281,280,278


We will have:


- Gameboy Start to Pandora START and Pandora Y


- Gameboy Select to Pandora SELECT and Pandora A


- Gameboy B to Pandora X


- Gameboy A to Pandora B


What do you all think?
 
Last edited by a moderator:
I am making good progress on the next release.


PickleLauncher is able to configure just about every option.


Working with Gruso the skin is evolving nicely.


What do you all think about having Pandora’s START and SELECT hard-coded as Game Boy START and SELECT and using the map_key value as additional START and SELECT buttons?


In other words Pandora START and SELECT will always be Game Boy START and SELECT and the last two values of the map_key line (in \pandora\appdata\gngb\.gngb\gngbrc) will be also be Game Boy START and SELECT.


That way by using:


map_key 273,274,276,275,279,281,280,278


We will have:


- Gameboy Start to Pandora START and Pandora Y


- Gameboy Select to Pandora SELECT and Pandora A


- Gameboy B to Pandora X


- Gameboy A to Pandora B


What do you all think?
I rather like this mapping.
 
What do you all think?
I just had a very short look at things but got one comment:


It would be great if you could adjust things so that the "in emulator menu" opens when pushing space instead of tab (tab means fn+space). Beside this it appeared as if nothing happened when trying to click the edit button while in pickle launcher. I'll have to closer check this...


I most likely won't write/reply anything over the next ~10 days due to some holidays for me (combined with the Google Summer of Code mentor summit in Mountain View, CA).
 
Pickle,


I started building my own PickleLauncher binaries today using the latest SVN code. The details are in the other thread, but basically I added keys for the Edit functions (set_all, set_one, and back) to avoid the onscreen button problem Ivanovic mentioned above "it appeared as if nothing happened when trying to click the edit button."


Ivanovic,


I can change the menu from space to tab, or how about I add space as another way to bring up the menu?


Also the Edit button does not work on Zipped (.zip) files.
 
Last edited by a moderator:
Blue Protoman,


Turbo keys are not supported by the emulator and would have to be coded in.
 
What do you all think?
Looks already very promising. But is it really necessary, that the "action" buttons (Edit, Select, Quit) are that big ? I would rather have smaller buttons and see a little bit more of the filenames.


I have a few suggestions, but I don't know if they concern you or pickle (as the developer of pickle launcher):


Do we really need it finger friendly ? I know, making everything touchy n'stuff is modern, hipp, cool, whatever but no one gains anything from it in this case (except that we loose a lot a space). Other than on modern smartphones you can't play emulators on the pandora with the touchscreen, so there is no need for a consistent input scenario (all the way from the launcher to actually playing the game). You have to use the controls eventually. My suggestions would be to get rid of all the navigational buttons, reduce the action buttons, move the list to the left, and expand it to the right.


But if you really depend on having it finger friendly, please include the function to "double tap" for opening directories and starting games - and maybe "long finger press" for editing items.


Another thing, that would be really cool is a implemented help. Either by just giving just some textual info directly in the launcher. Or having an overlay that could be active by pressing/holding a button/key (just to make it clear, it's really only about the launcher, not the emulator itself):


The one thing I really don't like on the pandora is that for every Application / Game / Emulator that not uses GUI - Librarys like GTK/QT/etc you have to remember which key does what. If I'm lucky, I'll find it out quick (but usually I accidentally close the application serveral times before getting it), sometimes I'm happy I'll find the info in the pnd, but often I'll have to wait till I'm home to search the forums to get the information.


Some may say "well just include a proper readme" but what do devs all over the world don't like ? Correct writing documentation. But even then you still have to quit the application before you get the information you need.


This would also be a major addition to the currently ongoing "make the pandora more "dau - friendly" effort.
 
Last edited by a moderator:
^ PickleLauncher is designed around multiple input options, and does it pretty well I reckon. The hardware is capable of touch control, and many people like using it, so that's why it's there. Not because a dev is trying to be 'modern, hipp, cool' :p I can't speak for dgame or his plans, but I can tell you not to judge the current launcher as it is. A skin is in progress. It won't address all your concerns but it will make better use of the screen.


You might be interested to know that PickleLauncher is fully user configurable, via config.txt in the appdata folder. Set fonts, sizes, positions, switch off the buttons you don't want, even make a whole new skin if you can handle image editing. More info here ...as you can see I'm new to it myself.
 
Last edited by a moderator:
Back
Top