-
OpenCL Learning Exercise - Image Transform
This is an old tool written to play with OpenCL on x86_64 and aarch64 machines. https://github.com/nakane1chome/opencl-learn/tree/master ImageXform is a command-line tool for learning and experimenting with OpenCL by applying GPU-accelerated kernels to images. It provides a visual, interactive way to understand OpenCL programming by transforming PNG or JPG images through...
-
Original timestamps for Git
How to commit files to Git with the original timestamp. (Or an alternative to https://githistorygenerator.com/ that can make you less employable by revealing side projects from the last century.) I had a few copies of an old project amiga-scroller on an old hard disk image. The files were checked into...
-
Exploring C++20 coroutines for embedded development
Introduction This post is about using C++ coroutines to suspend and resume functions in real time. The objective is a simple way of building real time tasks using only C++, without the need for an RTOS or operating system kernel. Coroutines are functions that can be suspended and resumed, using...
-
Building a header-only C++20 coroutine runtime
Creating the coroutines runtime infrastructure A simple coroutine example was presented in “C++20 coroutines, header only, without an OS”. This post describes the runtime used for that example in detail. This story is also published on Medium. Summary of the runtime files The runtime for this example is a set...
-
NXP MCUXpresso SDK USBPD Stack
Old Code Restoration This is code I’ve contributed to professionally and delivered to NXP. NXP have released it under the BSD 3-Clause license, so I’ve made a copy for reference: https://github.com/nakane1chome/MCUXpresso-SDK-USBPD-Stack/tree/main I have not included other parts of MCUXpresso, so it is unlikely to compile as-is. About This is a...