Another World On The Apple II

What’s more fun than porting an old game released for an old system such as the Apple IIgs to its 10-year-older predecessor, the Apple II from 1977? Cue [Deater]’s port of the classic video game ‘Another World‘ to the original Apple II. As was fairly obvious from the onset, the main challenges were with the amount of RAM, as well as with the offered graphics resolutions.

Whereas the Apple II could address up to 48 kB of RAM, the 16-bit Apple IIgs with 65C816 processor could be upgraded to a maximum of 8 MB. The graphics modes offered by the latter also allowed ‘Another World’ to run at a highly playable 320×200, whereas the ported version is currently limited to the ‘low resolution’ mode at 40×48 pixels.

The game itself still needs a lot of work to add missing parts and fix bugs, but considering that it has been implemented in 6502 assembler from scratch, using just the gameplay of the IIgs version as reference, it’s most definitely an achievement which would have earned [Deater] a lot of respect back in the late ’80s as well.

Feel free to check out the Github page for this project, grab a floppy disk image from the project page and get playing. Don’t forget to check out the gameplay video linked after the break as well.

Continue reading “Another World On The Apple II”

Bit Preserve: A Sanctuary For Modern Captures Of Vintage Schematics

Vintage parts may be documented, but that doesn’t mean they’re particularly useful or accessible. If the phrase “eyestrain from unsearchable, badly-scanned PDF datasheets” makes your lower eyelid twitch in sympathy, read on.

While [Bald Engineer] was researching how he might make a portable Apple II, he was delighted to find that the vintage components he needed to examine were documented. However, he became frustrated with the seemingly endless number of poor quality PDF scans and the inability to search effectively. He decided to re-create the entire Apple IIgs schematic in KiCad, and in the process the Bit Preserve project was born. The goal is to act as a safe haven for modern and editable versions of vintage electronic schematics. The GitHub repository can be found here.

[Bald Engineer] talks a bit about his Apple II project, as well as the ideas behind the Bit Preserve project in his KiCon 2019 talk “Preserving History with KiCad”. KiCon was wild, and we have loads of photos of the projects and details so be sure to check it out.

Re-enacting TRON On The Apple IIgs

TRON is a science fiction classic, hitting cinemas in the midst of the burgeoning home computer era. It’s the film that created the famous light cycle, which spawned many video game recreations in the following years. Many years ago now, [Daniel] decided to flex his programming muscles by coding a version of the game for the Apple IIgs, with accidentally excellent results.

In the film, the characters find an escape from the light cycle game by forcing another player to crash into the walls of the play area. The resulting explosion left a hole, allowing the players to exit the light cycle game and explore the rest of the computer. Amusingly, due to a coding oversight, [Daniel] had created exactly this same flaw in his own code.

[Daniel]’s game differed from the original in that players were provided with missiles to destroy enemy trails. However, these missiles did not discriminate, and due to the simplicity of the code, were able to destroy the boundary on the play area. This was discovered when the computer player tried to escape an otherwise impossible situation. Upon blowing a hole in the arena wall, the computer player proceeded to drive off the screen – into invalid memory. This led to the computer crashing in short order, due to the unprotected memory space of the Apple II platform.

It’s a case of code imitating art – and completely by accident. The game managed to replicate the light cycle escape from the film entirely due to the unexpected behaviour of the simple missile code. [Daniel] steps through the code and how the bug happened, and covers the underlying principle behind the resulting crashes. It’s an entertaining tale of the risks of coding at low level; something we don’t always run into with today’s modern interpreted languages.

Thirsty for more tales of hacking the Apple II? How about going back in time to fix a 37 year old bug?

Hackaday Links: It’s Mother’s Day And You Forgot

[AvE] noticed someone was having trouble with their Nepeploid Shilden Inversker, and after a sinusoidal lambda deplanarization test, noticed the dinglebop wouldn’t pass through the grumbo. [AvE] is probably just some guy who wears overalls to bed, but he does know a polyfractal magnetorestrictor when he sees one. To wit, he has a novel application of Eularian magnetronics resulting in a friction factor over unityGame changing stuff here, from the guy who brought you the beer stein made out of an oil filter.

