from Hacker News

Running Apple 1 software on a breadboard computer (Wozmon) [video]

by irsagent on 6/3/23, 5:02 PM with 20 comments

  • by russellbeattie on 6/3/23, 9:25 PM

    It's been said many times here before, but Woz's "annus mirabilis" from March 1975 to April 1977 when at just 26yo, he designed, implemented and launched the hardware, kernel, sound and color output as well as a BASIC interpreter (and much more) for the Apple I and II is one of history's greatest technological achievements. It was a tour de force of talent which is astounding to this day.

    And Ben Eater has taught me more about how computer hardware and software work at the lowest level than any other resource I've come across in my 25 years in the tech industry. Truly inspiring.

  • by retrac on 6/3/23, 9:32 PM

    The Apple 1 ROM is quite a tight piece of coding. Just 256 bytes which implements basic console IO, and memory editing in hex. And still two bytes left over. Legend is Woz wrote it directly in machine language. One version with lots of comments: https://github.com/jefftranter/6502/blob/master/asm/wozmon/w...

    You can see a classic assembly language space optimizing trick at PRBYTE. It first prints the upper half of the byte in hex with call to the PRHEX procedure, then falls through to PRHEX again to print the second half.

  • by DowsingSpoon on 6/3/23, 7:06 PM

    Ben Eater is a treasure. His videos are educational and entertaining. His project kits are excellent. Highly recommend.
  • by minedwiz on 6/3/23, 6:54 PM

    The only youtube channel that I "hit the bell" for.
  • by lagrange77 on 6/3/23, 9:12 PM

    I'm building his SAP-1 8-bit computer, it's an amazing experience.
  • by linker3000 on 6/4/23, 10:25 AM

    If you fancy playing along on a PCB, there's a mini backplane and SBC version here:

    https://github.com/tebl/RC6502-Apple-1-Replica

  • by ataylor284_ on 6/4/23, 3:19 AM

    Woz's software is fun to read if you like 6502 assembly. Wozmon and Apple II Integer BASIC are great, but my favorite is Sweet16. It's a 6502 program that implements a virtual 16-bit CPU in about 300 bytes. It's a step between the tedious 8-bit limitations of the 6502 and and a fully interpreted environment like BASIC and was part of the Apple II ROMs. Nobody really wanted a slower ML or a more difficult, faster BASIC but it's a brilliant bit of code.
  • by gradjoh on 6/4/23, 10:29 PM

    Great tutorial on using Wozmon! I recently built a complete Apple 1 in Scratch. It runs Wozmon and I also included Steve Wozniaks' original Integer BASIC, which used to be loaded from cassette tape. https://scratch.mit.edu/projects/646921021/