Retrocomputing: How to install Thomson MO5, MO6, TO7, TO8, TO9 and Olivetti Prodest PC 128 emulator on Windows, Apple Mac, Linux and BSD


I have seen a resurgence of interest in vintage computing. Since I used many of these old and amazing systems when I started my never-ending learning about Software Development and Computer Science, I decided to start a small series of how-tos, helping those interested in learning how to develop code for vintage computers.

Let’s start with the emulators that will help you to quickly try your favourite vintage system on your modern laptop and/or PC.

The first Vintage System emulator we are going to learn how to install and use is dcmoto, a fantastic Thomson old 8bit computers emulator. Thomson 8bit computers have been legendary between the 80s till beginning of the 90s in France and Italy and they were all powered by one of the most amazing and popular 8bit CPU of the time the Motorola 6800 and 6809 chip, a CPU that was really advanced.

Motorola 68xx was an 8bit CPU family with the possibility to combine 8bit registers to have 16bit ones and a reduced ISA to recall almost RISC technology that would have come later on the scene. My favourite model was the 6809E which was the best available 68xx and supported external clock (the E is for that reason). Unfortunately the 8bit computing never adopted the 2 MHz version of it (microcomputers used mostly the 1 MHz version), this because the 2 MHz version had very strict requirements in terms of fast memory and, at the time, RAM price could determine life or death of a microcomputer.

Download dcmoto

You can get your free copy of dcmoto by clicking here . It’s an excellent emulator for all the Thomson microcomputers, you can also use it on a Apple Mac and Linux/BSD via WINE or CrossOver. It works pretty well on WINE and CrossOver and it’s really simple to install.

Installing dcmoto

Windows

When completed downloading the emulator zip file, unzip it and copy the entire content in a directory on your hard drive of your choice. To make it easy and quicker to run the emulator you can create a link of the file called dcmoto_20170903.exe (please note the long number is the release date, so it may be different on your copy) and place it either on your Windows Desktop or on the icon bar to quick run it any time you need.

Installing dcmoto on Mac, Linux and BSD using WINE/CrossOver

CrossOver

CrossOver is a commercial version of WINE that requires to be purchased from CodeWeavers on-line shop, you can buy it by clicking here. When you have CrossOver Installed you can proceed with the next steps to install dcmoto on CrossOver (CrossOver runs on Linux, macOS and Chrome OS).

Create a new “bottle” (if you don’t know how to then click here) as Windows 7 32bit (or 64bit as you prefer) and then click on the bottle name (I usually call my Emulators) and select “Open drive C:”. This will open a filer window, with the typical MS Windows Directories structure. Click on “Program Files” (or “Program Files x86” if you are using Windows 7 64bit) and create a folder in there called “dcmoto” (or whatever you refer) and then copy the content of the dcmoto archive in it.

Run your dcmoto using the option inside your bottle called “run command”. You can create a launcher script using CrossOver “run command” option and then saving it as a launcher. Now you can go straight to “Configure DCMOTO”.

WINE

Wine is Open Source and command line based.

Install WINE on Linux

Your Linux distro most likely provides already a Package for WINE you can install using your Package Manager. Best to use is WINE release 2.0 or up.

If you are using Debian Linux 64bit, I have found that wine64 seems to be working better than wine32 at running dcmoto emulator, so you may want to try that if you end up having problems with dcmoto execution via wine32.

Install WINE on BSD and/or Mac

If you need to install WINE on BSD please read this document here.

If you need to install WINE on macOS please read this document here.

Install dcmoto on WINE

When you have your WINE installed then you can run dcmoto manually (please note: the following command line run a specific release of dcmoto “_20170903”, so please replace the version date with the one you have downloaded):

wine64 /path-to-your-dcmoto/dcmoto_20170903.exe

Configure DCMOTO

When your DCMOTO emulator is started up the first time it will appear using French language. If you are not familiar with French you can change it either to English (Anglais) or Italian (Italien) from the “Options” top menu option in the “Langue” box.

To select the 8bit microcomputer model you want to play with click on “options” on the top menu and choose your model from the “Ordinateur” box (Computer box in the English version), for example let’s select “Olivetti PC 128” from the list of emulated machines (or MO6 if you prefer, they are the same machine actually).

conf-dcmoto

When you have completed your selection of Language and emulated machine you can click on “Appliquer” (to Apply) and/or on “OK” buttons at the button of the option screen.

Using the emulated microcomputer

Thomson microcomputers booted up in a graphic GUI fashion (before Apple and they looked way better than C64, surprised?), user could use a light-pen to interact with the GUI (so these microcomputers were even ahead of tablets and PDAs). On dcmoto your PC mouse will replace the light-pen, so you can use it to select icons and interact with the GUI.

PC128-001-640x200

Don’t mind that Olivetti called it “PC”, they were calling PC everything at the time, but the 128 was not an IBM PC clone, it was a cool piece of technology…

At the time we had no internet, no google and no youtube, so everything you’ll see in this series of articles come from try and fail in long, very long nights of work after school. …I have lost count of how long it took me…

Most of the Thomson microcomputers came with two BASIC Programming Language Interpreters, both developed by Microsoft:

  • 1 SIMIV BASIC 128 (Microsoft BASIC 1.0)
  • 2 SIMIV BASIC (Microsoft BASIC 1.0)

