Virtual Show
Last updated: 04 Aug 2020 - 22:54
My Wife has been helping to organise the arts, crafts & cookery section of the local agricultural show for several years. The show was cancelled for the first time in 19 years due to the COVID-19 lockdown this year and to keep it going in some way she suggested and helped organise a virtual show. You can see the entries online still at https://virtual-stithians.show. To manage the content we first looked at off-the-shelf Wordpress gallery solutions but they were not a good fit. Hosting it on Instagram or Facebook had been suggested but would have excluded a lot of the regular entrants so an email-in solution was picked to be most inclusive. In the end the show had over 250 entries.
I volunteered to write a custom site, and since Django is my preferred platform these days I wrote it in that. It was my first significant Django project in a number of years and the first time working in Python3 but as it promises the framework delivered a robust interface with minimal effort.
Basic Python webserver for the BeagleBone
Last updated: 28 Jan 2012 - 23:52

The BeagleBone comes with a basic webserver written in Javascript in the bonescript.js file. This is run by node.js which is a browser-less javascript engine. This took a bit of reading about to get my head around because the idea of javascript being used to write server side scripts was a bit odd, but the whole server seemed implausible. Unfortunately when I tried to make this do what I wanted to do for the BigTrak project, node.js wouldn't work and seems to be in some sort of version conflict but has to be maintained at this version for the Cloud9 IDE software. Instead I decided to write my own web page server in Python.
LOGO program interpreter
Last updated: 28 Jan 2012 - 19:49

I was wandering how to store and represent the programs for the BigTrak. I wanted to stick to the original spirit of the toy and make it programmable via the web so I naturally got to thinking of LOGO commands. Most of my experience with the language was in a program called "WinLogo" ironically running on an Acorn Archimedes not Windows at all.
PySnakes
Last updated: 15 Dec 2009 - 22:03
Pysnakes is a one or two player game of snake written in python using the pygame SDL bindings. It was originally written for a competition in the British made Linux Format magazine. It should work on any platform with a pygame release. It's been tested on Ubuntu and Windows. The design of the levels and the game in general are heavily inspired by the "nibbles.bas" demo program that used to ship with Microsoft Quick Basic.
Nathan's Z80 Project Mark 2: Memory Installed!
Last updated: 18 Oct 2009 - 21:08
More progress on the Z80 project; I have fitted the first RAM chips tonight. After sorting the code so far into 3 source files, I implemented the memory read and memory write functions. These appeared to work on single memory locations, so I implemented the block read and write functions. Using a Python script (see the Z80 Project page for the file) I wrote the XOR combination of the high and low address bytes to each memory location, then read the memory back and tested it against this value.
So far I've fitted one 32K RAM chip in the lower half of the address space and an 8K chip in the upper half. This shows up correctly on the memory check. The script writes address from the top down, so when the 8K chip gets written with the data for the top 8K of memory this is subsequently over written with the chip in its lowest possible space. Hence the memory scan determines that there is memory up to address 0x9FFF (40K).
Due to the maximum packet size of 256 bytes, the maximum d
Dwarf PIC programming utility
Last updated: 09 Sep 2009 - 13:33
I had a day or two waiting for parts to arrive recently, and started tinkering with PIC programming in Linux. I was really pleased with how easy it was to program a PIC with my PICKit 2 programmer using the available command line tools, but what I wanted was an even easier GUI interface for it. So I wrote one.
It's not very polished and has had only minimal testing so far, but it should be useful. Basically I wrote a PyGTK user interface that executes the most popular command line operations such as compile a source file, program the PIC or power the PIC and release MCLR to test the application. The full details of the software (licensed under GPL V3) are on my open-source electronics site: tuxtronics.com.