It was soft launched at the Midwest RepRap Festival this year, and now Lulzbot’s TAZ 6 is finally out. The biggest new feature? The electronics ‘brain box’ holds everything, including the power supply. This tower of brain box makes the Taz 6 harder to build from source, but there are unconfirmed reports that Lulzbot may sell this brainbox separately.

Boldport, and founder [Saar Drimer] are the cream of the crop when it comes to artistic PCBs. Boldport’s catalog and [Saar]’s portfolio include a tribute to [Bob Pease], a beautiful board with multicolor solder masks, and an emergency business card. Now Boldport is doing a beautiful PCB of the month club. It’s called Boldport Club, and each three-month membership gets you three months of pretty PCBs. The shop will also stop taking orders for the Boldport club 25 hours after this post goes live. If you missed the boat on the club, you can still get in on the pretty PCB action – we have the Boldport cordwood puzzle available in the Hackaday store.

The Apple IIgs was the last gasp of the Apple II before that platform was phased out for the Macintosh. Despite being mostly forgotten, except for thousands of units in middle school computer labs until the 2000s, it was a very interesting machine, with a wavetable synth, real multitasking, a GUI, and very high resolution graphics. After 30-odd years the IIgs now has quadraphonic sound. The 4soniq card was introduced at the WOzFest III conference last month, and it will give an Apple IIgs with four channels of audio output.

There’s a lot of stuff happening next weekend, and Hackaday is going to be there. If you’re at the Maker Faire Bay Area, Hackaday is taking over a pub. It’s on Saturday night, so it doesn’t conflict with the bring-a-hack at an undisclosed location on Sunday night. Me? I’m going to hamvention, mostly for the purposes of documenting the two parking lots full of swap meet. Find me and I’ll get you some Hackaday swag.

Testing DRAM, One Byte At A Time

A few weekends ago, [Chris] was in the mood for some retrogaming. That meant digging out the old Apple IIgs equipped with a monstrous RAM card with a whole three megabytes of RAM. This particular Apple IIgs had intermittent issues for a long time, and [Chris] was beginning to suspect the RAM was the culprit. Testing this required testing a few dozen individual RAM chips, so why not build something with an Arduino to make [Chris]’ life easier?

The chips found in [Chris]’ Apple are standard 1 M x 1 DRAM chips, the standard for late-80s computers. To test these chips on an Arduino, he picked up a beautiful ZIF socket, wired up the chip to an Arduino shield, and began the joyous process of figuring out how to interface DRAM to an Arduino.

Unlike static memories, DRAM needs to be refreshed periodically to recharge the capacitors. While this refresh cycle was the bane of designers and engineers throughout time, [Chris] actually doesn’t need to care about refreshing the DRAM. He’s just writing 1024 rows to the memory and reading it straight out – no need to refresh the memory. The trick comes from the multiplexed address bus. For his project, [Chris] needs to write 10 bits of the address, latch it, then write the other half of the address bits.

The DRAM tester was a success, and [Chris] put all the code and schematics up on GitHub. Solving the mystery of the broken Apple IIgs wasn’t as simple, as [Chris] thinks the problem might be in one of the support chips on the gigantic RAM card or the IIgs motherboard. Still, it’s a neat, quick build to test out a few DRAM chips.

29 Year Old Apple Computer Finally Gets An OS Update

The Apple IIGS is the 16 bit upgrade to the popular 8 bit Apple II computer line, and with its massive boost in graphics, an Ensoniq sound system, and backwards compatibility with the 8 bit machines makes this box desirable to many retro enthusiast. The last OS update, 6.0.1, was released over 22 years ago. While it worked well for the early 90s, it was by no means perfect.

Last Sunday, a post popped up on callapple.org, announcing Apple IIgs System 6.0.2. Updates include a driver for the unreleased Apple II Ethernet card,  fixes various bugs in the file system translation system, various bugfixes to existing system programs,  fast drawing and animation tools, and of course an update to the finder to show the new revision number.

With a hope for even more bug fixes in a possible 6.0.3 revision its good to see people still giving the old Apple II line some love, as the old Apples don’t have as large of a following as their Atari and Commodore brethren.