BackgroundIn this case we will analyse a corrupted tape where three games are stored at. The fundamental analysis were done to determine whether it was Audio Waveform or Data in the signal. The result was presented in 3 different games:

Kickstart II (Case Study #3)

The Mystery Of The Nile (Case Study #2)

Super Zaxxon (Case Study #1)

The interesting part was to allocate the actual errors and find out where the errors were at to answer why the games did not load or start correctly.All this possible using 3 different analysis methods.

PrologueIn this case I was very lucky to wash up the tape one time and realise last part of physical tape had been taking a bath in some kind of sticky liquid. I did not want to analyse what kind of liquid it could have been but one thing is for sure, it wasn't human made! We're speaking of Alien Liquid Data. First I carefully aired the tape to realise this was not going to be an easy task to get rid of all the Alien Liquid Data. I had to take it one step ahead to let the whole tapemass swing around in a nice water solution. Too bad I wasn't able to make any actual pictures from this process due a nonfunctional SD Card(how ironic in a way), but yes time was critical and I did not want to risk losing data. In a way I found this funny. After all I was in the process to recover data from a tape and then I got dataloss but in a digital way.

C64 ROM-TAPE HEADER

C64 ROM-TAPE HEADER

C64 ROM-TAPE DATA

NOVALOAD SPECIAL

NOVALOAD SPECIAL

NOVALOAD SPECIAL

NOVALOAD SPECIAL

NOVALOAD SPECIAL

NOVALOAD SPECIAL

NOVALOAD SPECIAL

NOVALOAD SPECIAL

Backtrace and StructureThe ROM-TAPE Header tells us the name of the game. "SUPER ZAXXON", as mentioned in earlier documentation it's repeated twice, as we can see in the Data SignalFollowing ROM-TAPE DATA contains the Init for NOVALOAD and loads up the typical NOVALOADER screen with the signature sound.

If we analyse the code segments we can see a significant data string "N200047" which is an indicator. This indicates the expected checksum for NOVALOAD.The NOVALOAD checksum from the code segment is parsed on the screen

So far we have managed the easy partThe next part that is being loaded is the Loader "NOVALOADER SPECIAL", and the Loading Screen. Since NOVALOAD is an IRQ-LOADER it can both play music and show a scroller, as the game is loading. This part is loaded from $E000-$E6FF

Before the game is loaded there are some control segments here and there. Just to make sure the pulses are correctly and still running in the background NOVALOAD will load everything. The actual Game Data is loaded from the last Chunk $3900-CFFF, but not executed until the past Chunk is loaded $0800-2EFF. That part is overwriting NOVALOAD and all the "junk" not needed anymore.If everything went fine and the correct string 200047 is "there". We're ready to play another great Commodore 64 game.

ConclusionEven if this game had its position LAST on the tape, it was the most easy "data" to Recover. So don't judge the book by its cover, always do things 100% and spend that little extra time to achieve best result possible.Best Regards,Xiny6581