New 8-Bit Guy review and the Superconference

The 8-Bit Guy’s new review of Pluggy McPlugface (our PS/2 keyboard adapter), Tiny BASIC v2 and the new games in ROM v3.

It’s the same as we exhibited at the Hackaday Supercon last week. Speaking of which, the conference badge was screaming for this hack:

It’s in fact a cycle-exact emulation of the TTL circuit based on gtemu.c. The emulation runs at 3 frames per second instead of 60 frames. It still manages to play Racer. Typing in Tiny BASIC v2 goes remarkably well.

Full circle

Today, a circle closed at the Centre for Computing History in Cambridge, UK.

How? Well, one week before this project started on Hackaday, I was at the Computer History Museum in Mountain View, US, and jokingly posted the following remark on Facebook:

That’s an original Apple-1. The Apple-1 next to the Gigatron is a beautifully done replica. It’s fully functional, complete with cassette interface. The PCB is drawn in the same way and the chips even have 1970s date codes on them. It’s on display in an operational state. I could play around and type commands in the original Woz Mon to verify that the Gigatron version works the same.

Many thanks to David Williams for the great opportunity!

Accolade

Oscar brought his Gigatron, with our prototype keyboard adapter and Tiny BASIC, to VCF West 2018 at the Computer History Museum in Mountain View. He came back with the “Judge’s Special Choice Award”. How cool is that! Utterly flattered…

Thanks Oscar and thanks VCF!

200+

We’ve recently celebrated a dream milestone: there are now more Gigatrons out there than Apple-1’s ever produced!

🍾🥳🎉

WOZ monitor on TTL

TV Typewriter is just a stepping stone and by now we also have a small monitor program. To stay in retro style, this time we didn’t invent our own but we faithfully ported the Apple-1 built-in monitor program to the TTL architecture: the infamous Woz Monitor!

Now you can directly inspect memory locations, write to them and execute code on the hardware itself.

Steve Wozniak’s original is 254 bytes, our version is $254 bytes. About half of that is for terminal output, or character printing. The Apple-1 had dedicated hardware for that, something we’d consider cheating of course [tongue in cheek].

Source and GT1 object files are available in GitHub. A nice user manual for the original is here. With this step, all original Apple-1 firmware has been ported to the Gigatron 🙂

It’s a-LIFE

We are still a bit short on tutorials and tools to make the Gigatron more accessible for hacking. But that hasn’t stopped some brave souls from figuring it out for themselves. Phil made a great emulator that runs realtime in a browser, in javascript. At67 wrote a stand-alone vCPU assembler to go with his own emulator. Some started to make their own operating system. One buyer announced plans to rewire the instruction decoder in order to get just the right 8-bit instructions for the application he has in mind. Drogon wrote some GCL, made a ROM file, stripped the object code from it, copied that in an Arduino to send it to the Loader and execute it from RAM. Speechless… [Edit: it is MUCH simpler now to do the same today. The tools keep improving every week]

Now is the time to standardise on a file format for vCPU programs. Most hackers will start at the 16-bit programming level because it is easiest. Programs can be loaded into the system with the Loader application, without reprogramming the EPROM.

After some discussion with the emulator guys, we have agreed on a file format for both real boards and emulators: GT1 files.  At67 quickly coded some demos in his vCPU assembler and produced GT1 files for them. These work in his great emulator. But his kit hasn’t arrived yet, so I tested it for him. See here “life3.gt1” and “lines.gt1” loaded on my development board with ROM v1.

It works! We have a standard for exchanging Gigatron programs!

Edit: Check out this video for what is brewing in emulator land. Sprites!

 

Ozzie build

Woke up this morning and wondered where those new kit orders suddenly came from. It turned out that right at that moment Dave Jones () was building a board in a Youtube live stream with many hundreds of viewers looking on. I caught the last half hour or so. I couldn’t stand the suspense when he was searching for a cable. He didn’t use the manual, skipped all tests, still it worked 1st time. “This is disappointing, there is nothing to troubleshoot!”. Greatest compliment ever! THANK YOU!

Edit: the live soldering turned out to be a prelude to more to come. The Gigatron is now honoured with an official EEVblog episode! We’re truly and utterly flattered.

Extensive customer review

A meticulous and enjoyable explanation, assembly and running of the system by [youtuuba]. There isn’t much detail missed. Thanks P. for making this documentary and sharing your thoughts!

Duration: 1h17m

The 8-Bit Guy

Before refurbishing his cat house, the 8-Bit Guy made time to do an episode on our kit.  Needless to say this we think this is his best episode ever 🙂 . Approaching 300,000 views so far, but 100 of these must be our own reloads. Thank you David and we’ll get you an updated Snake later that doesn’t require color vision.

Duration: 12m15s

Gigatron as TV Typewriter

The video shows how an Arduino can be hooked up and pretend to be an ASCII keyboard. No EPROM change is needed. After powering the Arduino, it takes over control by resetting the Gigatron, navigating the menu and starting Loader. It fakes game controller signals to do that. Then it pushes a tiny precompiled Terminal program into the RAM. From there on, it sends simple ASCII codes which the board dutifully displays. This is step 1 towards interacting with the system for direct hacking.

The source code for the sketch is in GitHub. Hookup is with 4 male-to-female jumper wires, as explained on the Tutorials page.

Edit: The Arduino in turn can interface with a keyboard. Here an example with a PS/2 keyboard, using a standard library to handle the protocol.

The Arduino is a bit of an overkill here. A simple ATtiny85 will do the job just as well.