ARAnyM:
Atari Running on Any Machine
Thomas Raukamp
interviews the team
Thomas:
Who came up with the idea for ARAnyM?
Petr:
I think that the initial idea was that we
wanted to be able to run FreeMiNT on machines in our regular jobs.
We tried to enhance STonX as the only open source ST emulator but it
was far too focused on emulating an Atari ST with 68000 CPU. I remember
I tried to add a FastRAM to STonX until I realized that the CPU MC68000
is a show-stopper.
Then we started thinking about getting at
least 68030 CPU and an idea of our own project was born. Later, when
Ctirad as the visionary convinced us that we wouldn't be creating just an enhanced
ST emulator but a completely new machine, the real idea of
ARAnyM as the future of the TOS platform was
established. So the idea was
born in a longer discussion between us four.
Ctirad:
Petr is wrong, actually. The first time I
mentioned the potential possibility of using regular PC hardware as full featured
TOS clone was back at the time when Milan040 was released. Everybody told
me at that time that it's a bullshit. Much later (probably in 1998)
I created WWW pages where I explained the possibility in a detail.
The code name was "Atari x86" and it was planned to build on STonX with
DOS as the host OS. Some people considered it interesting but only Milan
and Standa took it seriously. And this is what ARAnyM was born from.
Thomas:
Where does the name come from?
Standa:
The project name question was raised on the
mailing list and it was actually me who said, "ARAnyM".
Petr:
We spent some time by thinking about the
name for our new project but I remember we couldn't agree on anything
cool. At last we decided to use the acronym that should make it clear that
we don't focus on one host platform (x86/DOS) but are building an open
and extensible project, running on virtually anything. No, your toaster
is not listed as a supported platform yet but it may change eventually,
as soon as you get Linux running on it ;-)
Thomas:
A lot of people don't know the main
people behind it. May you be so kind to introduce yourselves?
Milan:
I'm a student of Czech Technical University.
My domains are operating systems and neural nets.
In the
ARAnyM project I am "responsible"
for CPU and related things (MMU, FPU, JIT),
for the building structure (autoconf, makefile) and for general portability
fixes.
Standa:
I'm 25. Graduated in computer science. I
work in a startup company that is building a web services platform.
The TOS platform gives me the field to learn new things about how things
work under the hood. You could have met me as one of the two people in JAY
Software developing TOS platform projects. In ARAnyM I take care of most
of the host file system access and the graphics output (fVDI driver and
also large parts of VIDEL bitplane conversion routines). Of course there are
others that contribute in this.
Petr:
I'm 29 already (huh), married (contrary to
the guys above) and work as a web application developer (Java)
and Linux sysadmin. In the Atari world I am also known as Joy
(an old high school nickname). For ARAnyM I work
in several areas - hardware
emulation, host/Atari communication (keyboard, mouse,
various I/O
ports), system timer and also on related tasks like TOS
4.04 patching,
TOS drivers, NatFeats, XHDI layer and so on.
I also do the project release management
and keep the web site updated.
Ctirad:
I'm 26 and am finishing the Czech Technical
University. Besides that I'm a musician and of course Atari fan, even
though
I have no real Atari hardware any more. My main job in the ARAnyM
team is (or mainly was, in the beginning of the development) to keep the
real programmers in a highly excited state. In reality it works as follows:
- In phase 1 I outline an idea and the way
it should be realized.
- In phase 2 everybody bounces that it's
a complete nonsense and that it's impossible to do that.
- In phase 3 there is a furious dispute where
everybody tries to explain me why it's impossible to do it.
- Phase 4 brings a general consensus that
it's really impossible to do that or perhaps that it would be possible
but only in a completely different way.
- In phase 5 somebody comes (usually Petr)
and reports that he has just done that in exactly the way
I originally proposed and that it works.
Maybe I should get a patent for this way
of project management :-)
Petr:
Though please note that the ARAnyM team is
not just us four Czech guys. We have a number of contributors with well-known
names like Johan Klockars (the fVDI author), Didier Méquignon (the
sound driver and Aniplayer author), Patrice Mandin (wrote the DSP 56001 emulation)
and others (full list of contributors is available in the file named
AUTHORS). It's truly open source project with contributors from all
places over the world.
Thomas:
How long have you worked on ARAnyM now?
Petr:
We started thinking about ARAnyM in spring
of 2000 and the first real work done on the ARAnyM itself (not
counting the work done on STonX earlier) was in fall of 2000, if
I remember correctly. So it's
been about two years now.
Thomas:
How long have you used Atari computers?
Milan:
12 years.
Standa:
Atari fan from my 5th grade on the elementary
school.
Petr:
I have been working with Atari computers
since I was 13 so it's been for last 16 years. I had most machines (from
800XL to ST to STE to Falcon to Afterburner) and it still wasn't enough
:) Luckily now I have the ARAnyM.
Ctirad:
I started with Atari 800XE sometime on the
elementary school. After trying C64 and Amiga 500 I returned to Atari Falcon030 which was an
absolutely great machine. At one moment I even had three
Falcons - one for working, another one for music and one spare for hardware
trials.
Thomas:
At the moment there are a lot of free
Atari emulations out there. What's the reason for another try?
Milan:
Because all are for games or are commercial.
Or their internal structures aren't good.
Standa:
Before ARAnyM I had a Falcon030, however
I've been working rather in MagiC PC. I have always wanted a faster
TOS computer that would be capable of running FreeMiNT and would
have at least the same features as MagiC PC. For me the goal was to have a
faster programing environment for TOS compatible application development.
ARAnyM is the solution for my desire.
Petr:
As Standa points out (and as I outlined earlier
in this interview) we originally needed something that we could
use for running our development environment we ran at home on our Falcons
(something with fast CPU, good graphics and lots of memory). Later,
after realizing that Ctirad was right and that
ARAnyM is The Way
of TOS compatibles in future I have been working on it to give all remaining
TOS users a possibility of upgrading their ageing machines.
Ctirad:
Why another try? Simply because the difference
between ARAnyM and other Atari emulations is about same as the
difference between Cubase VST for Windows/Mac OS and original
Cubase running on the same machine under one of those Atari
emulations.
Thomas:
There has been some discussion in the
past if ARAnyM is just another emulation or a "virtual machine".
I've even heard the opinions in your development groups vary... What makes ARAnyM so special?
Milan:
If it is "just another emulation",
can you name any real Atari computer which ARAnyM would emulate?
Standa:
What makes it so special? The spirit. The
belief that this is the one and only way to get the platform
forever and for free on any machine you have.
Some developers believe
that it is possible to port FreeMiNT to the
host OS but this would cost
too much time and effort.
Just think about ARAnyM a bit like a
Java virtual machine. The byte code here is the MC68040 instruction
set. Therefore there is no need to switch from Atari to PPC or something
precisely specified. You all can just keep up
the good work on
the M68K software and we will try to make ARAnyM able
to run your
clean software on any hardware.
Petr:
As Milan correctly says ARAnyM is not an
emulator simply because it doesn't try to emulate any existing
real machine. I should know what is an emulator and what
is not because I also work on http://atari800.atari.org/
and that one
is an emulator for sure. It tries to emulate original Atari
800 machines as closely as possible.
Similarly, STonX (or any other ST emulator
for that matter - be it Steem, hatari, STonC, Gemulator, TOSBox or anything
else) tries to emulate the original Atari ST hardware as closely
as possible. It follows the exact bugs in shifter, exact MFP timers, exact
MC68000 CPU - the goal is simple: to get the original games and demos running
exactly like they would on original Atari ST.
Compare this with ARAnyM - it does not try
to emulate any existing Atari machine. Instead, it builds its own standard,
be it the extended CPU (based on MC68040 but with full MC68882 instruction
set plus NatFeat extensions), the new native graphics, the new native sound,
the new native hard drive access... Still, thanks to partial
support of Falcon hardware it's able to boot
TOS 4.04 so you can enjoy the
latest OS from Atari. But please note that the emulation of Falcon
hardware was not a goal - it's been just a little
helper so we could
quickly get something booting and could focus on
implementing the native
drivers.
Also ARAnyM's goal is a completely different
- it's not there for replaying old games or demos. It's a new powerful TOS
compatible virtual machine which you can use both for developing and
playing new games, demos and multimedia. Or you can just work comfortably
with your existing TOS/GEM software base.
I also hope that the availability of such
a powerful machine where GCC (a free C compiler) can compile anything
very quickly will help the other developers
to develop more TOS software
in a shorter time.
While other ST emulators try to make you
feel like you were sitting in front of your 15 years old ST, ARAnyM
tries to make you feel like this is the right
upgrade from your ageing Atari
hardware.
Thomas:
What are the main parts of ARAnyM?
Petr:
CPU emulation is one large part of the source
code. The hardware emulation is another part. Then there are
new native host-side drivers for video, sound and disk/file
system access.
At last there is some glue, a simple GUI, and the little stuff around
(processing the config file...)
Thomas:
How many parts of the host operating
system (Linux, Windows) are important?
Standa:
ARAnyM relies on several fetures
of the host OS. Basically it would be possible to remove the system, but in
that case it would become dependent on the drivers that are now supplied
by this OS.
Petr:
In certain configurations (ARAnyM
on Linux frame buffer with direct access to hard drives) we use just
the low level drivers (video, disk, audio) of
the host operating systems.
Thomas:
Could ARAnyM boot without the host system
showing up?
Petr:
Yes.
Thomas:
So it would be possible to have a Linux
box which is booting ARAnyM without all the Linux stuff appearing
on the screen?
Petr:
Yes. It's even one of the ARAnyM's final
goals. Turn on a machine, get the Atari Fuji logo (or something similar
that is not copyrighted) and boot to familiar GEM desktop directly.
That's it.
Thomas:
What are your thoughts about a complete
system like that in the shops? Isn't this the faster and cheaper way
rather than building new clone hardware?
Milan:
It is the fastest, the cheapest and the best
way. And today the only way.
Petr:
For some unknown reason you steal our ideas
:) Seriously, this has been the key thing that Ctirad convinced
us about. That the future of TOS platform is not in developing small
series of over-priced accelerators or completely new hardware that
often has nearly nothing in common with the
original TOS machines
from Atari. Besides the inadequate price (dictated by
the small series)
the main problem lies in obtaining it in any other country
than
it was developed in. Compare this with ARAnyM: you simply get
a cheap hardware available at your nearest street corner and install
just the heart, the ARAnyM that will turn it into a full featured TOS
machine.
Thomas:
Do you think you will define a recommendation
for an ARAnyM-box in the future, so dealers could put together
their own boxes to sell?
Milan:
CPU AMD Athlon, GPU Matrox Parhelia (the best 2D solution
today).
Standa:
Yes, I would recommend some AMD
CPU (just that I see AMD as the most less problematic nowadays) with a 32-bit
depth capable graphics card equipped with Linux (as Linux is the native
development environment platform for ARAnyM developers). More precise
specification can come later or it can be changed to a completely different
one.
Petr:
It's actually not important what the
box will contain inside as long as the hardware is well supported by
the Linux, our host operating system of choice.
My personal recommendation
is an AMD CPU (because you'll get more power for same money, compared to
other CPUs on the market today) and a NVIDIA GeForce graphics card (it has
a direct frame buffer support in Linux kernel). Also, it's worth mentioning
that Atari users used to have the "Intel Outside" label on their
Atari machines. With the AMD CPU it's still
possible to label ARAnyM box as "Intel
Outside" :-)
Thomas:
What about the copyright issues? Don't
you need TOS to work with?
Standa:
Nope. TOS is not essential to run ARAnyM. You can boot
EmuTOS (http://emutos.sf.net) and run for
example FreeMiNT
on top of it. This way the whole platform is copyright free! And I would
say it is the dream of all of us who can't stand closed-source - no
more supported, buggy software. If you need a specific feature then you can
implement it yourself directly into ARAnyM and send the patch to
our CVS repository. Or you can even hire a programmer to implement such
feature.
Petr:
Luckily we found a group of great guys that
decided to write a free TOS replacement called EmuTOS. The work on
ARAnyM and on EmuTOS runs in parallel. During last year we have seen
a great progress on the EmuTOS side and now it's possible to use it for
most applications as the true TOS replacement. Thanks to its open-source
nature I was even able to implement an advanced disk drive access
directly to EmuTOS' internals so currently EmuTOS is not only an OS with
integrated hard disk driver but also the only OS with direct access to
ARAnyM's hard drives.
Thomas:
What's your opinion about the free AES system,
XaAES? Is this a good choice for a complete ARAnyM
package?
Milan:
For me it is the only choice. N.AES is nice
but it is a commercial software.
Standa:
Speaking about open-source and free software
this is the only and best choice. Henk is doing very good
job on it in my honest opinion. Just use it
and help with the debugging. I believe it
will become the only live AES as it is free,
supported and I see unlikely
this status will change.
Petr:
While there's nothing wrong with commercial
software in general, the Atari/TOS market is a bit specific.
Commercial
software is very often left unsupported and without the source code available
nobody can step in, fix bugs and continue developing it. It's very
unfortunate. That's why we strongly support open-source software like
the XaAES is.
Actually XaAES is one of the key components
of the ARAnyM box. Please think about it: we have a free single TOS
(EmuTOS), free multi-tasking OS (FreeMiNT), free VDI (fVDI) and free AES
(XaAES). There are just two components missing: a free desktop and a
free web browser. I would like to encourage all TOS programmers to wake
up and start creating these two missing things. Soon we could have a completely
free distribution available to everyone!
Thomas:
Do you plan a complete distribution
like all the Linux distributions in the future?
Standa:
Here I will recommend the SpareMiNT project
(http://sparemint.atari.org).
We are missing
only a bootable CD that would install the host OS and ARAnyM on top of
it. After this step you can use for example the EasyMiNT to install SpareMiNT.
Petr:
Something like that, yes. But we will probably
not spend much time by building a complete TOS distribution -
the SpareMiNT could do it for us, perhaps (if it included also GEM applications,
that is). What we are going to do is a mini-distribution
that will install the necessary parts of the host OS
(most probably
Linux kernel) and the ARAnyM on top of that.
The actual TOS software
might be pre-installed or might not. It depends on the
packager.
Olivier Landemarre is working on such a CD right now so we may soon see something
real.
Ctirad:
If there was enough interest from the users
it would be very good to create a complete distribution that installs everything
from the ARAnyM core to MiNT and its utilities
to freely distributable
software packages. I personally would be very glad it there was such distribution
but it all depends on the users and their interests, of course.
Thomas:
What's the state of development at the
moment?
Standa:
Getting closer and closer to the version
1.0. ;) Just have a look into the CVS/ChangeLog file and CVS/TODO
to become informed. Don't forget to watch http://aranym.atari.org/
home page.
Petr:
We are working on many issues at once. While
we have done a lot of work already we still have to add
a few remaining features. he most missing thing now is the network
access. As soon as we get that one working we'll
be able to release
ARAnyM 1.0.
That said, we welcome anyone who'd be willing
to help us out.
Thomas:
What 68K emulation do you use? Did you
write your own stuff or do you use UAE or anything like it?
Standa:
We use UAE CPU core as well as the UAE-JIT
core ported from the Basilisk II (a Mac emulator).
Petr:
Thanks to open-source and GPL nature of similar
projects (Bochs, UAE, Basilisk II) we were able to use already
written code. Great thing on this sharing code is that we were able
to identify and fix bugs in the code we borrowed and thus we contributed
back to the original authors our bug fixes.
Basilisk II's author Gwenole is
also a good contributor in the ARAnyM developer
mailing list. The open-source
spirit is great.
Thomas:
What about special features like DSP emulation?
Milan:
It is very nice. But not for real work. Maybe
somebody writes an interface to Déesse, then it could be
more interesting.
Standa:
The DSP emulation doesn't make much sense.
It was developed by Patrice Mandin to let a few clean DSP
programs work. The main problem here is that DSP
utilizing software is mostly
not written as system clean and therefore it won't run on any TOS clone.
Petr:
The DSP MC56001 emulation is actually a great
thing for studying the existing software from inside.
You can
trace the software in a way that would not be possible on real DSP. I
think Patrice wrote it mainly for this studying purpose. It definitely
was not meant as something that would allow
running old Falcon games, demos
or even sound applications. No way. Those programs are usually written in a very
dirty way (avoiding system clean programming and going to hardware
registers directly) and always rely on exact timing - a thing we don't have
in ARAnyM (if you haven't realized it yet - Aranym's CPU runs as fast
as possible so only real system clean software works properly).
Thomas:
A critical subject may be games. A lot
of them won't run with ARAnyM...
Standa:
I will focus here to porting hatari or Steem
to FreeMiNT. With this and JIT ARAnyM version you should be
able to play games as on your good old ST machine.
Petr:
Games are not a critical subject. ARAnyM
is actually the only TOS machine that can play Quake in 640x480 full-screen
with a 30+ frame rate.
Thomas:
From this point of view the other machines
are in trouble :-)
Petr:
Seriously though: Standa is right - we have
so much power that we would be able to run an ST emulator inside of ARAnyM.
That way we would get 100% compatibility with old ST games - something
that no Atari computer was ever able to achieve,
not even Atari STE
:)
Another great thing is that the ARAnyM power
allows for a whole new generation of games - fast 3D games, great
arcades requiring a lot of CPU power or memory - everything is possible
now. We don't even have to write these new games from scratch - a lot
of games are available with source code so we can just recompile them
for TOS. For example Patrice Mandin is doing a great job with porting
well known games to our platform.
Ctirad:
I would just note that there is an enormous
amount of various computer and game console emulators that can be easily
ported to TOS platform. Often it's a matter of plain recompiling,
thanks to the SDL library. Thanks to ARAnyM it's easy to play games
under emulators of SNES, Genesis, Gameboy or even Amiga or MAME. And that all
in GEM windows without the need of rebooting to some "compatible"
graphics mode. Just see the screen-shots.
Thomas:
When do you think you´ll have a complete
package?
Standa:
It depends on how many contributions we can
get. All the ARAnyM developers have their regular job
with that are quite busy of course. ARAnyM is
a product of really restless
night shifts...
Petr:
...and weekends without our families. Right.
More contributors can help us finish it earlier.
Thomas:
What is your opinion about the ColdFire project
or accelarators like the Centurbo 060? Are
these a waste of
time?
Milan:
No, it is no waste of time. I like software
"assembly", others like hardware "assembly". I believe
that CT60 and CF are interesting solutions for
some people.
Standa:
I have said to myself that the time of wasting
my money for a project with future shorter than a year
is gone. It's been quite some time that I spent a lot of money for my STs
and Falcon. Now no-one is forced to do that.
ARAnyM is here. I don't care
about these projects. I would rather share the
knowledge with the
developers to make ARAnyM the only (and it is the only) logical TOS platform.
Petr:
From pure business standpoint it's wasting
time and energy. But I can imagine that some people are simply
fans of hardware, like we are fans of programming. Such hardware fans may
like building new hardware no matter how much time and money spent on
it. Unfortunately it does not help the community as a whole.
The hardware
will never be cheap enough and will never attract enough people to buy
it. Thus the community is stuck with twenty years old CPU that blocks
the software developers from using the more advanced 68030/68040 instructions,
MMU, FPU... I think we need to quickly upgrade the machines,
forget ST and set the 68030 as the minimum CPU, FPU as a standard and
14 MB RAM as the minimum RAM. And I believe ARAnyM can do that for the
least price.
Thomas:
Some people say only original hardware
gives the real "Atari feeling". Any comments on that?
Milan:
That's their problem.
Standa:
So, enjoy your ST. But don't ask me for 32 MB
of RAM.
Petr:
Right. I don't want to use a prehistoric
machine. Actually it's not even possible to use such machines seriously
today. How about replaying a DVD or a DivX movie? How about fast internet
access? The guys that require "Atari feeling" most often
have another machine besides the Atari that they
use for everyday tasks. Eventually
they stop running their Atari machine and switch to the other machine completely.
And yet another Atari user is lost. Is this what we want? No. We
don't want to see the platform dying. That's why we've been working on ARAnyM...
Thomas:
What are your thoughts about the Atari community
today?
Standa:
There are quite a few users left. Some of
them still don't understand the market processes and some
of them have a lot of money. But there are only few really active developers
there. You users should think about keeping them or you'll never
get any new software in the future.
Petr:
The community is still there but much smaller
and fractionalised. We managed to bring some real great guys
into the ARAnyM list but otherwise I don't know where else to look for active
users. Right now I would just invite everyone that still wants to use their
TOS software to the ARAnyM user mailing list. We want to
hear from you that you are alive and that our work
on ARAnyM has some sense.
Remember that we are not creating an emulator for reminiscences but
a new machine for each of you.
Ctirad:
The Atari community is unfortunately fragmented
to several groups of people that have very little in common. At one side
there are nostalgic people that use ST purely for retro-gaming and have
no idea how the TOS desktop looks like. Then there are hard-core Atari
users and demo-makers that spend money for accelerators and other add-ons
to their Falcons but in the end, for regular daily work they often use PC
with Windows. The last group, the most important for ARAnyM, contains real
users of TOS/MiNT applications, that don't really need to feel the nostalgia,
neither they need the Fuji Atari logo. They simply want to work comfortably
in their favorite OS.
Thomas:
Why should we keep the Atari system
alive with emulators, clones and so on? What's so special about the Atari?
Milan:
Spirit.
Standa:
It is about feeling. Do you think you can
do that much to the PC community? But, beware, the community
needs to exist for this feeling becoming the truth.
Petr:
Yeah. It's the spirit. That all Atari users
are somehow exceptional in the world of PC and Windows ;-) Also,
I have so many great friends thanks to the Atari computer. Some of them on the
other side of Earth, I'll probably never meet them but still I am grateful
for being able to discuss and work with them on the TOS software.
Ctirad:
Atari/TOS is a platform proven by time. If
there wasn't TOS (but also Amiga OS and Mac OS) today's modern operating systems
and applications would never look like they do today. The most important
thing for me is the existence of the MiNT which is based on the same philosophy
like Mac OS X is based - though Mac OS X came ten years later after
MiNT! The best thing on MiNT is the possible customization - I can take
it as a multi-tasking TOS (like MagiC) that is fully GEM driven and Unix
core is completely hidden inside. Or I can take MiNT as a pure Unix and forget
any GEM and TOS relations. Or I can combine both above mentioned methods
in exactly that relation that suit my needs. That's why it's not "yet
another Unix/Linux clone". I dare to say that if ARAnyM was really finished
to the form of operating system based on MiNT but running on any hardware,
it could become a full featured rival to today's systems.
Remember that there is a large number of TOS/GEM applications
that for example on Linux do not exist...
Thomas:
Thanks for your time.
ARAnyM team:
Thanks for your interest in ARAnyM and we
hope that this article will help the remaining Atari users to consider
a very cheap upgrade to the ultimate TOS/GEM machine.
This interview
was originally published in German by st-computer
magazine, December 2002, and is reproduced in English
with kind permission.
|