Up: Monitor settings [Contents][Index]

#### 6.15.1 Monitor resources

`KeepMonitorOpen`

  Boolean, if true the monitor window may stay open when the emulation is running, eg to look at trace-point output. (Not all ports/UIs support this, in that case this setting has no effect.)

`RefreshOnBreak`

  Boolean, if true, the emulated display(s) will update as the monitor is entered and also after each command executed via the monitor. Not entirely accurate yet, as updates become visible one scanline at a time. In addtion, the image can be not quite right around the raster line being updated.

`MonitorServer`

  Boolean specifying whether the remote monitor server is enabled.

`MonitorServerAddress`

  String specifying the address the remote monitor server listens to (ip4://127.0.0.1:6510)

`BinaryMonitorServer`

  Boolean specifying whether the binary monitor server is enabled.

`BinaryMonitorServerAddress`

  String specifying the address the binary monitor server listens to (ip4://127.0.0.1:6502)

`NativeMonitor`

  Boolean specifying whether the native monitor is enabled. When enabled, the monitor will not run in the interface of the emulator, but instead work in the spawning terminal.

`MonitorLogEnabled`

  Boolean specifying whether the output of the monitor will be logged to a file.

`MonitorLogFileName`

  String specifying the logfile name for the monitor.

`MonitorChisLines`

  Integer specifying the number of lines to keep in the cpu history. (only when enabled in configure)

`MonitorScrollbackLines`

  Integer specifying the number of lines to keep in the monitor scrollback buffer (-1 for no limit).

`MonitorFont`

  String specifying the font to use in the Gtk3 UI’s VTE monitor window. Should be in the form accepted by Pango, for example "Liberation Mono 11".

#### 6.15.2 Monitor command-line options

`-moncommands <Name>`

  Execute the commands from the file <Name> in the monitor after starting up. All monitor commands are supported, including playback of other command files via `pb`. By default, the monitor opens and starts executing the commands just before the kernal reset routine starts. The kernal starup sequence may interfere with what you are trying to achieve, for example by clearing any basic listing you may have loaded. In this case, use the `-initbreak` option to control when the monitor will open and execute your script. You can choose an address, or use `-initbreak ready` to attempt to detect when the kernel is ready and execute the script then.

`-initbreak <address>`
`-initbreak reset`
`-initbreak ready`

  Set an initial breakpoint for the monitor. Addresses with prefix "0x" are hexadecimal. `-initbreak reset` will break just before the reset routine starts. `-initbreak ready` will attempt to break when the kernal is ’ready’.

`-keepmonopen`
`+keepmonopen`

  Enable/disable keeping the monitor window open (`KeepMonitorOpen=1`, `KeepMonitorOpen=0`).

`-refreshonbreak`
`+refreshonbreak`

  Enable/Disable refresh display when entering monitor and after each monitor command. (`RefreshOnBreak=1`, `RefreshOnBreak=0`).

`-remotemonitor`
`+remotemonitor`

  Enable/Disable remote monitor

`-remotemonitoraddress <name>`

  The local address the remote monitor should bind to

`-binarymonitor`
`+binarymonitor`

  Enable/Disable binary monitor

`-binarymonitoraddress <name>`

  The local address the binary monitor should bind to

`-nativemonitor`
`+nativemonitor`

  Enable/Disable native monitor. (`NativeMonitor=1`, `NativeMonitor=0`).

`-monlog`
`+monlog`

  Enable/Disable logging monitor output to a file. (`MonitorLogEnabled=1`, `MonitorLogEnabled=0`).

`-monlogname <name>`

  Specify logfile name for the monitor. (`MonitorLogFileName`).

`-monchislines <value>`

  Set number of lines to keep in the cpu history. (only when enabled in configure) (`MonitorChisLines`).

`-monscrollbacklines <value>`

  Set number of lines to keep in the monitor scrollback buffer (-1 for no limit). (`MonitorScrollbackLines`).

`-monitorfont <font-description>`

  Set the monitor font for the Gtk3 UI’s VTE-monitor. (`MonitorFont`).

### 6.16 RAM init pattern settings

The initial content of uninitialized RAM depends on many factors, the inner workings of the RAM chip, the motherboard, etc. Generally, many RAM chips are build in a way that - however - at powerup about half the bits turn out 1, and about the other half turns out 0. As a consequence, and depending on what kind of RAM chips have been used in what kind of way, the typical patterns can be "seen" by the CPU right after powerup.

VICE tries to model (some of) the real patterns accurately. Please be aware of the fact that there is - technically buggy - software out there that will only work with a certain RAM init pattern.

How generating the pattern works is easily described in three simple steps:

1. A base pattern is created using blocks of `RAMInitStartValue`, which is inverted every `RAMInitValueInvert` bytes. This pattern can be offset ("rotated") by `RAMInitValueOffset` bytes. This step creates the typical 00 00 ff ff ff ff 00 00 etc patterns.

2. Every `RAMInitPatternInvert` bytes the base pattern is inverted ("xored") by `RAMInitPatternInvertValue`. This step creates the inverted pattern every $4000 or so bytes that is typical for some boards/ICs. It may also create the 0x99, 0x66 based patterns that show up on other setups.

3. Every `RAMInitRepeatRandom` bytes `RAMInitStartRandom` bytes are randomly inverted ("xored"). Additionally every bit is randomly inverted with a `RAMInitRandomChance` : 4096 chance. This step creates the typical random bytes that have been observed with some boards/ICs.

#### 6.16.1 RAM init pattern resources

`RAMInitStartValue`

  Integer specifying the first value of the base pattern (all emulators except vsid). (0..255)

`RAMInitValueInvert`

  Integer specifying the number of bytes until the base pattern is inverted (all emulators except vsid).

`RAMInitValueOffset`

  Integer specifying the number of bytes to offset the base pattern (all emulators except vsid).

`RAMInitPatternInvert`

  Integer specifying the length of the memory block when inverting the base pattern (all emulators except vsid).

`RAMInitPatternInvertValue`

  Integer specifying the value to use for inverting the base pattern with (all emulators except vsid).

`RAMInitStartRandom`

  Integer specifying the number of random bytes in the random pattern (all emulators except vsid).

`RAMInitRepeatRandom`

  Integer specifying the number of bytes after which to repeat the random pattern (all emulators except vsid).

`RAMInitRandomChance`

  Integer specifying the chance of any bit to randomly toggle (0-4096) (all emulators except vsid).

#### 6.16.2 RAM init pattern command-line options

`-raminitstartvalue <value>`

  Set the first value of the base pattern (`RAMInitStartValue`) (all emulators except vsid). (0..255)

`-raminitvalueinvert <num of bytes>`

  Set the number of bytes until the base pattern is inverted (`RAMInitValueInvert`) (all emulators except vsid).

`-raminitvalueoffset <num of bytes>`

  Offset the first pattern by <num> of bytes (`RAMInitValueOffset`) (all emulators except vsid).

`-raminitpatterninvert <num of bytes>`

  Set the length of the memory block when inverting the base pattern (`RAMInitPatternInvert`) (all emulators except vsid).

`-raminitpatterninvertvalue <value>`

  Set the length of the memory block when inverting the base pattern (`RAMInitPatternInvertValue`) (all emulators except vsid).

`-raminitstartrandom <num of bytes>`

  Set the number of random bytes in the random pattern (`RAMInitStartRandom`) (all emulators except vsid).

`-raminitrepeatrandom <num of bytes>`

  Set the number of bytes after which to repeat the random pattern (`RAMInitRepeatRandom`) (all emulators except vsid).

`-raminitrandomchance <value>`

  Set the chance of any bit to randomly toggle (0-4096) (`RAMInitRandomChance`) (all emulators except vsid).

### 6.17 Debug settings

#### 6.17.1 Debug resources

`TapeLog`

  Boolean specifying whether the tape log device is enabled.

`TapeLogDestination`

  Integer specifying where the tape log goes to (0=Enable logging to the emulator log file 1=Enable logging to a file).

`TapeLogfilename`

  String that specifies the tape log file name

`DebugCartEnable`

  Boolean specifying whether the debug "cartridge" used for the test suite is enabled.

  The following are only available when the emulators were compiled in DEBUG mode:

`TraceMode`

  Integer specifying the trace mode (0=normal 1=small 2=history)

`AutoPlaybackFrames`

  Amount of automatic playback frames

`MainCPU_TRACE`

  Trace the main CPU / Do not trace the main CPU

`Drive0CPU_TRACE`

  Trace the drive 0 CPU / Do not trace the drive 0 CPU

`Drive1CPU_TRACE`

  Trace the drive 1 CPU / Do not trace the drive 1 CPU

`Drive2CPU_TRACE`

  Trace the drive 2 CPU / Do not trace the drive 2 CPU

`Drive3CPU_TRACE`

  Trace the drive 3 CPU / Do not trace the drive 3 CPU

`IEC_TRACE`

  Trace IEC bus activity / Do not trace IEC bus activity

#### 6.17.2 Debug command-line options

`-core`
`+core`

  Enable/disable generation of core dumps (`DoCoreDump=1`, `DoCoreDump=0`) (all emulators except vsid).

`-debug`
`+debug`

  Disable/enable calling of the exception handler (`DoCoreDump=1`, `DoCoreDump=0`) (all emulators except vsid).

`-debugcart`
`+debugcart`

  Enable/disable the debug "cartridge" used for the test suite.

`-tapelog`
`+tapelog`

  Enable/Disable the tape log device. (`TapeLog=1`, `TapeLog=0`).

`-tapelogtofile`

  Enable logging to a file (`TapeLogDestination=1`).

`-tapelogtolog`

  Enable logging to the emulator log file (`TapeLogDestination=0`).

`-tapelogimage <name>`

  Specify tape log file name (`TapeLogfilename`).

  The following are only available when the emulators were compiled in DEBUG mode:

`-trace_maincpu`
`+trace_maincpu`

  Trace the main CPU / Do not trace the main CPU (`MainCPU_TRACE=1`, `MainCPU_TRACE=0`)

`-trace_drive0`
`+trace_drive0`

  Trace the drive 0 CPU / Do not trace the drive 0 CPU (`Drive0CPU_TRACE=1`, `Drive0CPU_TRACE=0`)

`-trace_drive1`
`+trace_drive1`

  Trace the drive 1 CPU / Do not trace the drive 1 CPU (`Drive1CPU_TRACE=1`, `Drive1CPU_TRACE=0`)

`-trace_drive2`
`+trace_drive2`

  Trace the drive 2 CPU / Do not trace the drive 2 CPU (`Drive2CPU_TRACE=1`, `Drive2CPU_TRACE=0`)

`-trace_drive3`
`+trace_drive3`

  Trace the drive 3 CPU / Do not trace the drive 3 CPU (`Drive3CPU_TRACE=1`, `Drive3CPU_TRACE=0`)

`-trace_iec`
`+trace_iec`

  Trace IEC bus activity / Do not trace IEC bus activity (`IEC_TRACE=1`, `IEC_TRACE=0`)

`-trace_mode <value>`

  Trace mode (0=normal 1=small 2=history)

`-autoplaybackframes <frames>`

  Set the amount of automatic playback frames

### 6.18 Network Play settings

#### 6.18.1 Network Play resources

`NetworkServerName`

  String specifying the name of the remote server.

`NetworkServerBindAddress`

  String specifying the IP of the remote server.

`NetworkServerPort`

  Integer specifying the port used for network play.

`NetworkControl`

  Integer specifying whether the emulator is running as server or client (0: client, 1: server)

#### 6.18.2 Network Play command-line options

`-netplayserver <name>`

  Set the name of the remote server.

`-netplaybind <ip>`

  Set the IP of the remote server.

`-netplayport <port>`

  Set the port used for network play.

`-netplayctrl <flag>`

  Specify whether the emulator is running as server or client (0: client, 1: server)

Up: Monitor settings [Contents][Index]