Phoinix, the free Gameboy emulator for PalmOS

by Bodo Wenzel
Sitemap:
Home (downloads)
F. A. Q.
Compatibility of...
  free cartridges
  commercial cartridges
How to...
  use the emulator
  convert cartridges ==>
  make cartridges run
  get in touch
About...
  the history
  the future
  the playability testing
  skipping frames
  some accessories
  limits and extensions
Thank you for the cookies

This site is kindly hosted by SourceForge Logo

How to convert cartridges

On this page: - Introduction - The simple way - Graphical User Interfaces (GUI) - Step by step (command line usage) - Convert saved cartridge RAM - Coming soon


Introduction:

Before you're able to run a Gameboy ROM it has to be converted into a Palm database (PDB). This is done with the converter included in the tools archive. This program is a command line tool, so you have to call it with so-called parameters.

There are readily compiled executables for Intel-Linux, MacOS 9, MacOS X and DOS/Windows. The source code is included for your curiosity.

After converting you need to hotsync the resulting PDB file into your handheld.

Note for MacOS 9 users: when you launch the converter, you will be prompted for parameters. Please follow the tips here with your intelligence. I know you're smart, otherwise you weren't a Mac user ;-)

Note for MacOS X users: the converter has to be run in the terminal!

There are some free games readily converted for your quick start.


The simple way:

If you're using Microsoft Windows as operating system, you can use these simple approaches.

Drag'n'drop
  1. Place a link of the converter on your desktop.
  2. Drag a GB file and let it drop on the icon of this link.
Associate file type
  1. Open the context menu on a GB file (try shift-right-click).
  2. Select "Open with..."
  3. Open the file browser by its button.
  4. Select the converter.
  5. Before confirming the "Open with...", switch on the "Always" check box at the lower end.
  6. Now you can convert GB files simply by double-clicking!

If everything's fine, there should be now a PDB file aside the GB file. Install it the common way. If you have problems, please read on...


Graphical User Interfaces (GUI):

The command line tools are quite awkward to use. So two nice guys wrote so-called "frontends" that translate your wishes into the correct commands. Both "Phoinix ROM Converter" and "Pbtools" are in the tools archive.

Phoinix ROM Converter for Windows

This is a Visual BASIC application by Alex Henrie. You'll need the VB runtime environment which might be on your system already. Alex likes to let you know:

Notes for using Phoinix ROM Converter stand-alone:

- gb2pdb.exe must be in the same folder as P-ROM-C.exe to convert Game Boy ROMs to Palm Databases

- If Phoinix ROM Converter will not run or you have trouble using the Browse buttons, you will need to download the full installation of Phoinix ROM Converter from http://www.geocities.com/cdfalcon_2k/p-rom-c.zip. After installing the full installation, even if you uninstall it, you will be able to run Phoinix ROM Converter stand-alone without difficulty.

Screenshot of Phoinix Converter.

Pbtools

Paul Chandler wrote a graphical frontend in Tcl/Tk. You need a Tcl/Tk installation to use it, the primary HTTP site is www.scriptics.com/software/download.html. This program can be used on any system (the screenshot shows it on my PC running Linux/IceWM), and this is what Paul writes:

To use, simply click the "Add ROM to transfer list" button to add a rom file, or click the "Add all files in current dir" button to select all files in the current directory. Click the "Begin Transfer" button to begin the Conversion and Transfer(on Unix only) of the selected files.

Ensure that gb2pdb is installed and located in your path. For Unix, the PalmBoy Transfer Assistant also requires pilot link to transfer the converted files to your Palm device, so this package must also be installed. For Windows, the converted pdb files must be transfered manually.

Copyright (C) 2001 Paul Chandler pchandle99@yahoo.com.au

Screenshot of pbtools.


Step by step (command line usage):

  1. If you're using your PC with a graphical user interface you basically have to open a command shell. This can be a DOS box in Windows or a terminal in X11. Please refer to the documentation of your operating system how to do this and the following steps.
  2. Create a directory where the converted files should be placed. It's more convenient if you copy the converter and the games to be converted into the same directory.
  3. Change into this directory. The command is commonly "cd".
  4. Just for fun enter "gb2pdb". The converter shows a short reminder which parameter it expects.
  5. Let's assume that you want to convert the file "tetris.gb" and you like "tetris.pdb" to be the name of the converted file.
  6. Enter "gb2pdb tetris.gb" and the converter shows some output. In this case there should be no error message and a new file "tetris.pdb" is created in the directory.
  7. Now you can hotsync the file "tetris.pdb" into your device.

