summaryrefslogtreecommitdiffstats
path: root/system/atari800_os++/README.atari800
blob: 1d03af498da614e0109874ff72ee91b13cccb7dc (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23

This copy of OS++ has been slightly modified to allow it to work with
the Atari800 emulator. Specifically, Atari800 patches the operating
system ROM to support high-speed emulated disk I/O. Unfortunately,
when this is done, OS++'s checksum routines correctly detect that the
ROM checksum doesn't match, and the OS doesn't start.

The *correct* way to fix this is to make Atari800's ROM patch actually
update the stored checksum after patching. For Atari800 2.1.0 and
previous, the workaround is to replace OS++'s checksum calls with NOPs,
which is what's been done to this copy of OS++ (future versions of
Atari800 will hopefully have proper support for OS++)

Note that OS++ only works correctly with Atari800 if the emulator's
high-speed SIO patch is enabled. Without the fast SIO patch, OS++ can't
read the emulated disk drives. Most likely, this is due to Atari800 not
emulating the hardware 100% perfectly.

Also, this is documented elsewhere, but worth a mention here, too: OS++
does not include BASIC! Machine language programs normally don't call
the BASIC cartridge, so they will be unaffected. If you want to be able
to run BASIC without using the copyrighted Atari BASIC ROM, try the
excellent public domain Turbo BASIC XL.