sdl2trs(1)

NAME
sdl2trs - TRS-80 Model I/III/4/4P emulator for SDL2

SYNOPSIS
sdl2trs [file.t8c] [file.t8s] [file.cmd] [options]

DESCRIPTION
sdl2trs is an SDL2-based emulator for Tandy/Radio Shack line of Zilog Z80-based microcomputers popular in late 1970s and early 1980s.

OPTIONS

-aspectratio
    Keep TRS-80 screen aspect ratio when resizing SDL2 window (Default).

-background | -bg 0xRRGGBB
    Specifies background color of emulator window. RRGGBB are hex values of Red, Green, and Blue components. Default: black (0x000000)

-borderwidth | -bw width
    Put border of width pixels (0 to 50) around TRS-80 window. Default: 2

-cassdir | -cd dir
    Specify directory containing cassette and stringy wafer images. Default: current directory.

-c[assette] filename
    Specifies name of cassette image file to be inserted into emulated cassette drive.

-charset | -cs charset-name
    Use charset of the selected TRS-80 Model with -model.

-charset1 | -cs1 charset-name
    Select Model I charset: c(t-80) | e(arly) | g(enie) | h(t-1080z) | l(cmod) | m(eritum) | s(tock) | v(ideogenie) | w(ider). Default: wider

-charset3 | -cs3 charset-name
-charset4 | -cs4 charset-name
    Select Model III/4/4P charset: k(atakana) | i(nternational) | b(old). Defaults are katakana for Model III and international for Model 4/4P.

-cl[ock]1 MHz
-cl[ock]3 MHz
-cl[ock]4 MHz
    Set clock speed rate in MHz for the specified TRS-80 Model. Defaults are: 1.77408 MHz for Model I, 2.02752 MHz for Model III and 4.05504 MHz for Model 4/4P.

-debug | -z[bx]
    Enter zbx debugger (Optional).

-di[skdebug] hexval
    Set floppy disk controller debug flags to hex value: 01 = FDC register I/O | 02 = FDC commands | 04 = VTOS 3.0 JV3 kludges | 08 = Gaps | 10 = Phys sector sizes | 20 = Readadr timing | 40 = DMK | 80 = ioctl errors.

-d[isk]N filename
    Specifies name of floppy disk image file to be inserted into DiskN, where N=0 through 7.

-diskdir | -dd dir
    Specify directory containing floppy disk images. Default: current directory.

-diskset | -ds filename
    Loads diskset from filename into emulator.

-disksetdir | -dsd dir
    Specify directory containing diskset files. Default: current directory.

-d[oubler] type
    Specify type of double density adaptor to emulate for Model I: p(ercom) | t(andy) | b(oth) | n(one). Default: both

-double[step]
    Make real floppy drives double-step (35/40-track media in 80 track drive). Linux only

-[emt]safe
    Turn off ability for Emulation traps to write to unexpected places in host filesystem (Default).

-floppy | -fdc
    Enable Floppy Disk Controller (Default).

-foreground | -fg 0xRRGGBB
    Specifies foreground color of emulator window. Default: white (0xE0E0FF)

-fullscreen | -fs
    Run in fullscreen mode.

-guibackground | -guibg 0xRRGGBB
    Specifies background color of text based GUI window. Default: dark green (0x344843)

-guiforeground | -guifg 0xRRGGBB
    Specifies foreground color of text based GUI window. Default: white (0xE0E0FF)

-halt action
    Set action for Z80 HALT instruction: (d)ebugger | (h)alt | (r)eset. Default depends on the selected TRS-80 Model.

-h[ard]N filename
    Specifies name of hard disk image file to be inserted into HardN, where N=0 through 3.

-harddir | -hd dir
    Specify directory containing hard disk images. Default: current directory.

-hdboot
    Patch Level II ROM for auto-boot from hard disk (Model I only).

-hideled | -noled
    Hide disk activity and Turbo LED.

-huff[man]
    Enable "Dave Huffman (and other)" memory expansion for Model 4/4P. Disables MegaMem , HyperMem and SuperMem .

-hyper[mem]
    Enable HyperMem (Anitek) memory expansion for Model 4/4P. Disables Dave Huffman memory expansion and SuperMem .

-io[debug] hexval
    Set I/O port debug flags: 01 = port input | 02 = port output.

-joystick[num] | -js num
    Use USB joystick number num as joystick in emulator.

-keypadjoy | -kp
    Use numeric keypad as joystick (Default).

-keystretch | -ks cycles
    "Stretches" intervals between key transitions to cycles Z80 clock cycles (T-states). Default: 4000

-le18
    Emulate Lowe Electronics LE18 384x192 graphics adapter for Model I.

-lower[case] | -lc
    "Lower Case Modification Kit" for TRS-80 Model I (Default).

-lubomir | -lsb
    Enable Lubomir Soft Banker for Model I.

-mega[mem]
    Enable MegaMem (Anitek) memory expansion for Model III and 4/4P. Disables Dave Huffman memory expansion .

