5.2.0 / 29-12-2023
Atari800
Accuracy
Performance
Features
Atari800 is the emulator of Atari 8-bit computer systems (400, 800, 600 XL, 800XL, 130XE, 5200) and 5200 game console for Unix, Linux, Amiga, MS-DOS, Atari TT/Falcon, MS-Windows, MS WinCE, Sega Dreamcast, Android and other systems supported by the SDL library. It features Cycle-exact 6502 emulation (all unofficial instructions), Cycle-exact NMI interrupts, scanline-based POKEY interrupts, Cycle-exact ANTIC and GTIA emulation (all display modes) and much more.
Most Recent Changes
--5.2.0--
New features
possibility of renaming the host device "letter" from previously hardcoded H: to any letter but C: (cassette), E:, K: and S:
So if you have e.g. a program with hardcoded "D:" (as for diskette) you can now use it on a host device as well by renaming the host device to D:
either via the Emulation configuration -> Host device settings menu or using command line option-Hdevicename <X>
little thing but useful (for me at least): tooltip in the settings
menu that reminds users there are virtual host devices with
automatic ATASCII<->ASCII conversion (mainly end-of-line character).Extremely useful for all text files including ATARI BASIC source code that can be stored using LIST "H6:PROGRAM.LST" and read back using ENTER "H6:PROGRAM.LST" (H6 = H1 with ASCII conversion, etc.).GIT-Changelog: ATARI800_5_1_0...ATARI800_5_2_0
--5.1.0--
New features
New command line options:
-playbacknoexit => don't exit the emulator after playback finishes-joy-distinct => allows larger number of joysticks by not combining multiple physical devices into a single emulated joystick. For example this allows using keyboard to emulate one or two joysticks, and to use these in conjunction with physical SDL joysticks / controllers in order to play with more people
than there are SDL joysticks. The same logic gets applied to LPT joysticks, these come after joysticks from keyboard emulation.Furthermore, the logic also gets applied to put SDL joysticks after LPT joystics even when the command line flag isn't set. Since LPT joysticks take precedence over SDL joysticks on the same emulated device, this takes a device that was completely ignored before and makes it useful now.The assignments are fixed at program start-up, after config file and command line flags have been taken into account. If the UI is used to enable or disable a keyboard-emulated joystick, this can cause an emulated joystick
to be controlled by multiple physical devices, or by none.Swap also SDL joysticks on AltL+JThis swaps all physical devices connected to the first two emulated joysticks: the keyboard keys, the SDL devices, and the LPT devices.After the swap the real joystick / hat setting in the UI will appear wapped
as well, but the keyboard setting won't (fixes #156).Show all input events on a single line during recordingThis way the recording file alternates between two forms of lines: input
lines which contain all keyboard and joystick events in one line, and output lines with the screen content digest. By filtering out the former, the latter can be aggregated nicely, e.g. using a command like this:zcat ${file:?} | grep -vE '^[0-9A-F]{8} *$' | uniq -c
Consecutive frames of equal input state will be represented as a single row, with a repeat count giving an idea for how long the state was maintained.RAM cartridges implementation (#184)Many RAMCART and one SiDiCar cartridges
Support for writeable cartridges
CART monitor command
Make blank cartridge UI option
Reserved CART file ids for additional cartridge types currently unemulated by Atari800,
added also the description of the typesadded XEX reading in monitor (useful for patches)
Added H: device rename; save it in setup file (#204)
Changes
Altirra OS updated to v3.41
Altirra BASIC updated to v1.58
Fix buffer over-read in generate_partial_pmpl_colls (#165)
Atari ST/TT/Falcon optimizations
Fixed keystrokes for inserting/deleting of line/character (#179)
SIO now resets BRKKEY (fixes Arsantica 3 demo)
Fix for issue #199 (BBSB warp doesn't work)
Fixes CTRL and CAPS keys when using SDL12-compat library.
DOC/README.RPI explains clearly support for various RaspberryPis
GIT-Changelog: ATARI800_5_0_0...ATARI800_5_1_0
--5.0.0--
New features
AVI video recording (Alt+V hotkey) by Rob McMullen
-vcodec command line arg can select video codec
-aname and -vname CL args set patterns for sound and video recording
-horiz-area & -vert-area command line args for controlling the image area
-showstats (and -no-showstats) CL args and related config file param
-compression-level for configuring PNG and ZMBV compressionMP3 audio and other audio codecs for audio recording (Alt+W hotkey)
-acodec can select audio codecNew cartridge types supported:71: Super Cart 64 KB 5200 cartridge (32K banks)
72: Super Cart 128 KB 5200 cartridge (32K banks)
73: Super Cart 256 KB 5200 cartridge (32K banks)
74: Super Cart 512 KB 5200 cartridge (32K banks)
75: Atarimax 1 MB Flash cartridge (new)
See DOC/cart.txt for details.
support for remapping of all function keys (START, SELECT, OPTION etc)
support for comments in config file
tool for creating cart files from ROM files
support for 64-512K Atari 5200 bank-switchable carts with Bryan's design
support for the alternate variant of MaxFlash 1 MB.
support for single RaspberryPi OS package with HW specific binaries
Changes
video triple buffering changed to double buffering
fixed #74 by using proper getcwd()
gamma values in NTSC filter presets updated
MacOS build enables R: by default
fixed saving of config file
using zlib-provided crc32 if HAVE_LIBZ is defined (#72)
Altirra OS updated to v3.28
renamed "Switchable 5200" cartridges to "Super Cart"
fixed segfault when a 5200 Super Cart cartridge is removed
avoided unnecessary memory copying of 5200 Super Carts
fixed #88 issue in opening a cartridge
BUILD instructions and new README for Android
fixed segfault when exiting monitor
fixed BBSB's lift not working
avoided unnecessary memory copying in Bounty Bob cartridges
allow configuring --with-audio=win in non-DirectX targets
allow configuring --with-audio=sdl and --with-video <> sdl
atari_x11.c: don't auto-repeat the 'screenshot' key
build compatible with dash
--4.2--
New Features
raw Pokey registers recording by Ivo van Poorten
new platform supported: FireBee
optional hiding of hidden files/folders in the UI file selector
libatari800 (Atari800 as a library) by Rob McMullen
R: device (many years old feature) enabled by default
Fixes
proper check if SDL joysticks are found (fixes #58)
Portrait mode for Android (related to #41)
RMW for Pokey
Improved BASIC LST file loading (#55)
ROM OS path changes handled better (#15)
improved "Find ROM images" - now Atari800 reboots if necessary (#15)
fixed an old bug which caused freezing in the UI on Falcon
New command line options
-pokeyrec and its children
-atari_files (#29)
-saved_files (#29)
-kbdjoy0 -kbdjoy1 -nokbdjoy0 -nokbdjoy1 (#29)
Plus many Atari Falcon specific fixes and improvements by Mikro. This should be the most complete and bug-free Atari Falcon release in years, so enjoy! :)
--4.1.0--
New Features
Atari800 now includes Altirra BIOS-es for all emulated systems: 400/800,
XL/XE, and 5200; as well as Altirra BASIC. It is now possible to use the
emulator without providing any ROM images.The Altirra OS-es and Altirra BASIC can now be selected by users in the
"System settings", if they want to use them. Previously Altirra OS was used
automatically only when no other OS ROMs were found.joyhat support for all four real joysticks, configurable in CLI/cfg/TUI
Notable changes
All documentation specific to building Atari800 on Windows has been moved
from DOC/INSTALL to a new file, DOC/BUILD.windows. This document
has also been expanded with a new chapter covering building Atari800 using
MSYS2.Ability to use the built-in EmuOS firmware has been removed. Users wishing
to run Atari800 without providing OS ROMs now have an option of using the
built-in Altirra OS-es, which are compatible with much more Atari software
than EmuOS.
At the same time, it is still possible to compile a version of Atari800
without any OS ROMs built in, by means of the --disable-altirra_bios
configure option.
Port specific improvements
== Atari Falcon ==
More Videl/screen handling fixes
Ability to run Atari800 in an AES-less environment
Replaced C2P with MMU friendly and faster code
Atari800 should run on all TOS clones with XBIOS Sound API
== Android ==
Fixed building of the Android target, broken in the previous release.
Fixed labels on console keys (unreadable on hi-res displays)
Fixed console keys press detection
Fixed "right-handed joystick" trigger press
== Raspberry Pi ==
updated build documentation
find proper Broadcom GLes libraries
fixed bug in GRAPHICS 9 (shifted colors)
== MS Windows ==
updated build documentation
General Fixes
updated build documentation
it is possible to build atari800 out of source tree
unconnected host joysticks initialized properly, fixes the MULE game
--4.0.0--
This is a free and portable Atari 8-bit computer and 5200 console emulator,
originally written by David Firth and now developed by the Atari800
Development Team (please see DOC/CREDITS). This program is copyrighted and
released under the GPL (see COPYING).
Please read DOC/README, DOC/INSTALL and DOC/USAGE.
For news in this release please do read DOC/NEWS.
If you have a problem running this emulator please read DOC/FAQ first.
If the problem persists then please ask in newsgroup comp.sys.atari.8bit
or in the atari800-users mailing list (see below).
Look at DOC/BUGS before reporting something you consider a bug.
If you want to help developing Atari800 emulator you can subscribe to our
mailing list (http://lists.sourceforge.net/lists/listinfo/atari800-users).
DOC/TODO might point you in the right direction.
This version, and all versions back to 0.8.2 have been released by me (Petr
Stehlik) and are now available at Sourceforge.net (URL below).
--3.0.0--
New features
Option to automatically save configuration on exit
More settings saved in configuration:currently attached tape file
cartridge settings, including currently attached cartridges
state of R-Time 8
system settings, including Mosaic/Axlon RAM size
New Tape Management menu - can now create blank tape images, switch tape
to read/write in order to save additional data at the end of the current
tape image, rewind/fast forward the tape, and mark it as read-only. See
DOC/USAGE for details.Displaying tape position when "Show sector/block counter" is enabled.
Reworked Cartridge Management menu - now displays filename of the
attached cartridge.Option to disable restarting of the machine after cartridge change.
When attaching a cartridge from the command line, cartridge type can now
be specified using the new -cart-type and -cart2-type options.New cartridge types supported:OSS 8 KB cartridge
OSS two chip 16 KB cartridge (043M)
Blizzard 4 KB cartridge
AST 32 KB cartridge
Atrax SDX 64 KB cartridge
Atrax SDX 128 KB cartridge
Turbosoft 64 KB cartridge
Turbosoft 128 KB cartridge
Ultracart 32 KB cartridge
Low bank 8 KB cartridge
SIC! 128 KB cartridge
SIC! 256 KB cartridge
SIC! 512 KB cartridge
Standard 2 KB cartridge
Standard 4 KB cartridge
Right slot 4 KB cartridge
The configure script can now auto-detect some of the available display and
sound interfaces before compiling.Option to enable XEP80 added to The Emulator Settings menu.
Emulation of the 1200XL, including console LEDs, no built-in BASIC, the
F1-F4 keys (mapped to arrow keys in the SDL version) and the on-board
J1 jumper.Emulation of the XE Game System, including the built-in game and
detachable keyboard.Revamped the Select System menu (now called System Settings). Can now
select many system settings, including RAM expansions, OS and BASIC
revision, and more.System ROM settings moved to a separate menu. Now it stores paths to all
known official revisions of the Atari OS, the 5200 BIOS, all BASIC
revisions, and the XEGS built-in game. The OS revision to use is chosen
automatically when selecting a machine type (for example, the 400/800 OS
PAL or NTSC version is chosen depending on the selected TV system).400/800: Emulation of all RAM sizes achievable with different combinations
of the CX852 and CX853 modules - from 8 to 48 KB.Emulation of 32/48KB memory sizes in the XL/XE mode, compatible
with memory expansions for the 600XL manufactured by RC Systems.Emulation of the MapRAM hardware hack.
Display settings: "Hue" renamed to "Tint". Tint now configurable also in
PAL mode.
New Android port features
Renamed Atari800 Android port to "Colleen"
Implemented extended key remapping
Implemented the B: device (8-bit games can reach the web now)
Support for Xperia play keycodes added
Remapped dpad enter to break
Added paddle emulation
Optimized file selector, allow roaming outside of ext. storage dir
Added an exclusion border for paddle mode
Implemented state saving
Implemented Planetary Defense mode, a Koala Pad click-where-I-point mode
Natively supported UI on post-Honeycomb devices
Fixes for Jelly Bean (audio stuttering, keypad dialogs, soft keyboard)
Added new dialog for cartridge type selection
UI fine tuning
General Fixes
Bugfixes in cassette emulation - works reliably even for tape images with
long (> 4096 B) blocks.Fixes in save states - loading of save states works correctly even with an
attached bank-switched cartridge or with an Axlon/Mosaic RAM expansion.
Note 1: Format of the state files has changed. Old save states can still
be opened, but newly-created ones cannot be opened in older versions of
Atari800.
Note 2: Tape position is not restored on loading of save states. Do not
save state during tape loading/saving - it won't work as expected."Disable BASIC when booting Atari" no longer emulates pressing of the
Option key when in the 400/800 mode.Fixed a bug with BASIC sometimes disabling itself when switching system
type to 400/800Minor bugfixes in file selector
Fixed emulation of SpartaDOS X piggyback cartridge functionality
"Save Screenshot" fixed - it saved an interlaced screenshot instead of a
normal one.SDL version: Swapped mapping of right and middle mouse buttons, to make it
identical to the X11 and Win32 ports.Monitor: fixed displaying/disassembling of memory area $D000-$D7FF - with
the new supported cartridge types, code may reside on page $D5, and now it
can be debugged.SDL version: fixed a blue border when in OpenGL BGRA32 mode.
Minor fixes in parsing of command-line options.
Rewritten XEP80 emulation - now more accurate and supports switching
between NTSC/PAL modes with correct aspect ratio. XEP80 emulation now
requires a charset ROM image, path to which should be set in the
XEP80_CHARSET line in the config file.Fixed operating system patches not working with all official revisions of
the OS.Fixed emulation of separate ANTIC/CPU access to XE RAM when Self-Test is
enabled.Fixed the emulator menu sometimes being displayed incorrectly (missing
font) when running without an OS ROM image.Improved accuracy of generated colours in PAL mode.
Fixed emulation of the H: read operation - Turbo Basic's BLOAD now works
on H: devices.
--2.0.0--
Unclear below this version...