logo Teo
Thomson TO8 Emulator
version 1.8.1 (Windows/DirectX)
Copyright © 1997-2012 Gilles Fétis, Eric Botcazou, Alexandre Pukall, Jérémie Guillaume, François Mouret, Samuel Devulder

1. Introduction
2. Installation
3. Launching
4. Graphics modes
5. Keyboard
6. Joysticks
7. Mouse
8. Light-pen
9. Sound generator
10. Removable read/write media
11. Control panel
12. Direct access to floppy drives
13. Miscellaneous commands
14. Limitations and bugs
15. Thanks

1. Introduction

Teo is a TO8 emulator for Personal Computers. It tries to mimic as closely as possible the behavior of an other computer on the PC. Teo only emulates the hardware part of a TO8: The Motorola MC6809E micro-processor, the memory banks, the video system, and the following peripheral devices: mouse, light-pen, joysticks, tape player, floppy drives and dot-matrix printer. The operating system that drives everything is not included. Therefore you'll have to use a copy of the ROMs coming out of a real TO8 machine to run Teo.

2. Installation

To run the emulator, you need at least a 80486 with 8MB of RAM running under Windows 95, Windows 98, Windows %e, Windows NT4, Windows 2000 or Windows XP. The redistributable component DirectX version 3.0 or higher must be installed. A DirectSound compatible card is required to emulate sound.

You can install the emulator in two ways:

  • Launch teow-1.8.1-setup.exe and then teow-1.8.1-roms-setup.exe.
  • Unzip teo-1.8.1-winexe.zip and teo-rom.zip into the same folder. The executable is named teow.exe.

3. Launching

When the program is stated, headers and initialization messages are printed, then the user is asked to choose a graphic mode if it hasn't been specified on the command-line. Then the emulation starts.

Start panel

TEO accepts the following parameters on the command line:

[-m file.m7]uses file.m7 as ROM cartridge
[-fast]runs the emulator at full-speed
[-nosound]disables sound emulation
[-nojoy]does not use native PC joysticks
[-mode40]starts the emulator in 40 columns, 16 colors and full-screen mode
[-mode80]starts the emulator in 80 columns, 16 colors and full-screen mode
[-truecolor]starts the emulator in 80 columns, 4096 colors and full-screen mode
[-window]starts the emulator in 80 columns, 4096 colors and windowed mode
[-loadstate]loads the last saved emulator state
[-interlaced]uses an interlaced display mode
[xxxxx]loads SAP, K7, M7 file(s)

Please note that you can also load the last saved emulator state by pressing the left or right CTRL key while choosing the graphic mode.

4. Graphic modes

Teo can use three different graphic modes:

  • the 40 columns, 16 colors mode (option -mode40) uses a full-screen 320x200x8 DirectX video mode which is available on most PC graphic boards. The display is quite fast and fairly adapted to games and most applications,
  • the 80 columns, 16 colors mode (option -mode80) uses a full-screen 640x400x8 DirectX video mode. That graphical mode is slower than the previous one, but might be necessary to run applications that requires a 80 columns display,
  • the 80 columns, 4096 colors mode (option -truecolor) uses a full-screen 640x400x16 DirectX video mode. That mode is quite slow, but allows to reproduce as accurately as possible dynamic palette changes that can't be properly rendered using other graphic modes.
  • the 80 columns, 4096 colors windowed mode (option -window) uses a 640x400 DirectX window. Take care, that mode might not exist if your board is too old or if Windows runs with a 256 colors display.

All TO8 graphical modes are correctly emulated except the 80 columns mode with -mode40.

If no graphic option occur on the command-line, a graphical menu will ask you to choose the graphic mode to use.

5. Keyboard

The TO8 keyboard is fully emulated, including CNT and ACC combinations.

The emulation precisely maps the AZERTY layout onto the TO8 layout. Therefore a key pressed on a French keyboard should display the same character in the emulator, provided the same key exists on the TO8 keyboard. Both SHIFT and ALTGR keys act natively.

The STOP key maps to TAB in the PC, CNT maps to the left CTRL key, CAPSLOCK maps to CAPSLOCK (the CAPSLOCK led is emulated), ACC maps to ALT, HOME maps to HOME, the four arrow keys map to the arrow keys, INS maps to INSERT, EFF maps to DEL. Note that DEL (=SHIFT+EFF) maps to BACKSPACE.

