Podd can ... drink

Since I have gotten Podd running again, I have been going through the actions, reminding myself how they looked. Currently, the one I like best is 'drink' ... this gives you an idea:

Podd can drink

Nice! I think that I used monochrome sprites, which I recoloured as they were put on screen. Although some stuff was just drawn directly to the screen. I think there was double-buffering too. It was all written in C on RISC OS. Ahh, those were the days...

Oh My Podd

As I have previously reported here, I have been trying to better archive my author's copy of Podd (a piece of educational software that I wrote way back). It would be nice to keep it on a more permanent type of storage.

My plan was to get my copy running in an emulator, but that wasn't easy since the floppy disk it came on was protected by the publisher. My theory was that I could write a Windows driver to install a virtual drive, then run an Archimedes emulator and tell it to get a disk image from my new virtual drive. This would give me the ability to implement some virtual flakyness to keep the protection routines happy.

Well that was the theory. I didn't know if it would really work. I knew I'd be getting somewhere if the Podd program prompted for registration details. If you just make a copy of the original floppy, the program just refuses to run. But I did indeed get it going, look at this:

Podd screenshot

Yay! It works! Well... at first, it failed because the emulator (Arculator) cached the disk image, making my virtual flaky sector code useless. Enter the Red Squirrel emulator, which does not cache the disk content. After some tinkering to get the precise collection of bytes to be flaky we were away.

It has been a nice little challenge. I'll post some more Podd screenshots when I get time.

Archimedes Podd

Back in the early 90’s I was employed to convert a piece of educational software called ‘Podd’ from the BBC Micro to the Acorn Archimedes.  What I actually did was take a look at the BBC version, but completely re-write the code in C for RISC OS.  When the software was released the publisher sent me a complimentary copy, since I was the author.  I carefully put this copy aside for safe-keeping, where it has stayed for nearly a couple of decades.  The 800k floppy disk that was included has never even been inserted into a machine.

Until last week that is.  A friend of mine is restoring his Acorn A3000 (you read about his efforts here). So I decided that he should try and read the floppy to see if it was still intact.  The good news is that the disk seems fine.  My name was even left inside one of the files:

Podd Screenshot

So now we’ve decided to try and make a copy of the disk, before the original is lost for all time.  The only problem is that the publisher used copy protection when duplicating the disks, so I can’t just copy the disk bit-for-bit.  I seem to remember that they used “flaky sector” for copy protection.  So I’ve written some code using the Dokan library to create a virtual drive on my Windows machine.  Then I’ve written a few extra lines of code that takes a disk image file stored on this virtual drive and emulates a flaky sector.  This means that I may be able to create an image of the disk that works on an emulator on top of Windows (like the Arculator).  Perhaps I’ll be able to make an exact image of the disk, including the flaky sector, and maybe my ‘authors copy’ can be properly archived for safe storage…

I don’t know if this will actually work yet, I’ll have to report back.  But it has been a nice trip down memory lane…