My Coco-addled history

I actually cut my computing teeth on the TRS-80 Model I back in ’79 when my father brought home a 4K Level I machine. A few years later my father was likely tired of time-sharing it with me and bought me my own computer – an Extended Color Basic Color Computer (1). I set about learning BASIC on my new computer and of course playing games in glorious colour was a thrill after the blocky, monochrome graphics of the Model I.

My father maintained an interest in the Coco as well – he was an engineer after all – and we joined a local Coco users group that met monthly on a Friday night. We subscribed to all the Coco magazines of the day, including The Rainbow and Hot Coco, plus local (Australian) magazines such as Australian Rainbow. My Coco was modded with 64KB which allowed cartridge images, which had been dumped to cassette, to be subsequently played. A mate at school worked at Tandy and was allowed to take Coco cartridges home overnight… enough said. 😉

My father ended up buying me a disk controller – it may have been J&M but I can’t recall exactly – and a couple of full-height, 35 track single-sided floppy drives. He also built me an aluminium monitor stand, I inherited the family’s old somewhat-portable colour TV and home-made computer desk on casters, so my entire Coco set-up could be unplugged from a single power-point and wheeled between my bedroom and the family room that housed the TRS-80 Model I. Good for transferring files over serial, for example.

In truth, I never did take to the Coco as fondly as I did the TRS-80 Model I. By then I was proficient in Z80, and with both my father and my cousin owning and using the Model I, I was still very much an avid user. I had a decent Coco games collection, but aside from earlier BASIC programming, I didn’t do a lot with the 6809 in ML aside from cracking a few tape games.

The Coco user group, however, was hosted and run by an IBM engineer, whose daughter was studying Computer Science at the time. By this stage I was close to finishing high school and had already lodged my preferences for universities. At the time (1983) Computer Science courses were in their infancy and some were clearly less commercially-oriented than others. After speaking with him he advised that I change my first preference to a course more well-regarded within the computing industry. He got his daughter to have a chat as well and I ended up taking their advice. In the end I’m not sure it made much of a difference as the market here in Australia was crying out for programmers at the time and a visit to the employment agencies had you handed a thick wad of job vacancies.

When I started Computer Science my father bought me a more ‘serious’ computer – a TRS-80 Model 4P. For a while I kept the Coco in my room but it was eventually relegated to the back shed. And regrettably now, it was eventually gifted to friends of the family who didn’t own a computer at the time. I would love to get my hands on it again, but it is most likely sitting under a few thousand tonnes of landfill these days. In any case, I have no idea who it was given to and my father has long passed. On the off chance it does appear on eBay, it should be identifiable by a distinctive large red switch near the cartridge port for – actually I don’t recall. Probably enabling the upper 32KB?

So I graduated Computer Science and got a few jobs, able now to buy myself an Amiga 500 although like on the Coco, I did little more than play games on it at the time, despite grander intentions (I bought an IDE interface and all the programming books). I ended up programming PCs for work and by the time VGA became standard, even the Amiga fell by the wayside. Unfortunately I absolutely hated what I was doing for work – namely programming financial applications – so I returned to uni to study Electrical Engineering this time; the degree I should have studied first.

One fateful day a work colleague mentioned that you could “play real arcade games on your PC”, and showed me a Galaxian emulator. That was around ’92/93 IIRC – long before MAME – and from that day, until now, retro emulation has been my hobby. I started out with just arcade games and the TRS-80 Model I – machines that I owned/knew – and that gradually expanded into machines that friends owned, and then finally pretty much every mainstream retro arcade, console and microcomputer that ever existed. For years I collected emulators, ROMs and compiled CDs of my collection, downloading multi-megabyte ROMs overnight on 28.8Kbps dial-up modem. Eventually I started to collect the actual systems themselves; a few arcade cabinets, then early consoles and cartridges, then microcomputers. These days my collection is mostly in boxes, waiting for my ‘games room’ to be cleared out and shelving constructed. Hopefully that’s not too far away now…

Along the way I picked up a Coco3 (for free!) and briefly reminisced over the old games I used to play. Somewhere I stumbled across coco enthusiast group(s) and have since witnessed somewhat of a revival of the Coco scene. From where I’m sitting it certainly appears more active than the TRS-80 scene at least, and that fact alone has drawn me more towards the Coco than the Model I/III/4, despite my history with the machines. So much so I decided to port Apple II’s Lode Runner – a sentimental favourite of mine – to the Coco3 a few years ago. That meant learning 6809 assembler in earnest this time! In fact, I started out porting it to Z80 in parallel; that quickly went by the wayside likely because 6502 to 6809 was much more straightforward than to Z80. In the process I came to appreciate the 6809 and would have to admit that these days I actually prefer it over my beloved Z80 (shhh!!)

For quite a while in there I worked as an FPGA engineer and got into FPGA emulation of retro systems as well, including the Coco. I’ve done a full Coco1/2 implementation with IDE support via HDBDOS (read-write to/from CF, read-only from SD). A colleague & I started on what was to be a cycle-accurate 6809/6309 core with in-built debugging but it didn’t get too far before my colleague moved overseas and he lost interest. That was part of what was going to be an FPGA-based Coco replacement motherboard with legacy I/O but also VGA/HDMI and SD etc etc. Unfortunately the driving force behind that project fell ill and passed before even the schematic was completed.

[For several years my professional FPGA work involved a few generations of a video mixer project. At one stage I had our proprietary board configured for Coco output on VGA/HDMI which looked very nice indeed! The intention at that point was to spin off our own cut-down design that handled pretty much every retro video format, with fully-configurable scaling and other features. Like OSSC but with RF/Composite/S-Video input. But alas, like so many other project ideas, it never came to fruition.]

These days I’ve done a few Coco-related software projects, in various states of completeness/release. The long-all-but-completed Apple II Lode Runner is waiting on a cartridge with custom bank-switching and serial EEPROM, ZX Spectrum Knight Lore (completed) I’ll release shortly, Arcade Space Invaders is complete except for screen rotation (WIP) and sound, and Arcade Asteroids is nearing completion. I also have a few more ports lined up for the Coco, although I may take a short break from the Coco once Asteroids is done.

I am quite impressed by the power of the Coco3. It is mainly for this reason that the Coco3 is the target of most of my ports, aside from my sentimental connection with the Coco, and the active Coco scene. The hardware architecture is straightforward to program and together with the 6809, makes it very attractive to porting – particularly from 6502 – although Knight Lore, Space Invaders and Glen’s Pacman prove that the Z80 is no barrier either.

Right now I have a Coco3 with Cloud9 512KB (DRAM) upgrade, CocoSDC with Tim’s case, Neil/John’s Sega Gamepad Adapter, Drivewire cable and 1084S monitor. I also have a DE1 (well, actually 5 now!) running Gary’s Coco3FPGA. And Boisy’s (signed) book of course! And just last week I ‘officially’ bought my mate’s Coco3 off him, since I’ve had it sitting at my place for the last 3 years now! My wish-list includes Cloud9’s Triad & Protector (I have a few 6309 CPUs). Although I’m currently behind, I listen to the CocoCrew Podcast, and wish I had more time to watch/listen to and contribute to Steve’s Youtube activities. There’s simply not enough hours in the day…

One thought on “My Coco-addled history

  • November 8, 2017 at 11:19 pm

    Nice history there Mark, looking forward to seeing Asteroids, and I don’t think I even got to see Space Invaders, Knights Lore was the project of yours I saw, along with Lode Runner.

    I appreciate all your talent and hard work.

Leave a Reply

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

Copyright © 2017-2018 The Rainbow Online. All rights reserved.
Magazine Credits