Pwikip 0.2.9 Released

Wikitext Parser

The Linux Game Tome

Sixteen Months

PlayMusic 0.1.7

Gtkdialog 0.8.0

sz81 for the Dingoo A320 with Dingux

HTML Transcription of Mastering Machine Code on Your ZX81 or ZX80 Updated

sz81 2.1.7 Released

Other pages available: 2015 to 2011 | 2010 | 2009 | 2008 to 2005.

Pwikip 0.2.9 Released

Posted: 2013-06-07

My wikitext parser (now called Pwikip) has been released.

Key/cool features:

  • Files can be ftp-put
  • HTML files can be included
  • Block and inline HTML is possible
  • HTML can be input from a shell command
  • The size is 46KB with comments, 29KB stripped
  • It's a speedy GNU/Linux shell script with a few bashisms
  • It's Creole 1.0 Compliant** and supports Creole Additions

Download from here.

Wikitext Parser

Posted: 2013-05-13

I no longer have to edit HTML in Geany to post something anymore as I've written a Creole 1.0 Compliant** wikitext parser in shell script to create the pages from *.wiki files. Ok, so I'm way behind the times and I haven't done anything revolutionary but it's a shell script and it only takes 2 seconds to generate this entire page so I'm very happy with the results. I can understand why there are so many wikitext parsers/engines out there because I'm still finding it quite addictive to both code and use.

The source code currently contains some custom directives for my website so I'm going to strip those, add a few generic directives and then I'll upload a source package to the project page which already contains a comprehensive list of tests (I recommend taking a look).

Sample input:

**Bold**, //italics//, [[AnInternalURL]], [[|an external URL]].

Inline nowiki: {{{♥}}} ♥, an image: {{images/comments.gif|An image}}

##Monospaced##, ^^superscripted^^, ,,subscripted,,, __underlined__.
* An unordered list item with multiple\\line\\breaks.
## An ordered list item.
|={{images/home.gif|Home}}|=A Table|
|**bold**|~**escaped bold~**|

Sample output:

Bold, italics, AnInternalURL, an external URL .

Inline nowiki: ♥ ♥, an image: An image

Monospaced, superscripted, subscripted, underlined.

  • An unordered list item with multiple
    1. An ordered list item.
HomeA Table
bold**escaped bold**

The Linux Game Tome

Posted: 2013-04-19

The Linux Game Tome (Happy Penguin) website was officially shut down on 13th April 2013 although I think it was up until the 15th.

I'd visited the site since the early 2000s and I've spent a considerable amount of time on there over the years -- as have many other people -- so it was a shame to see it go, but there's actually an initiative to build The Linux Game Tome v3.0 resurrecting the original data which should be interesting for the future.

Before the site went offline I grabbed a dozen and a half pages which I've uploaded here so that we can reminisce:

The Linux Game Tome v2.0

I've spent a day fixing the URLs and I've removed the hrefs from the anchors of the dead links so at least there's some visual feedback on mouse-over -- still plenty to click though.

Sixteen Months

Posted: 2013-04-04

I haven't posted on this website for 16 months! It would be easier if I didn't have to edit HTML in Geany to post something but I don't have access to any scripting on the server side so I'm thinking about creating a blog locally on my computer where the posts are simply text files that a script pulls in and parses using some sort of markup and constructs the HTML -- yeah, this site has been created by hand in Geany :P

This is what I've done:

  • Updated Gtkdialog to version 0.8.3 and I've just committed GTK+ 3 support to SVN
  • Created a Gtkdialog based front-end for multiple emulators called Pfeme
  • Created a Gtkdialog based font viewer called Pfontview which is now shipped with Puppy Linux
  • Created an SDL + SDL_ttf based font viewer called Sfontview which is also now shipped with Puppy Linux

PlayMusic 0.1.7

Posted: 2011-11-24

I've been attempting to write a game using Gtkdialog . The first game I tried I couldn't think of a way to conditionally refresh the necessary widgets and so I put it on hold. My second choice game I've pretty much completed the logic but I'm stuck thinking-up a speedy way to create unique puzzles. I then took some time out to "research" some fantastic new ZX Spectrum releases (Bozxle , Trabajo Basura , Sid Spanners and Horace in the Mystic Woods ) but at the same time I was also building a simple lightweight GUI for mpg123 and ogg123 which I then developed further using the experience gained from writing the games, so I decided to commit it to the Gtkdialog repository as an example application .

