Configuration
The configuration file kat5200.xml controls the settings for the kat5200
emulator. These settings are set in the GUI or can be edited directly in the
file by the advanced user.
File I/O
The file section is entered by pressing the File I/O button from the
main menu. It contains the following:
OS File
- This is the bios file to use with the emulator (normally 5200.bin).
A file browser will pop up to allow the user to pick the file. Required.
Font File
- This is the font file to use with the GUI. A file browser will pop up
to allow the user to pick a file. If not found, the program will attempt
to use the internal default.
Save State
- This button will bring up a file browser so the user can save the current
emulation state to a file. The user may name this whatever is desired, but
the format game.xml.gz is recommended for viewing.
Load State
- This button will bring up a file browser so the user can load a previously
saved emulator state.
Load Colors
- This button will bring up a file browser so the user can load a color palette
file. If this fails, an internal default will be used.
Video/Sound
The video/sound section is entered by pressing the Video/Sound button
from the main menu. It contains the following:
Video Mode
- Choose from 4 video resolutions. See the
-v
option in General Usage
Full Screen
- Turn full screen mode on and off. See the
-f
option in General Usage
Hi-Res Artifacts
- Turn Hi-Res mode artifacts on and off. See the
-h
option in General Usage
Sound
- Turn sound on and off. See the
-s
option in General Usage
Sound Freq
- Sets the sampling frequency. Generally, set this to highest value that
doesn't affect emulator performance.
Sound Samples
- Sets the sound buffer size in samples. Generally, the default should be
fine, but the user may tweak this for better sound performance.
Throttle
- Set the speed in terms of percent of the normal speed. See the
-t
option in General Usage. In the GUI, this is set in 10 percent increments.
If higher resolution is needed, the kat5200.xml file may be edited
directly.
Mouse Speed
- See the
-m
option in General Usage
User Interface
The user interface section is entered by pressing the User Interface
button from the main menu. This section contains settings for the user
interface keys. These are the Exit key, Back to GUI key, and Fullscreen/Window
toggle key. In general, the Auto-Detect button should be used to set UI
key options. However, a brief description of the fields follows:
Device
- Possible settings are DEV_KEYBOARD, DEV_MOUSE, and DEV_JOYSTICK.
In the GUI these are shown as Keyboard, Mouse, and Joystick.
Index
- For joystick controllers, this is the index of the device as SDL recognizes it.
For the keyboard, this is the modifier key, if any. Valid modifier keys are
ALT, CTRL, SHIFT, AND META.
Button/Key
- For joystick controllers this is the button index in the order that SDL
recognizes the button. For the mouse, it is the mouse button index. For the
keyboard, it is a code representing the key on the keyboard. In the GUI, a
string interpretation of the key is shown. See table below for definitions.
A note on the Fullscreen/Window toggle key. This will not update the
configuration in the GUI or configuration file.
Input Section
The input section is entered by pressing the Input button from the main
menu. This section contains joystick controller options that are divided into
control groups. In the included default configuration file, there are 5 control
groups. One for keyboard use, one for using an analog joystick, two for using
the mouse (2-button and 3-button), and one for two stick, one controller mode
(useful for Space Dungeon and Robotron). One note about mouse mode, the
emulator will treat the mouse as the 5200 trackball. One note about two stick,
one controller mode, it is recommend the user use the Auto-Detect feature
to set up the second stick (i.e. player 2's stick). See below for description
of the options:
Control Group
- This ring allows the user to choose which control group to perform editing
and/or viewing on.
Player
- This ring allows the user to choose which player's controller options to view
and/or edit. Currently, 2 players are supported.
Add
- This button adds a new control group based on the currently selected group.
The user will be prompted to name this group.
Edit Name
- This button prompts the user for a new name for the currently selected group.
Delete
- This button will delete the currently selected group, updating the default
group is necessary.
Save Group
- This button will save any controller changes (both players) to the currently
selected group. This is required for saving any changes.
Default Group
- This ring allows the user to choose the control group to use by default. Carts
in the cart list that have Cart Control set to Default will use
this group.
Stick Deadzone(%)
- This ring allows the user to set the deadzone of the joystick controller. A
lower value will give the user a wider analog range but could cause jitter,
while a higher value will reduce jitter, but will also reduce range. This is
20% by default. The preference would be to set this to the lowest value that
has no jitter. This is also set on a per player basis.
Sensitivity(%)
- This ring allows the user to change the range of the 5200 pot values. This is
used in Jum's pengo mode in that emulator. For some games like Gorf,
Missle Command, and Super Breakout, setting this to somewhere between 50 and
75 percent when using an analog stick can make the game more playable. This
can also be used with Simulate Analog for "Pengo" type games. This is set on
a per player basis.
Simulate Analog
- When using the keyboard or D-Pad, setting this to yes can make games where
the position of the analog stick is important (as opposed to direction). This
is similiar to Pengo mode in VSS and Jum52. Useful for games like Gorf, Missle
Command, and Super Breakout. This is set on a per player basis.
Controller Options
In general, the Auto-Detect button should be used to set controller
options. However, a brief description of the fields follows:
Keypad keys/Buttons
Device
- Possible settings are DEV_KEYBOARD, DEV_MOUSE, and DEV_JOYSTICK.
In the GUI these are shown as Keyboard, Mouse, and Joystick.
Index
- Index of the device as SDL recognizes it. Only meaningful for joystick
controllers.
Button/Key
- For joystick controllers this is the button index in the order that SDL
recognizes the button. For the mouse, it is the mouse button index. For the
keyboard, it is a code representing the key on the keyboard. In the GUI, a
string interpretation of the key is shown. See table below for definitions.
Stick Directions
Device
- Possible settings are DEV_KEYBOARD, DEV_MOUSE, and DEV_JOYSTICK.
In the GUI these are shown as Keyboard, Mouse, and Joystick.
When the mouse is selected, none of the other fields are meaningful.
Index
- Index of the device as SDL recognizes it. Only meaningful for joystick
controllers.
Axis Type
- Only used for joystick controllers. This represents the type of axis to use
for this stick direction. Types are shown below.
Index
- For joystick controllers this is the axis number in the order SDL recognizes
the axis. Generally, for the first analog stick, 0 is the horizontal axis
and 1 is the vertical axis. For the keyboard and mouse, this is same as
Button/Key
above.
Keyboard Strings
The following table shows the keyboard strings that can be used with the control
definitions (using Auto-Detect is recommended though):
A-Z or a-z
- Normal letter keys (always treated as lowercase)
0-9
- Normal number keys
F2-F12
- Function keys (F1 goes to debug mode)
UP,DOWN,LEFT,RIGHT
- Arrow keys
HOME,END,PAGE_UP,PAGE_DOWN
- Navigation keys
RSHIFT,LSHIFT,RCTRL,LCTRL,RALT,LALT
- State keys
NUMLOCK,CAPSLOCK,SCROLLOCK
- State lock keys
KP0-KP9'
- Keypad keys 0 to 9
KP_MULTIPLY,KP_DIVIDE,KP_PERIOD,KP_MINUS,KP_PLUS,KP_ENTER,KP_EQUALS
- Keypad functions keys
BACKSPACE,TAB,CLEAR,RETURN,SPACE
COMMA,MINUS,PLUS,EQUALS,PERIOD,SEMICOLON
LEFTBRACKET,RIGHTBRACKET,BACKSLASH,DELETE,INSERT
- Miscellaneous keys
If a keyboard string is not recognized the actual code will be shown in the
GUI. However, it should still work.
Cart
The cart section is entered by pressing the Cart from the main menu.
This section provides a listing of all the roms that I know of along with
the file checksums. Different settings may be applied to each entry in the
list. Also, a filename can be associated with the entry (directly or using
the Scan button) so the user may load roms from the list. See parameters:
Settings
CRC32
- The rom file checksum. When the emulator loads a rom it checks the checksum
against the cart list for use of it's settings.
Rom Size
- File size of the rom. Can be useful to know if debugging loading a 16K
one chip or two chip rom.
Title
- Title or description of the cart
Mapping
- Really only useful for 16K One chip roms that the emulator doesn't recognize.
Cart Control
- Which control group to use with the rom. Normally, this should be Default
except for a few carts. For example, I like to use the mouse with Centipede,
Missle Command, and Super Breakout. So for these I have Cart Control set to
Mouse - 3 button and the rest are set to Default. I use the PC gamepad with
the rest, so I have the Default Group (in the Input Menu) set to Joystick -
2 button.
Filename
- File to load when using the Load Cart button.
Action Buttons
Add Cart
- This button will present the user with a file browser window to choose a rom
to add to the Cart list.
Save Cart
- This button will save any changes made to the selected cart settings.
Delete Cart
- This button will delete the selected cart from the list.
Load Cart
- This button will load the selected cart for play. Filename is required for this
to work.
Scan
- This button will present the user with a file browser window to select the
directory to scan. Navigate to the directory desired and press the Ok
button to begin scanning. All roms recognized will have the Filename
section of the cart list filled with the path to the rom file.