XCade is an arcade emulator for Palm OS.
- Does XCade come with "Game ROMS" (game programs) or just the
game hardware?
- Buying ROMs for use with XCade?
- Making XCade ROMsets from MAME ROMsets?
- Whats this new legal ROM deal? The DMCA being useful?
- Does XCade support the Tapwave Zodiac?
- Does XCade support the Tungsten T 5-way control? The Sony
game controller?
- Is XCade a high res full colour application?
- What games does XCade support?
- Does XCade support audio?
- Will you support Configuring the controls?
Dipswitch changes? Sound and audio?
- Does XCade support expansion media?
- Why doesn't XCade include any games with the distribution?
- What is a "ROM"? Is it a game?
- Are any ROM games included with XCade?
- Is there a graphical non-commandline Rommer tool?
- How do I run "rommer"? It flashes and goes away!
- Is XCade descended from MAME? Whats the history?
- Is emulation legal?
- Using "MAME ROMs"?
- Is distributing ROMs legal? Can I copy my friends game
ROMs?
- How do I obtain arcade game ROMs legally?
Does XCade come with "Game ROMS" (game programs) or just the
game hardware?
XCade itself does not include any "game ROMs" (as the various
store websites indicate); XCade is an enabling technology, to emulate the
arcade machines the original game ROMs (programs) run on, but you still
need to find the ROMs yourself. This is a little ugly we admit, but the
companies charge *enormous* rates for us to distribute the ROMs with the
application.. so rather than charge seveal hundred dollars for XCade
(really!), we charge a small amount and let the enthusiast locate the ROMs
himself. You can buy some ROMs at http://www.starroms.com and other sites,
or copy them from other emulators, or find some as freeware on the
Internet etc. We are however not permitted to help you find them due to
our lack of licensing.
Buying ROMs for use with XCade?
As of October 2003, a new company has popped up to try and sell
you arcade game ROMS. Once you buy the arcade ROM (or arcade game
pcboard, etc etc) you can now use it with any emulator you like,
XCade included. This is a fan run store, so please support them
if you don't have your own ROM licenses already (ie: If you don't
have an EPROM reader, etc). As of October 2003 they only have
Atari ROMs (like Asteroids, etc), but are hoping to grow to have
more manufacturers. Check their website for prices, but current ROMs
cost onyl $2-$6USD each. See their
website here
Making XCade ROMsets from MAME ROMsets?
Quoting from a post to a message board: "After a little mucking about,
I finally came up with a dat file for the excellent utility
ClrMamePro that will ferret out the correct roms for Xcade from
your Mame set. It takes a little while to run since it goes through
your complete Mame archive matching up roms by crc, but you'll end
up with 18 zip files that have the correctly named roms for Xcade.
All I did then was unzip them all into one folder and ran rommer for
each game one by one, letting it create the .pdb file for each game."
Thanks to Igboo for the .dat file and the great idea :)
Get the DAT file here
You'll also want to know ClrMAME's homepage
Whats this new legal ROM deal? The DMCA being useful?
Read this; what are the implications? OKay, so a lot of games
are available in "best of" packs, but certainly most games from
the good old days are not. So does this make them legal
to be distributed? Sounds like it! But read this article and
make up your own mind.. perhaps with some clarification we can
get some good ROM websites up to make ROMs easier to get?
See
website here
Does XCade support the Tapwave Zodiac?
We certainly do! We have a Tapwave Zodiac specific version of XCade
included in recent downloads, though its important to note that
even older XCade's work fine on the Zodiac in
portrait mode though with a couple of oddities. So grab the latest
download (at least 1.5.2) to find the Zodiac specific version.
Does XCade support the Tungsten T 5-way control? The
Sony Game Controller?
Oh yes. XCade natively understands the Tungsten's Directional Pad-style
controller which makes the games play very well. It's been reported by
those with the Sony game control that it works very well with XCade
as well.
Is XCade a high res full colour application?
Definitely. In fact XCade requires high res and colour :) It runs
the games at their true arcade resolution. Since these games were
originally designed for 20" arcade monitors and are now running
full resolution on a handheld display, they look sharp!
What games does XCade support?
Every arcade machine is different, so each game has to be added
separately into the emulation. As such we support only a specific
set of games (or "rom swaps" of those games). Check the screenshots
page to see a picture of each main supported game. For instance,
theres a screenshot of Asteroids, so Asteroids is supported.
Theres no "Street Fighter" listed, so Street Fighter is not
supported :) Watch for new games on occasion.
Does XCade support audio?
For some games only. XCade 1.5 includes support for audio in the
Pacman-family of games which include Pacman, Ms. Pacman, Puckman,
Hanglyman, and Pengo. Later versions of XCade may support sound
for other games.
Will you support Configuring the controls?
Dipswitch changes? Sound and audio?
There are lots of plans for XCade; updates are progressing though
not as fast as we'd have liked. Be sure to always check for the
latest releases and if you're living on the edge, watch the
xcade-test and xcade-discuss forums!
Does XCade support expansion media?
XCade 1.4 and later support expansion media fully. This means that
you can move your game ROMs (using XCade's built in move function)
onto your SD card or Memory Stick media.
You can also move the main XCade application to memory stick if
your launcher supports it, and if you're sneaky with Filez or
other 3rd party file managers, you can even move XCade's skin to
expansion media and XCade will detect it and figure out what to do.
This means you can use XCade with a zero RAM footprint!
Why doesn't XCade include any games with the distribution?
XCade is an emulator of classic arcade machine hardware, which means
it only runs games written for old hardware. We do not have licenses
to those games, so we cannot sell those games. We are investigating
our options along these lines, and also investigating the options
of developing new games for old hardware, or perhaps new games
altogether. If we obtain licenses to classic era games, we'll be
sure to post news on the website.
What is a "ROM"? Is it a game?
When people say "ROM" they usually mean "game code and artwork".
Technically speaking, an arcade or home console game is made up of
a large amount of program code and artwork, and this data is
split up across one or more ROM (read only memory) chips. If you
start up XCade without having given it any game ROMs (from the "rommer"
tool) it will complain that it sees "No ROMS!", and you won't be
able to play any games since XCade sees no game code to run. Codejedi
does not include any games (or ROMs) with its XCade product,
as we do not (yet?) have licenses for them. We only distribute
an application that can make use of ROMs you already own.
Are any ROM games included with XCade?
XCade enables you to play various arcade game ROMs, however you
must obtain these ROMs on your own (see below for some examples).
We are not licensed to distribute or sell these game ROMs though
we are trying to get these licenses. If you like, contact Sega,
Activision, Capcom, etc, and tell them you would like to buy
individual game ROMs or licenses, and that they should start selling
them.
Is there a graphical non-commandline Rommer tool?
Yes! As of XCade 1.4 we include "WinRommer" which is a simple
Windows application that does everything the commandline Rommers
do. An OSX version of WinRommer will come along shortly! With
WinRommer you simply run the tool, pick a game from the listing,
type in or select a directory containing the files making up the
ROM-set and hit Convert! A new .pdb will pop out in the same
directory you run WinRommer (the "current directory" actually)
and you simply send that up to the handheld. A screenshot
of WinRommer is here.
How do I run "rommer"? It flashes and goes away!
The initial versions of XCade include "rommer" as a command-line
tool, which is to say in Windows you hit Start, hit Run, and then
type "command". For Mac OSX, find and run "Terminal". Once you have
a command line up, you can run "rommer" from that. We will have
a GUI tool for both operating systems soon! (or maybe
already have one and forgot to update the question? Check! :)
If you're using Windows, be sure to try WinRommer in XCade 1.4. For
OSX, a graphical tool will be available soon!
A basic walkthrough of using the command-line Rommer tool follows.
It is
assumed you have already obtained your ROMs and placed them somewhere
you can get at them. Remember, Windows command-lines are funny, so if
you're not too sure, or are having problems, put the ROMs into a simple
path like "C:\ROMS" and not "C:\Program Files\ROMS" - Windows has a
hard time with Spaces and long directory names. For Mac OSX just drop
the ROMs in your home directory ... see below.
Our example below assumes you have downloaded the XCade distribution,
and extracted the XCade contents from the .zip file into
"C:\DOWNLOADS\XCADE" (for Windows) or into a directory called "XCade"
in your home directory (for Mac OSX). It assumes you have the bare
ROM files for a game in "C:\ROMS" (for Windows) or the "ROMS"
subdirectory in your home directory (for Mac OSX). For example, you
might have 4 or 5 files making up "Space Invaders" in "C:\ROMS",
all with funny names. Where you put things is your business, of course,
but these paths are used in the example here.
For all examples...
- Open a shell or terminal. In Windows, click on "Start", then
hit "Run", and enter "Command". For Mac OSX, find and run
"Terminal".
- Change directory to where XCade is. For Windows, this means for
this example, enter "cd C:\DOWNLOADS\XCADE" and hit enter. For
Mac OSX, you'd "cd ~/XCade".
- We are assuming you wish to convert Space Invaders.
So.. lets do something!
- What games can Rommer convert and use with XCade? What ROMs does
it need?
To find out, just run "Rommer" itself, with no arguments, and it
will tell you what games it can run. For Windows, since you're
already in the right place (see above), just enter "rommer" and hit
return. For Mac OSX, it is wisest to use "./rommer" and hit
return (also assuming you've already changed into the right
directory). Rommer will list the game-names (short form) as well
as the ROM files that make up the rom-set needed to support it.
- How do I convert a ROM-set into a Palm file for XCade?
A single game is usually made up of multiple ROM files.. the whole
related group is called a ROM-set. Rommer can take a ROM-set and
make a single Palm PDB file out of it, for XCade to use. Here is
how: If all the ROM-set files are in "C:\ROMS", then you simply
pick a game-name (the short form) and run Rommer as follows:
rommer spacinv C:\ROMS
or
./rommer spacinv ~/ROMS
(for Mac OSX)
Thats it! Just upload the newly created PDB file to your handheld
(try double clicking on it for instance) and you're on your way.
Is XCade descended from MAME? Whats the history?
XCade has nothing to do with, and in fact pre-dates, MAME.
I offer this FAQ entry as a quick little history and overview of
a fun and competitive scene back in the mid to late 1990's. It should
serve to shush those who keep thinking every emu author is ripping
off MAME :)
The short: XCade came before MAME. Try google, and you'll see a lot
of "Jeff Mitchell" references to emulation :) The medium: XCade is
entirely code written by Codejedi, from around 1995 through 1998
or so. Parts of
XCade were even donated to MAME and we're responsible for a dozen or
two dozen game drivers *in* MAME, and at least one CPU core.
The long: Lots of people tend to think MAME was
the first emulation, since it was probably the first one they saw.
However, the reality is actually the reverse of this... there were
dozens of arcade emulations before MAME, and it was a great time
in online history. People were poking around in the dark and we
were all swapping ideas and code like mad to figure out this sort of
magic. XCade was one of the first (but certainly not the first.. there
was Dave Spicers Sparcade and Neil Bradley's Atari vector emulator
to name a few). Most emu's at the time were dedicated to one game or
to a family of games (like the Kongulator, an old favourite of mine :).
We started noticing patterns in the system.. common code to load ROMs
and set up memory, and common ways to use the CPUs etc. So XCade
was moving towards merging a few games together into one engine, but
it wasn't really elegant at it and when Retrocade came along I joined
that crew.. it was very advanced and efficient. Nicola Salmoria
had created a remarkable amount of independant emus and started
working on MAME, and did a very good job at creating a general system
capable of supporting many games. By that time I'd donated a bunch
of code to some capable MAME guys and joined Retrocade to work on
it instead. At its height, XCade was about 25 games before MAME was
onto its feet, and for a couple of months there was some friendly
competition as XCade tried to stay ahead in the game count with MAME.
As you can see, XCade quickly lost
that challenge as MAME was superior and hundreds of people had joined
its ranks. Anyway, I had moved over to Retrocade as it was the
most technically superior of the time, focused towards efficiency
on even lower end machines. As we developed code for Retrocade,
we'd hand chunks of it over
to the MAME guys, which resulted in lots of drivers for MAME. So
MAME is really the offspring of dozens of emulators and the
hard work of brilliant people like Nicola and Aaron Giles and
hundreds of other anonymous contributors. But certainly it was not
first and not the last,
and certainly its not all MAME original code. For the curious, you can
check for my name in the code and you'll find it :) You'll find my
influence a little more often though.. I tended to hand off code to
others more, while
I focused on XCade and Retrocade. XCade continued to develop
privately, as there wasn't much need to release it, but it proved an
excellent development and testing platform for Retrocade experiments :)
XCade's original source code is still available, although it shows its
age.. but it remains simpler to look at than MAME's and serves as
a good tutorial on simple emulation :) XCade is old,
but it has lots of good code at its height.. proven by the fact it
was portable to Palm OS (though with major rewrites and modifications.)
Still reading?
The longest answer is.. I've supported the scene awhile.
Started with
writing emulators, then with running a website to display the
history of arcade emulation and archive the sources of the oldest
emulators (that site is now gone, but I still have the content and
you can still see the logos for that site if you look hard ;). I
have donated code to numerous projects including MAME, Retrocade,
XNES, Handy and a half dozen others I can't even recall. Whew!
It would be cool someday to get together with all the original
emu authors (arcade, console, all of them) and drudge up old
emails and ideas and make a "scene diary". They were good times.
They *are* missed :)
Is emulation legal?
Yes, of course it is! An emulator is a piece of software that simply
pretends to be a piece of hardware, like an arcade machine. An emulator
is developed through published documentation about that hardware. It
is much like creating a screwdriver .. published standards exist and
the designers just have to make their new screwdriver fit the same
holes an old scewdriver fit. An emulator is designed to fit the same
specification an old piece of hardware used to fit.. its just we do it
in software instead of with large bulky 20 year old technology :)
Using "MAME ROMs"?
ROMs are ROMs -- they're just dumps of the binary from the chips
on a gameboard/cartridge/etc. As such, XCade ROMs are the same as
MAME ROMs. The trick is that the filenames for ROM files inside of
ROMsets can differ from emulator to emulator.. the MAME guys rename
them once in awhile, for instance, while XCade is following the
conventions used long ago, so sometimes you'll need to make sure the
files are named correctly in feeding them to Rommer. If you've got
a romset you're using for MAME on your desktop, just run it through
rommer; if rommer complains, look at the filenames.. renaming is
usually fairly obvious.
Is distributing ROMs legal? Can I copy my friends game
ROMs?
No. Its just like buying a music CD -- if you buy it, you can listen
to it, and you can perhaps loan it to a friend to listen to. You cannot
copy it and let your friend listen to that copy, since you are then
distributing a stolen copy of the music.. but you are allowed to copy
it for yourself as a backup. If you own a license to a game ROM, you
can play it, and you can let your friends come over and play it. But
you cannot copy it to your friend to play, since they are then using
a stolen copy of it. So do not distribute your ROMs.
How do I obtain arcade game ROMs legally?
As of October 2003, a new option has arisen! See the first FAQ
question; in short, a company (StarROMS) is now selling individual
arcade game ROMs!
This is a tough question, but one we wish to address as we sincerely
wish to promote the arcade industry and the companies who've built
it. Firstly, we are not lawyers but we draw on the existance of
other emulators and their discussions. Emulators haven't been
suppressed by large companies because they are entirely legal
and legit.. but ROMs are intellectual properties owned by
companies who make a living selling them. Please respect that.
We will break this up into a couple of other questions, depending
on your situation. Please read on and remember we are not
lawyers.
Owning the arcade game or motherboard:
The best way to obtain the ROMs is to buy the arcade machine or
at least the motherboard that is the heart of the arcade machine.
Most classic games can be obtained from
ebay for $15 or $20 USD.
(Yes, you too can own an original Pacman gameboard or machine, though
such true collectibles are generally worth more than $20US). Over
the years we at Codejedi have amassed a personal collection of
hundreds of arcade gameboards quite cheaply. Once you own the
motherboard, you can read the ROMs from it using an
EPROM reader. Its your gameboard
and so under Fair Use you're allowed to change the format of that ROM
as far as we are aware of and to use it within emulators. Never
send your ROM file to someone else.
For your information, arcade (and jukebox and pinball!) collecting
is an extremely fun and addicting hobby. If you get the
opportunity to drop by a local coin-operated auction, do it.. you'll
love yourself for it, even if you just play a few old games instead
of walking away with a half dozen of them :)
(and your significant other will hate you for it!)
We realize this is lots of work, a little pricey, and intimidating,
but it is the only true and known way to really own the arcade
rights (short of buying them from the company, which is out of the
question normally).
Owning another commercial emulator (like a gamepack for Dreamcast
or Playstation or PC, say) and downloading ROMs:
We are fairly certain that if you own a ROM in some other product
you are welcome to use it in another product, provided you do not
have to decrypt it. We have no idea if you are allowed to download
the ROM from someone else even if you own it, and we do not know
who is breaking the law if indeed they are. And it may vary
by country of course.
It is assumed by the online community that due to the Fair Use laws
allowing you to change the format of something unencrypted, you
may buy a ROM from some commercial licensed distributor and use
it in another application. Once you've bought the ROM, it is assumed
you can do with it as you please, as long as you do not distribute
it yourself. For example, it is assumed you can buy the Atari
Collections for Playstation, which run emulation of old Atari arcade
games. Once you own that, is is assumed you can then get the ROMs
for these games and use them in an arcade emulator entirely legally.
We at Codejedi cannot say if this is true or not and as such
advise against it, but thousands do it anyway. I would suggest you
investigate the legality of this approach.
One often quoted piece of American law states:
Federal US law allows a user to make as many archival copies as necessary, including relocation to a different medium of storage. Title 17 USC Section 117 backs up this claim:
117. Limitations on exclusive rights: Computer programs
* Notwithstanding the provisions of section 106, it is not an infringement for the owner of a copy of a computer program to make or authorize the making of another copy or adaptation of that computer program provided:
1. That such a new copy or adaptation is created as an essential step in the utilization of the computer program in conjunction with a machine and that it is used in no other manner, or,
2. That such new copy or adaptation is for archival purposes only and that all archival copies are destroyed in the event that continued possession of the computer program should cease to be rightful. Any exact copes prepared in accordance with the provisions of this section may be leased, sold, or otherwise transferred, along with the copy from which such copies were prepared, only as part of the lease, sale, or other transfer of all rights in the program. Adaptations so prepared may be transferred only with authorizarion of the copyright owner.
So we can assume that if you own the ROM be it within an arcade
machine, or arcade machine motherboard, or even a licensed emulator
from the trademarking company, you're welcome to use it. It is the
distribution of the ROMs which is illegal. Please do not distribute
your ROMs!