On the technical side I did manage to find a way to conditionally execute action functions which I'll document on the Gtkdialog Tips thread when I get a chance but I'm not yet certain that it'll scale up to the number of widgets you'd expect to find on a game board. I've also put a lot of effort into making PlayMusic work with shells other than bash but I'm relying on users to give me feedback on that if there are any problems. The two options debug_content and debug_transits within /.playmusic/playmusicrc will dump lots of useful debugging info to the terminal if set to 1; useful even if you're just interested in seeing how it works.

I would announce this and upload these very small packages to the Puppy Linux forums but the forums have been down for a few days now so I'll locate them here instead. The first file is a Puppy Linux pet package and the second a source package which includes a Makefile to "make install" (there's nothing to compile as it's only shell script and Gtkdialog pseudo-XML).

[UPDATE 2011-12-06] See ChangeLog

Source code package
Puppy Linux pet package

Gtkdialog 0.8.0

Posted: 2011-10-31

On 26th September I released an extensive update for the GTK+ GUI creation utility Gtkdialog , a project originally started by Laszlo Pere back in 2003. I was experimenting with it around May/June and posted some small but useful patches on the Puppy Linux Discussion Forum (I use Puppy, Puppy uses Gtkdialog) and development escalated from feedback. As Laszlo Pere can't access Gtkdialog's original website and neither is he interested in continuing its development, I set-up a new project page on Google Code which I've been very impressed with. When I get a chance I'll update it some more as it still has a few remaining quirks and folk are requesting new features, but for now I'm going to slow down the pace of life.


sz81 for the Dingoo A320 with Dingux

Posted: 2011-02-27

A chap from Brazil called Ricleite has notified me of his Dingoo/Dingux port of sz81 . Judging by the sizeable screenshot posted on Dingoonity it's apparent that he's Dingoo-themed the joystick configurator which looks fantastic. Additionally I've found a few videos that he's uploaded to YouTube - great stuff :)

Source code
Binary package

HTML Transcription of Mastering Machine Code on Your ZX81 or ZX80 Updated

Posted: 2011-02-17

It's been a while since I've maintained my HTML transcription of Toni Baker's wonderful book Mastering Machine Code on Your ZX81 or ZX80. For some time I've wanted to update the colour scheme and the logo and change a couple of [my] words I wasn't happy about, so now those things I've updated. I've also refreshed the links in my foreword and repackaged it for download.

The book is available here for online reading and here for offline reading.

sz81 2.1.7 Released

Posted: 2011-02-14

Ten weeks of productive Winter coding later and I'm very happy to announce the latest release of sz81 - the cross-platform Sinclair ZX80 and ZX81 emulator using SDL. I've implemented the file dialog, the save state system, converted the static CLI emulation options to dynamic GUI runtime options; big jobs all of them, and it rocks :) On the emulation side supporting additional RAM configurations has resulted in UDG programs now functioning as can be seen in the screenshots below.


  • Added forced (non-LOAD) program loading via a load file dialog
  • Added a save state system for saving and loading sz81 save states
  • Moved command-line emulation options to GUI runtime options
  • Added support for 1 to 4, 16, 32, 48 and 56K RAM (UDG now works)
  • Added the ability to save screenshots via PrtScn (SDLK_PRINT)
  • Added support for o, 80, p and 81 program file types
  • Added autoloading of ZX80 program files in addition to the ZX81
  • Added sequential filenaming for ZX80, printer and screenshot files
  • Added a ZX80 BASIC xxxx REM SAVE "progname" filenaming hack
  • Added an emulator pause feature via Pause (SDLK_PAUSE)
  • Added mouse wheel support, used within the load file dialog
  • Added a machine code PipePanic game and a machine code template
  • Added the GNU GPL'd Open80 and Open81 source code and ROMs
  • Added Win32 support via the _WIN32 preprocessor macro
  • Applied several graphical and usability tweaks
  • Fixed a couple of bugs

Source and binary packages are available for AmigaOS4, GPH GP2X/Wiz and the Sharp Zaurus (Sharp ROM).

More details here .