Today I Learned


Sat 12 Nov 2022 10:28:18 PM CET

- that there's an infrastructure for managing pre-commit hooks: https://pre-commit.com/ - that SID chip had built-in State Variable Filter out of MOS gates

Sun Apr 13 08:13:09 AM CEST 2025

- two and a half years have gone by like nothing - AI: I wanted Cursor to make me a Raspberry Pi Pico project that would list files on an SD card wtih file system. It was trying to get the libraries and CMakeFiles right for about 20 minutes, then it gave up and started writing the FAT library from scratch. We've all been there... - On Raspberry Pi Pico: printf() doesn't call/link _write, fprintf(stdout, ...) does link _write ... This rabbit-hole is too deep, I must resist and continue with a workaround, otherwise I'll loose momentum. - I have all the parts: - FatFS library for Raspberry Pi Pico - Pico-PIO-USB Host library for keyboard - VGA library for 2bpp terminal - RunCPM running outside Arduino. So I put FatFS on SD and RunCPM together - works. I added USB Host library and the USB host does nothing. Not sure how to debug it since tinyusb is more of a frameworkish endeavor that calls you, which sucks. I'm slowly morphing the RunCPM program into the demo program for USB Host waiting for it to start working at some point. It didn't so far. Find 5 differences.

Mon Apr 14 07:51:32 AM CEST 2025

- Turns out Pico-PIO-USB had moved in the meanwhile between I set up the demo project and I tried to use it in the final project: the introduced changes just broke the support for Pico1 somehow. - TIL: https://docs.rs/tokio/latest/tokio/macro.select.html#fairness Implementing priorities with biased select

Sun Apr 20 07:51:08 AM CEST 2025

- Fuzix for RPI Pico has rather simple user-memory layout: #define PROGSIZE (65536 - UDATA_SIZE) extern uint8_t progbase[USERMEM]; This, PIE ARM executable and a SWI handler in assembly make the core of the operating system - the rest is user program with CMakefiles.