The ten function keys are mapped to F1-F10 but it is possible to get F6 by pressing SHIFT+F1.

The NUMLOCK key activates the joystick emulation using the keyboard (NUMLOCK led is off). This is detailed in the next section.

6. Joystick

Teo uses available PC joysticks to emulate both TO8 joysticks. When there aren't enough PC joysticks, the missing joystick(s) is (are) emulated using the keyboard.

When the joystick mode is active (NUMLOCK led is off), the PC keypad is no more mapped onto the TO8 keypad, but emulates the eight directions of the first missing PC joystick. The fire button is mapped to the right CTRL.

When there is no joystick connected to the PC, the left part of the French keyboard (AZE, QSD, WXC) emulates joystick #1 while still sending characters to the TO8. (This makes use of the full TO8 keyboard and joystick #0 possible). The Fire button of joystick #1 is mapped onto left CTRL.

Just like with a real joystick, only one direction is supported at a time. This is the one provided by the last pressed key.

7. Mouse

On a real TO8, the mouse is connected to joystick port #0. Hence both devices cannot be used at the same time.

On the emulated TO8, both devices can work together and the mouse is the default pointing device at boot time.

Both buttons of the mouse are mapped onto the left and right button a the PC mouse.

8. Light-pen

Why would the light-pen be specifically emulated when the mouse acts the same even for Basic 1.0? The reason is twofold:

  • The light-pen is, for a thomson-fanatic, an untouchable feature that directly comes from the sacred era where TO7 and others were the glory of French computers.
  • More usefully, many programs written for the TO7 or TO7-70 that use the light-pen do not display a cursor indicating the position of the pen on the screen. Therefore they are unusable with a mouse.

The light-pen can be selected in the "Settings" menu of the TO8. It is emulated using the PC mouse, the left mouse button being the light-pen button. The right mouse button toggles the display of the light-pen cursor on and off.

The TO8 sound is emulated using the sound-card of the PC. Both the 1-bit (TO7) and the 6-bits (Music and games interface) generators are emulated.

Teo uses the default sound device (via DirectSound).

The control panel allows changing the volume of the sound generator.

9. Removable read/write media

Teo can handle three types of removable read/write media: ROM cartridges, analogical tapes, and 3"5 thomson floppies. Each media is "virtualized" through files, respectively: Memo7 files with extension .m7, K7 files with extension .k7 and SAP files with extension .sap.

See the control panel to get the use of these files within the emulator.

10. Dot-matrix printer

Teo is able to emulate the Thomson dot-matrix printer PR 90-612 which can print both text and graphics.

In this version, text is limited to raw text which produces ASCII files named as sheetxxx.txt.

Similarily, graphics is limited to the SCREENPRINT 320x200 mode which produce black and white BMP files named as pictxxx.bmp.

See the control panel for a description of the dot-matrix printer control interface.

11. Control panel

Pressing the [ESC] key on the PC halts the emulation and opens the control panel.<

The user interface aspect might depend on the selected graphic mode: in full-screen modes, it is displayed over the screen; in windowed mode, it is displayed in a separate window.

Full-screen mode Windowed mode
Control panel Control panel

This menu allows communicating with the emulator and gives access to peripheral devices of the TO8 (cartridge slot, tape recorder, floppy drives and dot-matrix printer).

Commands & settings

Full screen mode Windowed mode
Commands & settings Settings

Use the first two buttons with care:

  • TO8 warm reset : acts as pressing the Reset button of the TO8 (located on the right side of the machine). As on a real TO8, this might not be enough to get out of a crash.
  • TO8 cold reset : more aggressive, this is just like switching the TO8 off and on. Normally nothing should resist, but all data in RAM will be lost.

The speed option allow tuning the speed of the emulation:

  • Accurate speed : Fixes the speed of the MC6809E to 1Mhz exactly. This is the normal value which is the mode to use when playing games or sounds.
  • Fast speed: Emulates the MC6809E at the maximum speed that the PC allows (for instance, a Pentium 200 gives a MC6809E running at 10Mhz). This can be used for utility tools, or to have access to a boosted TO8 which is valuable. However the sound is then deactivated.

