PCE Messages
==============================================================================

Messages are used to control the emulator. They can be sent using the "m"
command in the monitor, for example

-m emu.disk.eject 0

will eject the first floppy disk. Message prefixes can be omitted, as long
as the message name is unambiguous (except where noted). The following
commands are equivalent:

-m disk.eject 0
-m eject 0

A message has at most one parameter. If the parameter contains spaces, it
must be enclosed in double quotes in the monitor, like this:

-m term.screenshot "my screenshot.ppm"


PCE/atarist Messages
==============================================================================

emu.cpu.model <model>
	Set the emulated CPU model. Valid models are "68000", "68010" and
	"68020"

emu.cpu.speed <speed>
	Set the emulated CPU clock frequency to a multiple of 8 MHz.

emu.cpu.speed.step <step>
	Add <step> to the CPU clock frequency multiplier.

emu.exit
	Terminate the emulator immediately.

emu.midi.file <filename>
	Set a new MIDI output file. If <filename> is the empty string, no
	more MIDI output is saved.

emu.pause "0" | "1"
	Resume or pause the emulator.

emu.pause.toggle
	Resume or pause the emulator.

emu.reset
	Reset the emulated machine.

emu.stop
	Fall back to the monitor.

emu.viking "0" | "1"
	Switch from or to the viking monochrome display.

emu.viking.toggle
	Switch from or to the viking monochrome display.


PCE/ibmpc Messages
==============================================================================

emu.exit
	Terminate the emulator immediately.

emu.stop
	Fall back to the monitor.

emu.pause "0" | "1"
	Resume or pause the emulator.

emu.pause.toggle
	Resume or pause the emulator.

emu.reset
	Reset the emulated machine.

emu.config.save <filename>
	Save the current configuration to <filename>.

emu.cpu.model <model>
	Set the emulated CPU model. Valid models are "8086", "8088",
	"80186" and "80188".

emu.cpu.speed <factor>
	Set the emulated CPU clock frequency to a multiple of 4.77 MHz.

emu.cpu.speed.step <adjustment>
	Add <adjustment> to the CPU clock frequency multiplier.

emu.disk.boot <bootdrive>
	Set the boot drive.

emu.fdc.accurate "0" | "1"
	Disable or enable the FDC accurate mode.

emu.par1.file <filename>
	Set the output file for parallel port 1.

emu.par2.file <filename>
	Set the output file for parallel port 2.

emu.par3.file <filename>
	Set the output file for parallel port 3.

emu.parport.driver <port>":"<driver>
	Attach a parallel port to a new character driver. The driver
	string has the same format as in the config file.

emu.parport.file <port>":"<filename>
	This is equivalent to
	emu.parport.driver <port>:stdio:file=<filename>.

emu.serport.driver <port>":"<driver>
	Attach a serial port to a new character driver. The driver
	string has the same format as in the config file.

emu.serport.file <port>":"<filename>
	This is equivalent to
	emu.serport.driver <port>:stdio:file=<filename>.

emu.video.blink <blink-rate>
	Set the cursor blink rate. The number specified is the number
	of screen refreshes for which the cursor is visible/invisible.

emu.video.composite "0" | "1" | "auto"
	Set CGA composite mode. A value of "0" turns off composite mode
	in all cases. A value of "1" turns on composite mode in all graphics
	modes. A value of "auto" turns on composite mode in high resolution
	graphics mode if the color burst is enabled.

emu.video.composite.cycle
	Cycle through the three possible values for CGA composite mode.


PCE/macplus Messages
==============================================================================

emu.cpu.model <model>
	Set the emulated CPU model. Valid models are "68000" and "68010".

emu.cpu.speed <speed>
	Set the emulated CPU clock frequency to a multiple of 7.8336MHz.

emu.cpu.speed.step <step>
	Add <step> to the CPU clock frequency multiplier.

emu.exit
	Terminate the emulator immediately.

emu.iwm.ro <drive>
	Set the drive <drive> to read-only (locked). The first
	drive is 1, if <drive> is 0, set all drives to read-only.

emu.iwm.rw <drive>
	Set the drive <drive> to read/write (unlocked). The first
	drive is 1, if <drive> is 0, set all drives to read/write.

emu.iwm.status
	Print status information on all IWM drives.

emu.mac.insert [<drive>]
	Simulate re-inserting a disk that has been dragged to the trash.

emu.pause "0" | "1"
	Pause or resume the emulation.

emu.pause.toggle
	Pause or resume the emulation.

emu.reset
	Reset the emulated machine.

emu.ser1.driver <driver>
	Attach the first serial port to a new character driver. The driver
	string has the same format as in the config file.

emu.ser1.file <filename>
	This is equivalent to
	emu.ser1.driver "stdio:file=<filename>"

emu.ser1.multi <count>
	Set the multi char count for the first serial port.

emu.ser2.driver <driver>
emu.ser2.file <filename>
emu.ser2.multi <count>

emu.stop
	Fall back to the monitor.

emu.video.blink <rate>
	Set the blink rate for the text mode cursor and blinking characters.
	Higher values cause slower blinking. A value of 0 turns blinking off.
	If <rate> is "off" or "on", turn blinking characters and the text
	mode cursor permanently off or on.

emu.video.brightness <brightness>
	Set the video brightness in the range of 0 - 1000.


Cassette messages
==============================================================================

cas.commit
	Write the cassette image back to disk.

cas.create <filename>
	Create a new cassette and insert it for writing.

cas.open <filename>
	Open a cassette image and insert it for writing. Also, remove the
	read image.

cas.play
	Press play on the cassette player.

cas.load <pos>
	Move the read position to <pos>.

cas.read <filename>
	Open a cassette image and insert it for reading.

cas.record
	Press play and record on the cassette player.

cas.space <duration>
	Add <duration> seconds of silence to the end of the tape.

cas.state
	Print the cassette state.

cas.stop
	Press stop on the cassette player.

cas.truncate <pos>
	Truncate the write tape at position <pos>.

cas.write <filename>
	Open a cassette image and insert it for writing.


Disk messages
==============================================================================

disk.commit [<id> | "all"]
	Commit changes to drives that have copy-on-write enabled.

disk.eject [<id>]
	Eject the disk <id> and set the current disk id to <id>.

disk.id <id>
	Set the current disk id to <id>.

disk.insert <fname>
	Insert a new disk into the current drive. The disk image type
	is "auto". If a disk already inserted in the current drive it is
	ejected first.

disk.ro <id>
	Set the read-only flag for the disk in drive <id>.

disk.rw <id>
	Clear the read-only flag for the disk in drive <id>.


Terminal messages
==============================================================================

Terminal messages may not be abbreviated.

term.escape <key>
	Set the terminal escape key.

term.fullscreen "0" | "1"
	Leave or enter fullscreen mode.

term.fullscreen.toggle
	Toggle fullscreen mode.

term.grab
	Grab the mouse.

term.release
	Release the mouse.

term.screenshot [<filename>]
	Write a screen shot to <filename> in PNM format.

term.title <title>
	Set the terminal window title.
