From 6d85c96b2e0648c74f60d1cc6868560235e87acc Mon Sep 17 00:00:00 2001 From: 4am Date: Sat, 16 Mar 2019 11:49:00 -0400 Subject: [PATCH] 1.1 release --- README.md | 42 +++++++++++++++++++++++++++++++++--------- src/anti-m.a | 2 +- 2 files changed, 34 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index 5287acf..d0c6c6f 100644 --- a/README.md +++ b/README.md @@ -1,17 +1,23 @@ # Anti-M -Boot ROM-limited games on any Apple II. +Boot any Apple II disk on any Apple II ## What is this? Many early Apple II games only worked on the original Apple II or Apple ][+. They refuse to boot on later models, often displaying an "M" error code. This -was due to overly aggressive copy protection; late in the boot process, there is -code that checksums the ROM and reboots if it's not recognized. The games +was due to overly aggressive copy protection; late in the boot process, there +is code that checksums the ROM and reboots if it's not recognized. The games themselves would work fine if they were allowed to boot past this ROM check. -Anti-M is a pre-booter that controls the games' bootloader long enough to bypass -the ROM check, allowing you to play these games on any Apple II. +Other games fail on an enhanced Apple //e, due to subtle differences between +6502 and 65c02 processors. Still others fail on an Apple //c or IIgs, due to +changes in the boot PROM code. Then there are some _very_ early games that +require a 13-sector drive. + +Anti-M uses a modified boot PROM that can boot any disk, then controls the +game's bootloader long enough to bypass the ROM check and patch any 6502- +specific opcodes. The result: you can boot any Apple II disk on any Apple II. ## How do I use it? @@ -29,6 +35,7 @@ then press ``. The game should boot normally. - Frogger (On-Line Systems) (*) - Gamma Goblins (Sirius) - Genetic Drift (Broderbund) +- Hard Hat Mack (Electronic Arts) (*) - High Orbit (Gebelli) - Horizon V (Gebelli) - Jawbreaker ][ (On-Line Systems) @@ -52,6 +59,7 @@ then press ``. The game should boot normally. - Star Thief (Cavalier) - Trick Shot (IDSI) - Zenith (Gebelli) +- all 13-sector disks (e.g. Epyx, Edu-Ware, many others) (*) later re-released with different copy protection. Only the first release requires Anti-M. @@ -59,16 +67,32 @@ requires Anti-M. ## Does Anti-M patch my original disk? No! All patches are done in memory only. If you reboot your original disk -(without running Anti-M), it will fail as usual, because the ROM check is still -there. +(without running Anti-M), it will fail as usual, because the ROM check or other +incompatible code is still there. ## Can I use Anti-M from a hard drive? -Yes! Copy the `ANTI.M.SYSTEM` file to anywhere on your ProDOS hard drive and run -it with your favorite launcher. +Yes! Copy the `ANTI.M.SYSTEM` file to anywhere on your ProDOS hard drive and +run it with your favorite launcher. Bonus feature: when launching Anti-M from +a hard drive, it will skip the prompt and immediately boot slot 6, drive 1. ## History +v1.1 - 2019-03-16 + +- support booting 13-sector disks +- support booting disks on Apple //c and IIgs which would otherwise time out + looking for a boot sector (SpiraDisc, some early EA games) +- bypass a peripheral scan in some games that would hang on some peripherals + and crash others and require a hardware power cycle in order to reboot + properly (SpiraDisc) +- support multiple versions of "David's Midnight Magic" +- remove "unsupported game" error, always continue booting +- bypass prompt if launched from hard drive (press the open- or closed-apple + key on startup to show the prompt) +- minimum requirements lowered to 48K Apple ][+ (still useful for booting + 13-sector disks) + v1.0 - 2019-03-11 - initial release diff --git a/src/anti-m.a b/src/anti-m.a index de88dff..407f8bf 100644 --- a/src/anti-m.a +++ b/src/anti-m.a @@ -183,7 +183,7 @@ StringTable !word @mainmenu @header - !text "Anti-M v1.1-dev by 4am 2019-03-14" + !text "Anti-M v1.1 by 4am 2019-03-16" !text "________________________________________",$8D !text $8D,$8D,$8D,$8D,$8D,$8D,$8D,$8D,$00 @mainmenu