To select the first BASIC Interpreter press the number 1 on your keyboard or click with your mouse pointer on the corresponded coloured square before the BASIC Interpreter title. To select the 2nd BASIC interpreter press the number 2 on your keyboard or click with the mouse on the coloured square before its title.

To leave both interpreters and return to the initial GUI you can type (from the BASIC Interpreter command line):

RESET

The major difference between the 2 interpreters was that BASIC 128 had a DOS set of extra commands to use the Floppy Disc Unit and/or the Quick Disk Unit, while the 2nd BASIC needed a special DOS Floppy Disc to actually be able to manage disks. There were also other minor differences, however both the two interpreters were based on Microsoft BASIC 1.0, this means that the syntax and most of the commands were compatible also with Microsoft BASIC Interpreters present on other microcomputers like, for example, the MSX (so yes most of the BASIC Programs for MSX were easy to be ported on the Thomson and the Olivetti Prodest PC 128).

If you are planning to learn how to develop in Microsoft BASIC 1.0 I would not recommend it since it’s one of the early Microsoft BASIC Interpreters, so it presents a lot of differences compared to, for example, Microsoft GW BASIC or Quick BASIC, however we will have some articles dedicated to the BAISC Interpreter since it’s fun and also allow us to do some cool things at machine code level.

The Thomson microcomputers also came with a cartridge slot on which a user could plug in a cartridge ROM and have software loaded instantly instead of long waiting as it required when loading software from the tape. When a user inserted a compatible cartridge then the GUI would show an extra option, option 0 (zero) to start the software in the cartridge.

The option 3 of the screen on the PC 128 is to set colour palette and set light-pen for the specific monitor you have.

On more recent Thomson microcomputers like, for example, the TO8D the initial GUI had more options included a primitive GUI to manage and run software from the disk and/or set a RAM Disk; pretty cool stuff for the time!

Loading Software and BASIC Programs

To load and run software from the Tape you need to be in one of the two BASIC Interpreters (the same for software on disks if you are using MO5, MO6 and PC 128 models). If you want to play with the old softwares dcmoto website offers a huge library of old games and applications you can use to have fun.

To know which of the two BASIC Interpreter should be used to load a certain software please refer to the specific software instructions. In general the most used BASIC Interpreter to run 3rd parties binary software has always been BASIC 1.0 (aka the 2nd interpreter), while the 1st interpreter BASIC 128 (or BASIC 512) has always been favourite to develop BASIC Programs since it offered more instructions and more memory.

To load BINARY files, like executable files you can use:

LOADM "DEVICE:",R

Where DEVICE is either CASS (for tape) or a single-digit number for the Disk unit (0,1,2,3).

The option ,R is to tell the BASIC Interpreter to also execute the BINARY file after loading it.

To load a BASIC tokenised program you can use:

LOAD "DEVICE:PROG-NAME.BAS"

Where DEVICE is either CASS or a single-digit number for the Disk Unit and PROG-NAME is the name of the program you want to load (max 8 characters long), if you leave PROG-NAME.BAS empty then, on the Tape, it will try to load the first BASIC program identified. BASIC programs have extension .BAS

Load command can also be used without parameters at all. If so, it will load the first file from the default device (usually cassette tape).

After you’ve loaded your program, you can execute it by typing the command RUN.

If you want to load and run a BASIC program all at once you can use the command:

RUN "DEVICE:PRG-NAME.BAS"

This works exactly like LOAD and also execute the program after loaded it in memory.

Inserting Disks and Tapes in dcmoto

Before you can load any program you need to “insert” the Tape or the Disk in dcmoto. To insert a Tape or a Disk image on the dcmoto Emulator click on “Removable Media” option on the top menu:

RemDevices

Then click on the “Load” button correspondent to your image file, browse your file-system till you reach your image file and click “ok”.

This is it for now, thanks for reading!

What next?

If you’d like to learn how to code in Assembly and make your childhood dream of making great games for your Thomson or your Olivetti Prodest PC 128 read this full 6809 Assembly course that will teach you everything you need to know to get up and running with your retro coding on your favourite microcomputer!

If you enjoyed this post, please donā€™t forget to support my blog by:

  • Visiting my on-line hacking and engineering merchandise shop on redbubble.com by clicking here
  • Or you can also make a donation with the PayPal link in the column on your right
  • Or share this article

If you like my articles and want to keep getting informed on new ones you can follow me on on of those 21st Century thingies called FacebookTwitterInstagram or Pinterest

And as always if you have any questions please feel free to use the comments section below.

Thank you! šŸ™‚

2 thoughts on “Retrocomputing: How to install Thomson MO5, MO6, TO7, TO8, TO9 and Olivetti Prodest PC 128 emulator on Windows, Apple Mac, Linux and BSD

  1. Pingback: Let’s play with commutable memory on Thomson MO6 and Olivetti Prodest PC 128 microcomputers | Paolo Fabio Zaino's Blog

  2. Pingback: Infogrames 6809 Assembler 1.0/1.1 User Guide for Thomson MO5, MO6 and Olivetti Prodest PC 128 (part 1) | Paolo Fabio Zaino's Blog

Leave a Reply or Ask a Question

This site uses Akismet to reduce spam. Learn how your comment data is processed.