?DEVICE NOT PRESENT ERROR
Commodore Commodore 64
Severity: ModerateWhat Does This Error Mean?
?DEVICE NOT PRESENT ERROR means the C64 tried to communicate with a peripheral (disk drive, printer, datasette) that is either not connected, not powered on, or not responding on the serial bus.
Affected Models
- Commodore 64
- Commodore 64C
- Commodore 1541 Disk Drive
- Commodore 1530 Datasette
- VICE emulator (C64)
Common Causes
- Disk drive not powered on before the C64 was switched on
- Serial cable not connected or loose between C64 and 1541 drive
- Wrong device number used in the LOAD or OPEN command
- On VICE: no disk image attached for the specified device number
- Datasette used with a LOAD command that specifies device 8 (disk)
How to Fix It
-
Make sure all peripherals are switched on BEFORE powering on the C64.
The C64 detects connected devices at startup. If the 1541 disk drive is turned on after the C64, it is not detected and triggers DEVICE NOT PRESENT.
-
Check the serial cable connection between the C64 and the 1541 drive.
The grey serial cable must be firmly inserted into the serial port on both devices. A loose connector is a very common cause — reseat both ends.
-
Verify the device number in your LOAD or OPEN command.
Device numbers: 1 = datasette, 4 = printer, 8 = first disk drive, 9 = second disk drive. LOAD "*",9 will fail with DEVICE NOT PRESENT if you only have one drive (device 8).
-
On VICE emulator: attach a disk image to the correct device number.
In VICE go to File > Attach Disk Image > Drive 8 (or whichever device number your LOAD command uses) and select a .d64 file. LOAD "*",8,1 requires an image attached to Drive 8.
-
Power cycle everything — turn off the C64 and drive, wait 10 seconds, turn the drive on first, then the C64.
This re-initialises the serial bus and forces device detection from scratch.
Frequently Asked Questions
Why must the disk drive be turned on before the Commodore 64?
The C64's serial bus only scans for connected devices at power-up. If the drive is off when the C64 boots, it is not registered and all attempts to use it trigger DEVICE NOT PRESENT.
Can I fix this without turning everything off?
On original hardware, no — the device detection happens at C64 boot time. On VICE, you can attach a disk image at any time and then retry the LOAD command without restarting.