I build another uLisp Mini Computer, this time it uses VGA output and a PS/2 keyboard,
using the very impressive library ‘FabGl’ from Fabrizio Di Vittorio and his
Loopback Terminal example (-> https://github.com/fdivitto/FabGL).
I used the TTGO VGA32 board (you can get the board at aliexpress or banggood (and probably others) for around 10-15 US$), but any ESP32 rev.1 board with a few resistors added should work. A circuit diagram is included in the repository of the FabGl library.
A screen resolution of 640x240 pixels is used, giving 80x25 characters for the terminal.
uLisp’s workspace size is 5081 lisp cells with this configuration.
With the ESP32-WROVER modules (4MB PSRAM) a higher resolution of 640x350 (maybe even higher)
should be possible when using my LargeWorkspace flag, but I haven’t tested this yet.
Here are some pictures of my uLisp-3.0a version supporting the VGA & PS2 keyboard,
I used my PC screen and a mini PS/2 keyboard:
Running (tak 18 12 6) needs 4189ms with this configuration, which is only about 1% slower than running it with uLisp-3.0a without VGA support.
Building uLisp 3.0a with FabGl support:
You can download the uLisp version from my github-page at https://github.com/Kaef/ulisp-esp.
Install the FabGl library with the arduino library manager and configure uLisp to
use FabGl (see defines around line 28-45 of ulisp-3.0a-esp.ino: comment out
the definitions ESP_WROVER_KIT, PS2_KEYBOARD and LARGE_WORKSPACE and define USE_FABGL).