CT60 ROAD TEST.
Emulators under '060 considered..
I've got a bit of spare time since kicking out the main bulk of my
contribution for this issue of Alive! Seb hasn't had the chance to do the
same yet, so this gives me some extra time to introduce a topic which I had
sort of planned to leave until next time.
I've always been fascinated by the concept of emulations, even since the
early days. The idea that one computer can emulate another, the other often
running with a totally different design philosophy and hardware, might not
do anything for some people, but it rips the 'need to know more' part of my
brain open like a rusty tin-opener with the audacity of the idea. The idea
first took off properly when I got a Falcon '030, the first machine I owned,
which I considered as powerful enough to seriously attempt it.
There were some early successes, such as Christian Gandler's 'Specci' ZX
Spectrum emulator, which did a pretty decent job of imitating a classic
early home computer, which was a repository of many fond memories among the
UK'ers. It did become apparent that the Falcon didn't have enough basic
processing grunt to get much further than that. Others did try though, the
most notable effort being the Reservoir Gods attempts at getting us to play
'Nintari'. But generally, it was realised that a whole different magnitude
of hardware power was needed, if emulations of any great complexity weren't
going to be agonisingly sl-o-o-o-o-w!
In theory, any 'Turing Machine' or computer can emulate another, but for
that emulation to take place in a meaningful time frame, preferably
realtime, the capability of the host machine has to be significantly greater
than the target machine. To be painfully honest, a 16mhz '030 wasn't the
ideal solution.
And at last, the hardware boost of sufficient power has arrived, with the
CT60 accelerator. People without one of these will be getting tired of the
triumphal tone of this paragraph, but it also serves as a useful opportunity
to re-examine some of those classic emulations created with a TOS computer
in mind. (It is interesting to note that no-one with a Hades or Milan '060
has written in previously on this topic, but then again, it always seems to
take a scene-active Falcon owner to boldly step where serious users fear to
tread!)
The emulators we tested were, with one exception, programs which were all
developed and abandoned years ago, in some cases, up to a decade ago. It was
going to be interesting to see if anything did work with the most powerful
end of line member of the MC68k family, or possibly not?
The news was somewhat mixed. Some ran, others didn't, but there was one
which was very good. I tested both with caches 'on' and caches off mode. It
didn't seem to make any difference to stability either way. So how did we
get on?
Specci 2.07 was compiled with a Falcon/TT combination in mind. This 1993 era
emulator has worn amazingly well, and offered a very high level of
compatibility for back then. When it was introduced to the new hardware, it
ran, but not for long, as a wobble of instability was introduced. Specci
could go a short way, but then it crashes within the emulator, generating a
Specci-specific error screen. At the same time, you find that a reboot is
needed because the CT60 as a whole is frozen...
Sander Berents TRS80 emulation managed to run. This mono-based GEM emulation
was too fast even on a CT2. The same went for it on the CT60. The keyboard
emulation was unstable, throwing up jittery extra unwantedd charactersss
with a lot of keyyy presses. Any games ran way too fast, but I was able to
leave the building safely and quit the application.
Another personal favourite of mine was Christian Peppemuellers 'AtOric' Oric
emulator, which was almost there, but not quite, at version 0.9. This seems
to want to start up, but it locked up and froze on the boot screen.
Patrice Mandin ported over 'GnuBoy' to Atari TOS and compatibles. Should he
have bothered? Even with the '060, this was still horrible and slow, and
looks and sounds very ill! I guess this is a totally unoptimised port, for
which we are awaiting the Atari Coldfire project to run in a meaningful
manner. Or perhaps Rodolphe Czuba is planning an Intel 'Prescott' 4ghz
daughter-card?!
As for Stemboy, the generic GEM Gameboy project taken over by Matthias Jaap,
managed to start up okay, but it crashed when you attempted to run a ROM
image. This is identical to how it behaved before on my Falcon and CT2
hardware!
Ed Cleveland might well give us a ghostly smile of recognition, if he ever
reads this, as his STe-based 'Nesulator' NES project at last runs at a
useable speed!
In contrast, Godboy and Godlenes crash and burn horribly for the most part.
Although one or two of the earlier Godboy games run, (Bubble Bobble) but not
showing any significant speeding up effect.
The ZX81 emulator works flawlessly and is very stable in operation. It is
very much on the fast side, but not ridiculously so. I would say it thinks
it is running on a very fast 68000?
The one I tried the most, before any of the others, and over the longest
period of time was Flaysid. I can categorically confirm that this one works!
It is rock solid in operation. It is still very much dependent on the DSP
speed for quality of playback, so it will play the higher 33mhz replay rate
better if the CT60 bus is boosted to 20 or 25mhz.
(On the theme of music players/emulators, 'Jam-GEM' does work, but you do
have to turn the caches off first..)
I've saved the best to last, which is also the sole emulator project still
currently under ongoing development. This is the Petr Stehlik inspired Atari
800 emulator. It was always too slow previously, even with a reasonable
accelerator like the CT2, but with the '060 it comes into its own at last,
and runs at a speed more or less resembling the real thing!
I've switched between three distinct versions of the beast, v1.2, which
offers the best speed. Then there is the current version 1.3, which is
slower,but has slightly better music replay, and a greater range of emulated
extended memory (up to 1 meg!) Finally, we have the 68k assembly version of
1.3, which was a lot less stable than the others, and didn't show any speed
related benefits on the '060, in spite of being described as the quicker
version!
Atari 800 was able to run most demos at a speed which was 100%, or in some
cases on v1.2, slightly faster. If you have a desperate need to view old
school scrolly demos c.1989 on a CT60 boosted Falcon, then Atari 800 may be
your best bet. There is a superb demo archive at the following location:-
http://www-user.tu-chemnitz.de/~sgl/atari/
I'm working my way slowly through the collection at the moment! On the disks
there are a number of classic 8-bit demos, such as 'Drunk Chessboard', and
the more recent 'Te-Mod' by Satantronic. These run very well under a CT60
boosted Atari. Plenty of old demos also run, and the few modern Taquart-
style demos with swirly effects I've so far seen also work beautifully too!
Plasma is so relaxing!
Where Atari 800 gives the impression that it is a somewhat broken Atari 800
or XL series machine, gamely attempting to do its best but not quite making
it, is with the sound emulation. Pokey does replay back at the correct speed
on v.1.2, but with lots of crackles and popping. Any major excursion into
digisound tends to crash (as in a proper CT60 exception error 2 debacle) or
freeze the emulation altogether. This is the case on all versions! In other
words, Atari 800 will run most demos decently, but be prepared to reboot a
lot when you find one that upsets it! I've not tried any games or other
applications yet, but I would assume that there would be more stability, as
these make far fewer outrageous demands on the hardware.
To be fair to the CT60, I did also roadtest Atari 800 simultaneously on my
CT2 machine, and the general stability level, with occurrences of locking
and freezing etc, were about the same there. I also noticed a much slower
emulation speed on that platform as well.
If Petr, or anyone connected with the Atari 800 project are reading this,
can they incorporate an easy way to disable the POKEY part of the emulation
if required, as I'm pretty sure that is behind most of the crashes that we
do get at the moment.
You want it oldskool?!
To end this article, I've got some suggestions for future emulation projects
that could be viable for the CT60 level of hardware, if anyone can be minded
to do them of course ;-)
I've ranked these in order of plausibility and likely effort required,
starting with the ones that should be easier to do. My first suggestion
would be for a new Speccy emulator. This would preferably include the 128k
Speccy, and possibly some of the weird Russian clone versions. With an '060
inside, porting existing higher language code becomes a real option now. The
CT60-ised Falcon has some built-in advantages, as some hardware (YM sound)
is already present and won't need emulating. The rest of the Speccy hardware
is relatively uncomplex, with no major custom chips. Maybe the intrepid
emulator porter could attempt an Amstrad CPC6128 on existing portover code?
This later machine has more complex hardware than the Speccy, but not much
more so, and certain common features, (YM sound, and a Z80 CPU.)
At a middling level of difficulty are machines such as the Commodore 64.
This could be portover from any existing Amiga code? The DSP SID-engine
already exists in more than one form. It is even said that Flaysid is a C64
emulation, with the C64 ROM and 6502 emulation included, albeit it all
concentrates on the sound system, ignoring the rest? But contact from David
Carrere is very intermittent, and the release date of any future Flaysid is
uncertain, let alone him doing anything else from there? It is arguable that
the already accomplished Atari 800 is a more technically complex system to
emulate properly, but it has been done, so a C64 would be well within the
abilities of CT60 to do well. (On a related note, we are still waiting on
Oliver Heun's attempt to emulate the Plus 4 series.)
I would also like to know whether there will there be any further Reservoir
Gods inspired ports or patches of their NES and Gameboy stuff? It was
optimised and adapted heavily to work on the standard Falcon '030. It
reached an apogee of performance on the CT2, so perhaps it would be far too
quick with the CT60?
In the realms of the challenging but feasible comes the classic Amiga 500.
In this case, we have a CPU family in common, and some of the hardware, such
as the Paula soundchip has already been done. The graphics are within the
current Falcon/CT60 capabilities. I would guess we would be using disk
images for the otherwise non-standard disk format? If someone was motivated
enough, it would be a suitable revenge to take on those snotty Amiga owners
who think Atari is nothing but lame!
Now we are at the outer limits of the possible. We would be looking at the
16-Bit generation of consoles. The Sega Megadrive has got the CPU family in
common (68000). The sound hardware would be tricky to emulate and would need
a very dedicated DSP wizard. And we have got to see if the CT60 can carry
the screen hardware emulation properly?
The SNES would be a major challenge. It would be great if this one could be
pulled off. There would be lots of work to do in all areas, with its very
custom hardware it would take years to get it right and optimised. I seem to
remember that the Reservoir Gods were pondering this for the Phenix project
at one point.
And finally, I've got a silly suggestion. This is a decent ST emulator for
the Falcon or CT60. Or at least a rework of 'Backwards' to load and run
.MSA disk images off CD-ROM or other mass storage device. There has been a
proliferation of games/demos collections using that media and format. Why
should PeeCee ex-ST owners have all the convenience, whereas we who stay
faithful to the next generation of the original hardware, are left rummaging
in depleted blank floppy disk storage boxes to go through endless copying
hassle and tedium?
Or even a simple .msa bootloader for ST/Falcon and whatever external storage
device combination might be enough?
Sorry, got off the topic and onto a personal wishlist thing there.
Okay, see you all next time.
CiH, for Alive! Mag,Feb '04.
|