41554 blogs · [ { "id": "01a0874b-c089-71af-9256-bf0d0b4c4a6c", "title": "Getting MIDI sync working", "url": "https://blog.jacobvosmaer.nl/0074-yocto-sequencer-midi/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b539d412d", "title": "Writing my own sequencer for the Yocto drum machine", "url": "https://blog.jacobvosmaer.nl/0073-yocto-sequencer/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b54668fb4", "title": "Invention 2 by J. S. Bach", "url": "https://blog.jacobvosmaer.nl/0072-bach-bwv-773/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b555b1d86", "title": "Improving MSQ-700 clock stability", "url": "https://blog.jacobvosmaer.nl/0071-msq-700-clock/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b564daefd", "title": "Interviews with Francis Bacon", "url": "https://blog.jacobvosmaer.nl/0070-interviews-francis-bacon/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b56d851d8", "title": "Casio FZ-1 interpolation and aliasing", "url": "https://blog.jacobvosmaer.nl/0069-fz-1-aliasing/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b572a098c", "title": "Lessons from Delphium and Ptolemy", "url": "https://blog.jacobvosmaer.nl/0067-delphium-ptolemy/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b57391dc5", "title": "Lessons from Ageispolis", "url": "https://blog.jacobvosmaer.nl/0066-aegispolis/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b5838b6dc", "title": "Solving two RX5 mysteries", "url": "https://blog.jacobvosmaer.nl/0065-rx5-mysteries/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b5936b6eb", "title": "Making my own software for the RX5USB", "url": "https://blog.jacobvosmaer.nl/0064-rx5usb-software/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b5a308439", "title": "A MIDI velocity mapping gadget", "url": "https://blog.jacobvosmaer.nl/0063-midi-velocity-mapper/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b5b2416d9", "title": "Simulating the Casio VZ-1 in Pure Data", "url": "https://blog.jacobvosmaer.nl/0062-vz-1-puredata/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b5bbfaa4d", "title": "Looking back at Building Blocks", "url": "https://blog.jacobvosmaer.nl/0061-building-blocks-looking-back/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b5c16455f", "title": "Samplers and audio editing", "url": "https://blog.jacobvosmaer.nl/0060-sampler-editing/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b5c503325", "title": "Portfolio websites", "url": "https://blog.jacobvosmaer.nl/0059-portfolios/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b5d00fedf", "title": "AdventureKid Waveforms for the Casio FZ-1", "url": "https://blog.jacobvosmaer.nl/0058-akwf-fz-1/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b5d07093d", "title": "Casio FZ-1 disk images", "url": "https://blog.jacobvosmaer.nl/0057-fz-1-images/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b5d325a90", "title": "Audible Genius Building Blocks", "url": "https://blog.jacobvosmaer.nl/0056-building-blocks/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b5d8d0d37", "title": "The DWVW audio compression format", "url": "https://blog.jacobvosmaer.nl/0055-dwvw/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b5dbeb91f", "title": "Video notes: VZ-1 \"phase\" mode is wavefolding", "url": "https://blog.jacobvosmaer.nl/0054-video-vz-1-phase/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b5e589d9b", "title": "Forth progress report", "url": "https://blog.jacobvosmaer.nl/0053-forth-progress/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b5f49e61c", "title": "The TX16W is alright", "url": "https://blog.jacobvosmaer.nl/0052-tx16w-notes/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b6040536a", "title": "Video content: May 2025", "url": "https://blog.jacobvosmaer.nl/0051-video-content/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b6042a4da", "title": "Yamaha FM pitch ratios", "url": "https://blog.jacobvosmaer.nl/0050-fm-pitch-ratios/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b61409c84", "title": "Revisiting Forth", "url": "https://blog.jacobvosmaer.nl/0049-revisiting-forth/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b6181a098", "title": "Creating video content", "url": "https://blog.jacobvosmaer.nl/0048-video-content/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b627e2859", "title": "Why I write blog posts", "url": "https://blog.jacobvosmaer.nl/0047-why-blog/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b62b24c39", "title": "How this blog is built (April 2025)", "url": "https://blog.jacobvosmaer.nl/0046-site-generator/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b6357a6bc", "title": "Unintended MKS-80 power supply adventure", "url": "https://blog.jacobvosmaer.nl/0045-mks-80-psu/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b63b36c7e", "title": "Music notes: Using the TX16W AKWF samples, and more thoughts about presets", "url": "https://blog.jacobvosmaer.nl/0044-music-notes/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b6453bfde", "title": "Hacking the Nava drum machine to work with d-mux", "url": "https://blog.jacobvosmaer.nl/0043-nava-dmux/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b64ae2522", "title": "Converting the AdventureKid waveforms to Yamaha TX16W format", "url": "https://blog.jacobvosmaer.nl/0042-akwf-tx16w/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b6567652c", "title": "Music process (February 2025)", "url": "https://blog.jacobvosmaer.nl/0041-music-process/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b663af266", "title": "Syntorial: done", "url": "https://blog.jacobvosmaer.nl/0040-syntorial-done/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b671f33fe", "title": "ADS sample lengths", "url": "https://blog.jacobvosmaer.nl/0039-ads-lengths/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b6733b542", "title": "Adding d-mux support to the Yocto", "url": "https://blog.jacobvosmaer.nl/0038-yocto-dmux/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b6759261d", "title": "The RE-303 and more Syntorial praise", "url": "https://blog.jacobvosmaer.nl/0037-303-syntorial/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b68100f2d", "title": "My favourite computer ergonomics hack", "url": "https://blog.jacobvosmaer.nl/0036-beeper/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b690a2555", "title": "Revisiting the ADS disk images, and a review of Syntorial", "url": "https://blog.jacobvosmaer.nl/0035-music-updates/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b69dc1aa5", "title": "Fixing my Nord Rack 2", "url": "https://blog.jacobvosmaer.nl/0034-fix-nord-rack-2/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b6a3ea5c6", "title": "Synth Notes: DX11, DX7II and TX802", "url": "https://blog.jacobvosmaer.nl/0033-music-notes/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b6a960406", "title": "Dynacord ADS Disk Images", "url": "https://blog.jacobvosmaer.nl/0032-adsimg/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b6b5afdaa", "title": "Organizing Solutions for People with ADHD", "url": "https://blog.jacobvosmaer.nl/0031-organizing-solutions/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b6c3cde1f", "title": "Music and Synth notes: MKS-50, K2000R, DaisyX7", "url": "https://blog.jacobvosmaer.nl/0030-music-notes/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b6c9cb883", "title": "Casio VZ-1 algorithms", "url": "https://blog.jacobvosmaer.nl/0029-vz-1-algorithms/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b6d330c30", "title": "The mysterious Casio VZ-1", "url": "https://blog.jacobvosmaer.nl/0028-mysterious-vz-1/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b6d6f0e28", "title": "Synthesizer Notes: R-8M, TX81Z, VZ-1", "url": "https://blog.jacobvosmaer.nl/0027-synth-notes/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b6d9cf3c3", "title": "Updates on my creative work", "url": "https://blog.jacobvosmaer.nl/0026-creativity-updates/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b6dd332fd", "title": "How I make music", "url": "https://blog.jacobvosmaer.nl/0025-music-how/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b6e7b46ef", "title": "Books about creativity", "url": "https://blog.jacobvosmaer.nl/0024-creativity-books/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b6eeda96f", "title": "My time at the Recurse Center", "url": "https://blog.jacobvosmaer.nl/0023-recurse-reflection/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b6f52e07a", "title": "Ray Tracing in One Weekend in C", "url": "https://blog.jacobvosmaer.nl/0022-ray-tracing-weekend/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b700c21a7", "title": "Recurse Center project overview", "url": "https://blog.jacobvosmaer.nl/0021-recurse-projects-part-3/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b705aafbb", "title": "Taking on the One Billion Row Challenge in C", "url": "https://blog.jacobvosmaer.nl/0020-1-billion-row-challenge/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b713a5050", "title": "Recurse Center projects, part 2", "url": "https://blog.jacobvosmaer.nl/0019-recurse-projects-part-2/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b71ed8c15", "title": "A small MIDI parser", "url": "https://blog.jacobvosmaer.nl/0018-midi-parser/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b723ada9c", "title": "Adding a table of contents to a PDF", "url": "https://blog.jacobvosmaer.nl/0017-pdf-table-of-contents/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b72d8fb26", "title": "Adding a ROM switcher to the HR-16", "url": "https://blog.jacobvosmaer.nl/0016-hr-16-rom-switcher/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b7378682b", "title": "Hacking the CrowBX envelope generators", "url": "https://blog.jacobvosmaer.nl/0015-crowbx-envelope-generators/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b740daa6e", "title": "The Yocto drum machine", "url": "https://blog.jacobvosmaer.nl/0014-yocto/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b74bc6b66", "title": "sineko", "url": "https://blog.jacobvosmaer.nl/0013-sineko/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b751505f8", "title": "Recurse Center projects", "url": "https://blog.jacobvosmaer.nl/0012-recurse-projects/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b75532f4a", "title": "The CrowBX", "url": "https://blog.jacobvosmaer.nl/0011-crowbx/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b75fc7803", "title": "Adding 31-tet tuning to the DX7 and the CrowBX", "url": "https://blog.jacobvosmaer.nl/0010-microtuning-dx7-crowbx/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b76eab320", "title": "Development setup, February 2022", "url": "https://blog.jacobvosmaer.nl/0009-development-feb-2022/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b7783ecc6", "title": "Booting Acme on macOS", "url": "https://blog.jacobvosmaer.nl/0008-booting-acme/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b77a77aad", "title": "Using xhyve for development on macOS", "url": "https://blog.jacobvosmaer.nl/0007-xhyve/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b788007b9", "title": "Reflections on using Acme", "url": "https://blog.jacobvosmaer.nl/0006-acme/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b79256ff0", "title": "Foreshadowings of the Go programming langauge", "url": "https://blog.jacobvosmaer.nl/0005-go-foreshadowings/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b7a1369c2", "title": "Interacting with the Ruby scheduler", "url": "https://blog.jacobvosmaer.nl/0004-ruby-scheduler-interaction/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b7a4a5edd", "title": "Meta: yet another static website", "url": "https://blog.jacobvosmaer.nl/0003-static-website/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b7aa03063", "title": "Thread.pass in Ruby", "url": "https://blog.jacobvosmaer.nl/0002-ruby-thread-pass/", "published_at": null }, { "id": "01a0874b-c08b-7249-be15-b88b7b8a72f3", "title": "Ruby mutexes", "url": "https://blog.jacobvosmaer.nl/0001-ruby-mutex/", "published_at": null } ] posts Claim your blog
Back to blog.jacobvosmaer.nl
Blog · corpus.blog/blogs/blog.jacobvosmaer.nl/posts

blog.jacobvosmaer.nl

blog.jacobvosmaer.nl

Undated