This article is copied from the Game Show section, page 58 of the October 1997 edition of Acorn User. Reproduced with kind permission. The text on this page is copyright 1997 IDG Media Ltd.


Frodo

Graham Nelson on the new Commodore 64 emulator

In an age long past (1994), in a land far across the seas (Germany), Christian Bauer wrote an assembly-langauge program for his Amiga to play music files left over from the defunct Commodore 64. As Mr Bauer is, to put it mildly, a Tolkien fan - even the Frodo program logo is spelled out in the late Professor's runes - he will not mind me saying that Frodo has grown in power like a giant spider of the mountains, hatching out its brood into the innocent machines of today.

In particular Frodo 4.0 has been ported to RISC OS by Andreas Dehmel and it's a very impressive piece of work. To give you the bad news first, Frodo makes severe demands on processor time - you'll need a Risc PC - and although you could plod through without a StrongARM, I wouldn't recommend it. On the good side, Frodo is free, runs in the desktop and I've yet to find a C64 program it won't handle properly. If you do have a StrongARM fitted, you can run the C64 at between 150 and 200 per cent of normal speed, which feels about right.

Why so slow?

Architecturally the C64 was a typical 8-bit micro of its day. For instance, it used the 6510 processor - a remake of the BBC Micro's 6502 with a messily expanded memory map, enabling it to have 64K of RAM. It had the usual accessories: Two chips running input/output, a sound controller (called SID) and a video controller (the VIC-II).

Most video chips, like the BBC Micro's, weren't very controllable. They had only a few registers for setting a screen mode and its start point in memory - which you could move around to scroll the picture across the screen. The C64's VIC chip was far more powerful and mysterious, having (like its sister-chip, SID) numerous undocumented and unintended features. It is almost an entire second processor: moving sprites around the screen, detecting collisions, scrolling or changing the style of the screen, adjusting border areas and so on.

Imitating this is far from easy, even given the relatively low screen dimensions. I usually run Frodo in a RISC OS desktop of 480 by 352, so that the C64 display fills most of my monitor. Frodo emulates the two processors alternately for a run of cycles each, switching at the end of each raster line - that is, each line of pixels being displayed by the VIC as it continously makes up the screen. This might no be accurate enough if a game program is meddling with the VIC in mid-raster-line, so a sharper but slower version, FrodoSC, is also available. This switches between the processors every Single Cycle.

Using C64 disc images

Armed with that level of hardware support, and drawing on a big American user base, the C64 commercial games industry was enormous and prolific. As usual there are vast archives of pirated and forgotten disc images on the Internet. These are stored in two main forms: .D64, as used by Commodore disc drives, and .T64, derived presumably from tape formats.

Frodo doesn't include instructions on how to use a C64, though a group called 'Project 64' has for some years now been typing in every manual, release note and cassette sleeve it can find. Here is one way to run a program, anyway. Drop a file into the 'Drive 8' slot of Frodo's 'Preferences' window, select the right radio button (.D64 or .T64) and click OK. Read the directory by instructing the C64 to LOAD "$",8 and LIST the result (yes, as if it were a BASIC program). Anything coming up as a PRG program you can LOAD "NAME",8 and then RUN it.

Commodore 64 games have a colourful, cartoony look at their best - the screen resolution, at typically 320 by 200, is not high, but there are 16 colours, rather than the basic 8 of the the BBC Micro or Sinclair Spectrum, and the VIC chip makes a C64 a match for any of the stand-up arcade games of the period. Reviving all that, Frodo is one of the neatest free programs I've seen for RISC OS for a long time.

URLs to try

http://www.Uni-Mainz.DE/~bauec002/FRMain.html
The official Frodo home page

http://www.debra.rau.ac.za/C64/software/
For numerous C64 disc images

http://ourworld.compuserve.com/homepages/pcgeek/proj64.htm
For Project 64

http://www.student.nada.kth.se/~d93-alo/c64/gianna/index.html
For the Great Gianna Sisters page


The Acorn Emulation Page - David Sharp