Emulation
The site runs a variant of Phil Thomas' excellent JavaScript Gigatron emulator with added code to simulate a 128k RAM&IO expansion board and a SD card connected to the first SPI port. The rom contains the 128k hack that allows it to run big programs such as MSCP (see https://forum.gigatron.io/viewtopic.php?p=3617#p3617).
The menu entry "SpiCard" can be used to browse the SD card and select a program. The preloaded SD card contains a copy of the Apps repository (with MSCP) and recent copy of the GT1 repository. You can also mount your own FAT formatted disk image as you see fit. Everything runs inside your browser. Nothing goes back to the web site. Loading from the SPI card is about 8 times faster than using the Loader protocol.
To return to the main menu at any time, press the button "Start" for about three seconds.
How to make a Gigatron 128k?
You first need a normal Gigatron. The easiest way is then to build the "dual drive" version of Hans61's expansion board. This recreation of Marcel's original design only uses simple components and is therefore easy to build (far easier than the boards I designed in the past!).
- PCB: Gerber file at https://github.com/hans61/Gigatron-TTL/ ... -dualdrive
- RAM: 1 x AS6C1008. (128KB x 8 ram, DIP32, in production) with a socket.
- Chips: 1 x 74HCT00, 1 x 74HCT32, 1 x 74HCT125, 1 x 74HCT273. Alternatively 74LSxxx instead of 74HCTxxx.
- Discrete components: 5 x 100nF capacitors, 2 x 3.3k resistor, 2 x 10k resistors, 2 small leds.
- Connectors: 2 x 14 pin vert header (e.g. Preci-Dip 350-80-114-00)
- SPI connectors: 2 x 6 pin horizontal socket (e.g. Sullins PPPC061LGBN)
- One wire to connect A15 on the Gigatron to the board.
- One or two SPI SD card 5.5v breakouts
Sources
The code for the emulator is at https://github.com/lb3361/gigatron-rom/ ... tils/runjs. The SPI and SD emulation code is a port of the C++ code I wrote for gtemuAT67 a couple years ago, a pretty tricky state machine. The code for the ROM is at https://github.com/lb3361/gigatron-rom/tree/master, all under usual open-source licenses.