Commodore 64 Crack Intros
Here are a few of the intros I wrote in assembly language for the Commodore 64 starting in the year 2014. Rigorously oldskool style!
Beam Racer
My first ever intro and my favourite one.
More info and download link here.
Haunted
An excellent char-mode logo by DMD finally in motion!
More info and download link here.
Ambigram
Ambigram is one of those intros that require understanding what the theme is about in order to be fully appreciated.
More info and download link here.
If you watched the video/ran the intro and you’re still wondering what this is about, check my notes on this production.
Border Mania
My first attempt at opening side borders on a Commodore 64 and my second attempt at creating a new logo.
More info and download link here.
Work stages of the logo are available on my WordPress.com blog here.
Other Commodore 64 works
I wrote a number of things for the Commodore 64 over time, but I guess it’s worth mentioning at least the ones below.
SPUTM-like implementation (also referred to as SCUMM mock-up)
It’s by no means complete, but a number of components to recreate SPUTM on a Commodore 64 are ready. I’ve put together a demo involving a location and a few objects from “Monkey Island 2, LeChuck’s Revenge”.
I converted and edited all graphics myself and obviously wrote the code too.
More info and download link here.
Here’s a video of the current state of this effort.
Guybrush Threepwood sprites for my SPUTM-like implementation
ByteBoozer2 extension with a Kernal loader example of usage
I worked at an updated version of David Malmborg’s Byte Boozer 2.0, as a tribute to David’s excellent work.
Along with a fix to the PC cruncher (fix that is required to support linked crunched files and that I have already written about to David himself), I’ve also added an extension, through the “-b” option.
Furthermore, I’ve included a tiny little example program that benefits from both my fix and extension to the original code. It uses Kernal disk routines for loading crunched data, which is decrunched on the fly, without requiring a sector buffer or a decrunch buffer on the C64 side.
The example loads data under ROMs and under the I/O area by means of bank switching so it can be used as a tiny memory footprint loader that also guarantees maximum compatibility with non-legacy drives, especially emulated ones without “true” drive emulation.
More information and code on GitHub.
IFFL system
I extended Lasse Öörni’s Integrated File Flexible Loader (IFFL) for Commodore 1541/1541-II/157x to support Commodore 1581 and CMD FD2000 drives and allow loading of compressed files.
More information and code on GitHub.
IFFL version of Barbarian II for the 1541 disk drive
I own the original tape of Barbarian II for the Commodore 64, which I used to play a lot a long time ago. Side A loads fine as it was encoded using John Twiddy’s “Cyberload”, but side B, which uses the “Palace” tape loader, has been quite problematic in my experience. One can certainly improve things by expanding silence gaps between files, making pilot trains longer, etc., but this odd bugger seems to be still quite temperamental, which adds to the frustration due to the game being quite difficult to play.
Having improved TAPClean to cope with extracting details from “Palace” loader files, I decided to put together a disk version of it. No trainers/cheats or the alike: I just wanted a truthful port of the original game from tape to disk that would load without being temperamental.
Download link here.
EasyFlash code examples for using the EasyAPI (EAPI)
I updated Thomas ’skoe’ Giesel’s EasySDK usage examples for EasyAPI, and added an example on how to embed the latter into a CRT image.
More information and code on GitHub.
EasyFlash loader
EasyFlash loader with usage examples, demonstrating a rather useful scenario involving:
- IRQ-driven tune playback while loading, and
- moving data under ROM and I/O while handling IRQ requests.
This loader was used to put together my EasyFlash version of Last Ninja 2.
More information and code on GitHub.
Mindscape protection tool
This tool uses a a Commodore 64 and 1541 drive to write illegal GCR data to track/sector 1/0 of a cloned Mindscape floppy disk, in order to cause weak bits at read time and pass the Mindscape copy protection.
More information and code on GitHub.
CBM disk data decoder examples
Jupyter Notebooks that illustrate how to decode low level disk samplings. These come in two forms:
- Notebooks to check that a raw stream decoder (KryoFlux) has been correctly implemented:
- CBM sector decoder
- Original disk Duplicator Info decoder (FM)
- Notebooks to process G64 data directly:
- Original disk Duplicator Info decoder (FM)
More information and code on GitHub.
Graphix
Graphix is a plotting software for everywhere continuous and differentiable bivariate expressions. I wrote the 3D engine myself using principles behind perspective projection and light reflection. I also wrote a quite complex mathematical expression parser with “pretty print” capabilities that was integrated within the application.
Note: users may use DOSBox to run this program. Click here for more information and download links for DOSBox.
Downloads for DOS
Graphix 2006
This GTK+ application is an OpenGL-based evolution of my Graphix and Mathematical Parser software.