The sound volume can be managed by a slider.

The interlaced mode emulates CRTs by displaying only half the lines for each frame (even lines, then odd lines). This reduces the flickering effect that happens when rapid screen changes occur (see for instance the TruC demos by PULS).

Last, it is possible to save and load "images" that contain the state of the emulator at a time. These images are somehow snapshots of a running TO8 and allow the emulator to restart in a previously saved state. However, as the image only contains the internal state of the emulator, external peripheral devices (floppy drives, etc) are not handled.

Cartridge slot

Full screen mode Windowed mode
Cartridge slot Cartridge slot

This menu allows choosing a Memo7 file (extension .m7) and loads it as a cartridge (button "..."). The label of the cartridge appears in the left zone. Please note that Teo will then do a cold-reset of the TO8 in order for the cartridge to appear in the boot screen of the TO8.

To ease the selection of files, you are advised to put all Memo7 files under the memo7 sub-folder.

Tape recorder

Full-screen mode Windowed mode
Tape recorder Tape recorder

Here you can not only select a K7 file (extension .k7) which will act as a tape (button "..."), but also choose to protect it against write access ("prot." field). You can also change the position on the tape (numerical field "Counter" and "+" or "-" buttons), and even rewind it completely ("Rewind" button). Be careful: any write-access change will automatically rewind the tape.

Here again, you are advised to put all your K7 files under the k7 sub-folder in the emulator directory to ease file selection.

Disk drives

Full-screen mode Windowed mode
Disk drives Disk drives

This menu allows choosing a SAP file (extension .sap) and uses it as a read/write floppy disk by the emulator (button "..."). These files are images of physical Thomson disks which are created by a specific utility tool called SAP. They must reside on the hard drive of the PC, preferably in the disks sub-folder in the emulator directory.

Drives 0: and 1: map to the two faces of the first physical floppy drive of a real TO8. Drives 2: and 3: will be mapped to both faces of the second drive.

It is possible to write-protect any of these drives independently (field "prot.").

The "Direct access" button allows direct access to a physical 3"5 floppy disk (720kb, TO8 format) inserted in the 3"5 floppy drive of the PC.

Please note that a green led will appear in the right upper side of the screen when a disk access occurs.

Dot-matrix printer (full-screen mode only)

Imprimante matricielle

This menu allows tuning the PR 90-612 dot-matrix printer connected on the Centronics port of the TO8.

The "graphical output" option switches on and off the ability to print graphical data into black and white BMP files.

Other menu items represents the native interface of the PR 90-612 printer:

Lights:

  • When the light "NLQ/Failure" is fully on, this indicates that the printer is in a high-quality text mode. When half highlighted, it indicates that a problem with the printer occurred (not used in this version).
  • The "On" light tells that the printer is switched on.
  • The "On-Line" lights indicates that the printer is ready to receive data from the central unit.

Command buttons:

  • The "On-Line" button, switches data reception state on/off. It is directly connected to the "On-Line" light.
  • The "Line Feed" button terminates the current line of text (or output a new line if no current line exists). It only works when the printer is in the "Off-Line" mode (light "On-Line" is off).
  • The "Form Feed" button activates/deactivates the hight quality text mode when the printer is On-Line (light "On-Line" is on). When "Off-line", this button finishes the current text page.

12. Direct access to floppy drives

Not presently available.

13. Miscellaneous commands

  • [F11] will capture the screen and save it in the Teo folder as a BMP file.

14. Limitations and bugs

Technical reasons imply that 16 colors modes can imperfectly emulate dynamical palette changes. For the same reason, the screen border is not emulated with full-screen modes.

Please use this mail address to send any remarks, suggestions and bug reports (if any).

15. Thanks

  • Sylvain Huet who wrote the core of the emulator,
  • Shawn Hargreaves and friends for the wonderful Allegro library,
  • Mumit Khan and friends for the very useful MinGW,
  • as well as to all others that reported bugs or suggested improvements to Teo.

Copyright © 1999-2012 Eric Botcazou (ebotcazou at libertysurf dot fr)
Discuss of Teo on LogicielsMoto's forum
Translated by Samuel Devulder
Last change: Sunday, August 14th, 2011
Teo Home Page Teo Home Page