It’s not everyday that you meet someone with the talent and tenacity of Dave Banks (@hoglet67 on Twitter). In less than three days, Dave ported his FPGA based Acorn Atom from Xilinx and VHDL across to Lattice ICE40 and verilog. The result is a fully functioning Acorn Atom – running on our latest open source FPGA board, BlackIce.
The Atom was a forerunner of the Acorn Electron and the BBC Micro. It used a 6502 microprocessor an provided a chunky colour display – which was virtually unknown back in 1980 when the Atom first appeared.
On Friday, Dave emailed me to say that he was going to begin to port his Atom design to the BlackIce board – and was looking at the VGA implementation using the recreated Motorola 6847 graphics controller as used in the Atom. However, the 6847 module was written in VHDL and would have to be ported to verilog first – so that it could take advantage of the open source “IceStorm” FPGA toolcain.
Then without warning, on Saturday evening the following two images appeared:
With the help of a few carefully chosen resistors and a hacked VGA cable, Dave had fashioned a VGA output – driving the resistor arrays direct from the FPGA pins. The result was the characteristic Atom “pre-boot” screen – when the video RAM is full of random data.
Within a couple of hours, Dave had achieved the boot screen, connected a PS/2 keyboard and written “Hello World” in Acorn BASIC.
To any casual observer – all of this happened within the short space of Saturday afternoon.
By late Saturday night – and a few tweets on my part – interest was gaining rapidly – and eagerly awaiting part 2 of Dave’s installments.
Dave put up an original Atom schematic – to illustrate the extent of the digital logic that had been implemented within the ICE40 FPGA – and by Sunday evening we faced some Alien Invaders – a port of the famous “Galaxians” game:
It was now Sunday evening and Dave mentioned that he had work out a way to get ROM data into the large external SRAM (256K words) that is closely coupled to the FPGA. This involved some neat coding tricks – and taking advantage of the flexibility of the BlackIce loading mechanism.
Dave’s progress was soon appreciated by the “stardot” forum – a group devoted to Acorn retro computers – and very soon, a fellow forum member, Ed Brindley, had implemented a similar Atom – using the BlackIce board and some Digilent pmods – for the VGA and keyboard.
This all looks like excellent progress – but Dave was like a dog with a bone – he had to solve the issue of using the microSD socket on the underside of the BlackIce board to allow a full repertoire of Atom software to be loaded via SD card.
This latest triumph appeared on Tuesday morning – just 3 days after commencing this mammoth project.
Dave’s write-up of this project appears on the myStorm forum with full technical details – which you may find here
Thanks to Dave for his tireless work in making this happen in such a short space of time.
BackIce will be featuring at @WutheringBytes in Hebden Bridge between September 1st and 10th.
Throughout the week we have talks, workshop sessions and general FPGA geekery goodness.
If you’d like to obtain a BlackIce open source FPGA board – please follow this link – or contact me at ken dot boak at gmail dot com