From 842d22ff92165892833f81ce0b1085c172713680 Mon Sep 17 00:00:00 2001 From: Nathaniel Pawelczyk Date: Thu, 15 Oct 2026 16:32:30 -0500 Subject: [PATCH 01/20] Fix: native builder places a floating cave in the overflow run before refusing When a floating ColdFire cave (Recorder Loop Fix's) did not fit the menu cave window, build_bus.py asserted "past the stock zero run" before its own overflow fallback ran. The browser composer (requestedCaves) puts the cave in the overflow run at 0x400d24d0 and goes on to the real limit, so the two refused the same selection for different reasons and module:verify counted a mismatch (two EVERB selections on main, LOFI2's 13-module ones). Native now places the cave by the browser's rule first (floating_cave_at): the window at the next 128 bytes if it fits whole, else the overflow at the next 4, else refuse. - sdk/infrastructure-verification/floating-cave-overflow-builder.json: 128 native selections built in the pinned image with main's and this build_bus.py (66 ledger-refused ones left out). All 100 images are identical, 10 refusals change only their reason, nothing refused now builds. Chained into the infrastructure tests, with unit tests for the placement rule and its parity with the browser's overflow constants. - Analog BD composition proofs re-exported natively: all 212 identical, only builderSources and moduleSourceTreeSha256 change; verify-analog-bd-native.mjs passes (162 comparisons, 50 refusals, 6 round trips). - Module packages rebuilt in the isolated image and imported (--development): source-commit stamps only. The Tape Echo and Euclid standalone recipes' hashes of the four rebuilt shared asset rows are refreshed (provenance only, as in #634). With LOFI2's branch, module:verify lofi2 reports 0 mismatches of 130. Co-Authored-By: Claude Opus 5.5 --- CHANGELOG.md | 2 + .../floating-cave-overflow-builder.json | 2308 +++++++++++++++++ .../module-adapters/standalone-recipes.json | 16 +- sdk/octabam/tools/build/build_bus.py | 26 +- sdk/tests/test_infrastructure_regressions.py | 50 +- .../assets/analog-bd-composition-proofs.json | 4 +- src/engine/assets/bootstrap-package.json | 2 +- src/engine/assets/coldfire-packages.json | 2 +- src/engine/assets/descriptor-recipes.json | 2 +- src/engine/assets/dsp-packages.json | 2 +- src/engine/assets/menu-recipes.json | 2 +- src/engine/assets/module-build.json | 26 +- src/engine/assets/platform-writes.json | 2 +- src/engine/assets/requested-packages.json | 2 +- src/engine/assets/resident-dsp.json | 2 +- src/engine/assets/rom-packages.json | 2 +- src/engine/assets/usb-audio-packages.json | 2 +- src/engine/assets/utility-packages.json | 2 +- 18 files changed, 2418 insertions(+), 36 deletions(-) create mode 100644 sdk/infrastructure-verification/floating-cave-overflow-builder.json diff --git a/CHANGELOG.md b/CHANGELOG.md index 78c18da7f..4cc18912a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -12,6 +12,8 @@ - Beta testers are asked to share diagnostics again on any page after a new consent version. The note that requires it showed once per account, so testers who went through it before the consent version changed to `2026-10-15.1` (#657) weren't asked again: on 16 October the pull held 0 records against 22 syncs the day before. Now a beta tester whose consent isn't for the current version, or has expired, gets the required step again (Share diagnostics or Leave beta) wherever they are on the site. It relies on the consent read returning the stored version (#665). A tester who turned sharing off under the current version isn't asked. Checked with unit tests; not yet seen on the live site. - When Chrome can't open the Octatrack, the message now says why on Linux and Windows instead of only "unplug it and try again" (reported on Discord: an MKI on Chromium/Ubuntu and on Chrome/Windows). On Linux, Chrome needs a udev rule, now shown with the commands under Setup → Can't connect?, and Chromium from the Snap Store also needs its `raw-usb` connection. On Windows the Octatrack can be opened only once it runs the Modwerk base, because Windows binds WinUSB only to the base's interface. Checked with unit tests; the rule and the snap step have not been run on a Linux computer here, and neither has a Windows connection with the original OS. +- Fixed the native Octatrack builder refusing a crowded selection for a different reason than the site's builder. When a ColdFire cave (Recorder Loop Fix's) did not fit the menu cave window, native octabam stopped with "past the stock zero run" before trying the overflow run, while the site put the cave in the overflow run and went on to the real limit, such as a DSP region overrun. `module:verify` reported these as mismatches (two EVERB selections on main, more on LOFI2's branch). Native now places the cave in the overflow run first, as the site does. Both builders still refuse these selections, so no firmware either one produces changes: 100 native images built before and after the change are identical, and 10 refusals change only their reason (`sdk/infrastructure-verification/floating-cave-overflow-builder.json`). Software checks only; no hardware result is claimed. + ## 15 October 2026 - Fixed the Octatrack beta base breaking one DSP engine when another is removed. With two of Sidechain Compressor, Output Matrix and Analog BD installed, removing one could clear a bit in the address where the other's placed engine starts (its DSP code then ran from one or more words too early), and left the removed engine marked ready without its reset. Example: Analog BD installed before Sidechain Compressor, then Sidechain removed; core 0 (tracks 5-8) jumped into Analog BD's engine one word short. The DSP receiver now looks at its ready word again before clearing the removed engine's bit. A two-engine test in the DSP interpreter fails without the fix and passes with it; the base is rebuilt (`99336d35…`). Not yet run on the unit. diff --git a/sdk/infrastructure-verification/floating-cave-overflow-builder.json b/sdk/infrastructure-verification/floating-cave-overflow-builder.json new file mode 100644 index 000000000..b55aefc6c --- /dev/null +++ b/sdk/infrastructure-verification/floating-cave-overflow-builder.json @@ -0,0 +1,2308 @@ +{ + "schemaVersion": 1, + "kind": "floating-cave-overflow-builder-regression", + "baseCommit": "d3ad0bdf580ed95225b018a692029beed984e304", + "historicalRecord": "plain-formatter-builder.json", + "originalOsSha256": "164f31224bf61181e3f50e7dec40df9afcae5b16dbf6e4c0d0cc5e986af0a84e", + "builderAdaptations": { + "tools/build/build_bus.py": { + "before": "d8e1548844601f9b69646152134d78ddc646accd6e6f50f3353b2c62b3cfcc56", + "after": "c70c79b6829e264e881f4a8d0284cb77d070ebe4fcdbbccf633fd33f110a1ac9" + } + }, + "scope": "A floating ColdFire cave that does not fit the clone window now goes to the overflow run before the window's overrun check, as the browser composer places it (requestedCaves). Two fresh native builds of 194 selections (the earlier builder records' selections still offered, plus every LOFI2 coverage selection without LOFI2), one with the base commit's build_bus.py and one with this one, in the pinned toolchain image with the static stock loader. 66 selections the declaration ledger refuses before any placement (colliding modules, identical text before and after) are left out of this record; the other 128 are listed. Every built image is identical (100) and no refused selection now builds. 10 refusals change their reason: the window assert no longer fires first, so the build refuses where the browser does (a DSP region overrun) or at the next placement that does not fit. On main, the browser comparison of the two refused EVERB selections goes from a refusal mismatch to a match; merged with LOFI2's branch, module:verify lofi2 reports 0 mismatches of 130 selections. No hardware result is inferred.", + "selections": [ + { + "moduleIds": [ + "airwindows-chorus" + ], + "keepStockFx2": false, + "before": { + "bytes": 1112560, + "osSha256": "9e492fdaefcdfbcd23bb71fb31d320879c4219ff9c32d92220663dfb06443d04", + "maskedOsSha256": "9e492fdaefcdfbcd23bb71fb31d320879c4219ff9c32d92220663dfb06443d04" + }, + "after": { + "bytes": 1112560, + "osSha256": "9e492fdaefcdfbcd23bb71fb31d320879c4219ff9c32d92220663dfb06443d04", + "maskedOsSha256": "9e492fdaefcdfbcd23bb71fb31d320879c4219ff9c32d92220663dfb06443d04" + } + }, + { + "moduleIds": [ + "airwindows-chorus" + ], + "keepStockFx2": true, + "before": { + "bytes": 1112560, + "osSha256": "2f31c73dbbe8a7ef619d92bb998539287ead660288c1fdef4de385f0af018f72", + "maskedOsSha256": "2f31c73dbbe8a7ef619d92bb998539287ead660288c1fdef4de385f0af018f72" + }, + "after": { + "bytes": 1112560, + "osSha256": "2f31c73dbbe8a7ef619d92bb998539287ead660288c1fdef4de385f0af018f72", + "maskedOsSha256": "2f31c73dbbe8a7ef619d92bb998539287ead660288c1fdef4de385f0af018f72" + } + }, + { + "moduleIds": [ + "analog-bassdrum" + ], + "keepStockFx2": false, + "before": { + "bytes": 1266195, + "osSha256": "8585a03dbe35d6cde8269f8e4319fab88b9569115dfee2c01526947148e1ae10", + "maskedOsSha256": "ffd4a6c9de97551bcb65d9710988723bff1d8fb788c2d79eafc31bd3591f27fc" + }, + "after": { + "bytes": 1266195, + "osSha256": "8585a03dbe35d6cde8269f8e4319fab88b9569115dfee2c01526947148e1ae10", + "maskedOsSha256": "ffd4a6c9de97551bcb65d9710988723bff1d8fb788c2d79eafc31bd3591f27fc" + } + }, + { + "moduleIds": [ + "analog-bassdrum" + ], + "keepStockFx2": true, + "before": { + "bytes": 1266195, + "osSha256": "2a230496f4d4fc486e8b9a96b574b55373668d50d05ada21631c042253d8d5e4", + "maskedOsSha256": "12d6dd097a2eee1efd750a6f706a1f15126b9c788c7f48134a1596a8b798c28c" + }, + "after": { + "bytes": 1266195, + "osSha256": "2a230496f4d4fc486e8b9a96b574b55373668d50d05ada21631c042253d8d5e4", + "maskedOsSha256": "12d6dd097a2eee1efd750a6f706a1f15126b9c788c7f48134a1596a8b798c28c" + } + }, + { + "moduleIds": [ + "bbd" + ], + "keepStockFx2": false, + "before": { + "bytes": 1112843, + "osSha256": "6a995f5207b897e3c25dc8808377b2b8ef7edc1400c197632d05c480838fbf47", + "maskedOsSha256": "6c7a275a708a200c16503d0e008a1e1e3bafb6371aa027ed0cdf67ff06d76db9" + }, + "after": { + "bytes": 1112843, + "osSha256": "6a995f5207b897e3c25dc8808377b2b8ef7edc1400c197632d05c480838fbf47", + "maskedOsSha256": "6c7a275a708a200c16503d0e008a1e1e3bafb6371aa027ed0cdf67ff06d76db9" + } + }, + { + "moduleIds": [ + "bbd" + ], + "keepStockFx2": true, + "before": { + "bytes": 1112843, + "osSha256": "4640f9a53d73bcd46e3c2961fcbd28bd5917d1b43890da0260dd1f1a38e3d8d0", + "maskedOsSha256": "ab029ec15ce6b8eece8a3484919f6cd59b6ddbe71e424973696f6a94674ab279" + }, + "after": { + "bytes": 1112843, + "osSha256": "4640f9a53d73bcd46e3c2961fcbd28bd5917d1b43890da0260dd1f1a38e3d8d0", + "maskedOsSha256": "ab029ec15ce6b8eece8a3484919f6cd59b6ddbe71e424973696f6a94674ab279" + } + }, + { + "moduleIds": [ + "cc-map" + ], + "keepStockFx2": false, + "before": { + "bytes": 1112560, + "osSha256": "a5c97fe6734b9f39e4ba58d8b8ff61cb009fedea730697aa05e89d77b89f7429", + "maskedOsSha256": "a5c97fe6734b9f39e4ba58d8b8ff61cb009fedea730697aa05e89d77b89f7429" + }, + "after": { + "bytes": 1112560, + "osSha256": "a5c97fe6734b9f39e4ba58d8b8ff61cb009fedea730697aa05e89d77b89f7429", + "maskedOsSha256": "a5c97fe6734b9f39e4ba58d8b8ff61cb009fedea730697aa05e89d77b89f7429" + } + }, + { + "moduleIds": [ + "cc-map" + ], + "keepStockFx2": true, + "before": { + "bytes": 1112560, + "osSha256": "2ca87b1313e1f6a1776eb11314dfd2082ec273fad3fa8c0432dc23a35ab59812", + "maskedOsSha256": "2ca87b1313e1f6a1776eb11314dfd2082ec273fad3fa8c0432dc23a35ab59812" + }, + "after": { + "bytes": 1112560, + "osSha256": "2ca87b1313e1f6a1776eb11314dfd2082ec273fad3fa8c0432dc23a35ab59812", + "maskedOsSha256": "2ca87b1313e1f6a1776eb11314dfd2082ec273fad3fa8c0432dc23a35ab59812" + } + }, + { + "moduleIds": [ + "euclid" + ], + "keepStockFx2": false, + "before": { + "bytes": 1114986, + "osSha256": "648c2faf296415e932237fbcffd3277dc03e6bb681ea03a43004db0b9cd2eb63", + "maskedOsSha256": "fe11a7d5f8b4250a6803e11d952e20843a281f91dc606fd41055dd6daf3eb27d" + }, + "after": { + "bytes": 1114986, + "osSha256": "648c2faf296415e932237fbcffd3277dc03e6bb681ea03a43004db0b9cd2eb63", + "maskedOsSha256": "fe11a7d5f8b4250a6803e11d952e20843a281f91dc606fd41055dd6daf3eb27d" + } + }, + { + "moduleIds": [ + "euclid" + ], + "keepStockFx2": true, + "before": { + "bytes": 1114986, + "osSha256": "b39327052c92d526d5401a47333750c8c088f7892d4fcc8ed3c63a17412c21aa", + "maskedOsSha256": "13524ea309dc0cec57bf502d8244d2f97425db836eef7cd623210588d6e717b0" + }, + "after": { + "bytes": 1114986, + "osSha256": "b39327052c92d526d5401a47333750c8c088f7892d4fcc8ed3c63a17412c21aa", + "maskedOsSha256": "13524ea309dc0cec57bf502d8244d2f97425db836eef7cd623210588d6e717b0" + } + }, + { + "moduleIds": [ + "everb" + ], + "keepStockFx2": false, + "before": { + "bytes": 1112560, + "osSha256": "00e1bce5e41af823303095cd0dac4aa902afa3ed1c195a2f0ced4ef085243a28", + "maskedOsSha256": "00e1bce5e41af823303095cd0dac4aa902afa3ed1c195a2f0ced4ef085243a28" + }, + "after": { + "bytes": 1112560, + "osSha256": "00e1bce5e41af823303095cd0dac4aa902afa3ed1c195a2f0ced4ef085243a28", + "maskedOsSha256": "00e1bce5e41af823303095cd0dac4aa902afa3ed1c195a2f0ced4ef085243a28" + } + }, + { + "moduleIds": [ + "everb" + ], + "keepStockFx2": true, + "before": { + "bytes": 1112560, + "osSha256": "b525e4a42fdddaf6c6f381478bc54e56206e3d5df9be1c76272d8c36d84cdc7a", + "maskedOsSha256": "b525e4a42fdddaf6c6f381478bc54e56206e3d5df9be1c76272d8c36d84cdc7a" + }, + "after": { + "bytes": 1112560, + "osSha256": "b525e4a42fdddaf6c6f381478bc54e56206e3d5df9be1c76272d8c36d84cdc7a", + "maskedOsSha256": "b525e4a42fdddaf6c6f381478bc54e56206e3d5df9be1c76272d8c36d84cdc7a" + } + }, + { + "moduleIds": [ + "miniverb" + ], + "keepStockFx2": false, + "before": { + "bytes": 1112560, + "osSha256": "f48222597652db1d09bfcd07675a94a494c40336b9e4bb222b34b82a96010be9", + "maskedOsSha256": "f48222597652db1d09bfcd07675a94a494c40336b9e4bb222b34b82a96010be9" + }, + "after": { + "bytes": 1112560, + "osSha256": "f48222597652db1d09bfcd07675a94a494c40336b9e4bb222b34b82a96010be9", + "maskedOsSha256": "f48222597652db1d09bfcd07675a94a494c40336b9e4bb222b34b82a96010be9" + } + }, + { + "moduleIds": [ + "miniverb" + ], + "keepStockFx2": true, + "before": { + "bytes": 1112560, + "osSha256": "266117031665a6ef070440bb0cda634b86bc03f408670de7463433da854e4a4d", + "maskedOsSha256": "266117031665a6ef070440bb0cda634b86bc03f408670de7463433da854e4a4d" + }, + "after": { + "bytes": 1112560, + "osSha256": "266117031665a6ef070440bb0cda634b86bc03f408670de7463433da854e4a4d", + "maskedOsSha256": "266117031665a6ef070440bb0cda634b86bc03f408670de7463433da854e4a4d" + } + }, + { + "moduleIds": [ + "mute-modes" + ], + "keepStockFx2": false, + "before": { + "bytes": 1112560, + "osSha256": "9b79cc30b0a5585903ab271daf1325a70925c00b4b4b44c60a5004928665ab18", + "maskedOsSha256": "9b79cc30b0a5585903ab271daf1325a70925c00b4b4b44c60a5004928665ab18" + }, + "after": { + "bytes": 1112560, + "osSha256": "9b79cc30b0a5585903ab271daf1325a70925c00b4b4b44c60a5004928665ab18", + "maskedOsSha256": "9b79cc30b0a5585903ab271daf1325a70925c00b4b4b44c60a5004928665ab18" + } + }, + { + "moduleIds": [ + "mute-modes" + ], + "keepStockFx2": true, + "before": { + "bytes": 1112560, + "osSha256": "b4aa648e63c314b01a42edfdd23cc7d15d3868eb1f76e81e860872d5cbe81112", + "maskedOsSha256": "b4aa648e63c314b01a42edfdd23cc7d15d3868eb1f76e81e860872d5cbe81112" + }, + "after": { + "bytes": 1112560, + "osSha256": "b4aa648e63c314b01a42edfdd23cc7d15d3868eb1f76e81e860872d5cbe81112", + "maskedOsSha256": "b4aa648e63c314b01a42edfdd23cc7d15d3868eb1f76e81e860872d5cbe81112" + } + }, + { + "moduleIds": [ + "output-matrix" + ], + "keepStockFx2": false, + "before": { + "bytes": 1114033, + "osSha256": "293ed4e5c10c8133bb60dfc6b118a4b2dbd745c6446291075927148ace373af2", + "maskedOsSha256": "b94606636467cd5a50e6dbc00d46b77669c2fc6a9e3d208a570cae43d8086107" + }, + "after": { + "bytes": 1114033, + "osSha256": "293ed4e5c10c8133bb60dfc6b118a4b2dbd745c6446291075927148ace373af2", + "maskedOsSha256": "b94606636467cd5a50e6dbc00d46b77669c2fc6a9e3d208a570cae43d8086107" + } + }, + { + "moduleIds": [ + "output-matrix" + ], + "keepStockFx2": true, + "before": { + "bytes": 1114033, + "osSha256": "a12ca396b5b2a4e4da79395a91382a55b001dfb0e24a7d135793df2a66030b13", + "maskedOsSha256": "f6ab5cd47082b810b5e25c182b93224913608ebb860ec68ec619d914328a809d" + }, + "after": { + "bytes": 1114033, + "osSha256": "a12ca396b5b2a4e4da79395a91382a55b001dfb0e24a7d135793df2a66030b13", + "maskedOsSha256": "f6ab5cd47082b810b5e25c182b93224913608ebb860ec68ec619d914328a809d" + } + }, + { + "moduleIds": [ + "playmodes" + ], + "keepStockFx2": false, + "before": { + "bytes": 1118019, + "osSha256": "8a76439db2e8a01b65bb23c45d38adba81972afd3cb2a8203dceaf97aa5b50ec", + "maskedOsSha256": "0f297729da630da6483d2e1892aae3122337fdf36366a14b69e31b46dcb53a68" + }, + "after": { + "bytes": 1118019, + "osSha256": "8a76439db2e8a01b65bb23c45d38adba81972afd3cb2a8203dceaf97aa5b50ec", + "maskedOsSha256": "0f297729da630da6483d2e1892aae3122337fdf36366a14b69e31b46dcb53a68" + } + }, + { + "moduleIds": [ + "playmodes" + ], + "keepStockFx2": true, + "before": { + "bytes": 1118019, + "osSha256": "3e4e81f0da64b0e997f4bf40c1a9ea07a1908b6171e7d51d26eab2077056e823", + "maskedOsSha256": "c25ddf4e2da176583275e78612997910a88bfef393145c46c087a9366930ccf2" + }, + "after": { + "bytes": 1118019, + "osSha256": "3e4e81f0da64b0e997f4bf40c1a9ea07a1908b6171e7d51d26eab2077056e823", + "maskedOsSha256": "c25ddf4e2da176583275e78612997910a88bfef393145c46c087a9366930ccf2" + } + }, + { + "moduleIds": [ + "previewvol" + ], + "keepStockFx2": false, + "before": { + "bytes": 1112560, + "osSha256": "687b86044f3638644c44f63a2765af9241885a8d49796ab7af8c3f57cc43b643", + "maskedOsSha256": "687b86044f3638644c44f63a2765af9241885a8d49796ab7af8c3f57cc43b643" + }, + "after": { + "bytes": 1112560, + "osSha256": "687b86044f3638644c44f63a2765af9241885a8d49796ab7af8c3f57cc43b643", + "maskedOsSha256": "687b86044f3638644c44f63a2765af9241885a8d49796ab7af8c3f57cc43b643" + } + }, + { + "moduleIds": [ + "previewvol" + ], + "keepStockFx2": true, + "before": { + "bytes": 1112560, + "osSha256": "3900e54e9154d66df6001b0f96da2ca07c42bf5c7be7f1157ddd9a071601f2cc", + "maskedOsSha256": "3900e54e9154d66df6001b0f96da2ca07c42bf5c7be7f1157ddd9a071601f2cc" + }, + "after": { + "bytes": 1112560, + "osSha256": "3900e54e9154d66df6001b0f96da2ca07c42bf5c7be7f1157ddd9a071601f2cc", + "maskedOsSha256": "3900e54e9154d66df6001b0f96da2ca07c42bf5c7be7f1157ddd9a071601f2cc" + } + }, + { + "moduleIds": [ + "quantizer" + ], + "keepStockFx2": false, + "before": { + "bytes": 1115065, + "osSha256": "9075cc33afb2c47aeae1e718e284a1a84d6fe30b64950a78dcf0e9c5e6777d2c", + "maskedOsSha256": "7f361933dd228381e2c9c501a1ac9f562577fe95cfd7389791de990ba707c082" + }, + "after": { + "bytes": 1115065, + "osSha256": "9075cc33afb2c47aeae1e718e284a1a84d6fe30b64950a78dcf0e9c5e6777d2c", + "maskedOsSha256": "7f361933dd228381e2c9c501a1ac9f562577fe95cfd7389791de990ba707c082" + } + }, + { + "moduleIds": [ + "quantizer" + ], + "keepStockFx2": true, + "before": { + "bytes": 1115065, + "osSha256": "91b17bec41cc577cf13165394b8264d0b88ef2e1649ebd680a73424e59a32cca", + "maskedOsSha256": "6d17f807e1c485c451cc57c3b4dd9dc9eeb7372f6f12e0090dc3ea7231c9e90e" + }, + "after": { + "bytes": 1115065, + "osSha256": "91b17bec41cc577cf13165394b8264d0b88ef2e1649ebd680a73424e59a32cca", + "maskedOsSha256": "6d17f807e1c485c451cc57c3b4dd9dc9eeb7372f6f12e0090dc3ea7231c9e90e" + } + }, + { + "moduleIds": [ + "recorder-loop-fix" + ], + "keepStockFx2": false, + "before": { + "bytes": 1112560, + "osSha256": "7578fff74c7e43c2db402505c1465f361ebb33d885c712ddff795f0e31c42a35", + "maskedOsSha256": "3ab39ff476589e48f239debf947f321c40edf4877500a501a929027b1c0c3011" + }, + "after": { + "bytes": 1112560, + "osSha256": "7578fff74c7e43c2db402505c1465f361ebb33d885c712ddff795f0e31c42a35", + "maskedOsSha256": "3ab39ff476589e48f239debf947f321c40edf4877500a501a929027b1c0c3011" + } + }, + { + "moduleIds": [ + "recorder-loop-fix" + ], + "keepStockFx2": true, + "before": { + "bytes": 1112560, + "osSha256": "7bd4bbdeaa05030f2b9f6d7f9bbd513e02b4ee4222aec0902b75ad713833ee95", + "maskedOsSha256": "ae6b575264b227ddb07d74a268886cb728a467b818f4fd78bd736b2a4223e30d" + }, + "after": { + "bytes": 1112560, + "osSha256": "7bd4bbdeaa05030f2b9f6d7f9bbd513e02b4ee4222aec0902b75ad713833ee95", + "maskedOsSha256": "ae6b575264b227ddb07d74a268886cb728a467b818f4fd78bd736b2a4223e30d" + } + }, + { + "moduleIds": [ + "repitch" + ], + "keepStockFx2": false, + "before": { + "bytes": 1112560, + "osSha256": "0639f301725e13f76ffd11e8ba6dbc12945f77c46f7a1e6e9d906beb904ca182", + "maskedOsSha256": "0639f301725e13f76ffd11e8ba6dbc12945f77c46f7a1e6e9d906beb904ca182" + }, + "after": { + "bytes": 1112560, + "osSha256": "0639f301725e13f76ffd11e8ba6dbc12945f77c46f7a1e6e9d906beb904ca182", + "maskedOsSha256": "0639f301725e13f76ffd11e8ba6dbc12945f77c46f7a1e6e9d906beb904ca182" + } + }, + { + "moduleIds": [ + "repitch" + ], + "keepStockFx2": true, + "before": { + "bytes": 1112560, + "osSha256": "f2555851696a0da70e63d434fe6ca7d877061000c990dadde925014f17dc2482", + "maskedOsSha256": "f2555851696a0da70e63d434fe6ca7d877061000c990dadde925014f17dc2482" + }, + "after": { + "bytes": 1112560, + "osSha256": "f2555851696a0da70e63d434fe6ca7d877061000c990dadde925014f17dc2482", + "maskedOsSha256": "f2555851696a0da70e63d434fe6ca7d877061000c990dadde925014f17dc2482" + } + }, + { + "moduleIds": [ + "sidechain-compressor" + ], + "keepStockFx2": false, + "before": { + "bytes": 1112560, + "osSha256": "9b6342c28437f026673d07bb8ac3680626f4ee6f89c01637ac3ea01e6ae9c324", + "maskedOsSha256": "9b6342c28437f026673d07bb8ac3680626f4ee6f89c01637ac3ea01e6ae9c324" + }, + "after": { + "bytes": 1112560, + "osSha256": "9b6342c28437f026673d07bb8ac3680626f4ee6f89c01637ac3ea01e6ae9c324", + "maskedOsSha256": "9b6342c28437f026673d07bb8ac3680626f4ee6f89c01637ac3ea01e6ae9c324" + } + }, + { + "moduleIds": [ + "sidechain-compressor" + ], + "keepStockFx2": true, + "before": { + "bytes": 1112560, + "osSha256": "2816f0bce5aaabfadac6dba9e778dc184b8af3e4a611990d6e6b3e36095bc5eb", + "maskedOsSha256": "2816f0bce5aaabfadac6dba9e778dc184b8af3e4a611990d6e6b3e36095bc5eb" + }, + "after": { + "bytes": 1112560, + "osSha256": "2816f0bce5aaabfadac6dba9e778dc184b8af3e4a611990d6e6b3e36095bc5eb", + "maskedOsSha256": "2816f0bce5aaabfadac6dba9e778dc184b8af3e4a611990d6e6b3e36095bc5eb" + } + }, + { + "moduleIds": [ + "synth" + ], + "keepStockFx2": false, + "before": { + "bytes": 1125240, + "osSha256": "d775e2160276d784282711afbde2e97ab444e50ffcd441f5781eb8e80702bade", + "maskedOsSha256": "0ab270288e66172169418edce22ad495d82243dd45aab17c277fb8821a48e089" + }, + "after": { + "bytes": 1125240, + "osSha256": "d775e2160276d784282711afbde2e97ab444e50ffcd441f5781eb8e80702bade", + "maskedOsSha256": "0ab270288e66172169418edce22ad495d82243dd45aab17c277fb8821a48e089" + } + }, + { + "moduleIds": [ + "synth" + ], + "keepStockFx2": true, + "before": { + "bytes": 1125240, + "osSha256": "1ffd8803f54612857f3d5c2d8c380b04962ffee78a6c56c06d927c20a1e75d5b", + "maskedOsSha256": "08d0116944fcb72630ed16a0741033d7bcd218f70e09ed4c91bc31ed2c239bfc" + }, + "after": { + "bytes": 1125240, + "osSha256": "1ffd8803f54612857f3d5c2d8c380b04962ffee78a6c56c06d927c20a1e75d5b", + "maskedOsSha256": "08d0116944fcb72630ed16a0741033d7bcd218f70e09ed4c91bc31ed2c239bfc" + } + }, + { + "moduleIds": [ + "tapeecho" + ], + "keepStockFx2": false, + "before": { + "bytes": 1215051, + "osSha256": "705825b260a43a0a69749ab0dc085dfe6130b7fb8d3862a6844e80093704b351", + "maskedOsSha256": "e805be5c86f63764631d15c7b1572246b7eac08e7b117df17471259a42a81473" + }, + "after": { + "bytes": 1215051, + "osSha256": "705825b260a43a0a69749ab0dc085dfe6130b7fb8d3862a6844e80093704b351", + "maskedOsSha256": "e805be5c86f63764631d15c7b1572246b7eac08e7b117df17471259a42a81473" + } + }, + { + "moduleIds": [ + "tapeecho" + ], + "keepStockFx2": true, + "before": { + "bytes": 1215051, + "osSha256": "89cb8bac1d3c79bdd8f01c723f5160ec107036c64f083279dcdc59c1f0261b8c", + "maskedOsSha256": "b2cd596ab24fb142a30995235a116d57dff33ed3d2a4964bd58434c6e43e0e77" + }, + "after": { + "bytes": 1215051, + "osSha256": "89cb8bac1d3c79bdd8f01c723f5160ec107036c64f083279dcdc59c1f0261b8c", + "maskedOsSha256": "b2cd596ab24fb142a30995235a116d57dff33ed3d2a4964bd58434c6e43e0e77" + } + }, + { + "moduleIds": [ + "tapehead" + ], + "keepStockFx2": false, + "before": { + "bytes": 1112560, + "osSha256": "3e6e192dbd2ff26ecb2421e13fbdae14c896edd1ccc3743b227950efb46ded19", + "maskedOsSha256": "3e6e192dbd2ff26ecb2421e13fbdae14c896edd1ccc3743b227950efb46ded19" + }, + "after": { + "bytes": 1112560, + "osSha256": "3e6e192dbd2ff26ecb2421e13fbdae14c896edd1ccc3743b227950efb46ded19", + "maskedOsSha256": "3e6e192dbd2ff26ecb2421e13fbdae14c896edd1ccc3743b227950efb46ded19" + } + }, + { + "moduleIds": [ + "tapehead" + ], + "keepStockFx2": true, + "before": { + "bytes": 1112560, + "osSha256": "a1262231396fd46c228bb67f4a7c286dc3889ce20d2bcb0a9bdd5fcef061d24f", + "maskedOsSha256": "a1262231396fd46c228bb67f4a7c286dc3889ce20d2bcb0a9bdd5fcef061d24f" + }, + "after": { + "bytes": 1112560, + "osSha256": "a1262231396fd46c228bb67f4a7c286dc3889ce20d2bcb0a9bdd5fcef061d24f", + "maskedOsSha256": "a1262231396fd46c228bb67f4a7c286dc3889ce20d2bcb0a9bdd5fcef061d24f" + } + }, + { + "moduleIds": [ + "usb-audio-out-tracks-main-cue" + ], + "keepStockFx2": false, + "before": { + "bytes": 1115534, + "osSha256": "559ebb7cf24a2e5723bb7acf6bab4c0e2efa3f75e25373483e48fe5d9ab99942", + "maskedOsSha256": "6b8571929e435b8a970d4e6f1890df94c8ac4cc9af6ed757f089fc2d952814d9" + }, + "after": { + "bytes": 1115534, + "osSha256": "559ebb7cf24a2e5723bb7acf6bab4c0e2efa3f75e25373483e48fe5d9ab99942", + "maskedOsSha256": "6b8571929e435b8a970d4e6f1890df94c8ac4cc9af6ed757f089fc2d952814d9" + } + }, + { + "moduleIds": [ + "usb-audio-out-tracks-main-cue" + ], + "keepStockFx2": true, + "before": { + "bytes": 1115534, + "osSha256": "013330b92b2df592b9faa5d6e242ec70b3580d061bf6fb4045a45d5e591a8739", + "maskedOsSha256": "bd880d0069eab1ff42e6498d4bcd58af7764bd57d42ea96c96a179fc24261872" + }, + "after": { + "bytes": 1115534, + "osSha256": "013330b92b2df592b9faa5d6e242ec70b3580d061bf6fb4045a45d5e591a8739", + "maskedOsSha256": "bd880d0069eab1ff42e6498d4bcd58af7764bd57d42ea96c96a179fc24261872" + } + }, + { + "moduleIds": [ + "vector" + ], + "keepStockFx2": false, + "before": { + "bytes": 1121076, + "osSha256": "126e6076bba8ab056579d103fb0134365a7d49bd9eb25b499c2ce483a1502041", + "maskedOsSha256": "f914320de31a948195ca34a259355536d55ffd9791da78b6245b02a08251b9e8" + }, + "after": { + "bytes": 1121076, + "osSha256": "126e6076bba8ab056579d103fb0134365a7d49bd9eb25b499c2ce483a1502041", + "maskedOsSha256": "f914320de31a948195ca34a259355536d55ffd9791da78b6245b02a08251b9e8" + } + }, + { + "moduleIds": [ + "vector" + ], + "keepStockFx2": true, + "before": { + "bytes": 1121076, + "osSha256": "d64284abbb02e1bedab13282218ac3d5d0c4e1c57fe165dce8148b5c5226ab95", + "maskedOsSha256": "c241d50a5a4728e097bcdae58e6a5b8afd7fdee4f6dfcc534d060ba668e489fe" + }, + "after": { + "bytes": 1121076, + "osSha256": "d64284abbb02e1bedab13282218ac3d5d0c4e1c57fe165dce8148b5c5226ab95", + "maskedOsSha256": "c241d50a5a4728e097bcdae58e6a5b8afd7fdee4f6dfcc534d060ba668e489fe" + } + }, + { + "moduleIds": [ + "airwindows-chorus", + "analog-bassdrum" + ], + "keepStockFx2": false, + "before": { + "bytes": 1266806, + "osSha256": "6def828ece8f76ef3c6c1600ad4547e7959cb1698eff45c8f19b2e2b6cbe691a", + "maskedOsSha256": "935d8292d09d402df33135b5c0f565933f2086567d7ca3f0350ccb99b2c31f81" + }, + "after": { + "bytes": 1266806, + "osSha256": "6def828ece8f76ef3c6c1600ad4547e7959cb1698eff45c8f19b2e2b6cbe691a", + "maskedOsSha256": "935d8292d09d402df33135b5c0f565933f2086567d7ca3f0350ccb99b2c31f81" + } + }, + { + "moduleIds": [ + "airwindows-chorus", + "analog-bassdrum" + ], + "keepStockFx2": true, + "before": { + "bytes": 1266806, + "osSha256": "3b2fae42eb224eb402e7c3b325fc586896b00d868e452cbf6532191b9b0ea4c9", + "maskedOsSha256": "2ae2a8c9b41f7b13392577f2dbba2b04fada98d26bd75690f8c10a5af9d1a854" + }, + "after": { + "bytes": 1266806, + "osSha256": "3b2fae42eb224eb402e7c3b325fc586896b00d868e452cbf6532191b9b0ea4c9", + "maskedOsSha256": "2ae2a8c9b41f7b13392577f2dbba2b04fada98d26bd75690f8c10a5af9d1a854" + } + }, + { + "moduleIds": [ + "airwindows-chorus", + "cc-map" + ], + "keepStockFx2": false, + "before": { + "bytes": 1112560, + "osSha256": "5d8c2dd41242deac97e85460970d808cbf59ea4c398fe25504ad6f0e28941802", + "maskedOsSha256": "5d8c2dd41242deac97e85460970d808cbf59ea4c398fe25504ad6f0e28941802" + }, + "after": { + "bytes": 1112560, + "osSha256": "5d8c2dd41242deac97e85460970d808cbf59ea4c398fe25504ad6f0e28941802", + "maskedOsSha256": "5d8c2dd41242deac97e85460970d808cbf59ea4c398fe25504ad6f0e28941802" + } + }, + { + "moduleIds": [ + "airwindows-chorus", + "cc-map" + ], + "keepStockFx2": true, + "before": { + "bytes": 1112560, + "osSha256": "98a36e55fd9a43217050988b184b77e9c5f9a7549e611f5380ee9e9afe0a2581", + "maskedOsSha256": "98a36e55fd9a43217050988b184b77e9c5f9a7549e611f5380ee9e9afe0a2581" + }, + "after": { + "bytes": 1112560, + "osSha256": "98a36e55fd9a43217050988b184b77e9c5f9a7549e611f5380ee9e9afe0a2581", + "maskedOsSha256": "98a36e55fd9a43217050988b184b77e9c5f9a7549e611f5380ee9e9afe0a2581" + } + }, + { + "moduleIds": [ + "airwindows-chorus", + "everb" + ], + "keepStockFx2": false, + "before": { + "bytes": 1112560, + "osSha256": "c1cee035c1c474c70140abf379318ae8b17c2fca53181f5578d6228f7183e50b", + "maskedOsSha256": "c1cee035c1c474c70140abf379318ae8b17c2fca53181f5578d6228f7183e50b" + }, + "after": { + "bytes": 1112560, + "osSha256": "c1cee035c1c474c70140abf379318ae8b17c2fca53181f5578d6228f7183e50b", + "maskedOsSha256": "c1cee035c1c474c70140abf379318ae8b17c2fca53181f5578d6228f7183e50b" + } + }, + { + "moduleIds": [ + "airwindows-chorus", + "everb" + ], + "keepStockFx2": true, + "before": { + "bytes": 1112560, + "osSha256": "ec9c5ce1d30d4b205e7adf7f431b1348b1f281a2a152b1bd7602b286d8a34d2d", + "maskedOsSha256": "ec9c5ce1d30d4b205e7adf7f431b1348b1f281a2a152b1bd7602b286d8a34d2d" + }, + "after": { + "bytes": 1112560, + "osSha256": "ec9c5ce1d30d4b205e7adf7f431b1348b1f281a2a152b1bd7602b286d8a34d2d", + "maskedOsSha256": "ec9c5ce1d30d4b205e7adf7f431b1348b1f281a2a152b1bd7602b286d8a34d2d" + } + }, + { + "moduleIds": [ + "airwindows-chorus", + "mute-modes" + ], + "keepStockFx2": false, + "before": { + "bytes": 1112560, + "osSha256": "6c2950beff0afa1ddf0dfe2f355a5c8069b72a6cf2bb07dc55a4ac7bd081c845", + "maskedOsSha256": "6c2950beff0afa1ddf0dfe2f355a5c8069b72a6cf2bb07dc55a4ac7bd081c845" + }, + "after": { + "bytes": 1112560, + "osSha256": "6c2950beff0afa1ddf0dfe2f355a5c8069b72a6cf2bb07dc55a4ac7bd081c845", + "maskedOsSha256": "6c2950beff0afa1ddf0dfe2f355a5c8069b72a6cf2bb07dc55a4ac7bd081c845" + } + }, + { + "moduleIds": [ + "airwindows-chorus", + "mute-modes" + ], + "keepStockFx2": true, + "before": { + "bytes": 1112560, + "osSha256": "ac096aa6d28ea827037ecdd3f316edb4dd23492237613620182449388b86efd6", + "maskedOsSha256": "ac096aa6d28ea827037ecdd3f316edb4dd23492237613620182449388b86efd6" + }, + "after": { + "bytes": 1112560, + "osSha256": "ac096aa6d28ea827037ecdd3f316edb4dd23492237613620182449388b86efd6", + "maskedOsSha256": "ac096aa6d28ea827037ecdd3f316edb4dd23492237613620182449388b86efd6" + } + }, + { + "moduleIds": [ + "airwindows-chorus", + "playmodes" + ], + "keepStockFx2": false, + "before": { + "bytes": 1118019, + "osSha256": "b2bda0b45f6b672a40371ffc36b588b33358b0f23b6d84d65d21bf2eed2c6dc0", + "maskedOsSha256": "c5256416c73161d888c1e2e8266756db673d392c1f388b16996ae37bbf985db3" + }, + "after": { + "bytes": 1118019, + "osSha256": "b2bda0b45f6b672a40371ffc36b588b33358b0f23b6d84d65d21bf2eed2c6dc0", + "maskedOsSha256": "c5256416c73161d888c1e2e8266756db673d392c1f388b16996ae37bbf985db3" + } + }, + { + "moduleIds": [ + "airwindows-chorus", + "playmodes" + ], + "keepStockFx2": true, + "before": { + "bytes": 1118019, + "osSha256": "e91affcc9af60b0f0033613f0c4c3ef5f3cea76ebcb9f98cc09d39331c37ee8b", + "maskedOsSha256": "91a651930ccb831e2aa6f48fdb2d1681d8c87cadbb4c9c87f968c9bb5f540943" + }, + "after": { + "bytes": 1118019, + "osSha256": "e91affcc9af60b0f0033613f0c4c3ef5f3cea76ebcb9f98cc09d39331c37ee8b", + "maskedOsSha256": "91a651930ccb831e2aa6f48fdb2d1681d8c87cadbb4c9c87f968c9bb5f540943" + } + }, + { + "moduleIds": [ + "airwindows-chorus", + "previewvol" + ], + "keepStockFx2": false, + "before": { + "bytes": 1112560, + "osSha256": "36b2c68dc184ff53dc3cf9d768e3ba41885b0aca36c07a1c24868b90dbb51465", + "maskedOsSha256": "36b2c68dc184ff53dc3cf9d768e3ba41885b0aca36c07a1c24868b90dbb51465" + }, + "after": { + "bytes": 1112560, + "osSha256": "36b2c68dc184ff53dc3cf9d768e3ba41885b0aca36c07a1c24868b90dbb51465", + "maskedOsSha256": "36b2c68dc184ff53dc3cf9d768e3ba41885b0aca36c07a1c24868b90dbb51465" + } + }, + { + "moduleIds": [ + "airwindows-chorus", + "previewvol" + ], + "keepStockFx2": true, + "before": { + "bytes": 1112560, + "osSha256": "5fadd2997eee3045dbeb6bccf6d6932de41aab437702b2075f5de50b54fa6b95", + "maskedOsSha256": "5fadd2997eee3045dbeb6bccf6d6932de41aab437702b2075f5de50b54fa6b95" + }, + "after": { + "bytes": 1112560, + "osSha256": "5fadd2997eee3045dbeb6bccf6d6932de41aab437702b2075f5de50b54fa6b95", + "maskedOsSha256": "5fadd2997eee3045dbeb6bccf6d6932de41aab437702b2075f5de50b54fa6b95" + } + }, + { + "moduleIds": [ + "airwindows-chorus", + "quantizer" + ], + "keepStockFx2": false, + "before": { + "bytes": 1115065, + "osSha256": "722c5cbb3468909cd03410e1d7f749f183750c3d2bfdbaf06241a34833bff486", + "maskedOsSha256": "0c1c786a36ab5d298d01a297cbc343c0719f901e90deb48a720a8ee03c3e2c85" + }, + "after": { + "bytes": 1115065, + "osSha256": "722c5cbb3468909cd03410e1d7f749f183750c3d2bfdbaf06241a34833bff486", + "maskedOsSha256": "0c1c786a36ab5d298d01a297cbc343c0719f901e90deb48a720a8ee03c3e2c85" + } + }, + { + "moduleIds": [ + "airwindows-chorus", + "quantizer" + ], + "keepStockFx2": true, + "before": { + "bytes": 1115065, + "osSha256": "0533093c1485227e87ff27d73f36920f439e3dfd95bd4f0a5560feca4f62213a", + "maskedOsSha256": "e3b01c46e423ffbfe955a5c26e15825a64d8d1c0d5118a34da84a5d7cefa8261" + }, + "after": { + "bytes": 1115065, + "osSha256": "0533093c1485227e87ff27d73f36920f439e3dfd95bd4f0a5560feca4f62213a", + "maskedOsSha256": "e3b01c46e423ffbfe955a5c26e15825a64d8d1c0d5118a34da84a5d7cefa8261" + } + }, + { + "moduleIds": [ + "airwindows-chorus", + "recorder-loop-fix" + ], + "keepStockFx2": false, + "before": { + "bytes": 1112560, + "osSha256": "7561380b19ef9c4e65f258229ec01d551e1a2a0e61bead69184de49140ac2894", + "maskedOsSha256": "15e9ce319bf1bbda09edb79ca03584fbe4f05c56cb650714543506714092f4d2" + }, + "after": { + "bytes": 1112560, + "osSha256": "7561380b19ef9c4e65f258229ec01d551e1a2a0e61bead69184de49140ac2894", + "maskedOsSha256": "15e9ce319bf1bbda09edb79ca03584fbe4f05c56cb650714543506714092f4d2" + } + }, + { + "moduleIds": [ + "airwindows-chorus", + "recorder-loop-fix" + ], + "keepStockFx2": true, + "before": { + "bytes": 1112560, + "osSha256": "fedc61401490ba96f8719af44ccd06372a35512b914fae43852acad26ecb9dc0", + "maskedOsSha256": "e8917092504f19f6cfb1641337a10b5086ddaee6768c8345e6f92d7275efe3d5" + }, + "after": { + "bytes": 1112560, + "osSha256": "fedc61401490ba96f8719af44ccd06372a35512b914fae43852acad26ecb9dc0", + "maskedOsSha256": "e8917092504f19f6cfb1641337a10b5086ddaee6768c8345e6f92d7275efe3d5" + } + }, + { + "moduleIds": [ + "airwindows-chorus", + "sidechain-compressor" + ], + "keepStockFx2": false, + "before": { + "bytes": 1112560, + "osSha256": "ff702dc6d0505a485a99368a19b521cfed58953c03079294144e9e2cd0ddf88c", + "maskedOsSha256": "ff702dc6d0505a485a99368a19b521cfed58953c03079294144e9e2cd0ddf88c" + }, + "after": { + "bytes": 1112560, + "osSha256": "ff702dc6d0505a485a99368a19b521cfed58953c03079294144e9e2cd0ddf88c", + "maskedOsSha256": "ff702dc6d0505a485a99368a19b521cfed58953c03079294144e9e2cd0ddf88c" + } + }, + { + "moduleIds": [ + "airwindows-chorus", + "sidechain-compressor" + ], + "keepStockFx2": true, + "before": { + "bytes": 1112560, + "osSha256": "9d0421caf01b40e5cae9a85299b3ffcdc85e6b794fd3554b512b7128e1a7f39e", + "maskedOsSha256": "9d0421caf01b40e5cae9a85299b3ffcdc85e6b794fd3554b512b7128e1a7f39e" + }, + "after": { + "bytes": 1112560, + "osSha256": "9d0421caf01b40e5cae9a85299b3ffcdc85e6b794fd3554b512b7128e1a7f39e", + "maskedOsSha256": "9d0421caf01b40e5cae9a85299b3ffcdc85e6b794fd3554b512b7128e1a7f39e" + } + }, + { + "moduleIds": [ + "airwindows-chorus", + "synth" + ], + "keepStockFx2": false, + "before": { + "bytes": 1125240, + "osSha256": "8dc849846962c6deaedbd189b5edde6b3e8cd047ac03f3e9775e7566f14300e1", + "maskedOsSha256": "90350df1f497719cc3789bf56fa8e4f411b88e8a1d4ff2515a16fffd44e20db0" + }, + "after": { + "bytes": 1125240, + "osSha256": "8dc849846962c6deaedbd189b5edde6b3e8cd047ac03f3e9775e7566f14300e1", + "maskedOsSha256": "90350df1f497719cc3789bf56fa8e4f411b88e8a1d4ff2515a16fffd44e20db0" + } + }, + { + "moduleIds": [ + "airwindows-chorus", + "synth" + ], + "keepStockFx2": true, + "before": { + "bytes": 1125240, + "osSha256": "ab1c64d3f47bc7509c0c21581a5c8ef497d6d26cefed08c6c245f602a763e293", + "maskedOsSha256": "9fe1fdd139a2099ac5e327c69c820d0240859b899af7178a74796c4181dd93c0" + }, + "after": { + "bytes": 1125240, + "osSha256": "ab1c64d3f47bc7509c0c21581a5c8ef497d6d26cefed08c6c245f602a763e293", + "maskedOsSha256": "9fe1fdd139a2099ac5e327c69c820d0240859b899af7178a74796c4181dd93c0" + } + }, + { + "moduleIds": [ + "airwindows-chorus", + "usb-audio-out-tracks-main-cue" + ], + "keepStockFx2": false, + "before": { + "bytes": 1115534, + "osSha256": "e3c0520ba8759bd3bf1bfaa8d213d711d1ecbd164d025ccf833cdb834c9fe774", + "maskedOsSha256": "c58ea0bdf107de6e4fac319ffa5f8fc1b798eface7bbaefadb6f3a32a6dbc452" + }, + "after": { + "bytes": 1115534, + "osSha256": "e3c0520ba8759bd3bf1bfaa8d213d711d1ecbd164d025ccf833cdb834c9fe774", + "maskedOsSha256": "c58ea0bdf107de6e4fac319ffa5f8fc1b798eface7bbaefadb6f3a32a6dbc452" + } + }, + { + "moduleIds": [ + "airwindows-chorus", + "usb-audio-out-tracks-main-cue" + ], + "keepStockFx2": true, + "before": { + "bytes": 1115534, + "osSha256": "c855fbfd88fa7dbc379e5d44d048078aebd0e4410dd8652185ab48e359895210", + "maskedOsSha256": "5f346516926eb7850ced3f3124d06f5d39ecce5e3f78d91aa2719f23e5e99234" + }, + "after": { + "bytes": 1115534, + "osSha256": "c855fbfd88fa7dbc379e5d44d048078aebd0e4410dd8652185ab48e359895210", + "maskedOsSha256": "5f346516926eb7850ced3f3124d06f5d39ecce5e3f78d91aa2719f23e5e99234" + } + }, + { + "moduleIds": [ + "airwindows-chorus", + "vector" + ], + "keepStockFx2": false, + "before": { + "bytes": 1121076, + "osSha256": "4435f630bcae5ff52106c8de022c27f9e2c7e12dd4dab03929911eb15193c4f8", + "maskedOsSha256": "19e2378caa863e547fa177364d196ce36456b95b35635fbaef8b17d09fbb1d5b" + }, + "after": { + "bytes": 1121076, + "osSha256": "4435f630bcae5ff52106c8de022c27f9e2c7e12dd4dab03929911eb15193c4f8", + "maskedOsSha256": "19e2378caa863e547fa177364d196ce36456b95b35635fbaef8b17d09fbb1d5b" + } + }, + { + "moduleIds": [ + "airwindows-chorus", + "vector" + ], + "keepStockFx2": true, + "before": { + "bytes": 1121076, + "osSha256": "c68eb93e1346ecb87f711a41018c5fc36468891dd646bf33089453f76e64ea9a", + "maskedOsSha256": "42dd305131322c980219ad3970e1e7aa10c2bc798a24f12c22ac51a28e017674" + }, + "after": { + "bytes": 1121076, + "osSha256": "c68eb93e1346ecb87f711a41018c5fc36468891dd646bf33089453f76e64ea9a", + "maskedOsSha256": "42dd305131322c980219ad3970e1e7aa10c2bc798a24f12c22ac51a28e017674" + } + }, + { + "moduleIds": [ + "cc-map", + "sidechain-compressor" + ], + "keepStockFx2": false, + "before": { + "bytes": 1112560, + "osSha256": "ecb1e3bf5b608d08566b8fdea5a38798e889cef91d4af54441db75cfc04f3015", + "maskedOsSha256": "ecb1e3bf5b608d08566b8fdea5a38798e889cef91d4af54441db75cfc04f3015" + }, + "after": { + "bytes": 1112560, + "osSha256": "ecb1e3bf5b608d08566b8fdea5a38798e889cef91d4af54441db75cfc04f3015", + "maskedOsSha256": "ecb1e3bf5b608d08566b8fdea5a38798e889cef91d4af54441db75cfc04f3015" + } + }, + { + "moduleIds": [ + "cc-map", + "sidechain-compressor" + ], + "keepStockFx2": true, + "before": { + "bytes": 1112560, + "osSha256": "ad6059ae87473a99cb191c6143c12c535fb9292a9c45bb3a8d2f3421d350a21e", + "maskedOsSha256": "ad6059ae87473a99cb191c6143c12c535fb9292a9c45bb3a8d2f3421d350a21e" + }, + "after": { + "bytes": 1112560, + "osSha256": "ad6059ae87473a99cb191c6143c12c535fb9292a9c45bb3a8d2f3421d350a21e", + "maskedOsSha256": "ad6059ae87473a99cb191c6143c12c535fb9292a9c45bb3a8d2f3421d350a21e" + } + }, + { + "moduleIds": [ + "euclid", + "airwindows-chorus" + ], + "keepStockFx2": false, + "before": { + "bytes": 1114986, + "osSha256": "ff8606d4c77d5f8e9da774d470be1017b0b48ca4ff9ee3671a00f10b0111bfbc", + "maskedOsSha256": "0a5987523f2ae868b9c978edbdf5f73ad3cac135b561435ad95431d014fd459e" + }, + "after": { + "bytes": 1114986, + "osSha256": "ff8606d4c77d5f8e9da774d470be1017b0b48ca4ff9ee3671a00f10b0111bfbc", + "maskedOsSha256": "0a5987523f2ae868b9c978edbdf5f73ad3cac135b561435ad95431d014fd459e" + } + }, + { + "moduleIds": [ + "euclid", + "airwindows-chorus" + ], + "keepStockFx2": true, + "before": { + "bytes": 1114986, + "osSha256": "7b704bdd5224a2b402598bd589ed96c11978da8e16b851dd2ac497d48198f191", + "maskedOsSha256": "a95d0c26ceaf36803df6aa9781957a5b3a2775a2d96ae2e948d66e4a0ca1e642" + }, + "after": { + "bytes": 1114986, + "osSha256": "7b704bdd5224a2b402598bd589ed96c11978da8e16b851dd2ac497d48198f191", + "maskedOsSha256": "a95d0c26ceaf36803df6aa9781957a5b3a2775a2d96ae2e948d66e4a0ca1e642" + } + }, + { + "moduleIds": [ + "miniverb", + "airwindows-chorus" + ], + "keepStockFx2": false, + "before": { + "bytes": 1112560, + "osSha256": "ecff84db593b39dfa4e715d9d2dafa84b939731cc607178dc1f1a3c6a52ad633", + "maskedOsSha256": "ecff84db593b39dfa4e715d9d2dafa84b939731cc607178dc1f1a3c6a52ad633" + }, + "after": { + "bytes": 1112560, + "osSha256": "ecff84db593b39dfa4e715d9d2dafa84b939731cc607178dc1f1a3c6a52ad633", + "maskedOsSha256": "ecff84db593b39dfa4e715d9d2dafa84b939731cc607178dc1f1a3c6a52ad633" + } + }, + { + "moduleIds": [ + "miniverb", + "airwindows-chorus" + ], + "keepStockFx2": true, + "before": { + "bytes": 1112560, + "osSha256": "b88edc7a83068197fbc0c85c08ed2ffb25bdce13a1e844513535b3c3b70e0f20", + "maskedOsSha256": "b88edc7a83068197fbc0c85c08ed2ffb25bdce13a1e844513535b3c3b70e0f20" + }, + "after": { + "bytes": 1112560, + "osSha256": "b88edc7a83068197fbc0c85c08ed2ffb25bdce13a1e844513535b3c3b70e0f20", + "maskedOsSha256": "b88edc7a83068197fbc0c85c08ed2ffb25bdce13a1e844513535b3c3b70e0f20" + } + }, + { + "moduleIds": [ + "repitch", + "airwindows-chorus" + ], + "keepStockFx2": false, + "before": { + "bytes": 1112560, + "osSha256": "cd2a04fd2077d515867a24e76f58501373f04fa1397062d1bcf45eced3e0d8b0", + "maskedOsSha256": "cd2a04fd2077d515867a24e76f58501373f04fa1397062d1bcf45eced3e0d8b0" + }, + "after": { + "bytes": 1112560, + "osSha256": "cd2a04fd2077d515867a24e76f58501373f04fa1397062d1bcf45eced3e0d8b0", + "maskedOsSha256": "cd2a04fd2077d515867a24e76f58501373f04fa1397062d1bcf45eced3e0d8b0" + } + }, + { + "moduleIds": [ + "repitch", + "airwindows-chorus" + ], + "keepStockFx2": true, + "before": { + "bytes": 1112560, + "osSha256": "2c42466d1f6ef2148b007f06c9adc87e813110fe22c6662fe224e19a7a69fa92", + "maskedOsSha256": "2c42466d1f6ef2148b007f06c9adc87e813110fe22c6662fe224e19a7a69fa92" + }, + "after": { + "bytes": 1112560, + "osSha256": "2c42466d1f6ef2148b007f06c9adc87e813110fe22c6662fe224e19a7a69fa92", + "maskedOsSha256": "2c42466d1f6ef2148b007f06c9adc87e813110fe22c6662fe224e19a7a69fa92" + } + }, + { + "moduleIds": [ + "repitch", + "synth" + ], + "keepStockFx2": false, + "before": { + "bytes": 1125240, + "osSha256": "eae1f3344ffb9cb6714fe204011bc83f415d048022b4fc67a7c9148107dc2798", + "maskedOsSha256": "70bd2017a28c49efcf6d23f9685553d9821022d200bb89294146de7303ee24a5" + }, + "after": { + "bytes": 1125240, + "osSha256": "eae1f3344ffb9cb6714fe204011bc83f415d048022b4fc67a7c9148107dc2798", + "maskedOsSha256": "70bd2017a28c49efcf6d23f9685553d9821022d200bb89294146de7303ee24a5" + } + }, + { + "moduleIds": [ + "repitch", + "synth" + ], + "keepStockFx2": true, + "before": { + "bytes": 1125240, + "osSha256": "97016bf7cc4bfdfec4f184bd70972746ef24cb7881c6980fe5d7b1cc064e4def", + "maskedOsSha256": "9cfd7975a8746467c4b5e382d23ad85e89ac3a1f6d0930dba1a5e158bdf0640c" + }, + "after": { + "bytes": 1125240, + "osSha256": "97016bf7cc4bfdfec4f184bd70972746ef24cb7881c6980fe5d7b1cc064e4def", + "maskedOsSha256": "9cfd7975a8746467c4b5e382d23ad85e89ac3a1f6d0930dba1a5e158bdf0640c" + } + }, + { + "moduleIds": [ + "tapeecho", + "airwindows-chorus" + ], + "keepStockFx2": false, + "before": { + "bytes": 1215051, + "osSha256": "8d313b8d9ca5d12b5234857b29a8fa2ccc184ea436b8d970334674ab89ba173d", + "maskedOsSha256": "6a6a1fb8343ca532d8b9754c1388736a68327ccf6a302926c6729787e0bee1e8" + }, + "after": { + "bytes": 1215051, + "osSha256": "8d313b8d9ca5d12b5234857b29a8fa2ccc184ea436b8d970334674ab89ba173d", + "maskedOsSha256": "6a6a1fb8343ca532d8b9754c1388736a68327ccf6a302926c6729787e0bee1e8" + } + }, + { + "moduleIds": [ + "tapeecho", + "airwindows-chorus" + ], + "keepStockFx2": true, + "before": { + "bytes": 1215051, + "osSha256": "540312a964f1daacfb8fd7a9305e98e646770115467a79b390c0887ce2db14d4", + "maskedOsSha256": "6750548465fece2af8b5b62fdfef5ba37867fcf4c18cadf3431f4a9f97ba4309" + }, + "after": { + "bytes": 1215051, + "osSha256": "540312a964f1daacfb8fd7a9305e98e646770115467a79b390c0887ce2db14d4", + "maskedOsSha256": "6750548465fece2af8b5b62fdfef5ba37867fcf4c18cadf3431f4a9f97ba4309" + } + }, + { + "moduleIds": [ + "tapehead", + "airwindows-chorus" + ], + "keepStockFx2": false, + "before": { + "bytes": 1112560, + "osSha256": "48536018c2874d4f61c5165a7eb4a73e8f542c054890dacb94555411f8cb5005", + "maskedOsSha256": "48536018c2874d4f61c5165a7eb4a73e8f542c054890dacb94555411f8cb5005" + }, + "after": { + "bytes": 1112560, + "osSha256": "48536018c2874d4f61c5165a7eb4a73e8f542c054890dacb94555411f8cb5005", + "maskedOsSha256": "48536018c2874d4f61c5165a7eb4a73e8f542c054890dacb94555411f8cb5005" + } + }, + { + "moduleIds": [ + "tapehead", + "airwindows-chorus" + ], + "keepStockFx2": true, + "before": { + "bytes": 1112560, + "osSha256": "3e2033ee896eeea0873b89e707009148c64a6ced386f45aa4cc2ad45693420b7", + "maskedOsSha256": "3e2033ee896eeea0873b89e707009148c64a6ced386f45aa4cc2ad45693420b7" + }, + "after": { + "bytes": 1112560, + "osSha256": "3e2033ee896eeea0873b89e707009148c64a6ced386f45aa4cc2ad45693420b7", + "maskedOsSha256": "3e2033ee896eeea0873b89e707009148c64a6ced386f45aa4cc2ad45693420b7" + } + }, + { + "moduleIds": [ + "usb-audio-out-tracks-main-cue", + "cc-map" + ], + "keepStockFx2": false, + "before": { + "bytes": 1115534, + "osSha256": "b614686a4f725681c4d3490315a742d594daf4989ac579639882d62b4be63781", + "maskedOsSha256": "e2a03706b31345424e6ebeee3fc687c69d637d16b49fd76b451c34cfdcf7f11c" + }, + "after": { + "bytes": 1115534, + "osSha256": "b614686a4f725681c4d3490315a742d594daf4989ac579639882d62b4be63781", + "maskedOsSha256": "e2a03706b31345424e6ebeee3fc687c69d637d16b49fd76b451c34cfdcf7f11c" + } + }, + { + "moduleIds": [ + "usb-audio-out-tracks-main-cue", + "cc-map" + ], + "keepStockFx2": true, + "before": { + "bytes": 1115534, + "osSha256": "ee4292c5f12e457fd9a14c1d0f8e0a5682239f7d289a63f185e2116355a5873e", + "maskedOsSha256": "f292dbe319899fa06e135fb8b0f1c9f8a873c7c2698f2a8481c3044090129bab" + }, + "after": { + "bytes": 1115534, + "osSha256": "ee4292c5f12e457fd9a14c1d0f8e0a5682239f7d289a63f185e2116355a5873e", + "maskedOsSha256": "f292dbe319899fa06e135fb8b0f1c9f8a873c7c2698f2a8481c3044090129bab" + } + }, + { + "moduleIds": [ + "airwindows-chorus", + "quantizer", + "previewvol" + ], + "keepStockFx2": false, + "before": { + "bytes": 1115065, + "osSha256": "cdad7f67f62adc70b827da0c953b0a0e039bc96b806450d1195125eddb29c869", + "maskedOsSha256": "664f54c42e5a4fe3f435612ecb10db35e71ccee3c464ad159c87c074e75f7113" + }, + "after": { + "bytes": 1115065, + "osSha256": "cdad7f67f62adc70b827da0c953b0a0e039bc96b806450d1195125eddb29c869", + "maskedOsSha256": "664f54c42e5a4fe3f435612ecb10db35e71ccee3c464ad159c87c074e75f7113" + } + }, + { + "moduleIds": [ + "airwindows-chorus", + "quantizer", + "previewvol" + ], + "keepStockFx2": true, + "before": { + "bytes": 1115065, + "osSha256": "5deb2d93a6bd80e58b7694e4e04bacee0d9ac270ba23af7181f587f9ad9ae7b6", + "maskedOsSha256": "18d2845a05f217a35801a4c8bfb895ec880840c0f4386639c062ab1e159fa9ce" + }, + "after": { + "bytes": 1115065, + "osSha256": "5deb2d93a6bd80e58b7694e4e04bacee0d9ac270ba23af7181f587f9ad9ae7b6", + "maskedOsSha256": "18d2845a05f217a35801a4c8bfb895ec880840c0f4386639c062ab1e159fa9ce" + } + }, + { + "moduleIds": [ + "tapehead", + "usb-audio-out-tracks-main-cue", + "sidechain-compressor" + ], + "keepStockFx2": false, + "before": { + "bytes": 1115534, + "osSha256": "48e425958db72309549c85f3d3b74850f6d77cfed5469fb48ccf6041f197f2d1", + "maskedOsSha256": "258f9f20979dc936686acb8549f816d62d74069398677cbc273784bebd4046a6" + }, + "after": { + "bytes": 1115534, + "osSha256": "48e425958db72309549c85f3d3b74850f6d77cfed5469fb48ccf6041f197f2d1", + "maskedOsSha256": "258f9f20979dc936686acb8549f816d62d74069398677cbc273784bebd4046a6" + } + }, + { + "moduleIds": [ + "tapehead", + "usb-audio-out-tracks-main-cue", + "sidechain-compressor" + ], + "keepStockFx2": true, + "before": { + "bytes": 1115534, + "osSha256": "65638170e047f4e29f1e69ada88a772d0dce84fd5b87c5beca5958c532f8c5ed", + "maskedOsSha256": "f50ebe3316c771201dda3d8e4ad904cab84d12997ad3bba6ee436da485581618" + }, + "after": { + "bytes": 1115534, + "osSha256": "65638170e047f4e29f1e69ada88a772d0dce84fd5b87c5beca5958c532f8c5ed", + "maskedOsSha256": "f50ebe3316c771201dda3d8e4ad904cab84d12997ad3bba6ee436da485581618" + } + }, + { + "moduleIds": [ + "airwindows-chorus", + "usb-audio-out-tracks-main-cue", + "cc-map", + "sidechain-compressor" + ], + "keepStockFx2": false, + "before": { + "bytes": 1115534, + "osSha256": "54d142fc4c15d8b16c5c1fb5228e9c752531801a4ba64f7f269b8e575199ed3f", + "maskedOsSha256": "01902cab905624c32f662aa89edaf0f5274c212bec350ef7ffb833084168dfad" + }, + "after": { + "bytes": 1115534, + "osSha256": "54d142fc4c15d8b16c5c1fb5228e9c752531801a4ba64f7f269b8e575199ed3f", + "maskedOsSha256": "01902cab905624c32f662aa89edaf0f5274c212bec350ef7ffb833084168dfad" + } + }, + { + "moduleIds": [ + "airwindows-chorus", + "usb-audio-out-tracks-main-cue", + "cc-map", + "sidechain-compressor" + ], + "keepStockFx2": true, + "before": { + "bytes": 1115534, + "osSha256": "7ee1e92000da61bd530cc527b67912e2f718988fb934a5068e0bc758c1dcfa3b", + "maskedOsSha256": "fbd78af45e6055f97483055a0abf20ee526e1d840bc96328f4bea74dc07bc26b" + }, + "after": { + "bytes": 1115534, + "osSha256": "7ee1e92000da61bd530cc527b67912e2f718988fb934a5068e0bc758c1dcfa3b", + "maskedOsSha256": "fbd78af45e6055f97483055a0abf20ee526e1d840bc96328f4bea74dc07bc26b" + } + }, + { + "moduleIds": [ + "analog-bassdrum", + "usb-audio-out-tracks-main-cue", + "previewvol", + "cc-map" + ], + "keepStockFx2": false, + "before": { + "bytes": 1268863, + "osSha256": "e4b6fd2496806a9fc7ff11e620a937d81328a41b5f8af852a5f86efadab688f3", + "maskedOsSha256": "91a1fcd831b651f63c01d1e39c744de41c098d5f300931926225e8af0c5a05e7" + }, + "after": { + "bytes": 1268863, + "osSha256": "e4b6fd2496806a9fc7ff11e620a937d81328a41b5f8af852a5f86efadab688f3", + "maskedOsSha256": "91a1fcd831b651f63c01d1e39c744de41c098d5f300931926225e8af0c5a05e7" + } + }, + { + "moduleIds": [ + "analog-bassdrum", + "usb-audio-out-tracks-main-cue", + "previewvol", + "cc-map" + ], + "keepStockFx2": true, + "before": { + "bytes": 1268863, + "osSha256": "fdbf8c2b169dbcf169004c6645bbb32aa71f24fd18cbbb9e3639b573168f2058", + "maskedOsSha256": "9fa3954c21e591ec1f777b7467799e0cd2e726e7f5b9151d025956c85f377585" + }, + "after": { + "bytes": 1268863, + "osSha256": "fdbf8c2b169dbcf169004c6645bbb32aa71f24fd18cbbb9e3639b573168f2058", + "maskedOsSha256": "9fa3954c21e591ec1f777b7467799e0cd2e726e7f5b9151d025956c85f377585" + } + }, + { + "moduleIds": [ + "euclid", + "airwindows-chorus", + "cc-map", + "recorder-loop-fix" + ], + "keepStockFx2": false, + "before": { + "bytes": 1114986, + "osSha256": "7b2e31d17caacd6edb42f30fe86906689d513089ecab5b689843e5d1d80e9bc3", + "maskedOsSha256": "d67c5ac15c2dc7677a9f8ec158ed52aaea729f0c13577ae9aa56b7039bdebea5" + }, + "after": { + "bytes": 1114986, + "osSha256": "7b2e31d17caacd6edb42f30fe86906689d513089ecab5b689843e5d1d80e9bc3", + "maskedOsSha256": "d67c5ac15c2dc7677a9f8ec158ed52aaea729f0c13577ae9aa56b7039bdebea5" + } + }, + { + "moduleIds": [ + "euclid", + "airwindows-chorus", + "cc-map", + "recorder-loop-fix" + ], + "keepStockFx2": true, + "before": { + "bytes": 1114986, + "osSha256": "725ed3605b680998050f9e5332af762f9c703bec8806449d7391243a2de6b8f9", + "maskedOsSha256": "960237bced08b282e4ba343ba5526aa9db2c1b1db96bd7d8f9a2fba142a7ac9c" + }, + "after": { + "bytes": 1114986, + "osSha256": "725ed3605b680998050f9e5332af762f9c703bec8806449d7391243a2de6b8f9", + "maskedOsSha256": "960237bced08b282e4ba343ba5526aa9db2c1b1db96bd7d8f9a2fba142a7ac9c" + } + }, + { + "moduleIds": [ + "euclid", + "repitch", + "previewvol", + "cc-map" + ], + "keepStockFx2": false, + "before": { + "bytes": 1114986, + "osSha256": "dd4ca2aa8fdff3273abe3dbed6b600d9bf7adf87895e6bca802cb3309383db90", + "maskedOsSha256": "671403e4ffe58cefd579f4a676fcc511e0f5083fe65288424b8795ae0550f7b0" + }, + "after": { + "bytes": 1114986, + "osSha256": "dd4ca2aa8fdff3273abe3dbed6b600d9bf7adf87895e6bca802cb3309383db90", + "maskedOsSha256": "671403e4ffe58cefd579f4a676fcc511e0f5083fe65288424b8795ae0550f7b0" + } + }, + { + "moduleIds": [ + "euclid", + "repitch", + "previewvol", + "cc-map" + ], + "keepStockFx2": true, + "before": { + "bytes": 1114986, + "osSha256": "444476936d2c8082e2771a64c3d340f6b8222386db5536560f34c0e278ad5fbd", + "maskedOsSha256": "16db456c3a8176ebb062fae2985fc651f017c868c9a78d588743bf2c99f66ccd" + }, + "after": { + "bytes": 1114986, + "osSha256": "444476936d2c8082e2771a64c3d340f6b8222386db5536560f34c0e278ad5fbd", + "maskedOsSha256": "16db456c3a8176ebb062fae2985fc651f017c868c9a78d588743bf2c99f66ccd" + } + }, + { + "moduleIds": [ + "euclid", + "tapehead", + "airwindows-chorus", + "sidechain-compressor" + ], + "keepStockFx2": false, + "before": { + "bytes": 1114986, + "osSha256": "30cffdbc3b5d59fbe72e2688ac01ead76f494a419fd9198d92d7d1d391d258e9", + "maskedOsSha256": "f9b11378ac8684cbece7c16e93a5817e625c3d9ecd71b2337890d457c7ac161a" + }, + "after": { + "bytes": 1114986, + "osSha256": "30cffdbc3b5d59fbe72e2688ac01ead76f494a419fd9198d92d7d1d391d258e9", + "maskedOsSha256": "f9b11378ac8684cbece7c16e93a5817e625c3d9ecd71b2337890d457c7ac161a" + } + }, + { + "moduleIds": [ + "euclid", + "tapehead", + "airwindows-chorus", + "sidechain-compressor" + ], + "keepStockFx2": true, + "before": { + "bytes": 1114986, + "osSha256": "7a182359f23fb413b2eca0797390b300269f9ae133d9ed08bee6b2c8a88e4f7d", + "maskedOsSha256": "bd1cad6081cc8472be1418b31d74a377fd11a471794ad44d874be7a8d2c56334" + }, + "after": { + "bytes": 1114986, + "osSha256": "7a182359f23fb413b2eca0797390b300269f9ae133d9ed08bee6b2c8a88e4f7d", + "maskedOsSha256": "bd1cad6081cc8472be1418b31d74a377fd11a471794ad44d874be7a8d2c56334" + } + }, + { + "moduleIds": [ + "miniverb", + "euclid", + "repitch", + "airwindows-chorus", + "bbd" + ], + "keepStockFx2": false, + "before": { + "refused": "payload A: AIR CHORUS overruns the region (2834 > 2724 words)" + }, + "after": { + "refused": "payload A: AIR CHORUS overruns the region (2834 > 2724 words)" + } + }, + { + "moduleIds": [ + "miniverb", + "euclid", + "repitch", + "airwindows-chorus", + "bbd" + ], + "keepStockFx2": true, + "before": { + "refused": "payload A: AIR CHORUS overruns the region (2834 > 2724 words)" + }, + "after": { + "refused": "payload A: AIR CHORUS overruns the region (2834 > 2724 words)" + } + }, + { + "moduleIds": [ + "euclid", + "repitch", + "airwindows-chorus", + "usb-audio-out-tracks-main-cue", + "synth", + "previewvol" + ], + "keepStockFx2": false, + "before": { + "bytes": 1130024, + "osSha256": "8beded839ececa93579a4df81e3a109bdfa8dcd1fc1f00c5faa7f2a6936ab9a1", + "maskedOsSha256": "5ea2c0457d9efb027640765e2b3f88411f4826e3c044c45d15bd8a16526e4588" + }, + "after": { + "bytes": 1130024, + "osSha256": "8beded839ececa93579a4df81e3a109bdfa8dcd1fc1f00c5faa7f2a6936ab9a1", + "maskedOsSha256": "5ea2c0457d9efb027640765e2b3f88411f4826e3c044c45d15bd8a16526e4588" + } + }, + { + "moduleIds": [ + "euclid", + "repitch", + "airwindows-chorus", + "usb-audio-out-tracks-main-cue", + "synth", + "previewvol" + ], + "keepStockFx2": true, + "before": { + "bytes": 1130024, + "osSha256": "2d7210c2ab3c59962df135a84dc021f467afbd71afc74b8de12e9d3a4a4c4637", + "maskedOsSha256": "6d630d09119c6ecc47fba9deac9eecc351d3be6a24d64aec63d2c99248e532aa" + }, + "after": { + "bytes": 1130024, + "osSha256": "2d7210c2ab3c59962df135a84dc021f467afbd71afc74b8de12e9d3a4a4c4637", + "maskedOsSha256": "6d630d09119c6ecc47fba9deac9eecc351d3be6a24d64aec63d2c99248e532aa" + } + }, + { + "moduleIds": [ + "miniverb", + "tapeecho", + "repitch", + "tapehead", + "vector", + "output-matrix" + ], + "keepStockFx2": false, + "before": { + "bytes": 1224396, + "osSha256": "6314595c2f5126b19d123fa72341022a428598c3c6f55ca295a4fa6edda5e4b1", + "maskedOsSha256": "e9836f8c9ef3e946b166936395ac47ca295aadeb680d4b161afc882c682122b3" + }, + "after": { + "bytes": 1224396, + "osSha256": "6314595c2f5126b19d123fa72341022a428598c3c6f55ca295a4fa6edda5e4b1", + "maskedOsSha256": "e9836f8c9ef3e946b166936395ac47ca295aadeb680d4b161afc882c682122b3" + } + }, + { + "moduleIds": [ + "miniverb", + "tapeecho", + "repitch", + "tapehead", + "vector", + "output-matrix" + ], + "keepStockFx2": true, + "before": { + "bytes": 1224396, + "osSha256": "c8cb5ed910614b335e01b04dbe7314b5b892748234c3494c4740f704aa0dc3d8", + "maskedOsSha256": "40272ff72637f9b5c12df87221e75ac8325f76a76c1c2a4cc5a32e04d06a7a28" + }, + "after": { + "bytes": 1224396, + "osSha256": "c8cb5ed910614b335e01b04dbe7314b5b892748234c3494c4740f704aa0dc3d8", + "maskedOsSha256": "40272ff72637f9b5c12df87221e75ac8325f76a76c1c2a4cc5a32e04d06a7a28" + } + }, + { + "moduleIds": [ + "tapehead", + "airwindows-chorus", + "everb", + "usb-audio-out-tracks-main-cue", + "quantizer", + "previewvol" + ], + "keepStockFx2": false, + "before": { + "refused": "payload A: EVERB overruns the region (2805 > 2724 words)" + }, + "after": { + "refused": "payload A: EVERB overruns the region (2805 > 2724 words)" + } + }, + { + "moduleIds": [ + "tapehead", + "airwindows-chorus", + "everb", + "usb-audio-out-tracks-main-cue", + "quantizer", + "previewvol" + ], + "keepStockFx2": true, + "before": { + "refused": "payload A: EVERB overruns the region (2805 > 2724 words)" + }, + "after": { + "refused": "payload A: EVERB overruns the region (2805 > 2724 words)" + } + }, + { + "moduleIds": [ + "euclid", + "airwindows-chorus", + "cc-map", + "sidechain-compressor", + "vector", + "mute-modes", + "recorder-loop-fix" + ], + "keepStockFx2": false, + "before": { + "refused": "hold cave (copy) not free" + }, + "after": { + "refused": "MUTE_MODES table PERSONALIZE labels at 0x400d7c80 not free" + } + }, + { + "moduleIds": [ + "euclid", + "airwindows-chorus", + "cc-map", + "sidechain-compressor", + "vector", + "mute-modes", + "recorder-loop-fix" + ], + "keepStockFx2": true, + "before": { + "refused": "past the stock zero run (or into the long chooser list)" + }, + "after": { + "refused": "MUTE_MODES table PERSONALIZE labels at 0x400d7b80 not free" + } + }, + { + "moduleIds": [ + "miniverb", + "euclid", + "repitch", + "airwindows-chorus", + "playmodes", + "mute-modes", + "recorder-loop-fix" + ], + "keepStockFx2": false, + "before": { + "refused": "past the stock zero run (or into the long chooser list)" + }, + "after": { + "refused": "MUTE_MODES table PERSONALIZE labels at 0x400d7c00 not free" + } + }, + { + "moduleIds": [ + "miniverb", + "euclid", + "repitch", + "airwindows-chorus", + "playmodes", + "mute-modes", + "recorder-loop-fix" + ], + "keepStockFx2": true, + "before": { + "refused": "past the stock zero run (or into the long chooser list)" + }, + "after": { + "refused": "MUTE_MODES table PERSONALIZE labels at 0x400d7b80 not free" + } + }, + { + "moduleIds": [ + "quantizer", + "previewvol", + "cc-map", + "sidechain-compressor", + "playmodes", + "recorder-loop-fix", + "output-matrix" + ], + "keepStockFx2": false, + "before": { + "bytes": 1121385, + "osSha256": "9bf354ac1c0c93237e47ddb21ca941711b9b19695330f224fd194b4ead6d628a", + "maskedOsSha256": "2b239b7c2edc2040cf089afe02c63165aaaa5e17137a38ab2d762f045df03df0" + }, + "after": { + "bytes": 1121385, + "osSha256": "9bf354ac1c0c93237e47ddb21ca941711b9b19695330f224fd194b4ead6d628a", + "maskedOsSha256": "2b239b7c2edc2040cf089afe02c63165aaaa5e17137a38ab2d762f045df03df0" + } + }, + { + "moduleIds": [ + "quantizer", + "previewvol", + "cc-map", + "sidechain-compressor", + "playmodes", + "recorder-loop-fix", + "output-matrix" + ], + "keepStockFx2": true, + "before": { + "bytes": 1121385, + "osSha256": "7936058f3168dc099bd33e4d899593be47061c43ddc816507d93fcffa32e05f8", + "maskedOsSha256": "12bfe6472425afbec42dd0c65d7ad859c525ba433c14850436c46b2777fec0e5" + }, + "after": { + "bytes": 1121385, + "osSha256": "7936058f3168dc099bd33e4d899593be47061c43ddc816507d93fcffa32e05f8", + "maskedOsSha256": "12bfe6472425afbec42dd0c65d7ad859c525ba433c14850436c46b2777fec0e5" + } + }, + { + "moduleIds": [ + "euclid", + "airwindows-chorus", + "everb", + "bbd", + "usb-audio-out-tracks-main-cue", + "synth", + "playmodes", + "mute-modes" + ], + "keepStockFx2": false, + "before": { + "refused": "label formatters do not fit: EUCLID slot 5 needs 356 B; the clone window ends at 0x400d7c3c and the overflow run at 0x400d2ce0 (next free 0x400d2ce0)" + }, + "after": { + "refused": "label formatters do not fit: EUCLID slot 5 needs 356 B; the clone window ends at 0x400d7c3c and the overflow run at 0x400d2ce0 (next free 0x400d2ce0)" + } + }, + { + "moduleIds": [ + "euclid", + "airwindows-chorus", + "everb", + "bbd", + "usb-audio-out-tracks-main-cue", + "synth", + "playmodes", + "mute-modes" + ], + "keepStockFx2": true, + "before": { + "refused": "label formatters do not fit: EUCLID slot 4 needs 352 B; the clone window ends at 0x400d7bbc and the overflow run at 0x400d2ce0 (next free 0x400d2ce0)" + }, + "after": { + "refused": "label formatters do not fit: EUCLID slot 4 needs 352 B; the clone window ends at 0x400d7bbc and the overflow run at 0x400d2ce0 (next free 0x400d2ce0)" + } + }, + { + "moduleIds": [ + "tapeecho", + "euclid", + "airwindows-chorus", + "everb", + "previewvol", + "sidechain-compressor", + "playmodes", + "mute-modes", + "recorder-loop-fix" + ], + "keepStockFx2": false, + "before": { + "refused": "seek-bind counter cave not free" + }, + "after": { + "refused": "MUTE_MODES table PERSONALIZE labels at 0x400d7c80 not free" + } + }, + { + "moduleIds": [ + "tapeecho", + "euclid", + "airwindows-chorus", + "everb", + "previewvol", + "sidechain-compressor", + "playmodes", + "mute-modes", + "recorder-loop-fix" + ], + "keepStockFx2": true, + "before": { + "refused": "past the stock zero run (or into the long chooser list)" + }, + "after": { + "refused": "MUTE_MODES table PERSONALIZE labels at 0x400d7c00 not free" + } + }, + { + "moduleIds": [ + "miniverb", + "repitch", + "airwindows-chorus", + "everb", + "bbd", + "usb-audio-out-tracks-main-cue", + "cc-map", + "playmodes", + "recorder-loop-fix", + "output-matrix" + ], + "keepStockFx2": false, + "before": { + "refused": "past the stock zero run (or into the long chooser list)" + }, + "after": { + "refused": "payload A: EVERB overruns the region (4027 > 2724 words)" + } + }, + { + "moduleIds": [ + "miniverb", + "repitch", + "airwindows-chorus", + "everb", + "bbd", + "usb-audio-out-tracks-main-cue", + "cc-map", + "playmodes", + "recorder-loop-fix", + "output-matrix" + ], + "keepStockFx2": true, + "before": { + "refused": "past the stock zero run (or into the long chooser list)" + }, + "after": { + "refused": "payload A: EVERB overruns the region (4027 > 2724 words)" + } + }, + { + "moduleIds": [ + "miniverb", + "tapeecho", + "euclid", + "repitch", + "airwindows-chorus", + "bbd", + "usb-audio-out-tracks-main-cue", + "previewvol", + "cc-map", + "sidechain-compressor" + ], + "keepStockFx2": false, + "before": { + "refused": "label formatters do not fit: EUCLID slot 8 needs 290 B; the clone window ends at 0x400d7c3c and the overflow run at 0x400d2ce0 (next free 0x400d2bc8)" + }, + "after": { + "refused": "label formatters do not fit: EUCLID slot 8 needs 290 B; the clone window ends at 0x400d7c3c and the overflow run at 0x400d2ce0 (next free 0x400d2bc8)" + } + }, + { + "moduleIds": [ + "miniverb", + "tapeecho", + "euclid", + "repitch", + "airwindows-chorus", + "bbd", + "usb-audio-out-tracks-main-cue", + "previewvol", + "cc-map", + "sidechain-compressor" + ], + "keepStockFx2": true, + "before": { + "refused": "label formatters do not fit: EUCLID slot 8 needs 290 B; the clone window ends at 0x400d7bbc and the overflow run at 0x400d2ce0 (next free 0x400d2bc8)" + }, + "after": { + "refused": "label formatters do not fit: EUCLID slot 8 needs 290 B; the clone window ends at 0x400d7bbc and the overflow run at 0x400d2ce0 (next free 0x400d2bc8)" + } + }, + { + "moduleIds": [ + "euclid", + "airwindows-chorus", + "everb", + "usb-audio-out-tracks-main-cue", + "quantizer", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "mute-modes", + "output-matrix" + ], + "keepStockFx2": false, + "before": { + "refused": "CC->FX2/FX1 page-2 cave + dispatch repoint: 724 B fits neither the clone window (from 0x400d7a80) nor the overflow run" + }, + "after": { + "refused": "CC->FX2/FX1 page-2 cave + dispatch repoint: 724 B fits neither the clone window (from 0x400d7a80) nor the overflow run" + } + }, + { + "moduleIds": [ + "euclid", + "airwindows-chorus", + "everb", + "usb-audio-out-tracks-main-cue", + "quantizer", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "mute-modes", + "output-matrix" + ], + "keepStockFx2": true, + "before": { + "refused": "CC->FX2/FX1 page-2 cave + dispatch repoint: 724 B fits neither the clone window (from 0x400d7a80) nor the overflow run" + }, + "after": { + "refused": "CC->FX2/FX1 page-2 cave + dispatch repoint: 724 B fits neither the clone window (from 0x400d7a80) nor the overflow run" + } + }, + { + "moduleIds": [ + "miniverb", + "tapeecho", + "tapehead", + "everb", + "bbd", + "usb-audio-out-tracks-main-cue", + "quantizer", + "previewvol", + "cc-map", + "vector", + "output-matrix" + ], + "keepStockFx2": false, + "before": { + "refused": "payload A: EVERB overruns the region (3659 > 2724 words)" + }, + "after": { + "refused": "payload A: EVERB overruns the region (3659 > 2724 words)" + } + }, + { + "moduleIds": [ + "miniverb", + "tapeecho", + "tapehead", + "everb", + "bbd", + "usb-audio-out-tracks-main-cue", + "quantizer", + "previewvol", + "cc-map", + "vector", + "output-matrix" + ], + "keepStockFx2": true, + "before": { + "refused": "payload A: EVERB overruns the region (3659 > 2724 words)" + }, + "after": { + "refused": "payload A: EVERB overruns the region (3659 > 2724 words)" + } + }, + { + "moduleIds": [ + "tapeecho", + "euclid", + "tapehead", + "airwindows-chorus", + "everb", + "usb-audio-out-tracks-main-cue", + "quantizer", + "previewvol", + "sidechain-compressor", + "vector", + "mute-modes" + ], + "keepStockFx2": false, + "before": { + "refused": "MUTE_MODES mm_softmute at 0x400d7800 not free" + }, + "after": { + "refused": "MUTE_MODES mm_softmute at 0x400d7800 not free" + } + }, + { + "moduleIds": [ + "tapeecho", + "euclid", + "tapehead", + "airwindows-chorus", + "everb", + "usb-audio-out-tracks-main-cue", + "quantizer", + "previewvol", + "sidechain-compressor", + "vector", + "mute-modes" + ], + "keepStockFx2": true, + "before": { + "refused": "MUTE_MODES mm_softmute at 0x400d7800 not free" + }, + "after": { + "refused": "MUTE_MODES mm_softmute at 0x400d7800 not free" + } + }, + { + "moduleIds": [ + "euclid", + "repitch", + "airwindows-chorus", + "bbd", + "quantizer", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "recorder-loop-fix", + "output-matrix" + ], + "keepStockFx2": false, + "before": { + "refused": "past the stock zero run (or into the long chooser list)" + }, + "after": { + "refused": "spacing cave: 286 B fits neither the clone window (from 0x400d7b80) nor the overflow run" + } + }, + { + "moduleIds": [ + "euclid", + "repitch", + "airwindows-chorus", + "bbd", + "quantizer", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "recorder-loop-fix", + "output-matrix" + ], + "keepStockFx2": true, + "before": { + "refused": "past the stock zero run (or into the long chooser list)" + }, + "after": { + "refused": "spacing cave: 286 B fits neither the clone window (from 0x400d7b80) nor the overflow run" + } + }, + { + "moduleIds": [ + "miniverb", + "tapeecho", + "euclid", + "repitch", + "airwindows-chorus", + "everb", + "bbd", + "usb-audio-out-tracks-main-cue", + "cc-map", + "vector", + "playmodes", + "mute-modes" + ], + "keepStockFx2": false, + "before": { + "refused": "MUTE_MODES mm_menu at 0x400d7b80 not free" + }, + "after": { + "refused": "MUTE_MODES mm_menu at 0x400d7b80 not free" + } + }, + { + "moduleIds": [ + "miniverb", + "tapeecho", + "euclid", + "repitch", + "airwindows-chorus", + "everb", + "bbd", + "usb-audio-out-tracks-main-cue", + "cc-map", + "vector", + "playmodes", + "mute-modes" + ], + "keepStockFx2": true, + "before": { + "refused": "MUTE_MODES mm_menu at 0x400d7b80 not free" + }, + "after": { + "refused": "MUTE_MODES mm_menu at 0x400d7b80 not free" + } + }, + { + "moduleIds": [ + "miniverb", + "tapeecho", + "euclid", + "repitch", + "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "usb-audio-out-tracks-main-cue", + "quantizer", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "output-matrix" + ], + "keepStockFx2": false, + "before": { + "refused": "SCALE QUANTIZER qzc at 0x400d7b00 not free" + }, + "after": { + "refused": "SCALE QUANTIZER qzc at 0x400d7b00 not free" + } + }, + { + "moduleIds": [ + "miniverb", + "tapeecho", + "euclid", + "repitch", + "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "usb-audio-out-tracks-main-cue", + "quantizer", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "output-matrix" + ], + "keepStockFx2": true, + "before": { + "refused": "REPITCH repitch at 0x400d7a00 not free" + }, + "after": { + "refused": "REPITCH repitch at 0x400d7a00 not free" + } + } + ] +} diff --git a/sdk/machines/octatrack/module-adapters/standalone-recipes.json b/sdk/machines/octatrack/module-adapters/standalone-recipes.json index b74171ffa..27d97de32 100644 --- a/sdk/machines/octatrack/module-adapters/standalone-recipes.json +++ b/sdk/machines/octatrack/module-adapters/standalone-recipes.json @@ -205,10 +205,10 @@ "src/engine/coldfire-elf.ts": "319ca0d835d1b0c602c8f4b06990016d0ebfe246cedbfc596cea3cc7adfe3cd2", "src/engine/module-build.ts": "8f547a4be722cfe691fa21d0c4b52c724b3353ba2560c2562b56579f0abe5f3b", "src/catalog/modules.ts": "e268c6d42e4d5093ab943aed5cf2263a72e6d5e1a7ac0e72efc8a7ec6c62b89b", - "src/engine/assets/dsp-packages.json": "99a3df52ce3b1ee01a472f66b28521cfca512296adc5ccb000223e6931af1eaf", - "src/engine/assets/descriptor-recipes.json": "35174150ffa2c338bb6c425de6931b2ef406c854ad0f60e2e19c3a5d054cfbfe", - "src/engine/assets/menu-recipes.json": "3ed7ada406ae8feeedf6a7e91e060e1ad01610915d9c6d16f98933dd29730a89", - "src/engine/assets/rom-packages.json": "c2d843f555348f071a99c0b8d57fdea9986d9663ab5025efa23e18b875fb3c6f", + "src/engine/assets/dsp-packages.json": "86bd35960c9ce78badcab617155933c1c523ec442212702c023867f258a41a04", + "src/engine/assets/descriptor-recipes.json": "6642eea46a6ceeb48c53cec6787de2fe4de898173aa9dbbcae3ad81fa2e72eef", + "src/engine/assets/menu-recipes.json": "88051f6758779c4ec9953cb0295a9aac39cea28811da4004bd7d5ee06d6e4c8d", + "src/engine/assets/rom-packages.json": "838c0f9123dcbfdfbb6924462fc8406d36c73861f4c8f2932e06972a598b116a", "upstream/elekloader/link.py": "2d950474a5bd9d54e62747bfe7f9be30a37a7857df24cd9594e2198b912204f7", "upstream/elekloader/dsp.py": "9486d64eecee023670b716f6ae854996da02ee7c1a0efd5361cd963c756dbc69", "upstream/elekloader/patch.py": "13cc7457aa9a9e6d8f40cd5add4d40b69a3fcedd2cc5f3d65fd1b9841cc8bd9f", @@ -383,10 +383,10 @@ "src/engine/coldfire-elf.ts": "319ca0d835d1b0c602c8f4b06990016d0ebfe246cedbfc596cea3cc7adfe3cd2", "src/engine/module-build.ts": "8f547a4be722cfe691fa21d0c4b52c724b3353ba2560c2562b56579f0abe5f3b", "src/catalog/modules.ts": "e268c6d42e4d5093ab943aed5cf2263a72e6d5e1a7ac0e72efc8a7ec6c62b89b", - "src/engine/assets/dsp-packages.json": "99a3df52ce3b1ee01a472f66b28521cfca512296adc5ccb000223e6931af1eaf", - "src/engine/assets/descriptor-recipes.json": "35174150ffa2c338bb6c425de6931b2ef406c854ad0f60e2e19c3a5d054cfbfe", - "src/engine/assets/menu-recipes.json": "3ed7ada406ae8feeedf6a7e91e060e1ad01610915d9c6d16f98933dd29730a89", - "src/engine/assets/rom-packages.json": "c2d843f555348f071a99c0b8d57fdea9986d9663ab5025efa23e18b875fb3c6f", + "src/engine/assets/dsp-packages.json": "86bd35960c9ce78badcab617155933c1c523ec442212702c023867f258a41a04", + "src/engine/assets/descriptor-recipes.json": "6642eea46a6ceeb48c53cec6787de2fe4de898173aa9dbbcae3ad81fa2e72eef", + "src/engine/assets/menu-recipes.json": "88051f6758779c4ec9953cb0295a9aac39cea28811da4004bd7d5ee06d6e4c8d", + "src/engine/assets/rom-packages.json": "838c0f9123dcbfdfbb6924462fc8406d36c73861f4c8f2932e06972a598b116a", "upstream/elekloader/link.py": "2d950474a5bd9d54e62747bfe7f9be30a37a7857df24cd9594e2198b912204f7", "upstream/elekloader/dsp.py": "9486d64eecee023670b716f6ae854996da02ee7c1a0efd5361cd963c756dbc69", "upstream/elekloader/patch.py": "13cc7457aa9a9e6d8f40cd5add4d40b69a3fcedd2cc5f3d65fd1b9841cc8bd9f", diff --git a/sdk/octabam/tools/build/build_bus.py b/sdk/octabam/tools/build/build_bus.py index 041349138..693329e80 100644 --- a/sdk/octabam/tools/build/build_bus.py +++ b/sdk/octabam/tools/build/build_bus.py @@ -245,6 +245,21 @@ def plain_slots(m) -> tuple[int, ...]: if p.formatter is Formatter.PLAIN and p.active is not False) +def floating_cave_at(cave_top: int, ovf_top: int, need: int, cave_limit: int) -> int | None: + """Where a floating cave of `need` bytes goes: the next 128-byte boundary + in the clone window if it fits whole below `cave_limit`, else the next + 4-byte boundary in the overflow run, else None (it fits neither). The + browser composer places requested caves by the same rule + (src/engine/requested-modules.ts, requestedCaves); the window's overrun + check used to refuse first here, so the two refused one selection for + different reasons (module:verify, 15 Oct 2026).""" + at = (cave_top + 0x7f) & ~0x7f + if at + need <= cave_limit: + return at + at = (ovf_top + 3) & ~3 + return at if at + need <= OVERFLOW_RUN_END else None + + PLAIN_SLOTS = {m.key: plain_slots(m) for m in _CLONED if plain_slots(m)} BIPOLAR_SLOTS = {m.key: m.bipolar_slots for m in _CLONED if m.bipolar_slots} _DEF_ASM = {m.key: m.dsp.asm for m in _CLONED} @@ -1228,7 +1243,16 @@ def _link(src, at, cpu, work, sections=(), defsyms=(), incdir=None, asdefs=()): for _c, _b in _plan: _floating = _c.cave_addr is None if _floating: - _c = dataclasses.replace(_c, cave_addr=(_cave_top + 0x7f) & ~0x7f) + # Past the clone window: the overflow run, before any other check + # (floating_cave_at says why). + _need = max(len(_b), _c.reserve) + _at2 = floating_cave_at(_cave_top, _ovf_top, _need, cave_limit) + if _at2 is None: + sys.exit(f"{_c.label}: {_need} B fits neither the clone window " + f"(from 0x{(_cave_top + 0x7f) & ~0x7f:08x}) nor the overflow run") + _c = dataclasses.replace(_c, cave_addr=_at2) + if not CLONE_BASE <= _at2 < cave_limit: + print(f" {_c.label}: past the clone window, placed in the overflow run") # ⚠️ A CAVE MAY LIVE OUTSIDE THE CLONE WINDOW. The region from # CLONE_BASE to the chooser list is crowded -- six descriptor clones # and fifteen label formatters left 84 bytes on the rig -- and diff --git a/sdk/tests/test_infrastructure_regressions.py b/sdk/tests/test_infrastructure_regressions.py index 6b2103b14..c81a7d99c 100644 --- a/sdk/tests/test_infrastructure_regressions.py +++ b/sdk/tests/test_infrastructure_regressions.py @@ -141,6 +141,37 @@ def test_cli_over_budget_has_unsuccessful_exit(self): with patch.object(sys, 'argv', ['cycle_count', '--json']): exec(compile(text, 'cycle_count.py', 'exec'), {'__name__': '__main__', '__file__': str(ROOT / 'tools/build/cycle_count.py')}) +class FloatingCavePlacement(unittest.TestCase): + """A floating cave past the clone window goes to the overflow run, as the browser places it.""" + def setUp(self): + names = {'OVERFLOW_RUN', 'OVERFLOW_RUN_END', 'floating_cave_at'} + body = [n for n in tree.body if getattr(n, 'name', None) in names or + isinstance(n, ast.Assign) and any(isinstance(t, ast.Name) and t.id in names for t in n.targets)] + self.ns = {} + exec(compile(ast.Module(body=body, type_ignores=[]), 'floating_cave_fixture', 'exec'), self.ns) + + def test_window_first_then_overflow_then_refusal(self): + at, run, end, limit = self.ns['floating_cave_at'], self.ns['OVERFLOW_RUN'], self.ns['OVERFLOW_RUN_END'], 0x400d7c3c + self.assertEqual(at(0x400d7001, run, 0x80, limit), 0x400d7080) # next 128-byte boundary + self.assertEqual(at(0x400d7b00, run, 0x13c, limit), 0x400d7b00) # ends exactly at the limit + self.assertEqual(at(0x400d7b00, run + 2, 0x13d, limit), run + 4) # one byte over: overflow, 4-aligned + self.assertEqual(at(0x400d7c80, run, 4, limit), run) # window cursor already past the limit + self.assertEqual(at(0x400d7c01, end - 0x10, 0x10, limit), end - 0x10) # the overflow's last bytes + self.assertIsNone(at(0x400d7b00, end - 0x10, 0x200, limit)) # fits neither: the build refuses + + def test_browser_uses_the_same_overflow_run(self): + menus = (ROOT.parents[1] / 'src/engine/module-menus.ts').read_text(encoding='utf-8') + caves = (ROOT.parents[1] / 'src/engine/requested-modules.ts').read_text(encoding='utf-8') + self.assertIn('OVERFLOW_START = 0x%x, OVERFLOW_END = 0x%x' % (self.ns['OVERFLOW_RUN'], self.ns['OVERFLOW_RUN_END']), menus) + # requestedCaves: window at the next 128 bytes when the cave fits whole, else the overflow at the next 4. + self.assertIn('let address = Math.ceil(cursor / 128) * 128', caves) + self.assertIn('if (!inside) { address = Math.ceil(overflow / 4) * 4', caves) + + def test_the_window_assert_no_longer_runs_before_the_overflow(self): + source = (ROOT / 'tools/build/build_bus.py').read_text(encoding='utf-8') + loop = source[source.index(' for _c, _b in _plan:'):] + self.assertLess(loop.index('floating_cave_at('), loop.index('past the stock zero run (or into the long chooser list)')) + class ToolSyntax(unittest.TestCase): def test_all_vendored_python_tools_parse(self): import ast @@ -149,7 +180,7 @@ def test_all_vendored_python_tools_parse(self): ast.parse(source.read_text(encoding='utf-8'), str(source)) # Builder extensions after the Poly8 record, oldest first. Each proves its own exact before/after transition. -EXTENSIONS = ['air-chorus-split-builder.json', 'plain-formatter-builder.json'] +EXTENSIONS = ['air-chorus-split-builder.json', 'plain-formatter-builder.json', 'floating-cave-overflow-builder.json'] class SelectiveImport(unittest.TestCase): def assert_current_builder_identity(self, path, historical): @@ -203,6 +234,23 @@ def test_plain_formatter_fix_preserves_native_builds(self): for row in record['selections']: self.assertEqual(row['before'], row['after']) + def test_floating_cave_overflow_keeps_every_image_and_refuses_no_less(self): + import json + record = json.loads((ROOT.parent / 'infrastructure-verification/floating-cave-overflow-builder.json').read_text()) + self.assertEqual(record['kind'], 'floating-cave-overflow-builder-regression') + self.assertEqual(set(record['builderAdaptations']), {'tools/build/build_bus.py'}) + for path, change in record['builderAdaptations'].items(): + self.assert_extension_holds('floating-cave-overflow-builder.json', path, change['after']) + changed = [row for row in record['selections'] if row['before'] != row['after']] + self.assertGreaterEqual(len(record['selections']) - len(changed), 100) + self.assertTrue(any('bytes' in row['after'] for row in record['selections'])) + for row in changed: + # Only refusals change, and only their reason: no image moves and nothing refused now builds. + self.assertIn('refused', row['before']) + self.assertIn('refused', row['after']) + self.assertTrue(any('past the stock zero run' in row['before']['refused'] for row in changed)) + self.assertFalse(any('past the stock zero run' in row['after'].get('refused', '') for row in record['selections'])) + def test_poly8_builder_preserves_current_main_without_poly8(self): import json record = json.loads((ROOT.parent / 'infrastructure-verification/poly8-shared-builder.json').read_text()) diff --git a/src/engine/assets/analog-bd-composition-proofs.json b/src/engine/assets/analog-bd-composition-proofs.json index f9dd07539..3e6a4a297 100644 --- a/src/engine/assets/analog-bd-composition-proofs.json +++ b/src/engine/assets/analog-bd-composition-proofs.json @@ -4,11 +4,11 @@ "sourceSha256": "164f31224bf61181e3f50e7dec40df9afcae5b16dbf6e4c0d0cc5e986af0a84e", "staticStock": true, "builderSources": { - "tools/build/build_bus.py": "d8e1548844601f9b69646152134d78ddc646accd6e6f50f3353b2c62b3cfcc56", + "tools/build/build_bus.py": "c70c79b6829e264e881f4a8d0284cb77d070ebe4fcdbbccf633fd33f110a1ac9", "tools/build/ab_image.py": "c4573d4e0715961f7081dc1d5a0639d42ac63313ccc9e50a0737ac0685e2fc14", "tools/remix/loader.S": "32e09fd813ddc65511390faaebc3b86d963b2700f304b35cdb1ec48f90449287" }, - "moduleSourceTreeSha256": "7a7297bec8f287b3fe0f9bb7e20bed1047f4f7c9b9a98021cad73016b431d7a7", + "moduleSourceTreeSha256": "64fd1a0dfb1de9340b715c7617adbe62ef1125811f67639a378ff312c72dae6f", "packing": null, "proofs": [ { diff --git a/src/engine/assets/bootstrap-package.json b/src/engine/assets/bootstrap-package.json index a1b89afb7..8eeffcac9 100644 --- a/src/engine/assets/bootstrap-package.json +++ b/src/engine/assets/bootstrap-package.json @@ -16,7 +16,7 @@ "reserveBytes": 10487808, "uncachedAlias": 134217728, "stageAlignment": 4096, - "sourceCommit": "e61274dd6e20304fb5b71d3320c4746f4af7ebeb", + "sourceCommit": "3079ee96c912cf7d71a94cbc64cd6480d2c737da", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", diff --git a/src/engine/assets/coldfire-packages.json b/src/engine/assets/coldfire-packages.json index 3c8f54e26..28ab877aa 100644 --- a/src/engine/assets/coldfire-packages.json +++ b/src/engine/assets/coldfire-packages.json @@ -208,7 +208,7 @@ "sha256": "ccffbf72d45358bde585760b9230c668bf38ebf412ab23efc73732cf96024dca" } ], - "sourceCommit": "e61274dd6e20304fb5b71d3320c4746f4af7ebeb", + "sourceCommit": "3079ee96c912cf7d71a94cbc64cd6480d2c737da", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", diff --git a/src/engine/assets/descriptor-recipes.json b/src/engine/assets/descriptor-recipes.json index 2306718cb..12be890c3 100644 --- a/src/engine/assets/descriptor-recipes.json +++ b/src/engine/assets/descriptor-recipes.json @@ -3745,7 +3745,7 @@ ] } ], - "sourceCommit": "e61274dd6e20304fb5b71d3320c4746f4af7ebeb", + "sourceCommit": "3079ee96c912cf7d71a94cbc64cd6480d2c737da", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", diff --git a/src/engine/assets/dsp-packages.json b/src/engine/assets/dsp-packages.json index cce3ab195..024032d5a 100644 --- a/src/engine/assets/dsp-packages.json +++ b/src/engine/assets/dsp-packages.json @@ -2,7 +2,7 @@ "schema": 1, "revision": "b8deefc88b2c3e5f3c6158e364eb741df1924e1d", "license": "/licenses/octabam.txt", - "sourceCommit": "e61274dd6e20304fb5b71d3320c4746f4af7ebeb", + "sourceCommit": "3079ee96c912cf7d71a94cbc64cd6480d2c737da", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", diff --git a/src/engine/assets/menu-recipes.json b/src/engine/assets/menu-recipes.json index 410ade6be..1743dffe4 100644 --- a/src/engine/assets/menu-recipes.json +++ b/src/engine/assets/menu-recipes.json @@ -1296,7 +1296,7 @@ "caveLimit": 1074625596 } ], - "sourceCommit": "e61274dd6e20304fb5b71d3320c4746f4af7ebeb", + "sourceCommit": "3079ee96c912cf7d71a94cbc64cd6480d2c737da", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", diff --git a/src/engine/assets/module-build.json b/src/engine/assets/module-build.json index 70220f569..cb309b6dc 100644 --- a/src/engine/assets/module-build.json +++ b/src/engine/assets/module-build.json @@ -1,9 +1,9 @@ { "schemaVersion": 1, "kind": "source-packages", - "sourceCommit": "e61274dd6e20304fb5b71d3320c4746f4af7ebeb", + "sourceCommit": "3079ee96c912cf7d71a94cbc64cd6480d2c737da", "nativeRevision": "b8deefc88b2c3e5f3c6158e364eb741df1924e1d", - "sourceTreeSha256": "7a7297bec8f287b3fe0f9bb7e20bed1047f4f7c9b9a98021cad73016b431d7a7", + "sourceTreeSha256": "64fd1a0dfb1de9340b715c7617adbe62ef1125811f67639a378ff312c72dae6f", "compilerSha256": "270df5cf8dcef3eef2c5758e6239dd6e9ef4de291b0f1efb96e1da16531d0b30", "moduleVersions": { "spectrum": "0.1.1-experimental", @@ -35,47 +35,47 @@ "files": { "dsp-packages.json": { "bytes": 75421, - "sha256": "99a3df52ce3b1ee01a472f66b28521cfca512296adc5ccb000223e6931af1eaf" + "sha256": "86bd35960c9ce78badcab617155933c1c523ec442212702c023867f258a41a04" }, "resident-dsp.json": { "bytes": 24965, - "sha256": "79404e12ceff249e920649b70a1bea78a62a7be9464a0236d144512445fe2eb5" + "sha256": "3f723777b757d965a45d0c00da5ee8df51b0458292909f795d442119085bb684" }, "coldfire-packages.json": { "bytes": 353200, - "sha256": "9767d14ee29ae44520439b421790d52c5ef5f5ef8b26238eb4f52cdababdc7a8" + "sha256": "89f6f4c628bcfa7694e8a0822b25b6ef6aece15e2a2e3cdd39f59f91abc48ba2" }, "rom-packages.json": { "bytes": 25351, - "sha256": "c2d843f555348f071a99c0b8d57fdea9986d9663ab5025efa23e18b875fb3c6f" + "sha256": "838c0f9123dcbfdfbb6924462fc8406d36c73861f4c8f2932e06972a598b116a" }, "bootstrap-package.json": { "bytes": 3699, - "sha256": "ce097f409fd9721aef2a95cde0f61c4793e238232abd6ff86b14062f61845355" + "sha256": "11c0200eda8d753e8b2d68f34ac8180821b322729f14e5edb913efe37f66e81b" }, "menu-recipes.json": { "bytes": 34507, - "sha256": "3ed7ada406ae8feeedf6a7e91e060e1ad01610915d9c6d16f98933dd29730a89" + "sha256": "88051f6758779c4ec9953cb0295a9aac39cea28811da4004bd7d5ee06d6e4c8d" }, "descriptor-recipes.json": { "bytes": 71916, - "sha256": "35174150ffa2c338bb6c425de6931b2ef406c854ad0f60e2e19c3a5d054cfbfe" + "sha256": "6642eea46a6ceeb48c53cec6787de2fe4de898173aa9dbbcae3ad81fa2e72eef" }, "platform-writes.json": { "bytes": 17641, - "sha256": "e8b5120fafbc2c8d4e6907fc40e049ab57bdbcdaa69cf308496e732643772887" + "sha256": "70839440786a1590d44de69096969a6e66ab490c1db9cf80905703d6248f04f1" }, "requested-packages.json": { "bytes": 1065039, - "sha256": "06e571a0edc7b123475bd99b33e17f49bc60644719f053908b6c0bc91d417137" + "sha256": "cd51b32140621a8833df435d972b568c361bfaa5eab44aa6180a35277c2ddc7e" }, "utility-packages.json": { "bytes": 12827, - "sha256": "1326e18a300e7ea47bc0c01fbac32cd9f484a08c26eaee70cf061facd5fd9ad2" + "sha256": "3781f4e4f0d6b6162402048165b337289d4655a3dbfd3dcc6d096fc68290ddda" }, "usb-audio-packages.json": { "bytes": 737469, - "sha256": "3041ec1321e55bcd7d79e702ddbd66a85400e5f7d3b9541cd9b294410603a5cd" + "sha256": "af2fd557ff4460509a1acf1b1912a238d71d5e9dc81e64dac96c50e12a131adb" } }, "approval": null, diff --git a/src/engine/assets/platform-writes.json b/src/engine/assets/platform-writes.json index cc718830d..6009f3a4d 100644 --- a/src/engine/assets/platform-writes.json +++ b/src/engine/assets/platform-writes.json @@ -533,7 +533,7 @@ "sha256": "5d44ce960d87d22af41166c529bfa5e84c0427b8e4afb3d6d2ca8d880f5dcfd7" } ], - "sourceCommit": "e61274dd6e20304fb5b71d3320c4746f4af7ebeb", + "sourceCommit": "3079ee96c912cf7d71a94cbc64cd6480d2c737da", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", diff --git a/src/engine/assets/requested-packages.json b/src/engine/assets/requested-packages.json index a89f67ae4..ab89960ee 100644 --- a/src/engine/assets/requested-packages.json +++ b/src/engine/assets/requested-packages.json @@ -1,7 +1,7 @@ { "schema": 1, "revision": "b8deefc88b2c3e5f3c6158e364eb741df1924e1d", - "sourceCommit": "e61274dd6e20304fb5b71d3320c4746f4af7ebeb", + "sourceCommit": "3079ee96c912cf7d71a94cbc64cd6480d2c737da", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", diff --git a/src/engine/assets/resident-dsp.json b/src/engine/assets/resident-dsp.json index d3d3d9a92..269ca433f 100644 --- a/src/engine/assets/resident-dsp.json +++ b/src/engine/assets/resident-dsp.json @@ -335,7 +335,7 @@ ] } ], - "sourceCommit": "e61274dd6e20304fb5b71d3320c4746f4af7ebeb", + "sourceCommit": "3079ee96c912cf7d71a94cbc64cd6480d2c737da", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", diff --git a/src/engine/assets/rom-packages.json b/src/engine/assets/rom-packages.json index 84cf6b236..e4bca7da0 100644 --- a/src/engine/assets/rom-packages.json +++ b/src/engine/assets/rom-packages.json @@ -399,7 +399,7 @@ "sha256": "fdba0ffd31b7932ceb1ded3bde9a976b6f148ae96fc73a4efc4fedf6fb692341" } ], - "sourceCommit": "e61274dd6e20304fb5b71d3320c4746f4af7ebeb", + "sourceCommit": "3079ee96c912cf7d71a94cbc64cd6480d2c737da", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", diff --git a/src/engine/assets/usb-audio-packages.json b/src/engine/assets/usb-audio-packages.json index ad13fdba3..a0ec45a35 100644 --- a/src/engine/assets/usb-audio-packages.json +++ b/src/engine/assets/usb-audio-packages.json @@ -553,7 +553,7 @@ } ] }, - "sourceCommit": "e61274dd6e20304fb5b71d3320c4746f4af7ebeb", + "sourceCommit": "3079ee96c912cf7d71a94cbc64cd6480d2c737da", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", diff --git a/src/engine/assets/utility-packages.json b/src/engine/assets/utility-packages.json index 5ad4a955b..238566fc4 100644 --- a/src/engine/assets/utility-packages.json +++ b/src/engine/assets/utility-packages.json @@ -3,7 +3,7 @@ "kind": "authored-utility-packages", "stockRead": false, "revision": "b8deefc88b2c3e5f3c6158e364eb741df1924e1d", - "sourceCommit": "e61274dd6e20304fb5b71d3320c4746f4af7ebeb", + "sourceCommit": "3079ee96c912cf7d71a94cbc64cd6480d2c737da", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", From 0b8f9ca85aa4b70ffa81d104842fe28d060adbff Mon Sep 17 00:00:00 2001 From: Nathaniel Pawelczyk Date: Tue, 13 Oct 2026 11:32:25 -0500 Subject: [PATCH 02/20] Output Matrix: label the LEV box with the track's destination In MATRIX the LEV box now always shows where the track plays (MN, PHN, ...) instead of LEV, not only while CUE is held. A detour at 0x4004dcfa replaces the plain LEV label push; the level value while turning, XLV, FUNC's MAIN view, NORMAL and STUDIO stay stock. Gate 117/117; LCD captures in TESTING.md. Co-Authored-By: Claude Opus 5.5 --- sdk/octabam/modules/output-matrix/README.md | 4 +- sdk/octabam/modules/output-matrix/TESTING.md | 24 +++++++ sdk/octabam/modules/output-matrix/manifest.py | 7 ++- sdk/octabam/modules/output-matrix/matrix.s | 63 ++++++++++++++----- .../modules/output-matrix/octamod.module.json | 4 +- 5 files changed, 81 insertions(+), 21 deletions(-) diff --git a/sdk/octabam/modules/output-matrix/README.md b/sdk/octabam/modules/output-matrix/README.md index 5f5f6aa7b..07caf03d9 100644 --- a/sdk/octabam/modules/output-matrix/README.md +++ b/sdk/octabam/modules/output-matrix/README.md @@ -22,7 +22,7 @@ The module has no effect slot and no knob of its own. | --- | --- | --- | | PROJECT > CONTROL > AUDIO | OUT CFG (stock: CUE CFG) | NORMAL, STUDIO or MATRIX | | Any audio track | LEVEL | The track's level, the same on every output it plays on | -| Any audio track | CUE + LEVEL | The track's outputs, shown in the LEV box | +| Any audio track | CUE + LEVEL | The track's outputs, always shown as the LEV box's label | | MIXER | MIX | The PHONES output level | Destinations, in the order CUE + LEVEL steps through them: MN, CUE, PHN, M+C, M+P, C+P, ALL, MNL, MNR, CUL, CUR, PHL, PHR, OFF. @@ -95,7 +95,7 @@ The module changes nothing until you choose MATRIX, except the box title in chan - **Checked:** NORMAL, STUDIO and TRACK 8 still select as stock. 2. **In MATRIX, CUE + LEVEL chooses the track's outputs instead of setting a cue level.** - **Why:** MATRIX has a single level per track, so the cue level has nothing to do. STUDIO already uses this gesture for the second output pair, so it stays where musicians expect it. A new gesture (FUNC + LEVEL is MAIN's) was considered, but every LEVEL combination is taken. - - **What you see:** holding CUE labels the LEV box with the track's destination (MN, PHN, …) in place of CUE, so you can read it without turning; both bars show the level, solid on every track. STUDIO shades the master track's second bar (it has no cue there); in MATRIX the master may go to CUE or PHONES, so it is solid too. + - **What you see:** the LEV box is labelled with the track's destination (MN, PHN, …) in place of LEV, and in place of CUE while CUE is held, so each track's routing is always in view; the value shown while turning LEVEL is still the level, and XLV (scene editing) and FUNC's MAIN view are stock. Both bars show the level, solid on every track. STUDIO shades the master track's second bar (it has no cue there); in MATRIX the master may go to CUE or PHONES, so it is solid too. - **Also:** CC 47 in and out carries the destination number (0–13). CUE + TRACK does nothing, as in STUDIO. A destination change fades the track out on its old outputs and in on the new ones over one 16-sample frame each (0.3 ms), the ramp stock uses for mute, so it clicks no more than muting a playing track does. - **Checked:** NORMAL and STUDIO's CUE + LEVEL store exactly what stock stores. FUNC + TRACK mute and solo silence a track on every output it uses. 3. **In MATRIX, MIX sets the PHONES output level instead of the headphone blend.** diff --git a/sdk/octabam/modules/output-matrix/TESTING.md b/sdk/octabam/modules/output-matrix/TESTING.md index 4dfde8833..a6c4c9ab5 100644 --- a/sdk/octabam/modules/output-matrix/TESTING.md +++ b/sdk/octabam/modules/output-matrix/TESTING.md @@ -329,3 +329,27 @@ Modwerk's packager and browser builder had no path for DSP code reached only thr - **Run.** `ot_emu --dsp` on the OUTMTX13 MAIN OS (`eca1152f…ae16`): CUE CFG = MATRIX, MASTER TRACK on, every track on ALL (re-poked every 1,000 frames, since each pattern loads its Part). The firmware's pattern select queued A01 → A02 → A03 → A04 → A01; the playing-pattern byte, dumped every 5,000 frames, shows each. - **Result.** 90,000 frames (32.65 s): run ended REACHED; 0 of 69,120,000 DSP read-back words late; MAIN, CUE and PHONES ring words all carry audio; the mixdown at most 4,240 instructions per 16-sample frame, the qualification worst case. + +## The destination as the LEV box's label (13 Oct 2026, emulator only) + +**Request.** Show each track's destination all the time, not only while CUE is held. + +**Change.** A detour at `0x4004dcfa`, the push of the plain LEV label in stock's STUDIO path, draws the track's destination name (MN, PHN, …) there in MATRIX, centred as with CUE held (`dest_label`, shared with the CUE-held path). The value shown while turning LEVEL is still the level. XLV (`0x460d1694` set, which pushes its label at `0x4004dcf2` and skips this site), FUNC's MAIN view, NORMAL, STUDIO and MIDI tracks are untouched. + +**Checks**, `scripts/capture-module-ui.py` on a static build (OUTPUT MATRIX + the stock effects, SPRING REV given up), MKII panel, empty card: + +| State | LEV box label | +| --- | --- | +| NORMAL, T1 | LEV (stock) | +| MATRIX, T1, fresh switch | MN | +| CUE held | MN; after LEVEL +8, PHN | +| CUE released, LEVEL −10 | the level while turning (98), as stock | +| FUNC held | +0 (MAIN level), as stock | +| T2 | MN | +| back to T1 | PHN | +| SCENE A held | XLV, as stock; MN again on release | +| T8 | MN | + +- **Gate.** `verify.py` on this build: 117/117 (it does not read the LCD). + +Not tested: hardware, MKI. diff --git a/sdk/octabam/modules/output-matrix/manifest.py b/sdk/octabam/modules/output-matrix/manifest.py index 3fa09c63f..239e391e4 100644 --- a/sdk/octabam/modules/output-matrix/manifest.py +++ b/sdk/octabam/modules/output-matrix/manifest.py @@ -20,8 +20,9 @@ - AUDIO page: draw 0x400651a8, key handler 0x40065430 (menu-state table 0x400cbdd4), label/getter/action tables 0x400b277c..0x400b27ab. - CUE + LEVEL: 0x4004e98c (in MATRIX it steps a destination code and - hands it to the stock store at 0x4004ea10). LEV box with CUE held: - 0x4004dd64 (label), 0x4004ddb4 (the name), 0x4004df8c (the bars). + hands it to the stock store at 0x4004ea10). LEV box: 0x4004dcfa (the + plain label, LEV -> the destination); with CUE held 0x4004dd64 (label), + 0x4004ddb4 (the name); 0x4004df8c (the bars). - Level page builder 0x4000d1a6 (detour 0x4000d1ea, after $29 is stored): in MATRIX the MAIN level word ($29) is rewritten as unity, so each track's ramped MAIN gain is its own level x XVOL; the @@ -90,6 +91,8 @@ pad_to=8), Detour(0x4004DD64, stock_guard(0x4004dd64, 6, "4a0e8b026de2be316135a324da1ec8860f198cd3d26d2c6e1477772403baa3f0"), UNIT, "lev_box_cue", "LEV box with CUE held: in MATRIX, labelled with the track's destination"), + Detour(0x4004DCFA, stock_guard(0x4004dcfa, 6, "6b112717da66c861a652a9b72284300e00956b293a5c6425031cee49333d91f1"), + UNIT, "lev_box_lev", "LEV box: in MATRIX, labelled with the track's destination instead of LEV"), Detour(0x4004DDB4, stock_guard(0x4004ddb4, 18, "599199441e3ed6b14d404d9165c6960c172372cb3afb1138eb987a85056f356c"), UNIT, "lev_box_val", "LEV box with CUE held: in MATRIX, the destination's name", pad_to=18), diff --git a/sdk/octabam/modules/output-matrix/matrix.s b/sdk/octabam/modules/output-matrix/matrix.s index 0ba0b6e63..d448e83bb 100644 --- a/sdk/octabam/modules/output-matrix/matrix.s +++ b/sdk/octabam/modules/output-matrix/matrix.s @@ -7,7 +7,7 @@ | This file: the AUDIO page's third CUE CFG row and its YES actions (with | the cue-byte conversion on a mode switch), the project load and the | power-up CS1 check (pokes in the manifest), CUE + LEVEL as the destination -| chooser and its LEV box, and the level page that carries the bus levels, +| chooser, the LEV box labelled with the destination, and the level page that carries the bus levels, | the eight destinations and the declick to the DSP (matrix_mix.asm). | Tested under the ColdFire port only: see TESTING.md. @@ -452,13 +452,25 @@ part_cue: moveq #0,%d3 | a cue level, not a code: MAIN 1: rts +| a0 = the current track's destination name, d0 = its x in the LEV box: +| 45 for three letters, as stock's label; 47 for two, centred as the +| value is while turning (glyphs advance 4 pixels). Uses d1, d3. +dest_label: + bsr.s part_cue | d3 = the track's destination + lea dest_names:l,%a0 + movea.l (%a0,%d3.l*4),%a0 + moveq #45,%d0 + tst.b 2(%a0) + bne.s 1f + moveq #47,%d0 +1: rts + | ---- LEV box with CUE held (jmp detour, displaced: pea 0x400b7b98 "CUE") -| MATRIX labels the box with the current track's destination, so holding -| CUE shows it without a turn. Stock draws the label from x 45 (the -| arguments pushed at 0x4004dd6a); a name is centred there as the value is -| while turning: glyphs advance 4 pixels, so a two-letter name starts at -| 47. This path pushes the same six arguments and joins at the jsr. d3 is -| free: stock loads it after the draw. +| MATRIX labels the box with the current track's destination, as without +| CUE (lev_box_lev). Stock draws the label from x 45 (the arguments pushed +| at 0x4004dd6a); dest_label centres a two-letter name. This path pushes +| the same six arguments and joins at the jsr. d3 is free: stock loads it +| after the draw. .global lev_box_cue lev_box_cue: mvs.b CUE_CFG,%d0 @@ -466,23 +478,44 @@ lev_box_cue: beq.s 1f pea 0x400b7b98 jmp 0x4004dd6a -1: bsr.s part_cue | d3 = the track's destination - lea dest_names:l,%a0 - movea.l (%a0,%d3.l*4),%a0 +1: bsr.s dest_label move.l %a0,-(%sp) | the string moveq #-1,%d1 move.l %d1,-(%sp) | the limit, as stock moveq #0x38,%d1 move.l %d1,-(%sp) - moveq #45,%d0 | x: three letters, as stock's - tst.b 2(%a0) - bne.s 2f - moveq #47,%d0 | two letters, centred -2: move.l %d0,-(%sp) + move.l %d0,-(%sp) | x pea 0x400bf10a | the surface pea 0x400ba876 | the font jmp 0x4004dd82 | the stock jsr 0x40012bd8 +| ---- LEV box, plain (jmp detour, displaced: pea 0x400b47d1 "LEV") +| Stock STUDIO labels the box LEV, or XLV while 0x460d1694 is set (that +| path pushes its label at 0x4004dcf2 and skips this site). MATRIX labels +| it with the track's destination, as with CUE held, so the routing is +| always in view; the value below stays the level. Same six arguments, +| then stock's jsr through a0 (0x40012bd8, loaded at 0x4004dce4, which +| dest_label clobbers). d3 is free: stock sets it at 0x4004de76 before +| any read. + .global lev_box_lev +lev_box_lev: + mvs.b CUE_CFG,%d0 + cmpi.l #2,%d0 + beq.s 1f + pea 0x400b47d1 + jmp 0x4004dd00 +1: bsr.s dest_label + move.l %a0,-(%sp) | the string + moveq #-1,%d1 + move.l %d1,-(%sp) | the limit, as stock + moveq #0x38,%d1 + move.l %d1,-(%sp) + move.l %d0,-(%sp) | x + pea 0x400bf10a | the surface + pea 0x400ba876 | the font + lea 0x40012bd8,%a0 + jmp 0x4004dd18 | the stock jsr (%a0) + | ---- its value (jmp detour, displaced: the push of d4, "%d" and the buffer | and the jsr to sprintf; 0x4004ddc6 goes on to draw it). MATRIX prints the | destination's name; the same 12 bytes stay pushed for the stock pop. diff --git a/sdk/octabam/modules/output-matrix/octamod.module.json b/sdk/octabam/modules/output-matrix/octamod.module.json index 7aafd2949..04fd75b4b 100644 --- a/sdk/octabam/modules/output-matrix/octamod.module.json +++ b/sdk/octabam/modules/output-matrix/octamod.module.json @@ -25,7 +25,7 @@ ], "usage": [ "PROJECT > CONTROL > AUDIO: select OUT CFG > MATRIX and press YES.", - "On a track, hold CUE: the LEV box shows the destination. Turn LEVEL to change it.", + "On a track, the LEV box is labelled with the destination (MN, PHN, ...). Hold CUE and turn LEVEL to change it.", "In the MIXER, MIX (labelled PHN) sets the PHONES output level. Choose NORMAL or STUDIO again to return to stock behaviour." ] }, @@ -304,7 +304,7 @@ "steps": [ "Include Output Matrix in your build.", "Press PROJ (MKII), open CONTROL > AUDIO, move right into the OUT CFG box, select MATRIX and press YES.", - "Select an audio track, hold CUE and turn LEVEL to pick its outputs; the LEV box shows the destination.", + "Select an audio track, hold CUE and turn LEVEL to pick its outputs; the LEV box's label always shows the destination.", "Open the MIXER: MIX, labelled PHN, sets the headphone output level." ], "screenshots": [ From a9d71715e53f88b4085738c37198d8d8f1ea73fe Mon Sep 17 00:00:00 2001 From: Nathaniel Pawelczyk Date: Wed, 14 Oct 2026 23:25:10 -0500 Subject: [PATCH 03/20] Output Matrix gate: compare runs over the same samples from transport start Run.rms took each capture's own last 2,000 samples, so two runs that captured a different number of frames after transport start were compared one sample apart (DIR AB 127 failed at +0.057% in combined image OMXATS27; lined up from transport start the two match to 26 LSB). Checks that compare runs (MATRIX MAIN vs stock, the level law, mono vs stereo, DIR) now trim every capture to the shortest before taking the window. Tolerances unchanged. Co-Authored-By: Claude Opus 5.5 --- sdk/octabam/modules/output-matrix/verify.py | 30 ++++++++++++++------- 1 file changed, 21 insertions(+), 9 deletions(-) diff --git a/sdk/octabam/modules/output-matrix/verify.py b/sdk/octabam/modules/output-matrix/verify.py index eba09952a..d92aeb7ae 100644 --- a/sdk/octabam/modules/output-matrix/verify.py +++ b/sdk/octabam/modules/output-matrix/verify.py @@ -145,10 +145,23 @@ def words(prefix): return [v[f * n:(f + 1) * n] for f in range(start, len(v) // n)] @staticmethod - def rms(frames, last=2000): - tail = frames[-last:] + def rms(frames, last=2000, end=None): + """Per word, over the `last` samples before `end` (frames counted from + transport start; default the capture's own end).""" + end = len(frames) if end is None else end + tail = frames[end - last:end] return [math.sqrt(sum(f[c] ** 2 for f in tail) / len(tail)) for c in range(8)] + @classmethod + def aligned(cls, *prefixes): + """rms of captures that are compared with each other, over the SAME + samples from transport start: two runs can capture a frame more or + less after it, and each capture's own last 2,000 would then sit a + sample apart (+0.057% on DIR AB 127 in a combined image).""" + caps = [cls.words(p) for p in prefixes] + end = min(len(c) for c in caps) + return [cls.rms(c, end=end) for c in caps] + def main(): for what, path in (("image", IMAGE), ("port", EMU), ("fixture", FIXTURE)): @@ -185,24 +198,23 @@ def go(tag, args, **kw): res = {t: j.result() for t, j in jobs.items()} print("verify output-matrix: routing") - normal = run.rms(run.words(res["normal"])) + normal, main0, cue1, ph2 = run.aligned(res["normal"], res["c0"], res["c1"], res["c2"]) for c in range(14): r = run.rms(run.words(res[f"c{c}"])) want = expected_words(c) check(all((r[w] > 1000) == (w in want) for w in range(8)), f"code {c:2d}: signal on words {sorted(w for w in range(8) if r[w] > 1000)}, expected {sorted(want)}") - main0 = run.rms(run.words(res["c0"])) check(all(abs(main0[w] - normal[w]) <= 5e-4 * normal[w] for w in (2, 3)), f"MATRIX MAIN {main0[2]:.0f}/{main0[3]:.0f} = stock path {normal[2]:.0f}/{normal[3]:.0f}") - cue1, ph2 = run.rms(run.words(res["c1"])), run.rms(run.words(res["c2"])) ratio = (127 / 64) ** 2 # the fixture: MAIN 127, CUE 64, MIX 64 check(abs(main0[2] / cue1[0] / ratio - 1) < 0.01 and abs(main0[2] / ph2[4] / ratio - 1) < 0.01, f"MAIN/CUE {main0[2] / cue1[0]:.3f}, MAIN/PHONES {main0[2] / ph2[4]:.3f}, law (127/64)^2 = {ratio:.3f}") print("verify output-matrix: mono, MKII, master, mute, inputs") - st = run.rms(run.words(res["st_tone"]))[2] - for c, word in zip(range(7, 13), (2, 3, 0, 1, 4, 5)): - m = run.rms(run.words(res[f"mono{c}"]))[word] + st, *monos = run.aligned(res["st_tone"], *(res[f"mono{c}"] for c in range(7, 13))) + st = st[2] + for c, word, mono in zip(range(7, 13), (2, 3, 0, 1, 4, 5), monos): + m = mono[word] check(abs(m / st - 1) < 2e-3, f"code {c} on word {word}: {m:.0f}, stereo per side {st:.0f}") mk = run.rms(run.words(res["mkii"])) check(mk[4] == 0 and mk[5] > 1000, f"MKII PHL: words 4/5 = {mk[4]:.0f}/{mk[5]:.0f} (left on 5)") @@ -211,7 +223,7 @@ def go(tag, args, **kw): check(mp[2] == 0 and mp[4] > 1000, f"MASTER, T1 PHNS: MAIN {mp[2]:.0f}, PHONES {mp[4]:.0f}") mu = run.rms(run.words(res["mute"])) check(max(mu[:6]) == 0, f"T1 on ALL, muted: {[round(x) for x in mu[:6]]}") - dn, dr = run.rms(run.words(res["dir_normal"])), run.rms(run.words(res["dir_matrix"])) + dn, dr = run.aligned(res["dir_normal"], res["dir_matrix"]) check(abs(dr[2] / dn[2] - 1) < 5e-4, f"DIR AB 127: MATRIX MAIN {dr[2]:.0f}, stock path {dn[2]:.0f}") print("verify output-matrix: declick") From ac94037b83e114f645d9e8c702af3b1f552fa566 Mon Sep 17 00:00:00 2001 From: Nathaniel Pawelczyk Date: Thu, 15 Oct 2026 01:13:53 -0500 Subject: [PATCH 04/20] Output Matrix: core-0 code 727+42 -> 657+14 words, same output One bus-ramp routine through Y pointers (the first frame runs it twice), pointer-based per-sample ramps and end copy, OR-ed input gain tests, direct address-register moves, a parallel move per bus level, and the destination table packed three list numbers to a word. Sample-identical to the previous build in 26 ot_emu scenarios; worst-case mixdown 4,240 -> 4,194 executed instructions per frame; gate 117/117. Co-Authored-By: Claude Opus 5.5 --- sdk/octabam/modules/output-matrix/TESTING.md | 18 ++ sdk/octabam/modules/output-matrix/manifest.py | 12 +- .../modules/output-matrix/matrix_mix.asm | 191 +++++++----------- 3 files changed, 99 insertions(+), 122 deletions(-) diff --git a/sdk/octabam/modules/output-matrix/TESTING.md b/sdk/octabam/modules/output-matrix/TESTING.md index a6c4c9ab5..e9bc9cd38 100644 --- a/sdk/octabam/modules/output-matrix/TESTING.md +++ b/sdk/octabam/modules/output-matrix/TESTING.md @@ -353,3 +353,21 @@ Modwerk's packager and browser builder had no path for DSP code reached only thr - **Gate.** `verify.py` on this build: 117/117 (it does not read the LCD). Not tested: hardware, MKI. + +## Smaller core-0 code (15 Oct 2026, emulator only) + +P on core 0 goes from 727 words of code + a 42-word table (769) to 657 + 14 (671), with the same output, sample for sample. + +- **Changes.** The three bus-ramp routines are one, run through Y pointers; the first-frame start is a second pass of it, which stores the targets as the current values. The per-sample bus ramps and the end-of-frame copy use Y pointers instead of absolute moves. The inputs' cue and DIR gain tests OR the four words together. Address registers move straight to and from Y. Each bus level takes `mpy y0,x0,a b,x0` (the parallel move writes x0 after the multiply reads it). The destination table packs each code's three list numbers into one word (bits 3..0 CUE, 7..4 MAIN, 11..8 PHONES). Hooks, patch sites, Y layout and the phones hook are unchanged. +- **Same output.** One ot_emu run per scenario on the static build before (`77415bac…5757`) and after (`2ce3d977…32c8`), every core-0 ring word compared from transport start: all 14 codes, five codes with MAIN, CUE and PHONES levels moving, MASTER on with T1 on ALL and with T8 on PHL, MKII with PHL and with levels moving, DIR with levels moving, and destination changes during playback (26 runs). 0 differing samples in all of them. The worst-case runs below also capture identical audio files. +- **Cost.** `--dsp-stopwatch 0:0x257:0x2d5`, the qualification's worst case (every track on ALL, MAIN/CUE/MIX changed every other frame from frame 60 to 120, all eight tracks to PHN at frame 130), executed instructions per frame: + +| MASTER | Before mean / max | After mean / max | +| --- | --- | --- | +| on | 2,651 / 4,240 | 2,589 / 4,194 | +| off | 2,386 / 3,947 | 2,350 / 3,933 | + + The headphone crossfade (`0:0x30a:0x35a`) is unchanged, at most 192. The first frame and a frame that rebuilds the lists run a few more instructions, inside the maxima above. +- **Gate.** `verify.py` on the new build: 117/117. + +Not tested: hardware. diff --git a/sdk/octabam/modules/output-matrix/manifest.py b/sdk/octabam/modules/output-matrix/manifest.py index 239e391e4..2b22c446b 100644 --- a/sdk/octabam/modules/output-matrix/manifest.py +++ b/sdk/octabam/modules/output-matrix/manifest.py @@ -48,9 +48,10 @@ UNIT = "matrix" # The destination codes, in CUE + LEVEL order (matrix.s dest_names), as the -# DSP's code table: per code, for CUE, MAIN and PHONES in turn, the number -# of the list the track joins, 3 x bus + kind (kind 1 stereo, 2 mono left, -# 3 mono right), or 0 when the code does not reach that bus. +# DSP's code table: a word per code holding, for CUE, MAIN and PHONES in bits +# 3..0, 7..4 and 11..8, the number of the list the track joins, 3 x bus + +# kind (kind 1 stereo, 2 mono left, 3 mono right), or 0 when the code does +# not reach that bus. _KIND = {"off": 0, "st": 1, "L": 2, "R": 3} _CODES = ( # (CUE, MAIN, PHONES) ("off", "st", "off"), # 0 MAIN @@ -68,8 +69,9 @@ ("off", "off", "R"), # 12 PHR ("off", "off", "off"), # 13 OFF ) -CODE_TABLE = tuple(3 * bus + _KIND[k] if _KIND[k] else 0 - for code in _CODES for bus, k in enumerate(code)) +CODE_TABLE = tuple(sum((3 * bus + _KIND[k] if _KIND[k] else 0) << 4 * bus + for bus, k in enumerate(code)) + for code in _CODES) MODULE = Module( name="output-matrix", diff --git a/sdk/octabam/modules/output-matrix/matrix_mix.asm b/sdk/octabam/modules/output-matrix/matrix_mix.asm index c737e8603..325430b75 100644 --- a/sdk/octabam/modules/output-matrix/matrix_mix.asm +++ b/sdk/octabam/modules/output-matrix/matrix_mix.asm @@ -83,39 +83,37 @@ omx_stockm: omx_active: and #>$400,a ; MASTER TRACK, from the record word move a1,y:>$c06 - move r2,x0 ; the inputs, as stock pointed them - move x0,y:>$c0c + move r2,y:>$c0c ; the inputs, as stock pointed them move x:>$209,r3 move #>$1f8,n3 move (r3)+n3 - move r3,x0 - move x0,y:>$c07 ; the master's input, this frame + move r3,y:>$c07 ; the master's input, this frame ; ---- bus factors: target (level/128)^2, a ramp from the current value + move #>$c08,r5 ; where omx_ramp stores the targets + move #>1,y0 ; one pass move y:>$c0b,a ; RAM starts dirty on the unit: first move #>$5a5a5a,x0 ; time, start the ramps at the targets cmp x0,a ; and force the lists to build - beq omx_inited + beq omx_rpass move x0,y:>$c0b move #>$ffffff,x0 move x0,y:>$c0e - move x:(r6+$28),a - bsr omx_sq - move a,y:>$c00 - move x:(r6+$37),a - bsr omx_sq - move a,y:>$c01 - move x:(r6+$38),a - bsr omx_sq - move a,y:>$c02 -omx_inited: + move #>$c00,r5 ; two passes: the first stores the + move #>2,y0 ; targets as the current values (steps 0) +omx_rpass: + do y0,omx_rdone clr b ; b1 collects the three steps (or) + move #>$c00,r4 ; the current values + move #>$c03,r7 ; the steps move x:(r6+$28),a - bsr omx_ramp0 + bsr omx_ramp move x:(r6+$37),a - bsr omx_ramp1 + bsr omx_ramp move x:(r6+$38),a - bsr omx_ramp2 + bsr omx_ramp + move #>$c08,r5 ; a second pass: the real targets +omx_rdone: move b1,y:>$c0d ; the lists' build uses b ; ---- the lists, when the destinations or MASTER TRACK changed @@ -159,19 +157,12 @@ omx_f3: beq omx_f4a bset #3,a omx_f4a: - move y:>$48,b - tst b - bne omx_f4b - move y:>$49,b - tst b - bne omx_f4b - move y:>$174,b ; $40 + 20*15 + 8 - tst b - bne omx_f4b - move y:>$175,b - tst b + move y:>$48,b ; the cue gains, samples 0 and 15, + move y:>$49,x0 ; or-ed: zero only when all four are + or x0,b y:>$174,x0 ; $40 + 20*15 + 8 + or x0,b y:>$175,x0 + or x0,b beq omx_f5 -omx_f4b: bset #3,a bset #9,a omx_f5: @@ -198,18 +189,11 @@ omx_f7: bset #4,a omx_f8: move y:>$52,b ; bit 7: the inputs' DIR gains, sample 0 - tst b - bne omx_f9b - move y:>$53,b - tst b - bne omx_f9b - move y:>$17e,b ; and sample 15: $4a + 20*15 + 8 - tst b - bne omx_f9b - move y:>$17f,b - tst b + move y:>$53,x0 + or x0,b y:>$17e,x0 ; and sample 15: $4a + 20*15 + 8 + or x0,b y:>$17f,x0 + or x0,b beq omx_fdir0 -omx_f9b: bset #7,a omx_fdir0: move a1,x0 ; bit 8: the fast path, when MAIN stereo @@ -226,8 +210,7 @@ omx_ffast: move x0,x1 ; ---- the 16 samples - move y:>$c0c,x0 - move x0,r2 ; inputs: AB L, AB R, CD L, CD R a sample + move y:>$c0c,r2 ; inputs: AB L, AB R, CD L, CD R a sample move x:>$204,r0 ; T1's block; track k at +32k, L/R a sample move #$ff,m0 ; the eight blocks wrap, as stock walks them move #$1f,n0 @@ -316,8 +299,7 @@ omx_nocuein: asl #2,a,a asl #2,b,b move a,x0 - mpy y0,x0,a - move b,x0 + mpy y0,x0,a b,x0 ; x0 is read before the move writes it mpy y0,x0,b asl #2,a,a asl #2,b,b @@ -368,12 +350,10 @@ omx_mainin: omx_nodir: btst #5,x1 ; MASTER TRACK? bcc omx_mainout - move y:>$c07,x0 ; T1-T7 and the inputs, unscaled, into - move x0,r3 ; the master's input as stock writes it - move a,x:(r3)+ + move y:>$c07,r3 ; T1-T7 and the inputs, unscaled, into + move a,x:(r3)+ ; the master's input as stock writes it move b,x:(r3)+ - move r3,x0 - move x0,y:>$c07 + move r3,y:>$c07 clr a ; MAIN is T8's own MAIN routing clr b move #>$c1d,r7 @@ -403,8 +383,7 @@ omx_mainout: asl #2,a,a asl #2,b,b move a,x0 - mpy y0,x0,a - move b,x0 + mpy y0,x0,a b,x0 ; x0 is read before the move writes it mpy y0,x0,b asl #2,a,a asl #2,b,b @@ -452,8 +431,7 @@ omx_pnomono: asl #2,a,a asl #2,b,b move a,x0 - mpy y0,x0,a - move b,x0 + mpy y0,x0,a b,x0 ; x0 is read before the move writes it mpy y0,x0,b asl #2,a,a asl #2,b,b @@ -463,73 +441,50 @@ omx_phdone: btst #6,x1 ; the bus ramps, unless steady bcs omx_noramp - move y:>$c00,a - move y:>$c03,x0 - add x0,a - move a,y:>$c00 - move y:>$c01,a - move y:>$c04,x0 + move #>$c00,r4 ; current values + move #>$c03,r7 ; their steps + move y:(r7)+,x0 + move y:(r4),a + add x0,a y:(r7)+,x0 + move a,y:(r4)+ + move y:(r4),a + add x0,a y:(r7)+,x0 + move a,y:(r4)+ + move y:(r4),a add x0,a - move a,y:>$c01 - move y:>$c02,a - move y:>$c05,x0 - add x0,a - move a,y:>$c02 + move a,y:(r4) omx_noramp: lua (r5+$b),r5 ; next sample's MAIN gains (r5 was at slot 9) lua (r2+4),r2 omx_samples: - move y:>$c08,x0 ; the ramps end on their targets - move x0,y:>$c00 - move y:>$c09,x0 - move x0,y:>$c01 - move y:>$c0a,x0 - move x0,y:>$c02 + move #>$c08,r4 ; the ramps end on their targets + move #>$c00,r7 + move y:(r4)+,x0 + move x0,y:(r7)+ + move y:(r4)+,x0 + move x0,y:(r7)+ + move y:(r4)+,x0 + move x0,y:(r7)+ move #>$ffffff,m0 move ssh,x0 ; drop the hook's return jmp $2d5 -; One bus's ramp from its page word in a: target, step (target - current) -; / 16; bit 0 of b set when the stored step is not 0. -omx_ramp0: +; One bus's ramp from its page word in a: the target to y:(r5)+, the step +; (target - current y:(r4)+) / 16 to y:(r7)+; bit 0 of b set when the +; stored step is not 0. +omx_ramp: bsr omx_sq - move a,y:>$c08 - move y:>$c00,x0 - sub x0,a - asr #4,a,a - move a,y:>$c03 - move y:>$c03,a ; reloaded: a0 still holds mpy's low bits, - tst a ; and tst sees all 56 - beq omx_rs0 - bset #0,b ; this level moves -omx_rs0: - rts -omx_ramp1: - bsr omx_sq - move a,y:>$c09 - move y:>$c01,x0 - sub x0,a - asr #4,a,a - move a,y:>$c04 - move y:>$c04,a ; reloaded: a0 still holds mpy's low bits, - tst a ; and tst sees all 56 - beq omx_rs1 - bset #0,b ; this level moves -omx_rs1: - rts -omx_ramp2: - bsr omx_sq - move a,y:>$c0a - move y:>$c02,x0 + move a,y:(r5)+ + move y:(r4)+,x0 sub x0,a asr #4,a,a - move a,y:>$c05 - move y:>$c05,a ; reloaded: a0 still holds mpy's low bits, + move a,y:(r7) + move y:(r7)+,a ; reloaded: a0 still holds mpy's low bits, tst a ; and tst sees all 56 - beq omx_rs2 + beq omx_rs bset #0,b ; this level moves -omx_rs2: +omx_rs: rts ; a = (level/128)^2 from a page word in a (top byte: the transfer's tag). @@ -540,8 +495,9 @@ omx_sq: rts ; The nine lists from the eight codes on the page at r6. Table at the -; ptable: per code, for CUE, MAIN and PHONES, the list's number 1-9 (3 x bus -; + kind, kind 1 stereo, 2 mono L, 3 mono R) or 0. List w's length is at +; ptable, a word per code: for CUE, MAIN and PHONES in bits 3..0, 7..4 and +; 11..8, the list's number 1-9 (3 x bus + kind, kind 1 stereo, 2 mono L, +; 3 mono R) or 0. List w's length is at ; $c10 + w and its entries at $c18 + 8w. With MASTER TRACK on, T8 (listed ; last) leaves the MAIN lists for $c1a-$c1c. omx_build: @@ -556,7 +512,7 @@ omx_build: do #12,omx_bclr move b,y:(r4)+ omx_bclr: - move #>$fab1e0,r3 ; the code table: 14 codes x 3 words + move #>$fab1e0,r3 ; the code table: 14 codes, a word each move #>$cb1,x1 ; T1's y address bsr omx_codes move y1,a @@ -604,19 +560,18 @@ omx_codes: move b1,x0 ; so reload it clean before shifting left move x0,b move #>13,y0 ; above 13 (dirty RAM, never the ColdFire): - cmp y0,b ; OFF, so the table read stays in its 14 rows + cmp y0,b ; OFF, so the table read stays in its 14 words ble omx_cok move y0,b move y0,x0 omx_cok: - asl #1,b,b ; 2c - add x0,b ; 3c - move b1,n2 + move x0,n2 move r3,r2 - move (r2)+n2 ; this code: CUE, MAIN, PHONES list numbers + move (r2)+n2 + move p:(r2),y0 ; this code: CUE, MAIN, PHONES list numbers do #3,omx_cbus - move p:(r2)+,b ; w, 0 = not routed to this bus - tst b + move y0,b + and #>$f,b ; w, 0 = not routed to this bus beq omx_cnext move b1,n4 move #>$c10,r4 @@ -631,7 +586,9 @@ omx_cok: add #1,b move b1,y:(r4) omx_cnext: - nop + move y0,b ; the next bus's number + lsr #4,b + move b1,y0 omx_cbus: move x1,b ; the next track's y address add #2,b From d0f2866e57d626fd66d566da6ba0c5c2d8cfd397 Mon Sep 17 00:00:00 2001 From: Nathaniel Pawelczyk Date: Fri, 16 Oct 2026 09:00:07 -0500 Subject: [PATCH 05/20] Output Matrix 0.1.1-experimental on the USB base: controller re-port, re-pins, base and packages rebuilt The LEV box label (new detour lev_box_lev at 0x4004dcfa, shared dest_label) and the smaller core-0 DSP (657 + 14 words instead of 727 + 42) change sources the USB base pins. Controller (stock_hook_controllers.py): the label moves the CUE-held path's stock-equal span from offset 58 to 38 of lev_box_cue, and lev_box_lev repeats the same 14 bytes (stock 0x4003ffd8, same SHA-256), so STOCK_COPIES gets both entries (six copies). controller_sites picks up the new detour: 20 sites. The package's stock-free scan passes (10 shared non-zero bytes, fails at 12). Re-pinned manifest.py, matrix_mix.asm and matrix.s in resident_dsp.py, stock_hook_controllers.py and test_analog_bd_part_fence.py. The resident Matrix unit is 675 words (was 773). Base rebuilt from main a59677ee with the beta flags (--write; main's committed base reproduced byte for byte here first): package a9b5fe45, identity 3e3e3de1, browser .bin = build_core.py .bin ca8b457f. The lease entries did not move, so Analog BD's and Sidechain's package bytes are unchanged; packages relinked, the other base-bound packages only change requiredBase. New trust rows for Output Matrix's package e2df2fbf. Version 0.1.1-experimental (catalog, manifest), changelog entries. The qualification record stays 0.1.0's until the USB hardware report exists. Co-Authored-By: Claude Opus 5.5 --- CHANGELOG.md | 2 + .../output-matrix/0.1.0-experimental.mwrm | Bin 3580 -> 0 bytes .../output-matrix/0.1.1-experimental.mwrm | Bin 0 -> 3740 bytes sdk/catalog.json | 2 +- sdk/machines/octatrack/base-binding.json | 6 +- .../module-adapters/STOCK_HOOK_CONTROLLERS.md | 2 +- .../module-adapters/controller-policies.json | 36 +- .../octatrack/module-adapters/resident_dsp.py | 4 +- .../module-adapters/stock_hook_controllers.py | 7 +- .../modules/output-matrix/octamod.module.json | 20 +- sdk/tests/test_analog_bd_part_fence.py | 2 +- sdk/tests/test_resident_engines.py | 2 +- sdk/tests/test_stock_hook_controllers.py | 2 +- .../module-changelogs/output-matrix.json | 10 + src/engine/assets/octatrack-base-sources.json | 8 +- src/engine/assets/octatrack-base.elemod | 521 ++++++++---------- .../assets/octatrack-module-packages.json | 22 +- 17 files changed, 288 insertions(+), 358 deletions(-) delete mode 100644 public/octatrack-modules/output-matrix/0.1.0-experimental.mwrm create mode 100644 public/octatrack-modules/output-matrix/0.1.1-experimental.mwrm diff --git a/CHANGELOG.md b/CHANGELOG.md index 78c18da7f..0498d0f45 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -12,6 +12,8 @@ - Beta testers are asked to share diagnostics again on any page after a new consent version. The note that requires it showed once per account, so testers who went through it before the consent version changed to `2026-10-15.1` (#657) weren't asked again: on 16 October the pull held 0 records against 22 syncs the day before. Now a beta tester whose consent isn't for the current version, or has expired, gets the required step again (Share diagnostics or Leave beta) wherever they are on the site. It relies on the consent read returning the stored version (#665). A tester who turned sharing off under the current version isn't asked. Checked with unit tests; not yet seen on the live site. - When Chrome can't open the Octatrack, the message now says why on Linux and Windows instead of only "unplug it and try again" (reported on Discord: an MKI on Chromium/Ubuntu and on Chrome/Windows). On Linux, Chrome needs a udev rule, now shown with the commands under Setup → Can't connect?, and Chromium from the Snap Store also needs its `raw-usb` connection. On Windows the Octatrack can be opened only once it runs the Modwerk base, because Windows binds WinUSB only to the base's interface. Checked with unit tests; the rule and the snap step have not been run on a Linux computer here, and neither has a Windows connection with the original OS. +- Output Matrix 0.1.1-experimental on the beta base: the base's resident Output Matrix engine is built from the module's smaller core-0 code (675 words placed on demand instead of 773), and its controller package is re-ported for the always-on LEV box label (20 stock sites, six stock-copy spans; package `e2df2fbf…`, admitted by new trust rows). The base identity changes to `3e3e3de1…`; its lease entries did not move, so Analog BD's recipe and the other base-bound packages' bytes are unchanged and only their required base moves. Host tests and the emulator only; not yet run over USB on a unit. + ## 15 October 2026 - Fixed the Octatrack beta base breaking one DSP engine when another is removed. With two of Sidechain Compressor, Output Matrix and Analog BD installed, removing one could clear a bit in the address where the other's placed engine starts (its DSP code then ran from one or more words too early), and left the removed engine marked ready without its reset. Example: Analog BD installed before Sidechain Compressor, then Sidechain removed; core 0 (tracks 5-8) jumped into Analog BD's engine one word short. The DSP receiver now looks at its ready word again before clearing the removed engine's bit. A two-engine test in the DSP interpreter fails without the fix and passes with it; the base is rebuilt (`99336d35…`). Not yet run on the unit. diff --git a/public/octatrack-modules/output-matrix/0.1.0-experimental.mwrm b/public/octatrack-modules/output-matrix/0.1.0-experimental.mwrm deleted file mode 100644 index 30a9833a99c0db7c5edf9e73a4083d73d208b36f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3580 zcmb7H4_H)H7C-OJFg#$uX=H6O#Fvgb890QZ5PA73>6-OGmJ(w z0|-)NfM{rDt(dE|86lCF8oG)Kra+`^Wl(PRiQD?87O`;Y+&8u>ef3q3@Auw)_x{eg zzkANPcOHhhCIk2aUd%~y$4lvb!0^`V>F?ZW-}RWCnv#^7!WuLwrdjEvpF;TP+$+UA z7#&hKzR}qL3v`86nM-5=D$C5cC|!}2cHzwEd8Bgm@S{ZK@T0PT;1~7iWA;^GjSgi#7xX~S zTG_@^tgd4Km~W~qX+p~{DZ`?F=T^c=WtvsS=F9wzJ(d{qe0#TL3hSqH+eUhM`yzRY zb>Cr1#x~1_t*iNH0Q~lG$?L4U*?c!hlPn{Qj`7-jG5fehdVT;vQJ-95y9w*jz2AS3ugj|3EM-s9 zQw(}cIMI2qy+R2@83lR`11iu{TBt5&3o$N&zbgtASc16O9H zuG}WndwNJ`T3($$MXZ*fwb3y|tyH^)3wWxA__~m3sTbB4#_}}SBr_igeS}jK5)N#3GMPmEKD7t2kjb+U9mQ6upf6gHJuUcTkf{U zs%uIJ98r#0!&se&um-DWUaqGZSS{C!RliUS^V)vrD8k9u$q%!wm;T$c|Luw94k)q0!@cQu1LC~%G- z6%zT2u`kD!_#WFXL?_?d9V)#?^{@;U^HQKAs3l!O@J`HsMVoKM@6aawW7=+a{t<0hf29blIR_F^7ypGt5s7Ev+4q$x_z3zO2Bx#Kh4iCY&Tre0RF7+`WJ%)$k5J?b+(CGCzL}0>k zJ;H<>J;DUD6B34c-G(19?EoU&OJW)!MbzLY&O}5K!iiXqcop$C1oC_u5c?6hZ+)5( z#}J=jm1Y6>qP_2K)E|b3KukeIBk*^C;Sli%Ekch#{|xS1CLNK1Fmuq+D**{re4u*S z)VB?%3=iHaiHmw7CI88+w-Pcl_dK)Ru*?`zwb|H2_5{#)zAq(wUC?v%sxJ>eY>BE> zeiC}JWY~S>A9k(^%L>lRQ;H7MUNhp!D5?_p4RVlE^D4K*ht53rwt+KLE^FB=y?3m= zZTb)QL|>^{yUr&&YNf#MG5Z^He)=P}-Q{Gi{#)A@9q#^om*!09YOj#Vp}pE@yzD^gjGR*0ts1m`jE)rxx53GNFG{D7y0%aL79*vVmp-PIeuA@%8` z8$amBEl{;CI1xDIYWLO5#-_#2PqS}Fzub)MlL9-E1{x%d4SoyhXrI~-G^MZn>A?K@ z8yBZ%C;wwaMf_%oI&#(~7=?bP6Xvz8Yvr3XPwt)fg#2Uv(pEiG!NYUUj~jb#d}r+z zTJt4{k(oghyk;AB#8bGbZs)yc_wTALdT`b8EyL9V8oeeVF)Mw%aTzMuDJWP@*o%sS zZ~E7=>mw6lzki>*f5n=DbH_hSOqIWwVR}8_DHn+aRwRB~*Aw=}n>WYwKN|K{xYBSl ze3ePu@ko8wz=sbg9BF%>*OpJ{LN?YmvYQFp)$eZ&Z&f`Tyz%<-3h~I>eVre*bV%mE zcDA&Q=ku0e97u)Z?^q4Vd;B+RD*cYlxnZ>0Oqbdk4OD&FR?)qQt$aziam&=yQzVZ* zL6}9~&-aS`xm(^eL2>dAmKaB9p#;tgE z$%LM?+gtKSIcLmUNq5xT+}c)fDQVWpypa9xoDul*kuN>eMbuvkbo*!uKF{tSwR+>l z%c1a9ZZMr&PqRdp^8kcxC0}6H|LP-#6?{*Xem*eKl9xI{wedb#me>n;{UO@4Zy^ z-JS(4!3( Z*eln2kIp%=enqn9%(lsUI$SfgKLYCSOMd_W diff --git a/public/octatrack-modules/output-matrix/0.1.1-experimental.mwrm b/public/octatrack-modules/output-matrix/0.1.1-experimental.mwrm new file mode 100644 index 0000000000000000000000000000000000000000..19e7015467ac2d93337340e17393623ce54d9957 GIT binary patch literal 3740 zcmb7H4O~=J7C-OJFg#$u5m}uK@uh>Jfhb%}z3-m?x%Yq1 zIrq+>n`h90GvMPQC7<{x1{&~cyp!<3gZ@L!oVeKNxL8)FiZ#qmAmbE5qH(Mg^Psm$ z9r#A4(mbuVsqG*lz>!}(N+pQ(wVWh2FyUn-Xlf%p!i&t_JXJ}0`kHUW$=dXU!H%P1kOgjb9nEOySV{&w{RX`cczg*j?+Eq+!SXY#Dc zG5gp-lWUgQMJAw9jEtSqWoTwajT;}HWiWcXXa|>9#O_9ZUJl4Ke zw)r%xY3T#z+fq}!&~u4SG-*HRjcicFn`La4%vIlR3MK9PdrVVV7mdR*a)7r#h^JV` z1EyqboovYZ@=yD~Wj`0Q-n@s+a)312G+b{Rr_K_yPn)C{`T*orF$Lx>y)7Hki_`W1 zmEn9e&#cgpJx#TEOY?EplqFkeX-h_idnN9~it#gAAJ`^8umus@QksWxlp+-1k;@cK zn4~XBCjAUxMaEE68>q>#1o9$d;1IHki-pxV%u-D)_IFskcz2^5?XrP)GlM(^R}+r` zo~n{r#IhViVWl5xk__d5G8D#cG;GLVP&4#%dfQsa24SCbt}-aixohWQJ_^Z;0Ibt4Q2UkF2+Te@21=jOkU^nlQD)?_nMqkdK^X8>6F1Q zp7dJOduGsJd}gI9MZA`xx87ztLw3RNEFTJdfW{9nGrUr78?+0ldJX6HTsc|ea47=1x%&C<*DlBs7V(EmVA)Et5QtXj(o-_=iLuFmeO`1 z>I|<8)Pi~qDsNDy^!MN`LCs(U|N4jhv2tr8-G>)p<}u!<0?l52H1DaU8CdP975f44 zxVmFtMCg}3>}_Gfk|DzgP!=2pDZyF5fkChb1#`e-zI)UcTu~36qq*TEihH6u0i$Y% zwBp!}q{2x3rS%K zh<8yrb>Ey$ln~@`y zld{Q&QTK^~{$Lh~`@B@a5+ux3KhWpgBEG=;v=aRea+0|rh*(ktoFpz5;e~ZOk=PLj zkW-7MB*b#WO2i9@O^8zbhG4@Zqi|3CKj67(A2?0^vWb2m&IVrAyn&KfMp}V#vd~sa zN%2#ZpmfGei)Mvl9HfQ~Jag1xKCeYz@~*c5nG16QBJS9ry~s6~N3&kqE0J#nBacnU|+!_ zA>rl!^1UABqk`pn+wYJ3tWwz5Z>Vz)`4x2w9-i9-y-B~LPCl6bQ_3Gz_#o!LrLFDv zwe>XoIc@h_|BN=Qzb3?4L@VMv;xoh*#5F_*q7(5Qq6^WDxQF-&>vQn);CD>4S`Ps* z34GH*r-$&kr+|#;CWRxSAsnI7YSBbsK)V)UK#mq+fH{$ogJ<1=KZ2S8L|XyGXc9*w zE&({DAj%Mj5O{k#eTle@_yN&_=)5>Xzxf zOSkIrL`#f7bK*<)2!F-U@gqJnH<)%C_8u6MALs#FR!o?YnB*(+{%-b^nI(7hcr%K= zB>c-sgs<^o{G>vihyk5o4`QGkzQzajO{ZZG#`I&{~jWe@cp z-?OFWz@~(M!2YhU4^otz@aaqXH1v=dGQ=RJ{LDTxzkr(j?#8@#k}CW{$0y~4FO3h| z8DwjI_fgFvjK0$eayJ^X2>a<*r_an=SY24NMi()&?|Mt#6CbS(@D6Ru+&ww^jq6`~ zBD*#=DzJlSpg~eo z?XrjtajN)Owc+)@99mG-b$v!^%s+=0M{JcSgJy4mQ8@1m!o0nGt>+fiv-{>h<9U(q z*sg_AczoUk-?8V%wN`ASRo6g_%tWH#EsO85oZKyyyGEQlxVs{6!m5+ohAI10T2*9J zO2Rn(GSvGoLBVpuUYzH3*R_J(7!(GB3pZp{$&hwQ-!`p7p*-0$0g7No! z6=83_dv{FFlm71oD0FuNRvE-CPgJ$_ee#&x7QgQ$b+c&zQdl@@i6_S4TR<}}X`hH1@wz*~B-ka&m zsycE6K7Jn{-=FXceOJ7&bbNdK{cTyJGG@+SNw<{W-QJYl5k0#h)BE5DX9fOFkpzo$1{@YjNKaa@>0B?+?H(=GQkJ@}^Z{gc-Zl7)6 zKRoTpmaDCc71N%(n%KTOwmwLusYUJ?&S}vS@Bk>;_2IFJedqoz^RTe;3_tDkqDB7K z?@<@5uTDQL-*p4;OOcU-&PtF0WSHhVrWQx6e<`4NSV_s0Q`0)PJ~HH8`zuou%6|23caweb7Wq5fxvxchkN2*qnG^M2 uBpR-_`ZQIIHH', 0, address, length, 0)[4:] + bytes.fromhex(digest), data) diff --git a/src/community/module-changelogs/output-matrix.json b/src/community/module-changelogs/output-matrix.json index 51dd14faf..5af7d9625 100644 --- a/src/community/module-changelogs/output-matrix.json +++ b/src/community/module-changelogs/output-matrix.json @@ -1,4 +1,14 @@ [ + { + "version": "0.1.1-experimental", + "date": "2026-10-16", + "changes": [ + "In MATRIX the LEV box is always labelled with the track's destination (MN, PHN, M+C, ...), not only while CUE is held, so each track's routing stays in view. The value shown while turning LEVEL is still the level; XLV (scene editing), FUNC's MAIN view, NORMAL, STUDIO and MIDI tracks are as before. The author tested the label on an MKII from a card image (OMXLBL01, 13-14 Oct 2026) built before the DSP change below.", + "Smaller core-0 DSP code: 727 code + 42 table words become 657 + 14 (671 in all), with the same output sample for sample in 26 emulator scenarios (ot_emu: every destination, levels moving, MASTER, MKII, DIR, destination changes during playback). Worst case 4,240 -> 4,194 executed instructions per 16-sample frame, 275 per sample with the headphone crossfade. Emulator only: this DSP code has not run on hardware.", + "USB: the Modwerk base carries Output Matrix's DSP engine, so the smaller engine needs a new base, and the label needs a re-ported controller package (20 stock sites instead of 19, six stock-copy spans). Both are built locally (base 3e3e3de1, package e2df2fbf) and not published; the published base and the 0.1.0 package are unchanged. Not yet run on the unit over USB.", + "Test-only: the gate compares runs over the same samples from transport start, which removes a false DIR AB 127 failure in combined images. Gate 117/117 in the emulator." + ] + }, { "version": "0.1.0-experimental", "date": "2026-10-09", diff --git a/src/engine/assets/octatrack-base-sources.json b/src/engine/assets/octatrack-base-sources.json index ff81eb165..2b2f0b376 100644 --- a/src/engine/assets/octatrack-base-sources.json +++ b/src/engine/assets/octatrack-base-sources.json @@ -87,7 +87,7 @@ "sdk/machines/octatrack/module-adapters/analog-bd-parts/analog_bd_part_restore.c": "e2b354f38b51f8dd7e84f9b0ecdd9cfddc3fd0bcf17e76608b3383bbfe0f7021", "sdk/machines/octatrack/module-adapters/analog-bd-parts/analog_bd_part_restore.h": "a17a708e2fdc7449842163deaccff4026119f1f5d5a9b594aaf520c121d79131", "sdk/machines/octatrack/module-adapters/base_usb_functions.py": "11cfd71469fa88f43401cac54292eba8532a6c810de4a72171d51dac5130304d", - "sdk/machines/octatrack/module-adapters/controller-policies.json": "f58f6a49cf210e9af41baa0746249c3e453575298daf1e21142921ade9723819", + "sdk/machines/octatrack/module-adapters/controller-policies.json": "712149a782f33c67f430f7759008a120421007f41c83abb64f5f083a31dde97a", "sdk/machines/octatrack/module-adapters/controller-policy/controller_association.c": "b4307f70a9fc29186076f37eaedf851229f4681076c34e14b0fb890ab512c79e", "sdk/machines/octatrack/module-adapters/controller-policy/controller_association.h": "a4ade16ea991bbc258106cf1a25384f0205a94d3eaeb537be4c1e0094fdb6090", "sdk/machines/octatrack/module-adapters/controller-policy/controller_board.c": "800fd0b09c28cc3c77d049eaf3c85159394b8399a50cdca6fd5717edf57935e0", @@ -122,7 +122,7 @@ "sdk/machines/octatrack/module-adapters/resident_base_sources.json": "afd1906d59a19ebba2ccc0718cb5edef12624c862350a5f667e0b698a067cfe3", "sdk/machines/octatrack/module-adapters/resident_boot.py": "d991d906eed37497dabd265639b36a28cdf334ab720b4a95e46d4e70208bfada", "sdk/machines/octatrack/module-adapters/resident_driver.py": "b901d6c4815169a49709357465c1fe1015271a48e32e771968725f6e0ee265a1", - "sdk/machines/octatrack/module-adapters/resident_dsp.py": "34b6e2ca4a65fa15f634932480fec535651274b376f54588005ea65904419e28", + "sdk/machines/octatrack/module-adapters/resident_dsp.py": "ba2726092e3cf52067b3219e8d466bf661f40ab83af7e46f7579cea50b5a99d9", "sdk/machines/octatrack/module-adapters/resident_engines.py": "f43b09426cd9cd57b0376ab6d784ddb236c8478c73321f589ba1e18b3ea22841", "sdk/machines/octatrack/module-adapters/resident_journal.py": "d26950a698ee5131c0051ea4c7c7136b9116e5817ad66a980b055dda76751d6f", "sdk/machines/octatrack/module-adapters/resident_placement.py": "84de7c9d79ae446b18f405096c7c998ab1781f0ecf8009ccec51390c7b972c9d", @@ -141,8 +141,8 @@ "sdk/octabam/modules/analog-bassdrum/dsp909.py": "d31d2fd1340e9c5055389a37f20959ebccd78d45636daec824ae3e1e84f4d67d", "sdk/octabam/modules/analog-bassdrum/fit909.json": "6917d613b5033069f226b9f6a440f6eefd935e596452546d5bc27b73c5e3dd08", "sdk/octabam/modules/analog-bassdrum/manifest.py": "20fa1f744630354b3986a3ad82ac6a41744345796dc783891a4c9f0bd81c787e", - "sdk/octabam/modules/output-matrix/manifest.py": "1e9f844eff11dc2e262fd7efc733ae309c4285fd0a14e494da6b568d24af1216", - "sdk/octabam/modules/output-matrix/matrix_mix.asm": "eee21cd84c8dd871ba76841dfea8fdd0edb1276ed1b4ded343687cf7b629383f", + "sdk/octabam/modules/output-matrix/manifest.py": "65d1ae009dc1c956ce2036181667434e31b361179ca138e5c8f1091227b55619", + "sdk/octabam/modules/output-matrix/matrix_mix.asm": "8f58596d8bd23bf50651d4288745c187ace9e6f9e0efffd34dcdad627b89476e", "sdk/octabam/modules/sidechain-compressor/manifest.py": "3bba6ac8ba315e10d6d7f2cb6342fb5ce6564e1ba6cd6ec362787d685c5e0cd7", "sdk/octabam/modules/sidechain-compressor/upstream/tools/patch_sc_dsp3.asm": "aaa1a1c947a8bcb5d19ebc9454ec3f020d1f00afe51fe786fe1f3ed4d5eccde3", "sdk/octabam/modules/sidechain-compressor/upstream/tools/sc_tables.py": "8045e06f97fa462ca3f986b5a46e8ee48f9f9663691ae291221ce8ed6489c71a", diff --git a/src/engine/assets/octatrack-base.elemod b/src/engine/assets/octatrack-base.elemod index 7d3a2b185..489c8c390 100644 --- a/src/engine/assets/octatrack-base.elemod +++ b/src/engine/assets/octatrack-base.elemod @@ -37,7 +37,7 @@ }, ".run": { "align": 512, - "len": 261652, + "len": 261360, "parts": [ [ "hex", @@ -12909,16 +12909,7 @@ ], [ "hex", - "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003732373639333233303037356262643336666635303061373964636236666534393466643863353463376139636336663065306563353231646637363666303900613134373161656232646162376465303862643531396236613165656637303264313532346132303137356435646434353133343133613839633736346264" - ], - [ - "stock", - "0x400ba992", - 26 - ], - [ - "hex", - "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000312e3430430000000000000000000000006131343731616562326461623764653000ffffffffffffffffffff" + "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003761666631313361643237333664663930313630356334386661316565313338653738656335366333396261383263653539623661623333316538376235386600336533653364653166333530373831623064356239313733366637376537663337353361633939383766343939636338336233326364303235363861333666630000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000312e3430430000000000000000000000003365336533646531663335303738316200ffffffffffffffffffff" ], [ "stock", @@ -13059,7 +13050,7 @@ ], [ "hex", - "fdfddb9d93a28c2c8d8c83a9c430dab1a09f0df2e416a24a4b37c7e23d6f52274294f9cea4bf6fd179093dbf7834979d8373bc8e8de87088473ada56ab1b714295cff696000100010001010300000001000003fc0000027800000342000003744589b10b10842bda55b34607460257f9a2f9c317f75a253b2d5c3e6c9191ebaddf589505c87f72735bc230661711af764e57ec5e73f1470d7af2eafb81dc3751caf158b5000100010001020100000001000008c80000061c00000678000006aa4589b10b10842bda55b34607460257f9a2f9c317f75a253b2d5c3e6c9191ebaddf589505c87f72735bc230661711af764e57ec5e73f1470d7af2eafb81dc3751caf158b5000100010001020100000001000008c8000006f400000716000007484589b10b10842bda55b34607460257f9a2f9c317f75a253b2d5c3e6c9191ebaddf589505c87f72735bc230661711af764e57ec5e73f1470d7af2eafb81dc3751caf158b5000100010001020100000001000008c800000790000007b2000007e420211430d3c9eafd3253a50ebf936357ae6847420ac41717b8bcea28eec9f1ac82e2dc2630775fdca07b8b3901a1b36f286e0a3100189312c0827861e078e6bcabdb1445000100010001040300000001000017340000048a000004fe0000047e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004352415348205245434f564552454400020304080e3d4453502053544f50504544004d4f44554c45204d495353494e4700000e320b810e250b74000000000000000000000000000000000000000004050607000102030000" + "fdfddb9d93a28c2c8d8c83a9c430dab1a09f0df2e416a24a4b37c7e23d6f52274294f9cea4bf6fd179093dbf7834979d8373bc8e8de87088473ada56ab1b714295cff696000100010001010300000001000003fc000002780000034200000374e2df2fbfff7f956846c030a87c50ff391af427b8719d40018e6449cef8e48acd0994f291fc10c4b89c827cf60802e30ba152bf49c6572027e9edc0a22524a232caf158b50001000100010201000000010000090c00000660000006bc000006eee2df2fbfff7f956846c030a87c50ff391af427b8719d40018e6449cef8e48acd0994f291fc10c4b89c827cf60802e30ba152bf49c6572027e9edc0a22524a232caf158b50001000100010201000000010000090c000007380000075a0000078ce2df2fbfff7f956846c030a87c50ff391af427b8719d40018e6449cef8e48acd0994f291fc10c4b89c827cf60802e30ba152bf49c6572027e9edc0a22524a232caf158b50001000100010201000000010000090c000007d4000007f60000082820211430d3c9eafd3253a50ebf936357ae6847420ac41717b8bcea28eec9f1ac82e2dc2630775fdca07b8b3901a1b36f286e0a3100189312c0827861e078e6bcabdb1445000100010001040300000001000017340000048a000004fe0000047e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004352415348205245434f564552454400020304080e3d4453502053544f50504544004d4f44554c45204d495353494e4700000e320b810e250b74000000000000000000000000000000000000000004050607000102030000" ], [ "stock", @@ -13358,7 +13349,7 @@ ], [ "hex", - "a1471aeb2dab7de08bd519b6a1eef702d1524a20175d5dd4513413a89c764bd3000000200000003200000044000000480000004c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + "3e3e3de1f350781b0d5b91736f77e7f3753ac9987f499cc83b32cd02568a36fc000000200000003200000044000000480000004c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" ], [ "stock", @@ -13580,7 +13571,7 @@ ], [ "hex", - "0305001a000000000000000003e6" + "02a3001b000000000000000003e6" ], [ "stock", @@ -13598,81 +13589,7 @@ ], [ "hex", - "03e600060034805300d702170279031a56700000020e64f00000020944f40000ab0957e4000140ce00ffff20004d0d104200000a44f400000909020c9f0140ce00ffff20004d0d104a00000300000c56f00000020b0140c000008056700000020b56f000000418200032023c9f0140ce00007f44f40000310045f40000360020000b208f0002a06821e40020004005f425ffffff05f426ffffff219500041d0605f420ffffff040480060c8000003944d800208e000140c600007f565e0056f00000020c44f400ffffff020cdf0140ce00ffff02a040566600041d0677f400000010300000021e9e2000030d104a0000060d10800000090d10c00000040d10800001d40444bc0d10c00001cf05f420ffffff05f421ffffff05f424ffffff02069e21990061f40000284044e90002658461f4000028c044e900020e9e21990061f40000294046e90002659f45f400fff9ba20006845f4000006f32000ea02658f2000d161f400002a4047e900026d8721c40002169e21990061f4000029c046e9002000d121c40046f4000842b82000d90265cf0c1c2021990061f400002b4045e9000206de21990061f400002ac047e900026dc7021ede21990061f400002bc046e9002000e10275ce44f4006fd9d32000d102758e61f400002c4047e900020ede21990061f400002cc044e9002000c1027d8e21c40046f4007ff7cf2000d020003220003244f400aceb922000c202fdce61f400002d4044e9002000c1027dce02269e21990061f400002dc044e900028584029d9e2000030d10420000060265d40255c40275d4025d840d108000026202369e2000030d104900000d025dce0d108000000e0d108000012c23ee00025dd42000440d108000000700000c23ee000d108000000300000c2000030d104a00011e06cc000001f10265de0255d42000440c1c0c2000400255ce0275de025d942000440c1c0c200040025d8e0205940255d602659e2000d2208f00026d972000ce02058f21c5000205de21c600200060020ddf0140cd0000200290500205cc218400208e0046f42640000020005420003220003621c40061f4000030c046d90056d90057d9d221c60056d9da21e60057d9d221c60056d9da21e60057d9d221c60056d9da21e60057d9d221c60056d9da21e60057d9d221c60056d9da21e6002000d221c70061f4000030cc46d90056d90057d9d221c60056d9da21e60057d9d221c6002000da21e6000205d52000e821e60021ee002000d220007020003220003221c700020d9446f40003ea9f208e002000502000d6020d8e020ddf0140cd000b45026ddf45f40000003b02906821e6000285df028d9921a5002000ee0285cf028d8921e50021c4002000a821e5002000f021c4000275962000d0028ddf02959921a40046f4000046a02000ea2000de028dcf02958921e400025d962000d602dd8e02159447f4007f62f52000c802158f027d962000d002fd9447f40078e1002000c802fd8f02fdd62000d220003620002220002221c500023594208e0046f400150bff2000e22000d602358e021d94021d8546f4007e96e02000e82000de021dd446f4007d2dc02000da021dcf21e40061f4000030d146d90046d9d802259446d9da0225d446d9da022d942000da46d9da022dd42000da0225940225c4021dd4022584022d94022dc4022d8f21e40047f400205efc2000c802359645f4000cb9942000ea21e5000215d4208f0046f4007a6dd82000ea2000de0215cf02edcf0235d446f4000cb3062500d846f4286ef35f2700002000382124000235c4023d97023d8446f4003ef76c2000d82000be023dd446f4007bddb02000da023dcf21e500024594208f0046f40024a3972000ea2000de02458f21e5000245d4208f0046f40024a4722000ea2000de0245cf21e700024d9446f4007f54c62000d0024d8e024dd446f4007ec4db2000d8024dcf21e40020004421c4002000c021c400027dd62000d802edd420004820003a20003a20003a20003a02dd9420004821e40002559720ee000285962000d22000b602558e0d108000016421c400208e00200032200032565800565800020dde0140c0000001020dce00000c44f4007fffff020584024d84024dc40235d447f400051eb856f4007ae1482000c202158e02fd8e200013020dce020d8e44f4007fffff0285c444f400ffffff028d8402659e0255d420004021c40046f40000000056f4007fffff2000d60205ce00000c20001322b10006308000021856590002fd8e02fdce44f4007fffff020dc402858444f4005a5a5b0235c400000c05f420ffffff05f421ffffff05f424ffffff02069e21990061f40000320044e9000225840206de21990061f40000328044e900022d8461f40000330044e900022dc461f40000338044e9000225c461f40000340044e9000235c4020e9e21990061f40000348044e900023584021ede21990061f40000350044e900023d84020ede21990061f40000358044e900023dc402269e21990061f400002dc044e90002858402169e0c1d2021c4000225d62000d02000320225ce0d10800000c002369e2000030d104900000d02458e0d108000000e0d108000009823ee000245942000440d108000000700000c23ee000d108000000300000c2000030d104a00008a06ce000002ff020dd40225d602259e2000d221c500208f00022dd62000de020dcf02059e20006002058c218400208e0046f42640000020005420003220003621c50020a40020008021c40046f4000002a156f400ffb34b2000d221c60056f4000519af2000d221c60056f400d6a8862000d221c60056f4006487ed2000d221c6002000e021c50020a40020008021c40046f400e0810357f40003eff22000da20006821e4000235d62000d021c5000205df020d9921a400022d962000de0205cf020d8921e6002000e00245ce025d9e0140c0000001025d8e0140c50010000d10410000200215940215d546f400025ac0208f002000ee21e40020ae002000d221c50046f400016b862000e60215ce2000de02158f021d94208e0046f40000f5b02000d6021d8e21c40020004821e400023dd62000d02000320d10c00000032000130245d420004021c500021dd4208f000235962000ea2000de021dcf20003a20003a21e400023d962000d821e40002559720ee000285962000d22000b602558e0d108000005221c40046f4006e147b2000d056580056580000000c200013025d8e44f4007fffff0205c4020dc444f400ffffff020d8444f40087652b02058444f40068bcbe02158444f400cd95280215c444f400dd0890021d8400000c20001322b10006308000031b56590044f4007fffff025d8400000c029d9e2000030d10420000050216de0c1d2002f5ce0216de21990061f400002e4044e9000295c461f400002ec044e900029d8461f400002f4044e90002b5c40226de21990061f400002fc044e900029dc461f40000304044e90002a584022e9e21990061f400002fc044e90002a5c461f40000304044e90002ad8400000c21c5000216de0c1d2002f5d42000440c1c0c20004002f5ce21cf000c1c202199000140ce00ffff0c1d8f21e60061f400002e4004491157d90021e70056e10020007421c40020ee002000d20295ce61f400002ec004491157d90021e70056e10020007421c40020ee002000d2029d8e61f400002f4004491157d90021e70056e10020007421c40020ee002000d202b5ce20ae0021c40002bd9f02bdd921a70002b5d62000da2000be02bd8f02bdc921e70020007421c4000295d62000d020003220003220003220003220003221c40020008021c60020009021c60046f4d016a16221c7412000b621c50002add4208e0046f400145a1d2000e22000d602adce21c70020af0020007c20002a21e50002b594208e0046f4001e353f2000e22000d602b58e21c40020af0020004c21e500029dd62000b020003220003221c40020008021c60020009021c60046f4d016a16221c7412000b621c40002a5962000d802a5d62000e020003220003220003221c40020008021c60020009021c60046f4d016a16221c7412000b621c40002ad962000da02b59446f4002d413d2000da20003a20003a20003a20003a21e40020008021c60020009021c60046f4d016a16221c7412000b621c400029d962000d020003200000c0039007d00b800d200db00f0013c016401a300204e002da2004075005b0c00809c00b5aa01009c016a7802000002d33803fd9305a30307f64f0b3f300fe2f61670bc00ba3700d3d400f0f40112100137b401627c01931901ca5502091302505402a13902fd0803653103db5004613304f8e105a49b0666e4074285083a9209526f0a8dcf0bf0ba0d7f860f3ed911339a1362e615d1f918860f1b843e1ed13b22711c56f0000004200c1d0c21990061f40000080004491130000006208000003b44d8004c590056f0000004200140c50000000d104a0000150140c50000020d104200002561f40003bdfe5fe1000140cd0100000d104a00001e0d10800000362f010061f40003bdfe5f61000d10c000001661f40003bdfe5fe1000140cd0100000d104a0000060d10800000270d10c000000b61f40003bdff5fe1000140c80000010140ce00000321ae005e610056f0000004200140c40000000c1d0421840061f40003bdff5fe1000140ce00000321ae002000400c1d0a21990061f40003be0004491130000006208000007f44d8004c590066f00000020800000c2e000061f400033dfe5fe1000140cd0100000d104200000861f400033dff5fe1000140ce00000321ae0061f40003bdff5e610000000c221e000236df0c1ca121ae002000030d104a0000e20140c400000121940023cf0020000b0d10420000d50c1d0c21990061f400000800044911223500228f000140ce00000421ae002000030d104200000f228e000c1d0c21990061f4000008000449113040000620800000ba4cd9004458000d10c000001a228e000140c40000040c1d0421850061f40003bdff5fe1000140c80000020140ce00000321ae002000600c1d0a21990061f400033e000449113040000620800000d44cd900445800023e9f0c1ca121ae000c1c0621990061f40000000007e985025fdf20000b0d104200000520af000d10c000000a21e70020ae0020001421c60045f40008f5822000e8200078025fcf21e5003040000620800000f444e0002000a00c1d0c5658000236df0c1c9121ae000140c60000ff0140c50000400d10420000062f010002578f0d10c0000057218f000140cd0000400d104900001021ee000140c40000400c1c02219900380000232e002000030d104200001345f4000025540d10c00000120c1c8321f90070f40000001021ae000140c500001f0d104200000645f4007fffff0d10c000000504090100000007e985230e002000030d104200000b02579e2000030d104a0000072f000002578f21e7000d10c000000a02679e2000030d10420000052700000d10c0000003025f9730400006108000015144d80056d0002000492000100c1c0221c40020007421c6002000e820007821e700208e0020001421c400230e002000030d104a00000320e400445800445800025f872e010002678e2f000002578f023e9f0c1c9121ae000140c60000ff2000030d104a00001722b10039200004491130400006208000016644d8004c5900228e0057f0000004200c1d8321b90061f4000007f00449112f01005f59005e61000d10c00000040d108000000c23ce000140c000004021900034610000000c0d108000000434610000000c56f0000004200c1d0221990061f4000007f00449112f00005f610000000c60f00000020656f0000004200c1d0221990061f4000007f00449115fe1000140cd0100000d104a00000300000c2f00005f59005fe1000c1d8d21b90061f4000008200449113300000620800001a54cd900445b0000000c000034805300d702170279031a56700000020e64f00000020944f40000ab0957e4000140ce00ffff20004d0d104200000a44f400000909020c9f0140ce00ffff20004d0d104a00000300000c56f00000020b0140c000008056700000020b56f000000418200032023c9f0140ce00007f44f40000310045f40000360020000b208f0002a06821e40020004005f425ffffff05f426ffffff219500041d0605f420ffffff040480060c8000003944d800208e000140c600007f565e0056f00000020c44f400ffffff020cdf0140ce00ffff02a040566600041d0677f400000010300000021e9e2000030d104a0000060d10800000090d10c00000040d10800001d40444bc0d10c00003d405f420ffffff05f421ffffff05f424ffffff02069e21990061f40000284044e90002658461f4000028c044e900020e9e21990061f40000294046e90002659f45f400fff9ba20006845f4000006f32000ea02658f2000d161f400002a4047e900026d8721c40002169e21990061f4000029c046e9002000d121c40046f4000842b82000d90265cf0c1c2021990061f400002b4045e9000206de21990061f400002ac047e900026dc7021ede21990061f400002bc046e9002000e10275ce44f4006fd9d32000d102758e61f400002c4047e900020ede21990061f400002cc044e9002000c1027d8e21c40046f4007ff7cf2000d020003220003244f400aceb922000c202fdce61f400002d4044e9002000c1027dce02269e21990061f400002dc044e900028584029d9e2000030d10420000060265d40255c40275d4025d840d108000026202369e2000030d104900000d025dce0d108000000e0d108000012c23ee00025dd42000440d108000000700000c23ee000d108000000300000c2000030d104a00011e06cc000001f10265de0255d42000440c1c0c2000400255ce0275de025d942000440c1c0c200040025d8e0205940255d602659e2000d2208f00026d972000ce02058f21c5000205de21c600200060020ddf0140cd0000200290500205cc218400208e0046f42640000020005420003220003621c40061f4000030c046d90056d90057d9d221c60056d9da21e60057d9d221c60056d9da21e60057d9d221c60056d9da21e60057d9d221c60056d9da21e60057d9d221c60056d9da21e6002000d221c70061f4000030cc46d90056d90057d9d221c60056d9da21e60057d9d221c6002000da21e6000205d52000e821e60021ee002000d220007020003220003221c700020d9446f40003ea9f208e002000502000d6020d8e020ddf0140cd000b45026ddf45f40000003b02906821e6000285df028d9921a5002000ee0285cf028d8921e50021c4002000a821e5002000f021c4000275962000d0028ddf02959921a40046f4000046a02000ea2000de028dcf02958921e400025d962000d602dd8e02159447f4007f62f52000c802158f027d962000d002fd9447f40078e1002000c802fd8f02fdd62000d220003620002220002221c500023594208e0046f400150bff2000e22000d602358e021d94021d8546f4007e96e02000e82000de021dd446f4007d2dc02000da021dcf21e40061f4000030d146d90046d9d802259446d9da0225d446d9da022d942000da46d9da022dd42000da0225940225c4021dd4022584022d94022dc4022d8f21e40047f400205efc2000c802359645f4000cb9942000ea21e5000215d4208f0046f4007a6dd82000ea2000de0215cf02edcf0235d446f4000cb3062500d846f4286ef35f2700002000382124000235c4023d97023d8446f4003ef76c2000d82000be023dd446f4007bddb02000da023dcf21e500024594208f0046f40024a3972000ea2000de02458f21e5000245d4208f0046f40024a4722000ea2000de0245cf21e700024d9446f4007f54c62000d0024d8e024dd446f4007ec4db2000d8024dcf21e40020004421c4002000c021c400027dd62000d802edd420004820003a20003a20003a20003a02dd9420004821e40002559720ee000285962000d22000b602558e0d108000016421c400208e00200032200032565800565800020dde0140c0000001020dce00000c44f4007fffff020584024d84024dc40235d447f400051eb856f4007ae1482000c202158e02fd8e200013020dce020d8e44f4007fffff0285c444f400ffffff028d8402659e0255d420004021c40046f40000000056f4007fffff2000d60205ce00000c20001322b10006308000021856590002fd8e02fdce44f4007fffff020dc402858444f4005a5a5b0235c400000c05f420ffffff05f421ffffff05f424ffffff02069e21990061f40000320044e9000225840206de21990061f40000328044e900022d8461f40000330044e900022dc461f40000338044e9000225c461f40000340044e9000235c4020e9e21990061f40000348044e900023584021ede21990061f40000350044e900023d84020ede21990061f40000358044e900023dc402269e21990061f400002dc044e90002858402169e0c1d2021c4000225d62000d02000320225ce0d10800000c002369e2000030d104900000d02458e0d108000000e0d108000009823ee000245942000440d108000000700000c23ee000d108000000300000c2000030d104a00008a06ce000002ff020dd40225d602259e2000d221c500208f00022dd62000de020dcf02059e20006002058c218400208e0046f42640000020005420003220003621c50020a40020008021c40046f4000002a156f400ffb34b2000d221c60056f4000519af2000d221c60056f400d6a8862000d221c60056f4006487ed2000d221c6002000e021c50020a40020008021c40046f400e0810357f40003eff22000da20006821e4000235d62000d021c5000205df020d9921a400022d962000de0205cf020d8921e6002000e00245ce025d9e0140c0000001025d8e0140c50010000d10410000200215940215d546f400025ac0208f002000ee21e40020ae002000d221c50046f400016b862000e60215ce2000de02158f021d94208e0046f40000f5b02000d6021d8e21c40020004821e400023dd62000d02000320d10c00000032000130245d420004021c500021dd4208f000235962000ea2000de021dcf20003a20003a21e400023d962000d821e40002559720ee000285962000d22000b602558e0d108000005221c40046f4006e147b2000d056580056580000000c200013025d8e44f4007fffff0205c4020dc444f400ffffff020d8444f40087652b02058444f40068bcbe02158444f400cd95280215c444f400dd0890021d8400000c20001322b10006308000031b56590044f4007fffff025d8400000c029d9e2000030d10420000050216de0c1d2002f5ce0216de21990061f400002e4044e9000295c461f400002ec044e900029d8461f400002f4044e90002b5c40226de21990061f400002fc044e900029dc461f40000304044e90002a584022e9e21990061f400002fc044e90002a5c461f40000304044e90002ad8400000c21c5000216de0c1d2002f5d42000440c1c0c20004002f5ce21cf000c1c202199000140ce00ffff0c1d8f21e60061f400002e4004491157d90021e70056e10020007421c40020ee002000d20295ce61f400002ec004491157d90021e70056e10020007421c40020ee002000d2029d8e61f400002f4004491157d90021e70056e10020007421c40020ee002000d202b5ce20ae0021c40002bd9f02bdd921a70002b5d62000da2000be02bd8f02bdc921e70020007421c4000295d62000d020003220003220003220003220003221c40020008021c60020009021c60046f4d016a16221c7412000b621c50002add4208e0046f400145a1d2000e22000d602adce21c70020af0020007c20002a21e50002b594208e0046f4001e353f2000e22000d602b58e21c40020af0020004c21e500029dd62000b020003220003221c40020008021c60020009021c60046f4d016a16221c7412000b621c40002a5962000d802a5d62000e020003220003220003221c40020008021c60020009021c60046f4d016a16221c7412000b621c40002ad962000da02b59446f4002d413d2000da20003a20003a20003a20003a21e40020008021c60020009021c60046f4d016a16221c7412000b621c400029d962000d020003200000c8039010b0112012201370144014e0170017d018701a801b001b801d801e501ef822a02700273028b02a502b902ee82f702fb8304" - ], - [ - "stock", - "0x400a739a", - 10 - ], - [ - "stock", - "0x400a73b6", - 16 - ], - [ - "hex", - "07000001" - ], - [ - "stock", - "0x400c6780", - 10 - ], - [ - "hex", - "0004000007000001" - ], - [ - "stock", - "0x400a7382", - 8 - ], - [ - "hex", - "01000004" - ], - [ - "stock", - "0x400c18c4", - 8 - ], - [ - "stock", - "0x400c18d4", - 8 - ], - [ - "hex", - "0006" - ], - [ - "stock", - "0x400a7282", - 8 - ], - [ - "stock", - "0x400bacc4", - 8 - ], - [ - "hex", - "000000000000" - ], - [ - "stock", - "0x400c0ba8", - 10 - ], - [ - "stock", - "0x400bad60", - 8 - ], - [ - "hex", - "000000000000000066f00000020502eedf0140ce00ffff0140cd0000010d104a0000090bce6a0d104800000300000c0444bc0d10c000025a0140c60004005c7000000c062244004c7000000c0c63f00000020973f4000001f8204b002264004c7000000c075ef000000c0b44f4005a5a5a2000450d104a0000174c7000000c0b44f400ffffff4c7000000c0e02a69e0d10800002075e7000000c0002dede0d10800002025e7000000c0102e69e0d10800001fd5e7000000c0220001b02a69e0d10800001c402dede0d10800001d202e69e0d10800001e05d7000000c0d02e6de4cf000000c0e2000450d104200000f02ee9e4cf000000c0f2000450d10420000095ef000000c064cf000000c102000450d104a0000040d10800001de2000134cf000000c060bc46a0d10400000030ace655ff000000c0d20000b0d10420000030ace665ff000000c124cf000000c132000480d104a0000040ace600ace635ff000000c1120000b0d104a0000030ace635ff00000004820000b0d10420000115ff00000004920000b0d104200000c5ff00000017420000b0d10420000075ff00000017520000b0d104a0000040ace630ace695ff000000c154cf000000c162000484cf000000c1b2000484cf000000c1c2000480d104a0000030ace615ff000000c184cf000000c192000480d104a0000040ace620ace645ff000000c1720000b0d104a0000030ace645ff00000005220000b0d10420000115ff00000005320000b0d104200000c5ff00000017e20000b0d10420000075ff00000017f20000b0d104a0000030ace672184000140c600003e0d104200000c5ff000000c1446f40000000820005d0d1042000005208e000ace682184002085004cf000000c0c20920060f00000020405ffa0381f0061f00000020339050065f40000004a66f400000c9047f4004000000610800002190bc5680d104000001120001320001b060880000115f0b80044c8d22000da205800205800205d002400004459004459000d10c000007064f400000cb0f0b800060880000125b388d05e5cd8f0b8005f5c002058000bc5630d10480000072000135659005659000d10c000003b20001320001b67f400000c207ff000000c1106df0000013b6cdf004cdc004cdc402000480bc5600d104000001667f400000c287ff000000c1206df000001486cdf004cdc004cdcc22000c267f400000c307ff000000c1306df000001526cdf004cdc004cdcca2000ca0bc5690d1040000009225300043d54f09b0044dbd2f09bda44dbd22000da4ef000000c000c1d040c1d8521c4002000d021e4002000d80c1d040c1d8556590057590020001320001b67f400000c387ff000000c1406df000001746cdf004cdc004cdc402000480bc5610d104000001667f400000c407ff000000c1506df000001816cdf004cdc004cdcc22000c267f400000c487ff000000c1606df0000018b6cdf004cdc004cdcca2000ca0bc5670d1040000009225300043df4f09b0044dbd2f09bda44dbd22000da0bc5650d10400000264cf000000c07209300565b00575b002264004c7000000c0720001320001b67f400000c1d7ff000000c1a06df000001ac6ce7004cdc004cdc402000487ff000000c1b06df000001b46ce7004cdc004cdcc22000c27ff000000c1c06df000001bc6ce7004cdc004cdcca2000ca4ef000000c010c1d040c1d8521c4002000d021e4002000d80c1d040c1d855659005749000bc5640d10480000072000135e5e005e5e000d10c000003120001320001b67f400000c507ff000000c1706df000001dc6cdf004cdc004cdc402000480bc5620d104000001667f400000c587ff000000c1806df000001e96cdf004cdc004cdcc22000c267f400000c607ff000000c1906df000001f36cdf004cdc004cdcca2000ca4ef000000c020c1d040c1d8521c4002000d021e4002000d80c1d040c1d855e5e005f5e000bc5660d10480000175ef000000c004cf000000c032000405e7000000c005ef000000c014cf000000c042000405e7000000c015ef000000c024cf000000c052000405e7000000c020405b50402424cf000000c084c7000000c004cf000000c094c7000000c014cf000000c0a4c7000000c0205f420ffffff0444bc0d10c00000ac0d10800000335e7000000c084cf000000c002000440c1c085e7000000c035ef000000c032000030d104a0000030acf6000000c0d10800000225e7000000c094cf000000c012000440c1c085e7000000c045ef000000c042000030d104a0000030acf6000000c0d10800000115e7000000c0a4cf000000c022000440c1c085e7000000c055ef000000c052000030d104a0000030acf6000000c0c1d2021c40020008000000c02e6de5c7000000c0e02ee974f7000000c0f4cf000000c064c7000000c1064f400000c1120001b060c800002715f5c0063f40000000045f400000cb10d108000002e20ee000d108000002b44f400000cbf4c7000000c1d4cf000000c060bc46a0d104000002164f400000c1466f400000c1a67f400000c380603800002a25fe40020000b0d104a00001222e40020004801418c21b5005fe50044f400000cbf20004d0d10420000085fe40001418c5d640044f4000000014c6600205c00205e0004078700000c0604800002d0218f000c1c990140ce00000f21a400208f0046f40000000d20005d0d104f00000420cf0020c4000c1d8320004821ba00227200204a000603800002cc07da8f20000b0d104a00001021bc0064f400000c10204c000c1d870140c8000c184ce40020004821b5004d6500208f000141885d640000000020af0001428821a5000c1d0800000c60f00000020502e8df0140ce00ffff0140cd0000010d104a00000300000c02c89e0c1d2021c40020008021c50002a8df61f00000020364f40000028065f400000c900bcf600d104800000f0401413907000610800002f45edd004edc005fdde22000ea5659005749000444bc0d10c00000640401513909000610800003015edd004edc005fdde22000ea5651005749000444bc0d10c0000057000039007d00b800d200db00f0013c016401a300204e002da2004075005b0c00809c00b5aa01009c016a7802000002d33803fd9305a30307f64f0b3f300fe2f61670bc00ba3700d3d400f0f40112100137b401627c01931901ca5502091302505402a13902fd0803653103db5004613304f8e105a49b0666e4074285083a9209526f0a8dcf0bf0ba0d7f860f3ed911339a1362e615d1f918860f1b843e1ed13b22711c56f0000004200c1d0c21990061f40000080004491130000006208000003b44d8004c590056f0000004200140c50000040d104a0000150140c50000060d104200002561f400033dfe5fe1000140cd0100000d104a00001e0d10800000362f010061f400033dfe5f61000d10c000001661f400033dfe5fe1000140cd0100000d104a0000060d10800000270d10c000000b61f400033dff5fe1000140c80000010140ce00000321ae005e610056f0000004200140c40000040c1d0421840061f400033dff5fe1000140ce00000321ae002000400c1d0a21990061f400033e0004491130000006208000007f44d8004c590066f00000020800000c2e000061f40003bdfe5fe1000140cd0100000d104200000861f40003bdff5fe1000140ce00000321ae0061f400033dff5e610000000c221e000236df0c1ca121ae002000030d104a0000e20140c400000121940023cf0020000b0d10420000d50c1d0c21990061f400000800044911223500228f000140ce00000421ae002000030d104a00000f228e000c1d0c21990061f4000008000449113040000620800000ba4cd9004458000d10c000001a228e000140c40000000c1d0421850061f400033dff5fe1000140c80000020140ce00000321ae002000600c1d0a21990061f40003be000449113040000620800000d44cd900445800023e9f0c1ca121ae000c1c0621990061f40000000007e985025fdf20000b0d104200000520af000d10c000000a21e70020ae0020001421c60045f40008f5822000e8200078025fcf21e5003040000620800000f444e0002000a00c1d0c5658000236df0c1c9121ae000140c60000ff0140c50000400d10420000062f010002578f0d10c0000057218f000140cd0000400d104900001021ee000140c40000400c1c02219900380000232e002000030d104200001345f4000025540d10c00000120c1c8321f90070f40000001021ae000140c500001f0d104200000645f4007fffff0d10c000000504090100000007e985230e002000030d104200000b02579e2000030d104a0000072f000002578f21e7000d10c000000a02679e2000030d10420000052700000d10c0000003025f9730400006108000015144d80056d0002000492000100c1c0221c40020007421c6002000e820007821e700208e0020001421c400230e002000030d104a00000320e400445800445800025f872e010002678e2f000002578f023e9f0c1c9121ae000140c60000ff2000030d104a00001722b10039200004491130400006208000016644d8004c5900228e0057f0000004200c1d8321b90061f4000007f00449112f01005f59005e61000d10c00000040d108000000c23ce000140c000004021900034610000000c0d108000000434610000000c56f0000004200c1d0221990061f4000007f00449112f00005f610000000c60f00000020656f0000004200c1d0221990061f4000007f00449115fe1000140cd0100000d104a00000300000c2f00005f59005fe1000c1d8d21b90061f4000008200449113300000620800001a54cd900445b00" + "03e600060034805300d702170279031a56700000020e64f00000020944f40000ab0957e4000140ce00ffff20004d0d104200000a44f400000909020c9f0140ce00ffff20004d0d104a00000300000c56f00000020b0140c000008056700000020b56f000000418200032023c9f0140ce00007f44f40000310045f40000360020000b208f0002a06821e40020004005f425ffffff05f426ffffff219500041d0605f420ffffff040480060c8000003944d800208e000140c600007f565e0056f00000020c44f400ffffff020cdf0140ce00ffff02a040566600041d0677f400000010300000021e9e2000030d104a0000060d10800000090d10c00000040d10800001d40444bc0d10c00001cf05f420ffffff05f421ffffff05f424ffffff02069e21990061f40000284044e90002658461f4000028c044e900020e9e21990061f40000294046e90002659f45f400fff9ba20006845f4000006f32000ea02658f2000d161f400002a4047e900026d8721c40002169e21990061f4000029c046e9002000d121c40046f4000842b82000d90265cf0c1c2021990061f400002b4045e9000206de21990061f400002ac047e900026dc7021ede21990061f400002bc046e9002000e10275ce44f4006fd9d32000d102758e61f400002c4047e900020ede21990061f400002cc044e9002000c1027d8e21c40046f4007ff7cf2000d020003220003244f400aceb922000c202fdce61f400002d4044e9002000c1027dce02269e21990061f400002dc044e900028584029d9e2000030d10420000060265d40255c40275d4025d840d108000026202369e2000030d104900000d025dce0d108000000e0d108000012c23ee00025dd42000440d108000000700000c23ee000d108000000300000c2000030d104a00011e06cc000001f10265de0255d42000440c1c0c2000400255ce0275de025d942000440c1c0c200040025d8e0205940255d602659e2000d2208f00026d972000ce02058f21c5000205de21c600200060020ddf0140cd0000200290500205cc218400208e0046f42640000020005420003220003621c40061f4000030c046d90056d90057d9d221c60056d9da21e60057d9d221c60056d9da21e60057d9d221c60056d9da21e60057d9d221c60056d9da21e60057d9d221c60056d9da21e6002000d221c70061f4000030cc46d90056d90057d9d221c60056d9da21e60057d9d221c6002000da21e6000205d52000e821e60021ee002000d220007020003220003221c700020d9446f40003ea9f208e002000502000d6020d8e020ddf0140cd000b45026ddf45f40000003b02906821e6000285df028d9921a5002000ee0285cf028d8921e50021c4002000a821e5002000f021c4000275962000d0028ddf02959921a40046f4000046a02000ea2000de028dcf02958921e400025d962000d602dd8e02159447f4007f62f52000c802158f027d962000d002fd9447f40078e1002000c802fd8f02fdd62000d220003620002220002221c500023594208e0046f400150bff2000e22000d602358e021d94021d8546f4007e96e02000e82000de021dd446f4007d2dc02000da021dcf21e40061f4000030d146d90046d9d802259446d9da0225d446d9da022d942000da46d9da022dd42000da0225940225c4021dd4022584022d94022dc4022d8f21e40047f400205efc2000c802359645f4000cb9942000ea21e5000215d4208f0046f4007a6dd82000ea2000de0215cf02edcf0235d446f4000cb3062500d846f4286ef35f2700002000382124000235c4023d97023d8446f4003ef76c2000d82000be023dd446f4007bddb02000da023dcf21e500024594208f0046f40024a3972000ea2000de02458f21e5000245d4208f0046f40024a4722000ea2000de0245cf21e700024d9446f4007f54c62000d0024d8e024dd446f4007ec4db2000d8024dcf21e40020004421c4002000c021c400027dd62000d802edd420004820003a20003a20003a20003a02dd9420004821e40002559720ee000285962000d22000b602558e0d108000016421c400208e00200032200032565800565800020dde0140c0000001020dce00000c44f4007fffff020584024d84024dc40235d447f400051eb856f4007ae1482000c202158e02fd8e200013020dce020d8e44f4007fffff0285c444f400ffffff028d8402659e0255d420004021c40046f40000000056f4007fffff2000d60205ce00000c20001322b10006308000021856590002fd8e02fdce44f4007fffff020dc402858444f4005a5a5b0235c400000c05f420ffffff05f421ffffff05f424ffffff02069e21990061f40000320044e9000225840206de21990061f40000328044e900022d8461f40000330044e900022dc461f40000338044e9000225c461f40000340044e9000235c4020e9e21990061f40000348044e900023584021ede21990061f40000350044e900023d84020ede21990061f40000358044e900023dc402269e21990061f400002dc044e90002858402169e0c1d2021c4000225d62000d02000320225ce0d10800000c002369e2000030d104900000d02458e0d108000000e0d108000009823ee000245942000440d108000000700000c23ee000d108000000300000c2000030d104a00008a06ce000002ff020dd40225d602259e2000d221c500208f00022dd62000de020dcf02059e20006002058c218400208e0046f42640000020005420003220003621c50020a40020008021c40046f4000002a156f400ffb34b2000d221c60056f4000519af2000d221c60056f400d6a8862000d221c60056f4006487ed2000d221c6002000e021c50020a40020008021c40046f400e0810357f40003eff22000da20006821e4000235d62000d021c5000205df020d9921a400022d962000de0205cf020d8921e6002000e00245ce025d9e0140c0000001025d8e0140c50010000d10410000200215940215d546f400025ac0208f002000ee21e40020ae002000d221c50046f400016b862000e60215ce2000de02158f021d94208e0046f40000f5b02000d6021d8e21c40020004821e400023dd62000d02000320d10c00000032000130245d420004021c500021dd4208f000235962000ea2000de021dcf20003a20003a21e400023d962000d821e40002559720ee000285962000d22000b602558e0d108000005221c40046f4006e147b2000d056580056580000000c200013025d8e44f4007fffff0205c4020dc444f400ffffff020d8444f40087652b02058444f40068bcbe02158444f400cd95280215c444f400dd0890021d8400000c20001322b10006308000031b56590044f4007fffff025d8400000c029d9e2000030d10420000050216de0c1d2002f5ce0216de21990061f400002e4044e9000295c461f400002ec044e900029d8461f400002f4044e90002b5c40226de21990061f400002fc044e900029dc461f40000304044e90002a584022e9e21990061f400002fc044e90002a5c461f40000304044e90002ad8400000c21c5000216de0c1d2002f5d42000440c1c0c20004002f5ce21cf000c1c202199000140ce00ffff0c1d8f21e60061f400002e4004491157d90021e70056e10020007421c40020ee002000d20295ce61f400002ec004491157d90021e70056e10020007421c40020ee002000d2029d8e61f400002f4004491157d90021e70056e10020007421c40020ee002000d202b5ce20ae0021c40002bd9f02bdd921a70002b5d62000da2000be02bd8f02bdc921e70020007421c4000295d62000d020003220003220003220003220003221c40020008021c60020009021c60046f4d016a16221c7412000b621c50002add4208e0046f400145a1d2000e22000d602adce21c70020af0020007c20002a21e50002b594208e0046f4001e353f2000e22000d602b58e21c40020af0020004c21e500029dd62000b020003220003221c40020008021c60020009021c60046f4d016a16221c7412000b621c40002a5962000d802a5d62000e020003220003220003221c40020008021c60020009021c60046f4d016a16221c7412000b621c40002ad962000da02b59446f4002d413d2000da20003a20003a20003a20003a21e40020008021c60020009021c60046f4d016a16221c7412000b621c400029d962000d020003200000c0039007d00b800d200db00f0013c016401a300204e002da2004075005b0c00809c00b5aa01009c016a7802000002d33803fd9305a30307f64f0b3f300fe2f61670bc00ba3700d3d400f0f40112100137b401627c01931901ca5502091302505402a13902fd0803653103db5004613304f8e105a49b0666e4074285083a9209526f0a8dcf0bf0ba0d7f860f3ed911339a1362e615d1f918860f1b843e1ed13b22711c56f0000004200c1d0c21990061f40000080004491130000006208000003b44d8004c590056f0000004200140c50000000d104a0000150140c50000020d104200002561f40003bdfe5fe1000140cd0100000d104a00001e0d10800000362f010061f40003bdfe5f61000d10c000001661f40003bdfe5fe1000140cd0100000d104a0000060d10800000270d10c000000b61f40003bdff5fe1000140c80000010140ce00000321ae005e610056f0000004200140c40000000c1d0421840061f40003bdff5fe1000140ce00000321ae002000400c1d0a21990061f40003be0004491130000006208000007f44d8004c590066f00000020800000c2e000061f400033dfe5fe1000140cd0100000d104200000861f400033dff5fe1000140ce00000321ae0061f40003bdff5e610000000c221e000236df0c1ca121ae002000030d104a0000e20140c400000121940023cf0020000b0d10420000d50c1d0c21990061f400000800044911223500228f000140ce00000421ae002000030d104200000f228e000c1d0c21990061f4000008000449113040000620800000ba4cd9004458000d10c000001a228e000140c40000040c1d0421850061f40003bdff5fe1000140c80000020140ce00000321ae002000600c1d0a21990061f400033e000449113040000620800000d44cd900445800023e9f0c1ca121ae000c1c0621990061f40000000007e985025fdf20000b0d104200000520af000d10c000000a21e70020ae0020001421c60045f40008f5822000e8200078025fcf21e5003040000620800000f444e0002000a00c1d0c5658000236df0c1c9121ae000140c60000ff0140c50000400d10420000062f010002578f0d10c0000057218f000140cd0000400d104900001021ee000140c40000400c1c02219900380000232e002000030d104200001345f4000025540d10c00000120c1c8321f90070f40000001021ae000140c500001f0d104200000645f4007fffff0d10c000000504090100000007e985230e002000030d104200000b02579e2000030d104a0000072f000002578f21e7000d10c000000a02679e2000030d10420000052700000d10c0000003025f9730400006108000015144d80056d0002000492000100c1c0221c40020007421c6002000e820007821e700208e0020001421c400230e002000030d104a00000320e400445800445800025f872e010002678e2f000002578f023e9f0c1c9121ae000140c60000ff2000030d104a00001722b10039200004491130400006208000016644d8004c5900228e0057f0000004200c1d8321b90061f4000007f00449112f01005f59005e61000d10c00000040d108000000c23ce000140c000004021900034610000000c0d108000000434610000000c56f0000004200c1d0221990061f4000007f00449112f00005f610000000c60f00000020656f0000004200c1d0221990061f4000007f00449115fe1000140cd0100000d104a00000300000c2f00005f59005fe1000c1d8d21b90061f4000008200449113300000620800001a54cd900445b0000000c000034805300d702170279031a56700000020e64f00000020944f40000ab0957e4000140ce00ffff20004d0d104200000a44f400000909020c9f0140ce00ffff20004d0d104a00000300000c56f00000020b0140c000008056700000020b56f000000418200032023c9f0140ce00007f44f40000310045f40000360020000b208f0002a06821e40020004005f425ffffff05f426ffffff219500041d0605f420ffffff040480060c8000003944d800208e000140c600007f565e0056f00000020c44f400ffffff020cdf0140ce00ffff02a040566600041d0677f400000010300000021e9e2000030d104a0000060d10800000090d10c00000040d10800001d40444bc0d10c00003d405f420ffffff05f421ffffff05f424ffffff02069e21990061f40000284044e90002658461f4000028c044e900020e9e21990061f40000294046e90002659f45f400fff9ba20006845f4000006f32000ea02658f2000d161f400002a4047e900026d8721c40002169e21990061f4000029c046e9002000d121c40046f4000842b82000d90265cf0c1c2021990061f400002b4045e9000206de21990061f400002ac047e900026dc7021ede21990061f400002bc046e9002000e10275ce44f4006fd9d32000d102758e61f400002c4047e900020ede21990061f400002cc044e9002000c1027d8e21c40046f4007ff7cf2000d020003220003244f400aceb922000c202fdce61f400002d4044e9002000c1027dce02269e21990061f400002dc044e900028584029d9e2000030d10420000060265d40255c40275d4025d840d108000026202369e2000030d104900000d025dce0d108000000e0d108000012c23ee00025dd42000440d108000000700000c23ee000d108000000300000c2000030d104a00011e06cc000001f10265de0255d42000440c1c0c2000400255ce0275de025d942000440c1c0c200040025d8e0205940255d602659e2000d2208f00026d972000ce02058f21c5000205de21c600200060020ddf0140cd0000200290500205cc218400208e0046f42640000020005420003220003621c40061f4000030c046d90056d90057d9d221c60056d9da21e60057d9d221c60056d9da21e60057d9d221c60056d9da21e60057d9d221c60056d9da21e60057d9d221c60056d9da21e6002000d221c70061f4000030cc46d90056d90057d9d221c60056d9da21e60057d9d221c6002000da21e6000205d52000e821e60021ee002000d220007020003220003221c700020d9446f40003ea9f208e002000502000d6020d8e020ddf0140cd000b45026ddf45f40000003b02906821e6000285df028d9921a5002000ee0285cf028d8921e50021c4002000a821e5002000f021c4000275962000d0028ddf02959921a40046f4000046a02000ea2000de028dcf02958921e400025d962000d602dd8e02159447f4007f62f52000c802158f027d962000d002fd9447f40078e1002000c802fd8f02fdd62000d220003620002220002221c500023594208e0046f400150bff2000e22000d602358e021d94021d8546f4007e96e02000e82000de021dd446f4007d2dc02000da021dcf21e40061f4000030d146d90046d9d802259446d9da0225d446d9da022d942000da46d9da022dd42000da0225940225c4021dd4022584022d94022dc4022d8f21e40047f400205efc2000c802359645f4000cb9942000ea21e5000215d4208f0046f4007a6dd82000ea2000de0215cf02edcf0235d446f4000cb3062500d846f4286ef35f2700002000382124000235c4023d97023d8446f4003ef76c2000d82000be023dd446f4007bddb02000da023dcf21e500024594208f0046f40024a3972000ea2000de02458f21e5000245d4208f0046f40024a4722000ea2000de0245cf21e700024d9446f4007f54c62000d0024d8e024dd446f4007ec4db2000d8024dcf21e40020004421c4002000c021c400027dd62000d802edd420004820003a20003a20003a20003a02dd9420004821e40002559720ee000285962000d22000b602558e0d108000016421c400208e00200032200032565800565800020dde0140c0000001020dce00000c44f4007fffff020584024d84024dc40235d447f400051eb856f4007ae1482000c202158e02fd8e200013020dce020d8e44f4007fffff0285c444f400ffffff028d8402659e0255d420004021c40046f40000000056f4007fffff2000d60205ce00000c20001322b10006308000021856590002fd8e02fdce44f4007fffff020dc402858444f4005a5a5b0235c400000c05f420ffffff05f421ffffff05f424ffffff02069e21990061f40000320044e9000225840206de21990061f40000328044e900022d8461f40000330044e900022dc461f40000338044e9000225c461f40000340044e9000235c4020e9e21990061f40000348044e900023584021ede21990061f40000350044e900023d84020ede21990061f40000358044e900023dc402269e21990061f400002dc044e90002858402169e0c1d2021c4000225d62000d02000320225ce0d10800000c002369e2000030d104900000d02458e0d108000000e0d108000009823ee000245942000440d108000000700000c23ee000d108000000300000c2000030d104a00008a06ce000002ff020dd40225d602259e2000d221c500208f00022dd62000de020dcf02059e20006002058c218400208e0046f42640000020005420003220003621c50020a40020008021c40046f4000002a156f400ffb34b2000d221c60056f4000519af2000d221c60056f400d6a8862000d221c60056f4006487ed2000d221c6002000e021c50020a40020008021c40046f400e0810357f40003eff22000da20006821e4000235d62000d021c5000205df020d9921a400022d962000de0205cf020d8921e6002000e00245ce025d9e0140c0000001025d8e0140c50010000d10410000200215940215d546f400025ac0208f002000ee21e40020ae002000d221c50046f400016b862000e60215ce2000de02158f021d94208e0046f40000f5b02000d6021d8e21c40020004821e400023dd62000d02000320d10c00000032000130245d420004021c500021dd4208f000235962000ea2000de021dcf20003a20003a21e400023d962000d821e40002559720ee000285962000d22000b602558e0d108000005221c40046f4006e147b2000d056580056580000000c200013025d8e44f4007fffff0205c4020dc444f400ffffff020d8444f40087652b02058444f40068bcbe02158444f400cd95280215c444f400dd0890021d8400000c20001322b10006308000031b56590044f4007fffff025d8400000c029d9e2000030d10420000050216de0c1d2002f5ce0216de21990061f400002e4044e9000295c461f400002ec044e900029d8461f400002f4044e90002b5c40226de21990061f400002fc044e900029dc461f40000304044e90002a584022e9e21990061f400002fc044e90002a5c461f40000304044e90002ad8400000c21c5000216de0c1d2002f5d42000440c1c0c20004002f5ce21cf000c1c202199000140ce00ffff0c1d8f21e60061f400002e4004491157d90021e70056e10020007421c40020ee002000d20295ce61f400002ec004491157d90021e70056e10020007421c40020ee002000d2029d8e61f400002f4004491157d90021e70056e10020007421c40020ee002000d202b5ce20ae0021c40002bd9f02bdd921a70002b5d62000da2000be02bd8f02bdc921e70020007421c4000295d62000d020003220003220003220003220003221c40020008021c60020009021c60046f4d016a16221c7412000b621c50002add4208e0046f400145a1d2000e22000d602adce21c70020af0020007c20002a21e50002b594208e0046f4001e353f2000e22000d602b58e21c40020af0020004c21e500029dd62000b020003220003221c40020008021c60020009021c60046f4d016a16221c7412000b621c40002a5962000d802a5d62000e020003220003220003221c40020008021c60020009021c60046f4d016a16221c7412000b621c40002ad962000da02b59446f4002d413d2000da20003a20003a20003a20003a21e40020008021c60020009021c60046f4d016a16221c7412000b621c400029d962000d020003200000c801d004100db00e200f201070114011e013f014c01560175017d018501a401b101bb81ec020c020f022702410254028c8295029982a200004000000100070000004100074000070100074100005000006000000200000300080000090000000066f00000020502eedf0140ce00ffff0140cd0000010d104a0000090bce6a0d104800000300000c0444bc0d10c00002760140c60004005c7000000c066a7000000c0c63f00000020973f4000001f8204b006b7000000c0765f400000c0846f4000000015ef000000c0b44f4005a5a5a2000450d104a00000c4c7000000c0b44f400ffffff4c7000000c0e65f400000c0046f40000000206c60000005120001b64f400000c0067f400000c0302a69e0d10800001a502dede0d10800001a202e69e0d108000019f65f400000c085d7000000c0d02e6de4cf000000c0e2000450d104200000f02ee9e4cf000000c0f2000450d10420000095ef000000c064cf000000c102000450d104a0000040d10800001972000134cf000000c060bc46a0d10400000030ace655ff000000c0d20000b0d10420000030ace665ff000000c124cf000000c132000480d104a0000040ace600ace635ff000000c1120000b0d104a0000030ace635ff0000000484cf0000000494cf04a0001744cf04a00017520004a0d104a0000040ace630ace695ff000000c154cf000000c162000484cf000000c1b2000484cf000000c1c2000480d104a0000030ace615ff000000c184cf000000c192000480d104a0000040ace620ace645ff000000c1720000b0d104a0000030ace645ff0000000524cf0000000534cf04a00017e4cf04a00017f20004a0d104a0000030ace672184000140c600003e0d104200000c5ff000000c1446f40000000820005d0d1042000005208e000ace682184002085006af000000c0c60f00000020405ffa0381f0061f00000020339050065f40000004a66f400000c9047f4004000000610800001dd0bc5680d104000001120001320001b0608800000e5f0b80044c8d22000da205800205800205d002400004459004459000d10c000006f64f400000cb0f0b8000608800000f5b388d05e5cd8f0b8005f5c002058000bc5630d10480000072000135659005659000d10c000003a20001320001b67f400000c207ff000000c1106df0000010b6cdf004cdc004cdc402000480bc5600d104000001667f400000c287ff000000c1206df000001186cdf004cdc004cdcc22000c267f400000c307ff000000c1306df000001226cdf004cdc004cdcca2000ca0bc5690d1040000009225300043d54f09b0044dbd2f09bda44dbd22000da4ef000000c000c1d040c1d8521c40021e4d02000d80c1d040c1d8556590057590020001320001b67f400000c387ff000000c1406df000001436cdf004cdc004cdc402000480bc5610d104000001667f400000c407ff000000c1506df000001506cdf004cdc004cdcc22000c267f400000c487ff000000c1606df0000015a6cdf004cdc004cdcca2000ca0bc5670d1040000009225300043df4f09b0044dbd2f09bda44dbd22000da0bc5650d10400000246bf000000c07565b00575b006b7000000c0720001320001b67f400000c1d7ff000000c1a06df000001796ce7004cdc004cdc402000487ff000000c1b06df000001816ce7004cdc004cdcc22000c27ff000000c1c06df000001896ce7004cdc004cdcca2000ca4ef000000c010c1d040c1d8521c40021e4d02000d80c1d040c1d855659005749000bc5640d10480000072000135e5e005e5e000d10c000003020001320001b67f400000c507ff000000c1706df000001a86cdf004cdc004cdc402000480bc5620d104000001667f400000c587ff000000c1806df000001b56cdf004cdc004cdcc22000c267f400000c607ff000000c1906df000001bf6cdf004cdc004cdcca2000ca4ef000000c020c1d040c1d8521c40021e4d02000d80c1d040c1d855e5e005f5e000bc5660d104800001064f400000c0067f400000c034cdf005ee4004cdf405e5c005ee4004cdf405e5c005ee4002000405e64000405b504024264f400000c0867f400000c004cdc004c5f004cdc004c5f004cdc004c5f0005f420ffffff0444bc0d10c00000ea0d108000000d5e5d004cdc002000440c1c085e67005edf002000030d104a0000030acf6000000c0c1d2021c40020008000000c02e6de5c7000000c0e02ee974f7000000c0f4cf000000c064c7000000c1064f400000c1120001b060c8000020d5f5c0063f40000000045f400000cb10d108000002e20ee000d108000002b44f400000cbf4c7000000c1d4cf000000c060bc46a0d104000002164f400000c1466f400000c1a67f400000c3806038000023e5fe40020000b0d104a00001222e40020004801418c21b5005fe50044f400000cbf20004d0d10420000085fe40001418c5d640044f4000000014c6600205c00205e0004078700000c06048000026e218f000c1c990140ce00000f21a400208f0046f40000000d20005d0d104f00000420cf0020c400209a00227200204a0007e28606038000026a20cf000140ce00000f0d104a00001021bc0064f400000c10204c000c1d870140c8000c184ce40020004821b5004d6500208f000141885d640020cf000c1ec921a60020af0001428821a5000c1d0800000c60f00000020502e8df0140ce00ffff0140cd0000010d104a00000300000c02c89e0c1d2021c40020008021c50002a8df61f00000020364f40000028065f400000c900bcf600d104800000f0401413907000610800002925edd004edc005fdde22000ea5659005749000444bc0d10c00000c604015139090006108000029f5edd004edc005fdde22000ea5651005749000444bc0d10c00000b9000039007d00b800d200db00f0013c016401a300204e002da2004075005b0c00809c00b5aa01009c016a7802000002d33803fd9305a30307f64f0b3f300fe2f61670bc00ba3700d3d400f0f40112100137b401627c01931901ca5502091302505402a13902fd0803653103db5004613304f8e105a49b0666e4074285083a9209526f0a8dcf0bf0ba0d7f860f3ed911339a1362e615d1f918860f1b843e1ed13b22711c56f0000004200c1d0c21990061f40000080004491130000006208000003b44d8004c590056f0000004200140c50000040d104a0000150140c50000060d104200002561f400033dfe5fe1000140cd0100000d104a00001e0d10800000362f010061f400033dfe5f61000d10c000001661f400033dfe5fe1000140cd0100000d104a0000060d10800000270d10c000000b61f400033dff5fe1000140c80000010140ce00000321ae005e610056f0000004200140c40000040c1d0421840061f400033dff5fe1000140ce00000321ae002000400c1d0a21990061f400033e0004491130000006208000007f44d8004c590066f00000020800000c2e000061f40003bdfe5fe1000140cd0100000d104200000861f40003bdff5fe1000140ce00000321ae0061f400033dff5e610000000c221e000236df0c1ca121ae002000030d104a0000e20140c400000121940023cf0020000b0d10420000d50c1d0c21990061f400000800044911223500228f000140ce00000421ae002000030d104a00000f228e000c1d0c21990061f4000008000449113040000620800000ba4cd9004458000d10c000001a228e000140c40000000c1d0421850061f400033dff5fe1000140c80000020140ce00000321ae002000600c1d0a21990061f40003be000449113040000620800000d44cd900445800023e9f0c1ca121ae000c1c0621990061f40000000007e985025fdf20000b0d104200000520af000d10c000000a21e70020ae0020001421c60045f40008f5822000e8200078025fcf21e5003040000620800000f444e0002000a00c1d0c5658000236df0c1c9121ae000140c60000ff0140c50000400d10420000062f010002578f0d10c0000057218f000140cd0000400d104900001021ee000140c40000400c1c02219900380000232e002000030d104200001345f4000025540d10c00000120c1c8321f90070f40000001021ae000140c500001f0d104200000645f4007fffff0d10c000000504090100000007e985230e002000030d104200000b02579e2000030d104a0000072f000002578f21e7000d10c000000a02679e2000030d10420000052700000d10c0000003025f9730400006108000015144d80056d0002000492000100c1c0221c40020007421c6002000e820007821e700208e0020001421c400230e002000030d104a00000320e400445800445800025f872e010002678e2f000002578f023e9f0c1c9121ae000140c60000ff2000030d104a00001722b10039200004491130400006208000016644d8004c5900228e0057f0000004200c1d8321b90061f4000007f00449112f01005f59005e61000d10c00000040d108000000c23ce000140c000004021900034610000000c0d108000000434610000000c56f0000004200c1d0221990061f4000007f00449112f00005f610000000c60f00000020656f0000004200c1d0221990061f4000007f00449115fe1000140cd0100000d104a00000300000c2f00005f59005fe1000c1d8d21b90061f4000008200449113300000620800001a54cd900445b00" ], [ "stock", @@ -16182,15 +16099,15 @@ ], "mw_engine_words_0_1": [ ".run", - 246728 + 246436 ], "mw_engine_relocations_0_1": [ ".run", - 246710 + 246418 ], "mw_engine_words_0_2": [ ".run", - 244390 + 244392 ], "mw_engine_relocations_0_2": [ ".run", @@ -16246,7 +16163,7 @@ ], "CSWTCH.20": [ ".run", - 247998 + 247706 ], "masked_at": [ ".bss", @@ -16254,7 +16171,7 @@ ], "tasks": [ ".run", - 248014 + 247722 ], "dl_selection_capture": [ ".run", @@ -16318,7 +16235,7 @@ ], "k.0": [ ".run", - 248146 + 247854 ], "cell": [ ".run", @@ -16454,7 +16371,7 @@ ], "idle_cycles": [ ".run", - 249034 + 248742 ], "tip_until": [ ".bss", @@ -16482,15 +16399,15 @@ ], "names.3": [ ".run", - 249006 + 248714 ], "names.1": [ ".run", - 248932 + 248640 ], "names.2": [ ".run", - 248944 + 248652 ], "named.0": [ ".bss", @@ -16550,19 +16467,19 @@ ], "fx2": [ ".run", - 249092 + 248800 ], "fx1": [ ".run", - 249124 + 248832 ], "CSWTCH.4": [ ".run", - 249140 + 248848 ], "families": [ ".run", - 249166 + 248874 ], "arrays": [ ".run", @@ -16586,7 +16503,7 @@ ], "CSWTCH.48": [ ".run", - 249280 + 248988 ], "owned_reserve": [ ".run", @@ -17394,7 +17311,7 @@ ], "mw_resident_ab_x_A": [ ".run", - 249296 + 249004 ], "mw_resident_records_A_3": [ ".boot", @@ -17406,7 +17323,7 @@ ], "modwerk_table_declarations": [ ".run", - 260196 + 259904 ], "octamod_log_engine_begin": [ ".run", @@ -17658,7 +17575,7 @@ ], "modwerk_machine_declarations": [ ".run", - 259124 + 258832 ], "modwerk_machine_dsp_switch": [ ".run", @@ -18326,7 +18243,7 @@ ], "mw_resident_ab_x_B": [ ".run", - 249296 + 249004 ], "dl_selection_part_edit_guard": [ ".run", @@ -18854,7 +18771,7 @@ ], "mw_resident_ab_x_B_end": [ ".run", - 259116 + 258824 ], "mw_chooser_open": [ ".run", @@ -19342,7 +19259,7 @@ ], "mw_resident_ab_x_A_end": [ ".run", - 259116 + 258824 ], "modwerk_fx2_ids": [ ".run", @@ -22297,14 +22214,14 @@ 17394, "abs32", "sec:.run", - 259116 + 258824 ], [ ".run", 17404, "abs32", "sec:.run", - 249296 + 249004 ], [ ".run", @@ -22353,14 +22270,14 @@ 17750, "abs32", "sec:.run", - 259116 + 258824 ], [ ".run", 17760, "abs32", "sec:.run", - 249296 + 249004 ], [ ".run", @@ -37767,7 +37684,7 @@ 88096, "abs32", "sec:.run", - 260196 + 259904 ], [ ".run", @@ -37781,7 +37698,7 @@ 88116, "abs32", "sec:.run", - 260196 + 259904 ], [ ".run", @@ -37809,7 +37726,7 @@ 88266, "abs32", "sec:.run", - 259124 + 258832 ], [ ".run", @@ -37823,14 +37740,14 @@ 88294, "abs32", "sec:.run", - 260196 + 259904 ], [ ".run", 88300, "abs32", "sec:.run", - 259124 + 258832 ], [ ".run", @@ -37844,14 +37761,14 @@ 88338, "abs32", "sec:.run", - 260196 + 259904 ], [ ".run", 88344, "abs32", "sec:.run", - 259124 + 258832 ], [ ".run", @@ -37872,7 +37789,7 @@ 88564, "abs32", "sec:.run", - 260196 + 259904 ], [ ".run", @@ -37886,7 +37803,7 @@ 88604, "abs32", "sec:.run", - 260196 + 259904 ], [ ".run", @@ -47770,7 +47687,7 @@ 132042, "abs32", "sec:.run", - 247998 + 247706 ], [ ".run", @@ -47805,7 +47722,7 @@ 132208, "abs32", "sec:.run", - 247998 + 247706 ], [ ".run", @@ -48008,7 +47925,7 @@ 133500, "abs32", "sec:.run", - 247998 + 247706 ], [ ".run", @@ -48176,42 +48093,42 @@ 134894, "abs32", "sec:.run", - 248014 + 247722 ], [ ".run", 134912, "abs32", "sec:.run", - 248146 + 247854 ], [ ".run", 134964, "abs32", "sec:.run", - 248146 + 247854 ], [ ".run", 135124, "abs32", "sec:.run", - 248146 + 247854 ], [ ".run", 135164, "abs32", "sec:.run", - 248146 + 247854 ], [ ".run", 135184, "abs32", "sec:.run", - 248014 + 247722 ], [ ".run", @@ -48974,21 +48891,21 @@ 138876, "abs32", "sec:.run", - 248146 + 247854 ], [ ".run", 139148, "abs32", "sec:.run", - 248402 + 248110 ], [ ".run", 139336, "abs32", "sec:.run", - 248402 + 248110 ], [ ".run", @@ -49954,7 +49871,7 @@ 143658, "abs32", "sec:.run", - 249034 + 248742 ], [ ".run", @@ -50598,7 +50515,7 @@ 145350, "abs32", "sec:.run", - 248880 + 248588 ], [ ".run", @@ -50612,7 +50529,7 @@ 145390, "abs32", "sec:.run", - 248736 + 248444 ], [ ".run", @@ -50647,14 +50564,14 @@ 145472, "abs32", "sec:.run", - 248836 + 248544 ], [ ".run", 145496, "abs32", "sec:.run", - 248848 + 248556 ], [ ".run", @@ -50682,7 +50599,7 @@ 145594, "abs32", "sec:.run", - 248891 + 248599 ], [ ".run", @@ -50766,7 +50683,7 @@ 145846, "abs32", "sec:.run", - 249006 + 248714 ], [ ".run", @@ -50801,7 +50718,7 @@ 146086, "abs32", "sec:.run", - 248740 + 248448 ], [ ".run", @@ -50864,28 +50781,28 @@ 146204, "abs32", "sec:.run", - 248432 + 248140 ], [ ".run", 146214, "abs32", "sec:.run", - 248794 + 248502 ], [ ".run", 146242, "abs32", "sec:.run", - 248437 + 248145 ], [ ".run", 146250, "abs32", "sec:.run", - 248802 + 248510 ], [ ".run", @@ -50899,14 +50816,14 @@ 146304, "abs32", "sec:.run", - 248437 + 248145 ], [ ".run", 146310, "abs32", "sec:.run", - 248808 + 248516 ], [ ".run", @@ -50920,14 +50837,14 @@ 146342, "abs32", "sec:.run", - 248432 + 248140 ], [ ".run", 146350, "abs32", "sec:.run", - 248813 + 248521 ], [ ".run", @@ -50941,14 +50858,14 @@ 146400, "abs32", "sec:.run", - 248437 + 248145 ], [ ".run", 146408, "abs32", "sec:.run", - 248820 + 248528 ], [ ".run", @@ -50969,28 +50886,28 @@ 146608, "abs32", "sec:.run", - 248447 + 248155 ], [ ".run", 146628, "abs32", "sec:.run", - 248451 + 248159 ], [ ".run", 146656, "abs32", "sec:.run", - 248452 + 248160 ], [ ".run", 146662, "abs32", "sec:.run", - 248442 + 248150 ], [ ".run", @@ -51004,7 +50921,7 @@ 146692, "abs32", "sec:.run", - 248932 + 248640 ], [ ".run", @@ -51046,7 +50963,7 @@ 146966, "abs32", "sec:.run", - 248578 + 248286 ], [ ".run", @@ -51067,14 +50984,14 @@ 147020, "abs32", "sec:.run", - 248791 + 248499 ], [ ".run", 147056, "abs32", "sec:.run", - 248703 + 248411 ], [ ".run", @@ -51088,7 +51005,7 @@ 147084, "abs32", "sec:.run", - 248719 + 248427 ], [ ".run", @@ -51109,14 +51026,14 @@ 147230, "abs32", "sec:.run", - 248417 + 248125 ], [ ".run", 147250, "abs32", "sec:.run", - 248431 + 248139 ], [ ".run", @@ -51186,14 +51103,14 @@ 147614, "abs32", "sec:.run", - 248691 + 248399 ], [ ".run", 147638, "abs32", "sec:.run", - 248691 + 248399 ], [ ".run", @@ -51214,7 +51131,7 @@ 147736, "abs32", "sec:.run", - 248944 + 248652 ], [ ".run", @@ -51270,7 +51187,7 @@ 148402, "abs32", "sec:.run", - 248678 + 248386 ], [ ".run", @@ -51291,7 +51208,7 @@ 148612, "abs32", "sec:.run", - 248682 + 248390 ], [ ".run", @@ -51312,7 +51229,7 @@ 148816, "abs32", "sec:.run", - 248686 + 248394 ], [ ".run", @@ -51347,21 +51264,21 @@ 148940, "abs32", "sec:.run", - 248437 + 248145 ], [ ".run", 148946, "abs32", "sec:.run", - 248794 + 248502 ], [ ".run", 148968, "abs32", "sec:.run", - 248437 + 248145 ], [ ".run", @@ -51375,7 +51292,7 @@ 149010, "abs32", "sec:.run", - 248402 + 248110 ], [ ".run", @@ -51424,14 +51341,14 @@ 149358, "abs32", "sec:.run", - 248906 + 248614 ], [ ".run", 149384, "abs32", "sec:.run", - 248906 + 248614 ], [ ".run", @@ -51445,14 +51362,14 @@ 149442, "abs32", "sec:.run", - 248870 + 248578 ], [ ".run", 149474, "abs32", "sec:.run", - 248870 + 248578 ], [ ".run", @@ -51466,14 +51383,14 @@ 149516, "abs32", "sec:.run", - 248875 + 248583 ], [ ".run", 149534, "abs32", "sec:.run", - 248875 + 248583 ], [ ".run", @@ -51522,7 +51439,7 @@ 149988, "abs32", "sec:.run", - 248670 + 248378 ], [ ".run", @@ -51543,28 +51460,28 @@ 150120, "abs32", "sec:.run", - 248432 + 248140 ], [ ".run", 150126, "abs32", "sec:.run", - 248794 + 248502 ], [ ".run", 150148, "abs32", "sec:.run", - 248440 + 248148 ], [ ".run", 150158, "abs32", "sec:.run", - 248750 + 248458 ], [ ".run", @@ -51578,7 +51495,7 @@ 150196, "abs32", "sec:.run", - 248771 + 248479 ], [ ".run", @@ -51592,7 +51509,7 @@ 150232, "abs32", "sec:.run", - 248791 + 248499 ], [ ".run", @@ -51606,28 +51523,28 @@ 150282, "abs32", "sec:.run", - 248437 + 248145 ], [ ".run", 150292, "abs32", "sec:.run", - 248794 + 248502 ], [ ".run", 150324, "abs32", "sec:.run", - 248437 + 248145 ], [ ".run", 150330, "abs32", "sec:.run", - 248794 + 248502 ], [ ".run", @@ -51655,7 +51572,7 @@ 150454, "abs32", "sec:.run", - 248652 + 248360 ], [ ".run", @@ -51683,42 +51600,42 @@ 150610, "abs32", "sec:.run", - 248791 + 248499 ], [ ".run", 150640, "abs32", "sec:.run", - 248440 + 248148 ], [ ".run", 150646, "abs32", "sec:.run", - 248808 + 248516 ], [ ".run", 150664, "abs32", "sec:.run", - 248440 + 248148 ], [ ".run", 150674, "abs32", "sec:.run", - 248432 + 248140 ], [ ".run", 150682, "abs32", "sec:.run", - 248820 + 248528 ], [ ".run", @@ -51746,28 +51663,28 @@ 150746, "abs32", "sec:.run", - 248459 + 248167 ], [ ".run", 150756, "abs32", "sec:.run", - 248470 + 248178 ], [ ".run", 150766, "abs32", "sec:.run", - 248443 + 248151 ], [ ".run", 150774, "abs32", "sec:.run", - 248820 + 248528 ], [ ".run", @@ -51809,14 +51726,14 @@ 150956, "abs32", "sec:.run", - 248827 + 248535 ], [ ".run", 150992, "abs32", "sec:.run", - 248437 + 248145 ], [ ".run", @@ -51837,14 +51754,14 @@ 151032, "abs32", "sec:.run", - 248432 + 248140 ], [ ".run", 151038, "abs32", "sec:.run", - 248808 + 248516 ], [ ".run", @@ -51865,49 +51782,49 @@ 151080, "abs32", "sec:.run", - 248443 + 248151 ], [ ".run", 151090, "abs32", "sec:.run", - 248432 + 248140 ], [ ".run", 151096, "abs32", "sec:.run", - 248808 + 248516 ], [ ".run", 151118, "abs32", "sec:.run", - 248478 + 248186 ], [ ".run", 151128, "abs32", "sec:.run", - 248432 + 248140 ], [ ".run", 151134, "abs32", "sec:.run", - 248794 + 248502 ], [ ".run", 151220, "abs32", "sec:.run", - 248678 + 248386 ], [ ".run", @@ -51921,14 +51838,14 @@ 151322, "abs32", "sec:.run", - 248442 + 248150 ], [ ".run", 151330, "abs32", "sec:.run", - 248820 + 248528 ], [ ".run", @@ -51949,42 +51866,42 @@ 151378, "abs32", "sec:.run", - 248442 + 248150 ], [ ".run", 151388, "abs32", "sec:.run", - 248442 + 248150 ], [ ".run", 151398, "abs32", "sec:.run", - 248443 + 248151 ], [ ".run", 151408, "abs32", "sec:.run", - 248492 + 248200 ], [ ".run", 151450, "abs32", "sec:.run", - 248827 + 248535 ], [ ".run", 151492, "abs32", "sec:.run", - 248678 + 248386 ], [ ".run", @@ -51998,7 +51915,7 @@ 151616, "abs32", "sec:.run", - 248505 + 248213 ], [ ".run", @@ -52012,7 +51929,7 @@ 151636, "abs32", "sec:.run", - 248599 + 248307 ], [ ".run", @@ -52026,21 +51943,21 @@ 151662, "abs32", "sec:.run", - 248607 + 248315 ], [ ".run", 151678, "abs32", "sec:.run", - 248520 + 248228 ], [ ".run", 151726, "abs32", "sec:.run", - 248532 + 248240 ], [ ".run", @@ -52054,7 +51971,7 @@ 151746, "abs32", "sec:.run", - 248616 + 248324 ], [ ".run", @@ -52068,7 +51985,7 @@ 151786, "abs32", "sec:.run", - 248625 + 248333 ], [ ".run", @@ -52082,7 +51999,7 @@ 151830, "abs32", "sec:.run", - 248662 + 248370 ], [ ".run", @@ -52096,7 +52013,7 @@ 151856, "abs32", "sec:.run", - 248642 + 248350 ], [ ".run", @@ -52110,35 +52027,35 @@ 151882, "abs32", "sec:.run", - 248636 + 248344 ], [ ".run", 151898, "abs32", "sec:.run", - 248592 + 248300 ], [ ".run", 151908, "abs32", "sec:.run", - 248570 + 248278 ], [ ".run", 151918, "abs32", "sec:.run", - 248557 + 248265 ], [ ".run", 151928, "abs32", "sec:.run", - 248544 + 248252 ], [ ".run", @@ -52180,14 +52097,14 @@ 152146, "abs32", "sec:.run", - 249042 + 248750 ], [ ".run", 152152, "abs32", "sec:.run", - 249044 + 248752 ], [ ".run", @@ -52229,7 +52146,7 @@ 152282, "abs32", "sec:.run", - 249057 + 248765 ], [ ".run", @@ -52250,21 +52167,21 @@ 152330, "abs32", "sec:.run", - 249042 + 248750 ], [ ".run", 152336, "abs32", "sec:.run", - 249075 + 248783 ], [ ".run", 152436, "abs32", "sec:.run", - 249044 + 248752 ], [ ".run", @@ -52278,7 +52195,7 @@ 152478, "abs32", "sec:.run", - 249042 + 248750 ], [ ".run", @@ -52299,7 +52216,7 @@ 152562, "abs32", "sec:.run", - 249075 + 248783 ], [ ".run", @@ -52313,7 +52230,7 @@ 152604, "abs32", "sec:.run", - 249089 + 248797 ], [ ".run", @@ -52362,7 +52279,7 @@ 152808, "abs32", "sec:.run", - 249057 + 248765 ], [ ".run", @@ -52425,7 +52342,7 @@ 153148, "abs32", "sec:.run", - 249042 + 248750 ], [ ".run", @@ -52712,105 +52629,105 @@ 157042, "abs32", "sec:.run", - 249092 + 248800 ], [ ".run", 157120, "abs32", "sec:.run", - 249124 + 248832 ], [ ".run", 157640, "abs32", "sec:.run", - 249140 + 248848 ], [ ".run", 157732, "abs32", "sec:.run", - 249140 + 248848 ], [ ".run", 158334, "abs32", "sec:.run", - 249140 + 248848 ], [ ".run", 159414, "abs32", "sec:.run", - 249140 + 248848 ], [ ".run", 159590, "abs32", "sec:.run", - 249156 + 248864 ], [ ".run", 159902, "abs32", "sec:.run", - 249166 + 248874 ], [ ".run", 160546, "abs32", "sec:.run", - 249166 + 248874 ], [ ".run", 160554, "abs32", "sec:.run", - 249166 + 248874 ], [ ".run", 160574, "abs32", "sec:.run", - 249178 + 248886 ], [ ".run", 160640, "abs32", "sec:.run", - 249166 + 248874 ], [ ".run", 160868, "abs32", "sec:.run", - 249166 + 248874 ], [ ".run", 161040, "abs32", "sec:.run", - 249161 + 248869 ], [ ".run", 161352, "abs32", "sec:.run", - 249161 + 248869 ], [ ".run", @@ -52824,7 +52741,7 @@ 162164, "abs32", "sec:.run", - 249166 + 248874 ], [ ".run", @@ -52838,7 +52755,7 @@ 162244, "abs32", "sec:.run", - 249166 + 248874 ], [ ".run", @@ -52859,7 +52776,7 @@ 163160, "abs32", "sec:.run", - 249166 + 248874 ], [ ".run", @@ -52894,7 +52811,7 @@ 163798, "abs32", "sec:.run", - 249280 + 248988 ], [ ".run", @@ -53685,21 +53602,21 @@ 167348, "abs32", "sec:.run", - 249238 + 248946 ], [ ".run", 167370, "abs32", "sec:.run", - 249254 + 248962 ], [ ".run", 167392, "abs32", "sec:.run", - 249270 + 248978 ], [ ".run", @@ -55519,7 +55436,7 @@ 185888, "abs32", "sec:.run", - 259116 + 258824 ], [ ".run", @@ -58529,21 +58446,21 @@ 236966, "abs32", "sec:.run", - 246728 + 246436 ], [ ".run", 236970, "abs32", "sec:.run", - 246710 + 246418 ], [ ".run", 236978, "abs32", "sec:.run", - 244390 + 244392 ], [ ".run", @@ -58596,94 +58513,94 @@ ], [ ".run", - 248932, + 248640, "abs32", "sec:.run", - 248928 + 248636 ], [ ".run", - 248936, + 248644, "abs32", "sec:.run", - 248875 + 248583 ], [ ".run", - 248940, + 248648, "abs32", "sec:.run", - 248870 + 248578 ], [ ".run", - 248944, + 248652, "abs32", "sec:.run", - 248875 + 248583 ], [ ".run", - 248948, + 248656, "abs32", "sec:.run", - 248870 + 248578 ], [ ".run", - 248952, + 248660, "abs32", "sec:.run", - 248686 + 248394 ], [ ".run", - 249006, + 248714, "abs32", "sec:.run", - 248956 + 248664 ], [ ".run", - 249010, + 248718, "abs32", "sec:.run", - 248928 + 248636 ], [ ".run", - 249014, + 248722, "abs32", "sec:.run", - 248968 + 248676 ], [ ".run", - 249018, + 248726, "abs32", "sec:.run", - 248979 + 248687 ], [ ".run", - 249022, + 248730, "abs32", "sec:.run", - 248990 + 248698 ], [ ".run", - 249026, + 248734, "abs32", "sec:.run", - 248968 + 248676 ], [ ".run", - 249030, + 248738, "abs32", "sec:.run", - 248979 + 248687 ] ], "sites": [ @@ -60788,7 +60705,7 @@ "addr": "0x400f1771", "len": 783, "stock_sha256": "cf956ec3219970c313882303ec3e114f2153c39c14f8b15d4e13a4eb553c0f4f", - "new": "8ee307c0400161e0ff00842100f463ca1f0084630700f44402000061c50b40100d08000000f463dd1f008ee307c0400100e3ff00842100f463d31f0084630700f44402000062c50b40100d08000000f463de1f008ee307c0400129e0ff00842100f463d81f00846307856107c0100d320300de1802c5400101000042100d33030094100200f461280e008ee10746002042100d2c0300008e20c540010100004a100d0c0000c540010200004a100d0e0000c540010400004a100d100000c0100d1d030000f463dc1f0000f445a70100c0100d0c000000f463dd1f0000f445050300c0100d06000000f463de1f0000f445e603008ee30703002042100d1b0000de10020300204a100dff0200c5400140000049100d01030060002000852180100d1b0300600020c54001ba1f0047100df80200de100200842180100d1203004000208c6307c0100dea0200de100203002042100dec02008c6307c0100de302009e1002c64001ffff00c5400101000049100de20200c5400118000047100dde0200008521de1802c64001ffff00c540010100004a100d0c0000c540010200004a100d550000c540010400004a100d890000c0100dcc020000f461280e008ee10760ce0b48100dc60200de1002c64001ffff0000f4612a0e000300204a100d08000084e10745002042100dba0200c0100d0a000000f463290e008ee307c64001feffff8c630700f45600000091700a3e000000f44412040084e802c5400110020041100d130000600020c5400110020047100da202008cf002640020c44001000000c04001f0070000d32100f444020000c4f002c0100d890000c5400112040041100d130000600020c5400112040047100d8d02008cf002640020c44001100200c04001fe3d0300d32100f444020000c4f002c0100d740000c0100d7f020000f461280e008ee10761ce0b48100d790200de1002c64001ffff0000f4612b0e000300204a100d08000084e10745002042100d6d0200c0100d0a000000f463290e008ee307c64001fdffff8c630700f45600000091700a3e000000f444c1000084e802c54001c1000041100d130000600020", + "new": "8ee307c0400145e0ff00842100f463ca1f0084630700f44402000061c50b40100d08000000f463dd1f008ee307c040019ee2ff00842100f463d31f0084630700f44402000062c50b40100d08000000f463de1f008ee307c0400129e0ff00842100f463d81f00846307856107c0100d320300de1802c5400101000042100d33030094100200f461280e008ee10746002042100d2c0300008e20c540010100004a100d0c0000c540010200004a100d0e0000c540010400004a100d100000c0100d1d030000f463dc1f0000f445a70100c0100d0c000000f463dd1f0000f445a30200c0100d06000000f463de1f0000f445e603008ee30703002042100d1b0000de10020300204a100dff0200c5400140000049100d01030060002000852180100d1b0300600020c54001ba1f0047100df80200de100200842180100d1203004000208c6307c0100dea0200de100203002042100dec02008c6307c0100de302009e1002c64001ffff00c5400101000049100de20200c5400118000047100dde0200008521de1802c64001ffff00c540010100004a100d0c0000c540010200004a100d550000c540010400004a100d890000c0100dcc020000f461280e008ee10760ce0b48100dc60200de1002c64001ffff0000f4612a0e000300204a100d08000084e10745002042100dba0200c0100d0a000000f463290e008ee307c64001feffff8c630700f45600000091700a3e000000f44412040084e802c5400110020041100d130000600020c5400110020047100da202008cf002640020c44001000000c04001f0070000d32100f444020000c4f002c0100d890000c5400112040041100d130000600020c5400112040047100d8d02008cf002640020c44001100200c04001fe3d0300d32100f444020000c4f002c0100d740000c0100d7f020000f461280e008ee10761ce0b48100d790200de1002c64001ffff0000f4612b0e000300204a100d08000084e10745002042100d6d0200c0100d0a000000f463290e008ee307c64001fdffff8c630700f45600000091700a3e000000f444c1000084e802c54001c1000041100d130000600020", "kind": "data", "relocs": [] }, @@ -62380,7 +62297,7 @@ "controller_registry.c": "8279d108e8809b11dbfd23e1cc26d7dc9a5182105955d53a655cc070e640f93d", "controller_transport.c": "c67ff80c06685131ffb84919a44eca12793d9002eec5627f09586f3ed29e344e", "controller_write_lease.c": "396e10cb94cdea8b49479308f9fc545c1d96500ee8f1b4d455a91500b37e7f1e", - "controller_write_policy.c": "66114f7fcf0c1469022d083a34c5229d0136774ba2742d6a4d1af378b96a184a", + "controller_write_policy.c": "eec8d0b04023623d2bd06a07208601cf53d4acb3e916d2a0ca164b82116b72ce", "crash.c": "0de2ddb2ac49f55c15de4014891f8051f4173925aab6a6fa5f0b74d341ffaf16", "diag.c": "213b9cb3e5ed3eb7f3269580d96f2ed2c8645b4a9799ee2457c77879aed68eed", "dsp.c": "fe09114cf9e1d8c9eb688c8dac921874222dd072aa788c315d2d9f3bc02dfc0c", @@ -62388,7 +62305,7 @@ "freestanding.c": "698d66b43a956e789c8b3057375a195db12e9a88968d2fbb3c7ce09a8021b575", "fxmap.c": "0c2426e765154e28d5a818e6809a47f6115a85f13b70ee39889d7206dc978470", "fxpage.c": "a334ed90714ff3db2b9ee28e4f9b29aec50775161bd6ecbf53423ea3ce6572e5", - "identity.c": "a8ce2125cf2471bbcbd08d5d17a8f65f8ed06d5f807b34afa460db1f1e39eddb", + "identity.c": "09b94c522fc13c481de033172e279feffa1fb820d6fab04234f3f1141dd32e3e", "loader.c": "e4006ec2295b964c3d80b586eed0b99c82b0d772fd2b68fc12366b97580ba847", "machine_admission.c": "fb551bab034a1b789bb80437967778cd0ca179ac29190f839e7d1ec3892bc862", "machine_admission_runtime.c": "b086fb06f534f1147f3f08ab3b10ab28d93a52f1ac3d76d73a7c7fd99228fcd3", @@ -62402,7 +62319,7 @@ "octamod_log.c": "cd6ff5e5bd291bd35a61a5acd07acc29dfa9137362bc05e2bbb23592614a56d6", "octamod_log_firmware.c": "8c96b028c9e17c332a258bbf057386f05a0a37334c9fa8017dc22995c18c2af0", "resident-dsp-driver.c": "dc8ceb3d8d1eda9e16592bd2511cbea29ca3b7094559ab817c5047d6da44fb00", - "resident-engines-data.c": "a5a5b76d09176bd7151772fbbbe57fd15f8aa65135c31432e6dfd9625b96845e", + "resident-engines-data.c": "1b672a92798178680fdc7f5b9ab9f4fb557a452a830be33e06e75f3790734b10", "resident_engines.c": "04abbf521b157bd55a4379c4619bcc308ab5bba708d9291bd1ac0e1f5dfb70ae", "runtime.c": "37523532d7c5bf6f24457875f0e7174924a237e90387720d5e22abb196b20364", "selection.c": "732d8320389a2be1820218c1f283eaaafe67834b7951e08681f1d6518e430216", diff --git a/src/engine/assets/octatrack-module-packages.json b/src/engine/assets/octatrack-module-packages.json index 4b0dd5ee2..295c90f4f 100644 --- a/src/engine/assets/octatrack-module-packages.json +++ b/src/engine/assets/octatrack-module-packages.json @@ -273,23 +273,23 @@ "bytes": 1236, "sha256": "fdfddb9d93a28c2c8d8c83a9c430dab1a09f0df2e416a24a4b37c7e23d6f5227", "path": "octatrack-modules/sidechain-compressor/0.1.2-experimental.mwrm", - "requiredBase": "a1471aeb2dab7de08bd519b6a1eef702d1524a20175d5dd4513413a89c764bd3" + "requiredBase": "3e3e3de1f350781b0d5b91736f77e7f3753ac9987f499cc83b32cd02568a36fc" }, { "id": "output-matrix", "base": true, "abi": 7, "features": 3, - "sites": 19, - "copies": 5, + "sites": 20, + "copies": 6, "fills": 0, - "version": "0.1.0-experimental", + "version": "0.1.1-experimental", "name": "OUTPUT MATRIX", "module": "caf158b5", - "bytes": 3580, - "sha256": "4589b10b10842bda55b34607460257f9a2f9c317f75a253b2d5c3e6c9191ebad", - "path": "octatrack-modules/output-matrix/0.1.0-experimental.mwrm", - "requiredBase": "a1471aeb2dab7de08bd519b6a1eef702d1524a20175d5dd4513413a89c764bd3" + "bytes": 3740, + "sha256": "e2df2fbfff7f956846c030a87c50ff391af427b8719d40018e6449cef8e48acd", + "path": "octatrack-modules/output-matrix/0.1.1-experimental.mwrm", + "requiredBase": "3e3e3de1f350781b0d5b91736f77e7f3753ac9987f499cc83b32cd02568a36fc" }, { "id": "cc-map", @@ -305,7 +305,7 @@ "bytes": 966, "sha256": "c7cd39a5f645d69279d3a288c40b8366e6638acdc042cf0fe68dfb9964a68ea2", "path": "octatrack-modules/cc-map/0.1.2-experimental.mwrm", - "requiredBase": "a1471aeb2dab7de08bd519b6a1eef702d1524a20175d5dd4513413a89c764bd3" + "requiredBase": "3e3e3de1f350781b0d5b91736f77e7f3753ac9987f499cc83b32cd02568a36fc" }, { "id": "recorder-loop-fix", @@ -321,7 +321,7 @@ "bytes": 1818, "sha256": "ad2522060cb48adec49a2847b80757c7cebb489ae1bb9b3e4d5b8b97d5093f71", "path": "octatrack-modules/recorder-loop-fix/0.1.0-experimental.mwrm", - "requiredBase": "a1471aeb2dab7de08bd519b6a1eef702d1524a20175d5dd4513413a89c764bd3" + "requiredBase": "3e3e3de1f350781b0d5b91736f77e7f3753ac9987f499cc83b32cd02568a36fc" }, { "id": "analog-bassdrum", @@ -337,7 +337,7 @@ "bytes": 6676, "sha256": "20211430d3c9eafd3253a50ebf936357ae6847420ac41717b8bcea28eec9f1ac", "path": "octatrack-modules/analog-bassdrum/0.1.5-experimental.mwrm", - "requiredBase": "a1471aeb2dab7de08bd519b6a1eef702d1524a20175d5dd4513413a89c764bd3" + "requiredBase": "3e3e3de1f350781b0d5b91736f77e7f3753ac9987f499cc83b32cd02568a36fc" } ] } From 44738eaf4d935438bfae0899dd5287e2b2d10b20 Mon Sep 17 00:00:00 2001 From: Nathaniel Pawelczyk Date: Fri, 16 Oct 2026 09:01:08 -0500 Subject: [PATCH 06/20] Output Matrix 0.1.1-experimental: source-built packages (isolated build, development import) Co-Authored-By: Claude Opus 5.5 --- src/engine/assets/bootstrap-package.json | 4 +- src/engine/assets/coldfire-packages.json | 4 +- src/engine/assets/descriptor-recipes.json | 4 +- src/engine/assets/dsp-packages.json | 75 ++++++++++++----------- src/engine/assets/menu-recipes.json | 4 +- src/engine/assets/module-build.json | 32 +++++----- src/engine/assets/platform-writes.json | 4 +- src/engine/assets/requested-packages.json | 27 +++++--- src/engine/assets/resident-dsp.json | 4 +- src/engine/assets/rom-packages.json | 4 +- src/engine/assets/usb-audio-packages.json | 4 +- src/engine/assets/utility-packages.json | 4 +- 12 files changed, 91 insertions(+), 79 deletions(-) diff --git a/src/engine/assets/bootstrap-package.json b/src/engine/assets/bootstrap-package.json index a1b89afb7..ff93fd18f 100644 --- a/src/engine/assets/bootstrap-package.json +++ b/src/engine/assets/bootstrap-package.json @@ -16,7 +16,7 @@ "reserveBytes": 10487808, "uncachedAlias": 134217728, "stageAlignment": 4096, - "sourceCommit": "e61274dd6e20304fb5b71d3320c4746f4af7ebeb", + "sourceCommit": "d0f2866e57d626fd66d566da6ba0c5c2d8cfd397", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -42,6 +42,6 @@ "mute-modes": "0.2.1-experimental", "recorder-loop-fix": "0.1.0-experimental", "poly8": "0.3.0-experimental", - "output-matrix": "0.1.0-experimental" + "output-matrix": "0.1.1-experimental" } } diff --git a/src/engine/assets/coldfire-packages.json b/src/engine/assets/coldfire-packages.json index 3c8f54e26..bf46cfc03 100644 --- a/src/engine/assets/coldfire-packages.json +++ b/src/engine/assets/coldfire-packages.json @@ -208,7 +208,7 @@ "sha256": "ccffbf72d45358bde585760b9230c668bf38ebf412ab23efc73732cf96024dca" } ], - "sourceCommit": "e61274dd6e20304fb5b71d3320c4746f4af7ebeb", + "sourceCommit": "d0f2866e57d626fd66d566da6ba0c5c2d8cfd397", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -234,6 +234,6 @@ "mute-modes": "0.2.1-experimental", "recorder-loop-fix": "0.1.0-experimental", "poly8": "0.3.0-experimental", - "output-matrix": "0.1.0-experimental" + "output-matrix": "0.1.1-experimental" } } diff --git a/src/engine/assets/descriptor-recipes.json b/src/engine/assets/descriptor-recipes.json index 2306718cb..034618cf5 100644 --- a/src/engine/assets/descriptor-recipes.json +++ b/src/engine/assets/descriptor-recipes.json @@ -3745,7 +3745,7 @@ ] } ], - "sourceCommit": "e61274dd6e20304fb5b71d3320c4746f4af7ebeb", + "sourceCommit": "d0f2866e57d626fd66d566da6ba0c5c2d8cfd397", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -3771,6 +3771,6 @@ "mute-modes": "0.2.1-experimental", "recorder-loop-fix": "0.1.0-experimental", "poly8": "0.3.0-experimental", - "output-matrix": "0.1.0-experimental" + "output-matrix": "0.1.1-experimental" } } diff --git a/src/engine/assets/dsp-packages.json b/src/engine/assets/dsp-packages.json index cce3ab195..619923325 100644 --- a/src/engine/assets/dsp-packages.json +++ b/src/engine/assets/dsp-packages.json @@ -2,7 +2,7 @@ "schema": 1, "revision": "b8deefc88b2c3e5f3c6158e364eb741df1924e1d", "license": "/licenses/octabam.txt", - "sourceCommit": "e61274dd6e20304fb5b71d3320c4746f4af7ebeb", + "sourceCommit": "d0f2866e57d626fd66d566da6ba0c5c2d8cfd397", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -28,7 +28,7 @@ "mute-modes": "0.2.1-experimental", "recorder-loop-fix": "0.1.0-experimental", "poly8": "0.3.0-experimental", - "output-matrix": "0.1.0-experimental" + "output-matrix": "0.1.1-experimental" }, "packages": [ { @@ -573,77 +573,78 @@ }, { "id": "output-matrix", - "version": "0.1.0-experimental", + "version": "0.1.1-experimental", "key": "OUTPUT MATRIX", "author": "npp1993", "sources": { - "modules/output-matrix/matrix_mix.asm": "eee21cd84c8dd871ba76841dfea8fdd0edb1276ed1b4ded343687cf7b629383f", - "modules/output-matrix/manifest.py": "1e9f844eff11dc2e262fd7efc733ae309c4285fd0a14e494da6b568d24af1216" + "modules/output-matrix/matrix_mix.asm": "8f58596d8bd23bf50651d4288745c187ace9e6f9e0efffd34dcdad627b89476e", + "modules/output-matrix/manifest.py": "65d1ae009dc1c956ce2036181667434e31b361179ca138e5c8f1091227b55619" }, "fxId": null, "tag": "A", "stockDsp": true, - "words": 769, - "code": "00000000000400000000000100000000000000000000000000000700000100000400000000000000000400000700000100000000000700000100000400000700000000000500000000000000000600000000000200000000000000000300000000000000000000000000000800000000000000000900000000000000000066f00000020502eedf0140ce00ffff0140cd0000010d104a0000080bce6a0d104800000300000c0444bc0c02920140c60004005c7000000c062244004c7000000c0c63f00000020973f4000001f8204b002264004c7000000c075ef000000c0b44f4005a5a5a2000450d104a0000174c7000000c0b44f400ffffff4c7000000c0e02a69e0d10800002065e7000000c0002dede0d10800002015e7000000c0102e69e0d10800001fc5e7000000c0220001b02a69e0d10800001c302dede0d10800001d102e69e0d10800001df5d7000000c0d02e6de4cf000000c0e2000450d104200000f02ee9e4cf000000c0f2000450d10420000095ef000000c064cf000000c102000450d104a0000040d10800001dd2000134cf000000c060bc46a0d10400000030ace655ff000000c0d20000b0d10420000030ace665ff000000c124cf000000c132000480d104a0000040ace600ace635ff000000c1120000b0d104a0000030ace635ff00000004820000b0d10420000115ff00000004920000b0d104200000c5ff00000017420000b0d10420000075ff00000017520000b0d104a0000040ace630ace695ff000000c154cf000000c162000484cf000000c1b2000484cf000000c1c2000480d104a0000030ace615ff000000c184cf000000c192000480d104a0000040ace620ace645ff000000c1720000b0d104a0000030ace645ff00000005220000b0d10420000115ff00000005320000b0d104200000c5ff00000017e20000b0d10420000075ff00000017f20000b0d104a0000030ace672184000140c600003e0d104200000c5ff000000c1446f40000000820005d0d1042000005208e000ace682184002085004cf000000c0c20920060f00000020405ffa0381f0061f00000020339050065f40000004a66f400000c9047f4004000000610800002180bc5680d104000001120001320001b060880000114f0b80044c8d22000da205800205800205d002400004459004459000d10c000007064f400000cb0f0b800060880000124b388d05e5cd8f0b8005f5c002058000bc5630d10480000072000135659005659000d10c000003b20001320001b67f400000c207ff000000c1106df0000013a6cdf004cdc004cdc402000480bc5600d104000001667f400000c287ff000000c1206df000001476cdf004cdc004cdcc22000c267f400000c307ff000000c1306df000001516cdf004cdc004cdcca2000ca0bc5690d1040000009225300043d54f09b0044dbd2f09bda44dbd22000da4ef000000c000c1d040c1d8521c4002000d021e4002000d80c1d040c1d8556590057590020001320001b67f400000c387ff000000c1406df000001736cdf004cdc004cdc402000480bc5610d104000001667f400000c407ff000000c1506df000001806cdf004cdc004cdcc22000c267f400000c487ff000000c1606df0000018a6cdf004cdc004cdcca2000ca0bc5670d1040000009225300043df4f09b0044dbd2f09bda44dbd22000da0bc5650d10400000264cf000000c07209300565b00575b002264004c7000000c0720001320001b67f400000c1d7ff000000c1a06df000001ab6ce7004cdc004cdc402000487ff000000c1b06df000001b36ce7004cdc004cdcc22000c27ff000000c1c06df000001bb6ce7004cdc004cdcca2000ca4ef000000c010c1d040c1d8521c4002000d021e4002000d80c1d040c1d855659005749000bc5640d10480000072000135e5e005e5e000d10c000003120001320001b67f400000c507ff000000c1706df000001db6cdf004cdc004cdc402000480bc5620d104000001667f400000c587ff000000c1806df000001e86cdf004cdc004cdcc22000c267f400000c607ff000000c1906df000001f26cdf004cdc004cdcca2000ca4ef000000c020c1d040c1d8521c4002000d021e4002000d80c1d040c1d855e5e005f5e000bc5660d10480000175ef000000c004cf000000c032000405e7000000c005ef000000c014cf000000c042000405e7000000c015ef000000c024cf000000c052000405e7000000c020405b50402424cf000000c084c7000000c004cf000000c094c7000000c014cf000000c0a4c7000000c0205f420ffffff0444bc0c02d50d10800000335e7000000c084cf000000c002000440c1c085e7000000c035ef000000c032000030d104a0000030acf6000000c0d10800000225e7000000c094cf000000c012000440c1c085e7000000c045ef000000c042000030d104a0000030acf6000000c0d10800000115e7000000c0a4cf000000c022000440c1c085e7000000c055ef000000c052000030d104a0000030acf6000000c0c1d2021c40020008000000c02e6de5c7000000c0e02ee974f7000000c0f4cf000000c064c7000000c1064f400000c1120001b060c8000026f5f5c0063f40000000045f400000cb10d108000002e20ee000d108000002b44f400000cbf4c7000000c1d4cf000000c060bc46a0d104000002164f400000c1466f400000c1a67f400000c380603800002a05fe40020000b0d104a00001222e40020004801418c21b5005fe50044f400000cbf20004d0d10420000085fe40001418c5d640044f4000000014c6600205c00205e0004078700000c0604800002ce218f000c1c990140ce00000f21a400208f0046f40000000d20005d0d104f00000420cf0020c4000c1d8320004821ba00227200204a000603800002ca07da8f20000b0d104a00001021bc0064f400000c10204c000c1d870140c8000c184ce40020004821b5004d6500208f000141885d640000000020af0001428821a5000c1d0800000c60f00000020502e8df0140ce00ffff0140cd0000010d104a00000300000c02c89e0c1d2021c40020008021c50002a8df61f00000020364f40000028065f400000c900bcf600d104800000e0401413907000610800002f25edd004edc005fdde22000ea5659005749000444bc0c035a0401513909000610800002fe5edd004edc005fdde22000ea5651005749000444bc0c035a", - "sha256": "9234d604f6421ec3b33630cc4da53a4eca037ac691762f319d955fb2d46267d0", + "words": 671, + "code": "00004000000100070000004100074000070100074100005000006000000200000300080000090000000066f00000020502eedf0140ce00ffff0140cd0000010d104a0000080bce6a0d104800000300000c0444bc0c02920140c60004005c7000000c066a7000000c0c63f00000020973f4000001f8204b006b7000000c0765f400000c0846f4000000015ef000000c0b44f4005a5a5a2000450d104a00000c4c7000000c0b44f400ffffff4c7000000c0e65f400000c0046f40000000206c60000005020001b64f400000c0067f400000c0302a69e0d10800001a402dede0d10800001a102e69e0d108000019e65f400000c085d7000000c0d02e6de4cf000000c0e2000450d104200000f02ee9e4cf000000c0f2000450d10420000095ef000000c064cf000000c102000450d104a0000040d10800001962000134cf000000c060bc46a0d10400000030ace655ff000000c0d20000b0d10420000030ace665ff000000c124cf000000c132000480d104a0000040ace600ace635ff000000c1120000b0d104a0000030ace635ff0000000484cf0000000494cf04a0001744cf04a00017520004a0d104a0000040ace630ace695ff000000c154cf000000c162000484cf000000c1b2000484cf000000c1c2000480d104a0000030ace615ff000000c184cf000000c192000480d104a0000040ace620ace645ff000000c1720000b0d104a0000030ace645ff0000000524cf0000000534cf04a00017e4cf04a00017f20004a0d104a0000030ace672184000140c600003e0d104200000c5ff000000c1446f40000000820005d0d1042000005208e000ace682184002085006af000000c0c60f00000020405ffa0381f0061f00000020339050065f40000004a66f400000c9047f4004000000610800001dc0bc5680d104000001120001320001b0608800000e4f0b80044c8d22000da205800205800205d002400004459004459000d10c000006f64f400000cb0f0b8000608800000f4b388d05e5cd8f0b8005f5c002058000bc5630d10480000072000135659005659000d10c000003a20001320001b67f400000c207ff000000c1106df0000010a6cdf004cdc004cdc402000480bc5600d104000001667f400000c287ff000000c1206df000001176cdf004cdc004cdcc22000c267f400000c307ff000000c1306df000001216cdf004cdc004cdcca2000ca0bc5690d1040000009225300043d54f09b0044dbd2f09bda44dbd22000da4ef000000c000c1d040c1d8521c40021e4d02000d80c1d040c1d8556590057590020001320001b67f400000c387ff000000c1406df000001426cdf004cdc004cdc402000480bc5610d104000001667f400000c407ff000000c1506df0000014f6cdf004cdc004cdcc22000c267f400000c487ff000000c1606df000001596cdf004cdc004cdcca2000ca0bc5670d1040000009225300043df4f09b0044dbd2f09bda44dbd22000da0bc5650d10400000246bf000000c07565b00575b006b7000000c0720001320001b67f400000c1d7ff000000c1a06df000001786ce7004cdc004cdc402000487ff000000c1b06df000001806ce7004cdc004cdcc22000c27ff000000c1c06df000001886ce7004cdc004cdcca2000ca4ef000000c010c1d040c1d8521c40021e4d02000d80c1d040c1d855659005749000bc5640d10480000072000135e5e005e5e000d10c000003020001320001b67f400000c507ff000000c1706df000001a76cdf004cdc004cdc402000480bc5620d104000001667f400000c587ff000000c1806df000001b46cdf004cdc004cdcc22000c267f400000c607ff000000c1906df000001be6cdf004cdc004cdcca2000ca4ef000000c020c1d040c1d8521c40021e4d02000d80c1d040c1d855e5e005f5e000bc5660d104800001064f400000c0067f400000c034cdf005ee4004cdf405e5c005ee4004cdf405e5c005ee4002000405e64000405b504024264f400000c0867f400000c004cdc004c5f004cdc004c5f004cdc004c5f0005f420ffffff0444bc0c02d50d108000000d5e5d004cdc002000440c1c085e67005edf002000030d104a0000030acf6000000c0c1d2021c40020008000000c02e6de5c7000000c0e02ee974f7000000c0f4cf000000c064c7000000c1064f400000c1120001b060c8000020b5f5c0063f40000000045f400000cb10d108000002e20ee000d108000002b44f400000cbf4c7000000c1d4cf000000c060bc46a0d104000002164f400000c1466f400000c1a67f400000c3806038000023c5fe40020000b0d104a00001222e40020004801418c21b5005fe50044f400000cbf20004d0d10420000085fe40001418c5d640044f4000000014c6600205c00205e0004078700000c06048000026c218f000c1c990140ce00000f21a400208f0046f40000000d20005d0d104f00000420cf0020c400209a00227200204a0007e28606038000026820cf000140ce00000f0d104a00001021bc0064f400000c10204c000c1d870140c8000c184ce40020004821b5004d6500208f000141885d640020cf000c1ec921a60020af0001428821a5000c1d0800000c60f00000020502e8df0140ce00ffff0140cd0000010d104a00000300000c02c89e0c1d2021c40020008021c50002a8df61f00000020364f40000028065f400000c900bcf600d104800000e0401413907000610800002905edd004edc005fdde22000ea5659005749000444bc0c035a04015139090006108000029c5edd004edc005fdde22000ea5651005749000444bc0c035a", + "sha256": "f94f71d660d05b10aace0615e256bc08d4e55ff4a55094aff27d29a77e7ee2e7", "relocations": [ - 266, - 273, - 289, - 310, - 323, - 333, - 367, + 64, + 218, + 225, + 241, + 262, + 275, + 285, + 318, + 331, + 341, + 372, 380, - 390, - 423, - 431, - 439, - 471, - 484, - 494, - 622, - 625, - 649, - 675, - 695, - 748, - 760 + 388, + 419, + 432, + 442, + 522, + 525, + 549, + 575, + 594, + 650, + 662 ], - "init": 42, - "proc": 720, + "init": 14, + "proc": 622, "hooks": [ { "site": 599, "words": 2, "guardSha256": "43a6ab9f9273577277c56b298e158b037e7b6f3c457da73cd18868c7501a9fd9", - "entry": 42, + "entry": 14, "note": "core 0 mixdown: the MASTER TRACK branch; MATRIX takes its own path" }, { "site": 778, "words": 2, "guardSha256": "749460b0c4484ec3134e24309d29382fd6265a4eeefbd813a9d97fa485a259f0", - "entry": 720, + "entry": 622, "note": "core 0 phones crossfade; MATRIX writes the PHONES bus" } ], "proofs": [ { "base": 4096, - "sha256": "c3b7bb22b554c86aa819624e98db0dd79c24ba3c65a4f198a17f468c71504cc9" + "sha256": "80af6857347938b385ef4cc313a7cc3d2e5cb5058c7a8a378af563a21ceee57e" }, { "base": 5120, - "sha256": "ca8e8501dde08578ff4c070e4278712f101da96b0273c8569e0db34ca072f67b" + "sha256": "a445c9050eb302479d70bdd4ecfe94d1939b2c8a261e3c1ec886025da65ee2dc" }, { "base": 6145, - "sha256": "484054b941c30a1ea36b8f06bea7bbf1b1fd68cf38d30d332555e132fc97ce85" + "sha256": "e5a5ba2c5a22613e0e2630e211b56861a8523dc91cbf99c4cff967e3282f2dc5" }, { "base": 9223, - "sha256": "ec81a7a5d450a814d09eb1690d3dc5037e95e0eb501320313193f9647220f96f" + "sha256": "b0616004fa4781fc097a70648ec766beedddb6e2603eec8fc2fdb1c7bc0dbe58" } ] } diff --git a/src/engine/assets/menu-recipes.json b/src/engine/assets/menu-recipes.json index 410ade6be..703ae1c6c 100644 --- a/src/engine/assets/menu-recipes.json +++ b/src/engine/assets/menu-recipes.json @@ -1296,7 +1296,7 @@ "caveLimit": 1074625596 } ], - "sourceCommit": "e61274dd6e20304fb5b71d3320c4746f4af7ebeb", + "sourceCommit": "d0f2866e57d626fd66d566da6ba0c5c2d8cfd397", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -1322,6 +1322,6 @@ "mute-modes": "0.2.1-experimental", "recorder-loop-fix": "0.1.0-experimental", "poly8": "0.3.0-experimental", - "output-matrix": "0.1.0-experimental" + "output-matrix": "0.1.1-experimental" } } diff --git a/src/engine/assets/module-build.json b/src/engine/assets/module-build.json index 70220f569..94b6d795c 100644 --- a/src/engine/assets/module-build.json +++ b/src/engine/assets/module-build.json @@ -1,9 +1,9 @@ { "schemaVersion": 1, "kind": "source-packages", - "sourceCommit": "e61274dd6e20304fb5b71d3320c4746f4af7ebeb", + "sourceCommit": "d0f2866e57d626fd66d566da6ba0c5c2d8cfd397", "nativeRevision": "b8deefc88b2c3e5f3c6158e364eb741df1924e1d", - "sourceTreeSha256": "7a7297bec8f287b3fe0f9bb7e20bed1047f4f7c9b9a98021cad73016b431d7a7", + "sourceTreeSha256": "c5a2795ae68720967ebe791b45bd303e8e17bd0f72b6719ead53e387114faecf", "compilerSha256": "270df5cf8dcef3eef2c5758e6239dd6e9ef4de291b0f1efb96e1da16531d0b30", "moduleVersions": { "spectrum": "0.1.1-experimental", @@ -30,52 +30,52 @@ "mute-modes": "0.2.1-experimental", "recorder-loop-fix": "0.1.0-experimental", "poly8": "0.3.0-experimental", - "output-matrix": "0.1.0-experimental" + "output-matrix": "0.1.1-experimental" }, "files": { "dsp-packages.json": { - "bytes": 75421, - "sha256": "99a3df52ce3b1ee01a472f66b28521cfca512296adc5ccb000223e6931af1eaf" + "bytes": 74845, + "sha256": "5260e2c58a9255a99f0b3f9b13eae208cda28c34aeb50db651dd38bccb5938ca" }, "resident-dsp.json": { "bytes": 24965, - "sha256": "79404e12ceff249e920649b70a1bea78a62a7be9464a0236d144512445fe2eb5" + "sha256": "5d556b039c4731ad9f53232b103faa550a959e0ab28054645b5c88873f2ffb7b" }, "coldfire-packages.json": { "bytes": 353200, - "sha256": "9767d14ee29ae44520439b421790d52c5ef5f5ef8b26238eb4f52cdababdc7a8" + "sha256": "3d9675946d165fc495af6f6970285604b97baaadc57c911ccb40367dc81cb7c0" }, "rom-packages.json": { "bytes": 25351, - "sha256": "c2d843f555348f071a99c0b8d57fdea9986d9663ab5025efa23e18b875fb3c6f" + "sha256": "c5115df9cf716aa89a3be4564ba53a22d531ab80a59423eb3ebcf6821a21af41" }, "bootstrap-package.json": { "bytes": 3699, - "sha256": "ce097f409fd9721aef2a95cde0f61c4793e238232abd6ff86b14062f61845355" + "sha256": "389fc5d6a7fb3be957160b3f564346076b4f17f52e7ae8794337ea631305a290" }, "menu-recipes.json": { "bytes": 34507, - "sha256": "3ed7ada406ae8feeedf6a7e91e060e1ad01610915d9c6d16f98933dd29730a89" + "sha256": "29c21f768fe40d19f412beb282679bdb94dc17b03db04bea9c831954963073c4" }, "descriptor-recipes.json": { "bytes": 71916, - "sha256": "35174150ffa2c338bb6c425de6931b2ef406c854ad0f60e2e19c3a5d054cfbfe" + "sha256": "342ae441c106705b134218622c642bec8094e3255a85994af3144ce43a9540df" }, "platform-writes.json": { "bytes": 17641, - "sha256": "e8b5120fafbc2c8d4e6907fc40e049ab57bdbcdaa69cf308496e732643772887" + "sha256": "1948f039c4851dfa35b7865761bdb18338a8e991038e5bbbe823faca4983f121" }, "requested-packages.json": { - "bytes": 1065039, - "sha256": "06e571a0edc7b123475bd99b33e17f49bc60644719f053908b6c0bc91d417137" + "bytes": 1065697, + "sha256": "85aabb73c48171ef03bf993aa2f7c8afab7c80c0078f8a2d462324610beb589b" }, "utility-packages.json": { "bytes": 12827, - "sha256": "1326e18a300e7ea47bc0c01fbac32cd9f484a08c26eaee70cf061facd5fd9ad2" + "sha256": "e80ffaa68ae696d6cd5bf9cd0bbb92cd06cd6c53317c8fff551343d2fe891c82" }, "usb-audio-packages.json": { "bytes": 737469, - "sha256": "3041ec1321e55bcd7d79e702ddbd66a85400e5f7d3b9541cd9b294410603a5cd" + "sha256": "046dfb6e290a032055900b01b53929f1678ca9753e3fb82b8464c8822eedc5f2" } }, "approval": null, diff --git a/src/engine/assets/platform-writes.json b/src/engine/assets/platform-writes.json index cc718830d..94a4b6d5b 100644 --- a/src/engine/assets/platform-writes.json +++ b/src/engine/assets/platform-writes.json @@ -533,7 +533,7 @@ "sha256": "5d44ce960d87d22af41166c529bfa5e84c0427b8e4afb3d6d2ca8d880f5dcfd7" } ], - "sourceCommit": "e61274dd6e20304fb5b71d3320c4746f4af7ebeb", + "sourceCommit": "d0f2866e57d626fd66d566da6ba0c5c2d8cfd397", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -559,6 +559,6 @@ "mute-modes": "0.2.1-experimental", "recorder-loop-fix": "0.1.0-experimental", "poly8": "0.3.0-experimental", - "output-matrix": "0.1.0-experimental" + "output-matrix": "0.1.1-experimental" } } diff --git a/src/engine/assets/requested-packages.json b/src/engine/assets/requested-packages.json index a89f67ae4..99127fdca 100644 --- a/src/engine/assets/requested-packages.json +++ b/src/engine/assets/requested-packages.json @@ -1,7 +1,7 @@ { "schema": 1, "revision": "b8deefc88b2c3e5f3c6158e364eb741df1924e1d", - "sourceCommit": "e61274dd6e20304fb5b71d3320c4746f4af7ebeb", + "sourceCommit": "d0f2866e57d626fd66d566da6ba0c5c2d8cfd397", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -27,7 +27,7 @@ "mute-modes": "0.2.1-experimental", "recorder-loop-fix": "0.1.0-experimental", "poly8": "0.3.0-experimental", - "output-matrix": "0.1.0-experimental" + "output-matrix": "0.1.1-experimental" }, "objects": [ { @@ -1009,7 +1009,7 @@ { "label": "matrix", "moduleId": "output-matrix", - "version": "0.1.0-experimental", + "version": "0.1.1-experimental", "key": "OUTPUT MATRIX", "author": "npp1993", "nativeAuthor": "npp1993", @@ -1018,12 +1018,12 @@ "caveAddress": null, "source": "modules/output-matrix/matrix.s", "sources": { - "modules/output-matrix/matrix.s": "41bb06ce2e43d46d32a4b12a1c91df6dddf03f89281c4bcfe1129baa22a7cca1", - "modules/output-matrix/manifest.py": "1e9f844eff11dc2e262fd7efc733ae309c4285fd0a14e494da6b568d24af1216" + "modules/output-matrix/matrix.s": "a4b9f74062520437ed0db2f8b497d6af89661621ab3deef5078158514194b287", + "modules/output-matrix/manifest.py": "65d1ae009dc1c956ce2036181667434e31b361179ca138e5c8f1091227b55619" }, - "bytes": 4952, - "code": "7f454c4601020100000000000000000000010004000000010000000000000000000011f0000000260034000000000028000900084a806c0470004e750c80000000026f0270024e7548780003487800034879460e43904eb94007ec604fef000c4e752f2f00044eb940065430588f2f004ab9460e438c661c7001b0b9460e43986c1223c0460e439823c0460e439442b9460e4390201f4e75720060067201600272022f02753980000037203c400b5e8eb4816606203c400b5e90241f4e75700060067001600270024fefffe048d70cfc2400773980000037b68267287202b4816712b681661e78004a82661078036100017a600878014a83660278022f0261000026241f13c28000003713c2100b14974cd70cfc4fef00204878ffff4eb94004d948588f4e75247c400e21e07a1093c9204ad1fc0008ed926156204ad1fc0009505c614cb5f946c824566610207c100a4ee0613c207c100ab1a8613420094a80671a204ad1fc0009b33270012080b5f946c82456660623c0100f8598d5fc0009b340538566a8207c80000c5061164e7526487c04204b610cd7fc000018b2538666f24e757e00739071a800017607be8366244a3980000034671c0c8400000001677e0c84000000026776760db08366027200700060720c8400000001672e0c84000000026732760db083630270002601243c000019dd010266027200243c0000066a0102660276002003603c4a8067304a816730700360300f398000000967204a80660c4ab98000009c6714700d60184a8167104ab98000009c6608700360087000600422007001b210670410815289b02800016706114000015289548852877608be836600ff404e757a007e00207c80000c517207be8166084a398000003466187190720db0816210223c0000066a010167067c10dc870dc5548852877208be8166d02039800000082c000280ff00ffff808523c08000000823c0100b14d4bb86028600ff00007e007010d0870106671a72000105670272012f0170332f002f074eb940033e3c4fef000c52877008be8066d64e754feffff048d7003c7139800000370c800000000267064ef94004e9944ab98000001267064ef94004eb18202f00184ab946c7debe67082200e7899280200172504c01080041f946c7d2bcd0902400223c000001004c41080028004c014800948420824a8066064ef94004eb1828006114d6846a027600720db6816f0226014ef94004ea1071b9100b14cf223c00000c594c01080073b9100b14ccd0810680000476c9207946c8245677b00a01720db681630276004e757139800000370c8000000002670c4879400b7b984ef94004dd6a61b241f90000000020703c002f0872ff2f0172382f01702d4a2800026602702f2f004879400bf10a4879400ba8764ef94004dd827139800000370c8000000002670a2f044879400b465d6018700db8806302780041f9000000002f304c00487900000000486efff84eb940013a084ef94004ddc67139800000370c800000000266244ab9460d168c66084ab946c7c7306614280270124c02080074124c0428004ef94004df9c70124c0208004ef94004df927139800000370c80000000026708426a0076600000943542006e357c00400052713980000032354000704feffff848d70a0041f980000c5143f90000000047ea00027600780071905488720db081630270007391b280660642290008601c4a2900086610137c000100084253426b000420016006128042290008e98b86805289508b52847204b88166063543007276007208b88166b0354300744cd70a004fef0008357c000100761639800000324e757139800000370c8000000002670c4879400b7b8c4ef94007c49e4879000000004ef94007c49e7139800000370c8000000002670c2ebc400b60404ef94007c5102ebc000000004ef94007c5107139800000370c8000000002670c4879400b576f4ef94007c5324879000000004ef94007c5320000400b44e1400b5eb000000000400651384006515400000000400655544006551400000000400b5eb0400b5eb7000000000000000000000000000000000000000000000000000000004f55542043464700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004d41545249580050484e002d002b002573004d4e004355450050484e004d2b43004d2b5000432b5000414c4c004d4e4c004d4e520043554c004355520050484c00504852004f4646000000000000000000000000000000000000000000000000000000000000000300000100000000000000000000000003000003000000000000000000000000030000050000000180000037000000000000fff100000009100b1497000000000000fff1000000154004d948000000000000fff100000021460e4390000000000000fff10000002c460e438c000000000000fff1000000394007ec60000000000000fff10000004340065430000000000000fff10000004f400b5e90000000000000fff100000056400b5e8e000000000000fff10000005e0000006e0000000000000001000000660000009400000000000000010000006f00000236000000000000000100000082000000f200000000000000010000008e400e21e0000000000000fff1000000940009b340000000000000fff10000009e000018b2000000000000fff1000000bf0008ed92000000000000fff1000000cb0009505c000000000000fff1000000a80009b332000000000000fff1000000b246c82456000000000000fff1000000bb100a4ee0000000000000fff1000000c7100ab1a8000000000000fff1000000d4100f8598000000000000fff1000000df80000c50000000000000fff1000000e780000008000000000000fff1000000f00000066a000000000000fff1000000fa000019dd000000000000fff1000001068000009c000000000000fff100000110100b14d4000000000000fff10000011d0000000d000000000000fff10000012380000034000000000000fff10000012d40033e3c000000000000fff1000001340000015c00000000000000010000013f0000017000000000000000010000014b0000000d000000000000fff10000015400000100000000000000fff10000015e00000050000000000000fff10000016746c7d2bc000000000000fff10000016f46c7debe000000000000fff100000178000003460000000000000001000001810000000000000000000000030000018c0000005800000000000000030000019600000052000000000000fff10000019f0000006e000000000000fff1000001a700000070000000000000fff1000001b100000072000000000000fff1000001bc00000074000000000000fff1000001c700000076000000000000fff1000001d180000c51000000000000fff1000001da000000380000000000000003000001e5000000500000000000000003000001ed000000540000000000000003000001f7000000560000000000000003000002000000004800000000000000030000020a000000490000000000000003000002150000005b00000000000000030000021c0000005e000000000000000300000222000000620000000000000003000002290000006600000000000000030000022e0000006a0000000000000003000002330000006e0000000000000003000002380000007200000000000000030000023e000000760000000000000003000002440000007a00000000000000030000024a0000007e000000000000000300000250000000820000000000000003000002560000008600000000000000030000025c0000008a0000000000000003000002620000008e0000000000000003000002680000004000000000000000030000026f0000000000000000100000010000027a000000140000000010000001000002860000002e000000001000000100000291000000640000000010000001000002a0000000680000000010000001000002af0000006c0000000010000001000002be0000008a0000000010000001000002c90000008e0000000010000001000002d4000000920000000010000001000002df000000f00000000010000001000002e8000002c20000000010000001000002f600000378000000001000000100000302000003c600000000100000010000030e0000040600000000100000010000031700000444000000001000000100000323000004f40000000010000001000003330000051a000000001000000100000342000005400000000010000001000003520000056800000000100000010000035c00000574000000001000000100000367000005800000000010000001000003720000058c00000000100000010000037d00000598000000001000000100000389000005a4000000001000000100000395000005b00000000010000001004355455f434647004355455f4346475f435331004d454e555f52454452415700415544494f5f4c49535400415544494f5f434f4c554d4e004c4953545f494e495400415544494f5f4b4559533000424f585f4f4e00424f585f4f4646006375655f676574007365745f6d6f6465006375655f6d61736b5f66726f6d5f6c69766500636f6e766572745f616c6c0042414e4b300042414e4b5f53495a4500504152545f53495a450042414e4b5f53415645004355525f42414e4b004353315f574f524b5f4c56004353315f53415645445f4c56004353315f454449544544004c4956455f4c56004355455f4d41534b004355455f4445535453004c4556454c5f4445535453004355455f4d55544553004355455f4d41534b5f43533100445f4f4646004d41535445525f4f4e0043435f4f555400636f6e765f706172747300636f6e765f747261636b7300444553545f4d4158004449414c5f53544550004449414c5f414444004c45565f414343004c45565f5055534800706172745f63756500646573745f6e616d6573007374725f666d745f730050475f4d41494e300050475f4d41494e0050475f50484f4e45530050475f444553545f4c4f0050475f444553545f48490050475f4d4154524958004c4956455f4355450073656e745f636f646573007374725f70686e007374725f6d696e7573007374725f706c7573007374725f626c616e6b007374725f6d6174726978006e5f6d61696e006e5f637565006e5f70686e73006e5f6d63006e5f6d70006e5f6370006e5f616c6c006e5f6d6e6c006e5f6d6e72006e5f63756c006e5f637572006e5f70686c006e5f706872006e5f6f666600666164696e670070617273655f6d6f646500617564696f5f656e74657200617564696f5f6b657973006375655f6765745f6e6f726d616c006375655f6765745f73747564696f006375655f6765745f6d6174726978006163745f6e6f726d616c006163745f73747564696f006163745f6d6174726978006163745f6e6f6e65006375655f6c6576656c5f656e63006c65765f626f785f637565006c65765f626f785f76616c006c65765f6261727300706167655f6c6576656c73006d697865725f6d69785f6c6162656c006d697865725f6d69785f6c656674006d697865725f6d69785f72696768740074385f6c6162656c730074385f676574746572730074385f616374696f6e73006375655f6c6162656c73006375655f67657474657273006375655f616374696f6e73007374725f6f757463666700000003960000020100000000000003e800000201000000000000047e00000201000000380000053600000201000000540000057000000201000000480000058800000101000000f00000059400000201000000490000059800000101000000640000059c0000010100000068000005a0000001010000006c000005a4000001010000008a000005a8000001010000008e000005ac0000010100000092000003f200000201000000580000051000000201000000500000055c000002010000005600000000000002010000005b00000004000002010000005e0000000800000201000000620000000c000002010000006600000010000002010000006a00000014000002010000006e0000001800000201000000720000001c000002010000007600000020000002010000007a00000024000002010000007e0000002800000201000000820000002c000002010000008600000030000002010000008a00000034000002010000008e002e73796d746162002e737472746162002e7368737472746162002e72656c612e74657874002e72656c612e64617461002e627373000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000001000000060000000000000034000005b8000000000000000000000004000000000000001b00000004000000400000000000001050000000c00000000600000001000000040000000c0000002b000000010000000300000000000005ec00000092000000000000000000000004000000000000002600000004000000400000000000001110000000a80000000600000003000000040000000c00000031000000080000000300000000000006800000000000000000000000000000000400000000000000010000000200000000000000000000068000000630000000070000004a00000004000000100000000900000003000000000000000000000cb0000003a00000000000000000000000010000000000000011000000030000000000000000000011b80000003600000000000000000000000100000000", - "sha256": "511089430f6d0d7a22150e8fcfcd914552d70bc2f64b26d33e11a90d9cfe715b", + "bytes": 5076, + "code": "7f454c46010201000000000000000000000100040000000100000000000000000000126c000000260034000000000028000900084a806c0470004e750c80000000026f0270024e7548780003487800034879460e43904eb94007ec604fef000c4e752f2f00044eb940065430588f2f004ab9460e438c661c7001b0b9460e43986c1223c0460e439823c0460e439442b9460e4390201f4e75720060067201600272022f02753980000037203c400b5e8eb4816606203c400b5e90241f4e75700060067001600270024fefffe048d70cfc2400773980000037b68267287202b4816712b681661e78004a82661078036100017a600878014a83660278022f0261000026241f13c28000003713c2100b14974cd70cfc4fef00204878ffff4eb94004d948588f4e75247c400e21e07a1093c9204ad1fc0008ed926156204ad1fc0009505c614cb5f946c824566610207c100a4ee0613c207c100ab1a8613420094a80671a204ad1fc0009b33270012080b5f946c82456660623c0100f8598d5fc0009b340538566a8207c80000c5061164e7526487c04204b610cd7fc000018b2538666f24e757e00739071a800017607be8366244a3980000034671c0c8400000001677e0c84000000026776760db08366027200700060720c8400000001672e0c84000000026732760db083630270002601243c000019dd010266027200243c0000066a0102660276002003603c4a8067304a816730700360300f398000000967204a80660c4ab98000009c6714700d60184a8167104ab98000009c6608700360087000600422007001b210670410815289b02800016706114000015289548852877608be836600ff404e757a007e00207c80000c517207be8166084a398000003466187190720db0816210223c0000066a010167067c10dc870dc5548852877208be8166d02039800000082c000280ff00ffff808523c08000000823c0100b14d4bb86028600ff00007e007010d0870106671a72000105670272012f0170332f002f074eb940033e3c4fef000c52877008be8066d64e754feffff048d7003c7139800000370c800000000267064ef94004e9944ab98000001267064ef94004eb18202f00184ab946c7debe67082200e7899280200172504c01080041f946c7d2bcd0902400223c000001004c41080028004c014800948420824a8066064ef94004eb1828006114d6846a027600720db6816f0226014ef94004ea1071b9100b14cf223c00000c594c01080073b9100b14ccd0810680000476c9207946c8245677b00a01720db681630276004e7561cc41f90000000020703c00702d4a2800026602702f4e757139800000370c8000000002670c4879400b7b984ef94004dd6a61cc2f0872ff2f0172382f012f004879400bf10a4879400ba8764ef94004dd827139800000370c8000000002670c4879400b47d14ef94004dd0061922f0872ff2f0172382f012f004879400bf10a4879400ba87641f940012bd84ef94004dd187139800000370c8000000002670a2f044879400b465d6018700db8806302780041f9000000002f304c00487900000000486efff84eb940013a084ef94004ddc67139800000370c800000000266244ab9460d168c66084ab946c7c7306614280270124c02080074124c0428004ef94004df9c70124c0208004ef94004df927139800000370c80000000026708426a0076600000943542006e357c00400052713980000032354000704feffff848d70a0041f980000c5143f90000000047ea00027600780071905488720db081630270007391b280660642290008601c4a2900086610137c000100084253426b000420016006128042290008e98b86805289508b52847204b88166063543007276007208b88166b0354300744cd70a004fef0008357c000100761639800000324e757139800000370c8000000002670c4879400b7b8c4ef94007c49e4879000000004ef94007c49e7139800000370c8000000002670c2ebc400b60404ef94007c5102ebc000000004ef94007c5107139800000370c8000000002670c4879400b576f4ef94007c5324879000000004ef94007c5320000400b44e1400b5eb000000000400651384006515400000000400655544006551400000000400b5eb0400b5eb7000000000000000000000000000000000000000000000000000000004f55542043464700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004d41545249580050484e002d002b002573004d4e004355450050484e004d2b43004d2b5000432b5000414c4c004d4e4c004d4e520043554c004355520050484c00504852004f4646000000000000000000000000000000000000000000000000000000000000000300000100000000000000000000000003000003000000000000000000000000030000050000000180000037000000000000fff100000009100b1497000000000000fff1000000154004d948000000000000fff100000021460e4390000000000000fff10000002c460e438c000000000000fff1000000394007ec60000000000000fff10000004340065430000000000000fff10000004f400b5e90000000000000fff100000056400b5e8e000000000000fff10000005e0000006e0000000000000001000000660000009400000000000000010000006f00000236000000000000000100000082000000f200000000000000010000008e400e21e0000000000000fff1000000940009b340000000000000fff10000009e000018b2000000000000fff1000000bf0008ed92000000000000fff1000000cb0009505c000000000000fff1000000a80009b332000000000000fff1000000b246c82456000000000000fff1000000bb100a4ee0000000000000fff1000000c7100ab1a8000000000000fff1000000d4100f8598000000000000fff1000000df80000c50000000000000fff1000000e780000008000000000000fff1000000f00000066a000000000000fff1000000fa000019dd000000000000fff1000001068000009c000000000000fff100000110100b14d4000000000000fff10000011d0000000d000000000000fff10000012380000034000000000000fff10000012d40033e3c000000000000fff1000001340000015c00000000000000010000013f0000017000000000000000010000014b0000000d000000000000fff10000015400000100000000000000fff10000015e00000050000000000000fff10000016746c7d2bc000000000000fff10000016f46c7debe000000000000fff100000178000003460000000000000001000001810000037800000000000000010000018c00000000000000000000000300000197000000580000000000000003000001a100000052000000000000fff1000001aa0000006e000000000000fff1000001b200000070000000000000fff1000001bc00000072000000000000fff1000001c700000074000000000000fff1000001d200000076000000000000fff1000001dc80000c51000000000000fff1000001e5000000380000000000000003000001f0000000500000000000000003000001f8000000540000000000000003000002020000005600000000000000030000020b00000048000000000000000300000215000000490000000000000003000002200000005b0000000000000003000002270000005e00000000000000030000022d00000062000000000000000300000234000000660000000000000003000002390000006a00000000000000030000023e0000006e000000000000000300000243000000720000000000000003000002490000007600000000000000030000024f0000007a0000000000000003000002550000007e00000000000000030000025b00000082000000000000000300000261000000860000000000000003000002670000008a00000000000000030000026d0000008e0000000000000003000002730000004000000000000000030000027a00000000000000001000000100000285000000140000000010000001000002910000002e00000000100000010000029c000000640000000010000001000002ab000000680000000010000001000002ba0000006c0000000010000001000002c90000008a0000000010000001000002d40000008e0000000010000001000002df000000920000000010000001000002ea000000f00000000010000001000002f3000002c20000000010000001000003010000039000000000100000010000030d000003ca0000000010000001000003190000040a0000000010000001000003250000044a00000000100000010000032e0000048800000000100000010000033a0000053800000000100000010000034a0000055e00000000100000010000035900000584000000001000000100000369000005ac000000001000000100000373000005b800000000100000010000037e000005c4000000001000000100000389000005d0000000001000000100000394000005dc0000000010000001000003a0000005e80000000010000001000003ac000005f40000000010000001004355455f434647004355455f4346475f435331004d454e555f52454452415700415544494f5f4c49535400415544494f5f434f4c554d4e004c4953545f494e495400415544494f5f4b4559533000424f585f4f4e00424f585f4f4646006375655f676574007365745f6d6f6465006375655f6d61736b5f66726f6d5f6c69766500636f6e766572745f616c6c0042414e4b300042414e4b5f53495a4500504152545f53495a450042414e4b5f53415645004355525f42414e4b004353315f574f524b5f4c56004353315f53415645445f4c56004353315f454449544544004c4956455f4c56004355455f4d41534b004355455f4445535453004c4556454c5f4445535453004355455f4d55544553004355455f4d41534b5f43533100445f4f4646004d41535445525f4f4e0043435f4f555400636f6e765f706172747300636f6e765f747261636b7300444553545f4d4158004449414c5f53544550004449414c5f414444004c45565f414343004c45565f5055534800706172745f63756500646573745f6c6162656c00646573745f6e616d6573007374725f666d745f730050475f4d41494e300050475f4d41494e0050475f50484f4e45530050475f444553545f4c4f0050475f444553545f48490050475f4d4154524958004c4956455f4355450073656e745f636f646573007374725f70686e007374725f6d696e7573007374725f706c7573007374725f626c616e6b007374725f6d6174726978006e5f6d61696e006e5f637565006e5f70686e73006e5f6d63006e5f6d70006e5f6370006e5f616c6c006e5f6d6e6c006e5f6d6e72006e5f63756c006e5f637572006e5f70686c006e5f706872006e5f6f666600666164696e670070617273655f6d6f646500617564696f5f656e74657200617564696f5f6b657973006375655f6765745f6e6f726d616c006375655f6765745f73747564696f006375655f6765745f6d6174726978006163745f6e6f726d616c006163745f73747564696f006163745f6d6174726978006163745f6e6f6e65006375655f6c6576656c5f656e63006c65765f626f785f637565006c65765f626f785f6c6576006c65765f626f785f76616c006c65765f6261727300706167655f6c6576656c73006d697865725f6d69785f6c6162656c006d697865725f6d69785f6c656674006d697865725f6d69785f72696768740074385f6c6162656c730074385f676574746572730074385f616374696f6e73006375655f6c6162656c73006375655f67657474657273006375655f616374696f6e73007374725f6f757463666700000000037c00000201000000000000042c0000020100000000000004c200000201000000380000057a0000020100000054000005b40000020100000048000005cc00000101000000f0000005d80000020100000049000005dc0000010100000064000005e00000010100000068000005e4000001010000006c000005e8000001010000008a000005ec000001010000008e000005f00000010100000092000004360000020100000058000005540000020100000050000005a0000002010000005600000000000002010000005b00000004000002010000005e0000000800000201000000620000000c000002010000006600000010000002010000006a00000014000002010000006e0000001800000201000000720000001c000002010000007600000020000002010000007a00000024000002010000007e0000002800000201000000820000002c000002010000008600000030000002010000008a00000034000002010000008e002e73796d746162002e737472746162002e7368737472746162002e72656c612e74657874002e72656c612e64617461002e627373000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000001000000060000000000000034000005fc000000000000000000000004000000000000001b000000040000004000000000000010cc000000c00000000600000001000000040000000c0000002b000000010000000300000000000006300000009200000000000000000000000400000000000000260000000400000040000000000000118c000000a80000000600000003000000040000000c00000031000000080000000300000000000006c4000000000000000000000000000000040000000000000001000000020000000000000000000006c400000650000000070000004b00000004000000100000000900000003000000000000000000000d14000003b70000000000000000000000010000000000000011000000030000000000000000000012340000003600000000000000000000000100000000", + "sha256": "1fa1325a3f0a534c69dc32a656729fbf27bba8e92adeca496c207da1665a3b05", "stockCopies": [], "placement": "linked", "poolBaseLiterals": 0, @@ -4518,6 +4518,17 @@ "writeLength": 6, "note": "LEV box with CUE held: in MATRIX, labelled with the track's destination" }, + { + "address": 1074060538, + "guardLength": 6, + "guardSha256": "6b112717da66c861a652a9b72284300e00956b293a5c6425031cee49333d91f1", + "unit": "matrix", + "symbol": "lev_box_lev", + "target": null, + "kind": "jmp", + "writeLength": 6, + "note": "LEV box: in MATRIX, labelled with the track's destination instead of LEV" + }, { "address": 1074060724, "guardLength": 18, diff --git a/src/engine/assets/resident-dsp.json b/src/engine/assets/resident-dsp.json index d3d3d9a92..04f32daf0 100644 --- a/src/engine/assets/resident-dsp.json +++ b/src/engine/assets/resident-dsp.json @@ -335,7 +335,7 @@ ] } ], - "sourceCommit": "e61274dd6e20304fb5b71d3320c4746f4af7ebeb", + "sourceCommit": "d0f2866e57d626fd66d566da6ba0c5c2d8cfd397", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -361,6 +361,6 @@ "mute-modes": "0.2.1-experimental", "recorder-loop-fix": "0.1.0-experimental", "poly8": "0.3.0-experimental", - "output-matrix": "0.1.0-experimental" + "output-matrix": "0.1.1-experimental" } } diff --git a/src/engine/assets/rom-packages.json b/src/engine/assets/rom-packages.json index 84cf6b236..58f8ba96d 100644 --- a/src/engine/assets/rom-packages.json +++ b/src/engine/assets/rom-packages.json @@ -399,7 +399,7 @@ "sha256": "fdba0ffd31b7932ceb1ded3bde9a976b6f148ae96fc73a4efc4fedf6fb692341" } ], - "sourceCommit": "e61274dd6e20304fb5b71d3320c4746f4af7ebeb", + "sourceCommit": "d0f2866e57d626fd66d566da6ba0c5c2d8cfd397", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -425,6 +425,6 @@ "mute-modes": "0.2.1-experimental", "recorder-loop-fix": "0.1.0-experimental", "poly8": "0.3.0-experimental", - "output-matrix": "0.1.0-experimental" + "output-matrix": "0.1.1-experimental" } } diff --git a/src/engine/assets/usb-audio-packages.json b/src/engine/assets/usb-audio-packages.json index ad13fdba3..ed7dc316e 100644 --- a/src/engine/assets/usb-audio-packages.json +++ b/src/engine/assets/usb-audio-packages.json @@ -553,7 +553,7 @@ } ] }, - "sourceCommit": "e61274dd6e20304fb5b71d3320c4746f4af7ebeb", + "sourceCommit": "d0f2866e57d626fd66d566da6ba0c5c2d8cfd397", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -579,6 +579,6 @@ "mute-modes": "0.2.1-experimental", "recorder-loop-fix": "0.1.0-experimental", "poly8": "0.3.0-experimental", - "output-matrix": "0.1.0-experimental" + "output-matrix": "0.1.1-experimental" } } diff --git a/src/engine/assets/utility-packages.json b/src/engine/assets/utility-packages.json index 5ad4a955b..f9d2db915 100644 --- a/src/engine/assets/utility-packages.json +++ b/src/engine/assets/utility-packages.json @@ -3,7 +3,7 @@ "kind": "authored-utility-packages", "stockRead": false, "revision": "b8deefc88b2c3e5f3c6158e364eb741df1924e1d", - "sourceCommit": "e61274dd6e20304fb5b71d3320c4746f4af7ebeb", + "sourceCommit": "d0f2866e57d626fd66d566da6ba0c5c2d8cfd397", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -29,7 +29,7 @@ "mute-modes": "0.2.1-experimental", "recorder-loop-fix": "0.1.0-experimental", "poly8": "0.3.0-experimental", - "output-matrix": "0.1.0-experimental" + "output-matrix": "0.1.1-experimental" }, "compilerSha256": "ba4cfc6b0c5948f8b0a2809d5b73bea85633eb32f82ffc761a6373d9c4d48c5f", "qualification": "Source assembly and relocation only. Hardware and release approval are not supplied by this artifact.", From 6646ff816c7dee060cc0f828113cfdf7121324c9 Mon Sep 17 00:00:00 2001 From: Nathaniel Pawelczyk Date: Fri, 16 Oct 2026 09:14:22 -0500 Subject: [PATCH 07/20] Output Matrix 0.1.1-experimental: MKII hardware record over USB The author's panel checks on a RAM-booted beta base built from this source (MAIN.raw 5ca0afbf, package e2df2fbf): MATRIX on and off, the always-on LEV label, routing to MAIN, CUE, PHONES, a mono jack and OFF, and MIX as the PHONES level, all passed. Qualification moves to 0.1.1 with the current DSP figures (275 instructions/sample; 657 + 14 P words) and evidence/usb-hardware.md. Co-Authored-By: Claude Opus 5.5 --- CHANGELOG.md | 2 +- sdk/octabam/modules/output-matrix/TESTING.md | 4 ++ .../output-matrix/evidence/usb-hardware.md | 28 ++++++++++ .../modules/output-matrix/octamod.module.json | 55 +++++++++---------- .../module-changelogs/output-matrix.json | 2 +- 5 files changed, 61 insertions(+), 30 deletions(-) create mode 100644 sdk/octabam/modules/output-matrix/evidence/usb-hardware.md diff --git a/CHANGELOG.md b/CHANGELOG.md index 0498d0f45..1e01f9c34 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -12,7 +12,7 @@ - Beta testers are asked to share diagnostics again on any page after a new consent version. The note that requires it showed once per account, so testers who went through it before the consent version changed to `2026-10-15.1` (#657) weren't asked again: on 16 October the pull held 0 records against 22 syncs the day before. Now a beta tester whose consent isn't for the current version, or has expired, gets the required step again (Share diagnostics or Leave beta) wherever they are on the site. It relies on the consent read returning the stored version (#665). A tester who turned sharing off under the current version isn't asked. Checked with unit tests; not yet seen on the live site. - When Chrome can't open the Octatrack, the message now says why on Linux and Windows instead of only "unplug it and try again" (reported on Discord: an MKI on Chromium/Ubuntu and on Chrome/Windows). On Linux, Chrome needs a udev rule, now shown with the commands under Setup → Can't connect?, and Chromium from the Snap Store also needs its `raw-usb` connection. On Windows the Octatrack can be opened only once it runs the Modwerk base, because Windows binds WinUSB only to the base's interface. Checked with unit tests; the rule and the snap step have not been run on a Linux computer here, and neither has a Windows connection with the original OS. -- Output Matrix 0.1.1-experimental on the beta base: the base's resident Output Matrix engine is built from the module's smaller core-0 code (675 words placed on demand instead of 773), and its controller package is re-ported for the always-on LEV box label (20 stock sites, six stock-copy spans; package `e2df2fbf…`, admitted by new trust rows). The base identity changes to `3e3e3de1…`; its lease entries did not move, so Analog BD's recipe and the other base-bound packages' bytes are unchanged and only their required base moves. Host tests and the emulator only; not yet run over USB on a unit. +- Output Matrix 0.1.1-experimental on the beta base: the base's resident Output Matrix engine is built from the module's smaller core-0 code (675 words placed on demand instead of 773), and its controller package is re-ported for the always-on LEV box label (20 stock sites, six stock-copy spans; package `e2df2fbf…`, admitted by new trust rows). The base identity changes to `3e3e3de1…`; its lease entries did not move, so Analog BD's recipe and the other base-bound packages' bytes are unchanged and only their required base moves. On the author's MKII over USB (RAM-booted base): MATRIX on and off, the label, routing and the PHONES level passed; no power cycle on this version. ## 15 October 2026 diff --git a/sdk/octabam/modules/output-matrix/TESTING.md b/sdk/octabam/modules/output-matrix/TESTING.md index e9bc9cd38..b600a7686 100644 --- a/sdk/octabam/modules/output-matrix/TESTING.md +++ b/sdk/octabam/modules/output-matrix/TESTING.md @@ -371,3 +371,7 @@ P on core 0 goes from 727 words of code + a 42-word table (769) to 657 + 14 (671 - **Gate.** `verify.py` on the new build: 117/117. Not tested: hardware. + +## 0.1.1 over USB (16 Oct 2026, MKII) + +The label and the smaller core-0 code on the beta base: a RAM-booted base built from this source (identity `3e3e3de1…`, MAIN.raw `5ca0afbf…`) with the 0.1.1 package (`e2df2fbf…`). The author checked the switch into MATRIX and back to NORMAL, the always-on LEV label, CUE + LEVEL routing to MAIN, CUE, PHONES, a mono jack and OFF on a playing track, and MIX as the PHONES level: all passed. The first trial's rollback was refused once (`needs-recovery`) and completed by the base on its own. No power cycle, project or Part reload, MASTER TRACK or other modules beside it on this version. Details: [evidence/usb-hardware.md](evidence/usb-hardware.md). diff --git a/sdk/octabam/modules/output-matrix/evidence/usb-hardware.md b/sdk/octabam/modules/output-matrix/evidence/usb-hardware.md new file mode 100644 index 000000000..e1931bce0 --- /dev/null +++ b/sdk/octabam/modules/output-matrix/evidence/usb-hardware.md @@ -0,0 +1,28 @@ +# Output Matrix 0.1.1-experimental over USB on an MKII + +- **Date:** 16 October 2026. **Tester:** npp1993 (the author), at the unit; installation driven over USB by Claude Code. +- **Unit:** Octatrack MKII, OS 1.40C, flashed with beta base `99336d35…`. +- **Base under test:** RAM-booted with `npm run device -- boot DIR --chunk 4096`; nothing flashed. Base identity `3e3e3de1f350781b…`, MAIN.raw SHA-256 `5ca0afbf038e17f7919c4d7cfb6ef518e3a4d9c41a12cfa69f59f1ac64a2acc4`, built with the beta flags (`--usb-midi --usb-audio 'USB AUDIO OUT TRACKS MAIN CUE' --site-events --table-owners --resident-stock-hooks --resident-on-demand --controllers`) from source commit `44738eaf` (main `a59677ee` plus this version). The same command on unmodified main reproduced main's committed base here byte for byte first. +- **Package under test:** `public/octatrack-modules/output-matrix/0.1.1-experimental.mwrm`, SHA-256 `e2df2fbfff7f956846c030a87c50ff391af427b8719d40018e6449cef8e48acd` (ABI 7, 20 sites, 6 stock copies). + +## Installation + +1. `try … --seconds 10` (trial, then roll back): the trial ran 10 s with the slot running. The rollback was refused once with `needs-recovery`; a few seconds later, with no further command, the unit read `normal, generation 2` with an empty inventory, so the base finished the rollback on its own. The site's client retries a rollback from recovery for the same reason (`octatrack-link.ts`: the engine's code was still being placed). +2. `try … --seconds 5 --accept`: accepted; `status` read `normal, generation 3, active e2df2fbf…`; INVENTORY listed OUTPUT MATRIX alone. + +## Panel checks (the author's results) + +| # | Check | Result | +|---|---|---| +| 1 | PROJECT > CONTROL > AUDIO > OUT CFG > MATRIX, YES: the switch goes through, no freeze | pass | +| 2 | In MATRIX the LEV box shows each track's destination (MN, PHN, M+C, …) without CUE held | pass | +| 3 | CUE + LEVEL on a playing track: MAIN, CUE, PHONES, a mono jack (PHL) and OFF; audio comes out where the label says | pass | +| 4 | MIXER MIX sets the PHONES level | pass | +| 5 | OUT CFG back to NORMAL: stock behaviour returns | pass | + +## Limitations + +- RAM-booted base: no power cycle, project save and reload, or Part reload on this version over USB. +- Output Matrix alone on the base: no other module installed beside it; MASTER TRACK, STUDIO, the mode conversion's other Parts and banks, and CC 51 out were not checked on the unit for this version. +- Functional checks by ear; no audio recording or chip timing. The smaller DSP code's sample-identical output is shown in the emulator (TESTING.md), not measured on the unit. +- One MKII; no MKI. diff --git a/sdk/octabam/modules/output-matrix/octamod.module.json b/sdk/octabam/modules/output-matrix/octamod.module.json index 1212db7d7..67f0f545a 100644 --- a/sdk/octabam/modules/output-matrix/octamod.module.json +++ b/sdk/octabam/modules/output-matrix/octamod.module.json @@ -90,21 +90,21 @@ }, "tests": { "report": "TESTING.md", - "summary": "The image gate passes 117 checks under the ColdFire port: every destination, mono sums, MAIN against stock, the level law, MKII, MASTER, mute, DIR, the declick, every mode-conversion rule by the keys (including track 8 as the master and the power-cycle copies), CC 51 out and a power cycle. On an MKII the author tested routing, levels, the MIXER, everyday flows, saving and power and the conversion (functional report, 7–9 Oct 2026). No timed stress run, no chip timing.", + "summary": "The image gate passes 117 checks under the ColdFire port: every destination, mono sums, MAIN against stock, the level law, MKII, MASTER, mute, DIR, the declick, every mode-conversion rule by the keys (including track 8 as the master and the power-cycle copies), CC 51 out and a power cycle. On an MKII the author tested routing, levels, the MIXER, everyday flows, saving and power and the conversion (functional report, 7–9 Oct 2026). No timed stress run, no chip timing. 0.1.1 over USB on the MKII (RAM-booted beta base, 16 Oct 2026): MATRIX on and off, the always-on LEV label, routing to MAIN, CUE, PHONES, a mono jack and OFF, and the PHONES level all passed; no power cycle on this version.", "hardwareStatus": "reported", - "evidenceRevision": "a118cf12c801921196854c15608654b460946c4a", + "evidenceRevision": "44738eaf4d935438bfae0899dd5287e2b2d10b20", "gates": [ "modules/output-matrix/verify.py" ], "qualification": { - "moduleVersion": "0.1.0-experimental", - "sourceSha256": "b5a6b32d98de4a305f901a7e7d3ea89ed9dc39a5bfbebcbcfe4fd3559613e337", - "imageSha256": "3e883adbaff67781f526e6e2c01a7833bdcd0696be79df296b624937b969e514", + "moduleVersion": "0.1.1-experimental", + "sourceSha256": "0c2005a9e373bc1193e396c378543d16efb076914f4deed0f165597b218ecbb4", + "imageSha256": "5ca0afbf038e17f7919c4d7cfb6ef518e3a4d9c41a12cfa69f59f1ac64a2acc4", "cycles": [ { "processor": "dsp", - "worstCase": 277, - "maxConfiguration": 277, + "worstCase": 275, + "maxConfiguration": 275, "maxInstances": 1, "budget": 3120, "unit": "cycles/sample", @@ -113,7 +113,7 @@ "parameterExtremes": "Every destination code 0..13 per track, all eight tracks on ALL, mixed stereo and mono routings, MAIN/CUE/PHONES levels 0..127, MASTER on and off.", "parameterModulation": "MAIN, CUE and MIX levels changed every other frame for 60 frames; LEVEL, XVOL scenes, locks and LFOs act through stock gain ramps the mixdown reads, unchanged.", "modeSwitching": "All eight tracks changing destination in one frame (list rebuild and declick), and NORMAL/STUDIO/MATRIX switches.", - "maxLoad": "One instance per unit (a global mode). Worst measured: 4,240 + 192 executed instructions per 16-sample frame on core 0, every track on ALL with MASTER on; stock 880 + 191.", + "maxLoad": "One instance per unit (a global mode). Worst measured: 4,194 + 192 executed instructions per 16-sample frame on core 0, every track on ALL with MASTER on; stock 880 + 191.", "inputConditions": "Tone and four-input test audio; the code path does not depend on sample values. Counts are executed instructions, not modelled cycles." }, "report": "TESTING.md" @@ -141,9 +141,9 @@ { "name": "ColdFire code and the AUDIO page tables stock code points at (DRAM unit .text)", "space": "sdram", - "words": 1464, + "words": 1532, "wordBits": 8, - "bytes": 1464, + "bytes": 1532, "scope": "shared" }, { @@ -157,17 +157,17 @@ { "name": "DSP core 0 program: mixdown and phones hooks, in SPRING REV's harvested span", "space": "dsp-p", - "words": 727, + "words": 657, "wordBits": 24, - "bytes": 2181, + "bytes": 1971, "scope": "shared" }, { - "name": "DSP core 0 program: the 42-word destination table", + "name": "DSP core 0 program: the 14-word destination table (3 codes a word)", "space": "dsp-p", - "words": 42, + "words": 14, "wordBits": 24, - "bytes": 126, + "bytes": 42, "scope": "shared" }, { @@ -180,9 +180,9 @@ } ], "perInstanceBytes": 0, - "sharedBytes": 4496, + "sharedBytes": 4270, "maxInstances": 1, - "totalBytes": 4496, + "totalBytes": 4270, "conditions": "From the static build's runtime ELF and the DSP placement report. Detours patch stock instructions in place; the level-page words and battery-RAM copies the module uses are stock's. No heap; ColdFire stack use is the callers' frames plus at most 48 bytes (set_mode's saved registers and the conversion's call chain).", "report": "TESTING.md" }, @@ -190,20 +190,19 @@ "kind": "functional", "status": "reported", "model": "MKII", - "testedOn": "2026-10-09", + "testedOn": "2026-10-16", "tester": "npp1993", - "sourceRevision": "a118cf12c801921196854c15608654b460946c4a", - "imageSha256": "3e883adbaff67781f526e6e2c01a7833bdcd0696be79df296b624937b969e514", - "summary": "On an Octatrack MKII the author flashed PHNSTAT8 and PHNSTAT9 (7-8 Oct, the module under its earlier name, stock DSP code built in, SPRING REV off the menus) and checked: tracks reach MAIN, CUE and PHONES separately, mono jacks and sides, LEVEL on every output, the MIXER's MAIN, CUE and PHN, the headphone knob, no zipper noise, a semi-busy project with tracks on PHONES without dropouts, mute and solo, page resets, Parts and Part reload, patterns, XVOL, metronome, inputs, the master track, save and power cycle with unsaved routing, project reload, the stock NORMAL and STUDIO flows, and the mode conversion to STUDIO and NORMAL and back. On 9 Oct the author flashed OUTMTX10 (the renaming only: the AUDIO page reads OUT CFG with NORMAL, STUDIO and MATRIX) then OUTMTX11, which adds the review fixes: with track 8 as the master routed to M+C, switching to NORMAL leaves it uncued with the master still on MAIN, and switching back shows MN; a track routed to PHN plays only in the headphones. Then OUTMTX12, which loads each routing list's length in one instruction (-12 DSP words): tracks on MN, CUE and PHN, several on one output, the mono jacks, M+P and ALL, the master track and destination changes during playback all played as before. Then OUTMTX13, this source, which moves the AUDIO page's tables into the unit's code section so the website builder places them where native does: OUT CFG with NORMAL, STUDIO and MATRIX, track 8 as the master (MASTER and NORMAL rows), MATRIX to NORMAL and back, routing changes, and routing kept over a power cycle.", + "sourceRevision": "44738eaf4d935438bfae0899dd5287e2b2d10b20", + "imageSha256": "5ca0afbf038e17f7919c4d7cfb6ef518e3a4d9c41a12cfa69f59f1ac64a2acc4", + "summary": "Over USB on an Octatrack MKII: a RAM-booted beta base built from this source (identity 3e3e3de1..., MAIN 5ca0afbf...) with the 0.1.1 package (e2df2fbf...) installed by trial, rollback and then trial and keep. The author checked: the switch into MATRIX and back to NORMAL, the always-on destination label in the LEV box, CUE + LEVEL routing to MAIN, CUE, PHONES, a mono jack and OFF on a playing track with the audio where the label says, and MIX as the PHONES level. All passed.", "limitations": [ - "A functional interactive report, not a timed stress run; no audio or timing measurement on the chip.", - "One MKII; no MKI.", - "Conversions in Parts other than the current one and in other banks were checked in the emulator only.", - "No combination with other modules on the unit.", - "OUTMTX10, OUTMTX11 and OUTMTX12 were given short checks of what changed; the full checks ran on PHNSTAT8/9, whose behaviour the gate shows unchanged otherwise.", - "CC 51 out on a switch into NORMAL is emulator-verified only (no controller was connected)." + "RAM-booted base: no power cycle, project save and reload or Part reload on this version over USB.", + "Output Matrix alone on the base; MASTER TRACK, STUDIO, conversions in other Parts and banks and CC 51 out not checked on the unit for this version.", + "Checked by ear; no audio recording or chip timing. The smaller DSP code's identical output is shown in the emulator only.", + "The first trial's rollback was refused once (needs-recovery) and completed by the base without a further command.", + "One MKII; no MKI." ], - "report": "TESTING.md" + "report": "evidence/usb-hardware.md" }, "documentation": { "tutorial": { diff --git a/src/community/module-changelogs/output-matrix.json b/src/community/module-changelogs/output-matrix.json index 5af7d9625..9e2a21b71 100644 --- a/src/community/module-changelogs/output-matrix.json +++ b/src/community/module-changelogs/output-matrix.json @@ -5,7 +5,7 @@ "changes": [ "In MATRIX the LEV box is always labelled with the track's destination (MN, PHN, M+C, ...), not only while CUE is held, so each track's routing stays in view. The value shown while turning LEVEL is still the level; XLV (scene editing), FUNC's MAIN view, NORMAL, STUDIO and MIDI tracks are as before. The author tested the label on an MKII from a card image (OMXLBL01, 13-14 Oct 2026) built before the DSP change below.", "Smaller core-0 DSP code: 727 code + 42 table words become 657 + 14 (671 in all), with the same output sample for sample in 26 emulator scenarios (ot_emu: every destination, levels moving, MASTER, MKII, DIR, destination changes during playback). Worst case 4,240 -> 4,194 executed instructions per 16-sample frame, 275 per sample with the headphone crossfade. Emulator only: this DSP code has not run on hardware.", - "USB: the Modwerk base carries Output Matrix's DSP engine, so the smaller engine needs a new base, and the label needs a re-ported controller package (20 stock sites instead of 19, six stock-copy spans). Both are built locally (base 3e3e3de1, package e2df2fbf) and not published; the published base and the 0.1.0 package are unchanged. Not yet run on the unit over USB.", + "USB: the Modwerk base carries Output Matrix's DSP engine, so the smaller engine needs a new base, and the label needs a re-ported controller package (20 stock sites instead of 19, six stock-copy spans). Both are built locally (base 3e3e3de1, package e2df2fbf) and not published; the published base and the 0.1.0 package are unchanged. On the author's MKII over USB (RAM-booted base, 16 Oct 2026) the switch into MATRIX and back, the label, routing to MAIN, CUE, PHONES, a mono jack and OFF, and the PHONES level passed; the first trial's rollback was refused once (needs-recovery) and completed by the base on its own. Not checked on the unit for this version: a power cycle, project or Part reload, MASTER TRACK and other modules beside it.", "Test-only: the gate compares runs over the same samples from transport start, which removes a false DIR AB 127 failure in combined images. Gate 117/117 in the emulator." ] }, From ebd59d71e35ce15c9fb0aed293ca615c2411774f Mon Sep 17 00:00:00 2001 From: Nathaniel Pawelczyk Date: Fri, 16 Oct 2026 09:17:30 -0500 Subject: [PATCH 08/20] Output Matrix 0.1.1-experimental: OT UI captures from the 0.1.1 image The capture plan rerun on a static 0.1.1 image (mainos a9d5e3b8): the four screenshots are pixel-identical to 0.1.0's (the always-on label equals the CUE-held one); records and captions updated. Co-Authored-By: Claude Opus 5.5 --- .../modules/output-matrix/media/capture.json | 2 +- .../modules/output-matrix/octamod.module.json | 18 +++++++++--------- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/sdk/octabam/modules/output-matrix/media/capture.json b/sdk/octabam/modules/output-matrix/media/capture.json index 1ef33b5c0..d2b8e9cac 100644 --- a/sdk/octabam/modules/output-matrix/media/capture.json +++ b/sdk/octabam/modules/output-matrix/media/capture.json @@ -1,6 +1,6 @@ { "firmware": "1.40C", - "imageSha256": "4bba473634b4a9c9f946ae7f721240e8fcef354bff849ad501a29c8b2568176f", + "imageSha256": "a9d5e3b8fcd11c8bbec777866699c1a389b6034025feadcdb35d619a31962996", "emulatorSha256": "23ba6f6cdc6ec4b89b8cf206915e66d3160aec8499b1abfc9b475ac849152b28", "setup": "Headless ot_emu; MKII panel; stopped transport; 128\u00d764 LCD at integer scale 6.", "palette": { diff --git a/sdk/octabam/modules/output-matrix/octamod.module.json b/sdk/octabam/modules/output-matrix/octamod.module.json index 67f0f545a..9c2f5d938 100644 --- a/sdk/octabam/modules/output-matrix/octamod.module.json +++ b/sdk/octabam/modules/output-matrix/octamod.module.json @@ -241,15 +241,15 @@ "page": "PROJECT > CONTROL > AUDIO", "shows": "location", "firmware": "1.40C", - "moduleVersion": "0.1.0-experimental", - "imageSha256": "4bba473634b4a9c9f946ae7f721240e8fcef354bff849ad501a29c8b2568176f", + "moduleVersion": "0.1.1-experimental", + "imageSha256": "a9d5e3b8fcd11c8bbec777866699c1a389b6034025feadcdb35d619a31962996", "setup": "Headless ot_emu; MKII panel; empty disposable card (fresh project); stopped transport; actual 128×64 LCD pixels at integer scale 6." } }, { "path": "media/ot-cue-held.png", "captureType": "emulator", - "caption": "Hold CUE on any audio track: the LEV box shows where the track plays. MN means MAIN, the starting point after switching from NORMAL.", + "caption": "In MATRIX the LEV box is labelled with where the track plays, with or without CUE held. MN means MAIN, the starting point after switching from NORMAL.", "alt": "Actual Octatrack LCD: a track's SRC page with the LEV box labelled MN above its level bar.", "credit": "npp1993", "license": "LicenseRef-OT-UI-Documentation", @@ -258,8 +258,8 @@ "page": "SRC page, CUE held", "shows": "controls", "firmware": "1.40C", - "moduleVersion": "0.1.0-experimental", - "imageSha256": "4bba473634b4a9c9f946ae7f721240e8fcef354bff849ad501a29c8b2568176f", + "moduleVersion": "0.1.1-experimental", + "imageSha256": "a9d5e3b8fcd11c8bbec777866699c1a389b6034025feadcdb35d619a31962996", "setup": "Headless ot_emu; MKII panel; empty disposable card (fresh project); stopped transport; actual 128×64 LCD pixels at integer scale 6." } }, @@ -275,8 +275,8 @@ "page": "SRC page, CUE + LEVEL", "shows": "controls", "firmware": "1.40C", - "moduleVersion": "0.1.0-experimental", - "imageSha256": "4bba473634b4a9c9f946ae7f721240e8fcef354bff849ad501a29c8b2568176f", + "moduleVersion": "0.1.1-experimental", + "imageSha256": "a9d5e3b8fcd11c8bbec777866699c1a389b6034025feadcdb35d619a31962996", "setup": "Headless ot_emu; MKII panel; empty disposable card (fresh project); stopped transport; actual 128×64 LCD pixels at integer scale 6." } }, @@ -292,8 +292,8 @@ "page": "MIXER", "shows": "controls", "firmware": "1.40C", - "moduleVersion": "0.1.0-experimental", - "imageSha256": "4bba473634b4a9c9f946ae7f721240e8fcef354bff849ad501a29c8b2568176f", + "moduleVersion": "0.1.1-experimental", + "imageSha256": "a9d5e3b8fcd11c8bbec777866699c1a389b6034025feadcdb35d619a31962996", "setup": "Headless ot_emu; MKII panel; empty disposable card (fresh project); stopped transport; actual 128×64 LCD pixels at integer scale 6." } } From d88e5294392ef6a18b756e5a20cdcc4fce0daa6c Mon Sep 17 00:00:00 2001 From: Nathaniel Pawelczyk Date: Fri, 16 Oct 2026 09:17:52 -0500 Subject: [PATCH 09/20] Output Matrix 0.1.1-experimental: regenerate module documents Co-Authored-By: Claude Opus 5.5 --- src/catalog/module-documents.json | 97 +++++++++++++++---------------- 1 file changed, 48 insertions(+), 49 deletions(-) diff --git a/src/catalog/module-documents.json b/src/catalog/module-documents.json index e1c020820..fbc6e7253 100644 --- a/src/catalog/module-documents.json +++ b/src/catalog/module-documents.json @@ -6897,14 +6897,14 @@ "id": "output-matrix", "key": "OUTPUT MATRIX", "name": "Output Matrix", - "version": "0.1.0-experimental", + "version": "0.1.1-experimental", "category": "system", "access": { "location": "PROJECT > CONTROL > AUDIO > OUT CFG (stock CUE CFG) > MATRIX; then CUE + LEVEL on any audio track, and MIX in the MIXER.", "steps": [ "Include Output Matrix in your build.", "Press PROJ (MKII), open CONTROL > AUDIO, move right into the OUT CFG box, select MATRIX and press YES.", - "Select an audio track, hold CUE and turn LEVEL to pick its outputs; the LEV box shows the destination.", + "Select an audio track, hold CUE and turn LEVEL to pick its outputs; the LEV box's label always shows the destination.", "Open the MIXER: MIX, labelled PHN, sets the headphone output level." ], "screenshots": [ @@ -6934,7 +6934,7 @@ ], "usage": [ "PROJECT > CONTROL > AUDIO: select OUT CFG > MATRIX and press YES.", - "On a track, hold CUE: the LEV box shows the destination. Turn LEVEL to change it.", + "On a track, the LEV box is labelled with the destination (MN, PHN, ...). Hold CUE and turn LEVEL to change it.", "In the MIXER, MIX (labelled PHN) sets the PHONES output level. Choose NORMAL or STUDIO again to return to stock behaviour." ] }, @@ -6948,7 +6948,7 @@ ], "limitations": [ "Builds with the stock DSP code built in and takes a given-up stock effect's program memory on core 0. The builder chooses it: SPRING REV first, then PLATE REV or DARK REV when other modules also need room. The given-up effect leaves the FX2 menu.", - "The MATRIX mixdown costs core 0 up to about 210 more instructions per sample than stock (every track on ALL, MASTER on, bus levels moving); every track on MAIN adds about 20.", + "The MATRIX mixdown costs core 0 up to about 208 more instructions per sample than stock (every track on ALL, MASTER on, bus levels moving); every track on MAIN adds about 20.", "Switching to or from MATRIX rewrites every Part's LEVEL and cue bytes (and, into NORMAL, the project's cue settings) by documented rules; save to keep it.", "A MATRIX project opened on a stock OS loads as STUDIO with tiny cue levels; switch to NORMAL or STUDIO before flashing another OS.", "Changes core 0's mixdown and headphone crossfade; other modules that hook those sites are refused by the ledger.", @@ -6959,20 +6959,20 @@ "recorded": "Measured in the ColdFire port (instructions) and from the build report", "storage": { "label": "Memory", - "display": "1,610 B DRAM + 769 DSP P words + 193 DSP Y words", - "value": 4496, + "display": "1,678 B DRAM + 671 DSP P words + 193 DSP Y words", + "value": 4270, "unit": "bytes", "method": "static", - "conditions": "ColdFire unit .text 1,464 B and .data 146 B (runtime ELF); DSP P code 727 words and a 42-word table in SPRING REV's harvested span on core 0; DSP Y $c00..$cc0. No per-track copies, no audio buffers.", + "conditions": "ColdFire unit .text 1,532 B and .data 146 B (m68k-elf-as section sizes of matrix.s); DSP P code 657 words and a 14-word table in SPRING REV's harvested span on core 0 (727 + 42 before 0.1.1); DSP Y $c00..$cc0. No per-track copies, no audio buffers.", "source": "TESTING.md" }, "processing": { "label": "DSP core 0 mixdown", - "display": "≤ 277 instructions/sample (stock 67)", - "value": 277, + "display": "≤ 275 instructions/sample (stock 67)", + "value": 275, "unit": "instructions/sample", "method": "emulator", - "conditions": "Executed instructions of the mixdown (P:$257..$2d5) and headphone crossfade (P:$30a..$35a) per 16-sample frame, every track on ALL, MASTER on, MAIN/CUE/PHONES levels moving, including the frame that rebuilds the routing lists: 4,240 + 192 per frame (4,336 before the 12-word trim, TESTING.md). Stock: 880 + 191. Cycles and bus stalls are not modelled.", + "conditions": "Executed instructions of the mixdown (P:$257..$2d5) and headphone crossfade (P:$30a..$35a) per 16-sample frame, every track on ALL, MASTER on, MAIN/CUE/PHONES levels moving, including the frame that rebuilds the routing lists: 4,194 + 192 per frame, rounded up per sample (0.1.0: 4,240 + 192; 4,336 before the 12-word trim, TESTING.md). Stock: 880 + 191. Cycles and bus stalls are not modelled.", "source": "TESTING.md" }, "impact": { @@ -6986,22 +6986,22 @@ "dsp": { "level": "low", "basis": "measured-comparison", - "rationale": "Up to about 210 extra instructions per sample on core 0 (about 7% of 3,120); about 20 with every track on MAIN.", + "rationale": "Up to about 208 extra instructions per sample on core 0 (about 7% of 3,120); about 20 with every track on MAIN.", "source": "TESTING.md" }, "memory": { "level": "low", "basis": "measured-comparison", - "rationale": "1,610 bytes of DRAM code and data, 769 DSP program words reused from SPRING REV and 193 DSP Y words.", + "rationale": "1,678 bytes of DRAM code and data, 671 DSP program words reused from SPRING REV and 193 DSP Y words.", "source": "TESTING.md" } } }, "tests": { "report": "TESTING.md", - "summary": "The image gate passes 117 checks under the ColdFire port: every destination, mono sums, MAIN against stock, the level law, MKII, MASTER, mute, DIR, the declick, every mode-conversion rule by the keys (including track 8 as the master and the power-cycle copies), CC 51 out and a power cycle. On an MKII the author tested routing, levels, the MIXER, everyday flows, saving and power and the conversion (functional report, 7–9 Oct 2026). No timed stress run, no chip timing.", + "summary": "The image gate passes 117 checks under the ColdFire port: every destination, mono sums, MAIN against stock, the level law, MKII, MASTER, mute, DIR, the declick, every mode-conversion rule by the keys (including track 8 as the master and the power-cycle copies), CC 51 out and a power cycle. On an MKII the author tested routing, levels, the MIXER, everyday flows, saving and power and the conversion (functional report, 7–9 Oct 2026). No timed stress run, no chip timing. 0.1.1 over USB on the MKII (RAM-booted beta base, 16 Oct 2026): MATRIX on and off, the always-on LEV label, routing to MAIN, CUE, PHONES, a mono jack and OFF, and the PHONES level all passed; no power cycle on this version.", "hardwareStatus": "reported", - "evidenceRevision": "a118cf12c801921196854c15608654b460946c4a", + "evidenceRevision": "44738eaf4d935438bfae0899dd5287e2b2d10b20", "gates": [ "modules/output-matrix/verify.py" ], @@ -7023,14 +7023,14 @@ ], "screenshotStyle": "black-and-white" }, - "moduleVersion": "0.1.0-experimental", - "sourceSha256": "b5a6b32d98de4a305f901a7e7d3ea89ed9dc39a5bfbebcbcfe4fd3559613e337", - "imageSha256": "3e883adbaff67781f526e6e2c01a7833bdcd0696be79df296b624937b969e514", + "moduleVersion": "0.1.1-experimental", + "sourceSha256": "0c2005a9e373bc1193e396c378543d16efb076914f4deed0f165597b218ecbb4", + "imageSha256": "5ca0afbf038e17f7919c4d7cfb6ef518e3a4d9c41a12cfa69f59f1ac64a2acc4", "cycles": [ { "processor": "dsp", - "worstCase": 277, - "maxConfiguration": 277, + "worstCase": 275, + "maxConfiguration": 275, "maxInstances": 1, "budget": 3120, "unit": "cycles/sample", @@ -7039,7 +7039,7 @@ "parameterExtremes": "Every destination code 0..13 per track, all eight tracks on ALL, mixed stereo and mono routings, MAIN/CUE/PHONES levels 0..127, MASTER on and off.", "parameterModulation": "MAIN, CUE and MIX levels changed every other frame for 60 frames; LEVEL, XVOL scenes, locks and LFOs act through stock gain ramps the mixdown reads, unchanged.", "modeSwitching": "All eight tracks changing destination in one frame (list rebuild and declick), and NORMAL/STUDIO/MATRIX switches.", - "maxLoad": "One instance per unit (a global mode). Worst measured: 4,240 + 192 executed instructions per 16-sample frame on core 0, every track on ALL with MASTER on; stock 880 + 191.", + "maxLoad": "One instance per unit (a global mode). Worst measured: 4,194 + 192 executed instructions per 16-sample frame on core 0, every track on ALL with MASTER on; stock 880 + 191.", "inputConditions": "Tone and four-input test audio; the code path does not depend on sample values. Counts are executed instructions, not modelled cycles." }, "report": "TESTING.md" @@ -7067,9 +7067,9 @@ { "name": "ColdFire code and the AUDIO page tables stock code points at (DRAM unit .text)", "space": "sdram", - "words": 1464, + "words": 1532, "wordBits": 8, - "bytes": 1464, + "bytes": 1532, "scope": "shared" }, { @@ -7083,17 +7083,17 @@ { "name": "DSP core 0 program: mixdown and phones hooks, in SPRING REV's harvested span", "space": "dsp-p", - "words": 727, + "words": 657, "wordBits": 24, - "bytes": 2181, + "bytes": 1971, "scope": "shared" }, { - "name": "DSP core 0 program: the 42-word destination table", + "name": "DSP core 0 program: the 14-word destination table (3 codes a word)", "space": "dsp-p", - "words": 42, + "words": 14, "wordBits": 24, - "bytes": 126, + "bytes": 42, "scope": "shared" }, { @@ -7106,9 +7106,9 @@ } ], "perInstanceBytes": 0, - "sharedBytes": 4496, + "sharedBytes": 4270, "maxInstances": 1, - "totalBytes": 4496, + "totalBytes": 4270, "conditions": "From the static build's runtime ELF and the DSP placement report. Detours patch stock instructions in place; the level-page words and battery-RAM copies the module uses are stock's. No heap; ColdFire stack use is the callers' frames plus at most 48 bytes (set_mode's saved registers and the conversion's call chain).", "report": "TESTING.md" }, @@ -7116,20 +7116,19 @@ "kind": "functional", "status": "reported", "model": "MKII", - "testedOn": "2026-10-09", + "testedOn": "2026-10-16", "tester": "npp1993", - "sourceRevision": "a118cf12c801921196854c15608654b460946c4a", - "imageSha256": "3e883adbaff67781f526e6e2c01a7833bdcd0696be79df296b624937b969e514", - "summary": "On an Octatrack MKII the author flashed PHNSTAT8 and PHNSTAT9 (7-8 Oct, the module under its earlier name, stock DSP code built in, SPRING REV off the menus) and checked: tracks reach MAIN, CUE and PHONES separately, mono jacks and sides, LEVEL on every output, the MIXER's MAIN, CUE and PHN, the headphone knob, no zipper noise, a semi-busy project with tracks on PHONES without dropouts, mute and solo, page resets, Parts and Part reload, patterns, XVOL, metronome, inputs, the master track, save and power cycle with unsaved routing, project reload, the stock NORMAL and STUDIO flows, and the mode conversion to STUDIO and NORMAL and back. On 9 Oct the author flashed OUTMTX10 (the renaming only: the AUDIO page reads OUT CFG with NORMAL, STUDIO and MATRIX) then OUTMTX11, which adds the review fixes: with track 8 as the master routed to M+C, switching to NORMAL leaves it uncued with the master still on MAIN, and switching back shows MN; a track routed to PHN plays only in the headphones. Then OUTMTX12, which loads each routing list's length in one instruction (-12 DSP words): tracks on MN, CUE and PHN, several on one output, the mono jacks, M+P and ALL, the master track and destination changes during playback all played as before. Then OUTMTX13, this source, which moves the AUDIO page's tables into the unit's code section so the website builder places them where native does: OUT CFG with NORMAL, STUDIO and MATRIX, track 8 as the master (MASTER and NORMAL rows), MATRIX to NORMAL and back, routing changes, and routing kept over a power cycle.", + "sourceRevision": "44738eaf4d935438bfae0899dd5287e2b2d10b20", + "imageSha256": "5ca0afbf038e17f7919c4d7cfb6ef518e3a4d9c41a12cfa69f59f1ac64a2acc4", + "summary": "Over USB on an Octatrack MKII: a RAM-booted beta base built from this source (identity 3e3e3de1..., MAIN 5ca0afbf...) with the 0.1.1 package (e2df2fbf...) installed by trial, rollback and then trial and keep. The author checked: the switch into MATRIX and back to NORMAL, the always-on destination label in the LEV box, CUE + LEVEL routing to MAIN, CUE, PHONES, a mono jack and OFF on a playing track with the audio where the label says, and MIX as the PHONES level. All passed.", "limitations": [ - "A functional interactive report, not a timed stress run; no audio or timing measurement on the chip.", - "One MKII; no MKI.", - "Conversions in Parts other than the current one and in other banks were checked in the emulator only.", - "No combination with other modules on the unit.", - "OUTMTX10, OUTMTX11 and OUTMTX12 were given short checks of what changed; the full checks ran on PHNSTAT8/9, whose behaviour the gate shows unchanged otherwise.", - "CC 51 out on a switch into NORMAL is emulator-verified only (no controller was connected)." + "RAM-booted base: no power cycle, project save and reload or Part reload on this version over USB.", + "Output Matrix alone on the base; MASTER TRACK, STUDIO, conversions in other Parts and banks and CC 51 out not checked on the unit for this version.", + "Checked by ear; no audio recording or chip timing. The smaller DSP code's identical output is shown in the emulator only.", + "The first trial's rollback was refused once (needs-recovery) and completed by the base without a further command.", + "One MKII; no MKI." ], - "report": "TESTING.md" + "report": "evidence/usb-hardware.md" } } }, @@ -7151,15 +7150,15 @@ "page": "PROJECT > CONTROL > AUDIO", "shows": "location", "firmware": "1.40C", - "moduleVersion": "0.1.0-experimental", - "imageSha256": "4bba473634b4a9c9f946ae7f721240e8fcef354bff849ad501a29c8b2568176f", + "moduleVersion": "0.1.1-experimental", + "imageSha256": "a9d5e3b8fcd11c8bbec777866699c1a389b6034025feadcdb35d619a31962996", "setup": "Headless ot_emu; MKII panel; empty disposable card (fresh project); stopped transport; actual 128×64 LCD pixels at integer scale 6." } }, { "path": "media/ot-cue-held.png", "captureType": "emulator", - "caption": "Hold CUE on any audio track: the LEV box shows where the track plays. MN means MAIN, the starting point after switching from NORMAL.", + "caption": "In MATRIX the LEV box is labelled with where the track plays, with or without CUE held. MN means MAIN, the starting point after switching from NORMAL.", "alt": "Actual Octatrack LCD: a track's SRC page with the LEV box labelled MN above its level bar.", "credit": "npp1993", "license": "LicenseRef-OT-UI-Documentation", @@ -7168,8 +7167,8 @@ "page": "SRC page, CUE held", "shows": "controls", "firmware": "1.40C", - "moduleVersion": "0.1.0-experimental", - "imageSha256": "4bba473634b4a9c9f946ae7f721240e8fcef354bff849ad501a29c8b2568176f", + "moduleVersion": "0.1.1-experimental", + "imageSha256": "a9d5e3b8fcd11c8bbec777866699c1a389b6034025feadcdb35d619a31962996", "setup": "Headless ot_emu; MKII panel; empty disposable card (fresh project); stopped transport; actual 128×64 LCD pixels at integer scale 6." } }, @@ -7185,8 +7184,8 @@ "page": "SRC page, CUE + LEVEL", "shows": "controls", "firmware": "1.40C", - "moduleVersion": "0.1.0-experimental", - "imageSha256": "4bba473634b4a9c9f946ae7f721240e8fcef354bff849ad501a29c8b2568176f", + "moduleVersion": "0.1.1-experimental", + "imageSha256": "a9d5e3b8fcd11c8bbec777866699c1a389b6034025feadcdb35d619a31962996", "setup": "Headless ot_emu; MKII panel; empty disposable card (fresh project); stopped transport; actual 128×64 LCD pixels at integer scale 6." } }, @@ -7202,8 +7201,8 @@ "page": "MIXER", "shows": "controls", "firmware": "1.40C", - "moduleVersion": "0.1.0-experimental", - "imageSha256": "4bba473634b4a9c9f946ae7f721240e8fcef354bff849ad501a29c8b2568176f", + "moduleVersion": "0.1.1-experimental", + "imageSha256": "a9d5e3b8fcd11c8bbec777866699c1a389b6034025feadcdb35d619a31962996", "setup": "Headless ot_emu; MKII panel; empty disposable card (fresh project); stopped transport; actual 128×64 LCD pixels at integer scale 6." } } From 0cf1845de468e7609b68b67ae134c0ae913ee955 Mon Sep 17 00:00:00 2001 From: Nathaniel Pawelczyk Date: Fri, 16 Oct 2026 09:22:24 -0500 Subject: [PATCH 10/20] Output Matrix 0.1.1-experimental: test pins, recipe provenance and performance record - module-source and dsp-package tests: Output Matrix's version and its 671-word core-0 package. - Tape Echo and Euclid standalone recipes: the four rebuilt shared asset rows' hashes (provenance only, as in #634 and #645). - evidence/performance.json for 0.1.1: 275 executed instructions per sample; the 32 s stress run was made on 0.1.0 and is not repeated. Co-Authored-By: Claude Opus 5.5 --- scripts/module-source.test.mjs | 2 +- .../module-adapters/standalone-recipes.json | 16 ++++++++-------- .../output-matrix/evidence/performance.json | 14 +++++++------- src/engine/dsp-package.test.ts | 2 +- 4 files changed, 17 insertions(+), 17 deletions(-) diff --git a/scripts/module-source.test.mjs b/scripts/module-source.test.mjs index 5210254a5..1ca2d60a7 100644 --- a/scripts/module-source.test.mjs +++ b/scripts/module-source.test.mjs @@ -21,7 +21,7 @@ describe('release package scope and reviewed source inventory', () => { const versions = await compiledModuleVersions(root, catalog), paths = await moduleSourcePaths(root) expect(Object.keys(versions)).toEqual(['spectrum', 'modulation', 'character', 'miniverb', 'tapeecho', 'euclid', 'repitch', 'tapehead', 'airwindows-chorus', 'everb', 'bbd', ...requested.filter(id => id !== 'vector'),'previewvol','cc-map','sidechain-compressor','vector','playmodes','mute-modes','recorder-loop-fix','poly8','output-matrix']) for (const id of ['playmodes', 'mute-modes', 'recorder-loop-fix', 'output-matrix']) { - expect(versions[id]).toBe(id === 'playmodes' ? '0.1.1-experimental' : id === 'mute-modes' ? '0.2.1-experimental' : '0.1.0-experimental') + expect(versions[id]).toBe(id === 'playmodes' ? '0.1.1-experimental' : id === 'mute-modes' ? '0.2.1-experimental' : id === 'output-matrix' ? '0.1.1-experimental' : '0.1.0-experimental') expect(paths).toContain('modules/' + id + '/manifest.py') } expect(versions['midi-scenes']).toBe('0.2.5-experimental') diff --git a/sdk/machines/octatrack/module-adapters/standalone-recipes.json b/sdk/machines/octatrack/module-adapters/standalone-recipes.json index b74171ffa..f2fed9602 100644 --- a/sdk/machines/octatrack/module-adapters/standalone-recipes.json +++ b/sdk/machines/octatrack/module-adapters/standalone-recipes.json @@ -205,10 +205,10 @@ "src/engine/coldfire-elf.ts": "319ca0d835d1b0c602c8f4b06990016d0ebfe246cedbfc596cea3cc7adfe3cd2", "src/engine/module-build.ts": "8f547a4be722cfe691fa21d0c4b52c724b3353ba2560c2562b56579f0abe5f3b", "src/catalog/modules.ts": "e268c6d42e4d5093ab943aed5cf2263a72e6d5e1a7ac0e72efc8a7ec6c62b89b", - "src/engine/assets/dsp-packages.json": "99a3df52ce3b1ee01a472f66b28521cfca512296adc5ccb000223e6931af1eaf", - "src/engine/assets/descriptor-recipes.json": "35174150ffa2c338bb6c425de6931b2ef406c854ad0f60e2e19c3a5d054cfbfe", - "src/engine/assets/menu-recipes.json": "3ed7ada406ae8feeedf6a7e91e060e1ad01610915d9c6d16f98933dd29730a89", - "src/engine/assets/rom-packages.json": "c2d843f555348f071a99c0b8d57fdea9986d9663ab5025efa23e18b875fb3c6f", + "src/engine/assets/dsp-packages.json": "5260e2c58a9255a99f0b3f9b13eae208cda28c34aeb50db651dd38bccb5938ca", + "src/engine/assets/descriptor-recipes.json": "342ae441c106705b134218622c642bec8094e3255a85994af3144ce43a9540df", + "src/engine/assets/menu-recipes.json": "29c21f768fe40d19f412beb282679bdb94dc17b03db04bea9c831954963073c4", + "src/engine/assets/rom-packages.json": "c5115df9cf716aa89a3be4564ba53a22d531ab80a59423eb3ebcf6821a21af41", "upstream/elekloader/link.py": "2d950474a5bd9d54e62747bfe7f9be30a37a7857df24cd9594e2198b912204f7", "upstream/elekloader/dsp.py": "9486d64eecee023670b716f6ae854996da02ee7c1a0efd5361cd963c756dbc69", "upstream/elekloader/patch.py": "13cc7457aa9a9e6d8f40cd5add4d40b69a3fcedd2cc5f3d65fd1b9841cc8bd9f", @@ -383,10 +383,10 @@ "src/engine/coldfire-elf.ts": "319ca0d835d1b0c602c8f4b06990016d0ebfe246cedbfc596cea3cc7adfe3cd2", "src/engine/module-build.ts": "8f547a4be722cfe691fa21d0c4b52c724b3353ba2560c2562b56579f0abe5f3b", "src/catalog/modules.ts": "e268c6d42e4d5093ab943aed5cf2263a72e6d5e1a7ac0e72efc8a7ec6c62b89b", - "src/engine/assets/dsp-packages.json": "99a3df52ce3b1ee01a472f66b28521cfca512296adc5ccb000223e6931af1eaf", - "src/engine/assets/descriptor-recipes.json": "35174150ffa2c338bb6c425de6931b2ef406c854ad0f60e2e19c3a5d054cfbfe", - "src/engine/assets/menu-recipes.json": "3ed7ada406ae8feeedf6a7e91e060e1ad01610915d9c6d16f98933dd29730a89", - "src/engine/assets/rom-packages.json": "c2d843f555348f071a99c0b8d57fdea9986d9663ab5025efa23e18b875fb3c6f", + "src/engine/assets/dsp-packages.json": "5260e2c58a9255a99f0b3f9b13eae208cda28c34aeb50db651dd38bccb5938ca", + "src/engine/assets/descriptor-recipes.json": "342ae441c106705b134218622c642bec8094e3255a85994af3144ce43a9540df", + "src/engine/assets/menu-recipes.json": "29c21f768fe40d19f412beb282679bdb94dc17b03db04bea9c831954963073c4", + "src/engine/assets/rom-packages.json": "c5115df9cf716aa89a3be4564ba53a22d531ab80a59423eb3ebcf6821a21af41", "upstream/elekloader/link.py": "2d950474a5bd9d54e62747bfe7f9be30a37a7857df24cd9594e2198b912204f7", "upstream/elekloader/dsp.py": "9486d64eecee023670b716f6ae854996da02ee7c1a0efd5361cd963c756dbc69", "upstream/elekloader/patch.py": "13cc7457aa9a9e6d8f40cd5add4d40b69a3fcedd2cc5f3d65fd1b9841cc8bd9f", diff --git a/sdk/octabam/modules/output-matrix/evidence/performance.json b/sdk/octabam/modules/output-matrix/evidence/performance.json index 5e03b720e..8a4d4350d 100644 --- a/sdk/octabam/modules/output-matrix/evidence/performance.json +++ b/sdk/octabam/modules/output-matrix/evidence/performance.json @@ -1,14 +1,14 @@ { "schema": 1, "module": "output-matrix", - "version": "0.1.0-experimental", + "version": "0.1.1-experimental", "kind": "dsp", "cycles": { "unit": "instructions/sample", - "static": 277, - "measured": 277, + "static": 275, + "measured": 275, "instancesPerCore": 1, - "method": "Executed instructions, not modelled cycles. ot_emu --dsp-stopwatch over the two hooked spans of core 0 (0:0x257:0x2d5 mixdown, 0:0x30a:0x35a phones crossfade) on the static build, octabam's one-THRU fixture, 200 frames, sequencer running. Dearest constructed case: every track on ALL, MASTER TRACK on, MAIN/CUE/MIX moving and the frame that rebuilds the routing lists for all eight tracks: (4,240 + 192) / 16 = 277 per sample. The same figure stands in for the static bound: tools/build/cycle_count.py prices a dispatched effect's per-sample loop and does not apply to hook code. See TESTING.md." + "method": "Executed instructions, not modelled cycles. ot_emu --dsp-stopwatch over the two hooked spans of core 0 (0:0x257:0x2d5 mixdown, 0:0x30a:0x35a phones crossfade) on the static build, octabam's one-THRU fixture, 200 frames, sequencer running. Dearest constructed case: every track on ALL, MASTER TRACK on, MAIN/CUE/MIX moving and the frame that rebuilds the routing lists for all eight tracks: (4,194 + 192) / 16 = 274.1, 275 per sample (0.1.0: (4,240 + 192) / 16 = 277). The same figure stands in for the static bound: tools/build/cycle_count.py prices a dispatched effect's per-sample loop and does not apply to hook code. See TESTING.md." }, "stock": { "comparator": "stock mixdown and phones crossfade (the core-0 code the two hooks take over)", @@ -16,7 +16,7 @@ "dearestWorst": 293.375, "baseline": "comparator: the same stopwatch spans on the stock path, (880 + 191) / 16; dearest stock effect (DJ EQ, worst tested): tools/harness/benchmark_stock_dsp.py, as recorded in modules/airwindows-chorus/evidence/stock-baseline.json", "stockSha256": "164f31224bf61181e3f50e7dec40df9afcae5b16dbf6e4c0d0cc5e986af0a84e", - "justification": "No stock effect does this: the module replaces core 0's final mix while MATRIX is selected, so the comparator is the stock code it takes over. The extra 210 instructions per sample buy a third stereo bus (PHONES), per-track routing to any combination of MAIN, CUE and PHONES or one of six mono jacks, and stock-mute-length declicks. With every track on MAIN the extra is about 20 per sample. NORMAL and STUDIO run stock code." + "justification": "No stock effect does this: the module replaces core 0's final mix while MATRIX is selected, so the comparator is the stock code it takes over. The extra 208 instructions per sample (210 in 0.1.0) buy a third stereo bus (PHONES), per-track routing to any combination of MAIN, CUE and PHONES or one of six mono jacks, and stock-mute-length declicks. With every track on MAIN the extra is about 20 per sample. NORMAL and STUDIO run stock code." }, "stress": { "harness": "ot_emu", @@ -29,7 +29,7 @@ "dirty": null, "lateReadbacks": 0, "hangs": 0, - "method": "ot_emu --dsp on the OUTMTX13 MAIN OS (eca1152f…ae16, SPRING REV given up), octabam's stress_project.py output with DJ EQ on every FX1 and LO-FI on every FX2 (the two dearest stock effects left in the image; its generator places custom effects only, so a local driver supplied that layout): eight FLEX tracks, three active LFOs per track, 15 locked slots per step (14 on the probed tracks), 120 BPM. CUE CFG = MATRIX, MASTER TRACK on, every track routed to ALL (re-poked every 1,000 frames, as each pattern loads its Part). The firmware's own pattern select queued A01 → A02 → A03 → A04 → A01; the playing-pattern byte was dumped every 5,000 frames to confirm each played. 90,000 frames (32.65 s): run ended REACHED, 0 of 69,120,000 DSP read-back words late, MAIN, CUE and PHONES ring words all carrying audio, mixdown at most 4,240 instructions per 16-sample frame." + "method": "ot_emu --dsp on the OUTMTX13 MAIN OS (eca1152f…ae16, SPRING REV given up), octabam's stress_project.py output with DJ EQ on every FX1 and LO-FI on every FX2 (the two dearest stock effects left in the image; its generator places custom effects only, so a local driver supplied that layout): eight FLEX tracks, three active LFOs per track, 15 locked slots per step (14 on the probed tracks), 120 BPM. CUE CFG = MATRIX, MASTER TRACK on, every track routed to ALL (re-poked every 1,000 frames, as each pattern loads its Part). The firmware's own pattern select queued A01 → A02 → A03 → A04 → A01; the playing-pattern byte was dumped every 5,000 frames to confirm each played. 90,000 frames (32.65 s): run ended REACHED, 0 of 69,120,000 DSP read-back words late, MAIN, CUE and PHONES ring words all carrying audio, mixdown at most 4,240 instructions per 16-sample frame. This run was made on 0.1.0 (OUTMTX13). 0.1.1's smaller core-0 code gives the same output sample for sample in 26 ot_emu scenarios and executes fewer instructions in the same worst case (4,194 instead of 4,240 per frame, TESTING.md); the stress run was not repeated on 0.1.1." }, - "scope": "ot_emu run of the whole image, not dsp_host: dsp_host -guard -dirty renders dispatched effect instances and does not run the core-0 mixdown these hooks are in, so there is no guard or dirty-state result. Plus the emulator worst case above and the author's functional MKII report (7 to 9 October 2026), including a semi-busy project with no dropouts heard. No timed hardware stress run, chip timing or bus-stall model." + "scope": "ot_emu run of the whole image, not dsp_host: dsp_host -guard -dirty renders dispatched effect instances and does not run the core-0 mixdown these hooks are in, so there is no guard or dirty-state result. Plus the emulator worst case above and the author's functional MKII report (7 to 9 October 2026), including a semi-busy project with no dropouts heard. No timed hardware stress run, chip timing or bus-stall model. For 0.1.1, the author's functional MKII report over USB (16 October 2026) on a RAM-booted beta base." } diff --git a/src/engine/dsp-package.test.ts b/src/engine/dsp-package.test.ts index 213e1b045..8d3b4af27 100644 --- a/src/engine/dsp-package.test.ts +++ b/src/engine/dsp-package.test.ts @@ -54,7 +54,7 @@ describe('independently authored DSP package relocation', () => { const fixtures = catalog.packages.filter(pkg => pkg.id === 'output-matrix') expect(fixtures.map(pkg => 'tag' in pkg && pkg.tag)).toEqual(['A']) const pkg = await readDspPackage('output-matrix', 'A') - expect(pkg).toMatchObject({ stockDsp: true, fxId: null, words: 769, tag: 'A' }) + expect(pkg).toMatchObject({ stockDsp: true, fxId: null, words: 671, tag: 'A' }) expect(pkg).not.toHaveProperty('stockKey') // The mixdown's MASTER TRACK branch and the phones crossfade, each a fingerprinted two-word stock instruction. expect(pkg.hooks?.map(hook => hook.site)).toEqual([0x257, 0x30a]) From acf4de511f54818ad5a0e210b56249ee237dfc0d Mon Sep 17 00:00:00 2001 From: Nathaniel Pawelczyk Date: Fri, 16 Oct 2026 09:59:40 -0500 Subject: [PATCH 11/20] Analog BD composition proofs: source-tree stamp after Output Matrix 0.1.1 Re-exported natively (export-composition-proofs.py --suite analog-bd --static-stock --vendored-sdk): all 212 proofs identical; only moduleSourceTreeSha256 changes. Co-Authored-By: Claude Opus 5.5 --- src/engine/assets/analog-bd-composition-proofs.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/engine/assets/analog-bd-composition-proofs.json b/src/engine/assets/analog-bd-composition-proofs.json index f9dd07539..b602114e5 100644 --- a/src/engine/assets/analog-bd-composition-proofs.json +++ b/src/engine/assets/analog-bd-composition-proofs.json @@ -8,7 +8,7 @@ "tools/build/ab_image.py": "c4573d4e0715961f7081dc1d5a0639d42ac63313ccc9e50a0737ac0685e2fc14", "tools/remix/loader.S": "32e09fd813ddc65511390faaebc3b86d963b2700f304b35cdb1ec48f90449287" }, - "moduleSourceTreeSha256": "7a7297bec8f287b3fe0f9bb7e20bed1047f4f7c9b9a98021cad73016b431d7a7", + "moduleSourceTreeSha256": "c5a2795ae68720967ebe791b45bd303e8e17bd0f72b6719ead53e387114faecf", "packing": null, "proofs": [ { From 706ecb9d1a80733c3f970681ca54e8a13cca900a Mon Sep 17 00:00:00 2001 From: Nathaniel Pawelczyk Date: Fri, 16 Oct 2026 10:00:43 -0500 Subject: [PATCH 12/20] Output Matrix 0.1.1-experimental on #682: source-built packages and recipe provenance Packages rebuilt in the isolated image on the merged tree and imported (--development); Tape Echo and Euclid standalone recipes name the four rebuilt shared asset rows' hashes. Co-Authored-By: Claude Opus 5.5 --- .../module-adapters/standalone-recipes.json | 16 ++++++------ src/engine/assets/bootstrap-package.json | 2 +- src/engine/assets/coldfire-packages.json | 2 +- src/engine/assets/descriptor-recipes.json | 2 +- src/engine/assets/dsp-packages.json | 2 +- src/engine/assets/menu-recipes.json | 2 +- src/engine/assets/module-build.json | 26 +++++++++---------- src/engine/assets/platform-writes.json | 2 +- src/engine/assets/requested-packages.json | 2 +- src/engine/assets/resident-dsp.json | 2 +- src/engine/assets/rom-packages.json | 2 +- src/engine/assets/usb-audio-packages.json | 2 +- src/engine/assets/utility-packages.json | 2 +- 13 files changed, 32 insertions(+), 32 deletions(-) diff --git a/sdk/machines/octatrack/module-adapters/standalone-recipes.json b/sdk/machines/octatrack/module-adapters/standalone-recipes.json index f2fed9602..9cd85e210 100644 --- a/sdk/machines/octatrack/module-adapters/standalone-recipes.json +++ b/sdk/machines/octatrack/module-adapters/standalone-recipes.json @@ -205,10 +205,10 @@ "src/engine/coldfire-elf.ts": "319ca0d835d1b0c602c8f4b06990016d0ebfe246cedbfc596cea3cc7adfe3cd2", "src/engine/module-build.ts": "8f547a4be722cfe691fa21d0c4b52c724b3353ba2560c2562b56579f0abe5f3b", "src/catalog/modules.ts": "e268c6d42e4d5093ab943aed5cf2263a72e6d5e1a7ac0e72efc8a7ec6c62b89b", - "src/engine/assets/dsp-packages.json": "5260e2c58a9255a99f0b3f9b13eae208cda28c34aeb50db651dd38bccb5938ca", - "src/engine/assets/descriptor-recipes.json": "342ae441c106705b134218622c642bec8094e3255a85994af3144ce43a9540df", - "src/engine/assets/menu-recipes.json": "29c21f768fe40d19f412beb282679bdb94dc17b03db04bea9c831954963073c4", - "src/engine/assets/rom-packages.json": "c5115df9cf716aa89a3be4564ba53a22d531ab80a59423eb3ebcf6821a21af41", + "src/engine/assets/dsp-packages.json": "98c3e369b1d486f570b325c8332a79e4080aa4acc7108ea45353e3107bc8b007", + "src/engine/assets/descriptor-recipes.json": "136c11c2742dd6a376dae507c519712d255d40c5d1e860be656001b05d3de63e", + "src/engine/assets/menu-recipes.json": "4181b578b74612aec07a1fd7ca864ff3188f7f31b493fbecf6997b6435f1dc2c", + "src/engine/assets/rom-packages.json": "d84c005526d735d81dc164c4bb1c9ec8f5db4edf7d3b3b3bc5b261c8a20b78f3", "upstream/elekloader/link.py": "2d950474a5bd9d54e62747bfe7f9be30a37a7857df24cd9594e2198b912204f7", "upstream/elekloader/dsp.py": "9486d64eecee023670b716f6ae854996da02ee7c1a0efd5361cd963c756dbc69", "upstream/elekloader/patch.py": "13cc7457aa9a9e6d8f40cd5add4d40b69a3fcedd2cc5f3d65fd1b9841cc8bd9f", @@ -383,10 +383,10 @@ "src/engine/coldfire-elf.ts": "319ca0d835d1b0c602c8f4b06990016d0ebfe246cedbfc596cea3cc7adfe3cd2", "src/engine/module-build.ts": "8f547a4be722cfe691fa21d0c4b52c724b3353ba2560c2562b56579f0abe5f3b", "src/catalog/modules.ts": "e268c6d42e4d5093ab943aed5cf2263a72e6d5e1a7ac0e72efc8a7ec6c62b89b", - "src/engine/assets/dsp-packages.json": "5260e2c58a9255a99f0b3f9b13eae208cda28c34aeb50db651dd38bccb5938ca", - "src/engine/assets/descriptor-recipes.json": "342ae441c106705b134218622c642bec8094e3255a85994af3144ce43a9540df", - "src/engine/assets/menu-recipes.json": "29c21f768fe40d19f412beb282679bdb94dc17b03db04bea9c831954963073c4", - "src/engine/assets/rom-packages.json": "c5115df9cf716aa89a3be4564ba53a22d531ab80a59423eb3ebcf6821a21af41", + "src/engine/assets/dsp-packages.json": "98c3e369b1d486f570b325c8332a79e4080aa4acc7108ea45353e3107bc8b007", + "src/engine/assets/descriptor-recipes.json": "136c11c2742dd6a376dae507c519712d255d40c5d1e860be656001b05d3de63e", + "src/engine/assets/menu-recipes.json": "4181b578b74612aec07a1fd7ca864ff3188f7f31b493fbecf6997b6435f1dc2c", + "src/engine/assets/rom-packages.json": "d84c005526d735d81dc164c4bb1c9ec8f5db4edf7d3b3b3bc5b261c8a20b78f3", "upstream/elekloader/link.py": "2d950474a5bd9d54e62747bfe7f9be30a37a7857df24cd9594e2198b912204f7", "upstream/elekloader/dsp.py": "9486d64eecee023670b716f6ae854996da02ee7c1a0efd5361cd963c756dbc69", "upstream/elekloader/patch.py": "13cc7457aa9a9e6d8f40cd5add4d40b69a3fcedd2cc5f3d65fd1b9841cc8bd9f", diff --git a/src/engine/assets/bootstrap-package.json b/src/engine/assets/bootstrap-package.json index ff93fd18f..066154f2c 100644 --- a/src/engine/assets/bootstrap-package.json +++ b/src/engine/assets/bootstrap-package.json @@ -16,7 +16,7 @@ "reserveBytes": 10487808, "uncachedAlias": 134217728, "stageAlignment": 4096, - "sourceCommit": "d0f2866e57d626fd66d566da6ba0c5c2d8cfd397", + "sourceCommit": "03e6a68bd2c0c589df4119db7d7e87e8b652cb76", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", diff --git a/src/engine/assets/coldfire-packages.json b/src/engine/assets/coldfire-packages.json index bf46cfc03..9a2b657ba 100644 --- a/src/engine/assets/coldfire-packages.json +++ b/src/engine/assets/coldfire-packages.json @@ -208,7 +208,7 @@ "sha256": "ccffbf72d45358bde585760b9230c668bf38ebf412ab23efc73732cf96024dca" } ], - "sourceCommit": "d0f2866e57d626fd66d566da6ba0c5c2d8cfd397", + "sourceCommit": "03e6a68bd2c0c589df4119db7d7e87e8b652cb76", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", diff --git a/src/engine/assets/descriptor-recipes.json b/src/engine/assets/descriptor-recipes.json index 034618cf5..8a460e996 100644 --- a/src/engine/assets/descriptor-recipes.json +++ b/src/engine/assets/descriptor-recipes.json @@ -3745,7 +3745,7 @@ ] } ], - "sourceCommit": "d0f2866e57d626fd66d566da6ba0c5c2d8cfd397", + "sourceCommit": "03e6a68bd2c0c589df4119db7d7e87e8b652cb76", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", diff --git a/src/engine/assets/dsp-packages.json b/src/engine/assets/dsp-packages.json index 619923325..91c8ff6ac 100644 --- a/src/engine/assets/dsp-packages.json +++ b/src/engine/assets/dsp-packages.json @@ -2,7 +2,7 @@ "schema": 1, "revision": "b8deefc88b2c3e5f3c6158e364eb741df1924e1d", "license": "/licenses/octabam.txt", - "sourceCommit": "d0f2866e57d626fd66d566da6ba0c5c2d8cfd397", + "sourceCommit": "03e6a68bd2c0c589df4119db7d7e87e8b652cb76", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", diff --git a/src/engine/assets/menu-recipes.json b/src/engine/assets/menu-recipes.json index 703ae1c6c..56d2a8ed4 100644 --- a/src/engine/assets/menu-recipes.json +++ b/src/engine/assets/menu-recipes.json @@ -1296,7 +1296,7 @@ "caveLimit": 1074625596 } ], - "sourceCommit": "d0f2866e57d626fd66d566da6ba0c5c2d8cfd397", + "sourceCommit": "03e6a68bd2c0c589df4119db7d7e87e8b652cb76", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", diff --git a/src/engine/assets/module-build.json b/src/engine/assets/module-build.json index 94b6d795c..cec8909b3 100644 --- a/src/engine/assets/module-build.json +++ b/src/engine/assets/module-build.json @@ -1,9 +1,9 @@ { "schemaVersion": 1, "kind": "source-packages", - "sourceCommit": "d0f2866e57d626fd66d566da6ba0c5c2d8cfd397", + "sourceCommit": "03e6a68bd2c0c589df4119db7d7e87e8b652cb76", "nativeRevision": "b8deefc88b2c3e5f3c6158e364eb741df1924e1d", - "sourceTreeSha256": "c5a2795ae68720967ebe791b45bd303e8e17bd0f72b6719ead53e387114faecf", + "sourceTreeSha256": "a1516ce07ec5530bfd7e8e2042fb92bb3b6c639e07efd837b0edd8a297222e1e", "compilerSha256": "270df5cf8dcef3eef2c5758e6239dd6e9ef4de291b0f1efb96e1da16531d0b30", "moduleVersions": { "spectrum": "0.1.1-experimental", @@ -35,47 +35,47 @@ "files": { "dsp-packages.json": { "bytes": 74845, - "sha256": "5260e2c58a9255a99f0b3f9b13eae208cda28c34aeb50db651dd38bccb5938ca" + "sha256": "98c3e369b1d486f570b325c8332a79e4080aa4acc7108ea45353e3107bc8b007" }, "resident-dsp.json": { "bytes": 24965, - "sha256": "5d556b039c4731ad9f53232b103faa550a959e0ab28054645b5c88873f2ffb7b" + "sha256": "e81a90b638061d0098805694e3480f53d3674c739a8cfb4d0c6809004081f23e" }, "coldfire-packages.json": { "bytes": 353200, - "sha256": "3d9675946d165fc495af6f6970285604b97baaadc57c911ccb40367dc81cb7c0" + "sha256": "db643cf60a86abf499ad0c2f5ced9d7706485d3e07e06250791312368f997b4b" }, "rom-packages.json": { "bytes": 25351, - "sha256": "c5115df9cf716aa89a3be4564ba53a22d531ab80a59423eb3ebcf6821a21af41" + "sha256": "d84c005526d735d81dc164c4bb1c9ec8f5db4edf7d3b3b3bc5b261c8a20b78f3" }, "bootstrap-package.json": { "bytes": 3699, - "sha256": "389fc5d6a7fb3be957160b3f564346076b4f17f52e7ae8794337ea631305a290" + "sha256": "c45d446e7b13a3f19addf01ab68adbd06835ff37dd108e9652cf13f93650c790" }, "menu-recipes.json": { "bytes": 34507, - "sha256": "29c21f768fe40d19f412beb282679bdb94dc17b03db04bea9c831954963073c4" + "sha256": "4181b578b74612aec07a1fd7ca864ff3188f7f31b493fbecf6997b6435f1dc2c" }, "descriptor-recipes.json": { "bytes": 71916, - "sha256": "342ae441c106705b134218622c642bec8094e3255a85994af3144ce43a9540df" + "sha256": "136c11c2742dd6a376dae507c519712d255d40c5d1e860be656001b05d3de63e" }, "platform-writes.json": { "bytes": 17641, - "sha256": "1948f039c4851dfa35b7865761bdb18338a8e991038e5bbbe823faca4983f121" + "sha256": "9a3d41cf657b8cd490be64d30085ee15089d7d0c62ca1884f5f1d6f7cc2a2428" }, "requested-packages.json": { "bytes": 1065697, - "sha256": "85aabb73c48171ef03bf993aa2f7c8afab7c80c0078f8a2d462324610beb589b" + "sha256": "f950b6e97988a09b382b5ab5a09fdeffbc5bf6baa20ed96a3dab9d0f293b32d4" }, "utility-packages.json": { "bytes": 12827, - "sha256": "e80ffaa68ae696d6cd5bf9cd0bbb92cd06cd6c53317c8fff551343d2fe891c82" + "sha256": "01993a378456c70238c03730f5993736758b652829ca42d439b6ff137bde02b0" }, "usb-audio-packages.json": { "bytes": 737469, - "sha256": "046dfb6e290a032055900b01b53929f1678ca9753e3fb82b8464c8822eedc5f2" + "sha256": "76eee552347ccc9d8224d3c799e62982f1c7a7de39e1a98facd87fb6e24d41d8" } }, "approval": null, diff --git a/src/engine/assets/platform-writes.json b/src/engine/assets/platform-writes.json index 94a4b6d5b..934342f98 100644 --- a/src/engine/assets/platform-writes.json +++ b/src/engine/assets/platform-writes.json @@ -533,7 +533,7 @@ "sha256": "5d44ce960d87d22af41166c529bfa5e84c0427b8e4afb3d6d2ca8d880f5dcfd7" } ], - "sourceCommit": "d0f2866e57d626fd66d566da6ba0c5c2d8cfd397", + "sourceCommit": "03e6a68bd2c0c589df4119db7d7e87e8b652cb76", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", diff --git a/src/engine/assets/requested-packages.json b/src/engine/assets/requested-packages.json index 99127fdca..ae40384fb 100644 --- a/src/engine/assets/requested-packages.json +++ b/src/engine/assets/requested-packages.json @@ -1,7 +1,7 @@ { "schema": 1, "revision": "b8deefc88b2c3e5f3c6158e364eb741df1924e1d", - "sourceCommit": "d0f2866e57d626fd66d566da6ba0c5c2d8cfd397", + "sourceCommit": "03e6a68bd2c0c589df4119db7d7e87e8b652cb76", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", diff --git a/src/engine/assets/resident-dsp.json b/src/engine/assets/resident-dsp.json index 04f32daf0..78e3c407a 100644 --- a/src/engine/assets/resident-dsp.json +++ b/src/engine/assets/resident-dsp.json @@ -335,7 +335,7 @@ ] } ], - "sourceCommit": "d0f2866e57d626fd66d566da6ba0c5c2d8cfd397", + "sourceCommit": "03e6a68bd2c0c589df4119db7d7e87e8b652cb76", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", diff --git a/src/engine/assets/rom-packages.json b/src/engine/assets/rom-packages.json index 58f8ba96d..1f718c83f 100644 --- a/src/engine/assets/rom-packages.json +++ b/src/engine/assets/rom-packages.json @@ -399,7 +399,7 @@ "sha256": "fdba0ffd31b7932ceb1ded3bde9a976b6f148ae96fc73a4efc4fedf6fb692341" } ], - "sourceCommit": "d0f2866e57d626fd66d566da6ba0c5c2d8cfd397", + "sourceCommit": "03e6a68bd2c0c589df4119db7d7e87e8b652cb76", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", diff --git a/src/engine/assets/usb-audio-packages.json b/src/engine/assets/usb-audio-packages.json index ed7dc316e..68249bbf2 100644 --- a/src/engine/assets/usb-audio-packages.json +++ b/src/engine/assets/usb-audio-packages.json @@ -553,7 +553,7 @@ } ] }, - "sourceCommit": "d0f2866e57d626fd66d566da6ba0c5c2d8cfd397", + "sourceCommit": "03e6a68bd2c0c589df4119db7d7e87e8b652cb76", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", diff --git a/src/engine/assets/utility-packages.json b/src/engine/assets/utility-packages.json index f9d2db915..03f2cf284 100644 --- a/src/engine/assets/utility-packages.json +++ b/src/engine/assets/utility-packages.json @@ -3,7 +3,7 @@ "kind": "authored-utility-packages", "stockRead": false, "revision": "b8deefc88b2c3e5f3c6158e364eb741df1924e1d", - "sourceCommit": "d0f2866e57d626fd66d566da6ba0c5c2d8cfd397", + "sourceCommit": "03e6a68bd2c0c589df4119db7d7e87e8b652cb76", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", From 6d4db604aa5f43b77fb5799574f6ac16ea85c917 Mon Sep 17 00:00:00 2001 From: Nathaniel Pawelczyk Date: Fri, 16 Oct 2026 10:13:50 -0500 Subject: [PATCH 13/20] Analog BD composition proofs: source-tree stamp on the merged tree Re-exported natively: all 212 proofs and builderSources identical; only moduleSourceTreeSha256 changes. Co-Authored-By: Claude Opus 5.5 --- src/engine/assets/analog-bd-composition-proofs.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/engine/assets/analog-bd-composition-proofs.json b/src/engine/assets/analog-bd-composition-proofs.json index 3e6a4a297..4c8d72a82 100644 --- a/src/engine/assets/analog-bd-composition-proofs.json +++ b/src/engine/assets/analog-bd-composition-proofs.json @@ -8,7 +8,7 @@ "tools/build/ab_image.py": "c4573d4e0715961f7081dc1d5a0639d42ac63313ccc9e50a0737ac0685e2fc14", "tools/remix/loader.S": "32e09fd813ddc65511390faaebc3b86d963b2700f304b35cdb1ec48f90449287" }, - "moduleSourceTreeSha256": "64fd1a0dfb1de9340b715c7617adbe62ef1125811f67639a378ff312c72dae6f", + "moduleSourceTreeSha256": "a1516ce07ec5530bfd7e8e2042fb92bb3b6c639e07efd837b0edd8a297222e1e", "packing": null, "proofs": [ { From d1c3574db45a13bb161215d66a1d148d24f63a31 Mon Sep 17 00:00:00 2001 From: Nathaniel Pawelczyk Date: Fri, 16 Oct 2026 10:14:41 -0500 Subject: [PATCH 14/20] Output Matrix 0.1.1-experimental: native comparison record module:verify output-matrix: 52 native module-owned images match, 74 matching refusals, 0 mismatches of 126 selections (with #682's builder fix; without it the two 11-module selections refused for different reasons). Co-Authored-By: Claude Opus 5.5 --- sdk/native-comparisons/output-matrix.json | 1663 +++++++++++---------- src/engine/assets/chooser-metadata.json | 14 +- 2 files changed, 842 insertions(+), 835 deletions(-) diff --git a/sdk/native-comparisons/output-matrix.json b/sdk/native-comparisons/output-matrix.json index c577a0e60..0982c1aa3 100644 --- a/sdk/native-comparisons/output-matrix.json +++ b/sdk/native-comparisons/output-matrix.json @@ -1,8 +1,8 @@ { "schemaVersion": 1, "moduleId": "output-matrix", - "moduleVersion": "0.1.0-experimental", - "moduleSourceSha256": "b5a6b32d98de4a305f901a7e7d3ea89ed9dc39a5bfbebcbcfe4fd3559613e337", + "moduleVersion": "0.1.1-experimental", + "moduleSourceSha256": "96b9783ca53ef04a828673220e884409338821683ddaf004a5bb5a6c1370ebdc", "revision": "b8deefc88b2c3e5f3c6158e364eb741df1924e1d", "originalOsSha256": "164f31224bf61181e3f50e7dec40df9afcae5b16dbf6e4c0d0cc5e986af0a84e", "pool": [ @@ -13,6 +13,7 @@ "tapehead", "airwindows-chorus", "everb", + "bbd", "analog-bassdrum", "usb-audio-out-tracks-main-cue", "quantizer", @@ -24,15 +25,14 @@ "playmodes", "mute-modes", "recorder-loop-fix", - "poly8", "output-matrix" ], "summary": { "selections": 126, - "built": 44, + "built": 52, "identicalOutright": 0, - "identicalOutsidePlatformWrites": 44, - "refused": 82, + "identicalOutsidePlatformWrites": 52, + "refused": 74, "mismatches": 0 }, "selections": [ @@ -71,9 +71,9 @@ ] }, "native": { - "bytes": 1114033, - "osSha256": "a12ca396b5b2a4e4da79395a91382a55b001dfb0e24a7d135793df2a66030b13", - "maskedOsSha256": "f6ab5cd47082b810b5e25c182b93224913608ebb860ec68ec619d914328a809d" + "bytes": 1114061, + "osSha256": "9388864833ab45e86bd9f7d719298a1454691eb20e15c47736a7a5e3d2a671e1", + "maskedOsSha256": "073458a8506d6cf159c89056f3f2893cb076e49e4652d18d6c3ab27195bc1cc6" }, "result": "masked" }, @@ -98,9 +98,9 @@ "fx2": [] }, "native": { - "bytes": 1114033, - "osSha256": "293ed4e5c10c8133bb60dfc6b118a4b2dbd745c6446291075927148ace373af2", - "maskedOsSha256": "b94606636467cd5a50e6dbc00d46b77669c2fc6a9e3d208a570cae43d8086107" + "bytes": 1114061, + "osSha256": "6cddc041ebc316784c95803504884a88d1663fec0597bb23e54234ddb3ba9ee8", + "maskedOsSha256": "fc0d41a8a32302ff15f3c657c46ff4bbc43ebb6ac3a0be6a0c108687e34cea19" }, "result": "masked" }, @@ -140,9 +140,9 @@ ] }, "native": { - "bytes": 1114033, - "osSha256": "daf15ad8f364d271b7306449caa281d636f17dc26faaeb1d0e98a49cefca4569", - "maskedOsSha256": "678c15881a37c075436aaee6e0b964dc5cf9409a89655694f23c99bf66c4668f" + "bytes": 1114061, + "osSha256": "37a322dc54e5e0c52bbbcdf3ec52e1e2676a5717695cc9132370ab88d75ea8a3", + "maskedOsSha256": "eae050c165d2a7be98af0155329df382d3c63485d9ad257c378ae335d127c911" }, "result": "masked" }, @@ -170,9 +170,9 @@ ] }, "native": { - "bytes": 1114033, - "osSha256": "fcce92613573d3eff5aefafff550c9e2daf15fa0077a7465ee008a39e9c0abd4", - "maskedOsSha256": "f764895be385166fcd2529d956748ebf6f394ab675361ec55d3f6a947f48e539" + "bytes": 1114061, + "osSha256": "b3658b520449f8a78d564cdfc6ea2e4dfb8f3321e4ef0f85f8ad4776a5f7b80b", + "maskedOsSha256": "cce7fe0499b4d9a0f8773ccc24c50c23db67da8ad15416732965e9d64cb48596" }, "result": "masked" }, @@ -213,9 +213,9 @@ ] }, "native": { - "bytes": 1216260, - "osSha256": "f5b6fc10be64a55c941ac9827d3d2bf2082174ba4007e653ff05a8cf7a176f11", - "maskedOsSha256": "9fb9d392f08cf2040f4756c7beb099b16ea4899d204bace0d92f55a5a0e0ca55" + "bytes": 1216283, + "osSha256": "be16421ab287580d7922f7198e68170b22f38c03a19c0dbbb0ffd065ea8abe8a", + "maskedOsSha256": "14805b2bac26b371236d47c95eb32ab6e052ed53bf088e0bb1b805455a387b27" }, "result": "masked" }, @@ -243,9 +243,9 @@ ] }, "native": { - "bytes": 1216260, - "osSha256": "3e73dd032c9d360c8e8b4b9d2b0f971258be1524a27f85a67adf807fc0a16546", - "maskedOsSha256": "2e974eedf2a67289dfa928c688d7cce2caf247c3d176045995bf3a75f42a215f" + "bytes": 1216283, + "osSha256": "5a9ec874730b9ba3a133afa90834f020f392db13f62efcc43549a1c81d5f772a", + "maskedOsSha256": "af3c6b12c698f6d8b72acde1afa1c8ee2b7483195ad18b8d5b94a094ecd1047b" }, "result": "masked" }, @@ -286,9 +286,9 @@ ] }, "native": { - "bytes": 1116188, - "osSha256": "012cf4be571c4a79bacdb418764c22da266d60eae8129902e42e0e2b3f3f0245", - "maskedOsSha256": "1ec6b367fba7e099e85b1741750943dff81ba3730f689594648a222e813336d9" + "bytes": 1116217, + "osSha256": "423dfcddcd2d0bb60d58469afac2e4d45c8ea354a94f6eeaa741372e2b67048d", + "maskedOsSha256": "dbda285d6f5c64120a73f2804b8908868e3f4cc348bdae5e42bd1d74475854c0" }, "result": "masked" }, @@ -317,9 +317,9 @@ ] }, "native": { - "bytes": 1116188, - "osSha256": "0e47df66798efff1ba0bb189493984e947c09293cf1bab54235cec4fc0521089", - "maskedOsSha256": "daa096b9fcf001bdf244f4e640453da60d1b5804a65c0b808820a162d0dc2bbb" + "bytes": 1116217, + "osSha256": "00af23ef9b92a7e48024f2021f582e00f0d8260201420fc13f162af7aeebdd21", + "maskedOsSha256": "eda5e7a5e3d96bcbf5c6e0c0f103b6f5aae082b43e696b83ed83ba4222dfb047" }, "result": "masked" }, @@ -359,9 +359,9 @@ ] }, "native": { - "bytes": 1114033, - "osSha256": "d1514ef3f13190b9e6466aa24ae83d0b1935ebfbe9840f1e393bc639e8805c78", - "maskedOsSha256": "6437c285125024a86643de3e92691660c10edea6b6292b7392e2591c90f44b8e" + "bytes": 1114061, + "osSha256": "c1db94930a7fcec379bb5b3c1ca74a2e125a99f6664f94a6190a67802b0a26fd", + "maskedOsSha256": "e9e04caa7e9ec2bf5fe361d8198063631f141c61ee7eed6835c26acf6a6db59c" }, "result": "masked" }, @@ -387,9 +387,9 @@ "fx2": [] }, "native": { - "bytes": 1114033, - "osSha256": "6d6e87089aaf502ec2bae82c161462dc63e9947d4c9ef3a63f04d671ab6cfe86", - "maskedOsSha256": "8e28ba1e5b974d5950689278ae9879856eebc0ac0e90e5f324d084f977e8bbe8" + "bytes": 1114061, + "osSha256": "d305a1b58391a61320bd1cfeec624cc6e39b48059b18545490a085443fd00091", + "maskedOsSha256": "baa2b96706dd99e67f3f551d3015ac5a6e4ee1f77fc8c8bae3eb4f5b453d7f44" }, "result": "masked" }, @@ -430,9 +430,9 @@ ] }, "native": { - "bytes": 1114033, - "osSha256": "e74c55809befde7b837e473fe74f6ffd82d0f03258ad4bf352d0bcd7d093b50d", - "maskedOsSha256": "84b276ef1e6043a3bb683913cbb4654122c5e4d843906769e30a02fd7853845d" + "bytes": 1114061, + "osSha256": "9de23b2d63eddf7e1131ade6e3a558f19b832498e27a8a117e4b14a6427dfb5a", + "maskedOsSha256": "3157317d69bc08da43dc8d950b1b7fa36b3ddae3cade11bbb15461fa09006860" }, "result": "masked" }, @@ -461,9 +461,9 @@ ] }, "native": { - "bytes": 1114033, - "osSha256": "53b5efbd8430c3cf0be519e7981d467076d659704f15afe4c2a0cc4c120439c4", - "maskedOsSha256": "b8adf952812c6d0372f547f45312f0dfb77b6a3578900127fa3be5532a152b22" + "bytes": 1114061, + "osSha256": "e9017f7ce766520e5cd1ec9a092e99e71e77f014c43a3a1df9c4f7954877269b", + "maskedOsSha256": "c87c47e2fe39cd1a4888fbdf4cf84179910e1bf4427df6b0827240d6dfd26a67" }, "result": "masked" }, @@ -503,9 +503,9 @@ ] }, "native": { - "bytes": 1114033, - "osSha256": "9dfe23cf7f85eb5b77f37cfae8ff6c344689048a607a592b783c0a5734d1ffda", - "maskedOsSha256": "b3421ec7042c8c7ee66a92eeb6037b00550b5cb79078a47b7b689ff1d8d1696c" + "bytes": 1114061, + "osSha256": "32a10a2d1ed3a28e74c12fe2d62265a49a53660a346e8419181089e3c3207c66", + "maskedOsSha256": "e644eb56ac33bb2aa4fbc34f364717ee0413394825751950ebdaff80d54717f2" }, "result": "masked" }, @@ -533,9 +533,9 @@ ] }, "native": { - "bytes": 1114033, - "osSha256": "603f0e6bb1cce89e3138143f0d4f505bd4ee782a86ddaccea37ffa866e46659d", - "maskedOsSha256": "4c00f9b44f90fbfa7e13174f5ade8fb1604775e2efc93534004719455d42e30b" + "bytes": 1114061, + "osSha256": "7e51f8defcbe1c9c6e896f5d5e804e4a846d537592361a180e0274270580dbd1", + "maskedOsSha256": "861367dc66baf029f3d152c818a6178afe92502f55931a5cb020d5046f9af022" }, "result": "masked" }, @@ -574,9 +574,9 @@ ] }, "native": { - "bytes": 1114033, - "osSha256": "0e0bb6638fb5cdfc8fb5bec3f94f5e22266cf39275dfa1b897807bc7776776e7", - "maskedOsSha256": "1f9e8955811c91719c6c601b85e612545cdce0f85c3803c19b57c0f05612aca1" + "bytes": 1114061, + "osSha256": "4a9fbe197afcd12be9d29e89682d6586db221a9ef6ca5157476e907fba1d0603", + "maskedOsSha256": "72be73a655496a9ab45805393c029893d1fe8fef1e2b9ec623423871ce5201b8" }, "result": "masked" }, @@ -604,15 +604,15 @@ ] }, "native": { - "bytes": 1114033, - "osSha256": "a86671ffbcc466abd63f17ffc54228340ba66c04a9b9fbfb2ece2462913b2c36", - "maskedOsSha256": "c137bd9aeb2ce12200117ea52fa00a5778f766714af46c5a695996f389b61293" + "bytes": 1114061, + "osSha256": "225f26ebea61ec905e4beef72bd5f5115efb2051daa270affd0a5137c0330927", + "maskedOsSha256": "26e5efc170b0a0c01582edfb988d36e6aea707b13074b4c548646fb39a876cee" }, "result": "masked" }, { "moduleIds": [ - "analog-bassdrum", + "bbd", "output-matrix" ], "keepStockFx2": true, @@ -640,17 +640,21 @@ "COMB FILTER", "COMPRESSOR", "LO-FI", - "DELAY" + "DELAY", + "PLATE REV", + "BBD" ] }, "native": { - "refused": "ANALOG BD cannot share DSP memory with OUTPUT MATRIX" + "bytes": 1114090, + "osSha256": "c9699f7f40d59d70a73a5050f71aa2317fee7132c58e5e55c88fef966efaa874", + "maskedOsSha256": "3cd34c64873a34f6840c755e9ccf0cf8540bee4d168538d641e790d6e3f0ef26" }, - "result": "refused" + "result": "masked" }, { "moduleIds": [ - "analog-bassdrum", + "bbd", "output-matrix" ], "keepStockFx2": false, @@ -667,16 +671,20 @@ "COMPRESSOR", "LO-FI" ], - "fx2": [] + "fx2": [ + "BBD" + ] }, "native": { - "refused": "ANALOG BD cannot share DSP memory with OUTPUT MATRIX" + "bytes": 1114090, + "osSha256": "99eab88c8073233bafba636c0bc2ae49d5d4f2c883eac49568d2e2afdd34407e", + "maskedOsSha256": "cad58abb060a103684ac33800abe4eeb4b5d80bf4f563e670da0e71d080f629d" }, - "result": "refused" + "result": "masked" }, { "moduleIds": [ - "usb-audio-out-tracks-main-cue", + "analog-bassdrum", "output-matrix" ], "keepStockFx2": true, @@ -704,21 +712,17 @@ "COMB FILTER", "COMPRESSOR", "LO-FI", - "DELAY", - "PLATE REV", - "DARK REV" + "DELAY" ] }, "native": { - "bytes": 1116706, - "osSha256": "1739970d42c0cd8ba0899b2cd28217e43e7f249573034fa7e570645a00de34ea", - "maskedOsSha256": "9a3b96d5c966f10ed463ae6afea6e81a351cf0eb239cef091d51f36f116e6c41" + "refused": "ANALOG BD cannot share DSP memory with OUTPUT MATRIX" }, - "result": "masked" + "result": "refused" }, { "moduleIds": [ - "usb-audio-out-tracks-main-cue", + "analog-bassdrum", "output-matrix" ], "keepStockFx2": false, @@ -738,15 +742,13 @@ "fx2": [] }, "native": { - "bytes": 1116706, - "osSha256": "fe8704f2812b8f600b740fb8296faa8aafcb394b7946477aa982114b5e0ff5cf", - "maskedOsSha256": "7d0d8c900a05bb6e8a16b35c22a85c146f5d1a200bc398fb059682980b083cb3" + "refused": "ANALOG BD cannot share DSP memory with OUTPUT MATRIX" }, - "result": "masked" + "result": "refused" }, { "moduleIds": [ - "quantizer", + "usb-audio-out-tracks-main-cue", "output-matrix" ], "keepStockFx2": true, @@ -780,15 +782,15 @@ ] }, "native": { - "bytes": 1116206, - "osSha256": "0642fbf1741ba0f870b470d534e3aceae263348907c19dce5912bac11966fe89", - "maskedOsSha256": "78a6108ac96c58b1782043823ff0b173b613ca8321745703cd130617a3c4030d" + "bytes": 1116733, + "osSha256": "63b2e32e3f8ad55aab00018fc32e36fc8df6ee716583336b2ee6e611502af13f", + "maskedOsSha256": "7bfb3ea4fd1f6385480b5512d9f655d64f9c6546a4316fd83e92f413050ab72d" }, "result": "masked" }, { "moduleIds": [ - "quantizer", + "usb-audio-out-tracks-main-cue", "output-matrix" ], "keepStockFx2": false, @@ -808,15 +810,15 @@ "fx2": [] }, "native": { - "bytes": 1116206, - "osSha256": "86942a2fe87337729faba4a30d16a268f63cff0c24ad2e9ef3bc435602040020", - "maskedOsSha256": "245276cda69538e1e091b222d05b1edc4a589ddb6470a3bf5727e86413568b62" + "bytes": 1116733, + "osSha256": "07f90f187bd8e1624d73284032f4ab0850bf40623fd4ff6481adfa287cd8eeab", + "maskedOsSha256": "30d835a4796252dd581b9f274f675bbf8f4277e348016d954fd74de97c4ee1ef" }, "result": "masked" }, { "moduleIds": [ - "synth", + "quantizer", "output-matrix" ], "keepStockFx2": true, @@ -850,15 +852,15 @@ ] }, "native": { - "bytes": 1126357, - "osSha256": "78b355ef129ca610cb23cc4e7ccf35872ff5a72e5a873b462768eb504d4e1a27", - "maskedOsSha256": "82ab9db3c8c59a870130a98c6608609887f293eaa8d6416b69e387a177d6a76f" + "bytes": 1116252, + "osSha256": "eca225f01d93abbc677d884413e1cb45d91e0dd6fb05ade6b80023cd487766b9", + "maskedOsSha256": "83e3fbf951452c6f6c735e4389a9827b572c4f8ce52ac027996453a5cbc5177c" }, "result": "masked" }, { "moduleIds": [ - "synth", + "quantizer", "output-matrix" ], "keepStockFx2": false, @@ -878,15 +880,15 @@ "fx2": [] }, "native": { - "bytes": 1126357, - "osSha256": "c7c495f8e4a22b5a451020f5c9b2a6ad6b5fa59a846f6e765e82493ced3d2551", - "maskedOsSha256": "a32764f235397d72e36b9dbce14377d2746969a094acba7ab989d19e6149077e" + "bytes": 1116252, + "osSha256": "9e40058ec624832c0b468b681ed52f4db4d3bb5ae0b9c533af4038846f0c1edf", + "maskedOsSha256": "73e11a7a9a8f033b3b46a9cb9fe1aadf2c9a8e0ac77867f63cf56920cbafe1cd" }, "result": "masked" }, { "moduleIds": [ - "previewvol", + "synth", "output-matrix" ], "keepStockFx2": true, @@ -920,15 +922,15 @@ ] }, "native": { - "bytes": 1114033, - "osSha256": "27f01e34a3b7a0c7c771c4b4777d6db92c2e0a0c82ec804cf745f587ce9d96d4", - "maskedOsSha256": "197b9a2f58252f636d7bb2c97259c1067b72dd86f25c3672fdb83bdd019dc5cc" + "bytes": 1126385, + "osSha256": "af195ae8621c5a83cc8b869c76cf7eb95a2f0c01485545ff1cc178ac1242f761", + "maskedOsSha256": "a3fb0ce2a634adf1dea31f30caae7fe00f1dcc4621f6b483ed6e40c9d0f21253" }, "result": "masked" }, { "moduleIds": [ - "previewvol", + "synth", "output-matrix" ], "keepStockFx2": false, @@ -948,15 +950,15 @@ "fx2": [] }, "native": { - "bytes": 1114033, - "osSha256": "736b67027d656e6c2c98f920475384df991eb8fbbc8b00460b7499426c30c1bf", - "maskedOsSha256": "4e055d268c3445e7573e20659f5ec23afcfa55cad25de6c92b0b6be4faa1e675" + "bytes": 1126385, + "osSha256": "de909607600a10b9533c3e8fa31168c7c556da2cafa14fa3f360208acccdebea", + "maskedOsSha256": "1266f11d592375a9cecabc283e006060a7dac4879bd27b66a629aa13161c35ee" }, "result": "masked" }, { "moduleIds": [ - "cc-map", + "previewvol", "output-matrix" ], "keepStockFx2": true, @@ -990,15 +992,15 @@ ] }, "native": { - "bytes": 1114033, - "osSha256": "2c9a1a84410d9efa55bc5e77f32b6754fa2ac0e8a4d857c2f1a82ea10fd3f9d7", - "maskedOsSha256": "b7b795c2db7cd8a28399cde393e75e1064c6ddfcde9fcc1fd240f3b5a9ac6d8b" + "bytes": 1114061, + "osSha256": "191b1bc853648de0aca7eb26a2a2602ead884fcb4c7a131fb910e6dfa37924e1", + "maskedOsSha256": "a813606485e8796da25d66eba8c915e4e6ad5c1560b256f007919551d77d40db" }, "result": "masked" }, { "moduleIds": [ - "cc-map", + "previewvol", "output-matrix" ], "keepStockFx2": false, @@ -1018,15 +1020,15 @@ "fx2": [] }, "native": { - "bytes": 1114033, - "osSha256": "36f783f67c1ee32da7826940757d46f605cc1d508c55900cfda4760c8d19097b", - "maskedOsSha256": "12fe18d6e8ad844952fe5f2b1ce4aea9efca0b9429ccbad43846576bb7451910" + "bytes": 1114061, + "osSha256": "3c291a9defa152c41abb82cc9d3cc3b9273a743f80ac1f0e738d866c5f4fe2ca", + "maskedOsSha256": "1a074f750b480beb009d455e49079dcad88d5ca543dbcc7c16c7d412f3a576e6" }, "result": "masked" }, { "moduleIds": [ - "sidechain-compressor", + "cc-map", "output-matrix" ], "keepStockFx2": true, @@ -1040,7 +1042,7 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI" ], "fx2": [ @@ -1052,22 +1054,23 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", "DELAY", + "PLATE REV", "DARK REV" ] }, "native": { - "bytes": 1114033, - "osSha256": "e86ca5c32a9ef1036ebf0ed896e84a5df9ef760bb6203a966ea33e2cf923e760", - "maskedOsSha256": "20db38d1122b5a454bb98bf55199aae921fb145d59559946bb5daa8598d5e23d" + "bytes": 1114061, + "osSha256": "1efd1dbec0954129b851e6a7c2c4bef5d410805d6013d18573afd6c3b1b28c7d", + "maskedOsSha256": "da31299de65043baf669b0bedab7caf99b7f12371a1065e57d8fcb43c002dde3" }, "result": "masked" }, { "moduleIds": [ - "sidechain-compressor", + "cc-map", "output-matrix" ], "keepStockFx2": false, @@ -1081,23 +1084,21 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI" ], - "fx2": [ - "SIDECHAIN_COMPRESSOR" - ] + "fx2": [] }, "native": { - "bytes": 1114033, - "osSha256": "aa407cd072e212f6586398ce654038c0aed6b3721de6962f831e12500e2a3a57", - "maskedOsSha256": "34440c53ac7dec9ff9c7029cf013518d21738d9437c53010d66d5ba42cb827c6" + "bytes": 1114061, + "osSha256": "9bf6b2306eca876404cdea29dd04529237a3d8cfc4e05a325fcac6f5e217b9c1", + "maskedOsSha256": "ce23a64e43e941e200af05a2dabbdcd1ec9aa31c77d6139f49620f2659831970" }, "result": "masked" }, { "moduleIds": [ - "vector", + "sidechain-compressor", "output-matrix" ], "keepStockFx2": true, @@ -1111,7 +1112,7 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI" ], "fx2": [ @@ -1123,23 +1124,22 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", "DARK REV" ] }, "native": { - "bytes": 1122217, - "osSha256": "3b519b3decbd331229770313b7019e39f21dffaf520d3df287a4e69a6b4972d1", - "maskedOsSha256": "28c058572e5228b1aeb0b726a41d21d1cb75282c97b206be6e8526ba7e69fc4c" + "bytes": 1114061, + "osSha256": "6d894b8884e58ce9ae0f1c0c18eab863185c53cf62aeb1362885012bd9edc674", + "maskedOsSha256": "9498486d9b0f00a1574c59bb3eee23fdaa8595a4c6d929a92049b00b531305ac" }, "result": "masked" }, { "moduleIds": [ - "vector", + "sidechain-compressor", "output-matrix" ], "keepStockFx2": false, @@ -1153,21 +1153,23 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI" ], - "fx2": [] + "fx2": [ + "SIDECHAIN_COMPRESSOR" + ] }, "native": { - "bytes": 1122217, - "osSha256": "49e5c57cbfb0442966ebfe543fc65e34a8dea4c78880e8c876134d5de1494bf0", - "maskedOsSha256": "811b7fe741af8fdc22a7a2dfd4418b8bf76240c2f6653bde224d5ce8446ec7e3" + "bytes": 1114061, + "osSha256": "5a510a5b9d6a5d5bfecf195875b8b5442351ac107260f08e16505dbe486f9d49", + "maskedOsSha256": "111724c71a4dc0154d06381cde4b3e2002c1e1b5f22c2b5a37df835a10fc691f" }, "result": "masked" }, { "moduleIds": [ - "playmodes", + "vector", "output-matrix" ], "keepStockFx2": true, @@ -1201,15 +1203,15 @@ ] }, "native": { - "bytes": 1119207, - "osSha256": "6d5c0c6ddb4f7ccf6729b5676660fd28f7f2c0c98aa39bbdd3865a50a67359d2", - "maskedOsSha256": "7589e94c990e6b47695044e19718752369c04537f445c0b18b7f236cb9e8f3b3" + "bytes": 1122260, + "osSha256": "1fad2619ac571d7684cd10cf52ddd9375ed09aaf867248058c6024b19fdd62a4", + "maskedOsSha256": "315e7931ec56d8d1afc9fcd7a249c3fcf5dd533eb1ab19caf5f8eb486af5d67f" }, "result": "masked" }, { "moduleIds": [ - "playmodes", + "vector", "output-matrix" ], "keepStockFx2": false, @@ -1229,15 +1231,15 @@ "fx2": [] }, "native": { - "bytes": 1119207, - "osSha256": "4ac53ccea9ef8bcad6f6adefb726136f7eabd1861ae991655f9e41a0fafc45fe", - "maskedOsSha256": "cb4e8617df8195beb9b42634eefd9fd4e25fce959a70b165128f7adbc7501540" + "bytes": 1122260, + "osSha256": "cb7b7e75353663b80b7b62073082ec3380e636c896e84b6c8130ba37072e6107", + "maskedOsSha256": "43eb7ea3c434bf1fd8f0d4efb173c02aa073d1c96d1b09655a21ded919bf419d" }, "result": "masked" }, { "moduleIds": [ - "mute-modes", + "playmodes", "output-matrix" ], "keepStockFx2": true, @@ -1271,15 +1273,15 @@ ] }, "native": { - "bytes": 1114033, - "osSha256": "775fa4bbb2f376484ab5e56e1b298f3d3129411ea278958a11e1b40d9e48d3d6", - "maskedOsSha256": "c5e92732f5d79e13126e7c69e25e03501c12a7915789fd1ba085239131217f42" + "bytes": 1119235, + "osSha256": "9c281ed151631c4dd4e2356b524d5330080dbb54f6adfd4c7484f3b05bdc4fb1", + "maskedOsSha256": "267964f064702f1a55a197ee286a55783c9172e5a9dd13a23af740b19a54acff" }, "result": "masked" }, { "moduleIds": [ - "mute-modes", + "playmodes", "output-matrix" ], "keepStockFx2": false, @@ -1299,15 +1301,15 @@ "fx2": [] }, "native": { - "bytes": 1114033, - "osSha256": "33a5b7ee92de1a33a5f6339651176f7083237a187801e1458ffe667ea4649a10", - "maskedOsSha256": "dace686458a8811b9ccde63540445267bd60d9380398a981b8a9882021be7b67" + "bytes": 1119235, + "osSha256": "7a983253aa5928e0eb3458afc5c97dcde77019d2511f1cabcaf19cfcb5e5cb2a", + "maskedOsSha256": "1ce2a9ec4d960a8feab7d200a664de79cb56477966fc65d066703c947a40f5e9" }, "result": "masked" }, { "moduleIds": [ - "recorder-loop-fix", + "mute-modes", "output-matrix" ], "keepStockFx2": true, @@ -1341,16 +1343,15 @@ ] }, "native": { - "bytes": 1114033, - "osSha256": "c4ba71031823e51532c06a9b2b4b999031679332617dd2c044df8431062d3366", - "maskedOsSha256": "66af75c97695332c247ae43d9bd6cc93bdd038068617c23d7fc2d023978138f0", - "platformArena": true + "bytes": 1114061, + "osSha256": "b0a6c5e0eb3512db9769b728c4bb7505b5c08b3b885c64ce347e6de34978b68f", + "maskedOsSha256": "f17f21131eac5a64d73d6df5bf4d9904db70a2e7ac67784ef9d82df1dd79fba0" }, "result": "masked" }, { "moduleIds": [ - "recorder-loop-fix", + "mute-modes", "output-matrix" ], "keepStockFx2": false, @@ -1370,16 +1371,15 @@ "fx2": [] }, "native": { - "bytes": 1114033, - "osSha256": "1456fd02534385bb4d5cf77ac1d323c32d3167a28d76be5cc82b7b866f916365", - "maskedOsSha256": "284438ff65812818e492f2b49eacf1ae0a685f04d897e409cdd0da13d05f2992", - "platformArena": true + "bytes": 1114061, + "osSha256": "b3e917219c79a5093f0a175eeac9d86b8d1adcc1eb015cfa867432428b5101e4", + "maskedOsSha256": "5829608263256e6d405bb7b86759d0454c3252103c19371458e97a7508c274ca" }, "result": "masked" }, { "moduleIds": [ - "poly8", + "recorder-loop-fix", "output-matrix" ], "keepStockFx2": true, @@ -1413,15 +1413,16 @@ ] }, "native": { - "bytes": 1126884, - "osSha256": "7f7d76f5d5d95859aa6db21b366f27bdb4e1890c016864500173c53f7732c446", - "maskedOsSha256": "2469f95bcf44224eae91396bd6f7836b70bda24d0410cd9f4c095529b982a850" + "bytes": 1114061, + "osSha256": "384ae84effd01e91b3469ce52457cd0969e3bf2344da1124f600e1ac0f04375f", + "maskedOsSha256": "79418dcfdf86c9830dc367778b9a8cd0a3f8c2d4b372e16b535b920111c30ef3", + "platformArena": true }, "result": "masked" }, { "moduleIds": [ - "poly8", + "recorder-loop-fix", "output-matrix" ], "keepStockFx2": false, @@ -1441,9 +1442,10 @@ "fx2": [] }, "native": { - "bytes": 1126884, - "osSha256": "fcc6c6bf7ca651ff232ffe8068fe7b0cfad214027b1b132f304cf2a34f5b5c40", - "maskedOsSha256": "9e2d224c1e3e8ccb3dcb431bbb3180190d90b6ed862ac33e47372fc2e63671a2" + "bytes": 1114061, + "osSha256": "90001a62b6c347c569a272e11a23af5ec74fd9c34d6da71affe06323b957ac53", + "maskedOsSha256": "4e9f9219c710c8bc4c0043fe96aeb17af523985ac686ea2a918d2a06ff607110", + "platformArena": true }, "result": "masked" }, @@ -1456,6 +1458,7 @@ "tapehead", "airwindows-chorus", "everb", + "bbd", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -1466,7 +1469,6 @@ "playmodes", "mute-modes", "recorder-loop-fix", - "poly8", "output-matrix" ], "keepStockFx2": true, @@ -1502,11 +1504,12 @@ "EUCLID", "TAPEHEAD", "AIR CHORUS", - "EVERB" + "EVERB", + "BBD" ] }, "native": { - "refused": "CC->FX2/FX1 page-2 cave + dispatch repoint: 724 B fits neither the clone window (from 0x400d7b00) nor the overflow run" + "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400449be -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n poke site: synth (poke machine chooser has six rows, FM SYNTH the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP selector has six rows) and vector (poke VECTOR is machine chooser row six) both claim 0x400585fa -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP name lookup admits FM) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: synth (poke machine chooser draws FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: synth (poke machine chooser highlights FM) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: synth (poke machine chooser persists FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" }, "result": "refused" }, @@ -1519,6 +1522,7 @@ "tapehead", "airwindows-chorus", "everb", + "bbd", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -1529,7 +1533,6 @@ "playmodes", "mute-modes", "recorder-loop-fix", - "poly8", "output-matrix" ], "keepStockFx2": false, @@ -1555,11 +1558,12 @@ "TAPEHEAD", "AIR CHORUS", "EVERB", + "BBD", "SIDECHAIN_COMPRESSOR" ] }, "native": { - "refused": "CC->FX2/FX1 page-2 cave + dispatch repoint: 724 B fits neither the clone window (from 0x400d7b00) nor the overflow run" + "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400449be -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n poke site: synth (poke machine chooser has six rows, FM SYNTH the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP selector has six rows) and vector (poke VECTOR is machine chooser row six) both claim 0x400585fa -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP name lookup admits FM) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: synth (poke machine chooser draws FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: synth (poke machine chooser highlights FM) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: synth (poke machine chooser persists FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" }, "result": "refused" }, @@ -1571,6 +1575,7 @@ "tapehead", "airwindows-chorus", "everb", + "bbd", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -1581,7 +1586,6 @@ "playmodes", "mute-modes", "recorder-loop-fix", - "poly8", "output-matrix" ], "keepStockFx2": true, @@ -1616,11 +1620,12 @@ "EUCLID", "TAPEHEAD", "AIR CHORUS", - "EVERB" + "EVERB", + "BBD" ] }, "native": { - "refused": "CC->FX2/FX1 page-2 cave + dispatch repoint: 724 B fits neither the clone window (from 0x400d7980) nor the overflow run" + "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400449be -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n poke site: synth (poke machine chooser has six rows, FM SYNTH the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP selector has six rows) and vector (poke VECTOR is machine chooser row six) both claim 0x400585fa -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP name lookup admits FM) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: synth (poke machine chooser draws FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: synth (poke machine chooser highlights FM) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: synth (poke machine chooser persists FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" }, "result": "refused" }, @@ -1632,6 +1637,7 @@ "tapehead", "airwindows-chorus", "everb", + "bbd", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -1642,7 +1648,6 @@ "playmodes", "mute-modes", "recorder-loop-fix", - "poly8", "output-matrix" ], "keepStockFx2": false, @@ -1667,11 +1672,12 @@ "TAPEHEAD", "AIR CHORUS", "EVERB", + "BBD", "SIDECHAIN_COMPRESSOR" ] }, "native": { - "refused": "CC->FX2/FX1 page-2 cave + dispatch repoint: 724 B fits neither the clone window (from 0x400d7980) nor the overflow run" + "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400449be -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n poke site: synth (poke machine chooser has six rows, FM SYNTH the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP selector has six rows) and vector (poke VECTOR is machine chooser row six) both claim 0x400585fa -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP name lookup admits FM) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: synth (poke machine chooser draws FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: synth (poke machine chooser highlights FM) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: synth (poke machine chooser persists FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" }, "result": "refused" }, @@ -1683,6 +1689,7 @@ "tapehead", "airwindows-chorus", "everb", + "bbd", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -1693,7 +1700,6 @@ "playmodes", "mute-modes", "recorder-loop-fix", - "poly8", "output-matrix" ], "keepStockFx2": true, @@ -1728,11 +1734,12 @@ "EUCLID", "TAPEHEAD", "AIR CHORUS", - "EVERB" + "EVERB", + "BBD" ] }, "native": { - "refused": "spacing cave not free" + "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400449be -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n poke site: synth (poke machine chooser has six rows, FM SYNTH the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP selector has six rows) and vector (poke VECTOR is machine chooser row six) both claim 0x400585fa -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP name lookup admits FM) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: synth (poke machine chooser draws FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: synth (poke machine chooser highlights FM) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: synth (poke machine chooser persists FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" }, "result": "refused" }, @@ -1744,6 +1751,7 @@ "tapehead", "airwindows-chorus", "everb", + "bbd", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -1754,7 +1762,6 @@ "playmodes", "mute-modes", "recorder-loop-fix", - "poly8", "output-matrix" ], "keepStockFx2": false, @@ -1779,11 +1786,12 @@ "TAPEHEAD", "AIR CHORUS", "EVERB", + "BBD", "SIDECHAIN_COMPRESSOR" ] }, "native": { - "refused": "spacing cave not free" + "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400449be -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n poke site: synth (poke machine chooser has six rows, FM SYNTH the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP selector has six rows) and vector (poke VECTOR is machine chooser row six) both claim 0x400585fa -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP name lookup admits FM) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: synth (poke machine chooser draws FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: synth (poke machine chooser highlights FM) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: synth (poke machine chooser persists FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" }, "result": "refused" }, @@ -1795,6 +1803,7 @@ "tapehead", "airwindows-chorus", "everb", + "bbd", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -1805,7 +1814,6 @@ "playmodes", "mute-modes", "recorder-loop-fix", - "poly8", "output-matrix" ], "keepStockFx2": true, @@ -1839,11 +1847,12 @@ "TAPE ECHO", "TAPEHEAD", "AIR CHORUS", - "EVERB" + "EVERB", + "BBD" ] }, "native": { - "refused": "CC->FX2/FX1 page-2 cave + dispatch repoint: 724 B fits neither the clone window (from 0x400d7980) nor the overflow run" + "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400449be -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n poke site: synth (poke machine chooser has six rows, FM SYNTH the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP selector has six rows) and vector (poke VECTOR is machine chooser row six) both claim 0x400585fa -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP name lookup admits FM) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: synth (poke machine chooser draws FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: synth (poke machine chooser highlights FM) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: synth (poke machine chooser persists FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" }, "result": "refused" }, @@ -1855,6 +1864,7 @@ "tapehead", "airwindows-chorus", "everb", + "bbd", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -1865,7 +1875,6 @@ "playmodes", "mute-modes", "recorder-loop-fix", - "poly8", "output-matrix" ], "keepStockFx2": false, @@ -1889,11 +1898,12 @@ "TAPEHEAD", "AIR CHORUS", "EVERB", + "BBD", "SIDECHAIN_COMPRESSOR" ] }, "native": { - "refused": "CC->FX2/FX1 page-2 cave + dispatch repoint: 724 B fits neither the clone window (from 0x400d7980) nor the overflow run" + "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400449be -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n poke site: synth (poke machine chooser has six rows, FM SYNTH the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP selector has six rows) and vector (poke VECTOR is machine chooser row six) both claim 0x400585fa -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP name lookup admits FM) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: synth (poke machine chooser draws FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: synth (poke machine chooser highlights FM) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: synth (poke machine chooser persists FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" }, "result": "refused" }, @@ -1905,6 +1915,7 @@ "tapehead", "airwindows-chorus", "everb", + "bbd", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -1915,7 +1926,6 @@ "playmodes", "mute-modes", "recorder-loop-fix", - "poly8", "output-matrix" ], "keepStockFx2": true, @@ -1951,11 +1961,12 @@ "EUCLID", "TAPEHEAD", "AIR CHORUS", - "EVERB" + "EVERB", + "BBD" ] }, "native": { - "refused": "CC->FX2/FX1 page-2 cave + dispatch repoint: 724 B fits neither the clone window (from 0x400d7b00) nor the overflow run" + "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400449be -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n poke site: synth (poke machine chooser has six rows, FM SYNTH the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP selector has six rows) and vector (poke VECTOR is machine chooser row six) both claim 0x400585fa -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP name lookup admits FM) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: synth (poke machine chooser draws FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: synth (poke machine chooser highlights FM) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: synth (poke machine chooser persists FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" }, "result": "refused" }, @@ -1967,6 +1978,7 @@ "tapehead", "airwindows-chorus", "everb", + "bbd", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -1977,7 +1989,6 @@ "playmodes", "mute-modes", "recorder-loop-fix", - "poly8", "output-matrix" ], "keepStockFx2": false, @@ -2003,11 +2014,12 @@ "TAPEHEAD", "AIR CHORUS", "EVERB", + "BBD", "SIDECHAIN_COMPRESSOR" ] }, "native": { - "refused": "CC->FX2/FX1 page-2 cave + dispatch repoint: 724 B fits neither the clone window (from 0x400d7b00) nor the overflow run" + "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400449be -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n poke site: synth (poke machine chooser has six rows, FM SYNTH the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP selector has six rows) and vector (poke VECTOR is machine chooser row six) both claim 0x400585fa -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP name lookup admits FM) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: synth (poke machine chooser draws FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: synth (poke machine chooser highlights FM) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: synth (poke machine chooser persists FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" }, "result": "refused" }, @@ -2019,6 +2031,7 @@ "repitch", "airwindows-chorus", "everb", + "bbd", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -2029,7 +2042,6 @@ "playmodes", "mute-modes", "recorder-loop-fix", - "poly8", "output-matrix" ], "keepStockFx2": true, @@ -2063,11 +2075,12 @@ "TAPE ECHO", "EUCLID", "AIR CHORUS", - "EVERB" + "EVERB", + "BBD" ] }, "native": { - "refused": "CC->FX2/FX1 page-2 cave + dispatch repoint: 724 B fits neither the clone window (from 0x400d7980) nor the overflow run" + "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400449be -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n poke site: synth (poke machine chooser has six rows, FM SYNTH the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP selector has six rows) and vector (poke VECTOR is machine chooser row six) both claim 0x400585fa -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP name lookup admits FM) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: synth (poke machine chooser draws FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: synth (poke machine chooser highlights FM) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: synth (poke machine chooser persists FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" }, "result": "refused" }, @@ -2079,6 +2092,7 @@ "repitch", "airwindows-chorus", "everb", + "bbd", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -2089,7 +2103,6 @@ "playmodes", "mute-modes", "recorder-loop-fix", - "poly8", "output-matrix" ], "keepStockFx2": false, @@ -2113,11 +2126,12 @@ "EUCLID", "AIR CHORUS", "EVERB", + "BBD", "SIDECHAIN_COMPRESSOR" ] }, "native": { - "refused": "CC->FX2/FX1 page-2 cave + dispatch repoint: 724 B fits neither the clone window (from 0x400d7980) nor the overflow run" + "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400449be -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n poke site: synth (poke machine chooser has six rows, FM SYNTH the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP selector has six rows) and vector (poke VECTOR is machine chooser row six) both claim 0x400585fa -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP name lookup admits FM) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: synth (poke machine chooser draws FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: synth (poke machine chooser highlights FM) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: synth (poke machine chooser persists FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" }, "result": "refused" }, @@ -2129,6 +2143,7 @@ "repitch", "tapehead", "everb", + "bbd", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -2139,7 +2154,6 @@ "playmodes", "mute-modes", "recorder-loop-fix", - "poly8", "output-matrix" ], "keepStockFx2": true, @@ -2174,11 +2188,12 @@ "TAPE ECHO", "EUCLID", "TAPEHEAD", - "EVERB" + "EVERB", + "BBD" ] }, "native": { - "refused": "CC->FX2/FX1 page-2 cave + dispatch repoint: 724 B fits neither the clone window (from 0x400d7980) nor the overflow run" + "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400449be -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n poke site: synth (poke machine chooser has six rows, FM SYNTH the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP selector has six rows) and vector (poke VECTOR is machine chooser row six) both claim 0x400585fa -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP name lookup admits FM) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: synth (poke machine chooser draws FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: synth (poke machine chooser highlights FM) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: synth (poke machine chooser persists FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" }, "result": "refused" }, @@ -2190,6 +2205,7 @@ "repitch", "tapehead", "everb", + "bbd", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -2200,7 +2216,6 @@ "playmodes", "mute-modes", "recorder-loop-fix", - "poly8", "output-matrix" ], "keepStockFx2": false, @@ -2225,11 +2240,12 @@ "EUCLID", "TAPEHEAD", "EVERB", + "BBD", "SIDECHAIN_COMPRESSOR" ] }, "native": { - "refused": "CC->FX2/FX1 page-2 cave + dispatch repoint: 724 B fits neither the clone window (from 0x400d7980) nor the overflow run" + "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400449be -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n poke site: synth (poke machine chooser has six rows, FM SYNTH the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP selector has six rows) and vector (poke VECTOR is machine chooser row six) both claim 0x400585fa -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP name lookup admits FM) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: synth (poke machine chooser draws FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: synth (poke machine chooser highlights FM) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: synth (poke machine chooser persists FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" }, "result": "refused" }, @@ -2241,6 +2257,7 @@ "repitch", "tapehead", "airwindows-chorus", + "bbd", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -2251,7 +2268,6 @@ "playmodes", "mute-modes", "recorder-loop-fix", - "poly8", "output-matrix" ], "keepStockFx2": true, @@ -2286,11 +2302,12 @@ "TAPE ECHO", "EUCLID", "TAPEHEAD", - "AIR CHORUS" + "AIR CHORUS", + "BBD" ] }, "native": { - "refused": "CC->FX2/FX1 page-2 cave + dispatch repoint: 724 B fits neither the clone window (from 0x400d7980) nor the overflow run" + "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400449be -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n poke site: synth (poke machine chooser has six rows, FM SYNTH the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP selector has six rows) and vector (poke VECTOR is machine chooser row six) both claim 0x400585fa -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP name lookup admits FM) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: synth (poke machine chooser draws FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: synth (poke machine chooser highlights FM) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: synth (poke machine chooser persists FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" }, "result": "refused" }, @@ -2302,6 +2319,7 @@ "repitch", "tapehead", "airwindows-chorus", + "bbd", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -2312,7 +2330,6 @@ "playmodes", "mute-modes", "recorder-loop-fix", - "poly8", "output-matrix" ], "keepStockFx2": false, @@ -2337,11 +2354,12 @@ "EUCLID", "TAPEHEAD", "AIR CHORUS", + "BBD", "SIDECHAIN_COMPRESSOR" ] }, "native": { - "refused": "CC->FX2/FX1 page-2 cave + dispatch repoint: 724 B fits neither the clone window (from 0x400d7980) nor the overflow run" + "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400449be -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n poke site: synth (poke machine chooser has six rows, FM SYNTH the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP selector has six rows) and vector (poke VECTOR is machine chooser row six) both claim 0x400585fa -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP name lookup admits FM) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: synth (poke machine chooser draws FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: synth (poke machine chooser highlights FM) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: synth (poke machine chooser persists FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" }, "result": "refused" }, @@ -2354,6 +2372,7 @@ "tapehead", "airwindows-chorus", "everb", + "usb-audio-out-tracks-main-cue", "quantizer", "synth", "previewvol", @@ -2363,7 +2382,6 @@ "playmodes", "mute-modes", "recorder-loop-fix", - "poly8", "output-matrix" ], "keepStockFx2": true, @@ -2403,7 +2421,7 @@ ] }, "native": { - "refused": "CC->FX2/FX1 page-2 cave + dispatch repoint: 724 B fits neither the clone window (from 0x400d7b00) nor the overflow run" + "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400449be -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n poke site: synth (poke machine chooser has six rows, FM SYNTH the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP selector has six rows) and vector (poke VECTOR is machine chooser row six) both claim 0x400585fa -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP name lookup admits FM) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: synth (poke machine chooser draws FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: synth (poke machine chooser highlights FM) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: synth (poke machine chooser persists FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" }, "result": "refused" }, @@ -2416,6 +2434,7 @@ "tapehead", "airwindows-chorus", "everb", + "usb-audio-out-tracks-main-cue", "quantizer", "synth", "previewvol", @@ -2425,7 +2444,6 @@ "playmodes", "mute-modes", "recorder-loop-fix", - "poly8", "output-matrix" ], "keepStockFx2": false, @@ -2455,7 +2473,7 @@ ] }, "native": { - "refused": "CC->FX2/FX1 page-2 cave + dispatch repoint: 724 B fits neither the clone window (from 0x400d7b00) nor the overflow run" + "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400449be -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n poke site: synth (poke machine chooser has six rows, FM SYNTH the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP selector has six rows) and vector (poke VECTOR is machine chooser row six) both claim 0x400585fa -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP name lookup admits FM) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: synth (poke machine chooser draws FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: synth (poke machine chooser highlights FM) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: synth (poke machine chooser persists FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" }, "result": "refused" }, @@ -2468,7 +2486,8 @@ "tapehead", "airwindows-chorus", "everb", - "usb-audio-out-tracks-main-cue", + "bbd", + "quantizer", "synth", "previewvol", "cc-map", @@ -2477,7 +2496,6 @@ "playmodes", "mute-modes", "recorder-loop-fix", - "poly8", "output-matrix" ], "keepStockFx2": true, @@ -2513,11 +2531,12 @@ "EUCLID", "TAPEHEAD", "AIR CHORUS", - "EVERB" + "EVERB", + "BBD" ] }, "native": { - "refused": "CC->FX2/FX1 page-2 cave + dispatch repoint: 724 B fits neither the clone window (from 0x400d7b00) nor the overflow run" + "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400449be -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n poke site: synth (poke machine chooser has six rows, FM SYNTH the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP selector has six rows) and vector (poke VECTOR is machine chooser row six) both claim 0x400585fa -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP name lookup admits FM) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: synth (poke machine chooser draws FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: synth (poke machine chooser highlights FM) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: synth (poke machine chooser persists FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" }, "result": "refused" }, @@ -2530,7 +2549,8 @@ "tapehead", "airwindows-chorus", "everb", - "usb-audio-out-tracks-main-cue", + "bbd", + "quantizer", "synth", "previewvol", "cc-map", @@ -2539,7 +2559,6 @@ "playmodes", "mute-modes", "recorder-loop-fix", - "poly8", "output-matrix" ], "keepStockFx2": false, @@ -2565,11 +2584,12 @@ "TAPEHEAD", "AIR CHORUS", "EVERB", + "BBD", "SIDECHAIN_COMPRESSOR" ] }, "native": { - "refused": "CC->FX2/FX1 page-2 cave + dispatch repoint: 724 B fits neither the clone window (from 0x400d7b00) nor the overflow run" + "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400449be -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n poke site: synth (poke machine chooser has six rows, FM SYNTH the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP selector has six rows) and vector (poke VECTOR is machine chooser row six) both claim 0x400585fa -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP name lookup admits FM) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: synth (poke machine chooser draws FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: synth (poke machine chooser highlights FM) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: synth (poke machine chooser persists FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" }, "result": "refused" }, @@ -2582,8 +2602,9 @@ "tapehead", "airwindows-chorus", "everb", + "bbd", "usb-audio-out-tracks-main-cue", - "quantizer", + "synth", "previewvol", "cc-map", "sidechain-compressor", @@ -2591,7 +2612,6 @@ "playmodes", "mute-modes", "recorder-loop-fix", - "poly8", "output-matrix" ], "keepStockFx2": true, @@ -2627,11 +2647,12 @@ "EUCLID", "TAPEHEAD", "AIR CHORUS", - "EVERB" + "EVERB", + "BBD" ] }, "native": { - "refused": "CC->FX2/FX1 page-2 cave + dispatch repoint: 724 B fits neither the clone window (from 0x400d7b00) nor the overflow run" + "refused": "remix 'octamod-composition-proof' has colliding modules:\n hook site: synth and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: synth (poke machine chooser has six rows, FM SYNTH the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP selector has six rows) and vector (poke VECTOR is machine chooser row six) both claim 0x400585fa -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP name lookup admits FM) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: synth (poke machine chooser draws FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: synth (poke machine chooser highlights FM) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: synth (poke machine chooser persists FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes" }, "result": "refused" }, @@ -2644,8 +2665,9 @@ "tapehead", "airwindows-chorus", "everb", + "bbd", "usb-audio-out-tracks-main-cue", - "quantizer", + "synth", "previewvol", "cc-map", "sidechain-compressor", @@ -2653,7 +2675,6 @@ "playmodes", "mute-modes", "recorder-loop-fix", - "poly8", "output-matrix" ], "keepStockFx2": false, @@ -2679,11 +2700,12 @@ "TAPEHEAD", "AIR CHORUS", "EVERB", + "BBD", "SIDECHAIN_COMPRESSOR" ] }, "native": { - "refused": "CC->FX2/FX1 page-2 cave + dispatch repoint: 724 B fits neither the clone window (from 0x400d7b00) nor the overflow run" + "refused": "remix 'octamod-composition-proof' has colliding modules:\n hook site: synth and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: synth (poke machine chooser has six rows, FM SYNTH the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP selector has six rows) and vector (poke VECTOR is machine chooser row six) both claim 0x400585fa -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP name lookup admits FM) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: synth (poke machine chooser draws FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: synth (poke machine chooser highlights FM) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: synth (poke machine chooser persists FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes" }, "result": "refused" }, @@ -2696,16 +2718,16 @@ "tapehead", "airwindows-chorus", "everb", + "bbd", "usb-audio-out-tracks-main-cue", "quantizer", - "synth", + "previewvol", "cc-map", "sidechain-compressor", "vector", "playmodes", "mute-modes", "recorder-loop-fix", - "poly8", "output-matrix" ], "keepStockFx2": true, @@ -2741,11 +2763,12 @@ "EUCLID", "TAPEHEAD", "AIR CHORUS", - "EVERB" + "EVERB", + "BBD" ] }, "native": { - "refused": "CC->FX2/FX1 page-2 cave + dispatch repoint: 724 B fits neither the clone window (from 0x400d7a80) nor the overflow run" + "refused": "REPITCH repitch at 0x400d7a00 not free" }, "result": "refused" }, @@ -2758,16 +2781,16 @@ "tapehead", "airwindows-chorus", "everb", + "bbd", "usb-audio-out-tracks-main-cue", "quantizer", - "synth", + "previewvol", "cc-map", "sidechain-compressor", "vector", "playmodes", "mute-modes", "recorder-loop-fix", - "poly8", "output-matrix" ], "keepStockFx2": false, @@ -2793,11 +2816,12 @@ "TAPEHEAD", "AIR CHORUS", "EVERB", + "BBD", "SIDECHAIN_COMPRESSOR" ] }, "native": { - "refused": "CC->FX2/FX1 page-2 cave + dispatch repoint: 724 B fits neither the clone window (from 0x400d7a80) nor the overflow run" + "refused": "SCALE QUANTIZER qzc at 0x400d7b00 not free" }, "result": "refused" }, @@ -2810,16 +2834,16 @@ "tapehead", "airwindows-chorus", "everb", + "bbd", "usb-audio-out-tracks-main-cue", "quantizer", "synth", - "previewvol", + "cc-map", "sidechain-compressor", "vector", "playmodes", "mute-modes", "recorder-loop-fix", - "poly8", "output-matrix" ], "keepStockFx2": true, @@ -2855,11 +2879,12 @@ "EUCLID", "TAPEHEAD", "AIR CHORUS", - "EVERB" + "EVERB", + "BBD" ] }, "native": { - "refused": "spacing cave not free" + "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400449be -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n poke site: synth (poke machine chooser has six rows, FM SYNTH the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP selector has six rows) and vector (poke VECTOR is machine chooser row six) both claim 0x400585fa -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP name lookup admits FM) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: synth (poke machine chooser draws FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: synth (poke machine chooser highlights FM) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: synth (poke machine chooser persists FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" }, "result": "refused" }, @@ -2872,16 +2897,16 @@ "tapehead", "airwindows-chorus", "everb", + "bbd", "usb-audio-out-tracks-main-cue", "quantizer", "synth", - "previewvol", + "cc-map", "sidechain-compressor", "vector", "playmodes", "mute-modes", "recorder-loop-fix", - "poly8", "output-matrix" ], "keepStockFx2": false, @@ -2907,11 +2932,12 @@ "TAPEHEAD", "AIR CHORUS", "EVERB", + "BBD", "SIDECHAIN_COMPRESSOR" ] }, "native": { - "refused": "spacing cave not free" + "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400449be -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n poke site: synth (poke machine chooser has six rows, FM SYNTH the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP selector has six rows) and vector (poke VECTOR is machine chooser row six) both claim 0x400585fa -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP name lookup admits FM) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: synth (poke machine chooser draws FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: synth (poke machine chooser highlights FM) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: synth (poke machine chooser persists FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" }, "result": "refused" }, @@ -2924,16 +2950,16 @@ "tapehead", "airwindows-chorus", "everb", + "bbd", "usb-audio-out-tracks-main-cue", "quantizer", "synth", "previewvol", - "cc-map", + "sidechain-compressor", "vector", "playmodes", "mute-modes", "recorder-loop-fix", - "poly8", "output-matrix" ], "keepStockFx2": true, @@ -2947,7 +2973,7 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", "TAPEHEAD" @@ -2961,7 +2987,7 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", "MINIVERB", @@ -2969,11 +2995,12 @@ "EUCLID", "TAPEHEAD", "AIR CHORUS", - "EVERB" + "EVERB", + "BBD" ] }, "native": { - "refused": "seek-bind counter cave not free" + "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400449be -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n poke site: synth (poke machine chooser has six rows, FM SYNTH the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP selector has six rows) and vector (poke VECTOR is machine chooser row six) both claim 0x400585fa -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP name lookup admits FM) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: synth (poke machine chooser draws FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: synth (poke machine chooser highlights FM) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: synth (poke machine chooser persists FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" }, "result": "refused" }, @@ -2986,16 +3013,16 @@ "tapehead", "airwindows-chorus", "everb", + "bbd", "usb-audio-out-tracks-main-cue", "quantizer", "synth", "previewvol", - "cc-map", + "sidechain-compressor", "vector", "playmodes", "mute-modes", "recorder-loop-fix", - "poly8", "output-matrix" ], "keepStockFx2": false, @@ -3009,7 +3036,7 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", "TAPEHEAD" @@ -3020,11 +3047,13 @@ "EUCLID", "TAPEHEAD", "AIR CHORUS", - "EVERB" + "EVERB", + "BBD", + "SIDECHAIN_COMPRESSOR" ] }, "native": { - "refused": "spacing cave not free" + "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400449be -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n poke site: synth (poke machine chooser has six rows, FM SYNTH the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP selector has six rows) and vector (poke VECTOR is machine chooser row six) both claim 0x400585fa -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP name lookup admits FM) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: synth (poke machine chooser draws FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: synth (poke machine chooser highlights FM) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: synth (poke machine chooser persists FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" }, "result": "refused" }, @@ -3037,16 +3066,16 @@ "tapehead", "airwindows-chorus", "everb", + "bbd", "usb-audio-out-tracks-main-cue", "quantizer", "synth", "previewvol", "cc-map", - "sidechain-compressor", + "vector", "playmodes", "mute-modes", "recorder-loop-fix", - "poly8", "output-matrix" ], "keepStockFx2": true, @@ -3060,7 +3089,7 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", "EUCLID", "TAPEHEAD" @@ -3074,7 +3103,7 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", "DELAY", "MINIVERB", @@ -3082,11 +3111,12 @@ "EUCLID", "TAPEHEAD", "AIR CHORUS", - "EVERB" + "EVERB", + "BBD" ] }, "native": { - "refused": "CC->FX2/FX1 page-2 cave + dispatch repoint: 724 B fits neither the clone window (from 0x400d7b00) nor the overflow run" + "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400449be -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n poke site: synth (poke machine chooser has six rows, FM SYNTH the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP selector has six rows) and vector (poke VECTOR is machine chooser row six) both claim 0x400585fa -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP name lookup admits FM) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: synth (poke machine chooser draws FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: synth (poke machine chooser highlights FM) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: synth (poke machine chooser persists FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" }, "result": "refused" }, @@ -3099,16 +3129,16 @@ "tapehead", "airwindows-chorus", "everb", + "bbd", "usb-audio-out-tracks-main-cue", "quantizer", "synth", "previewvol", "cc-map", - "sidechain-compressor", + "vector", "playmodes", "mute-modes", "recorder-loop-fix", - "poly8", "output-matrix" ], "keepStockFx2": false, @@ -3122,7 +3152,7 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", "EUCLID", "TAPEHEAD" @@ -3134,11 +3164,11 @@ "TAPEHEAD", "AIR CHORUS", "EVERB", - "SIDECHAIN_COMPRESSOR" + "BBD" ] }, "native": { - "refused": "CC->FX2/FX1 page-2 cave + dispatch repoint: 724 B fits neither the clone window (from 0x400d7b00) nor the overflow run" + "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400449be -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n poke site: synth (poke machine chooser has six rows, FM SYNTH the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP selector has six rows) and vector (poke VECTOR is machine chooser row six) both claim 0x400585fa -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP name lookup admits FM) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: synth (poke machine chooser draws FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: synth (poke machine chooser highlights FM) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: synth (poke machine chooser persists FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" }, "result": "refused" }, @@ -3151,16 +3181,16 @@ "tapehead", "airwindows-chorus", "everb", + "bbd", "usb-audio-out-tracks-main-cue", "quantizer", "synth", "previewvol", "cc-map", "sidechain-compressor", - "vector", + "playmodes", "mute-modes", "recorder-loop-fix", - "poly8", "output-matrix" ], "keepStockFx2": true, @@ -3196,11 +3226,12 @@ "EUCLID", "TAPEHEAD", "AIR CHORUS", - "EVERB" + "EVERB", + "BBD" ] }, "native": { - "refused": "CC->FX2/FX1 page-2 cave + dispatch repoint: 724 B fits neither the clone window (from 0x400d7b00) nor the overflow run" + "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400449be -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" }, "result": "refused" }, @@ -3213,16 +3244,16 @@ "tapehead", "airwindows-chorus", "everb", + "bbd", "usb-audio-out-tracks-main-cue", "quantizer", "synth", "previewvol", "cc-map", "sidechain-compressor", - "vector", + "playmodes", "mute-modes", "recorder-loop-fix", - "poly8", "output-matrix" ], "keepStockFx2": false, @@ -3248,11 +3279,12 @@ "TAPEHEAD", "AIR CHORUS", "EVERB", + "BBD", "SIDECHAIN_COMPRESSOR" ] }, "native": { - "refused": "CC->FX2/FX1 page-2 cave + dispatch repoint: 724 B fits neither the clone window (from 0x400d7b00) nor the overflow run" + "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400449be -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" }, "result": "refused" }, @@ -3265,6 +3297,7 @@ "tapehead", "airwindows-chorus", "everb", + "bbd", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -3272,9 +3305,8 @@ "cc-map", "sidechain-compressor", "vector", - "playmodes", + "mute-modes", "recorder-loop-fix", - "poly8", "output-matrix" ], "keepStockFx2": true, @@ -3310,11 +3342,12 @@ "EUCLID", "TAPEHEAD", "AIR CHORUS", - "EVERB" + "EVERB", + "BBD" ] }, "native": { - "refused": "CC->FX2/FX1 page-2 cave + dispatch repoint: 724 B fits neither the clone window (from 0x400d7a00) nor the overflow run" + "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400449be -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n poke site: synth (poke machine chooser has six rows, FM SYNTH the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP selector has six rows) and vector (poke VECTOR is machine chooser row six) both claim 0x400585fa -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP name lookup admits FM) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: synth (poke machine chooser draws FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: synth (poke machine chooser highlights FM) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: synth (poke machine chooser persists FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" }, "result": "refused" }, @@ -3327,6 +3360,7 @@ "tapehead", "airwindows-chorus", "everb", + "bbd", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -3334,9 +3368,8 @@ "cc-map", "sidechain-compressor", "vector", - "playmodes", + "mute-modes", "recorder-loop-fix", - "poly8", "output-matrix" ], "keepStockFx2": false, @@ -3362,11 +3395,12 @@ "TAPEHEAD", "AIR CHORUS", "EVERB", + "BBD", "SIDECHAIN_COMPRESSOR" ] }, "native": { - "refused": "CC->FX2/FX1 page-2 cave + dispatch repoint: 724 B fits neither the clone window (from 0x400d7a00) nor the overflow run" + "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400449be -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n poke site: synth (poke machine chooser has six rows, FM SYNTH the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP selector has six rows) and vector (poke VECTOR is machine chooser row six) both claim 0x400585fa -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP name lookup admits FM) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: synth (poke machine chooser draws FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: synth (poke machine chooser highlights FM) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: synth (poke machine chooser persists FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" }, "result": "refused" }, @@ -3379,6 +3413,7 @@ "tapehead", "airwindows-chorus", "everb", + "bbd", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -3387,8 +3422,7 @@ "sidechain-compressor", "vector", "playmodes", - "mute-modes", - "poly8", + "recorder-loop-fix", "output-matrix" ], "keepStockFx2": true, @@ -3424,11 +3458,12 @@ "EUCLID", "TAPEHEAD", "AIR CHORUS", - "EVERB" + "EVERB", + "BBD" ] }, "native": { - "refused": "CC->FX2/FX1 page-2 cave + dispatch repoint: 724 B fits neither the clone window (from 0x400d7b00) nor the overflow run" + "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400449be -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n poke site: synth (poke machine chooser has six rows, FM SYNTH the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP selector has six rows) and vector (poke VECTOR is machine chooser row six) both claim 0x400585fa -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP name lookup admits FM) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: synth (poke machine chooser draws FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: synth (poke machine chooser highlights FM) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: synth (poke machine chooser persists FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" }, "result": "refused" }, @@ -3441,6 +3476,7 @@ "tapehead", "airwindows-chorus", "everb", + "bbd", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -3449,8 +3485,7 @@ "sidechain-compressor", "vector", "playmodes", - "mute-modes", - "poly8", + "recorder-loop-fix", "output-matrix" ], "keepStockFx2": false, @@ -3476,11 +3511,12 @@ "TAPEHEAD", "AIR CHORUS", "EVERB", + "BBD", "SIDECHAIN_COMPRESSOR" ] }, "native": { - "refused": "CC->FX2/FX1 page-2 cave + dispatch repoint: 724 B fits neither the clone window (from 0x400d7b00) nor the overflow run" + "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400449be -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n poke site: synth (poke machine chooser has six rows, FM SYNTH the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP selector has six rows) and vector (poke VECTOR is machine chooser row six) both claim 0x400585fa -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP name lookup admits FM) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: synth (poke machine chooser draws FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: synth (poke machine chooser highlights FM) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: synth (poke machine chooser persists FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" }, "result": "refused" }, @@ -3493,6 +3529,7 @@ "tapehead", "airwindows-chorus", "everb", + "bbd", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -3502,7 +3539,6 @@ "vector", "playmodes", "mute-modes", - "recorder-loop-fix", "output-matrix" ], "keepStockFx2": true, @@ -3538,11 +3574,12 @@ "EUCLID", "TAPEHEAD", "AIR CHORUS", - "EVERB" + "EVERB", + "BBD" ] }, "native": { - "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n hook site: quantizer (detour CHROMATIC drawer: the octave number beside the keyboard is qz_oct on a synth track, the position 0 / 1 / -1 on a sample track, with ROOT's name before it when a scale is on) and synth (detour CHROMATIC drawer common argument push preserves MIDI stack; audio octave is qz_oct on a synth track, the position 0 / 1 / -1 on a sample track, with ROOT's name before it when a scale is on) both claim 0x400449be -- both rewrite the same instruction\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n poke site: synth (poke machine chooser has six rows, FM SYNTH the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP selector has six rows) and vector (poke VECTOR is machine chooser row six) both claim 0x400585fa -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP name lookup admits FM) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: synth (poke machine chooser draws FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: synth (poke machine chooser highlights FM) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: synth (poke machine chooser persists FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" + "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400449be -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n poke site: synth (poke machine chooser has six rows, FM SYNTH the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP selector has six rows) and vector (poke VECTOR is machine chooser row six) both claim 0x400585fa -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP name lookup admits FM) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: synth (poke machine chooser draws FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: synth (poke machine chooser highlights FM) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: synth (poke machine chooser persists FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" }, "result": "refused" }, @@ -3555,6 +3592,7 @@ "tapehead", "airwindows-chorus", "everb", + "bbd", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -3564,7 +3602,6 @@ "vector", "playmodes", "mute-modes", - "recorder-loop-fix", "output-matrix" ], "keepStockFx2": false, @@ -3590,31 +3627,22 @@ "TAPEHEAD", "AIR CHORUS", "EVERB", + "BBD", "SIDECHAIN_COMPRESSOR" ] }, "native": { - "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n hook site: quantizer (detour CHROMATIC drawer: the octave number beside the keyboard is qz_oct on a synth track, the position 0 / 1 / -1 on a sample track, with ROOT's name before it when a scale is on) and synth (detour CHROMATIC drawer common argument push preserves MIDI stack; audio octave is qz_oct on a synth track, the position 0 / 1 / -1 on a sample track, with ROOT's name before it when a scale is on) both claim 0x400449be -- both rewrite the same instruction\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n poke site: synth (poke machine chooser has six rows, FM SYNTH the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP selector has six rows) and vector (poke VECTOR is machine chooser row six) both claim 0x400585fa -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP name lookup admits FM) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: synth (poke machine chooser draws FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: synth (poke machine chooser highlights FM) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: synth (poke machine chooser persists FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" + "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400449be -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n poke site: synth (poke machine chooser has six rows, FM SYNTH the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP selector has six rows) and vector (poke VECTOR is machine chooser row six) both claim 0x400585fa -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP name lookup admits FM) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: synth (poke machine chooser draws FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: synth (poke machine chooser highlights FM) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: synth (poke machine chooser persists FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" }, "result": "refused" }, { "moduleIds": [ "miniverb", - "tapeecho", - "euclid", - "tapehead", - "airwindows-chorus", - "everb", + "repitch", "usb-audio-out-tracks-main-cue", - "quantizer", - "synth", - "cc-map", "sidechain-compressor", - "vector", - "mute-modes", "recorder-loop-fix", - "poly8", "output-matrix" ], "keepStockFx2": true, @@ -3629,9 +3657,7 @@ "SPATIALIZER", "COMB FILTER", "SIDECHAIN_COMPRESSOR", - "LO-FI", - "EUCLID", - "TAPEHEAD" + "LO-FI" ], "fx2": [ "FILTER", @@ -3645,36 +3671,25 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "MINIVERB", - "TAPE ECHO", - "EUCLID", - "TAPEHEAD", - "AIR CHORUS", - "EVERB" + "PLATE REV", + "MINIVERB" ] }, "native": { - "refused": "CC->FX2/FX1 page-2 cave + dispatch repoint: 724 B fits neither the clone window (from 0x400d7a80) nor the overflow run" + "bytes": 1116733, + "osSha256": "c3f0a8e66f461a9e90c4801f53f3f8a4f0ed97dc8a41f53386b63539805723b8", + "maskedOsSha256": "004aa7c935394432f22910b7705f911b94a490ace48b20db29a53808d222b734", + "platformArena": true }, - "result": "refused" + "result": "masked" }, { "moduleIds": [ "miniverb", - "tapeecho", - "euclid", - "tapehead", - "airwindows-chorus", - "everb", + "repitch", "usb-audio-out-tracks-main-cue", - "quantizer", - "synth", - "cc-map", "sidechain-compressor", - "vector", - "mute-modes", "recorder-loop-fix", - "poly8", "output-matrix" ], "keepStockFx2": false, @@ -3689,24 +3704,20 @@ "SPATIALIZER", "COMB FILTER", "SIDECHAIN_COMPRESSOR", - "LO-FI", - "EUCLID", - "TAPEHEAD" + "LO-FI" ], "fx2": [ "MINIVERB", - "TAPE ECHO", - "EUCLID", - "TAPEHEAD", - "AIR CHORUS", - "EVERB", "SIDECHAIN_COMPRESSOR" ] }, "native": { - "refused": "CC->FX2/FX1 page-2 cave + dispatch repoint: 724 B fits neither the clone window (from 0x400d7a80) nor the overflow run" + "bytes": 1116733, + "osSha256": "de16e8211acd3ea12b5ea41dd0ae328aabf987fcd6a2b8db680ac9c69124f623", + "maskedOsSha256": "b4bed80e061590fde115fd940e8428001628c5c63e127daccec2539191ec93c1", + "platformArena": true }, - "result": "refused" + "result": "masked" }, { "moduleIds": [ @@ -3715,13 +3726,16 @@ "tapehead", "airwindows-chorus", "everb", + "bbd", + "quantizer", "synth", - "previewvol", - "cc-map", "sidechain-compressor", "vector", - "output-matrix" - ], + "playmodes", + "mute-modes", + "recorder-loop-fix", + "output-matrix" + ], "keepStockFx2": true, "menu": { "fx1": [ @@ -3752,11 +3766,12 @@ "MINIVERB", "TAPEHEAD", "AIR CHORUS", - "EVERB" + "EVERB", + "BBD" ] }, "native": { - "refused": "remix 'octamod-composition-proof' has colliding modules:\n hook site: synth and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: synth (poke machine chooser has six rows, FM SYNTH the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP selector has six rows) and vector (poke VECTOR is machine chooser row six) both claim 0x400585fa -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP name lookup admits FM) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: synth (poke machine chooser draws FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: synth (poke machine chooser highlights FM) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: synth (poke machine chooser persists FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes" + "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400449be -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n poke site: synth (poke machine chooser has six rows, FM SYNTH the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP selector has six rows) and vector (poke VECTOR is machine chooser row six) both claim 0x400585fa -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP name lookup admits FM) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: synth (poke machine chooser draws FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: synth (poke machine chooser highlights FM) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: synth (poke machine chooser persists FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" }, "result": "refused" }, @@ -3767,11 +3782,14 @@ "tapehead", "airwindows-chorus", "everb", + "bbd", + "quantizer", "synth", - "previewvol", - "cc-map", "sidechain-compressor", "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", "output-matrix" ], "keepStockFx2": false, @@ -3794,11 +3812,12 @@ "TAPEHEAD", "AIR CHORUS", "EVERB", + "BBD", "SIDECHAIN_COMPRESSOR" ] }, "native": { - "refused": "remix 'octamod-composition-proof' has colliding modules:\n hook site: synth and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: synth (poke machine chooser has six rows, FM SYNTH the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP selector has six rows) and vector (poke VECTOR is machine chooser row six) both claim 0x400585fa -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP name lookup admits FM) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: synth (poke machine chooser draws FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: synth (poke machine chooser highlights FM) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: synth (poke machine chooser persists FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes" + "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400449be -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n poke site: synth (poke machine chooser has six rows, FM SYNTH the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP selector has six rows) and vector (poke VECTOR is machine chooser row six) both claim 0x400585fa -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP name lookup admits FM) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: synth (poke machine chooser draws FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: synth (poke machine chooser highlights FM) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: synth (poke machine chooser persists FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" }, "result": "refused" }, @@ -3806,15 +3825,13 @@ "moduleIds": [ "miniverb", "tapeecho", - "euclid", "repitch", "tapehead", - "airwindows-chorus", "everb", "usb-audio-out-tracks-main-cue", "quantizer", + "synth", "previewvol", - "cc-map", "sidechain-compressor", "vector", "playmodes", @@ -3835,7 +3852,6 @@ "COMB FILTER", "SIDECHAIN_COMPRESSOR", "LO-FI", - "EUCLID", "TAPEHEAD" ], "fx2": [ @@ -3852,14 +3868,12 @@ "DELAY", "MINIVERB", "TAPE ECHO", - "EUCLID", "TAPEHEAD", - "AIR CHORUS", "EVERB" ] }, "native": { - "refused": "MUTE_MODES mm_softmute at 0x400d7b80 not free" + "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400449be -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n poke site: synth (poke machine chooser has six rows, FM SYNTH the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP selector has six rows) and vector (poke VECTOR is machine chooser row six) both claim 0x400585fa -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP name lookup admits FM) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: synth (poke machine chooser draws FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: synth (poke machine chooser highlights FM) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: synth (poke machine chooser persists FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" }, "result": "refused" }, @@ -3867,15 +3881,13 @@ "moduleIds": [ "miniverb", "tapeecho", - "euclid", "repitch", "tapehead", - "airwindows-chorus", "everb", "usb-audio-out-tracks-main-cue", "quantizer", + "synth", "previewvol", - "cc-map", "sidechain-compressor", "vector", "playmodes", @@ -3896,32 +3908,35 @@ "COMB FILTER", "SIDECHAIN_COMPRESSOR", "LO-FI", - "EUCLID", "TAPEHEAD" ], "fx2": [ "MINIVERB", "TAPE ECHO", - "EUCLID", "TAPEHEAD", - "AIR CHORUS", "EVERB", "SIDECHAIN_COMPRESSOR" ] }, "native": { - "refused": "MUTE_MODES mm_softmute at 0x400d7b80 not free" + "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400449be -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n poke site: synth (poke machine chooser has six rows, FM SYNTH the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP selector has six rows) and vector (poke VECTOR is machine chooser row six) both claim 0x400585fa -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP name lookup admits FM) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: synth (poke machine chooser draws FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: synth (poke machine chooser highlights FM) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: synth (poke machine chooser persists FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" }, "result": "refused" }, { "moduleIds": [ - "repitch", + "miniverb", + "tapeecho", + "euclid", + "airwindows-chorus", + "everb", "usb-audio-out-tracks-main-cue", + "quantizer", "synth", + "previewvol", "cc-map", - "sidechain-compressor", - "mute-modes", + "vector", + "recorder-loop-fix", "output-matrix" ], "keepStockFx2": true, @@ -3935,8 +3950,9 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", - "LO-FI" + "COMPRESSOR", + "LO-FI", + "EUCLID" ], "fx2": [ "FILTER", @@ -3947,25 +3963,35 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", "DELAY", - "DARK REV" + "MINIVERB", + "TAPE ECHO", + "EUCLID", + "AIR CHORUS", + "EVERB" ] }, "native": { - "refused": "MUTE_MODES table PERSONALIZE labels at 0x400d7b80 not free" + "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400449be -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n poke site: synth (poke machine chooser has six rows, FM SYNTH the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP selector has six rows) and vector (poke VECTOR is machine chooser row six) both claim 0x400585fa -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP name lookup admits FM) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: synth (poke machine chooser draws FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: synth (poke machine chooser highlights FM) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: synth (poke machine chooser persists FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" }, "result": "refused" }, { "moduleIds": [ - "repitch", + "miniverb", + "tapeecho", + "euclid", + "airwindows-chorus", + "everb", "usb-audio-out-tracks-main-cue", + "quantizer", "synth", + "previewvol", "cc-map", - "sidechain-compressor", - "mute-modes", + "vector", + "recorder-loop-fix", "output-matrix" ], "keepStockFx2": false, @@ -3979,32 +4005,29 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", - "LO-FI" + "COMPRESSOR", + "LO-FI", + "EUCLID" ], "fx2": [ - "SIDECHAIN_COMPRESSOR" + "MINIVERB", + "TAPE ECHO", + "EUCLID", + "AIR CHORUS", + "EVERB" ] }, "native": { - "refused": "MUTE_MODES table PERSONALIZE getters at 0x400d7c00 not free" + "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400449be -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n poke site: synth (poke machine chooser has six rows, FM SYNTH the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP selector has six rows) and vector (poke VECTOR is machine chooser row six) both claim 0x400585fa -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP name lookup admits FM) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: synth (poke machine chooser draws FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: synth (poke machine chooser highlights FM) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: synth (poke machine chooser persists FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" }, "result": "refused" }, { "moduleIds": [ - "miniverb", - "tapehead", - "everb", - "usb-audio-out-tracks-main-cue", - "quantizer", - "synth", - "previewvol", + "repitch", + "bbd", "cc-map", - "sidechain-compressor", - "mute-modes", - "recorder-loop-fix", - "poly8", + "playmodes", "output-matrix" ], "keepStockFx2": true, @@ -4018,9 +4041,8 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", - "LO-FI", - "TAPEHEAD" + "COMPRESSOR", + "LO-FI" ], "fx2": [ "FILTER", @@ -4031,33 +4053,26 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", "DELAY", - "MINIVERB", - "TAPEHEAD", - "EVERB" + "PLATE REV", + "BBD" ] }, "native": { - "refused": "past the stock zero run (or into the long chooser list)" + "bytes": 1119254, + "osSha256": "1f8824e027f09658832f58d2c67eb487754b4728ce741d95168e66666a51692b", + "maskedOsSha256": "08654fc1c2dada034798154c8b16af134623e4616221acd6a2caa055d07ae21a" }, - "result": "refused" + "result": "masked" }, { "moduleIds": [ - "miniverb", - "tapehead", - "everb", - "usb-audio-out-tracks-main-cue", - "quantizer", - "synth", - "previewvol", + "repitch", + "bbd", "cc-map", - "sidechain-compressor", - "mute-modes", - "recorder-loop-fix", - "poly8", + "playmodes", "output-matrix" ], "keepStockFx2": false, @@ -4071,34 +4086,31 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", - "LO-FI", - "TAPEHEAD" + "COMPRESSOR", + "LO-FI" ], "fx2": [ - "MINIVERB", - "TAPEHEAD", - "EVERB", - "SIDECHAIN_COMPRESSOR" + "BBD" ] }, "native": { - "refused": "past the stock zero run (or into the long chooser list)" + "bytes": 1119254, + "osSha256": "3ec1ed0c0fbb6320ab5c0c65a0b2686d65e3169b590197f49b39c74d3d295e41", + "maskedOsSha256": "0b02a285511b7075c5d091ffec3ac3e8ef089cb11becf0daf079a628eb1493ee" }, - "result": "refused" + "result": "masked" }, { "moduleIds": [ "miniverb", - "euclid", + "tapeecho", "repitch", "tapehead", + "bbd", "usb-audio-out-tracks-main-cue", - "quantizer", "previewvol", - "cc-map", - "playmodes", - "mute-modes", + "sidechain-compressor", + "vector", "recorder-loop-fix", "output-matrix" ], @@ -4113,9 +4125,8 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", - "EUCLID", "TAPEHEAD" ], "fx2": [ @@ -4127,31 +4138,31 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", "MINIVERB", - "EUCLID", - "TAPEHEAD" + "TAPE ECHO", + "TAPEHEAD", + "BBD" ] }, "native": { - "refused": "CC->FX2/FX1 page-2 cave + dispatch repoint: 724 B fits neither the clone window (from 0x400d7900) nor the overflow run" + "refused": "payload A: OUTPUT MATRIX overruns the region (2742 > 2724 words)" }, "result": "refused" }, { "moduleIds": [ "miniverb", - "euclid", + "tapeecho", "repitch", "tapehead", + "bbd", "usb-audio-out-tracks-main-cue", - "quantizer", "previewvol", - "cc-map", - "playmodes", - "mute-modes", + "sidechain-compressor", + "vector", "recorder-loop-fix", "output-matrix" ], @@ -4166,35 +4177,31 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", - "EUCLID", "TAPEHEAD" ], "fx2": [ "MINIVERB", - "EUCLID", - "TAPEHEAD" + "TAPE ECHO", + "TAPEHEAD", + "BBD", + "SIDECHAIN_COMPRESSOR" ] }, "native": { - "refused": "seek-bind counter cave not free" + "refused": "payload A: OUTPUT MATRIX overruns the region (2742 > 2724 words)" }, "result": "refused" }, { "moduleIds": [ "miniverb", - "usb-audio-out-tracks-main-cue", - "quantizer", - "synth", - "previewvol", + "tapehead", + "airwindows-chorus", + "bbd", "cc-map", "sidechain-compressor", - "vector", - "playmodes", - "recorder-loop-fix", - "poly8", "output-matrix" ], "keepStockFx2": true, @@ -4209,7 +4216,8 @@ "SPATIALIZER", "COMB FILTER", "SIDECHAIN_COMPRESSOR", - "LO-FI" + "LO-FI", + "TAPEHEAD" ], "fx2": [ "FILTER", @@ -4223,31 +4231,25 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", - "MINIVERB" + "MINIVERB", + "TAPEHEAD", + "AIR CHORUS", + "BBD" ] }, "native": { - "bytes": 1154429, - "osSha256": "a7a02be984da1cd64040ce682cf5302dc8675d581b4ccb626eb9825cc2260ad7", - "maskedOsSha256": "32fc9149a2e3448a288835a15ef31876ca6fbb403dd8d108fa6b0718e582e9d4", - "platformArena": true + "refused": "payload A: AIR CHORUS overruns the region (2861 > 2724 words)" }, - "result": "masked" + "result": "refused" }, { "moduleIds": [ "miniverb", - "usb-audio-out-tracks-main-cue", - "quantizer", - "synth", - "previewvol", + "tapehead", + "airwindows-chorus", + "bbd", "cc-map", "sidechain-compressor", - "vector", - "playmodes", - "recorder-loop-fix", - "poly8", "output-matrix" ], "keepStockFx2": false, @@ -4262,34 +4264,28 @@ "SPATIALIZER", "COMB FILTER", "SIDECHAIN_COMPRESSOR", - "LO-FI" + "LO-FI", + "TAPEHEAD" ], "fx2": [ "MINIVERB", + "TAPEHEAD", + "AIR CHORUS", + "BBD", "SIDECHAIN_COMPRESSOR" ] }, "native": { - "bytes": 1154429, - "osSha256": "8924d6edde2fc49ea63f6acaa666304b498aef126752c1ce9c5a0a323e0dccfa", - "maskedOsSha256": "92866a2a89469c3f446039c5d1de8e389afcd08dddbac3892f25ce166508a754", - "platformArena": true + "refused": "payload A: AIR CHORUS overruns the region (2861 > 2724 words)" }, - "result": "masked" + "result": "refused" }, { "moduleIds": [ "miniverb", - "tapeecho", - "euclid", - "repitch", - "tapehead", - "everb", - "previewvol", - "cc-map", - "vector", - "recorder-loop-fix", - "poly8", + "quantizer", + "synth", + "sidechain-compressor", "output-matrix" ], "keepStockFx2": true, @@ -4303,10 +4299,8 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", - "LO-FI", - "EUCLID", - "TAPEHEAD" + "SIDECHAIN_COMPRESSOR", + "LO-FI" ], "fx2": [ "FILTER", @@ -4317,34 +4311,24 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "MINIVERB", - "TAPE ECHO", - "EUCLID", - "TAPEHEAD", - "EVERB" + "PLATE REV", + "MINIVERB" ] }, "native": { - "refused": "past the stock zero run (or into the long chooser list)" + "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400449be -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" }, "result": "refused" }, { "moduleIds": [ "miniverb", - "tapeecho", - "euclid", - "repitch", - "tapehead", - "everb", - "previewvol", - "cc-map", - "vector", - "recorder-loop-fix", - "poly8", + "quantizer", + "synth", + "sidechain-compressor", "output-matrix" ], "keepStockFx2": false, @@ -4358,34 +4342,26 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", - "LO-FI", - "EUCLID", - "TAPEHEAD" + "SIDECHAIN_COMPRESSOR", + "LO-FI" ], "fx2": [ "MINIVERB", - "TAPE ECHO", - "EUCLID", - "TAPEHEAD", - "EVERB" + "SIDECHAIN_COMPRESSOR" ] }, "native": { - "refused": "past the stock zero run (or into the long chooser list)" + "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400449be -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" }, "result": "refused" }, { "moduleIds": [ - "euclid", + "miniverb", + "tapeecho", + "repitch", "airwindows-chorus", - "synth", "sidechain-compressor", - "vector", - "playmodes", - "recorder-loop-fix", - "poly8", "output-matrix" ], "keepStockFx2": true, @@ -4400,8 +4376,7 @@ "SPATIALIZER", "COMB FILTER", "SIDECHAIN_COMPRESSOR", - "LO-FI", - "EUCLID" + "LO-FI" ], "fx2": [ "FILTER", @@ -4415,25 +4390,25 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "EUCLID", + "MINIVERB", + "TAPE ECHO", "AIR CHORUS" ] }, "native": { - "refused": "label formatters do not fit: EUCLID slot 6 needs 350 B; the clone window ends at 0x400d7bbc and the overflow run at 0x400d2ce0 (next free 0x400d2ce0)" + "bytes": 1216283, + "osSha256": "231875120009270ed3a3e32533f4aaec91c62e73bc2e425a6b7601c92022c630", + "maskedOsSha256": "f10dd98d7025c7bbe8a4b951b69a4b9dac9be905443cc75089df0906d3674d19" }, - "result": "refused" + "result": "masked" }, { "moduleIds": [ - "euclid", + "miniverb", + "tapeecho", + "repitch", "airwindows-chorus", - "synth", "sidechain-compressor", - "vector", - "playmodes", - "recorder-loop-fix", - "poly8", "output-matrix" ], "keepStockFx2": false, @@ -4448,37 +4423,38 @@ "SPATIALIZER", "COMB FILTER", "SIDECHAIN_COMPRESSOR", - "LO-FI", - "EUCLID" + "LO-FI" ], "fx2": [ - "EUCLID", + "MINIVERB", + "TAPE ECHO", "AIR CHORUS", "SIDECHAIN_COMPRESSOR" ] }, "native": { - "refused": "label formatters do not fit: EUCLID slot 7 needs 72 B; the clone window ends at 0x400d7c3c and the overflow run at 0x400d2ce0 (next free 0x400d2ce0)" + "bytes": 1216283, + "osSha256": "98439fb29a05e242fd08d934a8573e6686c83f888fb63e2dad2fe6618a592968", + "maskedOsSha256": "c03be0fd2b4cca52070b72adda658fc75901cb76871644812212673c2e248560" }, - "result": "refused" + "result": "masked" }, { "moduleIds": [ "miniverb", "tapeecho", - "euclid", "repitch", "tapehead", "airwindows-chorus", "everb", + "bbd", "usb-audio-out-tracks-main-cue", + "quantizer", "synth", + "previewvol", "cc-map", - "sidechain-compressor", - "playmodes", - "mute-modes", + "vector", "recorder-loop-fix", - "poly8", "output-matrix" ], "keepStockFx2": true, @@ -4492,9 +4468,8 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", - "EUCLID", "TAPEHEAD" ], "fx2": [ @@ -4506,19 +4481,19 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", "DELAY", "MINIVERB", "TAPE ECHO", - "EUCLID", "TAPEHEAD", "AIR CHORUS", - "EVERB" + "EVERB", + "BBD" ] }, "native": { - "refused": "CC->FX2/FX1 page-2 cave + dispatch repoint: 724 B fits neither the clone window (from 0x400d7a80) nor the overflow run" + "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400449be -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n poke site: synth (poke machine chooser has six rows, FM SYNTH the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP selector has six rows) and vector (poke VECTOR is machine chooser row six) both claim 0x400585fa -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP name lookup admits FM) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: synth (poke machine chooser draws FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: synth (poke machine chooser highlights FM) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: synth (poke machine chooser persists FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" }, "result": "refused" }, @@ -4526,19 +4501,18 @@ "moduleIds": [ "miniverb", "tapeecho", - "euclid", "repitch", "tapehead", "airwindows-chorus", "everb", + "bbd", "usb-audio-out-tracks-main-cue", + "quantizer", "synth", + "previewvol", "cc-map", - "sidechain-compressor", - "playmodes", - "mute-modes", + "vector", "recorder-loop-fix", - "poly8", "output-matrix" ], "keepStockFx2": false, @@ -4552,36 +4526,41 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", - "EUCLID", "TAPEHEAD" ], "fx2": [ "MINIVERB", "TAPE ECHO", - "EUCLID", "TAPEHEAD", "AIR CHORUS", "EVERB", - "SIDECHAIN_COMPRESSOR" + "BBD" ] }, "native": { - "refused": "CC->FX2/FX1 page-2 cave + dispatch repoint: 724 B fits neither the clone window (from 0x400d7a80) nor the overflow run" + "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400449be -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n poke site: synth (poke machine chooser has six rows, FM SYNTH the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP selector has six rows) and vector (poke VECTOR is machine chooser row six) both claim 0x400585fa -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP name lookup admits FM) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: synth (poke machine chooser draws FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: synth (poke machine chooser highlights FM) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: synth (poke machine chooser persists FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" }, "result": "refused" }, { "moduleIds": [ + "miniverb", "tapeecho", - "euclid", + "repitch", + "tapehead", + "airwindows-chorus", "everb", + "bbd", + "usb-audio-out-tracks-main-cue", "quantizer", "synth", + "previewvol", "cc-map", + "sidechain-compressor", "vector", - "mute-modes", + "playmodes", "output-matrix" ], "keepStockFx2": true, @@ -4595,9 +4574,9 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", - "EUCLID" + "TAPEHEAD" ], "fx2": [ "FILTER", @@ -4608,29 +4587,39 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", + "MINIVERB", "TAPE ECHO", - "EUCLID", - "EVERB" + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD" ] }, "native": { - "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n hook site: quantizer (detour CHROMATIC drawer: the octave number beside the keyboard is qz_oct on a synth track, the position 0 / 1 / -1 on a sample track, with ROOT's name before it when a scale is on) and synth (detour CHROMATIC drawer common argument push preserves MIDI stack; audio octave is qz_oct on a synth track, the position 0 / 1 / -1 on a sample track, with ROOT's name before it when a scale is on) both claim 0x400449be -- both rewrite the same instruction\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n poke site: synth (poke machine chooser has six rows, FM SYNTH the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP selector has six rows) and vector (poke VECTOR is machine chooser row six) both claim 0x400585fa -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP name lookup admits FM) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: synth (poke machine chooser draws FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: synth (poke machine chooser highlights FM) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: synth (poke machine chooser persists FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" + "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400449be -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n poke site: synth (poke machine chooser has six rows, FM SYNTH the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP selector has six rows) and vector (poke VECTOR is machine chooser row six) both claim 0x400585fa -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP name lookup admits FM) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: synth (poke machine chooser draws FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: synth (poke machine chooser highlights FM) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: synth (poke machine chooser persists FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" }, "result": "refused" }, { "moduleIds": [ + "miniverb", "tapeecho", - "euclid", + "repitch", + "tapehead", + "airwindows-chorus", "everb", + "bbd", + "usb-audio-out-tracks-main-cue", "quantizer", "synth", + "previewvol", "cc-map", + "sidechain-compressor", "vector", - "mute-modes", + "playmodes", "output-matrix" ], "keepStockFx2": false, @@ -4644,38 +4633,32 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", - "EUCLID" + "TAPEHEAD" ], "fx2": [ + "MINIVERB", "TAPE ECHO", - "EUCLID", - "EVERB" + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "SIDECHAIN_COMPRESSOR" ] }, "native": { - "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n hook site: quantizer (detour CHROMATIC drawer: the octave number beside the keyboard is qz_oct on a synth track, the position 0 / 1 / -1 on a sample track, with ROOT's name before it when a scale is on) and synth (detour CHROMATIC drawer common argument push preserves MIDI stack; audio octave is qz_oct on a synth track, the position 0 / 1 / -1 on a sample track, with ROOT's name before it when a scale is on) both claim 0x400449be -- both rewrite the same instruction\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n poke site: synth (poke machine chooser has six rows, FM SYNTH the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP selector has six rows) and vector (poke VECTOR is machine chooser row six) both claim 0x400585fa -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP name lookup admits FM) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: synth (poke machine chooser draws FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: synth (poke machine chooser highlights FM) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: synth (poke machine chooser persists FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" + "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400449be -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n poke site: synth (poke machine chooser has six rows, FM SYNTH the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP selector has six rows) and vector (poke VECTOR is machine chooser row six) both claim 0x400585fa -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP name lookup admits FM) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: synth (poke machine chooser draws FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: synth (poke machine chooser highlights FM) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: synth (poke machine chooser persists FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" }, "result": "refused" }, { "moduleIds": [ - "miniverb", - "tapeecho", - "euclid", "tapehead", "airwindows-chorus", - "everb", "usb-audio-out-tracks-main-cue", - "quantizer", "synth", "previewvol", - "cc-map", - "playmodes", - "mute-modes", - "recorder-loop-fix", - "poly8", "output-matrix" ], "keepStockFx2": true, @@ -4691,7 +4674,6 @@ "COMB FILTER", "COMPRESSOR", "LO-FI", - "EUCLID", "TAPEHEAD" ], "fx2": [ @@ -4706,36 +4688,25 @@ "COMPRESSOR", "LO-FI", "DELAY", - "MINIVERB", - "TAPE ECHO", - "EUCLID", + "PLATE REV", "TAPEHEAD", - "AIR CHORUS", - "EVERB" + "AIR CHORUS" ] }, "native": { - "refused": "seek-bind counter cave not free" + "bytes": 1129036, + "osSha256": "86705451f57977655e18c4d0a39f508cad67ab51cbb4f5206b5f7f04e8df2301", + "maskedOsSha256": "c406b3943c817b0c5fdf8f697c4eb2f7645f6bc57d9a97ec65038da873fec6be" }, - "result": "refused" + "result": "masked" }, { "moduleIds": [ - "miniverb", - "tapeecho", - "euclid", "tapehead", "airwindows-chorus", - "everb", "usb-audio-out-tracks-main-cue", - "quantizer", "synth", "previewvol", - "cc-map", - "playmodes", - "mute-modes", - "recorder-loop-fix", - "poly8", "output-matrix" ], "keepStockFx2": false, @@ -4751,31 +4722,38 @@ "COMB FILTER", "COMPRESSOR", "LO-FI", - "EUCLID", "TAPEHEAD" ], "fx2": [ - "MINIVERB", - "TAPE ECHO", - "EUCLID", "TAPEHEAD", - "AIR CHORUS", - "EVERB" + "AIR CHORUS" ] }, "native": { - "refused": "spacing cave not free" + "bytes": 1129036, + "osSha256": "ee338751cbcb51ef3568647416eb5ee49fb1bbdf343873d719e062d0c29b22ab", + "maskedOsSha256": "1756b83107deeeacb7cb5a572a2eea952ce37d2c9530a0f4496945e04bebc7b7" }, - "result": "refused" + "result": "masked" }, { "moduleIds": [ + "miniverb", + "tapeecho", "repitch", + "tapehead", "airwindows-chorus", "everb", - "synth", + "bbd", + "usb-audio-out-tracks-main-cue", + "quantizer", "previewvol", "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", "output-matrix" ], "keepStockFx2": true, @@ -4789,8 +4767,9 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", - "LO-FI" + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "TAPEHEAD" ], "fx2": [ "FILTER", @@ -4801,26 +4780,40 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", + "MINIVERB", + "TAPE ECHO", + "TAPEHEAD", "AIR CHORUS", - "EVERB" + "EVERB", + "BBD" ] }, "native": { - "refused": "payload A: OUTPUT MATRIX overruns the region (3152 > 2724 words)" + "refused": "MUTE_MODES mm_softmute at 0x400d7c00 not free" }, "result": "refused" }, { "moduleIds": [ + "miniverb", + "tapeecho", "repitch", + "tapehead", "airwindows-chorus", "everb", - "synth", + "bbd", + "usb-audio-out-tracks-main-cue", + "quantizer", "previewvol", "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", "output-matrix" ], "keepStockFx2": false, @@ -4834,32 +4827,42 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", - "LO-FI" + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "TAPEHEAD" ], "fx2": [ + "MINIVERB", + "TAPE ECHO", + "TAPEHEAD", "AIR CHORUS", - "EVERB" + "EVERB", + "BBD", + "SIDECHAIN_COMPRESSOR" ] }, "native": { - "refused": "payload A: OUTPUT MATRIX overruns the region (3152 > 2724 words)" + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7a80 not free" }, "result": "refused" }, { "moduleIds": [ "miniverb", + "tapeecho", + "euclid", "repitch", "tapehead", "airwindows-chorus", "everb", + "bbd", "usb-audio-out-tracks-main-cue", "quantizer", "synth", - "cc-map", - "sidechain-compressor", - "poly8", + "previewvol", + "vector", + "playmodes", + "recorder-loop-fix", "output-matrix" ], "keepStockFx2": true, @@ -4873,8 +4876,9 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", + "EUCLID", "TAPEHEAD" ], "fx2": [ @@ -4886,33 +4890,40 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", "DELAY", "MINIVERB", + "TAPE ECHO", + "EUCLID", "TAPEHEAD", "AIR CHORUS", - "EVERB" + "EVERB", + "BBD" ] }, "native": { - "refused": "payload A: EVERB overruns the region (3337 > 2724 words)" + "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400449be -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n poke site: synth (poke machine chooser has six rows, FM SYNTH the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP selector has six rows) and vector (poke VECTOR is machine chooser row six) both claim 0x400585fa -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP name lookup admits FM) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: synth (poke machine chooser draws FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: synth (poke machine chooser highlights FM) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: synth (poke machine chooser persists FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" }, "result": "refused" }, { "moduleIds": [ "miniverb", + "tapeecho", + "euclid", "repitch", "tapehead", "airwindows-chorus", "everb", + "bbd", "usb-audio-out-tracks-main-cue", "quantizer", "synth", - "cc-map", - "sidechain-compressor", - "poly8", + "previewvol", + "vector", + "playmodes", + "recorder-loop-fix", "output-matrix" ], "keepStockFx2": false, @@ -4926,27 +4937,34 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", + "EUCLID", "TAPEHEAD" ], "fx2": [ "MINIVERB", + "TAPE ECHO", + "EUCLID", "TAPEHEAD", "AIR CHORUS", "EVERB", - "SIDECHAIN_COMPRESSOR" + "BBD" ] }, "native": { - "refused": "payload A: EVERB overruns the region (3337 > 2724 words)" + "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400449be -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n poke site: synth (poke machine chooser has six rows, FM SYNTH the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP selector has six rows) and vector (poke VECTOR is machine chooser row six) both claim 0x400585fa -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP name lookup admits FM) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: synth (poke machine chooser draws FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: synth (poke machine chooser highlights FM) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: synth (poke machine chooser persists FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" }, "result": "refused" }, { "moduleIds": [ + "miniverb", + "euclid", + "bbd", + "vector", + "playmodes", "mute-modes", - "recorder-loop-fix", "output-matrix" ], "keepStockFx2": true, @@ -4961,7 +4979,8 @@ "SPATIALIZER", "COMB FILTER", "COMPRESSOR", - "LO-FI" + "LO-FI", + "EUCLID" ], "fx2": [ "FILTER", @@ -4975,22 +4994,26 @@ "COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", - "DARK REV" + "MINIVERB", + "EUCLID", + "BBD" ] }, "native": { - "bytes": 1114033, - "osSha256": "ab05c0b68e487c41a4b7c7177b467dd14856df968ee4f767e2b527319959f92c", - "maskedOsSha256": "391708006f62623f105896ccaf9fccd983fffd6caafcc43d93ad9769f7708a4f", - "platformArena": true + "bytes": 1129383, + "osSha256": "27db1214b1f7ca59f99daab2fa93d206ca6dffa29e368d97df1922260cd48abf", + "maskedOsSha256": "6fafb7304c6295e8ee2b93016f222cfd6ff536853296b036a3b271d84e1edb51" }, "result": "masked" }, { "moduleIds": [ + "miniverb", + "euclid", + "bbd", + "vector", + "playmodes", "mute-modes", - "recorder-loop-fix", "output-matrix" ], "keepStockFx2": false, @@ -5005,25 +5028,39 @@ "SPATIALIZER", "COMB FILTER", "COMPRESSOR", - "LO-FI" + "LO-FI", + "EUCLID" ], - "fx2": [] + "fx2": [ + "MINIVERB", + "EUCLID", + "BBD" + ] }, "native": { - "bytes": 1114033, - "osSha256": "6269341f4b56565ab5903e1d76489b16eba290996af7e5fe88e466ed1b85877e", - "maskedOsSha256": "d61b083808a369f4b6796786766455560ac58da3c222ba275fc0c88daf3065ba", - "platformArena": true + "bytes": 1129383, + "osSha256": "5f27ed85e769bae2a97f7540e2b255259d0528c2e4bc52541c140a6417043cc6", + "maskedOsSha256": "ec52d0e603e4140cdcdf4ca0f7597e43c387fe64fcc7b35e54c23b891d93211e" }, "result": "masked" }, { "moduleIds": [ - "airwindows-chorus", + "tapeecho", + "euclid", + "repitch", + "tapehead", + "everb", + "bbd", + "usb-audio-out-tracks-main-cue", "quantizer", + "previewvol", + "cc-map", "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", "recorder-loop-fix", - "poly8", "output-matrix" ], "keepStockFx2": true, @@ -5038,7 +5075,9 @@ "SPATIALIZER", "COMB FILTER", "SIDECHAIN_COMPRESSOR", - "LO-FI" + "LO-FI", + "EUCLID", + "TAPEHEAD" ], "fx2": [ "FILTER", @@ -5052,25 +5091,35 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", - "AIR CHORUS" + "TAPE ECHO", + "EUCLID", + "TAPEHEAD", + "EVERB", + "BBD" ] }, "native": { - "bytes": 1129013, - "osSha256": "89e34289a1ad86366eb12b8626fceb4650abe87b4bce997ccef5757a2584ed86", - "maskedOsSha256": "d396c5531e374584a224353ef67cd4011e2cec95f80d33cc5568b3f7695682b6", - "platformArena": true + "refused": "MUTE_MODES mm_softmute at 0x400d7a80 not free" }, - "result": "masked" + "result": "refused" }, { "moduleIds": [ - "airwindows-chorus", + "tapeecho", + "euclid", + "repitch", + "tapehead", + "everb", + "bbd", + "usb-audio-out-tracks-main-cue", "quantizer", + "previewvol", + "cc-map", "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", "recorder-loop-fix", - "poly8", "output-matrix" ], "keepStockFx2": false, @@ -5085,32 +5134,28 @@ "SPATIALIZER", "COMB FILTER", "SIDECHAIN_COMPRESSOR", - "LO-FI" + "LO-FI", + "EUCLID", + "TAPEHEAD" ], "fx2": [ - "AIR CHORUS", + "TAPE ECHO", + "EUCLID", + "TAPEHEAD", + "EVERB", + "BBD", "SIDECHAIN_COMPRESSOR" ] }, "native": { - "bytes": 1129013, - "osSha256": "2f5d5bf31c2aaf8d7cc1d949ff5a60c05bfe0331669a98ce32eac6292c718d96", - "maskedOsSha256": "e61b6f25d5ffa9d56de765fa49f655a5b1b79549e9f74fe3f04f7125760bdf40", - "platformArena": true + "refused": "MUTE_MODES mm_softmute at 0x400d7a80 not free" }, - "result": "masked" + "result": "refused" }, { "moduleIds": [ - "miniverb", - "tapeecho", - "tapehead", - "everb", - "quantizer", - "synth", + "usb-audio-out-tracks-main-cue", "cc-map", - "mute-modes", - "poly8", "output-matrix" ], "keepStockFx2": true, @@ -5125,8 +5170,7 @@ "SPATIALIZER", "COMB FILTER", "COMPRESSOR", - "LO-FI", - "TAPEHEAD" + "LO-FI" ], "fx2": [ "FILTER", @@ -5140,28 +5184,21 @@ "COMPRESSOR", "LO-FI", "DELAY", - "MINIVERB", - "TAPE ECHO", - "TAPEHEAD", - "EVERB" + "PLATE REV", + "DARK REV" ] }, "native": { - "refused": "label formatters do not fit: EVERB slot 8 needs 52 B; the clone window ends at 0x400d7bbc and the overflow run at 0x400d2ce0 (next free 0x400d2ce0)" + "bytes": 1116733, + "osSha256": "9357186fd1f6780ebaaa89caf97fde9962c203e59bb47a6d48fa635effd6c15d", + "maskedOsSha256": "3e72fbad419da50ed6acc649cf5832b84864af6685e3f9fcfc525767fd68d734" }, - "result": "refused" + "result": "masked" }, { "moduleIds": [ - "miniverb", - "tapeecho", - "tapehead", - "everb", - "quantizer", - "synth", + "usb-audio-out-tracks-main-cue", "cc-map", - "mute-modes", - "poly8", "output-matrix" ], "keepStockFx2": false, @@ -5176,36 +5213,27 @@ "SPATIALIZER", "COMB FILTER", "COMPRESSOR", - "LO-FI", - "TAPEHEAD" + "LO-FI" ], - "fx2": [ - "MINIVERB", - "TAPE ECHO", - "TAPEHEAD", - "EVERB" - ] + "fx2": [] }, "native": { - "refused": "payload A: OUTPUT MATRIX overruns the region (3316 > 2724 words)" + "bytes": 1116733, + "osSha256": "e088c0a5c3bff08ee1ea8ae065673bcd5de53f2df104e742d1eea508b440dbe2", + "maskedOsSha256": "fb7406aedd0158d4359d6e3c1ffa6062792dd892ff4bd758bf92455975f98762" }, - "result": "refused" + "result": "masked" }, { "moduleIds": [ - "euclid", + "repitch", "tapehead", - "airwindows-chorus", - "everb", - "usb-audio-out-tracks-main-cue", - "previewvol", + "quantizer", "cc-map", - "sidechain-compressor", "vector", "playmodes", "mute-modes", "recorder-loop-fix", - "poly8", "output-matrix" ], "keepStockFx2": true, @@ -5219,9 +5247,8 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", - "EUCLID", "TAPEHEAD" ], "fx2": [ @@ -5233,35 +5260,28 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", "DELAY", - "EUCLID", - "TAPEHEAD", - "AIR CHORUS", - "EVERB" + "DARK REV", + "TAPEHEAD" ] }, "native": { - "refused": "past the stock zero run (or into the long chooser list)" + "refused": "hold cave (crossfade, +0x48): 110 B fits neither the clone window (from 0x400d7b80) nor the overflow run" }, "result": "refused" }, { "moduleIds": [ - "euclid", + "repitch", "tapehead", - "airwindows-chorus", - "everb", - "usb-audio-out-tracks-main-cue", - "previewvol", + "quantizer", "cc-map", - "sidechain-compressor", "vector", "playmodes", "mute-modes", "recorder-loop-fix", - "poly8", "output-matrix" ], "keepStockFx2": false, @@ -5275,34 +5295,26 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", - "EUCLID", "TAPEHEAD" ], "fx2": [ - "EUCLID", - "TAPEHEAD", - "AIR CHORUS", - "EVERB", - "SIDECHAIN_COMPRESSOR" + "TAPEHEAD" ] }, "native": { - "refused": "past the stock zero run (or into the long chooser list)" + "refused": "hold cave (crossfade, +0x4c): 110 B fits neither the clone window (from 0x400d7c00) nor the overflow run" }, "result": "refused" }, { "moduleIds": [ "miniverb", + "tapeecho", "euclid", - "repitch", - "everb", - "usb-audio-out-tracks-main-cue", - "synth", - "cc-map", - "vector", + "bbd", + "previewvol", "output-matrix" ], "keepStockFx2": true, @@ -5333,25 +5345,25 @@ "LO-FI", "DELAY", "MINIVERB", + "TAPE ECHO", "EUCLID", - "EVERB" + "BBD" ] }, "native": { - "refused": "remix 'octamod-composition-proof' has colliding modules:\n hook site: synth and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: synth (poke machine chooser has six rows, FM SYNTH the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP selector has six rows) and vector (poke VECTOR is machine chooser row six) both claim 0x400585fa -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP name lookup admits FM) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: synth (poke machine chooser draws FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: synth (poke machine chooser highlights FM) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: synth (poke machine chooser persists FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes" + "bytes": 1218413, + "osSha256": "1fa3ef8c4f9adafd484ca41fa7e698d72a69d33d51ebfe677d2557ed2bcfabce", + "maskedOsSha256": "133e69363f82131c50c8a311ad6d1a19e527048deac1f634f60832140f0ef856" }, - "result": "refused" + "result": "masked" }, { "moduleIds": [ "miniverb", + "tapeecho", "euclid", - "repitch", - "everb", - "usb-audio-out-tracks-main-cue", - "synth", - "cc-map", - "vector", + "bbd", + "previewvol", "output-matrix" ], "keepStockFx2": false, @@ -5371,31 +5383,29 @@ ], "fx2": [ "MINIVERB", + "TAPE ECHO", "EUCLID", - "EVERB" + "BBD" ] }, "native": { - "refused": "remix 'octamod-composition-proof' has colliding modules:\n hook site: synth and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: synth (poke machine chooser has six rows, FM SYNTH the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP selector has six rows) and vector (poke VECTOR is machine chooser row six) both claim 0x400585fa -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP name lookup admits FM) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: synth (poke machine chooser draws FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: synth (poke machine chooser highlights FM) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: synth (poke machine chooser persists FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes" + "bytes": 1218413, + "osSha256": "9f4d811d2c53850d572bab389201edddfef37d1179e0480523f203c5133e4c37", + "maskedOsSha256": "c912bfa131baf9928942429d1e9bce643ec1f8757435fb1a9510316408e7cce3" }, - "result": "refused" + "result": "masked" }, { "moduleIds": [ - "miniverb", "tapeecho", - "repitch", + "euclid", "tapehead", - "airwindows-chorus", - "everb", - "quantizer", - "synth", + "bbd", "previewvol", - "cc-map", + "sidechain-compressor", "vector", "playmodes", "recorder-loop-fix", - "poly8", "output-matrix" ], "keepStockFx2": true, @@ -5409,8 +5419,9 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", + "EUCLID", "TAPEHEAD" ], "fx2": [ @@ -5422,37 +5433,31 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "MINIVERB", "TAPE ECHO", + "EUCLID", "TAPEHEAD", - "AIR CHORUS", - "EVERB" + "BBD" ] }, "native": { - "refused": "past the stock zero run (or into the long chooser list)" + "refused": "payload A: SIDECHAIN_COMPRESSOR overruns the region (2993 > 2724 words)" }, "result": "refused" }, { "moduleIds": [ - "miniverb", "tapeecho", - "repitch", + "euclid", "tapehead", - "airwindows-chorus", - "everb", - "quantizer", - "synth", + "bbd", "previewvol", - "cc-map", + "sidechain-compressor", "vector", "playmodes", "recorder-loop-fix", - "poly8", "output-matrix" ], "keepStockFx2": false, @@ -5466,20 +5471,21 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", + "EUCLID", "TAPEHEAD" ], "fx2": [ - "MINIVERB", "TAPE ECHO", + "EUCLID", "TAPEHEAD", - "AIR CHORUS", - "EVERB" + "BBD", + "SIDECHAIN_COMPRESSOR" ] }, "native": { - "refused": "past the stock zero run (or into the long chooser list)" + "refused": "payload A: SIDECHAIN_COMPRESSOR overruns the region (2993 > 2724 words)" }, "result": "refused" }, @@ -5487,11 +5493,10 @@ "moduleIds": [ "tapeecho", "euclid", - "tapehead", + "repitch", "everb", - "quantizer", - "synth", "previewvol", + "cc-map", "mute-modes", "output-matrix" ], @@ -5508,8 +5513,7 @@ "COMB FILTER", "COMPRESSOR", "LO-FI", - "EUCLID", - "TAPEHEAD" + "EUCLID" ], "fx2": [ "FILTER", @@ -5525,12 +5529,11 @@ "DELAY", "TAPE ECHO", "EUCLID", - "TAPEHEAD", "EVERB" ] }, "native": { - "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n hook site: quantizer (detour CHROMATIC drawer: the octave number beside the keyboard is qz_oct on a synth track, the position 0 / 1 / -1 on a sample track, with ROOT's name before it when a scale is on) and synth (detour CHROMATIC drawer common argument push preserves MIDI stack; audio octave is qz_oct on a synth track, the position 0 / 1 / -1 on a sample track, with ROOT's name before it when a scale is on) both claim 0x400449be -- both rewrite the same instruction\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" + "refused": "label formatters do not fit: EUCLID slot 8 needs 290 B; the clone window ends at 0x400d7bbc and the overflow run at 0x400d2ce0 (next free 0x400d2bc8)" }, "result": "refused" }, @@ -5538,11 +5541,10 @@ "moduleIds": [ "tapeecho", "euclid", - "tapehead", + "repitch", "everb", - "quantizer", - "synth", "previewvol", + "cc-map", "mute-modes", "output-matrix" ], @@ -5559,38 +5561,27 @@ "COMB FILTER", "COMPRESSOR", "LO-FI", - "EUCLID", - "TAPEHEAD" + "EUCLID" ], "fx2": [ "TAPE ECHO", "EUCLID", - "TAPEHEAD", "EVERB" ] }, "native": { - "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n hook site: quantizer (detour CHROMATIC drawer: the octave number beside the keyboard is qz_oct on a synth track, the position 0 / 1 / -1 on a sample track, with ROOT's name before it when a scale is on) and synth (detour CHROMATIC drawer common argument push preserves MIDI stack; audio octave is qz_oct on a synth track, the position 0 / 1 / -1 on a sample track, with ROOT's name before it when a scale is on) both claim 0x400449be -- both rewrite the same instruction\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" + "refused": "MUTE_MODES table PERSONALIZE labels at 0x400d7c00 not free" }, "result": "refused" }, { "moduleIds": [ - "miniverb", "tapeecho", - "euclid", - "repitch", - "tapehead", "airwindows-chorus", "everb", - "quantizer", "previewvol", - "cc-map", - "sidechain-compressor", - "vector", "mute-modes", "recorder-loop-fix", - "poly8", "output-matrix" ], "keepStockFx2": true, @@ -5604,10 +5595,8 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", - "LO-FI", - "EUCLID", - "TAPEHEAD" + "COMPRESSOR", + "LO-FI" ], "fx2": [ "FILTER", @@ -5618,39 +5607,27 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", "DELAY", - "MINIVERB", "TAPE ECHO", - "EUCLID", - "TAPEHEAD", "AIR CHORUS", "EVERB" ] }, "native": { - "refused": "CC->FX2/FX1 page-2 cave + dispatch repoint: 724 B fits neither the clone window (from 0x400d7b00) nor the overflow run" + "refused": "MUTE_MODES table PERSONALIZE labels at 0x400d7b80 not free" }, "result": "refused" }, { "moduleIds": [ - "miniverb", "tapeecho", - "euclid", - "repitch", - "tapehead", "airwindows-chorus", "everb", - "quantizer", "previewvol", - "cc-map", - "sidechain-compressor", - "vector", "mute-modes", "recorder-loop-fix", - "poly8", "output-matrix" ], "keepStockFx2": false, @@ -5664,33 +5641,34 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", - "LO-FI", - "EUCLID", - "TAPEHEAD" + "COMPRESSOR", + "LO-FI" ], "fx2": [ - "MINIVERB", "TAPE ECHO", - "EUCLID", - "TAPEHEAD", "AIR CHORUS", - "EVERB", - "SIDECHAIN_COMPRESSOR" + "EVERB" ] }, "native": { - "refused": "CC->FX2/FX1 page-2 cave + dispatch repoint: 724 B fits neither the clone window (from 0x400d7b00) nor the overflow run" + "refused": "MUTE_MODES table PERSONALIZE getters at 0x400d7c00 not free" }, "result": "refused" }, { "moduleIds": [ + "miniverb", "tapeecho", + "euclid", + "repitch", "tapehead", - "quantizer", + "airwindows-chorus", + "everb", + "bbd", "synth", - "previewvol", + "cc-map", + "playmodes", + "recorder-loop-fix", "output-matrix" ], "keepStockFx2": true, @@ -5706,6 +5684,7 @@ "COMB FILTER", "COMPRESSOR", "LO-FI", + "EUCLID", "TAPEHEAD" ], "fx2": [ @@ -5720,23 +5699,34 @@ "COMPRESSOR", "LO-FI", "DELAY", - "DARK REV", + "MINIVERB", "TAPE ECHO", - "TAPEHEAD" + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD" ] }, "native": { - "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n hook site: quantizer (detour CHROMATIC drawer: the octave number beside the keyboard is qz_oct on a synth track, the position 0 / 1 / -1 on a sample track, with ROOT's name before it when a scale is on) and synth (detour CHROMATIC drawer common argument push preserves MIDI stack; audio octave is qz_oct on a synth track, the position 0 / 1 / -1 on a sample track, with ROOT's name before it when a scale is on) both claim 0x400449be -- both rewrite the same instruction\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" + "refused": "CC->FX2/FX1 page-2 cave + dispatch repoint: 724 B fits neither the clone window (from 0x400d7b00) nor the overflow run" }, "result": "refused" }, { "moduleIds": [ + "miniverb", "tapeecho", + "euclid", + "repitch", "tapehead", - "quantizer", + "airwindows-chorus", + "everb", + "bbd", "synth", - "previewvol", + "cc-map", + "playmodes", + "recorder-loop-fix", "output-matrix" ], "keepStockFx2": false, @@ -5752,25 +5742,34 @@ "COMB FILTER", "COMPRESSOR", "LO-FI", + "EUCLID", "TAPEHEAD" ], "fx2": [ + "MINIVERB", "TAPE ECHO", - "TAPEHEAD" + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD" ] }, "native": { - "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n hook site: quantizer (detour CHROMATIC drawer: the octave number beside the keyboard is qz_oct on a synth track, the position 0 / 1 / -1 on a sample track, with ROOT's name before it when a scale is on) and synth (detour CHROMATIC drawer common argument push preserves MIDI stack; audio octave is qz_oct on a synth track, the position 0 / 1 / -1 on a sample track, with ROOT's name before it when a scale is on) both claim 0x400449be -- both rewrite the same instruction\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" + "refused": "CC->FX2/FX1 page-2 cave + dispatch repoint: 724 B fits neither the clone window (from 0x400d7b00) nor the overflow run" }, "result": "refused" }, { "moduleIds": [ "repitch", + "airwindows-chorus", + "everb", + "bbd", "quantizer", "synth", - "cc-map", "vector", + "mute-modes", "output-matrix" ], "keepStockFx2": true, @@ -5799,22 +5798,26 @@ "COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", - "DARK REV" + "AIR CHORUS", + "EVERB", + "BBD" ] }, "native": { - "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n hook site: quantizer (detour CHROMATIC drawer: the octave number beside the keyboard is qz_oct on a synth track, the position 0 / 1 / -1 on a sample track, with ROOT's name before it when a scale is on) and synth (detour CHROMATIC drawer common argument push preserves MIDI stack; audio octave is qz_oct on a synth track, the position 0 / 1 / -1 on a sample track, with ROOT's name before it when a scale is on) both claim 0x400449be -- both rewrite the same instruction\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n poke site: synth (poke machine chooser has six rows, FM SYNTH the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP selector has six rows) and vector (poke VECTOR is machine chooser row six) both claim 0x400585fa -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP name lookup admits FM) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: synth (poke machine chooser draws FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: synth (poke machine chooser highlights FM) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: synth (poke machine chooser persists FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" + "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400449be -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n poke site: synth (poke machine chooser has six rows, FM SYNTH the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP selector has six rows) and vector (poke VECTOR is machine chooser row six) both claim 0x400585fa -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP name lookup admits FM) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: synth (poke machine chooser draws FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: synth (poke machine chooser highlights FM) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: synth (poke machine chooser persists FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" }, "result": "refused" }, { "moduleIds": [ "repitch", + "airwindows-chorus", + "everb", + "bbd", "quantizer", "synth", - "cc-map", "vector", + "mute-modes", "output-matrix" ], "keepStockFx2": false, @@ -5831,10 +5834,14 @@ "COMPRESSOR", "LO-FI" ], - "fx2": [] + "fx2": [ + "AIR CHORUS", + "EVERB", + "BBD" + ] }, "native": { - "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n hook site: quantizer (detour CHROMATIC drawer: the octave number beside the keyboard is qz_oct on a synth track, the position 0 / 1 / -1 on a sample track, with ROOT's name before it when a scale is on) and synth (detour CHROMATIC drawer common argument push preserves MIDI stack; audio octave is qz_oct on a synth track, the position 0 / 1 / -1 on a sample track, with ROOT's name before it when a scale is on) both claim 0x400449be -- both rewrite the same instruction\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n poke site: synth (poke machine chooser has six rows, FM SYNTH the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP selector has six rows) and vector (poke VECTOR is machine chooser row six) both claim 0x400585fa -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP name lookup admits FM) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: synth (poke machine chooser draws FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: synth (poke machine chooser highlights FM) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: synth (poke machine chooser persists FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" + "refused": "remix 'octamod-composition-proof' has colliding modules:\n ColdFire cave: quantizer's linked unit qzk and synth's linked unit fm_qzk both claim 0x400d2cb0\n ColdFire cave: quantizer's linked unit qzs and synth's linked unit fm_qzs both claim 0x400d2ca8\n hook site: quantizer and synth both claim 0x40055170 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050e60 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc58 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbde -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fbfe -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fc94 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fce0 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd06 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x4004fd20 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40050254 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40045918 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40044968 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400449be -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40065bca -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400866cc -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400867a2 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x400888aa -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40010212 -- the second jmp overwrites the first\n hook site: quantizer and synth both claim 0x40025ac2 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: synth and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: quantizer (table ref SEQUENCER labels) and synth (table ref SEQUENCER labels) both claim 0x40065bd8 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER getters) and synth (table ref SEQUENCER getters) both claim 0x40065bde -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065cc4 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d3e -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d58 -- both rewrite the same bytes\n poke site: quantizer (table ref SEQUENCER setters) and synth (table ref SEQUENCER setters) both claim 0x40065d72 -- both rewrite the same bytes\n poke site: quantizer (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) and synth (poke SEQUENCER window: 3 -> 6 rows (SCALE, ROOT, GLIDE; 3 visible, scrolls)) both claim 0x40065c7c -- both rewrite the same bytes\n poke site: synth (poke machine chooser has six rows, FM SYNTH the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP selector has six rows) and vector (poke VECTOR is machine chooser row six) both claim 0x400585fa -- both rewrite the same bytes\n poke site: synth (poke SRC SETUP name lookup admits FM) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: synth (poke machine chooser draws FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: synth (poke machine chooser highlights FM) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: synth (poke machine chooser persists FM) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes\n grown table: quantizer's SEQUENCER labels and synth's SEQUENCER labels both claim stock array 0x400b27d0 -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER getters and synth's SEQUENCER getters both claim stock array 0x400b27dc -- each would relocate its own copy and repoint different refs\n grown table: quantizer's SEQUENCER setters and synth's SEQUENCER setters both claim stock array 0x400b282c -- each would relocate its own copy and repoint different refs" }, "result": "refused" } diff --git a/src/engine/assets/chooser-metadata.json b/src/engine/assets/chooser-metadata.json index 513e77aaf..8de9f55fb 100644 --- a/src/engine/assets/chooser-metadata.json +++ b/src/engine/assets/chooser-metadata.json @@ -113,6 +113,13 @@ "fx1": true, "fx1Only": true }, + { + "id": "poly8", + "key": "POLY8", + "fxId": null, + "fx1": false, + "fx1Only": false + }, { "id": "miniverb", "key": "MINIVERB", @@ -233,13 +240,6 @@ "fx1": false, "fx1Only": false }, - { - "id": "poly8", - "key": "POLY8", - "fxId": null, - "fx1": false, - "fx1Only": false - }, { "id": "output-matrix", "key": "OUTPUT MATRIX", From 2c49b7513f9c6ff76d94fb4267652b7afb6e6fe1 Mon Sep 17 00:00:00 2001 From: Nathaniel Pawelczyk Date: Fri, 16 Oct 2026 10:15:05 -0500 Subject: [PATCH 15/20] Output Matrix 0.1.1-experimental: source identity after the performance record Only evidence/performance.json changed since the tested commit; manifest.py, matrix.s, matrix_mix.asm and verify.py are as tested. Co-Authored-By: Claude Opus 5.5 --- sdk/octabam/modules/output-matrix/octamod.module.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sdk/octabam/modules/output-matrix/octamod.module.json b/sdk/octabam/modules/output-matrix/octamod.module.json index 9c2f5d938..1965633c0 100644 --- a/sdk/octabam/modules/output-matrix/octamod.module.json +++ b/sdk/octabam/modules/output-matrix/octamod.module.json @@ -98,7 +98,7 @@ ], "qualification": { "moduleVersion": "0.1.1-experimental", - "sourceSha256": "0c2005a9e373bc1193e396c378543d16efb076914f4deed0f165597b218ecbb4", + "sourceSha256": "96b9783ca53ef04a828673220e884409338821683ddaf004a5bb5a6c1370ebdc", "imageSha256": "5ca0afbf038e17f7919c4d7cfb6ef518e3a4d9c41a12cfa69f59f1ac64a2acc4", "cycles": [ { From d5dd47d81d14ce30207babe005ae162414585524 Mon Sep 17 00:00:00 2001 From: Nathaniel Pawelczyk Date: Fri, 16 Oct 2026 10:15:26 -0500 Subject: [PATCH 16/20] Output Matrix 0.1.1-experimental: regenerate module documents Co-Authored-By: Claude Opus 5.5 --- src/catalog/module-documents.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/catalog/module-documents.json b/src/catalog/module-documents.json index fbc6e7253..b5c31babf 100644 --- a/src/catalog/module-documents.json +++ b/src/catalog/module-documents.json @@ -7024,7 +7024,7 @@ "screenshotStyle": "black-and-white" }, "moduleVersion": "0.1.1-experimental", - "sourceSha256": "0c2005a9e373bc1193e396c378543d16efb076914f4deed0f165597b218ecbb4", + "sourceSha256": "96b9783ca53ef04a828673220e884409338821683ddaf004a5bb5a6c1370ebdc", "imageSha256": "5ca0afbf038e17f7919c4d7cfb6ef518e3a4d9c41a12cfa69f59f1ac64a2acc4", "cycles": [ { From d3f3d64ecc6c9285ead94a06f1175a57dfb7defb Mon Sep 17 00:00:00 2001 From: Nathaniel Pawelczyk Date: Fri, 16 Oct 2026 10:19:23 -0500 Subject: [PATCH 17/20] Keep main's chooser-metadata order module:verify rewrote the file with POLY8's entry in another position (no content change); main's order keeps the committed base, the one tested on the MKII, unchanged. Co-Authored-By: Claude Opus 5.5 --- src/engine/assets/chooser-metadata.json | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/engine/assets/chooser-metadata.json b/src/engine/assets/chooser-metadata.json index 8de9f55fb..513e77aaf 100644 --- a/src/engine/assets/chooser-metadata.json +++ b/src/engine/assets/chooser-metadata.json @@ -113,13 +113,6 @@ "fx1": true, "fx1Only": true }, - { - "id": "poly8", - "key": "POLY8", - "fxId": null, - "fx1": false, - "fx1Only": false - }, { "id": "miniverb", "key": "MINIVERB", @@ -240,6 +233,13 @@ "fx1": false, "fx1Only": false }, + { + "id": "poly8", + "key": "POLY8", + "fxId": null, + "fx1": false, + "fx1Only": false + }, { "id": "output-matrix", "key": "OUTPUT MATRIX", From ca39671bfe304574835b27d791daab8e008e2fa8 Mon Sep 17 00:00:00 2001 From: Nathaniel Pawelczyk Date: Fri, 16 Oct 2026 11:05:47 -0500 Subject: [PATCH 18/20] Output Matrix 0.1.1-experimental: power cycle on the flashed base The author flashed the tested base: a power cycle kept MATRIX, the routing and all seven installed modules. After it the LEV box showed stock's split bars until CUE redrew the page (display only), recorded as a limitation. Co-Authored-By: Claude Opus 5.5 --- CHANGELOG.md | 2 +- sdk/octabam/modules/output-matrix/TESTING.md | 2 +- .../modules/output-matrix/evidence/usb-hardware.md | 8 +++++++- sdk/octabam/modules/output-matrix/octamod.module.json | 6 +++--- src/community/module-changelogs/output-matrix.json | 2 +- 5 files changed, 13 insertions(+), 7 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4869730a8..8059ef9c0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -12,7 +12,7 @@ - Beta testers are asked to share diagnostics again on any page after a new consent version. The note that requires it showed once per account, so testers who went through it before the consent version changed to `2026-10-15.1` (#657) weren't asked again: on 16 October the pull held 0 records against 22 syncs the day before. Now a beta tester whose consent isn't for the current version, or has expired, gets the required step again (Share diagnostics or Leave beta) wherever they are on the site. It relies on the consent read returning the stored version (#665). A tester who turned sharing off under the current version isn't asked. Checked with unit tests; not yet seen on the live site. - When Chrome can't open the Octatrack, the message now says why on Linux and Windows instead of only "unplug it and try again" (reported on Discord: an MKI on Chromium/Ubuntu and on Chrome/Windows). On Linux, Chrome needs a udev rule, now shown with the commands under Setup → Can't connect?, and Chromium from the Snap Store also needs its `raw-usb` connection. On Windows the Octatrack can be opened only once it runs the Modwerk base, because Windows binds WinUSB only to the base's interface. Checked with unit tests; the rule and the snap step have not been run on a Linux computer here, and neither has a Windows connection with the original OS. -- Output Matrix 0.1.1-experimental on the beta base: the base's resident Output Matrix engine is built from the module's smaller core-0 code (675 words placed on demand instead of 773), and its controller package is re-ported for the always-on LEV box label (20 stock sites, six stock-copy spans; package `e2df2fbf…`, admitted by new trust rows). The base identity changes to `3e3e3de1…`; its lease entries did not move, so Analog BD's recipe and the other base-bound packages' bytes are unchanged and only their required base moves. On the author's MKII over USB (RAM-booted base): MATRIX on and off, the label, routing and the PHONES level passed; no power cycle on this version. +- Output Matrix 0.1.1-experimental on the beta base: the base's resident Output Matrix engine is built from the module's smaller core-0 code (675 words placed on demand instead of 773), and its controller package is re-ported for the always-on LEV box label (20 stock sites, six stock-copy spans; package `e2df2fbf…`, admitted by new trust rows). The base identity changes to `3e3e3de1…`; its lease entries did not move, so Analog BD's recipe and the other base-bound packages' bytes are unchanged and only their required base moves. On the author's MKII over USB (RAM-booted base): MATRIX on and off, the label, routing and the PHONES level passed; on the flashed base a power cycle kept MATRIX and the routing, with the LEV box needing a redraw (press CUE) after it. - Fixed the native Octatrack builder refusing a crowded selection for a different reason than the site's builder. When a ColdFire cave (Recorder Loop Fix's) did not fit the menu cave window, native octabam stopped with "past the stock zero run" before trying the overflow run, while the site put the cave in the overflow run and went on to the real limit, such as a DSP region overrun. `module:verify` reported these as mismatches (two EVERB selections on main, more on LOFI2's branch). Native now places the cave in the overflow run first, as the site does. Both builders still refuse these selections, so no firmware either one produces changes: 100 native images built before and after the change are identical, and 10 refusals change only their reason (`sdk/infrastructure-verification/floating-cave-overflow-builder.json`). Software checks only; no hardware result is claimed. diff --git a/sdk/octabam/modules/output-matrix/TESTING.md b/sdk/octabam/modules/output-matrix/TESTING.md index b600a7686..c7b1ba472 100644 --- a/sdk/octabam/modules/output-matrix/TESTING.md +++ b/sdk/octabam/modules/output-matrix/TESTING.md @@ -374,4 +374,4 @@ Not tested: hardware. ## 0.1.1 over USB (16 Oct 2026, MKII) -The label and the smaller core-0 code on the beta base: a RAM-booted base built from this source (identity `3e3e3de1…`, MAIN.raw `5ca0afbf…`) with the 0.1.1 package (`e2df2fbf…`). The author checked the switch into MATRIX and back to NORMAL, the always-on LEV label, CUE + LEVEL routing to MAIN, CUE, PHONES, a mono jack and OFF on a playing track, and MIX as the PHONES level: all passed. The first trial's rollback was refused once (`needs-recovery`) and completed by the base on its own. No power cycle, project or Part reload, MASTER TRACK or other modules beside it on this version. Details: [evidence/usb-hardware.md](evidence/usb-hardware.md). +The label and the smaller core-0 code on the beta base: a RAM-booted base built from this source (identity `3e3e3de1…`, MAIN.raw `5ca0afbf…`) with the 0.1.1 package (`e2df2fbf…`). The author checked the switch into MATRIX and back to NORMAL, the always-on LEV label, CUE + LEVEL routing to MAIN, CUE, PHONES, a mono jack and OFF on a playing track, and MIX as the PHONES level: all passed. The first trial's rollback was refused once (`needs-recovery`) and completed by the base on its own. Then flashed: a power cycle with MATRIX and a track on MNL kept the mode, the routing and all seven installed modules; the LEV box first showed stock's split bars until CUE redrew it (likely the restore after the first draw; not confirmed). No project or Part reload or MASTER TRACK on this version. Details: [evidence/usb-hardware.md](evidence/usb-hardware.md). diff --git a/sdk/octabam/modules/output-matrix/evidence/usb-hardware.md b/sdk/octabam/modules/output-matrix/evidence/usb-hardware.md index e1931bce0..d8764a26a 100644 --- a/sdk/octabam/modules/output-matrix/evidence/usb-hardware.md +++ b/sdk/octabam/modules/output-matrix/evidence/usb-hardware.md @@ -20,9 +20,15 @@ | 4 | MIXER MIX sets the PHONES level | pass | | 5 | OUT CFG back to NORMAL: stock behaviour returns | pass | +## Flashed and power-cycled (same day) + +The author then flashed the same base from the card (browser-built `.bin` `ca8b457f…`, identity `3e3e3de1…`). The set kept on the RAM-booted base was restored at once (Output Matrix in INVENTORY); Analog BD, Apply Scene, LOFI2, Quant Live Rec, LIFT and BS WAVESHAPER were then installed and kept beside it. With OUT CFG on MATRIX and a track routed to MNL, a power cycle: all seven modules came back (INVENTORY over USB), OUT CFG still read MATRIX and the track's routing was kept. + +**Display issue after the power cycle:** the track's LEV box first showed stock's split bars (half MAIN level, half CUE) instead of Output Matrix's solid bar; pressing CUE redrew it as MNL with a solid full-width bar. Likely cause, not yet confirmed: the base restores the saved module set after the first screen is drawn, and nothing redraws the page once the module's patches are in. A static build has the module from the first draw. + ## Limitations -- RAM-booted base: no power cycle, project save and reload, or Part reload on this version over USB. +- No project save and reload or Part reload on this version over USB; one power cycle, with the display issue above. - Output Matrix alone on the base: no other module installed beside it; MASTER TRACK, STUDIO, the mode conversion's other Parts and banks, and CC 51 out were not checked on the unit for this version. - Functional checks by ear; no audio recording or chip timing. The smaller DSP code's sample-identical output is shown in the emulator (TESTING.md), not measured on the unit. - One MKII; no MKI. diff --git a/sdk/octabam/modules/output-matrix/octamod.module.json b/sdk/octabam/modules/output-matrix/octamod.module.json index 1965633c0..69b80c197 100644 --- a/sdk/octabam/modules/output-matrix/octamod.module.json +++ b/sdk/octabam/modules/output-matrix/octamod.module.json @@ -90,7 +90,7 @@ }, "tests": { "report": "TESTING.md", - "summary": "The image gate passes 117 checks under the ColdFire port: every destination, mono sums, MAIN against stock, the level law, MKII, MASTER, mute, DIR, the declick, every mode-conversion rule by the keys (including track 8 as the master and the power-cycle copies), CC 51 out and a power cycle. On an MKII the author tested routing, levels, the MIXER, everyday flows, saving and power and the conversion (functional report, 7–9 Oct 2026). No timed stress run, no chip timing. 0.1.1 over USB on the MKII (RAM-booted beta base, 16 Oct 2026): MATRIX on and off, the always-on LEV label, routing to MAIN, CUE, PHONES, a mono jack and OFF, and the PHONES level all passed; no power cycle on this version.", + "summary": "The image gate passes 117 checks under the ColdFire port: every destination, mono sums, MAIN against stock, the level law, MKII, MASTER, mute, DIR, the declick, every mode-conversion rule by the keys (including track 8 as the master and the power-cycle copies), CC 51 out and a power cycle. On an MKII the author tested routing, levels, the MIXER, everyday flows, saving and power and the conversion (functional report, 7–9 Oct 2026). No timed stress run, no chip timing. 0.1.1 over USB on the MKII (RAM-booted beta base, 16 Oct 2026): MATRIX on and off, the always-on LEV label, routing to MAIN, CUE, PHONES, a mono jack and OFF, and the PHONES level all passed and, on the flashed base, a power cycle kept MATRIX, the routing and the module set (the LEV box needed a redraw).", "hardwareStatus": "reported", "evidenceRevision": "44738eaf4d935438bfae0899dd5287e2b2d10b20", "gates": [ @@ -194,9 +194,9 @@ "tester": "npp1993", "sourceRevision": "44738eaf4d935438bfae0899dd5287e2b2d10b20", "imageSha256": "5ca0afbf038e17f7919c4d7cfb6ef518e3a4d9c41a12cfa69f59f1ac64a2acc4", - "summary": "Over USB on an Octatrack MKII: a RAM-booted beta base built from this source (identity 3e3e3de1..., MAIN 5ca0afbf...) with the 0.1.1 package (e2df2fbf...) installed by trial, rollback and then trial and keep. The author checked: the switch into MATRIX and back to NORMAL, the always-on destination label in the LEV box, CUE + LEVEL routing to MAIN, CUE, PHONES, a mono jack and OFF on a playing track with the audio where the label says, and MIX as the PHONES level. All passed.", + "summary": "Over USB on an Octatrack MKII: a RAM-booted beta base built from this source (identity 3e3e3de1..., MAIN 5ca0afbf...) with the 0.1.1 package (e2df2fbf...) installed by trial, rollback and then trial and keep. The author checked: the switch into MATRIX and back to NORMAL, the always-on destination label in the LEV box, CUE + LEVEL routing to MAIN, CUE, PHONES, a mono jack and OFF on a playing track with the audio where the label says, and MIX as the PHONES level. All passed. Then flashed the same base: with MATRIX selected and a track on MNL, a power cycle restored all seven installed modules, MATRIX and the routing; the LEV box first showed stock's split bars until CUE redrew it.", "limitations": [ - "RAM-booted base: no power cycle, project save and reload or Part reload on this version over USB.", + "One power cycle on the flashed base; no project save and reload or Part reload on this version over USB. After the power cycle the LEV box showed stock's split bars until CUE redrew the page (display only; routing was right).", "Output Matrix alone on the base; MASTER TRACK, STUDIO, conversions in other Parts and banks and CC 51 out not checked on the unit for this version.", "Checked by ear; no audio recording or chip timing. The smaller DSP code's identical output is shown in the emulator only.", "The first trial's rollback was refused once (needs-recovery) and completed by the base without a further command.", diff --git a/src/community/module-changelogs/output-matrix.json b/src/community/module-changelogs/output-matrix.json index 9e2a21b71..a222d2c39 100644 --- a/src/community/module-changelogs/output-matrix.json +++ b/src/community/module-changelogs/output-matrix.json @@ -5,7 +5,7 @@ "changes": [ "In MATRIX the LEV box is always labelled with the track's destination (MN, PHN, M+C, ...), not only while CUE is held, so each track's routing stays in view. The value shown while turning LEVEL is still the level; XLV (scene editing), FUNC's MAIN view, NORMAL, STUDIO and MIDI tracks are as before. The author tested the label on an MKII from a card image (OMXLBL01, 13-14 Oct 2026) built before the DSP change below.", "Smaller core-0 DSP code: 727 code + 42 table words become 657 + 14 (671 in all), with the same output sample for sample in 26 emulator scenarios (ot_emu: every destination, levels moving, MASTER, MKII, DIR, destination changes during playback). Worst case 4,240 -> 4,194 executed instructions per 16-sample frame, 275 per sample with the headphone crossfade. Emulator only: this DSP code has not run on hardware.", - "USB: the Modwerk base carries Output Matrix's DSP engine, so the smaller engine needs a new base, and the label needs a re-ported controller package (20 stock sites instead of 19, six stock-copy spans). Both are built locally (base 3e3e3de1, package e2df2fbf) and not published; the published base and the 0.1.0 package are unchanged. On the author's MKII over USB (RAM-booted base, 16 Oct 2026) the switch into MATRIX and back, the label, routing to MAIN, CUE, PHONES, a mono jack and OFF, and the PHONES level passed; the first trial's rollback was refused once (needs-recovery) and completed by the base on its own. Not checked on the unit for this version: a power cycle, project or Part reload, MASTER TRACK and other modules beside it.", + "USB: the Modwerk base carries Output Matrix's DSP engine, so the smaller engine needs a new base, and the label needs a re-ported controller package (20 stock sites instead of 19, six stock-copy spans). Both are built locally (base 3e3e3de1, package e2df2fbf) and not published; the published base and the 0.1.0 package are unchanged. On the author's MKII over USB (RAM-booted base, 16 Oct 2026) the switch into MATRIX and back, the label, routing to MAIN, CUE, PHONES, a mono jack and OFF, and the PHONES level passed; the first trial's rollback was refused once (needs-recovery) and completed by the base on its own. On the flashed base a power cycle kept MATRIX, the routing and six other modules installed beside it; after it the LEV box showed stock's split bars until CUE redrew the page (display only). Not checked on the unit for this version: project or Part reload and MASTER TRACK.", "Test-only: the gate compares runs over the same samples from transport start, which removes a false DIR AB 127 failure in combined images. Gate 117/117 in the emulator." ] }, From 6247f770bd221074a70b1482608fb822770982b2 Mon Sep 17 00:00:00 2001 From: Nathaniel Pawelczyk Date: Fri, 16 Oct 2026 11:06:12 -0500 Subject: [PATCH 19/20] Output Matrix 0.1.1-experimental: regenerate module documents Co-Authored-By: Claude Opus 5.5 --- src/catalog/module-documents.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/catalog/module-documents.json b/src/catalog/module-documents.json index b5c31babf..cdd22d6ea 100644 --- a/src/catalog/module-documents.json +++ b/src/catalog/module-documents.json @@ -6999,7 +6999,7 @@ }, "tests": { "report": "TESTING.md", - "summary": "The image gate passes 117 checks under the ColdFire port: every destination, mono sums, MAIN against stock, the level law, MKII, MASTER, mute, DIR, the declick, every mode-conversion rule by the keys (including track 8 as the master and the power-cycle copies), CC 51 out and a power cycle. On an MKII the author tested routing, levels, the MIXER, everyday flows, saving and power and the conversion (functional report, 7–9 Oct 2026). No timed stress run, no chip timing. 0.1.1 over USB on the MKII (RAM-booted beta base, 16 Oct 2026): MATRIX on and off, the always-on LEV label, routing to MAIN, CUE, PHONES, a mono jack and OFF, and the PHONES level all passed; no power cycle on this version.", + "summary": "The image gate passes 117 checks under the ColdFire port: every destination, mono sums, MAIN against stock, the level law, MKII, MASTER, mute, DIR, the declick, every mode-conversion rule by the keys (including track 8 as the master and the power-cycle copies), CC 51 out and a power cycle. On an MKII the author tested routing, levels, the MIXER, everyday flows, saving and power and the conversion (functional report, 7–9 Oct 2026). No timed stress run, no chip timing. 0.1.1 over USB on the MKII (RAM-booted beta base, 16 Oct 2026): MATRIX on and off, the always-on LEV label, routing to MAIN, CUE, PHONES, a mono jack and OFF, and the PHONES level all passed and, on the flashed base, a power cycle kept MATRIX, the routing and the module set (the LEV box needed a redraw).", "hardwareStatus": "reported", "evidenceRevision": "44738eaf4d935438bfae0899dd5287e2b2d10b20", "gates": [ @@ -7120,9 +7120,9 @@ "tester": "npp1993", "sourceRevision": "44738eaf4d935438bfae0899dd5287e2b2d10b20", "imageSha256": "5ca0afbf038e17f7919c4d7cfb6ef518e3a4d9c41a12cfa69f59f1ac64a2acc4", - "summary": "Over USB on an Octatrack MKII: a RAM-booted beta base built from this source (identity 3e3e3de1..., MAIN 5ca0afbf...) with the 0.1.1 package (e2df2fbf...) installed by trial, rollback and then trial and keep. The author checked: the switch into MATRIX and back to NORMAL, the always-on destination label in the LEV box, CUE + LEVEL routing to MAIN, CUE, PHONES, a mono jack and OFF on a playing track with the audio where the label says, and MIX as the PHONES level. All passed.", + "summary": "Over USB on an Octatrack MKII: a RAM-booted beta base built from this source (identity 3e3e3de1..., MAIN 5ca0afbf...) with the 0.1.1 package (e2df2fbf...) installed by trial, rollback and then trial and keep. The author checked: the switch into MATRIX and back to NORMAL, the always-on destination label in the LEV box, CUE + LEVEL routing to MAIN, CUE, PHONES, a mono jack and OFF on a playing track with the audio where the label says, and MIX as the PHONES level. All passed. Then flashed the same base: with MATRIX selected and a track on MNL, a power cycle restored all seven installed modules, MATRIX and the routing; the LEV box first showed stock's split bars until CUE redrew it.", "limitations": [ - "RAM-booted base: no power cycle, project save and reload or Part reload on this version over USB.", + "One power cycle on the flashed base; no project save and reload or Part reload on this version over USB. After the power cycle the LEV box showed stock's split bars until CUE redrew the page (display only; routing was right).", "Output Matrix alone on the base; MASTER TRACK, STUDIO, conversions in other Parts and banks and CC 51 out not checked on the unit for this version.", "Checked by ear; no audio recording or chip timing. The smaller DSP code's identical output is shown in the emulator only.", "The first trial's rollback was refused once (needs-recovery) and completed by the base without a further command.", From a47cf2f9b94948f461553d7202ef08a02913f014 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jannik=20A=C3=9Ffalg?= Date: Mon, 19 Oct 2026 10:19:16 +0000 Subject: [PATCH 20/20] Output Matrix 0.1.1 notes: what has run on hardware, and that this publishes the base Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_01SakBf5zGyZY61TAzvKCKHC --- src/community/module-changelogs/output-matrix.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/community/module-changelogs/output-matrix.json b/src/community/module-changelogs/output-matrix.json index a222d2c39..8ff793cf2 100644 --- a/src/community/module-changelogs/output-matrix.json +++ b/src/community/module-changelogs/output-matrix.json @@ -4,8 +4,8 @@ "date": "2026-10-16", "changes": [ "In MATRIX the LEV box is always labelled with the track's destination (MN, PHN, M+C, ...), not only while CUE is held, so each track's routing stays in view. The value shown while turning LEVEL is still the level; XLV (scene editing), FUNC's MAIN view, NORMAL, STUDIO and MIDI tracks are as before. The author tested the label on an MKII from a card image (OMXLBL01, 13-14 Oct 2026) built before the DSP change below.", - "Smaller core-0 DSP code: 727 code + 42 table words become 657 + 14 (671 in all), with the same output sample for sample in 26 emulator scenarios (ot_emu: every destination, levels moving, MASTER, MKII, DIR, destination changes during playback). Worst case 4,240 -> 4,194 executed instructions per 16-sample frame, 275 per sample with the headphone crossfade. Emulator only: this DSP code has not run on hardware.", - "USB: the Modwerk base carries Output Matrix's DSP engine, so the smaller engine needs a new base, and the label needs a re-ported controller package (20 stock sites instead of 19, six stock-copy spans). Both are built locally (base 3e3e3de1, package e2df2fbf) and not published; the published base and the 0.1.0 package are unchanged. On the author's MKII over USB (RAM-booted base, 16 Oct 2026) the switch into MATRIX and back, the label, routing to MAIN, CUE, PHONES, a mono jack and OFF, and the PHONES level passed; the first trial's rollback was refused once (needs-recovery) and completed by the base on its own. On the flashed base a power cycle kept MATRIX, the routing and six other modules installed beside it; after it the LEV box showed stock's split bars until CUE redrew the page (display only). Not checked on the unit for this version: project or Part reload and MASTER TRACK.", + "Smaller core-0 DSP code: 727 code + 42 table words become 657 + 14 (671 in all), with the same output sample for sample in 26 emulator scenarios (ot_emu: every destination, levels moving, MASTER, MKII, DIR, destination changes during playback). Worst case 4,240 -> 4,194 executed instructions per 16-sample frame, 275 per sample with the headphone crossfade. On a card this DSP code has run only in the emulator; over USB the same engine ran on the author's MKII inside the base (below).", + "USB: the Modwerk base carries Output Matrix's DSP engine, so the smaller engine needs a new base, and the label needs a re-ported controller package (20 stock sites instead of 19, six stock-copy spans). This release publishes both: base 3e3e3de1 and package e2df2fbf, so a beta unit needs the base update before its next sync. On the author's MKII over USB (RAM-booted base, 16 Oct 2026) the switch into MATRIX and back, the label, routing to MAIN, CUE, PHONES, a mono jack and OFF, and the PHONES level passed; the first trial's rollback was refused once (needs-recovery) and completed by the base on its own. On the flashed base a power cycle kept MATRIX, the routing and six other modules installed beside it; after it the LEV box showed stock's split bars until CUE redrew the page (display only). Not checked on the unit for this version: the 0.1.1 card image, project or Part reload, MASTER TRACK and STUDIO.", "Test-only: the gate compares runs over the same samples from transport start, which removes a false DIR AB 127 failure in combined images. Gate 117/117 in the emulator." ] },