Profile picture
4am
, 7 tweets, 3 min read Read on Twitter
Story time.

In 1981, @jmechner tried and failed to publish an Asteroids clone for the Apple II. It looked like this: title screenshot from gameplay screenshot from
38 years later (so, this year), @a2_qkumba ported it to ProDOS and we included it in "Total Replay," our pack of 200+ Apple II games <archive.org/details/TotalR…>. Our version looked like this. gameplay screenshot of
Shortly thereafter, someone reported a bug against Total Replay that Asteroid Blaster had corrupted graphics. This is ironic since Jordan had gone to great lengths to ensure that the asteroids looked exactly like the original, and this is why the game was ultimately canceled.
Plot twist! After minutes of furious research, @a2_qkumba realized that this graphics corruption bug was NOT introduced in 2019; it was present in the original version from 1981. Due to an off-by-1 bug in a branch instruction, the game was landing on an undocumented opcode.
On the original 6502 CPU (Apple ][ and ][+, and early //e models), this bug was harmless; the undocumented opcode did nothing, and the bad branch went undiscovered.

But on a 65c02 CPU ("enhanced" //e), this opcode got redefined and ultimately led to visible graphics corruption.
Obviously @a2_qkumba fixed it, applying a binary patch to Jordan's 38-year-old—and apparently hand-coded—6502 code to fix the branch, avoid the undocumented opcode, and fix the graphics corruption when running the game on a 65c02.

The fixed version will be in Total Replay v3.
qkumba also fixed the original self-booting disk image, which I have uploaded to the Asimov FTP server as "Mechner_Collection_Astroid_Blaster_and_Star_Blaster (65c02 compatible).dsk"
Missing some Tweet in this thread?
You can try to force a refresh.

Like this thread? Get email updates or save it to PDF!

Subscribe to 4am
Profile picture

Get real-time email alerts when new unrolls are available from this author!

This content may be removed anytime!

Twitter may remove this content at anytime, convert it as a PDF, save and print for later use!

Try unrolling a thread yourself!

how to unroll video

1) Follow Thread Reader App on Twitter so you can easily mention us!

2) Go to a Twitter thread (series of Tweets by the same owner) and mention us with a keyword "unroll" @threadreaderapp unroll

You can practice here first or read more on our help page!

Follow Us on Twitter!

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just three indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3.00/month or $30.00/year) and get exclusive features!

Become Premium

Too expensive? Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal Become our Patreon

Thank you for your support!