I have cd "${PROJECT_DIR}" ; agvtool bump
set as a script in a number of my macOS projects’ Xcode schemas’ Build phases. The second of the two commands auto-increments the project build number on completion of the build. It continues to do so, but with Xcode 15.3* there’s a side-effect: it deletes the project’s Swift packages.
Category Archives: Programming
FreeRTOS and the Pi Pico: sizing up scheduling
FreeRTOS scheduling is hard in as much at can be difficult to decide how to configure it. I wanted to try and figure out the options.
The popular real-time operating system provides the configUSE_TIME_SLICING
and configUSE_PREEMPTION
as settings values. You can add them to your FreeRTOSConfig.h
file Tasks themselves can be assigned priority values, and there are API calls to allows tasks to sleep, to yield up the CPU, and be suspended and subsequently resumed.
Take advantage of Xcode’s hidden diagnostics to debug multi-threaded application code
PreviewMarkdown’s Thumbnailer component, an App Extension which generates Finder icon thumbnail previews of Markdown documents, recently started showing some odd behaviour. Tracking down the cause provided some interesting insights into writing macOS software for a multi-threaded environment.
Continue readingEnjoy some old school 3D arcade action — courtesy of the Raspberry Pi Pico
In the mid-1980s, I loved Phantom Slayer. Written for the Tandy Color Computer and made available for the Dragon 32, Phantom Slayer was a 3D maze shooter. Think a very basic version of Doom with colours but no textures. It wasn’t sophisticated, but it was quick and, more to the point, incredibly atmospheric.
Continue readingReleased: revamped and expanded Python drivers for your micro projects
I have revised my Python drivers for the Holtek HT16K33 display controller, combining Micropython and Circuitpython versions into one and adding support for Adafruit’s Bi-colour 8×8 Matrix in the process.
Continue readingFontismo 1.1.0 released — now with iPhone support
Fontismo, my iOS-based utility which provides completely free and account-less access to 50 great open licence typefaces, now works on iPhones as well as iPads. It’s also fully compatible with iOS 14 and features improved font previewing, including pinch-to-zoom scaling.
Continue readingWant to bake an Apple Pi? Here’s how you can, for a fiver
Bear with me on this one. What really makes the Raspberry Pi what it is? Linux? No, because there are plenty of machines the open source OS will run on. Linux is a Unix derivative; the basis of macOS is FreeBSD, also a Unix derivative.
Sure the Pi is only 40 quid and small, but for me what really makes the Pi stand out from all those laptop and desktop computers is the fact that it makes its microcontroller’s GPIO pins readily accessible through a handy set of header pins. Unlike all ‘serious’ micros, it’s perfect for connecting to and controlling a whole stack of add-ons, including sensors, displays inputs and actuators.
How to provide file icon thumbnails in macOS
Update My PreviewMarkdown app, which provides Markdown file previews and icon thumbnails in Catalins, is now available from the Mac App Store.
Providing content-based icon thumbnails in macOS Catalina follows the same pattern as generating file previews: QuickLook runs code from an app extension and calls a function within that code to draw the image that will be placed on the icon.
Continue readingHow to create file previews in macOS
Update My PreviewMarkdown app, which provides Markdown file previews and icon thumbnails in Catalina, is now available from the Mac App Store.
macOS Catalina introduces a new mechanism for providing file previews and content-based file icons. The system for doing this is still QuickLook, but the standalone or app-hosted QuickLook generators that have been in use for some time have been deprecated in favour of delivering this functionality through app extensions.
Continue reading