Stuff I've written


  1. My Ph.D. thesis on exception handling in Asynchronous processors
  2. My M.Sc. thesis in Rendering Systems for Virtual Reality Applications
  3. A talk on Version 4 of the XFree windowing system.
  4. A talk on the vi editor. Presented at ManLUG.
  5. A talk on Debugging under Linux together with a set of example code.  This was presented also presented at ManLUG.
  6. Another ManLUG talk, this time giving a quick tour of most of GNU coreutils, available here in Open document format readable by OpenOffice 2.0 and PDF.
  7. A talk on 10 useful command(ment)s given at ManLUG; also available in odp format.
  8. A talk on ssh for ManLUG.
  9. I gave two talks at ManLUG on Linux on non-PCs - one in 1999 and another in 2015. It's interesting seeing how the world has changed in that time.
  10. A ManLUG talk on the Spectre and Meltdown vulnerabilities.
  11. A ManLUG talk on Fun bugs.
  12. A ManLUG talk on ACLs, capabilities and extended attributes.
  13. A ManLUG talk on Teletext recovery from VHS using Alastair Buxtons vhs-teletext code.
  14. A PERL script for making it easier to write sets of slides in HTML
  15. An article on making your code 64 bit portable.
  16. An emulator of the Acorn Archimedes, early ARM based computer. Peter Naulls has now created a Sourceforge project for Arcem on Unix, Win32 and RISC OS, this is the best source of the latest versions of Arcem.
  17. An Atmel AVR programmer for a BBC Model B
  18. Some years ago I wrote a BBC Micro Emulator (beebem); It has taken on a life of its own and been maintained by a few people over the years and is currently in the hands of Mike Wyatt. He maintains this beebem page where you can get the latest Win32 version of Beebem and links to versions for other platforms including PDAs and PlayStation 2. For the latest Unix version see Dave Eggleston's Beebem on Unix page. A heavily modified verison of BeebEm was used by the CAMILEON project that resurrected the BBC Domesday system. For the latest Windows version Chris's Github.
  19. A hack for xscreensaver that displays the output of the pidstat system monitor in a pretty and possibly useful fashion.
  20. A disassembler app for Android - it's got it's own page here.
  21. A fairly crude Tcl Space invader game. This originally ran under the Tcl plugin for Netscape which seems to have died a death
  22. A fairly crude Perl/Gtk Space invader game. This is my first Perl/Gtk program - so please tell me about how to improve it!
  23. Yet another crude Space invader game, this time in Javascript. It has to be said that this is even slower than the Tcl and Perl/Gtk versions I wrote above; it is my first experience of Javascript and CSS, and it taught me quite a bit about how broken each browser was. Konqueror came out on top with it just working and being significantly faster than Firefox.
  24. OK OK, so I'm addicted to them; this time I ported the Javascript spaceinvaders to Processing. It's got to be said it's a pretty nice language; there are very few things in it that don't just work and there is very little overhead. This version was exported from the Processing sketchbook tool as Java. I'm hoping it will be possible to get it going using John Resig's processing.js Javascript implementation.
  25. A program written in GNU Prolog to solve the Su Doku puzzles. This uses the constraint solver in GNU Prolog; my attempt at a more portable version is still running over 10 hours later.....
  26. OLD (A reference page showing where you can Linux kernel source for each particular architecture. (now rather out of date))
  27. A mandelbrot plotter in Forth; I got bored on May 4th and started reading an online Forth manual. It's fixed point and I made the mistake of letting the loop run between the values rather off the count of the number of characters you ask for - the thing is in Forth changing something as simple as this is such a PITA because of having to rework everything on the stack.
  28. A parallel mandelbrot plotter in Go; it's got to be said that was easier than the Forth version! The parallelism is pretty easy to do, somethings aren't entirely obvious - but it's a very young language.
  29. The Mandelbulb is a 3d equivalent of the mandelbrot, and I read Daniel White's mandelbulb page and decided to try and implement it; you can find my code and explanation here together with a picture of the result of printing it on a 3d printer.
  30. During a particularly bored moment a few friends invented the hex processor ; a processor instruction set whose entire instruction set is readable in a hex dump!
  31. Another mandelbrot, this time compile time in Rust. The mandelbrot is output in an error message at compile time. It was great fun misusing the compiler (even if I ended up buying a load of RAM to get it to complete!).
  32. ...which I then rewrote using Rust's new const fn version. It's boring, it's not even misusing anything!
  33. And another mandelbulb, in In OpenCL driven by Rust with Gtk-rs.
  34. I've written up my experiences using Z-Wave to control radiator valves at home, - all using a bit of Python on Linux.
  35. I made a Speaking Ohmeter using a Pi Pico, the Pico is a great play thing.
  36. I've got a TTi Thurlby TG1010 signal generator, with a partially busted LCD. So I wrote a Python script to drive it by SCPI over serial. You just need a 3 wire serial cable.
  37. I wrote some Rust to capture composite video frames using SCPI over the network connection to my Rigol scope. It is only a fun hack, but it works for a simple setup.

  38. I've got a separate page listing patches that I've made to various free software.

mail: fromwebpage@treblig.org irc: penguin42 on libera.chat | matrix: penguin42 on matrix.org | mastodon: penguin42 on mastodon.org.uk


back to Dave Gilbert's Home Page