|| | | | | | ||
The RC702 was a Danish micro computer produced by Regnecentralen from 1980. The RC702 had a Zilog Z-80A CPU and 64KB RAM, one or two 5 1/4" floppy disk drives, as well as serial and parallel I/O ports.
The RC702 contains the following hardware:
A small note on terminology: RC700 refers to a complete stand-alone computer system consisting of a RC702 micro computer, a RC721/RC722 keyboard, a RC752 monitor, and one or two RC761/RC762 flexible disk drives. The RC700 was also often called RC Piccolo.
The RC702 could run CP/M and a number of standalone systems like COMAL or UCSD Pascal. COMAL (Common Algorithmic Language) was a computer programming language developed in Denmark by Børge R. Christensen and Benedict Løfstedt in 1973. COMAL is a mixture of BASIC and Pascal. It is an interpreted language like BASIC, but with structured programming constructs like IF/ELSE/ENDIF, PROCedures, FOR/ENDFOR etc, much like you know it from the much later Visual Basic. In Denmark, and in a few other places, it was used for teaching programming in schools, and COMAL was the first programming language I learned.
The second programming language I learned was Pascal. I used Compas Pascal for CP/M-80 from a small Danish computer company called Poly-Data. Compas Pascal was written by Anders Hejlsberg, and was later to become Borland Turbo Pascal.
I have made disk images of all my old floppy disks for the RC702 which can be downloaded here. If you have any software on 5 1/4" floppy disks (original or not) made for (or compatible with) the RC700, you are very welcome to send me your floppies. I have made a PC that can be used for reading these and create .IMD files. After reading, I will return your floppy disks. Then you can run your own old programs on the RC700 emulator.
I have developed a software-based emulator for the RC702 computer. It uses the Z80-SIM emulator for emulating the Z80 CPU. I have added support for interrupt mode 2 and emulation of the RC700 peripherals (PIO, SIO, CTC, DMA, FDC, ROM, etc.). Poul-Henning Kamp has been very kind and made a copy of the boot loader ROM from one of the RC702 machines at DDHF.
There is both a standalone version and a web-based version of the RC700 emulator. The web-based version does not implement all the features of the standalone version, but it is very easy to try out because it can be run directly in you browser without installing anything on your own computer. The web-based emulator requires a browser that supports WebSockets, which is supported by most modern browsers. You can try the web-based version here:
If you are running Windows, you can use the install program for installing the emulator on your computer:
This downloads and installs the RC700 emulator on your computer together with a number of sample disks. You can download more disk images for the emulator here. The install program associates .IMD files with the emulator, so you can download and run these images directly.
(NB: Your browser might complain that rc700-win-setup.exe is not safe to run because it is an executable. If you trust the setup program, you can instead download the setup program and go to you download directory and run the rc700-win-setup.exe program from there. If you don't like downloading and running .exe files directly you can instead download the zipped versions of the emulator below.)
The RC700 emulator can run on either Windows, Linux, Mac or bare metal and you can download binaries and source code here:
I have included a disk image (rccpm22.imd) for a RC700 56k CP/M 2.2 rel 2.1 boot disk.
If you download the Mac version, you can open the DMG file and drag the rc700 application to the Applications folder. You might have make it executable by running "chmod +x /Applications/rc700" in a terminal window. You will also have to download SDL-1.2.15.dmg from SDL 1.2 and copy SDL.framework to /Library/Frameworks.
The source code and binaries are distributed under a general BSD license.
To run the emulator you run the rc700 program with the boot disk image as command line argument:
$ ./rc700 rccpm22.imd
This boots up the RC700 in the emulator. The boot loader ROM, which has been compiled into the emulator program, boots from floppy A. The emulator has a SDL-based console for emulating the screen and keyboard and the disk image is used for emulating the floppy in the first drive. You can supply a second command line parameter for the floppy B disk image. F10 exits the emulator.
The emulator runs at roughly realtime speed, emulating a 4 MHz Z80 CPU. You
can adjust the speed of the emulator with the
If you need to change disks (e.g. for the UCSD Pascal Loader), you can use
Building from source code
If you have downloaded the source code version (rc700-src.zip), you have to first build the emulator. For Linux you need to have GCC installed to build the emulator:
$ apt-get install libsdl1.2-dev libsdl2-dev $ make rc700
C:\RC700> nmake -f Makefile.win
To build the emulator under Mac OS X you need Xcode and SDL 1.2 development libraries:
$ make -f Makefile.mac
Hard disk support
The RC700 emulator has support for a 10MB Winchester disk (i.e hard disk).
You can download a blank hard disk image and use the
$ wget http://www.jbox.dk/rc702/blankhd.zip $ unzip blankhd.zip $ ./rc700 -hd HD.IMG rccpm22.imd
RC700 56k CP/M vers.2.2 rel.2.1 C>A: A>STAT C: DSK: C: Drive Characteristics 7200: 128 Byte Record Capacity 900: Kilobyte Drive Capacity 128: 32 Byte Directory Entries 0: Checked Directory Entries 128: Records/ Extent 16: Records/ Block 384: Sectors/ Track 3: Reserved Tracks A>STAT D: DSK: D: Drive Characteristics 63360: 128 Byte Record Capacity 7920: Kilobyte Drive Capacity 512: 32 Byte Directory Entries 0: Checked Directory Entries 1024: Records/ Extent 128: Records/ Block 384: Sectors/ Track 27: Reserved Tracks A>