Smalltalk and an OLED Editor

Hey gang,
i was messing around with @robey 's OLED firmware from within Squeak. I’ve been able to create a pixel editor that will “live draw” a bitmap to the OLED display.

It’s still a little buggy, of course, but I’ve gone ahead and pushed some of the code to a repo on the mnt source server.

If you would like to try it out for yourself, follow these steps:

  1. Follow the instructions to flash @robey’s firmware, which you can find in this post
  2. Grab a copy of an aarch64/arm64 version of the opensmalltalk-vm from their releases page here.
  3. Grab copies of the Squeak 5.0 image, sources, and changes files here.
  4. To run the fresh Squeak image, execute a command that should look something like: ./<path-to-the-vm-dir>/squeak ./<path-to-the-image-file>/Squeak-5.0.image
  5. When running the setup for the first time, be sure to add the Git / Squot tools at the end of the setup
  6. Once the setup is finished, go to Tools > Git Browser. Right click in the upper left pane and clone my repo, whose address you can find here (be sure to have .git on the end — a Squot particuarity)
  7. Once you’ve cloned it, in the lower right pane you can left click the most recent commit and load all of the packages
  8. Right click on the desktop and select Workspace
  9. In the workspace, type MNTOLEDController new openPixelEditor. Highlight this text, right click, and select “do it”. It will take a second to load the first time.

If it all works well, you should be presented with a Squeak window that looks like this:

Simply hold the left mouse button and drag it around the window to activate pixels. You should see the OLED live update and match the drawing as you go:


That’s all for now. Let me know if you have any questions/issues!

PS - For you Smalltalkers out there: the Baseline is not currently working because evidently Metacello doesn’t have support for Gitlab yet. I have a thread going on the mailing list about it.

5 Likes