FAQ
Here are some of the more common questions (and answers) regarding MeBoy:
A: Yes. The following works for most phones I know about, but I can't
guarantee it will work on yours (if it doesn't work for your phone, please let
me know): Run the new MeBoyBuilder.jar, adding the same ROM files (and with the same
filenames) as the previous time. Install the new MeBoy.jar file on the
phone. DO *NOT* UNINSTALL THE OLD VERSION BEFORE INSTALLING THE NEW VERSION. Most
phones will remove all settings, including saved games, if you uninstall MeBoy.
Instead, let the phone automatically replace the old version when you install
the new version. MeBoy 2.0 and later use a new savegame format, but they will upgrade savegames from
version 1.3 or later, which in most cases should happen automatically.
If you have not included the same ROM files in the MeBoy 2.x
jar file, the missing games' savegames will not be upgraded. However, if you
"upgrade" again to version 2.x with the additional games, the remaining
savegames will be upgraded and added to the list. Make sure to not rename the ROM files between updates, or MeBoy will think
that you've added different files. (Using "Rename" in MeBoyBuilder is fine, as
long as you don't change the name of the actual file.) A: I don't have the means to test MeBoy on different phone models, so I can't
help regarding specific phone models or error messages. Even if your phone model
is listed as compatible in the list, I have not verified that information, and
the submitter could have made an error. Here are the common problems I know how to solve: If your phone doesn't let you install MeBoy, one reason can be that the
.jar file is too big. Most of the size is the games you have included, so try
to include only one, small game and see if it helps. Notably, most Nokia
phones have a 1MB limit for jar files. Please see My Nokia phone limits jar files... below. One common problem is that your phone may not have enough memory for
MeBoy. You can also go to "Settings" and change the "Max loaded cart size kB" to a
smaller value, such as 320. This reduces the amount of memory MeBoy uses. Another issue could be that your phone does not support some optional Java
features that MeBoy 2.0 and later use. If so, you can give MeBoy 1.6 a try. If none of these suggestions work for you, I'm afraid MeBoy is just
not compatible with your phone. A: Unfortunately, MeBoy doesn't perfectly emulate the Gameboy hardware,
although I try to get as close as I can. Most games work, but some use special features
that MeBoy doesn't emulate, or features that MeBoy only emulates approximately. In general
is no setting or similar that you can change to make a non-working game work (but see
the previous question in case the problem is between MeBoy and your phone). One difference between MeBoy and a real Gameboy is that MeBoy takes
certain "shortcuts" in order to improve performance, at
the expense of correctness. For instance, all graphics is drawn in blocks of 8x8
pixels with simplified "layering" techniques, because it is faster than handling
pixels one at a time and usually gives correct (or almost correct)
results. (The 8x8 blocks are not used in the "Advanced graphics" setting.)
Shortcuts in the CPU emulation are usually less visible and for the
most part harmless, but they can lead to bugs and crashes in certain games. Also, MeBoy likely differs from a real Gameboy due to programming mistakes,
or because I have misunderstood how a certain aspect of the hardware should be
emulated. Unfortunately, a common result of MeBoy shortcuts/bugs is that some byte in
the Gameboy's memory gets the wrong value, but the game will run seemingly
correctly for seconds or even minutes, until suddenly it crashes or behaves
strangely. This makes it very hard to find and correct bugs, because they can be
in completely different parts of the code from where the crash eventually
happens. A: Yes, there are 2 ways to do that:
First, if you want to include many small games, you can install multiple
copies of MeBoy by selecting a different name than MeBoy.jar
when creating the file in MeBoyBuilder. You will get a warning that savegames
and settings are not shared between the different versions, but if you accept
your custom filename, you can install as many different MeBoys as you want on
your phone. (Unfortunately, this does not help for games that are 2MB or more,
so read on.) Alternatively, you can check out MeBoy-F,
which is a modified version of MeBoy. It's written by kFYatek and it allows you to store
the ROM files on the phone's filesystem, so the jar file itself is very small.
Please see the above link for details.
(Note that MeBoy-F requires that your phone supports "JSR-75" aka.
FileConnection, which was rare when MeBoy was first written, but is
very common now.) A: First, transfer the cart-RAM to your PC using Bluetooth (see the guide).
Please note that suspended games (with extension ".meboy") are not compatible with
other emulators. Also, please note that Bluetooth support is required to transfer
savegames (although I hope to eventually support other methods). After transferring the cart-RAM, put the file (extension ".sav") in the same directory as your
".gb" or ".gbc" file, with the same filename before the dot. Then open the ".gb"/".gbc"
file from VisualBoyAdvance, and it should load the savegame. Please note that if you send a ".sav" file to MeBoy, you need to start
the game with "New Game", not "Resume Game". If you use "Resume Game", the cart-RAM from
the suspended game will overwrite any other cart-RAM. Unfortunately, not all ".sav" files are compatible with MeBoy. See the next question. A: There are several file formats all using the extension ".sav".
MeBoy/MeBoyBuilder only understands one of them, and if your ".sav" file is of a
different format, MeBoyBuilder will reject it as "not valid". In particular,
VisualBoy Advance uses different formats for games with and without "real time
clock" (and MeBoy only understands the format without "real time clock"). A: Unfortunately, that's impossible due to the differences between how the
Link cable and Bluetooth works. Specifically, Bluetooth is made for sending relatively large chunks of data,
but the Link cable sends only a single byte at a time. As a result, only about 10-15 bytes
per second can be transmitted, compared to 1,000 bytes for real Gameboys, or up to
65,000 bytes for Gameboy Colors. As an example, when starting a 2-player game, Tetris sends 350 bytes in
less than 1 second on real Gameboys, but it would take about half a minute for MeBoy
using Bluetooth. The game itself would of course also run much much slower than on
a real Gameboy. A: Unfortunately, the way Super Gameboy handles colors is very different
from how Gameboy Color does it, and it's not straightforward to add Super Gameboy
support to MeBoy, because of the different implementations. A: MeBoy supports sound since version 2.0, but you need to turn it on
in the Settings screen. Also make sure your phone is not in "silent" mode. If you have turned on the "Experimental features" in the MeBoy sound
settings, your phone must support the "Square wave" MIDI instrument to make a
sound, so try turning off the "Experimental features" if you're not sure. If you still don't get any sound, your phone probably doesn't support
the optional Java functions MeBoy uses for playing sounds ("JSR 135: Mobile
Media API"). If so, there's nothing you can do to get sound to work on your
phone. A: Sorry, no. I don't have a touchscreen phone with J2ME myself, so
I'm not able to develop a good touch-based user interface. On the other hand,
MeBoy is open source, so if you know (or are!) a deveoper with such a phone,
please feel free to make a touchscreen-optimized version (and let me know
so I can link to it!) A: See the info about MeBoy 1.6. A: If you run Windows, the most likely cause is that your system doesn't
have the correct settings for the ".jar" file. Please see
here
for a discussion about this problem. A: No new MeBoy versions are planned. A: No. I believe that for the forseeable future, those systems will
be too powerful to emulate at any reasonable speed using Mobile Java. There is a GBA emulator for J2ME is called
iGBA
(link to Russian forum post), but even on modern phones it doesn't run fast enough to play games. However, there are
GBA emulators
for Symbian phones, but
I don't know much about them, and can't help you if you have questions. A: You can find noncommercial ROMs here: pdroms.de.
(If this doesn't answer your question, please don't ask again.) A: I'm currently not working on MeBoy (which includes responding to email),
so you can't send me email. Sorry.Q: Can I upgrade MeBoy without losing my saved games?
Q: MeBoy doesn't work on my phone. Can you help me?
Q: [Game] crashes/freezes/doesn't start. Can you help me?
Q: My Nokia phone limits jar files to 1 MB - can I get around that?
Q: How do I use the savegames with an emulator on my PC, such as VisualBoyAdvance?
Q: MeBoy tells me "The file you selected is not a valid
savegame file". Why is that?
Q: Can you make a version that emulates the "Link cable"
by using Bluetooth?
Q: Can you make MeBoy emulate the Super Gameboy color mode?
Q: Why is there no sound?
Q: I have a phone with a touchscreen, and MeBoy doesn't work
(well) on it. Can you make a touchscreen-optimized version?
Q: MeBoy tells me a java.lang.NoClassDefFoundError has happened, what is that?
Q: MeBoyBuilder doesn't run on my computer. Can you help me?
Q: When is the next version coming?
Q: Are there any plans for supporting Gameboy Advance/Nintendo DS games?
Q: Where can I find ROM files?
Q: My question is not in this list. How do I contact you?