-micro[labs]
    Model III or 4/4P: emulate Micro-Labs Grafyx Solution Hi-Res graphics card.

-m1
-m3
-m4
-m4p
    Select TRS-80 model to emulate: I, III, 4 or 4P.

-m[odel] m
    Specifies TRS-80 model to emulate: 1 (or I) | 3 (or III) | 4 (or IV) | 4P (or IVP).
    Default: Model I

-mouse[pointer]
    Show mouse pointer for selection in emulator window (Default).

-noaspectratio
    Disable aspect ratio of TRS-80 screen when resizing SDL2 window.

-nodebug
    Opposite of -debug (Optional).

-nodouble[step]
    Turn off double-step mode for all real floppy drives (Default). Linux only

-no[emt]safe
    Turn on ability for Emulation traps.

-nofloppy | -nofdc
    Disable Floppy Disk Controller.

-nofullscreen | -nofs
    Run in windowed mode (Default).

-nohdboot
    Do not patch Level II ROM for auto-boot from hard disk (Default).

-nohuff[man]
    Disable "Dave Huffman (and other)" memory expansion (Default).

-nohyper[mem]
    Disable HyperMem memory expansion (Default).

-nokeypadjoy | -nokp
    Do not use numeric keypad as joystick.

-nole18
    No emulation of LE18 graphic adapter (Default).

-nolower[case] | -nolc
    No lower case characters for TRS-80 Model I.

-nolubomir | -nolsb
    Disable Lubomir Soft Banker for Model I (Default).

-nomega[mem]
    Disable MegaMem memory expansion for Model III and 4/4P (Default).

-nomicro[labs]
    Model III or Model 4/4P: emulate Radio Shack Hi-Res card (Default).

-nomouse[pointer]
    Hide mouse pointer and emulate joystick with mouse.

-noresize3
-noresize4
    Model III or 4/4P: always keep SDL2 window large enough for 80x24 text (640x240) putting a blank margin around outside.
    Default: -resize3 -noresize4

-noscan[lines]
    No scanlines in emulator screen (Default).

-noselector
    Disable TRS-80 Users Society Selector memory expansion (Default).

-noshiftbracket | -nosb
    Emulate [, ], ^, and _ as unshifted keys, and {, |, }, and ~ as shifted. Default for Model I and III.

-nosound | -mute
    Disable Sound Output at startup.

-nostringy
    Do not emulate Exatron Stringy Floppy Drive for Model I (Default).

-nosuper[mem]
    Disable SuperMem memory expansion (Default).

-notruedam
    Opposite of -truedam (Default).

-noturbo
    Switch "Turbo" mode off (Default).

-noturbopaste | -notp
    Disable "Turbo" mode temporarily while pasting from clipboard (Default).

-pause
    Pause the emulator at startup.

-p[rinter] type
    Select printer type: 0 or n(one) | 1 or t(ext). Default: none

-printerdir | -pd dir
    Specify directory for printer output and screenshot files. Default: current directory.

-resize3
-resize4
    Model III or 4/4P: resize window whenever emulated display mode changes between 64x16 text (512x192) and 80x24 text (640x240).
    Default: -resize3 -noresize4

-r[om][file] filename
    Use romfile filename for the selected TRS-80 Model with -model.

-rom[file]1 filename
-rom[file]3 filename
-rom[file]4p filename
    Use romfile specified by filename for the TRS-80 Model.

-samplerate | -sr rate
    Set sample rate for new cassette wav files, direct cassette I/O to sound card, and sound output. Default: 44100

-sc[ale] factor
    Scale emulator window by factor times: 1 | 2 | 3 | 4. Default: 1

-scalequality quality
    Select render scale quality: 0 (nearest) | 1 (linear) | 2 (best). Default: 1

-scan[lines]
    Display scanlines to simulate an old CRT monitor resolution.

-[scan]shade brightness
    Set brightness of scanlines (0 = dark - 255 = light). Default: 127

-selector
    Enable TRS-80 Users Society Selector memory expansion for Model I. Disables SuperMem .

-serial ttyname
    Set tty device to be used for I/O to TRS-80's serial port. Default: /dev/ttyS0

-shiftbracket | -sb
    Emulate [, ], ^, and _ as shifted keys, and {, |, }, and ~ as unshifted. Default for Model 4 and 4P.

-[show]led
    Show disk activity and Turbo LED at bottom of emulator screen (Default).

-size[map] z0[,z1,z2,z3,z4,z5,z6,z7]
    Selectively set whether drives are emulated as 5-inch or 8-inch.

-sound
    Enable Sound Output (Default).

-s[peedup] kit
    Select Speedup Kit or Banking: n(one) | a(rchbold) | b(anking) | c(t-80) | h(olmes) | l(nw) | s(eatronics) | t(cs). Default: archbold

-statedir | -sd dir
    Specify directory containing emulator state and configuration files. Default: current directory.

-step[map] s0[,s1,s2,s3,s4,s5,s6,s7]
    Selectively set double-step mode for individual real floppy drives. Linux only

