Dragon computers
Introduction
The Dragon 32 is an 8-bit personal computer released in 1982 by Dragon Data Ltd., based in Wales. 32K of RAM and Microsoft Extended Colour BASIC built in makes it a good machine for BASIC programming. With a Motorola MC6809E microprocessor at its core (widely regarded as the best of the 8-bits), it is an excellent machine for the assembly language programmer.
In 1983, the upgraded Dragon 64 was introduced. It provides an extra 32K of RAM, a serial port for better external communications, and the ability to run advanced operating systems such as NitrOS-9 (a modern redevelopment of OS-9) and FLEX.
An NTSC version of the Dragon 64 was released in the USA as the Tano Dragon. Eurohard later repackaged the Dragon 64 in Spain as the Dragon 200, and also produced a localised version called the Dragon 200-E.
David Linsley has written a comprehensive history, available here (PDF).
The Dragon computers are based around a Motorola reference design also used by Tandy for their Colour Computer 1 and 2, and so share many features and software with those machines.
Software
XRoar
A free, cross-platform emulator of the Dragon 32, 64, etc. Also emulates the Tandy Colour Computers 1, 2 & 3, the Tandy MC-10 and some of their clones.
- XRoar home page
- XRoar Online (Dragon in a browser)
Dunjunz
1-4 player "Gauntlet" style game for the Dragon 32/64 and Tandy Colour Computer. Rewrite of a BBC Micro original.
Blockdown
1-2 player "Falling blocks puzzle game" for the Dragon 32/64 and Tandy Colour Computer.
6809 GDB
Modifications to GDB to support a 6809 remote target (e.g. XRoar).
- 6809 GDB page
dzip
Simple compression tool. Compression rates are reasonable, decompression is very fast, and the 6809 decompress loop is only 39 bytes long. Used in the loaders for the Nyan Cat demo.
- dzip.tar.gz source tarball
While dzip's decompressor is very small and very fast, other tools trade off one or both of those aspects to achieve much better compression. Check out zx0-6809 or Exomizer.
asm6809
A 6809/6309 macro cross assembler written in C. Quite good at generating efficient output.
6809dasm.pl
A 6809 disassembler written in Perl. The aim is to always produce code that can be reassembled by "asm6809". Now with 6309 support and ability to annotate output with comments.
- 6809dasm.pl Perl script (v0.8)
- Usage guide
Demos
A collection of demo or work-in-progress (or possibly destined to remain proof-of-concept) Dragon software.
CAS tools
bin2cas.pl (Perl script) converts a raw/DragonDOS/CoCo binary into a .cas or .wav file. Supports autorun, using dzip or salvador to compress files, multi-part, video mode changing between parts, vertical XOR, speeded output for WAV files.
cas2wav (C program) converts a Dragon/Tandy CoCo CAS file to WAV. Options control sample rate, number of channels, etc. Uses CUE data if present.
- bin2cas.pl Perl script (v3.14)
- bin2cas.txt help text
- COPYING.zx0-6x09 licence text for ZX0 decompressor in bin2cas.pl
- cas2wav-0.8.tar.gz source tarball
- cas2wav-0.8.zip Windows binary (32-bit)
- A cas2wav package is available in the Apt repository
- "Bitjunky" has made a JavaScript version of cas2wav (doesn't handle all CUE data)
PD Dragon 1 & 2
The two Dragonfire public domain disks. There are a couple of little adventure games in there (probably by Robin Hemmings). Interesting to me was "1770.BAS" (by M. Edwards) which allowed you to read BBC Micro disks.
- Archive containing both virtual disks: pd_dragon.zip
Code snippets
- keyboard.s
- Standalone keyboard scanning routine.
- keyscan.s
- Keyboard matrix visualiser.
- rnd.s
- Simple 16-bit PRNG - almost certainly originally from Dragon User.
- crc16.s
- 6809 implementation of CRC-16-CCITT.
Hardware
Dragon 64 motherboard
SAMx4
A CPLD-based drop-in replacement for the MC6883 Synchronous Address Multiplexer (SN74LS783).
CoCo 3 512K SRAM
Not for the Dragon, but for its American cousin once removed, the Colour Computer 3. These came with 128K RAM as stock, but you can upgrade it to a 512K module. Successfully built and tested by at least one person besides myself.
- Kicad project files on gitlab
- CoCo 3 512K SRAM schematic
- CoCo 3 512K SRAM manual
- Surplus prototype boards all gone, sorry!
Documentation
- Dragon User articles - complete index of Dragon User articles, with abstracts. PDF generated from the Dragon User BibTeX database.
- Hardware details - how the Dragon is put together.
- Tandy Colour Computer 3 Composite Video - some notes on the NTSC composite output from this second cousin of the Dragon.
- Dragon & CoCo keyboard matrix tables
Links
Other sites about the Dragon:
- The Dragon Archive. Including documentation, discussion forums and software downloads.
- Dragon Data Archive: lots of historical information about the company and pictures of hardware, including the Dragon Alpha (Professional) and Beta (128).
- Jon Bird has some good stuff on OS-9 and interesting hardware modifications.
- Graham Kinns's Dragon page, with lots of useful information files.
- Archived Dragon Miscellany, collects the old, probably useless, items from this page.
And less directly Dragon-related:
- John Kowalski's web site hosting seems to have been retired, so it's mirrored here with permission: Sock Master's Web Page (including his GIME register reference).
- Color Computer Archive - archive of CoCo (and some Dragon) software.
- CoCoList is a mailing list "for enthusiasts of the Color Computer in all its forms, its clones, and its software".
- CoCoCoding, a useful documentation repository.
- L. Curtis Boyle's CoCo 1/2/3 web pages. Containing a fairly comprehensive list of CoCo games, many of which were also released for the Dragon.
- Check out
#coco_chat
on Libera.Chat IRC. There's also the CoCo Discord "server".