Apple One, On FPGA

Today, Apple is known for iPhones, iPads, and a commitment to graphical user interfaces. But that wasn’t how it all started. The original Apple was a single board computer built around a 6502. In 1976, you could snag one for $666.66, but you needed to supply your own TV, power supply, and keyboard. [Alangarf] didn’t have an Apple 1, but he did have a 6502 CPU core for FPGAs from [Andrew Holme] that he fleshed out to an Apple I clone with a VGA output and PS/2 keyboard port. The project works with either an iCE40 board or a Terasic DE0 board. You could probably port it to other similar FPGAs.

This is much more practical than trying to find an original, as Apple bought a lot of the old boards back and destroyed them. According to the Apple-1 Registry there are only about 71 of the boards still in existence, and that’s with the annotation that 4 of those may be lost and 8 might be duplicates. We’ve heard that of those there are only six that actually still work.

The project also allows you to work with a serial terminal, and you can run Woz Mon or integer BASIC. There’s 8K of system RAM, along with emulated 4K and 512 byte ROMs for the system software.

The original Apple was cool for 1976, but doesn’t have much by today’s standards. The CPU ran at 1 MHz and the standard memory was 4K, while the TV display was character only. It’s hard to believe that this simple computer launched a major player in the personal computer industry.

The old Apple wasn’t that powerful, so another route to experiencing it lies through its easy emulation with a modern CPU. We’ve seen the ESP8266 do that duty. If you’d prefer the newer Apple ][, you can emulate one on a DE2 FPGA board.

15 thoughts on “Apple One, On FPGA

    1. In context the power it had vs current means one can do an excellent job of emulating it. And yes it is hard to believe if you were a person traveling from the past into the future. It’s not like there was a big sign saying influential future mega-corporation back then.

    1. The irrational hate is strong in this one.

      The apple 1 and 2 lines of computers had full schematics and full firmware asm code printed right in the back of the user manual that came with the computer.

      The apple 2 line also had a “technical reference manual” published by apple that not only duplicated the schematics, but contained “spec sheet” information on each and every last chip and component, including the wiring and timing diagrams for how they work together, and the low level register programming for all built in and commonly available hardware.

      These things are more open and better documented than anything you have worked on in your life, probably including open source projects too so far as the docs go.

      That combined with the fact there was exactly zero lawsuits from 1978 apple to base your claim on.

        1. About the only thing copyrightable in the Apple II was the firmware rom and it took Apple Five years to stop Franklin clones from using an outright copy of the rom as they argured software in rom was just a bunch of switch settings.
          Vtech reverse engineered the roms using vs copied them and paidMmicrosoft for use of their basic so Apple could not do anything to stop the sale of the laser 128 which was a clone of the IIc and was actually much better than the original.

  1. This is no ordinary 6502 verilog model either – it’s a transistor-level equivalent by Andrew Holmes, from the visual6502 netlist.
    http://www.aholme.co.uk/6502/Main.htm
    I’m quite keen on these cheap Lattice FPGAs with the open source icestorm toolchain – there are quiet a few dev boards including the IceZero which has SRAM onboard and sits on top of a Pi as a programming host or an SPI-connected coprocessor. Several listed here:
    https://forum.mystorm.uk/t/rival-to-backice/404/5?u=biged

  2. Ah. Those were the days. When Real Programmers only used assembly language, and after a bit it was second nature to apply the cycle cost of any particular instruction sequence to design decisions. Sometimes it was a Major Achievement to find the missing 20 cycles to get the right thing done before the next display scan started.

  3. Great project. I’ve had a little project on the side for a while now where I’ve been trying to reproduce the Apple 1 display circuit on an FPGA….not just a circuit that behaves the same, but a reconstruction of the original circuit using FPGA versions of the TTL chips, complete with all the timing mishaps of the original. The Apple 1 terminal circuit was one of the most important circuits in the history of digital electronics IMO….the rest of the circuit was fairly standard and anything but revolutionary to be honest, but the display circuit was pure Wozniak. For the first time ever it brought the cost of a home computer down to something manageable and convinced investors that Wozniak was vital to the Apple ][ project, which in turn launched the computer revolution.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

w

Connecting to %s