Stella (emulator)

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search
Stella icon
Stella icon
Developer(s)Bradford W. Mott, Stephen Anthony
Stella Team
Initial release1996; 23 years ago (1996)[1]
Stable release
6.0 / 23 December 2018; 3 months ago (2018-12-23)
Written inC++14
Operating systemCurrent:
Linux, MacOS, Windows

No longer supported:
AmigaOS, Dreamcast, GP2X, Nintendo DS, Wii, Windows CE/Mobile
TypeConsole emulator
LicenseGNU GPLv2, open-source

Stella is an emulator of the Atari 2600 game console, and takes its name from the console's codename.[2] It is open-source, and runs on most major modern platforms including Windows, Mac OS X, and Linux. Stella was originally written in 1996 (and known as Stella 96[1]) by Bradford W. Mott, and is now maintained by Stephen Anthony.

Stella is written in the C++ programming language and thus is highly portable.[3] The emulator supports all Atari 2600 cartridge bank switching schemes and has support for nearly all Atari 2600 titles. Support is included for NTSC, PAL and SECAM in 60 Hz/50 Hz varieties, including autodetection of those formats (based on the number of scanlines generated in each frame). It has cycle-exact emulation for the TIA chip (graphics and sound); we estimate that current TIA emulation is nearing 100% completion.

Stella emulates most Atari 2600 peripheral devices, including standard joysticks, paddle controllers, the Atari Video Touch Pad, the Atari Keyboard Controller, Atari Indy 500 Driving Controllers, the CBS Booster-Grip controller, the Atari TrakBall/AtariMouse/AmigaMouse trackball controllers, the Sega Genesis controller, and the AtariVox and SaveKey controllers. Stelladaptor and 2600-daptor support allows real joysticks, paddles, and driving controllers to be used, and support is also included to access a real AtariVox device plugged into a serial port (and actually generate sound from the AtariVox device). Stella does not yet support the cassette-based titles designed to work with the Coleco KidVid cassette player but does have support for titles designed to work with the Starpath Supercharger and Spectravideo Compumate.[4]

Stella includes many facilities for homebrew developers, including an extensive built-in interactive debugger and disassembler supporting breakpoints, read/write traps, etc. Other major features include Blargg TV effects, a cheatcode system, support for user-defined palette files, state loading/saving (including a TimeMachine-like unwind/rewind capability), hardware-accelerated rendering and effects, event remapping, and an extensive built-in, cross-platform user interface (including a ROM launcher frontend).

Stella uses the TIA emulation core from 6502.ts, a collection of emulators for MOS 6502 based systems written in TypeScript and runnable from a web page.


  1. ^ a b Bradford Wayne Mott (1996-05-16). "Stella 96 - An Atari 2600 Emulator". Retrieved 2007-08-04.
  2. ^ Kohler, Chris (2006). Retro Gaming Hacks. Sebastopol: O'Reilly. p. 143. ISBN 0-596-00917-8.
  3. ^ "Stella - A multi-platform Atari 2600 VCS emulator". Retrieved 2012-06-01.
  4. ^ "Stella - A multi-platform Atari 2600 VCS emulator (User's Guide - Release 4.7.3)". Retrieved 2016-12-31.

Further reading[edit]

  • "Retro Gaming Hacks" by Chris Kohler - Oct. 2005 (1st ed.), p. 144 [1], [2]
  • "Racing the Beam" by Nick Montfort and Ian Bogost - Mar. 2009 (1st ed.), p. 140-141 [3]

External links[edit]

Project and ports[edit]