The Fruit Jam Video
The Fruit Jam video is on YouTube. One board, a monitor on the DVI socket, a USB keyboard, and six programs running from the flash store.
The chapters
- 0:00 The editor. The Commodore maze one-liner, three lines of BASIC on the board. Control R saves and runs it.
- 0:19 NET CLOCK. Time from NTP, weather and the week's forecast from Open-Meteo, five colour schemes.
- 0:34 Pinball. Pop bumpers, drop targets, a spinner, slingshots, a kickback, a charged plunger. Flippers on the shift keys, the BOOT button on the board is the plunger.
- 0:57 Control C. Ends a program wherever it is. The prompt comes back with the line number.
- 1:12 STELLAR DRIFT. A shooter on a USB pad. Waves, a boss every fifth wave, power-ups, the high score in the flash store.
- 1:22 jdBBS. A browser for a markdown board on my server. Forty columns, colour per character cell.
The maze is the whole program:
Lo:
PRINT CHR$(215 + INT(RND() * 2));
SLEEP 10
GOTO Lo
Characters 215 and 216 are the two diagonals in the board's font. Forty of them per line, and the console scrolls.
The board
RP2350B, 320 by 240 over DVI at 60 Hz, a USB host for keyboard and pad, a TLV320 codec on the headphone jack, five NeoPixels, three buttons, an SD slot, an ESP32-C6 for the network, 8 MB of PSRAM. The interpreter is the same one that runs on the desktop. The sound of the games goes out of the headphone jack; the capture only took the picture, so the video is silent apart from the narration.
The prompt, the flash store, p-code from the desktop and the other two boards that run the same port are in jdBasic on the Fruit Jam. The code is in the jdBasic repo under embedded/, the pinball, the clock and the shooter next to it in the board's demos folder.
jdbasic.org, source at github.com/AtomiJD/jdBasic.