This section lists the settings and commands that are C64/128 specific and thus are not present in the other emulators.
Cartridge images are like disk images, but mirror the contents of cartridge ROM images instead of disk images.
X64 and X128 allow you to attach the following kinds of cartridges:
http://www.funet.fi/pub/cbm/schematics/cartridges/c64/ieee-488/eprom.bin
)
http://www.volny.cz/dundera/
)
Each of these kinds has a specific command in the "Attach a cartridge image" submenu. When you have successfully attached a cartridge image, you should then reset the machine to make sure the cartridge initializes itself. Of course, it is also possible to detach a currently attached cartridge image ("Detach cartridge image").
If you are using a freezer cart like an Action Replay cartridge, you can emulate the cartridge's freeze button with the "Cartridge freeze" command.
Attaching the IEEE488 cartridge automatically enables the IEEE488
interface emulation on the $DF**
I/O ports.
Attaching the IDE64 cartridge automatically enables the IDE64
interface emulation on the $DE**
I/O ports.
These settings control the emulation of the VIC-II (MOS6569) video chip used in both the C64 and the C128.
CheckSsColl
CheckSbColl
-checkss
+checkss
CheckSsColl=1
) and disable (CheckSsColl=0
)
emulation of hardware sprite-sprite collision detection, respectively.
-checksb
+checksb
CheckSbColl=1
) and disable (CheckSbColl=0
)
emulation of hardware sprite-background collision detection,
respectively.
These settings control the emulation of the SID (MOS6581 or MOS8580) audio chip.
SidStereo
SidStereoAddressStart
SidFilters
SidModel
0
:
MOS6581, 1
: MOS8580).
SidUseResid
SidResidSampling
0
: Fast, 1
:
Interpolation, 2
: Resampling)
SidResidPassband
0 - 90
).
-sidstereo
SidStereo
).
-sidstereoaddress ADDRESS
SidStereoAddressStart
).
-sidmodel MODEL
MODEL
as the emulated model of the SID chip
(SidModel
).
-sidfilters
+sidfilters
SidFilters=1
) or disable (SidFilters=0
) emulation
of the built-in SID filters.
-resid
+resid
SidFilters=1
) or disable (SidFilters=0
) usage of
the reSID emulator.
-residsamp METHOD
SidResidSampling=0
),
interpolating (SidResidSampling=1
), or resampling
(SidResidSampling=2
).
-residpass PERCENTAGE
SidResidPassband=0-90
).
There are three I/O extensions available: they are located at the address range $DF00 ... $DFFF and each of them is controlled by a boolean resource. Please use these extensions only when needed, as they might cause compatibility problems.
IEEE488
REU
EmuID
-ieee488
+ieee488
IEEE488=1
) or disable (IEEE488=0
) emulation of the
IEEE488 interface.
-reu
+reu
REU=1
) or disable (REU=0
) emulation of the
512K RAM Expansion Unit.
-emuid
+emuid
EmuID=1
) or disable (EmuID=0
) the emulation
identification extension.
These settings can be used to control what system ROMs are loaded in the C64/128 emulators at startup. They cannot be changed from the menus.
KernalName
BasicName
ChargenName
KernalRev
0
3
sx
67
100
4064
-kernal NAME
KernalName
).
-basic NAME
BasicName
).
-chargen NAME
ChargenName
).
-kernalrev REVISION
KernalRev
).
This section lists the settings and commands that are C64DTV specific and thus are not present in the other emulators.
The DTV has a 2MB Flash chip which contains the kernal, basic and character set ROMs along with other data, such as games in the case of the original C64DTV ROM.
The image file is a dump of the flash chip. It is exactly 2MB (2097152 bytes).
If you do not have a suitable image file, an image using the C64 kernal, basic and charset is automatically created.
If writing to the C64DTV ROM is enabled, the image file is rewritten with the current data when exiting x64dtv.
Note that x64dtv tries to load the image file from the C64DTV directory first, and if it isn't found there, x64dtv tries to load it from the current directory. If you do not have `dtvrom.bin' in your C64DTV directory and writing to DTV ROM is enabled, the `dtvrom.bin' file is created to the current directory.
NOTE: The original C64DTV ROM has somewhat distorted colors, normally you should use a patched rom.
-c64dtvromimage NAME
-c64dtvromrw
+c64dtvromrw
The trueflashfs option is analogous to True drive emulation. If disabled, any file access to the flash filesystem (device 1) will go to the local file system instead.
-trueflashfs
+trueflashfs
-fsflash NAME
The DTV revision 2 has a bug in the Blitter. Using revision 3 is recommended. Emulation of DTV revision 2 including Blitter bug is intended for testing DTV software.
-dtvrev REVISION
The PAL C64DTVs have wrong resistors in the video output circuit, which causes incorrect luminances. Several hardware solutions ("LumaFixes") have been developed to fix this flaw.
The fixed video output is emulated by selecting "New Luminances". The unmodified C64DTV video output can be emulated with "Old Luminances".
The default setting is "New Luminances".
The C64DTV userport emulation currently supports three devices: Hummer ADC, userport joystick and PS/2 mouse.
The joystick that controls either the Hummer ADC or userport joystick can be selected using the same parameter or menu option.
While using the Hummer ADC, joystick UP and DOWN are mapped to the Hummer buttons A and B respectively. LEFT and RIGHT set the ADCs output to 0 and 255. Centering the joystick results in the ADC value of 128.
Currently the Hummer ADC and userport joystick are mutually exclusive. This means that enabling one disables the other. PS/2 mouse emulation can be used simultaneously with either Hummer ADC or userport joystick.
-hummerusrdev DEVICE
-hummerusrjoyport PORT
-ps2mouse
+ps2mouse
Debugging information on Blitter, DMA and Flash can be enabled with command line parameters. This can be useful for DTV software development.
-dtvblitterlog
+dtvblitterlog
-dtvdmalog
+dtvdmalog
-dtvflashlog
+dtvflashlog
Currently the registers A, Y and X are registers R0, R1 and R2 regardless of the mapping, which can be seen and modified via the registers ACM and XYM.
The monitor can access all 2MB of RAM and 2MB of Flash, but only 64 kB at a time. The 64kB bank can be selected with "bank ram00".."ram1f" for RAM and "bank rom00".."rom1f" for Flash.
The "load" command can load large files (>64kB) correctly if the bank is set to "ramXX", where XX is the starting bank (usually "bank00").
This section lists the settings and commands that are VIC20-specific and thus are not present in the other emulators.
As with the C64 (see section 7.1.1 Using cartridge images), it is possible to attach several types of cartridge images:
This can all be done via the "Attach cartridge image..." command in the left-button menu. It is also possible to let XVIC "guess" the type of cartridge using "Smart-attach cartridge image...".
Notice that several cartridges are actually made up of two pieces (and two files), that need to be loaded separately at different addresses. In that case, you have to know the addresses (which are usually specified in the file name) and use the "attach" command twice.
A special kind of cartridge file is where the two files mentioned above are concatenated (with removing the two byte load address of the second image) into one 16k image. There are only few of those images, though. Normally the second part is located at $A000. Vice can now attach such concatenated files at the start address $2000, $4000, and $6000. The second half of such an image is moved to $A000. If you encounter 16k images that have the second half not at $A000 you can split the image into two halfs (i.e. one 8194 byte and one 8192 byte, because the first has the load address) and attach both files separately.
One cartridge that is currently only partially supported here is the VIC1112 IEEE488 interface. You have to load the ROM as a cartridge, but you also have to enable the IEEE488 hardware by menu.
It is possible to change the VIC20 memory configuration in two ways: by enabling and/or disabling certain individual memory blocks, or by choosing one among a few typical memory configurations. The former can be done by modifying resource values directly or from the right-button menu; the latter can only be done from the menu.
There are 5 RAM expansion blocks in the VIC20, numbered 0, 1, 2, 3 and 5:
These blocks are called expansion blocks because they are not
present a stock ("unexpanded") machine. Each of them is associated to
a boolean RamBlockX
resource (where X
is the block number)
that specifies whether the block is enabled or not.
There are also some common memory configurations you can pick from the right-button menu:
As with the X64 (see section 7.1.4 C64 I/O extension settings), it is also possible to enable a special emulator identification mechanism that uses certain memory locations to let a running program query information about the emulator itself; this is enabled by the "Emulator identification" option.
RAMBlock0
RAMBlock1
RAMBlock2
RAMBlock3
RAMBlock5
EmuID
-memory CONFIG
none
(no extension);
all
(all blocks);
3k
(3k space in block 0);
8k
(first 8k extension block);
16k
(first and second 8k extension blocks);
24k
(first, second and 3rd extension blocks);
0
, 1
, 2
, 3
, 5
(memory in respective
blocks);
04
, 20
, 40
, 60
, A0
(memory at
respective address.
xvic -memory nonegives an unexpanded VIC20. While
xvic -memory 60,a0or
xvic -memory 3,5enables memory in blocks 3 and 5, which is the usual configuration for 16k ROM modules.
-emuid
+emuid
EmuID=1
) or disable (EmuID=0
) the emulation
identification extension.
These settings can be used to control what system ROMs are loaded in the VIC20 emulator at startup. They cannot be changed from the menus.
KernalName
BasicName
ChargenName
CartridgeFile2000
CartridgeFile4000
CartridgeFile6000
CartridgeFileA000
CartridgeFileB000
-kernal NAME
KernalName
).
-basic NAME
BasicName
).
-chargen NAME
ChargenName
).
-cart2 NAME
-cart4 NAME
-cart6 NAME
-cartA NAME
-cartB NAME
CartridgeFile2000
,...,CartridgeFileB000
).
This section lists the settings and commands that are PET-specific and thus are not present in the other emulators.
With xpet
, it is possible to change at runtime the
characteristics of the emulated PET so that it matches (or not) the ones
of a certain PET model, and it is also possible to select from a common
set of PET models so that all the features are selected accordingly.
The former is done by changing the following resources (via resource file, command line options or right-menu items):
RamSize
IOSize
Crtc
VideoSize
Ram9
RamA
SuperPET
Basic1
Basic1Chars
EoiBlank
EmuID
$e8a0-$e8ff
, for use see C64).
DiagPin
ChargenName
KernalName
EditorName
RomModule9Name
RomModuleAName
RomModuleBName
Choosing a common PET model is done from the right-button menu instead, by choosing an item from the "Model defaults" submenu. Available models are:
Notice that this will reset the emulated machine.
It is also possible to select the PET model at startup, with the
-model
command-line option: for example, `xpet -model 3032'
will emulate a PET 3032 while `xpet -model 8296' will emulate a PET
8296.
It is possible to enable or disable emulation of the PET diagnostic pin
via the DiagPin
resource, or the "PET userport diagnostic pin"
item in the right-button menu.
When the diagnostic pin is set, the Kernal does not try to initialize the BASIC, but directly jumps into the builtin machine monitor.
These are the commandline options specific for the CBM-II models.
-model MODEL
-kernal NAME
KernalName
).
-editor NAME
EditorName
).
-chargen NAME
ChargenName
).
-rom9 NAME, -romA NAME, -romB NAME
RomModule9Name
, RomModuleAName
,
RomModuleBName
).
-petramA, -petramB
Ram9
, RamA
).
-superpet, +superpet
SuperPET
).
-basic1, +basic1
Basic1
).
-basic1char, +basic1char
Basic1Chars
).
-eoiblank, +eoiblank
EoiBlank
).
-emuid
+emuid
EmuID=1
) or disable (EmuID=0
) the emulation
identification extension (at $e8a0-$e8ff
).
-diagpin
+diagpin
DiagPin=1
) or disable (DiagPin=0
) the
diagnostic pin at the PET userport.
It is also possible to choose what color set is used for the emulation
window. This is done by specifying a palette file name (see section 4.3 Palette files) in the PaletteName
resource. The menu provides the
following values:
green.vpl
(default, "green)"), the good old green-on-black
feeling;
amber.vpl
("amber"), an amber phosphor lookalike;
white.vpl
("white"), simple white-on-black palette.
This section lists the settings and commands that are CBM-II-specific and thus are not present in the other emulators.
With xcbm2
, it is possible to change at runtime the
characteristics of the emulated CBM so that it matches (or not) the ones
of a certain CBM model, and it is also possible to select from a common
set of CBM models so that all the features are selected accordingly.
The former is done by changing the following resources (via resource file, command line options or right-menu items):
UseVicII
RamSize
Ram08, Ram1, Ram2, Ram4, Ram6, RamC
Cart2Name, Cart4Name, Cart6Name
ModelLine
Choosing a common CBM-II model is done from the right-button menu instead, by choosing an item from the "Model defaults" submenu. Available models are:
Notice that this will reset the emulated machine.
Warning: At this time switching between 510 and other machines during runtime is not supported and will not work.
It is also possible to select the CBM model at startup, with the
-model
command-line option: for example, `xcbm2 -model 610'
will emulate a CBM 610 while `xcbm2 -model 620' will emulate a CBM
620. Notably this is the only way to start a C510 emulation, with
-model 510
.
These are the commandline options specific for the CBM-II models.
-usevicii
+usevicii
-kernal NAME
KernalName
).
-basic NAME
BasicName
).
-chargen NAME
ChargenName
).
-cart2 NAME, -cart4 NAME, -cart6 NAME
Cart2Name
, Cart4Name
, Cart6Name
).
-ram08, -ram1, -ram2, -ram4, -ram6, -ramC
Ram08
, Ram1
, Ram2
, Ram4
, Ram6
,
RamC
).
-modelline
It is also possible to choose what color set is used for the emulation
window. This is done by specifying a palette file name (see section 4.3 Palette files) in the PaletteName
resource. The menu provides the
following values:
green.vpl
(default, "green"), the good old green-on-black
feeling;
amber.vpl
("amber"), an amber phosphor lookalike;
white.vpl
("white"), simple white-on-black palette.
Go to the first, previous, next, last section, table of contents.