Fandal site search for games requiring 400/800 OS Rev.B: http://a8.fandal.cz/search.php?search=os-b&butt_details_x=x
Fandal site search for games requiring 400/800 OS Rev.A: http://a8.fandal.cz/search.php?search=os-a&butt_details_x=x
Utilities reported to require the 400/800 OS: Atari Word Processor Atari File Manager 800+ Synapse Letter Perfect (before v6) LJK (all version 6.x releases OK on XL/XE) Mac/65 [ver. 1.00, orange] OSS (all releases after 1.00 OK on XL/XE) Monkey Wrench Eastern House Synassembler Synapse Text Wizard Datasoft VT-10-Squared Dave Bailey
Note that while some 400/800 programs fail to run on the XL/XE at all, others, such as Atari's own Missile Command and Space Invaders cartridges, run on the XL/XE with only minor problems such as sound glitches.
Many 400/800 programs incompatible with XL/XE computers can nevertheless be made to run flawlessly on the XL/XE using the Atari Translator (or equivalent) which is described in another section of this FAQ list.
Also, modern programmers have hacked many of the above titles and released fixed versions for use with XL/XE computers.
Thomas Richter contributes the following (16 Jan 2004):
There are a couple of reasons why some games don't run on the XL/XE models. I try to order them by "likeliness", of course biased by my personal observations:
1) The printer buffer of the XL Operating System in page 3 is a couple of bytes shorter. The additional bytes are used for extended OS variables not available in the 800 series. Most prominent is the $3FA location, holding a shadow register of GTIA's TRIG3 signal. While a true joystick trigger line in the 400/800 series, this signal is used as "cartridge inserted" signal for XL/XE models. Unfortunately, the OS compares GTIA TRIG3 with the shadow register at $3FA in each vertical blank, running into an endless loop if the register contents don't match. This causes hangs for games using page 3 either as copy-buffer or for player-missile graphics. (Hangs by Ms. Pac-Man and Bacterion! are caused by this, and many others...) This is "fixable" either by the translator disk, or by a quick hack into the game, replacing the OS vertical blank or poking TRIG3 frequently into its shadow. The reason for the OS behavior might be that Atari wanted to prevent crashes if the cartridge is inserted or removed while the machine is running. The 400/800 is powered down when a cartridge is inserted, the XL/XE lacks the cover of the older models that triggered a little switch to interrupt the power line.
2) Similar to the above, writes to $3F8. This OS equate defines whether on a warm start, the BASIC ROM shall be mapped back in. If its contents are altered, a program triggering a reset as part of its initialization will find itself then with 8KiB less RAM occupied by a BASIC ROM, making it crash. Similarly, writes to the cartridge checksum $3EB could cause a cold-start on a "reset initialization". This is fixable by the translator disk.
3) Some games use a four-joystick setup, or at least initialize PIA itself. If this happens inadequately, PIA Port B, bit 0 gets changed, disabling the ROM, and thus crashing the machine. This is not fixable by the translator since it is a hardware issue.
4) Direct jumps into the OS ROM, not using the documented vectors in the $E450 area. Interestingly, this fault is not as common as it may sound since games hardly ever use the OS. It causes failures of some "serious applications", most notably "QS Forth" and applications compiled by it. This is fixable by the translator disk. |