xroar - Man Page

Dragon and Tandy CoCo 1/2 emulator


xroar [-c conffile] [OPTION]... [FILENAME]...


xroar is a Dragon emulator that runs on a wide variety of platforms.  Due to hardware similarities, XRoar also emulates the Tandy Colour Computer (CoCo) models 1 & 2.


Options are first read from a configuration file (by default, $HOME/.xroar/xroar.conf).  Options on the command line override any found in the configuration file.


allocate a console window (Windows only)

-c conffile

specify a configuration file


-default-machine name

default machine on startup

-machine name

configure named machine (-machine help for list)

The remaining options configure the currently selected machine:

-machine-desc text

machine description

-machine-arch arch

machine architecture (dragon64, dragon32 or coco)

-machine-keyboard layout

keyboard layout (dragon, dragon200e or coco)

-machine-cpu cpu

machine CPU (6809 or 6309)

-bas name

BASIC ROM to use (CoCo only)

-extbas name

Extended BASIC ROM to use

-altbas name

64K mode Extended BASIC ROM (Dragon 64)


disable BASIC


disable Extended BASIC


disable 64K mode Extended BASIC

-ext-charset name

external character generator ROM to use

-tv-type type

TV type (pal, ntsc or pal-m)

-vdg-type type

VDG type (6847 or 6847t1)

-ram kbytes

amount of RAM in K

-machine-cart name

default cartridge for selected machine


don't automatically pick a DOS cartridge


-cart name

configure named cartridge (-cart help for list)

The remaining options configure the currently selected cartridge:

-cart-desc text

cartridge description

-cart-type type

cartridge base type (-cart-type help for list)

-cart-rom name

ROM image to load ($C000-)

-cart-rom2 name

second ROM image to load ($E000-)


autorun cartridge


enable becker port where supported

Multi-Pak Interface

-mpi-slot slot

initially select slot (0-3)

-mpi-load-cart [slot=]name

insert cartridge into next or numbered slot

Becker port


prefer becker-enabled DOS (when picked automatically)

-becker-ip address

address or hostname of DriveWire server []

-becker-port port

port of DriveWire server [65504]


-load file

load or attach file

-run file

load or attach file and attempt autorun


-tape-write file

open file for tape writing

-tape-pan panning

pan stereo input (0.0 = full left, 1.0 = full right) [0.5]


disable fast tape loading


disable automatic leader padding


enable tape rewriting

-tape-ao-rate hz

set tape writing frame rate



default to enabling write-back for disk images


don't try to detect headerless OS-9 JVC disk images


don't assume single density for 10 sec/track disks

Firmware ROM images

-rompath path

ROM search path (colon-separated list)

-romlist name=list

define a ROM list


print defined ROM lists

-crclist name=list

define a ROM CRC list


print defined ROM CRC lists


force per-architecture CRC matches

User interface

-ui module

user-interface module (-ui help for list)


-vo module

video module (-vo help for list)


start emulator full-screen if possible

-fskip frames

frameskip (default: 0)

-ccr renderer

cross-colour renderer (simple, 5bit or simulated)

-gl-filter filter

OpenGL texture filter (auto, nearest or linear)

-geometry wxh+x+y

initial emulator geometry


start with text mode inverted


-ao module

audio module (-ao help for list)

-ao-device string

device to use for audio module

-ao-format fmt

set audio sample format (-ao-format help for list)

-ao-rate hz

set audio frame rate (if supported by module)

-ao-channels n

set number of audio channels, 1 or 2

-ao-fragments n

set number of audio fragments

-ao-fragment-ms ms

set audio fragment size in ms (if supported)

-ao-fragment-frames n

set audio fragment size in samples (if supported)

-ao-buffer-ms ms

set total audio buffer size in ms (if supported)

-ao-buffer-frames n

set total audio buffer size in samples (if supported)

-ao-gain db

audio gain in dB relative to 0 dBFS [-3.0]

-volume volume

older way to specify audio volume, linear (0-100)


faster but less accurate sound


-keymap code

host keyboard type (-keymap help for list)


enable keyboard translation

-type string

intercept ROM calls to type string into BASIC


-joy-right name

map right joystick

-joy-left name

map left joystick

-joy-virtual name

specify the 'virtual' joystick to cycle [kjoy0]

-joy name

configure named joystick (-joy help for list)

The remaining options configure the currently selected joystick:

-joy-desc text

joystick description

-joy-axis axis=spec

configure joystick axis

-joy-button btn=spec

configure joystick button


-lp-file file

append printer output to file

-lp-pipe command

pipe printer output to command



enable GDB target

-gdb-ip address

address of interface for GDB target []

-gdb-port port

port for GDB target to listen on [65520]


start with trace mode on

-debug-ui flags

UI debugging (see manual, or -1 for all)

-debug-file flags

file debugging (see manual, or -1 for all)

-debug-fdc flags

FDC debugging (see manual, or -1 for all)

-debug-gdb flags

GDB target debugging (see manual, or -1 for all)

-v,  --verbose level

general debug verbosity (0 to 3) [1]

-q,  --quiet

equivalent to --verbose 0

-timeout s

run for s seconds then quit

-timeout-motoroff s

quit s seconds after tape motor switches off

-snap-motoroff file

write a snapshot each time tape motor switches off

Other options


print configuration to standard out


print configuration to standard out, including defaults

-h,  --help

display help and exit

-V,  --version

output version information and exit




Ciaran Anscomb <xroar@6809.org.uk>


June 2020 XRoar 0.36.2