Espple: A Wireless Apple 1 On An ESP8266

The Apple 1 was one of the three big hobbyist computers that burst onto the scene in 1977. Unlike the PET 2001 and the TRS-80, only a couple hundred Apple 1s were ever produced, and with only a handful in existence today, you’ll have to fork out some serious money to get a Wozniak original for yourself.

The Apple 1 experience is easily emulated, of course, but this ESP8266 emulates the Apple 1 on hard mode. Dubbed the Espple by its creator [Hrvoje Cavrak], it emulates the 6502-based original in all its 1-MHz glory, while providing 20-kB of RAM, a considerable upgrade over the 4-kB standard. The complete original character set is provided for that old-timey feel, and there’s a BASIC interpreter ready to go. The kicker here, though, is that the emulator is completely wireless. You telnet into the 8266 rather than connecting a keyboard directly, and video is transmitted over-the-air using a GPIO pin as a 60-MHz PAL transmitter. A short length of wire is all you need to transmit to an analog PAL TV on channel 4; the video below shows a little BASIC code running and a low-res version of Woz himself.

You’ll find Apple emulators aplenty around these parts, everything from an Apple ][ on an Arduino Uno to a tiny Mac on an ESP32. There hasn’t been much in the way of Apple 1 emulations, though, at least until now.

23 thoughts on “Espple: A Wireless Apple 1 On An ESP8266

  1. The Apple 1 came out in 1976. The Apple II is the one that’s part of the trilogy of 1977, along with the Commodore PET and the TRS-80.

    For most people at the time, they wouldn’t have known about the Apple 1, with its small production run.

    Michael

  2. The RF transmission to a TV would be great for showing lyrics slides!

    The situation I’m thinking about happened on the Logos Hope ship. Someone grabbed a guitar, and started playing some worship songs. We didn’t have a projector set up, but some of us knew the lyrics and chimed in. I had a Raspberry Pi, and there was a TV. I wished I could plug into it to quickly get some lyrics on the screen for the other people, but there was no way – my HDMI wire wasn’t in my pocket. I have a Casio CMD-40 TV remote watch, so I could easily change the channel if need be. But I would really like to see a way to get lyrics from my phone (maybe over serial?) and put that on a TV.

  3. Not cool!!

    Transmitting a signal that is approximated using a square wave means transmitting all sorts of harmonics of that signal. These harmonics could interfere with all sorts of services including emergency response, air traffic control and military radio that could get you into big trouble. Even though the signal is weak you never know when it is being reflected and focused by something making it strong enough to interfere at some distant location.

    At least add a low pass filter and put the pi in a metal case FCOL!

    1. Who says you MUST transmit it wirelessly? Just connect a 75 Ohm coaxial cable core to the pin, the shielding to the GND, and plug the other end into the TV’s aerial receptacle.

  4. The signal is so incredibly weak it can hardly be considered a transmission. Modern electronic devices also produce square wave signals of various frequencies, but they blend into background noise after just a few feet. This board has a valid FCC declaration of conformity which certifies that the electromagnetic interference is within approved limits, so it should be OK.

  5. I like 6502 especially Apples my 1st computer was an Apple ][ europlus.
    I want to use a tiny display with cvbs input only PAL or NTSC can be switched, it was my first Raspi monitor.
    Is it posible to feed the signal from the ESP directly into a CVBS plug?
    Maybe with a low pass filter?
    Has anyone tried yet?
    How shold such a filter look like?

  6. Is there another way to provide my WiFi Credentials than with make?
    If i do not write the WiFi Credentials, does it automatically use the ones that are set from an Arduino Sketch i loded before?

Leave a Reply to jackcrenshawCancel reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.