Go to the first, previous, next, last section, table of contents.

10 c1541

VICE is provided with a complete stand-alone disk image maintenance utility, called c1541.

You can either invoke it from the command line or from within one of the VICE emulators, using the "Run c1541" command which will open a new xterm window with a running c1541 in it.

The syntax is:


IMAGE1 and IMAGE2 are disk image names that can be attached before c1541 starts. c1541 can handle up to two disk images at the same time by using two virtual built-in drives, numbered 8 and 9; IMAGE1 (if present) is always attached to drive 8, while IMAGE2 is attached to drive 9.

COMMANDs specified on the command-line all begin with the minus sign (-); if present, c1541 executes them in the same order as they are on the command line and returns a zero error code if they were successful. If any of the COMMANDs fails, c1541 stops and returns a nonzero error code.

If no COMMANDs are specified at all, c1541 enters interactive mode, where you can type commands manually. Commands in interactive mode are the same as commands in batch mode, but do not require a leading -. As with the monitor, file name completion and command line editing with history are provided via GNU readline. Use the command `quit' or press C-d to exit.

10.1 Specifying files in c1541

When accessing CBM DOS files (i.e. files that reside on disk images), c1541 uses a special syntax that lets you access files on both drive 8 and 9. If you prepend the file name with @8: or @9:, you will specified that file is to be found or created on drive 8 and 9, respectively.

For instance,


will name file named somefile on unit 8, while


will name file named somefile on unit 9.

10.2 Using quotes and backslashes

You can use quotes (") in a command to embed spaces into file names. For instance,

read some file

will read file some from the disk image and write it into the file system as file, while

read "some file"

will copy some file into the file system, with the name some file.

The backslash character (\) has a special meaning too: it lets you literally insert the following character no matter what it is. For example,

read some\ file

will copy file some file into the file system, while

read some\ file this\"file

will copy some file into the file system with name this"file (with an embedded quote).

10.3 c1541 commands and options

This is a list of the c1541 commands. They are shown in their interactive form, without the leading -. Square brackets [] indicate an optional part, and "<COMMAND>" translates to a disk command according to CBM DOS, like "i0" for example.

Execute specified CBM DOS command and print the current status of the drive. If no command is specified, just print the status.
? [<command>]
Explain specified command. If no command is specified, list available ones.
attach <diskimage> [<unit>]
Attach diskimage to unit (default unit is 8).
block <track> <sector> <disp> [<drive>]
Show specified disk block in hex form.
copy <source1> [<source2> ... <sourceN>] <destination>
Copy source1 ... sourceN into destination. If N > 1, destination must be a simple drive specifier (@n:).
delete <file1> [<file2> ... <fileN>]
Delete the specified files.
Exit (same as quit).
Extract all the files to the file system.
format <diskname,id> [<type> <imagename>] [<unit>]
If unit is specified, format the disk in unit unit. If type and imagename are specified, create a new image named imagename, attach it to unit 8 and format it. type is a disk image type, and must be either x64, d64 (both VC1541/2031), g64 (VC1541/2031 but in GCR coding), d71 (VC1571), d81 (VC1581), d80 (CBM8050) or d82 (CBM8250/1001). Otherwise, format the disk in the current unit, if any.
gcrformat <diskname,id> <imagename>
Create and format a G64 disk image named imagename.
help [<command>]
Explain specified command. If no command is specified, list available ones.
info [<unit>]
Display information about unit unit (if unspecified, use the current one).
list [<pattern>]
List files matching pattern (default is all files).
Exit (same as exit).
read <source> [<destination>]
Read source from the disk image and copy it into destination in the file system. If destination is not specified, copy it into a file with the same name as source.",
rename <oldname> <newname>
Rename oldname into newname. The files must be on the same drive.
tape <t64name> [<file1> ... <fileN>]
Extract files from a T64 image.
unit <number>
Make unit number the current unit.
unlynx <lynxname> [<unit>]
Extract the specified Lynx image file into the specified unit (default is the current unit).
validate [<unit>]
Validate the disk in unit unit. If unit is not specified, validate the disk in the current unit.
write <source> [<destination>]
Write source from the file system into destination on a disk image.
zcreate <x64name> <zipname> [<label,id>]
Create an X64 disk image out of a set of four Zipcoded files named 1!zipname, 2!zipname, 3!zipname and 4!zipname.

10.4 Executing shell commands

If you want to execute a shell command from withing c1541, just prepend it with an exclamation mark (!). For example,

!ls -la

will execute the command ls -la, which will show you all the files in the current directory.

Go to the first, previous, next, last section, table of contents.