RSSAmplifier

Blog

nondisplayable

Custom software development, graphics programming and trouble-shooting.

nondisplayable.caRSS feed ↗10 posts

Latest posts

MAME debugger crashes on Mac

Occasionally, I run into a problem where I’ve somehow corrupted my MAME state (usually from unclean exits) and the debugger crashes on a segmentation fault while trying to open it. This seems to happen more often when the memory viewer is open. The crash report states that the final function called is handler_entry_read_memory_bank<0, 0>::read(unsigned int, unsigned char) , so that may well be…

Godot is slow to start the editor

We were having trouble with the Godot editor taking a really long time to open the project on Windows. During the part where it scans each file in the project, each file took several seconds to clear, making closing and reloading the project take many minutes on some older computers. Ultimately, the cause turned out to be Windows Defender – this file-by-file scanning behaviour is perhaps…

Connecting to an emulated serial terminal with MAME

When using MAME to emulate an old computer system, you might want to connect to the emulated serial port. A lot of the advice online is good , but relies on using PuTTY. I ended up being able to use telnet on my Mac. First, start the server: % ./mame rc2014bp5 -bus:1 micro -bus:1:micro:rs232 null_modem -bitb socket.localhost:1234 As explained in the above linked article, this command line tells…

Godot LineEdit loses focus after you hit enter

Quick post this time. After upgrading to Godot 4.4, we noticed that one of our text entry controls (the command line for a debug console) would lose keyboard focus after the user had entered a command and hit Return ( ui_text_submit in our project, and probably most others.) Mouse focus, in the Debugging window, did not change. Hitting Return again would return keyboard focus to the LineEdit .…

Hosting Godot web export on Netlify

Exporting a Godot web project for use on Netlify’s free hosting isn’t too hard, but it does involve setting custom headers for CORS. Export from Godot Use the Project -> Export menu to export the project as a Web/HTML5 project. You’ll probably want to make a subdirectory just for the export, so you don’t mix it up with your project files. You’ll probably want to call the file index.html if it’s…

Pixelmator Classic crashing on startup

I had a problem recently where Pixelmator crashed while I was editing text. This is bad enough, but then the application kept crashing on startup while trying to automatically reload my unsaved files. I ended up having to do a little delving into macOS internals to figure out what was going on. My hunch was that Pixelmator made some kind of lockfile, so I went to my ~/Library directory and did a…

SDL 1.2.x black screen on macOS Mojave

Although Mojave has been out for a really long time, when I first upgraded I had problems with SDL 1.2.x programs starting up on a black screen. Sometimes resizing the window would work - when the application allowed it. Otherwise, I’d just be stuck with a blank screen and the program continuing without me. It got bad enough that for some programs, like the QUASI88 PC-88 emulator, I ended up…

Lessons from Modernizing with Elm

Everybody’s talking about Elm , the functional programming language that makes front-end web development a lot less hairy. Working with a small team, I recently converted part of a client project to Elm, and have some lessons to share with the rest of the class. Pick the right size of problems Before we go any further: if you’re thinking of rewriting your entire SPA in Elm as your first…

Raytracing faster with Rust and Rayon

Being able to quickly turn a single-threaded application into a multi-threaded one is one of the Holy Grails of programming languages these days. Modern pure functional languages offer the most obvious alignment with these goals, but what if you prefer imperative programming? I’ve been using Rust for a few years now. One of the basic ideas behind Rust is that, by telling the compiler more about…

Macintosh Toolbox with THINK C

In the previous entry , I mentioned that I had no experience with the Macintosh Toolbox, the application development “library” of sorts for old (pre-OS X) Macs. Recently, I had a bit of free time, and sat down to work it out in Mini vMac , an excellent early Mac emulator. I found out there were a lot of things that aren’t quite obvious as they would be in today’s more modern IDEs. A lot of the…