Home > CBM > Disk > Fast Load
7 Subpages: Access, Epyx, GEOS, Microprose 1, Microprose 2, Project Firestart, Sega

This section is about various fast-loaders and copy-protection. Most commercial software for the C64 and C128 had copy-protection and especially for the C64 this also included a fast-loader. The fast-loader was especially needed for most C64 owners who did not have JiffyDOS. I've seen many cracked games (copy protection removed) that do not include a fast loader and they can be annoying to play (unless you have an emulator or JiffyDOS).

Let's take a deep dive into some of these to see how they work. Some are better = faster than others, as we'll see and discuss their merits. Some are better = harder to duplicate; we'll talk breifly about these without going into details of disk duplication. The following are fast-loaders for the C1541 from commericial publishers:

This last one is a home-brew fast-loader for the C1581:

  Comparison 

We can compare these fast-loaders on a number of a features.

 Microprose
type 1
Microprose
type 2
SegaAccessEpyxGEOSProject
Firestart
Drive type1541154115411541154115411581
Blank screennonoyesnoyes
(loading)
nono
Interrupts allowednonononono
(loading)
noyes
Disk Headermodifiedmodifiedstandardstandardstandardmodifiedstandard
Directory structuremodifiedstandardstandardstandardnot usedmodifiedstandard
Allow wildcard
in filename
yesnonoyesn/an/ayes
File structurecustomcustomstandardstandardcustomcustom &
standard
standard
Sector structurecustom
(376 bytes)
custom
(256 bytes)
standard
(256 bytes)
standard
(256 bytes)
custom
(240 bytes)
standard
(256 bytes)
standard
(256 bytes)
Sector decoding time0.0 ms18.8 ms25.5 ms25.5 ms0.0 ms25.5 ms0.0 ms
Head stepping speed
(ms / half-track)
7.812.55.515.010.04.0~7.53.0
Disk → C64 transfer57 µs/byte50 µs/byte87 µs/byte131 µs/byte39 µs/byte98 µs/byte48 µs/byte
C64 → Disk transfer1300 µs/byte147 µs/byte422 µs/byte1300 µs/byte1050 µs/byte100 µs/byte1024 µs/byte
C64 memory footprintunder 0.25K1.0Kunder 1.75Kunder 1.0Kunder 0.75Kabout 3.5Kabout 0.5K
(w/o save)
Needs KERNALyesnonoyesnoyesno
Load $D000~DFFFI/OI/ORAMI/ORAMI/OI/O
Alters User Portyesyesyesyesmaybe
(uses default)
nono
Requires Unit 8yesyesyesnoyesnono
Write file/sectornonononoyesyesyes
OtherDrive reads
5 blocks
before
each file.
Fast transfer
256 bytes
before
each file.
 Slow transfer
512 bytes
before
each file.
No data
checksum.
Always loads
multiples
of 240 bytes.
 Emulates
KERNAL with
nibble write.

© Hydrophilic.net, 2026