-stringy
    Emulate Exatron Stringy Floppy Drive for Model I.

-super[mem]
    Enable SuperMem (Alpha Technology) memory expansion for Model I/III/4/4P. Disables Huffman , HyperMem and Selector .

-sw[itches] value
    Set sense switches on Model I serial port card. Default: 0x6f

-truedam
    Turn off single density data address mark remapping kludges.

-t[urbo]
    Switch "Turbo" mode on.

-turbopaste | -tp
    Engage "Turbo" mode temporarily while pasting from clipboard.

-turborate | -tr factor
    Set factor of normal TRS-80 speed that the emulator runs in Turbo mode. Default: 5

-w[afer]N filename
    Specifies name of stringy wafer image file to be inserted into WaferN, where N=0 through 7.

-y[ear] year
    Set year for TRS-80 time-of-day clock instead of the current year.

KEYS

F1  TRS-80 F1 key
F2
    TRS-80 F2 key
F3
    TRS-80 F3 key
F4
    TRS-80 F4 key / CapsLock Model 4/4P
F5 | ScrollLock
    TRS-80 F5 key / '@' key
F6
    TRS-80 F6 key / Shifted '0' key
F7
    Main Menu / F7 key
Shift-F7
    Emulator Settings / Shift-F7 key
F8
    Quit SDL2TRS / F8 key
Shift-F8
    Abort SDL2TRS / Shift-F8 key
F9
    Toggle Fullscreen mode/Enter zbx debugger
Shift-F9
    Toggle CPU panel in window title bar
F10
    Warm Reset
Shift-F10
    Power on Reset (reboot)
F11
    Show key bindings
Shift-F11
    Save screenshot
F12
    Switch Turbo Mode on/off
Shift-F12
    Reset Z80 CPU clock rate
NumLock
    Toggle numeric pad as joystick
1 - 6 (numeric pad)
    P1 - P5 and ESC for TCS Genie IIIs
ESC
    TRS-80 Break key
Left | Backspace
    TRS-80 Left Arrow key
Right | Tab
    TRS-80 Right Arrow key
Up
    TRS-80 Up Arrow key (caret for exponent)
Down
    TRS-80 Down Arrow key
Delete | Home
    TRS-80 Clear key
End
    TRS-80 Shifted Down Arrow key / ESC or P2
Control
    TRS-80 Control key
Page Up
    TRS-80 Left Shift key
Page Down
    TRS-80 Right Shift key
Insert
    TRS-80 Underscore key
Shift-Up Arrow
    TRS-80 ESC key
Shift-Page Up
    Fast Z80 CPU clock speed
Shift-Page Down
    Slow Z80 CPU clock speed
Alt-Delete
    Warm Reset
Alt-Insert
    Virtual Keyboard
Alt-Enter
    Toggle Fullscreen mode
Alt-Home
    Scale window to lowest size
Alt-Page Down
    Scale window to next higher size
Alt-Page Up
    Scale window to next lower size
Alt-'-' | Alt-8
    Decrease Z80 clock rate (USE WITH CAUTION)
Alt-'+' | Alt-9
    Increase Z80 clock rate (USE WITH CAUTION)
Alt-'.'
    Show/hide mouse pointer in Emulator window
Alt-0...7
    Insert Floppy disk into drive 0...7
Shift-Alt-0...7
    Remove Floppy disk from drive 0...7
Alt-A
    Select All on TRS-80 Emulator screen
Alt-B
    Toggle LED at bottom of Emulator screen
Alt-C
    Copy from TRS-80 Emulator to clipboard
Alt-D | Alt-F
    Floppy Disk Management
Alt-E
    Emulator Settings
Alt-G
    Stringy Floppy Wafer Management
Alt-H
    Hard Disk Management
Alt-I
    Display (Interface) Settings
Alt-J
    Joystick GUI
Alt-K
    Show key bindings
Alt-L
    Load Emulator State
Alt-M | Alt-Comma
    Main Menu
Alt-N
    Switch Turbo Mode on/off
Alt-O
    Miscellaneous (Other) Settings
Alt-P | Pause
    Pause/Unpause Emulator
Alt-Q | Alt-End
    Quit SDL2TRS
Alt-R
    Read Configuration
Alt-S
    Save Emulator State
Alt-T
    Cassette (Tape) Management
Alt-U
    Toggle Sound Output (mUte/Unmute)
Alt-V
    Paste from clipboard to TRS-80 Emulator
Alt-W
    Write Configuration
Alt-X
    Execute selected CMD file
Alt-Y
    Switch Scanlines in Emulator window on/off
Alt-Z
    Toggle Fullscreen mode/Enter zbx debugger

FILES

${HOME}/.sdltrs.t8c
    Default configuration file
file.t8c
    Configuration file
file.t8s
    Emulator State file
file.cmd
    CMD file to execute

AUTHORS

Tim Mann (xtrs)
Mark Grebe (1.1.x)
Jens Guenther (1.2.x)