Phoinix, the free Gameboy emulator for PalmOS

by Bodo Wenzel
Sitemap:
Home (downloads)
F. A. Q.
Old news
Compatibility of...
  free cartridges
  commercial cartridges
  colour games
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) - Directions for Mac OS 9 - 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 X users: the converter has to be run in the terminal!


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 nice guys wrote so-called "frontends" that translate your wishes into the correct commands.

Phoinix Conduit for Windows

The Phoinix Conduit for Windows is a Visual BASIC .NET application by Alex Henrie.

Phoinix Conduit requires the Microsoft .NET Framework 2.0, which may be on your system already. If it is not, you can download it from http://www.microsoft.com/downloads/details.aspx?FamilyID=0856EACB-4362-4B0D-8EDD-AAB15C5E04F5&displaylang=en.

During installation, Palm Conduit Support for COM will also be installed. This component is required for Phoinix Conduit to run. If Palm Conduit Support for COM is not currently installed, you will need to restart your computer after Setup is complete.

To download the conduit use one of these links: http://phoinix.sourceforge.net/phoinix_conduit.zip or http://www.geocities.com/cdfalcon_2k/pc/phoinix_conduit.zip.

Phoinix ROM Converter for Windows

The Phoinix ROM Converter for Windows is the precursor of Alex' Phoinix Conduit. You can still download it: http://phoinix.sourceforge.net/p-rom-c.zip.

Screenshot of Phoinix Converter.

Game Boy Rom Converter for Mac OS X

This converter frontend was made by David Williams. You can download it via this link: http://phoinix.sourceforge.net/Game Boy Rom Converter.dmg. Please read his comment:

Installation: Pretty Basic, Just double click on the installer and press the install button.

Use:
  • Method 1-
    1. Just Drag a file over to the small box in the corner of the screen
    2. The Path of the File will appear in the "File:" Text box
    3. Select the Proper Conversion Method from The "Convert From:" pop-down button (if it didn't already)
    4. Press the Convert Button.
    A new file will be created in the same directory as the file that has been converted.

  • Method 2-
    If you drag a group of files over to the small box in the corner of the screen, it will convert all of them. The load bar will appear and it will scroll across the screen as it converts files. The files must have an extension of .gb, .gbc, or .pdb for it to automatically convert a group of files.
Program Developed by David W.
http://dmw.r8.org/
questions,
spam562@gmail.com

Screenshot of Game Boy Rom 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. The "Pbtools" are in the tools archive. This program can be used on any system (the screenshot shows it on my PC running GNU/Linux with 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".


Directions for Mac OS 9

When you launch the converter, you will be prompted for parameters. At the "Argument" line enter the command line like described above. The first screenshot shows the most simple way, the GB file named "Lolo.gb" will be converted into the PDB file with the name "Lolo.pdb", and the game will show up as "LOLO".

First Screenshot of gb2pdb in Mac OS 9.

The second screenshot shows a command line with three arguments, the GB file named "Lolo.gb" will be converted into the PDB file with the name "ConvLolo.pdb", and the game will show up as "Lolo in Phoinix".

Second Screenshot of gb2pdb in Mac OS 9.

To include blanks in an argument (like the name of the game in the second example) you'll have to quote it with quotation marks.

If you leave the selection for input and output at "Console", a window appears with some messages from the converter. Simply quit it, optionally saving the messages into a file. Alternatively you may select "File" and enter any filename you like right there.


Convert saved cartridge RAM

IMPORTANT NOTE: this converter works only for versions before v.1.3!

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 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