## Command line

AppleWin can be driven from the command line as follows:

-d1 <pathname>
Start with a floppy disk in drive-1 (and auto power-on the Apple II)
-d2 <pathname>
Start with a floppy disk in drive-2
-h1 <pathname>
Start with hard disk 1 plugged-in (and auto power-on the Apple II). NB. Hard disk controller card gets enabled.
-h2 <pathname>
Start with hard disk 2 plugged-in. NB. Hard disk controller card gets enabled.
-model <apple2|apple2p|apple2e|apple2ee>
Select the machine model: Apple II, Apple II+, Apple //e, Enhanced Apple //e.
-clock-multiplier <value>
Where value is between 0.5 and 3.9, and is a base-clock multiplier, roughly mapping to 0.5MHz - 3.9MHz
-s0 <saturn|saturn64|saturn128>
Insert a Saturn 64K or Saturn 128K card into slot 0 in the Apple II or II+ machines (or similar clone).
Where -s0 saturn is an alias for -s0 saturn128.
-s0 <languagecard|lc>
Insert an Apple 16K Language Card into slot 0 in the original Apple II and use the F8 auto-start ROM.
NB. The Apple II+ already defaults to having a Language Card, so this switch is not required.
-s1 empty
Remove the printer card from slot 1.
-s2 empty
Remove the SSC card from slot 2.
-s3 empty
Remove the Uthernet card from slot 3.
-s6 empty
Remove the Disk II controller card from slot 6.
-s7 empty
Remove the hard disk controller card from slot 7.
Useful to allow a floppy disk to boot from slot 6, drive 1. Use in combination with -d1.
-s7-empty-on-exit
Remove the hard disk controller card from slot 7 on AppleWin exit.
-r <number of pages>
Emulate a RamWorks III card with 1 to 127 pages (each page is 64K, giving a max of 8MB) in the auxiliary slot in an Apple //e machine.
-load-state <savestate>
Load a save-state file
NB. This takes precedent over the -d1,d2,h1,h2,s0,s7 and -r switches.
-f
Start in full-screen mode
-fs-height=<best|nnnn>
Use to select a better resolution for full-screen mode.

- best: picks the highest resolution where the height is an integer multiple of (192*2)
- nnnn: select a specific resolution with height=nnnn pixels

NB. This changes the display resolution (and restores on exit).
-f8rom <file>
Use custom 2K ROM for any Apple II machine at [$F800..$FFFF]. <file> must be 2048 bytes long
-videorom <file>
Use an alternate custom 2K video ROM for Apple II or II+ machines (but not clones).
Use an alternate European or custom 4K, 8K or 16K (top 8K only) video ROM for the original or Enhanced //e (but not clones).
-printscreen
Enable the dialog box to display the last file saved to
-no-printscreen-key
Prevent the PrintScreen key from being registered
-no-hook-system-key
Prevent certain system key combinations from being hooked (to prevent the emulator from trapping ALT+ESC, ALT+SPACE, ALT+TAB and CTRL+ESC). This means that the equivalent Open Apple+<key> combinations won't work within the emulator.
NB. This switch takes precedence over -hook-alt-tab and -hook-altgr-control.
-no-hook-alt
Prevent the left and right ALT keys from being hooked (eg. to prevent emulation of Open/Solid Apple keys via the ALT keys).
-hook-alt-tab
By default the emulator doesn't hook ALT+TAB. Use this to allow Open Apple+TAB to be readable by the emulated machine.
-hook-altgr-control
By default the emulator doesn't suppress AltGr's (Right Alt's) fake LEFT CONTROL. Use this to suppress this fake LEFT CONTROL to allow Solid Apple+CTRL+<key> to be readable by the emulated machine.
NB. Suppressing this fake LEFT CONTROL seems to prevent international keyboards from being able to type certain keys.
-altgr-sends-wmchar
Use this switch to allow Solid Apple (AltGr) to be used in combination with regular keys.
When AltGr is pressed, Windows only sends a WM_CHAR message for (eg) international key codes; and so by default the emulator doesn't explicitly send a WM_CHAR message for regular keys when AltGr is being pressed.
NB. Using this switch may prevent international keyboards from being able to type certain keys.
-use-real-printer
Enables Advanced configuration control to allow dumping to a real printer
-noreg
Disable registration of file extensions (.do/.dsk/.nib/.po)
-memclear <n>
Where n is [0..7]:

- 0 Initialize memory to zero
- 1 Initialize memory to random values
- 2 Initialize memory to 4 byte pattern: FF FF 00 00
- 3 Initialize memory to even pages FF, odd pages 00
- 4 Initialize memory to first half page 00, last half page FF
- 5 Initialize memory to first half page FF, last half page 00
- 6 Initialize memory to byte offset of that page (current memory address low byte) i.e. 00:00 01 02 03 ... for page $20
- 7 Initialize memory to page address (current memory address high byte) i.e. 00:20 20 20 20 ... for page $20

-modem
Shorthand for passing -dcd
Use with GBBS Pro (or any other BBS package). See the GBBS Pro 2.2 book from Call-A.P.P.L.E.
-dcd
For the SSC's 6551's Status register's DCD bit, use this switch to force AppleWin to use the state of the MS_RLSD_ON bit from GetCommModemStatus().
-alt-enter=<toggle-full-screen|open-apple-enter>
Define the behavior of Alt+Enter:

- Either: Toggle between windowed and full screen video modes (default).
- Or: Allow the emulated Apple II to read the Enter key state when Alt (Open Apple key) is pressed.

-rgb-card-invert-bit7
Force the RGB card (in "Color (RGB Monitor)" video mode) to invert bit7 in MIX mode. Enables the correct rendering for Dragon Wars.
-50hz
Support 50Hz(PAL) video refresh rate and PAL 1.016MHz base CPU clock.
-60hz
Support 60Hz(NTSC) video refresh rate and NTSC 1.020MHz base CPU clock (default).

Debug arguments:

-l or -log
Enable logging. Creates an AppleWin.log file.
-m
Disable DirectSound support.
-no-printscreen-dlg
Suppress the warning message-box if AppleWin fails to capture the PrintScreen key.
-screenshot-and-exit
For testing. Use in combination with -load-state.