C64 Mini CJM files Reference

The C64 Mini is a fun and useful machine for those wanting to relive the experience of the Commodore 64. However, the C64 Mini uses emulation to run games. This means it behaves differently than a full-fledged Commodore 64 and, as a result, games designed for the system do not always behave the same way they would when running on original equipment.

The way they found to get around a lot of these issues was the .CJM file. This is a simple text file that, when formatted properly, will tell the Mini how to operate with certain games. 

There is a tool to help you do this here that automates a lot of the process. This site also has pre-configured CJM files to download.

While it is not necessary to write the configuration file yourself, it should be well documented in the event that this tool no longer is available. Let’s start by taking a look at an existing .CJM file.


NOTE: You will need to name the file EXACTLY the same name as the image file. (Ex. Jupiter_Lander.d64 –> Jupiter_Lander.cjm)

X: System options
Each one of these is either on or off. Remove the option to disable. NOTE: These X: values are case sensitive and must be in all lower case.

ntsc: This is the video display type the game requires. Options are: ntsc or pal. Remove to use the default (native) display.
accuratedisk: This turns off the cycle exact floppy emulation in the mini. Use this option if the game hangs or crashes while loading.
Note: Accurate Disk does slow down loading but it does not control the Mini’s fast loader. To disable that, press the third button (C) on the Mini Joystick before loading your ROM or disk image. 
Marks the disk image read-only. Required for some disk images and copy protection.
driveicon: Displays a drive icon while the image is being accessed.

J: Joystick Mapping
Each one of these options is required – even if the joystick doesn’t have a button for the function.

Input Type Number Default Up Down Left Right Fire Left Fire Right Triangle L / X Triangle R / Y Triangle R / Shoulder L A/B B/A C / Select Triangle L / Shoulder R Controller Brand
Joystick Mini in port 2 2nd is default Joy Up Joy Down Joy Left Joy Right Joy Fire Joy Fire Run/Stop Space Space Run/Stop F1 F7 Run/Stop  
J: 2 * JU JD JL JR JF JF RS SP SP RS F1 F7 RS C64 Mini


JU Joystick Up
JD Joystick Down
JL Joystick Left
JR Joystick Right
JF Joystick Fire
F1 F1
F2 F2
F3 F3
F4 F4
F5 F5
F6 F6
F7 F7
F8 F8
0-9 0-9
EN Return
@ @
. .
/ /
+ +
; ;
* *
CU Cursor Up
CD Cursor Down
CL Cursor Left
CR Cursor Right
SL Shift Left
SR Shift Right
HM Home
DL Delete
CT Control
RE Restore
PO £ (pound)
SS Shift Lock
AU Arrow Up
AL Arrow Left
CO Comma
CM C= key

V: Vertical Video Offset
This is simply a positive or negative integer to move the video up or down.

This should give you enough info to remap joystick and set system options. 

Example 1: You have a PAL game that is not designed for a joystick but instead uses WASD and the Right Shift for joystick control.


Example 2: You want to turn on the access indicator and map the second joystick button to Space on the second joystick and make it default.


Using The File

Place the file in the same folder as your game. The mini looks for the .CJM file automatically. 

Applying to Multiple Games

You can apply the file to multiple games in a folder by renaming the file to THEC64-default.cjm

This information is found in more detail here under Appendix A.

Leave a Reply

Your email address will not be published. Required fields are marked *