Provided by: stella_6.0.2-1build1_amd64 bug

NAME

       stella - Atari 2600 emulator

SYNOPSIS

       stella [options] <ROM file>

DESCRIPTION

       stella  is  a  comprehensive emulator of the old Atari 2600 video-game console. It support
       most Atari 2600 games and many peripherals.

OPTIONS

       stella accepts the following options:

       -video <opengl|opengles2|opengles|software>
              Use OpenGL, OpenGLES or SDL software  rendering  mode;  the  default  is  the  best
              available mode detected.

       -vsync <1|0>
              Synchronize  screen  updates  to  the  vertical  blank  period.  This can result in
              smoother updates, and eliminate tearing.

       -fullscreen <1|0>
              Play the game in fullscreen mode (1) or in a window (0).

       -center <1|0>
              Centers game window (if possible).

       -palette <standard|z26|user>
              Sets the palette to either normal Stella, the one used in the z26  emulator,  or  a
              user-defined palette.

       -speed <number>
              Controls  the emulation speed (as a percentage, between 10 and 1000, from one-tenth
              the native speed to ten times the native speed).

       -uimessages <1|0>
              Enable or disable display of message in the  UI.   Note  that  messages  indicating
              serious errors override this setting, and are always shown.

       -sound <1|0>
              Enable or disable sound generation.

       -fragsize <number>
              Specify the sound fragment size to use. Under Debian the recommended value is 512.

       -freq <number>
              Set  sound  sample  output  frequency  (0 - 48000). Default is 31400. Do not change
              unless you experience sound issues.

       -volume <number>
              Set the volume (0 - 100).

       -tia.zoom <number>
              Use the specified zoom level (integer) while in TIA/emulation mode.

       -tia.inter <1|0>
              Use interpolation for the TIA image (results in blending/smoothing of the image).

       -tia.aspectn <number>, -tia.aspectp <number>
              Specify the amount (as a percentage) to scale the TIA image width in NTSC  and  PAL
              mode.  Since  many video modes do not use square pixels, you can reduce width until
              the pixels appear square. Allowable values are 80-120; the author finds 85-90 gives
              the mos authentic look for NTSC, and 105-110 for PAL.

       -tia.fsfill <1|0>
              Stretch  TIA  image  completely  while  in fullscreen mode (vs. an integral stretch
              which won't necessarily completely fill the screen).

       -tia.dbgcolors <roygbp>
              Assigns the colours (r)ed, (o)range, (y)ellow, (g)reen, (b)lue and (p)urple to each
              graphical  register  P0/M0/P1/M1/PF/BL,  respectively.   Currently,  these  can  be
              changed around to apply different colours to the respective register.

       -tv.filter <0-5>
              Blargg TV effects, 0 is disabled, next numbers in sequence  represent  presets  for
              "Composite", "S-Video", "RGB", "Bad Adjust" and "Custom" modes.

       -tv.phosphor <always|byrom>
              Determines  how  phosphor mode is enabled. If always, then the ROM properties entry
              is ignored, and phosphor mode is always turned on.  Otherwise, the  ROM  properties
              determine whether phosphor mode is used for each ROM.

       -tv.scanlines <0-100>
              TV effects scanline intensity, where 0 means completely off.

       -tv.scaninter <1|0>
              Blargg  TV  effects  scanline interpolation, resulting in blending/smoothing of the
              scanlines.

       -tv.contrast <number>
              Blargg TV effects 'contrast' (only available in custom mode, range -1.0 to 1.0).

       -tv.brightness <number>
              Blargg TV effects 'brightness' (only available in custom mode, range -1.0 to 1.0).

       -tv.hue <number>
              Blargg TV effects 'hue' (only available in custom mode, range -1.0 to 1.0).

       -tv.saturation <number>
              Blargg TV effects 'saturation' (only available in custom mode, range -1.0 to 1.0).

       -tv.gamma <number>
              Blargg TV effects 'gamma' (only available in custom mode, range -1.0 to 1.0).

       -tv.sharpness <number>
              Blargg TV effects 'sharpness' (only available in custom mode, range -1.0 to 1.0).

       -tv.resolution <number>
              Blargg TV effects 'resolution' (only available in custom mode, range -1.0 to 1.0).

       -tv.artifacts <number>
              Blargg TV effects 'artifacts' (only available in custom mode, range -1.0 to 1.0).

       -tv.fringing <number>
              Blargg TV effects 'fringing' (only available in custom mode, range -1.0 to 1.0).

       -tv.bleed <number>
              Blargg TV effects 'bleed' (only available in custom mode, range -1.0 to 1.0).

       -cheat <code>
              Use the specified cheatcode (see the Cheat section in  the  provided  documentation
              for a description of cheatcodes).

       -loglevel <0|1|2>
              Indicates  level  of  logging  to  perform  while  the application is running. Zero
              completely disables logging  (except  for  serious  errors),  while  the  remaining
              numbers show increasingly more detail.

       -logtoconsole <1|0>
              Indicates  that  logged output should be printed to the console/commandline as it's
              being collected. An internal log will still be kept, and the amount of  logging  is
              still controlled by loglevel.

       -joydeadzone <number>
              Sets the joystick deadzone area for analog joysticks. Accepts a number from 0 - 29,
              and uses the formula 3200 + number * 1000. So the possible  deadzone  values  range
              from 3200 to 32200.

       -joyallow4 <1|0>
              Allow  all  4  directions  on  a joystick to be pressed simultaneously. Bumper Bash
              ignores this setting, and always allows all 4 directions.

       -usemouse <always|analog|never>
              Use mouse as a controller as specified by ROM properties in specific  case.  always
              and never are self-explanatory, analog means only for analog-type devices (paddles,
              trackball, etc.).

       -grabmouse <1|0>
              Keeps the mouse in the game window in emulation mode.

       -cursor <0|1|2|3>
              Set mouse cursor state in UI/emulation modes.

       -dsense <number>
              Sensitivity for emulation of paddles when using a digital device (joystick  digital
              axis  or  button,  keyboard  key, etc.). number may range from 1 to 20, with larger
              numbers causing faster movement.

       -msense <number>
              Sensitivity for emulation of paddles when using a mouse. number may range from 1 to
              20, with larger numbers causing faster movement.

       -tsense <number>
              Sensitivity  for emulation of trackball controllers when using a mouse.  number may
              range from 1 to 20, with larger numbers causing faster movement.

       -saport <lr|rl>
              Determines how to enumerate the Stelladaptor/2600-daptor devices in the order  they
              are  found:  'lr'  means  first  is left port, second is right port, 'rl' means the
              opposite.

       -ctrlcombo <1|0>
              Use control-x key combos. This is normally enabled, since the Quit command is  tied
              to  'Control-q'.  However, there are times when a 2-player game is using either the
              'f' or 'r' keys for movement, and pressing  Control  (for  Fire)  will  perform  an
              unwanted action associated with Control-r or Control-f.

       -autoslot <1|0>
              Automatically switch to the next available save state slot after saving a ROM state
              file.

       -fastscbios <1|0>
              Disable Supercharger BIOS progress loading bars.

       -snapsavedir <path>
              The directory to save snapshot files to.

       -snaploaddir <path>
              The directory to load snapshot files from.

       -snapname <int|rom>
              When saving snapshots, use either the internal database  name  or  the  actual  ROM
              filename.

       -sssingle <1|0>
              Generate single snapshot instead of many, overwriting any previous snapshots.

       -ss1x <1|0>
              Ignore  any  scaling  applied  to the TIA image, and save snapshot in unscaled (1x)
              mode.

       -ssinterval <number>
              Set the interval in seconds between taking snapshots in  continuous  snapshot  mode
              (currently, 1 - 10).

       -rominfo <rom>
              Display detailed information about the given ROM, and then exit Stella.

       -listrominfo
              Prints  relevant  contents  of  the Stella ROM database, one ROM per line, and then
              exit Stella. This can be used for external frontends.

       -exitlauncher <1|0>
              Always exit to ROM launcher when exiting a ROM (normally, an exit to launcher  only
              happens when started with the launcher).

       -launcherres <WxH>
              Set the size of the ROM launcher.

       -launcherfont <small|medium|large>
              Set the size of the font in the ROM launcher.

       -laucnherroms <1|0>
              Specifies whether to show ROMs only (the default) or all files in the ROM launcher.

       -romviewer <0|1|2>
              Hide  ROM  info  viewer in ROM launcher mode (0), or use the given zoom level (1 or
              2).

       -uipalette <standard|classic>
              Use the specified palette for UI elements.

       -listdelay <delay>
              Set the amount of time to wait between treating successive keypresses as  a  single
              word in list widgets (value can range from 300-1000).

       -mwheel <lines>
              Set the number of lines a mousewheel will scroll in the UI.

       -romdir <dir>
              Set the directory where the ROM launcher will start.

       -statedir <dir>
              Set the directory in which to save state files.

       -cheatfile <file>
              Set the full pathname of the cheatfile database.

       -palettefile <file>
              Set the full pathname of the user-defined palette file.

       -propsfile <file>
              Set the full pathname of the ROM properties file.

       -nvramdir <dir>
              Set the directory in which to save EEPROM files.

       -cfgdir <dir>
              Set the directory in which to access Distella config files.

       -avoxport <name>
              Set the name of the serial port where an AtariVox is connected.

       -maxres <WxH>
              Useful  for  developers,  this sets the maximum size of window that can be created,
              allowing to simulate testing on 'smaller' systems.

       -help  Print a help message describing these options, and then exit Stella.

       The following are useful to developers. Only use them if you know what you're doing!  Note
       that in all cases, the values supplied to the arguments are not case sensitive.

       -dis.resolve <1|0>
              Try  to  differentiate  between code vs. data sections in the disassembler. See the
              Debugger section in the provided documentation for more information.

       -dis.gfxformat <2|16>
              Sets the base to use for displaying GFX sections in the disassembler.

       -dis.showaddr <1|0>
              Shows/hides opcode addresses in the disassembler.

       -dis.relocate <1|0>
              Relocate calls out of address range in the disassembler.

       -dbg.res <WxH>
              Set the size of the debugger window.

       -dbg.fontsize <small|medium|large>
              Set the font size in the debugger window.

       -dbg.fontstyle <0|1|2|3>
              How to use bold fonts in the debugger window. 0 means all normal font,  1  is  bold
              labels only, 2 is bold non-labels only, 3 is all bold font.

       -dbg.ghostreadstrap <1|0>
              Debugger considers/ignores 'ghost' reads for trap addresses.

       -dbg.uhex <0|1>
              Lower/uppercase hexadecimal display.

       -break <address>
              Set a breakpoint at a specified address.

       -debug Immediately jump to debugger mode when starting Stella.

       -holdjoy0 [UDLRF]
              Start  the emulator with the specified left joystick direction and button held down
              (UF for up and fire).  After entering the emulation, you will  have  to  press  and
              release the direction again to release the event.

       -holdjoy1 [UDLRF]
              Start the emulator with the specified right joystick direction and button held down
              (UF for up and fire).  After entering the emulation, you will  have  to  press  and
              release the direction again to release the event.

       -holdselect
              Start  the  emulator  with  the  Game  Select switch held down.  After entering the
              emulation, you will have to press and release 'Select' to release the event.

       -holdreset
              Start the emulator with the Game  Reset  switch  held  down.   After  entering  the
              emulation, you will have to press and release 'Reset' to release the event.

       -bs <type>, -type <type>
              Set  "Cartridge.Type"  property.  See  the  Game Properties section in the provided
              documentation for valid types.

       -channels <Mono|Stereo>
              Set "Cartridge.Sound" property.

       -ld <A|B>
              Set "Console.LeftDifficulty" property.

       -rd <A|B>
              Set "Console.RightDifficulty" property.

       -tv <Color|BlackAndWhite>
              Set "Console.TelevitionType" property.

       -sp <Yes|No>
              Set "Console.SwapPorts" property.

       -lc <type>
              Set "Controller.Left" property. See the Game Properties  section  in  the  provided
              documentation for valid types.

       -rc <type>
              Set  "Controller.Right"  property.  See the Game Properties section in the provided
              documentation for valid types.

       -bc <type>
              Sets  both  "Controller.Left"  and  "Controller.Right"  properties.  See  the  Game
              Properties section in the provided documentation for valid types.

       -cp <Yes|No>
              Set  "Controller.SwapPaddles"  property.  See  the  Game  Properties section in the
              provided documentation for valid types.

       -ma <Auto|XY>
              Set "Controller.MouseAxis"  property.  See  the  Game  Properties  section  in  the
              provided documentation for valid types.

       -format <format>
              Set  "Display.Format"  property.  See  the  Game Properties section in the provided
              documentation for valid formats.

       -ystart <number>
              Set "Display.YStart" property (0 - 64).

       -height <number>
              Set "Display.Height" property (210 - 256).

       -pp <Yes|No>
              Set "Display.Phosphor" property.

       -ppblend <number>
              Set "Display.PPBlend" property, used for phosphor effect (0-100). Default is 77.

       The following are available in two sets, one for players (prefixed by plr.)  and  one  for
       developers (prefixed by dev.).  Only use them if you know what you're doing!  Note that in
       all cases, the values supplied to the arguments are not case sensitive.

       -dev.settings <1|0>
              Select developer (1) or player (0) set.

       -<plr|dev>.stats <1|0>
              Overlay console info on the TIA image during emulation.

       -<plr|dev>.console <2600|7800>
              Select console for B/W and Pause key handling and RAM initialization.

       -<plr|dev>.bankrandom <1|0>
              On reset, randomize the startup bank (only for selected bankswitch types).

       -<plr|dev>.ramrandom <1|0>
              On reset, either randomize all RAM content, or zero it out instead.

       -<plr|dev>.cpurandom [SAXYP]
              On reset, randomize the content of the specified CPU registers.

       -<plr|dev>.tiadriven <1|0>
              Set unused TIA pins to be randomly driven high or low on a read/peek.

       -<plr|dev>.rwportbreak <1|0>
              Since the 2600 has no dedicated R/W line, different addresses are used for RAM read
              or  write  access.   If  the  code  reads from such a write address, this causes an
              unwanted, semi-random write to that address.  When this  option  is  enabled,  such
              reads interrupt emulation and the debugger is entered.

       -<plr|dev>.thumb.trapfatal <true|false>
              The  default of true allows the Thumb ARM emulation to throw an exception and enter
              the debugger on fatal errors.  When disabled, such fatal errors are simply  logged,
              and  emulation  continues.   Do  not  use  this unless you know exactly what you're
              doing, as it changes the behaviour as compared to real hardware.

       -<plr|dev>.eepromaccess <1|0>
              When enabled, each read or write access to the AtariVox/SaveKey EEPROM is signalled
              by a message.

       -<plr|dev>.tv.jitter <1|0>
              Enable  TV  jitter/roll  effect,  when  there are too many or too few scanlines per
              frame.

       -<plr|dev>.tv.jitter_recovery <1-20>
              When TV jitter/roll effect is enabled, determines how long to delay  recovery  time
              (recovery spread over multiple frames).

       -<plr|dev>.colorloss <1|0>
              Enable/disable the PAL color-loss effect.

       -<plr|dev>.debugcolors <1|0>
              Enable/disable the fixed debug colors.

       -<plr|dev>.timemachine <1|0>
              Enables the Time Machine.

       -<plr|dev>.tm.size <20-1000>
              Defines the Time Machine buffer size.

       -<plr|dev>.tm.uncompressed <0-1000>
              Defines  the uncompressed Time Machine buffer size.  Must be less than Time Machine
              the buffer size.

       -<plr|dev>.tm.interval <1f|3f|10f|30f|1s|3s|10s>
              Defines the interval between two save states.

       -<plr|dev>.tm.horizon <3s|10s|30s|1m|3m|10m|30m|60m>
              Defines the horizon of the Time Machine.

KEYBOARD CONTROLS

       The Atari 2600 console controls and controllers are mapped to the computer's  keyboard  as
       shown  in  the  following sections. However, most of these events can be remapped to other
       keys on your keyboard or buttons on your joystick.

   Console controls (can be remapped)
       Control + q
              Exit emulator

       Escape Exit game mode/enter launcher mode

       Tab    Enter/exit options mode

       Backslash (\)
              Enter/exit command mode

       Backquote (`)
              Enter/exit debugger

       F1     Select Game

       F2     Reset Game

       F3     Color TV

       F4     Black/White TV

       F5     Left Player Difficulty A

       F6     Left Player Difficulty B

       F7     Right Player Difficulty A

       F8     Right Player Difficulty B

       F9     Save state to current slot

       F10    Change current state slot

       F11    Load state from current slot

       F12    Save PNG snapshot

       Pause  Pause/resume emulation

   Joystick / BoosterGrip Controller (can be remapped)
       Left joystick:

       Up arrow
              Joystick up

       Down arrow
              Joystick down

       Left arrow
              Joystick left

       Right arrow
              Joystick right

       Space  Fire button

       4      Trigger button

       5      Booster button

       Right joystick:

       Y      Joystick up

       H      Joystick down

       G      Joystick left

       J      Joystick right

       F      Fire button

       6      Trigger button

       7      Booster button

   Paddle Controller digital emulation (can be remapped independently of joystick controller)
       By default the left paddles are mapped to the left joystick as follows:

       Left   Paddle 0 decrease

       Right  Paddle 0 increase

       Fire   Paddle 0 fire

       Up     Paddle 1 decrease

       Down   Paddle 1 increase

       Booster
              Paddle 1 fire

       The same mappings on the right joystick correspond to the right paddles (paddles 2  and  3
       respectively).

   Driving Controller (cannot be remapped, always associated with joystick controllers)
       Each driving controller is mapped to the corresponding joystick, using the left, right and
       fire controls.

   Sega Genesis Controller (cannot be remapped, always associated with joystick and  booster-grip
       controllers)
       Each pad is mapped to the correspondig joystick as follows:

       Up     Up

       Down   Down

       Left   Left

       Right  Right

       Fire   Button 'B'

       Booster
              Button 'C'

   Keypad Controller (can be remapped)
       Left keypad (press the key on the left to emulate the key on the right):

       1      1

       2      2

       3      3

       Q      4

       W      5

       E      6

       A      7

       S      8

       D      9

       Z      .

       X      0

       C      #

       Right keypad:

       8      1

       9      2

       0 (the digit)
              3

       I      4

       O (the letter)
              5

       P      6

       K      7

       L      8

       ;      9

       ,      .

       .      0

       /      #

   CompuMate Controller (cannot be remapped)
       0-9    0-9

       A-Z    A-Z

       Comma  Comma

       Period Period

       Control
              Func

       Shift  Shift

       ; or Return/Enter
              Enter

       / or Space
              Space

       Backspace
              Func-Space

FILES

       ~/.config/stella/stellarc
              Default  options (command line options override these). Lines starting with ';' are
              considered comments and are ignored. Any other line must be of the form <command> =
              <value>,  where  command is the same as that specified on the command line, without
              the '-' character, and value is the value given to the setting.

       ~/.config/stella/atarivox_eeprom.dat
              Default storage for the emulated EEPROM portion of an attached AtariVox device.

       ~/.config/stella/savekey_eeprom.dat
              Default storage for the emulated EEPROM portion of an attached SaveKey device.

       ~/.config/stella/stella.cht
              Default location of the cheat database file.

SEE ALSO

       /usr/share/doc/stella/index.html, /usr/share/doc/stella/debugger.html.

AUTHORS

       stella was written by Bradford W. Mott, Stephen Anthony and the Stella Team.

       This  manual  page  was  adapted  from  the  provided  documentation   by   Stephen   Kitt
       <skitt@debian.org>,  for  the  Debian GNU/Linux system (but may be used by others). It was
       last modified for stella version 6.0.