MENU

Fun & Interesting

Sprite Expand Bug in Defender for C64 by AtariSoft

8-Bit Show And Tell 15,002 8 months ago
Video Not Working? Fix It Now

The official Defender game cartridge for the Commodore 64 by AtariSoft from 1983, by Joe Simko, has an amusing super-sized bug. If you hit the Restore key just as your ship's explosion reaches its peak, when you play your next life, your ship, the alien enemies, and the humans you're Defending are all jumbo-sized. This is due to a minor initialization bug in the original 6502 code. After a BASIC demonstration of the VIC-II's sprite expansion capabilities, we discuss the CRT image emulator format and how we can examine it on a real C64, and then use the Super Snapshot machine language monitor to track down the cause of the bug and fix it. Then we use the venerable LOAD ADDRESS program from the 1541 Test/Demo Diskette to fix our fix, flash it on an Easy Flash 3 cartridge, and give it a play test. We also take a quick look at another Defender bug just discovered, which should be the subject of a future video. To support 8-Bit Show And Tell: Become a patron: https://patreon.com/8BitShowAndTell One-time donation: https://paypal.me/8BitShowAndTell 2nd channel: https://youtube.com/channel/UCAgWzEh5c8391eJnELDy9OA Links: The 1541 Test/Demo Diskette: https://commodore.software/downloads/download/152-1541-floppy-drive/1151-1541-test-demo-disk-1-85 The CRT file format: https://ist.uwaterloo.ca/~schepers/formats/CRT.TXT Index: 0:00 Defender by AtariSoft 3:30 Here's how to trigger the bug 5:50 Expanded sprites in C64 BASIC 11:07 About the Defender CRT image 16:15 A better way to load the image 19:02 Disassembling the 6502 code 23:53 Patching the code 25:45 Fixing the load address 28:33 Flashing, testing the fix 30:35 I noticed another bug! 33:52 Thanks to Steve, Patrons, and You

Comment