1 2#------------------------------------------------------------------------------ 3# $File: c64,v 1.12 2022/05/14 20:03:39 christos Exp $ 4# c64: file(1) magic for various commodore 64 related files 5# 6# From: Dirk Jagdmann <doj@cubic.org> 7 80x16500 belong 0x12014100 D64 Image 90x16500 belong 0x12014180 D71 Image 100x61800 belong 0x28034400 D81 Image 110 belong 0x43154164 X64 Image 12 13# C64 (and other CBM) cartridges 14# Extended by David Korth <gerbilsoft@gerbilsoft.com> 15# Reference: https://vice-emu.sourceforge.io/vice_17.html#SEC391 16 170 string C64\40CARTRIDGE Commodore 64 cartridge 18>0x20 ubyte 0 \b, 19>0x20 ubyte !0 20>>0x20 string/T x \b: "%.32s", 21>0x16 beshort 0 22>>0x18 beshort 0x0000 16 KB game 23>>0x18 beshort 0x0001 8 KB game 24>>0x18 beshort 0x0100 UltiMax mode 25>>0x18 beshort 0x0101 RAM/disabled 26>0x16 beshort 1 Action Replay 27>0x16 beshort 2 KCS Power Cartridge 28>0x16 beshort 3 Final Cartridge III 29>0x16 beshort 4 Simons' BASIC 30>0x16 beshort 5 Ocean type 1 31>0x16 beshort 6 Expert Cartridge 32>0x16 beshort 7 Fun Play, Power Play 33>0x16 beshort 8 Super Games 34>0x16 beshort 9 Atomic Power 35>0x16 beshort 10 Epyx Fastload 36>0x16 beshort 11 Westermann Learning 37>0x16 beshort 12 Rex Utility 38>0x16 beshort 13 Final Cartridge I 39>0x16 beshort 14 Magic Formel 40>0x16 beshort 15 C64 Game System, System 3 41>0x16 beshort 16 Warp Speed 42>0x16 beshort 17 Dinamic 43>0x16 beshort 18 Zaxxon / Super Zaxxon (Sega) 44>0x16 beshort 19 Magic Desk, Domark, HES Australia 45>0x16 beshort 20 Super Snapshot V5 46>0x16 beshort 21 Comal-80 47>0x16 beshort 22 Structured BASIC 48>0x16 beshort 23 Ross 49>0x16 beshort 24 Dela EP64 50>0x16 beshort 25 Dela EP7x8 51>0x16 beshort 26 Dela EP256 52>0x16 beshort 27 Rex EP256 53>0x16 beshort 28 Mikro Assembler 54>0x16 beshort 29 Final Cartridge Plus 55>0x16 beshort 30 Action Replay 4 56>0x16 beshort 31 Stardos 57>0x16 beshort 32 EasyFlash 58>0x16 beshort 33 EasyFlash Xbank 59>0x16 beshort 34 Capture 60>0x16 beshort 35 Action Replay 3 61>0x16 beshort 36 62>>0x1A ubyte 1 Nordic Replay 63>>0x1A ubyte !1 Retro Replay 64>0x16 beshort 37 MMC64 65>0x16 beshort 38 MMC Replay 66>0x16 beshort 39 IDE64 67>0x16 beshort 40 Super Snapshot V4 68>0x16 beshort 41 IEEE-488 69>0x16 beshort 42 Game Killer 70>0x16 beshort 43 Prophet64 71>0x16 beshort 44 EXOS 72>0x16 beshort 45 Freeze Frame 73>0x16 beshort 46 Freeze Machine 74>0x16 beshort 47 Snapshot64 75>0x16 beshort 48 Super Explode V5.0 76>0x16 beshort 49 Magic Voice 77>0x16 beshort 50 Action Replay 2 78>0x16 beshort 51 MACH 5 79>0x16 beshort 52 Diashow-Maker 80>0x16 beshort 53 Pagefox 81>0x16 beshort 54 Kingsoft 82>0x16 beshort 55 Silverrock 128K Cartridge 83>0x16 beshort 56 Formel 64 84>0x16 beshort 57 85>>0x1A ubyte 1 Hucky 86>>0x1A ubyte !1 RGCD 87>0x16 beshort 58 RR-Net MK3 88>0x16 beshort 59 EasyCalc 89>0x16 beshort 60 GMod2 90>0x16 beshort 61 MAX Basic 91>0x16 beshort 62 GMod3 92>0x16 beshort 63 ZIPP-CODE 48 93>0x16 beshort 64 Blackbox V8 94>0x16 beshort 65 Blackbox V3 95>0x16 beshort 66 Blackbox V4 96>0x16 beshort 67 REX RAM-Floppy 97>0x16 beshort 68 BIS-Plus 98>0x16 beshort 69 SD-BOX 99>0x16 beshort 70 MultiMAX 100>0x16 beshort 71 Blackbox V9 101>0x16 beshort 72 Lt. Kernal Host Adaptor 102>0x16 beshort 73 RAMLink 103>0x16 beshort 74 H.E.R.O. 104>0x16 beshort 75 IEEE Flash! 64 105>0x16 beshort 76 Turtle Graphics II 106>0x16 beshort 77 Freeze Frame MK2 107 1080 string C128\40CARTRIDGE Commodore 128 cartridge 109>0x20 ubyte 0 \b, 110>0x20 ubyte !0 111>>0x20 string/T x \b: "%.32s", 112>0x16 beshort 0 generic cartridge 113>0x16 beshort 1 Warpspeed128 114>>0x1A ubyte 1 \b, REU support 115>>0x1A ubyte 2 \b, REU support, with I/O and ROM banking 116 1170 string CBM2\40CARTRIDGE Commodore CBM-II cartridge 118>0x20 ubyte !0 119>>0x20 string/T x \b: "%.32s" 120 1210 string VIC20\40CARTRIDGE Commodore VIC-20 cartridge 122>0x20 ubyte 0 \b, 123>0x20 ubyte !0 124>>0x20 string/T x \b: "%.32s", 125>0x16 beshort 0 generic cartridge 126>0x16 beshort 1 Mega-Cart 127>0x16 beshort 2 Behr Bonz 128>0x16 beshort 3 Vic Flash Plugin 129>0x16 beshort 4 UltiMem 130>0x16 beshort 5 Final Expansion 131 1320 string PLUS4\40CARTRIDGE Commodore 16/Plus4 cartridge 133>0x20 ubyte !0 134>>0x20 string/T x \b: "%.32s" 135 136 137# DreamLoad archives see: 138# https://www.lemon64.com/forum/viewtopic.php?t=37415\ 139# &sid=494dc2ca91289e05dadf80a7f8a968fe (at the bottom). 140# https://www.c64-wiki.com/wiki/DreamLoad. 141# Example HVSC Commodore 64 music collection: 142# https://kohina.duckdns.org/HVSC/C64Music/10_Years_HVSC.dfi 143 1440 byte 0 145>1 string DREAMLOAD\40FILE\40ARCHIVE 146>>0x17 byte 0 DFI Image 147>>>0x1a leshort x version: %d. 148>>>0x18 leshort x \b%d 149>>>0x1c lelong x tracks: %d 150 1510 string GCR-1541 GCR Image 152>8 byte x version: %i 153>9 byte x tracks: %i 154 1559 string PSUR ARC archive (c64) 1562 string -LH1- LHA archive (c64) 157 1580 string C64File PC64 Emulator file 159>8 string >\0 "%s" 1600 string C64Image PC64 Freezer Image 161 1620 beshort 0x38CD C64 PCLink Image 1630 string CBM\144\0\0 Power 64 C64 Emulator Snapshot 164 1650 belong 0xFF424CFF WRAptor packer (c64) 166 1670 string C64S\x20tape\x20file T64 tape Image 168>32 leshort x Version:%#x 169>36 leshort !0 Entries:%i 170>40 string x Name:%.24s 171 1720 string C64\x20tape\x20image\x20file\x0\x0\x0\x0\x0\x0\x0\x0\x0\x0\x0\x0 T64 tape Image 173>32 leshort x Version:%#x 174>36 leshort !0 Entries:%i 175>40 string x Name:%.24s 176 1770 string C64S\x20tape\x20image\x20file\x0\x0\x0\x0\x0\x0\x0\x0\x0\x0\x0 T64 tape Image 178>32 leshort x Version:%#x 179>36 leshort !0 Entries:%i 180>40 string x Name:%.24s 181 182# Raw tape file format (.tap files) 183# Esa Hyyti <esa@netlab.tkk.fi> 1840 string C64-TAPE-RAW C64 Raw Tape File (.tap), 185>0x0c byte x Version:%u, 186>0x10 lelong x Length:%u cycles 187 188# magic for Goattracker2, http://covertbitops.c64.org/ 189# from Alex Myczko <alex@aiei.ch> 1900 string GTS5 GoatTracker 2 song 191>4 string >\0 \b, "%s" 192>36 string >\0 \b by %s 193>68 string >\0 \b (C) %s 194>100 byte >0 \b, %u subsong(s) 195 196# CBM BASIC (cc65 compiled) 1970 leshort 0x0801 198>2 leshort 0x080b 199>6 string \x9e CBM BASIC 200>7 string >\0 \b, SYS %s 201