Disaster!!! (nearly)

Yesterday evening my code/emulation/stuff hard disk decided to sort-of die.

I lost a bit of code, but it only took a couple of hours to get everything back to where it was pre-sort-of-death. Tens of GBs of C64 tunes and Amiga MODs were undamaged, but 1MB or so of code was trashed!

In the end only a day or so of Xinorbis coding time has been lost.

I say sort-of die, because when it’s installed Windows won’t boot properly. It goes all weird and the screen stays black, with a working-but-broken Task Manager. I managed to restore most of the files from it by connecting it to my old MacBook with a SATA->USB interface.

I tried it with Windows, but the PC just couldn’t read data off it at more than a few kilobytes per second. The Mac managed much, much better, so I spent most of this afternoon/evening getting everything off it.

My backup routine is pretty good, but evidently not good enough!

“To do” list is finished!

And a bit earlier than I expected. So now comes the transition from stage 2 (the “to do” list), to stage 3…

The list is now empty, but there is still a lot that needs fixing. Several features need to be rewritten, and everything needs testing. I spent a couple of hours late last night getting the Navigation pane working again; Xinorbis is not in any fit state for beta release yet! And all of those little things that I said “I’ll fix that at the end” now need doing.

I also need to work on performance. The current build is slower than Xinorbis 6, so that’s an important part of stage 3.

Xinorbis update news

The first stage is now complete.

I’ve migrated the source code from Delphi 2007 to 10.1 Berlin. I’ve also completely redesigned the GUI architecture (it still looks the same though (for now)), and I’m now in the process of bolting everything back together (stage 2).

This is a big task. Xinorbis’ code had become rather large and unwieldy over the years, so the process of pulling everything apart, to then put it all back together, is not an altogether easy one. Part of stage 2 is going to be improving the code, removing unused code (I’ve found some already), and improving performance by utilising as many new language features as I can.

I’ve made a good start. There are about 240 separate “to do” items left to, erm, do, from an initial ~280. Some of these items will take mere minutes, some of them will likely take a day, and require rewrites of important sections of code.

I’m hoping to finish stage 2 by the end of the year. I don’t think it’s too unrealistic. Once it’s ready I’ll release a beta. Once everything is working the real fun begins…