Revisiting the NIB to G64 conversion in CBM Flux Studio for Vorpal (later)

In the last few days I was revisiting the code that takes care of converting NIB files to G64 files in CBM Flux Studio. I noticed that the general approach I had followed made a number of assumptions that I can’t always rely on, as I can now think of edge cases that would certainly throw a spanner in the works 😀

Therefore, this morning I set out to redesign and rewrite the approach for converting Vorpal (later) disk images from NIB to G64. The intermediate result of such effort was a new Jupyter Notebook that I can use for plugging in track data from a NIB file and generating the single-revolution, byte-oriented track data for a G64 file.

Here’s the very start of the Notebook, with NIB track data taken from track #2 of a NIB file for “California Games”:

Jupyter Notebook: NIB to G64 data conversion for Vorpal (later) tracks by Luigi Di Fraia
Jupyter Notebook: NIB to G64 data conversion for Vorpal (later) tracks

And here’s the final output:

Jupyter Notebook: NIB to G64 data conversion for Vorpal (later) tracks by Luigi Di Fraia
Jupyter Notebook: NIB to G64 data conversion for Vorpal (later) tracks

As expected, G64 track data is also aligned so that the so-called write splice is at the very beginning of the data itself, which is ideal for when a G64 is written back to a physical disk.

I also started converting the new approach to C code for CBM Flux Studio: I might soon provide an update post about it too.

Stay tuned for more!

About Luigi Di Fraia

I am a Senior DevOps Engineer so I get to work with the latest technologies and open-source software. However, in my private time I enjoy retro-computing.
This entry was posted in Retrocomputing, Reverse Engineering, Technical and tagged , , , , , , , , . Bookmark the permalink.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s