You call the converter with one, two, or three arguments. The first is the name of the game file - they have commonly names ending with ".GB" and are just binary images of the ROM. The optional second argument is the name for the database file; if you leave it out it'll get the name of the GB file but with a PDB extension. This has nothing to do with the name of the database later in your handheld - that one is taken from the ROM image itself as default, or as the optional third argument. Examples:

"gb2pdb ants.gb"

converts the game file "ants.gb" into the database file "ants.pdb". After hotsyncing to your handheld you'll see the game name "Free Ants!" because the developers of Ants called it like that.

"gb2pdb /home/gb/ants.gb /home/palm/tosync.pdb PhoinixAnts"

converts the game file "ants.gb" in the directory "/home/gb" into the database file "tosync.pdb" in the directory "/home/palm". After hotsyncing to your handheld you'll see the game name "PhoinixAnts".


Convert saved cartridge RAM:

Some emulators on other systems allow to save the emulated RAM of cartridges. Its contents are usually the saved states of the game. Aaron Link was playing on his desktop and his handheld, and he wanted to copy these states between both systems. Since there was no converter he sat down and wrote his own!

Please visit the homepage of the Phoinix RAM Save Converter for more information and download. It runs on Windows and needs the .NET framework. At this place just a screenshot:

Screenshot of Phoinix RAM Save Converter.


Coming soon:

Currently I'm learning JavaTM, and I think it's a great language to learn object oriented programming! And the best thing is:

"Write once, run anywhere!"

So you may expect a converter with graphical user interface coming this year that runs on any Java2 enabled system! But for now I have just ported the commandline converters GbToPdb and PdbToGb to Java. You may be interested in the sources , too.

Call for feedback

This is preliminary. I'm a newcomer to distributing Java applications, so help me help others, please.

Currently I have no idea what's the best way to ensure that the Java applications run on all main systems. So I need lots of feedback how you make it run, please mail all your stories! In particular MacOS users' experiences are needed...

Another detail I like to know is where Palm Desktop stores the files to be installed. If you're happen to be an experienced Windows or MacOS user/programmer and know how an application can get this information, please share your knowledge with me!

Send any comments, reports, and suggestions to: palm.gb_emu@gmx.de

How to use (PRELIMINARY!)

Get the Java Runtime Environment on your PC. If you're using Linux, you'll probably have it already. If not, and for Windows or MacOS, please visit http://java.sun.com! Unfortunately it's not possible to simply use any Java enabled HTML browser, because the applications need read and write access to the local filesystem.

Depending on the Java version, one of the following command lines should work. Please read the documentation provided by Sun Microsystems carefully! Create a batch, or a script to simplify it after finding the line you need.

Examples for GbToPdb:

jre -cp GbToPdb-1.0.jar GbToPdb <parameters...>

jre -cp <path-to->classes.zip -cp GbToPdb-1.0.jar GbToPdb <parameters...>

java -jar GbToPdb-1.0.jar <parameters...>
Experiment: using JNLP

Mini splash of Java Web Start.

Beginning with JDK 1.4, Java Web Start and its JNLP (Java Network Launch Protocol) is part of the Java 2 Standard Edition. So I'm trying here how well this works. Look at it as experimental! Please read all about Java Web Start and how it works in Sun's documentation.

In order to launch applications via Java Web Start, you will need to have it installed on your system. If not, please download Java Web Start.

To run my test application via Java Web Start, simply use this link: TestJnlp. If it's not already on your machine, it will be fetched automagically :-) After the initial download into the cache, Java Web Start will take care of updates, and if off-line it will be run right out of the cache. On Windows you'll also have the option to install icons for a convenient launch.

This is the Java Archive file for your separated download: TestJnlp.jar. Run it like shown above with the converters.

Please send any comments, reports, and suggestions to: palm.gb_emu@gmx.de

palm.gb_emu@gmx.de