Modular command line tool for creating .d64 (C64 floppy) disk images

View the Project on GitHub Zirias/c64_tool_mkd64


mkd64 is a modular tool for creating .D64 images (disk images for a C64 floppy drive). The core program is responsible for writing tracks and sectors, while loadable modules do everything else, for example writing a directory.


The mkd64 command line works like a minimal scripting language: It starts with global options for loading modules and specifying things like output files or the disk name. The first '-f' options switches to file mode, every file starts with '-f' and an optional name to load from your harddrive and ends with '-w' for writing the file to the disk image.

mkd64 will never complain about unknown options but silently ignore them. This is because every option gets also fed to every loaded module, so modules can extend the available options.



In short: just type 'make'. You will need GNU make and the GCC C-compiler for this to work. For windows, use MinGW (and DON'T use MSYS, because the Makefile assumes the shell to be CMD.EXE).


Put mkd64 (or mkd64.exe) and all modules (*.so or *.dll) in the same directory. That's it. For more information and options see INSTALL.txt


I create win32 binaries for every tagged release in-tree, see directory win32bin. There's also a directory win64bin, but no guarantee this will be updated every time. In fact, right now mkd64 doesn't take any advantage of 64bit on windows, it just gets bigger, so there's not much of a point, as long as WoW64 clobbers any windows installation anyways ;)


type 'mkd64 -h' to get an overview of all core options. type 'mkd64 -h [module]' for help with module [module].



This module reserves track 18 and uses it to write the BAM and directory entries like an original floppy dos. Use 'mkd64 -h cbmdos' for details.


This module provides tracks 36-40 and an option to write BAM entries in DOLPHIN DOS and/or SPEED DOS format


This module provides an easy-to-use way to add separators and boxes to the directory, using PETSCII graphics. Use 'mkd64 -h separators' for details.

module API

See modapi.txt and the generated API documentation


© Felix Palmen

This code is free software and may be used or modified for any purpose, as long as the following conditions are met:


Patches and comments are welcome and appreciated. Please have a look in coding.txt before you work on the source.