From 8266f88cc4985b0950121f714552e521e702fca4 Mon Sep 17 00:00:00 2001 From: repeat98 Date: Wed, 21 Oct 2026 19:10:33 +0200 Subject: [PATCH 01/33] VECTOR: a MIDI generator for the MIDI tracks (work in progress) Co-Authored-By: Claude Opus 5.5 --- docs/module-guides/midi-usb.md | 2 +- sdk/machines/octatrack/EVENTS.md | 5 +- sdk/machines/octatrack/events.json | 14 +- .../module-adapters/machine-ports.json | 7 +- .../module-adapters/machine-recipes.json | 73 +- .../module-adapters/vector_runtime.py | 2 +- sdk/octabam/modules/vector/README.md | 32 +- sdk/octabam/modules/vector/control.s | 9339 +++++++++++------ sdk/octabam/modules/vector/engine.c | 17 +- sdk/octabam/modules/vector/manifest.py | 6 + sdk/octabam/modules/vector/midi.c | 196 + sdk/octabam/modules/vector/native.c | 36 +- sdk/octabam/modules/vector/prepare.py | 11 +- sdk/octabam/modules/vector/runtime.json | 16 + 14 files changed, 6725 insertions(+), 3031 deletions(-) create mode 100644 sdk/octabam/modules/vector/midi.c create mode 100644 sdk/octabam/modules/vector/runtime.json diff --git a/docs/module-guides/midi-usb.md b/docs/module-guides/midi-usb.md index d99c8ffcd..9bf10cd84 100644 --- a/docs/module-guides/midi-usb.md +++ b/docs/module-guides/midi-usb.md @@ -24,7 +24,7 @@ Read [the module guides index](README.md) first. A module that sends or reacts t A **MIDI generator** makes notes or controllers from the transport (an arpeggiator, a Euclidean or probability sequencer, a chord or CC sequencer). A **MIDI effect** changes a stream that already exists (transpose, scale and chord mapping, velocity curves, humanise, delay and echo, filtering, channel and port routing). Both are ColdFire code, so the manifest has `category: midi-usb` and `compatibility.location: MIDI tracks` (or `Project sequencer` when it acts on the whole project), and they carry a `coldfire` performance record. A generator follows [sequencing.md](sequencing.md) completely: the instrument's own transport, tempo, track speed and swing, never a clock of your own. Copy the shape of the closest existing module, and agree the design with the owner before you spend long on one that has no precedent. No module here yet transforms MIDI notes (CC Map maps controllers only). -**MIDI generators** contribute to the base table `ot_midi_generators` ([EVENTS.md](../../sdk/machines/octatrack/EVENTS.md)) from their `runtime.json`. MIDI NOTE SETUP (double-tap SRC, and double-tap TRACK in MIDI mode) lists OFF and the generators in its empty left half; a MIDI track running one shows the generator's controls on its ARP page, and its second page on FUNC+AMP. The base keeps the choice in the track's arp step mask and resets the arpeggiator (MODE OFF) on every change; the generator keeps up to 16 settings in the track's arp note bytes (value - 64, the -64..63 stock's validator keeps). Stock's validator clamps every other MIDI Part byte to its page's ranges, and MIDI NOTE SETUP's encoders D and F edit its two unused slots unseen, so do not store anything there. A generator writes the track's trigs and NOTE, VEL and LEN locks (pattern + 0x48d0 + 0x8b0 t: masks at +0, length +0x28, locks +0x30 + 32 step, timing and conditions +0x830 + 2 step) and the stock sequencer plays them: no clock of its own, every note-off stock's, nothing to run while playing. On a card build there is no base: the module links `elekloader/midi_generators.c` with `MG_FIXED` naming its record and patches the same four sites itself; its runtime package names those detours in `replaces`. +**MIDI generators** contribute to the base table `ot_midi_generators` ([EVENTS.md](../../sdk/machines/octatrack/EVENTS.md)) from their `runtime.json`; [VECTOR](../../sdk/octabam/modules/vector/README.md#vector-on-midi-tracks) is the worked example (`midi.c`). MIDI NOTE SETUP (double-tap SRC, and double-tap TRACK in MIDI mode) lists OFF and the generators in its empty left half; a MIDI track running one shows the generator's controls on its ARP page, and its second page on FUNC+AMP. The base keeps the choice in the track's arp step mask and resets the arpeggiator (MODE OFF) on every change; the generator keeps up to 16 settings in the track's arp note bytes (value - 64, the -64..63 stock's validator keeps). Stock's validator clamps every other MIDI Part byte to its page's ranges, and MIDI NOTE SETUP's encoders D and F edit its two unused slots unseen, so do not store anything there. A generator writes the track's trigs and NOTE, VEL and LEN locks (pattern + 0x48d0 + 0x8b0 t: masks at +0, length +0x28, locks +0x30 + 32 step, timing and conditions +0x830 + 2 step) and the stock sequencer plays them: no clock of its own, every note-off stock's, nothing to run while playing. On a card build there is no base: the module links `elekloader/midi_generators.c` with `MG_FIXED` naming its record and patches the same four sites itself (VECTOR's `prepare.py` and `manifest.py`); its runtime package names those detours in `replaces`. Keep a generator's edits cheap; they run on the UI task while the pattern plays. Module code and data run uncached, so write the record in place, only the bytes that change, rather than copying 2 KB in and out, and set your own track's bit of stock's per-step lock index (0x46c7d2e4 for MIDI tracks, 0x46c7d48c for audio) instead of calling stock's rebuild 0x400339d8, which rescans every track (about 3 ms on the owner's MKII). A 64-step rewrite took 0.5 ms that way on the owner's MKII ([traps](../OCTATRACK_HARDWARE_TRAPS.md#coldfire-and-dsp-load)). diff --git a/sdk/machines/octatrack/EVENTS.md b/sdk/machines/octatrack/EVENTS.md index 760b42507..c40824f2d 100644 --- a/sdk/machines/octatrack/EVENTS.md +++ b/sdk/machines/octatrack/EVENTS.md @@ -47,7 +47,7 @@ stock runs at once. With no taker stock runs. A **table** has no site: modules c | `ot_machines` | table | none | the machine chooser, SRC SETUP, the page resolver, the Part validator, the UI tick, pool navigation and the FLEX renderer ask the contributed machines, in row order: chooser rows 5 on | `80-byte record` | Contribute one struct modwerk_machine (every field but abi, sig and label optional, 0). A Part keeps its signature when the machine is absent and reads as stock. Leaving a PROTECT machine that has no assign of its own puts stock's FLEX defaults back in both Part copies before the signature goes. A priced machine (source_kind) is charged on its track's core before the track becomes it, and every owned track at each UI tick; a track the core cannot carry renders stock's silent source. Removal is refused while a Part, a UI root or a paused task still holds the machine. | lower first, then module id: the chooser's row order. 10 POLY8, 20 Analog BD, 30 VECTOR, 40 FM Synth (the order of POLY8's shared controller); others 50-90. | the UI task and the audio render (render only): short, no firmware call that can block | | `ot_sequencer_rows` | table | none | PROJECT > CONTROL > SEQUENCER lists stock's three rows, then one per contributed label | `4-byte record` | Contribute one struct modwerk_sequencer_rows: its rows, in order. The window shows stock's three rows and up to eight more; a row with a label an earlier row has is not shown; the getter and setter follow stock's rows' convention (CHAIN AFTER's 0x400659ec). | lower first, then module id: the rows' order. 40 FM Synth's bundled quantizer, 50 Scale Quantizer. | the UI task | | `ev_tail_kill` | call | 0x40004d0c | STOP's tail kill (STOP, STOP, STOP) holds a track: each frame, for each held track, before stock tests the track's FX2 against its three reverbs and clears theirs | `void f(uint8_t *record, unsigned track)` | A notification: every handler runs, then stock's own test. record is the track's 64-byte frame record its DSP instances read (32 halfwords): the halfword at +56 is the FX2 id stock tests, the byte at +53 FX2 SETUP's slot 11, which stock zeroes for its reverbs while the kill holds. A handler may zero its own effect's bytes there the same way (check +56 first). d2-d7/a2-a6 are the builder's and must be kept. | lower first, then module id; 10-90. | the frame interrupt: short, no firmware call that can block | -| `ot_midi_generators` | table | none | MIDI NOTE SETUP (double-tap SRC, or double-tap TRACK in MIDI mode) lists OFF and the contributed generators in its empty left half; a MIDI track running one shows that generator's pages on its ARP page (FUNC+AMP: the second page) | `32-byte record` | Contribute one struct modwerk_midi_generator (every field but abi, label and id optional, 0). Choosing it puts 'M' and its id in the track's arp step mask (Part 0x1822 + 2 t, high byte first), which stock's validator never reads and only ARP SETUP edits; stock's default there is ffff. On every change of generator the base first puts the track's arpeggiator back to stock's defaults (MODE OFF, every note 0), then calls the old generator's assign(t, 0) and the new one's assign(t, 1). While a generator runs a track it owns that track's 16 arpeggiator note bytes (Part 0x1832 + 16 t, each -64..63, the range stock's validator keeps). Its page shows while no trig or scene is held; the base takes encoders A-F and YES there. A track whose id has no installed generator reads as stock. | lower first, then module id: the list's order. 30 for the first generator; others 40-90. | the UI task | +| `ot_midi_generators` | table | none | MIDI NOTE SETUP (double-tap SRC, or double-tap TRACK in MIDI mode) lists OFF and the contributed generators in its empty left half; a MIDI track running one shows that generator's pages on its ARP page (FUNC+AMP: the second page) | `32-byte record` | Contribute one struct modwerk_midi_generator (every field but abi, label and id optional, 0). Choosing it puts 'M' and its id in the track's arp step mask (Part 0x1822 + 2 t, high byte first), which stock's validator never reads and only ARP SETUP edits; stock's default there is ffff. On every change of generator the base first puts the track's arpeggiator back to stock's defaults (MODE OFF, every note 0), then calls the old generator's assign(t, 0) and the new one's assign(t, 1). While a generator runs a track it owns that track's 16 arpeggiator note bytes (Part 0x1832 + 16 t, each -64..63, the range stock's validator keeps). Its page shows while no trig or scene is held; the base takes encoders A-F and YES there. A track whose id has no installed generator reads as stock. | lower first, then module id: the list's order. 30 VECTOR; others 40-90. | the UI task | ## Reviewed subscribers @@ -107,6 +107,7 @@ stock runs at once. With no taker stock runs. A **table** has no site: modules c | `ot_sequencer_rows` | synth | `mw_sequencer_rows` | 40 | SCALE, ROOT, GLIDE rows of FM's bundled quantizer | sdk/octabam/modules/synth/upstream/quantizer/quantizer.s (FM's bundled copy, fm_ units) qz_lbl_*, qz_get*, qz_set* | | `ot_sequencer_rows` | quantizer | `mw_sequencer_rows` | 50 | SCALE, ROOT, GLIDE rows | sdk/octabam/modules/quantizer/upstream/quantizer/quantizer.s qz_lbl_*, qz_get*, qz_set* | | `ev_tail_kill` | bbd | `bbd_tail_kill` | 50 | while the kill holds a track whose FX2 is BBD (id 0x0e), zeroes its slot 11 (+53): BBD plays the input exactly and clears its line until the track's next trig | sdk/octabam/modules/bbd/stopkill.s bbd_kill_hook (the card build's detour at the same site); on the owner's MKII 15 Oct 2026 (dev twin e429b787): slot 11 0 while held, 127 after T1's next trig, the tail cut to -132 dBFS | +| `ot_midi_generators` | vector | `vector_midi` | 30 | VECTOR: id 86 ('V'), its twelve controls on the ARP page and FUNC+AMP, NOTE/VEL/LEN locks and trigs in the MIDI track | sdk/octabam/modules/vector/midi.c vector_midi; runtime.json | ## Reviewed raisers @@ -145,7 +146,7 @@ A raised event has no stock site: these modules call the base's entry and act on - `ot_machines`: sdk/octabam/modules/poly8/shared-machine.c (MIT, Sam Banks / repeat98) dispatched POLY, AB, VECTOR, FM in this order; the base registry (elekloader/machine_registry.c) is that controller reading this table. - `ot_sequencer_rows`: Both quantizers name the same rows and keep them in the same bytes, so the keyed table shows one set: FM's with FM installed, Scale Quantizer's otherwise. - `ev_tail_kill`: Every handler acts only on a track whose FX2 runs its own effect id, so no order is needed between them. -- `ot_midi_generators`: No generator in the catalogue yet. +- `ot_midi_generators`: One generator so far. ## The sites diff --git a/sdk/machines/octatrack/events.json b/sdk/machines/octatrack/events.json index 13e9f2954..8db2d1a6e 100644 --- a/sdk/machines/octatrack/events.json +++ b/sdk/machines/octatrack/events.json @@ -1552,9 +1552,17 @@ "when": "MIDI NOTE SETUP (double-tap SRC, or double-tap TRACK in MIDI mode) lists OFF and the contributed generators in its empty left half; a MIDI track running one shows that generator's pages on its ARP page (FUNC+AMP: the second page)", "context": "the UI task", "contract": "Contribute one struct modwerk_midi_generator (every field but abi, label and id optional, 0). Choosing it puts 'M' and its id in the track's arp step mask (Part 0x1822 + 2 t, high byte first), which stock's validator never reads and only ARP SETUP edits; stock's default there is ffff. On every change of generator the base first puts the track's arpeggiator back to stock's defaults (MODE OFF, every note 0), then calls the old generator's assign(t, 0) and the new one's assign(t, 1). While a generator runs a track it owns that track's 16 arpeggiator note bytes (Part 0x1832 + 16 t, each -64..63, the range stock's validator keeps). Its page shows while no trig or scene is held; the base takes encoders A-F and YES there. A track whose id has no installed generator reads as stock.", - "order": "lower first, then module id: the list's order. 30 for the first generator; others 40-90.", - "subscribers": [], - "orderEvidence": "No generator in the catalogue yet.", + "order": "lower first, then module id: the list's order. 30 VECTOR; others 40-90.", + "subscribers": [ + { + "module": "vector", + "fn": "vector_midi", + "order": 30, + "does": "VECTOR: id 86 ('V'), its twelve controls on the ARP page and FUNC+AMP, NOTE/VEL/LEN locks and trigs in the MIDI track", + "evidence": "sdk/octabam/modules/vector/midi.c vector_midi; runtime.json" + } + ], + "orderEvidence": "One generator so far.", "sites": [ { "site": "0x40083afc", diff --git a/sdk/machines/octatrack/module-adapters/machine-ports.json b/sdk/machines/octatrack/module-adapters/machine-ports.json index 7294fd84d..3d0a735e2 100644 --- a/sdk/machines/octatrack/module-adapters/machine-ports.json +++ b/sdk/machines/octatrack/module-adapters/machine-ports.json @@ -140,8 +140,8 @@ }, "vector": { "sources": { - "sdk/octabam/modules/vector/control.s": "c4f829e437ffbde1275c00827031b694a86011013d37269077e4696818323471", - "sdk/octabam/modules/vector/manifest.py": "4d921f24256038797a99671534885b0bb9a27eaa79261b11136cf0a95a75af21" + "sdk/octabam/modules/vector/control.s": "33c9bef41f38759054cd061e501de67bfb84bf13b4d0d76590f8dc2a1d09faa2", + "sdk/octabam/modules/vector/manifest.py": "b9dec167f8bd4f1b691069cc89834f6c2a6717b874eb28629ef5c8c026d3d976" }, "contribute": [ { @@ -204,7 +204,8 @@ "st_name_replay", "st_main_replay", "st_edit_replay", - "st_draw_replay" + "st_draw_replay", + "mg_stock_note_draw" ], "why": "VECTOR's st_* chooser hooks and their stock replays are unreachable in the package; its registry functions are the descriptor's" }, diff --git a/sdk/machines/octatrack/module-adapters/machine-recipes.json b/sdk/machines/octatrack/module-adapters/machine-recipes.json index abc5b1a99..0ee14a2d1 100644 --- a/sdk/machines/octatrack/module-adapters/machine-recipes.json +++ b/sdk/machines/octatrack/module-adapters/machine-recipes.json @@ -406,67 +406,102 @@ }, "vector": { "schema": 1, - "imageSha256": "12db7a860bad918abd20b40cd465d8d4742fcf58aa3763cdcbf0fab392fd33e9", + "imageSha256": "7cb7d7620a0affad95b102b875ab0dae82d93ebe26970366151a7e23385716dc", "sources": { - "sdk/machines/octatrack/module-adapters/machine-ports.json": "d98a9934e001d0966d38c2f8eb21246445c59d527368d76e25eaffbe59bf2ec6", + "sdk/machines/octatrack/module-adapters/machine-ports.json": "91505a209e6bfb45e1e5180b60099d566a7e520e176cedab5d4906b253b08661", "sdk/machines/octatrack/module-adapters/machine_ports.py": "94261835964867f1dcfaf44173da2562794d319c3ab223742711f7cd34e30cff", - "sdk/machines/octatrack/module-adapters/vector_runtime.py": "9f0a0ffe8c0e3bacef6e6aad057f8f454b43b5daef32e9adb8fa2def0937ea39", - "sdk/octabam/modules/vector/control.s": "c4f829e437ffbde1275c00827031b694a86011013d37269077e4696818323471", - "sdk/octabam/modules/vector/manifest.py": "4d921f24256038797a99671534885b0bb9a27eaa79261b11136cf0a95a75af21", + "sdk/machines/octatrack/module-adapters/vector_runtime.py": "8ffebe0c9224413c4ccc0fd917e0240495d518a030413a748ead78215e3bf203", + "sdk/octabam/modules/vector/control.s": "33c9bef41f38759054cd061e501de67bfb84bf13b4d0d76590f8dc2a1d09faa2", + "sdk/octabam/modules/vector/manifest.py": "b9dec167f8bd4f1b691069cc89834f6c2a6717b874eb28629ef5c8c026d3d976", "sdk/runtime/loader/build.py": "1bc1a0e66f9b93871f429c53c8adebb39d21b5da7b7b101bf0f1f7c558313407" }, "copies": [ { - "offset": 3410, + "offset": 34, + "length": 20, + "address": 1073802002, + "sha256": "4c14741dff5ce18a933b30875f7e3a0ac8d633db0096af8f7a7a31a88e1313b0", + "purpose": "vector: authored bytes coinciding with stock (strict scan), reconstructed from the identical bytes of the user's OS; review" + }, + { + "offset": 3150, + "length": 13, + "address": 1073956506, + "sha256": "dccda24d61a1884be6d3561cc62af26b371a645c0c204e80b76c85c099b10344", + "purpose": "vector: authored bytes coinciding with stock (strict scan), reconstructed from the identical bytes of the user's OS; review" + }, + { + "offset": 5300, "length": 14, "address": 1074149512, "sha256": "079db88a4b98775059e3e9b221b27a5436dfe7bfaaa30ec1d8a805faea0e9fd6", "purpose": "vector: authored bytes coinciding with stock (strict scan), reconstructed from the identical bytes of the user's OS; review" }, { - "offset": 5602, + "offset": 5364, + "length": 14, + "address": 1073749318, + "sha256": "8596b9572983f971e0bafd4d56fe15e15486e31f3dba267de7a259eff5125aca", + "purpose": "vector: authored bytes coinciding with stock (strict scan), reconstructed from the identical bytes of the user's OS; review" + }, + { + "offset": 6878, + "length": 16, + "address": 1073813930, + "sha256": "924021b8d49f72ea05f797ca43adf8e6cc5ac43ee14f4ad208fbbc5bce8699a9", + "purpose": "vector: authored bytes coinciding with stock (strict scan), reconstructed from the identical bytes of the user's OS; review" + }, + { + "offset": 7980, + "length": 15, + "address": 1073934426, + "sha256": "532ccfdbeda1f24a92dff3bff914f0c178f143a4ba52c4c6f82a50696eabf852", + "purpose": "vector: authored bytes coinciding with stock (strict scan), reconstructed from the identical bytes of the user's OS; review" + }, + { + "offset": 11118, "length": 14, "address": 1074073374, "sha256": "5f460b9d4661db855641f1e3d7cb71cf2c6b0a6e8ad754886d283c9f1a3c5299", "purpose": "vector: authored bytes coinciding with stock (strict scan), reconstructed from the identical bytes of the user's OS; review" }, { - "offset": 7166, + "offset": 12766, "length": 12, "address": 1073882466, "sha256": "f6838b012beac6d6395527d401c6eabefbded04cd643d14afbf356781cb4aeb6", "purpose": "vector: authored bytes coinciding with stock (strict scan), reconstructed from the identical bytes of the user's OS; review" }, { - "offset": 10032, + "offset": 15632, "length": 14, "address": 1074237950, "sha256": "0939a4ca02b038ba72eec962b17c37d00c17ed240b08a4400cc3d071c8ebbe31", "purpose": "vector: authored bytes coinciding with stock (strict scan), reconstructed from the identical bytes of the user's OS; review" }, { - "offset": 11272, - "length": 14, - "address": 1074235542, - "sha256": "4be6e9d8ab86bfb63e91b242f2d2824f061a003fabd5eeea29fc4f33af158a54", + "offset": 17050, + "length": 15, + "address": 1074154280, + "sha256": "d67cfd82dafd98aad4cd46cc096c0b173290a1c84756fd7d881da9c25492bb2c", "purpose": "vector: authored bytes coinciding with stock (strict scan), reconstructed from the identical bytes of the user's OS; review" }, { - "offset": 11494, - "length": 20, - "address": 1073802002, - "sha256": "4c14741dff5ce18a933b30875f7e3a0ac8d633db0096af8f7a7a31a88e1313b0", + "offset": 17100, + "length": 16, + "address": 1074178428, + "sha256": "44d6e7638702c28959b44309e5f7c04a2d9dbd313666960cc1fa9036d028678c", "purpose": "vector: authored bytes coinciding with stock (strict scan), reconstructed from the identical bytes of the user's OS; review" }, { - "offset": 12210, + "offset": 21790, "length": 20, "address": 1074428104, "sha256": "96966986164a24f9ca5be84cca807a016a828da2bcc3167b831be52acad2a9a7", "purpose": "vector: authored bytes coinciding with stock (strict scan), reconstructed from the identical bytes of the user's OS; review" }, { - "offset": 12584, + "offset": 22164, "length": 12, "address": 1074100132, "sha256": "fa4871f504c0f71c15f06b76536f127ec74d257852ce50a1b9f16b3d14e8688c", diff --git a/sdk/machines/octatrack/module-adapters/vector_runtime.py b/sdk/machines/octatrack/module-adapters/vector_runtime.py index 83d54c326..b8dfe57d0 100644 --- a/sdk/machines/octatrack/module-adapters/vector_runtime.py +++ b/sdk/machines/octatrack/module-adapters/vector_runtime.py @@ -4,7 +4,7 @@ import hashlib from pathlib import Path -CONTROL_SHA256 = 'c4f829e437ffbde1275c00827031b694a86011013d37269077e4696818323471' +CONTROL_SHA256 = '33c9bef41f38759054cd061e501de67bfb84bf13b4d0d76590f8dc2a1d09faa2' ARITHMETIC = ( ('\tsub.l #staging-268525901,%a1', '\tadd.l #268525901,%a1\n\tsub.l #staging,%a1'), ('\tlea saved-1187503478,%a1', '\tlea saved,%a1\n\tsub.l #1187503478,%a1'), diff --git a/sdk/octabam/modules/vector/README.md b/sdk/octabam/modules/vector/README.md index b22718d87..2fa9ef0c7 100644 --- a/sdk/octabam/modules/vector/README.md +++ b/sdk/octabam/modules/vector/README.md @@ -1,8 +1,8 @@ # VECTOR -Version: `0.2.4-experimental` · author: @repeat98 / Octamod contributors. +Version: `0.3.0-experimental` · author: @repeat98 / Octamod contributors. -Native SRC generator for Flex and Static samples. Physical hardware remains untested; the owner approved release and closure with physical reboot/audio unverified on 9 October 2026. +Native SRC generator for Flex and Static samples, and from 0.3.0 a MIDI generator for the eight MIDI tracks. The MIDI generator ran on the owner's MKII over USB (21 October 2026, development bases); the sample machine's physical hardware testing remains owner-waived (9 October 2026). ![VECTOR phrase generator](presentation/thumbnail.svg) @@ -10,7 +10,7 @@ Native SRC generator for Flex and Static samples. Physical hardware remains unte VECTOR creates real note trigs and PTCH/HOLD/VOL locks for one Flex or Static sample. Turn a generator parameter on either native SRC page to commit the sequence immediately, including while playing. Knob edits keep the current seed; YES makes a fresh variation. The normal Octatrack track display, sample name, Part, native dials and sequencer remain in use. No generator window is allocated. -The algorithm is original, inspired by Iftah’s Sting 2; no Sting source or artwork was copied. It generates internal sample notes and emits no MIDI. STOP/PLAY preserves populated tracks. When native playback starts, VECTOR fills only empty tracks and refuses existing note, recorder, trigless, slide or lock data. +The algorithm is original, inspired by Iftah’s Sting 2; no Sting source or artwork was copied. On an audio track it generates internal sample notes and emits no MIDI; on a MIDI track it writes MIDI note trigs, which the stock sequencer sends ([VECTOR on MIDI tracks](#vector-on-midi-tracks)). STOP/PLAY preserves populated tracks. When native playback starts, VECTOR fills only empty tracks and refuses existing note, recorder, trigless, slide or lock data. ## Controls @@ -57,9 +57,33 @@ The Part’s unused NEIGHBOR slots store the marker and nine packed settings byt The modal uses the stock list controller and window chrome, as Analog BD does for 808/909. Confirming a stock sample slot preserves VECTOR, its generator parameters and the current phrase. NO cancels a pool choice without changing the backing pool. +## VECTOR on MIDI tracks + +VECTOR is the first entry of the MIDI generator list, which the Modwerk base (over USB) or VECTOR's own card build adds to MIDI mode. It writes real note trigs with NOTE, VEL and LEN locks into the MIDI track; the stock MIDI sequencer plays them, so tempo, track speed, swing, trig conditions, the track's channel and every note-off stay stock's. + +| Page | Encoder | Control | Default | On a MIDI track | +|---|---|---|---|---| +| ARP | A-F | TYPE, DENS, ROOT, SCAL, GATE, ACNT | 11, 11, C, MIN, 8, 48 | As on audio tracks, except: ROOT and SCAL build the scale on the C at or below the track's NOTE; GATE is in stock LEN units and prints as a note length (generated LEN locks range from half to all of it); ACNT lowers VEL locks from the track's VEL, which is real MIDI velocity. | +| FUNC+AMP | A-F | SEED, SPAN, OFST, ROT, RPT, DIR | track + 1, 12, 0, 0, OFF, FWD | As on audio tracks. | + +1. Press MIDI and select a MIDI track. Double-tap its TRACK key (or double-tap SRC): MIDI NOTE SETUP opens with OFF and VECTOR on its left. Highlight VECTOR with DOWN and press YES. An empty track gets its first phrase at once. +2. Press AMP. The ARP page now shows TYPE, DENS, ROOT, SCAL, GATE and ACNT with their values. Turn any of them to write a new phrase, also while playing. YES makes a fresh variation. +3. Press FUNC+AMP for SEED, SPAN, OFST, ROT, RPT and DIR; FUNC+AMP or NO returns. Set the track's channel in MIDI NOTE SETUP (CHAN) to hear it. +4. To leave, open MIDI NOTE SETUP and choose OFF. The phrase stays on the track as ordinary trigs and locks. + +Changes to stock flows, while a MIDI track runs VECTOR (the README's minor changes, owner-requested on 21 October 2026): + +- **Double-tap TRACK in MIDI mode** opens MIDI NOTE SETUP. Stock does nothing there; with no MIDI generator installed it still does nothing. +- **MIDI NOTE SETUP's empty left half** lists the generators. UP, DOWN and YES move and choose; YES also confirms the window's own values as before. CHAN, BANK, PROG and SBNK are unchanged. +- **The ARP page and FUNC+AMP** show VECTOR's controls instead of the arpeggiator's. Choosing VECTOR puts the track's arpeggiator back to stock's defaults with MODE OFF and keeps it off; its 16 arp note bytes then hold VECTOR's controls. Holding a trig or a scene shows the stock ARP page, so locks there stay stock's. Choosing OFF restores stock's arpeggiator defaults. + +Where it is stored: the Part. The track's arp step mask holds 'M' and VECTOR's id (stock's validator never reads it), and its arp note bytes hold the twelve controls (value - 64, within the -64..63 stock's validator keeps). Without VECTOR the track reads as an ordinary MIDI track whose arpeggiator is off. If its ARP SETUP is edited then, the stored controls show there as arp notes, and turning MODE on would play them; installing VECTOR again turns MODE off. NOTE SETUP's two unused slots are not used: its encoders D and F edit them unseen. + +Cost, measured on the owner's MKII (21 October 2026, development base, PLAY running): the base's generator code takes 4-10 µs a UI tick, with no generator installed 2 µs. A control turn that rewrites all 64 steps takes 0.5 ms on the UI task (0.66 ms at most of 40); the longest time between audio frames stayed 406-417 µs while turning, and the MIDI notes kept their 125 ms grid within 1 ms. Nothing runs in an interrupt. [TESTING.md](TESTING.md#midi-generator-on-the-unit) has the method. + ## Compatibility and limitations -OS 1.40C is the local base. Captures and sequence checks use octemu’s MKII panel. Hardware and MKI support remain unverified. Generation runs on the UI task; the adapter uses native lock-index rebuilding and live track publication. This emulator result does not establish hardware race safety or an audio continuity guarantee. +OS 1.40C is the local base. Captures and sequence checks use octemu’s MKII panel; the MIDI generator ran on the owner's MKII. MKI support remains unverified. Generation runs on the UI task. From 0.3.0 it sets its own track's bit of stock's per-step lock index instead of calling stock's rebuild of every track (about 3 ms on the unit), then publishes the track with stock's routine. The emulator result does not establish hardware race safety or an audio continuity guarantee for the sample machine. Analog BD shares chooser/display hook sites and conflicts. Other combinations, including OctaKit, need explicit integration checks. Generator settings are not LFO, scene or p-lock destinations; the ordinary sample controls remain available through the edit view. Pitch is limited to ±12 semitones. diff --git a/sdk/octabam/modules/vector/control.s b/sdk/octabam/modules/vector/control.s index 3590b056c..5223f97ea 100644 --- a/sdk/octabam/modules/vector/control.s +++ b/sdk/octabam/modules/vector/control.s @@ -2,755 +2,1298 @@ .file "vector.c" .text .align 2 - .type generator_page, @function -generator_page: - lea (-32,%sp),%sp - movem.l #15420,(%sp) - tst.l src_page_ready - jeq .L2 - move.l 36(%sp),%d0 - cmp.l src_page_source.l,%d0 - jeq .L3 -.L2: - lea src_page,%a0 - move.l 36(%sp),%a1 - sub.l %a0,%a1 + .type mg_dirty, @function +mg_dirty: + move.l %d2,-(%sp) + move.b 269161679,%d0 + mov3q.l #3,%d2 + move.l 1187521622,%a1 + add.l #610376,%a1 + move.b (%a1),%d1 + and.l %d0,%d2 + mov3q.l #1,%d0 + lsl.l %d2,%d0 + or.l %d0,%d1 + move.b %d1,(%a1) + move.b 269161566,%d1 + or.l %d1,%d0 + move.b %d0,269161566 + move.l 1187521622,%a0 + add.l #635698,%a0 + move.l (%sp)+,%d2 + mov3q.l #1,(%a0) + mov3q.l #1,269452696 + jmp 1073905152 + .size mg_dirty, .-mg_dirty + .align 2 + .type mg_forward, @function +mg_forward: + move.l %d2,-(%sp) + moveq #51,%d1 + move.l 8(%sp),%d0 + move.l 12(%sp),%a0 + cmp.l %d0,%d1 + jeq .L7 + moveq #32,%d2 + cmp.l %d0,%d2 + jeq .L8 + moveq #49,%d1 + cmp.l %d0,%d1 + jeq .L9 + moveq #50,%d2 + mov3q.l #3,%a1 + cmp.l %d0,%d2 + jeq .L4 +.L3: + move.l (%sp)+,%d2 + rts +.L7: + sub.l %a1,%a1 .L4: - move.b (%a1,%a0.l),%d0 - move.b %d0,(%a0)+ - cmp.l #src_page+402,%a0 - jne .L4 - lea vector_control_names,%a5 - clr.l %d2 - lea src_page+202,%a1 - lea (formats.2),%a4 - lea src_page+22,%a2 - move.l #src_page+28,%d1 -.L11: - move.l (%a5)+,%a3 - sub.l %a0,%a0 -.L5: - move.b (%a3,%a0.l),%d0 + mov3q.l #1,%d1 + cmp.l %a0,%d1 + jeq .L10 +.L14: + tst.l %a0 jeq .L6 - move.b %d0,(%a2,%a0.l) - addq.l #1,%a0 - mov3q.l #5,%d3 - cmp.l %a0,%d3 - jne .L5 + mov3q.l #2,%d1 .L6: - add.l %a2,%a0 + lea (%a1,%a1.l*2),%a1 + moveq #-3,%d2 + add.l %a1,%d1 + lea mg_saved,%a1 + move.l (%a1,%d1.l*4),%a1 + move.l %a1,%d1 + subq.l #1,%d1 + cmp.l %d1,%d2 + jcs .L3 + move.l %a0,12(%sp) + move.l %d0,8(%sp) + move.l (%sp)+,%d2 + jmp (%a1) +.L10: + clr.l %d1 + jra .L6 .L8: - clr.b (%a0)+ + mov3q.l #1,%a1 + mov3q.l #1,%d1 cmp.l %a0,%d1 - jne .L8 - move.l (%a4)+,%d0 - move.l %d0,%d3 - clr.w %d3 - swap %d3 - moveq #24,%d4 - move.l %d0,%d5 - lsr.l %d4,%d5 - move.l %d0,%d4 - lsr.l #8,%d4 - move.b %d0,3(%a1) - mov3q.l #5,%d0 - move.b %d5,(%a1) - move.b %d4,2(%a1) - move.b %d3,1(%a1) - cmp.l %d2,%d0 - jcs .L12 - move.l #generator_widget,%d0 - moveq #24,%d4 - move.l %d0,%d3 - move.l %d0,%d5 - clr.w %d3 - swap %d3 - lsr.l %d4,%d5 - move.l %d0,%d4 - lsr.l #8,%d4 - move.b %d0,51(%a1) - addq.l #4,%a1 - move.b %d5,44(%a1) - move.b %d4,46(%a1) - addq.l #1,%d2 - addq.l #6,%a2 - addq.l #6,%d1 - moveq #12,%d0 - move.b %d3,45(%a1) - cmp.l %d2,%d0 - jne .L11 -.L22: - mvz.w #21845,%d3 - move.l 36(%sp),%d0 - move.l #1431655765,%d4 - move.l %d4,src_page+398 - mov3q.l #1,src_page_ready - move.l %d3,src_page+394 - move.l %d0,src_page_source -.L3: - move.l #src_page,%d0 - movem.l (%sp),#15420 - lea (32,%sp),%sp - rts -.L12: - move.l #secondary_widget,%d0 - moveq #24,%d4 - move.l %d0,%d3 - move.l %d0,%d5 - clr.w %d3 - swap %d3 - lsr.l %d4,%d5 - move.l %d0,%d4 - lsr.l #8,%d4 - move.b %d0,51(%a1) - addq.l #4,%a1 - move.b %d5,44(%a1) - move.b %d4,46(%a1) - addq.l #1,%d2 - addq.l #6,%a2 - addq.l #6,%d1 - moveq #12,%d0 - move.b %d3,45(%a1) - cmp.l %d2,%d0 - jne .L11 - jra .L22 - .size generator_page, .-generator_page + jne .L14 + jra .L10 +.L9: + mov3q.l #2,%a1 + mov3q.l #1,%d1 + cmp.l %a0,%d1 + jne .L14 + jra .L10 + .size mg_forward, .-mg_forward .align 2 .type vector_generate.part.0, @function vector_generate.part.0: - lea (-968,%sp),%sp + lea (-960,%sp),%sp moveq #15,%d1 movem.l #31996,(%sp) - move.l 976(%sp),%a0 + move.l 968(%sp),%a0 mvz.b (%a0),%d0 - move.l %d0,62(%sp) + move.l %d0,78(%sp) cmp.l %d0,%d1 - jcc .L24 + jcc .L16 moveq #15,%d2 - move.l %d2,62(%sp) -.L24: + move.l %d2,78(%sp) +.L16: moveq #16,%d0 - move.l 976(%sp),%a0 + move.l 968(%sp),%a0 mvz.b 1(%a0),%d3 - move.l %d3,58(%sp) + move.l %d3,70(%sp) cmp.l %d3,%d0 - jcc .L25 + jcc .L17 moveq #16,%d1 - move.l %d1,58(%sp) -.L25: + move.l %d1,70(%sp) +.L17: moveq #11,%d0 - move.l 976(%sp),%a0 + move.l 968(%sp),%a0 mvz.b 2(%a0),%d2 - move.l %d2,74(%sp) + move.l %d2,66(%sp) cmp.l %d2,%d0 - jcc .L26 + jcc .L18 moveq #11,%d1 - move.l %d1,74(%sp) -.L26: + move.l %d1,66(%sp) +.L18: mov3q.l #4,%d0 - move.l 976(%sp),%a0 + move.l 968(%sp),%a0 mvz.b 3(%a0),%d2 - move.l %d2,66(%sp) + move.l %d2,82(%sp) cmp.l %d2,%d0 - jcc .L27 - mov3q.l #4,66(%sp) -.L27: - move.l 976(%sp),%a0 + jcc .L19 + mov3q.l #4,82(%sp) +.L19: + move.l 968(%sp),%a0 moveq #126,%d0 mvz.b 4(%a0),%d1 - move.l %d1,70(%sp) + move.l %d1,62(%sp) cmp.l %d1,%d0 - jcc .L28 + jcc .L20 moveq #126,%d1 - move.l %d1,70(%sp) -.L28: + move.l %d1,62(%sp) +.L20: moveq #127,%d0 - move.l 976(%sp),%a0 + move.l 968(%sp),%a0 mvz.b 5(%a0),%d2 - move.l %d2,78(%sp) + move.l %d2,86(%sp) cmp.l %d2,%d0 - jcc .L29 + jcc .L21 moveq #127,%d1 - move.l %d1,78(%sp) -.L29: + move.l %d1,86(%sp) +.L21: moveq #12,%d0 - move.l 976(%sp),%a0 + move.l 968(%sp),%a0 mvz.b 6(%a0),%d2 - move.l %d2,50(%sp) + move.l %d2,58(%sp) cmp.l %d2,%d0 - jcc .L30 + jcc .L22 moveq #12,%d1 - move.l %d1,50(%sp) -.L30: + move.l %d1,58(%sp) +.L22: moveq #24,%d1 - move.l 976(%sp),%a0 + move.l 968(%sp),%a0 move.b 8(%a0),%d0 mvz.b 7(%a0),%d2 - move.l %d2,54(%sp) - move.b %d0,95(%sp) + move.l %d2,%a6 + move.b %d0,91(%sp) cmp.l %d2,%d1 - jcc .L31 - moveq #24,%d2 - move.l %d2,54(%sp) -.L31: - move.l 976(%sp),%a0 - move.l 54(%sp),%a1 - move.l 980(%sp),%d4 + jcc .L23 + move.w #24,%a6 +.L23: + move.l 968(%sp),%a0 + lea (-12,%a6),%a1 + move.l 972(%sp),%d6 move.b 9(%a0),%d0 - lea (-12,%a1),%a1 - move.l %a1,82(%sp) + move.l %a1,74(%sp) tst.b %d0 - jeq .L32 + jeq .L24 moveq #64,%d1 - cmp.l %d4,%d1 - jcs .L105 + cmp.l %d6,%d1 + jcs .L95 mvz.b %d0,%d0 - cmp.l %d4,%d0 - jcs .L106 -.L32: - move.l 972(%sp),%a0 - lea (712,%sp),%a3 - lea (968,%sp),%a6 - move.b 983(%sp),256(%a0) - move.l %a0,96(%sp) - move.l %a3,%a1 -.L35: - st %d0 - clr.b (%a0) - move.b %d0,3(%a0) - move.b %d0,2(%a0) - move.b %d0,1(%a0) - move.l (%a0)+,(%a1)+ - cmp.l %a1,%a6 - jne .L35 - move.l 62(%sp),%d5 - moveq #11,%d1 - move.l #-1640531527,%d2 - clr.l %d6 - move.l #2146121005,%d7 - lsl.l %d1,%d5 - lea (200,%sp),%a2 - lea (456,%sp),%a4 - move.l %a2,%d3 - move.l %d5,%a6 - move.l 988(%sp),%d5 - move.l %d5,%d1 - eor.l %d2,%d1 + cmp.l %d6,%d0 + jcs .L96 +.L24: + move.l 964(%sp),%a0 + move.l %sp,%d0 + move.l 964(%sp),%a2 + add.l #960,%d0 + move.l %a2,%a1 + move.b 975(%sp),256(%a0) + lea (704,%sp),%a0 + move.l %a0,%a3 +.L27: + st %d1 + clr.b (%a1) + move.b %d1,3(%a1) + move.b %d1,2(%a1) + move.b %d1,1(%a1) + move.l (%a1)+,(%a3)+ + cmp.l %a3,%d0 + jne .L27 + move.l 980(%sp),%d1 + move.l #-1640531527,%d4 + move.l 78(%sp),%d7 + moveq #11,%d3 + clr.l %d2 + eor.l %d4,%d1 + lsl.l %d3,%d7 + moveq #15,%d3 + lea (192,%sp),%a1 + lea (448,%sp),%a5 + move.l %a1,%d5 move.l %d1,%d0 clr.w %d0 swap %d0 eor.l %d1,%d0 - muls.l %d7,%d0 - moveq #15,%d7 + move.l #2146121005,%d1 + muls.l %d1,%d0 move.l %d0,%d1 - lsr.l %d7,%d1 + lsr.l %d3,%d1 eor.l %d1,%d0 move.l #-2073254261,%d1 muls.l %d1,%d0 - move.l %d0,%d7 - clr.w %d7 - swap %d7 - eor.l %d0,%d7 + move.l %d0,%d3 + clr.w %d3 + swap %d3 + eor.l %d0,%d3 mov3q.l #3,%d0 - and.l %d6,%d0 - mvz.w %d7,%d7 + and.l %d2,%d0 + mvz.w %d3,%d3 tst.l %d0 - jeq .L36 -.L108: - add.l %a6,%d7 - move.l %d7,(%a4) -.L37: - move.l %d3,%a0 - move.l %d6,%d0 -.L39: - move.l -4(%a0),%d1 - lea (968,%sp),%a5 - lea (%a5,%d1.l*4),%a1 - cmp.l -512(%a1),%d7 - jcc .L38 - move.l %d1,(%a0) + jeq .L28 +.L98: + add.l %d7,%d3 + move.l %d3,(%a5) +.L29: + move.l %d5,%a3 + move.l %d2,%d0 + move.l %a0,50(%sp) +.L31: + move.l -4(%a3),%d1 + lea (960,%sp),%a0 + lea (%a0,%d1.l*4),%a4 + cmp.l -512(%a4),%d3 + jcc .L92 + move.l %d1,(%a3) subq.l #1,%d0 - subq.l #4,%a0 + subq.l #4,%a3 tst.l %d0 - jne .L39 -.L38: - lea (%sp,%d0.l*4),%a0 - move.l %d6,%a5 - add.l #-1640531527,%d2 - addq.l #1,%a5 - addq.l #4,%a4 - addq.l #4,%d3 - move.l %d6,200(%a0) - cmp.l %d4,%a5 - jeq .L107 -.L69: - move.l %d5,%d1 - move.l #2146121005,%d7 - eor.l %d2,%d1 - move.l %a5,%d6 + jne .L31 +.L92: + lea (%sp,%d0.l*4),%a3 + move.l %d2,%d3 + add.l #-1640531527,%d4 + move.l 50(%sp),%a0 + addq.l #1,%d3 + addq.l #4,%a5 + addq.l #4,%d5 + move.l %d2,192(%a3) + cmp.l %d6,%d3 + jeq .L97 +.L61: + move.l 980(%sp),%d1 + move.l %d3,%d2 + moveq #15,%d3 + eor.l %d4,%d1 move.l %d1,%d0 clr.w %d0 swap %d0 eor.l %d1,%d0 - muls.l %d7,%d0 - moveq #15,%d7 + move.l #2146121005,%d1 + muls.l %d1,%d0 move.l %d0,%d1 - lsr.l %d7,%d1 + lsr.l %d3,%d1 eor.l %d1,%d0 move.l #-2073254261,%d1 muls.l %d1,%d0 - move.l %d0,%d7 - clr.w %d7 - swap %d7 - eor.l %d0,%d7 + move.l %d0,%d3 + clr.w %d3 + swap %d3 + eor.l %d0,%d3 mov3q.l #3,%d0 - and.l %d6,%d0 - mvz.w %d7,%d7 + and.l %d2,%d0 + mvz.w %d3,%d3 tst.l %d0 - jne .L108 -.L36: - move.l %d7,(%a4) - tst.l %d6 - jne .L37 + jne .L98 +.L28: + move.l %d3,(%a5) + tst.l %d2 + jne .L29 clr.l %d0 - lea (%sp,%d0.l*4),%a0 - move.l %d6,%a5 - add.l #-1640531527,%d2 - addq.l #1,%a5 - addq.l #4,%a4 - addq.l #4,%d3 - move.l %d6,200(%a0) - cmp.l %d4,%a5 - jne .L69 -.L107: - move.w %a5,%d0 - mulu.w 60(%sp),%d0 + lea (%sp,%d0.l*4),%a3 + move.l %d2,%d3 + add.l #-1640531527,%d4 + addq.l #1,%d3 + addq.l #4,%a5 + addq.l #4,%d5 + move.l %d2,192(%a3) + cmp.l %d6,%d3 + jne .L61 +.L97: + move.l 82(%sp),%a5 + moveq #24,%d5 + lea scales,%a3 + moveq #100,%d7 + move.w #12,%a4 + mvz.w (%a3,%a5.l*2),%d4 + move.l 74(%sp),%a3 + moveq #-12,%d0 + move.l 74(%sp),%a5 + sub.l %a6,%a4 + sub.l 66(%sp),%d5 + sub.l 58(%sp),%a3 + add.l 58(%sp),%a5 + clr.l 54(%sp) + clr.l 50(%sp) + move.l %a0,82(%sp) + move.l %d2,46(%sp) +.L42: + move.l %d5,%d1 + moveq #12,%d2 + add.l %d0,%d1 + remu.l %d2,%d6:%d1 + btst %d6,%d4 + jeq .L34 +.L100: + cmp.l %a3,%d0 + jge .L35 + move.l %a4,%d1 + add.l %d0,%d1 + tst.l %d1 + jlt .L99 + cmp.l %d1,%d7 + jle .L37 +.L103: + move.l %d0,54(%sp) + moveq #12,%d2 + addq.l #1,%d0 + move.l %d1,%d7 + move.l %d5,%d1 + add.l %d0,%d1 + remu.l %d2,%d6:%d1 + btst %d6,%d4 + jne .L100 +.L34: + addq.l #1,%d0 + moveq #13,%d1 + cmp.l %d0,%d1 + jne .L42 +.L105: + move.w 72(%sp),%d0 + move.l 82(%sp),%a0 + move.l 46(%sp),%d2 + mulu.w %d3,%d0 addq.l #8,%d0 lsr.l #4,%d0 - jeq .L42 + jeq .L43 mvz.w %d0,%d0 - lea (%a2,%d0.l*4),%a1 -.L43: - move.l (%a2)+,%d0 - lea (%sp,%d0.l*4),%a0 + lea (%a1,%d0.l*4),%a4 +.L44: + move.l (%a1)+,%d0 + lea (%sp,%d0.l*4),%a3 moveq #1,%d0 - move.b %d0,712(%a0) - cmp.l %a1,%a2 - jne .L43 -.L42: + move.b %d0,704(%a3) + cmp.l %a1,%a4 + jne .L44 +.L43: moveq #12,%d1 - moveq #12,%d3 - move.l 74(%sp),%d0 + moveq #12,%d6 + move.l 66(%sp),%d0 addq.l #7,%d0 - remu.l %d1,%d2:%d0 + remu.l %d1,%d5:%d0 mvz.w #254,%d1 - sub.l 78(%sp),%d1 - mvz.w #254,%d7 - move.l 82(%sp),%a1 - moveq #12,%d4 + sub.l 86(%sp),%d1 + move.l 74(%sp),%a4 + move.l %d2,%a1 + move.l 74(%sp),%a5 + clr.l %d7 moveq #12,%d0 - sub.l 74(%sp),%d0 - move.l %d2,90(%sp) - mulu.w 986(%sp),%d1 - move.l 82(%sp),%a4 - add.l %d2,%d0 - remu.l %d3,%d2:%d0 - divu.l %d7,%d1 - move.w #24,%a0 - sub.l 50(%sp),%a1 - sub.l 74(%sp),%a0 - sub.l 54(%sp),%d4 + sub.l 66(%sp),%d0 + move.l %d5,70(%sp) + mulu.w 978(%sp),%d1 + add.l 58(%sp),%a5 + add.l %d5,%d0 + remu.l %d6,%d5:%d0 + mvz.w #254,%d6 + sub.l 58(%sp),%a4 + move.l %a5,74(%sp) + move.l 50(%sp),%d2 + move.l %d3,%a3 + divu.l %d6,%d1 + asr.l %d5,%d4 + move.l 78(%sp),%a5 + move.l %a2,82(%sp) + move.l 980(%sp),50(%sp) mov3q.l #1,%d0 - lsl.l %d2,%d0 - move.b %d1,89(%sp) - add.l 50(%sp),%a4 - clr.l 46(%sp) - move.l %a1,%a6 - move.l %a5,82(%sp) - move.l %d6,58(%sp) + and.l %d4,%d0 + move.b %d1,61(%sp) move.l %d0,78(%sp) -.L62: - move.l 46(%sp),%a5 - addq.l #1,46(%sp) - tst.b (%a3) - jeq .L44 +.L54: + move.l %d7,%d6 + addq.l #1,%d7 + tst.b (%a0) + jeq .L45 move.l #-2048144789,%d1 - clr.l %d3 - move.l 46(%sp),%d6 - clr.l %d5 - lea scales,%a1 - moveq #-12,%d0 - move.l 988(%sp),%d7 - muls.l %d1,%d6 - move.l 66(%sp),%a2 - move.l %a3,54(%sp) - mvz.w (%a1,%a2.l*2),%d2 - move.w #100,%a1 - eor.l %d7,%d6 - moveq #15,%d7 - eor.l #-1255572915,%d6 - move.l %d6,%d1 - clr.w %d1 - swap %d1 - eor.l %d6,%d1 - move.l #2146121005,%d6 - muls.l %d6,%d1 - move.l %d1,%d6 - lsr.l %d7,%d6 - eor.l %d6,%d1 - move.l #-2073254261,%d6 - muls.l %d6,%d1 - move.l %d1,%d6 - clr.w %d6 - swap %d6 - eor.l %d1,%d6 - move.l %d6,50(%sp) -.L53: + moveq #15,%d5 + muls.l %d7,%d1 + move.l 50(%sp),%d3 + move.l #2146121005,%d4 + eor.l %d3,%d1 + eor.l #-1255572915,%d1 + move.l %d1,%d0 + clr.w %d0 + swap %d0 + eor.l %d1,%d0 + muls.l %d4,%d0 move.l %d0,%d1 - moveq #12,%d6 - add.l %a0,%d1 - remu.l %d6,%d7:%d1 - btst %d7,%d2 - jeq .L45 -.L110: - cmp.l %a6,%d0 - jge .L46 - move.l %d4,%d1 - add.l %d0,%d1 - tst.l %d1 - jlt .L109 - cmp.l %d1,%a1 - jle .L48 -.L113: - move.l %d0,%d3 - addq.l #1,%d0 - move.l %d1,%a1 - moveq #12,%d6 + lsr.l %d5,%d1 + eor.l %d1,%d0 + move.l #-2073254261,%d1 + muls.l %d1,%d0 move.l %d0,%d1 - add.l %a0,%d1 - remu.l %d6,%d7:%d1 - btst %d7,%d2 - jne .L110 -.L45: - addq.l #1,%d0 - moveq #13,%d1 - cmp.l %d0,%d1 - jne .L53 -.L115: - move.l 50(%sp),%d6 - move.l 54(%sp),%a3 - tst.l %d5 - jeq .L54 - move.l %d6,%d0 + clr.w %d1 + swap %d1 + eor.l %d0,%d1 + tst.l %d2 + jeq .L62 + move.l %d1,%d0 lsr.l #8,%d0 - remu.l %d5,%d1:%d0 - lea (%sp,%d1.l*4),%a1 - move.l 100(%a1),%d3 - add.l #-12,%d3 -.L54: + remu.l %d2,%d4:%d0 + lea (%sp,%d4.l*4),%a6 + move.l 92(%a6),%d4 + add.l #-12,%d4 +.L46: moveq #15,%d0 - and.l %d6,%d0 - cmp.l 62(%sp),%d0 - jcc .L59 + and.l %d1,%d0 + cmp.l %a5,%d0 + jcc .L51 moveq #48,%d0 - and.l %d6,%d0 + and.l %d1,%d0 tst.l %d0 - jne .L71 - and.l 78(%sp),%d2 - tst.l %d2 - jne .L111 -.L71: - move.l 74(%sp),%d0 -.L56: - btst #6,%d6 - jeq .L57 + jne .L64 + tst.l 78(%sp) + jne .L101 +.L64: + move.l 66(%sp),%d0 +.L48: + btst #6,%d1 + jeq .L49 add.l #-12,%d0 -.L57: - cmp.l %a6,%d0 - jlt .L59 - cmp.l %d0,%a4 - jlt .L59 - move.l %d0,%d3 -.L59: - moveq #24,%d0 - mov3q.l #3,%d2 - move.l %d6,%d1 - lsr.l %d0,%d1 - muls.w #5,%d3 - remu.l %d2,%d0:%d1 - add.l #64,%d3 - move.b %d3,1(%a3) +.L49: + cmp.l %a4,%d0 + jlt .L51 + cmp.l 74(%sp),%d0 + jgt .L51 + move.l %d0,%d4 +.L51: + moveq #24,%d3 + move.l %d1,%d0 + lsr.l %d3,%d0 + mov3q.l #3,%d3 + muls.w #5,%d4 + move.l %d0,%d5 + remu.l %d3,%d0:%d5 + add.l #64,%d4 + move.b %d4,1(%a0) addq.l #2,%d0 - mulu.w 72(%sp),%d0 + mulu.w 64(%sp),%d0 lsr.l #2,%d0 - move.b %d0,2(%a3) - move.l %a5,%d0 - and.l %d2,%d0 + move.b %d0,2(%a0) + mov3q.l #3,%d0 + and.l %d6,%d0 tst.l %d0 - jeq .L60 - and.l #3145728,%d6 - tst.l %d6 - jeq .L60 - move.b 89(%sp),%d0 - move.b %d0,3(%a3) -.L44: - addq.l #4,%a3 - cmp.l 58(%sp),%a5 - jne .L62 - move.l 82(%sp),%a5 - tst.l 980(%sp) - jeq .L63 - mvz.b 95(%sp),%d0 - moveq #63,%d3 - cmp.l %d0,%d3 - jcs .L112 - move.l 980(%sp),%d6 - move.l %d6,%d1 - move.l 972(%sp),%a2 - move.l %d6,%d4 - move.l 976(%sp),%a0 - subq.l #1,%d4 - remu.l %d6,%d2:%d0 - move.b 10(%a0),%d3 - mvz.w %d6,%d0 - move.l 96(%sp),%a0 - move.l %d6,%d5 - lea (%a2,%d0.l*4),%a1 + jeq .L52 + and.l #3145728,%d1 + tst.l %d1 + jeq .L52 + move.b 61(%sp),%d0 + move.b %d0,3(%a0) +.L45: + addq.l #4,%a0 + cmp.l %a1,%d6 + jne .L54 + move.l 82(%sp),%a2 + move.l %a3,%d3 + tst.l 972(%sp) + jeq .L55 + mvz.b 91(%sp),%d0 + moveq #63,%d4 + cmp.l %d0,%d4 + jcs .L102 + move.l 972(%sp),%d5 + move.l 968(%sp),%a0 + move.l 964(%sp),%a3 + remu.l %d5,%d2:%d0 + move.b 10(%a0),%d4 + mvz.w %d5,%d0 + move.l 972(%sp),%d1 + subq.l #1,%d5 + lea (%a3,%d0.l*4),%a1 sub.l %d2,%d1 - move.l %a5,%d2 -.L66: + move.l 972(%sp),%d2 +.L58: move.l %d1,%d6 addq.l #1,%d1 - remu.l %d5,%d0:%d6 - tst.b %d3 - jeq .L65 - move.l %d4,%d6 + remu.l %d2,%d0:%d6 + tst.b %d4 + jeq .L57 + move.l %d5,%d6 sub.l %d0,%d6 move.l %d6,%d0 -.L65: - remu.l %d2,%d6:%d0 - lea (968,%sp),%a3 - lea (%a3,%d6.l*4),%a2 - move.l -256(%a2),(%a0)+ - cmp.l %a0,%a1 - jne .L66 -.L63: +.L57: + remu.l %d3,%d6:%d0 + lea (960,%sp),%a3 + lea (%a3,%d6.l*4),%a0 + move.l -256(%a0),(%a2)+ + cmp.l %a1,%a2 + jne .L58 +.L55: movem.l (%sp),#31996 mov3q.l #1,%d0 - lea (968,%sp),%sp + lea (960,%sp),%sp rts -.L109: +.L99: neg.l %d1 - cmp.l %d1,%a1 - jgt .L113 -.L48: + cmp.l %d1,%d7 + jgt .L103 +.L37: addq.l #1,%d0 - jra .L53 -.L46: - cmp.l %a4,%d0 - jgt .L50 - lea (%sp,%d5.l*4),%a2 - move.l %d0,%a3 - addq.l #1,%d5 - lea (12,%a3),%a3 - move.l %a3,100(%a2) -.L50: - move.l %d4,%d1 + jra .L42 +.L35: + cmp.l %a5,%d0 + jgt .L39 + move.l 50(%sp),%d1 + move.l %d0,%a0 + lea (12,%a0),%a0 + lea (%sp,%d1.l*4),%a6 + addq.l #1,%d1 + move.l %d1,50(%sp) + move.l %a0,92(%a6) +.L39: + move.l %a4,%d1 add.l %d0,%d1 tst.l %d1 - jlt .L114 -.L51: - cmp.l %d1,%a1 - jle .L45 - move.l %d1,%a1 - move.l %d0,%d3 - moveq #13,%d1 + jlt .L104 +.L40: + cmp.l %d1,%d7 + jle .L34 + move.l %d0,54(%sp) + move.l %d1,%d7 addq.l #1,%d0 + moveq #13,%d1 cmp.l %d0,%d1 - jne .L53 - jra .L115 -.L114: + jne .L42 + jra .L105 +.L104: neg.l %d1 - jra .L51 -.L60: - move.b 987(%sp),%d0 - move.b %d0,3(%a3) - jra .L44 -.L112: - move.l 980(%sp),%d6 + jra .L40 +.L52: + move.b 979(%sp),%d0 + move.b %d0,3(%a0) + jra .L45 +.L62: + move.l 54(%sp),%d4 + jra .L46 +.L102: + move.l 972(%sp),%d5 moveq #63,%d0 - move.l 976(%sp),%a0 - move.l %d6,%d1 - move.l 972(%sp),%a2 - move.l %d6,%d4 - remu.l %d6,%d2:%d0 - move.b 10(%a0),%d3 - mvz.w %d6,%d0 - move.l 96(%sp),%a0 - subq.l #1,%d4 - move.l %d6,%d5 + move.l 968(%sp),%a0 + move.l 964(%sp),%a3 + remu.l %d5,%d2:%d0 + move.l 972(%sp),%d1 + mvz.w %d5,%d0 + move.b 10(%a0),%d4 + subq.l #1,%d5 sub.l %d2,%d1 - lea (%a2,%d0.l*4),%a1 - move.l %a5,%d2 - jra .L66 -.L111: - move.l 90(%sp),%d0 - jra .L56 -.L106: - move.l 972(%sp),%a0 - move.l %d0,%d4 - lea (712,%sp),%a3 - lea (968,%sp),%a6 - move.b 983(%sp),256(%a0) - move.l %a0,96(%sp) - move.l %a3,%a1 - jra .L35 -.L105: + lea (%a3,%d0.l*4),%a1 + move.l 972(%sp),%d2 + jra .L58 +.L101: + move.l 70(%sp),%d0 + jra .L48 +.L96: + move.l 964(%sp),%a0 + move.l %d0,%d6 + move.l 964(%sp),%a2 + move.l %sp,%d0 + move.l %a2,%a1 + add.l #960,%d0 + move.b 975(%sp),256(%a0) + lea (704,%sp),%a0 + move.l %a0,%a3 + jra .L27 +.L95: mvz.b %d0,%d0 - moveq #64,%d4 - cmp.l %d4,%d0 - jcc .L32 - jra .L106 + moveq #64,%d6 + cmp.l %d6,%d0 + jcc .L24 + jra .L96 .size vector_generate.part.0, .-vector_generate.part.0 .align 2 - .type settings, @function -settings: - lea (-44,%sp),%sp - movem.l #19460,(%sp) - clr.w %d2 - move.l 1187521622,%d0 - move.l #540019724,%a1 - move.l %a0,16(%sp) - move.l %d0,%a0 + .type midi_control, @function +midi_control: + subq.l #4,%sp + move.l %a2,-(%sp) + move.l %d2,-(%sp) + move.l 1187521622,%a0 + mov3q.l #3,%d2 + move.b 269161679,%d0 add.l #585088,%a0 - clr.b %d0 - move.b 269161679,%d1 - move.w %d2,40(%sp) - move.l #185270273,%d2 - move.l %d2,32(%sp) + mvz.w 18(%sp),%d1 + move.l 20(%sp),%a1 + lsl.l #4,%d1 + and.l %d2,%d0 + mvz.w #6322,%d2 + move.l %d1,%a2 + lea (6206,%a2),%a2 + muls.l %d2,%d0 + moveq #22,%d2 + add.l %d0,%a0 + mvz.b (%a0,%a2.l),%d0 + cmp.l %d0,%d2 + jeq .L107 + mov3q.l #6,%d0 + cmp.l %a1,%d0 + jeq .L113 + lea (first.2),%a0 + mvz.b (%a0,%a1.l),%d0 +.L106: + move.l (%sp)+,%d2 + move.l (%sp)+,%a2 + addq.l #4,%sp + rts +.L113: + move.l 16(%sp),%d0 + addq.l #1,%d0 + move.l (%sp)+,%d2 + move.l (%sp)+,%a2 + addq.l #4,%sp + rts +.L107: + move.l 1187521622,%a0 + move.l %a1,%d0 + move.b 269161679,%d2 + add.l #6194,%d0 + move.l %d0,%a2 + add.l %d1,%a2 + add.l #585088,%a0 + move.l #vector_control_max,%d0 + mvz.b (%a1,%d0.l),%d0 + move.b %d2,%d1 mov3q.l #3,%d2 - move.b %d0,42(%sp) - move.w 50(%sp),%d0 - move.l %a1,36(%sp) and.l %d2,%d1 mvz.w #6322,%d2 - mulu.w #30,%d0 muls.l %d2,%d1 add.l %d1,%a0 - mvz.b 62(%a0,%d0.l),%d1 - subq.l #1,%d1 - tst.l %d1 - jeq .L140 - lea (23,%sp),%a6 - sub.l %a1,%a1 -.L125: - move.l %a1,%d1 - add.l #489,%d1 - add.l %d0,%d1 - mov3q.l #2,%d2 - cmp.l %a1,%d2 - jcc .L141 -.L122: - move.b (%a0,%d1.l),(%a6) - addq.l #1,%a1 - moveq #9,%d1 - cmp.l %a1,%d1 - jeq .L124 - move.l %a1,%d1 - add.l #489,%d1 - addq.l #1,%a6 - add.l %d0,%d1 - mov3q.l #2,%d2 - cmp.l %a1,%d2 - jcs .L122 -.L141: - lea 63(%a1,%d0.l),%a2 - addq.l #1,%a1 - move.b (%a0,%a2.l),(%a6)+ - jra .L125 -.L124: - move.b 23(%sp),%d0 - moveq #15,%d1 - mov3q.l #4,%d2 - and.l %d0,%d1 - mvz.b %d0,%d0 - lsr.l #4,%d0 - move.w %d0,%a0 - move.b %d1,32(%sp) - cmp.l %d0,%d2 - jcs .L142 - move.w %a0,%d0 - move.b 24(%sp),%d1 - moveq #16,%d2 - move.b %d0,35(%sp) - moveq #31,%d0 - and.l %d1,%d0 - move.w %d0,%a0 - cmp.l %d0,%d2 - jcs .L143 -.L127: - move.w %a0,%d2 - move.b 25(%sp),%d0 - lsr.l #5,%d1 - move.b %d2,33(%sp) - mov3q.l #1,%d2 - and.l %d2,%d1 - moveq #15,%d2 - and.l %d0,%d2 - move.b %d1,42(%sp) - move.b %d2,%d1 - move.l %d2,%a0 - moveq #11,%d2 - cmp.l %a0,%d2 - jcs .L144 -.L128: + move.b (%a0,%a2.l),%d1 + add.l #64,%d1 + mvz.b %d1,%d1 + cmp.l %d0,%d1 + jcc .L106 + move.l (%sp)+,%d2 + move.l %d1,%d0 + move.l (%sp)+,%a2 + addq.l #4,%sp + rts + .size midi_control, .-midi_control + .align 2 + .type midi_format_10, @function +midi_format_10: + lea (-24,%sp),%sp + movem.l #1052,(%sp) + move.b 269161676,%d0 + pea 10.w mvz.b %d0,%d0 - lsr.l #4,%d0 - move.b %d1,34(%sp) - moveq #12,%d1 - move.w %d0,%a0 + move.l %d0,-(%sp) + jsr midi_control + addq.l #8,%sp + tst.l %d0 + jeq .L123 + moveq #99,%d1 cmp.l %d0,%d1 - jcs .L145 -.L129: - move.b 26(%sp),%d1 - move.w %a0,%d2 - mvz.b %d1,%d0 - move.b %d2,38(%sp) - moveq #126,%d2 - cmp.l %d0,%d2 - jcs .L146 -.L130: - move.b 27(%sp),%d0 - move.b %d1,36(%sp) - tst.b %d0 - jlt .L147 -.L131: - move.b 28(%sp),%d1 - move.b %d0,37(%sp) - moveq #24,%d2 - mvz.b %d1,%d0 - cmp.l %d0,%d2 - jcs .L148 -.L132: - mvz.b 29(%sp),%d0 - move.b %d1,39(%sp) - moveq #63,%d1 + jcs .L124 + moveq #9,%d1 cmp.l %d0,%d1 - jcs .L149 -.L133: - move.b 30(%sp),%d1 - lsl.l #8,%d0 - mvz.b %d1,%d2 - move.l %d2,%a0 - moveq #64,%d2 - cmp.l %a0,%d2 - jcs .L150 -.L134: - move.b %d1,%d0 - lea (32,%sp),%a3 - move.w %d0,40(%sp) -.L120: - move.l 16(%sp),%a0 + jcs .L125 + moveq #10,%d3 + mov3q.l #1,%a1 + remu.l %d3,%d1:%d0 + clr.b %d4 + move.l 28(%sp),%a0 + add.l #48,%d1 + move.b %d1,(%a0) + move.l 28(%sp),%a0 + move.b %d4,(%a0,%a1.l) +.L114: + movem.l (%sp),#1052 + lea (24,%sp),%sp + rts +.L124: + moveq #100,%d2 + mov3q.l #2,%a0 + move.l %d0,%d1 + mov3q.l #3,%a1 + divu.l %d2,%d1 + move.l 28(%sp),%a2 + moveq #10,%d2 + mov3q.l #1,16(%sp) + add.l 28(%sp),%a0 + add.l #48,%d1 + move.b %d1,(%a2) + move.l %d0,%d1 + divu.l %d2,%d1 + move.l 28(%sp),%a2 + move.l %d1,%d4 + remu.l %d2,%d3:%d4 + move.l 16(%sp),%d2 + move.l %d3,%d1 + add.l #48,%d1 + move.b %d1,(%a2,%d2.l) +.L126: + moveq #10,%d3 + remu.l %d3,%d1:%d0 + clr.b %d4 + add.l #48,%d1 + move.b %d1,(%a0) + move.l 28(%sp),%a0 + move.b %d4,(%a0,%a1.l) + jra .L114 +.L123: + move.l 28(%sp),%a0 + move.l #1330005504,(%a0) + movem.l (%sp),#1052 + lea (24,%sp),%sp + rts +.L125: + moveq #10,%d2 + mov3q.l #1,%a0 + move.l %d0,%d1 + mov3q.l #2,%a1 + divu.l %d2,%d1 + clr.l 16(%sp) + move.l 28(%sp),%a2 + add.l 28(%sp),%a0 + move.l %d1,%d4 + remu.l %d2,%d3:%d4 + move.l 16(%sp),%d2 + move.l %d3,%d1 + add.l #48,%d1 + move.b %d1,(%a2,%d2.l) + jra .L126 + .size midi_format_10, .-midi_format_10 + .align 2 + .type midi_save, @function +midi_save: + lea (-36,%sp),%sp + clr.l %d1 + movem.l #7420,(%sp) + move.l 40(%sp),%d6 + moveq #127,%d5 + and.l 48(%sp),%d5 + move.l 44(%sp),%a4 + lsl.l #4,%d6 + move.l %d6,%d4 + add.l #6194,%d4 +.L131: + mov3q.l #6,%d0 + cmp.l %d1,%d0 + jeq .L136 + mov3q.l #5,%d7 + move.l %d1,%d0 + cmp.l %d1,%d7 + jcc .L130 + subq.l #1,%d0 +.L130: + move.b (%a4,%d0.l),%d3 + move.l #269161679,%a2 + mov3q.l #3,%d7 + move.b (%a2),%d0 + move.l 1187521622,%a1 + add.l #585088,%a1 + move.b (%a2),%d2 + move.l %d4,%a3 + add.l %d1,%a3 + addq.l #1,%d1 + add.l #-64,%d3 + and.l %d7,%d0 + and.l %d7,%d2 + mvz.w #6322,%d7 + muls.l %d7,%d0 + muls.l %d7,%d2 + move.l %d0,%a0 + add.l #269110990,%a0 + moveq #12,%d0 + add.l %d2,%a1 + move.b %d3,(%a1,%a3.l) + move.b %d3,(%a0,%a3.l) + cmp.l %d1,%d0 + jne .L131 +.L137: + move.b (%a2),%d0 + move.l 1187521622,%d1 + move.l %d6,%a1 + move.b (%a2),%d2 + move.l %d1,%a2 + mov3q.l #3,%d1 + add.l #585088,%a2 + lea (6206,%a1),%a1 + and.l %d1,%d0 + and.l %d1,%d2 + muls.l %d7,%d0 + muls.l %d7,%d2 + moveq #22,%d7 + move.l %d0,%a0 + add.l #269110990,%a0 + add.l %d2,%a2 + move.b %d7,(%a2,%a1.l) + move.b %d7,(%a0,%a1.l) + movem.l (%sp),#7420 + lea (36,%sp),%sp + rts +.L136: + move.l #269161679,%a2 + mov3q.l #3,%d7 + move.b (%a2),%d0 + move.l 1187521622,%a1 + add.l #585088,%a1 + move.b (%a2),%d2 + move.b %d5,%d3 + move.l %d4,%a3 + add.l %d1,%a3 + addq.l #1,%d1 + and.l %d7,%d0 + and.l %d7,%d2 + mvz.w #6322,%d7 + add.l #-64,%d3 + muls.l %d7,%d0 + muls.l %d7,%d2 + move.l %d0,%a0 + add.l #269110990,%a0 + moveq #12,%d0 + add.l %d2,%a1 + move.b %d3,(%a1,%a3.l) + move.b %d3,(%a0,%a3.l) + cmp.l %d1,%d0 + jne .L131 + jra .L137 + .size midi_save, .-midi_save + .align 2 + .type midi_params, @function +midi_params: + lea (-24,%sp),%sp + clr.l %d0 + movem.l #7196,(%sp) + mvz.w 30(%sp),%d2 + move.l 32(%sp),%a2 + lea vector_control_max,%a4 + lea (first.2),%a3 + lsl.l #4,%d2 + move.l %d2,%a1 + add.l #6194,%d2 + lea (6206,%a1),%a1 +.L146: + mov3q.l #6,%d1 + cmp.l %d0,%d1 + jne .L139 + mov3q.l #7,%d0 +.L139: + move.l 1187521622,%a0 + mov3q.l #3,%d3 + move.b 269161679,%d1 + mvz.w #6322,%d4 + add.l #585088,%a0 + and.l %d3,%d1 + moveq #22,%d3 + muls.l %d4,%d1 + add.l %d1,%a0 + mvz.b (%a0,%a1.l),%d1 + cmp.l %d1,%d3 + jeq .L140 + move.b (%a3,%d0.l),%d1 +.L141: + mov3q.l #5,%d3 + cmp.l %d0,%d3 + jcc .L149 + move.b %d1,-1(%a2,%d0.l) + addq.l #1,%d0 + moveq #12,%d4 + cmp.l %d0,%d4 + jne .L146 + mov3q.l #6,-(%sp) + move.l 32(%sp),-(%sp) + jsr midi_control + movem.l 8(%sp),#7196 + move.l 44(%sp),%a0 + move.l %d0,(%a0) + lea (32,%sp),%sp + rts +.L149: + move.b %d1,(%a2,%d0.l) + addq.l #1,%d0 + jra .L146 +.L140: + move.l 1187521622,%a0 + mov3q.l #3,%d4 + move.b 269161679,%d3 + add.l #585088,%a0 + mvz.b (%a4,%d0.l),%d1 + and.l %d4,%d3 + mvz.w #6322,%d4 + muls.l %d4,%d3 + add.l %d3,%a0 + move.l %d2,%d3 + add.l %d0,%d3 + move.b (%a0,%d3.l),%d3 + add.l #64,%d3 + mvz.b %d3,%d3 + cmp.l %d1,%d3 + jcc .L141 + move.l %d3,%d1 + jra .L141 + .size midi_params, .-midi_params + .align 2 + .type generator_page, @function +generator_page: + lea (-32,%sp),%sp + movem.l #15420,(%sp) + tst.l src_page_ready + jeq .L151 + move.l 36(%sp),%d0 + cmp.l src_page_source.l,%d0 + jeq .L152 +.L151: + lea src_page,%a0 + move.l 36(%sp),%a1 + sub.l %a0,%a1 +.L153: + move.b (%a1,%a0.l),%d0 + move.b %d0,(%a0)+ + cmp.l #src_page+402,%a0 + jne .L153 + lea vector_control_names,%a5 + clr.l %d2 + lea src_page+202,%a1 + lea (formats.6),%a4 + lea src_page+22,%a2 + move.l #src_page+28,%d1 +.L160: + move.l (%a5)+,%a3 + sub.l %a0,%a0 +.L154: + move.b (%a3,%a0.l),%d0 + jeq .L155 + move.b %d0,(%a2,%a0.l) + addq.l #1,%a0 + mov3q.l #5,%d3 + cmp.l %a0,%d3 + jne .L154 +.L155: + add.l %a2,%a0 +.L157: + clr.b (%a0)+ + cmp.l %a0,%d1 + jne .L157 + move.l (%a4)+,%d0 + move.l %d0,%d3 + clr.w %d3 + swap %d3 + moveq #24,%d4 + move.l %d0,%d5 + lsr.l %d4,%d5 + move.l %d0,%d4 + lsr.l #8,%d4 + move.b %d0,3(%a1) + mov3q.l #5,%d0 + move.b %d5,(%a1) + move.b %d4,2(%a1) + move.b %d3,1(%a1) + cmp.l %d2,%d0 + jcs .L161 + move.l #generator_widget,%d0 + moveq #24,%d4 + move.l %d0,%d3 + move.l %d0,%d5 + clr.w %d3 + swap %d3 + lsr.l %d4,%d5 + move.l %d0,%d4 + lsr.l #8,%d4 + move.b %d0,51(%a1) + addq.l #4,%a1 + move.b %d5,44(%a1) + move.b %d4,46(%a1) + addq.l #1,%d2 + addq.l #6,%a2 + addq.l #6,%d1 + moveq #12,%d0 + move.b %d3,45(%a1) + cmp.l %d2,%d0 + jne .L160 +.L171: + mvz.w #21845,%d3 + move.l 36(%sp),%d0 + move.l #1431655765,%d4 + move.l %d4,src_page+398 + mov3q.l #1,src_page_ready + move.l %d3,src_page+394 + move.l %d0,src_page_source +.L152: + move.l #src_page,%d0 + movem.l (%sp),#15420 + lea (32,%sp),%sp + rts +.L161: + move.l #secondary_widget,%d0 + moveq #24,%d4 + move.l %d0,%d3 + move.l %d0,%d5 + clr.w %d3 + swap %d3 + lsr.l %d4,%d5 + move.l %d0,%d4 + lsr.l #8,%d4 + move.b %d0,51(%a1) + addq.l #4,%a1 + move.b %d5,44(%a1) + move.b %d4,46(%a1) + addq.l #1,%d2 + addq.l #6,%a2 + addq.l #6,%d1 + moveq #12,%d0 + move.b %d3,45(%a1) + cmp.l %d2,%d0 + jne .L160 + jra .L171 + .size generator_page, .-generator_page + .section .rodata.str1.1,"aMS",@progbits,1 +.LC0: + .string "VEC" + .section .rodata +.LC1: + .string "VECTOR 1/2" + .string "" + .text + .align 2 + .type vector_midi_page, @function +vector_midi_page: + lea (-28,%sp),%sp + move.l 32(%sp),%a1 + move.l 36(%sp),%d0 + movem.l #31756,(%sp) + lea 1(%a1,%d0.l),%a3 + tst.l src_page_ready + jne .L173 + cmp.l midi_page_built.l,%a3 + jeq .L174 +.L173: + mov3q.l #1,%d1 + and.l 36(%sp),%d1 + lea src_page,%a0 + sub.l %a0,%a1 +.L175: + move.b (%a1,%a0.l),%d0 + move.b %d0,(%a0)+ + cmp.l #src_page+402,%a0 + jne .L175 + lea .LC0,%a1 + sub.l %a0,%a0 + lea src_page+4,%a2 +.L176: + move.b (%a1),%d0 + addq.l #1,%a1 + tst.b %d0 + jeq .L177 + move.b %d0,(%a2)+ + addq.l #1,%a0 + mov3q.l #5,%d2 + cmp.l %a0,%d2 + jne .L176 +.L177: + add.l #src_page+4,%a0 + lea src_page+10,%a1 +.L179: + clr.b (%a0)+ + cmp.l #src_page+10,%a0 + jne .L179 + moveq #86,%d0 + lea .LC1+1,%a0 + move.b %d0,src_page+9 +.L181: + move.b (%a0)+,(%a1)+ + cmp.l #.LC1+12,%a0 + jne .L181 + move.l %d1,%d0 + add.l #49,%d0 + move.b %d0,src_page+16 + move.w %d1,%d0 + lea src_page+202,%a1 + move.l #src_page+28,%d1 + mulu.w #24,%d0 + move.l %d0,%a6 + move.l %d0,%a5 + add.l #vector_control_names,%a6 + add.l #formats.1,%a5 +.L187: + move.l (%a6)+,%a4 + move.l %d1,%a2 + sub.l %a0,%a0 + subq.l #6,%a2 +.L182: + move.b (%a4,%a0.l),%d0 + jeq .L183 + move.b %d0,(%a2,%a0.l) + addq.l #1,%a0 + mov3q.l #5,%d2 + cmp.l %a0,%d2 + jne .L182 +.L183: + add.l %a2,%a0 +.L185: + clr.b (%a0)+ + cmp.l %a0,%d1 + jne .L185 + moveq #64,%d2 + move.l (%a5)+,%d0 + moveq #24,%d1 + move.l %d0,%d3 + lsr.l %d1,%d3 + move.l %d0,%d1 + lsr.l #8,%d1 + move.b %d0,3(%a1) + addq.l #4,%a1 + move.b %d3,-4(%a1) + move.b %d1,-2(%a1) + moveq #103,%d1 + move.b %d2,44(%a1) + move.l %d0,%d2 + moveq #4,%d0 + clr.w %d2 + swap %d2 + move.b %d1,46(%a1) + move.l %a0,%d1 + addq.l #6,%d1 + move.b %d0,45(%a1) + moveq #-92,%d0 + move.b %d0,47(%a1) + move.b %d2,-3(%a1) + cmp.l #src_page+58,%a0 + jne .L187 + mvz.w #21845,%d1 + move.l #1431655765,%d2 + move.l %d2,src_page+398 + clr.l src_page_ready + move.l %d1,src_page+394 + move.l %a3,midi_page_built +.L174: + move.l #src_page,%d0 + movem.l (%sp),#31756 + lea (28,%sp),%sp + rts + .size vector_midi_page, .-vector_midi_page + .align 2 + .type settings, @function +settings: + lea (-44,%sp),%sp + movem.l #19460,(%sp) + clr.w %d2 + move.l 1187521622,%d0 + move.l #540019724,%a1 + move.l %a0,16(%sp) + move.l %d0,%a0 + add.l #585088,%a0 + clr.b %d0 + move.b 269161679,%d1 + move.w %d2,40(%sp) + move.l #185270273,%d2 + move.l %d2,32(%sp) + mov3q.l #3,%d2 + move.b %d0,42(%sp) + move.w 50(%sp),%d0 + move.l %a1,36(%sp) + and.l %d2,%d1 + mvz.w #6322,%d2 + mulu.w #30,%d0 + muls.l %d2,%d1 + add.l %d1,%a0 + mvz.b 62(%a0,%d0.l),%d1 + subq.l #1,%d1 + tst.l %d1 + jeq .L227 + lea (23,%sp),%a6 + sub.l %a1,%a1 +.L212: + move.l %a1,%d1 + add.l #489,%d1 + add.l %d0,%d1 + mov3q.l #2,%d2 + cmp.l %a1,%d2 + jcc .L228 +.L209: + move.b (%a0,%d1.l),(%a6) + addq.l #1,%a1 + moveq #9,%d1 + cmp.l %a1,%d1 + jeq .L211 + move.l %a1,%d1 + add.l #489,%d1 + addq.l #1,%a6 + add.l %d0,%d1 + mov3q.l #2,%d2 + cmp.l %a1,%d2 + jcs .L209 +.L228: + lea 63(%a1,%d0.l),%a2 + addq.l #1,%a1 + move.b (%a0,%a2.l),(%a6)+ + jra .L212 +.L211: + move.b 23(%sp),%d0 + moveq #15,%d1 + mov3q.l #4,%d2 + and.l %d0,%d1 + mvz.b %d0,%d0 + lsr.l #4,%d0 + move.w %d0,%a0 + move.b %d1,32(%sp) + cmp.l %d0,%d2 + jcs .L229 + move.w %a0,%d0 + move.b 24(%sp),%d1 + moveq #16,%d2 + move.b %d0,35(%sp) + moveq #31,%d0 + and.l %d1,%d0 + move.w %d0,%a0 + cmp.l %d0,%d2 + jcs .L230 +.L214: + move.w %a0,%d2 + move.b 25(%sp),%d0 + lsr.l #5,%d1 + move.b %d2,33(%sp) + mov3q.l #1,%d2 + and.l %d2,%d1 + moveq #15,%d2 + and.l %d0,%d2 + move.b %d1,42(%sp) + move.b %d2,%d1 + move.l %d2,%a0 + moveq #11,%d2 + cmp.l %a0,%d2 + jcs .L231 +.L215: + mvz.b %d0,%d0 + lsr.l #4,%d0 + move.b %d1,34(%sp) + moveq #12,%d1 + move.w %d0,%a0 + cmp.l %d0,%d1 + jcs .L232 +.L216: + move.b 26(%sp),%d1 + move.w %a0,%d2 + mvz.b %d1,%d0 + move.b %d2,38(%sp) + moveq #126,%d2 + cmp.l %d0,%d2 + jcs .L233 +.L217: + move.b 27(%sp),%d0 + move.b %d1,36(%sp) + tst.b %d0 + jlt .L234 +.L218: + move.b 28(%sp),%d1 + move.b %d0,37(%sp) + moveq #24,%d2 + mvz.b %d1,%d0 + cmp.l %d0,%d2 + jcs .L235 +.L219: + mvz.b 29(%sp),%d0 + move.b %d1,39(%sp) + moveq #63,%d1 + cmp.l %d0,%d1 + jcs .L236 +.L220: + move.b 30(%sp),%d1 + lsl.l #8,%d0 + mvz.b %d1,%d2 + move.l %d2,%a0 + moveq #64,%d2 + cmp.l %a0,%d2 + jcs .L237 +.L221: + move.b %d1,%d0 + lea (32,%sp),%a3 + move.w %d0,40(%sp) +.L207: + move.l 16(%sp),%a0 move.l %a0,%d0 move.l (%a3),(%a0)+ move.l 36(%sp),(%a0)+ @@ -759,13 +1302,13 @@ settings: move.b 42(%sp),(%a0) lea (44,%sp),%sp rts -.L150: +.L237: moveq #64,%d1 lea (32,%sp),%a3 move.b %d1,%d0 move.w %d0,40(%sp) - jra .L120 -.L149: + jra .L207 +.L236: move.b 30(%sp),%d1 moveq #63,%d0 lsl.l #8,%d0 @@ -773,33 +1316,33 @@ settings: move.l %d2,%a0 moveq #64,%d2 cmp.l %a0,%d2 - jcc .L134 - jra .L150 -.L148: + jcc .L221 + jra .L237 +.L235: moveq #24,%d1 mvz.b 29(%sp),%d0 move.b %d1,39(%sp) moveq #63,%d1 cmp.l %d0,%d1 - jcc .L133 - jra .L149 -.L147: + jcc .L220 + jra .L236 +.L234: moveq #127,%d0 move.b 28(%sp),%d1 moveq #24,%d2 move.b %d0,37(%sp) mvz.b %d1,%d0 cmp.l %d0,%d2 - jcc .L132 - jra .L148 -.L146: + jcc .L219 + jra .L235 +.L233: moveq #126,%d1 move.b 27(%sp),%d0 move.b %d1,36(%sp) tst.b %d0 - jge .L131 - jra .L147 -.L145: + jge .L218 + jra .L234 +.L232: move.w #12,%a0 move.b 26(%sp),%d1 move.w %a0,%d2 @@ -807,9 +1350,9 @@ settings: move.b %d2,38(%sp) moveq #126,%d2 cmp.l %d0,%d2 - jcc .L130 - jra .L146 -.L144: + jcc .L217 + jra .L233 +.L231: moveq #11,%d1 mvz.b %d0,%d0 lsr.l #4,%d0 @@ -817,9 +1360,9 @@ settings: move.b %d1,34(%sp) moveq #12,%d1 cmp.l %d0,%d1 - jcc .L129 - jra .L145 -.L143: + jcc .L216 + jra .L232 +.L230: move.w #16,%a0 move.b 25(%sp),%d0 lsr.l #5,%d1 @@ -834,9 +1377,9 @@ settings: move.l %d2,%a0 moveq #11,%d2 cmp.l %a0,%d2 - jcc .L128 - jra .L144 -.L142: + jcc .L215 + jra .L231 +.L229: move.w #4,%a0 move.b 24(%sp),%d1 moveq #16,%d2 @@ -846,21 +1389,21 @@ settings: and.l %d1,%d0 move.w %d0,%a0 cmp.l %d0,%d2 - jcc .L127 - jra .L143 -.L140: + jcc .L214 + jra .L230 +.L227: lea (32,%sp),%a3 sub.l %a1,%a1 move.l %a3,%a2 -.L121: +.L208: move.l %a1,%d1 add.l #489,%d1 lea 63(%a1,%d0.l),%a6 add.l %d0,%d1 mov3q.l #2,%d2 cmp.l %a1,%d2 - jcs .L118 -.L151: + jcs .L205 +.L238: addq.l #1,%a1 move.b (%a0,%a6.l),(%a2)+ move.l %a1,%d1 @@ -869,72 +1412,17 @@ settings: add.l %d0,%d1 mov3q.l #2,%d2 cmp.l %a1,%d2 - jcc .L151 -.L118: + jcc .L238 +.L205: move.b (%a0,%d1.l),(%a2) addq.l #1,%a1 mov3q.l #6,%d1 cmp.l %a1,%d1 - jeq .L120 + jeq .L207 addq.l #1,%a2 - jra .L121 + jra .L208 .size settings, .-settings .align 2 - .type any_vector, @function -any_vector: - move.l 1187521622,%d0 - add.l #-1073741824,%d0 - move.l %d2,-(%sp) - cmp.l #133169151,%d0 - jhi .L157 - move.w #34,%a1 - moveq #60,%d1 -.L153: - mov3q.l #3,%d2 - move.l 1187521622,%a0 - add.l #585088,%a0 - move.b 269161679,%d0 - and.l %d2,%d0 - mvz.w #6322,%d2 - muls.l %d2,%d0 - mov3q.l #1,%d2 - add.l %d0,%a0 - mvz.b (%a0,%a1.l),%d0 - add.l %d1,%a0 - addq.l #1,%a1 - add.l #30,%d1 - cmp.l %d0,%d2 - jcs .L155 - mvz.b (%a0),%d0 - moveq #83,%d2 - cmp.l %d0,%d2 - jeq .L168 -.L155: - cmp.l #300,%d1 - jne .L153 -.L157: - move.l (%sp)+,%d2 - clr.l %d0 - rts -.L168: - mvz.b 1(%a0),%d0 - moveq #50,%d2 - cmp.l %d0,%d2 - jne .L155 - mvz.b 2(%a0),%d0 - subq.l #1,%d0 - tst.l %d0 - jeq .L156 - mvz.b 2(%a0),%d0 - subq.l #2,%d0 - tst.l %d0 - jne .L155 -.L156: - move.l (%sp)+,%d2 - mov3q.l #1,%d0 - rts - .size any_vector, .-any_vector - .align 2 .type draw_generator_widget.part.0, @function draw_generator_widget.part.0: lea (-12,%sp),%sp @@ -948,16 +1436,16 @@ draw_generator_widget.part.0: addq.l #4,%sp mov3q.l #6,%d0 cmp.l %a6,%d0 - jeq .L177 + jeq .L247 mov3q.l #5,%d2 move.l %a6,%d0 cmp.l %a6,%d2 - jcc .L172 + jcc .L242 subq.l #1,%d0 -.L172: +.L242: mvz.b 9(%sp,%d0.l),%d0 move.l %d0,%a0 -.L171: +.L241: move.l 48(%sp),-(%sp) move.l 48(%sp),-(%sp) moveq #-2,%d0 @@ -967,9 +1455,9 @@ draw_generator_widget.part.0: move.l %d0,-(%sp) move.l %d1,%d0 cmp.l %d1,%a0 - jcc .L173 + jcc .L243 move.l %a0,%d0 -.L173: +.L243: mulu.w #127,%d0 divu.l %d1,%d0 move.l %d0,-(%sp) @@ -978,361 +1466,1840 @@ draw_generator_widget.part.0: move.l 48(%sp),-(%sp) jsr 1074035124 lea (28,%sp),%sp - move.l (%sp)+,%d2 - move.l (%sp)+,%a6 - lea (12,%sp),%sp + move.l (%sp)+,%d2 + move.l (%sp)+,%a6 + lea (12,%sp),%sp + rts +.L247: + move.b 269161676,%d0 + move.l 1187521622,%a1 + mov3q.l #3,%d2 + move.b 269161679,%d1 + add.l #585088,%a1 + mvz.b %d0,%d0 + and.l %d2,%d1 + mulu.w #30,%d0 + move.l %d0,%a0 + mvz.w #6322,%d0 + lea (497,%a0),%a0 + muls.l %d0,%d1 + add.l %d1,%a1 + move.b (%a1,%a0.l),%d0 + moveq #127,%d1 + and.l %d0,%d1 + move.l %d1,%a0 + jra .L241 + .size draw_generator_widget.part.0, .-draw_generator_widget.part.0 + .align 2 + .type secondary_widget, @function +secondary_widget: + subq.l #8,%sp + move.l %d2,-(%sp) + moveq #11,%d2 + move.l 24(%sp),%d0 + move.l %d0,%d1 + move.l 16(%sp),%a0 + addq.l #6,%d1 + move.l 20(%sp),%a1 + move.l 32(%sp),4(%sp) + move.l 36(%sp),8(%sp) + cmp.l %d1,%d2 + jcc .L252 + move.l (%sp)+,%d2 + addq.l #8,%sp + rts +.L252: + move.l 8(%sp),36(%sp) + move.l 4(%sp),32(%sp) + move.l %d1,28(%sp) + move.l %d0,24(%sp) + move.l %a1,20(%sp) + move.l %a0,16(%sp) + move.l (%sp)+,%d2 + addq.l #8,%sp + jra (draw_generator_widget.part.0) + .size secondary_widget, .-secondary_widget + .align 2 + .type generator_widget, @function +generator_widget: + subq.l #4,%sp + move.l %d2,-(%sp) + moveq #11,%d2 + move.l 20(%sp),%d0 + move.l 12(%sp),%d1 + move.l 16(%sp),%a0 + move.l 28(%sp),%a1 + move.l 32(%sp),4(%sp) + cmp.l %d0,%d2 + jcc .L257 + move.l (%sp)+,%d2 + addq.l #4,%sp + rts +.L257: + move.l 4(%sp),32(%sp) + move.l %a1,28(%sp) + move.l %d0,24(%sp) + move.l %d0,20(%sp) + move.l %a0,16(%sp) + move.l %d1,12(%sp) + move.l (%sp)+,%d2 + addq.l #4,%sp + jra (draw_generator_widget.part.0) + .size generator_widget, .-generator_widget + .align 2 + .type mg_view.constprop.0, @function +mg_view.constprop.0: + lea (-12,%sp),%sp + movem.l #1036,(%sp) + tst.l -2147483630 + jeq .L259 + move.l #1187521622,%a0 + move.l (%a0),%d0 + add.l #-1073741824,%d0 + cmp.l #133169151,%d0 + jhi .L259 + move.l #269161676,%a1 + mov3q.l #7,%d1 + mvz.b (%a1),%d0 + cmp.l %d0,%d1 + jcs .L259 + move.b (%a1),%d1 + move.l (%a0),%d0 + mov3q.l #2,%d3 + move.b 269161679,%d2 + move.w %d2,%a0 + cmp.l 1175262852.l,%d3 + jne .L259 + tst.l 1175263034 + jne .L259 + tst.l 1175262868 + jne .L259 + move.l %a0,%d2 + mov3q.l #3,%d3 + and.l %d3,%d2 + mvz.b %d1,%d1 + add.l #585088,%d0 + move.l %d1,%a1 + lea (3089,%a1),%a1 + move.l %d2,%d1 + mvz.w #6322,%d2 + muls.l %d2,%d1 + moveq #77,%d2 + add.l %d1,%d0 + move.l %d0,%a2 + lea (%a2,%a1.l*2),%a0 + move.b 1(%a0),%d0 + mvz.b (%a0),%d1 + cmp.l %d1,%d2 + jne .L259 + tst.l 20(%sp) + jeq .L259 + mvz.b %d0,%d0 + moveq #86,%d3 + cmp.l %d0,%d3 + jeq .L262 + move.b (%a0),%d0 +.L259: + movem.l (%sp),#1036 + clr.l %d0 + lea (12,%sp),%sp + rts +.L262: + movem.l (%sp),#1036 + move.l #vector_midi,%d0 + lea (12,%sp),%sp + rts + .size mg_view.constprop.0, .-mg_view.constprop.0 + .section .rodata.str1.1 +.LC2: + .string "FWD" +.LC3: + .string "OFF" +.LC4: + .string "REV" + .text + .align 2 + .type format_control, @function +format_control: + lea (-28,%sp),%sp + movem.l #16412,(%sp) + move.l 36(%sp),%d2 + lea (17,%sp),%a0 + mvz.b 269161676,%d0 + move.l %d0,-(%sp) + jsr settings + addq.l #4,%sp + mov3q.l #6,%d0 + cmp.l %d2,%d0 + jeq .L299 + mov3q.l #5,%d0 + cmp.l %d2,%d0 + jcs .L274 + mvz.b 17(%sp,%d2.l),%d0 + move.l %d2,%d1 + mov3q.l #1,%d3 + subq.l #2,%d1 + cmp.l %d1,%d3 + jcs .L273 + subq.l #2,%d2 + tst.l %d2 + jeq .L300 + mov3q.l #5,%d3 + remu.l %d3,%d1:%d0 + lea vector_scale_names,%a0 + move.l 32(%sp),%a1 + move.l (%a0,%d1.l*4),%a0 +.L280: + move.b (%a0)+,%d0 + move.b %d0,(%a1)+ + jne .L280 +.L271: + movem.l (%sp),#16412 + lea (28,%sp),%sp rts -.L177: +.L274: + mvz.b 16(%sp,%d2.l),%d0 + moveq #11,%d4 + cmp.l %d2,%d4 + jne .L301 + tst.l %d0 + jeq .L291 + move.l 32(%sp),%a1 + lea .LC4,%a0 +.L284: + move.b (%a0)+,%d0 + move.b %d0,(%a1)+ + jeq .L271 + move.b (%a0)+,%d0 + move.b %d0,(%a1)+ + jne .L284 + jra .L271 +.L299: move.b 269161676,%d0 move.l 1187521622,%a1 mov3q.l #3,%d2 move.b 269161679,%d1 + mvz.w #6322,%d3 add.l #585088,%a1 + moveq #127,%d4 mvz.b %d0,%d0 and.l %d2,%d1 mulu.w #30,%d0 move.l %d0,%a0 - mvz.w #6322,%d0 + muls.l %d3,%d1 lea (497,%a0),%a0 - muls.l %d0,%d1 add.l %d1,%a1 move.b (%a1,%a0.l),%d0 - moveq #127,%d1 - and.l %d0,%d1 - move.l %d1,%a0 - jra .L171 - .size draw_generator_widget.part.0, .-draw_generator_widget.part.0 + and.l %d4,%d0 +.L273: + moveq #99,%d3 + cmp.l %d0,%d3 + jcc .L292 +.L303: + moveq #100,%d4 + moveq #10,%d3 + move.l %d0,%d1 + mov3q.l #2,%a6 + divu.l %d4,%d1 + move.l 32(%sp),%a0 + mov3q.l #3,%a1 + add.l #48,%d1 + move.b %d1,(%a0)+ + move.l %d0,%d1 + divu.l %d3,%d1 + move.l %d1,%d2 + remu.l %d3,%d4:%d2 + move.l %d4,%d1 + add.l #48,%d1 + move.b %d1,(%a0) + move.l 32(%sp),%a0 + add.l %a6,%a0 +.L289: + moveq #10,%d2 + remu.l %d2,%d1:%d0 + clr.b %d3 + add.l #48,%d1 + move.b %d1,(%a0) + move.l 32(%sp),%a0 + move.b %d3,(%a0,%a1.l) + movem.l (%sp),#16412 + lea (28,%sp),%sp + rts +.L292: + move.l 32(%sp),%a0 + mov3q.l #1,%a1 + clr.l %d1 + moveq #9,%d2 + cmp.l %d0,%d2 + jcc .L289 +.L304: + move.l %a1,%a6 + moveq #10,%d3 + move.l %d1,%a1 + move.l %d0,%d1 + divu.l %d3,%d1 + addq.l #2,%a1 + move.l %d1,%d2 + remu.l %d3,%d4:%d2 + move.l %d4,%d1 + add.l #48,%d1 + move.b %d1,(%a0) + move.l 32(%sp),%a0 + add.l %a6,%a0 + jra .L289 +.L291: + move.l 32(%sp),%a1 + lea .LC2,%a0 + jra .L284 +.L300: + moveq #12,%d2 + remu.l %d2,%d1:%d0 + lea (roots.5),%a0 + move.l 32(%sp),%a1 + move.l (%a0,%d1.l*4),%a0 + jra .L280 +.L301: + moveq #10,%d4 + cmp.l %d2,%d4 + jne .L282 + tst.l %d0 + jne .L273 + move.l 32(%sp),%a1 + lea .LC3,%a0 + jra .L284 +.L282: + subq.l #8,%d2 + tst.l %d2 + jne .L273 + move.l %d0,%d1 + add.l #-12,%d1 + tst.l %d1 + jlt .L302 + move.l %d1,%d0 + moveq #99,%d3 + cmp.l %d0,%d3 + jcs .L303 + jra .L292 +.L302: + move.l 32(%sp),%a0 + moveq #12,%d2 + sub.l %d0,%d2 + move.l %d2,%d0 + mov3q.l #2,%a1 + move.b #45,(%a0)+ + mov3q.l #1,%d1 + moveq #9,%d2 + cmp.l %d0,%d2 + jcc .L289 + jra .L304 + .size format_control, .-format_control .align 2 - .type secondary_widget, @function -secondary_widget: - subq.l #8,%sp + .type format_10, @function +format_10: + moveq #10,%d0 + move.l %d0,8(%sp) + jra format_control + .size format_10, .-format_10 + .align 2 + .type format_8, @function +format_8: + moveq #8,%d0 + move.l %d0,8(%sp) + jra format_control + .size format_8, .-format_8 + .align 2 + .type format_6, @function +format_6: + mov3q.l #6,8(%sp) + jra format_control + .size format_6, .-format_6 + .align 2 + .type midi_format_4, @function +midi_format_4: + move.l %a2,-(%sp) move.l %d2,-(%sp) - moveq #11,%d2 - move.l 24(%sp),%d0 - move.l %d0,%d1 - move.l 16(%sp),%a0 - addq.l #6,%d1 - move.l 20(%sp),%a1 - move.l 32(%sp),4(%sp) - move.l 36(%sp),8(%sp) + move.b 269161676,%d0 + move.l 1187521622,%a0 + mov3q.l #3,%d2 + add.l #585088,%a0 + move.b 269161679,%d1 + move.l 12(%sp),%a1 + mvz.b %d0,%d0 + and.l %d2,%d1 + lsl.l #4,%d0 + mvz.w #6322,%d2 + muls.l %d2,%d1 + move.l %d0,%a2 + moveq #22,%d2 + lea (6206,%a2),%a2 + add.l %d1,%a0 + mvz.b (%a0,%a2.l),%d1 cmp.l %d1,%d2 - jcc .L182 + jeq .L317 + moveq #8,%d0 +.L312: + move.l %d0,16(%sp) + move.l %a1,12(%sp) move.l (%sp)+,%d2 - addq.l #8,%sp - rts -.L182: - move.l 8(%sp),36(%sp) - move.l 4(%sp),32(%sp) - move.l %d1,28(%sp) - move.l %d0,24(%sp) - move.l %a1,20(%sp) - move.l %a0,16(%sp) + move.l 1074609936,%a1 + move.l (%sp)+,%a2 + jmp (%a1) +.L317: + move.l 1187521622,%a2 + move.l %d0,%a0 + move.b 269161679,%d1 + mov3q.l #3,%d0 + mvz.w #6322,%d2 + add.l #585088,%a2 + lea (6198,%a0),%a0 + and.l %d0,%d1 + muls.l %d2,%d1 + add.l %d1,%a2 + move.b (%a2,%a0.l),%d0 + moveq #126,%d1 + add.l #64,%d0 + mvz.b %d0,%d0 + cmp.l %d0,%d1 + jcc .L312 + moveq #126,%d0 + move.l %d0,16(%sp) + move.l %a1,12(%sp) move.l (%sp)+,%d2 + move.l 1074609936,%a1 + move.l (%sp)+,%a2 + jmp (%a1) + .size midi_format_4, .-midi_format_4 + .align 2 + .type midi_format_11, @function +midi_format_11: + move.b 269161676,%d0 + pea 11.w + mvz.b %d0,%d0 + move.l %d0,-(%sp) + jsr midi_control addq.l #8,%sp - jra (draw_generator_widget.part.0) - .size secondary_widget, .-secondary_widget + tst.l %d0 + jeq .L321 + move.l 4(%sp),%a1 + lea .LC4,%a0 +.L320: + move.b (%a0)+,%d0 + move.b %d0,(%a1)+ + jne .L320 + rts +.L321: + move.l 4(%sp),%a1 + lea .LC2,%a0 + jra .L320 + .size midi_format_11, .-midi_format_11 .align 2 - .type generator_widget, @function -generator_widget: - subq.l #4,%sp + .type midi_format_3, @function +midi_format_3: move.l %d2,-(%sp) - moveq #11,%d2 - move.l 20(%sp),%d0 - move.l 12(%sp),%d1 - move.l 16(%sp),%a0 - move.l 28(%sp),%a1 - move.l 32(%sp),4(%sp) - cmp.l %d0,%d2 - jcc .L187 + move.b 269161676,%d0 + mov3q.l #3,-(%sp) + mov3q.l #5,%d2 + mvz.b %d0,%d0 + move.l %d0,-(%sp) + jsr midi_control + addq.l #8,%sp + lea vector_scale_names,%a0 + remu.l %d2,%d1:%d0 + move.l 8(%sp),%a1 + move.l (%a0,%d1.l*4),%a0 +.L326: + move.b (%a0)+,%d0 + move.b %d0,(%a1)+ + jne .L326 move.l (%sp)+,%d2 - addq.l #4,%sp rts -.L187: - move.l 4(%sp),32(%sp) - move.l %a1,28(%sp) - move.l %d0,24(%sp) - move.l %d0,20(%sp) - move.l %a0,16(%sp) - move.l %d1,12(%sp) - move.l (%sp)+,%d2 - addq.l #4,%sp - jra (draw_generator_widget.part.0) - .size generator_widget, .-generator_widget - .section .rodata.str1.1,"aMS",@progbits,1 -.LC0: - .string "FWD" -.LC1: - .string "OFF" -.LC2: - .string "REV" - .text + .size midi_format_3, .-midi_format_3 + .align 2 + .type midi_format_2, @function +midi_format_2: + move.l %d2,-(%sp) + moveq #12,%d2 + move.b 269161676,%d0 + mov3q.l #2,-(%sp) + mvz.b %d0,%d0 + move.l %d0,-(%sp) + jsr midi_control + addq.l #8,%sp + lea (roots.0),%a0 + remu.l %d2,%d1:%d0 + move.l 8(%sp),%a1 + move.l (%a0,%d1.l*4),%a0 +.L331: + move.b (%a0)+,%d0 + move.b %d0,(%a1)+ + jne .L331 + move.l (%sp)+,%d2 + rts + .size midi_format_2, .-midi_format_2 .align 2 - .type format_control, @function -format_control: - lea (-28,%sp),%sp - movem.l #16412,(%sp) - move.l 36(%sp),%d2 - lea (17,%sp),%a0 + .type format_11, @function +format_11: mvz.b 269161676,%d0 + lea (-12,%sp),%sp + lea (1,%sp),%a0 move.l %d0,-(%sp) jsr settings addq.l #4,%sp - mov3q.l #6,%d0 - cmp.l %d2,%d0 - jeq .L216 - mov3q.l #5,%d0 - cmp.l %d2,%d0 - jcs .L191 - mvz.b 17(%sp,%d2.l),%d0 - move.l %d2,%d1 - mov3q.l #1,%d3 - subq.l #2,%d1 - cmp.l %d1,%d3 - jcs .L190 - subq.l #2,%d2 - tst.l %d2 - jeq .L217 - mov3q.l #5,%d3 - remu.l %d3,%d1:%d0 - lea vector_scale_names,%a0 - move.l 32(%sp),%a1 - move.l (%a0,%d1.l*4),%a0 -.L197: + tst.b 11(%sp) + jeq .L338 + lea .LC4,%a0 + move.l 16(%sp),%a1 +.L337: move.b (%a0)+,%d0 move.b %d0,(%a1)+ - jne .L197 -.L188: - movem.l (%sp),#16412 - lea (28,%sp),%sp + jne .L337 + lea (12,%sp),%sp rts -.L191: - mvz.b 16(%sp,%d2.l),%d0 - moveq #11,%d4 - cmp.l %d2,%d4 - jne .L218 - tst.l %d0 - jeq .L208 - move.l 32(%sp),%a1 +.L338: + move.l 16(%sp),%a1 lea .LC2,%a0 -.L201: + jra .L337 + .size format_11, .-format_11 + .align 2 + .type format_3, @function +format_3: + lea (-12,%sp),%sp + move.l %d2,-(%sp) + mvz.b 269161676,%d0 + lea (5,%sp),%a0 + mov3q.l #5,%d2 + move.l %d0,-(%sp) + jsr settings + mvz.b 12(%sp),%d0 + addq.l #4,%sp + lea vector_scale_names,%a0 + remu.l %d2,%d1:%d0 + move.l 20(%sp),%a1 + move.l (%a0,%d1.l*4),%a0 +.L343: move.b (%a0)+,%d0 move.b %d0,(%a1)+ - jeq .L188 + jne .L343 + move.l (%sp)+,%d2 + lea (12,%sp),%sp + rts + .size format_3, .-format_3 + .align 2 + .type format_2, @function +format_2: + lea (-12,%sp),%sp + move.l %d2,-(%sp) + moveq #12,%d2 + mvz.b 269161676,%d0 + lea (5,%sp),%a0 + move.l %d0,-(%sp) + jsr settings + mvz.b 11(%sp),%d0 + addq.l #4,%sp + lea (roots.5),%a0 + remu.l %d2,%d1:%d0 + move.l 20(%sp),%a1 + move.l (%a0,%d1.l*4),%a0 +.L348: move.b (%a0)+,%d0 move.b %d0,(%a1)+ - jne .L201 - jra .L188 -.L216: + jne .L348 + move.l (%sp)+,%d2 + lea (12,%sp),%sp + rts + .size format_2, .-format_2 + .align 2 + .type midi_format_0, @function +midi_format_0: + lea (-16,%sp),%sp + movem.l #1052,(%sp) + mov3q.l #3,%d2 + mvz.w #6322,%d3 + move.l 20(%sp),%a1 + moveq #22,%d4 move.b 269161676,%d0 - move.l 1187521622,%a1 + move.l 1187521622,%a0 + add.l #585088,%a0 + move.b 269161679,%d1 + mvz.b %d0,%d0 + and.l %d2,%d1 + lsl.l #4,%d0 + muls.l %d3,%d1 + move.l %d0,%a2 + lea (6206,%a2),%a2 + add.l %d1,%a0 + mvz.b (%a0,%a2.l),%d1 + cmp.l %d1,%d4 + jeq .L360 + moveq #49,%d1 +.L353: + move.l %a1,%a0 + mov3q.l #2,%d0 + move.b #49,(%a0)+ + clr.b %d4 + move.b %d1,(%a0) + move.b %d4,(%a1,%d0.l) + movem.l (%sp),#1052 + lea (16,%sp),%sp + rts +.L360: + move.l 1187521622,%d1 + move.l %d0,%a0 + move.b 269161679,%d2 + move.l %d1,%d0 + mov3q.l #3,%d3 + mvz.w #6322,%d4 + add.l #585088,%d0 + lea (6194,%a0),%a0 + move.w %d2,%a2 + moveq #15,%d2 + move.l %a2,%d1 + and.l %d3,%d1 + muls.l %d4,%d1 + add.l %d1,%d0 + move.b (%a0,%d0.l),%d0 + add.l #64,%d0 + mvz.b %d0,%d0 + move.l %d0,%d1 + cmp.l %d0,%d2 + jcs .L361 + move.l %d1,%d3 + moveq #10,%d4 + remu.l %d4,%d2:%d3 + moveq #9,%d3 + move.l %d2,%d1 + add.l #48,%d1 + cmp.l %d0,%d3 + jcs .L353 +.L357: + clr.b %d4 + move.l %a1,%a0 + mov3q.l #1,%d0 + move.b %d1,(%a0) + move.b %d4,(%a1,%d0.l) + movem.l (%sp),#1052 + lea (16,%sp),%sp + rts +.L361: + moveq #15,%d1 + moveq #10,%d4 + move.l %d1,%d3 + remu.l %d4,%d2:%d3 + moveq #9,%d3 + move.l %d2,%d1 + add.l #48,%d1 + cmp.l %d0,%d3 + jcc .L357 + jra .L353 + .size midi_format_0, .-midi_format_0 + .align 2 + .type midi_format_1, @function +midi_format_1: + lea (-16,%sp),%sp + movem.l #1052,(%sp) + mov3q.l #3,%d2 + mvz.w #6322,%d3 + move.l 20(%sp),%a1 + moveq #22,%d4 + move.b 269161676,%d0 + move.l 1187521622,%a0 + add.l #585088,%a0 + move.b 269161679,%d1 + mvz.b %d0,%d0 + and.l %d2,%d1 + lsl.l #4,%d0 + muls.l %d3,%d1 + move.l %d0,%a2 + lea (6206,%a2),%a2 + add.l %d1,%a0 + mvz.b (%a0,%a2.l),%d1 + cmp.l %d1,%d4 + jeq .L370 + moveq #49,%d1 +.L363: + move.l %a1,%a0 + mov3q.l #2,%d0 + move.b #49,(%a0)+ + clr.b %d4 + move.b %d1,(%a0) + move.b %d4,(%a1,%d0.l) + movem.l (%sp),#1052 + lea (16,%sp),%sp + rts +.L370: + move.l 1187521622,%d1 + move.l %d0,%a0 + move.b 269161679,%d2 + move.l %d1,%d0 + mov3q.l #3,%d3 + mvz.w #6322,%d4 + add.l #585088,%d0 + lea (6195,%a0),%a0 + move.w %d2,%a2 + moveq #16,%d2 + move.l %a2,%d1 + and.l %d3,%d1 + muls.l %d4,%d1 + add.l %d1,%d0 + move.b (%a0,%d0.l),%d0 + add.l #64,%d0 + mvz.b %d0,%d0 + move.l %d0,%d1 + cmp.l %d0,%d2 + jcs .L371 + move.l %d1,%d3 + moveq #10,%d4 + remu.l %d4,%d2:%d3 + moveq #9,%d3 + move.l %d2,%d1 + add.l #48,%d1 + cmp.l %d0,%d3 + jcs .L363 +.L367: + clr.b %d4 + move.l %a1,%a0 + mov3q.l #1,%d0 + move.b %d1,(%a0) + move.b %d4,(%a1,%d0.l) + movem.l (%sp),#1052 + lea (16,%sp),%sp + rts +.L371: + moveq #16,%d1 + moveq #10,%d4 + move.l %d1,%d3 + remu.l %d4,%d2:%d3 + moveq #9,%d3 + move.l %d2,%d1 + add.l #48,%d1 + cmp.l %d0,%d3 + jcc .L367 + jra .L363 + .size midi_format_1, .-midi_format_1 + .align 2 + .type midi_format_5, @function +midi_format_5: + lea (-12,%sp),%sp + movem.l #28,(%sp) + mov3q.l #3,%d2 + mvz.w #6322,%d3 + move.l 16(%sp),%a1 + moveq #22,%d4 + move.b 269161676,%d0 + move.l 1187521622,%a0 + add.l #585088,%a0 + move.b 269161679,%d1 + mvz.b %d0,%d0 + and.l %d2,%d1 + lsl.l #4,%d0 + muls.l %d3,%d1 + move.l %d0,%d2 + add.l #6206,%d2 + add.l %d1,%a0 + mvz.b (%a0,%d2.l),%d1 + cmp.l %d1,%d4 + jeq .L381 + moveq #52,%d0 + move.l %a1,%a0 + mov3q.l #2,%d2 + moveq #56,%d1 + mov3q.l #1,%d3 + move.b %d0,(%a0) +.L376: + clr.b %d0 + move.b %d1,(%a1,%d3.l) + move.b %d0,(%a1,%d2.l) + movem.l (%sp),#28 + lea (12,%sp),%sp + rts +.L381: + move.l 1187521622,%d1 + move.l %d0,%a0 + move.b 269161679,%d2 + move.l %d1,%d0 + mov3q.l #3,%d1 + add.l #585088,%d0 + lea (6199,%a0),%a0 + and.l %d1,%d2 + muls.l %d3,%d2 + moveq #127,%d3 + add.l %d2,%d0 + move.b (%a0,%d0.l),%d0 + add.l #64,%d0 + mvz.b %d0,%d2 + move.l %d2,%d0 + cmp.l %d2,%d3 + jcs .L382 +.L374: + moveq #10,%d4 + moveq #99,%d3 + remu.l %d4,%d1:%d0 + divu.l %d4,%d0 + add.l #48,%d1 + cmp.l %d2,%d3 + jcc .L375 + move.l %d0,%d2 + move.l %a1,%a0 + remu.l %d4,%d3:%d2 + move.b #49,(%a0)+ mov3q.l #3,%d2 + move.l %d3,%d0 + add.l #48,%d0 + mov3q.l #2,%d3 + move.b %d0,(%a0) + jra .L376 +.L382: + moveq #127,%d0 + jra .L374 +.L375: + moveq #9,%d4 + cmp.l %d2,%d4 + jcs .L383 + clr.b %d0 + clr.l %d3 + move.b %d1,(%a1,%d3.l) + mov3q.l #1,%d2 + move.b %d0,(%a1,%d2.l) + movem.l (%sp),#28 + lea (12,%sp),%sp + rts +.L383: + add.l #48,%d0 + move.l %a1,%a0 + mov3q.l #2,%d2 + move.b %d0,(%a0) + mov3q.l #1,%d3 + jra .L376 + .size midi_format_5, .-midi_format_5 + .align 2 + .type midi_format_6, @function +midi_format_6: + lea (-24,%sp),%sp + movem.l #1084,(%sp) + mov3q.l #3,%d3 + mvz.w #6322,%d4 + move.l 28(%sp),%a1 + moveq #22,%d5 + mvz.b 269161676,%d0 + move.l 1187521622,%a0 + add.l #585088,%a0 move.b 269161679,%d1 + move.l %d0,%d2 + lsl.l #4,%d2 + and.l %d3,%d1 + move.l %d2,%a2 + lea (6206,%a2),%a2 + muls.l %d4,%d1 + add.l %d1,%a0 + mvz.b (%a0,%a2.l),%d1 + cmp.l %d1,%d5 + jeq .L385 + addq.l #1,%d0 +.L386: + moveq #99,%d4 + cmp.l %d0,%d4 + jcs .L392 + moveq #9,%d1 + cmp.l %d0,%d1 + jcs .L395 + moveq #10,%d5 + mov3q.l #1,%d2 + remu.l %d5,%d1:%d0 + clr.b %d0 + move.l %a1,%a0 + add.l #48,%d1 + move.b %d1,(%a0) + move.b %d0,(%a1,%d2.l) + movem.l (%sp),#1084 + lea (24,%sp),%sp + rts +.L385: + move.l 1187521622,%a2 + mov3q.l #3,%d1 + move.b 269161679,%d0 mvz.w #6322,%d3 - add.l #585088,%a1 - moveq #127,%d4 - mvz.b %d0,%d0 - and.l %d2,%d1 - mulu.w #30,%d0 - move.l %d0,%a0 - muls.l %d3,%d1 - lea (497,%a0),%a0 - add.l %d1,%a1 - move.b (%a1,%a0.l),%d0 - and.l %d4,%d0 -.L190: - moveq #99,%d3 - cmp.l %d0,%d3 - jcc .L209 -.L220: - moveq #100,%d4 + move.l %d2,%a0 + add.l #585088,%a2 + lea (6200,%a0),%a0 + and.l %d1,%d0 + muls.l %d3,%d0 + add.l %d0,%a2 + move.b (%a2,%a0.l),%d1 + add.l #64,%d1 + mvz.b %d1,%d0 + tst.b %d1 + jge .L386 + moveq #127,%d0 +.L392: + moveq #100,%d5 moveq #10,%d3 move.l %d0,%d1 - mov3q.l #2,%a6 - divu.l %d4,%d1 - move.l 32(%sp),%a0 - mov3q.l #3,%a1 + mov3q.l #1,%a2 + divu.l %d5,%d1 + mov3q.l #2,%a0 + add.l %a1,%a0 + mov3q.l #3,%d2 add.l #48,%d1 - move.b %d1,(%a0)+ + move.b %d1,(%a1) move.l %d0,%d1 divu.l %d3,%d1 - move.l %d1,%d2 - remu.l %d3,%d4:%d2 + move.l %d1,%d5 + remu.l %d3,%d4:%d5 move.l %d4,%d1 add.l #48,%d1 - move.b %d1,(%a0) - move.l 32(%sp),%a0 - add.l %a6,%a0 -.L206: - moveq #10,%d2 - remu.l %d2,%d1:%d0 - clr.b %d3 + move.b %d1,(%a1,%a2.l) +.L396: + moveq #10,%d5 + remu.l %d5,%d1:%d0 + clr.b %d0 add.l #48,%d1 move.b %d1,(%a0) - move.l 32(%sp),%a0 - move.b %d3,(%a0,%a1.l) - movem.l (%sp),#16412 - lea (28,%sp),%sp + move.b %d0,(%a1,%d2.l) + movem.l (%sp),#1084 + lea (24,%sp),%sp rts -.L209: - move.l 32(%sp),%a0 - mov3q.l #1,%a1 - clr.l %d1 - moveq #9,%d2 - cmp.l %d0,%d2 - jcc .L206 -.L221: - move.l %a1,%a6 +.L395: moveq #10,%d3 - move.l %d1,%a1 + mov3q.l #1,%a0 move.l %d0,%d1 + sub.l %a2,%a2 divu.l %d3,%d1 - addq.l #2,%a1 - move.l %d1,%d2 - remu.l %d3,%d4:%d2 + mov3q.l #2,%d2 + add.l %a1,%a0 + move.l %d1,%d5 + remu.l %d3,%d4:%d5 move.l %d4,%d1 add.l #48,%d1 + move.b %d1,(%a1,%a2.l) + jra .L396 + .size midi_format_6, .-midi_format_6 + .align 2 + .type midi_format_7, @function +midi_format_7: + lea (-16,%sp),%sp + movem.l #1052,(%sp) + mov3q.l #3,%d2 + mvz.w #6322,%d3 + move.l 20(%sp),%a1 + moveq #22,%d4 + move.b 269161676,%d0 + move.l 1187521622,%a0 + add.l #585088,%a0 + move.b 269161679,%d1 + mvz.b %d0,%d0 + and.l %d2,%d1 + lsl.l #4,%d0 + muls.l %d3,%d1 + move.l %d0,%a2 + lea (6206,%a2),%a2 + add.l %d1,%a0 + mvz.b (%a0,%a2.l),%d1 + cmp.l %d1,%d4 + jeq .L405 + moveq #50,%d1 +.L398: + move.l %a1,%a0 + mov3q.l #2,%d0 + move.b #49,(%a0)+ + clr.b %d4 move.b %d1,(%a0) - move.l 32(%sp),%a0 - add.l %a6,%a0 - jra .L206 -.L208: - move.l 32(%sp),%a1 - lea .LC0,%a0 - jra .L201 -.L217: + move.b %d4,(%a1,%d0.l) + movem.l (%sp),#1052 + lea (16,%sp),%sp + rts +.L405: + move.l 1187521622,%d1 + move.l %d0,%a0 + move.b 269161679,%d2 + move.l %d1,%d0 + mov3q.l #3,%d3 + mvz.w #6322,%d4 + add.l #585088,%d0 + lea (6201,%a0),%a0 + move.w %d2,%a2 moveq #12,%d2 - remu.l %d2,%d1:%d0 - lea (roots.1),%a0 - move.l 32(%sp),%a1 - move.l (%a0,%d1.l*4),%a0 - jra .L197 -.L218: - moveq #10,%d4 - cmp.l %d2,%d4 - jne .L199 - tst.l %d0 - jne .L190 - move.l 32(%sp),%a1 - lea .LC1,%a0 - jra .L201 -.L199: - subq.l #8,%d2 - tst.l %d2 - jne .L190 + move.l %a2,%d1 + and.l %d3,%d1 + muls.l %d4,%d1 + add.l %d1,%d0 + move.b (%a0,%d0.l),%d0 + add.l #64,%d0 + mvz.b %d0,%d0 move.l %d0,%d1 - add.l #-12,%d1 - tst.l %d1 - jlt .L219 + cmp.l %d0,%d2 + jcs .L406 + move.l %d1,%d3 + moveq #10,%d4 + remu.l %d4,%d2:%d3 + moveq #9,%d3 + move.l %d2,%d1 + add.l #48,%d1 + cmp.l %d0,%d3 + jcs .L398 +.L402: + clr.b %d4 + move.l %a1,%a0 + mov3q.l #1,%d0 + move.b %d1,(%a0) + move.b %d4,(%a1,%d0.l) + movem.l (%sp),#1052 + lea (16,%sp),%sp + rts +.L406: + moveq #12,%d1 + moveq #10,%d4 + move.l %d1,%d3 + remu.l %d4,%d2:%d3 + moveq #9,%d3 + move.l %d2,%d1 + add.l #48,%d1 + cmp.l %d0,%d3 + jcc .L402 + jra .L398 + .size midi_format_7, .-midi_format_7 + .align 2 + .type midi_format_9, @function +midi_format_9: + lea (-16,%sp),%sp + movem.l #1052,(%sp) + mov3q.l #3,%d2 + mvz.w #6322,%d3 + move.l 20(%sp),%a1 + moveq #22,%d4 + move.b 269161676,%d0 + move.l 1187521622,%a0 + add.l #585088,%a0 + move.b 269161679,%d1 + mvz.b %d0,%d0 + and.l %d2,%d1 + lsl.l #4,%d0 + muls.l %d3,%d1 + move.l %d0,%a2 + lea (6206,%a2),%a2 + add.l %d1,%a0 + mvz.b (%a0,%a2.l),%d1 + cmp.l %d1,%d4 + jeq .L414 + moveq #48,%d1 + clr.b %d4 + move.l %a1,%a2 + mov3q.l #1,%d2 + move.b %d1,(%a2) + move.b %d4,(%a1,%d2.l) + movem.l (%sp),#1052 + lea (16,%sp),%sp + rts +.L414: + move.l 1187521622,%d1 + move.l %d0,%a0 + move.b 269161679,%d2 move.l %d1,%d0 - moveq #99,%d3 + mov3q.l #3,%d1 + add.l #585088,%d0 + lea (6203,%a0),%a0 + and.l %d2,%d1 + moveq #63,%d2 + muls.l %d3,%d1 + add.l %d1,%d0 + move.b (%a0,%d0.l),%d0 + add.l #64,%d0 + mvz.b %d0,%d0 + move.l %d0,%d1 + cmp.l %d0,%d2 + jcs .L415 + move.l %d1,%d3 + moveq #10,%d4 + remu.l %d4,%d2:%d3 + divu.l %d4,%d3 + move.l %a1,%a2 + move.l %d2,%d1 + move.l %d3,%a0 + add.l #48,%d1 + moveq #9,%d3 cmp.l %d0,%d3 - jcs .L220 - jra .L209 -.L219: - move.l 32(%sp),%a0 - moveq #12,%d2 - sub.l %d0,%d2 - move.l %d2,%d0 - mov3q.l #2,%a1 - move.b #45,(%a0)+ + jcc .L411 +.L416: + move.l %a0,%d0 + add.l #48,%d0 + move.b %d0,(%a2)+ + clr.b %d4 + mov3q.l #2,%d2 + move.b %d1,(%a2) + move.b %d4,(%a1,%d2.l) + movem.l (%sp),#1052 + lea (16,%sp),%sp + rts +.L415: + moveq #63,%d1 + moveq #10,%d4 + move.l %d1,%d3 + move.l %a1,%a2 + remu.l %d4,%d2:%d3 + divu.l %d4,%d3 + move.l %d2,%d1 + move.l %d3,%a0 + add.l #48,%d1 + moveq #9,%d3 + cmp.l %d0,%d3 + jcs .L416 +.L411: + clr.b %d4 + move.b %d1,(%a2) + mov3q.l #1,%d2 + move.b %d4,(%a1,%d2.l) + movem.l (%sp),#1052 + lea (16,%sp),%sp + rts + .size midi_format_9, .-midi_format_9 + .align 2 + .type midi_format_8, @function +midi_format_8: + lea (-16,%sp),%sp + movem.l #28,(%sp) + mov3q.l #3,%d2 + mvz.w #6322,%d3 + move.l 20(%sp),%a1 + moveq #22,%d4 + move.b 269161676,%d0 + move.l 1187521622,%a0 + add.l #585088,%a0 + move.b 269161679,%d1 + mvz.b %d0,%d0 + and.l %d2,%d1 + lsl.l #4,%d0 + muls.l %d3,%d1 + move.l %d0,%d2 + add.l #6206,%d2 + add.l %d1,%a0 + mvz.b (%a0,%d2.l),%d1 + cmp.l %d1,%d4 + jeq .L426 + moveq #48,%d0 + clr.b %d4 + move.l %a1,%a0 mov3q.l #1,%d1 - moveq #9,%d2 + move.b %d0,(%a0) + move.b %d4,(%a1,%d1.l) + movem.l (%sp),#28 + lea (16,%sp),%sp + rts +.L426: + move.l 1187521622,%d1 + move.l %d0,%a0 + move.b 269161679,%d2 + move.l %d1,%d0 + mov3q.l #3,%d1 + add.l #585088,%d0 + lea (6202,%a0),%a0 + and.l %d1,%d2 + muls.l %d3,%d2 + add.l %d2,%d0 + move.b (%a0,%d0.l),%d0 + moveq #24,%d2 + add.l #64,%d0 + mvz.b %d0,%d0 cmp.l %d0,%d2 - jcc .L206 - jra .L221 - .size format_control, .-format_control - .align 2 - .type format_10, @function -format_10: - moveq #10,%d0 - move.l %d0,8(%sp) - jra format_control - .size format_10, .-format_10 - .align 2 - .type format_8, @function -format_8: - moveq #8,%d0 - move.l %d0,8(%sp) - jra format_control - .size format_8, .-format_8 - .align 2 - .type format_6, @function -format_6: - mov3q.l #6,8(%sp) - jra format_control - .size format_6, .-format_6 - .align 2 - .type format_11, @function -format_11: - mvz.b 269161676,%d0 - lea (-12,%sp),%sp - lea (1,%sp),%a0 + jcs .L427 + move.l %d0,%d2 + add.l #-12,%d2 + tst.l %d2 + jge .L422 + move.b #45,(%a1) + moveq #12,%d2 + mov3q.l #1,%d1 + sub.l %d0,%d2 + mov3q.l #2,12(%sp) +.L420: + move.l %d2,%d3 + moveq #10,%d4 + remu.l %d4,%d0:%d3 + lea (%a1,%d1.l),%a0 + moveq #9,%d3 + add.l #48,%d0 + cmp.l %d2,%d3 + jge .L423 + clr.b %d4 + move.b #49,(%a0) + move.l 12(%sp),%a0 + add.l %a1,%a0 + move.b %d0,(%a0) + addq.l #2,%d1 + move.b %d4,(%a1,%d1.l) + movem.l (%sp),#28 + lea (16,%sp),%sp + rts +.L427: + moveq #12,%d2 +.L422: + mov3q.l #1,12(%sp) + clr.l %d1 + jra .L420 +.L423: + clr.b %d4 + move.l 12(%sp),%d1 + move.b %d0,(%a0) + move.b %d4,(%a1,%d1.l) + movem.l (%sp),#28 + lea (16,%sp),%sp + rts + .size midi_format_8, .-midi_format_8 + .align 2 + .type midi_generate, @function +midi_generate: + link.w %fp,#-136 + movem.l #15612,(%sp) + move.b 269161680,%d0 + move.l 1187521622,%d1 + add.l #-1073741824,%d1 + cmp.l #133169151,%d1 + jhi .L435 + mov3q.l #7,%d1 + cmp.l 8(%fp),%d1 + jcs .L435 + mvz.b %d0,%d1 + moveq #15,%d2 + cmp.l %d1,%d2 + jcs .L435 + move.l 1187521622,%d1 + ext.w %d0 + move.b 269161679,%d3 + mvz.w #2224,%d5 + move.l 8(%fp),%d4 + mulu.w #36568,%d0 + muls.l %d5,%d4 + move.b %d3,-61(%fp) + move.l %d1,%d3 + add.l #18640,%d3 + move.l %d4,%a0 + add.l %d0,%a0 + move.l %a0,-68(%fp) + lea (%a0,%d3.l),%a5 + tst.l 12(%fp) + jeq .L495 + move.l %d0,%a0 + move.l #36437,%a1 + add.l %d1,%a0 + tst.b (%a0,%a1.l) + jeq .L438 +.L497: + move.b 40(%a5),%d2 +.L439: + pea -56(%fp) + pea -51(%fp) + move.l 8(%fp),-(%sp) + jsr midi_params + mvz.b %d2,%d2 + lea (12,%sp),%sp + tst.l 16(%fp) + jeq .L440 + move.l -56(%fp),%d0 + moveq #127,%d6 + addq.l #1,%d0 + and.l %d0,%d6 + move.l %d6,-56(%fp) +.L440: + move.l 1187521622,%d0 + move.l %d2,%a0 + move.b 269161679,%d1 + subq.l #1,%a0 + moveq #63,%d4 + cmp.l %a0,%d4 + jcs .L435 + mov3q.l #3,%d5 + and.l %d5,%d1 + move.l %d0,%a2 + add.l #585088,%a2 + move.l 8(%fp),%d0 + mvz.w #6322,%d6 + lsl.l #5,%d0 + muls.l %d6,%d1 + add.l #994,%d0 + add.l %d1,%a2 + add.l %d0,%a2 + tst.b 1(%a2) + jlt .L435 + mvz.b 1(%a2),%d0 + moveq #127,%d1 + cmp.l %d0,%d1 + jcs .L435 + move.l -56(%fp),-(%sp) move.l %d0,-(%sp) - jsr settings - addq.l #4,%sp - tst.b 11(%sp) - jeq .L231 - lea .LC2,%a0 - move.l 16(%sp),%a1 -.L230: + moveq #19,%d5 + move.l %d2,-(%sp) + pea -51(%fp) + pea phrase + jsr (vector_generate.part.0) + lea (20,%sp),%sp + move.l %fp,-84(%fp) + move.b (%a2),%d4 + mvz.b (%a2),%d0 + move.l %fp,%d1 + add.l #-40,%d1 + move.l %a5,%a0 + sub.l %d1,%a0 + move.l %a0,-60(%fp) + move.w %d0,%d2 + move.l -60(%fp),%a1 + move.l %d1,%a0 + mvz.b %d4,%d4 + mulu.w #43691,%d2 + lsr.l %d5,%d2 + muls.w #12,%d2 + sub.l %d2,%d0 + mvz.b %d0,%d0 + sub.l %d0,%d4 + move.l %d4,-72(%fp) +.L441: + move.b (%a1,%a0.l),%d0 + move.b %d0,(%a0)+ + cmp.l -84(%fp),%a0 + jne .L441 + move.l #268544542,%a1 + clr.l %d2 + sub.l %d3,%a1 + move.l %a1,-80(%fp) + move.l #268544541,%a1 + sub.l %d3,%a1 + move.l %a5,%d0 + add.l #80,%d0 + lea phrase,%a0 + lea (2097,%a5),%a3 + lea (50,%a5),%a2 + lea (49,%a5),%a4 + move.l %a1,-88(%fp) +.L460: + mov3q.l #7,%d7 + and.l %d2,%d7 + move.l %d2,%d5 + lsr.l #3,%d5 + mov3q.l #7,%a1 + mov3q.l #1,%d4 + move.l %d0,%a5 + sub.l %d5,%a1 + add.l %d1,%a1 + mvz.b (%a1),%d3 + lea (-32,%a5),%a5 + asr.l %d7,%d3 + and.l %d3,%d4 + move.l %d4,-96(%fp) + tst.b (%a0) + jeq .L442 + mvz.b 1(%a0),%d4 + mov3q.l #5,%d6 + add.l #-64,%d4 + move.l %d4,-76(%fp) + divs.l %d6,%d4 + move.l -72(%fp),%d6 + add.l %d4,%d6 + tst.l %d6 + jlt .L469 + moveq #127,%d4 + cmp.l %d6,%d4 + jge .L443 + moveq #127,%d6 +.L443: + mvz.b (%a5),%d4 + move.l %d4,-76(%fp) + mvz.b %d6,%d4 + cmp.l -76(%fp),%d4 + jeq .L465 +.L464: + move.b %d6,(%a5) + move.l -88(%fp),%a5 + move.b %d6,(%a5,%a4.l) + tst.b (%a0) + jeq .L444 +.L465: + move.b 3(%a0),%d4 + mvz.b (%a4),%d3 + mvz.b %d4,%d6 + cmp.l %d6,%d3 + jeq .L445 + move.l -88(%fp),%a5 + move.b %d4,(%a4) + move.b %d4,(%a5,%a2.l) + tst.b (%a0) + jne .L445 +.L446: + mvz.b (%a2),%d4 + cmp.l #255,%d4 + jeq .L496 + st %d4 +.L447: + move.l -80(%fp),%a5 + move.b %d4,(%a2) + move.b %d4,(%a5,%a2.l) + mov3q.l #1,%d4 + lsl.l %d7,%d4 + tst.b (%a0) + jeq .L449 + move.b (%a1),%d6 + or.l %d4,%d6 +.L450: + move.b %d6,(%a1) + tst.l -96(%fp) + jne .L451 + tst.b (%a0) + jeq .L452 +.L451: + move.l %a3,%a1 + tst.b -(%a1) + jeq .L453 + clr.b %d3 + clr.b (%a1) + move.l -88(%fp),%a1 + move.b %d3,(%a1,%a3.l) +.L453: + tst.b (%a3) + jeq .L454 + clr.b %d3 + move.l -80(%fp),%a1 + clr.b (%a3) + move.b %d3,(%a1,%a3.l) +.L454: + move.w #15,%a5 + move.l %d4,%d7 + not.l %d7 + move.w #39,%a1 + sub.l %d5,%a5 + move.b (%a5,%d1.l),%d3 + sub.l %d5,%a1 + and.l %d7,%d3 + move.b %d3,(%a5,%d1.l) + move.b (%a1,%d1.l),%d3 + and.l %d7,%d3 + move.b %d3,(%a1,%d1.l) + move.b (%a0),%d3 + jeq .L452 + lea (locked.3),%a5 + move.b %d3,(%a5,%d2.l) + move.w #23,%a1 + sub.l %d5,%a1 + add.l %d1,%a1 + move.b (%a1),%d3 + and.l %d7,%d3 +.L459: + move.b %d3,(%a1) + addq.l #1,%d2 + addq.l #4,%a0 + addq.l #2,%a3 + lea (32,%a2),%a2 + add.l #32,%d0 + lea (32,%a4),%a4 + moveq #64,%d3 + cmp.l %d2,%d3 + jne .L460 + move.l #268544541,%a2 + sub.l %d1,%a2 + add.l -68(%fp),%a2 + move.l %d1,%a0 + move.l -60(%fp),%d1 + subq.l #1,%d1 +.L462: move.b (%a0)+,%d0 - move.b %d0,(%a1)+ - jne .L230 + mvz.b (%a0,%d1.l),%d2 + mvz.b %d0,%d3 + cmp.l %d3,%d2 + jeq .L461 + move.b %d0,(%a0,%d1.l) + move.b %d0,(%a2,%a0.l) +.L461: + cmp.l -84(%fp),%a0 + jne .L462 + move.l -56(%fp),-(%sp) + pea -51(%fp) + move.l 8(%fp),-(%sp) + jsr midi_save + mov3q.l #3,%d4 + mov3q.l #1,%d2 lea (12,%sp),%sp + move.b -61(%fp),%d0 + move.l 1187521622,%a0 + move.l %d2,%d1 + add.l #610376,%a0 + move.b (%a0),%d3 + and.l %d4,%d0 + lsl.l %d0,%d1 + or.l %d1,%d3 + move.b %d3,(%a0) + move.l #1187500772,%d3 + move.b 269161566,%d0 + or.l %d0,%d1 + move.b %d1,269161566 + move.l 1187521622,%a0 + add.l #635698,%a0 + mov3q.l #1,(%a0) + mov3q.l #1,269452696 + jsr 1073905152 + move.l 8(%fp),%d5 + move.l %d5,%d4 + lsl.l %d5,%d2 + lea (locked.3),%a0 + sub.l %a0,%d3 + not.l %d2 +.L463: + lea (%a0,%d3.l),%a1 + move.b (%a1),%d0 + move.b (%a0)+,%d1 + and.l %d2,%d0 + lsl.l %d4,%d1 + or.l %d1,%d0 + move.b %d0,(%a1) + cmp.l #locked.3+64,%a0 + jne .L463 + move.l 8(%fp),%a0 + pea 8(%a0) + jsr 1074387488 + movem.l -136(%fp),#15612 + addq.l #4,%sp + mov3q.l #1,%d0 + unlk %fp rts -.L231: - move.l 16(%sp),%a1 - lea .LC0,%a0 - jra .L230 - .size format_11, .-format_11 +.L435: + movem.l -136(%fp),#15612 + clr.l %d0 + unlk %fp + rts +.L438: + mvz.w #36435,%d0 + move.b (%a0,%d0.l),%d2 + jra .L439 +.L495: + lea (24,%a5),%a1 + move.l %a5,%a0 +.L434: + addq.l #1,%a0 + tst.b -1(%a0) + jne .L435 + cmp.l %a0,%a1 + jne .L434 + lea (32,%a5),%a0 + lea (40,%a5),%a1 +.L436: + addq.l #1,%a0 + tst.b -1(%a0) + jne .L435 + cmp.l %a0,%a1 + jne .L436 + lea (48,%a5),%a0 + lea (2096,%a5),%a1 +.L437: + mvz.b (%a0),%d2 + addq.l #1,%a0 + cmp.l #255,%d2 + jne .L435 + cmp.l %a0,%a1 + jne .L437 + move.l %d0,%a0 + move.l #36437,%a1 + add.l %d1,%a0 + tst.b (%a0,%a1.l) + jeq .L438 + jra .L497 +.L444: + mvz.b (%a4),%d4 + cmp.l #255,%d4 + jeq .L446 + st %d4 + move.l -88(%fp),%a5 + move.b %d4,(%a4) + move.b %d4,(%a5,%a2.l) + tst.b (%a0) + jeq .L446 + jra .L445 +.L496: + mov3q.l #1,%d4 + lsl.l %d7,%d4 +.L449: + move.b (%a1),%d6 + move.l %d4,%d7 + not.l %d7 + and.l %d7,%d6 + jra .L450 +.L445: + move.b 2(%a0),%d4 + mvz.b (%a2),%d3 + mvz.b %d4,%d6 + cmp.l %d3,%d6 + jne .L447 + mov3q.l #1,%d4 + lsl.l %d7,%d4 + move.b (%a1),%d6 + or.l %d4,%d6 + jra .L450 +.L452: + move.l %d0,%a1 + lea (-29,%a1),%a1 +.L457: + mvz.b (%a1),%d3 + addq.l #1,%a1 + cmp.l #255,%d3 + jne .L456 + cmp.l %d0,%a1 + jne .L457 + clr.b %d3 + lea (locked.3),%a1 + move.b %d3,(%a1,%d2.l) +.L492: + move.w #23,%a1 + move.l %d4,%d7 + not.l %d7 + sub.l %d5,%a1 + add.l %d1,%a1 + move.b (%a1),%d3 + and.l %d7,%d3 + jra .L459 +.L456: + moveq #1,%d6 + lea (locked.3),%a1 + move.b %d6,(%a1,%d2.l) + tst.b (%a0) + jne .L492 + move.w #23,%a1 + sub.l %d5,%a1 + add.l %d1,%a1 + move.b (%a1),%d3 + or.l %d4,%d3 + jra .L459 +.L442: + mvz.b (%a5),%d4 + cmp.l #255,%d4 + jeq .L444 + st %d6 + move.b %d6,(%a5) + move.l -88(%fp),%a5 + move.b %d6,(%a5,%a4.l) + tst.b (%a0) + jne .L465 + jra .L444 +.L469: + clr.b %d6 + mvz.b (%a5),%d4 + move.l %d4,-76(%fp) + mvz.b %d6,%d4 + cmp.l -76(%fp),%d4 + jne .L464 + jra .L465 + .size midi_generate, .-midi_generate + .section .rodata.str1.1 +.LC5: + .string "VECTOR GENERATED" +.LC6: + .string "NO CHANGE" + .text .align 2 - .type format_3, @function -format_3: - lea (-12,%sp),%sp - move.l %d2,-(%sp) - mvz.b 269161676,%d0 - lea (5,%sp),%a0 - mov3q.l #5,%d2 + .type vector_midi_yes, @function +vector_midi_yes: + move.b 269161676,%d0 + mov3q.l #1,-(%sp) + mov3q.l #1,-(%sp) + mvz.b %d0,%d0 move.l %d0,-(%sp) - jsr settings - mvz.b 12(%sp),%d0 - addq.l #4,%sp - lea vector_scale_names,%a0 - remu.l %d2,%d1:%d0 - move.l 20(%sp),%a1 - move.l (%a0,%d1.l*4),%a0 -.L236: - move.b (%a0)+,%d0 - move.b %d0,(%a1)+ - jne .L236 - move.l (%sp)+,%d2 + jsr midi_generate lea (12,%sp),%sp + tst.l %d0 + jeq .L500 + move.l #.LC5,%d0 + pea 32.w + move.l %d0,-(%sp) + jsr 1074111160 + addq.l #8,%sp rts - .size format_3, .-format_3 +.L500: + move.l #.LC6,%d0 + pea 32.w + move.l %d0,-(%sp) + jsr 1074111160 + addq.l #8,%sp + rts + .size vector_midi_yes, .-vector_midi_yes .align 2 - .type format_2, @function -format_2: - lea (-12,%sp),%sp + .type vector_midi_knob, @function +vector_midi_knob: + link.w %fp,#-44 + movem.l #1036,(%sp) + mvz.b 269161676,%d2 + tst.l 16(%fp) + jeq .L504 + addq.l #6,8(%fp) +.L504: + pea -26(%fp) + pea -22(%fp) move.l %d2,-(%sp) - moveq #12,%d2 - mvz.b 269161676,%d0 - lea (5,%sp),%a0 - move.l %d0,-(%sp) - jsr settings - mvz.b 11(%sp),%d0 - addq.l #4,%sp - lea (roots.1),%a0 - remu.l %d2,%d1:%d0 - move.l 20(%sp),%a1 - move.l (%a0,%d1.l*4),%a0 -.L241: - move.b (%a0)+,%d0 - move.b %d0,(%a1)+ - jne .L241 - move.l (%sp)+,%d2 + jsr midi_params + lea (12,%sp),%sp + mov3q.l #5,%d3 + move.w -14(%fp),-3(%fp) + move.b -12(%fp),-1(%fp) + move.l -26(%fp),-32(%fp) + move.l -18(%fp),-7(%fp) + move.l -22(%fp),-11(%fp) + cmp.l 8(%fp),%d3 + jcs .L505 + lea (-22,%fp),%a0 + add.l 8(%fp),%a0 + mvz.b (%a0),%d0 + add.l 12(%fp),%d0 + tst.l %d0 + jlt .L524 + move.l 8(%fp),%d1 + lea vector_control_max,%a1 + mvz.b (%a1,%d1.l),%d1 + move.l %d1,%a1 + cmp.l %d1,%d0 + jge .L516 + move.l %d0,%a1 +.L516: + move.w %a1,%d0 + move.l 8(%fp),%d3 + move.b %d0,(%a0) + mvz.b %d0,%d0 + mvz.b -11(%fp,%d3.l),%d1 + cmp.l %d1,%d0 + jeq .L503 +.L514: + move.l -26(%fp),-(%sp) + pea -22(%fp) + move.l %d2,-(%sp) + jsr midi_save + clr.l -(%sp) + mov3q.l #1,-(%sp) + move.l %d2,-(%sp) + jsr midi_generate + lea (24,%sp),%sp + tst.l %d0 + jeq .L525 +.L503: + movem.l -44(%fp),#1036 + unlk %fp + rts +.L505: + mov3q.l #6,%d0 + cmp.l 8(%fp),%d0 + jeq .L508 + moveq #-22,%d1 + move.l 8(%fp),%a1 + add.l %fp,%d1 + subq.l #1,%a1 + add.l %a1,%d1 + move.l %d1,%a0 + mvz.b (%a0),%d0 + add.l 12(%fp),%d0 + tst.l %d0 + jlt .L526 + move.l 8(%fp),%d3 + lea vector_control_max,%a0 + mvz.b (%a0,%d3.l),%d3 + move.l %d3,%a0 + cmp.l %d3,%d0 + jlt .L527 + move.w %a0,%d0 + move.l %d1,%a2 + move.l %a1,8(%fp) + move.b %d0,(%a2) +.L530: + move.l 8(%fp),%d3 + mvz.b %d0,%d0 + mvz.b -11(%fp,%d3.l),%d1 + cmp.l %d1,%d0 + jne .L514 + jra .L503 +.L524: + clr.b (%a0) + clr.b %d0 + move.l 8(%fp),%d3 + mvz.b -11(%fp,%d3.l),%d1 + mvz.b %d0,%d0 + cmp.l %d1,%d0 + jne .L514 + jra .L503 +.L508: + move.l -32(%fp),%d0 + moveq #127,%d1 + add.l 12(%fp),%d0 + cmp.l %d0,%d1 + jlt .L528 + tst.l %d0 + jlt .L529 + move.l %d0,-26(%fp) + cmp.l -32(%fp),%d0 + jne .L514 +.L523: + movem.l -44(%fp),#1036 + unlk %fp + rts +.L528: + moveq #127,%d0 + move.l %d0,-26(%fp) + cmp.l -32(%fp),%d0 + jeq .L523 + jra .L514 +.L525: + move.l -32(%fp),-(%sp) + pea -11(%fp) + move.l %d2,-(%sp) + jsr midi_save lea (12,%sp),%sp + movem.l -44(%fp),#1036 + unlk %fp + rts +.L527: + move.l %d0,%a0 + move.l %d1,%a2 + move.w %a0,%d0 + move.l %a1,8(%fp) + move.b %d0,(%a2) + jra .L530 +.L529: + clr.l %d0 + move.l %d0,-26(%fp) + cmp.l -32(%fp),%d0 + jeq .L523 + jra .L514 +.L526: + clr.b (%a0) + clr.b %d0 + move.l %a1,8(%fp) + move.l 8(%fp),%d3 + mvz.b -11(%fp,%d3.l),%d1 + mvz.b %d0,%d0 + cmp.l %d1,%d0 + jne .L514 + jra .L503 + .size vector_midi_knob, .-vector_midi_knob + .align 2 + .type vector_midi_assign.part.0, @function +vector_midi_assign.part.0: + clr.w %d0 + link.w %fp,#-12 + move.l 8(%fp),%a0 + pea 1(%a0) + pea -12(%fp) + move.l %a0,-(%sp) + move.l #137366540,%a0 + move.l %a0,-8(%fp) + move.w %d0,-4(%fp) + move.b %d0,-2(%fp) + move.l #185270273,%d0 + move.l %d0,-12(%fp) + jsr midi_save + clr.l -(%sp) + clr.l -(%sp) + move.l 8(%fp),-(%sp) + jsr midi_generate + lea (24,%sp),%sp + unlk %fp rts - .size format_2, .-format_2 + .size vector_midi_assign.part.0, .-vector_midi_assign.part.0 + .align 2 + .type vector_midi_assign, @function +vector_midi_assign: + tst.l 8(%sp) + jne .L537 + rts +.L537: + jra (vector_midi_assign.part.0) + .size vector_midi_assign, .-vector_midi_assign .align 2 .type format_9, @function format_9: @@ -1347,7 +3314,7 @@ format_9: addq.l #4,%sp moveq #99,%d1 cmp.l %d0,%d1 - jcc .L246 + jcc .L539 moveq #100,%d2 mov3q.l #2,%a0 move.l %d0,%d1 @@ -1366,7 +3333,7 @@ format_9: move.l %d3,%d1 add.l #48,%d1 move.b %d1,(%a6,%d4.l) -.L248: +.L541: moveq #10,%d2 remu.l %d2,%d1:%d0 clr.b %d3 @@ -1376,10 +3343,10 @@ format_9: movem.l (%sp),#16412 lea (36,%sp),%sp rts -.L246: +.L539: moveq #9,%d4 cmp.l %d0,%d4 - jcs .L252 + jcs .L545 moveq #10,%d2 mov3q.l #1,%a1 remu.l %d2,%d1:%d0 @@ -1391,7 +3358,7 @@ format_9: movem.l (%sp),#16412 lea (36,%sp),%sp rts -.L252: +.L545: moveq #10,%d2 mov3q.l #1,%a0 move.l %d0,%d1 @@ -1405,7 +3372,7 @@ format_9: move.l %d3,%d1 add.l #48,%d1 move.b %d1,(%a6,%d4.l) - jra .L248 + jra .L541 .size format_9, .-format_9 .align 2 .type format_7, @function @@ -1421,7 +3388,7 @@ format_7: addq.l #4,%sp moveq #99,%d1 cmp.l %d0,%d1 - jcc .L254 + jcc .L547 moveq #100,%d2 mov3q.l #2,%a0 move.l %d0,%d1 @@ -1440,7 +3407,7 @@ format_7: move.l %d3,%d1 add.l #48,%d1 move.b %d1,(%a6,%d4.l) -.L256: +.L549: moveq #10,%d2 remu.l %d2,%d1:%d0 clr.b %d3 @@ -1450,10 +3417,10 @@ format_7: movem.l (%sp),#16412 lea (36,%sp),%sp rts -.L254: +.L547: moveq #9,%d4 cmp.l %d0,%d4 - jcs .L260 + jcs .L553 moveq #10,%d2 mov3q.l #1,%a1 remu.l %d2,%d1:%d0 @@ -1465,7 +3432,7 @@ format_7: movem.l (%sp),#16412 lea (36,%sp),%sp rts -.L260: +.L553: moveq #10,%d2 mov3q.l #1,%a0 move.l %d0,%d1 @@ -1479,7 +3446,7 @@ format_7: move.l %d3,%d1 add.l #48,%d1 move.b %d1,(%a6,%d4.l) - jra .L256 + jra .L549 .size format_7, .-format_7 .align 2 .type format_5, @function @@ -1495,7 +3462,7 @@ format_5: addq.l #4,%sp moveq #99,%d1 cmp.l %d0,%d1 - jcc .L262 + jcc .L555 moveq #100,%d2 mov3q.l #2,%a0 move.l %d0,%d1 @@ -1514,7 +3481,7 @@ format_5: move.l %d3,%d1 add.l #48,%d1 move.b %d1,(%a6,%d4.l) -.L264: +.L557: moveq #10,%d2 remu.l %d2,%d1:%d0 clr.b %d3 @@ -1524,10 +3491,10 @@ format_5: movem.l (%sp),#16412 lea (36,%sp),%sp rts -.L262: +.L555: moveq #9,%d4 cmp.l %d0,%d4 - jcs .L268 + jcs .L561 moveq #10,%d2 mov3q.l #1,%a1 remu.l %d2,%d1:%d0 @@ -1539,7 +3506,7 @@ format_5: movem.l (%sp),#16412 lea (36,%sp),%sp rts -.L268: +.L561: moveq #10,%d2 mov3q.l #1,%a0 move.l %d0,%d1 @@ -1553,7 +3520,7 @@ format_5: move.l %d3,%d1 add.l #48,%d1 move.b %d1,(%a6,%d4.l) - jra .L264 + jra .L557 .size format_5, .-format_5 .align 2 .type format_4, @function @@ -1569,7 +3536,7 @@ format_4: addq.l #4,%sp moveq #99,%d1 cmp.l %d0,%d1 - jcc .L270 + jcc .L563 moveq #100,%d2 mov3q.l #2,%a0 move.l %d0,%d1 @@ -1588,7 +3555,7 @@ format_4: move.l %d3,%d1 add.l #48,%d1 move.b %d1,(%a6,%d4.l) -.L272: +.L565: moveq #10,%d2 remu.l %d2,%d1:%d0 clr.b %d3 @@ -1598,10 +3565,10 @@ format_4: movem.l (%sp),#16412 lea (36,%sp),%sp rts -.L270: +.L563: moveq #9,%d4 cmp.l %d0,%d4 - jcs .L276 + jcs .L569 moveq #10,%d2 mov3q.l #1,%a1 remu.l %d2,%d1:%d0 @@ -1613,7 +3580,7 @@ format_4: movem.l (%sp),#16412 lea (36,%sp),%sp rts -.L276: +.L569: moveq #10,%d2 mov3q.l #1,%a0 move.l %d0,%d1 @@ -1627,7 +3594,7 @@ format_4: move.l %d3,%d1 add.l #48,%d1 move.b %d1,(%a6,%d4.l) - jra .L272 + jra .L565 .size format_4, .-format_4 .align 2 .type format_1, @function @@ -1643,7 +3610,7 @@ format_1: addq.l #4,%sp moveq #99,%d1 cmp.l %d0,%d1 - jcc .L278 + jcc .L571 moveq #100,%d2 mov3q.l #2,%a0 move.l %d0,%d1 @@ -1662,7 +3629,7 @@ format_1: move.l %d3,%d1 add.l #48,%d1 move.b %d1,(%a6,%d4.l) -.L280: +.L573: moveq #10,%d2 remu.l %d2,%d1:%d0 clr.b %d3 @@ -1672,10 +3639,10 @@ format_1: movem.l (%sp),#16412 lea (36,%sp),%sp rts -.L278: +.L571: moveq #9,%d4 cmp.l %d0,%d4 - jcs .L284 + jcs .L577 moveq #10,%d2 mov3q.l #1,%a1 remu.l %d2,%d1:%d0 @@ -1687,7 +3654,7 @@ format_1: movem.l (%sp),#16412 lea (36,%sp),%sp rts -.L284: +.L577: moveq #10,%d2 mov3q.l #1,%a0 move.l %d0,%d1 @@ -1701,7 +3668,7 @@ format_1: move.l %d3,%d1 add.l #48,%d1 move.b %d1,(%a6,%d4.l) - jra .L280 + jra .L573 .size format_1, .-format_1 .align 2 .type format_0, @function @@ -1717,7 +3684,7 @@ format_0: addq.l #4,%sp moveq #99,%d1 cmp.l %d0,%d1 - jcc .L286 + jcc .L579 moveq #100,%d2 mov3q.l #2,%a0 move.l %d0,%d1 @@ -1736,7 +3703,7 @@ format_0: move.l %d3,%d1 add.l #48,%d1 move.b %d1,(%a6,%d4.l) -.L288: +.L581: moveq #10,%d2 remu.l %d2,%d1:%d0 clr.b %d3 @@ -1746,10 +3713,10 @@ format_0: movem.l (%sp),#16412 lea (36,%sp),%sp rts -.L286: +.L579: moveq #9,%d4 cmp.l %d0,%d4 - jcs .L292 + jcs .L585 moveq #10,%d2 mov3q.l #1,%a1 remu.l %d2,%d1:%d0 @@ -1761,7 +3728,7 @@ format_0: movem.l (%sp),#16412 lea (36,%sp),%sp rts -.L292: +.L585: moveq #10,%d2 mov3q.l #1,%a0 move.l %d0,%d1 @@ -1775,7 +3742,7 @@ format_0: move.l %d3,%d1 add.l #48,%d1 move.b %d1,(%a6,%d4.l) - jra .L288 + jra .L581 .size format_0, .-format_0 .align 2 .globl vector_next_seed @@ -1799,86 +3766,86 @@ vector_pack: move.b 3(%a0),%d0 mvz.b %d0,%d1 cmp.l %d1,%d2 - jcc .L296 + jcc .L589 moveq #4,%d0 -.L296: +.L589: move.b (%a0),%d1 lsl.l #4,%d0 moveq #15,%d3 mvz.b %d1,%d2 cmp.l %d2,%d3 - jcc .L297 + jcc .L590 moveq #15,%d1 -.L297: +.L590: or.l %d1,%d0 move.b %d0,(%a1) move.b 10(%a0),%d0 - jeq .L298 + jeq .L591 moveq #1,%d0 -.L298: +.L591: move.b 1(%a0),%d1 lsl.l #5,%d0 moveq #16,%d3 mvz.b %d1,%d2 cmp.l %d2,%d3 - jcc .L299 + jcc .L592 moveq #16,%d1 -.L299: +.L592: or.l %d1,%d0 moveq #12,%d2 move.b %d0,1(%a1) move.b 6(%a0),%d0 mvz.b %d0,%d1 cmp.l %d1,%d2 - jcc .L300 + jcc .L593 moveq #12,%d0 -.L300: +.L593: move.b 2(%a0),%d1 lsl.l #4,%d0 moveq #11,%d3 mvz.b %d1,%d2 cmp.l %d2,%d3 - jcc .L301 + jcc .L594 moveq #11,%d1 -.L301: +.L594: or.l %d1,%d0 moveq #126,%d2 move.b %d0,2(%a1) move.b 4(%a0),%d0 mvz.b %d0,%d1 cmp.l %d1,%d2 - jcc .L302 + jcc .L595 moveq #126,%d0 -.L302: +.L595: move.b %d0,3(%a1) move.b 5(%a0),%d0 - jpl .L303 + jpl .L596 moveq #127,%d0 -.L303: +.L596: move.b %d0,4(%a1) moveq #24,%d3 move.b 7(%a0),%d0 mvz.b %d0,%d1 cmp.l %d1,%d3 - jcc .L304 + jcc .L597 moveq #24,%d0 -.L304: +.L597: move.b %d0,5(%a1) moveq #63,%d2 move.b 8(%a0),%d0 mvz.b %d0,%d1 cmp.l %d1,%d2 - jcc .L305 + jcc .L598 moveq #63,%d0 -.L305: +.L598: move.b %d0,6(%a1) moveq #64,%d3 move.b 9(%a0),%d0 mvz.b %d0,%d1 cmp.l %d1,%d3 - jcc .L306 + jcc .L599 moveq #64,%d0 -.L306: +.L599: moveq #127,%d1 and.l 20(%sp),%d1 move.b %d0,7(%a1) @@ -1901,11 +3868,11 @@ save_settings: sub.l %a6,%a6 lea (12,%sp),%sp mulu.w #30,%d3 -.L315: +.L608: move.b (%a4)+,%d2 mov3q.l #2,%d0 cmp.l %a6,%d0 - jcc .L319 + jcc .L612 move.l #269161679,%a3 mov3q.l #3,%d4 move.b (%a3),%d0 @@ -1927,8 +3894,8 @@ save_settings: move.b %d2,(%a1,%a2.l) move.b %d2,(%a0,%a2.l) cmp.l %a6,%d0 - jne .L315 -.L320: + jne .L608 +.L613: move.b (%a3),%d0 move.l 1187521622,%a1 mov3q.l #3,%d2 @@ -1947,7 +3914,7 @@ save_settings: movem.l (%sp),#23580 lea (40,%sp),%sp rts -.L319: +.L612: move.l #269161679,%a3 mov3q.l #3,%d4 move.b (%a3),%d0 @@ -1969,8 +3936,8 @@ save_settings: move.b %d2,(%a1,%a2.l) move.b %d2,(%a0,%a2.l) cmp.l %a6,%d0 - jne .L315 - jra .L320 + jne .L608 + jra .L613 .size save_settings, .-save_settings .align 2 .globl vector_unpack @@ -1988,9 +3955,9 @@ vector_unpack: lsr.l #4,%d0 move.b %d0,%d1 cmp.l %d0,%d2 - jcc .L322 + jcc .L615 moveq #4,%d1 -.L322: +.L615: move.b %d1,3(%a1) moveq #31,%d1 moveq #16,%d2 @@ -1998,9 +3965,9 @@ vector_unpack: and.l %d1,%d0 move.b %d0,%d1 cmp.l %d0,%d2 - jcc .L323 + jcc .L616 moveq #16,%d1 -.L323: +.L616: move.b %d1,1(%a1) mov3q.l #1,%d1 moveq #15,%d2 @@ -2013,55 +3980,55 @@ vector_unpack: moveq #11,%d2 move.b %d0,%d1 cmp.l %d0,%d2 - jcc .L324 + jcc .L617 moveq #11,%d1 -.L324: +.L617: move.b %d1,2(%a1) moveq #12,%d2 mvz.b 2(%a0),%d0 lsr.l #4,%d0 move.b %d0,%d1 cmp.l %d0,%d2 - jcc .L325 + jcc .L618 moveq #12,%d1 -.L325: +.L618: move.b %d1,6(%a1) moveq #126,%d2 move.b 3(%a0),%d0 mvz.b %d0,%d1 cmp.l %d1,%d2 - jcc .L326 + jcc .L619 moveq #126,%d0 -.L326: +.L619: move.b %d0,4(%a1) move.b 4(%a0),%d0 - jpl .L327 + jpl .L620 moveq #127,%d0 -.L327: +.L620: move.b %d0,5(%a1) moveq #24,%d2 move.b 5(%a0),%d0 mvz.b %d0,%d1 cmp.l %d1,%d2 - jcc .L328 + jcc .L621 moveq #24,%d0 -.L328: +.L621: move.b %d0,7(%a1) moveq #63,%d2 move.b 6(%a0),%d0 mvz.b %d0,%d1 cmp.l %d1,%d2 - jcc .L329 + jcc .L622 moveq #63,%d0 -.L329: +.L622: move.b %d0,8(%a1) moveq #64,%d2 move.b 7(%a0),%d0 mvz.b %d0,%d1 cmp.l %d1,%d2 - jcc .L330 + jcc .L623 moveq #64,%d0 -.L330: +.L623: move.b %d0,9(%a1) moveq #127,%d1 move.b 8(%a0),%d0 @@ -2082,16 +4049,16 @@ vector_generate: move.l 20(%sp),%d1 move.l 24(%sp),%a0 tst.l %d0 - jeq .L335 + jeq .L628 tst.l %d1 - jeq .L335 + jeq .L628 lea (-1,%a0),%a2 moveq #63,%d2 cmp.l %a2,%d2 - jcs .L335 + jcs .L628 moveq #127,%d2 cmp.l 28(%sp),%d2 - jcs .L335 + jcs .L628 move.l %a0,24(%sp) move.l %d1,20(%sp) move.l %d0,16(%sp) @@ -2099,7 +4066,7 @@ vector_generate: move.l (%sp)+,%a2 addq.l #4,%sp jra (vector_generate.part.0) -.L335: +.L628: move.l (%sp)+,%d2 clr.l %d0 move.l (%sp)+,%a2 @@ -2112,42 +4079,42 @@ vector_generate: vector_track_empty: move.l 4(%sp),%d1 tst.l %d1 - jeq .L345 + jeq .L638 mvz.w #2329,%d0 cmp.l 8(%sp),%d0 - jcc .L345 + jcc .L638 move.l %d1,%d0 move.l %d1,%a0 add.l #64,%d0 -.L346: +.L639: addq.l #1,%a0 tst.b -1(%a0) - jne .L345 + jne .L638 cmp.l %a0,%d0 - jne .L346 + jne .L639 move.l %d1,%a0 move.l %d1,%d0 lea (72,%a0),%a0 add.l #80,%d0 -.L347: +.L640: addq.l #1,%a0 tst.b -1(%a0) - jne .L345 + jne .L638 cmp.l %a0,%d0 - jne .L347 + jne .L640 move.l %d1,%a0 add.l #2137,%d1 lea (89,%a0),%a0 -.L348: +.L641: mvz.b (%a0),%d0 addq.l #1,%a0 cmp.l #255,%d0 - jne .L345 + jne .L638 cmp.l %a0,%d1 - jne .L348 + jne .L641 mov3q.l #1,%d0 rts -.L345: +.L638: clr.l %d0 rts .size vector_track_empty, .-vector_track_empty @@ -2159,12 +4126,12 @@ vector_write_phrase: movem.l #15612,(%sp) move.l 44(%sp),%d3 tst.l %d3 - jeq .L355 + jeq .L648 move.l 48(%sp),%d0 cmp.l #2329,%d0 - jls .L355 + jls .L648 tst.l 52(%sp) - jeq .L355 + jeq .L648 move.l 52(%sp),%a0 moveq #63,%d1 move.b 256(%a0),%d4 @@ -2172,37 +4139,37 @@ vector_write_phrase: subq.l #1,%d0 mvz.b %d0,%d0 cmp.l %d0,%d1 - jcs .L355 + jcs .L648 tst.l 56(%sp) - jne .L358 + jne .L651 move.l 48(%sp),-(%sp) move.l %d3,-(%sp) jsr vector_track_empty addq.l #8,%sp tst.l %d0 - jeq .L354 -.L358: + jeq .L647 +.L651: mvz.b %d4,%d4 move.l 52(%sp),%a2 clr.l %d1 move.l %a2,%a0 -.L362: +.L655: move.b (%a0),%d0 mov3q.l #1,%d5 mvz.b %d0,%d2 cmp.l %d2,%d5 - jcs .L355 + jcs .L648 cmp.l %d4,%d1 - jcs .L359 + jcs .L652 tst.b %d0 - jne .L355 -.L360: + jne .L648 +.L653: addq.l #1,%d1 addq.l #4,%a0 moveq #64,%d0 cmp.l %d1,%d0 - jne .L362 -.L395: + jne .L655 +.L688: move.l %d3,%a3 move.l %d3,%a1 move.l %d3,%a4 @@ -2210,7 +4177,7 @@ vector_write_phrase: lea (89,%a3),%a3 lea (121,%a1),%a1 lea (2202,%a4),%a4 -.L374: +.L667: mov3q.l #7,%d1 and.l %d5,%d1 move.l %d5,%d4 @@ -2223,33 +4190,33 @@ vector_write_phrase: asr.l %d1,%d0 and.l %d2,%d0 tst.b (%a2) - jeq .L375 + jeq .L668 move.b 1(%a2),%d2 -.L363: +.L656: move.b %d2,(%a3) tst.b (%a2) - jeq .L376 + jeq .L669 move.b 2(%a2),%d2 -.L364: +.L657: move.b %d2,13(%a3) tst.b (%a2) - jeq .L377 + jeq .L670 move.b 3(%a2),%d2 -.L365: +.L658: move.b %d2,15(%a3) mov3q.l #1,%d2 lsl.l %d1,%d2 move.b (%a0),%d1 tst.b (%a2) - jeq .L366 + jeq .L659 or.l %d2,%d1 -.L367: +.L660: move.b %d1,(%a0) tst.l %d0 - jne .L368 + jne .L661 tst.b (%a2) - jeq .L369 -.L368: + jeq .L662 +.L661: clr.b %d0 clr.b (%a4) move.w #15,%a5 @@ -2272,10 +4239,10 @@ vector_write_phrase: move.b (%a0,%d3.l),%d1 and.l %d1,%d0 move.b %d0,(%a0,%d3.l) -.L369: +.L662: move.l %a3,%a0 clr.l %d1 -.L370: +.L663: move.b (%a0)+,%d0 not.l %d0 tst.b %d0 @@ -2284,1950 +4251,3026 @@ vector_write_phrase: neg.l %d0 or.l %d0,%d1 cmp.l %a1,%a0 - jne .L370 - move.w #23,%a0 - sub.l %d4,%a0 - add.l %d3,%a0 - move.b (%a0),%d0 - tst.b (%a2) - jne .L371 - tst.l %d1 - jeq .L371 - or.l %d0,%d2 -.L373: - move.b %d2,(%a0) - addq.l #1,%d5 - addq.l #4,%a2 - lea (32,%a3),%a3 - addq.l #2,%a4 + jne .L663 + move.w #23,%a0 + sub.l %d4,%a0 + add.l %d3,%a0 + move.b (%a0),%d0 + tst.b (%a2) + jne .L664 + tst.l %d1 + jeq .L664 + or.l %d0,%d2 +.L666: + move.b %d2,(%a0) + addq.l #1,%d5 + addq.l #4,%a2 + lea (32,%a3),%a3 + addq.l #2,%a4 + lea (32,%a1),%a1 + moveq #64,%d0 + cmp.l %d5,%d0 + jne .L667 + mov3q.l #1,%d0 +.L647: + movem.l (%sp),#15612 + lea (40,%sp),%sp + rts +.L648: + movem.l (%sp),#15612 + clr.l %d0 + lea (40,%sp),%sp + rts +.L652: + tst.b %d0 + jeq .L653 + move.b 1(%a0),%d0 + moveq #120,%d5 + mvz.b %d0,%d2 + subq.l #4,%d0 + mvz.b %d0,%d0 + subq.l #4,%d2 + cmp.l %d0,%d5 + jcs .L648 + mov3q.l #5,%d5 + rems.l %d5,%d0:%d2 + tst.l %d0 + jne .L648 + mvz.b 2(%a0),%d2 + moveq #126,%d5 + cmp.l %d2,%d5 + jcs .L647 + tst.b 3(%a0) + jlt .L647 + addq.l #1,%d1 + addq.l #4,%a0 + moveq #64,%d0 + cmp.l %d1,%d0 + jne .L655 + jra .L688 +.L664: + not.l %d2 + and.l %d0,%d2 + jra .L666 +.L659: + move.l %d2,%d7 + not.l %d7 + and.l %d7,%d1 + jra .L660 +.L670: + st %d2 + jra .L658 +.L669: + st %d2 + jra .L657 +.L668: + st %d2 + jra .L656 + .size vector_write_phrase, .-vector_write_phrase + .align 2 + .globl vector_signed_track + .type vector_signed_track, @function +vector_signed_track: + move.l %d2,-(%sp) + move.l 12(%sp),%d0 + mov3q.l #7,%d1 + move.l 8(%sp),%a0 + cmp.l %d0,%d1 + jcs .L692 + mvz.b 34(%a0,%d0.l),%d1 + mov3q.l #1,%d2 + cmp.l %d1,%d2 + jcs .L692 + moveq #30,%d1 + moveq #83,%d2 + muls.l %d1,%d0 + lea 60(%a0,%d0.l),%a0 + mvz.b (%a0),%d0 + cmp.l %d0,%d2 + jeq .L696 +.L692: + move.l (%sp)+,%d2 + clr.l %d0 + rts +.L696: + mvz.b 1(%a0),%d0 + moveq #50,%d1 + cmp.l %d0,%d1 + jne .L692 + mvz.b 2(%a0),%d0 + subq.l #1,%d0 + tst.l %d0 + jeq .L693 + move.b 2(%a0),%d0 + mov3q.l #2,%d1 + move.l (%sp)+,%d2 + eor.l %d1,%d0 + tst.b %d0 + seq %d0 + mvs.b %d0,%d0 + neg.l %d0 + rts +.L693: + move.l (%sp)+,%d2 + mov3q.l #1,%d0 + rts + .size vector_signed_track, .-vector_signed_track + .align 2 + .type generate_track, @function +generate_track: + lea (-60,%sp),%sp + move.l 1187521622,%d0 + add.l #-1073741824,%d0 + movem.l #17420,(%sp) + cmp.l #133169151,%d0 + jls .L734 +.L714: + clr.l %d0 +.L697: + movem.l (%sp),#17420 + lea (60,%sp),%sp + rts +.L734: + move.l 1187521622,%a0 + mov3q.l #3,%d1 + move.b 269161679,%d0 + mvz.w #6322,%d2 + move.l 64(%sp),-(%sp) + add.l #585088,%a0 + and.l %d1,%d0 + muls.l %d2,%d0 + pea (%a0,%d0.l) + jsr vector_signed_track + addq.l #8,%sp + tst.l %d0 + jeq .L697 + move.b 269161680,%d0 + moveq #15,%d1 + mvz.b %d0,%d3 + move.l %d3,32(%sp) + cmp.l %d3,%d1 + jcs .L714 + ext.w %d0 + move.l 1187521622,%d2 + lea staging,%a0 + move.w %d0,%d1 + move.l %d2,36(%sp) + move.b 269161679,%d3 + move.w 66(%sp),%d0 + mulu.w #36568,%d1 + move.b %d3,47(%sp) + mulu.w #2330,%d0 + add.l %d1,%d0 + add.l %d0,%d2 + move.l %d2,%a6 + sub.l %a0,%a6 + move.l %d0,28(%sp) +.L701: + move.b (%a0,%a6.l),%d0 + move.b %d0,(%a0)+ + cmp.l #staging+2330,%a0 + jne .L701 + tst.l 68(%sp) + jeq .L735 +.L702: + mvz.w #36437,%d0 + move.l 36(%sp),%a0 + add.l %d1,%a0 + tst.b (%a0,%d0.l) + jeq .L703 + move.b staging+80,%d0 +.L704: + mvz.b %d0,%d0 + moveq #63,%d2 + move.l %d0,%d1 + subq.l #1,%d1 + cmp.l %d1,%d2 + jcs .L714 + move.l 64(%sp),-(%sp) + lea (53,%sp),%a0 + move.l %d0,20(%sp) + jsr settings + addq.l #4,%sp + move.l 1187521622,%d1 + add.l #585088,%d1 + move.b 269161679,%d3 + move.w 66(%sp),%d2 + move.l 16(%sp),%d0 + move.w %d3,%a1 + mulu.w #30,%d2 + move.l %d2,%a0 + mov3q.l #3,%d2 + lea (497,%a0),%a0 + move.l %a1,%d3 + and.l %d2,%d3 + mvz.w #6322,%d2 + muls.l %d2,%d3 + add.l %d3,%d1 + move.b (%a0,%d1.l),%d1 + moveq #127,%d3 + and.l %d1,%d3 + move.l %d3,40(%sp) + tst.l 72(%sp) + jeq .L706 + move.l %d3,%d1 + moveq #127,%d2 + addq.l #1,%d1 + and.l %d1,%d2 + move.l %d2,40(%sp) +.L706: + move.l 1187521622,%d1 + add.l #585088,%d1 + move.b 269161679,%d3 + move.w 66(%sp),%d2 + move.w %d3,%a1 + mulu.w #24,%d2 + move.l %d2,%a0 + mov3q.l #3,%d2 + lea (291,%a0),%a0 + move.l %a1,%d3 + and.l %d2,%d3 + mvz.w #6322,%d2 + muls.l %d2,%d3 + add.l %d3,%d1 + moveq #127,%d3 + mvz.b (%a0,%d1.l),%d1 + cmp.l %d1,%d3 + jcs .L714 + move.l 40(%sp),-(%sp) + move.l %d1,-(%sp) + move.l %d0,-(%sp) + pea 61(%sp) + pea phrase + jsr (vector_generate.part.0) + move.l 88(%sp),-(%sp) + pea phrase + pea 2330.w + pea staging + jsr vector_write_phrase + lea (36,%sp),%sp + tst.l %d0 + jeq .L697 + move.l 36(%sp),%a1 + cmp.l 1187521622.l,%a1 + jne .L714 + mvz.b 269161680,%d1 + cmp.l 32(%sp),%d1 + jne .L714 + mvz.b 47(%sp),%d1 + mvz.b 269161679,%d2 + cmp.l %d1,%d2 + jne .L714 + move.l 28(%sp),%a1 + sub.l #staging-268525901,%a1 + lea staging,%a0 + move.l %a1,32(%sp) +.L709: + lea (%a0,%a6.l),%a2 + move.b (%a0)+,%d1 + mvz.b (%a2),%d2 + move.l %a2,20(%sp) + mvz.b %d1,%d3 + cmp.l %d2,%d3 + jeq .L708 + move.b %d1,(%a2) + move.l 32(%sp),%a1 + lea (-1,%a0),%a2 + move.b (%a2),(%a1,%a0.l) +.L708: + cmp.l #staging+2330,%a0 + jne .L709 + move.l 40(%sp),-(%sp) + pea 53(%sp) + move.l 72(%sp),-(%sp) + move.l %d0,28(%sp) + jsr save_settings + mov3q.l #3,%d2 + mov3q.l #1,%a6 + move.l %a6,%d3 + move.b 59(%sp),%d1 + move.l 1187521622,%a1 + add.l #610376,%a1 + and.l %d2,%d1 + move.l %d1,56(%sp) + move.l 56(%sp),%d2 + move.b (%a1),%d1 + lea (12,%sp),%sp + lsl.l %d2,%d3 + or.l %d3,%d1 + move.b %d1,(%a1) + move.b 269161566,%d1 + or.l %d3,%d1 + move.l %a6,%d3 + move.b %d1,269161566 + move.l 1187521622,%a0 + add.l #635698,%a0 + mov3q.l #1,(%a0) + mov3q.l #1,269452696 + jsr 1073905152 + move.l #1187501196,%a6 + move.l 64(%sp),%d1 + move.l 16(%sp),%d0 + lea staging+121,%a1 + lsl.l %d1,%d3 + move.l %d3,24(%sp) + not.l %d3 + move.b %d3,23(%sp) +.L710: + lea (-32,%a1),%a0 +.L712: + addq.l #1,%a0 + mvz.b -1(%a0),%d1 + cmp.l #255,%d1 + jne .L715 + cmp.l %a1,%a0 + jne .L712 + sub.l %a0,%a0 +.L711: + move.b (%a6),%d1 + move.b 23(%sp),%d3 + move.l %a0,%d2 lea (32,%a1),%a1 - moveq #64,%d0 - cmp.l %d5,%d0 - jne .L374 - mov3q.l #1,%d0 -.L354: - movem.l (%sp),#15612 - lea (40,%sp),%sp - rts -.L355: - movem.l (%sp),#15612 - clr.l %d0 - lea (40,%sp),%sp + and.l %d3,%d1 + or.l %d2,%d1 + move.b %d1,(%a6)+ + cmp.l #1187501260,%a6 + jne .L710 + move.l 64(%sp),-(%sp) + move.l %d0,20(%sp) + jsr 1074387488 + addq.l #4,%sp + mov3q.l #1,1187497772 + movem.l (%sp),#17420 + move.l 16(%sp),%d0 + lea (60,%sp),%sp rts -.L359: - tst.b %d0 - jeq .L360 - move.b 1(%a0),%d0 - moveq #120,%d5 - mvz.b %d0,%d2 - subq.l #4,%d0 - mvz.b %d0,%d0 - subq.l #4,%d2 - cmp.l %d0,%d5 - jcs .L355 - mov3q.l #5,%d5 - rems.l %d5,%d0:%d2 +.L735: + pea 2330.w + pea staging + move.l %d1,24(%sp) + jsr vector_track_empty + addq.l #8,%sp + move.l 16(%sp),%d1 tst.l %d0 - jne .L355 - mvz.b 2(%a0),%d2 - moveq #126,%d5 - cmp.l %d2,%d5 - jcs .L354 - tst.b 3(%a0) - jlt .L354 - addq.l #1,%d1 - addq.l #4,%a0 - moveq #64,%d0 - cmp.l %d1,%d0 - jne .L362 - jra .L395 -.L371: - not.l %d2 - and.l %d0,%d2 - jra .L373 -.L366: - move.l %d2,%d7 - not.l %d7 - and.l %d7,%d1 - jra .L367 -.L377: - st %d2 - jra .L365 -.L376: - st %d2 - jra .L364 -.L375: - st %d2 - jra .L363 - .size vector_write_phrase, .-vector_write_phrase + jne .L702 + movem.l (%sp),#17420 + lea (60,%sp),%sp + rts +.L703: + mvz.w #36435,%d0 + move.b (%a0,%d0.l),%d0 + jra .L704 +.L715: + move.b 27(%sp),%d2 + move.w %d2,%a0 + jra .L711 + .size generate_track, .-generate_track .align 2 - .globl vector_signed_track - .type vector_signed_track, @function -vector_signed_track: + .type change_control, @function +change_control: + link.w %fp,#-32 + lea (-22,%fp),%a0 + move.l %a2,-(%sp) move.l %d2,-(%sp) - move.l 12(%sp),%d0 - mov3q.l #7,%d1 - move.l 8(%sp),%a0 - cmp.l %d0,%d1 - jcs .L399 - mvz.b 34(%a0,%d0.l),%d1 - mov3q.l #1,%d2 - cmp.l %d1,%d2 - jcs .L399 - moveq #30,%d1 - moveq #83,%d2 + mvz.b 269161676,%d1 + move.l %d1,-(%sp) + move.l %d1,-32(%fp) + jsr settings + move.w -30(%fp),%d1 + addq.l #4,%sp + move.l 1187521622,%a0 + add.l #585088,%a0 + move.w -14(%fp),-3(%fp) + move.b -12(%fp),-1(%fp) + move.l -18(%fp),-7(%fp) + move.l -22(%fp),-11(%fp) + mulu.w #30,%d1 + move.b 269161679,%d0 + move.l %d1,%a1 + mov3q.l #3,%d1 + lea (497,%a1),%a1 + and.l %d1,%d0 + mvz.w #6322,%d1 muls.l %d1,%d0 - lea 60(%a0,%d0.l),%a0 - mvz.b (%a0),%d0 - cmp.l %d0,%d2 - jeq .L403 -.L399: - move.l (%sp)+,%d2 - clr.l %d0 + add.l %d0,%a0 + move.b (%a0,%a1.l),%d1 + moveq #127,%d0 + and.l %d0,%d1 + mov3q.l #5,%d0 + mvz.b %d1,%d2 + cmp.l 8(%fp),%d0 + jcs .L737 + lea (-22,%fp),%a1 + add.l 8(%fp),%a1 + move.l 12(%fp),%a0 + mvz.b (%a1),%d1 + add.l %d1,%a0 + tst.l %a0 + jlt .L757 +.L740: + move.l 8(%fp),%a2 + move.l #vector_control_max,%d0 + mvz.b (%a2,%d0.l),%d0 + cmp.l %d0,%a0 + jge .L743 + move.l %a0,%d0 +.L743: + cmp.l %d1,%d0 + jeq .L736 + move.b %d0,(%a1) + move.l %d2,%d0 +.L746: + move.l %d0,-(%sp) + pea -22(%fp) + move.l -32(%fp),-(%sp) + lea save_settings,%a0 + move.l %a0,-28(%fp) + jsr (%a0) + clr.l -(%sp) + mov3q.l #1,-(%sp) + move.l -32(%fp),-(%sp) + jsr generate_track + lea (24,%sp),%sp + move.l -28(%fp),%a0 + tst.l %d0 + jeq .L758 +.L747: + mov3q.l #-1,-(%sp) + jsr 1074059592 + mov3q.l #1,1187497772 + addq.l #4,%sp +.L736: + move.l -40(%fp),%d2 + move.l -36(%fp),%a2 + unlk %fp rts -.L403: - mvz.b 1(%a0),%d0 - moveq #50,%d1 +.L737: + mov3q.l #6,%d0 + cmp.l 8(%fp),%d0 + jeq .L739 + move.l 8(%fp),%d1 + move.l 12(%fp),%a0 + lea -23(%fp,%d1.l),%a1 + mvz.b (%a1),%d1 + add.l %d1,%a0 + tst.l %a0 + jge .L740 +.L757: + tst.l %d1 + jeq .L736 + clr.b %d0 + move.b %d0,(%a1) + move.l %d2,%d0 + jra .L746 +.L758: + move.l %d2,-(%sp) + pea -11(%fp) + move.l -32(%fp),-(%sp) + jsr (%a0) + lea (12,%sp),%sp + mov3q.l #-1,-(%sp) + jsr 1074059592 + mov3q.l #1,1187497772 + addq.l #4,%sp + jra .L736 +.L739: + move.l 12(%fp),%d0 + add.l %d2,%d0 + tst.l %d0 + jlt .L744 + moveq #127,%d1 cmp.l %d0,%d1 - jne .L399 - mvz.b 2(%a0),%d0 - subq.l #1,%d0 + jge .L745 + moveq #127,%d0 +.L745: + cmp.l %d2,%d0 + jeq .L736 + move.l %d0,-(%sp) + pea -22(%fp) + move.l -32(%fp),-(%sp) + lea save_settings,%a0 + move.l %a0,-28(%fp) + jsr (%a0) + clr.l -(%sp) + mov3q.l #1,-(%sp) + move.l -32(%fp),-(%sp) + jsr generate_track + lea (24,%sp),%sp + move.l -28(%fp),%a0 tst.l %d0 - jeq .L400 - move.b 2(%a0),%d0 - mov3q.l #2,%d1 - move.l (%sp)+,%d2 - eor.l %d1,%d0 - tst.b %d0 - seq %d0 - mvs.b %d0,%d0 - neg.l %d0 - rts -.L400: - move.l (%sp)+,%d2 - mov3q.l #1,%d0 - rts - .size vector_signed_track, .-vector_signed_track + jne .L747 + jra .L758 +.L744: + tst.b %d1 + jeq .L736 + clr.l %d0 + move.l %d0,-(%sp) + pea -22(%fp) + move.l -32(%fp),-(%sp) + lea save_settings,%a0 + move.l %a0,-28(%fp) + jsr (%a0) + clr.l -(%sp) + mov3q.l #1,-(%sp) + move.l -32(%fp),-(%sp) + jsr generate_track + lea (24,%sp),%sp + move.l -28(%fp),%a0 + tst.l %d0 + jne .L747 + jra .L758 + .size change_control, .-change_control .align 2 - .type generate_track, @function -generate_track: - lea (-56,%sp),%sp + .type generator_view, @function +generator_view: move.l 1187521622,%d0 add.l #-1073741824,%d0 - movem.l #17412,(%sp) + move.l %d2,-(%sp) cmp.l #133169151,%d0 - jls .L435 -.L417: + jhi .L762 + tst.b -2147483627.l + jeq .L770 +.L762: clr.l %d0 -.L404: - movem.l (%sp),#17412 - lea (56,%sp),%sp +.L759: + move.l (%sp)+,%d2 rts -.L435: +.L770: + move.b 269161676,%d1 move.l 1187521622,%a0 - mov3q.l #3,%d1 + mov3q.l #3,%d2 move.b 269161679,%d0 - mvz.w #6322,%d2 - move.l 60(%sp),-(%sp) add.l #585088,%a0 - and.l %d1,%d0 - muls.l %d2,%d0 + mvz.b %d1,%d1 + and.l %d2,%d0 + move.l %d1,-(%sp) + mvz.w #6322,%d1 + muls.l %d1,%d0 pea (%a0,%d0.l) jsr vector_signed_track addq.l #8,%sp tst.l %d0 - jeq .L404 - move.b 269161680,%d0 - moveq #15,%d2 - mvz.b %d0,%d1 - move.l %d1,24(%sp) - cmp.l %d1,%d2 - jcs .L417 - move.w 62(%sp),%d1 - move.l 1187521622,%a1 - ext.w %d0 - lea staging,%a0 - move.l %a1,28(%sp) - move.b 269161679,%d2 - move.l 28(%sp),%a2 - mulu.w #2330,%d1 - move.b %d2,39(%sp) - move.l %d1,%a6 - move.w %d0,%d1 - mulu.w #36568,%d1 - lea (%a6,%d1.l),%a1 - lea (%a2,%a1.l),%a6 - move.l %a1,32(%sp) - sub.l %a0,%a6 -.L408: - move.b (%a0,%a6.l),%d0 - move.b %d0,(%a0)+ - cmp.l #staging+2330,%a0 - jne .L408 - tst.l 64(%sp) - jeq .L436 -.L409: - mvz.w #36437,%d0 - move.l 28(%sp),%a0 - add.l %d1,%a0 - tst.b (%a0,%d0.l) - jeq .L410 - move.b staging+80,%d0 -.L411: - mvz.b %d0,%d0 - moveq #63,%d2 - move.l %d0,%d1 - subq.l #1,%d1 - cmp.l %d1,%d2 - jcs .L417 - move.l 60(%sp),-(%sp) - lea (49,%sp),%a0 - move.l %d0,16(%sp) - jsr settings - move.w 66(%sp),%d2 - addq.l #4,%sp - move.l 1187521622,%a0 - add.l #585088,%a0 - move.b 269161679,%d1 - mulu.w #30,%d2 - move.l 12(%sp),%d0 - move.l %d2,%a1 - mov3q.l #3,%d2 - and.l %d2,%d1 - mvz.w #6322,%d2 - lea (497,%a1),%a1 - muls.l %d2,%d1 - moveq #127,%d2 - add.l %d1,%a0 - move.b (%a0,%a1.l),%d1 - and.l %d1,%d2 - move.l %d2,40(%sp) - tst.l 68(%sp) - jeq .L413 - move.l %d2,%d1 - moveq #127,%d2 - addq.l #1,%d1 - and.l %d1,%d2 - move.l %d2,40(%sp) -.L413: - move.w 62(%sp),%d2 - move.l 1187521622,%a0 - add.l #585088,%a0 - move.b 269161679,%d1 - mulu.w #24,%d2 - move.l %d2,%a1 - mov3q.l #3,%d2 - and.l %d2,%d1 - mvz.w #6322,%d2 - lea (291,%a1),%a1 - muls.l %d2,%d1 - moveq #127,%d2 - add.l %d1,%a0 - mvz.b (%a0,%a1.l),%d1 - cmp.l %d1,%d2 - jcs .L417 - move.l 40(%sp),-(%sp) - move.l %d1,-(%sp) - move.l %d0,-(%sp) - pea 57(%sp) - pea phrase - jsr (vector_generate.part.0) - move.l 84(%sp),-(%sp) - pea phrase - pea 2330.w - pea staging - jsr vector_write_phrase - lea (36,%sp),%sp + jeq .L762 + move.l edit_view,%d0 tst.l %d0 - jeq .L404 - move.l 28(%sp),%a1 - cmp.l 1187521622.l,%a1 - jne .L417 - mvz.b 269161680,%d1 - cmp.l 24(%sp),%d1 - jne .L417 - mvz.b 39(%sp),%d1 - mvz.b 269161679,%d2 - cmp.l %d1,%d2 - jne .L417 - move.l 32(%sp),%a1 - sub.l #staging-268525901,%a1 - lea staging,%a0 - move.l %a1,24(%sp) -.L416: - lea (%a0,%a6.l),%a2 - move.b (%a0)+,%d1 - mvz.b (%a2),%d2 - move.l %a2,16(%sp) - move.l %d2,20(%sp) - mvz.b %d1,%d2 - cmp.l 20(%sp),%d2 - jeq .L415 - move.b %d1,(%a2) - move.l 24(%sp),%a1 - lea (-1,%a0),%a2 - move.b (%a2),(%a1,%a0.l) -.L415: - cmp.l #staging+2330,%a0 - jne .L416 - move.l 40(%sp),-(%sp) - pea 49(%sp) - move.l 68(%sp),-(%sp) - move.l %d0,24(%sp) - jsr save_settings - mov3q.l #3,%d2 - move.b 51(%sp),%d1 - move.l 1187521622,%a6 - add.l #610376,%a6 - lea (12,%sp),%sp - and.l %d2,%d1 - move.b (%a6),%d2 - move.w %d2,%a1 - mov3q.l #1,%d2 - lsl.l %d1,%d2 - move.l %d2,%a0 - move.l %d2,%d1 - move.l %a1,%d2 - or.l %d2,%d1 - move.l %a0,%d2 - move.b %d1,(%a6) - move.b 269161566,%d1 - or.l %d2,%d1 - move.b %d1,269161566 - move.l 1187521622,%a0 - add.l #635698,%a0 - mov3q.l #1,(%a0) - mov3q.l #1,269452696 - jsr 1073905152 - jsr 1073953240 - move.l 60(%sp),-(%sp) - jsr 1074387488 + jne .L762 + tst.b 1187502296.l + jne .L759 + tst.l 1175263034 + jne .L759 + tst.l 1175262868 + seq %d0 + move.l (%sp)+,%d2 + mvs.b %d0,%d0 + neg.l %d0 + rts + .size generator_view, .-generator_view + .align 2 + .globl vector_validate_part + .type vector_validate_part, @function +vector_validate_part: + lea (-136,%sp),%sp + clr.l %d1 + movem.l #23804,(%sp) + move.l 140(%sp),%d2 + move.l %d2,%a4 + lea (40,%sp),%a2 + sub.l %a6,%a6 + move.l %d2,%d4 + clr.l %d3 + move.l %a2,%a3 + add.l #60,%d4 + lea (34,%a4),%a4 +.L777: + mvz.b (%a4,%d1.l),%d0 + mov3q.l #1,%d6 + cmp.l %d0,%d6 + jcs .L775 + lea (%a6,%d4.l),%a0 + moveq #83,%d7 + mvz.b (%a0),%d0 + cmp.l %d0,%d7 + jeq .L802 +.L775: + addq.l #1,%d1 + lea (30,%a6),%a6 + lea (12,%a3),%a3 + cmp.l #240,%a6 + jne .L777 + move.l %d2,-(%sp) + move.l 148(%sp),%a0 + clr.l %d5 + jsr (%a0) addq.l #4,%sp - movem.l (%sp),#17412 - mov3q.l #1,1187497772 - move.l 12(%sp),%d0 - lea (56,%sp),%sp + sub.l %a0,%a0 +.L782: + btst %d5,%d3 + jne .L803 + addq.l #1,%d5 + lea (30,%a0),%a0 + lea (12,%a2),%a2 + cmp.l #240,%a0 + jne .L782 +.L806: + movem.l (%sp),#23804 + lea (136,%sp),%sp rts -.L436: - pea 2330.w - pea staging - move.l %d1,20(%sp) - jsr vector_track_empty +.L802: + mvz.b 1(%a0),%d0 + moveq #50,%d6 + cmp.l %d0,%d6 + jne .L775 + mvz.b 2(%a0),%d0 + subq.l #1,%d0 + tst.l %d0 + jeq .L773 + mvz.b 2(%a0),%d0 + subq.l #2,%d0 + tst.l %d0 + jne .L775 +.L773: + mov3q.l #1,%d0 + lsl.l %d1,%d0 + sub.l %a0,%a0 + or.l %d0,%d3 +.L776: + lea 60(%a6,%a0.l),%a1 + mov3q.l #5,%d7 + cmp.l %a0,%d7 + jcc .L774 +.L804: + move.l %a0,%d6 + mov3q.l #6,%d7 + remu.l %d7,%d0:%d6 + lea (%a6,%d0.l),%a1 + moveq #12,%d0 + lea (492,%a1),%a1 + add.l %d2,%a1 + move.b (%a1),(%a3,%a0.l) + clr.b (%a1) + addq.l #1,%a0 + cmp.l %a0,%d0 + jeq .L775 + lea 60(%a6,%a0.l),%a1 + mov3q.l #5,%d7 + cmp.l %a0,%d7 + jcs .L804 +.L774: + add.l %d2,%a1 + move.b (%a1),(%a3,%a0.l) + clr.b (%a1) + addq.l #1,%a0 + jra .L776 +.L803: + clr.l %d1 + lea (%a0,%d2.l),%a3 +.L781: + mov3q.l #5,%d4 + cmp.l %d1,%d4 + jcs .L779 +.L805: + lea (%a2,%d1.l),%a4 + mov3q.l #5,%d4 + move.l %d2,%a1 + add.l %d1,%a1 + move.b (%a4),60(%a0,%a1.l) + addq.l #1,%d1 + cmp.l %d1,%d4 + jcc .L805 +.L779: + move.l %d1,%d6 + mov3q.l #6,%d7 + remu.l %d7,%d4:%d6 + lea (%a2,%d1.l),%a4 + addq.l #1,%d1 + lea (%a3,%d4.l),%a1 + moveq #12,%d4 + move.b (%a4),492(%a1) + cmp.l %d1,%d4 + jne .L781 + addq.l #1,%d5 + lea (30,%a0),%a0 + lea (12,%a2),%a2 + cmp.l #240,%a0 + jne .L782 + jra .L806 + .size vector_validate_part, .-vector_validate_part + .align 2 + .globl st_validate_part + .type st_validate_part, @function +st_validate_part: + pea st_stock_validate + move.l 8(%sp),-(%sp) + jsr vector_validate_part addq.l #8,%sp - move.l 12(%sp),%d1 - tst.l %d0 - jne .L409 - movem.l (%sp),#17412 - lea (56,%sp),%sp rts -.L410: - mvz.w #36435,%d0 - move.b (%a0,%d0.l),%d0 - jra .L411 - .size generate_track, .-generate_track + .size st_validate_part, .-st_validate_part .align 2 - .type change_control, @function -change_control: - link.w %fp,#-32 - lea (-22,%fp),%a0 - move.l %a2,-(%sp) + .globl st_selected + .type st_selected, @function +st_selected: + move.l 1187521622,%d0 + add.l #-1073741824,%d0 move.l %d2,-(%sp) - mvz.b 269161676,%d1 - move.l %d1,-(%sp) - move.l %d1,-32(%fp) - jsr settings - move.w -30(%fp),%d1 - addq.l #4,%sp + cmp.l #133169151,%d0 + jhi .L812 + tst.b -2147483627.l + jeq .L815 +.L812: + move.l (%sp)+,%d2 + clr.l %d0 + rts +.L815: + move.b 269161676,%d1 move.l 1187521622,%a0 + mov3q.l #3,%d2 + move.b 269161679,%d0 add.l #585088,%a0 - move.w -14(%fp),-3(%fp) - move.b -12(%fp),-1(%fp) - move.l -18(%fp),-7(%fp) - move.l -22(%fp),-11(%fp) - mulu.w #30,%d1 + mvz.b %d1,%d1 + and.l %d2,%d0 + move.l %d1,-(%sp) + mvz.w #6322,%d1 + muls.l %d1,%d0 + pea (%a0,%d0.l) + jsr vector_signed_track + addq.l #8,%sp + move.l (%sp)+,%d2 + rts + .size st_selected, .-st_selected + .align 2 + .type pool_context, @function +pool_context: + move.l pool_bank,%d0 + cmp.l 1187521622.l,%d0 + jeq .L822 +.L818: + clr.l %d0 + rts +.L822: move.b 269161679,%d0 - move.l %d1,%a1 mov3q.l #3,%d1 - lea (497,%a1),%a1 and.l %d1,%d0 - mvz.w #6322,%d1 - muls.l %d1,%d0 - add.l %d0,%a0 - move.b (%a0,%a1.l),%d1 - moveq #127,%d0 - and.l %d0,%d1 - mov3q.l #5,%d0 - mvz.b %d1,%d2 - cmp.l 8(%fp),%d0 - jcs .L438 - lea (-22,%fp),%a1 - add.l 8(%fp),%a1 - move.l 12(%fp),%a0 - mvz.b (%a1),%d1 - add.l %d1,%a0 + cmp.l pool_part.l,%d0 + jne .L818 + mvz.b 269161676,%d0 + cmp.l pool_track.l,%d0 + jne .L818 + jra st_selected + .size pool_context, .-pool_context + .align 2 + .globl st_key + .type st_key, @function +st_key: + lea (-20,%sp),%sp + moveq #49,%d0 + move.l %a2,-(%sp) + move.l %d2,-(%sp) + move.l 32(%sp),%a1 + mov3q.l #1,%d2 + move.l 36(%sp),%a0 + cmp.l %a1,%d0 + sne %d1 + mvs.b %d1,%d1 + neg.l %d1 + cmp.l %a0,%d2 + jeq .L824 + mov3q.l #1,%d0 + lsl.l %d1,%d0 + move.l mine,%d2 + move.l %d2,20(%sp) + and.l %d0,%d2 + tst.l %d2 + jne .L839 tst.l %a0 - jlt .L458 -.L441: - move.l 8(%fp),%a2 - move.l #vector_control_max,%d0 - mvz.b (%a2,%d0.l),%d0 - cmp.l %d0,%a0 - jge .L444 - move.l %a0,%d0 -.L444: - cmp.l %d1,%d0 - jeq .L437 - move.b %d0,(%a1) - move.l %d2,%d0 -.L447: - move.l %d0,-(%sp) - pea -22(%fp) - move.l -32(%fp),-(%sp) - lea save_settings,%a0 - move.l %a0,-28(%fp) - jsr (%a0) - clr.l -(%sp) + jne .L833 + mov3q.l #1,%d0 +.L828: + move.l %d1,%a2 + moveq #-3,%d2 + lea (%a2,%d1.l*2),%a2 + add.l %a2,%d0 + lea saved,%a2 + move.l (%a2,%d0.l*4),%d0 + move.l %d0,%d1 + subq.l #1,%d1 + cmp.l %d1,%d2 + jcs .L823 +.L840: + move.l %a1,32(%sp) + move.l %a0,36(%sp) + move.l (%sp)+,%d2 + move.l %d0,%a1 + move.l (%sp)+,%a2 + lea (20,%sp),%sp + jmp (%a1) +.L833: + move.l %d1,%a2 + mov3q.l #2,%d0 + lea (%a2,%d1.l*2),%a2 + moveq #-3,%d2 + add.l %a2,%d0 + lea saved,%a2 + move.l (%a2,%d0.l*4),%d0 + move.l %d0,%d1 + subq.l #1,%d1 + cmp.l %d1,%d2 + jcc .L840 +.L823: + move.l (%sp)+,%d2 + move.l (%sp)+,%a2 + lea (20,%sp),%sp + rts +.L839: + tst.l %a0 + jne .L823 + not.l %d0 + and.l 20(%sp),%d0 + move.l (%sp)+,%d2 + move.l (%sp)+,%a2 + move.l %d0,mine + lea (20,%sp),%sp + rts +.L824: + move.l %d1,16(%sp) + move.l %a0,8(%sp) + move.l %a1,12(%sp) + jsr st_selected + move.l 16(%sp),%d1 + move.l 8(%sp),%a0 + move.l 12(%sp),%a1 + tst.l %d0 + jeq .L829 + move.b 1175456541,%d0 + btst #5,%d0 + jne .L829 + moveq #62,%d0 + cmp.l %a1,%d0 + jeq .L841 + moveq #49,%d2 + cmp.l %a1,%d2 + jne .L829 + move.l %d1,16(%sp) + move.l %a0,8(%sp) + move.l %a1,12(%sp) + jsr generator_view + move.l 16(%sp),%d1 + move.l 8(%sp),%a0 + move.l 12(%sp),%a1 + tst.l %d0 + jeq .L829 + mov3q.l #1,%d0 + or.l %d0,mine + move.b 269161676,%d0 mov3q.l #1,-(%sp) - move.l -32(%fp),-(%sp) + mov3q.l #1,-(%sp) + mvz.b %d0,%d0 + move.l %d0,-(%sp) jsr generate_track - lea (24,%sp),%sp - move.l -28(%fp),%a0 + lea (12,%sp),%sp tst.l %d0 - jeq .L459 -.L448: + jeq .L832 + pea 32.w + move.l #.LC5,%d0 + move.l %d0,-(%sp) + jsr 1074111160 mov3q.l #-1,-(%sp) jsr 1074059592 mov3q.l #1,1187497772 + lea (12,%sp),%sp +.L842: + move.l (%sp)+,%d2 + move.l (%sp)+,%a2 + lea (20,%sp),%sp + rts +.L829: + clr.l %d0 + jra .L828 +.L841: + tst.b 1187502296.l + jne .L829 + tst.l edit_view + seq %d0 + mov3q.l #2,%d1 + or.l %d1,mine + mov3q.l #-1,-(%sp) + mvs.b %d0,%d0 + neg.l %d0 + move.l %d0,edit_view + jsr 1074059592 addq.l #4,%sp -.L437: - move.l -40(%fp),%d2 - move.l -36(%fp),%a2 - unlk %fp + move.l (%sp)+,%d2 + mov3q.l #1,1187497772 + move.l (%sp)+,%a2 + lea (20,%sp),%sp rts -.L438: - mov3q.l #6,%d0 - cmp.l 8(%fp),%d0 - jeq .L440 - move.l 8(%fp),%d1 - move.l 12(%fp),%a0 - lea -23(%fp,%d1.l),%a1 - mvz.b (%a1),%d1 - add.l %d1,%a0 - tst.l %a0 - jge .L441 -.L458: - tst.l %d1 - jeq .L437 - clr.b %d0 - move.b %d0,(%a1) - move.l %d2,%d0 - jra .L447 -.L459: - move.l %d2,-(%sp) - pea -11(%fp) - move.l -32(%fp),-(%sp) - jsr (%a0) +.L832: + pea 32.w + move.l #.LC6,%d0 + move.l %d0,-(%sp) + jsr 1074111160 + mov3q.l #-1,-(%sp) + jsr 1074059592 + mov3q.l #1,1187497772 lea (12,%sp),%sp + jra .L842 + .size st_key, .-st_key + .align 2 + .type pool_flex, @function +pool_flex: + move.l pool_bank,%d0 + cmp.l 1187521622.l,%d0 + jeq .L850 +.L843: + rts +.L850: + move.b 269161679,%d0 + mov3q.l #3,%d1 + and.l %d1,%d0 + cmp.l pool_part.l,%d0 + jne .L843 + mvz.b 269161676,%d0 + cmp.l pool_track.l,%d0 + jne .L843 + jsr st_selected + tst.l %d0 + jeq .L843 + mov3q.l #1,pool_browse + mov3q.l #1,pool_direct + jsr st_stock_pool_open mov3q.l #-1,-(%sp) jsr 1074059592 mov3q.l #1,1187497772 addq.l #4,%sp - jra .L437 -.L440: - move.l 12(%fp),%d0 - add.l %d2,%d0 - tst.l %d0 - jlt .L445 - moveq #127,%d1 - cmp.l %d0,%d1 - jge .L446 - moveq #127,%d0 -.L446: - cmp.l %d2,%d0 - jeq .L437 - move.l %d0,-(%sp) - pea -22(%fp) - move.l -32(%fp),-(%sp) - lea save_settings,%a0 - move.l %a0,-28(%fp) - jsr (%a0) - clr.l -(%sp) - mov3q.l #1,-(%sp) - move.l -32(%fp),-(%sp) - jsr generate_track - lea (24,%sp),%sp - move.l -28(%fp),%a0 - tst.l %d0 - jne .L448 - jra .L459 -.L445: - tst.b %d1 - jeq .L437 - clr.l %d0 - move.l %d0,-(%sp) - pea -22(%fp) - move.l -32(%fp),-(%sp) - lea save_settings,%a0 - move.l %a0,-28(%fp) - jsr (%a0) - clr.l -(%sp) - mov3q.l #1,-(%sp) - move.l -32(%fp),-(%sp) - jsr generate_track - lea (24,%sp),%sp - move.l -28(%fp),%a0 + rts + .size pool_flex, .-pool_flex + .align 2 + .type pool_static, @function +pool_static: + move.l pool_bank,%d0 + cmp.l 1187521622.l,%d0 + jeq .L858 +.L851: + rts +.L858: + move.b 269161679,%d0 + mov3q.l #3,%d1 + and.l %d1,%d0 + cmp.l pool_part.l,%d0 + jne .L851 + mvz.b 269161676,%d0 + cmp.l pool_track.l,%d0 + jne .L851 + jsr st_selected tst.l %d0 - jne .L448 - jra .L459 - .size change_control, .-change_control + jeq .L851 + clr.l pool_browse + mov3q.l #1,pool_direct + jsr st_stock_pool_open + mov3q.l #-1,-(%sp) + jsr 1074059592 + mov3q.l #1,1187497772 + addq.l #4,%sp + rts + .size pool_static, .-pool_static .align 2 - .type generator_view, @function -generator_view: + .globl st_type + .type st_type, @function +st_type: move.l 1187521622,%d0 add.l #-1073741824,%d0 move.l %d2,-(%sp) cmp.l #133169151,%d0 - jhi .L463 - tst.b -2147483627.l - jeq .L471 -.L463: - clr.l %d0 -.L460: + jhi .L861 + move.l 1187521622,%d0 + mov3q.l #3,%d2 + move.b 269161679,%d1 + add.l #585088,%d0 + move.l 12(%sp),%a0 + lea (-34,%a0),%a0 + and.l %d2,%d1 + mvz.w #6322,%d2 + muls.l %d2,%d1 + mov3q.l #7,%d2 + add.l %d1,%d0 + move.l %a0,%d1 + sub.l %d0,%d1 + cmp.l %d1,%d2 + jcc .L868 +.L861: + move.l 8(%sp),%d0 move.l (%sp)+,%d2 rts -.L471: - move.b 269161676,%d1 - move.l 1187521622,%a0 - mov3q.l #3,%d2 - move.b 269161679,%d0 - add.l #585088,%a0 - mvz.b %d1,%d1 - and.l %d2,%d0 +.L868: + mov3q.l #1,%d2 + cmp.l 8(%sp),%d2 + jcs .L861 move.l %d1,-(%sp) - mvz.w #6322,%d1 - muls.l %d1,%d0 - pea (%a0,%d0.l) + move.l %d0,-(%sp) jsr vector_signed_track addq.l #8,%sp tst.l %d0 - jeq .L463 - move.l edit_view,%d0 - tst.l %d0 - jne .L463 - tst.b 1187502296.l - jne .L460 - tst.l 1175263034 - jne .L460 - tst.l 1175262868 - seq %d0 + jeq .L861 + mov3q.l #5,8(%sp) + move.l 8(%sp),%d0 move.l (%sp)+,%d2 - mvs.b %d0,%d0 - neg.l %d0 - rts - .size generator_view, .-generator_view - .align 2 - .globl vector_validate_part - .type vector_validate_part, @function -vector_validate_part: - lea (-136,%sp),%sp - clr.l %d1 - movem.l #23804,(%sp) - move.l 140(%sp),%d2 - move.l %d2,%a4 - lea (40,%sp),%a2 - sub.l %a6,%a6 - move.l %d2,%d4 - clr.l %d3 - move.l %a2,%a3 - add.l #60,%d4 - lea (34,%a4),%a4 -.L478: - mvz.b (%a4,%d1.l),%d0 - mov3q.l #1,%d6 - cmp.l %d0,%d6 - jcs .L476 - lea (%a6,%d4.l),%a0 - moveq #83,%d7 - mvz.b (%a0),%d0 - cmp.l %d0,%d7 - jeq .L503 -.L476: - addq.l #1,%d1 - lea (30,%a6),%a6 - lea (12,%a3),%a3 - cmp.l #240,%a6 - jne .L478 - move.l %d2,-(%sp) - move.l 148(%sp),%a0 - clr.l %d5 - jsr (%a0) - addq.l #4,%sp - sub.l %a0,%a0 -.L483: - btst %d5,%d3 - jne .L504 - addq.l #1,%d5 - lea (30,%a0),%a0 - lea (12,%a2),%a2 - cmp.l #240,%a0 - jne .L483 -.L507: - movem.l (%sp),#23804 - lea (136,%sp),%sp - rts -.L503: - mvz.b 1(%a0),%d0 - moveq #50,%d6 - cmp.l %d0,%d6 - jne .L476 - mvz.b 2(%a0),%d0 - subq.l #1,%d0 - tst.l %d0 - jeq .L474 - mvz.b 2(%a0),%d0 - subq.l #2,%d0 - tst.l %d0 - jne .L476 -.L474: - mov3q.l #1,%d0 - lsl.l %d1,%d0 - sub.l %a0,%a0 - or.l %d0,%d3 -.L477: - lea 60(%a6,%a0.l),%a1 - mov3q.l #5,%d7 - cmp.l %a0,%d7 - jcc .L475 -.L505: - move.l %a0,%d6 - mov3q.l #6,%d7 - remu.l %d7,%d0:%d6 - lea (%a6,%d0.l),%a1 - moveq #12,%d0 - lea (492,%a1),%a1 - add.l %d2,%a1 - move.b (%a1),(%a3,%a0.l) - clr.b (%a1) - addq.l #1,%a0 - cmp.l %a0,%d0 - jeq .L476 - lea 60(%a6,%a0.l),%a1 - mov3q.l #5,%d7 - cmp.l %a0,%d7 - jcs .L505 -.L475: - add.l %d2,%a1 - move.b (%a1),(%a3,%a0.l) - clr.b (%a1) - addq.l #1,%a0 - jra .L477 -.L504: - clr.l %d1 - lea (%a0,%d2.l),%a3 -.L482: - mov3q.l #5,%d4 - cmp.l %d1,%d4 - jcs .L480 -.L506: - lea (%a2,%d1.l),%a4 - mov3q.l #5,%d4 - move.l %d2,%a1 - add.l %d1,%a1 - move.b (%a4),60(%a0,%a1.l) - addq.l #1,%d1 - cmp.l %d1,%d4 - jcc .L506 -.L480: - move.l %d1,%d6 - mov3q.l #6,%d7 - remu.l %d7,%d4:%d6 - lea (%a2,%d1.l),%a4 - addq.l #1,%d1 - lea (%a3,%d4.l),%a1 - moveq #12,%d4 - move.b (%a4),492(%a1) - cmp.l %d1,%d4 - jne .L482 - addq.l #1,%d5 - lea (30,%a0),%a0 - lea (12,%a2),%a2 - cmp.l #240,%a0 - jne .L483 - jra .L507 - .size vector_validate_part, .-vector_validate_part - .align 2 - .globl st_validate_part - .type st_validate_part, @function -st_validate_part: - pea st_stock_validate - move.l 8(%sp),-(%sp) - jsr vector_validate_part - addq.l #8,%sp rts - .size st_validate_part, .-st_validate_part + .size st_type, .-st_type .align 2 - .globl st_selected - .type st_selected, @function -st_selected: + .globl st_chooser_type + .type st_chooser_type, @function +st_chooser_type: + move.l %d3,-(%sp) + move.l %d2,-(%sp) + tst.l pool_direct + jeq .L873 + jsr pool_context + tst.l %d0 + jne .L883 +.L873: move.l 1187521622,%d0 add.l #-1073741824,%d0 - move.l %d2,-(%sp) cmp.l #133169151,%d0 - jhi .L513 - tst.b -2147483627.l - jeq .L516 -.L513: + jhi .L876 + move.l 1187521622,%d1 + mov3q.l #3,%d3 + move.b 269161679,%d0 + add.l #585088,%d1 + move.w %d0,%a0 + move.l 16(%sp),%d0 + add.l #-34,%d0 + move.l %a0,%d2 + and.l %d3,%d2 + mvz.w #6322,%d3 + muls.l %d3,%d2 + add.l %d2,%d1 + sub.l %d1,%d0 + mov3q.l #7,%d2 + cmp.l %d0,%d2 + jcc .L884 +.L876: + move.l 12(%sp),%d0 move.l (%sp)+,%d2 - clr.l %d0 + move.l (%sp)+,%d3 rts -.L516: - move.b 269161676,%d1 - move.l 1187521622,%a0 - mov3q.l #3,%d2 - move.b 269161679,%d0 - add.l #585088,%a0 - mvz.b %d1,%d1 - and.l %d2,%d0 +.L884: + mov3q.l #1,%d3 + cmp.l 12(%sp),%d3 + jcs .L876 + move.l %d0,-(%sp) move.l %d1,-(%sp) - mvz.w #6322,%d1 - muls.l %d1,%d0 - pea (%a0,%d0.l) jsr vector_signed_track addq.l #8,%sp + tst.l %d0 + jeq .L876 move.l (%sp)+,%d2 + mov3q.l #5,%d0 + move.l (%sp)+,%d3 rts - .size st_selected, .-st_selected - .align 2 - .type pool_context, @function -pool_context: - move.l pool_bank,%d0 - cmp.l 1187521622.l,%d0 - jeq .L523 -.L519: - clr.l %d0 +.L883: + move.l 1187521622,%d0 + mov3q.l #3,%d2 + move.b 269161679,%d1 + mvz.w #6322,%d3 + move.l pool_track,%a0 + add.l #585088,%d0 + lea (34,%a0),%a0 + and.l %d2,%d1 + muls.l %d3,%d1 + add.l %d1,%d0 + add.l %a0,%d0 + cmp.l 16(%sp),%d0 + jne .L873 + move.l (%sp)+,%d2 + move.l pool_browse,%d0 + move.l (%sp)+,%d3 rts -.L523: - move.b 269161679,%d0 - mov3q.l #3,%d1 - and.l %d1,%d0 - cmp.l pool_part.l,%d0 - jne .L519 - mvz.b 269161676,%d0 - cmp.l pool_track.l,%d0 - jne .L519 - jra st_selected - .size pool_context, .-pool_context - .section .rodata.str1.1 -.LC3: - .string "VECTOR GENERATED" -.LC4: - .string "NO CHANGE" - .text + .size st_chooser_type, .-st_chooser_type .align 2 - .globl st_key - .type st_key, @function -st_key: - lea (-20,%sp),%sp - moveq #49,%d0 - move.l %a2,-(%sp) - move.l %d2,-(%sp) - move.l 32(%sp),%a1 - mov3q.l #1,%d2 - move.l 36(%sp),%a0 - cmp.l %a1,%d0 - sne %d1 - mvs.b %d1,%d1 - neg.l %d1 - cmp.l %a0,%d2 - jeq .L525 - mov3q.l #1,%d0 - lsl.l %d1,%d0 - move.l mine,%d2 - move.l %d2,20(%sp) - and.l %d0,%d2 + .globl st_assign + .type st_assign, @function +st_assign: + lea (-60,%sp),%sp + move.l 1187521622,%d0 + add.l #-1073741824,%d0 + movem.l #19468,(%sp) + cmp.l #133169151,%d0 + jhi .L886 + mov3q.l #7,%d0 + cmp.l 68(%sp),%d0 + jcs .L886 + move.l 1187521622,%d1 + move.l 64(%sp),%a0 + sub.l %d1,%a0 + move.l %a0,%a6 + add.l #-585088,%a6 + move.l %d1,36(%sp) + mvz.w #6322,%d1 + move.l %a6,%d0 + remu.l %d1,%d2:%d0 + move.l %d2,%a0 tst.l %d2 - jne .L540 - tst.l %a0 - jne .L534 - mov3q.l #1,%d0 -.L529: - move.l %d1,%a2 - moveq #-3,%d2 - lea (%a2,%d1.l*2),%a2 - add.l %a2,%d0 - lea saved,%a2 - move.l (%a2,%d0.l*4),%d0 - move.l %d0,%d1 - subq.l #1,%d1 - cmp.l %d1,%d2 - jcs .L524 -.L541: - move.l %a1,32(%sp) - move.l %a0,36(%sp) - move.l (%sp)+,%d2 - move.l %d0,%a1 - move.l (%sp)+,%a2 - lea (20,%sp),%sp - jmp (%a1) -.L534: - move.l %d1,%a2 - mov3q.l #2,%d0 - lea (%a2,%d1.l*2),%a2 - moveq #-3,%d2 - add.l %a2,%d0 - lea saved,%a2 - move.l (%a2,%d0.l*4),%d0 - move.l %d0,%d1 - subq.l #1,%d1 + jne .L886 + cmp.l #25287,%a6 + jhi .L886 + move.l 68(%sp),%d1 + mov3q.l #1,%d2 + move.l 64(%sp),%a2 + lea 34(%a2,%d1.l),%a1 + mvz.b (%a1),%d1 cmp.l %d1,%d2 - jcc .L541 -.L524: - move.l (%sp)+,%d2 - move.l (%sp)+,%a2 - lea (20,%sp),%sp - rts -.L540: - tst.l %a0 - jne .L524 - not.l %d0 - and.l 20(%sp),%d0 - move.l (%sp)+,%d2 - move.l (%sp)+,%a2 - move.l %d0,mine - lea (20,%sp),%sp - rts -.L525: - move.l %d1,16(%sp) - move.l %a0,8(%sp) - move.l %a1,12(%sp) - jsr st_selected - move.l 16(%sp),%d1 - move.l 8(%sp),%a0 - move.l 12(%sp),%a1 + jcc .L915 + mov3q.l #1,32(%sp) +.L887: + move.l 68(%sp),%d1 + moveq #30,%d0 + muls.l %d0,%d1 + tst.l 72(%sp) + jne .L888 + tst.l pool_direct + jeq .L889 + move.l %d1,20(%sp) + move.l %a0,24(%sp) + jsr pool_context + move.l 20(%sp),%d1 + move.l 24(%sp),%a0 tst.l %d0 - jeq .L530 - move.b 1175456541,%d0 - btst #5,%d0 - jne .L530 - moveq #62,%d0 - cmp.l %a1,%d0 - jeq .L542 - moveq #49,%d2 - cmp.l %a1,%d2 - jne .L530 - move.l %d1,16(%sp) - move.l %a0,8(%sp) - move.l %a1,12(%sp) - jsr generator_view - move.l 16(%sp),%d1 - move.l 8(%sp),%a0 - move.l 12(%sp),%a1 + jeq .L889 + move.l 1187521622,%d0 + add.l #585088,%d0 + move.b 269161679,%d2 + move.w %d2,%a1 + mov3q.l #3,%d2 + move.l %a1,%d3 + and.l %d2,%d3 + mvz.w #6322,%d2 + muls.l %d2,%d3 + add.l %d3,%d0 + cmp.l 64(%sp),%d0 + jne .L889 + move.l 68(%sp),%d3 + cmp.l pool_track.l,%d3 + jne .L889 + mov3q.l #2,72(%sp) +.L888: + move.l 68(%sp),-(%sp) + move.l 68(%sp),-(%sp) + move.l %d1,28(%sp) + move.l %a0,32(%sp) + jsr vector_signed_track + addq.l #8,%sp + move.l 20(%sp),%d1 + move.l 24(%sp),%a0 + tst.l %d0 + jeq .L916 +.L891: + move.l 64(%sp),%a1 + move.l #268525902,%d0 + sub.l 36(%sp),%d0 + lea 60(%a1,%d1.l),%a0 + lea 66(%a1,%d1.l),%a1 + move.l %a1,%d1 + move.l #268526334,%a1 + sub.l 36(%sp),%a1 +.L898: + move.b (%a0),(%a0,%d0.l) + lea (432,%a0),%a2 + move.b (%a2),(%a1,%a0.l) + addq.l #1,%a0 + cmp.l %a0,%d1 + jne .L898 + mov3q.l #1,%d0 + cmp.l 72(%sp),%d0 + jne .L885 + mvz.w #6322,%d1 + move.l %a6,%d0 + move.l #1187521622,%a0 + move.l (%a0),pool_bank + mov3q.l #1,pool_pending + divu.l %d1,%d0 + move.l 68(%sp),%d1 + move.l %d1,pool_track + move.l %d0,pool_part +.L885: + movem.l (%sp),#19468 + move.l 32(%sp),%d0 + lea (60,%sp),%sp + rts +.L886: + movem.l (%sp),#19468 + mov3q.l #1,32(%sp) + move.l 32(%sp),%d0 + lea (60,%sp),%sp + rts +.L889: + move.l 68(%sp),-(%sp) + move.l 68(%sp),-(%sp) + move.l %d1,28(%sp) + jsr vector_signed_track + addq.l #8,%sp + move.l 20(%sp),%d1 tst.l %d0 - jeq .L530 - mov3q.l #1,%d0 - or.l %d0,mine - move.b 269161676,%d0 - mov3q.l #1,-(%sp) - mov3q.l #1,-(%sp) - mvz.b %d0,%d0 + jeq .L891 + clr.b %d3 + move.l 64(%sp),%a0 + move.l #268525902,%d0 + move.l 64(%sp),%a1 + sub.l 36(%sp),%d0 + move.b %d3,62(%a0,%d1.l) + move.b %d3,61(%a0,%d1.l) + move.b %d3,60(%a0,%d1.l) + lea 60(%a1,%d1.l),%a0 + lea 66(%a1,%d1.l),%a1 + move.l %a1,%d1 + move.l #268526334,%a1 + sub.l 36(%sp),%a1 + jra .L898 +.L915: + mvz.b (%a1),%d3 + move.l %d3,32(%sp) + jra .L887 +.L916: + move.l 68(%sp),%a1 + moveq #50,%d2 + pea 1(%a1) + pea vector_defaults + move.l %sp,%d0 + add.l #59,%d0 move.l %d0,-(%sp) - jsr generate_track + move.l %d0,40(%sp) + move.l %d1,32(%sp) + move.l 76(%sp),%a2 + move.l %a0,36(%sp) + lea 60(%a2,%d1.l),%a2 + move.l %a2,52(%sp) + jsr vector_pack + move.b #83,(%a2) + move.l 76(%sp),%a1 + move.l 32(%sp),%d1 + move.l %d1,%a2 + lea (63,%a2),%a2 + move.b %d2,61(%a1,%d1.l) + moveq #2,%d2 + move.b %d2,62(%a1,%d1.l) + move.l %d1,%a1 + lea (489,%a1),%a1 + move.l 40(%sp),%d0 lea (12,%sp),%sp + move.l %a1,40(%sp) + move.l 24(%sp),%a0 + move.l %a2,44(%sp) +.L895: + move.l 40(%sp),%a1 + mov3q.l #2,%d2 + add.l %a0,%a1 + cmp.l %a0,%d2 + jcc .L917 + move.l %d0,%a3 + addq.l #1,%a0 + move.l 64(%sp),%a2 + moveq #9,%d2 + move.b (%a3),(%a2,%a1.l) + cmp.l %a0,%d2 + jeq .L891 + addq.l #1,%d0 + jra .L895 +.L917: + move.l 64(%sp),%a2 + move.l %d0,%a3 + move.l 44(%sp),%a1 + add.l %a0,%a1 + addq.l #1,%a0 + move.b (%a3)+,(%a2,%a1.l) + move.l %a3,%d0 + jra .L895 + .size st_assign, .-st_assign + .align 2 + .globl st_pool_choice_draw + .type st_pool_choice_draw, @function +st_pool_choice_draw: + subq.l #8,%sp + move.l 1175346736,%d0 + move.l %a3,-(%sp) + move.l %a2,-(%sp) tst.l %d0 - jeq .L533 - pea 32.w - move.l #.LC3,%d0 - move.l %d0,-(%sp) - jsr 1074111160 - mov3q.l #-1,-(%sp) - jsr 1074059592 - mov3q.l #1,1187497772 - lea (12,%sp),%sp -.L543: - move.l (%sp)+,%d2 + jeq .L918 + lea pool_labels,%a3 + cmp.l 1175346732.l,%a3 + jeq .L929 + clr.l %d0 +.L918: move.l (%sp)+,%a2 - lea (20,%sp),%sp + move.l (%sp)+,%a3 + addq.l #8,%sp rts -.L530: +.L929: + move.l %d0,%a0 + lea (36,%a0),%a0 + move.l %a0,12(%sp) + move.l %a0,-(%sp) + move.l %d0,12(%sp) + jsr 1073960572 + move.l 12(%sp),%a1 + addq.l #4,%sp clr.l %d0 - jra .L529 -.L542: - tst.b 1187502296.l - jne .L530 - tst.l edit_view - seq %d0 - mov3q.l #2,%d1 - or.l %d1,mine + move.l 40(%a1),%a2 + move.l (%a3)+,-(%sp) mov3q.l #-1,-(%sp) - mvs.b %d0,%d0 - neg.l %d0 - move.l %d0,edit_view - jsr 1074059592 - addq.l #4,%sp - move.l (%sp)+,%d2 - mov3q.l #1,1187497772 + lea (-23,%a2),%a2 + move.l %a2,-(%sp) + mov3q.l #5,-(%sp) + move.l 28(%sp),-(%sp) + move.l #1074505846,-(%sp) + move.l %d0,32(%sp) + jsr 1073818584 + lea (24,%sp),%sp + move.l 8(%sp),%d0 + cmp.l 1175346752.l,%d0 + jeq .L930 +.L920: + subq.l #7,%a2 + mov3q.l #1,%d1 + cmp.l %d0,%d1 + jne .L923 +.L931: move.l (%sp)+,%a2 - lea (20,%sp),%sp + mov3q.l #1,1187497772 + move.l (%sp)+,%a3 + addq.l #8,%sp rts -.L533: - pea 32.w - move.l #.LC4,%d0 - move.l %d0,-(%sp) - jsr 1074111160 +.L930: + move.l 12(%sp),%a1 + move.l (%a1),%a0 mov3q.l #-1,-(%sp) - jsr 1074059592 - mov3q.l #1,1187497772 + pea 5(%a2) + pea -5(%a0) + pea -1(%a2) + mov3q.l #3,-(%sp) + move.l %a1,-(%sp) + move.l %d0,32(%sp) + jsr 1073816148 + lea (24,%sp),%sp + subq.l #7,%a2 + mov3q.l #1,%d1 + move.l 8(%sp),%d0 + cmp.l %d0,%d1 + jeq .L931 +.L923: + move.l (%a3)+,-(%sp) + mov3q.l #-1,-(%sp) + move.l %a2,-(%sp) + mov3q.l #5,-(%sp) + mov3q.l #1,%d0 + move.l 28(%sp),-(%sp) + move.l #1074505846,-(%sp) + move.l %d0,32(%sp) + jsr 1073818584 + lea (24,%sp),%sp + move.l 8(%sp),%d0 + cmp.l 1175346752.l,%d0 + jne .L920 + jra .L930 + .size st_pool_choice_draw, .-st_pool_choice_draw + .section .rodata.str1.1 +.LC7: + .string "\253 MACHINE:VECTOR \273" + .text + .align 2 + .globl st_pool_choice_open + .type st_pool_choice_open, @function +st_pool_choice_open: + jsr st_selected + tst.l %d0 + jeq .L932 + tst.l 1175346736 + jne .L932 + tst.l 1175351520 + jne .L932 + move.l #1187521622,%a0 + mov3q.l #3,%d1 + move.l (%a0),pool_bank + move.b 269161679,%d0 + and.l %d0,%d1 + move.l %d1,pool_part + mvz.b 269161676,%d0 + mov3q.l #2,-(%sp) + mov3q.l #6,-(%sp) + move.l #1175346744,-(%sp) + move.l %d0,pool_track + clr.l pool_direct + clr.l pool_pending + jsr 1074261088 lea (12,%sp),%sp - jra .L543 - .size st_key, .-st_key + move.l 1187521622,%a0 + mov3q.l #3,%d1 + move.b 269161679,%d0 + move.l pool_track,%a1 + add.l #585088,%a0 + and.l %d1,%d0 + mvz.w #6322,%d1 + muls.l %d1,%d0 + add.l %d0,%a0 + mvz.b 34(%a0,%a1.l),%d0 + move.l %d0,-(%sp) + move.l #1175346744,-(%sp) + jsr 1074261424 + lea (handlers.7),%a0 + move.l %a0,1175346728 + move.l #pool_labels,%d0 + move.l %d0,1175346732 + clr.l 1175346740 + move.l #1074190164,-(%sp) + mov3q.l #1,-(%sp) + clr.l -(%sp) + mov3q.l #-1,-(%sp) + pea 64.w + pea 110.w + jsr 1074102940 + lea (32,%sp),%sp + move.l %d0,1175346736 + tst.l %d0 + jeq .L932 + clr.l -(%sp) + pea .LC7 + move.l %d0,-(%sp) + jsr 1074098360 + move.l #1074585796,-(%sp) + jsr 1073943700 + lea (16,%sp),%sp + jra st_pool_choice_draw +.L932: + rts + .size st_pool_choice_open, .-st_pool_choice_open .align 2 - .type pool_flex, @function -pool_flex: - move.l pool_bank,%d0 - cmp.l 1187521622.l,%d0 - jeq .L551 -.L544: + .globl st_pool_choice_left + .type st_pool_choice_left, @function +st_pool_choice_left: + tst.l 1175346736 + jeq .L942 + move.l #pool_labels,%d0 + cmp.l 1175346732.l,%d0 + jeq .L949 +.L942: + rts +.L949: + jsr 1074190164 + clr.l pool_direct + jsr st_stock_pool_open + jmp 1074235708 + .size st_pool_choice_left, .-st_pool_choice_left + .align 2 + .globl st_pool_choice_right + .type st_pool_choice_right, @function +st_pool_choice_right: + subq.l #4,%sp + tst.l 1175346736 + jeq .L950 + move.l #pool_labels,%d0 + cmp.l 1175346732.l,%d0 + jeq .L963 +.L950: + addq.l #4,%sp rts -.L551: - move.b 269161679,%d0 - mov3q.l #3,%d1 - and.l %d1,%d0 - cmp.l pool_part.l,%d0 - jne .L544 - mvz.b 269161676,%d0 - cmp.l pool_track.l,%d0 - jne .L544 - jsr st_selected +.L963: + jsr pool_context tst.l %d0 - jeq .L544 - mov3q.l #1,pool_browse + jeq .L950 + move.l 1175346752,%d1 + mov3q.l #1,%d0 + cmp.l %d1,%d0 + jcs .L950 + move.l %d1,(%sp) + jsr 1074190164 + jsr pool_context + tst.l %d0 + jeq .L950 + move.l (%sp),pool_browse mov3q.l #1,pool_direct jsr st_stock_pool_open mov3q.l #-1,-(%sp) jsr 1074059592 mov3q.l #1,1187497772 addq.l #4,%sp + addq.l #4,%sp rts - .size pool_flex, .-pool_flex + .size st_pool_choice_right, .-st_pool_choice_right .align 2 - .type pool_static, @function -pool_static: - move.l pool_bank,%d0 - cmp.l 1187521622.l,%d0 - jeq .L559 -.L552: + .globl st_pool_left + .type st_pool_left, @function +st_pool_left: + lea (-12,%sp),%sp + move.l 16(%sp),%d1 + move.l 20(%sp),%a0 + tst.l 1175351520 + jeq .L964 + tst.l pool_direct + jne .L981 +.L966: + move.l %a0,20(%sp) + move.l %d1,16(%sp) + lea (12,%sp),%sp + jmp 1074235708 +.L981: + move.l %d1,4(%sp) + move.l %a0,(%sp) + jsr pool_context + move.l 4(%sp),%d1 + move.l (%sp),%a0 + tst.l %d0 + jeq .L966 + tst.l 1175351520 + jeq .L966 + move.l pool_browse,%d0 + move.l %d0,8(%sp) + jsr 1074235876 + clr.l pool_direct + jsr st_pool_choice_open + tst.l 1175346736 + jeq .L964 + move.l #pool_labels,%d0 + cmp.l 1175346732.l,%d0 + jne .L964 + move.l 8(%sp),-(%sp) + move.l #1175346744,-(%sp) + jsr 1074261424 + lea (20,%sp),%sp + jra st_pool_choice_draw +.L964: + lea (12,%sp),%sp rts -.L559: - move.b 269161679,%d0 - mov3q.l #3,%d1 - and.l %d1,%d0 - cmp.l pool_part.l,%d0 - jne .L552 - mvz.b 269161676,%d0 - cmp.l pool_track.l,%d0 - jne .L552 + .size st_pool_left, .-st_pool_left + .align 2 + .globl st_pool_right + .type st_pool_right, @function +st_pool_right: + subq.l #8,%sp + move.l 12(%sp),%d1 + move.l 16(%sp),%a0 + tst.l 1175351520 + jeq .L983 + tst.l 1175352218 + jne .L983 + mov3q.l #5,%d0 + cmp.l 1175352206.l,%d0 + jeq .L992 +.L983: + move.l %a0,16(%sp) + move.l %d1,12(%sp) + addq.l #8,%sp + jmp 1074237596 +.L992: + move.l %d1,4(%sp) + move.l %a0,(%sp) jsr st_selected + move.l 4(%sp),%d1 + move.l (%sp),%a0 tst.l %d0 - jeq .L552 - clr.l pool_browse - mov3q.l #1,pool_direct - jsr st_stock_pool_open - mov3q.l #-1,-(%sp) - jsr 1074059592 - mov3q.l #1,1187497772 + jeq .L983 + jsr 1074235876 + addq.l #8,%sp + jra st_pool_choice_open + .size st_pool_right, .-st_pool_right + .align 2 + .globl st_draw_page + .type st_draw_page, @function +st_draw_page: + subq.l #4,%sp + jsr 1073946408 + move.l %d0,(%sp) + jsr st_selected + tst.l %d0 + jeq .L993 + tst.l edit_view + jne .L993 + tst.b 1187502296.l + jne .L993 + tst.l 1175263034 + jne .L993 + tst.l 1175262868 + jne .L993 + move.l (%sp),-(%sp) + jsr generator_page + move.l %d0,4(%sp) + addq.l #4,%sp +.L993: + move.l (%sp),%d0 addq.l #4,%sp rts - .size pool_static, .-pool_static + .size st_draw_page, .-st_draw_page .align 2 - .globl st_type - .type st_type, @function -st_type: + .globl st_setup_page + .type st_setup_page, @function +st_setup_page: + subq.l #4,%sp + move.l %d2,-(%sp) move.l 1187521622,%d0 add.l #-1073741824,%d0 - move.l %d2,-(%sp) + move.l 12(%sp),%d1 cmp.l #133169151,%d0 - jhi .L562 + jhi .L1001 + tst.b -2147483627.l + jeq .L1008 +.L1001: + move.l (%sp)+,%d2 + move.l %d1,%d0 + addq.l #4,%sp + rts +.L1008: + move.b 269161676,%d0 + move.l 1187521622,%a0 + add.l #585088,%a0 + mvz.b %d0,%d2 + move.b 269161679,%d0 + move.l %d2,%a1 + mov3q.l #3,%d2 + move.l %a1,-(%sp) + and.l %d2,%d0 + mvz.w #6322,%d2 + muls.l %d2,%d0 + pea (%a0,%d0.l) + move.l %d1,12(%sp) + jsr vector_signed_track + addq.l #8,%sp + move.l 4(%sp),%d1 + tst.l %d0 + jeq .L1001 + tst.l edit_view + jne .L1001 + mov3q.l #5,%d0 + cmp.l 1175280688.l,%d0 + jne .L1001 + move.l %d1,12(%sp) + move.l (%sp)+,%d2 + addq.l #4,%sp + jra generator_page + .size st_setup_page, .-st_setup_page + .align 2 + .globl st_knob + .type st_knob, @function +st_knob: + lea (-12,%sp),%sp + mov3q.l #5,%d0 + move.l %d2,-(%sp) + move.l 20(%sp),%d1 + move.l 24(%sp),%a0 + cmp.l %d1,%d0 + jcc .L1016 +.L1009: + move.l (%sp)+,%d2 + lea (12,%sp),%sp + rts +.L1016: move.l 1187521622,%d0 + add.l #-1073741824,%d0 + cmp.l #133169151,%d0 + jhi .L1009 + tst.b -2147483627.l + jne .L1009 + move.b 269161676,%d2 + move.l 1187521622,%a1 + add.l #585088,%a1 + move.b 269161679,%d0 + mvz.b %d2,%d2 + move.l %d2,12(%sp) mov3q.l #3,%d2 - move.b 269161679,%d1 - add.l #585088,%d0 - move.l 12(%sp),%a0 - lea (-34,%a0),%a0 - and.l %d2,%d1 + and.l %d2,%d0 mvz.w #6322,%d2 - muls.l %d2,%d1 - mov3q.l #7,%d2 - add.l %d1,%d0 - move.l %a0,%d1 - sub.l %d0,%d1 - cmp.l %d1,%d2 - jcc .L569 -.L562: - move.l 8(%sp),%d0 + move.l 12(%sp),-(%sp) + muls.l %d2,%d0 + pea (%a1,%d0.l) + move.l %d1,16(%sp) + move.l %a0,12(%sp) + jsr vector_signed_track + addq.l #8,%sp + move.l 8(%sp),%d1 + tst.l %d0 + jeq .L1009 + tst.l edit_view + jne .L1009 + tst.b 1187502296.l + jne .L1009 + tst.l 1175263034 + jne .L1009 + tst.l 1175262868 + jne .L1009 + tst.l st_layer + jne .L1009 + move.l 4(%sp),24(%sp) + move.l %d1,20(%sp) + move.l (%sp)+,%d2 + lea (12,%sp),%sp + jra change_control + .size st_knob, .-st_knob + .align 2 + .globl st_setup_knob + .type st_setup_knob, @function +st_setup_knob: + move.l %d2,-(%sp) + mov3q.l #5,%d0 + cmp.l 8(%sp),%d0 + jcc .L1018 +.L1020: move.l (%sp)+,%d2 + clr.l %d0 rts -.L569: - mov3q.l #1,%d2 - cmp.l 8(%sp),%d2 - jcs .L562 +.L1018: + move.l 1187521622,%d0 + add.l #-1073741824,%d0 + cmp.l #133169151,%d0 + jhi .L1020 + tst.b -2147483627.l + jne .L1020 + move.b 269161676,%d1 + move.l 1187521622,%a0 + mov3q.l #3,%d2 + move.b 269161679,%d0 + add.l #585088,%a0 + mvz.b %d1,%d1 + and.l %d2,%d0 move.l %d1,-(%sp) - move.l %d0,-(%sp) + mvz.w #6322,%d1 + muls.l %d1,%d0 + pea (%a0,%d0.l) jsr vector_signed_track addq.l #8,%sp tst.l %d0 - jeq .L562 - mov3q.l #5,8(%sp) - move.l 8(%sp),%d0 - move.l (%sp)+,%d2 + jeq .L1020 + tst.l edit_view + jne .L1020 + move.l 12(%sp),-(%sp) + move.l 12(%sp),%a0 + pea 6(%a0) + jsr change_control + addq.l #8,%sp + move.l (%sp)+,%d2 + mov3q.l #1,%d0 + rts + .size st_setup_knob, .-st_setup_knob + .align 2 + .globl mg_page + .type mg_page, @function +mg_page: + link.w %fp,#-16 + move.l #mg_page_layer,%d1 + move.l 1074061804,%d0 + cmp.l mg_active.l,%d1 + jeq .L1027 +.L1029: + move.l 8(%fp),%d0 + unlk %fp + rts +.L1027: + cmp.l #mg_page_site,%d0 + seq %d0 + mvs.b %d0,%d0 + neg.l %d0 + move.l %d0,-(%sp) + pea -16(%fp) + jsr (mg_view.constprop.0) + addq.l #8,%sp + tst.l %d0 + jeq .L1029 + move.l %d0,%a1 + move.l 16(%a1),%a0 + tst.l %a0 + jeq .L1029 + move.l mg_second,-(%sp) + move.l 8(%fp),-(%sp) + jsr (%a0) + addq.l #8,%sp + unlk %fp rts - .size st_type, .-st_type + .size mg_page, .-mg_page .align 2 - .globl st_chooser_type - .type st_chooser_type, @function -st_chooser_type: - move.l %d3,-(%sp) + .globl mg_arp_setup + .type mg_arp_setup, @function +mg_arp_setup: + move.l 1074061804,%a1 + move.l -2147483630,%d0 move.l %d2,-(%sp) - tst.l pool_direct - jeq .L574 - jsr pool_context tst.l %d0 - jne .L584 -.L574: + jeq .L1038 move.l 1187521622,%d0 add.l #-1073741824,%d0 cmp.l #133169151,%d0 - jhi .L577 - move.l 1187521622,%d1 - mov3q.l #3,%d3 - move.b 269161679,%d0 - add.l #585088,%d1 - move.w %d0,%a0 - move.l 16(%sp),%d0 - add.l #-34,%d0 - move.l %a0,%d2 - and.l %d3,%d2 - mvz.w #6322,%d3 - muls.l %d3,%d2 - add.l %d2,%d1 - sub.l %d1,%d0 - mov3q.l #7,%d2 - cmp.l %d0,%d2 - jcc .L585 -.L577: - move.l 12(%sp),%d0 - move.l (%sp)+,%d2 - move.l (%sp)+,%d3 - rts -.L585: - mov3q.l #1,%d3 - cmp.l 12(%sp),%d3 - jcs .L577 - move.l %d0,-(%sp) - move.l %d1,-(%sp) - jsr vector_signed_track - addq.l #8,%sp - tst.l %d0 - jeq .L577 - move.l (%sp)+,%d2 - mov3q.l #5,%d0 - move.l (%sp)+,%d3 - rts -.L584: - move.l 1187521622,%d0 + jhi .L1040 + move.l #269161676,%a0 + mov3q.l #7,%d1 + mvz.b (%a0),%d0 + cmp.l %d0,%d1 + jcs .L1040 + move.b (%a0),%d0 + move.l 1187521622,%a0 mov3q.l #3,%d2 move.b 269161679,%d1 - mvz.w #6322,%d3 - move.l pool_track,%a0 - add.l #585088,%d0 - lea (34,%a0),%a0 + add.l #585088,%a0 + mvz.b %d0,%d0 and.l %d2,%d1 - muls.l %d3,%d1 - add.l %d1,%d0 - add.l %a0,%d0 - cmp.l 16(%sp),%d0 - jne .L574 + mvz.w #6322,%d2 + add.l #3089,%d0 + muls.l %d2,%d1 + moveq #77,%d2 + add.l %d1,%a0 + lea (%a0,%d0.l*2),%a0 + move.b 1(%a0),%d0 + mvz.b (%a0),%d1 + cmp.l %d1,%d2 + jne .L1040 + cmp.l #mg_page_site,%a1 + jne .L1040 + mvz.b %d0,%d0 + moveq #86,%d1 + cmp.l %d0,%d1 + jeq .L1042 + move.b (%a0),%d0 +.L1040: + clr.l %d0 +.L1038: move.l (%sp)+,%d2 - move.l pool_browse,%d0 - move.l (%sp)+,%d3 rts - .size st_chooser_type, .-st_chooser_type - .align 2 - .globl st_assign - .type st_assign, @function -st_assign: - lea (-60,%sp),%sp - move.l 1187521622,%d0 - add.l #-1073741824,%d0 - movem.l #19468,(%sp) - cmp.l #133169151,%d0 - jhi .L587 - mov3q.l #7,%d0 - cmp.l 68(%sp),%d0 - jcs .L587 - move.l 1187521622,%d1 - move.l 64(%sp),%a0 - sub.l %d1,%a0 - move.l %a0,%a6 - add.l #-585088,%a6 - move.l %d1,36(%sp) - mvz.w #6322,%d1 - move.l %a6,%d0 - remu.l %d1,%d2:%d0 - move.l %d2,%a0 - tst.l %d2 - jne .L587 - cmp.l #25287,%a6 - jhi .L587 - move.l 68(%sp),%d1 +.L1042: mov3q.l #1,%d2 - move.l 64(%sp),%a2 - lea 34(%a2,%d1.l),%a1 - mvz.b (%a1),%d1 - cmp.l %d1,%d2 - jcc .L616 - mov3q.l #1,32(%sp) -.L588: - move.l 68(%sp),%d1 - moveq #30,%d0 - muls.l %d0,%d1 - tst.l 72(%sp) - jne .L589 - tst.l pool_direct - jeq .L590 - move.l %d1,20(%sp) - move.l %a0,24(%sp) - jsr pool_context - move.l 20(%sp),%d1 - move.l 24(%sp),%a0 - tst.l %d0 - jeq .L590 - move.l 1187521622,%d0 - add.l #585088,%d0 - move.b 269161679,%d2 - move.w %d2,%a1 - mov3q.l #3,%d2 - move.l %a1,%d3 - and.l %d2,%d3 - mvz.w #6322,%d2 - muls.l %d2,%d3 - add.l %d3,%d0 - cmp.l 64(%sp),%d0 - jne .L590 - move.l 68(%sp),%d3 - cmp.l pool_track.l,%d3 - jne .L590 - mov3q.l #2,72(%sp) -.L589: - move.l 68(%sp),-(%sp) - move.l 68(%sp),-(%sp) - move.l %d1,28(%sp) - move.l %a0,32(%sp) - jsr vector_signed_track - addq.l #8,%sp - move.l 20(%sp),%d1 - move.l 24(%sp),%a0 - tst.l %d0 - jeq .L617 -.L592: - move.l 64(%sp),%a1 - move.l #268525902,%d0 - sub.l 36(%sp),%d0 - lea 60(%a1,%d1.l),%a0 - lea 66(%a1,%d1.l),%a1 - move.l %a1,%d1 - move.l #268526334,%a1 - sub.l 36(%sp),%a1 -.L599: - move.b (%a0),(%a0,%d0.l) - lea (432,%a0),%a2 - move.b (%a2),(%a1,%a0.l) - addq.l #1,%a0 - cmp.l %a0,%d1 - jne .L599 + eor.l %d2,mg_second + mov3q.l #-1,-(%sp) + jsr 1074059592 + addq.l #4,%sp + move.l (%sp)+,%d2 + mov3q.l #1,1187497772 mov3q.l #1,%d0 - cmp.l 72(%sp),%d0 - jne .L586 - mvz.w #6322,%d1 - move.l %a6,%d0 - move.l #1187521622,%a0 - move.l (%a0),pool_bank - mov3q.l #1,pool_pending - divu.l %d1,%d0 - move.l 68(%sp),%d1 - move.l %d1,pool_track - move.l %d0,pool_part -.L586: - movem.l (%sp),#19468 - move.l 32(%sp),%d0 - lea (60,%sp),%sp rts -.L587: - movem.l (%sp),#19468 - mov3q.l #1,32(%sp) - move.l 32(%sp),%d0 - lea (60,%sp),%sp + .size mg_arp_setup, .-mg_arp_setup + .align 2 + .globl mg_track_tap + .type mg_track_tap, @function +mg_track_tap: + mov3q.l #7,%d0 + cmp.l 4(%sp),%d0 + jcs .L1049 + move.l #mg_page_site,%d0 + cmp.l 1074061804.l,%d0 + jeq .L1053 +.L1049: rts -.L590: - move.l 68(%sp),-(%sp) - move.l 68(%sp),-(%sp) - move.l %d1,28(%sp) - jsr vector_signed_track - addq.l #8,%sp - move.l 20(%sp),%d1 - tst.l %d0 - jeq .L592 - clr.b %d3 - move.l 64(%sp),%a0 - move.l #268525902,%d0 - move.l 64(%sp),%a1 - sub.l 36(%sp),%d0 - move.b %d3,62(%a0,%d1.l) - move.b %d3,61(%a0,%d1.l) - move.b %d3,60(%a0,%d1.l) - lea 60(%a1,%d1.l),%a0 - lea 66(%a1,%d1.l),%a1 - move.l %a1,%d1 - move.l #268526334,%a1 - sub.l 36(%sp),%a1 - jra .L599 -.L616: - mvz.b (%a1),%d3 - move.l %d3,32(%sp) - jra .L588 -.L617: - move.l 68(%sp),%a1 - moveq #50,%d2 - pea 1(%a1) - pea vector_defaults - move.l %sp,%d0 - add.l #59,%d0 - move.l %d0,-(%sp) - move.l %d0,40(%sp) - move.l %d1,32(%sp) - move.l 76(%sp),%a2 - move.l %a0,36(%sp) - lea 60(%a2,%d1.l),%a2 - move.l %a2,52(%sp) - jsr vector_pack - move.b #83,(%a2) - move.l 76(%sp),%a1 - move.l 32(%sp),%d1 - move.l %d1,%a2 - lea (63,%a2),%a2 - move.b %d2,61(%a1,%d1.l) - moveq #2,%d2 - move.b %d2,62(%a1,%d1.l) - move.l %d1,%a1 - lea (489,%a1),%a1 - move.l 40(%sp),%d0 - lea (12,%sp),%sp - move.l %a1,40(%sp) - move.l 24(%sp),%a0 - move.l %a2,44(%sp) -.L596: - move.l 40(%sp),%a1 - mov3q.l #2,%d2 - add.l %a0,%a1 - cmp.l %a0,%d2 - jcc .L618 - move.l %d0,%a3 - addq.l #1,%a0 - move.l 64(%sp),%a2 - moveq #9,%d2 - move.b (%a3),(%a2,%a1.l) - cmp.l %a0,%d2 - jeq .L592 - addq.l #1,%d0 - jra .L596 -.L618: - move.l 64(%sp),%a2 - move.l %d0,%a3 - move.l 44(%sp),%a1 - add.l %a0,%a1 - addq.l #1,%a0 - move.b (%a3)+,(%a2,%a1.l) - move.l %a3,%d0 - jra .L596 - .size st_assign, .-st_assign +.L1053: + tst.l 1074513600 + jne .L1049 + clr.l 4(%sp) + jmp 1073947176 + .size mg_track_tap, .-mg_track_tap + .section .rodata.str1.1 +.LC8: + .string "VECTOR" + .text .align 2 - .globl st_pool_choice_draw - .type st_pool_choice_draw, @function -st_pool_choice_draw: - subq.l #8,%sp - move.l 1175346736,%d0 - move.l %a3,-(%sp) + .globl mg_note_setup_draw + .type mg_note_setup_draw, @function +mg_note_setup_draw: + lea (-12,%sp),%sp move.l %a2,-(%sp) - tst.l %d0 - jeq .L619 - lea pool_labels,%a3 - cmp.l 1175346732.l,%a3 - jeq .L630 - clr.l %d0 -.L619: + jsr mg_stock_note_draw + move.l 1074061804,%d0 + move.l 1074513600,%a0 + cmp.l #mg_page_site,%d0 + jne .L1054 + tst.l %a0 + jne .L1071 +.L1054: move.l (%sp)+,%a2 - move.l (%sp)+,%a3 - addq.l #8,%sp + lea (12,%sp),%sp rts -.L630: - move.l %d0,%a0 +.L1071: + tst.l -2147483630 + jeq .L1054 + move.l 1187521622,%d0 + add.l #-1073741824,%d0 + cmp.l #133169151,%d0 + jhi .L1054 + mvz.b 269161676,%d0 + mov3q.l #7,%d1 + cmp.l %d0,%d1 + jcs .L1054 + move.l 40(%a0),%a1 lea (36,%a0),%a0 + move.l %a1,12(%sp) + clr.l -(%sp) move.l %a0,12(%sp) + pea -10(%a1) + pea 50.w + mov3q.l #2,-(%sp) + mov3q.l #3,-(%sp) move.l %a0,-(%sp) - move.l %d0,12(%sp) - jsr 1073960572 - move.l 12(%sp),%a1 - addq.l #4,%sp - clr.l %d0 - move.l 40(%a1),%a2 - move.l (%a3)+,-(%sp) + jsr 1073816148 + pea .LC3 mov3q.l #-1,-(%sp) - lea (-23,%a2),%a2 + move.l 44(%sp),%a2 + lea (-20,%a2),%a2 move.l %a2,-(%sp) mov3q.l #5,-(%sp) - move.l 28(%sp),-(%sp) + move.l 48(%sp),-(%sp) + move.l #1074505846,-(%sp) + jsr 1073818584 + lea (48,%sp),%sp + move.l mg_cursor,%d0 + tst.l %d0 + jeq .L1058 + move.l 12(%sp),%a2 + lea (-28,%a2),%a2 +.L1059: + pea .LC8 + mov3q.l #-1,-(%sp) + move.l %a2,-(%sp) + mov3q.l #5,-(%sp) + move.l 24(%sp),-(%sp) move.l #1074505846,-(%sp) - move.l %d0,32(%sp) jsr 1073818584 lea (24,%sp),%sp - move.l 8(%sp),%d0 - cmp.l 1175346752.l,%d0 - jeq .L631 -.L621: - subq.l #7,%a2 + move.l mg_cursor,%d0 mov3q.l #1,%d1 cmp.l %d0,%d1 - jne .L624 -.L632: - move.l (%sp)+,%a2 - mov3q.l #1,1187497772 - move.l (%sp)+,%a3 - addq.l #8,%sp - rts -.L631: - move.l 12(%sp),%a1 - move.l (%a1),%a0 + jne .L1057 +.L1058: mov3q.l #-1,-(%sp) - pea 5(%a2) - pea -5(%a0) + pea 6(%a2) + pea 50.w pea -1(%a2) mov3q.l #3,-(%sp) - move.l %a1,-(%sp) - move.l %d0,32(%sp) - jsr 1073816148 - lea (24,%sp),%sp - subq.l #7,%a2 - mov3q.l #1,%d1 - move.l 8(%sp),%d0 - cmp.l %d0,%d1 - jeq .L632 -.L624: - move.l (%a3)+,-(%sp) - mov3q.l #-1,-(%sp) - move.l %a2,-(%sp) - mov3q.l #5,-(%sp) - mov3q.l #1,%d0 + subq.l #8,%a2 move.l 28(%sp),-(%sp) - move.l #1074505846,-(%sp) - move.l %d0,32(%sp) - jsr 1073818584 + move.l %d0,28(%sp) + jsr 1073816148 lea (24,%sp),%sp - move.l 8(%sp),%d0 - cmp.l 1175346752.l,%d0 - jne .L621 - jra .L631 - .size st_pool_choice_draw, .-st_pool_choice_draw - .section .rodata.str1.1 -.LC5: - .string "\253 MACHINE:VECTOR \273" - .text - .align 2 - .globl st_pool_choice_open - .type st_pool_choice_open, @function -st_pool_choice_open: - jsr st_selected - tst.l %d0 - jeq .L633 - tst.l 1175346736 - jne .L633 - tst.l 1175351520 - jne .L633 - move.l #1187521622,%a0 - mov3q.l #3,%d1 - move.l (%a0),pool_bank - move.b 269161679,%d0 - and.l %d0,%d1 - move.l %d1,pool_part - mvz.b 269161676,%d0 - mov3q.l #2,-(%sp) - mov3q.l #6,-(%sp) - move.l #1175346744,-(%sp) - move.l %d0,pool_track - clr.l pool_direct - clr.l pool_pending - jsr 1074261088 + tst.l 4(%sp) + jeq .L1059 +.L1057: + move.l (%sp)+,%a2 + mov3q.l #1,1187497772 lea (12,%sp),%sp - move.l 1187521622,%a0 - mov3q.l #3,%d1 - move.b 269161679,%d0 - move.l pool_track,%a1 - add.l #585088,%a0 - and.l %d1,%d0 - mvz.w #6322,%d1 - muls.l %d1,%d0 - add.l %d0,%a0 - mvz.b 34(%a0,%a1.l),%d0 - move.l %d0,-(%sp) - move.l #1175346744,-(%sp) - jsr 1074261424 - lea (handlers.3),%a0 - move.l %a0,1175346728 - move.l #pool_labels,%d0 - move.l %d0,1175346732 - clr.l 1175346740 - move.l #1074190164,-(%sp) - mov3q.l #1,-(%sp) - clr.l -(%sp) - mov3q.l #-1,-(%sp) - pea 64.w - pea 110.w - jsr 1074102940 - lea (32,%sp),%sp - move.l %d0,1175346736 - tst.l %d0 - jeq .L633 - clr.l -(%sp) - pea .LC5 - move.l %d0,-(%sp) - jsr 1074098360 - move.l #1074585796,-(%sp) - jsr 1073943700 - lea (16,%sp),%sp - jra st_pool_choice_draw -.L633: rts - .size st_pool_choice_open, .-st_pool_choice_open + .size mg_note_setup_draw, .-mg_note_setup_draw .align 2 - .globl st_pool_choice_left - .type st_pool_choice_left, @function -st_pool_choice_left: - tst.l 1175346736 - jeq .L643 - move.l #pool_labels,%d0 - cmp.l 1175346732.l,%d0 - jeq .L650 -.L643: + .globl mg_key + .type mg_key, @function +mg_key: + link.w %fp,#-80 + moveq #51,%d0 + movem.l #1036,(%sp) + move.l 12(%fp),%a1 + cmp.l 8(%fp),%d0 + jeq .L1102 + moveq #32,%d1 + cmp.l 8(%fp),%d1 + jeq .L1103 + moveq #49,%d2 + cmp.l 8(%fp),%d2 + jeq .L1104 + moveq #50,%d3 + cmp.l 8(%fp),%d3 + jeq .L1105 + move.l 1074061804,%d1 + mov3q.l #1,%d0 + lea vector_midi,%a0 + move.l %a0,-16(%fp) + cmp.l %a1,%d0 + jne .L1074 + cmp.l #mg_page_site,%d1 + seq %d0 + move.l mg_active,%a0 + moveq #16,%d2 + move.l %d2,-58(%fp) + mvs.b %d0,%d0 + neg.l %d0 + cmp.l #mg_list_layer,%a0 + jeq .L1150 +.L1079: + cmp.l #mg_page_layer,%a0 + jeq .L1151 +.L1074: + move.l %a1,-(%sp) + move.l 8(%fp),-(%sp) + jsr mg_forward + addq.l #8,%sp +.L1072: + movem.l -80(%fp),#1036 + unlk %fp rts -.L650: - jsr 1074190164 - clr.l pool_direct - jsr st_stock_pool_open - jmp 1074235708 - .size st_pool_choice_left, .-st_pool_choice_left - .align 2 - .globl st_pool_choice_right - .type st_pool_choice_right, @function -st_pool_choice_right: - subq.l #4,%sp - tst.l 1175346736 - jeq .L651 - move.l #pool_labels,%d0 - cmp.l 1175346732.l,%d0 - jeq .L664 -.L651: - addq.l #4,%sp +.L1150: + cmp.l #mg_page_site,%d1 + jne .L1079 + tst.l -2147483630 + jeq .L1079 + move.l 1187521622,%d1 + add.l #-1073741824,%d1 + cmp.l #133169151,%d1 + jhi .L1079 + mvz.b 269161676,%d1 + mov3q.l #7,%d3 + cmp.l %d1,%d3 + jcs .L1079 + moveq #49,%d1 + cmp.l 8(%fp),%d1 + jeq .L1152 + moveq #51,%d1 + cmp.l 8(%fp),%d1 + jeq .L1096 + moveq #32,%d2 + cmp.l 8(%fp),%d2 + jne .L1079 + move.l -58(%fp),%d3 + or.l %d3,mg_mine + cmp.l mg_cursor.l,%d0 + jls .L1088 + mov3q.l #1,mg_cursor +.L1088: + jsr mg_note_setup_draw +.L1155: + movem.l -80(%fp),#1036 + unlk %fp rts -.L664: - jsr pool_context - tst.l %d0 - jeq .L651 - move.l 1175346752,%d1 - mov3q.l #1,%d0 - cmp.l %d1,%d0 - jcs .L651 - move.l %d1,(%sp) - jsr 1074190164 - jsr pool_context +.L1151: + move.l %d0,-(%sp) + pea -16(%fp) + move.l %a1,-62(%fp) + jsr (mg_view.constprop.0) + addq.l #8,%sp + move.l -62(%fp),%a1 tst.l %d0 - jeq .L651 - move.l (%sp),pool_browse - mov3q.l #1,pool_direct - jsr st_stock_pool_open + jeq .L1074 + moveq #49,%d2 + cmp.l 8(%fp),%d2 + jeq .L1153 + moveq #50,%d2 + cmp.l 8(%fp),%d2 + jne .L1074 + tst.l mg_second + jeq .L1074 + move.l -58(%fp),%d3 mov3q.l #-1,-(%sp) + clr.l mg_second + or.l %d3,mg_mine jsr 1074059592 + movem.l -80(%fp),#1036 mov3q.l #1,1187497772 addq.l #4,%sp - addq.l #4,%sp - rts - .size st_pool_choice_right, .-st_pool_choice_right - .align 2 - .globl st_pool_left - .type st_pool_left, @function -st_pool_left: - lea (-12,%sp),%sp - move.l 16(%sp),%d1 - move.l 20(%sp),%a0 - tst.l 1175351520 - jeq .L665 - tst.l pool_direct - jne .L682 -.L667: - move.l %a0,20(%sp) - move.l %d1,16(%sp) - lea (12,%sp),%sp - jmp 1074235708 -.L682: - move.l %d1,4(%sp) - move.l %a0,(%sp) - jsr pool_context - move.l 4(%sp),%d1 - move.l (%sp),%a0 - tst.l %d0 - jeq .L667 - tst.l 1175351520 - jeq .L667 - move.l pool_browse,%d0 - move.l %d0,8(%sp) - jsr 1074235876 - clr.l pool_direct - jsr st_pool_choice_open - tst.l 1175346736 - jeq .L665 - move.l #pool_labels,%d0 - cmp.l 1175346732.l,%d0 - jne .L665 - move.l 8(%sp),-(%sp) - move.l #1175346744,-(%sp) - jsr 1074261424 - lea (20,%sp),%sp - jra st_pool_choice_draw -.L665: - lea (12,%sp),%sp + unlk %fp rts - .size st_pool_left, .-st_pool_left - .align 2 - .globl st_pool_right - .type st_pool_right, @function -st_pool_right: - subq.l #8,%sp - move.l 12(%sp),%d1 - move.l 16(%sp),%a0 - tst.l 1175351520 - jeq .L684 - tst.l 1175352218 - jne .L684 - mov3q.l #5,%d0 - cmp.l 1175352206.l,%d0 - jeq .L693 -.L684: - move.l %a0,16(%sp) - move.l %d1,12(%sp) +.L1102: + mov3q.l #1,-58(%fp) +.L1073: + mov3q.l #1,%d0 + cmp.l %a1,%d0 + jeq .L1076 + move.l mg_mine,%d0 + move.l -58(%fp),%d1 + and.l %d0,%d1 + tst.l %d1 + jne .L1154 + move.l 1074061804,%d0 + move.l #vector_midi,%d1 + move.l %a1,-(%sp) + move.l 8(%fp),-(%sp) + move.l %d1,-16(%fp) + jsr mg_forward addq.l #8,%sp - jmp 1074237596 -.L693: - move.l %d1,4(%sp) - move.l %a0,(%sp) - jsr st_selected - move.l 4(%sp),%d1 - move.l (%sp),%a0 + jra .L1072 +.L1076: + move.l 1074061804,%d1 + move.l #vector_midi,%d2 + move.l mg_active,%a0 + move.l %d2,-16(%fp) + cmp.l #mg_page_site,%d1 + seq %d0 + mvs.b %d0,%d0 + neg.l %d0 + cmp.l #mg_list_layer,%a0 + jne .L1079 + jra .L1150 +.L1154: + tst.l %a1 + jne .L1072 + move.l -58(%fp),%d1 + not.l %d1 + and.l %d0,%d1 + movem.l -80(%fp),#1036 + move.l %d1,mg_mine + unlk %fp + rts +.L1103: + mov3q.l #2,-58(%fp) + jra .L1073 +.L1153: + move.l %d0,%a2 + move.l 24(%a2),%a0 + tst.l %a0 + jeq .L1074 + move.l -58(%fp),%d1 + or.l %d1,mg_mine + cmp.l #vector_midi_yes,%a0 + jne .L1099 + move.b 269161676,%d0 + mov3q.l #1,-(%sp) + mov3q.l #1,-(%sp) + mvz.b %d0,%d0 + move.l %d0,-(%sp) + jsr midi_generate + lea (12,%sp),%sp tst.l %d0 - jeq .L684 - jsr 1074235876 + jeq .L1111 + pea 32.w + move.l #.LC5,%d0 + move.l %d0,-(%sp) + jsr 1074111160 addq.l #8,%sp - jra st_pool_choice_open - .size st_pool_right, .-st_pool_right - .align 2 - .globl st_draw_page - .type st_draw_page, @function -st_draw_page: - subq.l #4,%sp - jsr 1073946408 - move.l %d0,(%sp) - jsr st_selected - tst.l %d0 - jeq .L694 - tst.l edit_view - jne .L694 - tst.b 1187502296.l - jne .L694 - tst.l 1175263034 - jne .L694 - tst.l 1175262868 - jne .L694 - move.l (%sp),-(%sp) - jsr generator_page - move.l %d0,4(%sp) - addq.l #4,%sp -.L694: - move.l (%sp),%d0 +.L1101: + mov3q.l #-1,-(%sp) + jsr 1074059592 + mov3q.l #1,1187497772 addq.l #4,%sp +.L1156: + movem.l -80(%fp),#1036 + unlk %fp rts - .size st_draw_page, .-st_draw_page - .align 2 - .globl st_setup_page - .type st_setup_page, @function -st_setup_page: - subq.l #4,%sp - move.l %d2,-(%sp) - move.l 1187521622,%d0 - add.l #-1073741824,%d0 - move.l 12(%sp),%d1 - cmp.l #133169151,%d0 - jhi .L702 - tst.b -2147483627.l - jeq .L709 -.L702: - move.l (%sp)+,%d2 - move.l %d1,%d0 +.L1104: + mov3q.l #4,-58(%fp) + jra .L1073 +.L1105: + moveq #8,%d3 + move.l %d3,-58(%fp) + jra .L1073 +.L1111: + pea 32.w + move.l #.LC6,%d0 + move.l %d0,-(%sp) + jsr 1074111160 + addq.l #8,%sp + jra .L1101 +.L1096: + move.l -58(%fp),%d1 + move.l mg_cursor,%d0 + or.l %d1,mg_mine + tst.l %d0 + jeq .L1088 + subq.l #1,%d0 + move.l %d0,mg_cursor + jsr mg_note_setup_draw + jra .L1155 +.L1099: + jsr (%a0) + mov3q.l #-1,-(%sp) + jsr 1074059592 + mov3q.l #1,1187497772 addq.l #4,%sp - rts -.L709: - move.b 269161676,%d0 + jra .L1156 +.L1152: + mov3q.l #1,-(%sp) + pea 49.w + move.l %d0,-62(%fp) + jsr mg_forward + addq.l #8,%sp + move.l mg_cursor,%d2 + mvz.b 269161676,%d1 + move.l -62(%fp),%d0 + move.l %d2,-58(%fp) + tst.l %d2 + jeq .L1106 + cmp.l %d2,%d0 + jcs .L1107 + move.l -16(%fp),%a0 + move.l %a0,-66(%fp) + tst.l %a0 + jeq .L1108 + move.l 8(%a0),%d2 + move.l %d2,-58(%fp) +.L1081: + move.l %d1,%a1 + lea (3089,%a1),%a1 + move.l %a1,%d2 + add.l %d2,%d2 move.l 1187521622,%a0 add.l #585088,%a0 - mvz.b %d0,%d2 - move.b 269161679,%d0 - move.l %d2,%a1 + move.b 269161679,%d3 + move.l %d2,-50(%fp) mov3q.l #3,%d2 - move.l %a1,-(%sp) - and.l %d2,%d0 + and.l %d2,%d3 mvz.w #6322,%d2 - muls.l %d2,%d0 - pea (%a0,%d0.l) - move.l %d1,12(%sp) - jsr vector_signed_track - addq.l #8,%sp - move.l 4(%sp),%d1 + muls.l %d2,%d3 + add.l %d3,%a0 + add.l -50(%fp),%a0 + move.b 1(%a0),%d3 + mvz.b (%a0),%d2 + move.b %d3,-54(%fp) + moveq #77,%d3 + cmp.l %d2,%d3 + jne .L1083 tst.l %d0 - jeq .L702 - tst.l edit_view - jne .L702 - mov3q.l #5,%d0 - cmp.l 1175280688.l,%d0 - jne .L702 - move.l %d1,12(%sp) - move.l (%sp)+,%d2 - addq.l #4,%sp - jra generator_page - .size st_setup_page, .-st_setup_page - .align 2 - .globl st_knob - .type st_knob, @function -st_knob: - lea (-12,%sp),%sp - mov3q.l #5,%d0 - move.l %d2,-(%sp) - move.l 20(%sp),%d1 - move.l 24(%sp),%a0 - cmp.l %d1,%d0 - jcc .L717 -.L710: - move.l (%sp)+,%d2 - lea (12,%sp),%sp - rts -.L717: - move.l 1187521622,%d0 - add.l #-1073741824,%d0 - cmp.l #133169151,%d0 - jhi .L710 - tst.b -2147483627.l - jne .L710 - move.b 269161676,%d2 + jeq .L1083 + mvz.b -54(%fp),%d0 + move.l -16(%fp),%a1 + cmp.l 8(%a1),%d0 + jeq .L1084 + move.b (%a0),%d0 + tst.l -66(%fp) + jeq .L1085 +.L1086: + move.l %d1,%a0 + add.l #-2147457426,%a0 + move.b (%a0),%d0 + mvz.b -2147483646,%d2 + mvz.b %d0,%d0 + cmp.l %d0,%d2 + jeq .L1157 + move.w %d1,%d2 + move.l %d1,%d3 + move.l #mg_arp_page,%d0 + lsl.l #5,%d3 + lea mg_arp_setup_slots,%a0 + move.l %a0,-36(%fp) + clr.l -32(%fp) + mulu.w #68,%d2 + move.l %d3,%a1 + sub.l #mg_arp_page-1005,%d3 + move.l %d3,-24(%fp) + move.l %d2,%a0 + move.l #-1187473662,%d2 + sub.l %a1,%d2 + add.l #1187474924,%a0 + move.l %d2,-20(%fp) +.L1091: + move.l 1187521622,%a1 + move.l #269161679,%a2 + move.b (%a2),-51(%fp) + mov3q.l #3,%d3 + move.l %d0,%a2 + add.l #585088,%a1 + move.b (%a2)+,-37(%fp) + move.b -51(%fp),%d2 + move.l %a2,%d0 + move.l -24(%fp),%a2 + add.l %d0,%a2 + move.l %a2,-42(%fp) + and.l %d3,%d2 + mvz.w #6322,%d3 + muls.l %d3,%d2 + add.l %d2,%a1 + move.b -37(%fp),%d2 + move.b %d2,(%a1,%a2.l) + move.l #269161679,%a2 + move.b (%a2),%d3 + move.w %d3,%a1 + mov3q.l #3,%d3 + move.l %a1,%d2 + and.l %d3,%d2 + mvz.w #6322,%d3 + muls.l %d3,%d2 + move.l -42(%fp),%d3 + move.l %d2,%a1 + add.l #269110990,%a1 + move.b -37(%fp),%d2 + move.b %d2,(%a1,%d3.l) + mov3q.l #3,%d3 move.l 1187521622,%a1 add.l #585088,%a1 + move.b (%a2),-39(%fp) + move.l -36(%fp),%a2 + move.l %a1,-28(%fp) + addq.l #1,-36(%fp) + move.b (%a2)+,-54(%fp) + move.b -39(%fp),%d2 + move.l -20(%fp),%a2 + add.l %a0,%a2 + move.l %a2,-46(%fp) + and.l %d3,%d2 + mvz.w #6322,%d3 + muls.l %d3,%d2 + move.l %d2,%a1 + move.b -54(%fp),%d2 + add.l -28(%fp),%a1 + move.b %d2,(%a1,%a2.l) + move.b 269161679,%d3 + move.w %d3,%a1 + mov3q.l #3,%d3 + move.l %a1,%d2 + and.l %d3,%d2 + mvz.w #6322,%d3 + muls.l %d3,%d2 + move.l -46(%fp),%d3 + move.l %d2,%a1 + add.l #269110990,%a1 + move.b -54(%fp),%d2 + move.b %d2,(%a1,%d3.l) + tst.l -32(%fp) + jeq .L1090 + move.b -37(%fp),-32(%a0) +.L1090: + move.b -54(%fp),(%a0)+ + cmp.l #mg_arp_page+6,%d0 + jne .L1091 + move.l %d1,%d0 + lsl.l #4,%d0 + move.l %d0,%a1 + add.l #6210,%d0 + lea (6194,%a1),%a1 + move.l %d0,-54(%fp) +.L1092: + move.l 1187521622,%a0 + mov3q.l #3,%d3 move.b 269161679,%d0 - mvz.b %d2,%d2 - move.l %d2,12(%sp) + mvz.w #6322,%d2 + add.l #585088,%a0 + and.l %d3,%d0 + clr.b %d3 + muls.l %d2,%d0 + mov3q.l #3,%d2 + add.l %d0,%a0 + move.b %d3,(%a0,%a1.l) + mvz.w #6322,%d3 + move.b 269161679,%d0 + and.l %d2,%d0 + muls.l %d3,%d0 + move.l %d0,%a0 + add.l #269110990,%a0 + clr.b %d0 + move.b %d0,(%a0,%a1.l) + addq.l #1,%a1 + cmp.l -54(%fp),%a1 + jne .L1092 + tst.l -66(%fp) + jeq .L1110 + move.l 1187521622,%a0 + mov3q.l #3,%d2 + move.b 269161679,%d0 + move.w #77,%a1 + mvz.w #6322,%d3 + add.l #585088,%a0 + add.l -50(%fp),%a0 + and.l %d2,%d0 + move.w %a1,%d2 + muls.l %d3,%d0 + mov3q.l #3,%d3 + move.b %d2,(%a0,%d0.l) + mvz.w #6322,%d2 + move.l -50(%fp),%a0 + move.b 269161679,%d0 + and.l %d3,%d0 + move.w %a1,%d3 + muls.l %d2,%d0 + add.l %d0,%a0 + add.l #269110990,%a0 + move.b %d3,(%a0) + tst.l -66(%fp) + jeq .L1158 +.L1094: + move.l 1187521622,%a0 mov3q.l #3,%d2 + move.b 269161679,%d0 + move.l %d1,%d3 + add.l #591267,%a0 + add.l %d3,%d3 + lea (-55,%fp),%a1 + move.l #269117169,%a2 and.l %d2,%d0 mvz.w #6322,%d2 - move.l 12(%sp),-(%sp) + add.l %d3,%a0 + add.l %d3,%a2 + mvz.w #6322,%d3 muls.l %d2,%d0 - pea (%a1,%d0.l) - move.l %d1,16(%sp) - move.l %a0,12(%sp) - jsr vector_signed_track - addq.l #8,%sp - move.l 8(%sp),%d1 - tst.l %d0 - jeq .L710 - tst.l edit_view - jne .L710 - tst.b 1187502296.l - jne .L710 - tst.l 1175263034 - jne .L710 - tst.l 1175262868 - jne .L710 - tst.l st_layer - jne .L710 - move.l 4(%sp),24(%sp) - move.l %d1,20(%sp) - move.l (%sp)+,%d2 - lea (12,%sp),%sp - jra change_control - .size st_knob, .-st_knob - .align 2 - .globl st_setup_knob - .type st_setup_knob, @function -st_setup_knob: - move.l %d2,-(%sp) - mov3q.l #5,%d0 - cmp.l 8(%sp),%d0 - jcc .L719 -.L721: - move.l (%sp)+,%d2 - clr.l %d0 - rts -.L719: - move.l 1187521622,%d0 - add.l #-1073741824,%d0 - cmp.l #133169151,%d0 - jhi .L721 - tst.b -2147483627.l - jne .L721 - move.b 269161676,%d1 + mov3q.l #3,%d2 + move.b (%a1),(%a0,%d0.l) + move.b 269161679,%d0 + and.l %d2,%d0 + muls.l %d3,%d0 + move.b (%a1),(%a2,%d0.l) + move.l %d1,-62(%fp) + jsr mg_dirty + move.l -62(%fp),%d1 + tst.l -66(%fp) + jeq .L1088 + move.l -66(%fp),%a1 + move.l 12(%a1),%a0 + tst.l %a0 + jeq .L1088 + cmp.l #vector_midi_assign,%a0 + jne .L1095 + move.l %d1,-(%sp) + jsr (vector_midi_assign.part.0) + addq.l #4,%sp + jsr mg_note_setup_draw + jra .L1155 +.L1083: + tst.l -66(%fp) + jne .L1086 +.L1085: + move.l 1187521622,%a0 + mov3q.l #3,%d2 + move.b 269161679,%d0 + mvz.w #6322,%d3 + add.l #585088,%a0 + add.l -50(%fp),%a0 + and.l %d2,%d0 + moveq #77,%d2 + muls.l %d3,%d0 + mvz.b (%a0,%d0.l),%d0 + cmp.l %d0,%d2 + jeq .L1086 + jsr mg_note_setup_draw + jra .L1155 +.L1158: + mvz.w #255,%d0 + move.l %d0,-58(%fp) + jra .L1094 +.L1106: + clr.l -66(%fp) + jra .L1081 +.L1107: + clr.l -66(%fp) + clr.l -58(%fp) + jra .L1081 +.L1157: + move.l %d1,%a0 + add.l #-2147457418,%a0 + move.b (%a0),%d0 + move.b -2147483645,%d3 + move.w %d3,%a0 + move.l %d1,%d3 + lsl.l #5,%d3 + move.l %a0,%d2 + eor.l %d2,%d0 + move.w %d1,%d2 + lea mg_arp_setup_slots,%a0 + move.l %a0,-36(%fp) + move.l %d3,%a1 + sub.l #mg_arp_page-1005,%d3 + move.l %d3,-24(%fp) + tst.b %d0 + seq %d0 + mulu.w #68,%d2 + move.l %d2,%a0 + move.l #-1187473662,%d2 + sub.l %a1,%d2 + mvs.b %d0,%d0 + add.l #1187474924,%a0 + move.l %d2,-20(%fp) + neg.l %d0 + move.l %d0,-32(%fp) + move.l #mg_arp_page,%d0 + jra .L1091 +.L1110: move.l 1187521622,%a0 mov3q.l #3,%d2 move.b 269161679,%d0 + move.w #-1,%a1 + mvz.w #6322,%d3 add.l #585088,%a0 - mvz.b %d1,%d1 + add.l -50(%fp),%a0 and.l %d2,%d0 + move.w %a1,%d2 + muls.l %d3,%d0 + mov3q.l #3,%d3 + move.b %d2,(%a0,%d0.l) + mvz.w #6322,%d2 + move.l -50(%fp),%a0 + move.b 269161679,%d0 + and.l %d3,%d0 + move.w %a1,%d3 + muls.l %d2,%d0 + add.l %d0,%a0 + add.l #269110990,%a0 + move.b %d3,(%a0) + tst.l -66(%fp) + jne .L1094 + jra .L1158 +.L1084: + cmp.l -66(%fp),%a1 + jeq .L1088 + move.l 12(%a1),%a0 + tst.l %a0 + jeq .L1086 + cmp.l #vector_midi_assign,%a0 + jeq .L1086 + clr.l -(%sp) move.l %d1,-(%sp) - mvz.w #6322,%d1 - muls.l %d1,%d0 - pea (%a0,%d0.l) - jsr vector_signed_track + move.l %d1,-62(%fp) + jsr (%a0) addq.l #8,%sp - tst.l %d0 - jeq .L721 - tst.l edit_view - jne .L721 - move.l 12(%sp),-(%sp) - move.l 12(%sp),%a0 - pea 6(%a0) - jsr change_control + move.l -62(%fp),%d1 + jra .L1086 +.L1095: + mov3q.l #1,-(%sp) + move.l %d1,-(%sp) + jsr (%a0) addq.l #8,%sp - move.l (%sp)+,%d2 - mov3q.l #1,%d0 + jsr mg_note_setup_draw + jra .L1155 +.L1108: + clr.l -58(%fp) + jra .L1081 + .size mg_key, .-mg_key + .align 2 + .globl mg_knob + .type mg_knob, @function +mg_knob: + link.w %fp,#-16 + mov3q.l #5,%d1 + move.l 1074061804,%d0 + cmp.l 8(%fp),%d1 + jcs .L1159 + lea mg_page_layer,%a1 + cmp.l mg_active.l,%a1 + jeq .L1171 +.L1159: + unlk %fp rts - .size st_setup_knob, .-st_setup_knob +.L1171: + cmp.l #mg_page_site,%d0 + seq %d0 + mvs.b %d0,%d0 + neg.l %d0 + move.l %d0,-(%sp) + pea -16(%fp) + jsr (mg_view.constprop.0) + addq.l #8,%sp + tst.l %d0 + jeq .L1159 + move.l %d0,%a1 + move.l 20(%a1),%a0 + tst.l %a0 + jeq .L1159 + move.l mg_second,%d0 + cmp.l #vector_midi_knob,%a0 + jne .L1161 + move.l %d0,-(%sp) + move.l 12(%fp),-(%sp) + move.l 8(%fp),-(%sp) + jsr (%a0) + lea (12,%sp),%sp + mov3q.l #-1,-(%sp) + jsr 1074059592 + mov3q.l #1,1187497772 + addq.l #4,%sp +.L1172: + unlk %fp + rts +.L1161: + move.l %d0,-(%sp) + move.l 12(%fp),-(%sp) + move.l 8(%fp),-(%sp) + jsr (%a0) + lea (12,%sp),%sp + mov3q.l #-1,-(%sp) + jsr 1074059592 + mov3q.l #1,1187497772 + addq.l #4,%sp + jra .L1172 + .size mg_knob, .-mg_knob .align 2 - .globl st_ui_tick - .type st_ui_tick, @function -st_ui_tick: - lea (-44,%sp),%sp - movem.l #23564,(%sp) - tst.l pool_direct - jeq .L728 - tst.l 1175351520 - jne .L807 - clr.l pool_direct -.L728: - tst.l pool_pending - jne .L808 -.L730: - move.l -2147457608,%a2 - mov3q.l #1,%d0 - cmp.l %a2,%d0 - jeq .L796 -.L814: - lea any_vector,%a3 -.L732: - move.l %a2,last_transport - move.l 1187521622,%d0 + .globl mg_tick + .type mg_tick, @function +mg_tick: + lea (-28,%sp),%sp + movem.l #7180,(%sp) + move.l 1074061804,%a1 + move.l #1187521622,%a0 + move.l (%a0),%a2 + moveq #28,%d3 + move.l mg_seen,%d1 + cmp.l #mg_page_site,%a1 + seq %d0 + move.b -2147483645,%d2 + mvs.b %d0,%d0 + neg.l %d0 + lsl.l %d3,%d2 + eor.l %d2,%d0 + move.l %a2,%d2 + eor.l %d2,%d0 + cmp.l #mg_page_site,%a1 + jne .L1174 + eor.l #vector_midi,%d0 + cmp.l %d0,%d1 + jeq .L1175 + move.l %d0,mg_seen + move.l (%a0),%d0 add.l #-1073741824,%d0 cmp.l #133169151,%d0 - jhi .L734 - move.w #62,%a4 - sub.l %a6,%a6 - lea vector_signed_track,%a2 -.L736: - move.l 1187521622,%a0 + jhi .L1175 + move.l (%a0),%a4 mov3q.l #3,%d3 + mvz.w #6322,%d2 move.b 269161679,%d0 - mvz.w #6322,%d1 - move.l %a6,-(%sp) - add.l #585088,%a0 + move.w #1008,%a2 + add.l #585088,%a4 + move.l #1187474894,%a3 + move.l #-2147457418,%d1 and.l %d3,%d0 - muls.l %d1,%d0 - pea (%a0,%d0.l) - jsr (%a2) - addq.l #8,%sp - tst.l %d0 - jeq .L735 - move.l 1187521622,%a0 - add.l #585088,%a0 + muls.l %d2,%d0 + add.l %d0,%a4 + lea (6179,%a4),%a1 +.L1179: + move.b (%a1),%d0 + move.l %a1,%a0 + moveq #77,%d3 + mvz.b -(%a0),%d2 + cmp.l %d2,%d3 + jne .L1176 + mvz.b %d0,%d0 + moveq #86,%d2 + cmp.l %d0,%d2 + jeq .L1177 + move.b (%a0),%d0 +.L1176: + addq.l #2,%a1 + addq.l #1,%d1 + lea (68,%a3),%a3 + lea (32,%a2),%a2 + cmp.l #-2147457410,%d1 + jne .L1179 +.L1175: + tst.l -2147483630 + jeq .L1180 + move.l #1187521622,%a0 + move.l (%a0),%d0 + add.l #-1073741824,%d0 + cmp.l #133169151,%d0 + jhi .L1180 + mvz.b 269161676,%d2 + move.l (%a0),%d1 + mov3q.l #7,%d3 move.b 269161679,%d0 - mvz.w #6322,%d2 + cmp.l %d2,%d3 + jcs .L1184 + mov3q.l #3,%d3 and.l %d3,%d0 - mov3q.l #1,%d3 - muls.l %d2,%d0 - add.l %d0,%a0 - mvz.b (%a0,%a4.l),%d0 + mvz.w #6322,%d3 + move.l 1074513600,%a1 + add.l #585088,%d1 + muls.l %d3,%d0 + move.l %d0,%a2 + add.l %d1,%a2 + tst.l %a1 + jne .L1185 + clr.l mg_opened +.L1186: + move.l mg_shown,%d1 + mov3q.l #2,%d0 + cmp.l 1175262852.l,%d0 + jne .L1194 + tst.l 1175263034 + jne .L1194 + tst.l 1175262868 + jne .L1194 + move.l %d2,%a0 + lea (3089,%a0),%a0 + lea (%a2,%a0.l*2),%a0 + move.b 1(%a0),%d0 + mvz.b (%a0),%d3 + move.l %d3,%a2 + moveq #77,%d3 + cmp.l %a2,%d3 + jne .L1194 + mvz.b %d0,%d0 + moveq #86,%d3 cmp.l %d0,%d3 - jeq .L809 -.L735: - addq.l #1,%a6 - lea (30,%a4),%a4 - moveq #8,%d0 - cmp.l %a6,%d0 - jne .L736 -.L812: - mvz.b 269161676,%d1 - mov3q.l #7,%d2 - cmp.l %d1,%d2 - jcs .L761 + jeq .L1199 + move.b (%a0),%d0 +.L1194: + clr.l mg_second + move.l %d2,mg_shown + tst.l %a1 + jne .L1195 +.L1192: + move.l mg_active,%d0 + tst.l %d0 + jeq .L1173 + tst.l mg_mine + jne .L1173 + cmp.l #mg_page_layer,%d0 + seq %d2 + move.l %d0,-(%sp) + jsr 1073943660 + clr.l mg_active + move.l 1175262812,%a0 + addq.l #4,%sp + neg.l %d2 +.L1224: + clr.b %d0 +.L1210: + mvz.b %d0,%d0 + mvz.b %d2,%d2 + cmp.l %d0,%d2 + jeq .L1173 + mov3q.l #-1,-(%sp) + jsr 1074059592 + mov3q.l #1,1187497772 + addq.l #4,%sp +.L1173: + movem.l (%sp),#7180 + lea (28,%sp),%sp + rts +.L1177: + tst.b (%a4,%a2.l) + jeq .L1176 move.l 1187521622,%a0 mov3q.l #3,%d3 move.b 269161679,%d0 mvz.w #6322,%d2 add.l #585088,%a0 and.l %d3,%d0 + clr.b %d3 muls.l %d2,%d0 - add.l %d0,%a0 - tst.b 34(%a0,%d1.l) - jne .L761 - move.l #1074606108,%d0 - move.l %d0,1074618188 -.L734: - jsr (%a3) - move.l 1187521622,%a2 - mvz.b 269161679,%d1 - mvz.b 269161676,%d3 - move.l %d0,%a6 - move.l layer_gen,%a3 - move.l active,%d0 - move.l %d3,%a4 - cmp.l shown_bank.l,%a2 - jeq .L810 -.L738: - tst.l %a3 - jeq .L740 - tst.l %d0 - jeq .L799 - move.l #st_layer,%d0 - tst.l mine - jeq .L811 -.L727: - movem.l (%sp),#23564 - lea (44,%sp),%sp - rts -.L740: - tst.l %d0 - jeq .L799 - move.l #st_edit_layer,%d0 - tst.l mine - jne .L727 - jra .L811 -.L809: - move.l %a6,-(%sp) - lea (37,%sp),%a0 mov3q.l #3,%d2 - move.l %d0,32(%sp) - jsr settings + add.l %d0,%a0 + move.b %d3,(%a0,%a2.l) mvz.w #6322,%d3 - move.l 1187521622,%a0 - add.l #585088,%a0 - move.b 269161679,%d1 - lea (435,%a4),%a1 - lea (30,%a4),%a4 - and.l %d2,%d1 - moveq #127,%d2 - muls.l %d3,%d1 - add.l %d1,%a0 - move.b (%a0,%a1.l),%d1 - and.l %d1,%d2 - move.l %d2,(%sp) - pea 37(%sp) - move.l %a6,-(%sp) - jsr save_settings - lea (12,%sp),%sp - move.b 269161679,%d3 - move.l 28(%sp),%d0 - move.l 1187521622,%a1 - add.l #610376,%a1 - move.b (%a1),%d1 - move.w %d3,%a0 - mov3q.l #3,%d3 - move.l %a0,%d2 - and.l %d3,%d2 - lsl.l %d2,%d0 - or.l %d0,%d1 - move.b %d1,(%a1) - move.b 269161566,%d1 - or.l %d1,%d0 - move.b %d0,269161566 - move.l 1187521622,%a0 - add.l #635698,%a0 - mov3q.l #1,(%a0) - mov3q.l #1,269452696 - jsr 1073905152 - addq.l #1,%a6 - moveq #8,%d0 - cmp.l %a6,%d0 - jne .L736 - jra .L812 -.L810: - cmp.l shown_part.l,%d1 - jne .L738 - cmp.l shown_track.l,%d3 - jne .L738 - tst.l %a3 - jeq .L743 + move.b 269161679,%d0 + and.l %d2,%d0 + muls.l %d3,%d0 + move.l %d0,%a0 + add.l #269110990,%a0 + clr.b %d0 + move.b %d0,(%a0,%a2.l) + move.l %d1,%a0 + move.b -8(%a0),%d0 + mvz.b -2147483646,%d2 + mvz.b %d0,%d0 + cmp.l %d0,%d2 + jeq .L1287 +.L1178: + move.l %d1,20(%sp) + move.l %a1,24(%sp) + jsr mg_dirty + move.l 24(%sp),%a1 + move.l 20(%sp),%d1 +.L1289: + addq.l #2,%a1 + addq.l #1,%d1 + lea (68,%a3),%a3 + lea (32,%a2),%a2 + cmp.l #-2147457410,%d1 + jne .L1179 + jra .L1175 +.L1174: + cmp.l %d0,%d1 + jeq .L1180 + move.l %d0,mg_seen +.L1180: + tst.l mg_active + jeq .L1288 + mvz.b 269161676,%d2 + move.l 1187521622,%d0 + move.b 269161679,%d0 +.L1184: + clr.l mg_opened + cmp.l mg_shown.l,%d2 + jeq .L1191 + clr.l mg_second + move.l %d2,mg_shown + jra .L1192 +.L1287: + move.b (%a0),%d0 + mvz.b -2147483645,%d2 + mvz.b %d0,%d0 + cmp.l %d0,%d2 + jne .L1178 + clr.b (%a3) + move.l %d1,20(%sp) + move.l %a1,24(%sp) + jsr mg_dirty + move.l 24(%sp),%a1 + move.l 20(%sp),%d1 + jra .L1289 +.L1200: + tst.l %a1 + jeq .L1222 +.L1195: + lea mg_list_layer,%a3 +.L1201: + move.l mg_active,%d0 + cmp.l %d0,%a3 + jne .L1290 + tst.l (%a3) + jeq .L1173 + tst.l mg_mine + jne .L1173 + cmp.l #mg_page_layer,%a3 + seq %d2 + move.l %a3,-(%sp) + jsr 1073943660 + clr.l mg_active + move.l 1175262812,%a0 + addq.l #4,%sp + neg.l %d2 + cmp.l #mg_list_layer,%a3 + jeq .L1202 +.L1203: + tst.l %a0 + jeq .L1224 + tst.l (%a0) + jne .L1224 + lea mg_keys,%a4 + lea mg_saved,%a2 +.L1214: + mvz.b (%a4)+,%d0 + sub.l %a0,%a0 + mulu.w #24,%d0 + move.l %d0,%a1 + add.l #1187502302,%a1 +.L1213: + move.l (%a1,%a0.l),%d0 + cmp.l #mg_key,%d0 + jeq .L1212 + move.l %d0,(%a2,%a0.l) +.L1212: + addq.l #4,%a0 + moveq #12,%d0 + cmp.l %a0,%d0 + jne .L1213 + lea (12,%a2),%a2 + cmp.l #mg_saved+48,%a2 + jne .L1214 + clr.l (%a3) + move.l %a3,-(%sp) + jsr 1073943700 + cmp.l #mg_page_layer,%a3 + seq %d0 + move.l %a3,mg_active + addq.l #4,%sp + neg.l %d0 + jra .L1210 +.L1202: + tst.l 1074513572 + jne .L1224 + lea mg_list_layer,%a3 + lea mg_keys,%a4 + lea mg_saved,%a2 + jra .L1214 +.L1288: + movem.l (%sp),#7180 + clr.l mg_opened + clr.l mg_second + lea (28,%sp),%sp + rts +.L1290: + tst.l mg_mine + jne .L1173 tst.l %d0 - jeq .L745 - lea st_layer,%a0 - tst.l %a6 - jeq .L748 - tst.l st_layer - jeq .L747 -.L748: - tst.l mine - jne .L727 - move.l %a0,-(%sp) - move.l %d1,28(%sp) + jne .L1205 + move.l 1175262812,%a0 + cmp.l #mg_list_layer,%a3 + jeq .L1206 + tst.l %a0 + jeq .L1173 + tst.l (%a0) + jne .L1173 + clr.b %d2 +.L1292: + lea mg_keys,%a4 + lea mg_saved,%a2 + jra .L1214 +.L1185: + move.l mg_opened,%d1 + tst.l %d1 + jeq .L1291 + mov3q.l #1,%a1 + jra .L1186 +.L1191: + clr.l mg_second + jra .L1192 +.L1291: + move.l %d2,%a0 + lea (3089,%a0),%a0 + lea (%a2,%a0.l*2),%a0 + mov3q.l #1,mg_opened + move.b 1(%a0),%d0 + mvz.b (%a0),%d3 + move.l %d3,%a1 + moveq #77,%d3 + cmp.l %a1,%d3 + jne .L1189 + mvz.b %d0,%d0 + moveq #86,%d3 + cmp.l %d0,%d3 + jeq .L1220 + move.b (%a0),%d0 +.L1189: + move.l %d1,mg_cursor + jsr mg_note_setup_draw +.L1293: + mov3q.l #1,%a1 + jra .L1186 +.L1206: + tst.l 1074513572 + jne .L1173 + clr.b %d2 + jra .L1292 +.L1205: + cmp.l #mg_page_layer,%d0 + seq %d2 + move.l %d0,-(%sp) jsr 1073943660 - clr.l active - move.l %a2,shown_bank - move.l %a4,shown_track - move.l 28(%sp),%d1 + clr.l mg_active + move.l 1175262812,%a0 addq.l #4,%sp - move.l %d1,shown_part -.L745: + neg.l %d2 + cmp.l #mg_list_layer,%a3 + jeq .L1202 + tst.l %a3 + jne .L1203 + clr.b %d0 + jra .L1210 +.L1220: + mov3q.l #1,%d1 + move.l %d1,mg_cursor + jsr mg_note_setup_draw + jra .L1293 +.L1199: + cmp.l %d2,%d1 + jeq .L1200 + clr.l mg_second + move.l %d2,mg_shown + tst.l %a1 + jne .L1195 +.L1222: + lea mg_page_layer,%a3 + jra .L1201 + .size mg_tick, .-mg_tick + .align 2 + .globl st_ui_tick + .type st_ui_tick, @function +st_ui_tick: + lea (-64,%sp),%sp + movem.l #19580,(%sp) + jsr mg_tick + tst.l pool_direct + jeq .L1295 + tst.l 1175351520 + jne .L1382 + clr.l pool_direct +.L1295: + tst.l pool_pending + jne .L1383 +.L1297: + move.l 1187521622,%d0 + add.l #-1073741824,%d0 + cmp.l #133169151,%d0 + jls .L1299 + mov3q.l #1,%d1 + move.l -2147457608,%d0 + cmp.l %d0,%d1 + jeq .L1384 + move.l %d0,last_transport +.L1379: + move.l 1187521622,%d3 + clr.l %d2 + mvz.b 269161679,%d1 + move.l %d1,40(%sp) + mvz.b 269161676,%d4 +.L1307: + move.l layer_gen,%a2 + move.l active,%d0 + cmp.l shown_bank.l,%d3 + jeq .L1385 +.L1314: + tst.l %a2 + jeq .L1321 + tst.l %d0 + jne .L1339 + move.l 40(%sp),%d5 + clr.l edit_view + move.l %d3,shown_bank + move.l %d5,shown_part + move.l %d4,shown_track +.L1316: move.l 1175262812,%a0 - tst.l %a6 - jeq .L727 + tst.l %d2 + jeq .L1294 tst.l %a0 - jeq .L727 + jeq .L1294 tst.l (%a0) - jne .L727 + jne .L1294 move.l #st_key,%d1 move.l #1187503478,%a0 lea saved-1187503478,%a1 -.L754: +.L1328: move.l (%a0),%d0 - cmp.l #st_key,%d0 - jeq .L753 + cmp.l %d1,%d0 + jeq .L1327 move.l %d0,(%a1,%a0.l) -.L753: +.L1327: addq.l #4,%a0 cmp.l #1187503490,%a0 - jne .L754 + jne .L1328 move.l #1187503790,%a0 lea saved-1187503778,%a1 -.L756: +.L1330: move.l (%a0),%d0 cmp.l %d1,%d0 - jeq .L755 + jeq .L1329 move.l %d0,(%a1,%a0.l) -.L755: +.L1329: addq.l #4,%a0 cmp.l #1187503802,%a0 - jne .L756 + jne .L1330 jsr generator_view move.l %d0,layer_gen tst.l %d0 - jeq .L766 + jeq .L1341 lea st_layer,%a0 clr.l (%a0) move.l %a0,-(%sp) @@ -4237,73 +7280,264 @@ st_ui_tick: jsr 1074059592 mov3q.l #1,1187497772 addq.l #8,%sp -.L815: - movem.l (%sp),#23564 - lea (44,%sp),%sp +.L1294: + movem.l (%sp),#19580 + lea (64,%sp),%sp rts -.L808: +.L1299: + move.l 1187521622,%a2 + mov3q.l #3,%d5 + move.b 269161679,%d0 + mvz.w #6322,%d6 + add.l #585088,%a2 + sub.l %a6,%a6 + clr.l %d2 + lea vector_signed_track,%a3 + and.l %d5,%d0 + muls.l %d6,%d0 + add.l %d0,%a2 +.L1303: + move.l %a6,-(%sp) + move.l %a2,-(%sp) + jsr (%a3) + addq.l #8,%sp + tst.l %d0 + jeq .L1302 + mov3q.l #1,%d0 + move.l %a6,%d1 + lsl.l %d1,%d0 + or.l %d0,%d2 +.L1302: + addq.l #1,%a6 + moveq #8,%d5 + cmp.l %a6,%d5 + jne .L1303 + move.l -2147457608,%d0 + mov3q.l #1,%d5 + cmp.l %d0,%d5 + jeq .L1386 +.L1308: + move.l %d0,last_transport + move.l 1187521622,%d3 + move.b 269161679,%d5 + move.b %d5,47(%sp) + mvz.b %d5,%d6 + mvz.b 269161676,%d4 + move.l %d6,40(%sp) +.L1334: + move.w #497,%a6 + clr.l %d0 + lea (-435,%a2),%a3 +.L1312: + btst %d0,%d2 + jeq .L1311 + mvz.b (%a3,%a6.l),%d1 + mov3q.l #1,%d5 + cmp.l %d1,%d5 + jeq .L1387 +.L1311: + addq.l #1,%d0 + lea (30,%a6),%a6 + moveq #8,%d1 + cmp.l %d0,%d1 + jne .L1312 +.L1388: + mov3q.l #7,%d5 + cmp.l %d4,%d5 + jcs .L1335 + tst.b 34(%a2,%d4.l) + jne .L1335 + move.l #1074606108,%d0 +.L1313: + move.l %d0,1074618188 + tst.l %d2 + jeq .L1307 + tst.l -2147483630 + seq %d2 + move.l layer_gen,%a2 + move.l active,%d0 + mvs.b %d2,%d2 + neg.l %d2 + cmp.l shown_bank.l,%d3 + jne .L1314 + jra .L1385 +.L1387: + move.l %d0,-(%sp) + lea (57,%sp),%a0 + move.l %d0,36(%sp) + move.l %d1,40(%sp) + jsr settings + move.l 1187521622,%a0 + add.l #585088,%a0 + move.b 269161679,%d5 + move.w %d5,%a1 + mov3q.l #3,%d5 + move.l %a1,%d6 + and.l %d5,%d6 + mvz.w #6322,%d5 + muls.l %d5,%d6 + add.l %d6,%a0 + move.b (%a0,%a6.l),%d6 + move.w %d6,%a0 + moveq #127,%d6 + move.l %a0,%d5 + and.l %d6,%d5 + mov3q.l #3,%d6 + move.l %d5,(%sp) + pea 57(%sp) + move.l 40(%sp),%d0 + move.l %d0,-(%sp) + move.l %d0,44(%sp) + jsr save_settings + move.b 59(%sp),%d5 + move.l 1187521622,%a1 + add.l #610376,%a1 + and.l %d6,%d5 + move.l %d5,60(%sp) + move.b (%a1),%d5 + move.l 48(%sp),%d1 + move.l 60(%sp),%d6 + lea (12,%sp),%sp + lsl.l %d6,%d1 + move.w %d5,%a0 + move.l %a0,%d5 + or.l %d1,%d5 + move.b %d5,(%a1) + move.b 269161566,%d6 + move.w %d6,%a0 + move.l %a0,%d5 + or.l %d5,%d1 + move.b %d1,269161566 + move.l 1187521622,%a0 + add.l #635698,%a0 + mov3q.l #1,(%a0) + mov3q.l #1,269452696 + jsr 1073905152 + lea (30,%a6),%a6 + move.l 32(%sp),%d0 + moveq #8,%d1 + addq.l #1,%d0 + cmp.l %d0,%d1 + jne .L1312 + jra .L1388 +.L1383: jsr pool_context tst.l %d0 - jeq .L813 + jeq .L1389 tst.l 1175346736 - jne .L730 + jne .L1297 tst.l 1175351520 - jne .L730 + jne .L1297 jsr st_pool_choice_open - move.l -2147457608,%a2 - mov3q.l #1,%d0 - cmp.l %a2,%d0 - jne .L814 -.L796: - mov3q.l #1,%d1 - lea any_vector,%a3 - cmp.l last_transport.l,%d1 - jeq .L732 - jsr (%a3) + jra .L1297 +.L1385: + move.l 40(%sp),%d6 + cmp.l shown_part.l,%d6 + jne .L1314 + cmp.l shown_track.l,%d4 + jne .L1314 + tst.l %a2 + jeq .L1315 tst.l %d0 - jeq .L732 - sub.l %a4,%a4 + jeq .L1316 + lea st_layer,%a3 + tst.l %d2 + jeq .L1319 + tst.l st_layer + jeq .L1318 +.L1319: + tst.l mine + jne .L1294 + move.l %a3,-(%sp) + jsr 1073943660 + clr.l active + move.l %d3,shown_bank + move.l %d4,shown_track + lea (44,%sp),%a1 + addq.l #4,%sp + move.l (%a1),shown_part + jra .L1316 +.L1386: + cmp.l last_transport.l,%d5 + jeq .L1308 + tst.l %d2 + jeq .L1309 + sub.l %a3,%a3 lea generate_track,%a6 -.L733: - clr.l -(%sp) - moveq #8,%d2 - clr.l -(%sp) - move.l %a4,-(%sp) - jsr (%a6) - addq.l #1,%a4 - lea (12,%sp),%sp - cmp.l %a4,%d2 - jeq .L732 +.L1310: clr.l -(%sp) - moveq #8,%d2 + moveq #8,%d6 clr.l -(%sp) - move.l %a4,-(%sp) + move.l %a3,-(%sp) jsr (%a6) - addq.l #1,%a4 + addq.l #1,%a3 lea (12,%sp),%sp - cmp.l %a4,%d2 - jne .L733 - jra .L732 -.L761: + cmp.l %a3,%d6 + jne .L1310 + mov3q.l #1,last_transport + move.l 1187521622,%d3 + move.b 269161679,%d0 + move.w #497,%a6 + lea (-435,%a2),%a3 + move.b %d0,47(%sp) + mvz.b %d0,%d1 + clr.l %d0 + mvz.b 269161676,%d4 + move.l %d1,40(%sp) + jra .L1312 +.L1335: move.l #1074606510,%d0 - move.l %d0,1074618188 - jra .L734 -.L799: + jra .L1313 +.L1321: + tst.l %d0 + jeq .L1390 + move.l #st_edit_layer,%d0 + tst.l mine + jne .L1294 +.L1391: + move.l %d0,-(%sp) + jsr 1073943660 + clr.l active + clr.l edit_view + move.l %d3,shown_bank + lea (44,%sp),%a0 + addq.l #4,%sp + move.l %d4,shown_track + move.l (%a0),shown_part + jra .L1316 +.L1390: + move.l 40(%sp),%d1 clr.l edit_view - move.l %a2,shown_bank + move.l %d3,shown_bank move.l %d1,shown_part - move.l %a4,shown_track - jra .L745 -.L807: + move.l %d4,shown_track + jra .L1316 +.L1339: + move.l #st_layer,%d0 + tst.l mine + jne .L1294 + jra .L1391 +.L1384: + mov3q.l #1,%d6 + cmp.l last_transport.l,%d6 + jeq .L1379 + mov3q.l #1,last_transport + move.l 1187521622,%d3 + clr.l %d2 + mvz.b 269161679,%d1 + move.l %d1,40(%sp) + mvz.b 269161676,%d4 + jra .L1307 +.L1382: jsr pool_context tst.l %d0 - jne .L728 + jne .L1295 clr.l pool_direct - jra .L728 -.L813: + jra .L1295 +.L1389: clr.l pool_pending - jra .L730 -.L766: + jra .L1297 +.L1341: lea st_edit_layer,%a0 clr.l (%a0) move.l %a0,-(%sp) @@ -4313,73 +7547,85 @@ st_ui_tick: jsr 1074059592 mov3q.l #1,1187497772 addq.l #8,%sp - jra .L815 -.L811: - move.l %d0,-(%sp) - move.l %d1,28(%sp) - jsr 1073943660 - clr.l active - clr.l edit_view - move.l %a2,shown_bank - move.l 28(%sp),%d1 - addq.l #4,%sp - move.l %a4,shown_track - move.l %d1,shown_part - jra .L745 -.L743: + jra .L1294 +.L1315: tst.l %d0 - jeq .L745 - lea st_edit_layer,%a0 - tst.l %a6 - jeq .L748 + jeq .L1316 + lea st_edit_layer,%a3 + tst.l %d2 + jeq .L1319 tst.l st_edit_layer - jne .L748 -.L747: - move.l %d1,24(%sp) - move.l %a0,28(%sp) + jne .L1319 +.L1318: jsr generator_view - move.l 24(%sp),%d1 - move.l 28(%sp),%a0 - cmp.l %a3,%d0 - jne .L748 - move.l %a2,shown_bank - movem.l (%sp),#23564 - lea (44,%sp),%sp + cmp.l %d0,%a2 + jne .L1319 + movem.l (%sp),#19580 + lea (64,%sp),%sp rts +.L1309: + mov3q.l #1,last_transport + move.l 1187521622,%d3 + move.b 269161679,%d5 + move.b %d5,47(%sp) + mvz.b %d5,%d6 + mvz.b 269161676,%d4 + move.l %d6,40(%sp) + jra .L1334 .size st_ui_tick, .-st_ui_tick + .section .rodata + .align 2 + .type formats.1, @object + .size formats.1, 48 +formats.1: + .long midi_format_0 + .long midi_format_1 + .long midi_format_2 + .long midi_format_3 + .long midi_format_4 + .long midi_format_5 + .long midi_format_6 + .long midi_format_7 + .long midi_format_8 + .long midi_format_9 + .long midi_format_10 + .long midi_format_11 + .type first.2, @object + .size first.2, 12 +first.2: + .base64 "CwsAAQgwAQwMAAAA" + .local locked.3 + .comm locked.3,64,1 .section .rodata.str1.1 -.LC6: +.LC9: .string "C" -.LC7: +.LC10: .string "C#" -.LC8: +.LC11: .string "D" -.LC9: +.LC12: .string "D#" -.LC10: +.LC13: .string "E" -.LC11: +.LC14: .string "F" -.LC12: +.LC15: .string "F#" -.LC13: +.LC16: .string "G" -.LC14: +.LC17: .string "G#" -.LC15: +.LC18: .string "A" -.LC16: +.LC19: .string "A#" -.LC17: +.LC20: .string "B" .section .rodata .align 2 - .type roots.1, @object - .size roots.1, 48 -roots.1: - .long .LC6 - .long .LC7 - .long .LC8 + .type roots.5, @object + .size roots.5, 48 +roots.5: .long .LC9 .long .LC10 .long .LC11 @@ -4389,10 +7635,14 @@ roots.1: .long .LC15 .long .LC16 .long .LC17 + .long .LC18 + .long .LC19 + .long .LC20 + .set roots.0,roots.5 .align 2 - .type formats.2, @object - .size formats.2, 48 -formats.2: + .type formats.6, @object + .size formats.6, 48 +formats.6: .long format_0 .long format_1 .long format_2 @@ -4406,23 +7656,71 @@ formats.2: .long format_10 .long format_11 .align 2 - .type handlers.3, @object - .size handlers.3, 8 -handlers.3: + .type handlers.7, @object + .size handlers.7, 8 +handlers.7: .long pool_static .long pool_flex + .type mg_keys, @object + .size mg_keys, 4 +mg_keys: + .ascii "3 12" + .local mg_opened + .comm mg_opened,4,2 + .local mg_cursor + .comm mg_cursor,4,2 + .local mg_shown + .comm mg_shown,4,2 + .local mg_second + .comm mg_second,4,2 + .local mg_mine + .comm mg_mine,4,2 + .local mg_saved + .comm mg_saved,48,2 + .local mg_active + .comm mg_active,4,2 + .local mg_seen + .comm mg_seen,4,2 + .type mg_arp_setup_slots, @object + .size mg_arp_setup_slots, 6 +mg_arp_setup_slots: + .base64 "AAAHAAAA" + .type mg_arp_page, @object + .size mg_arp_page, 6 +mg_arp_page: + .string "@" + .base64 "AAUABg==" + .globl vector_midi + .align 2 + .type vector_midi, @object + .size vector_midi, 32 +vector_midi: + .long 1 + .long .LC8 + .long 86 + .long vector_midi_assign + .long vector_midi_page + .long vector_midi_knob + .long vector_midi_yes + .long 0 + .data + .align 2 + .type midi_page_built, @object + .size midi_page_built, 4 +midi_page_built: + .zero 4 .section .rodata.str1.1 -.LC18: +.LC21: .string "001 STATIC" -.LC19: +.LC22: .string "002 FLEX" .section .rodata .align 2 .type pool_labels, @object .size pool_labels, 8 pool_labels: - .long .LC18 - .long .LC19 + .long .LC21 + .long .LC22 .data .align 2 .type pool_browse, @object @@ -4533,26 +7831,26 @@ scales: .word 1193 .globl vector_scale_names .section .rodata.str1.1 -.LC20: +.LC23: .string "CHR" -.LC21: +.LC24: .string "MIN" -.LC22: +.LC25: .string "MAJ" -.LC23: +.LC26: .string "DOR" -.LC24: +.LC27: .string "PENT" .section .rodata .align 2 .type vector_scale_names, @object .size vector_scale_names, 20 vector_scale_names: - .long .LC20 - .long .LC21 - .long .LC22 .long .LC23 .long .LC24 + .long .LC25 + .long .LC26 + .long .LC27 .globl vector_control_max .type vector_control_max, @object .size vector_control_max, 12 @@ -4560,38 +7858,35 @@ vector_control_max: .base64 "DxALBH5/fwwYP0AB" .globl vector_control_names .section .rodata.str1.1 -.LC25: +.LC28: .string "TYPE" -.LC26: +.LC29: .string "DENS" -.LC27: +.LC30: .string "ROOT" -.LC28: +.LC31: .string "SCAL" -.LC29: +.LC32: .string "GATE" -.LC30: +.LC33: .string "ACNT" -.LC31: +.LC34: .string "SEED" -.LC32: +.LC35: .string "SPAN" -.LC33: +.LC36: .string "OFST" -.LC34: +.LC37: .string "ROT" -.LC35: +.LC38: .string "RPT" -.LC36: +.LC39: .string "DIR" .section .rodata .align 2 .type vector_control_names, @object .size vector_control_names, 48 vector_control_names: - .long .LC25 - .long .LC26 - .long .LC27 .long .LC28 .long .LC29 .long .LC30 @@ -4601,6 +7896,9 @@ vector_control_names: .long .LC34 .long .LC35 .long .LC36 + .long .LC37 + .long .LC38 + .long .LC39 .globl vector_defaults .type vector_defaults, @object .size vector_defaults, 11 @@ -4899,6 +8197,99 @@ st_stock_validate: movem.l %d2-%d7/%a2-%fp,(%sp) jmp 0x40002320 +| SPDX-License-Identifier: MIT +| The sites of the MIDI generator registry (midi_generators.c, events.json ot_midi_generators): the base's, and a +| card build's generator module patches the same ones. Each replays its own instructions, never stock's bytes. + .text + .balign 2 + .global mg_tap_site, mg_page_site, mg_setup_site +| Double-tap TRACK (0x40083afc, 10 bytes): d2 is the tapped track, the current one. Stock asks for MIDI mode +| (0x40033970) and does nothing in it (0x40083b7e). +mg_tap_site: + jsr 0x40033970 + tst.l %d0 + beq.s 1f + lea -16(%sp),%sp + movem.l %d0-%d1/%a0-%a1,(%sp) + move.l %d2,-(%sp) + jsr mg_track_tap + addq.l #4,%sp + movem.l (%sp),%d0-%d1/%a0-%a1 + lea 16(%sp),%sp + jmp 0x40083b7e +1: jmp 0x40083b06 +| The main page drawer's MIDI arm (0x4004e1ea, 10 bytes): 0x40031ee0(-1, its page argument) is the descriptor; a +| generator's page replaces it. Stock pops the two arguments at 0x4004e1f4. +mg_page_site: + move.l 8(%fp),-(%sp) + pea -1.w + jsr 0x40031ee0 + lea -12(%sp),%sp + movem.l %d1/%a0-%a1,(%sp) + move.l %d0,-(%sp) + jsr mg_page + addq.l #4,%sp + movem.l (%sp),%d1/%a0-%a1 + lea 12(%sp),%sp + jmp 0x4004e1f4 +| The setup opener 0x40032228(page) in MIDI mode, page 2 (0x40032280, 8 bytes): ARP SETUP's open routine from its +| window record, then 0x400322ec calls it. The opener has no frame here, so rts returns to its caller. +mg_setup_site: + lea -16(%sp),%sp + movem.l %d0-%d1/%a0-%a1,(%sp) + jsr mg_arp_setup + tst.l %d0 + movem.l (%sp),%d0-%d1/%a0-%a1 | movem and lea keep the condition codes + lea 16(%sp),%sp + bne.s 1f + move.l 0x400cfeda,%a1 + jmp 0x400322ec +1: rts +| MIDI NOTE SETUP's drawer 0x40036548 (8 bytes): its displaced prologue, filled from the user's own OS (the base's +| modwerk_stock_ placeholders; a card build's StockCopy of the same span), then the rest of it. + .global mg_stock_note_draw +mg_stock_note_draw: + .globl modwerk_stock_40036548_8 +modwerk_stock_40036548_8: + .space 8 + jmp 0x40036550 + +| Input layers (stock's list at 0x460d165c: a pushed layer links last). Keys: code, then the press, release and +| repeat handlers; encoders A-F: the turn handler. + .data + .balign 4 + .global mg_list_layer, mg_page_layer +mg_list_layer: + .long 0,mg_list_keys,0,0,0,-1,-1 +mg_page_layer: + .long 0,mg_page_keys,mg_page_encs,0,0,-1,-1 +mg_list_keys: + .irp k,0x33,0x20,0x31 + .byte \k,0 + .long mg_key,mg_key,mg_key,0,0 + .word 0,0 + .endr + .byte 0xff,0 + .long 0,0,0,0,0 + .word 0,0 +mg_page_keys: + .irp k,0x31,0x32 + .byte \k,0 + .long mg_key,mg_key,mg_key,0,0 + .word 0,0 + .endr + .byte 0xff,0 + .long 0,0,0,0,0 + .word 0,0 +mg_page_encs: + .irp k,0,1,2,3,4,5 + .byte \k,0 + .long mg_knob,0,0,0,0 + .endr + .byte 0xff,0 + .long 0,0,0,0,0 + .text + .text .balign 2 st_name_replay: diff --git a/sdk/octabam/modules/vector/engine.c b/sdk/octabam/modules/vector/engine.c index a448e4fd9..5c43aadd5 100644 --- a/sdk/octabam/modules/vector/engine.c +++ b/sdk/octabam/modules/vector/engine.c @@ -31,18 +31,21 @@ void vector_unpack(VectorParams *p, uint32_t *seed, const uint8_t in[9]) { static int in_window(int pitch, unsigned span, int center) { return pitch>=center-(int)span && pitch<=center+(int)span; } -static int semitone(unsigned degree, unsigned root, unsigned scale, unsigned span, int center) { - unsigned allowed[25], n = 0; - int closest=0, distance=100; +/* The scale's pitches in the window, once a phrase (they depend on no step): `allowed` holds them, the result is + * their count; with none, *closest is the scale note nearest the window's centre. */ +static unsigned window_pitches(unsigned allowed[25], int *closest, unsigned root, unsigned scale, unsigned span, int center) { + unsigned n = 0; + int distance=100; + *closest=0; for (int pitch = -12; pitch <= 12; ++pitch) { unsigned pc = (unsigned)(pitch + 24 - (int)root) % 12; if ((scales[scale] >> pc) & 1u) { if(in_window(pitch,span,center)) allowed[n++] = (unsigned)(pitch + 12); int d=pitch-center; if(d<0) d=-d; - if(d ranks[i]) { order[j] = order[j - 1]; --j; } order[j] = i; } + unsigned allowed[25]; int closest; + const unsigned pitches = window_pitches(allowed, &closest, root, scale, span, center); unsigned count = (period * density + 8u) / 16u; for (unsigned i = 0; i < count; ++i) motif[order[i]].active = 1; for (unsigned i = 0; i < period; ++i) { VectorStep *s = &motif[i]; if (!s->active) continue; uint32_t r = mix(seed ^ (0x85ebca6bu * (i + 1u)) ^ 0xb5297a4du); - int pitch = semitone(r >> 8, root, scale, span, center); + int pitch = pitches ? (int)allowed[(r >> 8) % pitches] - 12 : closest; /* High TYPE prefers tonic and fifth; constrain the fifth to the scale * too (chromatic/root transposition must never break scale membership). */ if ((r & 15u) < type) { diff --git a/sdk/octabam/modules/vector/manifest.py b/sdk/octabam/modules/vector/manifest.py index 405445b09..7ae075242 100644 --- a/sdk/octabam/modules/vector/manifest.py +++ b/sdk/octabam/modules/vector/manifest.py @@ -12,6 +12,7 @@ StockCopy("st_main_replay", stock_guard(0x4007981c, 6, "89c50ac3ca041fdf5647ec5ee2c3580f9a67dd79f0b5cc15ceadda4b9e9bede0")), StockCopy("st_edit_replay", stock_guard(0x4003a52e, 8, "cae34bf50383462ed4f92d8044e3021247edb8bf69c17a9c7ead62f6edf79510")), StockCopy("st_draw_replay", stock_guard(0x4003cd98, 8, "ed71ef874312890edc87cef7e19cd8c0f8ac4ac9b90182c2364f78d3a4567f45")), + StockCopy("mg_stock_note_draw", stock_guard(0x40036548, 8, "e7935464f6aea76650f55814efc9b45785485164937f3bd5ed6f2a4d384b8d4b")), )),), symbol_refs=( SymbolRef(0x400ce128, 0, "vector", "st_pool_choice_right", note="RIGHT browses the highlighted backing pool without committing it"), @@ -40,6 +41,11 @@ Detour(0x4005a850, stock_guard(0x4005a850, 6, '7a7350a69423ec41ec468a189ba167059626cb7f499d9862394d2388a23c8b59'), 'vector', 'st_src_commit2', 'VECTOR native selection/editor access'), Detour(0x4003a52e, stock_guard(0x4003a52e, 8, 'cae34bf50383462ed4f92d8044e3021247edb8bf69c17a9c7ead62f6edf79510'), 'vector', 'st_setup_edit6', 'VECTOR native selection/editor access', pad_to=8), Detour(0x4003cd98, stock_guard(0x4003cd98, 8, 'ed71ef874312890edc87cef7e19cd8c0f8ac4ac9b90182c2364f78d3a4567f45'), 'vector', 'st_setup_draw6', 'VECTOR native selection/editor access', pad_to=8), + # The MIDI generator sites (the base's ot_midi_generators sites; on a card VECTOR is the one generator). + Detour(0x40083afc, stock_guard(0x40083afc, 10, 'd611d680ad5031e96fe61f954ea40fd87a76bbc961c6d2deefdfc55935dd9f1e'), 'vector', 'mg_tap_site', 'Double-tap TRACK in MIDI mode opens MIDI NOTE SETUP, with the generator list', pad_to=10), + Detour(0x4004e1ea, stock_guard(0x4004e1ea, 10, 'b40743bf9a64ff977ac996a4a3c34f6582d8fcda08b78cf52fdf634c94c54959'), 'vector', 'mg_page_site', 'VECTOR controls on a VECTOR MIDI track\'s ARP page', pad_to=10), + Detour(0x40032280, stock_guard(0x40032280, 8, 'de77e904028311689866c543af3ce42a7fcfa1e3fdc531807fc98eaf0689d1cf'), 'vector', 'mg_setup_site', 'FUNC+AMP turns a VECTOR MIDI track\'s ARP page to its second page', pad_to=8), + Detour(0x40036548, stock_guard(0x40036548, 8, 'e7935464f6aea76650f55814efc9b45785485164937f3bd5ed6f2a4d384b8d4b'), 'vector', 'mg_note_setup_draw', 'MIDI NOTE SETUP lists the MIDI generators in its left half', pad_to=8), ), pokes=( Poke(0x40079248, stock_guard(0x40079248, 4, '8fbd3190028fe564c11b56e3e73e8eaf36925cbabf94164176eeb4c4f57bc6ac'), H('48780006'), 'VECTOR is machine chooser row six'), diff --git a/sdk/octabam/modules/vector/midi.c b/sdk/octabam/modules/vector/midi.c new file mode 100644 index 000000000..2c3fd705b --- /dev/null +++ b/sdk/octabam/modules/vector/midi.c @@ -0,0 +1,196 @@ +/* VECTOR on MIDI tracks: a MIDI generator (sdk/machines/octatrack/events.json ot_midi_generators). The same original + * phrase engine writes the track's note trigs and NOTE, VEL and LEN locks; the stock MIDI sequencer plays them, so + * tempo, track speed, swing, conditions and note-offs stay stock's. Its twelve controls are the track's ARP page and, + * after FUNC+AMP, its second page. They are kept in the track's arpeggiator note bytes, which the base gives a + * generator's track (Part 0x1832 + 16 t, value - 64: the -64..63 stock's validator keeps). Included after native.c + * (its Part, dirty and redraw helpers). MIDI track records: octabam docs/firmware/STEP_LOCKS.md, and on the owner's + * MKII (21 October 2026): trig mask 0 at +0, length +0x28, locks +0x30 + 32 step (NOTE 0, VEL 1, LEN 2). */ +#include "modwerk_events.h" +#define MIDI_TRACKS 0x48d0u +#define MIDI_TRACK_BYTES 0x8b0u +#define MIDI_LOCKS 0x30u +#define MIDI_TIMING 0x830u /* two bytes a step: micro timing and condition, as the audio record's 0x89a */ +#define MIDI_NOTES(t) (0x1832u + 16u * (t)) +#define MIDI_MARK 12u /* a thirteenth byte: 'V' once VECTOR wrote its controls there */ +#define MIDI_GATE_DEFAULT 8u /* LEN units: 4 to 8, about a sixteenth, as the stock LEN default 6 */ + +static unsigned midi_value(unsigned t, unsigned k) { return (uint8_t)((int8_t)current_part()[MIDI_NOTES(t) + k] + 64); } +static void midi_put(unsigned t, unsigned k, unsigned v) +{ + unsigned at = MIDI_NOTES(t) + k, part = U8(PART_IDX) & 3u; + current_part()[at] = (uint8_t)(v - 64u); + U8(SRAM_PART + part * PART_STRIDE + at) = (uint8_t)(v - 64u); +} +static unsigned midi_control(unsigned t, unsigned c) +{ + if (midi_value(t, MIDI_MARK) != 'V') { + static const uint8_t first[12] = {11, 11, 0, 1, MIDI_GATE_DEFAULT, 48, 1, 12, 12, 0, 0, 0}; + return c == 6 ? t + 1u : first[c]; + } + unsigned v = midi_value(t, c); + return v > vector_control_max[c] ? vector_control_max[c] : v; +} +static void midi_params(unsigned t, VectorParams *p, uint32_t *seed) +{ + uint8_t *bytes = (uint8_t *)p; + for (unsigned c = 0; c < 12; ++c) if (c != 6) bytes[c < 6 ? c : c - 1] = (uint8_t)midi_control(t, c); + *seed = midi_control(t, 6); +} +static void midi_save(unsigned t, const VectorParams *p, uint32_t seed) +{ + const uint8_t *bytes = (const uint8_t *)p; + for (unsigned c = 0; c < 12; ++c) midi_put(t, c, c == 6 ? seed & 127u : bytes[c < 6 ? c : c - 1]); + midi_put(t, MIDI_MARK, 'V'); +} + +static unsigned midi_bit(const uint8_t *r, unsigned mask, unsigned step) { return (r[mask * 8u + 7u - step / 8u] >> (step % 8u)) & 1u; } +static void midi_setbit(uint8_t *r, unsigned mask, unsigned step, unsigned on) +{ + uint8_t *byte = r + mask * 8u + 7u - step / 8u, b = (uint8_t)(1u << (step % 8u)); + *byte = on ? (uint8_t)(*byte | b) : (uint8_t)(*byte & (uint8_t)~b); +} +/* No trigs, trigless trigs or locks: a phrase may be written without replacing anything. Swing (mask 3) is a default. */ +static int midi_empty(const volatile uint8_t *r) +{ + for (unsigned i = 0; i < 24; ++i) if (r[i]) return 0; + for (unsigned i = 32; i < 40; ++i) if (r[i]) return 0; + for (unsigned i = 0; i < VECTOR_STEPS * 32u; ++i) if (r[MIDI_LOCKS + i] != VECTOR_NO_LOCK) return 0; + return 1; +} +/* A byte of the track record and its battery-backed copy, stored only when it changes. */ +static void midi_set(volatile uint8_t *r, volatile uint8_t *mirror, unsigned at, uint8_t v) +{ + if (r[at] != v) { r[at] = v; mirror[at] = v; } +} +/* In place, as stock's own editors store: module code and data run uncached, so a whole-record copy in and out cost + * about 0.8 ms of a 1.3 ms knob turn on the owner's MKII (21 October 2026); this touches the five masks, three locks + * a step and the timing of the steps that change. NOTE locks from the phrase's semitones over `octave` (the C at or + * under the track's NOTE), VEL from its volumes, LEN from its holds. Other locks and swing stay; old and new notes + * lose stale timing, conditions and trigless marks. `locked` gets whether each step keeps any lock (the lock index). */ +static void midi_write(volatile uint8_t *r, volatile uint8_t *mirror, const VectorPhrase *phrase, unsigned octave, + uint8_t locked[VECTOR_STEPS]) +{ + uint8_t masks[40]; + for (unsigned k = 0; k < 40; ++k) masks[k] = r[k]; + for (unsigned i = 0; i < VECTOR_STEPS; ++i) { + const VectorStep *s = &phrase->steps[i]; + unsigned at = MIDI_LOCKS + 32u * i, old = midi_bit(masks, 0, i); + int note = (int)octave + ((int)s->pitch - 64) / 5; + midi_set(r, mirror, at, s->active ? (uint8_t)(note < 0 ? 0 : note > 127 ? 127 : note) : VECTOR_NO_LOCK); + midi_set(r, mirror, at + 1u, s->active ? s->volume : VECTOR_NO_LOCK); + midi_set(r, mirror, at + 2u, s->active ? s->hold : VECTOR_NO_LOCK); + midi_setbit(masks, 0, i, s->active); + if (old || s->active) { + midi_set(r, mirror, MIDI_TIMING + 2u * i, 0); midi_set(r, mirror, MIDI_TIMING + 2u * i + 1u, 0); + midi_setbit(masks, 1, i, 0); midi_setbit(masks, 4, i, 0); + } + unsigned any = s->active; + for (unsigned k = 3; !any && k < 32; ++k) any = r[at + k] != VECTOR_NO_LOCK; + locked[i] = (uint8_t)any; + midi_setbit(masks, 2, i, !s->active && any); + } + for (unsigned k = 0; k < 40; ++k) midi_set(r, mirror, k, masks[k]); +} +/* On the UI task, into the current pattern's record and its battery-backed copy, then published through stock's + * track update (MIDI tracks are 8-15 there). Stock's lock index (0x400339d8) rescans every track of the pattern, 16 x + * 64 x 32 bytes, about 3 ms on the unit; only this track's bit changes, so it is set here: bit t of each step's byte + * at 0x46c7d2e4 (the MIDI tracks'), as that routine sets it. */ +static int midi_generate(unsigned t, int replace, int fresh) +{ + unsigned p = U8(PATTERN_IDX); + if (!valid_bank() || t >= 8 || p >= 16) return 0; + uint32_t bank = U32(BANK_PTR), part = U8(PART_IDX), off = p * PATTERN_STRIDE + MIDI_TRACKS + t * MIDI_TRACK_BYTES; + volatile uint8_t *r = (volatile uint8_t *)(uintptr_t)(bank + off), *mirror = (volatile uint8_t *)(uintptr_t)(SRAM_PATTERNS + off); + if (!replace && !midi_empty(r)) return 0; + const volatile uint8_t *pat = (const volatile uint8_t *)(uintptr_t)(bank + p * PATTERN_STRIDE); + unsigned length = pat[0x8e55u] ? r[0x28u] : pat[0x8e53u]; + VectorParams params; uint32_t seed; + midi_params(t, ¶ms, &seed); + if (fresh) seed = vector_next_seed(seed); + const volatile uint8_t *notes = current_part() + 0x3e2u + 32u * t; /* NOTE page: NOTE, VEL */ + if (!length || length > 64 || notes[1] > 127 || !vector_generate(&phrase, ¶ms, length, notes[1], seed)) return 0; + static uint8_t locked[VECTOR_STEPS]; + midi_write(r, mirror, &phrase, notes[0] - notes[0] % 12u, locked); + midi_save(t, ¶ms, seed); + dirty_part(part & 3u); + for (unsigned i = 0; i < VECTOR_STEPS; ++i) + U8(0x46c7d2e4u + i) = (uint8_t)((U8(0x46c7d2e4u + i) & ~(1u << t)) | locked[i] << t); + ((void (*)(unsigned))0x4009da20u)(t + 8u); + return 1; +} + +/* The page: stock's ARP descriptor with VECTOR's names and formatters in value-text cells, built in the audio page's buffer + * (never shown together); audio's generator_page rebuilds it once src_page_ready is clear. */ +static uint32_t midi_page_built = 0; +static void midi_format(char *out, unsigned c) +{ + unsigned v = midi_control(U8(TRACK_IDX), c); + if (c == 4) { ((void (*)(char *, int))*(const uint32_t *)(uintptr_t)(0x400d3e3eu + 0xcau + 8u))(out, (int)v); return; } + static const char *const roots[] = {"C", "C#", "D", "D#", "E", "F", "F#", "G", "G#", "A", "A#", "B"}; + const char *name = c == 2 ? roots[v % 12] : c == 3 ? vector_scale_names[v % 5] : + c == 11 ? (v ? "REV" : "FWD") : c == 10 && !v ? "OFF" : 0; + unsigned i = 0; + if (name) { do out[i] = name[i]; while (name[i++]); return; } + if (c == 8) { int s = (int)v - 12; if (s < 0) { out[i++] = '-'; v = (unsigned)-s; } else v = (unsigned)s; } + if (v >= 100) out[i++] = (char)('0' + v / 100); + if (v >= 10) out[i++] = (char)('0' + v / 10 % 10); + out[i++] = (char)('0' + v % 10); out[i] = 0; +} +#define MIDI_FORMATTER(n) static void midi_format_##n(char *out, int value) { (void)value; midi_format(out, n); } +MIDI_FORMATTER(0) MIDI_FORMATTER(1) MIDI_FORMATTER(2) MIDI_FORMATTER(3) MIDI_FORMATTER(4) MIDI_FORMATTER(5) +MIDI_FORMATTER(6) MIDI_FORMATTER(7) MIDI_FORMATTER(8) MIDI_FORMATTER(9) MIDI_FORMATTER(10) MIDI_FORMATTER(11) +static uint32_t vector_midi_page(uint32_t stock, unsigned second) +{ + if (src_page_ready || midi_page_built != stock + second + 1u) { + static void (*const formats[12])(char *, int) = {midi_format_0, midi_format_1, midi_format_2, midi_format_3, + midi_format_4, midi_format_5, midi_format_6, midi_format_7, midi_format_8, midi_format_9, midi_format_10, midi_format_11}; + const volatile uint8_t *source = (const volatile uint8_t *)(uintptr_t)stock; + unsigned page = second & 1u; + uint8_t *d = src_page; + { + for (unsigned i = 0; i < sizeof src_page; ++i) d[i] = source[i]; + label(d + 4, "VEC"); + for (unsigned i = 0; i < 12; ++i) d[9 + i] = (uint8_t)"VECTOR 1/2\0"[i]; + d[16] = (uint8_t)('1' + page); + for (unsigned i = 0; i < 6; ++i) { + label(d + 0x16 + 6 * i, vector_control_names[i + 6 * page]); + put32(d + 0xca + 4 * i, (uint32_t)(uintptr_t)formats[i + 6 * page]); + put32(d + 0xfa + 4 * i, 0x400467a4u); /* stock's value-text cell, as the NOTE page's */ + } + put32(d + 0x18a, 0x00005555u); + put32(d + 0x18e, 0x55555555u); + } + src_page_ready = 0; + midi_page_built = stock + second + 1u; + } + return (uint32_t)(uintptr_t)src_page; +} +static void vector_midi_knob(unsigned index, int delta, unsigned second) +{ + unsigned t = U8(TRACK_IDX), c = index + (second ? 6u : 0u); + VectorParams p, before; uint32_t seed, old; + midi_params(t, &p, &seed); before = p; old = seed; + uint8_t *parameter = (uint8_t *)&p + (c < 6 ? c : c - 1); + int value = (int)(c == 6 ? seed : *parameter) + delta; + if (value < 0) value = 0; + if (value > vector_control_max[c]) value = vector_control_max[c]; + if (c == 6) seed = (uint32_t)value; else *parameter = (uint8_t)value; + if (c == 6 ? seed == old : *parameter == ((uint8_t *)&before)[c < 6 ? c : c - 1]) return; + midi_save(t, &p, seed); + if (!midi_generate(t, 1, 0)) midi_save(t, &before, old); +} +static void vector_midi_yes(void) +{ + notice(midi_generate(U8(TRACK_IDX), 1, 1) ? "VECTOR GENERATED" : "NO CHANGE"); +} +/* Chosen: VECTOR's defaults, and a first phrase on an empty track; a track with notes waits for a control. */ +static void vector_midi_assign(unsigned t, unsigned on) +{ + if (!on) return; + VectorParams p = vector_defaults; p.gate = MIDI_GATE_DEFAULT; + midi_save(t, &p, t + 1u); + (void)midi_generate(t, 0, 0); +} +const struct modwerk_midi_generator vector_midi = { + MODWERK_MIDI_GENERATOR_ABI, "VECTOR", 'V', vector_midi_assign, vector_midi_page, vector_midi_knob, vector_midi_yes, 0, +}; diff --git a/sdk/octabam/modules/vector/native.c b/sdk/octabam/modules/vector/native.c index c1a597560..fa40cb232 100644 --- a/sdk/octabam/modules/vector/native.c +++ b/sdk/octabam/modules/vector/native.c @@ -70,11 +70,6 @@ int st_validate_part(uint8_t *part) { unsigned st_selected(void) { return valid_bank() && !U8(0x80000015u) && signed_track(current_part(),U8(TRACK_IDX)); } -static unsigned any_vector(void) { - if(!valid_bank()) return 0; - for(unsigned t=0;t<8;++t) if(signed_track(current_part(),t)) return 1; - return 0; -} unsigned st_type(unsigned type, const volatile uint8_t *ptr) { if(!valid_bank()) return type; volatile uint8_t *p=current_part(); @@ -256,9 +251,14 @@ static int generate_track(unsigned t, int replace, int fresh) { for(unsigned k=0;k>t&1u) && now[SIGNATURE+30u*t+2]==1) { + VectorParams p=settings(t); save_settings(t,&p,get_seed(t)); dirty_part(part&3u); } - unsigned t=U8(TRACK_IDX), pool=t<8?current_part()[0x22+t]:1; + unsigned pool=track<8?now[0x22+track]:1; U32(0x400d5f4cu)=pool==0?0x400d301cu:0x400d31aeu; } - unsigned want=any_vector(); - uint32_t bank=U32(BANK_PTR), part=U8(PART_IDX), track=U8(TRACK_IDX); + unsigned want=vector && !U32(0x80000012u); /* MIDI mode: the MIDI generator's layer */ unsigned changed=bank!=shown_bank || part!=shown_part || track!=shown_track; uint32_t *layer=layer_gen?st_layer:st_edit_layer; if(active && (!want || layer[0] || changed || layer_gen!=generator_view())) { diff --git a/sdk/octabam/modules/vector/prepare.py b/sdk/octabam/modules/vector/prepare.py index c59005e54..8e9571f9a 100644 --- a/sdk/octabam/modules/vector/prepare.py +++ b/sdk/octabam/modules/vector/prepare.py @@ -23,14 +23,19 @@ def main(): parser.add_argument('--output',type=Path,required=True) args=parser.parse_args() here=Path(__file__).resolve().parent + octatrack=here.parents[2]/'machines/octatrack' if args.output.exists(): parser.error('Output exists; use a fresh private build directory.') with tempfile.TemporaryDirectory(prefix='vector-cf.') as directory: work=Path(directory) unity=work/'vector.c' - unity.write_text('#include "engine.c"\n#include "persistence.c"\n#include "native.c"\n') + # On a card VECTOR is the one MIDI generator: it links the base's registry with its own record. + unity.write_text('#include "engine.c"\n#include "persistence.c"\n#include "native.c"\n#include "midi.c"\n' + '#define MG_FIXED vector_midi\n#include "midi_generators.c"\n') assembly=work/'vector.s' - subprocess.run(['m68k-elf-gcc',*FLAGS,'-I',str(here),'-S',str(unity),'-o',str(assembly)],check=True) - text=assembly.read_text()+'\n#APP\n'+(here/'hooks.s').read_text()+'\n.text\n.balign 2\n' + include=[x for d in (here,octatrack/'elekloader',octatrack/'include') for x in ('-I',str(d))] + subprocess.run(['m68k-elf-gcc',*FLAGS,*include,'-S',str(unity),'-o',str(assembly)],check=True) + text=(assembly.read_text()+'\n#APP\n'+(here/'hooks.s').read_text()+'\n'+ + (octatrack/'elekloader/midi_generators.s').read_text()+'\n.text\n.balign 2\n') # The shared native/browser linkers restore these from verified local OS. for name,address,length in REPLAYS: text+=name+':\n.space '+str(length)+'\njmp '+hex(address+length)+'\n' diff --git a/sdk/octabam/modules/vector/runtime.json b/sdk/octabam/modules/vector/runtime.json new file mode 100644 index 000000000..3ecd780fb --- /dev/null +++ b/sdk/octabam/modules/vector/runtime.json @@ -0,0 +1,16 @@ +{ + "schema": 1, + "contribute": [ + { + "to": "ot_midi_generators", + "order": 30, + "data": "vector_midi", + "replaces": [ + "mg_tap_site", + "mg_page_site", + "mg_setup_site", + "mg_note_setup_draw" + ] + } + ] +} From a8b82e51e2e8558f8a534e6ec0a36add51e5cf25 Mon Sep 17 00:00:00 2001 From: repeat98 Date: Wed, 21 Oct 2026 19:20:54 +0200 Subject: [PATCH 02/33] VECTOR 0.3.0-experimental: version, changelog and test record Co-Authored-By: Claude Opus 5.5 --- sdk/catalog.json | 2 +- sdk/octabam/modules/vector/TESTING.md | 39 +++++++++++++++++++ .../modules/vector/octamod.module.json | 7 ++-- src/community/module-changelogs/vector.json | 10 +++++ 4 files changed, 54 insertions(+), 4 deletions(-) diff --git a/sdk/catalog.json b/sdk/catalog.json index bcfc63c9a..b2607cb9b 100644 --- a/sdk/catalog.json +++ b/sdk/catalog.json @@ -104,7 +104,7 @@ }, { "id": "vector", - "version": "0.2.4-experimental", + "version": "0.3.0-experimental", "addedAt": "2026-10-06T08:02:00Z" }, { diff --git a/sdk/octabam/modules/vector/TESTING.md b/sdk/octabam/modules/vector/TESTING.md index e41e218db..002c0967e 100644 --- a/sdk/octabam/modules/vector/TESTING.md +++ b/sdk/octabam/modules/vector/TESTING.md @@ -32,6 +32,45 @@ Maximum observed native commit stack is 1,048 bytes; validation is 252. The 1,21 The current 110-profile VECTOR coverage matrix has 46 matching module-owned builds outside existing platform/logger writes and 64 matching refusals, zero mismatches. The changed original OS is refused. The source-only package build and complete importer inventory pass; `sdk/native-comparisons/vector.json` binds the current native source. Private VECT349A01 ELUP packaging round-trips to the exact tested MAIN; update SHA-256 `a2bc9e1892c5bda40083c61abe19c73c9ff64fd73ff9b88d975a2c0f5b456130`. The standard common worker and deployed download are verified separately during release completion. +## MIDI generator on the unit + +0.3.0 on the owner's MKII, 21 October 2026: development twins of the Modwerk base built from this branch (`build_core.py --dsp-loader --usb-midi --site-events --table-owners … --dev`), RAM-booted, VECTOR installed over USB as a runtime package (`try`), a disposable project (LIVE/PROJECT 261019), bank A, Part 1, MIDI track 1. Steps were sent with `scripts/device-send.py`; screens were read from `png:` captures; Part and pattern bytes with `mem:`. Not a card (non-USB) build on hardware: the card build was checked by octabam's native builder only (`module:verify`). + +| What | Result | +|---|---| +| No generator installed, MIDI mode, double-tap TRACK | nothing happens, as stock | +| VECTOR installed, double-tap T1 or SRC | MIDI NOTE SETUP opens with OFF and VECTOR in its left half; CHAN, BANK, PROG and SBNK unchanged; UP/DOWN move the highlight | +| YES on VECTOR | the arp step mask reads `4d56` ('M', 'V'); the arp note bytes hold the twelve defaults (value - 64) and the mark; MODE OFF | +| ARP page, FUNC+AMP, NO | TYPE, DENS, ROOT, SCAL, GATE, ACNT with their values; FUNC+AMP SEED, SPAN, OFST, ROT, RPT, DIR; NO back | +| DENS +2, then YES | 13 notes in 16 steps with NOTE/VEL/LEN locks (C minor around C3, VEL 100/81); YES gives seed 2 and a new phrase | +| PLAY with CHAN 1, MIDI recorded over USB (`midimon`) | the phrase as note-ons and note-offs on channel 1, the 16-step phrase repeating every 2 s at 120 BPM, accents and lengths as written | +| VECTOR removed on its own page | stock's ARP page and ARP SETUP return, no crash; reinstalled, the VECTOR page returns | +| MODE turned on while VECTOR was away, then VECTOR installed | MODE back to OFF (and a MODE 6 left from before: OFF on install) | +| Crash record during all of the above | unchanged (record 12, older than this work) | + +Cost, with the base's development profile (`modwerk_cost[24]`-`[27]`, DTIM3 at 132 MHz, read over `mem` 5 s apart; `cost.py` in the session's private tools): + +| State | Base's MIDI generator code per UI tick (61 a second) | +|---|---| +| No generator installed | 2.2-2.4 µs | +| VECTOR installed, audio mode | 4.1-4.2 µs | +| MIDI mode: NOTE page, VECTOR page, NOTE SETUP with the list, playing | 7.3-10.2 µs | + +A control turn rewrites the phrase on the UI task. Worst case measured: pattern length 64, DENS 16 (every step a note), PLAY running, 40 turns of TYPE and ACNT in 4 s, MIDI recorded throughout: + +| Build | Mean | Longest | +|---|---|---| +| Stock's lock-index rebuild, record copied in and out | 3.92 ms | 4.24 ms | +| Own track's lock-index bit | 1.76 ms | 1.95 ms | +| Plus the scale's pitches once a phrase | 1.29 ms | 1.47 ms | +| Plus the record written in place (0.3.0) | 0.51 ms | 0.66 ms | + +A temporary probe (not shipped) split the 1.3 ms build by stage: copying the record in 331 µs, the phrase 268 µs, writing it 178 µs, committing and mirroring 434 µs, saving and publishing 31 µs. The longest time between audio frames stayed 406-417 µs (normal 380-420) through every burst, and the recorded MIDI kept its grid: 96 note-ons 124-126 ms apart, every two-step span 249-251 ms. The audio track's `generate_track` got the same lock-index change; its other costs are as in 0.2.4. VECTOR's own audio UI tick reads the battery-backed Part and track numbers once a tick (it read them about 20 times): with VECTOR installed the machine tick fell from about 50 to 41 µs. + +The hoisted scale lookup in `engine.c` gives the same phrases as 0.2.4 over 18,144,000 parameter sets (a throwaway host comparison of both engines), and `test_engine.c` passes. `sdk/tests/test_machine_events.py` checks the base's registry on the host (`test_midi_generators.c`), the package glue and the port's sources. + +Not tested: a card build on the unit; a physical power cycle with a VECTOR MIDI track (RAM boots kept it: the battery-backed bank restore and the Part validator pass); a project save and reload; scenes and LFOs on a VECTOR MIDI track; MKI. Two RAM boots of development twins out of about fifteen did not come back on USB (one stall record: frames stopped 41 s after a boot with no module installed); a power cycle recovered both, and the next boot of the same image worked. It matches the RAM-boot trap of 19 October 2026 and was not reproduced. + ## Owner exception and remaining limits On 9 October 2026 the owner stated: "Approve release and closure with hardware reboot/audio unverified" after receiving the exact 0.2.4 private image and source patch. `sdk/vector-build-approval.json` binds this separate current-build-hardware exception to the source/image above. `hardwareStatus` stays `untested`; no physical reboot, audible playback, chip timing, maximum audio stress or hardware canary pass is claimed. The 0.2.3 approval remains historical and is not reused. Already reset projects need a known-good backup. The issue closure must name these limits and explain how to reopen. diff --git a/sdk/octabam/modules/vector/octamod.module.json b/sdk/octabam/modules/vector/octamod.module.json index 4bb59d7d7..193424fa8 100644 --- a/sdk/octabam/modules/vector/octamod.module.json +++ b/sdk/octabam/modules/vector/octamod.module.json @@ -3,7 +3,7 @@ "id": "vector", "key": "VECTOR", "name": "VECTOR", - "version": "0.2.4-experimental", + "version": "0.3.0-experimental", "category": "machines", "author": { "github": "repeat98", @@ -155,7 +155,8 @@ "Shares machine chooser hooks with Analog BD and FM Synth; the configurator and native builder reject those combinations.", "Sample must be tuned to the stated C reference. Generated pitch is limited to the native \u00b112-semitone range.", "Parameter edits and YES publish during playback. Custom Undo and bar-quantized replacement are not implemented.", - "Uses native pattern/track length, speed and swing. RPT sets a motif length within that track; no independent clock, swing or MIDI output.", + "Uses native pattern/track length, speed and swing. RPT sets a motif length within that track; no independent clock or swing. On a MIDI track it writes trigs and NOTE/VEL/LEN locks that the stock MIDI sequencer sends; it emits no MIDI itself.", + "MIDI tracks (0.3.0): chosen in MIDI NOTE SETUP's list; its controls take the ARP page and FUNC+AMP, and the track's arpeggiator stays off. Over USB it needs a base with MIDI generators. Tested on the owner's MKII over USB only; a card build on hardware, power cycles, project save/reload, scenes and LFOs on a VECTOR MIDI track remain untested.", "SRC generation knobs are request parameters, not p-lock/LFO/scene destinations. The normal EDIT view retains native playback controls.", "Generation owns note trigs, PTCH/HOLD/VOL locks and note timing/conditions. Every changed generator parameter or YES replaces those across the current track; other locks, recorder events and swing are preserved.", "The DRAM loader reserves 1,707 audio pages (10,487,808 bytes) shared across DRAM modules.", @@ -489,7 +490,7 @@ } ], "access": { - "location": "Audio track machine chooser: VECTOR, then the native-sized Static/Flex backing-pool modal. SRC main holds live phrase controls; SRC SETUP holds secondary controls. Double-tap TRACK reopens pool choice; push LEVEL toggles ordinary sample editing.", + "location": "MIDI tracks: MIDI NOTE SETUP's generator list (double-tap the track key or SRC), then the ARP page and FUNC+AMP. Audio track machine chooser: VECTOR, then the native-sized Static/Flex backing-pool modal. SRC main holds live phrase controls; SRC SETUP holds secondary controls. Double-tap TRACK reopens pool choice; push LEVEL toggles ordinary sample editing.", "steps": [ "Select an audio track. Open SRC page 2 (double-tap SRC), choose VECTOR and press YES. In the backing-pool modal, highlight STATIC or FLEX with UP/DOWN or LEVEL, then press RIGHT to enter that pool. YES also opens the highlighted pool; YES on a loaded sample slot assigns that pool and sample to VECTOR. Use the corresponding stock sample-slot and file-loading tools to load a tuned sample; NO returns from the sample browser.", "Double-tap the assigned TRACK to reopen the pool modal. LEFT returns to the machine list; RIGHT on VECTOR opens the modal. RIGHT in the pool modal opens the highlighted Static/Flex sample list. In a sample-slot list, LEFT returns to pool choice and RIGHT opens the stock file browser. Horizontal arrows navigate menus without changing the assigned pool; YES on a sample slot commits the pool and sample.", diff --git a/src/community/module-changelogs/vector.json b/src/community/module-changelogs/vector.json index 506a5f8f7..5805f31d3 100644 --- a/src/community/module-changelogs/vector.json +++ b/src/community/module-changelogs/vector.json @@ -1,4 +1,14 @@ [ + { + "version": "0.3.0-experimental", + "date": "2026-10-21", + "changes": [ + "New: VECTOR is a MIDI generator for the eight MIDI tracks. Double-tap a MIDI track's key (or double-tap SRC) and choose VECTOR in MIDI NOTE SETUP's list; its twelve controls take the track's ARP page, the second six on FUNC+AMP. It writes real note trigs with NOTE, VEL and LEN locks that the Octatrack's own MIDI sequencer plays, so tempo, track speed, swing, conditions, the channel and every note-off stay stock's. Over USB it needs a Modwerk base with MIDI generators; a card build brings its own.", + "Faster edits on both kinds of track: a control turn no longer rebuilds the lock index of all 16 tracks (about 3 ms on the unit), the scale's pitches are worked out once a phrase instead of once a step, and the MIDI phrase is written in place. A 64-step rewrite took 0.5 ms on the owner's MKII; the audio frames and the MIDI timing stayed steady while turning. The generated phrases are the same as 0.2.4's.", + "VECTOR's audio tick reads the Part and track numbers once a tick, and its key layer stays off in MIDI mode.", + "Tested on the owner's MKII over USB with development bases (21 October 2026): the list, both pages, generation, MIDI output, removal and reinstall. Not tested: a card build on the unit, a physical power cycle, project save and reload, scenes and LFOs on a VECTOR MIDI track, MKI. While VECTOR is not installed, a VECTOR MIDI track's ARP SETUP shows its stored controls as arp notes. The STATIC/FLEX bank problem of #596 is not addressed." + ] + }, { "version": "0.2.4-experimental", "date": "2026-10-09", From 0df82ead3d8abf11fd6ea717517d6c59bc84653a Mon Sep 17 00:00:00 2001 From: repeat98 Date: Wed, 21 Oct 2026 19:40:03 +0200 Subject: [PATCH 03/33] VECTOR 0.3.0: import the source-built packages; the importer expects VECTOR's fifth replay span Co-Authored-By: Claude Opus 5.5 --- scripts/import-module-build.mjs | 3 +- .../modules/vector/octamod.module.json | 2 +- 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 | 4 +- src/engine/assets/menu-recipes.json | 4 +- src/engine/assets/module-build.json | 30 ++++---- src/engine/assets/platform-writes.json | 4 +- src/engine/assets/requested-packages.json | 75 ++++++++++++++++--- 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 +- 14 files changed, 101 insertions(+), 49 deletions(-) diff --git a/scripts/import-module-build.mjs b/scripts/import-module-build.mjs index 97e5efed8..2278bcf6b 100644 --- a/scripts/import-module-build.mjs +++ b/scripts/import-module-build.mjs @@ -79,7 +79,8 @@ for (const rule of importedComposition.groups) { if (!isDeepStrictEqual(importedComposition, composition)) throw new Error('Machine composition recipe differs from authored source') for (const pkg of requested.objects) { - if (!Array.isArray(pkg.stockCopies) || pkg.stockCopies.length !== (['usbmidi_cfg', 'vector', 'polyui'].includes(pkg.label) ? 4 : 0)) throw new Error('Invalid inherited stock placeholder inventory') + // VECTOR's fifth is MIDI NOTE SETUP's drawer prologue (its MIDI generator registry on a card) + if (!Array.isArray(pkg.stockCopies) || pkg.stockCopies.length !== ({ usbmidi_cfg: 4, vector: 5, polyui: 4 }[pkg.label] ?? 0)) throw new Error('Invalid inherited stock placeholder inventory') if (!hash(pkg.sha256) || !/^[a-f0-9]+$/.test(pkg.code) || pkg.code.length !== pkg.bytes * 2 || sha(Buffer.from(pkg.code, 'hex')) !== pkg.sha256) throw new Error('Invalid requested authored object') for (const variant of pkg.variants) { const conditions = [...variant.whenModules, ...variant.withoutModules] diff --git a/sdk/octabam/modules/vector/octamod.module.json b/sdk/octabam/modules/vector/octamod.module.json index 193424fa8..54b3e5d30 100644 --- a/sdk/octabam/modules/vector/octamod.module.json +++ b/sdk/octabam/modules/vector/octamod.module.json @@ -490,7 +490,7 @@ } ], "access": { - "location": "MIDI tracks: MIDI NOTE SETUP's generator list (double-tap the track key or SRC), then the ARP page and FUNC+AMP. Audio track machine chooser: VECTOR, then the native-sized Static/Flex backing-pool modal. SRC main holds live phrase controls; SRC SETUP holds secondary controls. Double-tap TRACK reopens pool choice; push LEVEL toggles ordinary sample editing.", + "location": "MIDI tracks: MIDI NOTE SETUP's generator list, then the ARP page and FUNC+AMP. Audio tracks: machine chooser VECTOR, then the Static/Flex pool modal; SRC holds phrase controls, SRC SETUP the rest. Double-tap TRACK reopens pool choice; push LEVEL for sample editing.", "steps": [ "Select an audio track. Open SRC page 2 (double-tap SRC), choose VECTOR and press YES. In the backing-pool modal, highlight STATIC or FLEX with UP/DOWN or LEVEL, then press RIGHT to enter that pool. YES also opens the highlighted pool; YES on a loaded sample slot assigns that pool and sample to VECTOR. Use the corresponding stock sample-slot and file-loading tools to load a tuned sample; NO returns from the sample browser.", "Double-tap the assigned TRACK to reopen the pool modal. LEFT returns to the machine list; RIGHT on VECTOR opens the modal. RIGHT in the pool modal opens the highlighted Static/Flex sample list. In a sample-slot list, LEFT returns to pool choice and RIGHT opens the stock file browser. Horizontal arrows navigate menus without changing the assigned pool; YES on a sample slot commits the pool and sample.", diff --git a/src/engine/assets/bootstrap-package.json b/src/engine/assets/bootstrap-package.json index 20fd3e8b6..4d71fab03 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": "905faab2e4459b8bf80ea8040282b3bb7a9988f3", + "sourceCommit": "2970a7d731dd5815db6dc2fe1834069a10f068e8", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -38,7 +38,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.1.2-experimental", - "vector": "0.2.4-experimental", + "vector": "0.3.0-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.1-experimental", "recorder-loop-fix": "0.1.0-experimental", diff --git a/src/engine/assets/coldfire-packages.json b/src/engine/assets/coldfire-packages.json index 16b8ab5db..14084c59f 100644 --- a/src/engine/assets/coldfire-packages.json +++ b/src/engine/assets/coldfire-packages.json @@ -208,7 +208,7 @@ "sha256": "ccffbf72d45358bde585760b9230c668bf38ebf412ab23efc73732cf96024dca" } ], - "sourceCommit": "905faab2e4459b8bf80ea8040282b3bb7a9988f3", + "sourceCommit": "2970a7d731dd5815db6dc2fe1834069a10f068e8", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -230,7 +230,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.1.2-experimental", - "vector": "0.2.4-experimental", + "vector": "0.3.0-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.1-experimental", "recorder-loop-fix": "0.1.0-experimental", diff --git a/src/engine/assets/descriptor-recipes.json b/src/engine/assets/descriptor-recipes.json index 04a42c645..e674fb03b 100644 --- a/src/engine/assets/descriptor-recipes.json +++ b/src/engine/assets/descriptor-recipes.json @@ -4070,7 +4070,7 @@ ] } ], - "sourceCommit": "905faab2e4459b8bf80ea8040282b3bb7a9988f3", + "sourceCommit": "2970a7d731dd5815db6dc2fe1834069a10f068e8", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -4092,7 +4092,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.1.2-experimental", - "vector": "0.2.4-experimental", + "vector": "0.3.0-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.1-experimental", "recorder-loop-fix": "0.1.0-experimental", diff --git a/src/engine/assets/dsp-packages.json b/src/engine/assets/dsp-packages.json index b1cc14e12..86cc1b133 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": "905faab2e4459b8bf80ea8040282b3bb7a9988f3", + "sourceCommit": "2970a7d731dd5815db6dc2fe1834069a10f068e8", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -24,7 +24,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.1.2-experimental", - "vector": "0.2.4-experimental", + "vector": "0.3.0-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.1-experimental", "recorder-loop-fix": "0.1.0-experimental", diff --git a/src/engine/assets/menu-recipes.json b/src/engine/assets/menu-recipes.json index 926090f89..67a79918d 100644 --- a/src/engine/assets/menu-recipes.json +++ b/src/engine/assets/menu-recipes.json @@ -1357,7 +1357,7 @@ "caveLimit": 1074625596 } ], - "sourceCommit": "905faab2e4459b8bf80ea8040282b3bb7a9988f3", + "sourceCommit": "2970a7d731dd5815db6dc2fe1834069a10f068e8", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -1379,7 +1379,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.1.2-experimental", - "vector": "0.2.4-experimental", + "vector": "0.3.0-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.1-experimental", "recorder-loop-fix": "0.1.0-experimental", diff --git a/src/engine/assets/module-build.json b/src/engine/assets/module-build.json index f7345de57..7e41503a8 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": "905faab2e4459b8bf80ea8040282b3bb7a9988f3", + "sourceCommit": "2970a7d731dd5815db6dc2fe1834069a10f068e8", "nativeRevision": "b8deefc88b2c3e5f3c6158e364eb741df1924e1d", - "sourceTreeSha256": "6884a2b23c97ad5f9764af55178729b8ffbde3a1e145df1c8fe028af09876656", + "sourceTreeSha256": "efb378d106ee201ed41f3fec47549e35133d34988af2127c09a84c03eeb4d3eb", "compilerSha256": "bcb07ac6f0ceeebc84a187525647748558678250ec16d04d826693f7c825201f", "moduleVersions": { "spectrum": "0.1.1-experimental", @@ -26,7 +26,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.1.2-experimental", - "vector": "0.2.4-experimental", + "vector": "0.3.0-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.1-experimental", "recorder-loop-fix": "0.1.0-experimental", @@ -38,47 +38,47 @@ "files": { "dsp-packages.json": { "bytes": 84396, - "sha256": "2bad99c7abca31ee6098673730370c7e580732fa26760a9c5e52ea18216ce585" + "sha256": "7e6810df8db1e1cc0649888631cf490268de6cc21f853dab07bdc71dea92b13d" }, "resident-dsp.json": { "bytes": 25095, - "sha256": "207dc6215e6c7de2c76ea68764d2263d7a63766f54e60ae1e9b357ed22e803b9" + "sha256": "1bc660e264e5edef9ae864bdfbb00a06ec3d81cc6291d971a20cb8a716b6ac6a" }, "coldfire-packages.json": { "bytes": 353330, - "sha256": "772b7b214c49f81e897e581d1190effd965e97c2c363a2c32c5625184ddf5880" + "sha256": "47830e241a53ce5560f50733c86a884cd71e092abbde91aec7709fee868c5891" }, "rom-packages.json": { "bytes": 25481, - "sha256": "058a7d08cc5455978ea479dc9bd4c97cd8135539f70607c28c71190e5e25532a" + "sha256": "054b6a7a805498ff0de333104cca4a9e261d2511fe0f668e3c080b5c30e6afb2" }, "bootstrap-package.json": { "bytes": 3829, - "sha256": "51d22ffafc73f4de4b82b934e4a6ad4861780e04a3032cb9e08c57cc45f4da53" + "sha256": "bedb8ea11f8c13620151f774dbc54adabc1fa4e99047aed1e6f39deb5eda6f75" }, "menu-recipes.json": { "bytes": 35996, - "sha256": "2e5208d762990858dbfd1739d3ac7573c665a1fb231212da101cea54a6a05812" + "sha256": "1a98b4f37ba263ea4463ebd584b7cb820cf855c077dc8822df860802d28e5726" }, "descriptor-recipes.json": { "bytes": 78154, - "sha256": "03e7e03b7c447718b16a0ac10eecefb5e022527b10a8cd989770c519ce755631" + "sha256": "49aafc56f03f30b8bdac69b87e413c7d5c7399b00f68994840f1547aca33bae9" }, "platform-writes.json": { "bytes": 17771, - "sha256": "6bb23cf5cf11d5d92606a0aa2e383fcb928f4a5339424549d0fd05a8d11e7231" + "sha256": "46f3f612fd24813c6b3fa7c6ea8670846c8d35dd4c165b4f9c974ed6d2701db6" }, "requested-packages.json": { - "bytes": 1078489, - "sha256": "565e8d4a00127cb2deeb954385442ce869943ce48badf5969a0f7453aa61832f" + "bytes": 1108635, + "sha256": "7347bdc14504a59cf867419efc915a1b38e4dba60c2b323b5a1b7f9b60e641bb" }, "utility-packages.json": { "bytes": 12957, - "sha256": "d5fdaab3274a60dd5460af171b038e654a10ba941ea01499504c2594bfb54570" + "sha256": "d3b2b7d554d7b398ddfa8bc93d0cfdd6f0b913a7e5234b98288f1898aa26f415" }, "usb-audio-packages.json": { "bytes": 737599, - "sha256": "711911332af77bc05e6086c83f98f77d950bc2b93cb9a435a81289a5d1b90ab8" + "sha256": "c346b5f3d51615aa822d9ac12759ea25dd7008d53e036ee829ea1357ce50d4b5" } }, "approval": null, diff --git a/src/engine/assets/platform-writes.json b/src/engine/assets/platform-writes.json index 707aa364f..796909374 100644 --- a/src/engine/assets/platform-writes.json +++ b/src/engine/assets/platform-writes.json @@ -533,7 +533,7 @@ "sha256": "5d44ce960d87d22af41166c529bfa5e84c0427b8e4afb3d6d2ca8d880f5dcfd7" } ], - "sourceCommit": "905faab2e4459b8bf80ea8040282b3bb7a9988f3", + "sourceCommit": "2970a7d731dd5815db6dc2fe1834069a10f068e8", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -555,7 +555,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.1.2-experimental", - "vector": "0.2.4-experimental", + "vector": "0.3.0-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.1-experimental", "recorder-loop-fix": "0.1.0-experimental", diff --git a/src/engine/assets/requested-packages.json b/src/engine/assets/requested-packages.json index c9dd35c49..4dac28b91 100644 --- a/src/engine/assets/requested-packages.json +++ b/src/engine/assets/requested-packages.json @@ -1,7 +1,7 @@ { "schema": 1, "revision": "b8deefc88b2c3e5f3c6158e364eb741df1924e1d", - "sourceCommit": "905faab2e4459b8bf80ea8040282b3bb7a9988f3", + "sourceCommit": "2970a7d731dd5815db6dc2fe1834069a10f068e8", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -23,7 +23,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.1.2-experimental", - "vector": "0.2.4-experimental", + "vector": "0.3.0-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.1-experimental", "recorder-loop-fix": "0.1.0-experimental", @@ -437,7 +437,7 @@ { "label": "vector", "moduleId": "vector", - "version": "0.2.4-experimental", + "version": "0.3.0-experimental", "key": "VECTOR", "author": "repeat98", "nativeAuthor": "repeat98", @@ -446,40 +446,47 @@ "caveAddress": null, "source": "modules/vector/control.s", "sources": { - "modules/vector/control.s": "c4f829e437ffbde1275c00827031b694a86011013d37269077e4696818323471", - "modules/vector/manifest.py": "4d921f24256038797a99671534885b0bb9a27eaa79261b11136cf0a95a75af21" + "modules/vector/control.s": "33c9bef41f38759054cd061e501de67bfb84bf13b4d0d76590f8dc2a1d09faa2", + "modules/vector/manifest.py": "b9dec167f8bd4f1b691069cc89834f6c2a6717b874eb28629ef5c8c026d3d976" }, - "bytes": 23508, - "code": "7f454c4601020100000000000000000000010004000000010000000000000000000059f4000000260034000000000028000c000b4fefffe048d73c3c4ab900000000670e202f0024b0b900000000670000da41f900000000226f002493c81031880010c0b1fc0000000066f24bf900000000428243f90000000049f90000000045f900000000223c00000000265d91c810338800670c158088005288ab43b68866eed1ca4218b28866fa201c26004243484378182a00e8ad2800e08c13400003ab4012851344000213430001b082656a203c00000000781826002a0042434843e8ad2800e08c1340003358891345002c1344002e52825c8a5c81700c1343002db082668877fc5555202f0024283c5555555523c400000000a3790000000023c30000000023c000000000203c000000004cd73c3c4fef00204e75203c00000000781826002a0042434843e8ad2800e08c1340003358891345002c1344002e52825c8a5c81700c1343002db0826600ff1e60924feffc38720f48d77cfc206f03d071902f40003eb2806406740f2f42003e7010206f03d077a800012f43003ab083640672102f41003a700b206f03d075a800022f42004ab0826406720b2f41004aa940206f03d075a800032f420042b0826404a96f0042206f03d0707e73a800042f410046b0816406727e2f410046707f206f03d075a800052f42004eb0826406727f2f41004e700c206f03d075a800062f420032b0826406720c2f4100327218206f03d01028000875a800072f4200361f40005fb282640674182f420036206f03d0226f0036282f03d41028000943e9fff42f4900524a0067107240b2846500042e7180b08465000408206f03cc47ef02c84def03c8116f03d701002f480060224b50c0421011400003114000021140000122d8bdc966ea2a2f003e720b243c9e3779b942862e3c7feb352de3ad45ef00c849ef01c8260a2c452a2f03dc2205b581200142404840b3804c0708007e0f2200eea9b380223c846ca68b4c0108002e0042474847b187a740c0867fc74a80677ade8e2887204320062228fffc4bef03c843f51c00bea9fe00640a2081538059884a8066e441f70c002a4606829e3779b9528d588c5883214600c8bbc4675e22052e3c7feb352db5812c0d200142404840b3804c0708007e0f2200eea9b380223c846ca68b4c0108002e0042474847b187a740c0867fc74a80668628874a866684428041f70c002a4606829e3779b9528d588c5883214600c8bbc466a2300dc0ef003c5080e888671671c043f20c00201a41f70c007001114002c8b5c966f0720c760c202f004a5e804c41000273fc00fe92af004e7ffc00fe226f0052780c700c90af004a2f42005ac2ef03da286f0052d0824c4300024c471001307c001893ef003291ef004a98af0036a340e5a81f410059d9ef003242af002e2c492f4d00522f46003a2f40004e2a6f002e52af002e4a1367000144223c85ebca6b42832c2f002e428543f90000000070f42e2f03dc4c016800246f00422f4b003675f1aa00327c0064bf867e0f0a86b5297a4d220642414841bd812c3c7feb352d4c0618002c01eeaebd812c3c846ca68b4c0618002c0142464846b3862f46003222007c0cd2884c4610070f02672ab08e6c0001542204d2804a816d00013cb3c16f00013e2600528022417c0c2200d2884c4610070f0266d65280720db28066c02c2f0032266f00364a8567162006e0884c45000143f71c00262900640683fffffff4700fc086b0af003e642c7030c0864a80660ac4af004e4a826600015e202f004a0806000667060680fffffff4b08e6d06b9c06d0226007018a7422206e0a9c7fc00054c421000068300000040174300015480c0ef0048e48817400002200dc0824a80670000d80286003000004a86670000cc102f005917400003588bbbef003a6600fea82a6f00524aaf03d4675c71af005f763fb680650000b02c2f03d42206246f03cc2806206f03d053844c4600021628000a71c6206f00602a0643f20c009282240d2c0152814c4560004a0367062c049c8020064c42000647ef03c845f36c0020eaff00b3c866da4cd77cfca3404fef03c84e754481b3c16e00fec652806000fe9cb08c6e1045f75c002640528547eb000c254b00642204d2804a816d18b3c16f00feb222412600720d5280b2806600fe6c6000fea8448160e4102f03db174000036000ff342c2f03d4703f206f03d02206246f03cc28064c4600021628000a71c6206f006053842a06928243f20c00240d6000ff4e202f005a6000fea2206f03cc280047ef02c84def03c8116f03d701002f480060224b6000fbf671807840b0846400fbd460d64fefffd448d74c044242203946c82456227c20300c0c2f4800102040d1fc0008ed8042001239100b14cf3f420028243c0b0b00012f420020a7421f40002a302f00322f490024c28275fc18b2c0fc001e4c021800d1c173b0083e53814a81670001f64def001793c922090681000001e9d280a542b489641e1cb0180052897209b289671e22090681000001e9528ed280a542b48965e245f1083f52891cf0a80060c6102f0017720fa942c2807180e88830401f410020b4806500017e3008122f001874101f400023701fc0813040b4806500013c3408102f0019ea891f420021a342c282740fc4801f41002a12022042740bb488650001027180e8881f410022720c3040b280650000d6122f001a340871811f420026747eb480650000b0102f001b1f4100244a006d00008c122f001c1f40002574187181b480656871af001d1f410027723fb2806546122f001ee188758120427440b4886528100147ef00203f400028206f0010200820d320ef002430ef00284cd74c0410af002a4fef002c4e75724047ef002010013f40002860d4122f001e703fe188758120427440b48864b860de721871af001d1f410027723fb280649660da707f122f001c74181f4000257181b4806400ff7460d8727e102f001b1f4100244a006c00ff5260d8307c000c122f001a340871811f420026747eb4806400ff2a60d4720b7180e88830401f410022720cb2806400ff0060d0307c0010102f0019ea8934081f420021a342c282740fc4801f41002a12022042740bb4886400fec460c0307c0004122f0018741030081f400023701fc0813040b4806400fe8260b847ef002093c9244b22090681000001e94df1083fd280a542b489651a528914f0e80022090681000001e94df1083fd280a542b48964e614b018005289ad41b2896700fecc528a60c0203946c824560680c00000002f020c8007efffff624a327c0022723ca742207946c82456d1fc0008ed801039100b14cfc08275fc18b24c020800a342d1c071b09800d1c1528906810000001eb480650871907453b480670e0c810000012c66bc241f42804e7571a800017432b48066e871a8000253804a80670a71a8000255804a8066d4241fa3404e754feffff42f0e2f0271b9100b14cc2c6f00242f0041ef000d4ebafcbe588fad40b08e675cab42200eb48e6402538071b7080920402f2f00302f2f003070fec0af003043f90000000073b1e8002f002001b1c164022008c0fc007f4c4100002f002f2f00302f2f00302f2f00304eb9400479b44fef001c241f2c5f4fef000c4e751039100b14cc227946c82456a7421239100b14cfd3fc0008ed807180c282c0fc001e204071fc18b241e801f14c001800d3c110318800727fc28020416000ff76518f2f02740b202f00182200206f00105c81226f00142f6f002000042f6f00240008b4816406241f508f4e752f6f000800242f6f000400202f41001c2f4000182f4900142f480010241f508f6000fef2598f2f02740b202f0014222f000c206f0010226f001c2f6f00200004b4806406241f588f4e752f6f000400202f49001c2f4000182f4000142f4800102f41000c241f588f6000feaa4fefffe448d7401c242f002441ef001171b9100b14cc2f004ebafb66588fad40b082676cab40b082653c71b728112202a3435581b6816500009255824a826700012aab434c43000141f900000000226f002020701c00101812c066fa4cd7401c4fef001c4e7571b72810780bb882660001124a80670000e6226f002041f900000000101812c067d4101812c066f460cc1039100b14cc227946c82456a7421239100b14cf77fc18b2d3fc0008ed80787f7180c282c0fc001e20404c03180041e801f1d3c110318800c0847663b68064587864760a2200a54e4c441001206f0020a74906810000003010c122004c43100124014c43200422040681000000301081206f0020d1ce740a4c42000142030681000000301081206f0020118398004cd7401c4fef001c4e75206f0020a34942817409b48064d02c49760a224122004c431001548924014c43200422040681000000301081206f0020d1ce60aa226f002041f9000000006000ff1a740c4c42000141f900000000226f002020701c006000fed6780ab88266144a806600ff3e226f002041f9000000006000fee851824a826600ff2822000681fffffff44a816d0e20017663b6806500ff186000ff6c206f0020740c94802002a54910fc002da3417409b4806400ff306000ff5c700a2f4000086000fe1c70082f4000086000fe12ad6f00086000fe0a71b9100b14cc4feffff441ef00012f004ebaf976588f4a2f000b671641f900000000226f0010101812c066fa4fef000c4e75226f001041f90000000060e84feffff42f0271b9100b14cc41ef0005ab422f004ebaf93471af000c588f41f9000000004c420001226f001420701c00101812c066fa241f4fef000c4e754feffff42f02740c71b9100b14cc41ef00052f004ebaf8f671af000b588f41f9000000004c420001226f001420701c00101812c066fa241f4fef000c4e754fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf8b471af0025588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf7e471af0023588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf71471af0022588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf64471af0021588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf57471af001e588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf4a471af001d588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d8148006090202f0004727f5280c0814e752f032f02206f0010a942226f000c102800037380b481640270041210e988760f7581b6826402720f808112801028000a6702700112280001eb8876107581b682640272108081740c13400001102800067380b4816402700c12280002e988760b7581b6826402720b8081747e13400002102800047380b4816402707e13400003102800056a02707f134000047618102800077380b6816402701813400005743f102800087380b4816402703f134000067640102800097380b68164027040727fc2af00141340000713410008241f261f4e754fefffd848d75c1c2f2f00342f2f003449ef00272f0c4ebaff16362f003a9dce4fef000cc6fc001e141ca540b08e64000086267c100b14cfa7441013227946c82456d3fc0008ed80121345ee01e9528ed5c3c084c28479fc18b24c0408004c0418002040d1fc100a4ece7009d3c11382a8001182a800b08e66ae1013227946c82456a7421213d3fc0008ed80c082c2824c0408004c04180078022040d1fc100a4eced3c11384383e1184383e4cd75c1c4fef00284e75267c100b14cfa7441013227946c82456d3fc0008ed80121345ee003f528ed5c3c084c28479fc18b24c0408004c0418002040d1fc100a4ece7009d3c11382a8001182a800b08e6600ff2a6000ff782f02720f206f0010a942226f00081010c08112807190e8881200b4806402720413410003721f741010280001c0811200b4806402721013410001a341740f71a80001ea88c0811340000a10280002c082740b1200b4806402720b13410002740c71a80002e8881200b4806402720c13410006747e102800037380b4816402707e13400004102800046a02707f134000057418102800057380b4816402701813400007743f102800067380b4816402703f134000087440102800077380b4816402704013400009727f10280008206f000c241fc28020814e75598f2f0a2f02202f0010222f0014206f00184a80672c4a81672845e8ffff743fb48a651e747fb4af001c65162f4800182f4100142f400010241f245f588f6000ebcc241f4280245f588f4e75222f00044a81675a71fc0919b0af000864502001204106800000004052884a28ffff663eb08866f42041200141e8004806800000005052884a28ffff6624b08866f4204106810000085941e80059719052880c80000000ff6608b28866f0a3404e7542804e754fefffd848d73cfc262f002c4a8367000168202f00300c80000009196300015a4aaf003467000152206f0034723f18280100200453807180b2806500013c4aaf003866122f2f00302f034ebaff4e508f4a806700011a7984246f00344281204a1010a3457580ba826500010eb284650001144a0066000102528158887040b08166de264322432843428547eb005943e9007949ec089aaf41c2852805e68caf48a34291c4d1c37190e2a0c0824a1267000132142a000116824a1267000120142a00021742000d4a126700010c142a00031742000fa342e3aa12104a12670000ee828210814a8066044a12673e420042143a7c000f42819284d2839bc4307c004f194000012002468091c41e353800ce801b8738002a411e2d001fce801b47001f12303800c08111803800204b4281101846804a0056c0710044808280b1c966ee307c001791c4d1c310104a1266784a816774848010825285588a47eb0020548c43e900207040b0856600ff2ca3404cd73cfc4fef00284e754cd73cfc42804fef00284e754a006700fef0102800017a787580598071805982ba8065dcab454c4528004a8066d275a800027a7eba8265be4a2800036db8528158887040b0816600fea06000febe4682c48060882e024687c2876000ff0e50c26000fef650c26000fee250c26000fed02f02202f000caf41206f0008b280651c73b00822a342b4816512721e74534c01080041f0083c7190b4806706241f42804e7571a800017232b28066f071a8000253804a80671410280002a541241fb3804a0057c0710044804e75241fa3404e754fefffc8203946c824560680c000000048d744040c8007efffff630c42804cd744044fef00384e75207946c82456a7411039100b14cf75fc18b22f2f003cd1fc0008ed80c0814c020800487008004ebaff50508f4a8067c61039100b14d0740f73802f410018b48165b2322f003e227946c82456488041f9000000002f49001c1439100b14cf246f001cc2fc091a1f4200272c413200c2fc8ed843f618004df298002f4900209dc81030e80010c0b1fc0000000066f24aaf0040670001f871fc8e55206f001cd1c14a3008006700020e1039000000007180743f22005381b4816500ff3a2f2f003c41ef00312f4000104ebaed48342f0042588f207946c82456d1fc0008ed801239100b14cfc4fc001e202f000c2242a742c28275fc18b243e901f14c021800747fd1c112309800c4812f4200284aaf0044670c2202747f5281c4812f420028342f003e207946c82456d1fc0008ed801239100b14cfc4fc00182242a742c28275fc18b243e901234c021800747fd1c173b09800b4816500fe9e2f2f00282f012f00486f00394879000000004ebae77e2f2f00544879000000004878091a4879000000004ebafc0c4fef00244a806700fe68226f001cb3f946c824566600fe5873b9100b14d0b2af00186600fe4a73af002775b9100b14cfb4816600fe3a226f002093fc0000000041f9000000002f49001845f0e800121875922f4a00102f4200147581b4af0014670e1481226f001845e8ffff13928800b1fc0000000066d22f2f0028486f00312f2f00442f4000184ebaf8f2a742122f00332c7946c82456ddfc000950484fef000cc28214163242a342e3aa204222022409828224081c811239100b145e828213c1100b145e207946c82456d1fc0009b332a350a379100f85984eb940027e004eb9400339d82f2f003c4eb94009da20588f4cd74404a37946c7c72c202f000c4fef00384e754878091a4879000000002f4100144ebafa8e508f222f000c4a806600fdee4cd744044fef00384e7571fc8e53103008006000fdf04e56ffe041eeffea2f0a2f0273b9100b14cc2f012d41ffe04ebaeb38322effe2588f207946c82456d1fc0008ed803d6efff2fffd1d6efff4ffff2d6effeefff92d6effeafff5c2fc001e1039100b14cf2241a74143e901f1c08173fc18b24c010800d1c012309800707fc280ab407581b0ae0008657a43eeffead3ee0008206e000c7391d1c14a886d000082246e0008203c0000000071b20800b1c06c022008b0816740128020022f00486effea2f2effe041faf78e2d48ffe44e9042a7a3672f2effe04ebafc524fef0018206effe44a806744a1674eb94004d948a37946c7c72c588f242effd8246effdc4e5e4e75ad40b0ae00086742222e0008206e000c43f618e97391d1c14a886c804a8167d442001280200260902f02486efff52f2effe04e904fef000ca1674eb94004d948a37946c7c72c588f60aa202e000cd0824a806d3c727fb2806c02707fb08267942f00486effea2f2effe041faf6e62d48ffe44e9042a7a3672f2effe04ebafbaa4fef0018206effe44a806600ff5860984a016700ff6042802f00486effea2f2effe041faf6ae2d48ffe44e9042a7a3672f2effe04ebafb724fef0018206effe44a806600ff206000ff60203946c824560680c00000002f020c8007efffff62084a398000001567064280241f4e751239100b14cc207946c82456a7421039100b14cfd1fc0008ed807381c0822f0173fc18b24c010800487008004ebafaac508f4a8067c42039000000004a8066ba4a3946c7d8d866b44ab9460d173a66ac4ab9460d169457c0241f710044804e754fefff78428148d75cfc242f008c284245ef00289dce28024283264a06840000003c49ec002271b41800a346bc80650c41f648007e537190be80674252814dee001e47eb000cbdfc000000f066d82f02206f009442854e90588f91c80b0366000086528541e8001e45ea000cb1fc000000f066e84cd75cfc4fef00884e7571a800017c32bc8066b471a8000253804a80670a71a8000255804a8066a0a340e3a891c8868043f6883cab47be88642c2c08ad474c47600043f60800700c43e901ecd3c21791880042115288b0886700ff6e43f6883cab47be8865d4d3c2179188004211528860be428147f02800ab44b881651449f21800ab442242d3c11194983c5281b88164ec2c01ad474c47600449f21800528143f34800780c135401ecb88166ca528541e8001e45ea000cb1fc000000f06600ff286000ff3c487a13f82f2f00084ebafebc508f4e75203946c824560680c00000002f020c8007efffff62084a39800000156706241f42804e751239100b14cc207946c82456a7421039100b14cfd1fc0008ed807381c0822f0173fc18b24c010800487008004ebaf8de508f241f4e75203900000000b0b946c82456670442804e751039100b14cfa741c081b0b90000000066ea71b9100b14ccb0b90000000066dc6000ff724fefffec70312f0a2f02226f0020a342206f0024b08956c173014481b4886700008ea340e3a82439000000002f420014c4804a82665e4a886632a340244174fd45f21a00d08a45f90000000020320c0022005381b48165322f4900202f480024241f2240245f4fef00144ed12441a54045f21a0074fdd08a45f90000000020320c0022005381b48164ce241f245f4fef00144e754a8866f24680c0af0014241f245f23c0000000004fef00144e752f4100102f4800082f49000c4ebafeb4222f0010206f0008226f000c4a806700008a103946100b1d08000005667c703eb089677c7431b48966702f4100102f4800082f49000c4ebafcac222f0010206f0008226f000c4a806750a34081b9000000001039100b14cca367a36771802f004ebaf7e04fef000c4a80677048780020203c000000002f004eb94005a2b8a1674eb94004d948a37946c7c72c4fef000c241f245f4fef00144e7542806000fee04a3946c7d8d866f24ab90000000057c0a54183b900000000a1677100448023c0000000004eb94004d948588f241fa37946c7c72c245f4fef00144e7548780020203c000000002f004eb94005a2b8a1674eb94004d948a37946c7c72c4fef000c608e203900000000b0b946c8245667024e751039100b14cfa741c081b0b90000000066ec71b9100b14ccb0b90000000066de4ebafd7e4a8067d6a37900000000a379000000004eba10d6a1674eb94004d948a37946c7c72c588f4e75203900000000b0b946c8245667024e751039100b14cfa741c081b0b90000000066ec71b9100b14ccb0b90000000066de4ebafd244a8067d642b900000000a379000000004eba107ca1674eb94004d948a37946c7c72c588f4e75203946c824560680c00000002f020c8007efffff6232203946c82456a7421239100b14cf06800008ed80206f000c41e8ffdec28275fc18b24c021800af42d08122089280b4816408202f0008241f4e75a342b4af000865f02f012f004ebaf5ce508f4a8067e2ab6f0008202f0008241f4e752f032f024ab90000000067084ebafcd64a806672203946c824560680c00000000c8007efffff6236223946c82456a7431039100b14cf06810008ed803040202f00100680ffffffde2408c48377fc18b24c032800d2829081af42b480640a202f000c241f261f4e75a343b6af000c65ee2f002f014ebaf544508f4a8067e0241fab40261f4e75203946c82456a7421239100b14cf77fc18b220790000000006800008ed8041e80022c2824c031800d081d088b0af00106600ff5c241f203900000000261f4e754fefffc4203946c824560680c000000048d74c0c0c8007efffff62000166af40b0af00446500015c223946c82456206f004091c12c48ddfcfff712802f41002473fc18b2200e4c41000220424a8266000132bdfc000062c762000128222f0044a342246f004043f218227391b48164000178a36f0020222f0044701e4c0018004aaf004866624ab900000000670001062f4100142f4800184ebafb84222f0014206f00184a80670000ec203946c8245606800008ed801439100b14cf3242a7422609c68275fc18b24c023800d083b0af0040660000c0262f0044b6b900000000660000b2a56f00482f2f00442f2f00442f41001c2f4800204ebaf3fa508f222f0014206f00184a80670000e8226f0040203c1001614e90af002441f1183c43f118422209227c100162fe93ef00241190080045e801b0139288005288b28866eea340b0af0048662c73fc18b2200e207c46c8245623d000000000a379000000004c410000222f004423c10000000023c0000000004cd74c0c202f00204fef003c4e754cd74c0ca36f0020202f00204fef003c4e752f2f00442f2f00442f41001c4ebaf352508f222f00144a806700ff5e4203206f0040203c1001614e226f004090af00241183183e1183183d1183183c41f1183c43f118422209227c100162fe93ef00246000ff4877912f4300206000fe86226f0044743248690001487900000000200f06800000003b2f002f4000282f410020246f004c2f48002445f2183c2f4a00344ebaed8614bc0053226f004c222f0020244145ea003f1382183d74021382183e224143e901e9202f00284fef000c2f490028206f00182f4a002c226f0028a542d3c8b488641826405288246f0040740915939800b4886700fe90528060dc246f00402640226f002cd3c85288159b9800200b60c6518f2039460e5e302f0b2f0a4a80671047f900000000b7f9460e5e2c670a4280245f265f508f4e75204041e800242f48000c2f082f40000c4eb94003567c226f000c588f4280246900282f1ba16745eaffe92f0aab672f2f001c2f3c400ba8762f4000204eb940012bd84fef0018202f0008b0b9460e5e4067165f8aa341b2806640245fa37946c7c72c265f508f4e75226f000c2051a167486a00054868fffb486affffa7672f092f4000204eb9400122544fef00185f8aa341202f0008b28067c02f1ba1672f0aab67a3402f2f001c2f3c400ba8762f4000204eb940012bd84fef0018202f0008b0b9460e5e40668a609e4ebaf8384a80670001004ab9460e5e30660000f64ab9460e70e0660000ec207c46c82456a74123d0000000001039100b14cfc28023c10000000071b9100b14cca567ad672f3c460e5e3823c00000000042b90000000042b9000000004eb94007ec604fef000c207946c82456a7411039100b14cf227900000000d1fc0008ed80c08173fc18b24c010800d1c071b098222f002f3c460e5e384eb94007edb041f90000000023c8460e5e28203c0000000023c0460e5e2c42b9460e5e342f3c4006d754a36742a7a167487800404878006e4eb94005829c4fef002023c0460e5e304a80672442a74879000000002f004eb9400570b82f3c400ce0c44eb9400314944fef00106000fe084e754ab9460e5e30670e203c00000000b0b9460e5e2c67024e754eb94006d75442b9000000004eba0a764ef94007893c598f4ab9460e5e30670e203c00000000b0b9460e5e2c6704588f4e754ebaf73e4a8067f42239460e5e40a340b08165e82e814eb94006d7544ebaf7224a8067d823d700000000a379000000004eba0a20a1674eb94004d948a37946c7c72c588f588f4e754feffff4222f0010206f00144ab9460e70e0677e4ab90000000066122f4800142f4100104fef000c4ef94007893c2f4100042e884ebaf6c2222f000420574a8067da4ab9460e70e067d22039000000002f4000084eb9400789e442b9000000004ebafe024ab9460e5e306726203c00000000b0b9460e5e2c66182f2f00082f3c460e5e384eb94007edb04fef00146000fce24fef000c4e75518f222f000c206f00104ab9460e70e067124ab9460e739a660aab40b0b9460e738e67102f4800102f41000c508f4ef94007909c2f4100042e884ebaf5ca222f000420574a8067dc4eb9400789e4508f6000fd7a598f4eb940031f282e804ebaf5a64a80672c4ab90000000066244a3946c7d8d8661c4ab9460d173a66144ab9460d1694660c2f174ebad6e02f400004588f2017588f4e75598f2f02203946c824560680c0000000222f000c0c8007efffff62084a39800000156708241f2001588f4e751039100b14cc207946c82456d1fc0008ed8075801039100b14cf2242a7422f09c08275fc18b24c020800487008002f41000c4ebaee3e508f222f00044a8067b84ab90000000066b0ab40b0b9460d5c3066a62f41000c241f588f6000d64a4feffff4ab402f02222f0014206f0018b0816408241f4fef000c4e75203946c824560680c00000000c8007efffff62e44a398000001566dc1439100b14cc227946c82456d3fc0008ed801039100b14cf75822f42000ca742c08275fc18b22f2f000c4c020800487108002f4100102f48000c4ebaeda0508f222f00084a8067944ab900000000668c4a3946c7d8d866844ab9460d173a6600ff7c4ab9460d16946600ff724ab9000000006600ff682f6f000400182f410014241f4fef000c6000f09c2f02ab40b0af00086406241f42804e75203946c824560680c00000000c8007efffff62e64a398000001566de1239100b14cc207946c82456a7421039100b14cfd1fc0008ed807381c0822f0173fc18b24c010800487008004ebaecf8508f4a8067a84ab90000000066a02f2f000c206f000c486800064ebaf022508f241fa3404e754fefffd448d75c0c4ab90000000067104ab9460e70e0660003b242b9000000004ab900000000660002fa2479800065b8a340b08a6700031c47faddce23ca00000000203946c824560680c00000000c8007efffff620000b0387c003e9dce45faec70207946c82456a7431039100b14cf73fc18b22f0ed1fc0008ed80c0834c010800487008004e92508f4a80672a207946c82456d1fc0008ed801039100b14cf75fc18b2c083a3434c020800d1c071b0c800b680670000ba528e49ec001e7008b08e669e73b9100b14ccaf42b481650002ce207946c82456a7431039100b14cf75fc18b2d1fc0008ed80c0834c020800d1c04a301822660002a6203c400d301c23c0400d5f4c4e93247946c8245673b9100b14cf77b9100b14cc2c402679000000002039000000002843b5f900000000670000e84a8b67204a8067000272203c000000004ab900000000670002c64cd75c0c4fef002c4e754a8067000252203c000000004ab90000000066e2600002a42f0e41ef0025a7422f4000204ebad9ec77fc18b2207946c82456d1fc0008ed801239100b14cf43ec01b349ec001ec282747f4c031800d1c112309800c4812e82486f00252f0e4ebae6a24fef000c1639100b14cf202f001c227946c82456d3fc0009504812113043a7432408c483e5a8828012811239100b145e808113c0100b145e207946c82456d1fc0009b332a350a379100f85984eb940027e00528e7008b08e6600fe4e6000feacb2b9000000006600ff12b6b9000000006600ff084a8b670002144a80674841f9000000004a8e670a4ab900000000670002184ab9000000006600fefa2f082f41001c4eb94003146c42b90000000023ca0000000023cc00000000222f001c588f23c1000000002079460d165c4a8e6700fec44a886700febe4a906600feb8223c00000000207c46c7dd7643f90000000020100c80000000006704238088005888b1fc46c7dd8266e8207c46c7deae43f9000000002010b0816704238088005888b1fc46c7deba66ec4ebaeeee23c0000000004a80670000f841f90000000042902f084eb940031494a167a379000000004eb94004d948a37946c7c72c508f4cd75c0c4fef002c4e754ebaf0d64a80670000b44ab9460e5e306600fcf64ab9460e70e06600fcec4ebaf8242479800065b8a340b08a6600fce8a34147fadab2b2b9000000006700fcdc4e934a806700fcd499cc4dfae9c242a7740842a72f0c4e96528c4fef000cb48c6700fcb842a7740842a72f0c4e96528c4fef000cb48c66d66000fca0203c400d31ae23c0400d5f4c6000fd5a42b90000000023ca0000000023c10000000023cc000000006000feb84ebaf02e4a806600fc4e42b9000000006000fc4442b9000000006000fc4441f90000000042902f084eb940031494a167a379000000004eb94004d948a37946c7c72c508f6000ff082f002f41001c4eb94003146c42b90000000042b90000000023ca00000000222f001c588f23cc0000000023c1000000006000fe3c4a806700fe3641f9000000004a8e6700fdf64ab9000000006600fdec2f4100182f48001c4ebaed66222f0018206f001cb08b6600fdd223ca000000004cd75c0c4fef002c4e75202f00040c800000000567044efa02fe41fa023020084e75400b3eac400b3e98400b7c67400b5413400b7a63000000004fefffec48ef030200082e802f4800044ebaf1d64cef030200084fef00144e754fefffe048ef0307000c2409d48006820008ed802e822f41000474000c8400000005660274012f4200084ebaf2d40c8400000005660228004cef0307000c4fef00204efa028448794005a61c600648794005a8562239460d5c304fefffe048ef030d000c2609d68006830008ed802e832f42000476000c8100000005660276012f43000826014ebaf2780c83000000056702200322004cef030d000c4fef00204e7516102f0071036100ff362600201f79034879400bb7044ef9400585e67110610000582f004879460e73864ef940078890610000124ef94003d722610000084ef94004c3746100fef841fafedc22300c004e7571104fef00186100fee44ef94003c986711061000012b48066064ef9400786ce4ef9400786fc4fefffec48ef030200082e802f4800044ebaf10e4cef030200084fef00144e752f082f01207946c8245673b9100b14cfc2fc18b2d1c173b9100b14ccd1fc0008eda271b01800221f205f4e750c820000000566344fefffe448ef0303000c2e8b2f4300044ebaf9222f4000084cef0303000c4aaf00084fef001c67064ef94003a6246100ff9c24004efa01300c8600000005662a4fefffec48ef030300042eaf005c4ebaf7982f40005c4cef030300044fef00142f006100ff682c00201f4efa01084eb94005213c4eb94007e9404ebaf93a4ef940052228564543544f5200004878ffff4878ffff4ebaf70e4ef94004e4d04feffff048d703034ebaecae4a80670c4cd703034fef00104efaf4644cd703034fef00102f0a4ab9460e70e04ef9400791ec4feffff048d703034ebaf3504a80670a4cd703034fef00104e754cd703034fef00104fefffe848d73c0c4ef94006d78c7c010c800000000566224feffff048d703034ebaec424a80670a4cd703034fef0010600c4cd703034fef0010bc8065064ef940077b624ef940077b704efaec084fefffa048d77cfc4ef9400023200000000000004ef9400334de0000000000004ef94007982200000000000000004ef94003a53600000000000000004ef94003cda000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffff0000000000000000000000000000000000000000ffffffffffffffff31000000000000000000000000000000000000000000000000003e00000000000000000000000000000000000000000000000000ff00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000002000000000000000000000000000000000000000000030000000000000000000000000000000000000000000400000000000000000000000000000000000000000005000000000000000000000000000000000000000000ff000000000000000000000000000000000000000000465744004f46460052455600564543544f522047454e455241544544004e4f204348414e474500ab204d414348494e453a564543544f5220bb004300432300440044230045004600462300470047230041004123004200303031205354415449430030303220464c455800434852004d494e004d414a00444f520050454e5400545950450044454e5300524f4f54005343414c00474154450041434e540053454544005350414e004f46535400524f5400525054004449520000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000fff05ad0ab506ad04a900000000000000000000000000000000000000000f100b047e7f7f0c183f40010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b0b000120300c0c00000000000000000000000000000000000000000000000100000000000000000400fff10000000000000000000000000300000100000000000000000000000003000003000000000000000000000000030000050000000a000000000000013e02000001000000190000001c00000004010000030000002800000018000000040100000300000038000000200000019201000003000000410000003000000030010000070000004b00000a9e00000048020000010000005c00000a4e00000050020000010000006d0000013e000005280200000100000084000000700000000a010000070000013d000006660000029e020000010000008b000009040000008a02000001000000960000098e000000c00200000100000000000000000000000003000006000000b300000ae6000001dc02000001000000c2000000000000003001000007000000ca00000cc20000000a02000001000000d400000ccc0000000a02000001000000dd00000cd60000000802000001000000e600000cde0000003e02000001000000f000000d1c0000003e02000001000000f900000d5a0000003e020000010000010200000d98000000d0020000010000010b00000e68000000d0020000010000011400000f38000000d0020000010000011d00001008000000d00200000100000126000010d8000000d0020000010000012f000011a8000000d00200000100000138000013560000010402000001000001460000182c000002e80200000100000155000002b30000091a01000003000003e2000001b200000101010000030000015d00001b14000001ba020000010000016c00001cce00000084020000010000017b00000bf200000004010000030000018500001ef60000003602000001000001920000001400000004010000030000019c000000100000000401000003000001a60000000c0000000401000003000001b100000bce0000000401000003000001b600000bd60000001801000003000001bc000020ec0000005a02000001000001c6000000000000000401000003000001d2000000040000000401000003000001de000021460000005a02000001000001ea000000080000000401000003000001f7000000680000000801000007000002030000006000000008010000070000020e00000bd200000004010000030000021d00000bee00000004010000030000022700000c0200000004010000030000022e00000bfe00000004010000030000023900000bfa00000004010000030000024400000bf60000000401000003000000000000000000000000030000070000025046c82456000000000000fff1000002590008ed80000000000000fff10000026200003294000000000000000100000271000031ca00000000000000010000027900002fb8000000000000000100000285000032a00000000000000001000002940000302c0000000000000001000002a2000030f20000000000000001000002b6000030be0000000000000001000002c3000031120000000000000001000002d0000032ac0000000000000001000002df000032ba0000000000000001000002ee00000c400000000000000003000002f600000c8e0000000000000003000002fe0000320000000000000000010000030a00003230000000000000000100000316000032720000000000000001000003230000326a0000000000000001000003330000327600000000000000010000033f0000327c00000000000000010000034c0000009a0000003011000007000003610000008e0000000c11000007000003740000007a000000141100000700000387000012780000000c120000010000039800001284000000d212000001000003a40000145a000000d812000001000003b2000015320000004c12000001000003c20000157e0000006612000001000003d5000015e4000001e812000001000003e9000017cc0000006012000001000003fd00001d520000013a120000010000041200001e8c0000001012000001000004230000328600000000100000010000043500001e9c0000005a120000010000044100001f2c000001c012000001000004480000320800000000100000010000045b000021a000000072120000010000046300002212000000c61200000100000473000022d800000298120000010000047d000000ca0000000b110000070000048d00002570000000f212000001000004a1000026620000010a12000001000004b50000276c0000002e12000001000004c90000279a0000006412000001000004de000027fe0000009812000001000004eb000028960000005412000001000004f9000028ea0000004412000001000005060000292e0000008a1200000100000514000029b8000000c2120000010000051c00000c0800000000100000030000052500002a7a00000082120000010000053300002afc0000048c120000010000053e00000c2400000000100000030000054c00002f8800000000100000010000055c00002fa000000000100000010000056900002fd80000000010000001000005780000301e00000000100000010000058600003026000000001000000100000595000030aa00000000100000010000059f000030b40000000010000001000005a90000307a0000000010000001000005b7000030960000000010000001000005c7000030cc0000000010000001000005d4000030dc0000000010000001000005e30000313e0000000010000001000005f20000317e000000001000000100000601000031b400000000100000010000060e000031d200000000100000010000061a000031e4000000001000000100000627000032160000000010000001000006340000324600000000100000010000064200003282000000001000000100766563746f722e630067656e657261746f725f70616765007372635f706167655f7265616479007372635f706167655f736f75726365007372635f7061676500666f726d6174732e320067656e657261746f725f776964676574007365636f6e646172795f77696467657400766563746f725f67656e65726174652e706172742e30007363616c657300616e795f766563746f7200647261775f67656e657261746f725f7769646765742e706172742e3000666f726d61745f636f6e74726f6c00726f6f74732e3100666f726d61745f313000666f726d61745f3800666f726d61745f3600666f726d61745f313100666f726d61745f3300666f726d61745f3200666f726d61745f3900666f726d61745f3700666f726d61745f3500666f726d61745f3400666f726d61745f3100666f726d61745f3000736176655f73657474696e67730067656e65726174655f747261636b0073746167696e67006368616e67655f636f6e74726f6c0067656e657261746f725f7669657700656469745f7669657700706f6f6c5f636f6e7465787400706f6f6c5f62616e6b00706f6f6c5f7061727400706f6f6c5f747261636b006d696e6500736176656400706f6f6c5f666c657800706f6f6c5f62726f77736500706f6f6c5f64697265637400706f6f6c5f73746174696300706f6f6c5f70656e64696e6700706f6f6c5f6c6162656c730068616e646c6572732e33006c6173745f7472616e73706f7274006c617965725f67656e006163746976650073686f776e5f62616e6b0073686f776e5f706172740073686f776e5f747261636b0042414e4b5f50545200504152545f4f46460073745f6e616d655f7265706c61790073745f6e616d650073745f726f775f747970650073745f6d61696e5f7265706c61790073745f7372635f636f6d6d6f6e0073745f63686f6f7365725f726f775f747970650073745f6e616d655f7069636b0073745f706f6f6c5f6b696e640073745f656469745f7265706c61790073745f647261775f7265706c61790073745f6b6579730073745f656e6373002e706f6f6c5f73746f636b002e6c6973745f73746f636b002e7469746c655f73746f636b002e7469746c655f756e7369676e6564002e7469746c655f706f6f6c002e7469746c655f706c61696e00766563746f725f636f6e74726f6c5f6e616d657300766563746f725f636f6e74726f6c5f6d617800766563746f725f7363616c655f6e616d657300766563746f725f6e6578745f7365656400766563746f725f7061636b00766563746f725f756e7061636b00766563746f725f67656e657261746500766563746f725f747261636b5f656d70747900766563746f725f77726974655f70687261736500766563746f725f7369676e65645f747261636b00766563746f725f76616c69646174655f706172740073745f76616c69646174655f706172740073745f73746f636b5f76616c69646174650073745f73656c65637465640073745f6b65790073745f73746f636b5f706f6f6c5f6f70656e0073745f747970650073745f63686f6f7365725f747970650073745f61737369676e00766563746f725f64656661756c74730073745f706f6f6c5f63686f6963655f647261770073745f706f6f6c5f63686f6963655f6f70656e0073745f706f6f6c5f63686f6963655f6c6566740073745f706f6f6c5f63686f6963655f72696768740073745f706f6f6c5f6c6566740073745f706f6f6c5f72696768740073745f647261775f706167650073745f73657475705f706167650073745f6b6e6f620073745f6c617965720073745f73657475705f6b6e6f620073745f75695f7469636b0073745f656469745f6c617965720073745f6d616368696e655f6e616d650073745f7372635f6e616d65730073745f6d61696e5f636f6d6d69740073745f7372635f636f6d6d69740073745f7372635f636f6d6d6974320073745f6e616d655f610073745f6e616d655f620073745f73657475705f6f70656e0073745f63686f6f7365725f6f70656e0073745f73657475705f726f770073745f63686f6f7365725f726f770073745f73657475705f65646974360073745f73657475705f64726177360073745f7469636b5f686f6f6b0073745f7372635f647261770073745f706f6f6c5f6f70656e0073745f6c6973745f647261770073745f706f6f6c5f7469746c650073745f76616c69646174650000000000001600000301000000180000003200000301000001b200000054000003010000003c0000009e0000020100000a9e000000e000000301000001ae000000e6000003010000001c000000ec00000301000001aa000000f20000030100000018000000f80000030100000020000001080000020100000a4e000018dc0000030100000bcd00001a1600000301effea16600001a4c0000030100000bcd00001ba600003a010000008e00001f14000003010000001000001f22000003010000000c00001fd00000030100000bce000020380000030100000bce0000205c000011010000000c0000209e0000030100000bce000020aa0000030100000bf2000020cc000011010000001d00002108000003010000001000002116000003010000000c0000212600000301000000000000212c000003010000000400002162000003010000001000002170000003010000000c000021800000030100000000000021860000030100000004000023b4000003010000000c0000242e000003010000001400002434000003010000000800002442000003010000000c0000244800000301000000100000268a0000030100000014000026980000030100000010000026ae000003010000000c000026b40000030100000004000026ba00000301000000080000270e00003a01000000680000277600003a01000000680000278c0000030100000004000027a600003a0100000068000027dc0000030100000000000027e200000301000000040000285a00000301000000040000286c00003a010000006800002b18000003010000000400002b3a0000030100000bd200002c280000030100000bfe00002c3c0000030100000c0800002c5c0000030100000c2400002d180000030100000bfa00002d220000030100000bf600002d600000030100000c0200002d660000030100000bfe00002d6c0000030100000bf600002d780000030100000bfa00002d960000020100001f2c00002daa0000020100001f2c00002de40000030100000bee00002e020000030100000c0200002e560000030100000bd200002eac0000030100000bf200002eb20000030100000bfe00002eb80000030100000bfa00002ebe0000030100000bf600002ed2000003010000000400002edc000003010000000800002ef80000030100000c0200002f1c0000030100000c0200002f220000030100000bf200002f280000030100000bfe00002f340000030100000bf600002f3a0000030100000bfa00002f7a0000030100000bfe00002fb400000201000031ca0000000a000003010000001c0000002000000301000000200000003a00003a010000009a0000004200000301000000ea0000004800003a01000000300000004e00000301000000360000040400003a0100000070000009d200003a010000008e00000b3000003a010000007a00000b64000011010000000800000c48000011010000000000000c5800003a010000000000000c7a000011010000000400000cfc000011010000000800000d16000011010000000000000d3c00003a010000007a00000d7a00003a0100000000000018a400000301000002b3000018fe0000030100000303000019ba00000301000001b2000019c800000301000001b2000019d200000301000002b300001a1c00000301000002b300001ae600000301000002b300001d2a0000030100000bf200001ef8000003010000001400001f540000030100000bce00001f740000030100000bd600001fa60000030100000bd6000020940000030100000bf2000020ee0000030100000014000021480000030100000014000022180000030100000004000022ac000003010000000c000022d00000030100000000000023600000030100000004000024d600003a01000000ca0000258200003a0100000068000026d8000003010000000c0000270200003a01000000600000274a00001101000000270000281400000301000000040000284a0000030100000000000028fe0000030100000bf20000299c0000030100000bf200002a3a0000030100000bf200002a5e0000030100000c0800002ade0000030100000bf200002b06000003010000000400002b1e000003010000000800002c1a0000030100000bee00002c200000030100000c0200002c420000030100000bce00002c620000030100000bce00002d360000030100000c0800002d400000030100000c0800002d4a0000030100000bce00002da200000301b9382e6000002dc600000301b9382d3400002df00000030100000c0800002ee60000030100000c2400002f4a0000030100000c2400002f560000030100000c2400000c0c0000030100000c4000000c100000030100000c8e00000c280000030100000c4000000c420000020100001f2c00000c460000020100001f2c00000c4a0000020100001f2c00000c5c0000020100001f2c00000c600000020100001f2c00000c640000020100001f2c00000c9000000201000029b800000ca600000201000029b800000cbc00000201000029b800000cd200000201000029b800000ce800000201000029b800000cfe00000201000029b800000000000011010000003a00000004000011010000003c00000008000011010000003f0000000c00001101000000410000001000001101000000440000001400001101000000460000001800001101000000480000001c000011010000004b00000020000011010000004d0000002400001101000000500000002800001101000000520000002c00001101000000550000003000000201000011a80000003400000201000010d8000000380000020100000d5a0000003c0000020100000d1c000000400000020100001008000000440000020100000f38000000480000020100000cd60000004c0000020100000e68000000500000020100000ccc000000540000020100000d98000000580000020100000cc20000005c0000020100000cde0000006000000201000021460000006400000201000020ec0000006800001101000000570000006c00001101000000620000007a000011010000006b0000007e000011010000006f0000008200001101000000730000008600001101000000770000008a000011010000007b0000009a00001101000000800000009e0000110100000085000000a2000011010000008a000000a6000011010000008f000000aa0000110100000094000000ae0000110100000099000000b2000011010000009e000000b600001101000000a3000000ba00001101000000a8000000be00001101000000ad000000c200001101000000b1000000c600001101000000b5002e73796d746162002e737472746162002e7368737472746162002e72656c612e74657874002e72656c612e64617461002e627373002e726f646174612e737472312e31002e72656c612e726f64617461000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000001000000060000000000000034000032c8000000000000000000000004000000000000001b000000040000004000000000000050340000069c0000000900000001000000040000000c0000002b000000010000000300000000000032fc00000d280000000000000000000000040000000000000026000000040000004000000000000056d0000000b40000000900000003000000040000000c000000310000000800000003000000000000402400000000000000000000000000000004000000000000003600000001000000320000000000004024000000b9000000000000000000000001000000010000004a000000010000000200000000000040de000000d50000000000000000000000020000000000000045000000040000004000000000000057840000021c0000000900000007000000040000000c00000001000000020000000000000000000041b4000008300000000a0000004f000000040000001000000009000000030000000000000000000049e40000064e0000000000000000000000010000000000000011000000030000000000000000000059a00000005200000000000000000000000100000000", - "sha256": "5b43ff757c7726bce8a182ad1b2e8a4d752ff4a2eb969c50f1b5335b6438d11a", + "bytes": 37668, + "code": "7f454c460102010000000000000000000001000400000001000000000000000000009144000000260034000000000028000c000b2f021039100b14cfa742227946c82456d3fc000950481211c480a340e5a8828012811239100b145e808113c0100b145e207946c82456d1fc0009b332241fa350a379100f85984ef940027e002f027233202f0008206f000cb28067187420b480674a7231b280674e7432a749b4806706241f4e7593c9a341b288672c4a886702a54143f19a0074fdd28943f90000000022711c0022095381b48165d42f48000c2f400008241f4ed1428160d6a349a341b28866c860f2a549a341b28866be60e84feffc40720f48d77cfc206f03c871902f40004eb2806406740f2f42004e7010206f03c877a800012f430046b083640672102f410046700b206f03c875a800022f420042b0826406720b2f410042a940206f03c875a800032f420052b0826404a96f0052206f03c8707e73a800042f41003eb0816406727e2f41003e707f206f03c875a800052f420056b0826406727f2f410056700c206f03c875a800062f42003ab0826406720c2f41003a7218206f03c81028000875a800072c421f40005bb28264043c7c0018206f03c843eefff42c2f03cc102800092f49004a4a0067107240b2866500046c7180b08665000440206f03c4200f246f03c40680000003c0224a116f03cf010041ef02c0264850c1421113410003134100021341000126d9b08b66ea222f03d4283c9e3779b92e2f004e760b4282b981e7af760f43ef00c04bef01c02a09200142404840b380223c7feb352d4c0108002200e6a9b380223c846ca68b4c010800260042434843b183a740c08277c34a8067000088d6872a83264520022f480032222bfffc41ef03c049f01c00b6acfe00640a26815380598b4a8066e447f70c00260206849e3779b9206f00325283588d5885274200c0b6866764222f03d42403760fb981200142404840b380223c7feb352d4c0108002200e6a9b380223c846ca68b4c010800260042434843b183a740c08277c34a806600ff7c2a834a826600ff78428047f70c00260206849e3779b95283588d5885274200c0b686669c2a6f00527a1847f9000000007e64387c000c79f3da00266f004a70f42a6f004a99ce9aaf004297ef003adbef003a42af003642af00322f4800522f42002e2205740cd2804c4210060d04672cb08b6c00022e220cd2804a816d000216be816f0002182f400036740c52802e012205d2804c4210060d0466d45280720db28066be302f0048206f0052242f002ec0c35080e888671671c049f10c00201947f70c007001174002c0b9c966f0720c7c0c202f00425e804c41000573fc00fe92af0056286f004a22422a6f004a4287700c90af00422f450046c2ef03d2dbef003ad0854c4600057dfc00fe99ef003a2f4d004a242f003226434c461001eaa42a6f004e2f4a00522f6f03d40032a340c0841f41003d2f40004e2c0752874a10670000da223c85ebca6b7a0f4c071800262f0032283c7feb352db7810a81b5297a4d200142404840b3804c0408002200eaa9b380223c846ca68b4c010800220042414841b1814a82670001662001e0884c4200044df74c00282e005c0684fffffff4700fc081b08d642c7030c0814a8066084aaf004e6600016c202f00420801000667060680fffffff4b08c6d08b0af004a6e02280076182001e6a8a743c9fc00052a004c435000068400000040114400015480c0ef0040e48811400002a740c0864a80670000de0281003000004a81670000d2102f003d114000035888bc896600ff18246f0052260b4aaf03cc675871af005b783fb880650000be2a2f03cc206f03c8266f03c44c4500021828000a71c5222f03cc538543f30c009282242f03cc2c0152814c4260004a0467062c059c8020064c43000647ef03c041f36c0024e8ff00b5c966da4cd77cfca3404fef03c04e754481be816e00fdec52806000fdc2b08d6e18222f0032204041e8000c4df71c0052812f4100322d48005c220cd2804a816d1abe816f00fdd22f4000362e015280720db2806600fd886000fdc6448160e2102f03d3114000036000ff2e282f00366000feac2a2f03cc703f206f03c8266f03c44c450002222f03cc71c51828000a5385928243f30c00242f03cc6000ff40202f00466000fe94206f03c42c00246f03c4200f224a0680000003c0116f03cf010041ef02c026486000fbbe71807c40b0866400fb9660d0598f2f0a2f02207946c82456a7421039100b14cfd1fc0008ed8073ef0012226f0014e989c08275fc18b2244145ea183e4c0208007416d1c071b0a800b4806726ad40b089671241f90000000071b09800241f245f588f4e75202f00105280241f245f588f4e75207946c8245620091439100b14cf0680000018322440d5c1d1fc0008ed80203c0000000071b108001202a742c28275fc18b24c021800d1c11230a8000681000000407381b28064a2241f2001245f588f4e754fefffe848d7041c1039100b14cc4878000a71802f004ebaff30508f4a80670000947263b28065307209b2806500009a760aa3494c4300014204206f001c0681000000301081206f001c118498004cd7041c4fef00184e757464a5482200a7494c421001246f001c740aa36f0010d1ef001c068100000030148122004c421001246f001c28014c424003242f0010220306810000003015812800760a4c43000142040681000000301081206f001c11849800609a206f001c20bc4f4646004cd7041c4fef00184e75740aa3482200a5494c42100142af0010246f001cd1ef001c28014c424003242f001022030681000000301581280060a24fefffdc428148d71cfc2c2f00287a7fcaaf0030286f002ce98e2806068400001832ad40b081670000a0ab472001be816402538016340800247c100b14cfa7471012227946c82456d3fc0008ed8014122644d7c152810683ffffffc0c087c4877ffc18b24c0708004c0728002040d1fc100a4ece700cd3c21383b8001183b800b081669e1012223946c82456224614122441a741d5fc0008ed8043e9183ec081c4814c0708004c0728007e162040d1fc100a4eced5c215879800118798004cd71cfc4fef00244e75247c100b14cfa7471012227946c82456d3fc0008ed80141216052644d7c15281c087c4877ffc18b20683ffffffc04c0708004c0728002040d1fc100a4ece700cd3c21383b8001183b800b0816600ff0c6000ff6a4fefffe8428048d71c1c75ef001e246f002049f90000000047f900000000e98a224206820000183243e9183ead41b2806602af40207946c82456a7431239100b14cf79fc18b2d1fc0008ed80c28376164c041800d1c173b09800b681673a12330800ab43b6806428158108ff5280780cb88066b8ad672f2f00204ebafcb84cef1c1c0008206f002c20804fef00204e751581080052806094207946c82456a7441639100b14cfd1fc0008ed8073b40800c68479fc18b24c043800d1c32602d680163038000683000000407783b68164922203608e4fefffe048d73c3c4ab900000000670e202f0024b0b900000000670000da41f900000000226f002493c81031880010c0b1fc0000000066f24bf900000000428243f90000000049f90000000045f900000000223c00000000265d91c810338800670c158088005288ab43b68866eed1ca4218b28866fa201c26004243484378182a00e8ad2800e08c13400003ab4012851344000213430001b082656a203c00000000781826002a0042434843e8ad2800e08c1340003358891345002c1344002e52825c8a5c81700c1343002db082668877fc5555202f0024283c5555555523c400000000a3790000000023c30000000023c000000000203c000000004cd73c3c4fef00204e75203c00000000781826002a0042434843e8ad2800e08c1340003358891345002c1344002e52825c8a5c81700c1343002db0826600ff1e60924fefffe4226f0020202f002448d77c0c47f108014ab900000000660ab7f90000000067000128a341c2af002441f90000000093c81031880010c0b1fc0000000066f243f90000000091c845f900000000101152894a00670a14c05288ab42b48866eed1fc0000000043f9000000004218b1fc0000000066f6705641f90000000013c00000000012d8b1fc0000000066f6200106800000003113c000000000300143f900000000223c00000000c0fc00182c402a40ddfc00000000dbfc00000000285e244191c85d8a10348800670c158088005288ab42b48866eed1ca4218b28866fa7440201d72182600e2ab2200e0891340000358891343fffc1341fffe72671342002c24007004424248421341002e22085c811340002d70a41340002f1342fffdb1fc00000000669673fc5555243c5555555523c20000000042b90000000023c10000000023cb00000000203c000000004cd77c0c4fef001c4e754fefffd448d74c044242203946c82456227c20300c0c2f4800102040d1fc0008ed8042001239100b14cf3f420028243c0b0b00012f420020a7421f40002a302f00322f490024c28275fc18b2c0fc001e4c021800d1c173b0083e53814a81670001f64def001793c922090681000001e9d280a542b489641e1cb0180052897209b289671e22090681000001e9528ed280a542b48965e245f1083f52891cf0a80060c6102f0017720fa942c2807180e88830401f410020b4806500017e3008122f001874101f400023701fc0813040b4806500013c3408102f0019ea891f420021a342c282740fc4801f41002a12022042740bb488650001027180e8881f410022720c3040b280650000d6122f001a340871811f420026747eb480650000b0102f001b1f4100244a006d00008c122f001c1f40002574187181b480656871af001d1f410027723fb2806546122f001ee188758120427440b4886528100147ef00203f400028206f0010200820d320ef002430ef00284cd74c0410af002a4fef002c4e75724047ef002010013f40002860d4122f001e703fe188758120427440b48864b860de721871af001d1f410027723fb280649660da707f122f001c74181f4000257181b4806400ff7460d8727e102f001b1f4100244a006c00ff5260d8307c000c122f001a340871811f420026747eb4806400ff2a60d4720b7180e88830401f410022720cb2806400ff0060d0307c0010102f0019ea8934081f420021a342c282740fc4801f41002a12022042740bb4886400fec460c0307c0004122f0018741030081f400023701fc0813040b4806400fe8260b847ef002093c9244b22090681000001e94df1083fd280a542b489651a528914f0e80022090681000001e94df1083fd280a542b48964e614b018005289ad41b2896700fecc528a60c04feffff42f0e2f0271b9100b14cc2c6f00242f0041ef000d4ebafd48588fad40b08e675cab42200eb48e6402538071b7080920402f2f00302f2f003070fec0af003043f90000000073b1e8002f002001b1c164022008c0fc007f4c4100002f002f2f00302f2f00302f2f00304eb9400479b44fef001c241f2c5f4fef000c4e751039100b14cc227946c82456a7421239100b14cfd3fc0008ed807180c282c0fc001e204071fc18b241e801f14c001800d3c110318800727fc28020416000ff76518f2f02740b202f00182200206f00105c81226f00142f6f002000042f6f00240008b4816406241f508f4e752f6f000800242f6f000400202f41001c2f4000182f4900142f480010241f508f6000fef2598f2f02740b202f0014222f000c206f0010226f001c2f6f00200004b4806406241f588f4e752f6f000400202f49001c2f4000182f4000142f4800102f41000c241f588f6000feaa4feffff448d7040c4ab9800000126700008e207c46c8245620100680c00000000c8007efffff6276227c100b14ccaf417191b280656812112010a5431439100b14cf3042b6b9460d168466524ab9460d173a664a4ab9460d169466422408a743c483738106800008ed80224143e90c11220275fc18b24c021800744dd081244041f29a00102800017390b48166104aaf0014670a71807656b680670e10104cd7040c42804fef000c4e754cd7040c203c000000004fef000c4e754fefffe448d7401c242f002441ef001171b9100b14cc2f004ebafb36588fad40b082676cab40b082653c71b728112202a3435581b6816500009255824a826700012aab434c43000141f900000000226f002020701c00101812c066fa4cd7401c4fef001c4e7571b72810780bb882660001124a80670000e6226f002041f900000000101812c067d4101812c066f460cc1039100b14cc227946c82456a7421239100b14cf77fc18b2d3fc0008ed80787f7180c282c0fc001e20404c03180041e801f1d3c110318800c0847663b68064587864760a2200a54e4c441001206f0020a74906810000003010c122004c43100124014c43200422040681000000301081206f0020d1ce740a4c42000142030681000000301081206f0020118398004cd7401c4fef001c4e75206f0020a34942817409b48064d02c49760a224122004c431001548924014c43200422040681000000301081206f0020d1ce60aa226f002041f9000000006000ff1a740c4c42000141f900000000226f002020701c006000fed6780ab88266144a806600ff3e226f002041f9000000006000fee851824a826600ff2822000681fffffff44a816d0e20017663b6806500ff186000ff6c206f0020740c94802002a54910fc002da3417409b4806400ff306000ff5c700a2f4000086000fe1c70082f4000086000fe12ad6f00086000fe0a2f0a2f021039100b14cc207946c82456a742d1fc0008ed801239100b14cf226f000c7180c282e98875fc18b24c0218002440741645ea183ed1c173b0a800b481671670082f4000102f49000c241f2279400d3f10245f4ed1247946c8245620401239100b14cfa74075fc18b2d5fc0008ed8041e81836c2804c021800d5c110328800727e0680000000407180b28064b4707e2f4000102f49000c241f2279400d3f10245f4ed11039100b14cc4878000b71802f004ebaf268508f4a806712226f000441f900000000101812c066fa4e75226f000441f90000000060ec2f021039100b14cca767ab4271802f004ebaf230508f41f9000000004c420001226f000820701c00101812c066fa241f4e752f02740c1039100b14cca56771802f004ebaf1fe508f41f9000000004c420001226f000820701c00101812c066fa241f4e7571b9100b14cc4feffff441ef00012f004ebaf806588f4a2f000b671641f900000000226f0010101812c066fa4fef000c4e75226f001041f90000000060e84feffff42f0271b9100b14cc41ef0005ab422f004ebaf7c471af000c588f41f9000000004c420001226f001420701c00101812c066fa241f4fef000c4e754feffff42f02740c71b9100b14cc41ef00052f004ebaf78671af000b588f41f9000000004c420001226f001420701c00101812c066fa241f4fef000c4e754feffff048d7041ca74277fc18b2226f001478161039100b14cc207946c82456d1fc0008ed801239100b14cf7180c282e9884c031800244045ea183ed1c173b0a800b881671c72312049a54010fc003142041081138408004cd7041c4fef00104e75223946c8245620401439100b14cf2001a74379fc18b206800008ed8041e818323442740f220ac2834c041800d0811030080006800000004071802200b480652c2601780a4c44300276092202068100000030b680659042042049a3401081138408004cd7041c4fef00104e75720f780a26014c44300276092202068100000030b68064d26000ff604feffff048d7041ca74277fc18b2226f001478161039100b14cc207946c82456d1fc0008ed801239100b14cf7180c282e9884c031800244045ea183ed1c173b0a800b881671c72312049a54010fc003142041081138408004cd7041c4fef00104e75223946c8245620401439100b14cf2001a74379fc18b206800008ed8041e8183334427410220ac2834c041800d0811030080006800000004071802200b480652c2601780a4c44300276092202068100000030b680659042042049a3401081138408004cd7041c4fef00104e757210780a26014c44300276092202068100000030b68064d26000ff604feffff448d7001ca74277fc18b2226f001078161039100b14cc207946c82456d1fc0008ed801239100b14cf7180c282e9884c031800240006820000183ed1c173b02800b881672070342049a5427238a3431080420013813800138028004cd7001c4fef000c4e75223946c8245620401439100b14cf2001a74106800008ed8041e81837c4814c032800767fd0821030080006800000004075802002b6826532780a76634c4400014c440000068100000030b6826420240020494c44200310fc0031a7422003068000000030a54310806082707f60ca7809b88265184200428313813800a342138028004cd7001c4fef000c4e750680000000302049a5421080a3436000ff504fefffe848d7043ca74379fc18b2226f001c7a1671b9100b14cc207946c82456d1fc0008ed801239100b14cf2400e98ac283244245ea183e4c041800d1c173b0a800ba81673252807863b88065627209b280650000ac7a0aa3424c450001420020490681000000301081138028004cd7043c4fef00184e75247946c82456a7411039100b14cf77fc18b22042d5fc0008ed8041e81838c0814c030800d5c01232880006810000004071814a016c9a707f7a64760a2200a34a4c451001a548d1c9a742068100000030128122004c4310012a014c43500422040681000000301381a8007a0a4c45000142000681000000301081138028004cd7043c4fef00184e75760aa348220095ca4c431001a542d1c92a014c43500422040681000000301381a80060be4feffff048d7041ca74277fc18b2226f001478161039100b14cc207946c82456d1fc0008ed801239100b14cf7180c282e9884c031800244045ea183ed1c173b0a800b881671c72322049a54010fc003142041081138408004cd7041c4fef00104e75223946c8245620401439100b14cf2001a74379fc18b206800008ed8041e818393442740c220ac2834c041800d0811030080006800000004071802200b480652c2601780a4c44300276092202068100000030b680659042042049a3401081138408004cd7041c4fef00104e75720c780a26014c44300276092202068100000030b68064d26000ff604feffff048d7041ca74277fc18b2226f001478161039100b14cc207946c82456d1fc0008ed801239100b14cf7180c282e9884c031800244045ea183ed1c173b0a800b8816718723042042449a3421481138428004cd7041c4fef00104e75223946c8245620401439100b14cf2001a74106800008ed8041e8183bc282743f4c031800d0811030080006800000004071802200b480653c2601780a4c4430024c4430032449220220430681000000307609b680643e200806800000003014c04204a5421481138428004cd7041c4fef00104e75723f780a260124494c4430024c443003220220430681000000307609b68065c242041481a342138428004cd7041c4fef00104e754feffff048d7001ca74277fc18b2226f001478161039100b14cc207946c82456d1fc0008ed801239100b14cf7180c282e9884c031800240006820000183ed1c173b02800b8816718703042042049a3411080138418004cd7001c4fef00104e75223946c8245620401439100b14cf2001a74106800008ed8041e8183ac4814c032800d0821030080074180680000000407180b480655024000682fffffff44a826c4612bc002d740ca3419480a56f000c2602780a4c44300041f118007609068000000030b6826c28420410bc0031206f000cd1c910805481138418004cd7001c4fef00104e75740ca36f000c428160c04204222f000c1080138418004cd7001c4fef00104e754e56ff7848d73cfc1039100b14d0223946c824560681c00000000c8107efffff6200038aaf41b2ae0008650003807380740fb48165000376223946c8245648801639100b14cf7bfc08b0282e0008c0fc8ed84c0548001d43ffc326010683000048d02044d1c02d48ffbc4bf038004aae000c670003502040227c00008e55d1c14a30980067000332142d0028486effc8486effcd2f2e00084ebaec6275824fef000c4aae0010670e202effc87c7f5280cc802d46ffc8203946c8245620421239100b14cf5388783fb888650002e0a745c2852440d5fc0008ed80202e00087dfc18b2eb884c0618000680000003e2d5c1d5c04a2a00016d0002b471aa0001727fb280650002a82f2effc82f007a132f02486effcd4879000000004ebae3b64fef00142d4effac18127192220e0681ffffffd8204d91c12d48ffc43400226effc420417984c4fcaaabeaaac5fc000c9082718098802d44ffb81031880010c0b1eeffac66f4227c1001aa1e428293c32d49ffb0227c1001aa1d93c3200d06800000005041f90000000047ed083145ed003249ed00312d49ffa8af47ce822a02e68daf49a3442a4093c5d3c177914bedffe0eea3c8832d44ffa04a10670002fa79a80001ab460684ffffffc02d44ffb44c4648042c2effb8dc844a866d0002fc787fb8866c027c7f79952d44ffb47986b8aeffb467101a862a6effa81b86c8004a10670002141828000377947d84b686670002362a6effa818841b84a8004a106600022679920c84000000ff6700020a50c42a6effb014841b84a800a344efac4a10670001f81c118c8412864aaeffa066064a106700020c224b4a21670c42034211226effa81383b8004a13670c4203226effb042131383b8003a7c000f2e044687327c00279bc51635180093c5c6871b83180016311800c687138318001610670001c04bf9000000001b832800327c001793c5d3c11611c687128352825888548b45ea002006800000002049ec00207640b6826600fec4247c1001aa1d95c1d5eeffbc2041222effc45381101875b018007780b48367081180180015808800b1eeffac66e62f2effc8486effcd2f2e00084ebae8cea744a3424fef000c102effc3207946c824562202d1fc000950481610c084e1a986811083263c46c7d2e41039100b145e828013c1100b145e207946c82456d1fc0009b332a350a379100f85984eb940027e002a2e00082805ebaa41f9000000009688468243f0380010111218c082e9a980811280b1fc0000000066e8206e0008486800084eb94009da204cee3cfcff78588fa3404e5e4e754cee3cfcff7842804e5e4e7571fc8e53143008006000fcca43ed0018204d52884a28ffff66dab3c866f441ed002043ed002852884a28ffff66c6b3c866f441ed003043ed0830759052880c82000000ff66aeb3c866f02040227c00008e55d1c14a30980067a66000fc7479940c84000000ff6700fe0250c42a6effa818841b84a8004a106700fdf06010a344efac1c112e044687cc876000fe041828000277927d84bc836600fddea344efac1c118c846000fdea224043e9ffe3779152890c83000000ff6624b3c066f0420343f90000000013832800327c00172e04468793c5d3c11611c6876000fe247c0143f900000000138628004a1066dc327c001793c5d3c1161186846000fe0479950c84000000ff6700ff5650c61a862a6effa81b86c8004a106600fd326000ff40420679952d44ffb47986b8aeffb46600fd0c6000fd181039100b14cca367a36771802f004ebafb024fef000c4a806716203c00000000487800202f004eb94005a2b8508f4e75203c00000000487800202f004eb94005a2b8508f4e754e56ffd448d7040c75b9100b14cc4aae001067045cae0008486effe6486effea2f024ebae7a44fef000cab433d6efff2fffd1d6efff4ffff2d6effe6ffe02d6effeefff92d6effeafff5b6ae0008656841eeffead1ee00087190d0ae000c4a806d0000a8222e000843f90000000073b118002241b0816c0222403009262e00081080718073b638f5b08167222f2effe6486effea2f024ebae61442a7a3672f024ebafa2a4fef00184a80670000ac4cee040cffd44e5e4e75ad40b0ae0008676072ea226e0008d28e5389d28920417190d0ae000c4a806d0000bc262e000841f90000000077b038002043b0836d000086300824412d4900081480262e0008718073b638f5b081668460a442104200262e000873b638f57180b0816600ff70608e202effe0727fd0ae000cb2806d1a4a806d522d40ffe6b0aeffe06600ff504cee040cffd44e5e4e75707f2d40ffe6b0aeffe067ea6000ff362f2effe0486efff52f024ebae5484fef000c4cee040cffd44e5e4e752040244130082d49000814806000ff7842802d40ffe6b0aeffe067ae6000fefa421042002d490008262e000873b638f57180b0816600fee26000ff0042404e56fff4206e000848680001486efff42f08207c08300c0c2d48fff83d40fffc1d40fffe203c0b0b00012d40fff44ebae4ca42a742a72f2e00084ebaf8de4fef00184e5e4e754aaf000866024e7560ae4fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebae91a71af0025588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebae84a71af0023588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebae77a71af0022588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebae6aa71af0021588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebae5da71af001e588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebae50a71af001d588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d8148006090202f0004727f5280c0814e752f032f02206f0010a942226f000c102800037380b481640270041210e988760f7581b6826402720f808112801028000a6702700112280001eb8876107581b682640272108081740c13400001102800067380b4816402700c12280002e988760b7581b6826402720b8081747e13400002102800047380b4816402707e13400003102800056a02707f134000047618102800077380b6816402701813400005743f102800087380b4816402703f134000067640102800097380b68164027040727fc2af00141340000713410008241f261f4e754fefffd848d75c1c2f2f00342f2f003449ef00272f0c4ebaff16362f003a9dce4fef000cc6fc001e141ca540b08e64000086267c100b14cfa7441013227946c82456d3fc0008ed80121345ee01e9528ed5c3c084c28479fc18b24c0408004c0418002040d1fc100a4ece7009d3c11382a8001182a800b08e66ae1013227946c82456a7421213d3fc0008ed80c082c2824c0408004c04180078022040d1fc100a4eced3c11384383e1184383e4cd75c1c4fef00284e75267c100b14cfa7441013227946c82456d3fc0008ed80121345ee003f528ed5c3c084c28479fc18b24c0408004c0418002040d1fc100a4ece7009d3c11382a8001182a800b08e6600ff2a6000ff782f02720f206f0010a942226f00081010c08112807190e8881200b4806402720413410003721f741010280001c0811200b4806402721013410001a341740f71a80001ea88c0811340000a10280002c082740b1200b4806402720b13410002740c71a80002e8881200b4806402720c13410006747e102800037380b4816402707e13400004102800046a02707f134000057418102800057380b4816402701813400007743f102800067380b4816402703f134000087440102800077380b4816402704013400009727f10280008206f000c241fc28020814e75598f2f0a2f02202f0010222f0014206f00184a80672c4a81672845e8ffff743fb48a651e747fb4af001c65162f4800182f4100142f400010241f245f588f6000d5c2241f4280245f588f4e75222f00044a81675a71fc0919b0af000864502001204106800000004052884a28ffff663eb08866f42041200141e8004806800000005052884a28ffff6624b08866f4204106810000085941e80059719052880c80000000ff6608b28866f0a3404e7542804e754fefffd848d73cfc262f002c4a8367000168202f00300c80000009196300015a4aaf003467000152206f0034723f18280100200453807180b2806500013c4aaf003866122f2f00302f034ebaff4e508f4a806700011a7984246f00344281204a1010a3457580ba826500010eb284650001144a0066000102528158887040b08166de264322432843428547eb005943e9007949ec089aaf41c2852805e68caf48a34291c4d1c37190e2a0c0824a1267000132142a000116824a1267000120142a00021742000d4a126700010c142a00031742000fa342e3aa12104a12670000ee828210814a8066044a12673e420042143a7c000f42819284d2839bc4307c004f194000012002468091c41e353800ce801b8738002a411e2d001fce801b47001f12303800c08111803800204b4281101846804a0056c0710044808280b1c966ee307c001791c4d1c310104a1266784a816774848010825285588a47eb0020548c43e900207040b0856600ff2ca3404cd73cfc4fef00284e754cd73cfc42804fef00284e754a006700fef0102800017a787580598071805982ba8065dcab454c4528004a8066d275a800027a7eba8265be4a2800036db8528158887040b0816600fea06000febe4682c48060882e024687c2876000ff0e50c26000fef650c26000fee250c26000fed02f02202f000caf41206f0008b280651c73b00822a342b4816512721e74534c01080041f0083c7190b4806706241f42804e7571a800017232b28066f071a8000253804a80671410280002a541241fb3804a0057c0710044804e75241fa3404e754fefffc4203946c824560680c000000048d7440c0c8007efffff630c42804cd7440c4fef003c4e75207946c82456a7411039100b14cf75fc18b22f2f0040d1fc0008ed80c0814c020800487008004ebaff50508f4a8067c61039100b14d0720f77802f430020b28365b24880243946c8245641f90000000032002f4200241639100b14cf302f0042c2fc8ed81f43002fc0fc091ad081d4802c429dc82f40001c1030e80010c0b1fc0000000066f24aaf00446700024c71fc8e55206f0024d1c14a300800670002621039000000007180743f22005381b4816500ff422f2f004041ef00352f4000144ebaddb6588f223946c8245606810008ed801639100b14cf342f0042202f00103243c4fc001e2042a74241e801f12609c68275fc18b24c023800d28312301800767fc6812f4300284aaf0048670c2203747f5281c4812f420028223946c8245606810008ed801639100b14cf342f00423243c4fc00182042a74241e801232609c68275fc18b24c023800d283767f73b01800b6816500fe9e2f2f00282f012f00486f003d4879000000004ebad1742f2f00584879000000004878091a4879000000004ebafc0c4fef00244a806700fe68226f0024b3f946c824566600fe5873b9100b14d0b2af00206600fe4a73af002f75b9100b14cfb4816600fe3a226f001c93fc0000000041f9000000002f49002045f0e800121875922f4a00147781b682670e1481226f002045e8ffff13928800b1fc0000000066d82f2f0028486f00352f2f00482f40001c4ebaf8f8a742a34e260e122f003b227946c82456d3fc00095048c2822f410038242f003812114fef000ce5ab828312811239100b145e8283260e13c1100b145e207946c82456d1fc0009b332a350a379100f85984eb940027e002c7c46c7d48c222f0040202f001043f900000000e3ab2f43001846831f43001741e9ffe0528873a8ffff0c81000000ff6678b1c966ee91c81216162f0017240843e90020c28382821cc1bdfc46c7d4cc66ce2f2f00402f4000144eb94009da20588fa37946c7c72c4cd7440c202f00104fef003c4e754878091a4879000000002f4100184ebafa42508f222f00104a806600fd9a4cd7440c4fef003c4e7571fc8e53103008006000fd9c142f001b304260864e56ffe041eeffea2f0a2f0273b9100b14cc2f012d41ffe04ebadb4a322effe2588f207946c82456d1fc0008ed803d6efff2fffd1d6efff4ffff2d6effeefff92d6effeafff5c2fc001e1039100b14cf2241a74143e901f1c08173fc18b24c010800d1c012309800707fc280ab407581b0ae0008657a43eeffead3ee0008206e000c7391d1c14a886d000082246e0008203c0000000071b20800b1c06c022008b0816740128020022f00486effea2f2effe041faf73a2d48ffe44e9042a7a3672f2effe04ebafbfe4fef0018206effe44a806744a1674eb94004d948a37946c7c72c588f242effd8246effdc4e5e4e75ad40b0ae00086742222e0008206e000c43f618e97391d1c14a886c804a8167d442001280200260902f02486efff52f2effe04e904fef000ca1674eb94004d948a37946c7c72c588f60aa202e000cd0824a806d3c727fb2806c02707fb08267942f00486effea2f2effe041faf6922d48ffe44e9042a7a3672f2effe04ebafb564fef0018206effe44a806600ff5860984a016700ff6042802f00486effea2f2effe041faf65a2d48ffe44e9042a7a3672f2effe04ebafb1e4fef0018206effe44a806600ff206000ff60203946c824560680c00000002f020c8007efffff62084a398000001567064280241f4e751239100b14cc207946c82456a7421039100b14cfd1fc0008ed807381c0822f0173fc18b24c010800487008004ebafa58508f4a8067c42039000000004a8066ba4a3946c7d8d866b44ab9460d173a66ac4ab9460d169457c0241f710044804e754fefff78428148d75cfc242f008c284245ef00289dce28024283264a06840000003c49ec002271b41800a346bc80650c41f648007e537190be80674252814dee001e47eb000cbdfc000000f066d82f02206f009442854e90588f91c80b0366000086528541e8001e45ea000cb1fc000000f066e84cd75cfc4fef00884e7571a800017c32bc8066b471a8000253804a80670a71a8000255804a8066a0a340e3a891c8868043f6883cab47be88642c2c08ad474c47600043f60800700c43e901ecd3c21791880042115288b0886700ff6e43f6883cab47be8865d4d3c2179188004211528860be428147f02800ab44b881651449f21800ab442242d3c11194983c5281b88164ec2c01ad474c47600449f21800528143f34800780c135401ecb88166ca528541e8001e45ea000cb1fc000000f06600ff286000ff3c487a23822f2f00084ebafebc508f4e75203946c824560680c00000002f020c8007efffff62084a39800000156706241f42804e751239100b14cc207946c82456a7421039100b14cfd1fc0008ed807381c0822f0173fc18b24c010800487008004ebaf88a508f241f4e75203900000000b0b946c82456670442804e751039100b14cfa741c081b0b90000000066ea71b9100b14ccb0b90000000066dc6000ff724fefffec70312f0a2f02226f0020a342206f0024b08956c173014481b4886700008ea340e3a82439000000002f420014c4804a82665e4a886632a340244174fd45f21a00d08a45f90000000020320c0022005381b48165322f4900202f480024241f2240245f4fef00144ed12441a54045f21a0074fdd08a45f90000000020320c0022005381b48164ce241f245f4fef00144e754a8866f24680c0af0014241f245f23c0000000004fef00144e752f4100102f4800082f49000c4ebafeb4222f0010206f0008226f000c4a806700008a103946100b1d08000005667c703eb089677c7431b48966702f4100102f4800082f49000c4ebafcac222f0010206f0008226f000c4a806750a34081b9000000001039100b14cca367a36771802f004ebaf78c4fef000c4a80677048780020203c000000002f004eb94005a2b8a1674eb94004d948a37946c7c72c4fef000c241f245f4fef00144e7542806000fee04a3946c7d8d866f24ab90000000057c0a54183b900000000a1677100448023c0000000004eb94004d948588f241fa37946c7c72c245f4fef00144e7548780020203c000000002f004eb94005a2b8a1674eb94004d948a37946c7c72c4fef000c608e203900000000b0b946c8245667024e751039100b14cfa741c081b0b90000000066ec71b9100b14ccb0b90000000066de4ebafd7e4a8067d6a37900000000a379000000004eba2060a1674eb94004d948a37946c7c72c588f4e75203900000000b0b946c8245667024e751039100b14cfa741c081b0b90000000066ec71b9100b14ccb0b90000000066de4ebafd244a8067d642b900000000a379000000004eba2006a1674eb94004d948a37946c7c72c588f4e75203946c824560680c00000002f020c8007efffff6232203946c82456a7421239100b14cf06800008ed80206f000c41e8ffdec28275fc18b24c021800af42d08122089280b4816408202f0008241f4e75a342b4af000865f02f012f004ebaf57a508f4a8067e2ab6f0008202f0008241f4e752f032f024ab90000000067084ebafcd64a806672203946c824560680c00000000c8007efffff6236223946c82456a7431039100b14cf06810008ed803040202f00100680ffffffde2408c48377fc18b24c032800d2829081af42b480640a202f000c241f261f4e75a343b6af000c65ee2f002f014ebaf4f0508f4a8067e0241fab40261f4e75203946c82456a7421239100b14cf77fc18b220790000000006800008ed8041e80022c2824c031800d081d088b0af00106600ff5c241f203900000000261f4e754fefffc4203946c824560680c000000048d74c0c0c8007efffff62000166af40b0af00446500015c223946c82456206f004091c12c48ddfcfff712802f41002473fc18b2200e4c41000220424a8266000132bdfc000062c762000128222f0044a342246f004043f218227391b48164000178a36f0020222f0044701e4c0018004aaf004866624ab900000000670001062f4100142f4800184ebafb84222f0014206f00184a80670000ec203946c8245606800008ed801439100b14cf3242a7422609c68275fc18b24c023800d083b0af0040660000c0262f0044b6b900000000660000b2a56f00482f2f00442f2f00442f41001c2f4800204ebaf3a6508f222f0014206f00184a80670000e8226f0040203c1001614e90af002441f1183c43f118422209227c100162fe93ef00241190080045e801b0139288005288b28866eea340b0af0048662c73fc18b2200e207c46c8245623d000000000a379000000004c410000222f004423c10000000023c0000000004cd74c0c202f00204fef003c4e754cd74c0ca36f0020202f00204fef003c4e752f2f00442f2f00442f41001c4ebaf2fe508f222f00144a806700ff5e4203206f0040203c1001614e226f004090af00241183183e1183183d1183183c41f1183c43f118422209227c100162fe93ef00246000ff4877912f4300206000fe86226f0044743248690001487900000000200f06800000003b2f002f4000282f410020246f004c2f48002445f2183c2f4a00344ebaed3214bc0053226f004c222f0020244145ea003f1382183d74021382183e224143e901e9202f00284fef000c2f490028206f00182f4a002c226f0028a542d3c8b488641826405288246f0040740915939800b4886700fe90528060dc246f00402640226f002cd3c85288159b9800200b60c6518f2039460e5e302f0b2f0a4a80671047f900000000b7f9460e5e2c670a4280245f265f508f4e75204041e800242f48000c2f082f40000c4eb94003567c226f000c588f4280246900282f1ba16745eaffe92f0aab672f2f001c2f3c400ba8762f4000204eb940012bd84fef0018202f0008b0b9460e5e4067165f8aa341b2806640245fa37946c7c72c265f508f4e75226f000c2051a167486a00054868fffb486affffa7672f092f4000204eb9400122544fef00185f8aa341202f0008b28067c02f1ba1672f0aab67a3402f2f001c2f3c400ba8762f4000204eb940012bd84fef0018202f0008b0b9460e5e40668a609e4ebaf8384a80670001004ab9460e5e30660000f64ab9460e70e0660000ec207c46c82456a74123d0000000001039100b14cfc28023c10000000071b9100b14cca567ad672f3c460e5e3823c00000000042b90000000042b9000000004eb94007ec604fef000c207946c82456a7411039100b14cf227900000000d1fc0008ed80c08173fc18b24c010800d1c071b098222f002f3c460e5e384eb94007edb041f90000000023c8460e5e28203c0000000023c0460e5e2c42b9460e5e342f3c4006d754a36742a7a167487800404878006e4eb94005829c4fef002023c0460e5e304a80672442a74879000000002f004eb9400570b82f3c400ce0c44eb9400314944fef00106000fe084e754ab9460e5e30670e203c00000000b0b9460e5e2c67024e754eb94006d75442b9000000004eba1a004ef94007893c598f4ab9460e5e30670e203c00000000b0b9460e5e2c6704588f4e754ebaf73e4a8067f42239460e5e40a340b08165e82e814eb94006d7544ebaf7224a8067d823d700000000a379000000004eba19aaa1674eb94004d948a37946c7c72c588f588f4e754feffff4222f0010206f00144ab9460e70e0677e4ab90000000066122f4800142f4100104fef000c4ef94007893c2f4100042e884ebaf6c2222f000420574a8067da4ab9460e70e067d22039000000002f4000084eb9400789e442b9000000004ebafe024ab9460e5e306726203c00000000b0b9460e5e2c66182f2f00082f3c460e5e384eb94007edb04fef00146000fce24fef000c4e75518f222f000c206f00104ab9460e70e067124ab9460e739a660aab40b0b9460e738e67102f4800102f41000c508f4ef94007909c2f4100042e884ebaf5ca222f000420574a8067dc4eb9400789e4508f6000fd7a598f4eb940031f282e804ebaf5a64a80672c4ab90000000066244a3946c7d8d8661c4ab9460d173a66144ab9460d1694660c2f174ebacabe2f400004588f2017588f4e75598f2f02203946c824560680c0000000222f000c0c8007efffff62084a39800000156708241f2001588f4e751039100b14cc207946c82456d1fc0008ed8075801039100b14cf2242a7422f09c08275fc18b24c020800487008002f41000c4ebaedea508f222f00044a8067b84ab90000000066b0ab40b0b9460d5c3066a62f41000c241f588f6000ca284feffff4ab402f02222f0014206f0018b0816408241f4fef000c4e75203946c824560680c00000000c8007efffff62e44a398000001566dc1439100b14cc227946c82456d3fc0008ed801039100b14cf75822f42000ca742c08275fc18b22f2f000c4c020800487108002f4100102f48000c4ebaed4c508f222f00084a8067944ab900000000668c4a3946c7d8d866844ab9460d173a6600ff7c4ab9460d16946600ff724ab9000000006600ff682f6f000400182f410014241f4fef000c6000f09c2f02ab40b0af00086406241f42804e75203946c824560680c00000000c8007efffff62e64a398000001566de1239100b14cc207946c82456a7421039100b14cfd1fc0008ed807381c0822f0173fc18b24c010800487008004ebaeca4508f4a8067a84ab90000000066a02f2f000c206f000c486800064ebaf022508f241fa3404e754e56fff0223c0000000020394004e1ecb2b9000000006708202e00084e5e4e750c800000000057c0710044802f00486efff04ebacf3e508f4a8067dc2240206900104a8867d22f39000000002f2e00084e90508f4e5e4e7522794004e1ec2039800000122f024a806770203946c824560680c00000000c8007efffff625a207c100b14ccaf417190b280654c1010207946c82456a7421239100b14cfd1fc0008ed807180c28275fc18b2068000000c114c021800744dd1c141f00a00102800017390b4816612b3fc00000000660a71807256b280670810104280241f4e75a342b5b900000000a1674eb94004d948588f241fa37946c7c72ca3404e75af40b0af0004650e203c00000000b0b94004e1ec67024e754ab9400bc6c066f642af00044ef9400322284feffff42f0a4eba167420394004e1ec2079400bc6c00c800000000066044a886608245f4fef000c4e754ab98000001267f0203946c824560680c00000000c8007efffff62dc71b9100b14ccaf41b28065d02268002841e800242f49000c42a72f48000c4869fff648780032a567a7672f084eb940012254487900000000a167246f002c45eaffec2f0aab672f2f00302f3c400ba8764eb940012bd84fef00302039000000004a806734246f000c45eaffe4487900000000a1672f0aab672f2f00182f3c400ba8764eb940012bd84fef0018203900000000a341b280662aa167486a000648780032486affffa767518a2f2f001c2f40001c4eb9400122544fef00184aaf000467aa245fa37946c7c72c4fef000c4e754e56ffb0703348d7040c226e000cb0ae00086700014a7220b2ae0008670001c87431b4ae00086700022e7632b6ae00086700022c22394004e1eca34041f9000000002d48fff0b089662a0c810000000057c020790000000074102d42ffc671004480b1fc000000006720b1fc000000006700008a2f092f2e00084ebabcb8508f4cee040cffb04e5e4e750c810000000066d84ab98000001267d0223946c824560681c00000000c8107efffff62bc73b9100b14ccaf43b68165b07231b2ae0008670001f67233b2ae0008670001b27420b4ae00086694262effc687b900000000b0b9000000006306a379000000004ebafdfa4cee040cffb04e5e4e752f00486efff02d49ffc24ebacc2e508f226effc24a806700ff607431b4ae0008670000d07432b4ae00086600ff4c4ab9000000006700ff42262effc6a16742b90000000087b9000000004eb94004d9484cee040cffb0a37946c7c72c588f4e5e4e75a36effc6a340b0896730203900000000222effc6c2804a81665020394004e1ec223c000000002f092f2e00082d41fff04ebabba4508f6000feea22394004e1ec243c000000002079000000002d42fff00c810000000057c071004480b1fc000000006600fea86000fec44a896600feb4222effc64681c2804cee040cffb023c1000000004e5e4e75a56effc66000ff762440206a00184a886700fe7c222effc683b900000000b1fc00000000660000981039100b14cca367a36771802f004ebad6b84fef000c4a80674048780020203c000000002f004eb94005a2b8508fa1674eb94004d948a37946c7c72c588f4cee040cffb04e5e4e75a96effc66000ff0676082d43ffc66000fefc48780020203c000000002f004eb94005a2b8508f60be222effc620390000000083b9000000004a806700fe5c538023c0000000004ebafc4c6000fe504e90a1674eb94004d948a37946c7c72c588f6094a367487800312d40ffc24ebaba70508f24390000000073b9100b14cc202effc22d42ffc64a8267000362b08265000364206efff02d48ffbe4a886700045c242800082d42ffc6224143e90c112409d482207946c82456d1fc0008ed801639100b14cf2d42ffcea742c68275fc18b24c023800d1c3d1eeffce1628000175901d43ffca764db682660002b84a80670002b271aeffca226efff0b0a90008670003ba10104aaeffbe670002a02041d1fc8000666e101075b9800000027180b480670002de34012601203c00000000eb8b41f9000000002d48ffdc42aeffe0c4fc004422430483000000002d43ffe82042243cb93897029489d1fc46c76dec2d42ffec227946c82456247c100b14cf1d52ffcda7432440d3fc0008ed801d5affdb142effcd200a246effe8d5c02d4affd6c48377fc18b24c032800d3c2142effdb1382a800247c100b14cf16123243a7432409c48377fc18b24c032800262effd62242d3fc100a4ece142effdb13823800a743227946c82456d3fc0008ed801d52ffd9246effdc2d49ffe452aeffdc1d5affca142effd9246effecd5c82d4affd2c48377fc18b24c0328002242142effcad3eeffe41382a8001639100b14cf3243a7432409c48377fc18b24c032800262effd22242d3fc100a4ece142effca138238004aaeffe06706116effdbffe010eeffca0c80000000006600ff082001e988224006800000184243e918322d40ffca207946c82456a7431039100b14cf75fc18b2d1fc0008ed80c08342034c020800a742d1c01183980077fc18b21039100b14cfc0824c0308002040d1fc100a4ece4200118098005289b3eeffca66b24aaeffbe6700019c207946c82456a7421039100b14cf327c004d77fc18b2d1fc0008ed80d1eeffcec08234094c030800a7431182080075fc18b2206effce1039100b14cfc08336094c020800d1c0d1fc100a4ece10834aaeffbe670000c6207946c82456a7421039100b14cf2601d1fc000905a3d68343eeffc9247c100a66f1c08275fc18b2d1c3d5c377fc18b24c020800a742119108001039100b14cfc0824c030800159108002d41ffc24ebab726222effc24aaeffbe6700fb20226effbe2069000c4a886700fb12b1fc000000006600015a2f014ebad9ce588f4ebaf8f86000fafc4aaeffbe6600fd64207946c82456a7421039100b14cf77fc18b2d1fc0008ed80d1eeffcec082744d4c03080071b00800b4806700fd364ebaf8ba6000fabe71fc00ff2d40ffc66000ff3242aeffbe6000fcb642aeffbe42aeffc66000fcaa2041d1fc80006676101016398000000330432601eb8b2408b580340141f9000000002d48ffdc22430483000000002d43ffe84a0057c0c4fc00442042243cb938970294897100d1fc46c76dec2d42ffec44802d40ffe0203c000000006000fd04207946c82456a7421039100b14cf327cffff77fc18b2d1fc0008ed80d1eeffcec08234094c030800a7431182080075fc18b2206effce1039100b14cfc08336094c020800d1c0d1fc100a4ece10834aaeffbe6600fe686000ff28b3eeffbe6700f9d82069000c4a886700fc42b1fc000000006700fc3842a72f012d41ffc24e90508f222effc26000fc24a3672f014e90508f4ebaf7a06000f9a442aeffc66000fba84e56fff0ab4120394004e1ecb2ae0008650e43f900000000b3f90000000067044e5e4e750c800000000057c0710044802f00486efff04ebac5a6508f4a8067e02240206900144a8867d6203900000000b1fc0000000066242f002f2e000c2f2e00084e904fef000ca1674eb94004d948a37946c7c72c588f4e5e4e752f002f2e000c2f2e00084e904fef000ca1674eb94004d948a37946c7c72c588f60da4fefffe448d71c0c22794004e1ec207c46c824562450761c223900000000b3fc0000000057c014398000000371004480e7aab580240ab580b3fc00000000660002180a8000000000b280677223c00000000020100680c00000000c8007efffff625c2850a74375fc18b21039100b14cf347c03f0d9fc0008ed80267c46c76dce223c80006676c0834c020800d9c043ec182310112049764d75a0b682660c71807456b4806700012410105489528147eb004445ea00200c818000667e66d44ab9800000126700019c207c46c8245620100680c00000000c8007efffff6200018475b9100b14cc2210af431039100b14cfb6826500018aa743c08377fc18b22279400bc6c006810008ed804c0308002440d5c14a89660002de42b900000000223900000000a540b0b9460d168466344ab9460d173a662c4ab9460d16946624204241e80c1141f28a001028000177902443764db68a660c71807656b6806700033a101042b90000000023c2000000004a896600015c2039000000004a8067424ab900000000663a0c800000000057c22f004eb94003146c42b9000000002079460d165c588f4482420071807582b4806710a1674eb94004d948a37946c7c72c588f4cd71c0c4fef001c4e754a34a8006700feda207946c82456a7431039100b14cf75fc18b2d1fc0008ed80c08342034c020800a742d1c01183a80077fc18b21039100b14cfc0824c0308002040d1fc100a4ece42001180a80020411028fff875b9800000027180b48067742f4100142f4900184ebab2be226f0018222f00145489528147eb004445ea00200c818000667e6600fe406000fe68b280670623c0000000004ab9000000006700013875b9100b14cc203946c824561039100b14cf42b900000000b4b9000000006700017842b90000000023c2000000006000fed8101075b9800000037180b4806600ff7e42132f4100142f4900184ebab238226f0018222f00146000ff784a89670001e447f900000000203900000000b7c0660000da4a936700fedc4ab9000000006600fed2b7fc0000000057c22f0b4eb94003146c42b9000000002079460d165c588f4482b7fc00000000676c4a886700fe8a4a906600fe8449f90000000045f900000000719c91c8c0fc00182240d3fc46c7d8de203188000c80000000006704258088005888700cb08866e845ea000cb5fc0000000066cc42932f0b4eb940031494b7fc0000000057c023cb00000000588f44806000fe264ab9400bc6a46600fe1a47f90000000049f90000000045f900000000608e4cd71c0c42b90000000042b9000000004fef001c4e754ab9000000006600fe004a806600008e2079460d165cb7fc0000000067704a886700fde64a906600fde0420249f90000000045f9000000006000ff3e2239000000004a816710a3496000fd1c42b9000000006000fd68204241e80c1141f28a00a379000000001028000177902243764db689660a71807656b6806756101023c1000000004ebaf2b6a3496000fcda4ab9400bc6a46600fd72420260900c800000000057c22f004eb94003146c42b9000000002079460d165c588f4482b7fc000000006700ff084a8b6600fe9642006000fd20a34123c1000000004ebaf26060a8b2826700fe2c42b90000000023c2000000004a896600fe2047f9000000006000fe1c4fefffc048d74c7c4ebafb3c4ab90000000067104ab9460e70e06600047042b9000000004ab900000000660002c6203946c824560680c00000000c8007efffff63000108a3412039800065b8b2806700040e23c000000000263946c82456428273b9100b14cf2f41002879b9100b14cc247900000000203900000000b6b900000000670002944a8a6700035e4a80660003bc2a2f002842b90000000023c30000000023c50000000023c4000000002079460d165c4a82670000884a88670000824a90667c223c00000000207c46c7dd7643f9000000002010b0816704238088005888b1fc46c7dd8266ec207c46c7deae43f9000000002010b0816704238088005888b1fc46c7deba66ec4ebae1da23c0000000004a806700039241f90000000042902f084eb940031494a167a379000000004eb94004d948a37946c7c72c508f4cd74c7c4fef00404e75247946c82456a7451039100b14cf7dfc18b2d5fc0008ed809dce428247fadc28c0854c060800d5c02f0e2f0a4e93508f4a806708a340220ee3a88480528e7a08ba8e66e42039800065b8a345ba80670001ea23c000000000263946c824561a39100b14cf1f45002f7d8579b9100b14cc2f4600283c7c01f1428047eafe4d0102670a73b3e800a345ba81675452804dee001e7208b28066e6af45ba84650001f64a324822660001ee203c400d301c23c0400d5f4c4a826700fe6e4ab98000001257c224790000000020390000000075024482b6b9000000006600fe62600000f02f0041ef00392f4000242f4100284ebaba56207946c82456d1fc0008ed801a39100b14cf3245a7452c09cc857bfc18b24c056800d1c61c30e80030467c7f2a08ca86a7462e85486f0039202f00282f002f40002c4ebad69a1a2f003b227946c82456d3fc00095048ca862f45003c1a11222f00302c2f003c4fef000ceda930452a088a8112851c39100b145e30462a08828513c1100b145e207946c82456d1fc0009b332a350a379100f85984eb940027e004dee001e202f002072085280b2806600fedc6000fef24ebae21a4a80670001a64ab9460e5e306600fd2a4ab9460e70e06600fd204ebae9686000fd182c2f0028bcb9000000006600fd62b8b9000000006600fd584a8a670001a04a806700fd7447f9000000004a82670a4ab900000000670001a24ab9000000006600fde82f0b4eb94003146c42b90000000023c30000000023c40000000043ef002c588f23d1000000006000fd2cbab9000000006700fe104a826700017297cb4dfada5842a77c0842a72f0b4e96528b4fef000cbc8b66eca37900000000263946c824561039100b14cf3c7c01f147eafe4d1f40002f7380428079b9100b14cc2f4100286000fdec203c400d31ae6000fe124a806740203c000000004ab9000000006600fd462f004eb94003146c42b90000000042b90000000023c30000000041ef002c588f23c40000000023d0000000006000fc84222f002842b90000000023c30000000023c10000000023c4000000006000fc64203c000000004ab9000000006600fce6609ea346bcb9000000006700fbf0a37900000000263946c82456428273b9100b14cf2f41002879b9100b14cc6000fbe64ebae0804a806600fb9042b9000000006000fb8642b9000000006000fb8641f90000000042902f084eb940031494a167a379000000004eb94004d948a37946c7c72c508f6000fc6e4a806700fbd647f9000000004a826700fe6c4ab9000000006600fe624ebaddf4b5c06600fe584cd74c7c4fef00404e75a37900000000263946c824561a39100b14cf1f45002f7d8579b9100b14cc2f4600286000fc96202f00040c800000000567044efa038c41fa023020084e75400b3eac400b3e98400b7c67400b5413400b7a63000000004fefffec48ef030200082e802f4800044ebae24c4cef030200084fef00144e754fefffe048ef0307000c2409d48006820008ed802e822f41000474000c8400000005660274012f4200084ebae34a0c8400000005660228004cef0307000c4fef00204efa031248794005a61c600648794005a8562239460d5c304fefffe048ef030d000c2609d68006830008ed802e832f42000476000c8100000005660276012f43000826014ebae2ee0c83000000056702200322004cef030d000c4fef00204e7516102f0071036100ff362600201f79034879400bb7044ef9400585e67110610000582f004879460e73864ef940078890610000124ef94003d722610000084ef94004c3746100fef841fafedc22300c004e7571104fef00186100fee44ef94003c986711061000012b48066064ef9400786ce4ef9400786fc4fefffec48ef030200082e802f4800044ebae1844cef030200084fef00144e752f082f01207946c8245673b9100b14cfc2fc18b2d1c173b9100b14ccd1fc0008eda271b01800221f205f4e750c820000000566344fefffe448ef0303000c2e8b2f4300044ebae9982f4000084cef0303000c4aaf00084fef001c67064ef94003a6246100ff9c24004efa01be0c8600000005662a4fefffec48ef030300042eaf005c4ebae80e2f40005c4cef030300044fef00142f006100ff682c00201f4efa01964eb94005213c4eb94007e9404ebaf89c4ef940052228564543544f5200004878ffff4878ffff4ebae7844ef94004e4d04feffff048d703034ebadd244a80670c4cd703034fef00104efae4da4cd703034fef00102f0a4ab9460e70e04ef9400791ec4feffff048d703034ebae3c64a80670a4cd703034fef00104e754cd703034fef00104fefffe848d73c0c4ef94006d78c7c010c800000000566224feffff048d703034ebadcb84a80670a4cd703034fef0010600c4cd703034fef0010bc8065064ef940077b624ef940077b704efadc7e4fefffa048d77cfc4ef9400023204eb9400339704a80671e4feffff048d703032f024ebae9c4588f4cd703034fef00104ef940083b7e4ef940083b062f2e00084878ffff4eb940031ee04feffff448d703022f004ebae896588f4cd703024fef000c4ef94004e1f44feffff048d703034ebae8d24a804cd703034fef0010660c2279400cfeda4ef9400322ec4e7500000000000000004ef9400365500000000000004ef9400334de0000000000004ef94007982200000000000000004ef94003a53600000000000000004ef94003cda00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffff0000000000000000000000000000000000000000ffffffffffffffff31000000000000000000000000000000000000000000000000003e00000000000000000000000000000000000000000000000000ff00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000002000000000000000000000000000000000000000000030000000000000000000000000000000000000000000400000000000000000000000000000000000000000005000000000000000000000000000000000000000000ff0000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffff0000000000000000000000000000000000000000ffffffffffffffff330000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000003100000000000000000000000000000000000000000000000000ff0000000000000000000000000000000000000000000000000031000000000000000000000000000000000000000000000000003200000000000000000000000000000000000000000000000000ff00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000002000000000000000000000000000000000000000000030000000000000000000000000000000000000000000400000000000000000000000000000000000000000005000000000000000000000000000000000000000000ff00000000000000000000000000000000000000000056454300465744004f46460052455600564543544f522047454e455241544544004e4f204348414e474500ab204d414348494e453a564543544f5220bb00564543544f52004300432300440044230045004600462300470047230041004123004200303031205354415449430030303220464c455800434852004d494e004d414a00444f520050454e5400545950450044454e5300524f4f54005343414c00474154450041434e540053454544005350414e004f46535400524f54005250540044495200564543544f5220312f3200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b0b00010830010c0c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000033203132000007000000400000050006000000010000000000000056000000000000000000000000000000000000000000000000000000000fff05ad0ab506ad04a900000000000000000000000000000000000000000f100b047e7f7f0c183f40010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b0b000120300c0c000000000000000000000000000000000000000000000000000100000000000000000400fff10000000000000000000000000300000100000000000000000000000003000003000000000000000000000000030000050000000a000000000000004c02000001000000130000004c00000074020000010000001e00000054000000300100000500000027000000c00000055e020000010000003e000000e80000000a01000007000000450000061e000000b802000001000000520000003c0000000c010000070000005a000006d6000000f80200000100000069000007ce0000011c0200000100000073000008ea000000d4020000010000007f000009be0000013e020000010000008e0000002000000004010000030000009d0000001c0000000401000003000000ad000000240000019201000003000000b6000000780000003001000007000000c0000010060000004802000001000000d100000fb600000050020000010000000000000000000000000300000600000000000000000000000003000007000000e200000afc0000015c02000001000000f3000000000000000401000003000001030000000c00000030010000070000026200000c580000029e020000010000010d00000ef6000000c0020000010000012a0000104e000000ba020000010000013e00001108000001dc020000010000014d0000004800000030010000070000005f000012e40000000a02000001000001ef000012ee0000000a02000001000001c5000012f800000008020000010000015500001300000000a60200000100000163000013a6000000360200000100000172000013dc0000003202000001000001800000140e00000032020000010000018e00000048000000300100000700000168000014400000003e02000001000001770000147e0000003e0200000100000185000014bc0000003e0200000100000196000014fa000000ea02000001000001a4000015e4000000ea02000001000001b2000016ce0000010602000001000001c0000017d40000012402000001000001ce000018f8000000ea02000001000001dc000019e20000010602000001000001ea00001ae80000010602000001000001f800001bee000004ee0200000100000588000001b60000010101000003000002060000000000000040010000050000020f000020dc00000046020000010000021f00002122000001b00200000100000230000022d200000048020000010000024a0000231a0000000a02000001000001e100002324000000d002000001000001d3000023f4000000d002000001000001b7000024c4000000d0020000010000015a00002594000000d002000001000001a900002664000000d0020000010000019b00002734000000d0020000010000025d000028e200000104020000010000026b00002db80000033c020000010000027a000002b70000091a0100000300000282000030f4000001ba0200000100000291000032ae0000008402000001000002a000000bf60000000401000003000002aa000034d60000003602000001000002b7000000180000000401000003000002c1000000140000000401000003000002cb0000001000000004010000030000034900000bd200000004010000030000002100000bda0000001801000003000002d6000036cc0000005a02000001000002e0000000040000000401000003000002ec000000080000000401000003000002f8000037260000005a02000001000003040000000c000000040100000300000311000000e000000008010000070000031d000000a8000000080100000700000328000000840000000401000005000003320000004c00000004010000050000033c000000440000000401000005000003460000005000000004010000050000034e000000ba00000006010000070000035a000000b400000006010000070000036d000000880000000401000005000003750000004000000004010000050000037f00000048000000040100000500000388000000b000000004010000070000039000000bd600000004010000030000039f00000bf200000004010000030000032b00000c060000000401000003000003a900000c020000000401000003000003b400000bfe0000000401000003000003bf00000bfa0000000401000003000003cb46c82456000000000000fff1000003d40008ed80000000000000fff1000003dd0000588c0000000000000001000003ec000057340000000000000001000003f4000055220000000000000001000004000000589800000000000000010000040f0000559600000000000000010000041d0000565c0000000000000001000004310000562800000000000000010000043e0000567c00000000000000010000044b000058a400000000000000010000045a000058b20000000000000001000004c400000c4400000000000000030000046900000c920000000000000003000004710000576a00000000000000010000047d0000579a000000000000000100000489000057dc000000000000000100000496000057d40000000000000001000004a6000057e00000000000000001000004b2000057e60000000000000001000004bf00000d640000000000000003000004cc00000dcc0000000000000003000004d900000e1a0000000000000003000004e6000001060000000c11000007000004f90000011200000030110000070000050e000000c000000020110000070000051a000000f200000014110000070000052d000028040000000c120000010000053e00002810000000d2120000010000054a000029e6000000d8120000010000055800002abe0000004c120000010000056800002b0a00000066120000010000057b00002b70000001e8120000010000058f00002d580000006012000001000005a3000033320000013a12000001000005b80000346c0000001012000001000005c9000057f00000000010000001000005db0000347c0000005a12000001000005e70000350c000001c012000001000005ee0000577200000000100000010000060100003780000000721200000100000609000037f2000000c61200000100000619000038b8000002981200000100000623000001420000000b110000070000063300003b50000000f2120000010000064700003c420000010a120000010000065b00003d4c0000002e120000010000066f00003d7a00000064120000010000068400003dde00000098120000010000069100003e7600000054120000010000069f00003eca0000004412000001000006ac00003f0e0000008a12000001000006ba00003f98000000c2120000010000073f00000c0c0000000010000003000006c20000405a0000008212000001000006d0000040dc0000005812000001000006d800000d480000000010000003000006e60000582c0000000010000001000006f300004134000000a41200000100000700000041d80000002a120000010000070d000042020000011612000001000007200000587e0000000010000001000007330000431800000758120000010000073a00000d2c00000000100000030000074800004a700000009e120000010000075000004b0e000004ba120000010000075800004fc80000052a120000010000076300000c28000000001000000300000771000054f20000000010000001000007810000550a00000000100000010000078e0000554200000000100000010000079d000055880000000010000001000007ab000055900000000010000001000007ba000056140000000010000001000007c40000561e0000000010000001000007ce000055e40000000010000001000007dc000056000000000010000001000007ec000056360000000010000001000007f900005646000000001000000100000808000056a8000000001000000100000817000056e80000000010000001000008260000571e0000000010000001000008330000573c00000000100000010000083f0000574e00000000100000010000084c00005780000000001000000100000859000057b0000000001000000100000867000057ec000000001000000100000873000057fe00000000100000010000087f0000585800000000100000010000088d0000587e000000001000000100766563746f722e63006d675f6469727479006d675f666f7277617264006d675f736176656400766563746f725f67656e65726174652e706172742e30007363616c6573006d6964695f636f6e74726f6c0066697273742e32006d6964695f666f726d61745f3130006d6964695f73617665006d6964695f706172616d730067656e657261746f725f70616765007372635f706167655f7265616479007372635f706167655f736f75726365007372635f7061676500666f726d6174732e360067656e657261746f725f776964676574007365636f6e646172795f77696467657400766563746f725f6d6964695f70616765006d6964695f706167655f6275696c7400666f726d6174732e3100647261775f67656e657261746f725f7769646765742e706172742e30006d675f766965772e636f6e737470726f702e3000666f726d61745f636f6e74726f6c00726f6f74732e35006d6964695f666f726d61745f34006d6964695f666f726d61745f3131006d6964695f666f726d61745f33006d6964695f666f726d61745f3200726f6f74732e30006d6964695f666f726d61745f30006d6964695f666f726d61745f31006d6964695f666f726d61745f35006d6964695f666f726d61745f36006d6964695f666f726d61745f37006d6964695f666f726d61745f39006d6964695f666f726d61745f38006d6964695f67656e6572617465006c6f636b65642e3300766563746f725f6d6964695f79657300766563746f725f6d6964695f6b6e6f6200766563746f725f6d6964695f61737369676e2e706172742e3000766563746f725f6d6964695f61737369676e00736176655f73657474696e67730067656e65726174655f747261636b0073746167696e67006368616e67655f636f6e74726f6c0067656e657261746f725f7669657700656469745f7669657700706f6f6c5f636f6e7465787400706f6f6c5f62616e6b00706f6f6c5f7061727400706f6f6c5f747261636b00706f6f6c5f666c657800706f6f6c5f62726f77736500706f6f6c5f64697265637400706f6f6c5f73746174696300706f6f6c5f70656e64696e6700706f6f6c5f6c6162656c730068616e646c6572732e37006d675f616374697665006d675f7365636f6e64006d675f637572736f72006d675f6d696e65006d675f6172705f70616765006d675f6172705f73657475705f736c6f7473006d675f7365656e006d675f6f70656e6564006d675f73686f776e006d675f6b657973006c6173745f7472616e73706f7274006c617965725f67656e0073686f776e5f62616e6b0073686f776e5f706172740073686f776e5f747261636b0042414e4b5f50545200504152545f4f46460073745f6e616d655f7265706c61790073745f6e616d650073745f726f775f747970650073745f6d61696e5f7265706c61790073745f7372635f636f6d6d6f6e0073745f63686f6f7365725f726f775f747970650073745f6e616d655f7069636b0073745f706f6f6c5f6b696e640073745f656469745f7265706c61790073745f647261775f7265706c61790073745f656e6373002e706f6f6c5f73746f636b002e6c6973745f73746f636b002e7469746c655f73746f636b002e7469746c655f756e7369676e6564002e7469746c655f706f6f6c002e7469746c655f706c61696e006d675f6c6973745f6b657973006d675f706167655f6b657973006d675f706167655f656e637300766563746f725f636f6e74726f6c5f6d617800766563746f725f636f6e74726f6c5f6e616d657300766563746f725f6d69646900766563746f725f7363616c655f6e616d657300766563746f725f6e6578745f7365656400766563746f725f7061636b00766563746f725f756e7061636b00766563746f725f67656e657261746500766563746f725f747261636b5f656d70747900766563746f725f77726974655f70687261736500766563746f725f7369676e65645f747261636b00766563746f725f76616c69646174655f706172740073745f76616c69646174655f706172740073745f73746f636b5f76616c69646174650073745f73656c65637465640073745f6b65790073745f73746f636b5f706f6f6c5f6f70656e0073745f747970650073745f63686f6f7365725f747970650073745f61737369676e00766563746f725f64656661756c74730073745f706f6f6c5f63686f6963655f647261770073745f706f6f6c5f63686f6963655f6f70656e0073745f706f6f6c5f63686f6963655f6c6566740073745f706f6f6c5f63686f6963655f72696768740073745f706f6f6c5f6c6566740073745f706f6f6c5f72696768740073745f647261775f706167650073745f73657475705f706167650073745f6b6e6f620073745f73657475705f6b6e6f62006d675f70616765006d675f706167655f6c61796572006d675f706167655f73697465006d675f6172705f7365747570006d675f747261636b5f746170006d675f6e6f74655f73657475705f64726177006d675f73746f636b5f6e6f74655f64726177006d675f6b6579006d675f6c6973745f6c61796572006d675f6b6e6f62006d675f7469636b0073745f75695f7469636b0073745f656469745f6c617965720073745f6d616368696e655f6e616d650073745f7372635f6e616d65730073745f6d61696e5f636f6d6d69740073745f7372635f636f6d6d69740073745f7372635f636f6d6d6974320073745f6e616d655f610073745f6e616d655f620073745f73657475705f6f70656e0073745f63686f6f7365725f6f70656e0073745f73657475705f726f770073745f63686f6f7365725f726f770073745f73657475705f65646974360073745f73657475705f64726177360073745f7469636b5f686f6f6b0073745f7372635f647261770073745f706f6f6c5f6f70656e0073745f6c6973745f647261770073745f706f6f6c5f7469746c650073745f76616c6964617465006d675f7461705f73697465006d675f73657475705f73697465006d6f647765726b5f73746f636b5f34303033363534385f38000000000006a40000170100000106000009d4000003010000001c000009f000000301000001b600000a12000003010000004000000a5c000002010000100600000a9e00000301000001b200000aa4000003010000002000000aaa00000301000001ae00000ab0000003010000001c00000ab6000003010000002400000ac60000020100000fb600000b1a000003010000000000000b3800000301000001b600000b60000003010000002800000b6e000003010000002e00000b7e000003010000002d00000b86000017010000000c00000b96000003010000003400000ba4000003010000004000000bb2000017010000011200000bb8000017010000000c00000c20000003010000005e00000c3200000301000001b200000c38000003010000002000000c3e00000301000001ae00000c44000003010000000000000c4a0000030100000024000010fe00001701000000c000001f780000040100000040000020f800001601000000100000210e000016010000002100002e600000030100000bd100002fa200000301effea16a00002fd20000030100000bd1000031860000170100000106000034f40000030100000014000035020000030100000010000035b00000030100000bd2000036180000030100000bd20000363c00001601000000100000367e0000030100000bd20000368a0000030100000bf6000036ac0000160100000021000036e80000030100000014000036f600000301000000100000370600000301000000040000370c000003010000000800003742000003010000001400003750000003010000001000003760000003010000000400003766000003010000000800003994000003010000001000003a0e000003010000001800003a14000003010000000c00003a22000003010000001000003a28000003010000001400003c6a000003010000001800003c78000003010000001400003c8e000003010000001000003c94000003010000000800003c9a000003010000000c00003cee00001701000000e000003d5600001701000000e000003d6c000003010000000800003d8600001701000000e000003dbc000003010000000400003dc2000003010000000800003e3a000003010000000800003e4c00001701000000e0000040e20000030100000d48000040ee0000040100000084000040fe000002010000582c000041a4000002010000582c000041be000004010000004c000041e2000002010000582c0000421a000002010000582c00004364000002010000582c0000437c0000030100000d2c000043840000030100000d48000043a4000002010000582c000043f40000040100000050000043fa000004010000004400004402000004010000004400004454000004010000004c0000445a00000401000000500000449800001701000000c0000044b800001701000000c0000044c8000002010000582c000044d40000030100000d2c000044f600000401000000500000451800000401000000500000451e00000201000020dc000045460000160100000010000045860000160100000021000045a20000040100000050000045b000000401000000440000469800001701000000ba000046b400001701fffffccd000047c200001701000000c0000048f8000002010000231a0000499800001701fffffccd000049c600001701000000ba00004a3c000002010000231a00004a8a000004010000008400004a96000002010000582c00004ac2000002010000212200004b2e000002010000582c00004b48000002010000582c00004b5200001701000000c000004b5c000004010000008800004c28000004010000004000004c72000004010000004c00004c78000004010000004800004c960000030100000d4800004ca6000004010000008400004d6c000004010000008800004d8e000004010000004000004d94000004010000004800004d9e000004010000004c00004da4000004010000004800004e000000030100000d4800004e10000004010000008400004e200000030100000d2c00004e54000002010000431800004e6c000004010000008400004e7e0000030100000d4800004e86000004010000008400004eb6000004010000004000004ebc000004010000004c00004ede0000030100000d2c00004f14000004010000004c00004f28000004010000004000004f46000004010000004400004f640000030100000d4800004f74000004010000008400004f840000030100000d2c00004f9c000004010000004400004fae000004010000004c00004fb4000004010000004800004fe800000301000000080000501c0000030100000bd6000050460000030100000c02000050600000030100000bf6000050660000030100000c020000506c0000030100000bfe000050720000030100000bfa0000508e000002010000350c000050d80000030100000bf2000050f60000030100000c06000051660000030100000bd6000051e60000030100000c02000052e60000030100000bfe000052f00000030100000bfa0000532c0000030100000c06000053320000030100000c02000053380000030100000bfa000053440000030100000bfe0000534e0000030100000bd6000053780000030100000bd6000053b60000030100000c28000053ce0000030100000c06000053d40000030100000bf6000053da0000030100000c02000053e60000030100000bfa000053ec0000030100000bfe000053fa0000030100000bf6000054000000030100000c02000054060000030100000bfe0000540c0000030100000bfa000054160000030100000c0c0000542a0000030100000bd6000054340000030100000bd60000546000000301000000080000546a000003010000000c000054860000030100000c06000054ce0000030100000bd60000551e00000201000057340000008c0000040100000054000002ee00001701000000e800000666000017010000003c000008fe000017010000010600000904000017010000003c000009c80000030100000020000009de0000030100000024000009f8000017010000011200000a0000000301000000ee00000a06000017010000007800000a0c000003010000003a00000b12000003010000002000000b2a000003010000002400000b40000016010000000000000b48000003010000002800000b66000003010000002e00000b78000017010000000100000b9e00000301000000ee00000f3a00001701000001060000115200001701000000f200001186000016010000000c0000126a00001601000000040000127a00001701000000480000129c0000160100000008000013c4000016010000000c000013d60000160100000004000013f400001701000000f20000142600001701000000480000145e000016010000000c0000147800001601000000040000149e00001701000000f2000014dc000017010000004800001d0400000301000001b600001d7200000301000001b600001e92000004010000000000001f5e00000401000000000000206800000401000000000000208800000401000000000000218c000017010000010600002202000017010000010600002e2c00000301000002b700002e82000003010000030700002f4600000301000001b600002f5400000301000001b600002f5e00000301000002b700002fa800000301000002b7000030520000030100000330000030be00000301000002b70000330a0000030100000bf6000034d80000030100000018000035340000030100000bd2000035540000030100000bda000035860000030100000bda000036740000030100000bf6000036ce0000030100000018000037280000030100000018000037f800000301000000080000388c0000030100000010000038b0000003010000000400003940000003010000000800003ab6000017010000014200003b6200001701000000e000003cb8000003010000001000003ce200001701000000a800003d2a000016010000002b00003df4000003010000000800003e2a000003010000000400003ede0000030100000bf600003f7c0000030100000bf60000401a0000030100000bf60000403e0000030100000c0c000040be0000030100000bf600004124000004010000004c0000427c0000160100000008000042a40000040100000044000042b6000016010000003e000042d600000401000000440000435600001701000000c00000436c000004010000008400004444000004010000004c000044820000040100000050000044be00000401000000840000459c0000040100000044000045e20000040100000044000046a000001701000000b40000498c00001701000000b400004a840000030100000d4800004abc000004010000004c00004b28000004010000008800004c2e000004010000004800004c84000004010000008400004c8e000004010000005000004d72000004010000008400004dde0000030100000d2c00004de4000004010000008400004df6000004010000005000004e3400001701000000b000004e3a000004010000005400004e9e0000030100000d2c00004ea400001701000000b000004eaa000004010000005400004ec8000004010000005000004ef400001701000000b000004efa000004010000005400004f04000004010000004000004fc00000030100000d4800004fd6000003010000000800004fee000003010000000c0000503a0000030100000bf2000050400000030100000c060000509a00000301b9382e64000050ba00000301b9382d38000050e40000030100000c0c000051d60000030100000bf2000051dc0000030100000c06000053060000030100000c0c000053100000030100000c0c0000531a0000030100000bd2000053bc0000030100000bd20000541c0000030100000bd2000054740000030100000c28000054a40000030100000c28000054b00000030100000c2800000c100000030100000c4400000c140000030100000c9200000c2c0000030100000c4400000c46000002010000350c00000c4a000002010000350c00000c4e000002010000350c00000c60000002010000350c00000c64000002010000350c00000c68000002010000350c00000c940000020100003f9800000caa0000020100003f9800000cc00000020100003f9800000cd60000020100003f9800000cec0000020100003f9800000d020000020100003f9800000d300000030100000d6400000d4c0000030100000dcc00000d500000030100000e1a00000d66000002010000431800000d6a000002010000431800000d6e000002010000431800000d80000002010000431800000d84000002010000431800000d88000002010000431800000d9a000002010000431800000d9e000002010000431800000da2000002010000431800000dce000002010000431800000dd2000002010000431800000dd6000002010000431800000de8000002010000431800000dec000002010000431800000df0000002010000431800000e1c0000020100004a7000000e320000020100004a7000000e480000020100004a7000000e5e0000020100004a7000000e740000020100004a7000000e8a0000020100004a700000000c00000201000014fa0000001000000201000015e400000014000002010000140e0000001800000201000013dc0000001c00000201000013000000002000000201000016ce0000002400000201000017d40000002800000201000018f80000002c0000020100001ae80000003000000201000019e20000003400000201000006d60000003800000201000013a60000004800001601000000450000004c000016010000004700000050000016010000004a00000054000016010000004c00000058000016010000004f0000005c00001601000000510000006000001601000000530000006400001601000000560000006800001601000000580000006c000016010000005b00000070000016010000005d0000007400001601000000600000007800000201000027340000007c00000201000026640000008000000201000014bc00000084000002010000147e0000008800000201000025940000008c00000201000024c40000009000000201000012f80000009400000201000023f40000009800000201000012ee0000009c0000020100002324000000a000000201000012e4000000a40000020100001440000000a80000020100003726000000ac00000201000036cc000000c4000016010000003e000000cc000002010000231a000000d00000020100000afc000000d40000020100002122000000d800000201000020dc000000e00000160100000062000000e4000016010000006d000000f20000160100000076000000f6000016010000007a000000fa000016010000007e000000fe000016010000008200000102000016010000008600000112000016010000008b0000011600001601000000900000011a00001601000000950000011e000016010000009a00000122000016010000009f0000012600001601000000a40000012a00001601000000a90000012e00001601000000ae0000013200001601000000b30000013600001601000000b80000013a00001601000000bc0000013e00001601000000c0002e73796d746162002e737472746162002e7368737472746162002e72656c612e74657874002e72656c612e64617461002e627373002e726f646174612e737472312e31002e72656c612e726f64617461000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000001000000060000000000000034000058c0000000000000000000000004000000000000001b00000004000000400000000000007e2400000e100000000900000001000000040000000c0000002b000000010000000300000000000058f400000eb4000000000000000000000004000000000000002600000004000000400000000000008c34000001d40000000900000003000000040000000c00000031000000080000000300000000000067a80000008c0000000000000000000000040000000000000036000000010000003200000000000067a8000000c4000000000000000000000001000000010000004a0000000100000002000000000000686c0000014d000000000000000000000002000000000000004500000004000000400000000000008e08000002e80000000900000007000000040000000c00000001000000020000000000000000000069bc00000bc00000000a000000790000000400000010000000090000000300000000000000000000757c000008a60000000000000000000000010000000000000011000000030000000000000000000090f00000005200000000000000000000000100000000", + "sha256": "dec0684cf2b1f40e4ea7747507ef576a4d89a43634994efada80f061ddf76988", "stockCopies": [ { "section": 1, - "offset": 12948, + "offset": 22668, "source": 1073951960, "bytes": 6, "sha256": "d6c9f1f60272197a17511f496fc19dd21ddd7df5f1f1ec0cab7a16cad60b0609" }, { "section": 1, - "offset": 12960, + "offset": 22680, "source": 1074239516, "bytes": 6, "sha256": "89c50ac3ca041fdf5647ec5ee2c3580f9a67dd79f0b5cc15ceadda4b9e9bede0" }, { "section": 1, - "offset": 12972, + "offset": 22692, "source": 1073980718, "bytes": 8, "sha256": "cae34bf50383462ed4f92d8044e3021247edb8bf69c17a9c7ead62f6edf79510" }, { "section": 1, - "offset": 12986, + "offset": 22706, "source": 1073991064, "bytes": 8, "sha256": "ed71ef874312890edc87cef7e19cd8c0f8ac4ac9b90182c2364f78d3a4567f45" + }, + { + "section": 1, + "offset": 22654, + "source": 1073964360, + "bytes": 8, + "sha256": "e7935464f6aea76650f55814efc9b45785485164937f3bd5ed6f2a4d384b8d4b" } ], "placement": "linked", @@ -2845,6 +2852,50 @@ "kind": "jmp", "writeLength": 8, "note": "VECTOR native selection/editor access" + }, + { + "address": 1074281212, + "guardLength": 10, + "guardSha256": "d611d680ad5031e96fe61f954ea40fd87a76bbc961c6d2deefdfc55935dd9f1e", + "unit": "vector", + "symbol": "mg_tap_site", + "target": null, + "kind": "jmp", + "writeLength": 10, + "note": "Double-tap TRACK in MIDI mode opens MIDI NOTE SETUP, with the generator list" + }, + { + "address": 1074061802, + "guardLength": 10, + "guardSha256": "b40743bf9a64ff977ac996a4a3c34f6582d8fcda08b78cf52fdf634c94c54959", + "unit": "vector", + "symbol": "mg_page_site", + "target": null, + "kind": "jmp", + "writeLength": 10, + "note": "VECTOR controls on a VECTOR MIDI track's ARP page" + }, + { + "address": 1073947264, + "guardLength": 8, + "guardSha256": "de77e904028311689866c543af3ce42a7fcfa1e3fdc531807fc98eaf0689d1cf", + "unit": "vector", + "symbol": "mg_setup_site", + "target": null, + "kind": "jmp", + "writeLength": 8, + "note": "FUNC+AMP turns a VECTOR MIDI track's ARP page to its second page" + }, + { + "address": 1073964360, + "guardLength": 8, + "guardSha256": "e7935464f6aea76650f55814efc9b45785485164937f3bd5ed6f2a4d384b8d4b", + "unit": "vector", + "symbol": "mg_note_setup_draw", + "target": null, + "kind": "jmp", + "writeLength": 8, + "note": "MIDI NOTE SETUP lists the MIDI generators in its left half" } ], "refs": [ diff --git a/src/engine/assets/resident-dsp.json b/src/engine/assets/resident-dsp.json index 3b7dc35e0..ee3addea9 100644 --- a/src/engine/assets/resident-dsp.json +++ b/src/engine/assets/resident-dsp.json @@ -335,7 +335,7 @@ ] } ], - "sourceCommit": "905faab2e4459b8bf80ea8040282b3bb7a9988f3", + "sourceCommit": "2970a7d731dd5815db6dc2fe1834069a10f068e8", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -357,7 +357,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.1.2-experimental", - "vector": "0.2.4-experimental", + "vector": "0.3.0-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.1-experimental", "recorder-loop-fix": "0.1.0-experimental", diff --git a/src/engine/assets/rom-packages.json b/src/engine/assets/rom-packages.json index 9d433a501..254647954 100644 --- a/src/engine/assets/rom-packages.json +++ b/src/engine/assets/rom-packages.json @@ -399,7 +399,7 @@ "sha256": "fdba0ffd31b7932ceb1ded3bde9a976b6f148ae96fc73a4efc4fedf6fb692341" } ], - "sourceCommit": "905faab2e4459b8bf80ea8040282b3bb7a9988f3", + "sourceCommit": "2970a7d731dd5815db6dc2fe1834069a10f068e8", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -421,7 +421,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.1.2-experimental", - "vector": "0.2.4-experimental", + "vector": "0.3.0-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.1-experimental", "recorder-loop-fix": "0.1.0-experimental", diff --git a/src/engine/assets/usb-audio-packages.json b/src/engine/assets/usb-audio-packages.json index 03e20534c..ca6510012 100644 --- a/src/engine/assets/usb-audio-packages.json +++ b/src/engine/assets/usb-audio-packages.json @@ -553,7 +553,7 @@ } ] }, - "sourceCommit": "905faab2e4459b8bf80ea8040282b3bb7a9988f3", + "sourceCommit": "2970a7d731dd5815db6dc2fe1834069a10f068e8", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -575,7 +575,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.1.2-experimental", - "vector": "0.2.4-experimental", + "vector": "0.3.0-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.1-experimental", "recorder-loop-fix": "0.1.0-experimental", diff --git a/src/engine/assets/utility-packages.json b/src/engine/assets/utility-packages.json index cd9f3357a..a17a4990c 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": "905faab2e4459b8bf80ea8040282b3bb7a9988f3", + "sourceCommit": "2970a7d731dd5815db6dc2fe1834069a10f068e8", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -25,7 +25,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.1.2-experimental", - "vector": "0.2.4-experimental", + "vector": "0.3.0-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.1-experimental", "recorder-loop-fix": "0.1.0-experimental", From d22570022ca9c67cd0241b782821525af3ff595c Mon Sep 17 00:00:00 2001 From: repeat98 Date: Wed, 21 Oct 2026 19:54:16 +0200 Subject: [PATCH 04/33] VECTOR 0.3.0: an owner-approved update; drop the 0.2.4 qualification record Co-Authored-By: Claude Opus 5.5 --- .../modules/vector/octamod.module.json | 135 +----------------- 1 file changed, 6 insertions(+), 129 deletions(-) diff --git a/sdk/octabam/modules/vector/octamod.module.json b/sdk/octabam/modules/vector/octamod.module.json index 54b3e5d30..0cc345fe8 100644 --- a/sdk/octabam/modules/vector/octamod.module.json +++ b/sdk/octabam/modules/vector/octamod.module.json @@ -210,141 +210,18 @@ }, "tests": { "report": "TESTING.md", - "summary": "Firmware-free generator/writer and all 256 VECTOR-instance masks pass ASan/UBSan; authored assembly reproduces. Exact-image ColdFire emulator tests reproduce the previous reset/stuck transport and pass two-instance Part/project save-reload, saved-card fresh load and battery-only restart. Twelve SRC controls, ordinary stock validation, both pool menus and advancing transport are checked. Physical reboot/audio remain untested under the exact-version owner exception.", + "summary": "0.3.0 adds VECTOR as a MIDI generator for the MIDI tracks and makes edits cheaper: a 64-step rewrite took 0.5 ms on the owner's MKII (3.9 ms before), with audio frames and MIDI timing steady. The list, both pages, generation, MIDI output over USB, removal and reinstall ran on the owner's MKII over USB with development bases; the card build was checked by octabam's native builder only. Current-build hardware, chip cycles and complete memory bounds are not measured, under the owner's approval for this exact source.", "hardwareStatus": "untested", "gates": [ "Firmware-free sanitizer generator, writer and packed-settings checks", + "Hoisted scale lookup identical to 0.2.4 over 18,144,000 parameter sets", "Authored C/hooks to assembly reproducibility without firmware", - "Current native SRC and sample-pool emulator behavior walks", - "ColdFire instruction/stack probe and conditional resource accounting", + "Base MIDI generator registry host test (sdk/tests test_midi_generators.c)", + "Owner's MKII over USB: list, pages, generation, MIDI output, removal, MODE guard, edit cost", "Browser/native build parity and matching composition rejection", - "Signed Part validator preservation for all 256 track masks", - "Two-instance native Part/project save-reload, saved-card fresh load and battery-RAM-only restart", - "Exact-version owner exception; physical reboot/audio unverified" + "Owner-approved update for this exact source; current-build hardware, chip cycles and memory bounds unmeasured" ], - "evidenceRevision": "16c04ae4d713376bd6bb119951899c33fa2e0ae9", - "qualification": { - "moduleVersion": "0.2.4-experimental", - "sourceSha256": "1255e99133cbd8d6d2587c95f93462ea80fccbd169462a2acb02aedbd346cbd3", - "imageSha256": "cabcc2967a23a0ef719a38de444aec1b68662c12bb9057093d475b89424d0026", - "cycles": [ - { - "processor": "coldfire", - "worstCase": 22400000, - "maxConfiguration": 185200000, - "maxInstances": 8, - "budget": 264000000, - "unit": "cycles/event", - "method": "static", - "conditions": { - "parameterExtremes": "Firmware-free sanitizer matrix covers all roots/scales/pitch windows and all secondary-control domains. Native instruction probe: 3,840 length/type/scale/seed cases and eight full native commit calls; static loop ceilings cover 64 steps and 2,016 rank shifts. Part-validation probe covers all 256 instance masks; maximum 64,241 executed instructions including the real stock validator, with 252 observed stack bytes. Added adapter has bounded 8-track/12-byte save and restore loops; no per-sample work.", - "parameterModulation": "Generator controls are request parameters, not LFO/p-lock/scene destinations. UI knob changes and YES synchronously publish stock trigs and locks; ordinary sample playback modulation remains native.", - "modeSwitching": "Current exact-image emulator: all twelve SRC edits, native sample editor, both backing-pool menus, advancing PLAY, native Part save/reload, panel-driven project save/reload, fresh saved-card project load and battery-RAM-only restart. Physical reboot/audio remain untested.", - "maxLoad": "Eight signed audio tracks may auto-fill on one PLAY edge. Conditional UI budget allows one such burst per second at 264 MHz; no audio-thread work is added. Stock rendering/scheduling uses the explicit reserve. Mixed-module audio stress is not measured.", - "inputConditions": "Original integer generator is input-independent. Density up to 64 notes/track; native lock rebuild scans every audio/MIDI lane. Audio sample/FX costs remain stock and are outside the added UI-work bound; hardware audio continuity is untested." - }, - "report": "evidence/software.json" - } - ], - "memory": { - "regions": [ - { - "name": "Shared DRAM arena, including module runtime, packed staging and mandatory core logger reserve", - "space": "sdram", - "words": 10586112, - "wordBits": 8, - "bytes": 10586112, - "scope": "shared" - }, - { - "name": "Complete tested-profile flash append: bootstrap and packed runtime", - "space": "cpu-flash", - "words": 18153, - "wordBits": 8, - "bytes": 18153, - "scope": "shared" - }, - { - "name": "Additional bounded UI stack capacity, including native callees", - "space": "cpu-ram", - "words": 1216, - "wordBits": 8, - "bytes": 1216, - "scope": "shared" - }, - { - "name": "Reused native list window, two surfaces, descriptor and callbacks", - "space": "sdram", - "words": 2132, - "wordBits": 8, - "bytes": 2132, - "scope": "shared" - }, - { - "name": "Reused stock lock-index masks", - "space": "sdram", - "words": 128, - "wordBits": 8, - "bytes": 128, - "scope": "shared" - }, - { - "name": "Sixteen pattern records in loaded bank and SRAM mirror", - "space": "cpu-ram", - "words": 74560, - "wordBits": 8, - "bytes": 74560, - "scope": "instance" - }, - { - "name": "Twelve settings bytes across four Parts, loaded bank and SRAM mirror", - "space": "cpu-ram", - "words": 96, - "wordBits": 8, - "bytes": 96, - "scope": "instance" - } - ], - "perInstanceBytes": 74656, - "sharedBytes": 10607741, - "maxInstances": 8, - "totalBytes": 11204989, - "conditions": "Tested reported profile: repitch, vector, playmodes, mute-modes and recorder-loop-fix with stock FX2, original 1.40C. Shared arena 10,586,112 bytes includes 10,487,808 module arena plus 98,304 logger reserve, counted once. Linked runtime 90,780 bytes and packed staging fit within it. VECTOR allocated sections: 13,000 text, 398 rodata and 3,368 data bytes; no BSS or new heap. Complete flash append is 18153 bytes. Maximum observed native commit stack 1,048; Part validation 252; fixed added UI stack bound 1,216. Borrowed stock window, lock indexes and 8-track bank/SRAM capacities are retained. Hardware canaries are unmeasured.", - "report": "evidence/software.json" - }, - "hardware": { - "kind": "owner-waived", - "status": "waived", - "approvedBy": "repeat98", - "approvedOn": "2026-10-09", - "reason": "Owner explicitly approved release and closure with hardware reboot/audio unverified on 9 October 2026: \"Approve release and closure with hardware reboot/audio unverified\". This exception binds VECTOR 0.2.4-experimental to its tested native source and image. Physical reboot, audible playback and hardware stress remain untested; software checks remain required.", - "report": "TESTING.md" - }, - "documentation": { - "screenshotStyle": "black-and-white", - "screenshots": [ - "media/ot-location.png", - "media/ot-generator.png", - "media/ot-generated.png", - "media/ot-edit.png", - "media/ot-setup.png", - "media/ot-pool-choice.png", - "media/ot-static-pool.png", - "media/ot-flex-pool.png" - ], - "tutorial": { - "title": "Generate a phrase, then edit a note", - "steps": [ - "Select an audio track. Open SRC page 2 (double-tap SRC), choose VECTOR and press YES. In the backing-pool modal, highlight STATIC or FLEX with UP/DOWN or LEVEL, then press RIGHT to enter that pool. YES also opens the highlighted pool; YES on a loaded sample slot assigns that pool and sample to VECTOR. Use the corresponding stock sample-slot and file-loading tools to load a tuned sample; NO returns from the sample browser.", - "Double-tap the assigned TRACK to reopen the pool modal. LEFT returns to the machine list; RIGHT on VECTOR opens the modal. RIGHT in the pool modal opens the highlighted Static/Flex sample list. In a sample-slot list, LEFT returns to pool choice and RIGHT opens the stock file browser. Horizontal arrows navigate menus without changing the assigned pool; YES on a sample slot commits the pool and sample.", - "Press SRC for TYPE, DENS, ROOT, SCAL, GATE and ACNT on encoders A\u2013F. Turn a parameter to commit a phrase immediately, including during playback. The current seed stays fixed while shaping the vector.", - "Open SRC page 2 with a double tap on SRC. Encoders A\u2013F adjust SEED, SPAN, OFST, ROT, RPT and DIR. These changes also commit immediately; press SRC to return.", - "Press PLAY to hear the native sequencer repeat the phrase. Push LEVEL on SRC for the ordinary sample controls, then use grid recording and a held trig to edit PTCH. AMP exposes the generated HOLD/VOL locks. Push LEVEL again to return.", - "Press YES on the generator for a new seed and variation. STOP/PLAY preserves a populated phrase. Select normal FLEX/STATIC to remove VECTOR while retaining the generated pattern." - ] - } - } - } + "evidenceRevision": "16c04ae4d713376bd6bb119951899c33fa2e0ae9" }, "license": { "spdx": "MIT", From e85eee13eebebef8cc8e271a08f5f4b50d8061f0 Mon Sep 17 00:00:00 2001 From: repeat98 Date: Wed, 21 Oct 2026 19:54:58 +0200 Subject: [PATCH 05/33] VECTOR 0.3.0: native comparison (48 matching images, 90 matching refusals, 0 mismatches) and module documents Co-Authored-By: Claude Opus 5.5 --- sdk/native-comparisons/vector.json | 3772 +++++++++++++++++++++------- src/catalog/module-documents.json | 142 +- 2 files changed, 2917 insertions(+), 997 deletions(-) diff --git a/sdk/native-comparisons/vector.json b/sdk/native-comparisons/vector.json index 74891061c..376ce18ce 100644 --- a/sdk/native-comparisons/vector.json +++ b/sdk/native-comparisons/vector.json @@ -1,8 +1,8 @@ { "schemaVersion": 1, "moduleId": "vector", - "moduleVersion": "0.2.4-experimental", - "moduleSourceSha256": "1255e99133cbd8d6d2587c95f93462ea80fccbd169462a2acb02aedbd346cbd3", + "moduleVersion": "0.3.0-experimental", + "moduleSourceSha256": "9760ef4dcd4221fc36936a31e02555278bec18101fbb95b63a24af203c3062de", "revision": "b8deefc88b2c3e5f3c6158e364eb741df1924e1d", "originalOsSha256": "164f31224bf61181e3f50e7dec40df9afcae5b16dbf6e4c0d0cc5e986af0a84e", "pool": [ @@ -11,6 +11,10 @@ "euclid", "repitch", "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", "analog-bassdrum", "usb-audio-out-tracks-main-cue", "quantizer", @@ -21,14 +25,17 @@ "vector", "playmodes", "mute-modes", - "recorder-loop-fix" + "recorder-loop-fix", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene" ], "summary": { - "selections": 110, - "built": 46, + "selections": 138, + "built": 48, "identicalOutright": 0, - "identicalOutsidePlatformWrites": 46, - "refused": 64, + "identicalOutsidePlatformWrites": 48, + "refused": 90, "mismatches": 0 }, "selections": [ @@ -68,9 +75,9 @@ ] }, "native": { - "bytes": 1121076, - "osSha256": "d64284abbb02e1bedab13282218ac3d5d0c4e1c57fe165dce8148b5c5226ab95", - "maskedOsSha256": "c241d50a5a4728e097bcdae58e6a5b8afd7fdee4f6dfcc534d060ba668e489fe" + "bytes": 1126741, + "osSha256": "02a1fd3e7d7e7aea9ddc9ff2f8a229e8e28547d1ccb56317755dce02d687dff5", + "maskedOsSha256": "714303efb9eab45f3b2ae90b12604ca748262b3beed5caabccf8a6047e93b2e1" }, "result": "masked" }, @@ -95,9 +102,9 @@ "fx2": [] }, "native": { - "bytes": 1121076, - "osSha256": "126e6076bba8ab056579d103fb0134365a7d49bd9eb25b499c2ce483a1502041", - "maskedOsSha256": "f914320de31a948195ca34a259355536d55ffd9791da78b6245b02a08251b9e8" + "bytes": 1126741, + "osSha256": "66dff56c7fdbf4b73771fe90032147a279ff49e348afa190e296c804046981ca", + "maskedOsSha256": "9094d984cf8cf21a7821834f8e2e4731ba83a6e5b4999ad7522098d28bb37794" }, "result": "masked" }, @@ -138,9 +145,9 @@ ] }, "native": { - "bytes": 1121076, - "osSha256": "f068bcae6efe65a85d63b827be494c0b6254727981042ca0bae38d83c2d9dc89", - "maskedOsSha256": "ce6451277d6c1310416d1b4e26b1028ac6d7b2fdb9616aa921f9f4bcb7c19042" + "bytes": 1126741, + "osSha256": "05f55ffdaaaf73ba44f0a4a45a3b9b491763053d155dc5cf67a844ed00b58b26", + "maskedOsSha256": "15170b011192eaaa955de312b142fa1052541ca08a24c20f82e1ed1ffea5059f" }, "result": "masked" }, @@ -168,9 +175,9 @@ ] }, "native": { - "bytes": 1121076, - "osSha256": "71d39e3303944d88e40031975caaf69ef9a921c7a1bbbf2c8208944f21b06c62", - "maskedOsSha256": "89b2f94bc172feb9b233fad80e12be54da137a0026f802ce9dda4ef9b9ba9f0d" + "bytes": 1126741, + "osSha256": "93082737fdf81a7274c5407211fb3300e8852002a8ad48f3987c1af27c1bfb1b", + "maskedOsSha256": "82230187a4d0538df700fb22085414f5e053a2442c015dc895aa41b490c943eb" }, "result": "masked" }, @@ -211,9 +218,9 @@ ] }, "native": { - "bytes": 1223252, - "osSha256": "305250f98daf17473d530cf43489ab23d244e36d137ae47319cd6c9cc79fba8c", - "maskedOsSha256": "3ddb91870a6f88b2ff2ef0ab48200a44c8557ededc73c615c792458f30dafaa4" + "bytes": 1228940, + "osSha256": "424d25def9ba9b240e7887bc1d169a501b1fe234605d35252af5aca20f170a18", + "maskedOsSha256": "5b493f1b0da69dbcb36d88590b793e39d88a83d07b11b55c9da0d2118df6f21d" }, "result": "masked" }, @@ -241,9 +248,9 @@ ] }, "native": { - "bytes": 1223252, - "osSha256": "8b6191d5e60ac6aec4629c68c9acce1b141d9931a5ec942f4f5f2781617983a9", - "maskedOsSha256": "77542d1d8ab14a21223e8d2a2a1fa331cc67ba82b9e3c027a17c95d0a2928452" + "bytes": 1228940, + "osSha256": "598c3675ec21194255f093222e5ca11affe132a07229bdcf4cfdcce0bf96860f", + "maskedOsSha256": "26bc52f5061f308cceafb838432a75cdf1c4c97b470ddb58345018a6db237058" }, "result": "masked" }, @@ -285,9 +292,9 @@ ] }, "native": { - "bytes": 1123175, - "osSha256": "7aaa8e06e062e8c408a4be10e000cb1f0859e74543e19ab8ba584dd4a5f15a4a", - "maskedOsSha256": "41c87f90ba9e7382034a59c371ac5cf2ff01b05dff16b2ee14c2dad75e20e600" + "bytes": 1128873, + "osSha256": "212f379536601d4392cb150d3136d32123f2a81574c65423d5eff2ab82102ccd", + "maskedOsSha256": "752a4055d5261e4dd58394563aa1b1536eb662a3fe834999537e8e77b6ba1b49" }, "result": "masked" }, @@ -316,9 +323,9 @@ ] }, "native": { - "bytes": 1123175, - "osSha256": "b2b22a6ea9459738609db6449bbc1e726996a81bf1bfee6d1eec57098b0c745c", - "maskedOsSha256": "090340d9fe92d9d3ee0bf64ab87d2235bb522a3cf8f07a1f1427a0f81ce1efde" + "bytes": 1128873, + "osSha256": "165f32cf8b244d67e430cd553ac912bdb7bc4aff50767dcecdeee873020051e2", + "maskedOsSha256": "04928ed37d03a423cc0d87056394a7aa5f1525add4760edde95ce7d5ac18dbe0" }, "result": "masked" }, @@ -359,9 +366,9 @@ ] }, "native": { - "bytes": 1121076, - "osSha256": "5c33ae65e5c47be634050a87035b432257aea64c56459ae1d789d962559f3045", - "maskedOsSha256": "3e17b8d64ae9c0e18d05f13f26ddfa2b67e1bce9e607ab333d56c707f51746ef" + "bytes": 1126741, + "osSha256": "87c48992c40d0017b8468eaa8dc60ea597c1ebbd2c6b8aea566b0cd58035f893", + "maskedOsSha256": "adcf1b98df404e4b44e8a4d4bfb589c7a214b580cbe07de897b7286bf58eeecf" }, "result": "masked" }, @@ -387,9 +394,9 @@ "fx2": [] }, "native": { - "bytes": 1121076, - "osSha256": "505d85d24e9ab863aa80167103ae87347143c995ab27d391b53e5fd06587f524", - "maskedOsSha256": "39cecd8164a36010255a687f0b84a69f752d4f798e02733156251f730ec6dac1" + "bytes": 1126741, + "osSha256": "73f9f529fe42acf9622222fb7de3f1640a12deebe5dacae39c368a24b3c62695", + "maskedOsSha256": "02a854e757b0b64444aa11e0e4b287a96562b0af0f67360c49f207ab6555e54e" }, "result": "masked" }, @@ -431,9 +438,9 @@ ] }, "native": { - "bytes": 1121076, - "osSha256": "bf446d211d655ecf42caf2fe9da95c6a63bce18a234cd8f27e6a046138988816", - "maskedOsSha256": "eb4c6163c3c464e99c00c6905c284a35e29ca905678b8f3f3cba519db90b484b" + "bytes": 1126741, + "osSha256": "76fa6e5f5c2de816d0358c016d3eedb2df63f3ddd588bce920caf7d754bc95c2", + "maskedOsSha256": "a89013b4f003898743c9663a7e9e1e54e7c2b33a270ebc611190f8d41849ff7a" }, "result": "masked" }, @@ -462,15 +469,15 @@ ] }, "native": { - "bytes": 1121076, - "osSha256": "0f7b4792fbe2b674f18a3492481aa9b894143ad4cc41c0244e680164cddf9b1c", - "maskedOsSha256": "3b55973ca75ea802d65ad6b7263ae259d525c1846a5f6d05bd23f4996cd9a69d" + "bytes": 1126741, + "osSha256": "d3edb0391c8b5a373775f4a403ed6aa42c93376fb2bad1266647c97e56c97487", + "maskedOsSha256": "a649755cd27ea180253fe556ba9f04b65e02951d98dd151f54ea45d724fda162" }, "result": "masked" }, { "moduleIds": [ - "analog-bassdrum", + "airwindows-chorus", "vector" ], "keepStockFx2": true, @@ -500,17 +507,20 @@ "LO-FI", "DELAY", "PLATE REV", - "DARK REV" + "DARK REV", + "AIR CHORUS" ] }, "native": { - "refused": "remix 'octamod-composition-proof' has colliding modules:\n hook site: analog-bassdrum and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x40077b5c -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4006d784 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x400791e4 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: analog-bassdrum (symbol ref abcontrol:ab_engine_left (LEFT from Analog BD engine pool to machine chooser)) and vector (symbol ref vector:st_pool_choice_left (LEFT returns from VECTOR pool choice to machines)) both claim 0x400ce10e -- both rewrite the same bytes\n poke site: analog-bassdrum (symbol ref abcontrol:ab_engine_right (RIGHT on Analog BD enters its engine pool)) and vector (symbol ref vector:st_pool_right (RIGHT on VECTOR opens its pool-choice modal)) both claim 0x400cf714 -- both rewrite the same bytes\n poke site: analog-bassdrum (poke machine chooser has six rows, ANALOG BD the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: analog-bassdrum (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: analog-bassdrum (poke SRC SETUP name lookup admits AB) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: analog-bassdrum (poke machine chooser draws AB) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: analog-bassdrum (poke machine chooser highlights AB) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: analog-bassdrum (poke machine chooser persists AB) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes" + "bytes": 1126741, + "osSha256": "4a5a8d76e49f09eaf480727c93065e7edd5577870ba886a30af9258123e39d41", + "maskedOsSha256": "80ae46a9f115f616e6dcf52f9764fdf1db2a12b135e56c4f70c669f86768bfa0" }, - "result": "refused" + "result": "masked" }, { "moduleIds": [ - "analog-bassdrum", + "airwindows-chorus", "vector" ], "keepStockFx2": false, @@ -527,16 +537,20 @@ "COMPRESSOR", "LO-FI" ], - "fx2": [] + "fx2": [ + "AIR CHORUS" + ] }, "native": { - "refused": "remix 'octamod-composition-proof' has colliding modules:\n hook site: analog-bassdrum and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x40077b5c -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4006d784 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x400791e4 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: analog-bassdrum (symbol ref abcontrol:ab_engine_left (LEFT from Analog BD engine pool to machine chooser)) and vector (symbol ref vector:st_pool_choice_left (LEFT returns from VECTOR pool choice to machines)) both claim 0x400ce10e -- both rewrite the same bytes\n poke site: analog-bassdrum (symbol ref abcontrol:ab_engine_right (RIGHT on Analog BD enters its engine pool)) and vector (symbol ref vector:st_pool_right (RIGHT on VECTOR opens its pool-choice modal)) both claim 0x400cf714 -- both rewrite the same bytes\n poke site: analog-bassdrum (poke machine chooser has six rows, ANALOG BD the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: analog-bassdrum (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: analog-bassdrum (poke SRC SETUP name lookup admits AB) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: analog-bassdrum (poke machine chooser draws AB) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: analog-bassdrum (poke machine chooser highlights AB) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: analog-bassdrum (poke machine chooser persists AB) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes" + "bytes": 1126741, + "osSha256": "38c9804e324a4fd42c569897b28d9c27b2bd71f36e0d94d8a948b908a9d58fb0", + "maskedOsSha256": "df134b34b79c606ec1baf180ff79a060163ec33b7c3ce46c0ade7b594b8185ec" }, - "result": "refused" + "result": "masked" }, { "moduleIds": [ - "usb-audio-out-tracks-main-cue", + "everb", "vector" ], "keepStockFx2": true, @@ -566,20 +580,19 @@ "LO-FI", "DELAY", "PLATE REV", - "SPRING REV", - "DARK REV" + "EVERB" ] }, "native": { - "bytes": 1123770, - "osSha256": "e30261aaf95cc04ff36db5231782bce5e5afaeb3b7c4efaf4efe9db40a74db46", - "maskedOsSha256": "3e26f4a0e710da1b7b9a5ad597433a06d427247838a3c2a80fb67ade8193e8d2" + "bytes": 1126741, + "osSha256": "5048fba8f2c442f18ec18b4df2c640791f8a0854ab2e6e0bd7caab344b8d3fa9", + "maskedOsSha256": "3eea0a74f26fb9cb75a26d16de3fa1f63f9120d786c2885d221b0250dbf51605" }, "result": "masked" }, { "moduleIds": [ - "usb-audio-out-tracks-main-cue", + "everb", "vector" ], "keepStockFx2": false, @@ -596,18 +609,20 @@ "COMPRESSOR", "LO-FI" ], - "fx2": [] + "fx2": [ + "EVERB" + ] }, "native": { - "bytes": 1123770, - "osSha256": "4d4e9655c64934adf6fd9e5b5abfaa7649ad678aa6523f100b3ea9dd9921cd16", - "maskedOsSha256": "59778a2b644e631ea86cfaad3c5003b2c901ff7c8e8cdf7acaec58fe3082826c" + "bytes": 1126741, + "osSha256": "cee643da22831c4fcae5a12be53e1c4a4b417cac09b86333e0f3d4b52972b6f5", + "maskedOsSha256": "eb06e0a43859262ae3d8469bd15c16a6f7b3d6bfa3ca77aaaab44bd86b04afa9" }, "result": "masked" }, { "moduleIds": [ - "quantizer", + "bbd", "vector" ], "keepStockFx2": true, @@ -636,21 +651,20 @@ "COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", - "SPRING REV", - "DARK REV" + "DARK REV", + "BBD" ] }, "native": { - "bytes": 1123257, - "osSha256": "2647acc08f00f3267667d3f86d26937d7b1510176a521fa6d5f0f6a07daef2c9", - "maskedOsSha256": "bcd68bc8fa9902d295c3621f04842e4cd73225b5feb22053d0b315c70dcfaf33" + "bytes": 1126782, + "osSha256": "f68d0e193b82b6b331ce7a452bbbc8a481cf3e9e60ce6dde3f59cbff6716c52d", + "maskedOsSha256": "e9eeece876ac321db4974f9c6de4c71419977fe5a7bb425689f60fa7b731167d" }, "result": "masked" }, { "moduleIds": [ - "quantizer", + "bbd", "vector" ], "keepStockFx2": false, @@ -667,18 +681,20 @@ "COMPRESSOR", "LO-FI" ], - "fx2": [] + "fx2": [ + "BBD" + ] }, "native": { - "bytes": 1123257, - "osSha256": "d693782164a4b125dbdc61802b741441580d766c908ea54ef74e11a35351dc35", - "maskedOsSha256": "09618100b11c04717a4c5674a78b78608ff063c86b9a753974dcc1e63d39a91a" + "bytes": 1126782, + "osSha256": "a7e4309baa1bc2c7e9a91da9d5e6f8bc801ccd915631ee4286139ed98edba930", + "maskedOsSha256": "dec6698c59f7496199fb09ba9412f44fcbf1528e99c17f54a6a118f5fc276d04" }, "result": "masked" }, { "moduleIds": [ - "synth", + "lofi2", "vector" ], "keepStockFx2": true, @@ -707,19 +723,20 @@ "COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", - "SPRING REV", - "DARK REV" + "DARK REV", + "LOFI2" ] }, "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": 1126741, + "osSha256": "58a137c4fa309d5fa853e0dbf5862db9212439302c7645eacf13742106bd67f2", + "maskedOsSha256": "684e5d9b4f10ec42c5301fbd82b523cdde0c1af4a0c74214a23c317dc0b2dccf" }, - "result": "refused" + "result": "masked" }, { "moduleIds": [ - "synth", + "lofi2", "vector" ], "keepStockFx2": false, @@ -736,16 +753,20 @@ "COMPRESSOR", "LO-FI" ], - "fx2": [] + "fx2": [ + "LOFI2" + ] }, "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": 1126741, + "osSha256": "ebf77b336d04d1807bfeb586cbe76fc44a00049f2287c4ccdbdbac2215e4960f", + "maskedOsSha256": "eb29fa567122e8bfd6958fc4dbbbd6c95d6b4eefa6dcc144630df7e38c0eb857" }, - "result": "refused" + "result": "masked" }, { "moduleIds": [ - "previewvol", + "analog-bassdrum", "vector" ], "keepStockFx2": true, @@ -775,20 +796,17 @@ "LO-FI", "DELAY", "PLATE REV", - "SPRING REV", "DARK REV" ] }, "native": { - "bytes": 1121076, - "osSha256": "19ada0c4f27e961b74f79042b20d8056d8f3e48db420e7a02c268c00c1bcac42", - "maskedOsSha256": "2cc05d3afa0bf1071744b997e75327884f20f5d45ff9e79ebc7f1c974bc042ba" + "refused": "remix 'octamod-composition-proof' has colliding modules:\n hook site: analog-bassdrum and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x40077b5c -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4006d784 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x400791e4 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: analog-bassdrum (symbol ref abcontrol:ab_engine_left (LEFT from Analog BD engine pool to machine chooser)) and vector (symbol ref vector:st_pool_choice_left (LEFT returns from VECTOR pool choice to machines)) both claim 0x400ce10e -- both rewrite the same bytes\n poke site: analog-bassdrum (symbol ref abcontrol:ab_engine_right (RIGHT on Analog BD enters its engine pool)) and vector (symbol ref vector:st_pool_right (RIGHT on VECTOR opens its pool-choice modal)) both claim 0x400cf714 -- both rewrite the same bytes\n poke site: analog-bassdrum (poke machine chooser has six rows, ANALOG BD the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: analog-bassdrum (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: analog-bassdrum (poke SRC SETUP name lookup admits AB) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: analog-bassdrum (poke machine chooser draws AB) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: analog-bassdrum (poke machine chooser highlights AB) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: analog-bassdrum (poke machine chooser persists AB) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes" }, - "result": "masked" + "result": "refused" }, { "moduleIds": [ - "previewvol", + "analog-bassdrum", "vector" ], "keepStockFx2": false, @@ -808,15 +826,13 @@ "fx2": [] }, "native": { - "bytes": 1121076, - "osSha256": "b53d1e2732c20799ae69ca26233dad4ee0aa19327a5487bf58ee669a40158a77", - "maskedOsSha256": "4d1c8031035796b08d832c6fd102f29deaa4ea707d191b0115fc466c89df3cc7" + "refused": "remix 'octamod-composition-proof' has colliding modules:\n hook site: analog-bassdrum and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x40077b5c -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4006d784 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x400791e4 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: analog-bassdrum (symbol ref abcontrol:ab_engine_left (LEFT from Analog BD engine pool to machine chooser)) and vector (symbol ref vector:st_pool_choice_left (LEFT returns from VECTOR pool choice to machines)) both claim 0x400ce10e -- both rewrite the same bytes\n poke site: analog-bassdrum (symbol ref abcontrol:ab_engine_right (RIGHT on Analog BD enters its engine pool)) and vector (symbol ref vector:st_pool_right (RIGHT on VECTOR opens its pool-choice modal)) both claim 0x400cf714 -- both rewrite the same bytes\n poke site: analog-bassdrum (poke machine chooser has six rows, ANALOG BD the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: analog-bassdrum (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: analog-bassdrum (poke SRC SETUP name lookup admits AB) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: analog-bassdrum (poke machine chooser draws AB) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: analog-bassdrum (poke machine chooser highlights AB) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: analog-bassdrum (poke machine chooser persists AB) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes" }, - "result": "masked" + "result": "refused" }, { "moduleIds": [ - "cc-map", + "usb-audio-out-tracks-main-cue", "vector" ], "keepStockFx2": true, @@ -851,15 +867,15 @@ ] }, "native": { - "bytes": 1121076, - "osSha256": "3d75381ddf4e2899104fe84ab4af3d7ed1e8acac2c19428d9bbc8918a5868c6c", - "maskedOsSha256": "2293d81bda7804a8b93623ebfead516a4538a98beb68f65a7a9fe37591e4ff58" + "bytes": 1129491, + "osSha256": "c2cd8b043dccef45097e61064a0e5605a02b27f5d865cdaef8fadf78aedd8cb4", + "maskedOsSha256": "ab51044e088f872e6492548c05e0e88aa4c61bba273db896cc119ceef5a374b1" }, "result": "masked" }, { "moduleIds": [ - "cc-map", + "usb-audio-out-tracks-main-cue", "vector" ], "keepStockFx2": false, @@ -879,15 +895,15 @@ "fx2": [] }, "native": { - "bytes": 1121076, - "osSha256": "a3efb6516d3e9e165fa8ad3b0176c74f593d1c215e2ef4697d2dc83c46dd298a", - "maskedOsSha256": "92f2940e80041e8dd8e96fdcf2cceae03bd97d10701c16608be747a96393c60b" + "bytes": 1129491, + "osSha256": "eb9bf2739371b3c0753af2823f861ae45ed0cc82564f1206456ba8cc45a17ba1", + "maskedOsSha256": "09c1ae8061cf3613a0897970e309de0498a23500127bf406037bb6fd1f2d1132" }, "result": "masked" }, { "moduleIds": [ - "sidechain-compressor", + "quantizer", "vector" ], "keepStockFx2": true, @@ -901,7 +917,7 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI" ], "fx2": [ @@ -913,23 +929,24 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", "DELAY", "PLATE REV", + "SPRING REV", "DARK REV" ] }, "native": { - "bytes": 1121076, - "osSha256": "ee71fcbabc9f1b4fd3cea0124c5c57763d4b43c80d14d71753f151ed0489d032", - "maskedOsSha256": "6ee934c7e13114cb180d260151e0b1c6344cdb7982ec709e182abef6e9ffde02" + "bytes": 1128952, + "osSha256": "1f08d15f90afd53dc3bf209432c832acc2adb10999ba54466e2c235335b5ce6a", + "maskedOsSha256": "bc58e70b31e42fb8694a0a9580c34781dfd83cb09b7974e0cfe7d69661718010" }, "result": "masked" }, { "moduleIds": [ - "sidechain-compressor", + "quantizer", "vector" ], "keepStockFx2": false, @@ -943,24 +960,22 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI" ], - "fx2": [ - "SIDECHAIN_COMPRESSOR" - ] + "fx2": [] }, "native": { - "bytes": 1121076, - "osSha256": "2a94dbd7522f9a287434e1426645d231e0ae5bb18283a8151cdfa10a78ea35d6", - "maskedOsSha256": "9f0c4dc5bb60f69d27c0c4e7eebc2cfa145f96cf8829ed51d4b3a121b9c26a1a" + "bytes": 1128952, + "osSha256": "2dd4a9d118afae6b0c0050ffa156eadcaf0a9dd5d3bded606f1a359c25ca1482", + "maskedOsSha256": "26973b2197adf5264b261a45e905729c7946ee2227684e91b957daf3378ebdc8" }, "result": "masked" }, { "moduleIds": [ - "vector", - "playmodes" + "synth", + "vector" ], "keepStockFx2": true, "menu": { @@ -994,16 +1009,14 @@ ] }, "native": { - "bytes": 1126060, - "osSha256": "9670a635132678ed36bc8bd870a8fac3eed43d1c8c53af1d06764d6d48c25a95", - "maskedOsSha256": "6e3c0e7407d8319611d285ca8e40021bdc24bb1ff86a2cc35cbf65ea374a9403" + "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": "masked" + "result": "refused" }, { "moduleIds": [ - "vector", - "playmodes" + "synth", + "vector" ], "keepStockFx2": false, "menu": { @@ -1022,16 +1035,14 @@ "fx2": [] }, "native": { - "bytes": 1126060, - "osSha256": "b99c38b9439ecf7ccd3c870c18f37b54ab6dd2c8f9bdd4cb710e65838223bf4e", - "maskedOsSha256": "8885f608310c20b7c500a5aadf840f5b14941f982641013c8f1cbd1e0d5f4813" + "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": "masked" + "result": "refused" }, { "moduleIds": [ - "vector", - "mute-modes" + "previewvol", + "vector" ], "keepStockFx2": true, "menu": { @@ -1065,16 +1076,16 @@ ] }, "native": { - "bytes": 1121076, - "osSha256": "eaa66566c2d4e65dbce06bd6039f13ee387d10219533f24cf503db677a343822", - "maskedOsSha256": "2bde26522210f50bec01d0afea15ce50527136208567bd3da44c7b5476cd3b84" + "bytes": 1126741, + "osSha256": "f38139f67dcaf266ef8c119da3608ccbfd73e82587c5153ded705a1ab6ef6eb7", + "maskedOsSha256": "cd56e4438c1b80eeb77a1977402ebf8a2f267df21e44e044e38704593cb92c6a" }, "result": "masked" }, { "moduleIds": [ - "vector", - "mute-modes" + "previewvol", + "vector" ], "keepStockFx2": false, "menu": { @@ -1093,16 +1104,16 @@ "fx2": [] }, "native": { - "bytes": 1121076, - "osSha256": "e2c128002dab843d292aed69d8b0b3f50036fa58c7282cc19834bd05ef3bf712", - "maskedOsSha256": "b234bc77d48f1c11be30ca235a48cb0c918a1266fc42f3f805ea6932fbd45d04" + "bytes": 1126741, + "osSha256": "335ea0691d49b61d0e87d757a7f5315d0c8aa45c182aedd5705b39e5a03b0c47", + "maskedOsSha256": "18013befbce8ca31512e1093df2c1fd771d0be444ec980a97c946a6a68e0b130" }, "result": "masked" }, { "moduleIds": [ - "vector", - "recorder-loop-fix" + "cc-map", + "vector" ], "keepStockFx2": true, "menu": { @@ -1136,17 +1147,16 @@ ] }, "native": { - "bytes": 1121076, - "osSha256": "5f835ea60132690436e9fe3d86a3ea6ef0fbf19f4bedc6a5fe1894bc9559afa9", - "maskedOsSha256": "15d92f62181155fbb0af7787a20cf54f37eb3bc634e50ad7f09e246acfb20df7", - "platformArena": true + "bytes": 1126741, + "osSha256": "544ae40818b1d69d9edb655e3a8b19c52b3646d9d5c581c6aa81680453409546", + "maskedOsSha256": "a9a471514bfef525a5d7bafde6002ff774acd21f5bebfd6c6828086f9897c224" }, "result": "masked" }, { "moduleIds": [ - "vector", - "recorder-loop-fix" + "cc-map", + "vector" ], "keepStockFx2": false, "menu": { @@ -1165,30 +1175,16 @@ "fx2": [] }, "native": { - "bytes": 1121076, - "osSha256": "2abb458625042e846120d716d81dd785aa30af5ed50ec4fde171822996cec364", - "maskedOsSha256": "7992234753800aff7b6f7ac93a415cf5258757d7ea7c36dfe1992ef87adf0064", - "platformArena": true + "bytes": 1126741, + "osSha256": "345184ba65c5a92677fcac82602a573c982a5fc05cfb044d0f9f75ea22cc0d1c", + "maskedOsSha256": "5a82152b1a87fe808cd56b13303dfc75688b834614244f10d85b02e24d0fa120" }, "result": "masked" }, { "moduleIds": [ - "miniverb", - "tapeecho", - "euclid", - "repitch", - "tapehead", - "usb-audio-out-tracks-main-cue", - "quantizer", - "synth", - "previewvol", - "cc-map", "sidechain-compressor", - "vector", - "playmodes", - "mute-modes", - "recorder-loop-fix" + "vector" ], "keepStockFx2": true, "menu": { @@ -1202,9 +1198,7 @@ "SPATIALIZER", "COMB FILTER", "SIDECHAIN_COMPRESSOR", - "LO-FI", - "EUCLID", - "TAPEHEAD" + "LO-FI" ], "fx2": [ "FILTER", @@ -1219,34 +1213,20 @@ "LO-FI", "DELAY", "PLATE REV", - "MINIVERB", - "TAPE ECHO", - "EUCLID", - "TAPEHEAD" + "DARK REV" ] }, "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" + "bytes": 1126741, + "osSha256": "b069b0a3c81f18f42b71ee4aa7484bdb5f3c3bb47f913d4a0f6a5e6d39caff8b", + "maskedOsSha256": "5673e5640a871ae7b05c3e3e23fa8a0f17cb7b1db47463c46fbc224850922812" }, - "result": "refused" + "result": "masked" }, { "moduleIds": [ - "miniverb", - "tapeecho", - "euclid", - "repitch", - "tapehead", - "usb-audio-out-tracks-main-cue", - "quantizer", - "synth", - "previewvol", - "cc-map", "sidechain-compressor", - "vector", - "playmodes", - "mute-modes", - "recorder-loop-fix" + "vector" ], "keepStockFx2": false, "menu": { @@ -1260,39 +1240,23 @@ "SPATIALIZER", "COMB FILTER", "SIDECHAIN_COMPRESSOR", - "LO-FI", - "EUCLID", - "TAPEHEAD" + "LO-FI" ], "fx2": [ - "MINIVERB", - "TAPE ECHO", - "EUCLID", - "TAPEHEAD", "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" + "bytes": 1126741, + "osSha256": "9b1484ae9a5a2fcac19e7472d141adba7c1eacc7d38963b8e59ea9667c42a0b6", + "maskedOsSha256": "d67988ec733104208742c394e504ae7984f54559437aef6c5580c3bacaed0686" }, - "result": "refused" + "result": "masked" }, { "moduleIds": [ - "tapeecho", - "euclid", - "repitch", - "tapehead", - "usb-audio-out-tracks-main-cue", - "quantizer", - "synth", - "previewvol", - "cc-map", - "sidechain-compressor", "vector", - "playmodes", - "mute-modes", - "recorder-loop-fix" + "playmodes" ], "keepStockFx2": true, "menu": { @@ -1305,10 +1269,8 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", - "LO-FI", - "EUCLID", - "TAPEHEAD" + "COMPRESSOR", + "LO-FI" ], "fx2": [ "FILTER", @@ -1319,36 +1281,25 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", "DELAY", - "DARK REV", - "TAPE ECHO", - "EUCLID", - "TAPEHEAD" + "PLATE REV", + "SPRING REV", + "DARK REV" ] }, "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" + "bytes": 1132503, + "osSha256": "d2d4984cca927e789adb08b98f86547d5581c4d5cf18148c059e5b599e0b72be", + "maskedOsSha256": "7f72258872cc948efa984de6aecbc62ec5e85dd61e79b7d538479157c3245c5c" }, - "result": "refused" + "result": "masked" }, { "moduleIds": [ - "tapeecho", - "euclid", - "repitch", - "tapehead", - "usb-audio-out-tracks-main-cue", - "quantizer", - "synth", - "previewvol", - "cc-map", - "sidechain-compressor", "vector", - "playmodes", - "mute-modes", - "recorder-loop-fix" + "playmodes" ], "keepStockFx2": false, "menu": { @@ -1361,39 +1312,22 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", - "LO-FI", - "EUCLID", - "TAPEHEAD" + "COMPRESSOR", + "LO-FI" ], - "fx2": [ - "TAPE ECHO", - "EUCLID", - "TAPEHEAD", - "SIDECHAIN_COMPRESSOR" - ] + "fx2": [] }, "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" + "bytes": 1132503, + "osSha256": "f0b765fffa44182af51f5758bb500b0daf5110903eb9c78fadaa47df561e4b64", + "maskedOsSha256": "3efe8709546fc0bdade8ed3d2a764f004547b88918a31f12bc789a06694f9368" }, - "result": "refused" + "result": "masked" }, { "moduleIds": [ - "miniverb", - "euclid", - "repitch", - "tapehead", - "usb-audio-out-tracks-main-cue", - "quantizer", - "synth", - "previewvol", - "cc-map", - "sidechain-compressor", "vector", - "playmodes", - "mute-modes", - "recorder-loop-fix" + "mute-modes" ], "keepStockFx2": true, "menu": { @@ -1406,10 +1340,8 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", - "LO-FI", - "EUCLID", - "TAPEHEAD" + "COMPRESSOR", + "LO-FI" ], "fx2": [ "FILTER", @@ -1420,36 +1352,1523 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", "DELAY", "PLATE REV", - "MINIVERB", - "EUCLID", - "TAPEHEAD" + "SPRING REV", + "DARK REV" ] }, "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" + "bytes": 1126741, + "osSha256": "fc128534dd31c25996277ee68c03c5b85cff47ec9b039d50b8018a7b939fd327", + "maskedOsSha256": "d968fa9956417c22e58ec0ad05ca0f18e40e74a22de6efc6f61d193f616bd84e" }, - "result": "refused" + "result": "masked" }, { "moduleIds": [ - "miniverb", - "euclid", - "repitch", - "tapehead", - "usb-audio-out-tracks-main-cue", - "quantizer", - "synth", - "previewvol", - "cc-map", - "sidechain-compressor", + "vector", + "mute-modes" + ], + "keepStockFx2": false, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI" + ], + "fx2": [] + }, + "native": { + "bytes": 1126741, + "osSha256": "e66ea89aed7bd944e3824574c2f9a9bf284c54a7d374e285ee136073520d2745", + "maskedOsSha256": "1b538f161442a89757bd90944993cf59511105540d457545a0f008e17938b654" + }, + "result": "masked" + }, + { + "moduleIds": [ + "vector", + "recorder-loop-fix" + ], + "keepStockFx2": true, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI" + ], + "fx2": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI", + "DELAY", + "PLATE REV", + "SPRING REV", + "DARK REV" + ] + }, + "native": { + "bytes": 1126741, + "osSha256": "ba9a0b29720c2a1bbb3a055f4b5185859ed69280cb9a833fb5f69b7a85ad62c7", + "maskedOsSha256": "75a02b9f0209e787a0ef890d837ec6a14bc81a15328d04cd752cc49e1b44fe27", + "platformArena": true + }, + "result": "masked" + }, + { + "moduleIds": [ + "vector", + "recorder-loop-fix" + ], + "keepStockFx2": false, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI" + ], + "fx2": [] + }, + "native": { + "bytes": 1126741, + "osSha256": "c22bb0046f3de92e27b64e058d93cb07a16af3ab4363d23c44324be03c345f22", + "maskedOsSha256": "680708323d5a6315ee414ede8137d66adad7c6b10d6df0ba96622b5065f0774b", + "platformArena": true + }, + "result": "masked" + }, + { + "moduleIds": [ + "vector", + "output-matrix" + ], + "keepStockFx2": true, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI" + ], + "fx2": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI", + "DELAY", + "PLATE REV", + "DARK REV" + ] + }, + "native": { + "bytes": 1127929, + "osSha256": "82e6be7c0dd44d7a17213a1744312eedfde2eab01746796106e1e438e6b441a6", + "maskedOsSha256": "30d8e0aecee9f75fc3cc385aee9021ec04ca1f616bec6855728611951ea967e3" + }, + "result": "masked" + }, + { + "moduleIds": [ + "vector", + "output-matrix" + ], + "keepStockFx2": false, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI" + ], + "fx2": [] + }, + "native": { + "bytes": 1127929, + "osSha256": "088b98137e463433d8ab8b2b6466261ea1de70a6a37584bd31a0412a6a0546e3", + "maskedOsSha256": "2c5af3d0110851ab0dfd3f5b4360528c4491f10ad552bb1302f6747912d6dab5" + }, + "result": "masked" + }, + { + "moduleIds": [ + "vector", + "quantize-live-rec-toggle" + ], + "keepStockFx2": true, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI" + ], + "fx2": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI", + "DELAY", + "PLATE REV", + "SPRING REV", + "DARK REV" + ] + }, + "native": { + "bytes": 1126741, + "osSha256": "3650870009f45a612268ccc40caa411b8025b5cdbcff6dceb6f0f81b098baff8", + "maskedOsSha256": "d2447ba1845365bb9ea5dae8dff5d9301e9d5429b8508444cc503396c9b59cf8" + }, + "result": "masked" + }, + { + "moduleIds": [ + "vector", + "quantize-live-rec-toggle" + ], + "keepStockFx2": false, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI" + ], + "fx2": [] + }, + "native": { + "bytes": 1126741, + "osSha256": "8ea628b14ad6ec40ade0c50b092d92d3e16ea631270364d7b72b6eed9bcab269", + "maskedOsSha256": "78e4316b534b3584b6ce132923de1ac2f33dc49773ae3b0c7979be7e75df76d3" + }, + "result": "masked" + }, + { + "moduleIds": [ + "vector", + "apply-scene" + ], + "keepStockFx2": true, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI" + ], + "fx2": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI", + "DELAY", + "PLATE REV", + "SPRING REV", + "DARK REV" + ] + }, + "native": { + "bytes": 1127206, + "osSha256": "ccf5754feb2f21448b152663b315d9d3010b6b8cb7b5fd6c1231d009e599c725", + "maskedOsSha256": "00209c55f24352f97caf6da239e43f710d19d3686198ab7d45d50bd6edaa77a3" + }, + "result": "masked" + }, + { + "moduleIds": [ + "vector", + "apply-scene" + ], + "keepStockFx2": false, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI" + ], + "fx2": [] + }, + "native": { + "bytes": 1127206, + "osSha256": "4055cadeda4fef3071fe79b80869d00e9a718ab59c56d1318771abe568a28c12", + "maskedOsSha256": "9af32dd04b67d2ba9243376472811662b2dc2522610e80da7d239fa981d1ccdc" + }, + "result": "masked" + }, + { + "moduleIds": [ + "miniverb", + "tapeecho", + "euclid", + "repitch", + "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene" + ], + "keepStockFx2": true, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID", + "TAPEHEAD" + ], + "fx2": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "DELAY", + "MINIVERB", + "TAPE ECHO", + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2" + ] + }, + "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 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", + "lofi2", + "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene" + ], + "keepStockFx2": false, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID", + "TAPEHEAD" + ], + "fx2": [ + "MINIVERB", + "TAPE ECHO", + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "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 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": [ + "tapeecho", + "euclid", + "repitch", + "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene" + ], + "keepStockFx2": true, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID", + "TAPEHEAD" + ], + "fx2": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "DELAY", + "TAPE ECHO", + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2" + ] + }, + "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 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": [ + "tapeecho", + "euclid", + "repitch", + "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene" + ], + "keepStockFx2": false, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID", + "TAPEHEAD" + ], + "fx2": [ + "TAPE ECHO", + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "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 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", + "repitch", + "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene" + ], + "keepStockFx2": true, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID", + "TAPEHEAD" + ], + "fx2": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "DELAY", + "MINIVERB", + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2" + ] + }, + "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 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", + "repitch", + "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene" + ], + "keepStockFx2": false, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID", + "TAPEHEAD" + ], + "fx2": [ + "MINIVERB", + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "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 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", + "repitch", + "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene" + ], + "keepStockFx2": true, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "TAPEHEAD" + ], + "fx2": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "DELAY", + "MINIVERB", + "TAPE ECHO", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2" + ] + }, + "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 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", + "repitch", + "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene" + ], + "keepStockFx2": false, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "TAPEHEAD" + ], + "fx2": [ + "MINIVERB", + "TAPE ECHO", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "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 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", + "bbd", + "lofi2", + "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene" + ], + "keepStockFx2": true, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID", + "TAPEHEAD" + ], + "fx2": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "DELAY", + "MINIVERB", + "TAPE ECHO", + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2" + ] + }, + "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 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", + "bbd", + "lofi2", + "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene" + ], + "keepStockFx2": false, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID", + "TAPEHEAD" + ], + "fx2": [ + "MINIVERB", + "TAPE ECHO", + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "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 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", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene" + ], + "keepStockFx2": true, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID" + ], + "fx2": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "DELAY", + "MINIVERB", + "TAPE ECHO", + "EUCLID", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2" + ] + }, + "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 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", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene" + ], + "keepStockFx2": false, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID" + ], + "fx2": [ + "MINIVERB", + "TAPE ECHO", + "EUCLID", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "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 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", + "everb", + "bbd", + "lofi2", + "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene" + ], + "keepStockFx2": true, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID", + "TAPEHEAD" + ], + "fx2": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "DELAY", + "MINIVERB", + "TAPE ECHO", + "EUCLID", + "TAPEHEAD", + "EVERB", + "BBD", + "LOFI2" + ] + }, + "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 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", + "everb", + "bbd", + "lofi2", + "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene" + ], + "keepStockFx2": false, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID", + "TAPEHEAD" + ], + "fx2": [ + "MINIVERB", + "TAPE ECHO", + "EUCLID", + "TAPEHEAD", + "EVERB", + "BBD", + "LOFI2", + "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 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", + "bbd", + "lofi2", + "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene" + ], + "keepStockFx2": true, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID", + "TAPEHEAD" + ], + "fx2": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "DELAY", + "MINIVERB", + "TAPE ECHO", + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "BBD", + "LOFI2" + ] + }, + "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 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", + "bbd", + "lofi2", + "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene" + ], + "keepStockFx2": false, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID", + "TAPEHEAD" + ], + "fx2": [ + "MINIVERB", + "TAPE ECHO", + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "BBD", + "LOFI2", + "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 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", + "lofi2", + "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene" + ], + "keepStockFx2": true, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID", + "TAPEHEAD" + ], + "fx2": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "DELAY", + "MINIVERB", + "TAPE ECHO", + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "LOFI2" + ] + }, + "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 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", + "lofi2", + "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene" + ], + "keepStockFx2": false, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID", + "TAPEHEAD" + ], + "fx2": [ + "MINIVERB", + "TAPE ECHO", + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "LOFI2", + "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 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", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene" + ], + "keepStockFx2": true, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID", + "TAPEHEAD" + ], + "fx2": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "DELAY", + "MINIVERB", + "TAPE ECHO", + "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 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", "playmodes", "mute-modes", - "recorder-loop-fix" + "recorder-loop-fix", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene" ], "keepStockFx2": false, "menu": { @@ -1469,13 +2888,17 @@ ], "fx2": [ "MINIVERB", + "TAPE ECHO", "EUCLID", "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" }, @@ -1483,9 +2906,13 @@ "moduleIds": [ "miniverb", "tapeecho", + "euclid", "repitch", "tapehead", - "usb-audio-out-tracks-main-cue", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", "quantizer", "synth", "previewvol", @@ -1494,7 +2921,10 @@ "vector", "playmodes", "mute-modes", - "recorder-loop-fix" + "recorder-loop-fix", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene" ], "keepStockFx2": true, "menu": { @@ -1509,6 +2939,7 @@ "COMB FILTER", "SIDECHAIN_COMPRESSOR", "LO-FI", + "EUCLID", "TAPEHEAD" ], "fx2": [ @@ -1523,14 +2954,18 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "DARK REV", "MINIVERB", "TAPE ECHO", - "TAPEHEAD" + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2" ] }, "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" }, @@ -1538,9 +2973,13 @@ "moduleIds": [ "miniverb", "tapeecho", + "euclid", "repitch", "tapehead", - "usb-audio-out-tracks-main-cue", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", "quantizer", "synth", "previewvol", @@ -1549,7 +2988,10 @@ "vector", "playmodes", "mute-modes", - "recorder-loop-fix" + "recorder-loop-fix", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene" ], "keepStockFx2": false, "menu": { @@ -1564,17 +3006,23 @@ "COMB FILTER", "SIDECHAIN_COMPRESSOR", "LO-FI", + "EUCLID", "TAPEHEAD" ], "fx2": [ "MINIVERB", "TAPE ECHO", + "EUCLID", "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", "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" }, @@ -1583,9 +3031,13 @@ "miniverb", "tapeecho", "euclid", + "repitch", "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", "usb-audio-out-tracks-main-cue", - "quantizer", "synth", "previewvol", "cc-map", @@ -1593,7 +3045,10 @@ "vector", "playmodes", "mute-modes", - "recorder-loop-fix" + "recorder-loop-fix", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene" ], "keepStockFx2": true, "menu": { @@ -1623,15 +3078,18 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", "MINIVERB", "TAPE ECHO", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2" ] }, "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 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" }, @@ -1640,9 +3098,13 @@ "miniverb", "tapeecho", "euclid", + "repitch", "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", "usb-audio-out-tracks-main-cue", - "quantizer", "synth", "previewvol", "cc-map", @@ -1650,7 +3112,10 @@ "vector", "playmodes", "mute-modes", - "recorder-loop-fix" + "recorder-loop-fix", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene" ], "keepStockFx2": false, "menu": { @@ -1673,11 +3138,15 @@ "TAPE ECHO", "EUCLID", "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", "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 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" }, @@ -1687,16 +3156,23 @@ "tapeecho", "euclid", "repitch", + "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", "usb-audio-out-tracks-main-cue", "quantizer", - "synth", "previewvol", "cc-map", "sidechain-compressor", "vector", "playmodes", "mute-modes", - "recorder-loop-fix" + "recorder-loop-fix", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene" ], "keepStockFx2": true, "menu": { @@ -1711,7 +3187,8 @@ "COMB FILTER", "SIDECHAIN_COMPRESSOR", "LO-FI", - "EUCLID" + "EUCLID", + "TAPEHEAD" ], "fx2": [ "FILTER", @@ -1725,14 +3202,18 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "DARK REV", "MINIVERB", "TAPE ECHO", - "EUCLID" + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2" ] }, "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": "REPITCH repitch at 0x400d7b80 not free" }, "result": "refused" }, @@ -1742,16 +3223,23 @@ "tapeecho", "euclid", "repitch", + "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", "usb-audio-out-tracks-main-cue", "quantizer", - "synth", "previewvol", "cc-map", "sidechain-compressor", "vector", "playmodes", "mute-modes", - "recorder-loop-fix" + "recorder-loop-fix", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene" ], "keepStockFx2": false, "menu": { @@ -1766,17 +3254,23 @@ "COMB FILTER", "SIDECHAIN_COMPRESSOR", "LO-FI", - "EUCLID" + "EUCLID", + "TAPEHEAD" ], "fx2": [ "MINIVERB", "TAPE ECHO", "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", "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": "REPITCH repitch at 0x400d7a00 not free" }, "result": "refused" }, @@ -1787,15 +3281,22 @@ "euclid", "repitch", "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "usb-audio-out-tracks-main-cue", "quantizer", "synth", - "previewvol", "cc-map", "sidechain-compressor", "vector", "playmodes", "mute-modes", - "recorder-loop-fix" + "recorder-loop-fix", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene" ], "keepStockFx2": true, "menu": { @@ -1825,15 +3326,18 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", "MINIVERB", "TAPE ECHO", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2" ] }, "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" }, @@ -1844,15 +3348,22 @@ "euclid", "repitch", "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "usb-audio-out-tracks-main-cue", "quantizer", "synth", - "previewvol", "cc-map", "sidechain-compressor", "vector", "playmodes", "mute-modes", - "recorder-loop-fix" + "recorder-loop-fix", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene" ], "keepStockFx2": false, "menu": { @@ -1875,11 +3386,15 @@ "TAPE ECHO", "EUCLID", "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", "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" }, @@ -1890,15 +3405,22 @@ "euclid", "repitch", "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", "usb-audio-out-tracks-main-cue", + "quantizer", "synth", "previewvol", - "cc-map", "sidechain-compressor", "vector", "playmodes", "mute-modes", - "recorder-loop-fix" + "recorder-loop-fix", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene" ], "keepStockFx2": true, "menu": { @@ -1928,15 +3450,18 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", "MINIVERB", "TAPE ECHO", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2" ] }, "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" }, @@ -1947,15 +3472,22 @@ "euclid", "repitch", "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", "usb-audio-out-tracks-main-cue", + "quantizer", "synth", "previewvol", - "cc-map", "sidechain-compressor", "vector", "playmodes", "mute-modes", - "recorder-loop-fix" + "recorder-loop-fix", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene" ], "keepStockFx2": false, "menu": { @@ -1978,11 +3510,15 @@ "TAPE ECHO", "EUCLID", "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", "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" }, @@ -1993,15 +3529,22 @@ "euclid", "repitch", "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", "usb-audio-out-tracks-main-cue", "quantizer", + "synth", "previewvol", "cc-map", - "sidechain-compressor", "vector", "playmodes", "mute-modes", - "recorder-loop-fix" + "recorder-loop-fix", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene" ], "keepStockFx2": true, "menu": { @@ -2014,7 +3557,7 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", "EUCLID", "TAPEHEAD" @@ -2028,18 +3571,21 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", "MINIVERB", "TAPE ECHO", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2" ] }, "native": { - "refused": "MUTE_MODES mm_softmute at 0x400d7880 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" }, @@ -2050,15 +3596,22 @@ "euclid", "repitch", "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", "usb-audio-out-tracks-main-cue", "quantizer", + "synth", "previewvol", "cc-map", - "sidechain-compressor", "vector", "playmodes", "mute-modes", - "recorder-loop-fix" + "recorder-loop-fix", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene" ], "keepStockFx2": false, "menu": { @@ -2071,7 +3624,7 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", "EUCLID", "TAPEHEAD" @@ -2081,11 +3634,14 @@ "TAPE ECHO", "EUCLID", "TAPEHEAD", - "SIDECHAIN_COMPRESSOR" + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2" ] }, "native": { - "refused": "MUTE_MODES mm_softmute at 0x400d7880 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" }, @@ -2096,15 +3652,22 @@ "euclid", "repitch", "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", "usb-audio-out-tracks-main-cue", "quantizer", "synth", + "previewvol", "cc-map", "sidechain-compressor", "vector", - "playmodes", "mute-modes", - "recorder-loop-fix" + "recorder-loop-fix", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene" ], "keepStockFx2": true, "menu": { @@ -2134,15 +3697,18 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", "MINIVERB", "TAPE ECHO", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2" ] }, "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" }, @@ -2153,15 +3719,22 @@ "euclid", "repitch", "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", "usb-audio-out-tracks-main-cue", "quantizer", "synth", + "previewvol", "cc-map", "sidechain-compressor", "vector", - "playmodes", "mute-modes", - "recorder-loop-fix" + "recorder-loop-fix", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene" ], "keepStockFx2": false, "menu": { @@ -2184,11 +3757,15 @@ "TAPE ECHO", "EUCLID", "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", "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" }, @@ -2199,15 +3776,22 @@ "euclid", "repitch", "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", "usb-audio-out-tracks-main-cue", "quantizer", "synth", "previewvol", + "cc-map", "sidechain-compressor", "vector", "playmodes", - "mute-modes", - "recorder-loop-fix" + "recorder-loop-fix", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene" ], "keepStockFx2": true, "menu": { @@ -2237,15 +3821,18 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", "MINIVERB", "TAPE ECHO", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2" ] }, "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" }, @@ -2256,15 +3843,22 @@ "euclid", "repitch", "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", "usb-audio-out-tracks-main-cue", "quantizer", "synth", "previewvol", + "cc-map", "sidechain-compressor", "vector", "playmodes", - "mute-modes", - "recorder-loop-fix" + "recorder-loop-fix", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene" ], "keepStockFx2": false, "menu": { @@ -2287,11 +3881,15 @@ "TAPE ECHO", "EUCLID", "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", "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" }, @@ -2302,15 +3900,22 @@ "euclid", "repitch", "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", "usb-audio-out-tracks-main-cue", "quantizer", "synth", "previewvol", "cc-map", + "sidechain-compressor", "vector", "playmodes", "mute-modes", - "recorder-loop-fix" + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene" ], "keepStockFx2": true, "menu": { @@ -2323,7 +3928,7 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", "TAPEHEAD" @@ -2337,18 +3942,21 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "DARK REV", "MINIVERB", "TAPE ECHO", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2" ] }, "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" }, @@ -2359,15 +3967,22 @@ "euclid", "repitch", "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", "usb-audio-out-tracks-main-cue", "quantizer", "synth", "previewvol", "cc-map", + "sidechain-compressor", "vector", "playmodes", "mute-modes", - "recorder-loop-fix" + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene" ], "keepStockFx2": false, "menu": { @@ -2380,7 +3995,7 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", "TAPEHEAD" @@ -2389,11 +4004,16 @@ "MINIVERB", "TAPE ECHO", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "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" }, @@ -2404,6 +4024,10 @@ "euclid", "repitch", "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -2411,8 +4035,11 @@ "cc-map", "sidechain-compressor", "vector", + "playmodes", "mute-modes", - "recorder-loop-fix" + "recorder-loop-fix", + "quantize-live-rec-toggle", + "apply-scene" ], "keepStockFx2": true, "menu": { @@ -2442,15 +4069,18 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", "MINIVERB", "TAPE ECHO", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2" ] }, "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" }, @@ -2461,6 +4091,10 @@ "euclid", "repitch", "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -2468,8 +4102,11 @@ "cc-map", "sidechain-compressor", "vector", + "playmodes", "mute-modes", - "recorder-loop-fix" + "recorder-loop-fix", + "quantize-live-rec-toggle", + "apply-scene" ], "keepStockFx2": false, "menu": { @@ -2492,11 +4129,15 @@ "TAPE ECHO", "EUCLID", "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", "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" }, @@ -2507,6 +4148,10 @@ "euclid", "repitch", "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -2515,7 +4160,10 @@ "sidechain-compressor", "vector", "playmodes", - "recorder-loop-fix" + "mute-modes", + "recorder-loop-fix", + "output-matrix", + "apply-scene" ], "keepStockFx2": true, "menu": { @@ -2545,15 +4193,18 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", "MINIVERB", "TAPE ECHO", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2" ] }, "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" }, @@ -2564,6 +4215,10 @@ "euclid", "repitch", "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -2572,7 +4227,10 @@ "sidechain-compressor", "vector", "playmodes", - "recorder-loop-fix" + "mute-modes", + "recorder-loop-fix", + "output-matrix", + "apply-scene" ], "keepStockFx2": false, "menu": { @@ -2595,11 +4253,15 @@ "TAPE ECHO", "EUCLID", "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", "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" }, @@ -2610,6 +4272,10 @@ "euclid", "repitch", "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -2618,7 +4284,10 @@ "sidechain-compressor", "vector", "playmodes", - "mute-modes" + "mute-modes", + "recorder-loop-fix", + "output-matrix", + "quantize-live-rec-toggle" ], "keepStockFx2": true, "menu": { @@ -2648,15 +4317,18 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", "MINIVERB", "TAPE ECHO", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2" ] }, "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" }, @@ -2667,6 +4339,10 @@ "euclid", "repitch", "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -2675,7 +4351,10 @@ "sidechain-compressor", "vector", "playmodes", - "mute-modes" + "mute-modes", + "recorder-loop-fix", + "output-matrix", + "quantize-live-rec-toggle" ], "keepStockFx2": false, "menu": { @@ -2698,11 +4377,15 @@ "TAPE ECHO", "EUCLID", "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", "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" }, @@ -2710,14 +4393,20 @@ "moduleIds": [ "miniverb", "tapeecho", - "euclid", "repitch", + "tapehead", + "bbd", + "lofi2", + "quantizer", "synth", "previewvol", "cc-map", + "sidechain-compressor", "vector", "playmodes", - "mute-modes" + "mute-modes", + "recorder-loop-fix", + "apply-scene" ], "keepStockFx2": true, "menu": { @@ -2730,9 +4419,9 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", - "EUCLID" + "TAPEHEAD" ], "fx2": [ "FILTER", @@ -2743,18 +4432,18 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", - "SPRING REV", "MINIVERB", "TAPE ECHO", - "EUCLID" + "TAPEHEAD", + "BBD", + "LOFI2" ] }, "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" }, @@ -2762,14 +4451,20 @@ "moduleIds": [ "miniverb", "tapeecho", - "euclid", "repitch", + "tapehead", + "bbd", + "lofi2", + "quantizer", "synth", "previewvol", "cc-map", + "sidechain-compressor", "vector", "playmodes", - "mute-modes" + "mute-modes", + "recorder-loop-fix", + "apply-scene" ], "keepStockFx2": false, "menu": { @@ -2782,26 +4477,36 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", - "EUCLID" + "TAPEHEAD" ], "fx2": [ "MINIVERB", "TAPE ECHO", - "EUCLID" + "TAPEHEAD", + "BBD", + "LOFI2", + "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" }, { "moduleIds": [ "tapeecho", - "cc-map", - "vector" + "euclid", + "airwindows-chorus", + "bbd", + "lofi2", + "quantizer", + "vector", + "recorder-loop-fix", + "output-matrix", + "apply-scene" ], "keepStockFx2": true, "menu": { @@ -2815,7 +4520,8 @@ "SPATIALIZER", "COMB FILTER", "COMPRESSOR", - "LO-FI" + "LO-FI", + "EUCLID" ], "fx2": [ "FILTER", @@ -2829,23 +4535,30 @@ "COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", - "DARK REV", - "TAPE ECHO" + "TAPE ECHO", + "EUCLID", + "AIR CHORUS", + "BBD", + "LOFI2" ] }, "native": { - "bytes": 1223252, - "osSha256": "8ea327c84b0d3d3cd4978653f6468d1a0a6eeaf814b6f8644e67e369f7dae055", - "maskedOsSha256": "9575d013c2ae1dc7cde267a4b7e5d10177929495e0d3cead5684c3c663629a7b" + "refused": "label formatters do not fit: TAPE ECHO slot 4 needs 54 B; the clone window ends at 0x400d7bbc and the overflow run at 0x400d2ce0 (next free 0x400d2ce0)" }, - "result": "masked" + "result": "refused" }, { "moduleIds": [ "tapeecho", - "cc-map", - "vector" + "euclid", + "airwindows-chorus", + "bbd", + "lofi2", + "quantizer", + "vector", + "recorder-loop-fix", + "output-matrix", + "apply-scene" ], "keepStockFx2": false, "menu": { @@ -2859,32 +4572,28 @@ "SPATIALIZER", "COMB FILTER", "COMPRESSOR", - "LO-FI" + "LO-FI", + "EUCLID" ], "fx2": [ - "TAPE ECHO" + "TAPE ECHO", + "EUCLID", + "AIR CHORUS", + "BBD", + "LOFI2" ] }, "native": { - "bytes": 1223252, - "osSha256": "c250f5a5510ee45f2f4af080220487b00d9e7467f7d3ecadca9574b53df084b3", - "maskedOsSha256": "97d896c88c7c39874878b86a7e260d3b10ed19121b40141edfdd064d1a5d9c06" + "refused": "label formatters do not fit: EUCLID slot 4 needs 352 B; the clone window ends at 0x400d7c3c and the overflow run at 0x400d2ce0 (next free 0x400d2ce0)" }, - "result": "masked" + "result": "refused" }, { "moduleIds": [ - "miniverb", - "tapeecho", - "euclid", + "repitch", "tapehead", - "usb-audio-out-tracks-main-cue", - "quantizer", - "synth", - "sidechain-compressor", "vector", - "playmodes", - "mute-modes" + "apply-scene" ], "keepStockFx2": true, "menu": { @@ -2897,9 +4606,8 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", - "EUCLID", "TAPEHEAD" ], "fx2": [ @@ -2911,34 +4619,27 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", "DELAY", "PLATE REV", - "MINIVERB", - "TAPE ECHO", - "EUCLID", + "DARK REV", "TAPEHEAD" ] }, "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" + "bytes": 1127206, + "osSha256": "02f049b0c848ac8f2fb286cf59d79f0269f780c5a7670095843bccaa6d773cff", + "maskedOsSha256": "ebbea9e2e4b48997984a276a363b9ce50b6d025c591a24c25176a0b18ed70702" }, - "result": "refused" + "result": "masked" }, { "moduleIds": [ - "miniverb", - "tapeecho", - "euclid", + "repitch", "tapehead", - "usb-audio-out-tracks-main-cue", - "quantizer", - "synth", - "sidechain-compressor", "vector", - "playmodes", - "mute-modes" + "apply-scene" ], "keepStockFx2": false, "menu": { @@ -2951,23 +4652,20 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", - "EUCLID", "TAPEHEAD" ], "fx2": [ - "MINIVERB", - "TAPE ECHO", - "EUCLID", - "TAPEHEAD", - "SIDECHAIN_COMPRESSOR" + "TAPEHEAD" ] }, "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" + "bytes": 1127206, + "osSha256": "f4451c6f5bf628a0dd40239e6b7d820abe929dbcb51be2d49bb4a8a293e52b0b", + "maskedOsSha256": "4795c0f3b96e28123ed4d3b7a8c186e565c23a0143de94e352de44af31949534" }, - "result": "refused" + "result": "masked" }, { "moduleIds": [ @@ -2975,13 +4673,22 @@ "tapeecho", "euclid", "repitch", + "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", "usb-audio-out-tracks-main-cue", - "quantizer", + "synth", "previewvol", "cc-map", + "sidechain-compressor", "vector", + "playmodes", "mute-modes", - "recorder-loop-fix" + "recorder-loop-fix", + "output-matrix", + "quantize-live-rec-toggle" ], "keepStockFx2": true, "menu": { @@ -2994,9 +4701,10 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", - "EUCLID" + "EUCLID", + "TAPEHEAD" ], "fx2": [ "FILTER", @@ -3007,18 +4715,21 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", - "SPRING REV", "MINIVERB", "TAPE ECHO", - "EUCLID" + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2" ] }, "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 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" }, @@ -3028,13 +4739,22 @@ "tapeecho", "euclid", "repitch", + "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", "usb-audio-out-tracks-main-cue", - "quantizer", + "synth", "previewvol", "cc-map", + "sidechain-compressor", "vector", + "playmodes", "mute-modes", - "recorder-loop-fix" + "recorder-loop-fix", + "output-matrix", + "quantize-live-rec-toggle" ], "keepStockFx2": false, "menu": { @@ -3047,18 +4767,25 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", - "EUCLID" + "EUCLID", + "TAPEHEAD" ], "fx2": [ "MINIVERB", "TAPE ECHO", - "EUCLID" + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "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 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" }, @@ -3066,16 +4793,18 @@ "moduleIds": [ "miniverb", "tapeecho", - "repitch", + "euclid", "tapehead", - "usb-audio-out-tracks-main-cue", - "quantizer", + "airwindows-chorus", + "bbd", + "lofi2", "synth", - "cc-map", + "previewvol", + "sidechain-compressor", "vector", "playmodes", "mute-modes", - "recorder-loop-fix" + "output-matrix" ], "keepStockFx2": true, "menu": { @@ -3088,8 +4817,9 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", + "EUCLID", "TAPEHEAD" ], "fx2": [ @@ -3101,18 +4831,20 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", - "SPRING REV", "MINIVERB", "TAPE ECHO", - "TAPEHEAD" + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "BBD", + "LOFI2" ] }, "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 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" }, @@ -3120,16 +4852,18 @@ "moduleIds": [ "miniverb", "tapeecho", - "repitch", + "euclid", "tapehead", - "usb-audio-out-tracks-main-cue", - "quantizer", + "airwindows-chorus", + "bbd", + "lofi2", "synth", - "cc-map", + "previewvol", + "sidechain-compressor", "vector", "playmodes", "mute-modes", - "recorder-loop-fix" + "output-matrix" ], "keepStockFx2": false, "menu": { @@ -3142,30 +4876,45 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", + "EUCLID", "TAPEHEAD" ], "fx2": [ "MINIVERB", "TAPE ECHO", - "TAPEHEAD" + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "BBD", + "LOFI2", + "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 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" }, { "moduleIds": [ - "tapeecho", - "euclid", - "tapehead", + "miniverb", + "repitch", + "airwindows-chorus", + "bbd", + "lofi2", + "usb-audio-out-tracks-main-cue", "quantizer", "synth", + "sidechain-compressor", "vector", - "mute-modes" + "playmodes", + "mute-modes", + "recorder-loop-fix", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene" ], "keepStockFx2": true, "menu": { @@ -3178,10 +4927,8 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", - "LO-FI", - "EUCLID", - "TAPEHEAD" + "SIDECHAIN_COMPRESSOR", + "LO-FI" ], "fx2": [ "FILTER", @@ -3192,30 +4939,38 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", - "SPRING REV", - "TAPE ECHO", - "EUCLID", - "TAPEHEAD" + "MINIVERB", + "AIR CHORUS", + "BBD", + "LOFI2" ] }, "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": [ - "tapeecho", - "euclid", - "tapehead", + "miniverb", + "repitch", + "airwindows-chorus", + "bbd", + "lofi2", + "usb-audio-out-tracks-main-cue", "quantizer", "synth", + "sidechain-compressor", "vector", - "mute-modes" + "playmodes", + "mute-modes", + "recorder-loop-fix", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene" ], "keepStockFx2": false, "menu": { @@ -3228,27 +4983,44 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", - "LO-FI", - "EUCLID", - "TAPEHEAD" + "SIDECHAIN_COMPRESSOR", + "LO-FI" ], "fx2": [ - "TAPE ECHO", - "EUCLID", - "TAPEHEAD" + "MINIVERB", + "AIR CHORUS", + "BBD", + "LOFI2", + "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", + "repitch", + "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "usb-audio-out-tracks-main-cue", + "quantizer", "synth", + "previewvol", + "cc-map", "vector", - "playmodes" + "playmodes", + "mute-modes", + "recorder-loop-fix", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene" ], "keepStockFx2": true, "menu": { @@ -3262,7 +5034,9 @@ "SPATIALIZER", "COMB FILTER", "COMPRESSOR", - "LO-FI" + "LO-FI", + "EUCLID", + "TAPEHEAD" ], "fx2": [ "FILTER", @@ -3276,21 +5050,42 @@ "COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", - "SPRING REV", - "DARK REV" + "MINIVERB", + "TAPE ECHO", + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "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" }, { "moduleIds": [ + "miniverb", + "tapeecho", + "euclid", + "repitch", + "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "usb-audio-out-tracks-main-cue", + "quantizer", "synth", + "previewvol", + "cc-map", "vector", - "playmodes" + "playmodes", + "mute-modes", + "recorder-loop-fix", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene" ], "keepStockFx2": false, "menu": { @@ -3304,12 +5099,22 @@ "SPATIALIZER", "COMB FILTER", "COMPRESSOR", - "LO-FI" + "LO-FI", + "EUCLID", + "TAPEHEAD" ], - "fx2": [] + "fx2": [ + "MINIVERB", + "TAPE ECHO", + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "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" }, @@ -3317,16 +5122,17 @@ "moduleIds": [ "miniverb", "tapeecho", - "repitch", "tapehead", - "usb-audio-out-tracks-main-cue", + "airwindows-chorus", + "bbd", + "lofi2", "quantizer", "synth", "previewvol", - "sidechain-compressor", + "cc-map", "vector", - "playmodes", - "mute-modes" + "recorder-loop-fix", + "output-matrix" ], "keepStockFx2": true, "menu": { @@ -3339,7 +5145,7 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", "TAPEHEAD" ], @@ -3352,17 +5158,19 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", "DELAY", - "DARK REV", "MINIVERB", "TAPE ECHO", - "TAPEHEAD" + "TAPEHEAD", + "AIR CHORUS", + "BBD", + "LOFI2" ] }, "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" }, @@ -3370,16 +5178,17 @@ "moduleIds": [ "miniverb", "tapeecho", - "repitch", "tapehead", - "usb-audio-out-tracks-main-cue", + "airwindows-chorus", + "bbd", + "lofi2", "quantizer", "synth", "previewvol", - "sidechain-compressor", + "cc-map", "vector", - "playmodes", - "mute-modes" + "recorder-loop-fix", + "output-matrix" ], "keepStockFx2": false, "menu": { @@ -3392,7 +5201,7 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", "TAPEHEAD" ], @@ -3400,27 +5209,24 @@ "MINIVERB", "TAPE ECHO", "TAPEHEAD", - "SIDECHAIN_COMPRESSOR" + "AIR CHORUS", + "BBD", + "LOFI2" ] }, "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": [ - "tapeecho", - "euclid", - "repitch", - "tapehead", - "usb-audio-out-tracks-main-cue", - "quantizer", - "cc-map", + "everb", + "bbd", + "previewvol", "vector", - "playmodes", - "mute-modes", - "recorder-loop-fix" + "recorder-loop-fix", + "quantize-live-rec-toggle" ], "keepStockFx2": true, "menu": { @@ -3434,9 +5240,7 @@ "SPATIALIZER", "COMB FILTER", "COMPRESSOR", - "LO-FI", - "EUCLID", - "TAPEHEAD" + "LO-FI" ], "fx2": [ "FILTER", @@ -3450,31 +5254,26 @@ "COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", - "SPRING REV", - "TAPE ECHO", - "EUCLID", - "TAPEHEAD" + "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" + "bytes": 1126782, + "osSha256": "2d099e104b7744330f998b661769eb52d54ca77250f0a8e2ad27c80ea8e1737f", + "maskedOsSha256": "449138c44c1b2895b69711b9f4eb1efa854460ad86f65b708af63a003444dfb1", + "platformArena": true }, - "result": "refused" + "result": "masked" }, { "moduleIds": [ - "tapeecho", - "euclid", - "repitch", - "tapehead", - "usb-audio-out-tracks-main-cue", - "quantizer", - "cc-map", + "everb", + "bbd", + "previewvol", "vector", - "playmodes", - "mute-modes", - "recorder-loop-fix" + "recorder-loop-fix", + "quantize-live-rec-toggle" ], "keepStockFx2": false, "menu": { @@ -3488,24 +5287,35 @@ "SPATIALIZER", "COMB FILTER", "COMPRESSOR", - "LO-FI", - "EUCLID", - "TAPEHEAD" + "LO-FI" ], "fx2": [ - "TAPE ECHO", - "EUCLID", - "TAPEHEAD" + "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" + "bytes": 1126782, + "osSha256": "c8cb976bc9bc3e244d6ff85b29f604b784cce89faf5c55138b8541b42f3f6907", + "maskedOsSha256": "ef0ba0f0ffc7f8574d9a959f8d6a29705e9566a0113d6138abdb11bb626d09d9", + "platformArena": true }, - "result": "refused" + "result": "masked" }, { "moduleIds": [ + "tapeecho", + "euclid", + "repitch", + "tapehead", + "airwindows-chorus", + "bbd", + "lofi2", + "usb-audio-out-tracks-main-cue", "synth", + "previewvol", + "cc-map", + "sidechain-compressor", "vector", "recorder-loop-fix" ], @@ -3520,8 +5330,10 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", - "LO-FI" + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID", + "TAPEHEAD" ], "fx2": [ "FILTER", @@ -3532,12 +5344,15 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", - "SPRING REV", - "DARK REV" + "TAPE ECHO", + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "BBD", + "LOFI2" ] }, "native": { @@ -3547,7 +5362,18 @@ }, { "moduleIds": [ + "tapeecho", + "euclid", + "repitch", + "tapehead", + "airwindows-chorus", + "bbd", + "lofi2", + "usb-audio-out-tracks-main-cue", "synth", + "previewvol", + "cc-map", + "sidechain-compressor", "vector", "recorder-loop-fix" ], @@ -3562,10 +5388,20 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", - "LO-FI" + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID", + "TAPEHEAD" ], - "fx2": [] + "fx2": [ + "TAPE ECHO", + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "BBD", + "LOFI2", + "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" @@ -3574,13 +5410,23 @@ }, { "moduleIds": [ + "miniverb", + "tapeecho", "euclid", + "repitch", + "airwindows-chorus", + "bbd", + "lofi2", "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", "previewvol", "cc-map", "sidechain-compressor", "vector", - "playmodes" + "recorder-loop-fix", + "quantize-live-rec-toggle", + "apply-scene" ], "keepStockFx2": true, "menu": { @@ -3609,27 +5455,38 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", - "DARK REV", - "EUCLID" + "MINIVERB", + "TAPE ECHO", + "EUCLID", + "AIR CHORUS", + "BBD", + "LOFI2" ] }, "native": { - "bytes": 1130864, - "osSha256": "2e828cbf86ea8aa38916287c928c52a63682e2d6ade321b54618244631a1c195", - "maskedOsSha256": "3384eabab0f942511a3a72d4e8179999e4d1ea679616af296386fd552ee0a8c2" + "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": "masked" + "result": "refused" }, { "moduleIds": [ + "miniverb", + "tapeecho", "euclid", + "repitch", + "airwindows-chorus", + "bbd", + "lofi2", "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", "previewvol", "cc-map", "sidechain-compressor", "vector", - "playmodes" + "recorder-loop-fix", + "quantize-live-rec-toggle", + "apply-scene" ], "keepStockFx2": false, "menu": { @@ -3647,23 +5504,34 @@ "EUCLID" ], "fx2": [ + "MINIVERB", + "TAPE ECHO", "EUCLID", + "AIR CHORUS", + "BBD", + "LOFI2", "SIDECHAIN_COMPRESSOR" ] }, "native": { - "bytes": 1130864, - "osSha256": "41a2e4e9c697cbcdb43d59b3e5775949477b32d00e08f1567fce7e055804b42a", - "maskedOsSha256": "714912dbd2db3d074f110a76611f0630797d9a721218e53a67107f998f1fe953" + "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": "masked" + "result": "refused" }, { "moduleIds": [ - "euclid", - "repitch", + "miniverb", + "tapehead", + "everb", + "bbd", "quantizer", - "vector" + "previewvol", + "sidechain-compressor", + "vector", + "mute-modes", + "recorder-loop-fix", + "quantize-live-rec-toggle", + "apply-scene" ], "keepStockFx2": true, "menu": { @@ -3676,9 +5544,9 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", - "EUCLID" + "TAPEHEAD" ], "fx2": [ "FILTER", @@ -3689,27 +5557,34 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", - "DARK REV", - "EUCLID" + "MINIVERB", + "TAPEHEAD", + "EVERB", + "BBD" ] }, "native": { - "bytes": 1125357, - "osSha256": "a2f14d6ce374ada0ebffbee8a9a711f95b371ba70972812f8bad57ae42f62245", - "maskedOsSha256": "aa1dc951f6b07c6492c5db8b10dbe9f3c4a2093661ff1090c2774bc311ae5e3b" + "refused": "MUTE_MODES mm_menu at 0x400d7b00 not free" }, - "result": "masked" + "result": "refused" }, { "moduleIds": [ - "euclid", - "repitch", + "miniverb", + "tapehead", + "everb", + "bbd", "quantizer", - "vector" + "previewvol", + "sidechain-compressor", + "vector", + "mute-modes", + "recorder-loop-fix", + "quantize-live-rec-toggle", + "apply-scene" ], "keepStockFx2": false, "menu": { @@ -3722,32 +5597,39 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", - "EUCLID" + "TAPEHEAD" ], "fx2": [ - "EUCLID" + "MINIVERB", + "TAPEHEAD", + "EVERB", + "BBD", + "SIDECHAIN_COMPRESSOR" ] }, "native": { - "bytes": 1125357, - "osSha256": "e68df50a26b040ffd7d828984819643319d965a92ca3c464a06963fc33d1a966", - "maskedOsSha256": "6235642661a29570b259c6f65182d858ed634d6479ebb02de17b09339b928e5b" + "refused": "QUANTIZE_LIVE_REC_TOGGLE qlr at 0x400d7c00 not free" }, - "result": "masked" + "result": "refused" }, { "moduleIds": [ - "miniverb", "tapeecho", "euclid", - "tapehead", - "quantizer", + "repitch", + "airwindows-chorus", + "bbd", + "synth", "previewvol", + "cc-map", "vector", + "playmodes", "mute-modes", - "recorder-loop-fix" + "recorder-loop-fix", + "output-matrix", + "apply-scene" ], "keepStockFx2": true, "menu": { @@ -3762,8 +5644,7 @@ "COMB FILTER", "COMPRESSOR", "LO-FI", - "EUCLID", - "TAPEHEAD" + "EUCLID" ], "fx2": [ "FILTER", @@ -3777,29 +5658,33 @@ "COMPRESSOR", "LO-FI", "DELAY", - "DARK REV", - "MINIVERB", "TAPE ECHO", "EUCLID", - "TAPEHEAD" + "AIR CHORUS", + "BBD" ] }, "native": { - "refused": "hold cave (copy) not free" + "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" }, { "moduleIds": [ - "miniverb", "tapeecho", "euclid", - "tapehead", - "quantizer", + "repitch", + "airwindows-chorus", + "bbd", + "synth", "previewvol", + "cc-map", "vector", + "playmodes", "mute-modes", - "recorder-loop-fix" + "recorder-loop-fix", + "output-matrix", + "apply-scene" ], "keepStockFx2": false, "menu": { @@ -3814,30 +5699,41 @@ "COMB FILTER", "COMPRESSOR", "LO-FI", - "EUCLID", - "TAPEHEAD" + "EUCLID" ], "fx2": [ - "MINIVERB", "TAPE ECHO", "EUCLID", - "TAPEHEAD" + "AIR CHORUS", + "BBD" ] }, "native": { - "refused": "past the stock zero run (or into the long chooser list)" + "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" }, { "moduleIds": [ + "miniverb", + "tapeecho", + "euclid", + "repitch", "tapehead", + "airwindows-chorus", + "everb", + "lofi2", "quantizer", + "synth", "previewvol", + "cc-map", "sidechain-compressor", "vector", "playmodes", - "recorder-loop-fix" + "mute-modes", + "recorder-loop-fix", + "output-matrix", + "quantize-live-rec-toggle" ], "keepStockFx2": true, "menu": { @@ -3852,6 +5748,7 @@ "COMB FILTER", "SIDECHAIN_COMPRESSOR", "LO-FI", + "EUCLID", "TAPEHEAD" ], "fx2": [ @@ -3866,28 +5763,41 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", - "DARK REV", - "TAPEHEAD" + "MINIVERB", + "TAPE ECHO", + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "LOFI2" ] }, "native": { - "bytes": 1128231, - "osSha256": "e67a74c4618cb562bad8565e5931266c7ee5ff1980f3bb7a1fb9886da0b82ee7", - "maskedOsSha256": "994ab9682662c583ef95830b872f70c03ec355b8edcd4f03e3f06021253ba7e8", - "platformArena": true + "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": "masked" + "result": "refused" }, { "moduleIds": [ + "miniverb", + "tapeecho", + "euclid", + "repitch", "tapehead", + "airwindows-chorus", + "everb", + "lofi2", "quantizer", + "synth", "previewvol", + "cc-map", "sidechain-compressor", "vector", "playmodes", - "recorder-loop-fix" + "mute-modes", + "recorder-loop-fix", + "output-matrix", + "quantize-live-rec-toggle" ], "keepStockFx2": false, "menu": { @@ -3902,30 +5812,36 @@ "COMB FILTER", "SIDECHAIN_COMPRESSOR", "LO-FI", + "EUCLID", "TAPEHEAD" ], "fx2": [ + "MINIVERB", + "TAPE ECHO", + "EUCLID", "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "LOFI2", "SIDECHAIN_COMPRESSOR" ] }, "native": { - "bytes": 1128231, - "osSha256": "241a2ce4fdd91595ce6d6b0a958bafa37cc9146bf3da3f8b777c156014120c7b", - "maskedOsSha256": "08f2e74fa724899adc4c7fbb18c66b48d449fca8dfde43926a702b9c47edbafd", - "platformArena": true + "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": "masked" + "result": "refused" }, { "moduleIds": [ - "tapeecho", - "euclid", - "repitch", - "tapehead", + "everb", + "lofi2", + "quantizer", "cc-map", + "sidechain-compressor", "vector", - "mute-modes" + "playmodes", + "recorder-loop-fix", + "apply-scene" ], "keepStockFx2": true, "menu": { @@ -3938,10 +5854,8 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", - "LO-FI", - "EUCLID", - "TAPEHEAD" + "SIDECHAIN_COMPRESSOR", + "LO-FI" ], "fx2": [ "FILTER", @@ -3952,30 +5866,29 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", - "SPRING REV", - "TAPE ECHO", - "EUCLID", - "TAPEHEAD" + "EVERB", + "LOFI2" ] }, "native": { - "refused": "MUTE_MODES table PERSONALIZE labels at 0x400d7b80 not free" + "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)" }, "result": "refused" }, { "moduleIds": [ - "tapeecho", - "euclid", - "repitch", - "tapehead", + "everb", + "lofi2", + "quantizer", "cc-map", + "sidechain-compressor", "vector", - "mute-modes" + "playmodes", + "recorder-loop-fix", + "apply-scene" ], "keepStockFx2": false, "menu": { @@ -3988,28 +5901,25 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", - "LO-FI", - "EUCLID", - "TAPEHEAD" + "SIDECHAIN_COMPRESSOR", + "LO-FI" ], "fx2": [ - "TAPE ECHO", - "EUCLID", - "TAPEHEAD" + "EVERB", + "LOFI2", + "SIDECHAIN_COMPRESSOR" ] }, "native": { - "refused": "MUTE_MODES table PERSONALIZE getters at 0x400d7c00 not free" + "refused": "label formatters do not fit: LOFI2 slot 8 needs 164 B; the clone window ends at 0x400d7c3c and the overflow run at 0x400d2ce0 (next free 0x400d2ce0)" }, "result": "refused" }, { "moduleIds": [ - "miniverb", - "euclid", - "quantizer", - "vector" + "sidechain-compressor", + "vector", + "recorder-loop-fix" ], "keepStockFx2": true, "menu": { @@ -4022,9 +5932,8 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", - "LO-FI", - "EUCLID" + "SIDECHAIN_COMPRESSOR", + "LO-FI" ], "fx2": [ "FILTER", @@ -4035,28 +5944,26 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", "PLATE REV", - "SPRING REV", - "MINIVERB", - "EUCLID" + "DARK REV" ] }, "native": { - "bytes": 1125357, - "osSha256": "d2618c547c287ff118c91f022762c102623b53465b22330eccc63040583ed4d9", - "maskedOsSha256": "139f4b8c577f5e92d3753fdf6b602c1c57b4f3f2d32f001d21f4e91be50e77ba" + "bytes": 1126741, + "osSha256": "290ac6d599ce563d55469b8b669c90c451ddd728a124a0e546f848c7cb560425", + "maskedOsSha256": "b2eca70d37972a5e663a1ce6e14ec0c447b7d83750ae209a9156693a80468994", + "platformArena": true }, "result": "masked" }, { "moduleIds": [ - "miniverb", - "euclid", - "quantizer", - "vector" + "sidechain-compressor", + "vector", + "recorder-loop-fix" ], "keepStockFx2": false, "menu": { @@ -4069,33 +5976,40 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", - "LO-FI", - "EUCLID" + "SIDECHAIN_COMPRESSOR", + "LO-FI" ], "fx2": [ - "MINIVERB", - "EUCLID" + "SIDECHAIN_COMPRESSOR" ] }, "native": { - "bytes": 1125357, - "osSha256": "1184f9e4cdf525f48faea8f8714fc20c7c95683c24b355246d62208bb6b5dd3c", - "maskedOsSha256": "75f0fd1b7ae52139c6c74355bf179fc4ceee9203b7c98eb0fa2751172ec05025" + "bytes": 1126741, + "osSha256": "e9dbda84d06f4722740c48dc28bbfc4411fca91bef9b7eb9bebecab6ff79a67c", + "maskedOsSha256": "1322c8c1d62672cb8aea6e2450ebae642bdcfd48a97b79407c06247b06eff95b", + "platformArena": true }, "result": "masked" }, { "moduleIds": [ + "miniverb", "tapeecho", "euclid", "repitch", "tapehead", "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", + "previewvol", + "sidechain-compressor", "vector", "playmodes", "mute-modes", - "recorder-loop-fix" + "recorder-loop-fix", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene" ], "keepStockFx2": true, "menu": { @@ -4108,7 +6022,7 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", "TAPEHEAD" @@ -4122,32 +6036,39 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", - "SPRING REV", + "MINIVERB", "TAPE ECHO", "EUCLID", "TAPEHEAD" ] }, "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 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", "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", + "previewvol", + "sidechain-compressor", "vector", "playmodes", "mute-modes", - "recorder-loop-fix" + "recorder-loop-fix", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene" ], "keepStockFx2": false, "menu": { @@ -4160,30 +6081,33 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", "TAPEHEAD" ], "fx2": [ + "MINIVERB", "TAPE ECHO", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "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 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": [ - "usb-audio-out-tracks-main-cue", - "previewvol", - "cc-map", - "sidechain-compressor", + "euclid", + "airwindows-chorus", + "lofi2", + "synth", "vector", - "playmodes" + "output-matrix", + "quantize-live-rec-toggle" ], "keepStockFx2": true, "menu": { @@ -4196,8 +6120,9 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", - "LO-FI" + "COMPRESSOR", + "LO-FI", + "EUCLID" ], "fx2": [ "FILTER", @@ -4208,28 +6133,28 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", - "DARK REV" + "EUCLID", + "AIR CHORUS", + "LOFI2" ] }, "native": { - "bytes": 1128783, - "osSha256": "d1308c868b77c13ce6d7b95aab7010ee2f6b9324be62d6ce730443b0e4901dcd", - "maskedOsSha256": "6c5c54cedc954f7cedd4dabf7264799b5d94406258bebb61f02c4743c4ed8f98" + "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": "masked" + "result": "refused" }, { "moduleIds": [ - "usb-audio-out-tracks-main-cue", - "previewvol", - "cc-map", - "sidechain-compressor", + "euclid", + "airwindows-chorus", + "lofi2", + "synth", "vector", - "playmodes" + "output-matrix", + "quantize-live-rec-toggle" ], "keepStockFx2": false, "menu": { @@ -4242,35 +6167,33 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", - "LO-FI" + "COMPRESSOR", + "LO-FI", + "EUCLID" ], "fx2": [ - "SIDECHAIN_COMPRESSOR" + "EUCLID", + "AIR CHORUS", + "LOFI2" ] }, "native": { - "bytes": 1128783, - "osSha256": "dc68b3445fdefde0c97fcf870f7be3d4853e70be119e48955d664c944476a42c", - "maskedOsSha256": "d2b01d16411e375df24bf8dba35f14c0277d8a9f021fdd5d9c8dafd4b8022581" + "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": "masked" + "result": "refused" }, { "moduleIds": [ "miniverb", - "tapeecho", - "euclid", "repitch", - "tapehead", - "usb-audio-out-tracks-main-cue", + "everb", + "quantizer", "synth", - "cc-map", "sidechain-compressor", "vector", - "playmodes", - "mute-modes", - "recorder-loop-fix" + "recorder-loop-fix", + "output-matrix", + "apply-scene" ], "keepStockFx2": true, "menu": { @@ -4284,9 +6207,7 @@ "SPATIALIZER", "COMB FILTER", "SIDECHAIN_COMPRESSOR", - "LO-FI", - "EUCLID", - "TAPEHEAD" + "LO-FI" ], "fx2": [ "FILTER", @@ -4300,33 +6221,27 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", "MINIVERB", - "TAPE ECHO", - "EUCLID", - "TAPEHEAD" + "EVERB" ] }, "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" }, { "moduleIds": [ "miniverb", - "tapeecho", - "euclid", "repitch", - "tapehead", - "usb-audio-out-tracks-main-cue", + "everb", + "quantizer", "synth", - "cc-map", "sidechain-compressor", "vector", - "playmodes", - "mute-modes", - "recorder-loop-fix" + "recorder-loop-fix", + "output-matrix", + "apply-scene" ], "keepStockFx2": false, "menu": { @@ -4340,31 +6255,39 @@ "SPATIALIZER", "COMB FILTER", "SIDECHAIN_COMPRESSOR", - "LO-FI", - "EUCLID", - "TAPEHEAD" + "LO-FI" ], "fx2": [ "MINIVERB", - "TAPE ECHO", - "EUCLID", - "TAPEHEAD", + "EVERB", "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" }, { "moduleIds": [ "miniverb", + "tapeecho", + "euclid", + "repitch", + "tapehead", + "bbd", + "lofi2", + "usb-audio-out-tracks-main-cue", "quantizer", "previewvol", + "cc-map", + "sidechain-compressor", "vector", "playmodes", - "recorder-loop-fix" + "mute-modes", + "recorder-loop-fix", + "output-matrix", + "quantize-live-rec-toggle" ], "keepStockFx2": true, "menu": { @@ -4377,8 +6300,10 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", - "LO-FI" + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID", + "TAPEHEAD" ], "fx2": [ "FILTER", @@ -4389,30 +6314,42 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", - "DARK REV", - "MINIVERB" + "MINIVERB", + "TAPE ECHO", + "EUCLID", + "TAPEHEAD", + "BBD", + "LOFI2" ] }, "native": { - "bytes": 1128231, - "osSha256": "d2bff104533227197adbf80dd2c4e96e85efa5756eb01103db0d5370f3ee3496", - "maskedOsSha256": "e621d471b4ce0a1c979c1b9ba9e295fc39484e7a9c2d9672eaf59335c260cee9", - "platformArena": true + "refused": "MUTE_MODES mm_softmute at 0x400d7c00 not free" }, - "result": "masked" + "result": "refused" }, { "moduleIds": [ "miniverb", + "tapeecho", + "euclid", + "repitch", + "tapehead", + "bbd", + "lofi2", + "usb-audio-out-tracks-main-cue", "quantizer", "previewvol", + "cc-map", + "sidechain-compressor", "vector", "playmodes", - "recorder-loop-fix" + "mute-modes", + "recorder-loop-fix", + "output-matrix", + "quantize-live-rec-toggle" ], "keepStockFx2": false, "menu": { @@ -4425,29 +6362,44 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", - "LO-FI" + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID", + "TAPEHEAD" ], "fx2": [ - "MINIVERB" + "MINIVERB", + "TAPE ECHO", + "EUCLID", + "TAPEHEAD", + "BBD", + "LOFI2", + "SIDECHAIN_COMPRESSOR" ] }, "native": { - "bytes": 1128231, - "osSha256": "ec3123b9f8105d3c203795b05859b85f7662b9ad09dcaf2ddacc18ca66ce9f7f", - "maskedOsSha256": "62a33ae12d26326d58ccd6a4630bea0a76649282320c4ef2ec0070b0f1f57068", - "platformArena": true + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7a80 not free" }, - "result": "masked" + "result": "refused" }, { "moduleIds": [ "miniverb", + "tapeecho", "euclid", - "previewvol", - "cc-map", + "repitch", + "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", "vector", - "recorder-loop-fix" + "recorder-loop-fix", + "quantize-live-rec-toggle", + "apply-scene" ], "keepStockFx2": true, "menu": { @@ -4462,7 +6414,8 @@ "COMB FILTER", "COMPRESSOR", "LO-FI", - "EUCLID" + "EUCLID", + "TAPEHEAD" ], "fx2": [ "FILTER", @@ -4476,28 +6429,39 @@ "COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", - "SPRING REV", "MINIVERB", - "EUCLID" + "TAPE ECHO", + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2" ] }, "native": { - "bytes": 1123175, - "osSha256": "eefb3b4629743dad355ba7312375bd12ffde2807b665503a10c4d0e9a3987234", - "maskedOsSha256": "259cc4650e6790086ef4fc3020f71f1677ce17dd4958158fb472f5164c180210", - "platformArena": true + "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": "masked" + "result": "refused" }, { "moduleIds": [ "miniverb", + "tapeecho", "euclid", - "previewvol", - "cc-map", + "repitch", + "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", "vector", - "recorder-loop-fix" + "recorder-loop-fix", + "quantize-live-rec-toggle", + "apply-scene" ], "keepStockFx2": false, "menu": { @@ -4512,27 +6476,43 @@ "COMB FILTER", "COMPRESSOR", "LO-FI", - "EUCLID" + "EUCLID", + "TAPEHEAD" ], "fx2": [ "MINIVERB", - "EUCLID" + "TAPE ECHO", + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2" ] }, "native": { - "bytes": 1123175, - "osSha256": "823fba6f60681dd71156c6dd8936c6efa689706bdbb91280acd9f0659e2c1ca7", - "maskedOsSha256": "410bae410ed9ecfd29dca346e7c70f82d375b34de0087ef48b1e62092d909d4c", - "platformArena": true + "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": "masked" + "result": "refused" }, { "moduleIds": [ + "miniverb", + "euclid", "tapehead", + "bbd", + "lofi2", + "quantizer", + "synth", "cc-map", + "sidechain-compressor", "vector", - "recorder-loop-fix" + "playmodes", + "mute-modes", + "recorder-loop-fix", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene" ], "keepStockFx2": true, "menu": { @@ -4545,8 +6525,9 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", + "EUCLID", "TAPEHEAD" ], "fx2": [ @@ -4558,28 +6539,39 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", - "DARK REV", - "TAPEHEAD" + "MINIVERB", + "EUCLID", + "TAPEHEAD", + "BBD", + "LOFI2" ] }, "native": { - "bytes": 1121076, - "osSha256": "55e2fd79f377bdfb1b8cb179475fdbee4b5d2fdc6b42029f204bb1b59e3cae35", - "maskedOsSha256": "8bcd50128337779fabf693aac3502021b6d74bb8c692ab969c9f6540b2231b8e", - "platformArena": true + "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": "masked" + "result": "refused" }, { "moduleIds": [ + "miniverb", + "euclid", "tapehead", + "bbd", + "lofi2", + "quantizer", + "synth", "cc-map", + "sidechain-compressor", "vector", - "recorder-loop-fix" + "playmodes", + "mute-modes", + "recorder-loop-fix", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene" ], "keepStockFx2": false, "menu": { @@ -4592,31 +6584,39 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", + "EUCLID", "TAPEHEAD" ], "fx2": [ - "TAPEHEAD" + "MINIVERB", + "EUCLID", + "TAPEHEAD", + "BBD", + "LOFI2", + "SIDECHAIN_COMPRESSOR" ] }, "native": { - "bytes": 1121076, - "osSha256": "0421c34d03636eea64a4593a0abe0e7800b64670709fa2bc0ebcd034f1deadaa", - "maskedOsSha256": "7c64618cc7726d2a3ecd836bc7a40faee6f92d52508e4faa4236f7c52ed28dd8", - "platformArena": true + "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": "masked" + "result": "refused" }, { "moduleIds": [ + "miniverb", "repitch", - "previewvol", - "sidechain-compressor", + "tapehead", + "lofi2", + "quantizer", + "synth", + "cc-map", "vector", "playmodes", "mute-modes", - "recorder-loop-fix" + "output-matrix", + "apply-scene" ], "keepStockFx2": true, "menu": { @@ -4629,8 +6629,9 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", - "LO-FI" + "COMPRESSOR", + "LO-FI", + "TAPEHEAD" ], "fx2": [ "FILTER", @@ -4641,27 +6642,33 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", - "DARK REV" + "MINIVERB", + "TAPEHEAD", + "LOFI2" ] }, "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": [ + "miniverb", "repitch", - "previewvol", - "sidechain-compressor", + "tapehead", + "lofi2", + "quantizer", + "synth", + "cc-map", "vector", "playmodes", "mute-modes", - "recorder-loop-fix" + "output-matrix", + "apply-scene" ], "keepStockFx2": false, "menu": { @@ -4674,29 +6681,43 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", - "LO-FI" + "COMPRESSOR", + "LO-FI", + "TAPEHEAD" ], "fx2": [ - "SIDECHAIN_COMPRESSOR" + "MINIVERB", + "TAPEHEAD", + "LOFI2" ] }, "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", + "tapeecho", "euclid", "repitch", "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "usb-audio-out-tracks-main-cue", "quantizer", - "synth", + "previewvol", + "sidechain-compressor", "vector", "playmodes", - "recorder-loop-fix" + "mute-modes", + "recorder-loop-fix", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene" ], "keepStockFx2": true, "menu": { @@ -4709,7 +6730,7 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", "TAPEHEAD" @@ -4723,31 +6744,46 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "DARK REV", "MINIVERB", + "TAPE ECHO", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2" ] }, "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": "REPITCH repitch at 0x400d7b80 not free" }, "result": "refused" }, { "moduleIds": [ "miniverb", + "tapeecho", "euclid", "repitch", "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "usb-audio-out-tracks-main-cue", "quantizer", - "synth", + "previewvol", + "sidechain-compressor", "vector", "playmodes", - "recorder-loop-fix" + "mute-modes", + "recorder-loop-fix", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene" ], "keepStockFx2": false, "menu": { @@ -4760,19 +6796,25 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", "TAPEHEAD" ], "fx2": [ "MINIVERB", + "TAPE ECHO", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "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": "REPITCH repitch at 0x400d7a00 not free" }, "result": "refused" } diff --git a/src/catalog/module-documents.json b/src/catalog/module-documents.json index 0db27f11b..907d25733 100644 --- a/src/catalog/module-documents.json +++ b/src/catalog/module-documents.json @@ -5771,7 +5771,7 @@ "id": "vector", "key": "VECTOR", "name": "VECTOR", - "version": "0.2.4-experimental", + "version": "0.3.0-experimental", "category": "machines", "source": { "repository": "https://github.com/repeat98/modwerk", @@ -5779,7 +5779,7 @@ "path": "sdk/octabam/modules/vector" }, "access": { - "location": "Audio track machine chooser: VECTOR, then the native-sized Static/Flex backing-pool modal. SRC main holds live phrase controls; SRC SETUP holds secondary controls. Double-tap TRACK reopens pool choice; push LEVEL toggles ordinary sample editing.", + "location": "MIDI tracks: MIDI NOTE SETUP's generator list, then the ARP page and FUNC+AMP. Audio tracks: machine chooser VECTOR, then the Static/Flex pool modal; SRC holds phrase controls, SRC SETUP the rest. Double-tap TRACK reopens pool choice; push LEVEL for sample editing.", "steps": [ "Select an audio track. Open SRC page 2 (double-tap SRC), choose VECTOR and press YES. In the backing-pool modal, highlight STATIC or FLEX with UP/DOWN or LEVEL, then press RIGHT to enter that pool. YES also opens the highlighted pool; YES on a loaded sample slot assigns that pool and sample to VECTOR. Use the corresponding stock sample-slot and file-loading tools to load a tuned sample; NO returns from the sample browser.", "Double-tap the assigned TRACK to reopen the pool modal. LEFT returns to the machine list; RIGHT on VECTOR opens the modal. RIGHT in the pool modal opens the highlighted Static/Flex sample list. In a sample-slot list, LEFT returns to pool choice and RIGHT opens the stock file browser. Horizontal arrows navigate menus without changing the assigned pool; YES on a sample slot commits the pool and sample.", @@ -5949,7 +5949,8 @@ "Shares machine chooser hooks with Analog BD and FM Synth; the configurator and native builder reject those combinations.", "Sample must be tuned to the stated C reference. Generated pitch is limited to the native ±12-semitone range.", "Parameter edits and YES publish during playback. Custom Undo and bar-quantized replacement are not implemented.", - "Uses native pattern/track length, speed and swing. RPT sets a motif length within that track; no independent clock, swing or MIDI output.", + "Uses native pattern/track length, speed and swing. RPT sets a motif length within that track; no independent clock or swing. On a MIDI track it writes trigs and NOTE/VEL/LEN locks that the stock MIDI sequencer sends; it emits no MIDI itself.", + "MIDI tracks (0.3.0): chosen in MIDI NOTE SETUP's list; its controls take the ARP page and FUNC+AMP, and the track's arpeggiator stays off. Over USB it needs a base with MIDI generators. Tested on the owner's MKII over USB only; a card build on hardware, power cycles, project save/reload, scenes and LFOs on a VECTOR MIDI track remain untested.", "SRC generation knobs are request parameters, not p-lock/LFO/scene destinations. The normal EDIT view retains native playback controls.", "Generation owns note trigs, PTCH/HOLD/VOL locks and note timing/conditions. Every changed generator parameter or YES replaces those across the current track; other locks, recorder events and swing are preserved.", "The DRAM loader reserves 1,707 audio pages (10,487,808 bytes) shared across DRAM modules.", @@ -6003,141 +6004,18 @@ }, "tests": { "report": "TESTING.md", - "summary": "Firmware-free generator/writer and all 256 VECTOR-instance masks pass ASan/UBSan; authored assembly reproduces. Exact-image ColdFire emulator tests reproduce the previous reset/stuck transport and pass two-instance Part/project save-reload, saved-card fresh load and battery-only restart. Twelve SRC controls, ordinary stock validation, both pool menus and advancing transport are checked. Physical reboot/audio remain untested under the exact-version owner exception.", + "summary": "0.3.0 adds VECTOR as a MIDI generator for the MIDI tracks and makes edits cheaper: a 64-step rewrite took 0.5 ms on the owner's MKII (3.9 ms before), with audio frames and MIDI timing steady. The list, both pages, generation, MIDI output over USB, removal and reinstall ran on the owner's MKII over USB with development bases; the card build was checked by octabam's native builder only. Current-build hardware, chip cycles and complete memory bounds are not measured, under the owner's approval for this exact source.", "hardwareStatus": "untested", "evidenceRevision": "16c04ae4d713376bd6bb119951899c33fa2e0ae9", "gates": [ "Firmware-free sanitizer generator, writer and packed-settings checks", + "Hoisted scale lookup identical to 0.2.4 over 18,144,000 parameter sets", "Authored C/hooks to assembly reproducibility without firmware", - "Current native SRC and sample-pool emulator behavior walks", - "ColdFire instruction/stack probe and conditional resource accounting", + "Base MIDI generator registry host test (sdk/tests test_midi_generators.c)", + "Owner's MKII over USB: list, pages, generation, MIDI output, removal, MODE guard, edit cost", "Browser/native build parity and matching composition rejection", - "Signed Part validator preservation for all 256 track masks", - "Two-instance native Part/project save-reload, saved-card fresh load and battery-RAM-only restart", - "Exact-version owner exception; physical reboot/audio unverified" - ], - "qualification": { - "documentation": { - "tutorial": { - "title": "Generate a phrase, then edit a note", - "steps": [ - "Select an audio track. Open SRC page 2 (double-tap SRC), choose VECTOR and press YES. In the backing-pool modal, highlight STATIC or FLEX with UP/DOWN or LEVEL, then press RIGHT to enter that pool. YES also opens the highlighted pool; YES on a loaded sample slot assigns that pool and sample to VECTOR. Use the corresponding stock sample-slot and file-loading tools to load a tuned sample; NO returns from the sample browser.", - "Double-tap the assigned TRACK to reopen the pool modal. LEFT returns to the machine list; RIGHT on VECTOR opens the modal. RIGHT in the pool modal opens the highlighted Static/Flex sample list. In a sample-slot list, LEFT returns to pool choice and RIGHT opens the stock file browser. Horizontal arrows navigate menus without changing the assigned pool; YES on a sample slot commits the pool and sample.", - "Press SRC for TYPE, DENS, ROOT, SCAL, GATE and ACNT on encoders A–F. Turn a parameter to commit a phrase immediately, including during playback. The current seed stays fixed while shaping the vector.", - "Open SRC page 2 with a double tap on SRC. Encoders A–F adjust SEED, SPAN, OFST, ROT, RPT and DIR. These changes also commit immediately; press SRC to return.", - "Press PLAY to hear the native sequencer repeat the phrase. Push LEVEL on SRC for the ordinary sample controls, then use grid recording and a held trig to edit PTCH. AMP exposes the generated HOLD/VOL locks. Push LEVEL again to return.", - "Press YES on the generator for a new seed and variation. STOP/PLAY preserves a populated phrase. Select normal FLEX/STATIC to remove VECTOR while retaining the generated pattern." - ] - }, - "screenshots": [ - "media/ot-location.png", - "media/ot-generator.png", - "media/ot-generated.png", - "media/ot-edit.png", - "media/ot-setup.png", - "media/ot-pool-choice.png", - "media/ot-static-pool.png", - "media/ot-flex-pool.png" - ], - "screenshotStyle": "black-and-white" - }, - "moduleVersion": "0.2.4-experimental", - "sourceSha256": "1255e99133cbd8d6d2587c95f93462ea80fccbd169462a2acb02aedbd346cbd3", - "imageSha256": "cabcc2967a23a0ef719a38de444aec1b68662c12bb9057093d475b89424d0026", - "cycles": [ - { - "processor": "coldfire", - "worstCase": 22400000, - "maxConfiguration": 185200000, - "maxInstances": 8, - "budget": 264000000, - "unit": "cycles/event", - "method": "static", - "conditions": { - "parameterExtremes": "Firmware-free sanitizer matrix covers all roots/scales/pitch windows and all secondary-control domains. Native instruction probe: 3,840 length/type/scale/seed cases and eight full native commit calls; static loop ceilings cover 64 steps and 2,016 rank shifts. Part-validation probe covers all 256 instance masks; maximum 64,241 executed instructions including the real stock validator, with 252 observed stack bytes. Added adapter has bounded 8-track/12-byte save and restore loops; no per-sample work.", - "parameterModulation": "Generator controls are request parameters, not LFO/p-lock/scene destinations. UI knob changes and YES synchronously publish stock trigs and locks; ordinary sample playback modulation remains native.", - "modeSwitching": "Current exact-image emulator: all twelve SRC edits, native sample editor, both backing-pool menus, advancing PLAY, native Part save/reload, panel-driven project save/reload, fresh saved-card project load and battery-RAM-only restart. Physical reboot/audio remain untested.", - "maxLoad": "Eight signed audio tracks may auto-fill on one PLAY edge. Conditional UI budget allows one such burst per second at 264 MHz; no audio-thread work is added. Stock rendering/scheduling uses the explicit reserve. Mixed-module audio stress is not measured.", - "inputConditions": "Original integer generator is input-independent. Density up to 64 notes/track; native lock rebuild scans every audio/MIDI lane. Audio sample/FX costs remain stock and are outside the added UI-work bound; hardware audio continuity is untested." - }, - "report": "evidence/software.json" - } - ], - "memory": { - "regions": [ - { - "name": "Shared DRAM arena, including module runtime, packed staging and mandatory core logger reserve", - "space": "sdram", - "words": 10586112, - "wordBits": 8, - "bytes": 10586112, - "scope": "shared" - }, - { - "name": "Complete tested-profile flash append: bootstrap and packed runtime", - "space": "cpu-flash", - "words": 18153, - "wordBits": 8, - "bytes": 18153, - "scope": "shared" - }, - { - "name": "Additional bounded UI stack capacity, including native callees", - "space": "cpu-ram", - "words": 1216, - "wordBits": 8, - "bytes": 1216, - "scope": "shared" - }, - { - "name": "Reused native list window, two surfaces, descriptor and callbacks", - "space": "sdram", - "words": 2132, - "wordBits": 8, - "bytes": 2132, - "scope": "shared" - }, - { - "name": "Reused stock lock-index masks", - "space": "sdram", - "words": 128, - "wordBits": 8, - "bytes": 128, - "scope": "shared" - }, - { - "name": "Sixteen pattern records in loaded bank and SRAM mirror", - "space": "cpu-ram", - "words": 74560, - "wordBits": 8, - "bytes": 74560, - "scope": "instance" - }, - { - "name": "Twelve settings bytes across four Parts, loaded bank and SRAM mirror", - "space": "cpu-ram", - "words": 96, - "wordBits": 8, - "bytes": 96, - "scope": "instance" - } - ], - "perInstanceBytes": 74656, - "sharedBytes": 10607741, - "maxInstances": 8, - "totalBytes": 11204989, - "conditions": "Tested reported profile: repitch, vector, playmodes, mute-modes and recorder-loop-fix with stock FX2, original 1.40C. Shared arena 10,586,112 bytes includes 10,487,808 module arena plus 98,304 logger reserve, counted once. Linked runtime 90,780 bytes and packed staging fit within it. VECTOR allocated sections: 13,000 text, 398 rodata and 3,368 data bytes; no BSS or new heap. Complete flash append is 18153 bytes. Maximum observed native commit stack 1,048; Part validation 252; fixed added UI stack bound 1,216. Borrowed stock window, lock indexes and 8-track bank/SRAM capacities are retained. Hardware canaries are unmeasured.", - "report": "evidence/software.json" - }, - "hardware": { - "kind": "owner-waived", - "status": "waived", - "approvedBy": "repeat98", - "approvedOn": "2026-10-09", - "reason": "Owner explicitly approved release and closure with hardware reboot/audio unverified on 9 October 2026: \"Approve release and closure with hardware reboot/audio unverified\". This exception binds VECTOR 0.2.4-experimental to its tested native source and image. Physical reboot, audible playback and hardware stress remain untested; software checks remain required.", - "report": "TESTING.md" - } - } + "Owner-approved update for this exact source; current-build hardware, chip cycles and memory bounds unmeasured" + ] }, "license": { "spdx": "MIT", From 3b56452d20c640ab6b8bb323cc5aba5602e95c34 Mon Sep 17 00:00:00 2001 From: repeat98 Date: Sat, 24 Oct 2026 10:03:26 +0200 Subject: [PATCH 06/33] VECTOR 0.3.0: layout A on MIDI tracks (SRC and AMP pages, OCT/VEL/GATE as the track's NOTE/VEL/LEN, PROB, HUMN) The owner's choice of 24 October 2026: VECTOR draws on SRC (TYPE DENS ROOT SCAL OCT SEED) and AMP (VEL ACNT GATE SPAN OFST RPT; FUNC+AMP ROT DIR PROB HUMN); LFO, FX1 and FX2 stay stock's. OCT, VEL and GATE read and write the track's own NOTE, VEL and LEN. PROB writes a trig condition on notes off the beat, HUMN micro-timing, from the seed and the step. Choosing VECTOR turns NOT2-4 off and puts NOTE on its octave's C. Checked on the owner's MKII over USB (TESTING.md): pages, knobs, PROB 1% and HUMN against recorded MIDI, grid-recording locks, OFF and removal, cost. Co-Authored-By: Claude Opus 5.5 --- .../module-adapters/machine-ports.json | 2 +- .../module-adapters/machine-recipes.json | 66 +- .../module-adapters/vector_runtime.py | 2 +- sdk/octabam/modules/vector/README.md | 19 +- sdk/octabam/modules/vector/TESTING.md | 20 +- sdk/octabam/modules/vector/control.s | 7015 ++++++++--------- sdk/octabam/modules/vector/midi.c | 207 +- src/community/module-changelogs/vector.json | 6 +- 8 files changed, 3643 insertions(+), 3694 deletions(-) diff --git a/sdk/machines/octatrack/module-adapters/machine-ports.json b/sdk/machines/octatrack/module-adapters/machine-ports.json index 6a5a49622..48fa3b996 100644 --- a/sdk/machines/octatrack/module-adapters/machine-ports.json +++ b/sdk/machines/octatrack/module-adapters/machine-ports.json @@ -140,7 +140,7 @@ }, "vector": { "sources": { - "sdk/octabam/modules/vector/control.s": "33c9bef41f38759054cd061e501de67bfb84bf13b4d0d76590f8dc2a1d09faa2", + "sdk/octabam/modules/vector/control.s": "caa138dc1113f80b9d00477f022debebc9d331d87e63c4b06c9257b5e4897aea", "sdk/octabam/modules/vector/manifest.py": "b9dec167f8bd4f1b691069cc89834f6c2a6717b874eb28629ef5c8c026d3d976" }, "contribute": [ diff --git a/sdk/machines/octatrack/module-adapters/machine-recipes.json b/sdk/machines/octatrack/module-adapters/machine-recipes.json index 41116f3b2..731bc6011 100644 --- a/sdk/machines/octatrack/module-adapters/machine-recipes.json +++ b/sdk/machines/octatrack/module-adapters/machine-recipes.json @@ -399,67 +399,95 @@ }, "vector": { "schema": 1, - "imageSha256": "12db7a860bad918abd20b40cd465d8d4742fcf58aa3763cdcbf0fab392fd33e9", + "imageSha256": "f1df18b18f53689deda5118f0b17eb42aa65b7df63b146867f98039b24441e40", "sources": { - "sdk/machines/octatrack/module-adapters/machine-ports.json": "d86987d0496f5c4c0d094cc9ac6f89872ee7f48a6541feba1285f680f06d2dd9", + "sdk/machines/octatrack/module-adapters/machine-ports.json": "345045e89849e493cba0cdd41febc555bd13e66c608b8e37757d822672cb8c93", "sdk/machines/octatrack/module-adapters/machine_ports.py": "94261835964867f1dcfaf44173da2562794d319c3ab223742711f7cd34e30cff", - "sdk/machines/octatrack/module-adapters/vector_runtime.py": "9f0a0ffe8c0e3bacef6e6aad057f8f454b43b5daef32e9adb8fa2def0937ea39", - "sdk/octabam/modules/vector/control.s": "c4f829e437ffbde1275c00827031b694a86011013d37269077e4696818323471", - "sdk/octabam/modules/vector/manifest.py": "4d921f24256038797a99671534885b0bb9a27eaa79261b11136cf0a95a75af21", + "sdk/machines/octatrack/module-adapters/vector_runtime.py": "fbb60d21ef48dfd8b379ff8a21f80a5cd00688bc22bd70dc9e40e0e00aa27e28", + "sdk/octabam/modules/vector/control.s": "caa138dc1113f80b9d00477f022debebc9d331d87e63c4b06c9257b5e4897aea", + "sdk/octabam/modules/vector/manifest.py": "b9dec167f8bd4f1b691069cc89834f6c2a6717b874eb28629ef5c8c026d3d976", "sdk/runtime/loader/build.py": "1bc1a0e66f9b93871f429c53c8adebb39d21b5da7b7b101bf0f1f7c558313407" }, "copies": [ { - "offset": 3410, + "offset": 34, + "length": 20, + "address": 1073802002, + "sha256": "4c14741dff5ce18a933b30875f7e3a0ac8d633db0096af8f7a7a31a88e1313b0", + "purpose": "vector: authored bytes coinciding with stock (strict scan), reconstructed from the identical bytes of the user's OS; review" + }, + { + "offset": 2230, + "length": 13, + "address": 1073808978, + "sha256": "b8d6267fd976a1257142c8ba1ef20d072cc8a79fa80af4e402ec2cf85ce747b6", + "purpose": "vector: authored bytes coinciding with stock (strict scan), reconstructed from the identical bytes of the user's OS; review" + }, + { + "offset": 5156, "length": 14, "address": 1074149512, "sha256": "079db88a4b98775059e3e9b221b27a5436dfe7bfaaa30ec1d8a805faea0e9fd6", "purpose": "vector: authored bytes coinciding with stock (strict scan), reconstructed from the identical bytes of the user's OS; review" }, { - "offset": 5602, + "offset": 8256, + "length": 15, + "address": 1073934426, + "sha256": "532ccfdbeda1f24a92dff3bff914f0c178f143a4ba52c4c6f82a50696eabf852", + "purpose": "vector: authored bytes coinciding with stock (strict scan), reconstructed from the identical bytes of the user's OS; review" + }, + { + "offset": 8724, + "length": 15, + "address": 1073934426, + "sha256": "532ccfdbeda1f24a92dff3bff914f0c178f143a4ba52c4c6f82a50696eabf852", + "purpose": "vector: authored bytes coinciding with stock (strict scan), reconstructed from the identical bytes of the user's OS; review" + }, + { + "offset": 10220, "length": 14, "address": 1074073374, "sha256": "5f460b9d4661db855641f1e3d7cb71cf2c6b0a6e8ad754886d283c9f1a3c5299", "purpose": "vector: authored bytes coinciding with stock (strict scan), reconstructed from the identical bytes of the user's OS; review" }, { - "offset": 7166, + "offset": 11868, "length": 12, "address": 1073882466, "sha256": "f6838b012beac6d6395527d401c6eabefbded04cd643d14afbf356781cb4aeb6", "purpose": "vector: authored bytes coinciding with stock (strict scan), reconstructed from the identical bytes of the user's OS; review" }, { - "offset": 10032, + "offset": 14734, "length": 14, "address": 1074237950, "sha256": "0939a4ca02b038ba72eec962b17c37d00c17ed240b08a4400cc3d071c8ebbe31", "purpose": "vector: authored bytes coinciding with stock (strict scan), reconstructed from the identical bytes of the user's OS; review" }, { - "offset": 11272, - "length": 14, - "address": 1074235542, - "sha256": "4be6e9d8ab86bfb63e91b242f2d2824f061a003fabd5eeea29fc4f33af158a54", + "offset": 16316, + "length": 15, + "address": 1074154280, + "sha256": "d67cfd82dafd98aad4cd46cc096c0b173290a1c84756fd7d881da9c25492bb2c", "purpose": "vector: authored bytes coinciding with stock (strict scan), reconstructed from the identical bytes of the user's OS; review" }, { - "offset": 11494, - "length": 20, - "address": 1073802002, - "sha256": "4c14741dff5ce18a933b30875f7e3a0ac8d633db0096af8f7a7a31a88e1313b0", + "offset": 16366, + "length": 16, + "address": 1074178428, + "sha256": "44d6e7638702c28959b44309e5f7c04a2d9dbd313666960cc1fa9036d028678c", "purpose": "vector: authored bytes coinciding with stock (strict scan), reconstructed from the identical bytes of the user's OS; review" }, { - "offset": 12210, + "offset": 21394, "length": 20, "address": 1074428104, "sha256": "96966986164a24f9ca5be84cca807a016a828da2bcc3167b831be52acad2a9a7", "purpose": "vector: authored bytes coinciding with stock (strict scan), reconstructed from the identical bytes of the user's OS; review" }, { - "offset": 12584, + "offset": 21768, "length": 12, "address": 1074100132, "sha256": "fa4871f504c0f71c15f06b76536f127ec74d257852ce50a1b9f16b3d14e8688c", diff --git a/sdk/machines/octatrack/module-adapters/vector_runtime.py b/sdk/machines/octatrack/module-adapters/vector_runtime.py index b8dfe57d0..c110af56a 100644 --- a/sdk/machines/octatrack/module-adapters/vector_runtime.py +++ b/sdk/machines/octatrack/module-adapters/vector_runtime.py @@ -4,7 +4,7 @@ import hashlib from pathlib import Path -CONTROL_SHA256 = '33c9bef41f38759054cd061e501de67bfb84bf13b4d0d76590f8dc2a1d09faa2' +CONTROL_SHA256 = 'caa138dc1113f80b9d00477f022debebc9d331d87e63c4b06c9257b5e4897aea' ARITHMETIC = ( ('\tsub.l #staging-268525901,%a1', '\tadd.l #268525901,%a1\n\tsub.l #staging,%a1'), ('\tlea saved-1187503478,%a1', '\tlea saved,%a1\n\tsub.l #1187503478,%a1'), diff --git a/sdk/octabam/modules/vector/README.md b/sdk/octabam/modules/vector/README.md index 2fa9ef0c7..e693f9535 100644 --- a/sdk/octabam/modules/vector/README.md +++ b/sdk/octabam/modules/vector/README.md @@ -63,21 +63,26 @@ VECTOR is the first entry of the MIDI generator list, which the Modwerk base (ov | Page | Encoder | Control | Default | On a MIDI track | |---|---|---|---|---| -| ARP | A-F | TYPE, DENS, ROOT, SCAL, GATE, ACNT | 11, 11, C, MIN, 8, 48 | As on audio tracks, except: ROOT and SCAL build the scale on the C at or below the track's NOTE; GATE is in stock LEN units and prints as a note length (generated LEN locks range from half to all of it); ACNT lowers VEL locks from the track's VEL, which is real MIDI velocity. | -| FUNC+AMP | A-F | SEED, SPAN, OFST, ROT, RPT, DIR | track + 1, 12, 0, 0, OFF, FWD | As on audio tracks. | +| SRC | A-F | TYPE, DENS, ROOT, SCAL, OCT, SEED | 11, 11, C, MIN, the track's octave, track + 1 | TYPE, DENS, ROOT, SCAL and SEED as on audio tracks. OCT is the track's NOTE: the root in that octave, shown as a note (C3); OCT and ROOT both set NOTE, so a trig placed by hand plays the root. The scale is built on the C of that octave. | +| AMP | A-F | VEL, ACNT, GATE, SPAN, OFST, RPT | the track's VEL and LEN, 48, 12, 0, OFF | VEL is the track's VEL, real MIDI velocity: strong notes get it, ACNT lowers the others. GATE is the track's LEN, in stock LEN units and shown as a note length; generated LEN locks range from half to all of it. SPAN, OFST and RPT as on audio tracks. | +| FUNC+AMP | A-D | ROT, DIR, PROB, HUMN | 0, FWD, OFF, 0 | ROT and DIR as on audio tracks. PROB gives every note off the beat (steps 2-4, 6-8, ...) a stock trig condition from 99% down to 1%; notes on the beat always play. HUMN moves every note by up to that many micro-timing units (stock's ±23) either way. Both come from the seed and the step, so turning another control keeps them. | 1. Press MIDI and select a MIDI track. Double-tap its TRACK key (or double-tap SRC): MIDI NOTE SETUP opens with OFF and VECTOR on its left. Highlight VECTOR with DOWN and press YES. An empty track gets its first phrase at once. -2. Press AMP. The ARP page now shows TYPE, DENS, ROOT, SCAL, GATE and ACNT with their values. Turn any of them to write a new phrase, also while playing. YES makes a fresh variation. -3. Press FUNC+AMP for SEED, SPAN, OFST, ROT, RPT and DIR; FUNC+AMP or NO returns. Set the track's channel in MIDI NOTE SETUP (CHAN) to hear it. +2. Press SRC. The NOTE page now shows TYPE, DENS, ROOT, SCAL, OCT and SEED. Turn any of them to write a new phrase, also while playing. YES makes a fresh variation on any VECTOR page. +3. Press AMP for VEL, ACNT, GATE, SPAN, OFST and RPT, and FUNC+AMP for ROT, DIR, PROB and HUMN; FUNC+AMP or NO returns. Set the track's channel in MIDI NOTE SETUP (CHAN) to hear it. 4. To leave, open MIDI NOTE SETUP and choose OFF. The phrase stays on the track as ordinary trigs and locks. -Changes to stock flows, while a MIDI track runs VECTOR (the README's minor changes, owner-requested on 21 October 2026): +LFO, FX1 and FX2 stay stock's: the track's LFOs, PB, AT and CC1-10 work as on any MIDI track. FX1 and FX2 are kept for MIDI effects (planned, not built). + +Changes to stock flows, while a MIDI track runs VECTOR (the README's minor changes, owner-requested on 21 and 24 October 2026): - **Double-tap TRACK in MIDI mode** opens MIDI NOTE SETUP. Stock does nothing there; with no MIDI generator installed it still does nothing. - **MIDI NOTE SETUP's empty left half** lists the generators. UP, DOWN and YES move and choose; YES also confirms the window's own values as before. CHAN, BANK, PROG and SBNK are unchanged. -- **The ARP page and FUNC+AMP** show VECTOR's controls instead of the arpeggiator's. Choosing VECTOR puts the track's arpeggiator back to stock's defaults with MODE OFF and keeps it off; its 16 arp note bytes then hold VECTOR's controls. Holding a trig or a scene shows the stock ARP page, so locks there stay stock's. Choosing OFF restores stock's arpeggiator defaults. +- **The SRC page** shows VECTOR's controls instead of NOTE, VEL, LEN and NOT2-4. Choosing VECTOR sets NOTE to the C of its octave and turns NOT2-4 off (64), which have no place on VECTOR's page; VEL and LEN stay and are VECTOR's VEL and GATE. +- **The AMP page and FUNC+AMP** show VECTOR's controls instead of the arpeggiator's. Choosing VECTOR puts the track's arpeggiator back to stock's defaults with MODE OFF and keeps it off; its 16 arp note bytes then hold VECTOR's controls. +- Holding a trig or a scene shows stock's NOTE and ARP pages, so locks there stay stock's: hold a trig on SRC to change one generated note's NOTE, VEL or LEN. Choosing OFF restores stock's arpeggiator defaults and leaves NOTE, VEL and LEN as VECTOR set them. -Where it is stored: the Part. The track's arp step mask holds 'M' and VECTOR's id (stock's validator never reads it), and its arp note bytes hold the twelve controls (value - 64, within the -64..63 stock's validator keeps). Without VECTOR the track reads as an ordinary MIDI track whose arpeggiator is off. If its ARP SETUP is edited then, the stored controls show there as arp notes, and turning MODE on would play them; installing VECTOR again turns MODE off. NOTE SETUP's two unused slots are not used: its encoders D and F edit them unseen. +Where it is stored: the Part. The track's arp step mask holds 'M' and VECTOR's id (stock's validator never reads it), and its arp note bytes hold the controls other than OCT, VEL and GATE (value - 64, within the -64..63 stock's validator keeps). Without VECTOR the track reads as an ordinary MIDI track whose arpeggiator is off. If its ARP SETUP is edited then, the stored controls show there as arp notes, and turning MODE on would play them; installing VECTOR again turns MODE off. NOTE SETUP's two unused slots are not used: its encoders D and F edit them unseen. Cost, measured on the owner's MKII (21 October 2026, development base, PLAY running): the base's generator code takes 4-10 µs a UI tick, with no generator installed 2 µs. A control turn that rewrites all 64 steps takes 0.5 ms on the UI task (0.66 ms at most of 40); the longest time between audio frames stayed 406-417 µs while turning, and the MIDI notes kept their 125 ms grid within 1 ms. Nothing runs in an interrupt. [TESTING.md](TESTING.md#midi-generator-on-the-unit) has the method. diff --git a/sdk/octabam/modules/vector/TESTING.md b/sdk/octabam/modules/vector/TESTING.md index 002c0967e..6f4d105cf 100644 --- a/sdk/octabam/modules/vector/TESTING.md +++ b/sdk/octabam/modules/vector/TESTING.md @@ -48,6 +48,24 @@ The current 110-profile VECTOR coverage matrix has 46 matching module-owned buil | MODE turned on while VECTOR was away, then VECTOR installed | MODE back to OFF (and a MODE 6 left from before: OFF on install) | | Crash record during all of the above | unchanged (record 12, older than this work) | +Layout A (the owner's choice of 24 October 2026: VECTOR on SRC and AMP, LFO, FX1 and FX2 stock's), on the owner's MKII, 24 October 2026: a development twin of the base built from this branch merged with `main` (base `4fd515ff…`), RAM-booted, VECTOR installed with `try`, the same disposable project (bank A, Part 1, pattern 16, MIDI track 1, CHAN 1, 132 BPM). MIDI recorded over USB with `midimon`. + +| What | Result | +|---|---| +| No generator installed, double-tap T1 in MIDI mode | nothing happens, as stock | +| VECTOR installed on a track still holding 21 October's layout | SRC shows TYPE 11, DENS 11, ROOT C, SCAL MIN, OCT C3, SEED 2; OFF then VECTOR again puts the new defaults in the arp note bytes (mark `V`, PROB and HUMN 0, byte 4 unused), NOTE 48, VEL 100, LEN 6, NOT2-4 64 | +| SRC, AMP, FUNC+AMP, LFO, FX1 | SRC: TYPE DENS ROOT SCAL OCT SEED; AMP: VEL ACNT GATE SPAN OFST RPT; FUNC+AMP: ROT DIR PROB HUMN and two empty slots; LFO and FX1 stock's, and LFO's SPD1 turns stock's value (32, 33, 32) | +| OCT +1, ROOT +2 | NOTE 48 to 62 (D4); the phrase's NOTE locks move into D (step 1: 36 to 50) | +| PROB +5 | stock's label 91%; every note off the beat gets condition 25, the notes on the beat none | +| PROB 21 (1%), PLAY 12 s | 27 note-ons, all on steps 1, 5, 9 and 13 at VEL 100; none of the 46 notes off the beat played | +| HUMN 23, PLAY 8 s | the 11 notes of each bar move by their written offsets: all 50 note-ons within 1.0 ms (mean 0.3 ms) of grid + offset x 1/24 step; a negative offset on the first step does not sound before PLAY, as stock | +| YES; VEL -20; GATE +4 | SEED 1 to 2 and a new phrase; the track's VEL 100 to 80 and LEN 6 to 10; strong notes VEL 80, others 64, LEN locks 5 to 10 | +| Grid recording, hold TRIG 1 on SRC | stock's NOTE page with the step's locks (D4, 80, 7); turning NOTE locks D#4; letting go shows VECTOR's page again | +| OFF; VECTOR again; module removed | stock's NOTE (D4, 80, 10) and ARP (MODE OFF) pages, arp step mask `ffff`; VECTOR again: its defaults, NOTE to C4; removed: stock's pages, nothing installed | +| Crash record | unchanged (record 12) | + +Cost with the 21 October method (pattern length 64, DENS 16, every step a note, PLAY, 40 turns of TYPE): 0.52 ms a turn on average, 0.69 ms the longest (0.51 and 0.66 ms on 21 October; the trig words for PROB and HUMN are new). The base's generator code took 10.5-11.9 µs a UI tick on VECTOR's page while playing. The MIDI notes kept their grid while turning: 59 note-ons 113.0-114.0 ms apart (113.6 ms at 132 BPM). The longest time between audio frames was 423-425 µs while turning and 422-424 µs playing without a turn, so this base's normal is a little higher than 21 October's (406-417 µs) and the turns add nothing measurable. + Cost, with the base's development profile (`modwerk_cost[24]`-`[27]`, DTIM3 at 132 MHz, read over `mem` 5 s apart; `cost.py` in the session's private tools): | State | Base's MIDI generator code per UI tick (61 a second) | @@ -69,7 +87,7 @@ A temporary probe (not shipped) split the 1.3 ms build by stage: copying the rec The hoisted scale lookup in `engine.c` gives the same phrases as 0.2.4 over 18,144,000 parameter sets (a throwaway host comparison of both engines), and `test_engine.c` passes. `sdk/tests/test_machine_events.py` checks the base's registry on the host (`test_midi_generators.c`), the package glue and the port's sources. -Not tested: a card build on the unit; a physical power cycle with a VECTOR MIDI track (RAM boots kept it: the battery-backed bank restore and the Part validator pass); a project save and reload; scenes and LFOs on a VECTOR MIDI track; MKI. Two RAM boots of development twins out of about fifteen did not come back on USB (one stall record: frames stopped 41 s after a boot with no module installed); a power cycle recovered both, and the next boot of the same image worked. It matches the RAM-boot trap of 19 October 2026 and was not reproduced. +Not tested: a card build on the unit (layout A included); a physical power cycle with a VECTOR MIDI track (RAM boots kept it: the battery-backed bank restore and the Part validator pass); a project save and reload; scenes and LFOs on a VECTOR MIDI track; MKI. Two RAM boots of development twins out of about fifteen did not come back on USB (one stall record: frames stopped 41 s after a boot with no module installed); a power cycle recovered both, and the next boot of the same image worked. It matches the RAM-boot trap of 19 October 2026 and was not reproduced. ## Owner exception and remaining limits diff --git a/sdk/octabam/modules/vector/control.s b/sdk/octabam/modules/vector/control.s index 5223f97ea..267a642d0 100644 --- a/sdk/octabam/modules/vector/control.s +++ b/sdk/octabam/modules/vector/control.s @@ -595,369 +595,47 @@ vector_generate.part.0: jra .L96 .size vector_generate.part.0, .-vector_generate.part.0 .align 2 - .type midi_control, @function -midi_control: - subq.l #4,%sp - move.l %a2,-(%sp) - move.l %d2,-(%sp) - move.l 1187521622,%a0 - mov3q.l #3,%d2 - move.b 269161679,%d0 - add.l #585088,%a0 - mvz.w 18(%sp),%d1 - move.l 20(%sp),%a1 - lsl.l #4,%d1 - and.l %d2,%d0 - mvz.w #6322,%d2 - move.l %d1,%a2 - lea (6206,%a2),%a2 - muls.l %d2,%d0 - moveq #22,%d2 - add.l %d0,%a0 - mvz.b (%a0,%a2.l),%d0 - cmp.l %d0,%d2 - jeq .L107 - mov3q.l #6,%d0 - cmp.l %a1,%d0 - jeq .L113 - lea (first.2),%a0 - mvz.b (%a0,%a1.l),%d0 -.L106: - move.l (%sp)+,%d2 - move.l (%sp)+,%a2 - addq.l #4,%sp - rts -.L113: - move.l 16(%sp),%d0 - addq.l #1,%d0 - move.l (%sp)+,%d2 - move.l (%sp)+,%a2 - addq.l #4,%sp - rts -.L107: - move.l 1187521622,%a0 - move.l %a1,%d0 - move.b 269161679,%d2 - add.l #6194,%d0 - move.l %d0,%a2 - add.l %d1,%a2 - add.l #585088,%a0 - move.l #vector_control_max,%d0 - mvz.b (%a1,%d0.l),%d0 - move.b %d2,%d1 - mov3q.l #3,%d2 - and.l %d2,%d1 - mvz.w #6322,%d2 - muls.l %d2,%d1 - add.l %d1,%a0 - move.b (%a0,%a2.l),%d1 - add.l #64,%d1 - mvz.b %d1,%d1 - cmp.l %d0,%d1 - jcc .L106 - move.l (%sp)+,%d2 - move.l %d1,%d0 - move.l (%sp)+,%a2 - addq.l #4,%sp - rts - .size midi_control, .-midi_control - .align 2 - .type midi_format_10, @function -midi_format_10: - lea (-24,%sp),%sp - movem.l #1052,(%sp) - move.b 269161676,%d0 - pea 10.w - mvz.b %d0,%d0 - move.l %d0,-(%sp) - jsr midi_control - addq.l #8,%sp - tst.l %d0 - jeq .L123 - moveq #99,%d1 - cmp.l %d0,%d1 - jcs .L124 - moveq #9,%d1 - cmp.l %d0,%d1 - jcs .L125 - moveq #10,%d3 - mov3q.l #1,%a1 - remu.l %d3,%d1:%d0 - clr.b %d4 - move.l 28(%sp),%a0 - add.l #48,%d1 - move.b %d1,(%a0) - move.l 28(%sp),%a0 - move.b %d4,(%a0,%a1.l) -.L114: - movem.l (%sp),#1052 - lea (24,%sp),%sp - rts -.L124: - moveq #100,%d2 - mov3q.l #2,%a0 - move.l %d0,%d1 - mov3q.l #3,%a1 - divu.l %d2,%d1 - move.l 28(%sp),%a2 - moveq #10,%d2 - mov3q.l #1,16(%sp) - add.l 28(%sp),%a0 - add.l #48,%d1 - move.b %d1,(%a2) - move.l %d0,%d1 - divu.l %d2,%d1 - move.l 28(%sp),%a2 - move.l %d1,%d4 - remu.l %d2,%d3:%d4 - move.l 16(%sp),%d2 - move.l %d3,%d1 - add.l #48,%d1 - move.b %d1,(%a2,%d2.l) -.L126: - moveq #10,%d3 - remu.l %d3,%d1:%d0 - clr.b %d4 - add.l #48,%d1 - move.b %d1,(%a0) - move.l 28(%sp),%a0 - move.b %d4,(%a0,%a1.l) - jra .L114 -.L123: - move.l 28(%sp),%a0 - move.l #1330005504,(%a0) - movem.l (%sp),#1052 - lea (24,%sp),%sp - rts -.L125: - moveq #10,%d2 - mov3q.l #1,%a0 - move.l %d0,%d1 - mov3q.l #2,%a1 - divu.l %d2,%d1 - clr.l 16(%sp) - move.l 28(%sp),%a2 - add.l 28(%sp),%a0 - move.l %d1,%d4 - remu.l %d2,%d3:%d4 - move.l 16(%sp),%d2 - move.l %d3,%d1 - add.l #48,%d1 - move.b %d1,(%a2,%d2.l) - jra .L126 - .size midi_format_10, .-midi_format_10 - .align 2 - .type midi_save, @function -midi_save: - lea (-36,%sp),%sp - clr.l %d1 - movem.l #7420,(%sp) - move.l 40(%sp),%d6 - moveq #127,%d5 - and.l 48(%sp),%d5 - move.l 44(%sp),%a4 - lsl.l #4,%d6 - move.l %d6,%d4 - add.l #6194,%d4 -.L131: - mov3q.l #6,%d0 - cmp.l %d1,%d0 - jeq .L136 - mov3q.l #5,%d7 - move.l %d1,%d0 - cmp.l %d1,%d7 - jcc .L130 - subq.l #1,%d0 -.L130: - move.b (%a4,%d0.l),%d3 - move.l #269161679,%a2 - mov3q.l #3,%d7 - move.b (%a2),%d0 - move.l 1187521622,%a1 - add.l #585088,%a1 - move.b (%a2),%d2 - move.l %d4,%a3 - add.l %d1,%a3 - addq.l #1,%d1 - add.l #-64,%d3 - and.l %d7,%d0 - and.l %d7,%d2 - mvz.w #6322,%d7 - muls.l %d7,%d0 - muls.l %d7,%d2 - move.l %d0,%a0 - add.l #269110990,%a0 - moveq #12,%d0 - add.l %d2,%a1 - move.b %d3,(%a1,%a3.l) - move.b %d3,(%a0,%a3.l) - cmp.l %d1,%d0 - jne .L131 -.L137: - move.b (%a2),%d0 - move.l 1187521622,%d1 - move.l %d6,%a1 - move.b (%a2),%d2 - move.l %d1,%a2 - mov3q.l #3,%d1 - add.l #585088,%a2 - lea (6206,%a1),%a1 - and.l %d1,%d0 - and.l %d1,%d2 - muls.l %d7,%d0 - muls.l %d7,%d2 - moveq #22,%d7 - move.l %d0,%a0 - add.l #269110990,%a0 - add.l %d2,%a2 - move.b %d7,(%a2,%a1.l) - move.b %d7,(%a0,%a1.l) - movem.l (%sp),#7420 - lea (36,%sp),%sp - rts -.L136: - move.l #269161679,%a2 - mov3q.l #3,%d7 - move.b (%a2),%d0 - move.l 1187521622,%a1 - add.l #585088,%a1 - move.b (%a2),%d2 - move.b %d5,%d3 - move.l %d4,%a3 - add.l %d1,%a3 - addq.l #1,%d1 - and.l %d7,%d0 - and.l %d7,%d2 - mvz.w #6322,%d7 - add.l #-64,%d3 - muls.l %d7,%d0 - muls.l %d7,%d2 - move.l %d0,%a0 - add.l #269110990,%a0 - moveq #12,%d0 - add.l %d2,%a1 - move.b %d3,(%a1,%a3.l) - move.b %d3,(%a0,%a3.l) - cmp.l %d1,%d0 - jne .L131 - jra .L137 - .size midi_save, .-midi_save - .align 2 - .type midi_params, @function -midi_params: - lea (-24,%sp),%sp - clr.l %d0 - movem.l #7196,(%sp) - mvz.w 30(%sp),%d2 - move.l 32(%sp),%a2 - lea vector_control_max,%a4 - lea (first.2),%a3 - lsl.l #4,%d2 - move.l %d2,%a1 - add.l #6194,%d2 - lea (6206,%a1),%a1 -.L146: - mov3q.l #6,%d1 - cmp.l %d0,%d1 - jne .L139 - mov3q.l #7,%d0 -.L139: - move.l 1187521622,%a0 - mov3q.l #3,%d3 - move.b 269161679,%d1 - mvz.w #6322,%d4 - add.l #585088,%a0 - and.l %d3,%d1 - moveq #22,%d3 - muls.l %d4,%d1 - add.l %d1,%a0 - mvz.b (%a0,%a1.l),%d1 - cmp.l %d1,%d3 - jeq .L140 - move.b (%a3,%d0.l),%d1 -.L141: - mov3q.l #5,%d3 - cmp.l %d0,%d3 - jcc .L149 - move.b %d1,-1(%a2,%d0.l) - addq.l #1,%d0 - moveq #12,%d4 - cmp.l %d0,%d4 - jne .L146 - mov3q.l #6,-(%sp) - move.l 32(%sp),-(%sp) - jsr midi_control - movem.l 8(%sp),#7196 - move.l 44(%sp),%a0 - move.l %d0,(%a0) - lea (32,%sp),%sp - rts -.L149: - move.b %d1,(%a2,%d0.l) - addq.l #1,%d0 - jra .L146 -.L140: - move.l 1187521622,%a0 - mov3q.l #3,%d4 - move.b 269161679,%d3 - add.l #585088,%a0 - mvz.b (%a4,%d0.l),%d1 - and.l %d4,%d3 - mvz.w #6322,%d4 - muls.l %d4,%d3 - add.l %d3,%a0 - move.l %d2,%d3 - add.l %d0,%d3 - move.b (%a0,%d3.l),%d3 - add.l #64,%d3 - mvz.b %d3,%d3 - cmp.l %d1,%d3 - jcc .L141 - move.l %d3,%d1 - jra .L141 - .size midi_params, .-midi_params - .align 2 .type generator_page, @function generator_page: lea (-32,%sp),%sp movem.l #15420,(%sp) tst.l src_page_ready - jeq .L151 + jeq .L107 move.l 36(%sp),%d0 cmp.l src_page_source.l,%d0 - jeq .L152 -.L151: + jeq .L108 +.L107: lea src_page,%a0 move.l 36(%sp),%a1 sub.l %a0,%a1 -.L153: +.L109: move.b (%a1,%a0.l),%d0 move.b %d0,(%a0)+ cmp.l #src_page+402,%a0 - jne .L153 + jne .L109 lea vector_control_names,%a5 clr.l %d2 lea src_page+202,%a1 - lea (formats.6),%a4 + lea (formats.7),%a4 lea src_page+22,%a2 move.l #src_page+28,%d1 -.L160: +.L116: move.l (%a5)+,%a3 sub.l %a0,%a0 -.L154: +.L110: move.b (%a3,%a0.l),%d0 - jeq .L155 + jeq .L111 move.b %d0,(%a2,%a0.l) addq.l #1,%a0 mov3q.l #5,%d3 cmp.l %a0,%d3 - jne .L154 -.L155: + jne .L110 +.L111: add.l %a2,%a0 -.L157: +.L113: clr.b (%a0)+ cmp.l %a0,%d1 - jne .L157 + jne .L113 move.l (%a4)+,%d0 move.l %d0,%d3 clr.w %d3 @@ -973,7 +651,7 @@ generator_page: move.b %d4,2(%a1) move.b %d3,1(%a1) cmp.l %d2,%d0 - jcs .L161 + jcs .L117 move.l #generator_widget,%d0 moveq #24,%d4 move.l %d0,%d3 @@ -993,8 +671,8 @@ generator_page: moveq #12,%d0 move.b %d3,45(%a1) cmp.l %d2,%d0 - jne .L160 -.L171: + jne .L116 +.L127: mvz.w #21845,%d3 move.l 36(%sp),%d0 move.l #1431655765,%d4 @@ -1002,12 +680,12 @@ generator_page: mov3q.l #1,src_page_ready move.l %d3,src_page+394 move.l %d0,src_page_source -.L152: +.L108: move.l #src_page,%d0 movem.l (%sp),#15420 lea (32,%sp),%sp rts -.L161: +.L117: move.l #secondary_widget,%d0 moveq #24,%d4 move.l %d0,%d3 @@ -1027,98 +705,99 @@ generator_page: moveq #12,%d0 move.b %d3,45(%a1) cmp.l %d2,%d0 - jne .L160 - jra .L171 + jne .L116 + jra .L127 .size generator_page, .-generator_page .section .rodata.str1.1,"aMS",@progbits,1 .LC0: .string "VEC" - .section .rodata -.LC1: - .string "VECTOR 1/2" - .string "" .text .align 2 .type vector_midi_page, @function vector_midi_page: - lea (-28,%sp),%sp - move.l 32(%sp),%a1 - move.l 36(%sp),%d0 - movem.l #31756,(%sp) - lea 1(%a1,%d0.l),%a3 - tst.l src_page_ready - jne .L173 - cmp.l midi_page_built.l,%a3 - jeq .L174 -.L173: + lea (-32,%sp),%sp + move.l 40(%sp),%d1 + movem.l #31772,(%sp) + move.l 36(%sp),%a1 + tst.l %d1 + jeq .L129 mov3q.l #1,%d1 - and.l 36(%sp),%d1 + and.l 44(%sp),%d1 + addq.l #1,%d1 +.L129: + lea 1(%a1,%d1.l),%a0 + move.l %d1,midi_view + move.l %a0,%d4 + tst.l src_page_ready + jne .L130 + cmp.l midi_page_built.l,%a0 + jeq .L131 +.L130: lea src_page,%a0 sub.l %a0,%a1 -.L175: +.L132: move.b (%a1,%a0.l),%d0 move.b %d0,(%a0)+ cmp.l #src_page+402,%a0 - jne .L175 + jne .L132 lea .LC0,%a1 sub.l %a0,%a0 lea src_page+4,%a2 -.L176: +.L133: move.b (%a1),%d0 addq.l #1,%a1 tst.b %d0 - jeq .L177 + jeq .L134 move.b %d0,(%a2)+ addq.l #1,%a0 - mov3q.l #5,%d2 - cmp.l %a0,%d2 - jne .L176 -.L177: + mov3q.l #5,%d0 + cmp.l %a0,%d0 + jne .L133 +.L134: add.l #src_page+4,%a0 - lea src_page+10,%a1 -.L179: +.L136: clr.b (%a0)+ cmp.l #src_page+10,%a0 - jne .L179 - moveq #86,%d0 - lea .LC1+1,%a0 - move.b %d0,src_page+9 -.L181: - move.b (%a0)+,(%a1)+ - cmp.l #.LC1+12,%a0 - jne .L181 - move.l %d1,%d0 - add.l #49,%d0 - move.b %d0,src_page+16 + jne .L136 + move.w %d1,%d2 + lea src_page+9,%a0 + mulu.w #13,%d2 + move.l %d2,%a1 + add.l #titles.2,%a1 +.L138: + move.b (%a1)+,(%a0)+ + cmp.l #src_page+22,%a0 + jne .L138 move.w %d1,%d0 + lea (formats.1),%a6 lea src_page+202,%a1 move.l #src_page+28,%d1 - mulu.w #24,%d0 - move.l %d0,%a6 + lea midi_names,%a3 + mulu.w #6,%d0 move.l %d0,%a5 - add.l #vector_control_names,%a6 - add.l #formats.1,%a5 -.L187: - move.l (%a6)+,%a4 + add.l #midi_layout,%a5 +.L144: + mvz.b (%a5)+,%d0 move.l %d1,%a2 sub.l %a0,%a0 subq.l #6,%a2 -.L182: + move.l (%a3,%d0.l*4),%a4 +.L139: move.b (%a4,%a0.l),%d0 - jeq .L183 + jeq .L140 move.b %d0,(%a2,%a0.l) addq.l #1,%a0 - mov3q.l #5,%d2 - cmp.l %a0,%d2 - jne .L182 -.L183: + mov3q.l #5,%d0 + cmp.l %a0,%d0 + jne .L139 +.L140: add.l %a2,%a0 -.L185: +.L142: clr.b (%a0)+ cmp.l %a0,%d1 - jne .L185 + jne .L142 moveq #64,%d2 - move.l (%a5)+,%d0 + move.l (%a6)+,%d0 moveq #24,%d1 move.l %d0,%d3 lsr.l %d1,%d3 @@ -1141,18 +820,18 @@ vector_midi_page: moveq #-92,%d0 move.b %d0,47(%a1) move.b %d2,-3(%a1) - cmp.l #src_page+58,%a0 - jne .L187 + cmp.l #formats.1+24,%a6 + jne .L144 mvz.w #21845,%d1 move.l #1431655765,%d2 move.l %d2,src_page+398 clr.l src_page_ready move.l %d1,src_page+394 - move.l %a3,midi_page_built -.L174: + move.l %d4,midi_page_built +.L131: move.l #src_page,%d0 - movem.l (%sp),#31756 - lea (28,%sp),%sp + movem.l (%sp),#31772 + lea (32,%sp),%sp rts .size vector_midi_page, .-vector_midi_page .align 2 @@ -1183,35 +862,35 @@ settings: mvz.b 62(%a0,%d0.l),%d1 subq.l #1,%d1 tst.l %d1 - jeq .L227 + jeq .L187 lea (23,%sp),%a6 sub.l %a1,%a1 -.L212: +.L172: move.l %a1,%d1 add.l #489,%d1 add.l %d0,%d1 mov3q.l #2,%d2 cmp.l %a1,%d2 - jcc .L228 -.L209: + jcc .L188 +.L169: move.b (%a0,%d1.l),(%a6) addq.l #1,%a1 moveq #9,%d1 cmp.l %a1,%d1 - jeq .L211 + jeq .L171 move.l %a1,%d1 add.l #489,%d1 addq.l #1,%a6 add.l %d0,%d1 mov3q.l #2,%d2 cmp.l %a1,%d2 - jcs .L209 -.L228: + jcs .L169 +.L188: lea 63(%a1,%d0.l),%a2 addq.l #1,%a1 move.b (%a0,%a2.l),(%a6)+ - jra .L212 -.L211: + jra .L172 +.L171: move.b 23(%sp),%d0 moveq #15,%d1 mov3q.l #4,%d2 @@ -1221,7 +900,7 @@ settings: move.w %d0,%a0 move.b %d1,32(%sp) cmp.l %d0,%d2 - jcs .L229 + jcs .L189 move.w %a0,%d0 move.b 24(%sp),%d1 moveq #16,%d2 @@ -1230,8 +909,8 @@ settings: and.l %d1,%d0 move.w %d0,%a0 cmp.l %d0,%d2 - jcs .L230 -.L214: + jcs .L190 +.L174: move.w %a0,%d2 move.b 25(%sp),%d0 lsr.l #5,%d1 @@ -1245,54 +924,54 @@ settings: move.l %d2,%a0 moveq #11,%d2 cmp.l %a0,%d2 - jcs .L231 -.L215: + jcs .L191 +.L175: mvz.b %d0,%d0 lsr.l #4,%d0 move.b %d1,34(%sp) moveq #12,%d1 move.w %d0,%a0 cmp.l %d0,%d1 - jcs .L232 -.L216: + jcs .L192 +.L176: move.b 26(%sp),%d1 move.w %a0,%d2 mvz.b %d1,%d0 move.b %d2,38(%sp) moveq #126,%d2 cmp.l %d0,%d2 - jcs .L233 -.L217: + jcs .L193 +.L177: move.b 27(%sp),%d0 move.b %d1,36(%sp) tst.b %d0 - jlt .L234 -.L218: + jlt .L194 +.L178: move.b 28(%sp),%d1 move.b %d0,37(%sp) moveq #24,%d2 mvz.b %d1,%d0 cmp.l %d0,%d2 - jcs .L235 -.L219: + jcs .L195 +.L179: mvz.b 29(%sp),%d0 move.b %d1,39(%sp) moveq #63,%d1 cmp.l %d0,%d1 - jcs .L236 -.L220: + jcs .L196 +.L180: move.b 30(%sp),%d1 lsl.l #8,%d0 mvz.b %d1,%d2 move.l %d2,%a0 moveq #64,%d2 cmp.l %a0,%d2 - jcs .L237 -.L221: + jcs .L197 +.L181: move.b %d1,%d0 lea (32,%sp),%a3 move.w %d0,40(%sp) -.L207: +.L167: move.l 16(%sp),%a0 move.l %a0,%d0 move.l (%a3),(%a0)+ @@ -1302,13 +981,13 @@ settings: move.b 42(%sp),(%a0) lea (44,%sp),%sp rts -.L237: +.L197: moveq #64,%d1 lea (32,%sp),%a3 move.b %d1,%d0 move.w %d0,40(%sp) - jra .L207 -.L236: + jra .L167 +.L196: move.b 30(%sp),%d1 moveq #63,%d0 lsl.l #8,%d0 @@ -1316,33 +995,33 @@ settings: move.l %d2,%a0 moveq #64,%d2 cmp.l %a0,%d2 - jcc .L221 - jra .L237 -.L235: + jcc .L181 + jra .L197 +.L195: moveq #24,%d1 mvz.b 29(%sp),%d0 move.b %d1,39(%sp) moveq #63,%d1 cmp.l %d0,%d1 - jcc .L220 - jra .L236 -.L234: + jcc .L180 + jra .L196 +.L194: moveq #127,%d0 move.b 28(%sp),%d1 moveq #24,%d2 move.b %d0,37(%sp) mvz.b %d1,%d0 cmp.l %d0,%d2 - jcc .L219 - jra .L235 -.L233: + jcc .L179 + jra .L195 +.L193: moveq #126,%d1 move.b 27(%sp),%d0 move.b %d1,36(%sp) tst.b %d0 - jge .L218 - jra .L234 -.L232: + jge .L178 + jra .L194 +.L192: move.w #12,%a0 move.b 26(%sp),%d1 move.w %a0,%d2 @@ -1350,9 +1029,9 @@ settings: move.b %d2,38(%sp) moveq #126,%d2 cmp.l %d0,%d2 - jcc .L217 - jra .L233 -.L231: + jcc .L177 + jra .L193 +.L191: moveq #11,%d1 mvz.b %d0,%d0 lsr.l #4,%d0 @@ -1360,9 +1039,9 @@ settings: move.b %d1,34(%sp) moveq #12,%d1 cmp.l %d0,%d1 - jcc .L216 - jra .L232 -.L230: + jcc .L176 + jra .L192 +.L190: move.w #16,%a0 move.b 25(%sp),%d0 lsr.l #5,%d1 @@ -1377,9 +1056,9 @@ settings: move.l %d2,%a0 moveq #11,%d2 cmp.l %a0,%d2 - jcc .L215 - jra .L231 -.L229: + jcc .L175 + jra .L191 +.L189: move.w #4,%a0 move.b 24(%sp),%d1 moveq #16,%d2 @@ -1389,21 +1068,21 @@ settings: and.l %d1,%d0 move.w %d0,%a0 cmp.l %d0,%d2 - jcc .L214 - jra .L230 -.L227: + jcc .L174 + jra .L190 +.L187: lea (32,%sp),%a3 sub.l %a1,%a1 move.l %a3,%a2 -.L208: +.L168: move.l %a1,%d1 add.l #489,%d1 lea 63(%a1,%d0.l),%a6 add.l %d0,%d1 mov3q.l #2,%d2 cmp.l %a1,%d2 - jcs .L205 -.L238: + jcs .L165 +.L198: addq.l #1,%a1 move.b (%a0,%a6.l),(%a2)+ move.l %a1,%d1 @@ -1412,1897 +1091,1268 @@ settings: add.l %d0,%d1 mov3q.l #2,%d2 cmp.l %a1,%d2 - jcc .L238 -.L205: + jcc .L198 +.L165: move.b (%a0,%d1.l),(%a2) addq.l #1,%a1 mov3q.l #6,%d1 cmp.l %a1,%d1 - jeq .L207 + jeq .L167 addq.l #1,%a2 - jra .L208 + jra .L168 .size settings, .-settings .align 2 - .type draw_generator_widget.part.0, @function -draw_generator_widget.part.0: - lea (-12,%sp),%sp - move.l %a6,-(%sp) + .type midi_control, @function +midi_control: + subq.l #8,%sp + move.l %a2,-(%sp) move.l %d2,-(%sp) - mvz.b 269161676,%d0 - move.l 36(%sp),%a6 - move.l %d0,-(%sp) - lea (13,%sp),%a0 - jsr settings - addq.l #4,%sp - mov3q.l #6,%d0 - cmp.l %a6,%d0 - jeq .L247 - mov3q.l #5,%d2 - move.l %a6,%d0 - cmp.l %a6,%d2 - jcc .L242 - subq.l #1,%d0 -.L242: - mvz.b 9(%sp,%d0.l),%d0 - move.l %d0,%a0 -.L241: - move.l 48(%sp),-(%sp) - move.l 48(%sp),-(%sp) - moveq #-2,%d0 - and.l 48(%sp),%d0 - lea vector_control_max,%a1 - mvz.b (%a1,%a6.l),%d1 - move.l %d0,-(%sp) - move.l %d1,%d0 - cmp.l %d1,%a0 - jcc .L243 - move.l %a0,%d0 -.L243: - mulu.w #127,%d0 - divu.l %d1,%d0 - move.l %d0,-(%sp) - move.l 48(%sp),-(%sp) - move.l 48(%sp),-(%sp) - move.l 48(%sp),-(%sp) - jsr 1074035124 - lea (28,%sp),%sp - move.l (%sp)+,%d2 - move.l (%sp)+,%a6 - lea (12,%sp),%sp - rts -.L247: - move.b 269161676,%d0 - move.l 1187521622,%a1 - mov3q.l #3,%d2 + moveq #15,%d2 + move.l 24(%sp),%a0 + move.l 1187521622,%d0 move.b 269161679,%d1 - add.l #585088,%a1 - mvz.b %d0,%d0 + cmp.l %a0,%d2 + jcs .L208 + mov3q.l #3,%d2 and.l %d2,%d1 - mulu.w #30,%d0 - move.l %d0,%a0 - mvz.w #6322,%d0 - lea (497,%a0),%a0 - muls.l %d0,%d1 - add.l %d1,%a1 - move.b (%a1,%a0.l),%d0 - moveq #127,%d1 - and.l %d0,%d1 - move.l %d1,%a0 - jra .L241 - .size draw_generator_widget.part.0, .-draw_generator_widget.part.0 - .align 2 - .type secondary_widget, @function -secondary_widget: - subq.l #8,%sp - move.l %d2,-(%sp) - moveq #11,%d2 - move.l 24(%sp),%d0 - move.l %d0,%d1 - move.l 16(%sp),%a0 - addq.l #6,%d1 - move.l 20(%sp),%a1 - move.l 32(%sp),4(%sp) - move.l 36(%sp),8(%sp) - cmp.l %d1,%d2 - jcc .L252 + move.l 20(%sp),%d2 + add.l #585088,%d0 + lsl.l #5,%d2 + move.l %d2,%a1 + mvz.w #6322,%d2 + lea (994,%a1),%a1 + muls.l %d2,%d1 + add.l %d1,%d0 + add.l %d0,%a1 + moveq #12,%d0 + cmp.l %a0,%d0 + jeq .L211 + moveq #13,%d0 + cmp.l %a0,%d0 + jeq .L212 + mov3q.l #4,%d1 + cmp.l %a0,%d1 + jne .L204 + mvz.b 2(%a1),%d1 +.L202: + lea midi_max,%a1 + mvz.b (%a1,%a0.l),%d0 + cmp.l %d0,%d1 + jcc .L199 + move.l %d1,%d0 +.L199: move.l (%sp)+,%d2 + move.l (%sp)+,%a2 addq.l #8,%sp rts -.L252: - move.l 8(%sp),36(%sp) - move.l 4(%sp),32(%sp) - move.l %d1,28(%sp) - move.l %d0,24(%sp) - move.l %a1,20(%sp) - move.l %a0,16(%sp) +.L211: + mvz.b (%a1),%d1 + moveq #19,%d2 + mulu.w #43691,%d1 + lsr.l %d2,%d1 + jra .L202 +.L208: move.l (%sp)+,%d2 + clr.l %d0 + move.l (%sp)+,%a2 addq.l #8,%sp - jra (draw_generator_widget.part.0) - .size secondary_widget, .-secondary_widget - .align 2 - .type generator_widget, @function -generator_widget: - subq.l #4,%sp - move.l %d2,-(%sp) - moveq #11,%d2 - move.l 20(%sp),%d0 - move.l 12(%sp),%d1 - move.l 16(%sp),%a0 - move.l 28(%sp),%a1 - move.l 32(%sp),4(%sp) + rts +.L204: + move.l 1187521622,%a1 + mov3q.l #3,%d2 + move.b 269161679,%d0 + move.l 20(%sp),%d1 + add.l #585088,%a1 + lsl.l #4,%d1 + and.l %d2,%d0 + mvz.w #6322,%d2 + move.l %d1,%a2 + lea (6206,%a2),%a2 + muls.l %d2,%d0 + moveq #22,%d2 + add.l %d0,%a1 + mvz.b (%a1,%a2.l),%d0 cmp.l %d0,%d2 - jcc .L257 + jeq .L205 + mov3q.l #6,%d0 + cmp.l %a0,%d0 + jeq .L213 move.l (%sp)+,%d2 - addq.l #4,%sp + lea (first.3),%a1 + mvz.b (%a1,%a0.l),%d0 + move.l (%sp)+,%a2 + addq.l #8,%sp rts -.L257: - move.l 4(%sp),32(%sp) - move.l %a1,28(%sp) - move.l %d0,24(%sp) - move.l %d0,20(%sp) - move.l %a0,16(%sp) - move.l %d1,12(%sp) - move.l (%sp)+,%d2 - addq.l #4,%sp - jra (draw_generator_widget.part.0) - .size generator_widget, .-generator_widget - .align 2 - .type mg_view.constprop.0, @function -mg_view.constprop.0: - lea (-12,%sp),%sp - movem.l #1036,(%sp) - tst.l -2147483630 - jeq .L259 - move.l #1187521622,%a0 - move.l (%a0),%d0 - add.l #-1073741824,%d0 - cmp.l #133169151,%d0 - jhi .L259 - move.l #269161676,%a1 - mov3q.l #7,%d1 - mvz.b (%a1),%d0 - cmp.l %d0,%d1 - jcs .L259 - move.b (%a1),%d1 - move.l (%a0),%d0 - mov3q.l #2,%d3 - move.b 269161679,%d2 - move.w %d2,%a0 - cmp.l 1175262852.l,%d3 - jne .L259 - tst.l 1175263034 - jne .L259 - tst.l 1175262868 - jne .L259 - move.l %a0,%d2 - mov3q.l #3,%d3 - and.l %d3,%d2 - mvz.b %d1,%d1 +.L212: + mvz.b 1(%a1),%d1 + jra .L202 +.L205: + move.l 1187521622,%d0 add.l #585088,%d0 - move.l %d1,%a1 - lea (3089,%a1),%a1 - move.l %d2,%d1 + move.b 269161679,%d2 + move.l %d0,12(%sp) + lea midi_byte,%a1 + mvz.b (%a1,%a0.l),%d0 + move.l %d0,%a1 + add.l %d1,%a1 + mov3q.l #3,%d1 + move.b %d2,%d0 mvz.w #6322,%d2 - muls.l %d2,%d1 - moveq #77,%d2 - add.l %d1,%d0 - move.l %d0,%a2 - lea (%a2,%a1.l*2),%a0 - move.b 1(%a0),%d0 - mvz.b (%a0),%d1 - cmp.l %d1,%d2 - jne .L259 - tst.l 20(%sp) - jeq .L259 - mvz.b %d0,%d0 - moveq #86,%d3 - cmp.l %d0,%d3 - jeq .L262 - move.b (%a0),%d0 -.L259: - movem.l (%sp),#1036 - clr.l %d0 - lea (12,%sp),%sp - rts -.L262: - movem.l (%sp),#1036 - move.l #vector_midi,%d0 - lea (12,%sp),%sp + lea (6194,%a1),%a1 + and.l %d1,%d0 + muls.l %d2,%d0 + add.l 12(%sp),%d0 + move.b (%a1,%d0.l),%d1 + add.l #64,%d1 + mvz.b %d1,%d1 + jra .L202 +.L213: + move.l 20(%sp),%d0 + addq.l #1,%d0 + move.l (%sp)+,%d2 + move.l (%sp)+,%a2 + addq.l #8,%sp rts - .size mg_view.constprop.0, .-mg_view.constprop.0 + .size midi_control, .-midi_control .section .rodata.str1.1 +.LC1: + .string "OFF" .LC2: .string "FWD" .LC3: - .string "OFF" + .string "" .LC4: .string "REV" .text .align 2 - .type format_control, @function -format_control: - lea (-28,%sp),%sp - movem.l #16412,(%sp) - move.l 36(%sp),%d2 - lea (17,%sp),%a0 - mvz.b 269161676,%d0 - move.l %d0,-(%sp) - jsr settings - addq.l #4,%sp - mov3q.l #6,%d0 + .type midi_format, @function +midi_format: + lea (-24,%sp),%sp + movem.l #3100,(%sp) + move.l 32(%sp),%d2 + move.l 28(%sp),%a2 + mvz.b 269161676,%d3 + move.l %d2,-(%sp) + move.l %d3,-(%sp) + jsr midi_control + addq.l #8,%sp + move.l %d0,%d1 + mov3q.l #4,%d0 cmp.l %d2,%d0 - jeq .L299 - mov3q.l #5,%d0 + jeq .L249 + moveq #12,%d4 + cmp.l %d2,%d4 + jeq .L250 + mov3q.l #2,%d0 cmp.l %d2,%d0 - jcs .L274 - mvz.b 17(%sp,%d2.l),%d0 - move.l %d2,%d1 - mov3q.l #1,%d3 - subq.l #2,%d1 - cmp.l %d1,%d3 - jcs .L273 - subq.l #2,%d2 - tst.l %d2 - jeq .L300 - mov3q.l #5,%d3 - remu.l %d3,%d1:%d0 - lea vector_scale_names,%a0 - move.l 32(%sp),%a1 - move.l (%a0,%d1.l*4),%a0 -.L280: + jeq .L251 + mov3q.l #3,%d3 + cmp.l %d2,%d3 + jeq .L252 + moveq #11,%d0 + cmp.l %d2,%d0 + jeq .L253 + moveq #10,%d3 + cmp.l %d2,%d3 + jeq .L254 + moveq #14,%d4 + cmp.l %d2,%d4 + jeq .L255 + moveq #16,%d0 + cmp.l %d2,%d0 + jne .L256 + lea .LC3,%a0 +.L227: move.b (%a0)+,%d0 - move.b %d0,(%a1)+ - jne .L280 -.L271: - movem.l (%sp),#16412 - lea (28,%sp),%sp + move.b %d0,(%a2)+ + jne .L227 +.L214: + movem.l (%sp),#3100 + lea (24,%sp),%sp rts -.L274: - mvz.b 16(%sp,%d2.l),%d0 - moveq #11,%d4 - cmp.l %d2,%d4 - jne .L301 - tst.l %d0 - jeq .L291 - move.l 32(%sp),%a1 - lea .LC4,%a0 -.L284: +.L251: + moveq #12,%d2 + remu.l %d2,%d0:%d1 + lea (roots.0),%a0 + move.l (%a0,%d0.l*4),%a0 move.b (%a0)+,%d0 - move.b %d0,(%a1)+ - jeq .L271 + move.b %d0,(%a2)+ + jne .L227 + jra .L214 +.L249: + move.l %a2,28(%sp) + movem.l (%sp),#3100 + move.l %d1,32(%sp) + move.l 1074609936,%a1 + lea (24,%sp),%sp + jmp (%a1) +.L254: + tst.l %d1 + jne .L245 +.L222: + lea .LC1,%a0 move.b (%a0)+,%d0 - move.b %d0,(%a1)+ - jne .L284 - jra .L271 -.L299: - move.b 269161676,%d0 - move.l 1187521622,%a1 - mov3q.l #3,%d2 - move.b 269161679,%d1 - mvz.w #6322,%d3 - add.l #585088,%a1 - moveq #127,%d4 - mvz.b %d0,%d0 - and.l %d2,%d1 - mulu.w #30,%d0 - move.l %d0,%a0 - muls.l %d3,%d1 - lea (497,%a0),%a0 - add.l %d1,%a1 - move.b (%a1,%a0.l),%d0 - and.l %d4,%d0 -.L273: + move.b %d0,(%a2)+ + jne .L227 + jra .L214 +.L256: + subq.l #8,%d2 + tst.l %d2 + jne .L245 + move.l %d1,%d0 + add.l #-12,%d0 + tst.l %d0 + jlt .L257 + move.l %d0,%d1 +.L245: + move.l %a2,%a1 + mov3q.l #1,%a0 + clr.l %d0 +.L230: moveq #99,%d3 - cmp.l %d0,%d3 - jcc .L292 -.L303: + cmp.l %d1,%d3 + jcc .L232 moveq #100,%d4 moveq #10,%d3 - move.l %d0,%d1 - mov3q.l #2,%a6 - divu.l %d4,%d1 - move.l 32(%sp),%a0 - mov3q.l #3,%a1 - add.l #48,%d1 - move.b %d1,(%a0)+ - move.l %d0,%d1 - divu.l %d3,%d1 - move.l %d1,%d2 + move.l %d1,%d0 + divu.l %d4,%d0 + add.l #48,%d0 + move.b %d0,(%a1) + move.l %d1,%d0 + divu.l %d3,%d0 + lea 1(%a2,%a0.l),%a1 + move.l %d0,%d2 remu.l %d3,%d4:%d2 - move.l %d4,%d1 - add.l #48,%d1 - move.b %d1,(%a0) - move.l 32(%sp),%a0 - add.l %a6,%a0 -.L289: + move.l %d4,%d0 + add.l #48,%d0 + move.b %d0,(%a2,%a0.l) + addq.l #2,%a0 +.L234: moveq #10,%d2 - remu.l %d2,%d1:%d0 + remu.l %d2,%d0:%d1 clr.b %d3 - add.l #48,%d1 - move.b %d1,(%a0) - move.l 32(%sp),%a0 - move.b %d3,(%a0,%a1.l) - movem.l (%sp),#16412 - lea (28,%sp),%sp + add.l #48,%d0 + move.b %d0,(%a1) + move.b %d3,(%a2,%a0.l) + movem.l (%sp),#3100 + lea (24,%sp),%sp rts -.L292: - move.l 32(%sp),%a0 - mov3q.l #1,%a1 - clr.l %d1 +.L232: moveq #9,%d2 - cmp.l %d0,%d2 - jcc .L289 -.L304: - move.l %a1,%a6 + cmp.l %d1,%d2 + jcc .L234 + move.l %d0,%a0 moveq #10,%d3 - move.l %d1,%a1 - move.l %d0,%d1 - divu.l %d3,%d1 - addq.l #2,%a1 - move.l %d1,%d2 + move.l %d1,%d0 + divu.l %d3,%d0 + lea 1(%a2,%a0.l),%a1 + move.l %d0,%d2 remu.l %d3,%d4:%d2 - move.l %d4,%d1 - add.l #48,%d1 - move.b %d1,(%a0) - move.l 32(%sp),%a0 - add.l %a6,%a0 - jra .L289 -.L291: - move.l 32(%sp),%a1 + move.l %d4,%d0 + add.l #48,%d0 + move.b %d0,(%a2,%a0.l) + addq.l #2,%a0 + jra .L234 +.L252: + mov3q.l #5,%d4 + remu.l %d4,%d0:%d1 + lea vector_scale_names,%a0 + move.l (%a0,%d0.l*4),%a0 + move.b (%a0)+,%d0 + move.b %d0,(%a2)+ + jne .L227 + jra .L214 +.L253: + tst.l %d1 + jeq .L235 + lea .LC4,%a0 + move.b (%a0)+,%d0 + move.b %d0,(%a2)+ + jne .L227 + jra .L214 +.L250: + move.l 1074609928,%d2 + mov3q.l #2,-(%sp) + move.l %d3,-(%sp) + move.l %d1,28(%sp) + jsr midi_control + move.l %a2,36(%sp) + move.l 28(%sp),%d1 + move.l %d2,%a1 + muls.l %d4,%d1 + movem.l 8(%sp),#3100 + add.l %d0,%d1 + move.l %d1,40(%sp) + lea (32,%sp),%sp + jmp (%a1) +.L235: lea .LC2,%a0 - jra .L284 -.L300: + move.b (%a0)+,%d0 + move.b %d0,(%a2)+ + jne .L227 + jra .L214 +.L257: moveq #12,%d2 - remu.l %d2,%d1:%d0 - lea (roots.5),%a0 - move.l 32(%sp),%a1 - move.l (%a0,%d1.l*4),%a0 - jra .L280 -.L301: - moveq #10,%d4 - cmp.l %d2,%d4 - jne .L282 - tst.l %d0 - jne .L273 - move.l 32(%sp),%a1 - lea .LC3,%a0 - jra .L284 -.L282: - subq.l #8,%d2 - tst.l %d2 - jne .L273 - move.l %d0,%d1 - add.l #-12,%d1 + mov3q.l #2,%a0 + move.l %a2,%a1 + sub.l %d1,%d2 + move.b #45,(%a1)+ + move.l %d2,%d1 + mov3q.l #1,%d0 + jra .L230 +.L255: tst.l %d1 - jlt .L302 - move.l %d1,%d0 - moveq #99,%d3 - cmp.l %d0,%d3 - jcs .L303 - jra .L292 -.L302: - move.l 32(%sp),%a0 - moveq #12,%d2 - sub.l %d0,%d2 - move.l %d2,%d0 - mov3q.l #2,%a1 - move.b #45,(%a0)+ - mov3q.l #1,%d1 - moveq #9,%d2 - cmp.l %d0,%d2 - jcc .L289 - jra .L304 - .size format_control, .-format_control + jeq .L222 + move.l #268618112,%d0 + sub.l %d1,%d0 + lsl.l #2,%d0 + move.l %d0,%a1 + move.l (%a1),%a0 + tst.l %a0 + jne .L227 + move.l %a2,%a1 + mov3q.l #1,%a0 + clr.l %d0 + jra .L230 + .size midi_format, .-midi_format .align 2 - .type format_10, @function -format_10: - moveq #10,%d0 + .type midi_format_0, @function +midi_format_0: + move.l midi_view,%d0 + mov3q.l #6,%d1 + lea midi_layout,%a0 + muls.l %d1,%d0 + mvz.b (%a0,%d0.l),%d0 move.l %d0,8(%sp) - jra format_control - .size format_10, .-format_10 + jra midi_format + .size midi_format_0, .-midi_format_0 .align 2 - .type format_8, @function -format_8: - moveq #8,%d0 + .type midi_format_1, @function +midi_format_1: + move.l midi_view,%d0 + mov3q.l #6,%d1 + muls.l %d1,%d0 + move.l %d0,%a0 + add.l #midi_layout+1,%a0 + mvz.b (%a0),%d0 move.l %d0,8(%sp) - jra format_control - .size format_8, .-format_8 + jra midi_format + .size midi_format_1, .-midi_format_1 .align 2 - .type format_6, @function -format_6: - mov3q.l #6,8(%sp) - jra format_control - .size format_6, .-format_6 + .type midi_format_2, @function +midi_format_2: + move.l midi_view,%d0 + mov3q.l #6,%d1 + muls.l %d1,%d0 + move.l %d0,%a0 + add.l #midi_layout+2,%a0 + mvz.b (%a0),%d0 + move.l %d0,8(%sp) + jra midi_format + .size midi_format_2, .-midi_format_2 + .align 2 + .type midi_format_3, @function +midi_format_3: + move.l midi_view,%d0 + mov3q.l #6,%d1 + muls.l %d1,%d0 + move.l %d0,%a0 + add.l #midi_layout+3,%a0 + mvz.b (%a0),%d0 + move.l %d0,8(%sp) + jra midi_format + .size midi_format_3, .-midi_format_3 .align 2 .type midi_format_4, @function midi_format_4: - move.l %a2,-(%sp) - move.l %d2,-(%sp) - move.b 269161676,%d0 + move.l midi_view,%d0 + mov3q.l #6,%d1 + muls.l %d1,%d0 + move.l %d0,%a0 + add.l #midi_layout+4,%a0 + mvz.b (%a0),%d0 + move.l %d0,8(%sp) + jra midi_format + .size midi_format_4, .-midi_format_4 + .align 2 + .type midi_format_5, @function +midi_format_5: + move.l midi_view,%d0 + mov3q.l #6,%d1 + muls.l %d1,%d0 + move.l %d0,%a0 + add.l #midi_layout+5,%a0 + mvz.b (%a0),%d0 + move.l %d0,8(%sp) + jra midi_format + .size midi_format_5, .-midi_format_5 + .align 2 + .type midi_page1, @function +midi_page1: + lea (-16,%sp),%sp + movem.l #3084,(%sp) move.l 1187521622,%a0 - mov3q.l #3,%d2 + mov3q.l #3,%d3 + move.l 20(%sp),%d1 + move.l %d1,%d2 + lsl.l #5,%d2 + move.l 24(%sp),%a1 add.l #585088,%a0 - move.b 269161679,%d1 - move.l 12(%sp),%a1 - mvz.b %d0,%d0 - and.l %d2,%d1 - lsl.l #4,%d0 + lea (31,%sp),%a3 + move.l %d1,%a2 + add.l #-2147457426,%a2 + lea (994,%a1),%a1 + move.b 269161679,%d0 + add.l %d2,%a1 mvz.w #6322,%d2 - muls.l %d2,%d1 - move.l %d0,%a2 - moveq #22,%d2 - lea (6206,%a2),%a2 - add.l %d1,%a0 - mvz.b (%a0,%a2.l),%d1 - cmp.l %d1,%d2 - jeq .L317 - moveq #8,%d0 -.L312: - move.l %d0,16(%sp) - move.l %a1,12(%sp) - move.l (%sp)+,%d2 - move.l 1074609936,%a1 - move.l (%sp)+,%a2 - jmp (%a1) -.L317: - move.l 1187521622,%a2 + and.l %d3,%d0 + muls.l %d2,%d0 + add.l %d0,%a0 + move.b (%a3),(%a0,%a1.l) + move.b 269161679,%d0 + and.l %d3,%d0 + muls.l %d2,%d0 move.l %d0,%a0 - move.b 269161679,%d1 - mov3q.l #3,%d0 - mvz.w #6322,%d2 - add.l #585088,%a2 - lea (6198,%a0),%a0 - and.l %d0,%d1 - muls.l %d2,%d1 - add.l %d1,%a2 - move.b (%a2,%a0.l),%d0 - moveq #126,%d1 - add.l #64,%d0 - mvz.b %d0,%d0 - cmp.l %d0,%d1 - jcc .L312 - moveq #126,%d0 - move.l %d0,16(%sp) - move.l %a1,12(%sp) - move.l (%sp)+,%d2 - move.l 1074609936,%a1 - move.l (%sp)+,%a2 - jmp (%a1) - .size midi_format_4, .-midi_format_4 - .align 2 - .type midi_format_11, @function -midi_format_11: - move.b 269161676,%d0 - pea 11.w + add.l #269110990,%a0 + move.b (%a3),(%a0,%a1.l) + move.b (%a2),%d0 + mvz.b -2147483646,%d2 mvz.b %d0,%d0 - move.l %d0,-(%sp) - jsr midi_control - addq.l #8,%sp - tst.l %d0 - jeq .L321 - move.l 4(%sp),%a1 - lea .LC4,%a0 -.L320: - move.b (%a0)+,%d0 - move.b %d0,(%a1)+ - jne .L320 + cmp.l %d0,%d2 + jeq .L274 +.L270: + movem.l (%sp),#3084 + lea (16,%sp),%sp rts -.L321: - move.l 4(%sp),%a1 - lea .LC2,%a0 - jra .L320 - .size midi_format_11, .-midi_format_11 - .align 2 - .type midi_format_3, @function -midi_format_3: - move.l %d2,-(%sp) - move.b 269161676,%d0 - mov3q.l #3,-(%sp) - mov3q.l #5,%d2 +.L274: + move.l %d1,%a0 + add.l #-2147457418,%a0 + move.b (%a0),%d0 + mvz.b -2147483645,%d2 mvz.b %d0,%d0 - move.l %d0,-(%sp) - jsr midi_control - addq.l #8,%sp - lea vector_scale_names,%a0 - remu.l %d2,%d1:%d0 - move.l 8(%sp),%a1 - move.l (%a0,%d1.l*4),%a0 -.L326: - move.b (%a0)+,%d0 - move.b %d0,(%a1)+ - jne .L326 - move.l (%sp)+,%d2 + cmp.l %d0,%d2 + jne .L270 + moveq #68,%d0 + muls.l %d1,%d0 + move.l 24(%sp),%a0 + add.l #1187474880,%a0 + move.b (%a3),(%a0,%d0.l) + movem.l (%sp),#3084 + lea (16,%sp),%sp rts - .size midi_format_3, .-midi_format_3 + .size midi_page1, .-midi_page1 .align 2 - .type midi_format_2, @function -midi_format_2: + .type mg_page_view, @function +mg_page_view: + move.l 1175262852,%d1 + mov3q.l #4,%d0 + move.l %a2,-(%sp) move.l %d2,-(%sp) - moveq #12,%d2 - move.b 269161676,%d0 - mov3q.l #2,-(%sp) + cmp.l %d1,%d0 + jcs .L283 + tst.l 1175263034 + jne .L283 + tst.l 1175262868 + jne .L283 + move.l 24(%sp),%d0 + add.l #3089,%d0 + mvz.w %d0,%d0 + move.l 20(%sp),%a0 + lea (%a0,%d0.l*2),%a0 + move.b 1(%a0),%d0 + mvz.b (%a0),%d2 + move.l %d2,%a1 + moveq #77,%d2 + cmp.l %a1,%d2 + jne .L283 + tst.l 16(%sp) + jeq .L283 mvz.b %d0,%d0 - move.l %d0,-(%sp) - jsr midi_control - addq.l #8,%sp - lea (roots.0),%a0 - remu.l %d2,%d1:%d0 - move.l 8(%sp),%a1 - move.l (%a0,%d1.l*4),%a0 -.L331: - move.b (%a0)+,%d0 - move.b %d0,(%a1)+ - jne .L331 + move.l 12(%sp),%a2 + move.l %d0,%a1 + move.l (%a2),%d0 + move.l %d0,%a2 + cmp.l 8(%a2),%a1 + jeq .L287 + move.b (%a0),%d0 +.L283: move.l (%sp)+,%d2 + clr.l %d0 + move.l (%sp)+,%a2 rts - .size midi_format_2, .-midi_format_2 - .align 2 - .type format_11, @function -format_11: - mvz.b 269161676,%d0 - lea (-12,%sp),%sp - lea (1,%sp),%a0 - move.l %d0,-(%sp) - jsr settings - addq.l #4,%sp - tst.b 11(%sp) - jeq .L338 - lea .LC4,%a0 - move.l 16(%sp),%a1 -.L337: - move.b (%a0)+,%d0 - move.b %d0,(%a1)+ - jne .L337 - lea (12,%sp),%sp - rts -.L338: - move.l 16(%sp),%a1 - lea .LC2,%a0 - jra .L337 - .size format_11, .-format_11 - .align 2 - .type format_3, @function -format_3: - lea (-12,%sp),%sp - move.l %d2,-(%sp) - mvz.b 269161676,%d0 - lea (5,%sp),%a0 - mov3q.l #5,%d2 - move.l %d0,-(%sp) - jsr settings - mvz.b 12(%sp),%d0 - addq.l #4,%sp - lea vector_scale_names,%a0 - remu.l %d2,%d1:%d0 - move.l 20(%sp),%a1 - move.l (%a0,%d1.l*4),%a0 -.L343: - move.b (%a0)+,%d0 - move.b %d0,(%a1)+ - jne .L343 +.L287: + mov3q.l #4,%d2 + or.l 12(%a2),%d2 + btst %d1,%d2 + jeq .L283 move.l (%sp)+,%d2 - lea (12,%sp),%sp + move.l (%sp)+,%a2 rts - .size format_3, .-format_3 + .size mg_page_view, .-mg_page_view .align 2 - .type format_2, @function -format_2: + .type draw_generator_widget.part.0, @function +draw_generator_widget.part.0: lea (-12,%sp),%sp + move.l %a6,-(%sp) move.l %d2,-(%sp) - moveq #12,%d2 mvz.b 269161676,%d0 - lea (5,%sp),%a0 + move.l 36(%sp),%a6 move.l %d0,-(%sp) + lea (13,%sp),%a0 jsr settings - mvz.b 11(%sp),%d0 addq.l #4,%sp - lea (roots.5),%a0 - remu.l %d2,%d1:%d0 - move.l 20(%sp),%a1 - move.l (%a0,%d1.l*4),%a0 -.L348: - move.b (%a0)+,%d0 - move.b %d0,(%a1)+ - jne .L348 + mov3q.l #6,%d0 + cmp.l %a6,%d0 + jeq .L296 + mov3q.l #5,%d2 + move.l %a6,%d0 + cmp.l %a6,%d2 + jcc .L291 + subq.l #1,%d0 +.L291: + mvz.b 9(%sp,%d0.l),%d0 + move.l %d0,%a0 +.L290: + move.l 48(%sp),-(%sp) + move.l 48(%sp),-(%sp) + moveq #-2,%d0 + and.l 48(%sp),%d0 + lea vector_control_max,%a1 + mvz.b (%a1,%a6.l),%d1 + move.l %d0,-(%sp) + move.l %d1,%d0 + cmp.l %d1,%a0 + jcc .L292 + move.l %a0,%d0 +.L292: + mulu.w #127,%d0 + divu.l %d1,%d0 + move.l %d0,-(%sp) + move.l 48(%sp),-(%sp) + move.l 48(%sp),-(%sp) + move.l 48(%sp),-(%sp) + jsr 1074035124 + lea (28,%sp),%sp move.l (%sp)+,%d2 + move.l (%sp)+,%a6 lea (12,%sp),%sp rts - .size format_2, .-format_2 - .align 2 - .type midi_format_0, @function -midi_format_0: - lea (-16,%sp),%sp - movem.l #1052,(%sp) - mov3q.l #3,%d2 - mvz.w #6322,%d3 - move.l 20(%sp),%a1 - moveq #22,%d4 +.L296: move.b 269161676,%d0 - move.l 1187521622,%a0 - add.l #585088,%a0 + move.l 1187521622,%a1 + mov3q.l #3,%d2 move.b 269161679,%d1 + add.l #585088,%a1 mvz.b %d0,%d0 and.l %d2,%d1 - lsl.l #4,%d0 - muls.l %d3,%d1 - move.l %d0,%a2 - lea (6206,%a2),%a2 - add.l %d1,%a0 - mvz.b (%a0,%a2.l),%d1 - cmp.l %d1,%d4 - jeq .L360 - moveq #49,%d1 -.L353: - move.l %a1,%a0 - mov3q.l #2,%d0 - move.b #49,(%a0)+ - clr.b %d4 - move.b %d1,(%a0) - move.b %d4,(%a1,%d0.l) - movem.l (%sp),#1052 - lea (16,%sp),%sp - rts -.L360: - move.l 1187521622,%d1 + mulu.w #30,%d0 move.l %d0,%a0 - move.b 269161679,%d2 - move.l %d1,%d0 - mov3q.l #3,%d3 - mvz.w #6322,%d4 - add.l #585088,%d0 - lea (6194,%a0),%a0 - move.w %d2,%a2 - moveq #15,%d2 - move.l %a2,%d1 - and.l %d3,%d1 - muls.l %d4,%d1 - add.l %d1,%d0 - move.b (%a0,%d0.l),%d0 - add.l #64,%d0 - mvz.b %d0,%d0 + mvz.w #6322,%d0 + lea (497,%a0),%a0 + muls.l %d0,%d1 + add.l %d1,%a1 + move.b (%a1,%a0.l),%d0 + moveq #127,%d1 + and.l %d0,%d1 + move.l %d1,%a0 + jra .L290 + .size draw_generator_widget.part.0, .-draw_generator_widget.part.0 + .align 2 + .type secondary_widget, @function +secondary_widget: + subq.l #8,%sp + move.l %d2,-(%sp) + moveq #11,%d2 + move.l 24(%sp),%d0 move.l %d0,%d1 + move.l 16(%sp),%a0 + addq.l #6,%d1 + move.l 20(%sp),%a1 + move.l 32(%sp),4(%sp) + move.l 36(%sp),8(%sp) + cmp.l %d1,%d2 + jcc .L301 + move.l (%sp)+,%d2 + addq.l #8,%sp + rts +.L301: + move.l 8(%sp),36(%sp) + move.l 4(%sp),32(%sp) + move.l %d1,28(%sp) + move.l %d0,24(%sp) + move.l %a1,20(%sp) + move.l %a0,16(%sp) + move.l (%sp)+,%d2 + addq.l #8,%sp + jra (draw_generator_widget.part.0) + .size secondary_widget, .-secondary_widget + .align 2 + .type generator_widget, @function +generator_widget: + subq.l #4,%sp + move.l %d2,-(%sp) + moveq #11,%d2 + move.l 20(%sp),%d0 + move.l 12(%sp),%d1 + move.l 16(%sp),%a0 + move.l 28(%sp),%a1 + move.l 32(%sp),4(%sp) cmp.l %d0,%d2 - jcs .L361 - move.l %d1,%d3 - moveq #10,%d4 - remu.l %d4,%d2:%d3 - moveq #9,%d3 - move.l %d2,%d1 - add.l #48,%d1 - cmp.l %d0,%d3 - jcs .L353 -.L357: - clr.b %d4 - move.l %a1,%a0 - mov3q.l #1,%d0 - move.b %d1,(%a0) - move.b %d4,(%a1,%d0.l) - movem.l (%sp),#1052 - lea (16,%sp),%sp + jcc .L306 + move.l (%sp)+,%d2 + addq.l #4,%sp rts -.L361: - moveq #15,%d1 - moveq #10,%d4 - move.l %d1,%d3 - remu.l %d4,%d2:%d3 - moveq #9,%d3 - move.l %d2,%d1 - add.l #48,%d1 - cmp.l %d0,%d3 - jcc .L357 - jra .L353 - .size midi_format_0, .-midi_format_0 +.L306: + move.l 4(%sp),32(%sp) + move.l %a1,28(%sp) + move.l %d0,24(%sp) + move.l %d0,20(%sp) + move.l %a0,16(%sp) + move.l %d1,12(%sp) + move.l (%sp)+,%d2 + addq.l #4,%sp + jra (draw_generator_widget.part.0) + .size generator_widget, .-generator_widget .align 2 - .type midi_format_1, @function -midi_format_1: - lea (-16,%sp),%sp - movem.l #1052,(%sp) - mov3q.l #3,%d2 - mvz.w #6322,%d3 - move.l 20(%sp),%a1 - moveq #22,%d4 + .type format_control, @function +format_control: + lea (-28,%sp),%sp + movem.l #16412,(%sp) + move.l 36(%sp),%d2 + lea (17,%sp),%a0 + mvz.b 269161676,%d0 + move.l %d0,-(%sp) + jsr settings + addq.l #4,%sp + mov3q.l #6,%d0 + cmp.l %d2,%d0 + jeq .L335 + mov3q.l #5,%d0 + cmp.l %d2,%d0 + jcs .L310 + mvz.b 17(%sp,%d2.l),%d0 + move.l %d2,%d1 + mov3q.l #1,%d3 + subq.l #2,%d1 + cmp.l %d1,%d3 + jcs .L309 + subq.l #2,%d2 + tst.l %d2 + jeq .L336 + mov3q.l #5,%d3 + remu.l %d3,%d1:%d0 + lea vector_scale_names,%a0 + move.l 32(%sp),%a1 + move.l (%a0,%d1.l*4),%a0 +.L316: + move.b (%a0)+,%d0 + move.b %d0,(%a1)+ + jne .L316 +.L307: + movem.l (%sp),#16412 + lea (28,%sp),%sp + rts +.L310: + mvz.b 16(%sp,%d2.l),%d0 + moveq #11,%d4 + cmp.l %d2,%d4 + jne .L337 + tst.l %d0 + jeq .L327 + move.l 32(%sp),%a1 + lea .LC4,%a0 +.L320: + move.b (%a0)+,%d0 + move.b %d0,(%a1)+ + jeq .L307 + move.b (%a0)+,%d0 + move.b %d0,(%a1)+ + jne .L320 + jra .L307 +.L335: move.b 269161676,%d0 - move.l 1187521622,%a0 - add.l #585088,%a0 + move.l 1187521622,%a1 + mov3q.l #3,%d2 move.b 269161679,%d1 + mvz.w #6322,%d3 + add.l #585088,%a1 + moveq #127,%d4 mvz.b %d0,%d0 and.l %d2,%d1 - lsl.l #4,%d0 + mulu.w #30,%d0 + move.l %d0,%a0 muls.l %d3,%d1 - move.l %d0,%a2 - lea (6206,%a2),%a2 - add.l %d1,%a0 - mvz.b (%a0,%a2.l),%d1 - cmp.l %d1,%d4 - jeq .L370 - moveq #49,%d1 -.L363: - move.l %a1,%a0 - mov3q.l #2,%d0 - move.b #49,(%a0)+ - clr.b %d4 + lea (497,%a0),%a0 + add.l %d1,%a1 + move.b (%a1,%a0.l),%d0 + and.l %d4,%d0 +.L309: + moveq #99,%d3 + cmp.l %d0,%d3 + jcc .L328 +.L339: + moveq #100,%d4 + moveq #10,%d3 + move.l %d0,%d1 + mov3q.l #2,%a6 + divu.l %d4,%d1 + move.l 32(%sp),%a0 + mov3q.l #3,%a1 + add.l #48,%d1 + move.b %d1,(%a0)+ + move.l %d0,%d1 + divu.l %d3,%d1 + move.l %d1,%d2 + remu.l %d3,%d4:%d2 + move.l %d4,%d1 + add.l #48,%d1 move.b %d1,(%a0) - move.b %d4,(%a1,%d0.l) - movem.l (%sp),#1052 - lea (16,%sp),%sp + move.l 32(%sp),%a0 + add.l %a6,%a0 +.L325: + moveq #10,%d2 + remu.l %d2,%d1:%d0 + clr.b %d3 + add.l #48,%d1 + move.b %d1,(%a0) + move.l 32(%sp),%a0 + move.b %d3,(%a0,%a1.l) + movem.l (%sp),#16412 + lea (28,%sp),%sp rts -.L370: - move.l 1187521622,%d1 - move.l %d0,%a0 - move.b 269161679,%d2 - move.l %d1,%d0 - mov3q.l #3,%d3 - mvz.w #6322,%d4 - add.l #585088,%d0 - lea (6195,%a0),%a0 - move.w %d2,%a2 - moveq #16,%d2 - move.l %a2,%d1 - and.l %d3,%d1 - muls.l %d4,%d1 - add.l %d1,%d0 - move.b (%a0,%d0.l),%d0 - add.l #64,%d0 - mvz.b %d0,%d0 - move.l %d0,%d1 +.L328: + move.l 32(%sp),%a0 + mov3q.l #1,%a1 + clr.l %d1 + moveq #9,%d2 cmp.l %d0,%d2 - jcs .L371 - move.l %d1,%d3 - moveq #10,%d4 - remu.l %d4,%d2:%d3 - moveq #9,%d3 - move.l %d2,%d1 + jcc .L325 +.L340: + move.l %a1,%a6 + moveq #10,%d3 + move.l %d1,%a1 + move.l %d0,%d1 + divu.l %d3,%d1 + addq.l #2,%a1 + move.l %d1,%d2 + remu.l %d3,%d4:%d2 + move.l %d4,%d1 add.l #48,%d1 - cmp.l %d0,%d3 - jcs .L363 -.L367: - clr.b %d4 - move.l %a1,%a0 - mov3q.l #1,%d0 move.b %d1,(%a0) - move.b %d4,(%a1,%d0.l) - movem.l (%sp),#1052 - lea (16,%sp),%sp - rts -.L371: - moveq #16,%d1 + move.l 32(%sp),%a0 + add.l %a6,%a0 + jra .L325 +.L327: + move.l 32(%sp),%a1 + lea .LC2,%a0 + jra .L320 +.L336: + moveq #12,%d2 + remu.l %d2,%d1:%d0 + lea (roots.6),%a0 + move.l 32(%sp),%a1 + move.l (%a0,%d1.l*4),%a0 + jra .L316 +.L337: moveq #10,%d4 - move.l %d1,%d3 - remu.l %d4,%d2:%d3 - moveq #9,%d3 - move.l %d2,%d1 - add.l #48,%d1 + cmp.l %d2,%d4 + jne .L318 + tst.l %d0 + jne .L309 + move.l 32(%sp),%a1 + lea .LC1,%a0 + jra .L320 +.L318: + subq.l #8,%d2 + tst.l %d2 + jne .L309 + move.l %d0,%d1 + add.l #-12,%d1 + tst.l %d1 + jlt .L338 + move.l %d1,%d0 + moveq #99,%d3 cmp.l %d0,%d3 - jcc .L367 - jra .L363 - .size midi_format_1, .-midi_format_1 + jcs .L339 + jra .L328 +.L338: + move.l 32(%sp),%a0 + moveq #12,%d2 + sub.l %d0,%d2 + move.l %d2,%d0 + mov3q.l #2,%a1 + move.b #45,(%a0)+ + mov3q.l #1,%d1 + moveq #9,%d2 + cmp.l %d0,%d2 + jcc .L325 + jra .L340 + .size format_control, .-format_control .align 2 - .type midi_format_5, @function -midi_format_5: - lea (-12,%sp),%sp - movem.l #28,(%sp) - mov3q.l #3,%d2 - mvz.w #6322,%d3 + .type format_10, @function +format_10: + moveq #10,%d0 + move.l %d0,8(%sp) + jra format_control + .size format_10, .-format_10 + .align 2 + .type format_8, @function +format_8: + moveq #8,%d0 + move.l %d0,8(%sp) + jra format_control + .size format_8, .-format_8 + .align 2 + .type format_6, @function +format_6: + mov3q.l #6,8(%sp) + jra format_control + .size format_6, .-format_6 + .align 2 + .type format_11, @function +format_11: + mvz.b 269161676,%d0 + lea (-12,%sp),%sp + lea (1,%sp),%a0 + move.l %d0,-(%sp) + jsr settings + addq.l #4,%sp + tst.b 11(%sp) + jeq .L350 + lea .LC4,%a0 move.l 16(%sp),%a1 - moveq #22,%d4 - move.b 269161676,%d0 - move.l 1187521622,%a0 - add.l #585088,%a0 - move.b 269161679,%d1 - mvz.b %d0,%d0 - and.l %d2,%d1 - lsl.l #4,%d0 - muls.l %d3,%d1 - move.l %d0,%d2 - add.l #6206,%d2 - add.l %d1,%a0 - mvz.b (%a0,%d2.l),%d1 - cmp.l %d1,%d4 - jeq .L381 - moveq #52,%d0 - move.l %a1,%a0 - mov3q.l #2,%d2 - moveq #56,%d1 - mov3q.l #1,%d3 - move.b %d0,(%a0) -.L376: - clr.b %d0 - move.b %d1,(%a1,%d3.l) - move.b %d0,(%a1,%d2.l) - movem.l (%sp),#28 +.L349: + move.b (%a0)+,%d0 + move.b %d0,(%a1)+ + jne .L349 lea (12,%sp),%sp rts -.L381: - move.l 1187521622,%d1 - move.l %d0,%a0 - move.b 269161679,%d2 - move.l %d1,%d0 - mov3q.l #3,%d1 - add.l #585088,%d0 - lea (6199,%a0),%a0 - and.l %d1,%d2 - muls.l %d3,%d2 - moveq #127,%d3 - add.l %d2,%d0 - move.b (%a0,%d0.l),%d0 - add.l #64,%d0 - mvz.b %d0,%d2 - move.l %d2,%d0 - cmp.l %d2,%d3 - jcs .L382 -.L374: - moveq #10,%d4 - moveq #99,%d3 - remu.l %d4,%d1:%d0 - divu.l %d4,%d0 - add.l #48,%d1 - cmp.l %d2,%d3 - jcc .L375 - move.l %d0,%d2 - move.l %a1,%a0 - remu.l %d4,%d3:%d2 - move.b #49,(%a0)+ - mov3q.l #3,%d2 - move.l %d3,%d0 - add.l #48,%d0 - mov3q.l #2,%d3 - move.b %d0,(%a0) - jra .L376 -.L382: - moveq #127,%d0 - jra .L374 -.L375: - moveq #9,%d4 - cmp.l %d2,%d4 - jcs .L383 - clr.b %d0 - clr.l %d3 - move.b %d1,(%a1,%d3.l) - mov3q.l #1,%d2 - move.b %d0,(%a1,%d2.l) - movem.l (%sp),#28 +.L350: + move.l 16(%sp),%a1 + lea .LC2,%a0 + jra .L349 + .size format_11, .-format_11 + .align 2 + .type format_3, @function +format_3: + lea (-12,%sp),%sp + move.l %d2,-(%sp) + mvz.b 269161676,%d0 + lea (5,%sp),%a0 + mov3q.l #5,%d2 + move.l %d0,-(%sp) + jsr settings + mvz.b 12(%sp),%d0 + addq.l #4,%sp + lea vector_scale_names,%a0 + remu.l %d2,%d1:%d0 + move.l 20(%sp),%a1 + move.l (%a0,%d1.l*4),%a0 +.L355: + move.b (%a0)+,%d0 + move.b %d0,(%a1)+ + jne .L355 + move.l (%sp)+,%d2 lea (12,%sp),%sp rts -.L383: - add.l #48,%d0 - move.l %a1,%a0 - mov3q.l #2,%d2 - move.b %d0,(%a0) - mov3q.l #1,%d3 - jra .L376 - .size midi_format_5, .-midi_format_5 + .size format_3, .-format_3 .align 2 - .type midi_format_6, @function -midi_format_6: - lea (-24,%sp),%sp - movem.l #1084,(%sp) - mov3q.l #3,%d3 - mvz.w #6322,%d4 - move.l 28(%sp),%a1 - moveq #22,%d5 + .type format_2, @function +format_2: + lea (-12,%sp),%sp + move.l %d2,-(%sp) + moveq #12,%d2 mvz.b 269161676,%d0 - move.l 1187521622,%a0 - add.l #585088,%a0 - move.b 269161679,%d1 - move.l %d0,%d2 - lsl.l #4,%d2 - and.l %d3,%d1 - move.l %d2,%a2 - lea (6206,%a2),%a2 - muls.l %d4,%d1 - add.l %d1,%a0 - mvz.b (%a0,%a2.l),%d1 - cmp.l %d1,%d5 - jeq .L385 - addq.l #1,%d0 -.L386: - moveq #99,%d4 - cmp.l %d0,%d4 - jcs .L392 - moveq #9,%d1 - cmp.l %d0,%d1 - jcs .L395 - moveq #10,%d5 - mov3q.l #1,%d2 - remu.l %d5,%d1:%d0 - clr.b %d0 - move.l %a1,%a0 - add.l #48,%d1 - move.b %d1,(%a0) - move.b %d0,(%a1,%d2.l) - movem.l (%sp),#1084 - lea (24,%sp),%sp + lea (5,%sp),%a0 + move.l %d0,-(%sp) + jsr settings + mvz.b 11(%sp),%d0 + addq.l #4,%sp + lea (roots.6),%a0 + remu.l %d2,%d1:%d0 + move.l 20(%sp),%a1 + move.l (%a0,%d1.l*4),%a0 +.L360: + move.b (%a0)+,%d0 + move.b %d0,(%a1)+ + jne .L360 + move.l (%sp)+,%d2 + lea (12,%sp),%sp rts -.L385: - move.l 1187521622,%a2 - mov3q.l #3,%d1 - move.b 269161679,%d0 - mvz.w #6322,%d3 - move.l %d2,%a0 - add.l #585088,%a2 - lea (6200,%a0),%a0 - and.l %d1,%d0 - muls.l %d3,%d0 - add.l %d0,%a2 - move.b (%a2,%a0.l),%d1 - add.l #64,%d1 - mvz.b %d1,%d0 - tst.b %d1 - jge .L386 - moveq #127,%d0 -.L392: - moveq #100,%d5 - moveq #10,%d3 - move.l %d0,%d1 - mov3q.l #1,%a2 - divu.l %d5,%d1 + .size format_2, .-format_2 + .align 2 + .type format_9, @function +format_9: + lea (-36,%sp),%sp + movem.l #16412,(%sp) + move.l 40(%sp),%a6 + lea (25,%sp),%a0 + mvz.b 269161676,%d0 + move.l %d0,-(%sp) + jsr settings + mvz.b 37(%sp),%d0 + addq.l #4,%sp + moveq #99,%d1 + cmp.l %d0,%d1 + jcc .L365 + moveq #100,%d2 mov3q.l #2,%a0 - add.l %a1,%a0 - mov3q.l #3,%d2 + move.l %d0,%d1 + mov3q.l #3,%a1 + divu.l %d2,%d1 + moveq #10,%d2 + add.l %a6,%a0 + mov3q.l #1,16(%sp) add.l #48,%d1 - move.b %d1,(%a1) + move.b %d1,(%a6) move.l %d0,%d1 - divu.l %d3,%d1 - move.l %d1,%d5 - remu.l %d3,%d4:%d5 - move.l %d4,%d1 + divu.l %d2,%d1 + move.l %d1,%d4 + remu.l %d2,%d3:%d4 + move.l 16(%sp),%d4 + move.l %d3,%d1 add.l #48,%d1 - move.b %d1,(%a1,%a2.l) -.L396: - moveq #10,%d5 - remu.l %d5,%d1:%d0 - clr.b %d0 + move.b %d1,(%a6,%d4.l) +.L367: + moveq #10,%d2 + remu.l %d2,%d1:%d0 + clr.b %d3 add.l #48,%d1 move.b %d1,(%a0) - move.b %d0,(%a1,%d2.l) - movem.l (%sp),#1084 - lea (24,%sp),%sp + move.b %d3,(%a6,%a1.l) + movem.l (%sp),#16412 + lea (36,%sp),%sp rts -.L395: - moveq #10,%d3 +.L365: + moveq #9,%d4 + cmp.l %d0,%d4 + jcs .L371 + moveq #10,%d2 + mov3q.l #1,%a1 + remu.l %d2,%d1:%d0 + clr.b %d3 + move.l %a6,%a0 + add.l #48,%d1 + move.b %d1,(%a0) + move.b %d3,(%a6,%a1.l) + movem.l (%sp),#16412 + lea (36,%sp),%sp + rts +.L371: + moveq #10,%d2 mov3q.l #1,%a0 move.l %d0,%d1 - sub.l %a2,%a2 - divu.l %d3,%d1 - mov3q.l #2,%d2 - add.l %a1,%a0 - move.l %d1,%d5 - remu.l %d3,%d4:%d5 - move.l %d4,%d1 + mov3q.l #2,%a1 + divu.l %d2,%d1 + clr.l 16(%sp) + add.l %a6,%a0 + move.l %d1,%d4 + remu.l %d2,%d3:%d4 + move.l 16(%sp),%d4 + move.l %d3,%d1 add.l #48,%d1 - move.b %d1,(%a1,%a2.l) - jra .L396 - .size midi_format_6, .-midi_format_6 + move.b %d1,(%a6,%d4.l) + jra .L367 + .size format_9, .-format_9 .align 2 - .type midi_format_7, @function -midi_format_7: - lea (-16,%sp),%sp - movem.l #1052,(%sp) - mov3q.l #3,%d2 - mvz.w #6322,%d3 - move.l 20(%sp),%a1 - moveq #22,%d4 - move.b 269161676,%d0 - move.l 1187521622,%a0 - add.l #585088,%a0 - move.b 269161679,%d1 - mvz.b %d0,%d0 - and.l %d2,%d1 - lsl.l #4,%d0 - muls.l %d3,%d1 - move.l %d0,%a2 - lea (6206,%a2),%a2 - add.l %d1,%a0 - mvz.b (%a0,%a2.l),%d1 - cmp.l %d1,%d4 - jeq .L405 - moveq #50,%d1 -.L398: - move.l %a1,%a0 - mov3q.l #2,%d0 - move.b #49,(%a0)+ - clr.b %d4 + .type format_7, @function +format_7: + lea (-36,%sp),%sp + movem.l #16412,(%sp) + move.l 40(%sp),%a6 + lea (25,%sp),%a0 + mvz.b 269161676,%d0 + move.l %d0,-(%sp) + jsr settings + mvz.b 35(%sp),%d0 + addq.l #4,%sp + moveq #99,%d1 + cmp.l %d0,%d1 + jcc .L373 + moveq #100,%d2 + mov3q.l #2,%a0 + move.l %d0,%d1 + mov3q.l #3,%a1 + divu.l %d2,%d1 + moveq #10,%d2 + add.l %a6,%a0 + mov3q.l #1,16(%sp) + add.l #48,%d1 + move.b %d1,(%a6) + move.l %d0,%d1 + divu.l %d2,%d1 + move.l %d1,%d4 + remu.l %d2,%d3:%d4 + move.l 16(%sp),%d4 + move.l %d3,%d1 + add.l #48,%d1 + move.b %d1,(%a6,%d4.l) +.L375: + moveq #10,%d2 + remu.l %d2,%d1:%d0 + clr.b %d3 + add.l #48,%d1 move.b %d1,(%a0) - move.b %d4,(%a1,%d0.l) - movem.l (%sp),#1052 - lea (16,%sp),%sp + move.b %d3,(%a6,%a1.l) + movem.l (%sp),#16412 + lea (36,%sp),%sp rts -.L405: - move.l 1187521622,%d1 - move.l %d0,%a0 - move.b 269161679,%d2 - move.l %d1,%d0 - mov3q.l #3,%d3 - mvz.w #6322,%d4 - add.l #585088,%d0 - lea (6201,%a0),%a0 - move.w %d2,%a2 - moveq #12,%d2 - move.l %a2,%d1 - and.l %d3,%d1 - muls.l %d4,%d1 - add.l %d1,%d0 - move.b (%a0,%d0.l),%d0 - add.l #64,%d0 - mvz.b %d0,%d0 - move.l %d0,%d1 - cmp.l %d0,%d2 - jcs .L406 - move.l %d1,%d3 - moveq #10,%d4 - remu.l %d4,%d2:%d3 - moveq #9,%d3 - move.l %d2,%d1 +.L373: + moveq #9,%d4 + cmp.l %d0,%d4 + jcs .L379 + moveq #10,%d2 + mov3q.l #1,%a1 + remu.l %d2,%d1:%d0 + clr.b %d3 + move.l %a6,%a0 add.l #48,%d1 - cmp.l %d0,%d3 - jcs .L398 -.L402: - clr.b %d4 - move.l %a1,%a0 - mov3q.l #1,%d0 move.b %d1,(%a0) - move.b %d4,(%a1,%d0.l) - movem.l (%sp),#1052 - lea (16,%sp),%sp + move.b %d3,(%a6,%a1.l) + movem.l (%sp),#16412 + lea (36,%sp),%sp rts -.L406: - moveq #12,%d1 - moveq #10,%d4 - move.l %d1,%d3 - remu.l %d4,%d2:%d3 - moveq #9,%d3 - move.l %d2,%d1 +.L379: + moveq #10,%d2 + mov3q.l #1,%a0 + move.l %d0,%d1 + mov3q.l #2,%a1 + divu.l %d2,%d1 + clr.l 16(%sp) + add.l %a6,%a0 + move.l %d1,%d4 + remu.l %d2,%d3:%d4 + move.l 16(%sp),%d4 + move.l %d3,%d1 add.l #48,%d1 - cmp.l %d0,%d3 - jcc .L402 - jra .L398 - .size midi_format_7, .-midi_format_7 + move.b %d1,(%a6,%d4.l) + jra .L375 + .size format_7, .-format_7 .align 2 - .type midi_format_9, @function -midi_format_9: - lea (-16,%sp),%sp - movem.l #1052,(%sp) - mov3q.l #3,%d2 - mvz.w #6322,%d3 - move.l 20(%sp),%a1 - moveq #22,%d4 - move.b 269161676,%d0 - move.l 1187521622,%a0 - add.l #585088,%a0 - move.b 269161679,%d1 - mvz.b %d0,%d0 - and.l %d2,%d1 - lsl.l #4,%d0 - muls.l %d3,%d1 - move.l %d0,%a2 - lea (6206,%a2),%a2 - add.l %d1,%a0 - mvz.b (%a0,%a2.l),%d1 - cmp.l %d1,%d4 - jeq .L414 - moveq #48,%d1 - clr.b %d4 - move.l %a1,%a2 - mov3q.l #1,%d2 - move.b %d1,(%a2) - move.b %d4,(%a1,%d2.l) - movem.l (%sp),#1052 - lea (16,%sp),%sp - rts -.L414: - move.l 1187521622,%d1 - move.l %d0,%a0 - move.b 269161679,%d2 - move.l %d1,%d0 - mov3q.l #3,%d1 - add.l #585088,%d0 - lea (6203,%a0),%a0 - and.l %d2,%d1 - moveq #63,%d2 - muls.l %d3,%d1 - add.l %d1,%d0 - move.b (%a0,%d0.l),%d0 - add.l #64,%d0 - mvz.b %d0,%d0 + .type format_5, @function +format_5: + lea (-36,%sp),%sp + movem.l #16412,(%sp) + move.l 40(%sp),%a6 + lea (25,%sp),%a0 + mvz.b 269161676,%d0 + move.l %d0,-(%sp) + jsr settings + mvz.b 34(%sp),%d0 + addq.l #4,%sp + moveq #99,%d1 + cmp.l %d0,%d1 + jcc .L381 + moveq #100,%d2 + mov3q.l #2,%a0 move.l %d0,%d1 - cmp.l %d0,%d2 - jcs .L415 - move.l %d1,%d3 - moveq #10,%d4 - remu.l %d4,%d2:%d3 - divu.l %d4,%d3 - move.l %a1,%a2 - move.l %d2,%d1 - move.l %d3,%a0 + mov3q.l #3,%a1 + divu.l %d2,%d1 + moveq #10,%d2 + add.l %a6,%a0 + mov3q.l #1,16(%sp) add.l #48,%d1 - moveq #9,%d3 - cmp.l %d0,%d3 - jcc .L411 -.L416: - move.l %a0,%d0 - add.l #48,%d0 - move.b %d0,(%a2)+ - clr.b %d4 - mov3q.l #2,%d2 - move.b %d1,(%a2) - move.b %d4,(%a1,%d2.l) - movem.l (%sp),#1052 - lea (16,%sp),%sp + move.b %d1,(%a6) + move.l %d0,%d1 + divu.l %d2,%d1 + move.l %d1,%d4 + remu.l %d2,%d3:%d4 + move.l 16(%sp),%d4 + move.l %d3,%d1 + add.l #48,%d1 + move.b %d1,(%a6,%d4.l) +.L383: + moveq #10,%d2 + remu.l %d2,%d1:%d0 + clr.b %d3 + add.l #48,%d1 + move.b %d1,(%a0) + move.b %d3,(%a6,%a1.l) + movem.l (%sp),#16412 + lea (36,%sp),%sp rts -.L415: - moveq #63,%d1 - moveq #10,%d4 - move.l %d1,%d3 - move.l %a1,%a2 - remu.l %d4,%d2:%d3 - divu.l %d4,%d3 - move.l %d2,%d1 - move.l %d3,%a0 +.L381: + moveq #9,%d4 + cmp.l %d0,%d4 + jcs .L387 + moveq #10,%d2 + mov3q.l #1,%a1 + remu.l %d2,%d1:%d0 + clr.b %d3 + move.l %a6,%a0 add.l #48,%d1 - moveq #9,%d3 - cmp.l %d0,%d3 - jcs .L416 -.L411: - clr.b %d4 - move.b %d1,(%a2) - mov3q.l #1,%d2 - move.b %d4,(%a1,%d2.l) - movem.l (%sp),#1052 - lea (16,%sp),%sp + move.b %d1,(%a0) + move.b %d3,(%a6,%a1.l) + movem.l (%sp),#16412 + lea (36,%sp),%sp rts - .size midi_format_9, .-midi_format_9 +.L387: + moveq #10,%d2 + mov3q.l #1,%a0 + move.l %d0,%d1 + mov3q.l #2,%a1 + divu.l %d2,%d1 + clr.l 16(%sp) + add.l %a6,%a0 + move.l %d1,%d4 + remu.l %d2,%d3:%d4 + move.l 16(%sp),%d4 + move.l %d3,%d1 + add.l #48,%d1 + move.b %d1,(%a6,%d4.l) + jra .L383 + .size format_5, .-format_5 .align 2 - .type midi_format_8, @function -midi_format_8: - lea (-16,%sp),%sp - movem.l #28,(%sp) - mov3q.l #3,%d2 - mvz.w #6322,%d3 - move.l 20(%sp),%a1 - moveq #22,%d4 - move.b 269161676,%d0 - move.l 1187521622,%a0 - add.l #585088,%a0 - move.b 269161679,%d1 - mvz.b %d0,%d0 - and.l %d2,%d1 - lsl.l #4,%d0 - muls.l %d3,%d1 - move.l %d0,%d2 - add.l #6206,%d2 - add.l %d1,%a0 - mvz.b (%a0,%d2.l),%d1 - cmp.l %d1,%d4 - jeq .L426 - moveq #48,%d0 - clr.b %d4 - move.l %a1,%a0 - mov3q.l #1,%d1 - move.b %d0,(%a0) - move.b %d4,(%a1,%d1.l) - movem.l (%sp),#28 - lea (16,%sp),%sp - rts -.L426: - move.l 1187521622,%d1 - move.l %d0,%a0 - move.b 269161679,%d2 - move.l %d1,%d0 - mov3q.l #3,%d1 - add.l #585088,%d0 - lea (6202,%a0),%a0 - and.l %d1,%d2 - muls.l %d3,%d2 - add.l %d2,%d0 - move.b (%a0,%d0.l),%d0 - moveq #24,%d2 - add.l #64,%d0 - mvz.b %d0,%d0 - cmp.l %d0,%d2 - jcs .L427 - move.l %d0,%d2 - add.l #-12,%d2 - tst.l %d2 - jge .L422 - move.b #45,(%a1) - moveq #12,%d2 - mov3q.l #1,%d1 - sub.l %d0,%d2 - mov3q.l #2,12(%sp) -.L420: - move.l %d2,%d3 - moveq #10,%d4 - remu.l %d4,%d0:%d3 - lea (%a1,%d1.l),%a0 - moveq #9,%d3 - add.l #48,%d0 - cmp.l %d2,%d3 - jge .L423 - clr.b %d4 - move.b #49,(%a0) - move.l 12(%sp),%a0 - add.l %a1,%a0 - move.b %d0,(%a0) - addq.l #2,%d1 - move.b %d4,(%a1,%d1.l) - movem.l (%sp),#28 - lea (16,%sp),%sp + .type format_4, @function +format_4: + lea (-36,%sp),%sp + movem.l #16412,(%sp) + move.l 40(%sp),%a6 + lea (25,%sp),%a0 + mvz.b 269161676,%d0 + move.l %d0,-(%sp) + jsr settings + mvz.b 33(%sp),%d0 + addq.l #4,%sp + moveq #99,%d1 + cmp.l %d0,%d1 + jcc .L389 + moveq #100,%d2 + mov3q.l #2,%a0 + move.l %d0,%d1 + mov3q.l #3,%a1 + divu.l %d2,%d1 + moveq #10,%d2 + add.l %a6,%a0 + mov3q.l #1,16(%sp) + add.l #48,%d1 + move.b %d1,(%a6) + move.l %d0,%d1 + divu.l %d2,%d1 + move.l %d1,%d4 + remu.l %d2,%d3:%d4 + move.l 16(%sp),%d4 + move.l %d3,%d1 + add.l #48,%d1 + move.b %d1,(%a6,%d4.l) +.L391: + moveq #10,%d2 + remu.l %d2,%d1:%d0 + clr.b %d3 + add.l #48,%d1 + move.b %d1,(%a0) + move.b %d3,(%a6,%a1.l) + movem.l (%sp),#16412 + lea (36,%sp),%sp rts -.L427: - moveq #12,%d2 -.L422: - mov3q.l #1,12(%sp) - clr.l %d1 - jra .L420 -.L423: - clr.b %d4 - move.l 12(%sp),%d1 - move.b %d0,(%a0) - move.b %d4,(%a1,%d1.l) - movem.l (%sp),#28 - lea (16,%sp),%sp +.L389: + moveq #9,%d4 + cmp.l %d0,%d4 + jcs .L395 + moveq #10,%d2 + mov3q.l #1,%a1 + remu.l %d2,%d1:%d0 + clr.b %d3 + move.l %a6,%a0 + add.l #48,%d1 + move.b %d1,(%a0) + move.b %d3,(%a6,%a1.l) + movem.l (%sp),#16412 + lea (36,%sp),%sp rts - .size midi_format_8, .-midi_format_8 +.L395: + moveq #10,%d2 + mov3q.l #1,%a0 + move.l %d0,%d1 + mov3q.l #2,%a1 + divu.l %d2,%d1 + clr.l 16(%sp) + add.l %a6,%a0 + move.l %d1,%d4 + remu.l %d2,%d3:%d4 + move.l 16(%sp),%d4 + move.l %d3,%d1 + add.l #48,%d1 + move.b %d1,(%a6,%d4.l) + jra .L391 + .size format_4, .-format_4 .align 2 - .type midi_generate, @function -midi_generate: - link.w %fp,#-136 - movem.l #15612,(%sp) - move.b 269161680,%d0 - move.l 1187521622,%d1 - add.l #-1073741824,%d1 - cmp.l #133169151,%d1 - jhi .L435 - mov3q.l #7,%d1 - cmp.l 8(%fp),%d1 - jcs .L435 - mvz.b %d0,%d1 - moveq #15,%d2 - cmp.l %d1,%d2 - jcs .L435 - move.l 1187521622,%d1 - ext.w %d0 - move.b 269161679,%d3 - mvz.w #2224,%d5 - move.l 8(%fp),%d4 - mulu.w #36568,%d0 - muls.l %d5,%d4 - move.b %d3,-61(%fp) - move.l %d1,%d3 - add.l #18640,%d3 - move.l %d4,%a0 - add.l %d0,%a0 - move.l %a0,-68(%fp) - lea (%a0,%d3.l),%a5 - tst.l 12(%fp) - jeq .L495 - move.l %d0,%a0 - move.l #36437,%a1 - add.l %d1,%a0 - tst.b (%a0,%a1.l) - jeq .L438 -.L497: - move.b 40(%a5),%d2 -.L439: - pea -56(%fp) - pea -51(%fp) - move.l 8(%fp),-(%sp) - jsr midi_params - mvz.b %d2,%d2 - lea (12,%sp),%sp - tst.l 16(%fp) - jeq .L440 - move.l -56(%fp),%d0 - moveq #127,%d6 - addq.l #1,%d0 - and.l %d0,%d6 - move.l %d6,-56(%fp) -.L440: - move.l 1187521622,%d0 - move.l %d2,%a0 - move.b 269161679,%d1 - subq.l #1,%a0 - moveq #63,%d4 - cmp.l %a0,%d4 - jcs .L435 - mov3q.l #3,%d5 - and.l %d5,%d1 - move.l %d0,%a2 - add.l #585088,%a2 - move.l 8(%fp),%d0 - mvz.w #6322,%d6 - lsl.l #5,%d0 - muls.l %d6,%d1 - add.l #994,%d0 - add.l %d1,%a2 - add.l %d0,%a2 - tst.b 1(%a2) - jlt .L435 - mvz.b 1(%a2),%d0 - moveq #127,%d1 - cmp.l %d0,%d1 - jcs .L435 - move.l -56(%fp),-(%sp) + .type format_1, @function +format_1: + lea (-36,%sp),%sp + movem.l #16412,(%sp) + move.l 40(%sp),%a6 + lea (25,%sp),%a0 + mvz.b 269161676,%d0 move.l %d0,-(%sp) - moveq #19,%d5 - move.l %d2,-(%sp) - pea -51(%fp) - pea phrase - jsr (vector_generate.part.0) - lea (20,%sp),%sp - move.l %fp,-84(%fp) - move.b (%a2),%d4 - mvz.b (%a2),%d0 - move.l %fp,%d1 - add.l #-40,%d1 - move.l %a5,%a0 - sub.l %d1,%a0 - move.l %a0,-60(%fp) - move.w %d0,%d2 - move.l -60(%fp),%a1 - move.l %d1,%a0 - mvz.b %d4,%d4 - mulu.w #43691,%d2 - lsr.l %d5,%d2 - muls.w #12,%d2 - sub.l %d2,%d0 - mvz.b %d0,%d0 - sub.l %d0,%d4 - move.l %d4,-72(%fp) -.L441: - move.b (%a1,%a0.l),%d0 - move.b %d0,(%a0)+ - cmp.l -84(%fp),%a0 - jne .L441 - move.l #268544542,%a1 - clr.l %d2 - sub.l %d3,%a1 - move.l %a1,-80(%fp) - move.l #268544541,%a1 - sub.l %d3,%a1 - move.l %a5,%d0 - add.l #80,%d0 - lea phrase,%a0 - lea (2097,%a5),%a3 - lea (50,%a5),%a2 - lea (49,%a5),%a4 - move.l %a1,-88(%fp) -.L460: - mov3q.l #7,%d7 - and.l %d2,%d7 - move.l %d2,%d5 - lsr.l #3,%d5 - mov3q.l #7,%a1 - mov3q.l #1,%d4 - move.l %d0,%a5 - sub.l %d5,%a1 - add.l %d1,%a1 - mvz.b (%a1),%d3 - lea (-32,%a5),%a5 - asr.l %d7,%d3 - and.l %d3,%d4 - move.l %d4,-96(%fp) - tst.b (%a0) - jeq .L442 - mvz.b 1(%a0),%d4 - mov3q.l #5,%d6 - add.l #-64,%d4 - move.l %d4,-76(%fp) - divs.l %d6,%d4 - move.l -72(%fp),%d6 - add.l %d4,%d6 - tst.l %d6 - jlt .L469 - moveq #127,%d4 - cmp.l %d6,%d4 - jge .L443 - moveq #127,%d6 -.L443: - mvz.b (%a5),%d4 - move.l %d4,-76(%fp) - mvz.b %d6,%d4 - cmp.l -76(%fp),%d4 - jeq .L465 -.L464: - move.b %d6,(%a5) - move.l -88(%fp),%a5 - move.b %d6,(%a5,%a4.l) - tst.b (%a0) - jeq .L444 -.L465: - move.b 3(%a0),%d4 - mvz.b (%a4),%d3 - mvz.b %d4,%d6 - cmp.l %d6,%d3 - jeq .L445 - move.l -88(%fp),%a5 - move.b %d4,(%a4) - move.b %d4,(%a5,%a2.l) - tst.b (%a0) - jne .L445 -.L446: - mvz.b (%a2),%d4 - cmp.l #255,%d4 - jeq .L496 - st %d4 -.L447: - move.l -80(%fp),%a5 - move.b %d4,(%a2) - move.b %d4,(%a5,%a2.l) - mov3q.l #1,%d4 - lsl.l %d7,%d4 - tst.b (%a0) - jeq .L449 - move.b (%a1),%d6 - or.l %d4,%d6 -.L450: - move.b %d6,(%a1) - tst.l -96(%fp) - jne .L451 - tst.b (%a0) - jeq .L452 -.L451: - move.l %a3,%a1 - tst.b -(%a1) - jeq .L453 + jsr settings + mvz.b 30(%sp),%d0 + addq.l #4,%sp + moveq #99,%d1 + cmp.l %d0,%d1 + jcc .L397 + moveq #100,%d2 + mov3q.l #2,%a0 + move.l %d0,%d1 + mov3q.l #3,%a1 + divu.l %d2,%d1 + moveq #10,%d2 + add.l %a6,%a0 + mov3q.l #1,16(%sp) + add.l #48,%d1 + move.b %d1,(%a6) + move.l %d0,%d1 + divu.l %d2,%d1 + move.l %d1,%d4 + remu.l %d2,%d3:%d4 + move.l 16(%sp),%d4 + move.l %d3,%d1 + add.l #48,%d1 + move.b %d1,(%a6,%d4.l) +.L399: + moveq #10,%d2 + remu.l %d2,%d1:%d0 clr.b %d3 - clr.b (%a1) - move.l -88(%fp),%a1 - move.b %d3,(%a1,%a3.l) -.L453: - tst.b (%a3) - jeq .L454 + add.l #48,%d1 + move.b %d1,(%a0) + move.b %d3,(%a6,%a1.l) + movem.l (%sp),#16412 + lea (36,%sp),%sp + rts +.L397: + moveq #9,%d4 + cmp.l %d0,%d4 + jcs .L403 + moveq #10,%d2 + mov3q.l #1,%a1 + remu.l %d2,%d1:%d0 clr.b %d3 - move.l -80(%fp),%a1 - clr.b (%a3) - move.b %d3,(%a1,%a3.l) -.L454: - move.w #15,%a5 - move.l %d4,%d7 - not.l %d7 - move.w #39,%a1 - sub.l %d5,%a5 - move.b (%a5,%d1.l),%d3 - sub.l %d5,%a1 - and.l %d7,%d3 - move.b %d3,(%a5,%d1.l) - move.b (%a1,%d1.l),%d3 - and.l %d7,%d3 - move.b %d3,(%a1,%d1.l) - move.b (%a0),%d3 - jeq .L452 - lea (locked.3),%a5 - move.b %d3,(%a5,%d2.l) - move.w #23,%a1 - sub.l %d5,%a1 - add.l %d1,%a1 - move.b (%a1),%d3 - and.l %d7,%d3 -.L459: - move.b %d3,(%a1) - addq.l #1,%d2 - addq.l #4,%a0 - addq.l #2,%a3 - lea (32,%a2),%a2 - add.l #32,%d0 - lea (32,%a4),%a4 - moveq #64,%d3 - cmp.l %d2,%d3 - jne .L460 - move.l #268544541,%a2 - sub.l %d1,%a2 - add.l -68(%fp),%a2 - move.l %d1,%a0 - move.l -60(%fp),%d1 - subq.l #1,%d1 -.L462: - move.b (%a0)+,%d0 - mvz.b (%a0,%d1.l),%d2 - mvz.b %d0,%d3 - cmp.l %d3,%d2 - jeq .L461 - move.b %d0,(%a0,%d1.l) - move.b %d0,(%a2,%a0.l) -.L461: - cmp.l -84(%fp),%a0 - jne .L462 - move.l -56(%fp),-(%sp) - pea -51(%fp) - move.l 8(%fp),-(%sp) - jsr midi_save - mov3q.l #3,%d4 - mov3q.l #1,%d2 - lea (12,%sp),%sp - move.b -61(%fp),%d0 - move.l 1187521622,%a0 - move.l %d2,%d1 - add.l #610376,%a0 - move.b (%a0),%d3 - and.l %d4,%d0 - lsl.l %d0,%d1 - or.l %d1,%d3 - move.b %d3,(%a0) - move.l #1187500772,%d3 - move.b 269161566,%d0 - or.l %d0,%d1 - move.b %d1,269161566 - move.l 1187521622,%a0 - add.l #635698,%a0 - mov3q.l #1,(%a0) - mov3q.l #1,269452696 - jsr 1073905152 - move.l 8(%fp),%d5 - move.l %d5,%d4 - lsl.l %d5,%d2 - lea (locked.3),%a0 - sub.l %a0,%d3 - not.l %d2 -.L463: - lea (%a0,%d3.l),%a1 - move.b (%a1),%d0 - move.b (%a0)+,%d1 - and.l %d2,%d0 - lsl.l %d4,%d1 - or.l %d1,%d0 - move.b %d0,(%a1) - cmp.l #locked.3+64,%a0 - jne .L463 - move.l 8(%fp),%a0 - pea 8(%a0) - jsr 1074387488 - movem.l -136(%fp),#15612 - addq.l #4,%sp - mov3q.l #1,%d0 - unlk %fp - rts -.L435: - movem.l -136(%fp),#15612 - clr.l %d0 - unlk %fp - rts -.L438: - mvz.w #36435,%d0 - move.b (%a0,%d0.l),%d2 - jra .L439 -.L495: - lea (24,%a5),%a1 - move.l %a5,%a0 -.L434: - addq.l #1,%a0 - tst.b -1(%a0) - jne .L435 - cmp.l %a0,%a1 - jne .L434 - lea (32,%a5),%a0 - lea (40,%a5),%a1 -.L436: - addq.l #1,%a0 - tst.b -1(%a0) - jne .L435 - cmp.l %a0,%a1 - jne .L436 - lea (48,%a5),%a0 - lea (2096,%a5),%a1 -.L437: - mvz.b (%a0),%d2 - addq.l #1,%a0 - cmp.l #255,%d2 - jne .L435 - cmp.l %a0,%a1 - jne .L437 - move.l %d0,%a0 - move.l #36437,%a1 - add.l %d1,%a0 - tst.b (%a0,%a1.l) - jeq .L438 - jra .L497 -.L444: - mvz.b (%a4),%d4 - cmp.l #255,%d4 - jeq .L446 - st %d4 - move.l -88(%fp),%a5 - move.b %d4,(%a4) - move.b %d4,(%a5,%a2.l) - tst.b (%a0) - jeq .L446 - jra .L445 -.L496: - mov3q.l #1,%d4 - lsl.l %d7,%d4 -.L449: - move.b (%a1),%d6 - move.l %d4,%d7 - not.l %d7 - and.l %d7,%d6 - jra .L450 -.L445: - move.b 2(%a0),%d4 - mvz.b (%a2),%d3 - mvz.b %d4,%d6 - cmp.l %d3,%d6 - jne .L447 - mov3q.l #1,%d4 - lsl.l %d7,%d4 - move.b (%a1),%d6 - or.l %d4,%d6 - jra .L450 -.L452: - move.l %d0,%a1 - lea (-29,%a1),%a1 -.L457: - mvz.b (%a1),%d3 - addq.l #1,%a1 - cmp.l #255,%d3 - jne .L456 - cmp.l %d0,%a1 - jne .L457 - clr.b %d3 - lea (locked.3),%a1 - move.b %d3,(%a1,%d2.l) -.L492: - move.w #23,%a1 - move.l %d4,%d7 - not.l %d7 - sub.l %d5,%a1 - add.l %d1,%a1 - move.b (%a1),%d3 - and.l %d7,%d3 - jra .L459 -.L456: - moveq #1,%d6 - lea (locked.3),%a1 - move.b %d6,(%a1,%d2.l) - tst.b (%a0) - jne .L492 - move.w #23,%a1 - sub.l %d5,%a1 - add.l %d1,%a1 - move.b (%a1),%d3 - or.l %d4,%d3 - jra .L459 -.L442: - mvz.b (%a5),%d4 - cmp.l #255,%d4 - jeq .L444 - st %d6 - move.b %d6,(%a5) - move.l -88(%fp),%a5 - move.b %d6,(%a5,%a4.l) - tst.b (%a0) - jne .L465 - jra .L444 -.L469: - clr.b %d6 - mvz.b (%a5),%d4 - move.l %d4,-76(%fp) - mvz.b %d6,%d4 - cmp.l -76(%fp),%d4 - jne .L464 - jra .L465 - .size midi_generate, .-midi_generate - .section .rodata.str1.1 -.LC5: - .string "VECTOR GENERATED" -.LC6: - .string "NO CHANGE" - .text - .align 2 - .type vector_midi_yes, @function -vector_midi_yes: - move.b 269161676,%d0 - mov3q.l #1,-(%sp) - mov3q.l #1,-(%sp) - mvz.b %d0,%d0 - move.l %d0,-(%sp) - jsr midi_generate - lea (12,%sp),%sp - tst.l %d0 - jeq .L500 - move.l #.LC5,%d0 - pea 32.w - move.l %d0,-(%sp) - jsr 1074111160 - addq.l #8,%sp - rts -.L500: - move.l #.LC6,%d0 - pea 32.w - move.l %d0,-(%sp) - jsr 1074111160 - addq.l #8,%sp - rts - .size vector_midi_yes, .-vector_midi_yes - .align 2 - .type vector_midi_knob, @function -vector_midi_knob: - link.w %fp,#-44 - movem.l #1036,(%sp) - mvz.b 269161676,%d2 - tst.l 16(%fp) - jeq .L504 - addq.l #6,8(%fp) -.L504: - pea -26(%fp) - pea -22(%fp) - move.l %d2,-(%sp) - jsr midi_params - lea (12,%sp),%sp - mov3q.l #5,%d3 - move.w -14(%fp),-3(%fp) - move.b -12(%fp),-1(%fp) - move.l -26(%fp),-32(%fp) - move.l -18(%fp),-7(%fp) - move.l -22(%fp),-11(%fp) - cmp.l 8(%fp),%d3 - jcs .L505 - lea (-22,%fp),%a0 - add.l 8(%fp),%a0 - mvz.b (%a0),%d0 - add.l 12(%fp),%d0 - tst.l %d0 - jlt .L524 - move.l 8(%fp),%d1 - lea vector_control_max,%a1 - mvz.b (%a1,%d1.l),%d1 - move.l %d1,%a1 - cmp.l %d1,%d0 - jge .L516 - move.l %d0,%a1 -.L516: - move.w %a1,%d0 - move.l 8(%fp),%d3 - move.b %d0,(%a0) - mvz.b %d0,%d0 - mvz.b -11(%fp,%d3.l),%d1 - cmp.l %d1,%d0 - jeq .L503 -.L514: - move.l -26(%fp),-(%sp) - pea -22(%fp) - move.l %d2,-(%sp) - jsr midi_save - clr.l -(%sp) - mov3q.l #1,-(%sp) - move.l %d2,-(%sp) - jsr midi_generate - lea (24,%sp),%sp - tst.l %d0 - jeq .L525 -.L503: - movem.l -44(%fp),#1036 - unlk %fp - rts -.L505: - mov3q.l #6,%d0 - cmp.l 8(%fp),%d0 - jeq .L508 - moveq #-22,%d1 - move.l 8(%fp),%a1 - add.l %fp,%d1 - subq.l #1,%a1 - add.l %a1,%d1 - move.l %d1,%a0 - mvz.b (%a0),%d0 - add.l 12(%fp),%d0 - tst.l %d0 - jlt .L526 - move.l 8(%fp),%d3 - lea vector_control_max,%a0 - mvz.b (%a0,%d3.l),%d3 - move.l %d3,%a0 - cmp.l %d3,%d0 - jlt .L527 - move.w %a0,%d0 - move.l %d1,%a2 - move.l %a1,8(%fp) - move.b %d0,(%a2) -.L530: - move.l 8(%fp),%d3 - mvz.b %d0,%d0 - mvz.b -11(%fp,%d3.l),%d1 - cmp.l %d1,%d0 - jne .L514 - jra .L503 -.L524: - clr.b (%a0) - clr.b %d0 - move.l 8(%fp),%d3 - mvz.b -11(%fp,%d3.l),%d1 - mvz.b %d0,%d0 - cmp.l %d1,%d0 - jne .L514 - jra .L503 -.L508: - move.l -32(%fp),%d0 - moveq #127,%d1 - add.l 12(%fp),%d0 - cmp.l %d0,%d1 - jlt .L528 - tst.l %d0 - jlt .L529 - move.l %d0,-26(%fp) - cmp.l -32(%fp),%d0 - jne .L514 -.L523: - movem.l -44(%fp),#1036 - unlk %fp - rts -.L528: - moveq #127,%d0 - move.l %d0,-26(%fp) - cmp.l -32(%fp),%d0 - jeq .L523 - jra .L514 -.L525: - move.l -32(%fp),-(%sp) - pea -11(%fp) - move.l %d2,-(%sp) - jsr midi_save - lea (12,%sp),%sp - movem.l -44(%fp),#1036 - unlk %fp - rts -.L527: - move.l %d0,%a0 - move.l %d1,%a2 - move.w %a0,%d0 - move.l %a1,8(%fp) - move.b %d0,(%a2) - jra .L530 -.L529: - clr.l %d0 - move.l %d0,-26(%fp) - cmp.l -32(%fp),%d0 - jeq .L523 - jra .L514 -.L526: - clr.b (%a0) - clr.b %d0 - move.l %a1,8(%fp) - move.l 8(%fp),%d3 - mvz.b -11(%fp,%d3.l),%d1 - mvz.b %d0,%d0 - cmp.l %d1,%d0 - jne .L514 - jra .L503 - .size vector_midi_knob, .-vector_midi_knob - .align 2 - .type vector_midi_assign.part.0, @function -vector_midi_assign.part.0: - clr.w %d0 - link.w %fp,#-12 - move.l 8(%fp),%a0 - pea 1(%a0) - pea -12(%fp) - move.l %a0,-(%sp) - move.l #137366540,%a0 - move.l %a0,-8(%fp) - move.w %d0,-4(%fp) - move.b %d0,-2(%fp) - move.l #185270273,%d0 - move.l %d0,-12(%fp) - jsr midi_save - clr.l -(%sp) - clr.l -(%sp) - move.l 8(%fp),-(%sp) - jsr midi_generate - lea (24,%sp),%sp - unlk %fp - rts - .size vector_midi_assign.part.0, .-vector_midi_assign.part.0 - .align 2 - .type vector_midi_assign, @function -vector_midi_assign: - tst.l 8(%sp) - jne .L537 + move.l %a6,%a0 + add.l #48,%d1 + move.b %d1,(%a0) + move.b %d3,(%a6,%a1.l) + movem.l (%sp),#16412 + lea (36,%sp),%sp rts -.L537: - jra (vector_midi_assign.part.0) - .size vector_midi_assign, .-vector_midi_assign +.L403: + moveq #10,%d2 + mov3q.l #1,%a0 + move.l %d0,%d1 + mov3q.l #2,%a1 + divu.l %d2,%d1 + clr.l 16(%sp) + add.l %a6,%a0 + move.l %d1,%d4 + remu.l %d2,%d3:%d4 + move.l 16(%sp),%d4 + move.l %d3,%d1 + add.l #48,%d1 + move.b %d1,(%a6,%d4.l) + jra .L399 + .size format_1, .-format_1 .align 2 - .type format_9, @function -format_9: + .type format_0, @function +format_0: lea (-36,%sp),%sp movem.l #16412,(%sp) move.l 40(%sp),%a6 @@ -3310,11 +2360,11 @@ format_9: mvz.b 269161676,%d0 move.l %d0,-(%sp) jsr settings - mvz.b 37(%sp),%d0 + mvz.b 29(%sp),%d0 addq.l #4,%sp moveq #99,%d1 cmp.l %d0,%d1 - jcc .L539 + jcc .L405 moveq #100,%d2 mov3q.l #2,%a0 move.l %d0,%d1 @@ -3333,7 +2383,7 @@ format_9: move.l %d3,%d1 add.l #48,%d1 move.b %d1,(%a6,%d4.l) -.L541: +.L407: moveq #10,%d2 remu.l %d2,%d1:%d0 clr.b %d3 @@ -3343,10 +2393,10 @@ format_9: movem.l (%sp),#16412 lea (36,%sp),%sp rts -.L539: +.L405: moveq #9,%d4 cmp.l %d0,%d4 - jcs .L545 + jcs .L411 moveq #10,%d2 mov3q.l #1,%a1 remu.l %d2,%d1:%d0 @@ -3358,7 +2408,7 @@ format_9: movem.l (%sp),#16412 lea (36,%sp),%sp rts -.L545: +.L411: moveq #10,%d2 mov3q.l #1,%a0 move.l %d0,%d1 @@ -3372,378 +2422,994 @@ format_9: move.l %d3,%d1 add.l #48,%d1 move.b %d1,(%a6,%d4.l) - jra .L541 - .size format_9, .-format_9 + jra .L407 + .size format_0, .-format_0 .align 2 - .type format_7, @function -format_7: - lea (-36,%sp),%sp - movem.l #16412,(%sp) - move.l 40(%sp),%a6 - lea (25,%sp),%a0 - mvz.b 269161676,%d0 - move.l %d0,-(%sp) - jsr settings - mvz.b 35(%sp),%d0 - addq.l #4,%sp - moveq #99,%d1 - cmp.l %d0,%d1 - jcc .L547 - moveq #100,%d2 - mov3q.l #2,%a0 - move.l %d0,%d1 - mov3q.l #3,%a1 - divu.l %d2,%d1 - moveq #10,%d2 - add.l %a6,%a0 - mov3q.l #1,16(%sp) - add.l #48,%d1 - move.b %d1,(%a6) - move.l %d0,%d1 - divu.l %d2,%d1 - move.l %d1,%d4 - remu.l %d2,%d3:%d4 - move.l 16(%sp),%d4 - move.l %d3,%d1 - add.l #48,%d1 - move.b %d1,(%a6,%d4.l) -.L549: - moveq #10,%d2 - remu.l %d2,%d1:%d0 - clr.b %d3 - add.l #48,%d1 - move.b %d1,(%a0) - move.b %d3,(%a6,%a1.l) - movem.l (%sp),#16412 - lea (36,%sp),%sp + .type midi_set_control, @function +midi_set_control: + lea (-44,%sp),%sp + moveq #12,%d0 + movem.l #1084,(%sp) + move.l 52(%sp),%d4 + move.l 48(%sp),%d2 + move.l 56(%sp),%d3 + cmp.l %d4,%d0 + jeq .L413 + mov3q.l #2,%d1 + cmp.l %d4,%d1 + jeq .L414 + moveq #13,%d5 + cmp.l %d4,%d5 + jeq .L415 + mov3q.l #4,%d0 + cmp.l %d4,%d0 + jeq .L431 +.L417: + move.l 1187521622,%a0 + mov3q.l #3,%d1 + move.b 269161679,%d0 + move.l %d2,%d5 + add.l #585088,%a0 + lsl.l #4,%d5 + and.l %d1,%d0 + mvz.w #6322,%d1 + move.l %d5,%a1 + moveq #22,%d5 + lea (6206,%a1),%a2 + move.l %a2,24(%sp) + muls.l %d1,%d0 + add.l %d0,%a0 + mvz.b (%a0,%a2.l),%d0 + cmp.l %d0,%d5 + jeq .L432 + lea midi_byte,%a0 + clr.l %d1 + lea (6194,%a1),%a1 + moveq #13,%d0 + move.l %a0,32(%sp) + move.l %a1,28(%sp) + cmp.l %d1,%d0 + jcs .L421 +.L433: + moveq #11,%d5 + cmp.l %d1,%d5 + jcs .L422 + mov3q.l #4,%d0 + cmp.l %d1,%d0 + jeq .L422 +.L423: + move.l %d1,-(%sp) + move.l #269161679,%a2 + move.l %d2,-(%sp) + move.l %d1,28(%sp) + jsr midi_control + mov3q.l #3,%d5 + move.l 1187521622,%a0 + add.l #585088,%a0 + move.b (%a2),51(%sp) + move.l 28(%sp),%d1 + move.l %d0,%a1 + move.l 40(%sp),%a2 + lea (-64,%a1),%a1 + move.l %a1,44(%sp) + mvz.b (%a2,%d1.l),%d0 + addq.l #8,%sp + lea (39,%sp),%a2 + move.l 28(%sp),%a1 + add.l %d0,%a1 + move.b 43(%sp),%d0 + and.l %d5,%d0 + mvz.w #6322,%d5 + muls.l %d5,%d0 + mov3q.l #3,%d5 + add.l %d0,%a0 + move.b (%a2),(%a0,%a1.l) + move.b 269161679,%d0 + and.l %d5,%d0 + mvz.w #6322,%d5 + muls.l %d5,%d0 + move.l %d0,%a0 + add.l #269110990,%a0 + move.b (%a2),(%a0,%a1.l) +.L422: + addq.l #1,%d1 + moveq #13,%d0 + cmp.l %d1,%d0 + jcc .L433 +.L421: + moveq #16,%d5 + cmp.l %d1,%d5 + jne .L423 + move.l 1187521622,%a0 + mov3q.l #3,%d1 + move.b 269161679,%d0 + mvz.w #6322,%d5 + add.l #585088,%a0 + move.l 24(%sp),%a1 + add.l #-64,%d3 + move.l 32(%sp),%a2 + mvz.b (%a2,%d4.l),%d2 + and.l %d1,%d0 + move.l 24(%sp),%d1 + muls.l %d5,%d0 + mov3q.l #3,%d5 + add.l %d0,%a0 + moveq #22,%d0 + move.b %d0,(%a0,%d1.l) + mvz.w #6322,%d1 + move.b 269161679,%d0 + and.l %d5,%d0 + moveq #22,%d5 + muls.l %d1,%d0 + mov3q.l #3,%d1 + move.l %d0,%a0 + add.l #269110990,%a0 + move.b %d5,(%a0,%a1.l) + mvz.w #6322,%d5 + move.l 28(%sp),%a1 + add.l %d2,%a1 + move.l 1187521622,%a0 + add.l #585088,%a0 + move.b 269161679,%d0 + and.l %d1,%d0 + muls.l %d5,%d0 + add.l %d0,%a0 + move.b %d3,(%a0,%a1.l) + move.b 269161679,%d0 + and.l %d1,%d0 + muls.l %d5,%d0 + move.l %d0,%a0 + add.l #269110990,%a0 + move.b %d3,(%a0,%a1.l) + movem.l (%sp),#1084 + lea (44,%sp),%sp rts -.L547: - moveq #9,%d4 - cmp.l %d0,%d4 - jcs .L553 - moveq #10,%d2 - mov3q.l #1,%a1 - remu.l %d2,%d1:%d0 - clr.b %d3 - move.l %a6,%a0 - add.l #48,%d1 - move.b %d1,(%a0) - move.b %d3,(%a6,%a1.l) - movem.l (%sp),#16412 - lea (36,%sp),%sp +.L413: + mov3q.l #2,-(%sp) + move.l %d2,-(%sp) + jsr midi_control + move.l %d2,56(%sp) + clr.l 60(%sp) + moveq #12,%d1 + muls.l %d1,%d3 + add.l %d0,%d3 + move.l %d3,64(%sp) + movem.l 8(%sp),#1084 + lea (52,%sp),%sp + jra midi_page1 +.L415: + move.l %d3,56(%sp) + move.l %d2,48(%sp) + movem.l (%sp),#1084 + mov3q.l #1,52(%sp) + lea (44,%sp),%sp + jra midi_page1 +.L431: + move.l %d3,56(%sp) + move.l %d2,48(%sp) + movem.l (%sp),#1084 + mov3q.l #2,52(%sp) + lea (44,%sp),%sp + jra midi_page1 +.L432: + lea midi_byte,%a0 + mov3q.l #3,%d1 + move.l %a0,32(%sp) + lea (6194,%a1),%a1 + add.l #-64,%d3 + move.l 1187521622,%a0 + add.l #585088,%a0 + move.l %a1,28(%sp) + mvz.w #6322,%d5 + move.b 269161679,%d0 + move.l 32(%sp),%a2 + move.l 28(%sp),%a1 + mvz.b (%a2,%d4.l),%d2 + add.l %d2,%a1 + and.l %d1,%d0 + muls.l %d5,%d0 + add.l %d0,%a0 + move.b %d3,(%a0,%a1.l) + move.b 269161679,%d0 + and.l %d1,%d0 + muls.l %d5,%d0 + move.l %d0,%a0 + add.l #269110990,%a0 + move.b %d3,(%a0,%a1.l) + movem.l (%sp),#1084 + lea (44,%sp),%sp rts -.L553: - moveq #10,%d2 - mov3q.l #1,%a0 - move.l %d0,%d1 - mov3q.l #2,%a1 - divu.l %d2,%d1 - clr.l 16(%sp) - add.l %a6,%a0 - move.l %d1,%d4 - remu.l %d2,%d3:%d4 - move.l 16(%sp),%d4 - move.l %d3,%d1 - add.l #48,%d1 - move.b %d1,(%a6,%d4.l) - jra .L549 - .size format_7, .-format_7 +.L414: + move.l 1187521622,%a1 + mov3q.l #3,%d1 + move.b 269161679,%d0 + move.l %d2,%d5 + add.l #585088,%a1 + lsl.l #5,%d5 + and.l %d1,%d0 + mvz.w #6322,%d1 + move.l %d5,%a0 + moveq #19,%d5 + lea (994,%a0),%a0 + muls.l %d1,%d0 + moveq #9,%d1 + add.l %d0,%a1 + mvz.b (%a1,%a0.l),%d0 + mulu.w #43691,%d0 + lsr.l %d5,%d0 + cmp.l %d0,%d1 + jcc .L418 + moveq #9,%d0 +.L418: + mulu.w #12,%d0 + move.l %d0,%a0 + pea (%a0,%d3.l) + clr.l -(%sp) + move.l %d2,-(%sp) + jsr midi_page1 + lea (12,%sp),%sp + jra .L417 + .size midi_set_control, .-midi_set_control .align 2 - .type format_5, @function -format_5: - lea (-36,%sp),%sp - movem.l #16412,(%sp) - move.l 40(%sp),%a6 - lea (25,%sp),%a0 - mvz.b 269161676,%d0 + .type midi_generate, @function +midi_generate: + link.w %fp,#-148 + movem.l #15612,(%sp) + move.b 269161680,%d0 + move.l 1187521622,%d1 + add.l #-1073741824,%d1 + cmp.l #133169151,%d1 + jhi .L441 + mov3q.l #7,%d1 + cmp.l 8(%fp),%d1 + jcs .L441 + mvz.b %d0,%d1 + moveq #15,%d2 + cmp.l %d1,%d2 + jcs .L441 + ext.w %d0 + mvz.w #2224,%d6 + move.l 1187521622,%d1 + move.l %d1,%a0 + move.l 8(%fp),%d4 + move.b 269161679,%d3 + mulu.w #36568,%d0 + muls.l %d6,%d4 + lea (18640,%a0),%a0 + move.l %d4,%a1 + add.l %d0,%a1 + move.b %d3,-61(%fp) + move.l %a1,-76(%fp) + lea (%a1,%a0.l),%a5 + tst.l 12(%fp) + jeq .L515 + move.l %d0,%a0 + move.l #36437,%a1 + add.l %d1,%a0 + tst.b (%a0,%a1.l) + jeq .L444 +.L519: + move.b 40(%a5),%d3 + clr.l %d2 + lea midi_control,%a2 + mvz.b %d3,%d3 +.L450: + mov3q.l #6,%d7 + cmp.l %d2,%d7 + jne .L446 + mov3q.l #7,%d2 +.L446: + move.l %d2,-(%sp) + move.l 8(%fp),-(%sp) + jsr (%a2) + addq.l #8,%sp + mov3q.l #5,%d1 + cmp.l %d2,%d1 + jcc .L516 + move.b %d0,-52(%fp,%d2.l) + addq.l #1,%d2 + moveq #12,%d4 + cmp.l %d2,%d4 + jne .L450 + mov3q.l #6,-(%sp) + move.l 8(%fp),-(%sp) + jsr (%a2) + addq.l #8,%sp + move.l %d0,-72(%fp) + tst.l 16(%fp) + jeq .L451 + addq.l #1,%d0 + moveq #127,%d6 + and.l %d0,%d6 + move.l %d6,-72(%fp) +.L451: + move.l 1187521622,%d0 + move.l %d3,%a0 + move.b 269161679,%d1 + subq.l #1,%a0 + moveq #63,%d7 + cmp.l %a0,%d7 + jcs .L441 + mov3q.l #3,%d2 + and.l %d2,%d1 + move.l %d0,%a3 + add.l #585088,%a3 + move.l 8(%fp),%d0 + mvz.w #6322,%d4 + lsl.l #5,%d0 + muls.l %d4,%d1 + add.l #994,%d0 + add.l %d1,%a3 + add.l %d0,%a3 + tst.b 1(%a3) + jlt .L441 + mvz.b 1(%a3),%d0 + moveq #127,%d6 + cmp.l %d0,%d6 + jcs .L441 + move.l -72(%fp),-(%sp) move.l %d0,-(%sp) - jsr settings - mvz.b 34(%sp),%d0 - addq.l #4,%sp - moveq #99,%d1 - cmp.l %d0,%d1 - jcc .L555 - moveq #100,%d2 - mov3q.l #2,%a0 - move.l %d0,%d1 - mov3q.l #3,%a1 - divu.l %d2,%d1 - moveq #10,%d2 - add.l %a6,%a0 - mov3q.l #1,16(%sp) - add.l #48,%d1 - move.b %d1,(%a6) - move.l %d0,%d1 - divu.l %d2,%d1 - move.l %d1,%d4 - remu.l %d2,%d3:%d4 - move.l 16(%sp),%d4 - move.l %d3,%d1 - add.l #48,%d1 - move.b %d1,(%a6,%d4.l) -.L557: - moveq #10,%d2 - remu.l %d2,%d1:%d0 - clr.b %d3 - add.l #48,%d1 - move.b %d1,(%a0) - move.b %d3,(%a6,%a1.l) - movem.l (%sp),#16412 - lea (36,%sp),%sp - rts -.L555: - moveq #9,%d4 - cmp.l %d0,%d4 - jcs .L561 - moveq #10,%d2 - mov3q.l #1,%a1 - remu.l %d2,%d1:%d0 - clr.b %d3 - move.l %a6,%a0 - add.l #48,%d1 - move.b %d1,(%a0) - move.b %d3,(%a6,%a1.l) - movem.l (%sp),#16412 + moveq #19,%d4 + move.l %d3,-(%sp) + pea -51(%fp) + pea phrase + jsr (vector_generate.part.0) + pea 15.w + move.l 8(%fp),-(%sp) + jsr (%a2) + pea 14.w + move.l 8(%fp),-(%sp) + move.l %d0,-92(%fp) + jsr (%a2) + move.b (%a3),%d3 + mvz.b (%a3),%d1 lea (36,%sp),%sp - rts -.L561: - moveq #10,%d2 - mov3q.l #1,%a0 - move.l %d0,%d1 - mov3q.l #2,%a1 - divu.l %d2,%d1 - clr.l 16(%sp) - add.l %a6,%a0 + move.l %a5,%a0 + move.l %d0,-84(%fp) + move.w %d1,%d2 + move.l %fp,%d0 + add.l #-40,%d0 + sub.l %d0,%a0 + move.l %a0,-56(%fp) + move.l -56(%fp),%a1 + move.l %d0,%a0 + mvz.b %d3,%d3 + move.l %fp,-100(%fp) + mulu.w #43691,%d2 + lsr.l %d4,%d2 + muls.w #12,%d2 + sub.l %d2,%d1 + mvz.b %d1,%d1 + sub.l %d1,%d3 + move.l %d3,-88(%fp) +.L452: + move.b (%a1,%a0.l),%d1 + move.b %d1,(%a0)+ + cmp.l -100(%fp),%a0 + jne .L452 + move.l -72(%fp),%d1 + move.l #-1640531527,%d6 + addq.l #1,%d1 + muls.l %d1,%d6 + move.l #-2048144789,%d1 + moveq #30,%d7 + move.l %d1,-96(%fp) + move.l -92(%fp),%d1 + clr.l %d2 + sub.l -84(%fp),%d7 + move.l -76(%fp),%a4 + add.l #268546638,%a4 + lea phrase,%a1 + add.l %d1,%d1 + move.l -76(%fp),%a3 + add.l #268544592,%a3 + move.l %d6,-68(%fp) + lea (2097,%a5),%a2 + move.l %d7,-60(%fp) + lea (80,%a5),%a0 + addq.l #1,%d1 + move.l %d1,-80(%fp) +.L477: + mov3q.l #7,%d6 + and.l %d2,%d6 + move.l %d2,%d3 + lsr.l #3,%d3 + lea (-32,%a0),%a5 + mov3q.l #1,%d4 + move.l %a5,-104(%fp) + mov3q.l #7,%a5 + sub.l %d3,%a5 + add.l %d0,%a5 + move.l %a5,-108(%fp) + mvz.b (%a5),%d1 + asr.l %d6,%d1 + and.l %d4,%d1 + tst.b (%a1) + jeq .L453 + mvz.b 1(%a1),%d4 + mov3q.l #5,%d7 + add.l #-64,%d4 + divs.l %d7,%d4 + move.l -88(%fp),%d5 + add.l %d4,%d5 + tst.l %d5 + jlt .L487 + moveq #127,%d4 + cmp.l %d5,%d4 + jge .L454 + moveq #127,%d5 +.L454: + move.l -104(%fp),%a5 + mvz.b %d5,%d4 + mvz.b (%a5),%d7 + cmp.l %d4,%d7 + jeq .L483 +.L482: + move.l -104(%fp),%a5 + move.b %d5,(%a5) + move.b %d5,-2(%a3) + tst.b (%a1) + jeq .L455 +.L483: + move.b 3(%a1),%d4 + mvz.b -31(%a0),%d7 + lea (-31,%a0),%a5 + move.l %a5,-104(%fp) + mvz.b %d4,%d5 + cmp.l %d7,%d5 + jeq .L456 + move.l -104(%fp),%a5 + move.b %d4,(%a5) + move.b %d4,-1(%a3) + tst.b (%a1) + jne .L456 +.L457: + mvz.b -30(%a0),%d4 + lea (-30,%a0),%a5 + move.l %a5,-104(%fp) + cmp.l #255,%d4 + jeq .L517 + st %d4 +.L458: + mov3q.l #1,%d5 + move.l -104(%fp),%a5 + lsl.l %d6,%d5 + move.b %d4,(%a5) + move.b %d4,(%a3) + tst.b (%a1) + jeq .L460 + move.l -108(%fp),%a5 + move.b (%a5),%d4 + or.l %d5,%d4 +.L461: + move.l -108(%fp),%a5 + move.b %d4,(%a5) + move.b (%a1),%d4 + tst.l %d1 + jne .L462 +.L520: + tst.b %d4 + jeq .L464 +.L463: + tst.l -92(%fp) + jeq .L490 + move.l -96(%fp),%d4 + moveq #15,%d6 + move.l -68(%fp),%d1 + move.l #739982445,%d7 + eor.l %d4,%d1 move.l %d1,%d4 - remu.l %d2,%d3:%d4 - move.l 16(%sp),%d4 - move.l %d3,%d1 - add.l #48,%d1 - move.b %d1,(%a6,%d4.l) - jra .L557 - .size format_5, .-format_5 - .align 2 - .type format_4, @function -format_4: - lea (-36,%sp),%sp - movem.l #16412,(%sp) - move.l 40(%sp),%a6 - lea (25,%sp),%a0 - mvz.b 269161676,%d0 - move.l %d0,-(%sp) - jsr settings - mvz.b 33(%sp),%d0 - addq.l #4,%sp - moveq #99,%d1 - cmp.l %d0,%d1 - jcc .L563 - moveq #100,%d2 - mov3q.l #2,%a0 - move.l %d0,%d1 - mov3q.l #3,%a1 - divu.l %d2,%d1 - moveq #10,%d2 - add.l %a6,%a0 - mov3q.l #1,16(%sp) - add.l #48,%d1 - move.b %d1,(%a6) - move.l %d0,%d1 - divu.l %d2,%d1 + lsr.l %d6,%d4 + moveq #12,%d6 + eor.l %d4,%d1 + muls.l %d7,%d1 + move.l -80(%fp),%d7 move.l %d1,%d4 - remu.l %d2,%d3:%d4 - move.l 16(%sp),%d4 - move.l %d3,%d1 - add.l #48,%d1 - move.b %d1,(%a6,%d4.l) -.L565: - moveq #10,%d2 - remu.l %d2,%d1:%d0 - clr.b %d3 - add.l #48,%d1 - move.b %d1,(%a0) - move.b %d3,(%a6,%a1.l) - movem.l (%sp),#16412 - lea (36,%sp),%sp + lsr.l %d6,%d4 + eor.l %d4,%d1 + remu.l %d7,%d4:%d1 + move.l %d4,%d1 + sub.l -92(%fp),%d1 + lsl.l #7,%d1 + and.l #8064,%d1 +.L466: + tst.l -84(%fp) + jeq .L468 + mov3q.l #3,%d4 + and.l %d2,%d4 + tst.l %d4 + jeq .L468 + or.l -60(%fp),%d1 +.L468: + move.l %d1,%d4 + lsr.l #8,%d4 +.L465: + move.l %a2,%a5 + mvz.b -(%a5),%d7 + mvz.b %d4,%d6 + cmp.l %d7,%d6 + jeq .L470 + move.b %d4,(%a5) + move.b %d4,(%a4) +.L470: + mvz.b (%a2),%d6 + mvz.b %d1,%d4 + cmp.l %d6,%d4 + jeq .L471 + move.b %d1,(%a2) + move.b %d1,1(%a4) +.L471: + clr.l %d1 + sub.l %d3,%d1 + move.l %d1,%d4 + add.l %d0,%d4 + move.l %d4,%a5 + move.l %d5,%d6 + move.b 15(%a5),%d1 + not.l %d6 + sub.l %a5,%a5 + sub.l %d3,%a5 + move.l %a5,%d7 + move.l %d4,%a5 + add.l %d0,%d7 + and.l %d6,%d1 + move.b %d1,15(%a5) + move.l %d7,%a5 + move.b 39(%a5),%d1 + and.l %d6,%d1 + move.b %d1,39(%a5) + move.b (%a1),%d1 + jeq .L464 + lea (locked.4),%a5 + move.b %d1,(%a5,%d2.l) + move.w #23,%a5 + sub.l %d3,%a5 + add.l %d0,%a5 + move.b (%a5),%d1 + and.l %d6,%d1 +.L476: + move.b %d1,(%a5) + move.l #-2048144789,%d1 + addq.l #1,%d2 + addq.l #4,%a1 + addq.l #2,%a2 + addq.l #2,%a4 + add.l %d1,-96(%fp) + lea (32,%a3),%a3 + lea (32,%a0),%a0 + move.l #phrase+256,%d3 + cmp.l %d3,%a1 + jne .L477 + move.l #268544541,%a2 + sub.l %d0,%a2 + add.l -76(%fp),%a2 + move.l -56(%fp),%d1 + move.l %d0,%a0 + subq.l #1,%d1 +.L479: + move.b (%a0)+,%d0 + mvz.b (%a0,%d1.l),%d2 + mvz.b %d0,%d3 + cmp.l %d3,%d2 + jeq .L478 + move.b %d0,(%a0,%d1.l) + move.b %d0,(%a2,%a0.l) +.L478: + cmp.l -100(%fp),%a0 + jne .L479 + tst.l 16(%fp) + jne .L518 + move.b -61(%fp),%d0 + mov3q.l #3,%d4 + mov3q.l #1,%d2 + move.l 1187521622,%a0 + move.l %d2,%d1 + add.l #610376,%a0 + move.b (%a0),%d3 + and.l %d4,%d0 + lsl.l %d0,%d1 + or.l %d1,%d3 + move.b %d3,(%a0) + move.l #1187500772,%d3 + move.b 269161566,%d0 + or.l %d0,%d1 + move.b %d1,269161566 + move.l 1187521622,%a0 + add.l #635698,%a0 + mov3q.l #1,(%a0) + mov3q.l #1,269452696 + jsr 1073905152 + move.l 8(%fp),%d6 + move.l %d6,%d4 + lsl.l %d6,%d2 + lea (locked.4),%a0 + sub.l %a0,%d3 + not.l %d2 +.L481: + lea (%a0,%d3.l),%a1 + move.b (%a1),%d0 + move.b (%a0)+,%d1 + and.l %d2,%d0 + lsl.l %d4,%d1 + or.l %d1,%d0 + move.b %d0,(%a1) + cmp.l #locked.4+64,%a0 + jne .L481 + move.l 8(%fp),%a0 + pea 8(%a0) + jsr 1074387488 + movem.l -148(%fp),#15612 + addq.l #4,%sp + mov3q.l #1,%d0 + unlk %fp rts -.L563: - moveq #9,%d4 - cmp.l %d0,%d4 - jcs .L569 - moveq #10,%d2 - mov3q.l #1,%a1 - remu.l %d2,%d1:%d0 - clr.b %d3 - move.l %a6,%a0 - add.l #48,%d1 - move.b %d1,(%a0) - move.b %d3,(%a6,%a1.l) - movem.l (%sp),#16412 - lea (36,%sp),%sp +.L441: + movem.l -148(%fp),#15612 + clr.l %d0 + unlk %fp rts -.L569: - moveq #10,%d2 - mov3q.l #1,%a0 - move.l %d0,%d1 - mov3q.l #2,%a1 - divu.l %d2,%d1 - clr.l 16(%sp) - add.l %a6,%a0 - move.l %d1,%d4 - remu.l %d2,%d3:%d4 - move.l 16(%sp),%d4 - move.l %d3,%d1 - add.l #48,%d1 - move.b %d1,(%a6,%d4.l) - jra .L565 - .size format_4, .-format_4 +.L444: + mvz.w #36435,%d0 + clr.l %d2 + lea midi_control,%a2 + move.b (%a0,%d0.l),%d3 + mvz.b %d3,%d3 + jra .L450 +.L515: + lea (24,%a5),%a1 + move.l %a5,%a0 +.L440: + addq.l #1,%a0 + tst.b -1(%a0) + jne .L441 + cmp.l %a1,%a0 + jne .L440 + lea (32,%a5),%a0 + lea (40,%a5),%a1 +.L442: + addq.l #1,%a0 + tst.b -1(%a0) + jne .L441 + cmp.l %a1,%a0 + jne .L442 + lea (48,%a5),%a0 + lea (2096,%a5),%a1 +.L443: + mvz.b (%a0),%d2 + addq.l #1,%a0 + cmp.l #255,%d2 + jne .L441 + cmp.l %a1,%a0 + jne .L443 + move.l %d0,%a0 + move.l #36437,%a1 + add.l %d1,%a0 + tst.b (%a0,%a1.l) + jeq .L444 + jra .L519 +.L516: + move.b %d0,-51(%fp,%d2.l) + addq.l #1,%d2 + jra .L450 +.L455: + mvz.b -31(%a0),%d4 + lea (-31,%a0),%a5 + move.l %a5,-104(%fp) + cmp.l #255,%d4 + jeq .L457 + st %d4 + move.l -104(%fp),%a5 + move.b %d4,(%a5) + move.b %d4,-1(%a3) + tst.b (%a1) + jeq .L457 + jra .L456 +.L517: + mov3q.l #1,%d5 + lsl.l %d6,%d5 +.L460: + move.l -108(%fp),%a5 + move.l %d5,%d6 + not.l %d6 + move.b (%a5),%d4 + move.l -108(%fp),%a5 + and.l %d6,%d4 + move.b %d4,(%a5) + move.b (%a1),%d4 + tst.l %d1 + jeq .L520 +.L462: + tst.b %d4 + jne .L463 + clr.b %d1 + jra .L465 +.L456: + move.b 2(%a1),%d4 + mvz.b -30(%a0),%d5 + lea (-30,%a0),%a5 + move.l %a5,-104(%fp) + mvz.b %d4,%d7 + cmp.l %d7,%d5 + jne .L458 + move.l -108(%fp),%a5 + mov3q.l #1,%d5 + lsl.l %d6,%d5 + move.b (%a5),%d4 + or.l %d5,%d4 + jra .L461 +.L464: + lea (-29,%a0),%a5 +.L474: + mvz.b (%a5),%d1 + addq.l #1,%a5 + cmp.l #255,%d1 + jne .L473 + cmp.l %a0,%a5 + jne .L474 + clr.b %d1 + lea (locked.4),%a5 + move.b %d1,(%a5,%d2.l) +.L512: + move.w #23,%a5 + move.l %d5,%d6 + not.l %d6 + sub.l %d3,%a5 + add.l %d0,%a5 + move.b (%a5),%d1 + and.l %d6,%d1 + jra .L476 +.L518: + move.l -72(%fp),-(%sp) + mov3q.l #6,-(%sp) + move.l 8(%fp),-(%sp) + jsr midi_set_control + mov3q.l #3,%d4 + mov3q.l #1,%d2 + lea (12,%sp),%sp + move.b -61(%fp),%d0 + move.l 1187521622,%a0 + move.l %d2,%d1 + add.l #610376,%a0 + move.b (%a0),%d3 + and.l %d4,%d0 + lsl.l %d0,%d1 + or.l %d1,%d3 + move.b %d3,(%a0) + move.l #1187500772,%d3 + move.b 269161566,%d0 + or.l %d0,%d1 + move.b %d1,269161566 + move.l 1187521622,%a0 + add.l #635698,%a0 + mov3q.l #1,(%a0) + mov3q.l #1,269452696 + jsr 1073905152 + move.l 8(%fp),%d6 + move.l %d6,%d4 + lsl.l %d6,%d2 + lea (locked.4),%a0 + sub.l %a0,%d3 + not.l %d2 + jra .L481 +.L473: + moveq #1,%d1 + lea (locked.4),%a5 + move.b %d1,(%a5,%d2.l) + tst.b (%a1) + jne .L512 + move.w #23,%a5 + sub.l %d3,%a5 + add.l %d0,%a5 + move.b (%a5),%d1 + or.l %d5,%d1 + jra .L476 +.L453: + move.l -104(%fp),%a5 + mvz.b (%a5),%d4 + cmp.l #255,%d4 + jeq .L455 + st %d5 + move.l -104(%fp),%a5 + move.b %d5,(%a5) + move.b %d5,-2(%a3) + tst.b (%a1) + jne .L483 + jra .L455 +.L487: + clr.b %d5 + move.l -104(%fp),%a5 + mvz.b (%a5),%d7 + mvz.b %d5,%d4 + cmp.l %d4,%d7 + jne .L482 + jra .L483 +.L490: + clr.l %d1 + jra .L466 + .size midi_generate, .-midi_generate + .section .rodata.str1.1 +.LC5: + .string "VECTOR GENERATED" +.LC6: + .string "NO CHANGE" + .text .align 2 - .type format_1, @function -format_1: - lea (-36,%sp),%sp - movem.l #16412,(%sp) - move.l 40(%sp),%a6 - lea (25,%sp),%a0 - mvz.b 269161676,%d0 + .type vector_midi_yes, @function +vector_midi_yes: + move.b 269161676,%d0 + mov3q.l #1,-(%sp) + mov3q.l #1,-(%sp) + mvz.b %d0,%d0 move.l %d0,-(%sp) - jsr settings - mvz.b 30(%sp),%d0 - addq.l #4,%sp - moveq #99,%d1 - cmp.l %d0,%d1 - jcc .L571 - moveq #100,%d2 - mov3q.l #2,%a0 - move.l %d0,%d1 - mov3q.l #3,%a1 - divu.l %d2,%d1 - moveq #10,%d2 - add.l %a6,%a0 - mov3q.l #1,16(%sp) - add.l #48,%d1 - move.b %d1,(%a6) - move.l %d0,%d1 - divu.l %d2,%d1 - move.l %d1,%d4 - remu.l %d2,%d3:%d4 - move.l 16(%sp),%d4 - move.l %d3,%d1 - add.l #48,%d1 - move.b %d1,(%a6,%d4.l) -.L573: - moveq #10,%d2 - remu.l %d2,%d1:%d0 - clr.b %d3 - add.l #48,%d1 - move.b %d1,(%a0) - move.b %d3,(%a6,%a1.l) - movem.l (%sp),#16412 - lea (36,%sp),%sp + jsr midi_generate + lea (12,%sp),%sp + tst.l %d0 + jeq .L523 + move.l #.LC5,%d0 + pea 32.w + move.l %d0,-(%sp) + jsr 1074111160 + addq.l #8,%sp rts -.L571: - moveq #9,%d4 - cmp.l %d0,%d4 - jcs .L577 - moveq #10,%d2 - mov3q.l #1,%a1 - remu.l %d2,%d1:%d0 - clr.b %d3 - move.l %a6,%a0 - add.l #48,%d1 - move.b %d1,(%a0) - move.b %d3,(%a6,%a1.l) - movem.l (%sp),#16412 - lea (36,%sp),%sp +.L523: + move.l #.LC6,%d0 + pea 32.w + move.l %d0,-(%sp) + jsr 1074111160 + addq.l #8,%sp rts -.L577: - moveq #10,%d2 - mov3q.l #1,%a0 - move.l %d0,%d1 - mov3q.l #2,%a1 - divu.l %d2,%d1 - clr.l 16(%sp) - add.l %a6,%a0 - move.l %d1,%d4 - remu.l %d2,%d3:%d4 - move.l 16(%sp),%d4 - move.l %d3,%d1 - add.l #48,%d1 - move.b %d1,(%a6,%d4.l) - jra .L573 - .size format_1, .-format_1 + .size vector_midi_yes, .-vector_midi_yes .align 2 - .type format_0, @function -format_0: - lea (-36,%sp),%sp - movem.l #16412,(%sp) - move.l 40(%sp),%a6 - lea (25,%sp),%a0 - mvz.b 269161676,%d0 + .type vector_midi_knob, @function +vector_midi_knob: + lea (-16,%sp),%sp + move.l %d2,-(%sp) + move.l 28(%sp),%a1 + mov3q.l #5,%d2 + move.b 269161676,%d1 + move.l 24(%sp),%d0 + move.l 32(%sp),12(%sp) + cmp.l %a1,%d2 + jcs .L526 + tst.l %d0 + jeq .L528 + mov3q.l #1,%d0 + and.l 36(%sp),%d0 + addq.l #1,%d0 +.L528: + mov3q.l #6,%d2 + muls.l %d2,%d0 + moveq #15,%d2 + move.l %d0,%a0 + add.l #midi_layout,%a0 + mvz.b (%a0,%a1.l),%d0 + cmp.l %d0,%d2 + jcc .L537 +.L526: + move.l (%sp)+,%d2 + lea (16,%sp),%sp + rts +.L537: + mvz.b %d1,%d1 + move.l %d1,16(%sp) move.l %d0,-(%sp) - jsr settings - mvz.b 29(%sp),%d0 - addq.l #4,%sp - moveq #99,%d1 - cmp.l %d0,%d1 - jcc .L579 - moveq #100,%d2 - mov3q.l #2,%a0 - move.l %d0,%d1 - mov3q.l #3,%a1 - divu.l %d2,%d1 - moveq #10,%d2 - add.l %a6,%a0 - mov3q.l #1,16(%sp) - add.l #48,%d1 - move.b %d1,(%a6) + move.l %d1,-(%sp) + move.l %d0,12(%sp) + jsr midi_control + move.l %d0,%a1 + add.l 20(%sp),%d0 + addq.l #8,%sp + move.l 4(%sp),%a0 + tst.l %d0 + jlt .L531 + move.l #midi_max,%d1 + mvz.b (%a0,%d1.l),%d1 + cmp.l %d1,%d0 + jge .L529 move.l %d0,%d1 - divu.l %d2,%d1 - move.l %d1,%d4 - remu.l %d2,%d3:%d4 - move.l 16(%sp),%d4 +.L529: + cmp.l %a1,%d1 + jeq .L526 + move.l %d1,-(%sp) + move.l %a0,-(%sp) + move.l 24(%sp),-(%sp) + move.l %a0,16(%sp) + move.l %a1,20(%sp) + jsr midi_set_control + clr.l -(%sp) + mov3q.l #1,-(%sp) + move.l 36(%sp),-(%sp) + jsr midi_generate + lea (24,%sp),%sp + move.l 4(%sp),%a0 + tst.l %d0 + jne .L526 + move.l 8(%sp),32(%sp) + move.l %a0,28(%sp) + move.l 16(%sp),24(%sp) + move.l (%sp)+,%d2 + lea (16,%sp),%sp + jra midi_set_control +.L531: + clr.l %d1 + jra .L529 + .size vector_midi_knob, .-vector_midi_knob + .align 2 + .type vector_midi_assign.part.0, @function +vector_midi_assign.part.0: + lea (-16,%sp),%sp + movem.l #1052,(%sp) + move.l 1187521622,%a0 + mov3q.l #3,%d2 + move.l 20(%sp),%d3 move.l %d3,%d1 - add.l #48,%d1 - move.b %d1,(%a6,%d4.l) -.L581: - moveq #10,%d2 - remu.l %d2,%d1:%d0 - clr.b %d3 - add.l #48,%d1 - move.b %d1,(%a0) - move.b %d3,(%a6,%a1.l) - movem.l (%sp),#16412 - lea (36,%sp),%sp + lsl.l #5,%d1 + mvz.w #6322,%d4 + add.l #585088,%a0 + move.b 269161679,%d0 + move.l %d1,%a1 + lea (994,%a1),%a1 + and.l %d2,%d0 + muls.l %d4,%d0 + add.l %d0,%a0 + mvz.b (%a0,%a1.l),%d2 + move.l %d3,%a0 + pea 1(%a0) + mov3q.l #6,-(%sp) + move.l %d3,-(%sp) + jsr midi_set_control + lea (12,%sp),%sp + moveq #119,%d0 + cmp.l %d2,%d0 + jcs .L541 + move.l %d2,%d1 + moveq #12,%d4 + remu.l %d4,%d0:%d1 + lea midi_page1,%a2 + sub.l %d0,%d2 + move.l %d2,-(%sp) + clr.l -(%sp) + move.l %d3,-(%sp) + jsr (%a2) + lea (12,%sp),%sp + mov3q.l #3,%d2 +.L540: + pea 64.w + move.l %d2,-(%sp) + move.l %d3,-(%sp) + jsr (%a2) + addq.l #1,%d2 + lea (12,%sp),%sp + mov3q.l #6,%d0 + cmp.l %d2,%d0 + jne .L540 + clr.l -(%sp) + clr.l -(%sp) + move.l %d3,-(%sp) + jsr midi_generate + movem.l 12(%sp),#1052 + lea (28,%sp),%sp rts -.L579: - moveq #9,%d4 - cmp.l %d0,%d4 - jcs .L585 - moveq #10,%d2 - mov3q.l #1,%a1 - remu.l %d2,%d1:%d0 - clr.b %d3 - move.l %a6,%a0 - add.l #48,%d1 - move.b %d1,(%a0) - move.b %d3,(%a6,%a1.l) - movem.l (%sp),#16412 - lea (36,%sp),%sp +.L541: + moveq #108,%d2 + move.l %d2,-(%sp) + clr.l -(%sp) + move.l %d3,-(%sp) + lea midi_page1,%a2 + mov3q.l #3,%d2 + jsr (%a2) + lea (12,%sp),%sp + jra .L540 + .size vector_midi_assign.part.0, .-vector_midi_assign.part.0 + .align 2 + .type vector_midi_assign, @function +vector_midi_assign: + tst.l 8(%sp) + jne .L549 rts -.L585: - moveq #10,%d2 - mov3q.l #1,%a0 - move.l %d0,%d1 - mov3q.l #2,%a1 - divu.l %d2,%d1 - clr.l 16(%sp) - add.l %a6,%a0 - move.l %d1,%d4 - remu.l %d2,%d3:%d4 - move.l 16(%sp),%d4 - move.l %d3,%d1 - add.l #48,%d1 - move.b %d1,(%a6,%d4.l) - jra .L581 - .size format_0, .-format_0 +.L549: + jra (vector_midi_assign.part.0) + .size vector_midi_assign, .-vector_midi_assign .align 2 .globl vector_next_seed .type vector_next_seed, @function @@ -3766,86 +3432,86 @@ vector_pack: move.b 3(%a0),%d0 mvz.b %d0,%d1 cmp.l %d1,%d2 - jcc .L589 + jcc .L553 moveq #4,%d0 -.L589: +.L553: move.b (%a0),%d1 lsl.l #4,%d0 moveq #15,%d3 mvz.b %d1,%d2 cmp.l %d2,%d3 - jcc .L590 + jcc .L554 moveq #15,%d1 -.L590: +.L554: or.l %d1,%d0 move.b %d0,(%a1) move.b 10(%a0),%d0 - jeq .L591 + jeq .L555 moveq #1,%d0 -.L591: +.L555: move.b 1(%a0),%d1 lsl.l #5,%d0 moveq #16,%d3 mvz.b %d1,%d2 cmp.l %d2,%d3 - jcc .L592 + jcc .L556 moveq #16,%d1 -.L592: +.L556: or.l %d1,%d0 moveq #12,%d2 move.b %d0,1(%a1) move.b 6(%a0),%d0 mvz.b %d0,%d1 cmp.l %d1,%d2 - jcc .L593 + jcc .L557 moveq #12,%d0 -.L593: +.L557: move.b 2(%a0),%d1 lsl.l #4,%d0 moveq #11,%d3 mvz.b %d1,%d2 cmp.l %d2,%d3 - jcc .L594 + jcc .L558 moveq #11,%d1 -.L594: +.L558: or.l %d1,%d0 moveq #126,%d2 move.b %d0,2(%a1) move.b 4(%a0),%d0 mvz.b %d0,%d1 cmp.l %d1,%d2 - jcc .L595 + jcc .L559 moveq #126,%d0 -.L595: +.L559: move.b %d0,3(%a1) move.b 5(%a0),%d0 - jpl .L596 + jpl .L560 moveq #127,%d0 -.L596: +.L560: move.b %d0,4(%a1) moveq #24,%d3 move.b 7(%a0),%d0 mvz.b %d0,%d1 cmp.l %d1,%d3 - jcc .L597 + jcc .L561 moveq #24,%d0 -.L597: +.L561: move.b %d0,5(%a1) moveq #63,%d2 move.b 8(%a0),%d0 mvz.b %d0,%d1 cmp.l %d1,%d2 - jcc .L598 + jcc .L562 moveq #63,%d0 -.L598: +.L562: move.b %d0,6(%a1) moveq #64,%d3 move.b 9(%a0),%d0 mvz.b %d0,%d1 cmp.l %d1,%d3 - jcc .L599 + jcc .L563 moveq #64,%d0 -.L599: +.L563: moveq #127,%d1 and.l 20(%sp),%d1 move.b %d0,7(%a1) @@ -3868,11 +3534,11 @@ save_settings: sub.l %a6,%a6 lea (12,%sp),%sp mulu.w #30,%d3 -.L608: +.L572: move.b (%a4)+,%d2 mov3q.l #2,%d0 cmp.l %a6,%d0 - jcc .L612 + jcc .L576 move.l #269161679,%a3 mov3q.l #3,%d4 move.b (%a3),%d0 @@ -3894,8 +3560,8 @@ save_settings: move.b %d2,(%a1,%a2.l) move.b %d2,(%a0,%a2.l) cmp.l %a6,%d0 - jne .L608 -.L613: + jne .L572 +.L577: move.b (%a3),%d0 move.l 1187521622,%a1 mov3q.l #3,%d2 @@ -3914,7 +3580,7 @@ save_settings: movem.l (%sp),#23580 lea (40,%sp),%sp rts -.L612: +.L576: move.l #269161679,%a3 mov3q.l #3,%d4 move.b (%a3),%d0 @@ -3936,8 +3602,8 @@ save_settings: move.b %d2,(%a1,%a2.l) move.b %d2,(%a0,%a2.l) cmp.l %a6,%d0 - jne .L608 - jra .L613 + jne .L572 + jra .L577 .size save_settings, .-save_settings .align 2 .globl vector_unpack @@ -3955,9 +3621,9 @@ vector_unpack: lsr.l #4,%d0 move.b %d0,%d1 cmp.l %d0,%d2 - jcc .L615 + jcc .L579 moveq #4,%d1 -.L615: +.L579: move.b %d1,3(%a1) moveq #31,%d1 moveq #16,%d2 @@ -3965,9 +3631,9 @@ vector_unpack: and.l %d1,%d0 move.b %d0,%d1 cmp.l %d0,%d2 - jcc .L616 + jcc .L580 moveq #16,%d1 -.L616: +.L580: move.b %d1,1(%a1) mov3q.l #1,%d1 moveq #15,%d2 @@ -3980,55 +3646,55 @@ vector_unpack: moveq #11,%d2 move.b %d0,%d1 cmp.l %d0,%d2 - jcc .L617 + jcc .L581 moveq #11,%d1 -.L617: +.L581: move.b %d1,2(%a1) moveq #12,%d2 mvz.b 2(%a0),%d0 lsr.l #4,%d0 move.b %d0,%d1 cmp.l %d0,%d2 - jcc .L618 + jcc .L582 moveq #12,%d1 -.L618: +.L582: move.b %d1,6(%a1) moveq #126,%d2 move.b 3(%a0),%d0 mvz.b %d0,%d1 cmp.l %d1,%d2 - jcc .L619 + jcc .L583 moveq #126,%d0 -.L619: +.L583: move.b %d0,4(%a1) move.b 4(%a0),%d0 - jpl .L620 + jpl .L584 moveq #127,%d0 -.L620: +.L584: move.b %d0,5(%a1) moveq #24,%d2 move.b 5(%a0),%d0 mvz.b %d0,%d1 cmp.l %d1,%d2 - jcc .L621 + jcc .L585 moveq #24,%d0 -.L621: +.L585: move.b %d0,7(%a1) moveq #63,%d2 move.b 6(%a0),%d0 mvz.b %d0,%d1 cmp.l %d1,%d2 - jcc .L622 + jcc .L586 moveq #63,%d0 -.L622: +.L586: move.b %d0,8(%a1) moveq #64,%d2 move.b 7(%a0),%d0 mvz.b %d0,%d1 cmp.l %d1,%d2 - jcc .L623 + jcc .L587 moveq #64,%d0 -.L623: +.L587: move.b %d0,9(%a1) moveq #127,%d1 move.b 8(%a0),%d0 @@ -4049,16 +3715,16 @@ vector_generate: move.l 20(%sp),%d1 move.l 24(%sp),%a0 tst.l %d0 - jeq .L628 + jeq .L592 tst.l %d1 - jeq .L628 + jeq .L592 lea (-1,%a0),%a2 moveq #63,%d2 cmp.l %a2,%d2 - jcs .L628 + jcs .L592 moveq #127,%d2 cmp.l 28(%sp),%d2 - jcs .L628 + jcs .L592 move.l %a0,24(%sp) move.l %d1,20(%sp) move.l %d0,16(%sp) @@ -4066,7 +3732,7 @@ vector_generate: move.l (%sp)+,%a2 addq.l #4,%sp jra (vector_generate.part.0) -.L628: +.L592: move.l (%sp)+,%d2 clr.l %d0 move.l (%sp)+,%a2 @@ -4079,42 +3745,42 @@ vector_generate: vector_track_empty: move.l 4(%sp),%d1 tst.l %d1 - jeq .L638 + jeq .L602 mvz.w #2329,%d0 cmp.l 8(%sp),%d0 - jcc .L638 + jcc .L602 move.l %d1,%d0 move.l %d1,%a0 add.l #64,%d0 -.L639: +.L603: addq.l #1,%a0 tst.b -1(%a0) - jne .L638 + jne .L602 cmp.l %a0,%d0 - jne .L639 + jne .L603 move.l %d1,%a0 move.l %d1,%d0 lea (72,%a0),%a0 add.l #80,%d0 -.L640: +.L604: addq.l #1,%a0 tst.b -1(%a0) - jne .L638 + jne .L602 cmp.l %a0,%d0 - jne .L640 + jne .L604 move.l %d1,%a0 add.l #2137,%d1 lea (89,%a0),%a0 -.L641: +.L605: mvz.b (%a0),%d0 addq.l #1,%a0 cmp.l #255,%d0 - jne .L638 + jne .L602 cmp.l %a0,%d1 - jne .L641 + jne .L605 mov3q.l #1,%d0 rts -.L638: +.L602: clr.l %d0 rts .size vector_track_empty, .-vector_track_empty @@ -4126,12 +3792,12 @@ vector_write_phrase: movem.l #15612,(%sp) move.l 44(%sp),%d3 tst.l %d3 - jeq .L648 + jeq .L612 move.l 48(%sp),%d0 cmp.l #2329,%d0 - jls .L648 + jls .L612 tst.l 52(%sp) - jeq .L648 + jeq .L612 move.l 52(%sp),%a0 moveq #63,%d1 move.b 256(%a0),%d4 @@ -4139,37 +3805,37 @@ vector_write_phrase: subq.l #1,%d0 mvz.b %d0,%d0 cmp.l %d0,%d1 - jcs .L648 + jcs .L612 tst.l 56(%sp) - jne .L651 + jne .L615 move.l 48(%sp),-(%sp) move.l %d3,-(%sp) jsr vector_track_empty addq.l #8,%sp tst.l %d0 - jeq .L647 -.L651: + jeq .L611 +.L615: mvz.b %d4,%d4 move.l 52(%sp),%a2 clr.l %d1 move.l %a2,%a0 -.L655: +.L619: move.b (%a0),%d0 mov3q.l #1,%d5 mvz.b %d0,%d2 cmp.l %d2,%d5 - jcs .L648 + jcs .L612 cmp.l %d4,%d1 - jcs .L652 + jcs .L616 tst.b %d0 - jne .L648 -.L653: + jne .L612 +.L617: addq.l #1,%d1 addq.l #4,%a0 moveq #64,%d0 cmp.l %d1,%d0 - jne .L655 -.L688: + jne .L619 +.L652: move.l %d3,%a3 move.l %d3,%a1 move.l %d3,%a4 @@ -4177,7 +3843,7 @@ vector_write_phrase: lea (89,%a3),%a3 lea (121,%a1),%a1 lea (2202,%a4),%a4 -.L667: +.L631: mov3q.l #7,%d1 and.l %d5,%d1 move.l %d5,%d4 @@ -4190,33 +3856,33 @@ vector_write_phrase: asr.l %d1,%d0 and.l %d2,%d0 tst.b (%a2) - jeq .L668 + jeq .L632 move.b 1(%a2),%d2 -.L656: +.L620: move.b %d2,(%a3) tst.b (%a2) - jeq .L669 + jeq .L633 move.b 2(%a2),%d2 -.L657: +.L621: move.b %d2,13(%a3) tst.b (%a2) - jeq .L670 + jeq .L634 move.b 3(%a2),%d2 -.L658: +.L622: move.b %d2,15(%a3) mov3q.l #1,%d2 lsl.l %d1,%d2 move.b (%a0),%d1 tst.b (%a2) - jeq .L659 + jeq .L623 or.l %d2,%d1 -.L660: +.L624: move.b %d1,(%a0) tst.l %d0 - jne .L661 + jne .L625 tst.b (%a2) - jeq .L662 -.L661: + jeq .L626 +.L625: clr.b %d0 clr.b (%a4) move.w #15,%a5 @@ -4239,10 +3905,10 @@ vector_write_phrase: move.b (%a0,%d3.l),%d1 and.l %d1,%d0 move.b %d0,(%a0,%d3.l) -.L662: +.L626: move.l %a3,%a0 clr.l %d1 -.L663: +.L627: move.b (%a0)+,%d0 not.l %d0 tst.b %d0 @@ -4251,17 +3917,17 @@ vector_write_phrase: neg.l %d0 or.l %d0,%d1 cmp.l %a1,%a0 - jne .L663 + jne .L627 move.w #23,%a0 sub.l %d4,%a0 add.l %d3,%a0 move.b (%a0),%d0 tst.b (%a2) - jne .L664 + jne .L628 tst.l %d1 - jeq .L664 + jeq .L628 or.l %d0,%d2 -.L666: +.L630: move.b %d2,(%a0) addq.l #1,%d5 addq.l #4,%a2 @@ -4270,20 +3936,20 @@ vector_write_phrase: lea (32,%a1),%a1 moveq #64,%d0 cmp.l %d5,%d0 - jne .L667 + jne .L631 mov3q.l #1,%d0 -.L647: +.L611: movem.l (%sp),#15612 lea (40,%sp),%sp rts -.L648: +.L612: movem.l (%sp),#15612 clr.l %d0 lea (40,%sp),%sp rts -.L652: +.L616: tst.b %d0 - jeq .L653 + jeq .L617 move.b 1(%a0),%d0 moveq #120,%d5 mvz.b %d0,%d2 @@ -4291,41 +3957,41 @@ vector_write_phrase: mvz.b %d0,%d0 subq.l #4,%d2 cmp.l %d0,%d5 - jcs .L648 + jcs .L612 mov3q.l #5,%d5 rems.l %d5,%d0:%d2 tst.l %d0 - jne .L648 + jne .L612 mvz.b 2(%a0),%d2 moveq #126,%d5 cmp.l %d2,%d5 - jcs .L647 + jcs .L611 tst.b 3(%a0) - jlt .L647 + jlt .L611 addq.l #1,%d1 addq.l #4,%a0 moveq #64,%d0 cmp.l %d1,%d0 - jne .L655 - jra .L688 -.L664: + jne .L619 + jra .L652 +.L628: not.l %d2 and.l %d0,%d2 - jra .L666 -.L659: + jra .L630 +.L623: move.l %d2,%d7 not.l %d7 and.l %d7,%d1 - jra .L660 -.L670: + jra .L624 +.L634: st %d2 - jra .L658 -.L669: + jra .L622 +.L633: st %d2 - jra .L657 -.L668: + jra .L621 +.L632: st %d2 - jra .L656 + jra .L620 .size vector_write_phrase, .-vector_write_phrase .align 2 .globl vector_signed_track @@ -4336,31 +4002,31 @@ vector_signed_track: mov3q.l #7,%d1 move.l 8(%sp),%a0 cmp.l %d0,%d1 - jcs .L692 + jcs .L656 mvz.b 34(%a0,%d0.l),%d1 mov3q.l #1,%d2 cmp.l %d1,%d2 - jcs .L692 + jcs .L656 moveq #30,%d1 moveq #83,%d2 muls.l %d1,%d0 lea 60(%a0,%d0.l),%a0 mvz.b (%a0),%d0 cmp.l %d0,%d2 - jeq .L696 -.L692: + jeq .L660 +.L656: move.l (%sp)+,%d2 clr.l %d0 rts -.L696: +.L660: mvz.b 1(%a0),%d0 moveq #50,%d1 cmp.l %d0,%d1 - jne .L692 + jne .L656 mvz.b 2(%a0),%d0 subq.l #1,%d0 tst.l %d0 - jeq .L693 + jeq .L657 move.b 2(%a0),%d0 mov3q.l #2,%d1 move.l (%sp)+,%d2 @@ -4370,7 +4036,7 @@ vector_signed_track: mvs.b %d0,%d0 neg.l %d0 rts -.L693: +.L657: move.l (%sp)+,%d2 mov3q.l #1,%d0 rts @@ -4383,14 +4049,14 @@ generate_track: add.l #-1073741824,%d0 movem.l #17420,(%sp) cmp.l #133169151,%d0 - jls .L734 -.L714: + jls .L698 +.L678: clr.l %d0 -.L697: +.L661: movem.l (%sp),#17420 lea (60,%sp),%sp rts -.L734: +.L698: move.l 1187521622,%a0 mov3q.l #3,%d1 move.b 269161679,%d0 @@ -4403,13 +4069,13 @@ generate_track: jsr vector_signed_track addq.l #8,%sp tst.l %d0 - jeq .L697 + jeq .L661 move.b 269161680,%d0 moveq #15,%d1 mvz.b %d0,%d3 move.l %d3,32(%sp) cmp.l %d3,%d1 - jcs .L714 + jcs .L678 ext.w %d0 move.l 1187521622,%d2 lea staging,%a0 @@ -4425,27 +4091,27 @@ generate_track: move.l %d2,%a6 sub.l %a0,%a6 move.l %d0,28(%sp) -.L701: +.L665: move.b (%a0,%a6.l),%d0 move.b %d0,(%a0)+ cmp.l #staging+2330,%a0 - jne .L701 + jne .L665 tst.l 68(%sp) - jeq .L735 -.L702: + jeq .L699 +.L666: mvz.w #36437,%d0 move.l 36(%sp),%a0 add.l %d1,%a0 tst.b (%a0,%d0.l) - jeq .L703 + jeq .L667 move.b staging+80,%d0 -.L704: +.L668: mvz.b %d0,%d0 moveq #63,%d2 move.l %d0,%d1 subq.l #1,%d1 cmp.l %d1,%d2 - jcs .L714 + jcs .L678 move.l 64(%sp),-(%sp) lea (53,%sp),%a0 move.l %d0,20(%sp) @@ -4471,13 +4137,13 @@ generate_track: and.l %d1,%d3 move.l %d3,40(%sp) tst.l 72(%sp) - jeq .L706 + jeq .L670 move.l %d3,%d1 moveq #127,%d2 addq.l #1,%d1 and.l %d1,%d2 move.l %d2,40(%sp) -.L706: +.L670: move.l 1187521622,%d1 add.l #585088,%d1 move.b 269161679,%d3 @@ -4495,7 +4161,7 @@ generate_track: moveq #127,%d3 mvz.b (%a0,%d1.l),%d1 cmp.l %d1,%d3 - jcs .L714 + jcs .L678 move.l 40(%sp),-(%sp) move.l %d1,-(%sp) move.l %d0,-(%sp) @@ -4509,36 +4175,36 @@ generate_track: jsr vector_write_phrase lea (36,%sp),%sp tst.l %d0 - jeq .L697 + jeq .L661 move.l 36(%sp),%a1 cmp.l 1187521622.l,%a1 - jne .L714 + jne .L678 mvz.b 269161680,%d1 cmp.l 32(%sp),%d1 - jne .L714 + jne .L678 mvz.b 47(%sp),%d1 mvz.b 269161679,%d2 cmp.l %d1,%d2 - jne .L714 + jne .L678 move.l 28(%sp),%a1 sub.l #staging-268525901,%a1 lea staging,%a0 move.l %a1,32(%sp) -.L709: +.L673: lea (%a0,%a6.l),%a2 move.b (%a0)+,%d1 mvz.b (%a2),%d2 move.l %a2,20(%sp) mvz.b %d1,%d3 cmp.l %d2,%d3 - jeq .L708 + jeq .L672 move.b %d1,(%a2) move.l 32(%sp),%a1 lea (-1,%a0),%a2 move.b (%a2),(%a1,%a0.l) -.L708: +.L672: cmp.l #staging+2330,%a0 - jne .L709 + jne .L673 move.l 40(%sp),-(%sp) pea 53(%sp) move.l 72(%sp),-(%sp) @@ -4575,17 +4241,17 @@ generate_track: move.l %d3,24(%sp) not.l %d3 move.b %d3,23(%sp) -.L710: +.L674: lea (-32,%a1),%a0 -.L712: +.L676: addq.l #1,%a0 mvz.b -1(%a0),%d1 cmp.l #255,%d1 - jne .L715 + jne .L679 cmp.l %a1,%a0 - jne .L712 + jne .L676 sub.l %a0,%a0 -.L711: +.L675: move.b (%a6),%d1 move.b 23(%sp),%d3 move.l %a0,%d2 @@ -4594,7 +4260,7 @@ generate_track: or.l %d2,%d1 move.b %d1,(%a6)+ cmp.l #1187501260,%a6 - jne .L710 + jne .L674 move.l 64(%sp),-(%sp) move.l %d0,20(%sp) jsr 1074387488 @@ -4604,7 +4270,7 @@ generate_track: move.l 16(%sp),%d0 lea (60,%sp),%sp rts -.L735: +.L699: pea 2330.w pea staging move.l %d1,24(%sp) @@ -4612,18 +4278,18 @@ generate_track: addq.l #8,%sp move.l 16(%sp),%d1 tst.l %d0 - jne .L702 + jne .L666 movem.l (%sp),#17420 lea (60,%sp),%sp rts -.L703: +.L667: mvz.w #36435,%d0 move.b (%a0,%d0.l),%d0 - jra .L704 -.L715: + jra .L668 +.L679: move.b 27(%sp),%d2 move.w %d2,%a0 - jra .L711 + jra .L675 .size generate_track, .-generate_track .align 2 .type change_control, @function @@ -4659,27 +4325,27 @@ change_control: mov3q.l #5,%d0 mvz.b %d1,%d2 cmp.l 8(%fp),%d0 - jcs .L737 + jcs .L701 lea (-22,%fp),%a1 add.l 8(%fp),%a1 move.l 12(%fp),%a0 mvz.b (%a1),%d1 add.l %d1,%a0 tst.l %a0 - jlt .L757 -.L740: + jlt .L721 +.L704: move.l 8(%fp),%a2 move.l #vector_control_max,%d0 mvz.b (%a2,%d0.l),%d0 cmp.l %d0,%a0 - jge .L743 + jge .L707 move.l %a0,%d0 -.L743: +.L707: cmp.l %d1,%d0 - jeq .L736 + jeq .L700 move.b %d0,(%a1) move.l %d2,%d0 -.L746: +.L710: move.l %d0,-(%sp) pea -22(%fp) move.l -32(%fp),-(%sp) @@ -4693,36 +4359,36 @@ change_control: lea (24,%sp),%sp move.l -28(%fp),%a0 tst.l %d0 - jeq .L758 -.L747: + jeq .L722 +.L711: mov3q.l #-1,-(%sp) jsr 1074059592 mov3q.l #1,1187497772 addq.l #4,%sp -.L736: +.L700: move.l -40(%fp),%d2 move.l -36(%fp),%a2 unlk %fp rts -.L737: +.L701: mov3q.l #6,%d0 cmp.l 8(%fp),%d0 - jeq .L739 + jeq .L703 move.l 8(%fp),%d1 move.l 12(%fp),%a0 lea -23(%fp,%d1.l),%a1 mvz.b (%a1),%d1 add.l %d1,%a0 tst.l %a0 - jge .L740 -.L757: + jge .L704 +.L721: tst.l %d1 - jeq .L736 + jeq .L700 clr.b %d0 move.b %d0,(%a1) move.l %d2,%d0 - jra .L746 -.L758: + jra .L710 +.L722: move.l %d2,-(%sp) pea -11(%fp) move.l -32(%fp),-(%sp) @@ -4732,19 +4398,19 @@ change_control: jsr 1074059592 mov3q.l #1,1187497772 addq.l #4,%sp - jra .L736 -.L739: + jra .L700 +.L703: move.l 12(%fp),%d0 add.l %d2,%d0 tst.l %d0 - jlt .L744 + jlt .L708 moveq #127,%d1 cmp.l %d0,%d1 - jge .L745 + jge .L709 moveq #127,%d0 -.L745: +.L709: cmp.l %d2,%d0 - jeq .L736 + jeq .L700 move.l %d0,-(%sp) pea -22(%fp) move.l -32(%fp),-(%sp) @@ -4758,11 +4424,11 @@ change_control: lea (24,%sp),%sp move.l -28(%fp),%a0 tst.l %d0 - jne .L747 - jra .L758 -.L744: + jne .L711 + jra .L722 +.L708: tst.b %d1 - jeq .L736 + jeq .L700 clr.l %d0 move.l %d0,-(%sp) pea -22(%fp) @@ -4777,8 +4443,8 @@ change_control: lea (24,%sp),%sp move.l -28(%fp),%a0 tst.l %d0 - jne .L747 - jra .L758 + jne .L711 + jra .L722 .size change_control, .-change_control .align 2 .type generator_view, @function @@ -4787,15 +4453,15 @@ generator_view: add.l #-1073741824,%d0 move.l %d2,-(%sp) cmp.l #133169151,%d0 - jhi .L762 + jhi .L726 tst.b -2147483627.l - jeq .L770 -.L762: + jeq .L734 +.L726: clr.l %d0 -.L759: +.L723: move.l (%sp)+,%d2 rts -.L770: +.L734: move.b 269161676,%d1 move.l 1187521622,%a0 mov3q.l #3,%d2 @@ -4810,14 +4476,14 @@ generator_view: jsr vector_signed_track addq.l #8,%sp tst.l %d0 - jeq .L762 + jeq .L726 move.l edit_view,%d0 tst.l %d0 - jne .L762 + jne .L726 tst.b 1187502296.l - jne .L759 + jne .L723 tst.l 1175263034 - jne .L759 + jne .L723 tst.l 1175262868 seq %d0 move.l (%sp)+,%d2 @@ -4841,64 +4507,64 @@ vector_validate_part: move.l %a2,%a3 add.l #60,%d4 lea (34,%a4),%a4 -.L777: +.L741: mvz.b (%a4,%d1.l),%d0 mov3q.l #1,%d6 cmp.l %d0,%d6 - jcs .L775 + jcs .L739 lea (%a6,%d4.l),%a0 moveq #83,%d7 mvz.b (%a0),%d0 cmp.l %d0,%d7 - jeq .L802 -.L775: + jeq .L766 +.L739: addq.l #1,%d1 lea (30,%a6),%a6 lea (12,%a3),%a3 cmp.l #240,%a6 - jne .L777 + jne .L741 move.l %d2,-(%sp) move.l 148(%sp),%a0 clr.l %d5 jsr (%a0) addq.l #4,%sp sub.l %a0,%a0 -.L782: +.L746: btst %d5,%d3 - jne .L803 + jne .L767 addq.l #1,%d5 lea (30,%a0),%a0 lea (12,%a2),%a2 cmp.l #240,%a0 - jne .L782 -.L806: + jne .L746 +.L770: movem.l (%sp),#23804 lea (136,%sp),%sp rts -.L802: +.L766: mvz.b 1(%a0),%d0 moveq #50,%d6 cmp.l %d0,%d6 - jne .L775 + jne .L739 mvz.b 2(%a0),%d0 subq.l #1,%d0 tst.l %d0 - jeq .L773 + jeq .L737 mvz.b 2(%a0),%d0 subq.l #2,%d0 tst.l %d0 - jne .L775 -.L773: + jne .L739 +.L737: mov3q.l #1,%d0 lsl.l %d1,%d0 sub.l %a0,%a0 or.l %d0,%d3 -.L776: +.L740: lea 60(%a6,%a0.l),%a1 mov3q.l #5,%d7 cmp.l %a0,%d7 - jcc .L774 -.L804: + jcc .L738 +.L768: move.l %a0,%d6 mov3q.l #6,%d7 remu.l %d7,%d0:%d6 @@ -4910,25 +4576,25 @@ vector_validate_part: clr.b (%a1) addq.l #1,%a0 cmp.l %a0,%d0 - jeq .L775 + jeq .L739 lea 60(%a6,%a0.l),%a1 mov3q.l #5,%d7 cmp.l %a0,%d7 - jcs .L804 -.L774: + jcs .L768 +.L738: add.l %d2,%a1 move.b (%a1),(%a3,%a0.l) clr.b (%a1) addq.l #1,%a0 - jra .L776 -.L803: + jra .L740 +.L767: clr.l %d1 lea (%a0,%d2.l),%a3 -.L781: +.L745: mov3q.l #5,%d4 cmp.l %d1,%d4 - jcs .L779 -.L805: + jcs .L743 +.L769: lea (%a2,%d1.l),%a4 mov3q.l #5,%d4 move.l %d2,%a1 @@ -4936,8 +4602,8 @@ vector_validate_part: move.b (%a4),60(%a0,%a1.l) addq.l #1,%d1 cmp.l %d1,%d4 - jcc .L805 -.L779: + jcc .L769 +.L743: move.l %d1,%d6 mov3q.l #6,%d7 remu.l %d7,%d4:%d6 @@ -4947,13 +4613,13 @@ vector_validate_part: moveq #12,%d4 move.b (%a4),492(%a1) cmp.l %d1,%d4 - jne .L781 + jne .L745 addq.l #1,%d5 lea (30,%a0),%a0 lea (12,%a2),%a2 cmp.l #240,%a0 - jne .L782 - jra .L806 + jne .L746 + jra .L770 .size vector_validate_part, .-vector_validate_part .align 2 .globl st_validate_part @@ -4973,14 +4639,14 @@ st_selected: add.l #-1073741824,%d0 move.l %d2,-(%sp) cmp.l #133169151,%d0 - jhi .L812 + jhi .L776 tst.b -2147483627.l - jeq .L815 -.L812: + jeq .L779 +.L776: move.l (%sp)+,%d2 clr.l %d0 rts -.L815: +.L779: move.b 269161676,%d1 move.l 1187521622,%a0 mov3q.l #3,%d2 @@ -5002,19 +4668,19 @@ st_selected: pool_context: move.l pool_bank,%d0 cmp.l 1187521622.l,%d0 - jeq .L822 -.L818: + jeq .L786 +.L782: clr.l %d0 rts -.L822: +.L786: move.b 269161679,%d0 mov3q.l #3,%d1 and.l %d1,%d0 cmp.l pool_part.l,%d0 - jne .L818 + jne .L782 mvz.b 269161676,%d0 cmp.l pool_track.l,%d0 - jne .L818 + jne .L782 jra st_selected .size pool_context, .-pool_context .align 2 @@ -5033,18 +4699,18 @@ st_key: mvs.b %d1,%d1 neg.l %d1 cmp.l %a0,%d2 - jeq .L824 + jeq .L788 mov3q.l #1,%d0 lsl.l %d1,%d0 move.l mine,%d2 move.l %d2,20(%sp) and.l %d0,%d2 tst.l %d2 - jne .L839 + jne .L803 tst.l %a0 - jne .L833 + jne .L797 mov3q.l #1,%d0 -.L828: +.L792: move.l %d1,%a2 moveq #-3,%d2 lea (%a2,%d1.l*2),%a2 @@ -5054,8 +4720,8 @@ st_key: move.l %d0,%d1 subq.l #1,%d1 cmp.l %d1,%d2 - jcs .L823 -.L840: + jcs .L787 +.L804: move.l %a1,32(%sp) move.l %a0,36(%sp) move.l (%sp)+,%d2 @@ -5063,7 +4729,7 @@ st_key: move.l (%sp)+,%a2 lea (20,%sp),%sp jmp (%a1) -.L833: +.L797: move.l %d1,%a2 mov3q.l #2,%d0 lea (%a2,%d1.l*2),%a2 @@ -5074,15 +4740,15 @@ st_key: move.l %d0,%d1 subq.l #1,%d1 cmp.l %d1,%d2 - jcc .L840 -.L823: + jcc .L804 +.L787: move.l (%sp)+,%d2 move.l (%sp)+,%a2 lea (20,%sp),%sp rts -.L839: +.L803: tst.l %a0 - jne .L823 + jne .L787 not.l %d0 and.l 20(%sp),%d0 move.l (%sp)+,%d2 @@ -5090,7 +4756,7 @@ st_key: move.l %d0,mine lea (20,%sp),%sp rts -.L824: +.L788: move.l %d1,16(%sp) move.l %a0,8(%sp) move.l %a1,12(%sp) @@ -5099,16 +4765,16 @@ st_key: move.l 8(%sp),%a0 move.l 12(%sp),%a1 tst.l %d0 - jeq .L829 + jeq .L793 move.b 1175456541,%d0 btst #5,%d0 - jne .L829 + jne .L793 moveq #62,%d0 cmp.l %a1,%d0 - jeq .L841 + jeq .L805 moveq #49,%d2 cmp.l %a1,%d2 - jne .L829 + jne .L793 move.l %d1,16(%sp) move.l %a0,8(%sp) move.l %a1,12(%sp) @@ -5117,7 +4783,7 @@ st_key: move.l 8(%sp),%a0 move.l 12(%sp),%a1 tst.l %d0 - jeq .L829 + jeq .L793 mov3q.l #1,%d0 or.l %d0,mine move.b 269161676,%d0 @@ -5128,7 +4794,7 @@ st_key: jsr generate_track lea (12,%sp),%sp tst.l %d0 - jeq .L832 + jeq .L796 pea 32.w move.l #.LC5,%d0 move.l %d0,-(%sp) @@ -5137,17 +4803,17 @@ st_key: jsr 1074059592 mov3q.l #1,1187497772 lea (12,%sp),%sp -.L842: +.L806: move.l (%sp)+,%d2 move.l (%sp)+,%a2 lea (20,%sp),%sp rts -.L829: +.L793: clr.l %d0 - jra .L828 -.L841: + jra .L792 +.L805: tst.b 1187502296.l - jne .L829 + jne .L793 tst.l edit_view seq %d0 mov3q.l #2,%d1 @@ -5163,7 +4829,7 @@ st_key: move.l (%sp)+,%a2 lea (20,%sp),%sp rts -.L832: +.L796: pea 32.w move.l #.LC6,%d0 move.l %d0,-(%sp) @@ -5172,28 +4838,28 @@ st_key: jsr 1074059592 mov3q.l #1,1187497772 lea (12,%sp),%sp - jra .L842 + jra .L806 .size st_key, .-st_key .align 2 .type pool_flex, @function pool_flex: move.l pool_bank,%d0 cmp.l 1187521622.l,%d0 - jeq .L850 -.L843: + jeq .L814 +.L807: rts -.L850: +.L814: move.b 269161679,%d0 mov3q.l #3,%d1 and.l %d1,%d0 cmp.l pool_part.l,%d0 - jne .L843 + jne .L807 mvz.b 269161676,%d0 cmp.l pool_track.l,%d0 - jne .L843 + jne .L807 jsr st_selected tst.l %d0 - jeq .L843 + jeq .L807 mov3q.l #1,pool_browse mov3q.l #1,pool_direct jsr st_stock_pool_open @@ -5208,21 +4874,21 @@ pool_flex: pool_static: move.l pool_bank,%d0 cmp.l 1187521622.l,%d0 - jeq .L858 -.L851: + jeq .L822 +.L815: rts -.L858: +.L822: move.b 269161679,%d0 mov3q.l #3,%d1 and.l %d1,%d0 cmp.l pool_part.l,%d0 - jne .L851 + jne .L815 mvz.b 269161676,%d0 cmp.l pool_track.l,%d0 - jne .L851 + jne .L815 jsr st_selected tst.l %d0 - jeq .L851 + jeq .L815 clr.l pool_browse mov3q.l #1,pool_direct jsr st_stock_pool_open @@ -5240,7 +4906,7 @@ st_type: add.l #-1073741824,%d0 move.l %d2,-(%sp) cmp.l #133169151,%d0 - jhi .L861 + jhi .L825 move.l 1187521622,%d0 mov3q.l #3,%d2 move.b 269161679,%d1 @@ -5255,21 +4921,21 @@ st_type: move.l %a0,%d1 sub.l %d0,%d1 cmp.l %d1,%d2 - jcc .L868 -.L861: + jcc .L832 +.L825: move.l 8(%sp),%d0 move.l (%sp)+,%d2 rts -.L868: +.L832: mov3q.l #1,%d2 cmp.l 8(%sp),%d2 - jcs .L861 + jcs .L825 move.l %d1,-(%sp) move.l %d0,-(%sp) jsr vector_signed_track addq.l #8,%sp tst.l %d0 - jeq .L861 + jeq .L825 mov3q.l #5,8(%sp) move.l 8(%sp),%d0 move.l (%sp)+,%d2 @@ -5282,15 +4948,15 @@ st_chooser_type: move.l %d3,-(%sp) move.l %d2,-(%sp) tst.l pool_direct - jeq .L873 + jeq .L837 jsr pool_context tst.l %d0 - jne .L883 -.L873: + jne .L847 +.L837: move.l 1187521622,%d0 add.l #-1073741824,%d0 cmp.l #133169151,%d0 - jhi .L876 + jhi .L840 move.l 1187521622,%d1 mov3q.l #3,%d3 move.b 269161679,%d0 @@ -5306,27 +4972,27 @@ st_chooser_type: sub.l %d1,%d0 mov3q.l #7,%d2 cmp.l %d0,%d2 - jcc .L884 -.L876: + jcc .L848 +.L840: move.l 12(%sp),%d0 move.l (%sp)+,%d2 move.l (%sp)+,%d3 rts -.L884: +.L848: mov3q.l #1,%d3 cmp.l 12(%sp),%d3 - jcs .L876 + jcs .L840 move.l %d0,-(%sp) move.l %d1,-(%sp) jsr vector_signed_track addq.l #8,%sp tst.l %d0 - jeq .L876 + jeq .L840 move.l (%sp)+,%d2 mov3q.l #5,%d0 move.l (%sp)+,%d3 rts -.L883: +.L847: move.l 1187521622,%d0 mov3q.l #3,%d2 move.b 269161679,%d1 @@ -5339,7 +5005,7 @@ st_chooser_type: add.l %d1,%d0 add.l %a0,%d0 cmp.l 16(%sp),%d0 - jne .L873 + jne .L837 move.l (%sp)+,%d2 move.l pool_browse,%d0 move.l (%sp)+,%d3 @@ -5354,10 +5020,10 @@ st_assign: add.l #-1073741824,%d0 movem.l #19468,(%sp) cmp.l #133169151,%d0 - jhi .L886 + jhi .L850 mov3q.l #7,%d0 cmp.l 68(%sp),%d0 - jcs .L886 + jcs .L850 move.l 1187521622,%d1 move.l 64(%sp),%a0 sub.l %d1,%a0 @@ -5369,32 +5035,32 @@ st_assign: remu.l %d1,%d2:%d0 move.l %d2,%a0 tst.l %d2 - jne .L886 + jne .L850 cmp.l #25287,%a6 - jhi .L886 + jhi .L850 move.l 68(%sp),%d1 mov3q.l #1,%d2 move.l 64(%sp),%a2 lea 34(%a2,%d1.l),%a1 mvz.b (%a1),%d1 cmp.l %d1,%d2 - jcc .L915 + jcc .L879 mov3q.l #1,32(%sp) -.L887: +.L851: move.l 68(%sp),%d1 moveq #30,%d0 muls.l %d0,%d1 tst.l 72(%sp) - jne .L888 + jne .L852 tst.l pool_direct - jeq .L889 + jeq .L853 move.l %d1,20(%sp) move.l %a0,24(%sp) jsr pool_context move.l 20(%sp),%d1 move.l 24(%sp),%a0 tst.l %d0 - jeq .L889 + jeq .L853 move.l 1187521622,%d0 add.l #585088,%d0 move.b 269161679,%d2 @@ -5406,12 +5072,12 @@ st_assign: muls.l %d2,%d3 add.l %d3,%d0 cmp.l 64(%sp),%d0 - jne .L889 + jne .L853 move.l 68(%sp),%d3 cmp.l pool_track.l,%d3 - jne .L889 + jne .L853 mov3q.l #2,72(%sp) -.L888: +.L852: move.l 68(%sp),-(%sp) move.l 68(%sp),-(%sp) move.l %d1,28(%sp) @@ -5421,8 +5087,8 @@ st_assign: move.l 20(%sp),%d1 move.l 24(%sp),%a0 tst.l %d0 - jeq .L916 -.L891: + jeq .L880 +.L855: move.l 64(%sp),%a1 move.l #268525902,%d0 sub.l 36(%sp),%d0 @@ -5431,16 +5097,16 @@ st_assign: move.l %a1,%d1 move.l #268526334,%a1 sub.l 36(%sp),%a1 -.L898: +.L862: move.b (%a0),(%a0,%d0.l) lea (432,%a0),%a2 move.b (%a2),(%a1,%a0.l) addq.l #1,%a0 cmp.l %a0,%d1 - jne .L898 + jne .L862 mov3q.l #1,%d0 cmp.l 72(%sp),%d0 - jne .L885 + jne .L849 mvz.w #6322,%d1 move.l %a6,%d0 move.l #1187521622,%a0 @@ -5450,18 +5116,18 @@ st_assign: move.l 68(%sp),%d1 move.l %d1,pool_track move.l %d0,pool_part -.L885: +.L849: movem.l (%sp),#19468 move.l 32(%sp),%d0 lea (60,%sp),%sp rts -.L886: +.L850: movem.l (%sp),#19468 mov3q.l #1,32(%sp) move.l 32(%sp),%d0 lea (60,%sp),%sp rts -.L889: +.L853: move.l 68(%sp),-(%sp) move.l 68(%sp),-(%sp) move.l %d1,28(%sp) @@ -5469,7 +5135,7 @@ st_assign: addq.l #8,%sp move.l 20(%sp),%d1 tst.l %d0 - jeq .L891 + jeq .L855 clr.b %d3 move.l 64(%sp),%a0 move.l #268525902,%d0 @@ -5483,12 +5149,12 @@ st_assign: move.l %a1,%d1 move.l #268526334,%a1 sub.l 36(%sp),%a1 - jra .L898 -.L915: + jra .L862 +.L879: mvz.b (%a1),%d3 move.l %d3,32(%sp) - jra .L887 -.L916: + jra .L851 +.L880: move.l 68(%sp),%a1 moveq #50,%d2 pea 1(%a1) @@ -5518,22 +5184,22 @@ st_assign: move.l %a1,40(%sp) move.l 24(%sp),%a0 move.l %a2,44(%sp) -.L895: +.L859: move.l 40(%sp),%a1 mov3q.l #2,%d2 add.l %a0,%a1 cmp.l %a0,%d2 - jcc .L917 + jcc .L881 move.l %d0,%a3 addq.l #1,%a0 move.l 64(%sp),%a2 moveq #9,%d2 move.b (%a3),(%a2,%a1.l) cmp.l %a0,%d2 - jeq .L891 + jeq .L855 addq.l #1,%d0 - jra .L895 -.L917: + jra .L859 +.L881: move.l 64(%sp),%a2 move.l %d0,%a3 move.l 44(%sp),%a1 @@ -5541,7 +5207,7 @@ st_assign: addq.l #1,%a0 move.b (%a3)+,(%a2,%a1.l) move.l %a3,%d0 - jra .L895 + jra .L859 .size st_assign, .-st_assign .align 2 .globl st_pool_choice_draw @@ -5552,17 +5218,17 @@ st_pool_choice_draw: move.l %a3,-(%sp) move.l %a2,-(%sp) tst.l %d0 - jeq .L918 + jeq .L882 lea pool_labels,%a3 cmp.l 1175346732.l,%a3 - jeq .L929 + jeq .L893 clr.l %d0 -.L918: +.L882: move.l (%sp)+,%a2 move.l (%sp)+,%a3 addq.l #8,%sp rts -.L929: +.L893: move.l %d0,%a0 lea (36,%a0),%a0 move.l %a0,12(%sp) @@ -5585,19 +5251,19 @@ st_pool_choice_draw: lea (24,%sp),%sp move.l 8(%sp),%d0 cmp.l 1175346752.l,%d0 - jeq .L930 -.L920: + jeq .L894 +.L884: subq.l #7,%a2 mov3q.l #1,%d1 cmp.l %d0,%d1 - jne .L923 -.L931: + jne .L887 +.L895: move.l (%sp)+,%a2 mov3q.l #1,1187497772 move.l (%sp)+,%a3 addq.l #8,%sp rts -.L930: +.L894: move.l 12(%sp),%a1 move.l (%a1),%a0 mov3q.l #-1,-(%sp) @@ -5613,8 +5279,8 @@ st_pool_choice_draw: mov3q.l #1,%d1 move.l 8(%sp),%d0 cmp.l %d0,%d1 - jeq .L931 -.L923: + jeq .L895 +.L887: move.l (%a3)+,-(%sp) mov3q.l #-1,-(%sp) move.l %a2,-(%sp) @@ -5627,8 +5293,8 @@ st_pool_choice_draw: lea (24,%sp),%sp move.l 8(%sp),%d0 cmp.l 1175346752.l,%d0 - jne .L920 - jra .L930 + jne .L884 + jra .L894 .size st_pool_choice_draw, .-st_pool_choice_draw .section .rodata.str1.1 .LC7: @@ -5640,11 +5306,11 @@ st_pool_choice_draw: st_pool_choice_open: jsr st_selected tst.l %d0 - jeq .L932 + jeq .L896 tst.l 1175346736 - jne .L932 + jne .L896 tst.l 1175351520 - jne .L932 + jne .L896 move.l #1187521622,%a0 mov3q.l #3,%d1 move.l (%a0),pool_bank @@ -5673,7 +5339,7 @@ st_pool_choice_open: move.l %d0,-(%sp) move.l #1175346744,-(%sp) jsr 1074261424 - lea (handlers.7),%a0 + lea (handlers.8),%a0 move.l %a0,1175346728 move.l #pool_labels,%d0 move.l %d0,1175346732 @@ -5688,7 +5354,7 @@ st_pool_choice_open: lea (32,%sp),%sp move.l %d0,1175346736 tst.l %d0 - jeq .L932 + jeq .L896 clr.l -(%sp) pea .LC7 move.l %d0,-(%sp) @@ -5697,7 +5363,7 @@ st_pool_choice_open: jsr 1073943700 lea (16,%sp),%sp jra st_pool_choice_draw -.L932: +.L896: rts .size st_pool_choice_open, .-st_pool_choice_open .align 2 @@ -5705,13 +5371,13 @@ st_pool_choice_open: .type st_pool_choice_left, @function st_pool_choice_left: tst.l 1175346736 - jeq .L942 + jeq .L906 move.l #pool_labels,%d0 cmp.l 1175346732.l,%d0 - jeq .L949 -.L942: + jeq .L913 +.L906: rts -.L949: +.L913: jsr 1074190164 clr.l pool_direct jsr st_stock_pool_open @@ -5723,26 +5389,26 @@ st_pool_choice_left: st_pool_choice_right: subq.l #4,%sp tst.l 1175346736 - jeq .L950 + jeq .L914 move.l #pool_labels,%d0 cmp.l 1175346732.l,%d0 - jeq .L963 -.L950: + jeq .L927 +.L914: addq.l #4,%sp rts -.L963: +.L927: jsr pool_context tst.l %d0 - jeq .L950 + jeq .L914 move.l 1175346752,%d1 mov3q.l #1,%d0 cmp.l %d1,%d0 - jcs .L950 + jcs .L914 move.l %d1,(%sp) jsr 1074190164 jsr pool_context tst.l %d0 - jeq .L950 + jeq .L914 move.l (%sp),pool_browse mov3q.l #1,pool_direct jsr st_stock_pool_open @@ -5761,40 +5427,40 @@ st_pool_left: move.l 16(%sp),%d1 move.l 20(%sp),%a0 tst.l 1175351520 - jeq .L964 + jeq .L928 tst.l pool_direct - jne .L981 -.L966: + jne .L945 +.L930: move.l %a0,20(%sp) move.l %d1,16(%sp) lea (12,%sp),%sp jmp 1074235708 -.L981: +.L945: move.l %d1,4(%sp) move.l %a0,(%sp) jsr pool_context move.l 4(%sp),%d1 move.l (%sp),%a0 tst.l %d0 - jeq .L966 + jeq .L930 tst.l 1175351520 - jeq .L966 + jeq .L930 move.l pool_browse,%d0 move.l %d0,8(%sp) jsr 1074235876 clr.l pool_direct jsr st_pool_choice_open tst.l 1175346736 - jeq .L964 + jeq .L928 move.l #pool_labels,%d0 cmp.l 1175346732.l,%d0 - jne .L964 + jne .L928 move.l 8(%sp),-(%sp) move.l #1175346744,-(%sp) jsr 1074261424 lea (20,%sp),%sp jra st_pool_choice_draw -.L964: +.L928: lea (12,%sp),%sp rts .size st_pool_left, .-st_pool_left @@ -5806,25 +5472,25 @@ st_pool_right: move.l 12(%sp),%d1 move.l 16(%sp),%a0 tst.l 1175351520 - jeq .L983 + jeq .L947 tst.l 1175352218 - jne .L983 + jne .L947 mov3q.l #5,%d0 cmp.l 1175352206.l,%d0 - jeq .L992 -.L983: + jeq .L956 +.L947: move.l %a0,16(%sp) move.l %d1,12(%sp) addq.l #8,%sp jmp 1074237596 -.L992: +.L956: move.l %d1,4(%sp) move.l %a0,(%sp) jsr st_selected move.l 4(%sp),%d1 move.l (%sp),%a0 tst.l %d0 - jeq .L983 + jeq .L947 jsr 1074235876 addq.l #8,%sp jra st_pool_choice_open @@ -5838,20 +5504,20 @@ st_draw_page: move.l %d0,(%sp) jsr st_selected tst.l %d0 - jeq .L993 + jeq .L957 tst.l edit_view - jne .L993 + jne .L957 tst.b 1187502296.l - jne .L993 + jne .L957 tst.l 1175263034 - jne .L993 + jne .L957 tst.l 1175262868 - jne .L993 + jne .L957 move.l (%sp),-(%sp) jsr generator_page move.l %d0,4(%sp) addq.l #4,%sp -.L993: +.L957: move.l (%sp),%d0 addq.l #4,%sp rts @@ -5866,15 +5532,15 @@ st_setup_page: add.l #-1073741824,%d0 move.l 12(%sp),%d1 cmp.l #133169151,%d0 - jhi .L1001 + jhi .L965 tst.b -2147483627.l - jeq .L1008 -.L1001: + jeq .L972 +.L965: move.l (%sp)+,%d2 move.l %d1,%d0 addq.l #4,%sp rts -.L1008: +.L972: move.b 269161676,%d0 move.l 1187521622,%a0 add.l #585088,%a0 @@ -5892,12 +5558,12 @@ st_setup_page: addq.l #8,%sp move.l 4(%sp),%d1 tst.l %d0 - jeq .L1001 + jeq .L965 tst.l edit_view - jne .L1001 + jne .L965 mov3q.l #5,%d0 cmp.l 1175280688.l,%d0 - jne .L1001 + jne .L965 move.l %d1,12(%sp) move.l (%sp)+,%d2 addq.l #4,%sp @@ -5913,18 +5579,18 @@ st_knob: move.l 20(%sp),%d1 move.l 24(%sp),%a0 cmp.l %d1,%d0 - jcc .L1016 -.L1009: + jcc .L980 +.L973: move.l (%sp)+,%d2 lea (12,%sp),%sp rts -.L1016: +.L980: move.l 1187521622,%d0 add.l #-1073741824,%d0 cmp.l #133169151,%d0 - jhi .L1009 + jhi .L973 tst.b -2147483627.l - jne .L1009 + jne .L973 move.b 269161676,%d2 move.l 1187521622,%a1 add.l #585088,%a1 @@ -5943,17 +5609,17 @@ st_knob: addq.l #8,%sp move.l 8(%sp),%d1 tst.l %d0 - jeq .L1009 + jeq .L973 tst.l edit_view - jne .L1009 + jne .L973 tst.b 1187502296.l - jne .L1009 + jne .L973 tst.l 1175263034 - jne .L1009 + jne .L973 tst.l 1175262868 - jne .L1009 + jne .L973 tst.l st_layer - jne .L1009 + jne .L973 move.l 4(%sp),24(%sp) move.l %d1,20(%sp) move.l (%sp)+,%d2 @@ -5967,18 +5633,18 @@ st_setup_knob: move.l %d2,-(%sp) mov3q.l #5,%d0 cmp.l 8(%sp),%d0 - jcc .L1018 -.L1020: + jcc .L982 +.L984: move.l (%sp)+,%d2 clr.l %d0 rts -.L1018: +.L982: move.l 1187521622,%d0 add.l #-1073741824,%d0 cmp.l #133169151,%d0 - jhi .L1020 + jhi .L984 tst.b -2147483627.l - jne .L1020 + jne .L984 move.b 269161676,%d1 move.l 1187521622,%a0 mov3q.l #3,%d2 @@ -5993,9 +5659,9 @@ st_setup_knob: jsr vector_signed_track addq.l #8,%sp tst.l %d0 - jeq .L1020 + jeq .L984 tst.l edit_view - jne .L1020 + jne .L984 move.l 12(%sp),-(%sp) move.l 12(%sp),%a0 pea 6(%a0) @@ -6010,33 +5676,80 @@ st_setup_knob: .type mg_page, @function mg_page: link.w %fp,#-16 - move.l #mg_page_layer,%d1 + move.l #vector_midi,%d1 + move.l %d2,-(%sp) + move.l #mg_page_layer,%d2 move.l 1074061804,%d0 - cmp.l mg_active.l,%d1 - jeq .L1027 -.L1029: + move.l %d1,-16(%fp) + cmp.l mg_active.l,%d2 + jeq .L1006 +.L992: move.l 8(%fp),%d0 + move.l -20(%fp),%d2 unlk %fp rts -.L1027: +.L1006: + tst.l -2147483630 + jeq .L992 + move.l #1187521622,%a0 + move.l (%a0),%d1 + add.l #-1073741824,%d1 + cmp.l #133169151,%d1 + jhi .L992 + move.l #269161676,%a1 + mov3q.l #7,%d2 + mvz.b (%a1),%d1 + cmp.l %d1,%d2 + jcs .L992 + move.b (%a1),%d1 + move.l (%a0),%a0 + add.l #585088,%a0 cmp.l #mg_page_site,%d0 seq %d0 + mvz.b %d1,%d2 + move.b 269161679,%d1 mvs.b %d0,%d0 + move.l %d2,%a1 + mov3q.l #3,%d2 + move.l %a1,-(%sp) neg.l %d0 + and.l %d2,%d1 + mvz.w #6322,%d2 + muls.l %d2,%d1 + pea (%a0,%d1.l) move.l %d0,-(%sp) pea -16(%fp) - jsr (mg_view.constprop.0) - addq.l #8,%sp + jsr mg_page_view + lea (16,%sp),%sp tst.l %d0 - jeq .L1029 + jeq .L992 move.l %d0,%a1 - move.l 16(%a1),%a0 + move.l 20(%a1),%a0 tst.l %a0 - jeq .L1029 - move.l mg_second,-(%sp) + jeq .L992 + move.l mg_second,%d1 + move.l 1175262852,%d0 + cmp.l #vector_midi_page,%a0 + jne .L994 + move.l %d1,-(%sp) + move.l %d0,-(%sp) move.l 8(%fp),-(%sp) jsr (%a0) - addq.l #8,%sp + lea (12,%sp),%sp + move.l -20(%fp),%d2 + move.l %d0,8(%fp) + move.l 8(%fp),%d0 + unlk %fp + rts +.L994: + move.l %d1,-(%sp) + move.l %d0,-(%sp) + move.l 8(%fp),-(%sp) + jsr (%a0) + lea (12,%sp),%sp + move.l -20(%fp),%d2 + move.l %d0,8(%fp) + move.l 8(%fp),%d0 unlk %fp rts .size mg_page, .-mg_page @@ -6048,16 +5761,16 @@ mg_arp_setup: move.l -2147483630,%d0 move.l %d2,-(%sp) tst.l %d0 - jeq .L1038 + jeq .L1007 move.l 1187521622,%d0 add.l #-1073741824,%d0 cmp.l #133169151,%d0 - jhi .L1040 + jhi .L1009 move.l #269161676,%a0 mov3q.l #7,%d1 mvz.b (%a0),%d0 cmp.l %d0,%d1 - jcs .L1040 + jcs .L1009 move.b (%a0),%d0 move.l 1187521622,%a0 mov3q.l #3,%d2 @@ -6074,20 +5787,20 @@ mg_arp_setup: move.b 1(%a0),%d0 mvz.b (%a0),%d1 cmp.l %d1,%d2 - jne .L1040 + jne .L1009 cmp.l #mg_page_site,%a1 - jne .L1040 + jne .L1009 mvz.b %d0,%d0 moveq #86,%d1 cmp.l %d0,%d1 - jeq .L1042 + jeq .L1011 move.b (%a0),%d0 -.L1040: +.L1009: clr.l %d0 -.L1038: +.L1007: move.l (%sp)+,%d2 rts -.L1042: +.L1011: mov3q.l #1,%d2 eor.l %d2,mg_second mov3q.l #-1,-(%sp) @@ -6104,15 +5817,15 @@ mg_arp_setup: mg_track_tap: mov3q.l #7,%d0 cmp.l 4(%sp),%d0 - jcs .L1049 + jcs .L1018 move.l #mg_page_site,%d0 cmp.l 1074061804.l,%d0 - jeq .L1053 -.L1049: + jeq .L1022 +.L1018: rts -.L1053: +.L1022: tst.l 1074513600 - jne .L1049 + jne .L1018 clr.l 4(%sp) jmp 1073947176 .size mg_track_tap, .-mg_track_tap @@ -6130,24 +5843,24 @@ mg_note_setup_draw: move.l 1074061804,%d0 move.l 1074513600,%a0 cmp.l #mg_page_site,%d0 - jne .L1054 + jne .L1023 tst.l %a0 - jne .L1071 -.L1054: + jne .L1040 +.L1023: move.l (%sp)+,%a2 lea (12,%sp),%sp rts -.L1071: +.L1040: tst.l -2147483630 - jeq .L1054 + jeq .L1023 move.l 1187521622,%d0 add.l #-1073741824,%d0 cmp.l #133169151,%d0 - jhi .L1054 + jhi .L1023 mvz.b 269161676,%d0 mov3q.l #7,%d1 cmp.l %d0,%d1 - jcs .L1054 + jcs .L1023 move.l 40(%a0),%a1 lea (36,%a0),%a0 move.l %a1,12(%sp) @@ -6159,7 +5872,7 @@ mg_note_setup_draw: mov3q.l #3,-(%sp) move.l %a0,-(%sp) jsr 1073816148 - pea .LC3 + pea .LC1 mov3q.l #-1,-(%sp) move.l 44(%sp),%a2 lea (-20,%a2),%a2 @@ -6171,10 +5884,10 @@ mg_note_setup_draw: lea (48,%sp),%sp move.l mg_cursor,%d0 tst.l %d0 - jeq .L1058 + jeq .L1027 move.l 12(%sp),%a2 lea (-28,%a2),%a2 -.L1059: +.L1028: pea .LC8 mov3q.l #-1,-(%sp) move.l %a2,-(%sp) @@ -6186,8 +5899,8 @@ mg_note_setup_draw: move.l mg_cursor,%d0 mov3q.l #1,%d1 cmp.l %d0,%d1 - jne .L1057 -.L1058: + jne .L1026 +.L1027: mov3q.l #-1,-(%sp) pea 6(%a2) pea 50.w @@ -6199,8 +5912,8 @@ mg_note_setup_draw: jsr 1073816148 lea (24,%sp),%sp tst.l 4(%sp) - jeq .L1059 -.L1057: + jeq .L1028 +.L1026: move.l (%sp)+,%a2 mov3q.l #1,1187497772 lea (12,%sp),%sp @@ -6215,22 +5928,22 @@ mg_key: movem.l #1036,(%sp) move.l 12(%fp),%a1 cmp.l 8(%fp),%d0 - jeq .L1102 + jeq .L1071 moveq #32,%d1 cmp.l 8(%fp),%d1 - jeq .L1103 + jeq .L1072 moveq #49,%d2 cmp.l 8(%fp),%d2 - jeq .L1104 + jeq .L1073 moveq #50,%d3 cmp.l 8(%fp),%d3 - jeq .L1105 + jeq .L1074 move.l 1074061804,%d1 mov3q.l #1,%d0 lea vector_midi,%a0 move.l %a0,-16(%fp) cmp.l %a1,%d0 - jne .L1074 + jne .L1043 cmp.l #mg_page_site,%d1 seq %d0 move.l mg_active,%a0 @@ -6239,90 +5952,113 @@ mg_key: mvs.b %d0,%d0 neg.l %d0 cmp.l #mg_list_layer,%a0 - jeq .L1150 -.L1079: + jeq .L1122 +.L1048: cmp.l #mg_page_layer,%a0 - jeq .L1151 -.L1074: + jeq .L1123 +.L1043: move.l %a1,-(%sp) move.l 8(%fp),-(%sp) jsr mg_forward addq.l #8,%sp -.L1072: +.L1041: movem.l -80(%fp),#1036 unlk %fp rts -.L1150: +.L1122: cmp.l #mg_page_site,%d1 - jne .L1079 + jne .L1048 tst.l -2147483630 - jeq .L1079 + jeq .L1048 move.l 1187521622,%d1 add.l #-1073741824,%d1 cmp.l #133169151,%d1 - jhi .L1079 + jhi .L1048 mvz.b 269161676,%d1 mov3q.l #7,%d3 cmp.l %d1,%d3 - jcs .L1079 + jcs .L1048 moveq #49,%d1 cmp.l 8(%fp),%d1 - jeq .L1152 + jeq .L1124 moveq #51,%d1 cmp.l 8(%fp),%d1 - jeq .L1096 + jeq .L1065 moveq #32,%d2 cmp.l 8(%fp),%d2 - jne .L1079 + jne .L1048 move.l -58(%fp),%d3 or.l %d3,mg_mine cmp.l mg_cursor.l,%d0 - jls .L1088 + jls .L1057 mov3q.l #1,mg_cursor -.L1088: +.L1057: jsr mg_note_setup_draw -.L1155: +.L1127: movem.l -80(%fp),#1036 unlk %fp rts -.L1151: +.L1123: + tst.l -2147483630 + jeq .L1043 + move.l #1187521622,%a0 + move.l (%a0),%d1 + add.l #-1073741824,%d1 + cmp.l #133169151,%d1 + jhi .L1043 + move.l #269161676,%a2 + mov3q.l #7,%d2 + mvz.b (%a2),%d1 + cmp.l %d1,%d2 + jcs .L1043 + move.b (%a2),-54(%fp) + move.l (%a0),%a0 + mov3q.l #3,%d2 + add.l #585088,%a0 + move.b 269161679,%d1 + mvz.b -54(%fp),%d3 + move.l %d3,-(%sp) + mvz.w #6322,%d3 + and.l %d2,%d1 + muls.l %d3,%d1 + pea (%a0,%d1.l) move.l %d0,-(%sp) pea -16(%fp) move.l %a1,-62(%fp) - jsr (mg_view.constprop.0) - addq.l #8,%sp + jsr mg_page_view + lea (16,%sp),%sp move.l -62(%fp),%a1 tst.l %d0 - jeq .L1074 - moveq #49,%d2 - cmp.l 8(%fp),%d2 - jeq .L1153 - moveq #50,%d2 - cmp.l 8(%fp),%d2 - jne .L1074 + jeq .L1043 + moveq #49,%d1 + cmp.l 8(%fp),%d1 + jeq .L1125 + moveq #50,%d0 + cmp.l 8(%fp),%d0 + jne .L1043 tst.l mg_second - jeq .L1074 - move.l -58(%fp),%d3 + jeq .L1043 + move.l -58(%fp),%d1 mov3q.l #-1,-(%sp) clr.l mg_second - or.l %d3,mg_mine + or.l %d1,mg_mine jsr 1074059592 movem.l -80(%fp),#1036 mov3q.l #1,1187497772 addq.l #4,%sp unlk %fp rts -.L1102: +.L1071: mov3q.l #1,-58(%fp) -.L1073: +.L1042: mov3q.l #1,%d0 cmp.l %a1,%d0 - jeq .L1076 + jeq .L1045 move.l mg_mine,%d0 move.l -58(%fp),%d1 and.l %d0,%d1 tst.l %d1 - jne .L1154 + jne .L1126 move.l 1074061804,%d0 move.l #vector_midi,%d1 move.l %a1,-(%sp) @@ -6330,8 +6066,8 @@ mg_key: move.l %d1,-16(%fp) jsr mg_forward addq.l #8,%sp - jra .L1072 -.L1076: + jra .L1041 +.L1045: move.l 1074061804,%d1 move.l #vector_midi,%d2 move.l mg_active,%a0 @@ -6341,11 +6077,11 @@ mg_key: mvs.b %d0,%d0 neg.l %d0 cmp.l #mg_list_layer,%a0 - jne .L1079 - jra .L1150 -.L1154: + jne .L1048 + jra .L1122 +.L1126: tst.l %a1 - jne .L1072 + jne .L1041 move.l -58(%fp),%d1 not.l %d1 and.l %d0,%d1 @@ -6353,18 +6089,26 @@ mg_key: move.l %d1,mg_mine unlk %fp rts -.L1103: +.L1072: mov3q.l #2,-58(%fp) - jra .L1073 -.L1153: + jra .L1042 +.L1073: + mov3q.l #4,-58(%fp) + jra .L1042 +.L1074: + moveq #8,%d3 + move.l %d3,-58(%fp) + jra .L1042 +.L1125: move.l %d0,%a2 - move.l 24(%a2),%a0 + move.l 28(%a2),%a0 tst.l %a0 - jeq .L1074 + jeq .L1043 move.l -58(%fp),%d1 or.l %d1,mg_mine + move.l 1175262852,%d0 cmp.l #vector_midi_yes,%a0 - jne .L1099 + jne .L1068 move.b 269161676,%d0 mov3q.l #1,-(%sp) mov3q.l #1,-(%sp) @@ -6373,53 +6117,48 @@ mg_key: jsr midi_generate lea (12,%sp),%sp tst.l %d0 - jeq .L1111 + jeq .L1080 pea 32.w move.l #.LC5,%d0 move.l %d0,-(%sp) jsr 1074111160 addq.l #8,%sp -.L1101: +.L1070: mov3q.l #-1,-(%sp) jsr 1074059592 mov3q.l #1,1187497772 addq.l #4,%sp -.L1156: +.L1128: movem.l -80(%fp),#1036 unlk %fp rts -.L1104: - mov3q.l #4,-58(%fp) - jra .L1073 -.L1105: - moveq #8,%d3 - move.l %d3,-58(%fp) - jra .L1073 -.L1111: +.L1080: pea 32.w move.l #.LC6,%d0 move.l %d0,-(%sp) jsr 1074111160 addq.l #8,%sp - jra .L1101 -.L1096: + jra .L1070 +.L1065: move.l -58(%fp),%d1 move.l mg_cursor,%d0 or.l %d1,mg_mine tst.l %d0 - jeq .L1088 + jeq .L1057 subq.l #1,%d0 move.l %d0,mg_cursor jsr mg_note_setup_draw - jra .L1155 -.L1099: + jra .L1127 +.L1068: + move.l %d0,-(%sp) jsr (%a0) + addq.l #4,%sp mov3q.l #-1,-(%sp) jsr 1074059592 mov3q.l #1,1187497772 addq.l #4,%sp - jra .L1156 -.L1152: + jra .L1128 +.L1124: mov3q.l #1,-(%sp) pea 49.w move.l %d0,-62(%fp) @@ -6430,16 +6169,16 @@ mg_key: move.l -62(%fp),%d0 move.l %d2,-58(%fp) tst.l %d2 - jeq .L1106 + jeq .L1075 cmp.l %d2,%d0 - jcs .L1107 + jcs .L1076 move.l -16(%fp),%a0 move.l %a0,-66(%fp) tst.l %a0 - jeq .L1108 + jeq .L1077 move.l 8(%a0),%d2 move.l %d2,-58(%fp) -.L1081: +.L1050: move.l %d1,%a1 lea (3089,%a1),%a1 move.l %a1,%d2 @@ -6459,41 +6198,41 @@ mg_key: move.b %d3,-54(%fp) moveq #77,%d3 cmp.l %d2,%d3 - jne .L1083 + jne .L1052 tst.l %d0 - jeq .L1083 + jeq .L1052 mvz.b -54(%fp),%d0 move.l -16(%fp),%a1 cmp.l 8(%a1),%d0 - jeq .L1084 + jeq .L1053 move.b (%a0),%d0 tst.l -66(%fp) - jeq .L1085 -.L1086: + jeq .L1054 +.L1055: move.l %d1,%a0 add.l #-2147457426,%a0 move.b (%a0),%d0 mvz.b -2147483646,%d2 mvz.b %d0,%d0 cmp.l %d0,%d2 - jeq .L1157 + jeq .L1129 move.w %d1,%d2 move.l %d1,%d3 move.l #mg_arp_page,%d0 lsl.l #5,%d3 lea mg_arp_setup_slots,%a0 - move.l %a0,-36(%fp) - clr.l -32(%fp) + move.l %a0,-32(%fp) + clr.l -36(%fp) mulu.w #68,%d2 move.l %d3,%a1 sub.l #mg_arp_page-1005,%d3 - move.l %d3,-24(%fp) + move.l %d3,-20(%fp) move.l %d2,%a0 move.l #-1187473662,%d2 sub.l %a1,%d2 add.l #1187474924,%a0 - move.l %d2,-20(%fp) -.L1091: + move.l %d2,-24(%fp) +.L1060: move.l 1187521622,%a1 move.l #269161679,%a2 move.b (%a2),-51(%fp) @@ -6503,7 +6242,7 @@ mg_key: move.b (%a2)+,-37(%fp) move.b -51(%fp),%d2 move.l %a2,%d0 - move.l -24(%fp),%a2 + move.l -20(%fp),%a2 add.l %d0,%a2 move.l %a2,-42(%fp) and.l %d3,%d2 @@ -6529,12 +6268,12 @@ mg_key: move.l 1187521622,%a1 add.l #585088,%a1 move.b (%a2),-39(%fp) - move.l -36(%fp),%a2 + move.l -32(%fp),%a2 move.l %a1,-28(%fp) - addq.l #1,-36(%fp) + addq.l #1,-32(%fp) move.b (%a2)+,-54(%fp) move.b -39(%fp),%d2 - move.l -20(%fp),%a2 + move.l -24(%fp),%a2 add.l %a0,%a2 move.l %a2,-46(%fp) and.l %d3,%d2 @@ -6556,20 +6295,20 @@ mg_key: add.l #269110990,%a1 move.b -54(%fp),%d2 move.b %d2,(%a1,%d3.l) - tst.l -32(%fp) - jeq .L1090 + tst.l -36(%fp) + jeq .L1059 move.b -37(%fp),-32(%a0) -.L1090: +.L1059: move.b -54(%fp),(%a0)+ cmp.l #mg_arp_page+6,%d0 - jne .L1091 + jne .L1060 move.l %d1,%d0 lsl.l #4,%d0 move.l %d0,%a1 add.l #6210,%d0 lea (6194,%a1),%a1 move.l %d0,-54(%fp) -.L1092: +.L1061: move.l 1187521622,%a0 mov3q.l #3,%d3 move.b 269161679,%d0 @@ -6591,9 +6330,9 @@ mg_key: move.b %d0,(%a0,%a1.l) addq.l #1,%a1 cmp.l -54(%fp),%a1 - jne .L1092 + jne .L1061 tst.l -66(%fp) - jeq .L1110 + jeq .L1079 move.l 1187521622,%a0 mov3q.l #3,%d2 move.b 269161679,%d0 @@ -6616,8 +6355,8 @@ mg_key: add.l #269110990,%a0 move.b %d3,(%a0) tst.l -66(%fp) - jeq .L1158 -.L1094: + jeq .L1130 +.L1063: move.l 1187521622,%a0 mov3q.l #3,%d2 move.b 269161679,%d0 @@ -6642,22 +6381,22 @@ mg_key: jsr mg_dirty move.l -62(%fp),%d1 tst.l -66(%fp) - jeq .L1088 + jeq .L1057 move.l -66(%fp),%a1 - move.l 12(%a1),%a0 + move.l 16(%a1),%a0 tst.l %a0 - jeq .L1088 + jeq .L1057 cmp.l #vector_midi_assign,%a0 - jne .L1095 + jne .L1064 move.l %d1,-(%sp) jsr (vector_midi_assign.part.0) addq.l #4,%sp jsr mg_note_setup_draw - jra .L1155 -.L1083: + jra .L1127 +.L1052: tst.l -66(%fp) - jne .L1086 -.L1085: + jne .L1055 +.L1054: move.l 1187521622,%a0 mov3q.l #3,%d2 move.b 269161679,%d0 @@ -6669,21 +6408,21 @@ mg_key: muls.l %d3,%d0 mvz.b (%a0,%d0.l),%d0 cmp.l %d0,%d2 - jeq .L1086 + jeq .L1055 jsr mg_note_setup_draw - jra .L1155 -.L1158: + jra .L1127 +.L1130: mvz.w #255,%d0 move.l %d0,-58(%fp) - jra .L1094 -.L1106: + jra .L1063 +.L1075: clr.l -66(%fp) - jra .L1081 -.L1107: + jra .L1050 +.L1076: clr.l -66(%fp) clr.l -58(%fp) - jra .L1081 -.L1157: + jra .L1050 +.L1129: move.l %d1,%a0 add.l #-2147457418,%a0 move.b (%a0),%d0 @@ -6695,10 +6434,10 @@ mg_key: eor.l %d2,%d0 move.w %d1,%d2 lea mg_arp_setup_slots,%a0 - move.l %a0,-36(%fp) + move.l %a0,-32(%fp) move.l %d3,%a1 sub.l #mg_arp_page-1005,%d3 - move.l %d3,-24(%fp) + move.l %d3,-20(%fp) tst.b %d0 seq %d0 mulu.w #68,%d2 @@ -6707,12 +6446,12 @@ mg_key: sub.l %a1,%d2 mvs.b %d0,%d0 add.l #1187474924,%a0 - move.l %d2,-20(%fp) + move.l %d2,-24(%fp) neg.l %d0 - move.l %d0,-32(%fp) + move.l %d0,-36(%fp) move.l #mg_arp_page,%d0 - jra .L1091 -.L1110: + jra .L1060 +.L1079: move.l 1187521622,%a0 mov3q.l #3,%d2 move.b 269161679,%d0 @@ -6735,460 +6474,514 @@ mg_key: add.l #269110990,%a0 move.b %d3,(%a0) tst.l -66(%fp) - jne .L1094 - jra .L1158 -.L1084: + jne .L1063 + jra .L1130 +.L1053: cmp.l -66(%fp),%a1 - jeq .L1088 - move.l 12(%a1),%a0 + jeq .L1057 + move.l 16(%a1),%a0 tst.l %a0 - jeq .L1086 + jeq .L1055 cmp.l #vector_midi_assign,%a0 - jeq .L1086 + jeq .L1055 clr.l -(%sp) move.l %d1,-(%sp) move.l %d1,-62(%fp) jsr (%a0) addq.l #8,%sp move.l -62(%fp),%d1 - jra .L1086 -.L1095: + jra .L1055 +.L1064: mov3q.l #1,-(%sp) move.l %d1,-(%sp) jsr (%a0) addq.l #8,%sp jsr mg_note_setup_draw - jra .L1155 -.L1108: + jra .L1127 +.L1077: clr.l -58(%fp) - jra .L1081 + jra .L1050 .size mg_key, .-mg_key .align 2 .globl mg_knob .type mg_knob, @function mg_knob: link.w %fp,#-16 - mov3q.l #5,%d1 + move.l #vector_midi,%d1 + move.l %d2,-(%sp) move.l 1074061804,%d0 - cmp.l 8(%fp),%d1 - jcs .L1159 + mov3q.l #5,%d2 + move.l %d1,-16(%fp) + cmp.l 8(%fp),%d2 + jcs .L1131 lea mg_page_layer,%a1 cmp.l mg_active.l,%a1 - jeq .L1171 -.L1159: + jeq .L1146 +.L1131: + move.l -20(%fp),%d2 unlk %fp rts -.L1171: +.L1146: + tst.l -2147483630 + jeq .L1131 + move.l #1187521622,%a0 + move.l (%a0),%d1 + add.l #-1073741824,%d1 + cmp.l #133169151,%d1 + jhi .L1131 + move.l #269161676,%a1 + mov3q.l #7,%d2 + mvz.b (%a1),%d1 + cmp.l %d1,%d2 + jcs .L1131 + move.b (%a1),%d1 + move.l (%a0),%a0 + add.l #585088,%a0 cmp.l #mg_page_site,%d0 seq %d0 + mvz.b %d1,%d2 + move.b 269161679,%d1 mvs.b %d0,%d0 + move.l %d2,%a1 + mov3q.l #3,%d2 + move.l %a1,-(%sp) neg.l %d0 + and.l %d2,%d1 + mvz.w #6322,%d2 + muls.l %d2,%d1 + pea (%a0,%d1.l) move.l %d0,-(%sp) pea -16(%fp) - jsr (mg_view.constprop.0) - addq.l #8,%sp + jsr mg_page_view + lea (16,%sp),%sp tst.l %d0 - jeq .L1159 + jeq .L1131 move.l %d0,%a1 - move.l 20(%a1),%a0 + move.l 24(%a1),%a0 tst.l %a0 - jeq .L1159 - move.l mg_second,%d0 + jeq .L1131 + move.l mg_second,%d1 + move.l 1175262852,%d0 cmp.l #vector_midi_knob,%a0 - jne .L1161 - move.l %d0,-(%sp) + jne .L1133 + move.l %d1,-(%sp) move.l 12(%fp),-(%sp) move.l 8(%fp),-(%sp) + move.l %d0,-(%sp) jsr (%a0) - lea (12,%sp),%sp + lea (16,%sp),%sp mov3q.l #-1,-(%sp) jsr 1074059592 mov3q.l #1,1187497772 addq.l #4,%sp -.L1172: +.L1147: + move.l -20(%fp),%d2 unlk %fp rts -.L1161: - move.l %d0,-(%sp) +.L1133: + move.l %d1,-(%sp) move.l 12(%fp),-(%sp) move.l 8(%fp),-(%sp) + move.l %d0,-(%sp) jsr (%a0) - lea (12,%sp),%sp + lea (16,%sp),%sp mov3q.l #-1,-(%sp) jsr 1074059592 mov3q.l #1,1187497772 addq.l #4,%sp - jra .L1172 + jra .L1147 .size mg_knob, .-mg_knob .align 2 .globl mg_tick .type mg_tick, @function mg_tick: - lea (-28,%sp),%sp + link.w %fp,#-44 + move.l #1187521622,%a1 movem.l #7180,(%sp) - move.l 1074061804,%a1 - move.l #1187521622,%a0 - move.l (%a0),%a2 + move.l 1074061804,%a2 + move.l #vector_midi,%d0 moveq #28,%d3 - move.l mg_seen,%d1 - cmp.l #mg_page_site,%a1 + move.l (%a1),%a3 + move.l %d0,-16(%fp) + cmp.l #mg_page_site,%a2 seq %d0 - move.b -2147483645,%d2 + move.b -2147483645,%d1 mvs.b %d0,%d0 neg.l %d0 + move.w %d1,%a0 + move.l mg_seen,%d1 + move.l %a0,%d2 lsl.l %d3,%d2 eor.l %d2,%d0 - move.l %a2,%d2 + move.l %a3,%d2 eor.l %d2,%d0 - cmp.l #mg_page_site,%a1 - jne .L1174 + cmp.l #mg_page_site,%a2 + jne .L1149 eor.l #vector_midi,%d0 cmp.l %d0,%d1 - jeq .L1175 + jeq .L1150 move.l %d0,mg_seen - move.l (%a0),%d0 + move.l (%a1),%d0 add.l #-1073741824,%d0 cmp.l #133169151,%d0 - jhi .L1175 - move.l (%a0),%a4 + jhi .L1150 + move.l (%a1),%a4 mov3q.l #3,%d3 mvz.w #6322,%d2 move.b 269161679,%d0 - move.w #1008,%a2 add.l #585088,%a4 + move.w #1008,%a2 move.l #1187474894,%a3 move.l #-2147457418,%d1 and.l %d3,%d0 muls.l %d2,%d0 add.l %d0,%a4 - lea (6179,%a4),%a1 -.L1179: - move.b (%a1),%d0 - move.l %a1,%a0 + lea (6179,%a4),%a0 + move.l %a0,-24(%fp) +.L1154: + move.l -24(%fp),%a0 + move.l %a0,%a1 moveq #77,%d3 - mvz.b -(%a0),%d2 + move.b (%a0),%d0 + mvz.b -(%a1),%d2 cmp.l %d2,%d3 - jne .L1176 + jne .L1151 mvz.b %d0,%d0 - moveq #86,%d2 - cmp.l %d0,%d2 - jeq .L1177 - move.b (%a0),%d0 -.L1176: - addq.l #2,%a1 + move.l -16(%fp),%a0 + cmp.l 8(%a0),%d0 + jeq .L1152 + move.b (%a1),%d0 +.L1151: + addq.l #2,-24(%fp) addq.l #1,%d1 lea (68,%a3),%a3 lea (32,%a2),%a2 cmp.l #-2147457410,%d1 - jne .L1179 -.L1175: + jne .L1154 +.L1150: tst.l -2147483630 - jeq .L1180 + jeq .L1155 move.l #1187521622,%a0 move.l (%a0),%d0 add.l #-1073741824,%d0 cmp.l #133169151,%d0 - jhi .L1180 - mvz.b 269161676,%d2 - move.l (%a0),%d1 - mov3q.l #7,%d3 - move.b 269161679,%d0 - cmp.l %d2,%d3 - jcs .L1184 - mov3q.l #3,%d3 - and.l %d3,%d0 - mvz.w #6322,%d3 - move.l 1074513600,%a1 - add.l #585088,%d1 - muls.l %d3,%d0 - move.l %d0,%a2 - add.l %d1,%a2 - tst.l %a1 - jne .L1185 + jhi .L1155 + mvz.b 269161676,%d1 + move.l (%a0),%d0 + mov3q.l #7,%d2 + move.b 269161679,%d3 + move.w %d3,%a0 + cmp.l %d1,%d2 + jcs .L1159 + move.l %a0,%d3 + mov3q.l #3,%d2 + and.l %d2,%d3 + mvz.w #6322,%d2 + add.l #585088,%d0 + muls.l %d2,%d3 + move.l %d3,%a0 + lea (%a0,%d0.l),%a2 + tst.l 1074513600 + jne .L1160 + move.l %d1,-(%sp) + move.l %a2,-(%sp) + mov3q.l #1,-(%sp) + pea -16(%fp) + move.l %d1,-20(%fp) clr.l mg_opened -.L1186: - move.l mg_shown,%d1 - mov3q.l #2,%d0 - cmp.l 1175262852.l,%d0 - jne .L1194 - tst.l 1175263034 - jne .L1194 - tst.l 1175262868 - jne .L1194 - move.l %d2,%a0 - lea (3089,%a0),%a0 - lea (%a2,%a0.l*2),%a0 - move.b 1(%a0),%d0 - mvz.b (%a0),%d3 - move.l %d3,%a2 - moveq #77,%d3 - cmp.l %a2,%d3 - jne .L1194 - mvz.b %d0,%d0 - moveq #86,%d3 - cmp.l %d0,%d3 - jeq .L1199 - move.b (%a0),%d0 -.L1194: + jsr mg_page_view + lea (16,%sp),%sp + move.l -20(%fp),%d1 + cmp.l mg_shown.l,%d1 + jeq .L1245 clr.l mg_second - move.l %d2,mg_shown - tst.l %a1 - jne .L1195 -.L1192: - move.l mg_active,%d0 + move.l %d1,mg_shown tst.l %d0 - jeq .L1173 + jeq .L1168 +.L1174: + lea mg_page_layer,%a2 +.L1175: + move.l mg_active,%a3 + cmp.l %a2,%a3 + jne .L1246 + tst.l (%a3) + jeq .L1148 tst.l mg_mine - jne .L1173 - cmp.l #mg_page_layer,%d0 - seq %d2 - move.l %d0,-(%sp) + jne .L1148 + cmp.l #mg_page_layer,%a3 + seq %d0 + move.l %a3,-(%sp) + move.l %d0,%d1 + neg.l %d1 + move.l %d1,%a4 jsr 1073943660 clr.l mg_active move.l 1175262812,%a0 addq.l #4,%sp - neg.l %d2 -.L1224: - clr.b %d0 -.L1210: + cmp.l #mg_list_layer,%a3 + jeq .L1176 +.L1177: + tst.l %a0 + jeq .L1197 + tst.l (%a0) + jne .L1197 + lea mg_keys,%a0 + move.l %a0,-24(%fp) + lea mg_saved,%a2 +.L1188: + move.l -24(%fp),%a0 + addq.l #1,-24(%fp) + mvz.b (%a0)+,%d0 + sub.l %a0,%a0 + mulu.w #24,%d0 + move.l %d0,%a1 + add.l #1187502302,%a1 +.L1187: + move.l (%a1,%a0.l),%d0 + cmp.l #mg_key,%d0 + jeq .L1186 + move.l %d0,(%a2,%a0.l) +.L1186: + addq.l #4,%a0 + moveq #12,%d0 + cmp.l %a0,%d0 + jne .L1187 + lea (12,%a2),%a2 + cmp.l #mg_saved+48,%a2 + jne .L1188 + clr.l (%a3) + move.l %a3,-(%sp) + jsr 1073943700 + cmp.l #mg_page_layer,%a3 + seq %d0 + move.l %a3,mg_active + addq.l #4,%sp + neg.l %d0 +.L1184: + move.w %a4,%d2 mvz.b %d0,%d0 - mvz.b %d2,%d2 - cmp.l %d0,%d2 - jeq .L1173 + mvz.b %d2,%d1 + cmp.l %d0,%d1 + jeq .L1148 mov3q.l #-1,-(%sp) jsr 1074059592 mov3q.l #1,1187497772 addq.l #4,%sp -.L1173: - movem.l (%sp),#7180 - lea (28,%sp),%sp +.L1148: + movem.l -44(%fp),#7180 + unlk %fp rts -.L1177: +.L1152: tst.b (%a4,%a2.l) - jeq .L1176 + jeq .L1151 move.l 1187521622,%a0 - mov3q.l #3,%d3 + mov3q.l #3,%d2 move.b 269161679,%d0 - mvz.w #6322,%d2 + mvz.w #6322,%d3 add.l #585088,%a0 - and.l %d3,%d0 - clr.b %d3 - muls.l %d2,%d0 - mov3q.l #3,%d2 + and.l %d2,%d0 + muls.l %d3,%d0 add.l %d0,%a0 - move.b %d3,(%a0,%a2.l) - mvz.w #6322,%d3 + clr.b %d0 + move.b %d0,(%a0,%a2.l) move.b 269161679,%d0 and.l %d2,%d0 + clr.b %d2 muls.l %d3,%d0 move.l %d0,%a0 add.l #269110990,%a0 - clr.b %d0 - move.b %d0,(%a0,%a2.l) + move.b %d2,(%a0,%a2.l) move.l %d1,%a0 move.b -8(%a0),%d0 mvz.b -2147483646,%d2 mvz.b %d0,%d0 cmp.l %d0,%d2 - jeq .L1287 -.L1178: - move.l %d1,20(%sp) - move.l %a1,24(%sp) + jeq .L1247 +.L1153: + move.l %d1,-20(%fp) jsr mg_dirty - move.l 24(%sp),%a1 - move.l 20(%sp),%d1 -.L1289: - addq.l #2,%a1 + move.l -20(%fp),%d1 +.L1249: addq.l #1,%d1 + addq.l #2,-24(%fp) lea (68,%a3),%a3 lea (32,%a2),%a2 cmp.l #-2147457410,%d1 - jne .L1179 - jra .L1175 -.L1174: + jne .L1154 + jra .L1150 +.L1149: cmp.l %d0,%d1 - jeq .L1180 + jeq .L1155 move.l %d0,mg_seen -.L1180: +.L1155: tst.l mg_active - jeq .L1288 - mvz.b 269161676,%d2 + jeq .L1248 + mvz.b 269161676,%d1 move.l 1187521622,%d0 move.b 269161679,%d0 -.L1184: +.L1159: clr.l mg_opened - cmp.l mg_shown.l,%d2 - jeq .L1191 + cmp.l mg_shown.l,%d1 + jeq .L1167 clr.l mg_second - move.l %d2,mg_shown - jra .L1192 -.L1287: + move.l %d1,mg_shown +.L1168: + move.l mg_active,%d0 + tst.l %d0 + jeq .L1148 + tst.l mg_mine + jne .L1148 + cmp.l #mg_page_layer,%d0 + seq %d1 + move.l %d0,-(%sp) + move.l %d1,%d2 + neg.l %d2 + jsr 1073943660 + clr.l mg_active + move.l 1175262812,%a0 + move.l %d2,%a4 + addq.l #4,%sp +.L1197: + clr.b %d0 + jra .L1184 +.L1247: move.b (%a0),%d0 mvz.b -2147483645,%d2 mvz.b %d0,%d0 cmp.l %d0,%d2 - jne .L1178 + jne .L1153 clr.b (%a3) - move.l %d1,20(%sp) - move.l %a1,24(%sp) + move.l %d1,-20(%fp) jsr mg_dirty - move.l 24(%sp),%a1 - move.l 20(%sp),%d1 - jra .L1289 -.L1200: - tst.l %a1 - jeq .L1222 -.L1195: + move.l -20(%fp),%d1 + jra .L1249 +.L1176: + tst.l 1074513572 + jne .L1197 + lea mg_keys,%a0 lea mg_list_layer,%a3 -.L1201: - move.l mg_active,%d0 - cmp.l %d0,%a3 - jne .L1290 - tst.l (%a3) - jeq .L1173 + move.l %a0,-24(%fp) + lea mg_saved,%a2 + jra .L1188 +.L1246: tst.l mg_mine - jne .L1173 - cmp.l #mg_page_layer,%a3 - seq %d2 - move.l %a3,-(%sp) - jsr 1073943660 - clr.l mg_active + jne .L1148 + tst.l %a3 + jne .L1179 move.l 1175262812,%a0 - addq.l #4,%sp - neg.l %d2 - cmp.l #mg_list_layer,%a3 - jeq .L1202 -.L1203: + cmp.l #mg_list_layer,%a2 + jeq .L1180 tst.l %a0 - jeq .L1224 + jeq .L1148 tst.l (%a0) - jne .L1224 - lea mg_keys,%a4 - lea mg_saved,%a2 -.L1214: - mvz.b (%a4)+,%d0 - sub.l %a0,%a0 - mulu.w #24,%d0 - move.l %d0,%a1 - add.l #1187502302,%a1 -.L1213: - move.l (%a1,%a0.l),%d0 - cmp.l #mg_key,%d0 - jeq .L1212 - move.l %d0,(%a2,%a0.l) -.L1212: - addq.l #4,%a0 - moveq #12,%d0 - cmp.l %a0,%d0 - jne .L1213 - lea (12,%a2),%a2 - cmp.l #mg_saved+48,%a2 - jne .L1214 - clr.l (%a3) - move.l %a3,-(%sp) - jsr 1073943700 - cmp.l #mg_page_layer,%a3 - seq %d0 - move.l %a3,mg_active - addq.l #4,%sp - neg.l %d0 - jra .L1210 -.L1202: - tst.l 1074513572 - jne .L1224 - lea mg_list_layer,%a3 - lea mg_keys,%a4 + jne .L1148 + sub.l %a4,%a4 + move.l %a2,%a3 +.L1252: + lea mg_keys,%a0 + move.l %a0,-24(%fp) lea mg_saved,%a2 - jra .L1214 -.L1288: - movem.l (%sp),#7180 + jra .L1188 +.L1248: + movem.l -44(%fp),#7180 clr.l mg_opened clr.l mg_second - lea (28,%sp),%sp + unlk %fp rts -.L1290: - tst.l mg_mine - jne .L1173 +.L1160: + move.l mg_opened,%a3 + tst.l %a3 + jeq .L1250 +.L1163: + move.l %d1,-(%sp) + move.l %a2,-(%sp) + mov3q.l #1,-(%sp) + pea -16(%fp) + move.l %d1,-20(%fp) + jsr mg_page_view + lea (16,%sp),%sp + move.l -20(%fp),%d1 + cmp.l mg_shown.l,%d1 + jeq .L1251 + clr.l mg_second + move.l %d1,mg_shown +.L1172: + lea mg_list_layer,%a2 + jra .L1175 +.L1167: + clr.l mg_second + jra .L1168 +.L1251: tst.l %d0 - jne .L1205 - move.l 1175262812,%a0 - cmp.l #mg_list_layer,%a3 - jeq .L1206 - tst.l %a0 - jeq .L1173 - tst.l (%a0) - jne .L1173 - clr.b %d2 -.L1292: - lea mg_keys,%a4 - lea mg_saved,%a2 - jra .L1214 -.L1185: - move.l mg_opened,%d1 - tst.l %d1 - jeq .L1291 - mov3q.l #1,%a1 - jra .L1186 -.L1191: + jeq .L1170 + mov3q.l #2,%d3 + cmp.l 1175262852.l,%d3 + jeq .L1172 +.L1170: clr.l mg_second - jra .L1192 -.L1291: - move.l %d2,%a0 + lea mg_list_layer,%a2 + jra .L1175 +.L1250: + move.l %d1,%a0 + moveq #77,%d2 lea (3089,%a0),%a0 - lea (%a2,%a0.l*2),%a0 + lea (%a2,%a0.l*2),%a1 mov3q.l #1,mg_opened - move.b 1(%a0),%d0 - mvz.b (%a0),%d3 - move.l %d3,%a1 - moveq #77,%d3 - cmp.l %a1,%d3 - jne .L1189 + move.b 1(%a1),%d0 + mvz.b (%a1),%d3 + cmp.l %d3,%d2 + jne .L1165 mvz.b %d0,%d0 - moveq #86,%d3 - cmp.l %d0,%d3 - jeq .L1220 - move.b (%a0),%d0 -.L1189: - move.l %d1,mg_cursor + move.l -16(%fp),%a0 + cmp.l 8(%a0),%d0 + jeq .L1194 + move.b (%a1),%d0 +.L1165: + move.l %d1,-20(%fp) + move.l %a3,mg_cursor jsr mg_note_setup_draw -.L1293: - mov3q.l #1,%a1 - jra .L1186 -.L1206: + move.l -20(%fp),%d1 + jra .L1163 +.L1180: tst.l 1074513572 - jne .L1173 - clr.b %d2 - jra .L1292 -.L1205: - cmp.l #mg_page_layer,%d0 - seq %d2 - move.l %d0,-(%sp) + jne .L1148 + sub.l %a4,%a4 + move.l %a2,%a3 + jra .L1252 +.L1245: + tst.l %d0 + jeq .L1167 + mov3q.l #2,%d0 + cmp.l 1175262852.l,%d0 + jeq .L1174 + clr.l mg_second + lea mg_page_layer,%a2 + jra .L1175 +.L1194: + mov3q.l #1,%a3 + move.l %d1,-20(%fp) + move.l %a3,mg_cursor + jsr mg_note_setup_draw + move.l -20(%fp),%d1 + jra .L1163 +.L1179: + cmp.l #mg_page_layer,%a3 + seq %d0 + move.l %a3,-(%sp) + move.l %d0,%d3 + neg.l %d3 jsr 1073943660 clr.l mg_active move.l 1175262812,%a0 + move.l %d3,%a4 addq.l #4,%sp - neg.l %d2 - cmp.l #mg_list_layer,%a3 - jeq .L1202 - tst.l %a3 - jne .L1203 + cmp.l #mg_list_layer,%a2 + jeq .L1176 + move.l %a2,%a3 + tst.l %a2 + jne .L1177 clr.b %d0 - jra .L1210 -.L1220: - mov3q.l #1,%d1 - move.l %d1,mg_cursor - jsr mg_note_setup_draw - jra .L1293 -.L1199: - cmp.l %d2,%d1 - jeq .L1200 - clr.l mg_second - move.l %d2,mg_shown - tst.l %a1 - jne .L1195 -.L1222: - lea mg_page_layer,%a3 - jra .L1201 + jra .L1184 .size mg_tick, .-mg_tick .align 2 .globl st_ui_tick @@ -7198,79 +6991,79 @@ st_ui_tick: movem.l #19580,(%sp) jsr mg_tick tst.l pool_direct - jeq .L1295 + jeq .L1254 tst.l 1175351520 - jne .L1382 + jne .L1341 clr.l pool_direct -.L1295: +.L1254: tst.l pool_pending - jne .L1383 -.L1297: + jne .L1342 +.L1256: move.l 1187521622,%d0 add.l #-1073741824,%d0 cmp.l #133169151,%d0 - jls .L1299 + jls .L1258 mov3q.l #1,%d1 move.l -2147457608,%d0 cmp.l %d0,%d1 - jeq .L1384 + jeq .L1343 move.l %d0,last_transport -.L1379: +.L1338: move.l 1187521622,%d3 clr.l %d2 mvz.b 269161679,%d1 move.l %d1,40(%sp) mvz.b 269161676,%d4 -.L1307: +.L1266: move.l layer_gen,%a2 move.l active,%d0 cmp.l shown_bank.l,%d3 - jeq .L1385 -.L1314: + jeq .L1344 +.L1273: tst.l %a2 - jeq .L1321 + jeq .L1280 tst.l %d0 - jne .L1339 + jne .L1298 move.l 40(%sp),%d5 clr.l edit_view move.l %d3,shown_bank move.l %d5,shown_part move.l %d4,shown_track -.L1316: +.L1275: move.l 1175262812,%a0 tst.l %d2 - jeq .L1294 + jeq .L1253 tst.l %a0 - jeq .L1294 + jeq .L1253 tst.l (%a0) - jne .L1294 + jne .L1253 move.l #st_key,%d1 move.l #1187503478,%a0 lea saved-1187503478,%a1 -.L1328: +.L1287: move.l (%a0),%d0 cmp.l %d1,%d0 - jeq .L1327 + jeq .L1286 move.l %d0,(%a1,%a0.l) -.L1327: +.L1286: addq.l #4,%a0 cmp.l #1187503490,%a0 - jne .L1328 + jne .L1287 move.l #1187503790,%a0 lea saved-1187503778,%a1 -.L1330: +.L1289: move.l (%a0),%d0 cmp.l %d1,%d0 - jeq .L1329 + jeq .L1288 move.l %d0,(%a1,%a0.l) -.L1329: +.L1288: addq.l #4,%a0 cmp.l #1187503802,%a0 - jne .L1330 + jne .L1289 jsr generator_view move.l %d0,layer_gen tst.l %d0 - jeq .L1341 + jeq .L1300 lea st_layer,%a0 clr.l (%a0) move.l %a0,-(%sp) @@ -7280,11 +7073,11 @@ st_ui_tick: jsr 1074059592 mov3q.l #1,1187497772 addq.l #8,%sp -.L1294: +.L1253: movem.l (%sp),#19580 lea (64,%sp),%sp rts -.L1299: +.L1258: move.l 1187521622,%a2 mov3q.l #3,%d5 move.b 269161679,%d0 @@ -7296,27 +7089,27 @@ st_ui_tick: and.l %d5,%d0 muls.l %d6,%d0 add.l %d0,%a2 -.L1303: +.L1262: move.l %a6,-(%sp) move.l %a2,-(%sp) jsr (%a3) addq.l #8,%sp tst.l %d0 - jeq .L1302 + jeq .L1261 mov3q.l #1,%d0 move.l %a6,%d1 lsl.l %d1,%d0 or.l %d0,%d2 -.L1302: +.L1261: addq.l #1,%a6 moveq #8,%d5 cmp.l %a6,%d5 - jne .L1303 + jne .L1262 move.l -2147457608,%d0 mov3q.l #1,%d5 cmp.l %d0,%d5 - jeq .L1386 -.L1308: + jeq .L1345 +.L1267: move.l %d0,last_transport move.l 1187521622,%d3 move.b 269161679,%d5 @@ -7324,34 +7117,34 @@ st_ui_tick: mvz.b %d5,%d6 mvz.b 269161676,%d4 move.l %d6,40(%sp) -.L1334: +.L1293: move.w #497,%a6 clr.l %d0 lea (-435,%a2),%a3 -.L1312: +.L1271: btst %d0,%d2 - jeq .L1311 + jeq .L1270 mvz.b (%a3,%a6.l),%d1 mov3q.l #1,%d5 cmp.l %d1,%d5 - jeq .L1387 -.L1311: + jeq .L1346 +.L1270: addq.l #1,%d0 lea (30,%a6),%a6 moveq #8,%d1 cmp.l %d0,%d1 - jne .L1312 -.L1388: + jne .L1271 +.L1347: mov3q.l #7,%d5 cmp.l %d4,%d5 - jcs .L1335 + jcs .L1294 tst.b 34(%a2,%d4.l) - jne .L1335 + jne .L1294 move.l #1074606108,%d0 -.L1313: +.L1272: move.l %d0,1074618188 tst.l %d2 - jeq .L1307 + jeq .L1266 tst.l -2147483630 seq %d2 move.l layer_gen,%a2 @@ -7359,9 +7152,9 @@ st_ui_tick: mvs.b %d2,%d2 neg.l %d2 cmp.l shown_bank.l,%d3 - jne .L1314 - jra .L1385 -.L1387: + jne .L1273 + jra .L1344 +.L1346: move.l %d0,-(%sp) lea (57,%sp),%a0 move.l %d0,36(%sp) @@ -7418,36 +7211,36 @@ st_ui_tick: moveq #8,%d1 addq.l #1,%d0 cmp.l %d0,%d1 - jne .L1312 - jra .L1388 -.L1383: + jne .L1271 + jra .L1347 +.L1342: jsr pool_context tst.l %d0 - jeq .L1389 + jeq .L1348 tst.l 1175346736 - jne .L1297 + jne .L1256 tst.l 1175351520 - jne .L1297 + jne .L1256 jsr st_pool_choice_open - jra .L1297 -.L1385: + jra .L1256 +.L1344: move.l 40(%sp),%d6 cmp.l shown_part.l,%d6 - jne .L1314 + jne .L1273 cmp.l shown_track.l,%d4 - jne .L1314 + jne .L1273 tst.l %a2 - jeq .L1315 + jeq .L1274 tst.l %d0 - jeq .L1316 + jeq .L1275 lea st_layer,%a3 tst.l %d2 - jeq .L1319 + jeq .L1278 tst.l st_layer - jeq .L1318 -.L1319: + jeq .L1277 +.L1278: tst.l mine - jne .L1294 + jne .L1253 move.l %a3,-(%sp) jsr 1073943660 clr.l active @@ -7456,15 +7249,15 @@ st_ui_tick: lea (44,%sp),%a1 addq.l #4,%sp move.l (%a1),shown_part - jra .L1316 -.L1386: + jra .L1275 +.L1345: cmp.l last_transport.l,%d5 - jeq .L1308 + jeq .L1267 tst.l %d2 - jeq .L1309 + jeq .L1268 sub.l %a3,%a3 lea generate_track,%a6 -.L1310: +.L1269: clr.l -(%sp) moveq #8,%d6 clr.l -(%sp) @@ -7473,7 +7266,7 @@ st_ui_tick: addq.l #1,%a3 lea (12,%sp),%sp cmp.l %a3,%d6 - jne .L1310 + jne .L1269 mov3q.l #1,last_transport move.l 1187521622,%d3 move.b 269161679,%d0 @@ -7484,17 +7277,17 @@ st_ui_tick: clr.l %d0 mvz.b 269161676,%d4 move.l %d1,40(%sp) - jra .L1312 -.L1335: + jra .L1271 +.L1294: move.l #1074606510,%d0 - jra .L1313 -.L1321: + jra .L1272 +.L1280: tst.l %d0 - jeq .L1390 + jeq .L1349 move.l #st_edit_layer,%d0 tst.l mine - jne .L1294 -.L1391: + jne .L1253 +.L1350: move.l %d0,-(%sp) jsr 1073943660 clr.l active @@ -7504,40 +7297,40 @@ st_ui_tick: addq.l #4,%sp move.l %d4,shown_track move.l (%a0),shown_part - jra .L1316 -.L1390: + jra .L1275 +.L1349: move.l 40(%sp),%d1 clr.l edit_view move.l %d3,shown_bank move.l %d1,shown_part move.l %d4,shown_track - jra .L1316 -.L1339: + jra .L1275 +.L1298: move.l #st_layer,%d0 tst.l mine - jne .L1294 - jra .L1391 -.L1384: + jne .L1253 + jra .L1350 +.L1343: mov3q.l #1,%d6 cmp.l last_transport.l,%d6 - jeq .L1379 + jeq .L1338 mov3q.l #1,last_transport move.l 1187521622,%d3 clr.l %d2 mvz.b 269161679,%d1 move.l %d1,40(%sp) mvz.b 269161676,%d4 - jra .L1307 -.L1382: + jra .L1266 +.L1341: jsr pool_context tst.l %d0 - jne .L1295 + jne .L1254 clr.l pool_direct - jra .L1295 -.L1389: + jra .L1254 +.L1348: clr.l pool_pending - jra .L1297 -.L1341: + jra .L1256 +.L1300: lea st_edit_layer,%a0 clr.l (%a0) move.l %a0,-(%sp) @@ -7547,23 +7340,23 @@ st_ui_tick: jsr 1074059592 mov3q.l #1,1187497772 addq.l #8,%sp - jra .L1294 -.L1315: + jra .L1253 +.L1274: tst.l %d0 - jeq .L1316 + jeq .L1275 lea st_edit_layer,%a3 tst.l %d2 - jeq .L1319 + jeq .L1278 tst.l st_edit_layer - jne .L1319 -.L1318: + jne .L1278 +.L1277: jsr generator_view cmp.l %d0,%a2 - jne .L1319 + jne .L1278 movem.l (%sp),#19580 lea (64,%sp),%sp rts -.L1309: +.L1268: mov3q.l #1,last_transport move.l 1187521622,%d3 move.b 269161679,%d5 @@ -7571,12 +7364,12 @@ st_ui_tick: mvz.b %d5,%d6 mvz.b 269161676,%d4 move.l %d6,40(%sp) - jra .L1334 + jra .L1293 .size st_ui_tick, .-st_ui_tick .section .rodata .align 2 .type formats.1, @object - .size formats.1, 48 + .size formats.1, 24 formats.1: .long midi_format_0 .long midi_format_1 @@ -7584,18 +7377,19 @@ formats.1: .long midi_format_3 .long midi_format_4 .long midi_format_5 - .long midi_format_6 - .long midi_format_7 - .long midi_format_8 - .long midi_format_9 - .long midi_format_10 - .long midi_format_11 - .type first.2, @object - .size first.2, 12 -first.2: - .base64 "CwsAAQgwAQwMAAAA" - .local locked.3 - .comm locked.3,64,1 + .type titles.2, @object + .size titles.2, 39 +titles.2: + .string "VECTOR SRC" + .zero 2 + .string "VECTOR AMP 1" + .string "VECTOR AMP 2" + .type first.3, @object + .size first.3, 16 +first.3: + .base64 "CwsAAQAwAQwMAAAAAAAAAA==" + .local locked.4 + .comm locked.4,64,1 .section .rodata.str1.1 .LC9: .string "C" @@ -7623,9 +7417,9 @@ first.2: .string "B" .section .rodata .align 2 - .type roots.5, @object - .size roots.5, 48 -roots.5: + .type roots.6, @object + .size roots.6, 48 +roots.6: .long .LC9 .long .LC10 .long .LC11 @@ -7638,11 +7432,11 @@ roots.5: .long .LC18 .long .LC19 .long .LC20 - .set roots.0,roots.5 + .set roots.0,roots.6 .align 2 - .type formats.6, @object - .size formats.6, 48 -formats.6: + .type formats.7, @object + .size formats.7, 48 +formats.7: .long format_0 .long format_1 .long format_2 @@ -7656,9 +7450,9 @@ formats.6: .long format_10 .long format_11 .align 2 - .type handlers.7, @object - .size handlers.7, 8 -handlers.7: + .type handlers.8, @object + .size handlers.8, 8 +handlers.8: .long pool_static .long pool_flex .type mg_keys, @object @@ -7693,34 +7487,107 @@ mg_arp_page: .globl vector_midi .align 2 .type vector_midi, @object - .size vector_midi, 32 + .size vector_midi, 36 vector_midi: - .long 1 + .long 2 .long .LC8 .long 86 + .long 1 .long vector_midi_assign .long vector_midi_page .long vector_midi_knob .long vector_midi_yes .long 0 + .local midi_view + .comm midi_view,4,2 .data .align 2 .type midi_page_built, @object .size midi_page_built, 4 midi_page_built: .zero 4 + .section .rodata + .type midi_layout, @object + .size midi_layout, 18 +midi_layout: + .base64 "AAECAwwG" + .base64 "DQUEBwgK" + .base64 "CQsODxAQ" + .type midi_byte, @object + .size midi_byte, 16 +midi_byte: + .base64 "AAECAwQFBgcICQoLAAANDg==" + .type midi_max, @object + .size midi_max, 16 +midi_max: + .base64 "DxALBH5/fwwYP0ABCX8VFw==" .section .rodata.str1.1 .LC21: - .string "001 STATIC" + .string "TYPE" .LC22: + .string "DENS" +.LC23: + .string "ROOT" +.LC24: + .string "SCAL" +.LC25: + .string "GATE" +.LC26: + .string "ACNT" +.LC27: + .string "SEED" +.LC28: + .string "SPAN" +.LC29: + .string "OFST" +.LC30: + .string "ROT" +.LC31: + .string "RPT" +.LC32: + .string "DIR" +.LC33: + .string "OCT" +.LC34: + .string "VEL" +.LC35: + .string "PROB" +.LC36: + .string "HUMN" + .section .rodata + .align 2 + .type midi_names, @object + .size midi_names, 68 +midi_names: + .long .LC21 + .long .LC22 + .long .LC23 + .long .LC24 + .long .LC25 + .long .LC26 + .long .LC27 + .long .LC28 + .long .LC29 + .long .LC30 + .long .LC31 + .long .LC32 + .long .LC33 + .long .LC34 + .long .LC35 + .long .LC36 + .long .LC3 + .section .rodata.str1.1 +.LC37: + .string "001 STATIC" +.LC38: .string "002 FLEX" .section .rodata .align 2 .type pool_labels, @object .size pool_labels, 8 pool_labels: - .long .LC21 - .long .LC22 + .long .LC37 + .long .LC38 .data .align 2 .type pool_browse, @object @@ -7831,74 +7698,48 @@ scales: .word 1193 .globl vector_scale_names .section .rodata.str1.1 -.LC23: +.LC39: .string "CHR" -.LC24: +.LC40: .string "MIN" -.LC25: +.LC41: .string "MAJ" -.LC26: +.LC42: .string "DOR" -.LC27: +.LC43: .string "PENT" .section .rodata .align 2 .type vector_scale_names, @object .size vector_scale_names, 20 vector_scale_names: - .long .LC23 - .long .LC24 - .long .LC25 - .long .LC26 - .long .LC27 + .long .LC39 + .long .LC40 + .long .LC41 + .long .LC42 + .long .LC43 .globl vector_control_max .type vector_control_max, @object .size vector_control_max, 12 vector_control_max: .base64 "DxALBH5/fwwYP0AB" .globl vector_control_names - .section .rodata.str1.1 -.LC28: - .string "TYPE" -.LC29: - .string "DENS" -.LC30: - .string "ROOT" -.LC31: - .string "SCAL" -.LC32: - .string "GATE" -.LC33: - .string "ACNT" -.LC34: - .string "SEED" -.LC35: - .string "SPAN" -.LC36: - .string "OFST" -.LC37: - .string "ROT" -.LC38: - .string "RPT" -.LC39: - .string "DIR" - .section .rodata .align 2 .type vector_control_names, @object .size vector_control_names, 48 vector_control_names: + .long .LC21 + .long .LC22 + .long .LC23 + .long .LC24 + .long .LC25 + .long .LC26 + .long .LC27 .long .LC28 .long .LC29 .long .LC30 .long .LC31 .long .LC32 - .long .LC33 - .long .LC34 - .long .LC35 - .long .LC36 - .long .LC37 - .long .LC38 - .long .LC39 .globl vector_defaults .type vector_defaults, @object .size vector_defaults, 11 diff --git a/sdk/octabam/modules/vector/midi.c b/sdk/octabam/modules/vector/midi.c index 2c3fd705b..7004837fa 100644 --- a/sdk/octabam/modules/vector/midi.c +++ b/sdk/octabam/modules/vector/midi.c @@ -1,46 +1,85 @@ /* VECTOR on MIDI tracks: a MIDI generator (sdk/machines/octatrack/events.json ot_midi_generators). The same original * phrase engine writes the track's note trigs and NOTE, VEL and LEN locks; the stock MIDI sequencer plays them, so - * tempo, track speed, swing, conditions and note-offs stay stock's. Its twelve controls are the track's ARP page and, - * after FUNC+AMP, its second page. They are kept in the track's arpeggiator note bytes, which the base gives a - * generator's track (Part 0x1832 + 16 t, value - 64: the -64..63 stock's validator keeps). Included after native.c - * (its Part, dirty and redraw helpers). MIDI track records: octabam docs/firmware/STEP_LOCKS.md, and on the owner's - * MKII (21 October 2026): trig mask 0 at +0, length +0x28, locks +0x30 + 32 step (NOTE 0, VEL 1, LEN 2). */ + * tempo, track speed, swing, conditions and note-offs stay stock's. Its controls take the SRC page (stock's NOTE page) + * and the AMP page (stock's ARP page; FUNC+AMP its second): layout A, the owner's choice of 24 October 2026. OCT, VEL + * and GATE are the track's own NOTE, VEL and LEN, so a trig placed by hand plays the root at the phrase's velocity and + * length; the others are kept in the track's arpeggiator note bytes, which the base gives a generator's track (Part + * 0x1832 + 16 t, value - 64: the -64..63 stock's validator keeps). Included after native.c (its Part, dirty and redraw + * helpers). MIDI track records: octabam docs/firmware/STEP_LOCKS.md, and on the owner's MKII (21 October 2026): trig + * mask 0 at +0, length +0x28, locks +0x30 + 32 step (NOTE 0, VEL 1, LEN 2); the trig word as the audio record's + * (PARAM_PAGES.md 5g: micro-timing in bits 12-7, condition in 6-0, labels 0x400b2588). */ #include "modwerk_events.h" #define MIDI_TRACKS 0x48d0u #define MIDI_TRACK_BYTES 0x8b0u #define MIDI_LOCKS 0x30u -#define MIDI_TIMING 0x830u /* two bytes a step: micro timing and condition, as the audio record's 0x89a */ +#define MIDI_TIMING 0x830u /* the trig word, high byte first, two bytes a step */ +#define MIDI_PAGE1(t) (0x3e2u + 32u * (t)) /* the NOTE page's values: NOTE, VEL, LEN, NOT2-4 */ #define MIDI_NOTES(t) (0x1832u + 16u * (t)) #define MIDI_MARK 12u /* a thirteenth byte: 'V' once VECTOR wrote its controls there */ -#define MIDI_GATE_DEFAULT 8u /* LEN units: 4 to 8, about a sixteenth, as the stock LEN default 6 */ +#define MIDI_NOTE_FORMAT (0x400d3e3eu + 0xcau) /* the NOTE page descriptor's formatters: NOTE's, then VEL's, LEN's */ + +/* Controls 0-11 are the audio machine's (engine.c's order); GATE is the track's LEN, so arp byte 4 stays unused. */ +enum { C_ROOT = 2, C_GATE = 4, C_SEED = 6, C_OCT = 12, C_VEL, C_PROB, C_HUMN, C_NONE }; +static const char *const midi_names[17] = {"TYPE", "DENS", "ROOT", "SCAL", "GATE", "ACNT", "SEED", "SPAN", "OFST", "ROT", + "RPT", "DIR", "OCT", "VEL", "PROB", "HUMN", ""}; +static const uint8_t midi_max[16] = {15, 16, 11, 4, 126, 127, 127, 12, 24, 63, 64, 1, 9, 127, 21, 23}; +static const uint8_t midi_byte[16] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 0, 0, 13, 14}; /* PROB, HUMN past the mark */ +/* SRC; AMP; FUNC+AMP. */ +static const uint8_t midi_layout[3][6] = { + {0, 1, C_ROOT, 3, C_OCT, C_SEED}, + {C_VEL, 5, C_GATE, 7, 8, 10}, + {9, 11, C_PROB, C_HUMN, C_NONE, C_NONE}, +}; static unsigned midi_value(unsigned t, unsigned k) { return (uint8_t)((int8_t)current_part()[MIDI_NOTES(t) + k] + 64); } -static void midi_put(unsigned t, unsigned k, unsigned v) +/* A byte of the current Part and its battery-backed copy. */ +static void midi_part(unsigned at, uint8_t v) { - unsigned at = MIDI_NOTES(t) + k, part = U8(PART_IDX) & 3u; - current_part()[at] = (uint8_t)(v - 64u); - U8(SRAM_PART + part * PART_STRIDE + at) = (uint8_t)(v - 64u); + current_part()[at] = v; + U8(SRAM_PART + (U8(PART_IDX) & 3u) * PART_STRIDE + at) = v; +} +static void midi_put(unsigned t, unsigned k, unsigned v) { midi_part(MIDI_NOTES(t) + k, (uint8_t)(v - 64u)); } +/* A NOTE page value, and its live copy while the track plays this bank and Part (as the base's arp reset). */ +static void midi_page1(unsigned t, unsigned k, unsigned v) +{ + midi_part(MIDI_PAGE1(t) + k, (uint8_t)v); + if (U8(0x8000666eu + t) == U8(0x80000002u) && U8(0x80006676u + t) == U8(0x80000003u)) + U8(0x46c76dc0u + 0x44u * t + k) = (uint8_t)v; } static unsigned midi_control(unsigned t, unsigned c) { + const volatile uint8_t *page1 = current_part() + MIDI_PAGE1(t); + unsigned v; + if (c >= C_NONE) return 0; + if (c == C_OCT) v = page1[0] / 12u; + else if (c == C_VEL) v = page1[1]; + else if (c == C_GATE) v = page1[2]; + else if (midi_value(t, MIDI_MARK) != 'V') { + static const uint8_t first[16] = {11, 11, 0, 1, 0, 48, 1, 12, 12, 0, 0, 0, 0, 0, 0, 0}; + return c == C_SEED ? t + 1u : first[c]; + } else v = midi_value(t, midi_byte[c]); + return v > midi_max[c] ? midi_max[c] : v; +} +/* OCT and ROOT both set NOTE: the root in that octave. The first control kept writes every default and the mark. */ +static void midi_set_control(unsigned t, unsigned c, unsigned v) +{ + if (c == C_OCT || c == C_ROOT) + midi_page1(t, 0, 12u * (c == C_OCT ? v : midi_control(t, C_OCT)) + (c == C_ROOT ? v : midi_control(t, C_ROOT))); + if (c == C_VEL) { midi_page1(t, 1, v); return; } + if (c == C_GATE) { midi_page1(t, 2, v); return; } + if (c == C_OCT) return; if (midi_value(t, MIDI_MARK) != 'V') { - static const uint8_t first[12] = {11, 11, 0, 1, MIDI_GATE_DEFAULT, 48, 1, 12, 12, 0, 0, 0}; - return c == 6 ? t + 1u : first[c]; + for (unsigned k = 0; k < C_NONE; ++k) + if (k != C_GATE && k != C_OCT && k != C_VEL) midi_put(t, midi_byte[k], midi_control(t, k)); + midi_put(t, MIDI_MARK, 'V'); } - unsigned v = midi_value(t, c); - return v > vector_control_max[c] ? vector_control_max[c] : v; + midi_put(t, midi_byte[c], v); } static void midi_params(unsigned t, VectorParams *p, uint32_t *seed) { uint8_t *bytes = (uint8_t *)p; - for (unsigned c = 0; c < 12; ++c) if (c != 6) bytes[c < 6 ? c : c - 1] = (uint8_t)midi_control(t, c); - *seed = midi_control(t, 6); -} -static void midi_save(unsigned t, const VectorParams *p, uint32_t seed) -{ - const uint8_t *bytes = (const uint8_t *)p; - for (unsigned c = 0; c < 12; ++c) midi_put(t, c, c == 6 ? seed & 127u : bytes[c < 6 ? c : c - 1]); - midi_put(t, MIDI_MARK, 'V'); + for (unsigned c = 0; c < 12; ++c) if (c != C_SEED) bytes[c < C_SEED ? c : c - 1] = (uint8_t)midi_control(t, c); + *seed = midi_control(t, C_SEED); } static unsigned midi_bit(const uint8_t *r, unsigned mask, unsigned step) { return (r[mask * 8u + 7u - step / 8u] >> (step % 8u)) & 1u; } @@ -62,13 +101,24 @@ static void midi_set(volatile uint8_t *r, volatile uint8_t *mirror, unsigned at, { if (r[at] != v) { r[at] = v; mirror[at] = v; } } +/* A note's trig word from PROB and HUMN: off the beat (a step not a multiple of 4) it gets the condition PROB names, + * 99% (1) down to 1% (21) of stock's list; HUMN moves every note by up to that many micro-timing units either way. + * From the seed and the step, so turning another control keeps them where they were. */ +static unsigned midi_word(unsigned step, uint32_t seed, unsigned prob, unsigned humn) +{ + uint32_t h = (seed + 1u) * 0x9e3779b9u ^ (step + 1u) * 0x85ebca6bu; + h ^= h >> 15; h *= 0x2c1b3c6du; h ^= h >> 12; + int micro = humn ? (int)(h % (2u * humn + 1u)) - (int)humn : 0; + unsigned condition = prob && step % 4u ? 30u - prob : 0u; + return ((unsigned)micro & 0x3fu) << 7 | condition; +} /* In place, as stock's own editors store: module code and data run uncached, so a whole-record copy in and out cost * about 0.8 ms of a 1.3 ms knob turn on the owner's MKII (21 October 2026); this touches the five masks, three locks - * a step and the timing of the steps that change. NOTE locks from the phrase's semitones over `octave` (the C at or - * under the track's NOTE), VEL from its volumes, LEN from its holds. Other locks and swing stay; old and new notes - * lose stale timing, conditions and trigless marks. `locked` gets whether each step keeps any lock (the lock index). */ + * a step and the trig words of the steps that change. NOTE locks from the phrase's semitones over `octave`, VEL from + * its volumes, LEN from its holds. Other locks and swing stay; old and new notes lose stale trigless marks, and their + * trig words are rewritten (none on a removed note). `locked` gets whether each step keeps any lock (the lock index). */ static void midi_write(volatile uint8_t *r, volatile uint8_t *mirror, const VectorPhrase *phrase, unsigned octave, - uint8_t locked[VECTOR_STEPS]) + uint32_t seed, unsigned prob, unsigned humn, uint8_t locked[VECTOR_STEPS]) { uint8_t masks[40]; for (unsigned k = 0; k < 40; ++k) masks[k] = r[k]; @@ -81,7 +131,9 @@ static void midi_write(volatile uint8_t *r, volatile uint8_t *mirror, const Vect midi_set(r, mirror, at + 2u, s->active ? s->hold : VECTOR_NO_LOCK); midi_setbit(masks, 0, i, s->active); if (old || s->active) { - midi_set(r, mirror, MIDI_TIMING + 2u * i, 0); midi_set(r, mirror, MIDI_TIMING + 2u * i + 1u, 0); + unsigned word = s->active ? midi_word(i, seed, prob, humn) : 0u; + midi_set(r, mirror, MIDI_TIMING + 2u * i, (uint8_t)(word >> 8)); + midi_set(r, mirror, MIDI_TIMING + 2u * i + 1u, (uint8_t)word); midi_setbit(masks, 1, i, 0); midi_setbit(masks, 4, i, 0); } unsigned any = s->active; @@ -94,7 +146,7 @@ static void midi_write(volatile uint8_t *r, volatile uint8_t *mirror, const Vect /* On the UI task, into the current pattern's record and its battery-backed copy, then published through stock's * track update (MIDI tracks are 8-15 there). Stock's lock index (0x400339d8) rescans every track of the pattern, 16 x * 64 x 32 bytes, about 3 ms on the unit; only this track's bit changes, so it is set here: bit t of each step's byte - * at 0x46c7d2e4 (the MIDI tracks'), as that routine sets it. */ + * at 0x46c7d2e4 (the MIDI tracks'), as that routine sets it. A fresh seed is kept only once its phrase is written. */ static int midi_generate(unsigned t, int replace, int fresh) { unsigned p = U8(PATTERN_IDX); @@ -107,11 +159,11 @@ static int midi_generate(unsigned t, int replace, int fresh) VectorParams params; uint32_t seed; midi_params(t, ¶ms, &seed); if (fresh) seed = vector_next_seed(seed); - const volatile uint8_t *notes = current_part() + 0x3e2u + 32u * t; /* NOTE page: NOTE, VEL */ - if (!length || length > 64 || notes[1] > 127 || !vector_generate(&phrase, ¶ms, length, notes[1], seed)) return 0; + const volatile uint8_t *page1 = current_part() + MIDI_PAGE1(t); + if (!length || length > 64 || page1[1] > 127 || !vector_generate(&phrase, ¶ms, length, page1[1], seed)) return 0; static uint8_t locked[VECTOR_STEPS]; - midi_write(r, mirror, &phrase, notes[0] - notes[0] % 12u, locked); - midi_save(t, ¶ms, seed); + midi_write(r, mirror, &phrase, page1[0] - page1[0] % 12u, seed, midi_control(t, C_PROB), midi_control(t, C_HUMN), locked); + if (fresh) midi_set_control(t, C_SEED, seed); dirty_part(part & 3u); for (unsigned i = 0; i < VECTOR_STEPS; ++i) U8(0x46c7d2e4u + i) = (uint8_t)((U8(0x46c7d2e4u + i) & ~(1u << t)) | locked[i] << t); @@ -119,16 +171,20 @@ static int midi_generate(unsigned t, int replace, int fresh) return 1; } -/* The page: stock's ARP descriptor with VECTOR's names and formatters in value-text cells, built in the audio page's buffer - * (never shown together); audio's generator_page rebuilds it once src_page_ready is clear. */ +/* The pages: stock's NOTE or ARP descriptor with VECTOR's names and formatters in value-text cells, built in the audio + * page's buffer (never shown together); audio's generator_page rebuilds it once src_page_ready is clear. */ static uint32_t midi_page_built = 0; +static unsigned midi_view; static void midi_format(char *out, unsigned c) { - unsigned v = midi_control(U8(TRACK_IDX), c); - if (c == 4) { ((void (*)(char *, int))*(const uint32_t *)(uintptr_t)(0x400d3e3eu + 0xcau + 8u))(out, (int)v); return; } + typedef void (*Format)(char *, int); + unsigned t = U8(TRACK_IDX), v = midi_control(t, c); + if (c == C_GATE) { ((Format)*(const uint32_t *)(uintptr_t)(MIDI_NOTE_FORMAT + 8u))(out, (int)v); return; } + if (c == C_OCT) { ((Format)*(const uint32_t *)(uintptr_t)MIDI_NOTE_FORMAT)(out, (int)(12u * v + midi_control(t, C_ROOT))); return; } static const char *const roots[] = {"C", "C#", "D", "D#", "E", "F", "F#", "G", "G#", "A", "A#", "B"}; - const char *name = c == 2 ? roots[v % 12] : c == 3 ? vector_scale_names[v % 5] : - c == 11 ? (v ? "REV" : "FWD") : c == 10 && !v ? "OFF" : 0; + const char *name = c == C_ROOT ? roots[v % 12] : c == 3 ? vector_scale_names[v % 5] : c == 11 ? (v ? "REV" : "FWD") : + (c == 10 || c == C_PROB) && !v ? "OFF" : c == C_NONE ? "" : + c == C_PROB ? *(const char *const *)(uintptr_t)(0x400b2588u + 4u * (30u - v)) : 0; unsigned i = 0; if (name) { do out[i] = name[i]; while (name[i++]); return; } if (c == 8) { int s = (int)v - 12; if (s < 0) { out[i++] = '-'; v = (unsigned)-s; } else v = (unsigned)s; } @@ -136,61 +192,62 @@ static void midi_format(char *out, unsigned c) if (v >= 10) out[i++] = (char)('0' + v / 10 % 10); out[i++] = (char)('0' + v % 10); out[i] = 0; } -#define MIDI_FORMATTER(n) static void midi_format_##n(char *out, int value) { (void)value; midi_format(out, n); } +#define MIDI_FORMATTER(n) static void midi_format_##n(char *out, int value) { (void)value; midi_format(out, midi_layout[midi_view][n]); } MIDI_FORMATTER(0) MIDI_FORMATTER(1) MIDI_FORMATTER(2) MIDI_FORMATTER(3) MIDI_FORMATTER(4) MIDI_FORMATTER(5) -MIDI_FORMATTER(6) MIDI_FORMATTER(7) MIDI_FORMATTER(8) MIDI_FORMATTER(9) MIDI_FORMATTER(10) MIDI_FORMATTER(11) -static uint32_t vector_midi_page(uint32_t stock, unsigned second) +static unsigned midi_view_of(unsigned page, unsigned second) { return page == 0u ? 0u : 1u + (second & 1u); } +static uint32_t vector_midi_page(uint32_t stock, unsigned page, unsigned second) { - if (src_page_ready || midi_page_built != stock + second + 1u) { - static void (*const formats[12])(char *, int) = {midi_format_0, midi_format_1, midi_format_2, midi_format_3, - midi_format_4, midi_format_5, midi_format_6, midi_format_7, midi_format_8, midi_format_9, midi_format_10, midi_format_11}; + unsigned view = midi_view_of(page, second); + midi_view = view; + if (src_page_ready || midi_page_built != stock + view + 1u) { + static void (*const formats[6])(char *, int) = {midi_format_0, midi_format_1, midi_format_2, midi_format_3, + midi_format_4, midi_format_5}; + static const char titles[3][13] = {"VECTOR SRC", "VECTOR AMP 1", "VECTOR AMP 2"}; const volatile uint8_t *source = (const volatile uint8_t *)(uintptr_t)stock; - unsigned page = second & 1u; uint8_t *d = src_page; - { - for (unsigned i = 0; i < sizeof src_page; ++i) d[i] = source[i]; - label(d + 4, "VEC"); - for (unsigned i = 0; i < 12; ++i) d[9 + i] = (uint8_t)"VECTOR 1/2\0"[i]; - d[16] = (uint8_t)('1' + page); - for (unsigned i = 0; i < 6; ++i) { - label(d + 0x16 + 6 * i, vector_control_names[i + 6 * page]); - put32(d + 0xca + 4 * i, (uint32_t)(uintptr_t)formats[i + 6 * page]); - put32(d + 0xfa + 4 * i, 0x400467a4u); /* stock's value-text cell, as the NOTE page's */ - } - put32(d + 0x18a, 0x00005555u); - put32(d + 0x18e, 0x55555555u); + for (unsigned i = 0; i < sizeof src_page; ++i) d[i] = source[i]; + label(d + 4, "VEC"); + for (unsigned i = 0; i < 13; ++i) d[9 + i] = (uint8_t)titles[view][i]; + for (unsigned i = 0; i < 6; ++i) { + label(d + 0x16 + 6 * i, midi_names[midi_layout[view][i]]); + put32(d + 0xca + 4 * i, (uint32_t)(uintptr_t)formats[i]); + put32(d + 0xfa + 4 * i, 0x400467a4u); /* stock's value-text cell, as the NOTE page's */ } + put32(d + 0x18a, 0x00005555u); + put32(d + 0x18e, 0x55555555u); src_page_ready = 0; - midi_page_built = stock + second + 1u; + midi_page_built = stock + view + 1u; } return (uint32_t)(uintptr_t)src_page; } -static void vector_midi_knob(unsigned index, int delta, unsigned second) +static void vector_midi_knob(unsigned page, unsigned index, int delta, unsigned second) { - unsigned t = U8(TRACK_IDX), c = index + (second ? 6u : 0u); - VectorParams p, before; uint32_t seed, old; - midi_params(t, &p, &seed); before = p; old = seed; - uint8_t *parameter = (uint8_t *)&p + (c < 6 ? c : c - 1); - int value = (int)(c == 6 ? seed : *parameter) + delta; + unsigned t = U8(TRACK_IDX), c = index < 6u ? midi_layout[midi_view_of(page, second)][index] : C_NONE; + if (c >= C_NONE) return; + unsigned old = midi_control(t, c); + int value = (int)old + delta; if (value < 0) value = 0; - if (value > vector_control_max[c]) value = vector_control_max[c]; - if (c == 6) seed = (uint32_t)value; else *parameter = (uint8_t)value; - if (c == 6 ? seed == old : *parameter == ((uint8_t *)&before)[c < 6 ? c : c - 1]) return; - midi_save(t, &p, seed); - if (!midi_generate(t, 1, 0)) midi_save(t, &before, old); + if (value > midi_max[c]) value = midi_max[c]; + if ((unsigned)value == old) return; + midi_set_control(t, c, (unsigned)value); + if (!midi_generate(t, 1, 0)) midi_set_control(t, c, old); } -static void vector_midi_yes(void) +static void vector_midi_yes(unsigned page) { + (void)page; notice(midi_generate(U8(TRACK_IDX), 1, 1) ? "VECTOR GENERATED" : "NO CHANGE"); } -/* Chosen: VECTOR's defaults, and a first phrase on an empty track; a track with notes waits for a control. */ +/* Chosen: VECTOR's defaults, the track's NOTE on the root (C) of its octave and its chord notes off (NOT2-4 have no + * place on VECTOR's SRC page), and a first phrase on an empty track; a track with notes waits for a control. */ static void vector_midi_assign(unsigned t, unsigned on) { if (!on) return; - VectorParams p = vector_defaults; p.gate = MIDI_GATE_DEFAULT; - midi_save(t, &p, t + 1u); + unsigned note = current_part()[MIDI_PAGE1(t)]; + midi_set_control(t, C_SEED, t + 1u); + midi_page1(t, 0, note > 119u ? 108u : note - note % 12u); + for (unsigned k = 3; k < 6; ++k) midi_page1(t, k, 64); (void)midi_generate(t, 0, 0); } const struct modwerk_midi_generator vector_midi = { - MODWERK_MIDI_GENERATOR_ABI, "VECTOR", 'V', vector_midi_assign, vector_midi_page, vector_midi_knob, vector_midi_yes, 0, + MODWERK_MIDI_GENERATOR_ABI, "VECTOR", 'V', 1u, vector_midi_assign, vector_midi_page, vector_midi_knob, vector_midi_yes, 0, }; diff --git a/src/community/module-changelogs/vector.json b/src/community/module-changelogs/vector.json index 52c4fd09b..bf29ca2e2 100644 --- a/src/community/module-changelogs/vector.json +++ b/src/community/module-changelogs/vector.json @@ -1,12 +1,12 @@ [ { "version": "0.3.0-experimental", - "date": "2026-10-21", + "date": "2026-10-24", "changes": [ - "New: VECTOR is a MIDI generator for the eight MIDI tracks. Double-tap a MIDI track's key (or double-tap SRC) and choose VECTOR in MIDI NOTE SETUP's list; its twelve controls take the track's ARP page, the second six on FUNC+AMP. It writes real note trigs with NOTE, VEL and LEN locks that the Octatrack's own MIDI sequencer plays, so tempo, track speed, swing, conditions, the channel and every note-off stay stock's. Over USB it needs a Modwerk base with MIDI generators; a card build brings its own.", + "New: VECTOR is a MIDI generator for the eight MIDI tracks. Double-tap a MIDI track's key (or double-tap SRC) and choose VECTOR in MIDI NOTE SETUP's list. Its controls take the SRC page (TYPE, DENS, ROOT, SCAL, OCT, SEED) and the AMP page (VEL, ACNT, GATE, SPAN, OFST, RPT; FUNC+AMP: ROT, DIR, PROB, HUMN); LFO, FX1 and FX2 stay the track's own. OCT, VEL and GATE are the track's NOTE, VEL and LEN, so a trig placed by hand fits the phrase. PROB gives the notes off the beat a trig condition (99% down to 1%) and HUMN a micro-timing offset of up to 23/24 of a step. It writes real note trigs with NOTE, VEL and LEN locks that the Octatrack's own MIDI sequencer plays, so tempo, track speed, swing, the channel and every note-off stay stock's. Over USB it needs a Modwerk base with MIDI generators; a card build brings its own.", "Faster edits on both kinds of track: a control turn no longer rebuilds the lock index of all 16 tracks (about 3 ms on the unit), the scale's pitches are worked out once a phrase instead of once a step, and the MIDI phrase is written in place. A 64-step rewrite took 0.5 ms on the owner's MKII; the audio frames and the MIDI timing stayed steady while turning. The generated phrases are the same as 0.2.4's.", "VECTOR's audio tick reads the Part and track numbers once a tick, and its key layer stays off in MIDI mode.", - "Tested on the owner's MKII over USB with development bases (21 October 2026): the list, both pages, generation, MIDI output, removal and reinstall. Not tested: a card build on the unit, a physical power cycle, project save and reload, scenes and LFOs on a VECTOR MIDI track, MKI. While VECTOR is not installed, a VECTOR MIDI track's ARP SETUP shows its stored controls as arp notes. The STATIC/FLEX bank problem of #596 is not addressed." + "Tested on the owner's MKII over USB with development bases (21 and 24 October 2026): the list, the SRC, AMP and FUNC+AMP pages, generation, OCT, ROOT, VEL and GATE, PROB at 1% (only the notes on the beat played) and HUMN (every note within 1 ms of its written offset), holding a trig in grid recording (stock's page and locks), OFF, removal and reinstall. Not tested: a card build on the unit, a physical power cycle, project save and reload, scenes and LFOs on a VECTOR MIDI track, MKI. While VECTOR is not installed, a VECTOR MIDI track's ARP SETUP shows its stored controls as arp notes. The STATIC/FLEX bank problem of #596 is not addressed." ] }, { From 7c9af7ce0539d401b8d39f8d34399f6db99eb871 Mon Sep 17 00:00:00 2001 From: repeat98 Date: Sat, 24 Oct 2026 10:10:33 +0200 Subject: [PATCH 07/33] VECTOR 0.3.0: manifest wording for layout A Co-Authored-By: Claude Opus 5.5 --- sdk/octabam/modules/vector/octamod.module.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/sdk/octabam/modules/vector/octamod.module.json b/sdk/octabam/modules/vector/octamod.module.json index 0cc345fe8..f4ef27a3c 100644 --- a/sdk/octabam/modules/vector/octamod.module.json +++ b/sdk/octabam/modules/vector/octamod.module.json @@ -156,7 +156,7 @@ "Sample must be tuned to the stated C reference. Generated pitch is limited to the native \u00b112-semitone range.", "Parameter edits and YES publish during playback. Custom Undo and bar-quantized replacement are not implemented.", "Uses native pattern/track length, speed and swing. RPT sets a motif length within that track; no independent clock or swing. On a MIDI track it writes trigs and NOTE/VEL/LEN locks that the stock MIDI sequencer sends; it emits no MIDI itself.", - "MIDI tracks (0.3.0): chosen in MIDI NOTE SETUP's list; its controls take the ARP page and FUNC+AMP, and the track's arpeggiator stays off. Over USB it needs a base with MIDI generators. Tested on the owner's MKII over USB only; a card build on hardware, power cycles, project save/reload, scenes and LFOs on a VECTOR MIDI track remain untested.", + "MIDI tracks (0.3.0): chosen in MIDI NOTE SETUP's list; its controls take the SRC page and the AMP page (FUNC+AMP its second), LFO, FX1 and FX2 stay stock's, and the track's arpeggiator stays off. OCT, VEL and GATE are the track's NOTE, VEL and LEN; choosing VECTOR turns NOT2-4 off. Over USB it needs a base with MIDI generators. Tested on the owner's MKII over USB only; a card build on hardware, power cycles, project save/reload, scenes and LFOs on a VECTOR MIDI track remain untested.", "SRC generation knobs are request parameters, not p-lock/LFO/scene destinations. The normal EDIT view retains native playback controls.", "Generation owns note trigs, PTCH/HOLD/VOL locks and note timing/conditions. Every changed generator parameter or YES replaces those across the current track; other locks, recorder events and swing are preserved.", "The DRAM loader reserves 1,707 audio pages (10,487,808 bytes) shared across DRAM modules.", @@ -210,14 +210,14 @@ }, "tests": { "report": "TESTING.md", - "summary": "0.3.0 adds VECTOR as a MIDI generator for the MIDI tracks and makes edits cheaper: a 64-step rewrite took 0.5 ms on the owner's MKII (3.9 ms before), with audio frames and MIDI timing steady. The list, both pages, generation, MIDI output over USB, removal and reinstall ran on the owner's MKII over USB with development bases; the card build was checked by octabam's native builder only. Current-build hardware, chip cycles and complete memory bounds are not measured, under the owner's approval for this exact source.", + "summary": "0.3.0 adds VECTOR as a MIDI generator for the MIDI tracks and makes edits cheaper: a 64-step rewrite took 0.5 ms on the owner's MKII (3.9 ms before), with audio frames and MIDI timing steady. The list, the SRC, AMP and FUNC+AMP pages, generation, PROB and HUMN against recorded MIDI, grid-recording locks, removal and reinstall ran on the owner's MKII over USB with development bases (21 and 24 October 2026); the card build was checked by octabam's native builder only. Current-build hardware, chip cycles and complete memory bounds are not measured, under the owner's approval for this exact source.", "hardwareStatus": "untested", "gates": [ "Firmware-free sanitizer generator, writer and packed-settings checks", "Hoisted scale lookup identical to 0.2.4 over 18,144,000 parameter sets", "Authored C/hooks to assembly reproducibility without firmware", "Base MIDI generator registry host test (sdk/tests test_midi_generators.c)", - "Owner's MKII over USB: list, pages, generation, MIDI output, removal, MODE guard, edit cost", + "Owner's MKII over USB: list, SRC/AMP pages, generation, MIDI output, PROB and HUMN timing, grid-recording locks, removal, MODE guard, edit cost", "Browser/native build parity and matching composition rejection", "Owner-approved update for this exact source; current-build hardware, chip cycles and memory bounds unmeasured" ], @@ -367,7 +367,7 @@ } ], "access": { - "location": "MIDI tracks: MIDI NOTE SETUP's generator list, then the ARP page and FUNC+AMP. Audio tracks: machine chooser VECTOR, then the Static/Flex pool modal; SRC holds phrase controls, SRC SETUP the rest. Double-tap TRACK reopens pool choice; push LEVEL for sample editing.", + "location": "MIDI tracks: MIDI NOTE SETUP's generator list, then the SRC and AMP pages and FUNC+AMP. Audio tracks: machine chooser VECTOR, then the Static/Flex pool modal; SRC holds phrase controls, SRC SETUP the rest. Double-tap TRACK reopens pool choice; push LEVEL for sample editing.", "steps": [ "Select an audio track. Open SRC page 2 (double-tap SRC), choose VECTOR and press YES. In the backing-pool modal, highlight STATIC or FLEX with UP/DOWN or LEVEL, then press RIGHT to enter that pool. YES also opens the highlighted pool; YES on a loaded sample slot assigns that pool and sample to VECTOR. Use the corresponding stock sample-slot and file-loading tools to load a tuned sample; NO returns from the sample browser.", "Double-tap the assigned TRACK to reopen the pool modal. LEFT returns to the machine list; RIGHT on VECTOR opens the modal. RIGHT in the pool modal opens the highlighted Static/Flex sample list. In a sample-slot list, LEFT returns to pool choice and RIGHT opens the stock file browser. Horizontal arrows navigate menus without changing the assigned pool; YES on a sample slot commits the pool and sample.", From 7d44b04e1cebf8b1f5cfce01c0dca4fc988c10fc Mon Sep 17 00:00:00 2001 From: repeat98 Date: Sat, 24 Oct 2026 10:13:08 +0200 Subject: [PATCH 08/33] VECTOR 0.3.0: import the source-built packages for layout A 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 | 4 +- src/engine/assets/menu-recipes.json | 4 +- src/engine/assets/module-build.json | 30 ++++----- src/engine/assets/platform-writes.json | 4 +- src/engine/assets/requested-packages.json | 75 +++++++++++++++++++---- 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, 98 insertions(+), 47 deletions(-) diff --git a/src/engine/assets/bootstrap-package.json b/src/engine/assets/bootstrap-package.json index 2da9061d3..85cb4fe0e 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": "b28f5275fa014f66f63d60878bb500f69039dc88", + "sourceCommit": "7c9af7ce0539d401b8d39f8d34399f6db99eb871", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -39,7 +39,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.1.2-experimental", - "vector": "0.2.4-experimental", + "vector": "0.3.0-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.1-experimental", "recorder-loop-fix": "0.1.0-experimental", diff --git a/src/engine/assets/coldfire-packages.json b/src/engine/assets/coldfire-packages.json index 2631ac84b..6909356c1 100644 --- a/src/engine/assets/coldfire-packages.json +++ b/src/engine/assets/coldfire-packages.json @@ -208,7 +208,7 @@ "sha256": "ccffbf72d45358bde585760b9230c668bf38ebf412ab23efc73732cf96024dca" } ], - "sourceCommit": "b28f5275fa014f66f63d60878bb500f69039dc88", + "sourceCommit": "7c9af7ce0539d401b8d39f8d34399f6db99eb871", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -231,7 +231,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.1.2-experimental", - "vector": "0.2.4-experimental", + "vector": "0.3.0-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.1-experimental", "recorder-loop-fix": "0.1.0-experimental", diff --git a/src/engine/assets/descriptor-recipes.json b/src/engine/assets/descriptor-recipes.json index 36fac5788..411eea34d 100644 --- a/src/engine/assets/descriptor-recipes.json +++ b/src/engine/assets/descriptor-recipes.json @@ -4400,7 +4400,7 @@ ] } ], - "sourceCommit": "b28f5275fa014f66f63d60878bb500f69039dc88", + "sourceCommit": "7c9af7ce0539d401b8d39f8d34399f6db99eb871", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -4423,7 +4423,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.1.2-experimental", - "vector": "0.2.4-experimental", + "vector": "0.3.0-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.1-experimental", "recorder-loop-fix": "0.1.0-experimental", diff --git a/src/engine/assets/dsp-packages.json b/src/engine/assets/dsp-packages.json index c10ea6e72..33eb647d2 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": "b28f5275fa014f66f63d60878bb500f69039dc88", + "sourceCommit": "7c9af7ce0539d401b8d39f8d34399f6db99eb871", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -25,7 +25,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.1.2-experimental", - "vector": "0.2.4-experimental", + "vector": "0.3.0-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.1-experimental", "recorder-loop-fix": "0.1.0-experimental", diff --git a/src/engine/assets/menu-recipes.json b/src/engine/assets/menu-recipes.json index 916397b64..f2aa2acc9 100644 --- a/src/engine/assets/menu-recipes.json +++ b/src/engine/assets/menu-recipes.json @@ -1425,7 +1425,7 @@ "caveLimit": 1074625596 } ], - "sourceCommit": "b28f5275fa014f66f63d60878bb500f69039dc88", + "sourceCommit": "7c9af7ce0539d401b8d39f8d34399f6db99eb871", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -1448,7 +1448,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.1.2-experimental", - "vector": "0.2.4-experimental", + "vector": "0.3.0-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.1-experimental", "recorder-loop-fix": "0.1.0-experimental", diff --git a/src/engine/assets/module-build.json b/src/engine/assets/module-build.json index 9a1e7b597..16e223e2b 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": "b28f5275fa014f66f63d60878bb500f69039dc88", + "sourceCommit": "7c9af7ce0539d401b8d39f8d34399f6db99eb871", "nativeRevision": "b8deefc88b2c3e5f3c6158e364eb741df1924e1d", - "sourceTreeSha256": "e2bdc7d8c244528547c30fb62001bf92d25a5e2bda4b47742cde40f297de05fc", + "sourceTreeSha256": "b90b89fddb8b148e5dc6f12ad3c04fb4240f1551bc39c67be44de439d636e80f", "compilerSha256": "2e930b9c970226bf2b432a9aa81aec4b16d835364243c1a877fe2c850492271b", "moduleVersions": { "spectrum": "0.1.1-experimental", @@ -27,7 +27,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.1.2-experimental", - "vector": "0.2.4-experimental", + "vector": "0.3.0-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.1-experimental", "recorder-loop-fix": "0.1.0-experimental", @@ -39,47 +39,47 @@ "files": { "dsp-packages.json": { "bytes": 87713, - "sha256": "f4d13360f934e7d995a23907f56c02233e659fdb3a7cab72d17917ed8686fa1a" + "sha256": "5bb9a82f3c2e17a797814c0c9cbc0e65bb89f9f6eb4b841ef356d6f6148d6776" }, "resident-dsp.json": { "bytes": 25132, - "sha256": "2a359c9afdec77da2d6a2d66fd16ca608268504a02c06ca86a666132af458fc4" + "sha256": "3e0fc0786854f0d35875f217af09340761c965c26fe719ac1aee7675df50e737" }, "coldfire-packages.json": { "bytes": 353367, - "sha256": "0f2797642c4de48fd005193237cf7feba36b936cc1d3b70bff3600c715565ec0" + "sha256": "cf65c052568c6afb832524765b59eece72518de419e1137902d24bb33f0f113b" }, "rom-packages.json": { "bytes": 25518, - "sha256": "8ed8c319335dd751648c7ed8f9588f7bb66ec2305f8544c395faab53991ed443" + "sha256": "6de8c46b4e0c8cc62aaabac43e55a79d4ea47addf4310a96b46d60fa2c2e5a8d" }, "bootstrap-package.json": { "bytes": 3866, - "sha256": "01b9dc5eccf7788890dd8c9d1f735d73674e71608b662ec54078a812f6cb2382" + "sha256": "d0654a36eba746a38d4c9d274abab51678195481993b80f716ba0d38ff75f7fb" }, "menu-recipes.json": { "bytes": 37525, - "sha256": "4f979e1d7ec4b7f223f1c503b4ef6e24ab327313d80ef7aaee5dd3596925b47e" + "sha256": "4f49c84a0f8edf00af13b296e7ab466c09004eb97a692159728e8d712f1d9b16" }, "descriptor-recipes.json": { "bytes": 84366, - "sha256": "10c9a59158a33bced1d09f65beac9a2ed19add706f1d9d1504f6050a89f805ab" + "sha256": "cef3d279501aeb04afa9b3ccfaae7e84f90c9135d03ce6a82940444eb8243f60" }, "platform-writes.json": { "bytes": 17609, - "sha256": "5d92d9dbc20a35cff11f9ba5a7dbc0154117aa6f41619f6039b9987a088b45f8" + "sha256": "277ca6fb2cec851ef5d443f6c724e8b28a8d0c4313fe97c611916fb26156ee68" }, "requested-packages.json": { - "bytes": 1092188, - "sha256": "07f08c5fcaa8e6ec3334ae5dc654192f8cfc4ac269e188bbea0767f1ea70c0f3" + "bytes": 1122814, + "sha256": "ca5b4cc2665e996aace35d3d87999c4539d3e612f9fdec42e53ac40b97a61074" }, "utility-packages.json": { "bytes": 12994, - "sha256": "8ae97b00009dc5c44335a0d575934f6c3ff7993aabe714584a7b7884279e5f47" + "sha256": "332f561f10239c1ba3d27675b6075f64a7b55fa23cd7fecae9f226d6614b2af0" }, "usb-audio-packages.json": { "bytes": 737636, - "sha256": "4c0decb8ad0ea17d3ccfeea368e1cc1f39f7e5ba5afe83148c614e71efff6fa7" + "sha256": "55ad2dfda5d94611de8d65879c5d749b11fa3353c81b3ee694c51003d2f79cdd" } }, "approval": null, diff --git a/src/engine/assets/platform-writes.json b/src/engine/assets/platform-writes.json index 43cca0f11..9e419b01e 100644 --- a/src/engine/assets/platform-writes.json +++ b/src/engine/assets/platform-writes.json @@ -526,7 +526,7 @@ "sha256": "09effec7437266b693e358d43f0ba0f3de2b0b35fe4d81e7b76ba90cf388bde8" } ], - "sourceCommit": "b28f5275fa014f66f63d60878bb500f69039dc88", + "sourceCommit": "7c9af7ce0539d401b8d39f8d34399f6db99eb871", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -549,7 +549,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.1.2-experimental", - "vector": "0.2.4-experimental", + "vector": "0.3.0-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.1-experimental", "recorder-loop-fix": "0.1.0-experimental", diff --git a/src/engine/assets/requested-packages.json b/src/engine/assets/requested-packages.json index 2ab331dbe..5c1514b61 100644 --- a/src/engine/assets/requested-packages.json +++ b/src/engine/assets/requested-packages.json @@ -1,7 +1,7 @@ { "schema": 1, "revision": "b8deefc88b2c3e5f3c6158e364eb741df1924e1d", - "sourceCommit": "b28f5275fa014f66f63d60878bb500f69039dc88", + "sourceCommit": "7c9af7ce0539d401b8d39f8d34399f6db99eb871", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -24,7 +24,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.1.2-experimental", - "vector": "0.2.4-experimental", + "vector": "0.3.0-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.1-experimental", "recorder-loop-fix": "0.1.0-experimental", @@ -438,7 +438,7 @@ { "label": "vector", "moduleId": "vector", - "version": "0.2.4-experimental", + "version": "0.3.0-experimental", "key": "VECTOR", "author": "repeat98", "nativeAuthor": "repeat98", @@ -447,40 +447,47 @@ "caveAddress": null, "source": "modules/vector/control.s", "sources": { - "modules/vector/control.s": "c4f829e437ffbde1275c00827031b694a86011013d37269077e4696818323471", - "modules/vector/manifest.py": "4d921f24256038797a99671534885b0bb9a27eaa79261b11136cf0a95a75af21" + "modules/vector/control.s": "caa138dc1113f80b9d00477f022debebc9d331d87e63c4b06c9257b5e4897aea", + "modules/vector/manifest.py": "b9dec167f8bd4f1b691069cc89834f6c2a6717b874eb28629ef5c8c026d3d976" }, - "bytes": 23508, - "code": "7f454c4601020100000000000000000000010004000000010000000000000000000059f4000000260034000000000028000c000b4fefffe048d73c3c4ab900000000670e202f0024b0b900000000670000da41f900000000226f002493c81031880010c0b1fc0000000066f24bf900000000428243f90000000049f90000000045f900000000223c00000000265d91c810338800670c158088005288ab43b68866eed1ca4218b28866fa201c26004243484378182a00e8ad2800e08c13400003ab4012851344000213430001b082656a203c00000000781826002a0042434843e8ad2800e08c1340003358891345002c1344002e52825c8a5c81700c1343002db082668877fc5555202f0024283c5555555523c400000000a3790000000023c30000000023c000000000203c000000004cd73c3c4fef00204e75203c00000000781826002a0042434843e8ad2800e08c1340003358891345002c1344002e52825c8a5c81700c1343002db0826600ff1e60924feffc38720f48d77cfc206f03d071902f40003eb2806406740f2f42003e7010206f03d077a800012f43003ab083640672102f41003a700b206f03d075a800022f42004ab0826406720b2f41004aa940206f03d075a800032f420042b0826404a96f0042206f03d0707e73a800042f410046b0816406727e2f410046707f206f03d075a800052f42004eb0826406727f2f41004e700c206f03d075a800062f420032b0826406720c2f4100327218206f03d01028000875a800072f4200361f40005fb282640674182f420036206f03d0226f0036282f03d41028000943e9fff42f4900524a0067107240b2846500042e7180b08465000408206f03cc47ef02c84def03c8116f03d701002f480060224b50c0421011400003114000021140000122d8bdc966ea2a2f003e720b243c9e3779b942862e3c7feb352de3ad45ef00c849ef01c8260a2c452a2f03dc2205b581200142404840b3804c0708007e0f2200eea9b380223c846ca68b4c0108002e0042474847b187a740c0867fc74a80677ade8e2887204320062228fffc4bef03c843f51c00bea9fe00640a2081538059884a8066e441f70c002a4606829e3779b9528d588c5883214600c8bbc4675e22052e3c7feb352db5812c0d200142404840b3804c0708007e0f2200eea9b380223c846ca68b4c0108002e0042474847b187a740c0867fc74a80668628874a866684428041f70c002a4606829e3779b9528d588c5883214600c8bbc466a2300dc0ef003c5080e888671671c043f20c00201a41f70c007001114002c8b5c966f0720c760c202f004a5e804c41000273fc00fe92af004e7ffc00fe226f0052780c700c90af004a2f42005ac2ef03da286f0052d0824c4300024c471001307c001893ef003291ef004a98af0036a340e5a81f410059d9ef003242af002e2c492f4d00522f46003a2f40004e2a6f002e52af002e4a1367000144223c85ebca6b42832c2f002e428543f90000000070f42e2f03dc4c016800246f00422f4b003675f1aa00327c0064bf867e0f0a86b5297a4d220642414841bd812c3c7feb352d4c0618002c01eeaebd812c3c846ca68b4c0618002c0142464846b3862f46003222007c0cd2884c4610070f02672ab08e6c0001542204d2804a816d00013cb3c16f00013e2600528022417c0c2200d2884c4610070f0266d65280720db28066c02c2f0032266f00364a8567162006e0884c45000143f71c00262900640683fffffff4700fc086b0af003e642c7030c0864a80660ac4af004e4a826600015e202f004a0806000667060680fffffff4b08e6d06b9c06d0226007018a7422206e0a9c7fc00054c421000068300000040174300015480c0ef0048e48817400002200dc0824a80670000d80286003000004a86670000cc102f005917400003588bbbef003a6600fea82a6f00524aaf03d4675c71af005f763fb680650000b02c2f03d42206246f03cc2806206f03d053844c4600021628000a71c6206f00602a0643f20c009282240d2c0152814c4560004a0367062c049c8020064c42000647ef03c845f36c0020eaff00b3c866da4cd77cfca3404fef03c84e754481b3c16e00fec652806000fe9cb08c6e1045f75c002640528547eb000c254b00642204d2804a816d18b3c16f00feb222412600720d5280b2806600fe6c6000fea8448160e4102f03db174000036000ff342c2f03d4703f206f03d02206246f03cc28064c4600021628000a71c6206f006053842a06928243f20c00240d6000ff4e202f005a6000fea2206f03cc280047ef02c84def03c8116f03d701002f480060224b6000fbf671807840b0846400fbd460d64fefffd448d74c044242203946c82456227c20300c0c2f4800102040d1fc0008ed8042001239100b14cf3f420028243c0b0b00012f420020a7421f40002a302f00322f490024c28275fc18b2c0fc001e4c021800d1c173b0083e53814a81670001f64def001793c922090681000001e9d280a542b489641e1cb0180052897209b289671e22090681000001e9528ed280a542b48965e245f1083f52891cf0a80060c6102f0017720fa942c2807180e88830401f410020b4806500017e3008122f001874101f400023701fc0813040b4806500013c3408102f0019ea891f420021a342c282740fc4801f41002a12022042740bb488650001027180e8881f410022720c3040b280650000d6122f001a340871811f420026747eb480650000b0102f001b1f4100244a006d00008c122f001c1f40002574187181b480656871af001d1f410027723fb2806546122f001ee188758120427440b4886528100147ef00203f400028206f0010200820d320ef002430ef00284cd74c0410af002a4fef002c4e75724047ef002010013f40002860d4122f001e703fe188758120427440b48864b860de721871af001d1f410027723fb280649660da707f122f001c74181f4000257181b4806400ff7460d8727e102f001b1f4100244a006c00ff5260d8307c000c122f001a340871811f420026747eb4806400ff2a60d4720b7180e88830401f410022720cb2806400ff0060d0307c0010102f0019ea8934081f420021a342c282740fc4801f41002a12022042740bb4886400fec460c0307c0004122f0018741030081f400023701fc0813040b4806400fe8260b847ef002093c9244b22090681000001e94df1083fd280a542b489651a528914f0e80022090681000001e94df1083fd280a542b48964e614b018005289ad41b2896700fecc528a60c0203946c824560680c00000002f020c8007efffff624a327c0022723ca742207946c82456d1fc0008ed801039100b14cfc08275fc18b24c020800a342d1c071b09800d1c1528906810000001eb480650871907453b480670e0c810000012c66bc241f42804e7571a800017432b48066e871a8000253804a80670a71a8000255804a8066d4241fa3404e754feffff42f0e2f0271b9100b14cc2c6f00242f0041ef000d4ebafcbe588fad40b08e675cab42200eb48e6402538071b7080920402f2f00302f2f003070fec0af003043f90000000073b1e8002f002001b1c164022008c0fc007f4c4100002f002f2f00302f2f00302f2f00304eb9400479b44fef001c241f2c5f4fef000c4e751039100b14cc227946c82456a7421239100b14cfd3fc0008ed807180c282c0fc001e204071fc18b241e801f14c001800d3c110318800727fc28020416000ff76518f2f02740b202f00182200206f00105c81226f00142f6f002000042f6f00240008b4816406241f508f4e752f6f000800242f6f000400202f41001c2f4000182f4900142f480010241f508f6000fef2598f2f02740b202f0014222f000c206f0010226f001c2f6f00200004b4806406241f588f4e752f6f000400202f49001c2f4000182f4000142f4800102f41000c241f588f6000feaa4fefffe448d7401c242f002441ef001171b9100b14cc2f004ebafb66588fad40b082676cab40b082653c71b728112202a3435581b6816500009255824a826700012aab434c43000141f900000000226f002020701c00101812c066fa4cd7401c4fef001c4e7571b72810780bb882660001124a80670000e6226f002041f900000000101812c067d4101812c066f460cc1039100b14cc227946c82456a7421239100b14cf77fc18b2d3fc0008ed80787f7180c282c0fc001e20404c03180041e801f1d3c110318800c0847663b68064587864760a2200a54e4c441001206f0020a74906810000003010c122004c43100124014c43200422040681000000301081206f0020d1ce740a4c42000142030681000000301081206f0020118398004cd7401c4fef001c4e75206f0020a34942817409b48064d02c49760a224122004c431001548924014c43200422040681000000301081206f0020d1ce60aa226f002041f9000000006000ff1a740c4c42000141f900000000226f002020701c006000fed6780ab88266144a806600ff3e226f002041f9000000006000fee851824a826600ff2822000681fffffff44a816d0e20017663b6806500ff186000ff6c206f0020740c94802002a54910fc002da3417409b4806400ff306000ff5c700a2f4000086000fe1c70082f4000086000fe12ad6f00086000fe0a71b9100b14cc4feffff441ef00012f004ebaf976588f4a2f000b671641f900000000226f0010101812c066fa4fef000c4e75226f001041f90000000060e84feffff42f0271b9100b14cc41ef0005ab422f004ebaf93471af000c588f41f9000000004c420001226f001420701c00101812c066fa241f4fef000c4e754feffff42f02740c71b9100b14cc41ef00052f004ebaf8f671af000b588f41f9000000004c420001226f001420701c00101812c066fa241f4fef000c4e754fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf8b471af0025588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf7e471af0023588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf71471af0022588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf64471af0021588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf57471af001e588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf4a471af001d588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d8148006090202f0004727f5280c0814e752f032f02206f0010a942226f000c102800037380b481640270041210e988760f7581b6826402720f808112801028000a6702700112280001eb8876107581b682640272108081740c13400001102800067380b4816402700c12280002e988760b7581b6826402720b8081747e13400002102800047380b4816402707e13400003102800056a02707f134000047618102800077380b6816402701813400005743f102800087380b4816402703f134000067640102800097380b68164027040727fc2af00141340000713410008241f261f4e754fefffd848d75c1c2f2f00342f2f003449ef00272f0c4ebaff16362f003a9dce4fef000cc6fc001e141ca540b08e64000086267c100b14cfa7441013227946c82456d3fc0008ed80121345ee01e9528ed5c3c084c28479fc18b24c0408004c0418002040d1fc100a4ece7009d3c11382a8001182a800b08e66ae1013227946c82456a7421213d3fc0008ed80c082c2824c0408004c04180078022040d1fc100a4eced3c11384383e1184383e4cd75c1c4fef00284e75267c100b14cfa7441013227946c82456d3fc0008ed80121345ee003f528ed5c3c084c28479fc18b24c0408004c0418002040d1fc100a4ece7009d3c11382a8001182a800b08e6600ff2a6000ff782f02720f206f0010a942226f00081010c08112807190e8881200b4806402720413410003721f741010280001c0811200b4806402721013410001a341740f71a80001ea88c0811340000a10280002c082740b1200b4806402720b13410002740c71a80002e8881200b4806402720c13410006747e102800037380b4816402707e13400004102800046a02707f134000057418102800057380b4816402701813400007743f102800067380b4816402703f134000087440102800077380b4816402704013400009727f10280008206f000c241fc28020814e75598f2f0a2f02202f0010222f0014206f00184a80672c4a81672845e8ffff743fb48a651e747fb4af001c65162f4800182f4100142f400010241f245f588f6000ebcc241f4280245f588f4e75222f00044a81675a71fc0919b0af000864502001204106800000004052884a28ffff663eb08866f42041200141e8004806800000005052884a28ffff6624b08866f4204106810000085941e80059719052880c80000000ff6608b28866f0a3404e7542804e754fefffd848d73cfc262f002c4a8367000168202f00300c80000009196300015a4aaf003467000152206f0034723f18280100200453807180b2806500013c4aaf003866122f2f00302f034ebaff4e508f4a806700011a7984246f00344281204a1010a3457580ba826500010eb284650001144a0066000102528158887040b08166de264322432843428547eb005943e9007949ec089aaf41c2852805e68caf48a34291c4d1c37190e2a0c0824a1267000132142a000116824a1267000120142a00021742000d4a126700010c142a00031742000fa342e3aa12104a12670000ee828210814a8066044a12673e420042143a7c000f42819284d2839bc4307c004f194000012002468091c41e353800ce801b8738002a411e2d001fce801b47001f12303800c08111803800204b4281101846804a0056c0710044808280b1c966ee307c001791c4d1c310104a1266784a816774848010825285588a47eb0020548c43e900207040b0856600ff2ca3404cd73cfc4fef00284e754cd73cfc42804fef00284e754a006700fef0102800017a787580598071805982ba8065dcab454c4528004a8066d275a800027a7eba8265be4a2800036db8528158887040b0816600fea06000febe4682c48060882e024687c2876000ff0e50c26000fef650c26000fee250c26000fed02f02202f000caf41206f0008b280651c73b00822a342b4816512721e74534c01080041f0083c7190b4806706241f42804e7571a800017232b28066f071a8000253804a80671410280002a541241fb3804a0057c0710044804e75241fa3404e754fefffc8203946c824560680c000000048d744040c8007efffff630c42804cd744044fef00384e75207946c82456a7411039100b14cf75fc18b22f2f003cd1fc0008ed80c0814c020800487008004ebaff50508f4a8067c61039100b14d0740f73802f410018b48165b2322f003e227946c82456488041f9000000002f49001c1439100b14cf246f001cc2fc091a1f4200272c413200c2fc8ed843f618004df298002f4900209dc81030e80010c0b1fc0000000066f24aaf0040670001f871fc8e55206f001cd1c14a3008006700020e1039000000007180743f22005381b4816500ff3a2f2f003c41ef00312f4000104ebaed48342f0042588f207946c82456d1fc0008ed801239100b14cfc4fc001e202f000c2242a742c28275fc18b243e901f14c021800747fd1c112309800c4812f4200284aaf0044670c2202747f5281c4812f420028342f003e207946c82456d1fc0008ed801239100b14cfc4fc00182242a742c28275fc18b243e901234c021800747fd1c173b09800b4816500fe9e2f2f00282f012f00486f00394879000000004ebae77e2f2f00544879000000004878091a4879000000004ebafc0c4fef00244a806700fe68226f001cb3f946c824566600fe5873b9100b14d0b2af00186600fe4a73af002775b9100b14cfb4816600fe3a226f002093fc0000000041f9000000002f49001845f0e800121875922f4a00102f4200147581b4af0014670e1481226f001845e8ffff13928800b1fc0000000066d22f2f0028486f00312f2f00442f4000184ebaf8f2a742122f00332c7946c82456ddfc000950484fef000cc28214163242a342e3aa204222022409828224081c811239100b145e828213c1100b145e207946c82456d1fc0009b332a350a379100f85984eb940027e004eb9400339d82f2f003c4eb94009da20588f4cd74404a37946c7c72c202f000c4fef00384e754878091a4879000000002f4100144ebafa8e508f222f000c4a806600fdee4cd744044fef00384e7571fc8e53103008006000fdf04e56ffe041eeffea2f0a2f0273b9100b14cc2f012d41ffe04ebaeb38322effe2588f207946c82456d1fc0008ed803d6efff2fffd1d6efff4ffff2d6effeefff92d6effeafff5c2fc001e1039100b14cf2241a74143e901f1c08173fc18b24c010800d1c012309800707fc280ab407581b0ae0008657a43eeffead3ee0008206e000c7391d1c14a886d000082246e0008203c0000000071b20800b1c06c022008b0816740128020022f00486effea2f2effe041faf78e2d48ffe44e9042a7a3672f2effe04ebafc524fef0018206effe44a806744a1674eb94004d948a37946c7c72c588f242effd8246effdc4e5e4e75ad40b0ae00086742222e0008206e000c43f618e97391d1c14a886c804a8167d442001280200260902f02486efff52f2effe04e904fef000ca1674eb94004d948a37946c7c72c588f60aa202e000cd0824a806d3c727fb2806c02707fb08267942f00486effea2f2effe041faf6e62d48ffe44e9042a7a3672f2effe04ebafbaa4fef0018206effe44a806600ff5860984a016700ff6042802f00486effea2f2effe041faf6ae2d48ffe44e9042a7a3672f2effe04ebafb724fef0018206effe44a806600ff206000ff60203946c824560680c00000002f020c8007efffff62084a398000001567064280241f4e751239100b14cc207946c82456a7421039100b14cfd1fc0008ed807381c0822f0173fc18b24c010800487008004ebafaac508f4a8067c42039000000004a8066ba4a3946c7d8d866b44ab9460d173a66ac4ab9460d169457c0241f710044804e754fefff78428148d75cfc242f008c284245ef00289dce28024283264a06840000003c49ec002271b41800a346bc80650c41f648007e537190be80674252814dee001e47eb000cbdfc000000f066d82f02206f009442854e90588f91c80b0366000086528541e8001e45ea000cb1fc000000f066e84cd75cfc4fef00884e7571a800017c32bc8066b471a8000253804a80670a71a8000255804a8066a0a340e3a891c8868043f6883cab47be88642c2c08ad474c47600043f60800700c43e901ecd3c21791880042115288b0886700ff6e43f6883cab47be8865d4d3c2179188004211528860be428147f02800ab44b881651449f21800ab442242d3c11194983c5281b88164ec2c01ad474c47600449f21800528143f34800780c135401ecb88166ca528541e8001e45ea000cb1fc000000f06600ff286000ff3c487a13f82f2f00084ebafebc508f4e75203946c824560680c00000002f020c8007efffff62084a39800000156706241f42804e751239100b14cc207946c82456a7421039100b14cfd1fc0008ed807381c0822f0173fc18b24c010800487008004ebaf8de508f241f4e75203900000000b0b946c82456670442804e751039100b14cfa741c081b0b90000000066ea71b9100b14ccb0b90000000066dc6000ff724fefffec70312f0a2f02226f0020a342206f0024b08956c173014481b4886700008ea340e3a82439000000002f420014c4804a82665e4a886632a340244174fd45f21a00d08a45f90000000020320c0022005381b48165322f4900202f480024241f2240245f4fef00144ed12441a54045f21a0074fdd08a45f90000000020320c0022005381b48164ce241f245f4fef00144e754a8866f24680c0af0014241f245f23c0000000004fef00144e752f4100102f4800082f49000c4ebafeb4222f0010206f0008226f000c4a806700008a103946100b1d08000005667c703eb089677c7431b48966702f4100102f4800082f49000c4ebafcac222f0010206f0008226f000c4a806750a34081b9000000001039100b14cca367a36771802f004ebaf7e04fef000c4a80677048780020203c000000002f004eb94005a2b8a1674eb94004d948a37946c7c72c4fef000c241f245f4fef00144e7542806000fee04a3946c7d8d866f24ab90000000057c0a54183b900000000a1677100448023c0000000004eb94004d948588f241fa37946c7c72c245f4fef00144e7548780020203c000000002f004eb94005a2b8a1674eb94004d948a37946c7c72c4fef000c608e203900000000b0b946c8245667024e751039100b14cfa741c081b0b90000000066ec71b9100b14ccb0b90000000066de4ebafd7e4a8067d6a37900000000a379000000004eba10d6a1674eb94004d948a37946c7c72c588f4e75203900000000b0b946c8245667024e751039100b14cfa741c081b0b90000000066ec71b9100b14ccb0b90000000066de4ebafd244a8067d642b900000000a379000000004eba107ca1674eb94004d948a37946c7c72c588f4e75203946c824560680c00000002f020c8007efffff6232203946c82456a7421239100b14cf06800008ed80206f000c41e8ffdec28275fc18b24c021800af42d08122089280b4816408202f0008241f4e75a342b4af000865f02f012f004ebaf5ce508f4a8067e2ab6f0008202f0008241f4e752f032f024ab90000000067084ebafcd64a806672203946c824560680c00000000c8007efffff6236223946c82456a7431039100b14cf06810008ed803040202f00100680ffffffde2408c48377fc18b24c032800d2829081af42b480640a202f000c241f261f4e75a343b6af000c65ee2f002f014ebaf544508f4a8067e0241fab40261f4e75203946c82456a7421239100b14cf77fc18b220790000000006800008ed8041e80022c2824c031800d081d088b0af00106600ff5c241f203900000000261f4e754fefffc4203946c824560680c000000048d74c0c0c8007efffff62000166af40b0af00446500015c223946c82456206f004091c12c48ddfcfff712802f41002473fc18b2200e4c41000220424a8266000132bdfc000062c762000128222f0044a342246f004043f218227391b48164000178a36f0020222f0044701e4c0018004aaf004866624ab900000000670001062f4100142f4800184ebafb84222f0014206f00184a80670000ec203946c8245606800008ed801439100b14cf3242a7422609c68275fc18b24c023800d083b0af0040660000c0262f0044b6b900000000660000b2a56f00482f2f00442f2f00442f41001c2f4800204ebaf3fa508f222f0014206f00184a80670000e8226f0040203c1001614e90af002441f1183c43f118422209227c100162fe93ef00241190080045e801b0139288005288b28866eea340b0af0048662c73fc18b2200e207c46c8245623d000000000a379000000004c410000222f004423c10000000023c0000000004cd74c0c202f00204fef003c4e754cd74c0ca36f0020202f00204fef003c4e752f2f00442f2f00442f41001c4ebaf352508f222f00144a806700ff5e4203206f0040203c1001614e226f004090af00241183183e1183183d1183183c41f1183c43f118422209227c100162fe93ef00246000ff4877912f4300206000fe86226f0044743248690001487900000000200f06800000003b2f002f4000282f410020246f004c2f48002445f2183c2f4a00344ebaed8614bc0053226f004c222f0020244145ea003f1382183d74021382183e224143e901e9202f00284fef000c2f490028206f00182f4a002c226f0028a542d3c8b488641826405288246f0040740915939800b4886700fe90528060dc246f00402640226f002cd3c85288159b9800200b60c6518f2039460e5e302f0b2f0a4a80671047f900000000b7f9460e5e2c670a4280245f265f508f4e75204041e800242f48000c2f082f40000c4eb94003567c226f000c588f4280246900282f1ba16745eaffe92f0aab672f2f001c2f3c400ba8762f4000204eb940012bd84fef0018202f0008b0b9460e5e4067165f8aa341b2806640245fa37946c7c72c265f508f4e75226f000c2051a167486a00054868fffb486affffa7672f092f4000204eb9400122544fef00185f8aa341202f0008b28067c02f1ba1672f0aab67a3402f2f001c2f3c400ba8762f4000204eb940012bd84fef0018202f0008b0b9460e5e40668a609e4ebaf8384a80670001004ab9460e5e30660000f64ab9460e70e0660000ec207c46c82456a74123d0000000001039100b14cfc28023c10000000071b9100b14cca567ad672f3c460e5e3823c00000000042b90000000042b9000000004eb94007ec604fef000c207946c82456a7411039100b14cf227900000000d1fc0008ed80c08173fc18b24c010800d1c071b098222f002f3c460e5e384eb94007edb041f90000000023c8460e5e28203c0000000023c0460e5e2c42b9460e5e342f3c4006d754a36742a7a167487800404878006e4eb94005829c4fef002023c0460e5e304a80672442a74879000000002f004eb9400570b82f3c400ce0c44eb9400314944fef00106000fe084e754ab9460e5e30670e203c00000000b0b9460e5e2c67024e754eb94006d75442b9000000004eba0a764ef94007893c598f4ab9460e5e30670e203c00000000b0b9460e5e2c6704588f4e754ebaf73e4a8067f42239460e5e40a340b08165e82e814eb94006d7544ebaf7224a8067d823d700000000a379000000004eba0a20a1674eb94004d948a37946c7c72c588f588f4e754feffff4222f0010206f00144ab9460e70e0677e4ab90000000066122f4800142f4100104fef000c4ef94007893c2f4100042e884ebaf6c2222f000420574a8067da4ab9460e70e067d22039000000002f4000084eb9400789e442b9000000004ebafe024ab9460e5e306726203c00000000b0b9460e5e2c66182f2f00082f3c460e5e384eb94007edb04fef00146000fce24fef000c4e75518f222f000c206f00104ab9460e70e067124ab9460e739a660aab40b0b9460e738e67102f4800102f41000c508f4ef94007909c2f4100042e884ebaf5ca222f000420574a8067dc4eb9400789e4508f6000fd7a598f4eb940031f282e804ebaf5a64a80672c4ab90000000066244a3946c7d8d8661c4ab9460d173a66144ab9460d1694660c2f174ebad6e02f400004588f2017588f4e75598f2f02203946c824560680c0000000222f000c0c8007efffff62084a39800000156708241f2001588f4e751039100b14cc207946c82456d1fc0008ed8075801039100b14cf2242a7422f09c08275fc18b24c020800487008002f41000c4ebaee3e508f222f00044a8067b84ab90000000066b0ab40b0b9460d5c3066a62f41000c241f588f6000d64a4feffff4ab402f02222f0014206f0018b0816408241f4fef000c4e75203946c824560680c00000000c8007efffff62e44a398000001566dc1439100b14cc227946c82456d3fc0008ed801039100b14cf75822f42000ca742c08275fc18b22f2f000c4c020800487108002f4100102f48000c4ebaeda0508f222f00084a8067944ab900000000668c4a3946c7d8d866844ab9460d173a6600ff7c4ab9460d16946600ff724ab9000000006600ff682f6f000400182f410014241f4fef000c6000f09c2f02ab40b0af00086406241f42804e75203946c824560680c00000000c8007efffff62e64a398000001566de1239100b14cc207946c82456a7421039100b14cfd1fc0008ed807381c0822f0173fc18b24c010800487008004ebaecf8508f4a8067a84ab90000000066a02f2f000c206f000c486800064ebaf022508f241fa3404e754fefffd448d75c0c4ab90000000067104ab9460e70e0660003b242b9000000004ab900000000660002fa2479800065b8a340b08a6700031c47faddce23ca00000000203946c824560680c00000000c8007efffff620000b0387c003e9dce45faec70207946c82456a7431039100b14cf73fc18b22f0ed1fc0008ed80c0834c010800487008004e92508f4a80672a207946c82456d1fc0008ed801039100b14cf75fc18b2c083a3434c020800d1c071b0c800b680670000ba528e49ec001e7008b08e669e73b9100b14ccaf42b481650002ce207946c82456a7431039100b14cf75fc18b2d1fc0008ed80c0834c020800d1c04a301822660002a6203c400d301c23c0400d5f4c4e93247946c8245673b9100b14cf77b9100b14cc2c402679000000002039000000002843b5f900000000670000e84a8b67204a8067000272203c000000004ab900000000670002c64cd75c0c4fef002c4e754a8067000252203c000000004ab90000000066e2600002a42f0e41ef0025a7422f4000204ebad9ec77fc18b2207946c82456d1fc0008ed801239100b14cf43ec01b349ec001ec282747f4c031800d1c112309800c4812e82486f00252f0e4ebae6a24fef000c1639100b14cf202f001c227946c82456d3fc0009504812113043a7432408c483e5a8828012811239100b145e808113c0100b145e207946c82456d1fc0009b332a350a379100f85984eb940027e00528e7008b08e6600fe4e6000feacb2b9000000006600ff12b6b9000000006600ff084a8b670002144a80674841f9000000004a8e670a4ab900000000670002184ab9000000006600fefa2f082f41001c4eb94003146c42b90000000023ca0000000023cc00000000222f001c588f23c1000000002079460d165c4a8e6700fec44a886700febe4a906600feb8223c00000000207c46c7dd7643f90000000020100c80000000006704238088005888b1fc46c7dd8266e8207c46c7deae43f9000000002010b0816704238088005888b1fc46c7deba66ec4ebaeeee23c0000000004a80670000f841f90000000042902f084eb940031494a167a379000000004eb94004d948a37946c7c72c508f4cd75c0c4fef002c4e754ebaf0d64a80670000b44ab9460e5e306600fcf64ab9460e70e06600fcec4ebaf8242479800065b8a340b08a6600fce8a34147fadab2b2b9000000006700fcdc4e934a806700fcd499cc4dfae9c242a7740842a72f0c4e96528c4fef000cb48c6700fcb842a7740842a72f0c4e96528c4fef000cb48c66d66000fca0203c400d31ae23c0400d5f4c6000fd5a42b90000000023ca0000000023c10000000023cc000000006000feb84ebaf02e4a806600fc4e42b9000000006000fc4442b9000000006000fc4441f90000000042902f084eb940031494a167a379000000004eb94004d948a37946c7c72c508f6000ff082f002f41001c4eb94003146c42b90000000042b90000000023ca00000000222f001c588f23cc0000000023c1000000006000fe3c4a806700fe3641f9000000004a8e6700fdf64ab9000000006600fdec2f4100182f48001c4ebaed66222f0018206f001cb08b6600fdd223ca000000004cd75c0c4fef002c4e75202f00040c800000000567044efa02fe41fa023020084e75400b3eac400b3e98400b7c67400b5413400b7a63000000004fefffec48ef030200082e802f4800044ebaf1d64cef030200084fef00144e754fefffe048ef0307000c2409d48006820008ed802e822f41000474000c8400000005660274012f4200084ebaf2d40c8400000005660228004cef0307000c4fef00204efa028448794005a61c600648794005a8562239460d5c304fefffe048ef030d000c2609d68006830008ed802e832f42000476000c8100000005660276012f43000826014ebaf2780c83000000056702200322004cef030d000c4fef00204e7516102f0071036100ff362600201f79034879400bb7044ef9400585e67110610000582f004879460e73864ef940078890610000124ef94003d722610000084ef94004c3746100fef841fafedc22300c004e7571104fef00186100fee44ef94003c986711061000012b48066064ef9400786ce4ef9400786fc4fefffec48ef030200082e802f4800044ebaf10e4cef030200084fef00144e752f082f01207946c8245673b9100b14cfc2fc18b2d1c173b9100b14ccd1fc0008eda271b01800221f205f4e750c820000000566344fefffe448ef0303000c2e8b2f4300044ebaf9222f4000084cef0303000c4aaf00084fef001c67064ef94003a6246100ff9c24004efa01300c8600000005662a4fefffec48ef030300042eaf005c4ebaf7982f40005c4cef030300044fef00142f006100ff682c00201f4efa01084eb94005213c4eb94007e9404ebaf93a4ef940052228564543544f5200004878ffff4878ffff4ebaf70e4ef94004e4d04feffff048d703034ebaecae4a80670c4cd703034fef00104efaf4644cd703034fef00102f0a4ab9460e70e04ef9400791ec4feffff048d703034ebaf3504a80670a4cd703034fef00104e754cd703034fef00104fefffe848d73c0c4ef94006d78c7c010c800000000566224feffff048d703034ebaec424a80670a4cd703034fef0010600c4cd703034fef0010bc8065064ef940077b624ef940077b704efaec084fefffa048d77cfc4ef9400023200000000000004ef9400334de0000000000004ef94007982200000000000000004ef94003a53600000000000000004ef94003cda000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffff0000000000000000000000000000000000000000ffffffffffffffff31000000000000000000000000000000000000000000000000003e00000000000000000000000000000000000000000000000000ff00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000002000000000000000000000000000000000000000000030000000000000000000000000000000000000000000400000000000000000000000000000000000000000005000000000000000000000000000000000000000000ff000000000000000000000000000000000000000000465744004f46460052455600564543544f522047454e455241544544004e4f204348414e474500ab204d414348494e453a564543544f5220bb004300432300440044230045004600462300470047230041004123004200303031205354415449430030303220464c455800434852004d494e004d414a00444f520050454e5400545950450044454e5300524f4f54005343414c00474154450041434e540053454544005350414e004f46535400524f5400525054004449520000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000fff05ad0ab506ad04a900000000000000000000000000000000000000000f100b047e7f7f0c183f40010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b0b000120300c0c00000000000000000000000000000000000000000000000100000000000000000400fff10000000000000000000000000300000100000000000000000000000003000003000000000000000000000000030000050000000a000000000000013e02000001000000190000001c00000004010000030000002800000018000000040100000300000038000000200000019201000003000000410000003000000030010000070000004b00000a9e00000048020000010000005c00000a4e00000050020000010000006d0000013e000005280200000100000084000000700000000a010000070000013d000006660000029e020000010000008b000009040000008a02000001000000960000098e000000c00200000100000000000000000000000003000006000000b300000ae6000001dc02000001000000c2000000000000003001000007000000ca00000cc20000000a02000001000000d400000ccc0000000a02000001000000dd00000cd60000000802000001000000e600000cde0000003e02000001000000f000000d1c0000003e02000001000000f900000d5a0000003e020000010000010200000d98000000d0020000010000010b00000e68000000d0020000010000011400000f38000000d0020000010000011d00001008000000d00200000100000126000010d8000000d0020000010000012f000011a8000000d00200000100000138000013560000010402000001000001460000182c000002e80200000100000155000002b30000091a01000003000003e2000001b200000101010000030000015d00001b14000001ba020000010000016c00001cce00000084020000010000017b00000bf200000004010000030000018500001ef60000003602000001000001920000001400000004010000030000019c000000100000000401000003000001a60000000c0000000401000003000001b100000bce0000000401000003000001b600000bd60000001801000003000001bc000020ec0000005a02000001000001c6000000000000000401000003000001d2000000040000000401000003000001de000021460000005a02000001000001ea000000080000000401000003000001f7000000680000000801000007000002030000006000000008010000070000020e00000bd200000004010000030000021d00000bee00000004010000030000022700000c0200000004010000030000022e00000bfe00000004010000030000023900000bfa00000004010000030000024400000bf60000000401000003000000000000000000000000030000070000025046c82456000000000000fff1000002590008ed80000000000000fff10000026200003294000000000000000100000271000031ca00000000000000010000027900002fb8000000000000000100000285000032a00000000000000001000002940000302c0000000000000001000002a2000030f20000000000000001000002b6000030be0000000000000001000002c3000031120000000000000001000002d0000032ac0000000000000001000002df000032ba0000000000000001000002ee00000c400000000000000003000002f600000c8e0000000000000003000002fe0000320000000000000000010000030a00003230000000000000000100000316000032720000000000000001000003230000326a0000000000000001000003330000327600000000000000010000033f0000327c00000000000000010000034c0000009a0000003011000007000003610000008e0000000c11000007000003740000007a000000141100000700000387000012780000000c120000010000039800001284000000d212000001000003a40000145a000000d812000001000003b2000015320000004c12000001000003c20000157e0000006612000001000003d5000015e4000001e812000001000003e9000017cc0000006012000001000003fd00001d520000013a120000010000041200001e8c0000001012000001000004230000328600000000100000010000043500001e9c0000005a120000010000044100001f2c000001c012000001000004480000320800000000100000010000045b000021a000000072120000010000046300002212000000c61200000100000473000022d800000298120000010000047d000000ca0000000b110000070000048d00002570000000f212000001000004a1000026620000010a12000001000004b50000276c0000002e12000001000004c90000279a0000006412000001000004de000027fe0000009812000001000004eb000028960000005412000001000004f9000028ea0000004412000001000005060000292e0000008a1200000100000514000029b8000000c2120000010000051c00000c0800000000100000030000052500002a7a00000082120000010000053300002afc0000048c120000010000053e00000c2400000000100000030000054c00002f8800000000100000010000055c00002fa000000000100000010000056900002fd80000000010000001000005780000301e00000000100000010000058600003026000000001000000100000595000030aa00000000100000010000059f000030b40000000010000001000005a90000307a0000000010000001000005b7000030960000000010000001000005c7000030cc0000000010000001000005d4000030dc0000000010000001000005e30000313e0000000010000001000005f20000317e000000001000000100000601000031b400000000100000010000060e000031d200000000100000010000061a000031e4000000001000000100000627000032160000000010000001000006340000324600000000100000010000064200003282000000001000000100766563746f722e630067656e657261746f725f70616765007372635f706167655f7265616479007372635f706167655f736f75726365007372635f7061676500666f726d6174732e320067656e657261746f725f776964676574007365636f6e646172795f77696467657400766563746f725f67656e65726174652e706172742e30007363616c657300616e795f766563746f7200647261775f67656e657261746f725f7769646765742e706172742e3000666f726d61745f636f6e74726f6c00726f6f74732e3100666f726d61745f313000666f726d61745f3800666f726d61745f3600666f726d61745f313100666f726d61745f3300666f726d61745f3200666f726d61745f3900666f726d61745f3700666f726d61745f3500666f726d61745f3400666f726d61745f3100666f726d61745f3000736176655f73657474696e67730067656e65726174655f747261636b0073746167696e67006368616e67655f636f6e74726f6c0067656e657261746f725f7669657700656469745f7669657700706f6f6c5f636f6e7465787400706f6f6c5f62616e6b00706f6f6c5f7061727400706f6f6c5f747261636b006d696e6500736176656400706f6f6c5f666c657800706f6f6c5f62726f77736500706f6f6c5f64697265637400706f6f6c5f73746174696300706f6f6c5f70656e64696e6700706f6f6c5f6c6162656c730068616e646c6572732e33006c6173745f7472616e73706f7274006c617965725f67656e006163746976650073686f776e5f62616e6b0073686f776e5f706172740073686f776e5f747261636b0042414e4b5f50545200504152545f4f46460073745f6e616d655f7265706c61790073745f6e616d650073745f726f775f747970650073745f6d61696e5f7265706c61790073745f7372635f636f6d6d6f6e0073745f63686f6f7365725f726f775f747970650073745f6e616d655f7069636b0073745f706f6f6c5f6b696e640073745f656469745f7265706c61790073745f647261775f7265706c61790073745f6b6579730073745f656e6373002e706f6f6c5f73746f636b002e6c6973745f73746f636b002e7469746c655f73746f636b002e7469746c655f756e7369676e6564002e7469746c655f706f6f6c002e7469746c655f706c61696e00766563746f725f636f6e74726f6c5f6e616d657300766563746f725f636f6e74726f6c5f6d617800766563746f725f7363616c655f6e616d657300766563746f725f6e6578745f7365656400766563746f725f7061636b00766563746f725f756e7061636b00766563746f725f67656e657261746500766563746f725f747261636b5f656d70747900766563746f725f77726974655f70687261736500766563746f725f7369676e65645f747261636b00766563746f725f76616c69646174655f706172740073745f76616c69646174655f706172740073745f73746f636b5f76616c69646174650073745f73656c65637465640073745f6b65790073745f73746f636b5f706f6f6c5f6f70656e0073745f747970650073745f63686f6f7365725f747970650073745f61737369676e00766563746f725f64656661756c74730073745f706f6f6c5f63686f6963655f647261770073745f706f6f6c5f63686f6963655f6f70656e0073745f706f6f6c5f63686f6963655f6c6566740073745f706f6f6c5f63686f6963655f72696768740073745f706f6f6c5f6c6566740073745f706f6f6c5f72696768740073745f647261775f706167650073745f73657475705f706167650073745f6b6e6f620073745f6c617965720073745f73657475705f6b6e6f620073745f75695f7469636b0073745f656469745f6c617965720073745f6d616368696e655f6e616d650073745f7372635f6e616d65730073745f6d61696e5f636f6d6d69740073745f7372635f636f6d6d69740073745f7372635f636f6d6d6974320073745f6e616d655f610073745f6e616d655f620073745f73657475705f6f70656e0073745f63686f6f7365725f6f70656e0073745f73657475705f726f770073745f63686f6f7365725f726f770073745f73657475705f65646974360073745f73657475705f64726177360073745f7469636b5f686f6f6b0073745f7372635f647261770073745f706f6f6c5f6f70656e0073745f6c6973745f647261770073745f706f6f6c5f7469746c650073745f76616c69646174650000000000001600000301000000180000003200000301000001b200000054000003010000003c0000009e0000020100000a9e000000e000000301000001ae000000e6000003010000001c000000ec00000301000001aa000000f20000030100000018000000f80000030100000020000001080000020100000a4e000018dc0000030100000bcd00001a1600000301effea16600001a4c0000030100000bcd00001ba600003a010000008e00001f14000003010000001000001f22000003010000000c00001fd00000030100000bce000020380000030100000bce0000205c000011010000000c0000209e0000030100000bce000020aa0000030100000bf2000020cc000011010000001d00002108000003010000001000002116000003010000000c0000212600000301000000000000212c000003010000000400002162000003010000001000002170000003010000000c000021800000030100000000000021860000030100000004000023b4000003010000000c0000242e000003010000001400002434000003010000000800002442000003010000000c0000244800000301000000100000268a0000030100000014000026980000030100000010000026ae000003010000000c000026b40000030100000004000026ba00000301000000080000270e00003a01000000680000277600003a01000000680000278c0000030100000004000027a600003a0100000068000027dc0000030100000000000027e200000301000000040000285a00000301000000040000286c00003a010000006800002b18000003010000000400002b3a0000030100000bd200002c280000030100000bfe00002c3c0000030100000c0800002c5c0000030100000c2400002d180000030100000bfa00002d220000030100000bf600002d600000030100000c0200002d660000030100000bfe00002d6c0000030100000bf600002d780000030100000bfa00002d960000020100001f2c00002daa0000020100001f2c00002de40000030100000bee00002e020000030100000c0200002e560000030100000bd200002eac0000030100000bf200002eb20000030100000bfe00002eb80000030100000bfa00002ebe0000030100000bf600002ed2000003010000000400002edc000003010000000800002ef80000030100000c0200002f1c0000030100000c0200002f220000030100000bf200002f280000030100000bfe00002f340000030100000bf600002f3a0000030100000bfa00002f7a0000030100000bfe00002fb400000201000031ca0000000a000003010000001c0000002000000301000000200000003a00003a010000009a0000004200000301000000ea0000004800003a01000000300000004e00000301000000360000040400003a0100000070000009d200003a010000008e00000b3000003a010000007a00000b64000011010000000800000c48000011010000000000000c5800003a010000000000000c7a000011010000000400000cfc000011010000000800000d16000011010000000000000d3c00003a010000007a00000d7a00003a0100000000000018a400000301000002b3000018fe0000030100000303000019ba00000301000001b2000019c800000301000001b2000019d200000301000002b300001a1c00000301000002b300001ae600000301000002b300001d2a0000030100000bf200001ef8000003010000001400001f540000030100000bce00001f740000030100000bd600001fa60000030100000bd6000020940000030100000bf2000020ee0000030100000014000021480000030100000014000022180000030100000004000022ac000003010000000c000022d00000030100000000000023600000030100000004000024d600003a01000000ca0000258200003a0100000068000026d8000003010000000c0000270200003a01000000600000274a00001101000000270000281400000301000000040000284a0000030100000000000028fe0000030100000bf20000299c0000030100000bf200002a3a0000030100000bf200002a5e0000030100000c0800002ade0000030100000bf200002b06000003010000000400002b1e000003010000000800002c1a0000030100000bee00002c200000030100000c0200002c420000030100000bce00002c620000030100000bce00002d360000030100000c0800002d400000030100000c0800002d4a0000030100000bce00002da200000301b9382e6000002dc600000301b9382d3400002df00000030100000c0800002ee60000030100000c2400002f4a0000030100000c2400002f560000030100000c2400000c0c0000030100000c4000000c100000030100000c8e00000c280000030100000c4000000c420000020100001f2c00000c460000020100001f2c00000c4a0000020100001f2c00000c5c0000020100001f2c00000c600000020100001f2c00000c640000020100001f2c00000c9000000201000029b800000ca600000201000029b800000cbc00000201000029b800000cd200000201000029b800000ce800000201000029b800000cfe00000201000029b800000000000011010000003a00000004000011010000003c00000008000011010000003f0000000c00001101000000410000001000001101000000440000001400001101000000460000001800001101000000480000001c000011010000004b00000020000011010000004d0000002400001101000000500000002800001101000000520000002c00001101000000550000003000000201000011a80000003400000201000010d8000000380000020100000d5a0000003c0000020100000d1c000000400000020100001008000000440000020100000f38000000480000020100000cd60000004c0000020100000e68000000500000020100000ccc000000540000020100000d98000000580000020100000cc20000005c0000020100000cde0000006000000201000021460000006400000201000020ec0000006800001101000000570000006c00001101000000620000007a000011010000006b0000007e000011010000006f0000008200001101000000730000008600001101000000770000008a000011010000007b0000009a00001101000000800000009e0000110100000085000000a2000011010000008a000000a6000011010000008f000000aa0000110100000094000000ae0000110100000099000000b2000011010000009e000000b600001101000000a3000000ba00001101000000a8000000be00001101000000ad000000c200001101000000b1000000c600001101000000b5002e73796d746162002e737472746162002e7368737472746162002e72656c612e74657874002e72656c612e64617461002e627373002e726f646174612e737472312e31002e72656c612e726f64617461000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000001000000060000000000000034000032c8000000000000000000000004000000000000001b000000040000004000000000000050340000069c0000000900000001000000040000000c0000002b000000010000000300000000000032fc00000d280000000000000000000000040000000000000026000000040000004000000000000056d0000000b40000000900000003000000040000000c000000310000000800000003000000000000402400000000000000000000000000000004000000000000003600000001000000320000000000004024000000b9000000000000000000000001000000010000004a000000010000000200000000000040de000000d50000000000000000000000020000000000000045000000040000004000000000000057840000021c0000000900000007000000040000000c00000001000000020000000000000000000041b4000008300000000a0000004f000000040000001000000009000000030000000000000000000049e40000064e0000000000000000000000010000000000000011000000030000000000000000000059a00000005200000000000000000000000100000000", - "sha256": "5b43ff757c7726bce8a182ad1b2e8a4d752ff4a2eb969c50f1b5335b6438d11a", + "bytes": 37908, + "code": "7f454c460102010000000000000000000001000400000001000000000000000000009234000000260034000000000028000c000b2f021039100b14cfa742227946c82456d3fc000950481211c480a340e5a8828012811239100b145e808113c0100b145e207946c82456d1fc0009b332241fa350a379100f85984ef940027e002f027233202f0008206f000cb28067187420b480674a7231b280674e7432a749b4806706241f4e7593c9a341b288672c4a886702a54143f19a0074fdd28943f90000000022711c0022095381b48165d42f48000c2f400008241f4ed1428160d6a349a341b28866c860f2a549a341b28866be60e84feffc40720f48d77cfc206f03c871902f40004eb2806406740f2f42004e7010206f03c877a800012f430046b083640672102f410046700b206f03c875a800022f420042b0826406720b2f410042a940206f03c875a800032f420052b0826404a96f0052206f03c8707e73a800042f41003eb0816406727e2f41003e707f206f03c875a800052f420056b0826406727f2f410056700c206f03c875a800062f42003ab0826406720c2f41003a7218206f03c81028000875a800072c421f40005bb28264043c7c0018206f03c843eefff42c2f03cc102800092f49004a4a0067107240b2866500046c7180b08665000440206f03c4200f246f03c40680000003c0224a116f03cf010041ef02c0264850c1421113410003134100021341000126d9b08b66ea222f03d4283c9e3779b92e2f004e760b4282b981e7af760f43ef00c04bef01c02a09200142404840b380223c7feb352d4c0108002200e6a9b380223c846ca68b4c010800260042434843b183a740c08277c34a8067000088d6872a83264520022f480032222bfffc41ef03c049f01c00b6acfe00640a26815380598b4a8066e447f70c00260206849e3779b9206f00325283588d5885274200c0b6866764222f03d42403760fb981200142404840b380223c7feb352d4c0108002200e6a9b380223c846ca68b4c010800260042434843b183a740c08277c34a806600ff7c2a834a826600ff78428047f70c00260206849e3779b95283588d5885274200c0b686669c2a6f00527a1847f9000000007e64387c000c79f3da00266f004a70f42a6f004a99ce9aaf004297ef003adbef003a42af003642af00322f4800522f42002e2205740cd2804c4210060d04672cb08b6c00022e220cd2804a816d000216be816f0002182f400036740c52802e012205d2804c4210060d0466d45280720db28066be302f0048206f0052242f002ec0c35080e888671671c049f10c00201947f70c007001174002c0b9c966f0720c7c0c202f00425e804c41000573fc00fe92af0056286f004a22422a6f004a4287700c90af00422f450046c2ef03d2dbef003ad0854c4600057dfc00fe99ef003a2f4d004a242f003226434c461001eaa42a6f004e2f4a00522f6f03d40032a340c0841f41003d2f40004e2c0752874a10670000da223c85ebca6b7a0f4c071800262f0032283c7feb352db7810a81b5297a4d200142404840b3804c0408002200eaa9b380223c846ca68b4c010800220042414841b1814a82670001662001e0884c4200044df74c00282e005c0684fffffff4700fc081b08d642c7030c0814a8066084aaf004e6600016c202f00420801000667060680fffffff4b08c6d08b0af004a6e02280076182001e6a8a743c9fc00052a004c435000068400000040114400015480c0ef0040e48811400002a740c0864a80670000de0281003000004a81670000d2102f003d114000035888bc896600ff18246f0052260b4aaf03cc675871af005b783fb880650000be2a2f03cc206f03c8266f03c44c4500021828000a71c5222f03cc538543f30c009282242f03cc2c0152814c4260004a0467062c059c8020064c43000647ef03c041f36c0024e8ff00b5c966da4cd77cfca3404fef03c04e754481be816e00fdec52806000fdc2b08d6e18222f0032204041e8000c4df71c0052812f4100322d48005c220cd2804a816d1abe816f00fdd22f4000362e015280720db2806600fd886000fdc6448160e2102f03d3114000036000ff2e282f00366000feac2a2f03cc703f206f03c8266f03c44c450002222f03cc71c51828000a5385928243f30c00242f03cc6000ff40202f00466000fe94206f03c42c00246f03c4200f224a0680000003c0116f03cf010041ef02c026486000fbbe71807c40b0866400fb9660d04fefffe048d73c3c4ab900000000670e202f0024b0b900000000670000da41f900000000226f002493c81031880010c0b1fc0000000066f24bf900000000428243f90000000049f90000000045f900000000223c00000000265d91c810338800670c158088005288ab43b68866eed1ca4218b28866fa201c26004243484378182a00e8ad2800e08c13400003ab4012851344000213430001b082656a203c00000000781826002a0042434843e8ad2800e08c1340003358891345002c1344002e52825c8a5c81700c1343002db082668877fc5555202f0024283c5555555523c400000000a3790000000023c30000000023c000000000203c000000004cd73c3c4fef00204e75203c00000000781826002a0042434843e8ad2800e08c1340003358891345002c1344002e52825c8a5c81700c1343002db0826600ff1e60924fefffe0222f002848d77c1c226f00244a816708a341c2af002c528141f1180123c10000000028084ab900000000660ab1f9000000006700011c41f90000000093c81031880010c0b1fc0000000066f243f90000000091c845f900000000101152894a00670a14c05288ab40b08866eed1fc000000004218b1fc0000000066f6340141f900000000c4fc000d2242d3fc0000000010d9b1fc0000000066f630014df90000000043f900000000223c0000000047f900000000c0fc00062a40dbfc00000000719d244191c85d8a28730c0010348800670c158088005288ab40b08866eed1ca4218b28866fa7440201e72182600e2ab2200e0891340000358891343fffc1341fffe72671342002c24007004424248421341002e22085c811340002d70a41340002f1342fffdbdfc00000000669273fc5555243c5555555523c20000000042b90000000023c10000000023c400000000203c000000004cd77c1c4fef00204e754fefffd448d74c044242203946c82456227c20300c0c2f4800102040d1fc0008ed8042001239100b14cf3f420028243c0b0b00012f420020a7421f40002a302f00322f490024c28275fc18b2c0fc001e4c021800d1c173b0083e53814a81670001f64def001793c922090681000001e9d280a542b489641e1cb0180052897209b289671e22090681000001e9528ed280a542b48965e245f1083f52891cf0a80060c6102f0017720fa942c2807180e88830401f410020b4806500017e3008122f001874101f400023701fc0813040b4806500013c3408102f0019ea891f420021a342c282740fc4801f41002a12022042740bb488650001027180e8881f410022720c3040b280650000d6122f001a340871811f420026747eb480650000b0102f001b1f4100244a006d00008c122f001c1f40002574187181b480656871af001d1f410027723fb2806546122f001ee188758120427440b4886528100147ef00203f400028206f0010200820d320ef002430ef00284cd74c0410af002a4fef002c4e75724047ef002010013f40002860d4122f001e703fe188758120427440b48864b860de721871af001d1f410027723fb280649660da707f122f001c74181f4000257181b4806400ff7460d8727e102f001b1f4100244a006c00ff5260d8307c000c122f001a340871811f420026747eb4806400ff2a60d4720b7180e88830401f410022720cb2806400ff0060d0307c0010102f0019ea8934081f420021a342c282740fc4801f41002a12022042740bb4886400fec460c0307c0004122f0018741030081f400023701fc0813040b4806400fe8260b847ef002093c9244b22090681000001e94df1083fd280a542b489651a528914f0e80022090681000001e94df1083fd280a542b48964e614b018005289ad41b2896700fecc528a60c0518f2f0a2f02740f206f0018203946c824561239100b14cfb488655ea742c282242f001406800008ed80eb8a224275fc18b243e903e24c021800d081d3c0700cb088672a700db08867000088a941b288663273a9000243f90000000071b18800b28064022001241f245f508f4e7573917413c2fcaaabe4a960dc241f4280245f508f4e75227946c82456a7421039100b14cf222f0014d3fc0008ed80e989c08275fc18b2244145ea183e4c0208007416d3c071b1a800b4806720ad40b0886764241f43f90000000071b18800245f508f4e7573a900016000ff7e203946c8245606800008ed801439100b14cf2f40000c43f90000000071b188002240d3c1a741100275fc18b243e91832c0814c020800d0af000c1231080006810000004073816000ff34202f00145280241f245f508f4e754fefffe848d70c1c242f0020246f001c77b9100b14cc2f022f034ebafeb2508f2200a940b0826760780cb88267000150a540b082673aa743b68267000110700bb08267000124760ab6826754780eb882670001847010b082665841f900000000101814c066fa4cd70c1c4fef00184e75740c4c42100041f90000000020700c00101814c066da60de2f4a001c4cd70c1c2f4100202279400d3f104fef00184ed14a81662441f900000000101814c066b060b451824a82661020010680fffffff44a806d0000fe2200224aa34842807663b681644e7864760a20014c440000068000000030128020014c43000043f2880124004c4320042004068000000030158088005488740a4c42100042030680000000301280158388004cd70c1c4fef00184e757409b48164dc2040760a20014c43000043f2880124004c432004200406800000003015808800548860b8ab444c44100041f90000000020700c00101814c06600fefe6000ff004a81674441f900000000101814c06600fee86000feea2439400d3f08a5672f032f41001c4ebafd402f4a0024222f001c22424c0418004cef0c1c0008d2802f4100284fef00204ed141f900000000101814c06600fea46000fea6740ca548224a948112fc002d2202a3406000fefa4a816700feca203c1002c9809081e588224020514a886600fe72224aa34842806000fed6203900000000ad4141f9000000004c01080071b008002f4000086000fdea203900000000ad414c0108002040d1fc0000000071902f4000086000fdcc203900000000ad414c0108002040d1fc0000000071902f4000086000fdae203900000000ad414c0108002040d1fc0000000071902f4000086000fd90203900000000ad414c0108002040d1fc0000000071902f4000086000fd72203900000000ad414c0108002040d1fc0000000071902f4000086000fd544feffff048d70c0c207946c82456a743222f00142401eb8a226f0018d1fc0008ed8047ef001f2441d5fc8000666e43e903e21039100b14cfd3c275fc18b2c0834c020800d1c0119398001039100b14cfc0834c0208002040d1fc100a4ece11939800101275b9800000027180b480670a4cd70c0c4fef00104e752041d1fc80006676101075b9800000037180b48066e070444c010800206f0018d1fc46c76dc0119308004cd70c0c4fef00104e752239460d1684a9402f0a2f02b081654c4ab9460d173a66444ab9460d1694663c202f0018068000000c1171c0206f001441f00a001028000175902242744db489661a4aaf001067147180246f000c224020122440b3ea0008670a1010241f4280245f4e75a94284aa000c030267ee241f245f4e754feffff42f0e2f0271b9100b14cc2c6f00242f0041ef000d4ebaf846588fad40b08e675cab42200eb48e6402538071b7080920402f2f00302f2f003070fec0af003043f90000000073b1e8002f002001b1c164022008c0fc007f4c4100002f002f2f00302f2f00302f2f00304eb9400479b44fef001c241f2c5f4fef000c4e751039100b14cc227946c82456a7421239100b14cfd3fc0008ed807180c282c0fc001e204071fc18b241e801f14c001800d3c110318800727fc28020416000ff76518f2f02740b202f00182200206f00105c81226f00142f6f002000042f6f00240008b4816406241f508f4e752f6f000800242f6f000400202f41001c2f4000182f4900142f480010241f508f6000fef2598f2f02740b202f0014222f000c206f0010226f001c2f6f00200004b4806406241f588f4e752f6f000400202f49001c2f4000182f4000142f4800102f41000c241f588f6000feaa4fefffe448d7401c242f002441ef001171b9100b14cc2f004ebaf6ee588fad40b082676cab40b082653c71b728112202a3435581b6816500009255824a826700012aab434c43000141f900000000226f002020701c00101812c066fa4cd7401c4fef001c4e7571b72810780bb882660001124a80670000e6226f002041f900000000101812c067d4101812c066f460cc1039100b14cc227946c82456a7421239100b14cf77fc18b2d3fc0008ed80787f7180c282c0fc001e20404c03180041e801f1d3c110318800c0847663b68064587864760a2200a54e4c441001206f0020a74906810000003010c122004c43100124014c43200422040681000000301081206f0020d1ce740a4c42000142030681000000301081206f0020118398004cd7401c4fef001c4e75206f0020a34942817409b48064d02c49760a224122004c431001548924014c43200422040681000000301081206f0020d1ce60aa226f002041f9000000006000ff1a740c4c42000141f900000000226f002020701c006000fed6780ab88266144a806600ff3e226f002041f9000000006000fee851824a826600ff2822000681fffffff44a816d0e20017663b6806500ff186000ff6c206f0020740c94802002a54910fc002da3417409b4806400ff306000ff5c700a2f4000086000fe1c70082f4000086000fe12ad6f00086000fe0a71b9100b14cc4feffff441ef00012f004ebaf4fe588f4a2f000b671641f900000000226f0010101812c066fa4fef000c4e75226f001041f90000000060e84feffff42f0271b9100b14cc41ef0005ab422f004ebaf4bc71af000c588f41f9000000004c420001226f001420701c00101812c066fa241f4fef000c4e754feffff42f02740c71b9100b14cc41ef00052f004ebaf47e71af000b588f41f9000000004c420001226f001420701c00101812c066fa241f4fef000c4e754fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf43c71af0025588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf36c71af0023588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf29c71af0022588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf1cc71af0021588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf0fc71af001e588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf02c71af001d588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffd4700c48d7043c282f0034242f0030262f0038b084670001aea541b2846700026c7a0dba84670001c8a940b084670001d8207946c82456a7411039100b14cf2a02d1fc0008ed80e98dc08173fc18b222457a1645e9183e2f4a00184c010800d1c071b0a800ba80670001b641f900000000428143e91832700d2f4800202f49001cb081650000907a0bba81657ea940b08167782f01247c100b14cf2f022f41001c4ebaf16ea745207946c82456d1fc0008ed801f520033222f001c2240246f002843e9ffc02f49002c71b21800508f45ef0027226f001cd3c0102f002bc0857bfc18b24c050800a745d1c0119298001039100b14cfc0857bfc18b24c0508002040d1fc100a4ece119298005281700db0816400ff747a10ba816600ff78207946c82456a7411039100b14cf7bfc18b2d1fc0008ed80226f00180683ffffffc0246f002075b24800c081222f00184c050800a745d1c070161180180073fc18b21039100b14cfc0857a164c010800a7412040d1fc100a4ece118598007bfc18b2226f001cd3c2207946c82456d1fc0008ed801039100b14cfc0814c050800d1c0118398001039100b14cfc0814c0508002040d1fc100a4ece118398004cd7043c4fef002c4e75a5672f024ebaf0462f42003842af003c720c4c013800d6802f4300404cef043c00084fef00346000f4042f4300382f4200304cd7043ca36f00344fef002c6000f3ec2f4300382f4200304cd7043ca56f00344fef002c6000f3d441f900000000a7412f48002043e918320683ffffffc0207946c82456d1fc0008ed802f49001c7bfc18b21039100b14cf246f0020226f001c75b24800d3c2c0814c050800d1c0118398001039100b14cfc0814c0508002040d1fc100a4ece118398004cd7043c4fef002c4e75227946c82456a7411039100b14cf2a02d3fc0008ed80eb8dc08173fc18b220457a1341e803e24c0108007209d3c071b18800c0fcaaabeaa8b28064027009c0fc000c20404870380042a72f024ebaf3184fef000c6000fd504e56ff6c48d73cfc1039100b14d0223946c824560681c00000000c8107efffff6200045caf41b2ae0008650004527380740fb4816500044848807dfc08b0223946c824562041282e00081639100b14cfc0fc8ed84c06480041e848d02244d3c01d43ffc32d49ffb44bf188004aae000c6700042c2040227c00008e55d1c14a30980067000406162d0028428245faeea07783ad47be826602af422f022f2e00084e92508fab41b282640004461d8028cc5282780cb88266daad672f2e00084e92508f2d40ffb84aae0010670a52807c7fcc802d46ffb8203946c8245620431239100b14cf53887e3fbe8865000392a742c2822640d7fc0008ed80202e000879fc18b2eb884c0418000680000003e2d7c1d7c04a2b00016d00036671ab00017c7fbc806500035a2f2effb82f0078132f03486effcd4879000000004ebae3544878000f2f2e00084e924878000e2f2e00082d40ffa44e92161373934fef0024204d2d40ffac3401200e0680ffffffd891c02d48ffc8226effc8204077832d4eff9cc4fcaaabe8aac5fc000c9282738196812d43ffa81231880010c1b1eeff9c66f4222effb82c3c9e3779b952814c016800223c85ebca6b7e1e2d41ffa0222effa442829eaeffac286effb4d9fc1001b24e43f900000000d281266effb4d7fc1001aa502d46ffbc45ed08312d47ffc441ed005052812d41ffb0af46cc822602e68b4be8ffe0a3442d4dff98af4d9bc3dbc02d4dff947395eca1c2844a116700042679a90001ab470684ffffffc04c4748042a2effa8da844a856d000430787fb8856c027a7f2a6eff9879857f95be8467102a6eff981a851745fffe4a116700029c182900037fa8ffe14be8ffe12d4dff987b84ba87670002d82a6eff981a841744ffff4a11660002c879a8ffe24be8ffe22d4dff980c84000000ff6700028850c4a3452a6eff98edad1a8416844a11670002782a6eff94181588852a6eff941a8418114a816600027c4a04670002aa4aaeffa4670003aa282effa07c0f222effbc2e3c2c1b3c6db9812801ecac7c0cb9814c0718002e2effb02801ecacb9814c471004220492aeffa4ef89028100001f804aaeffac670ca744c8824a84670482aeffc42801e08c2a4a7fa57d84bc8767041a8418847d927981b8866706148119410001428192832801d8802a442c05122d000f46869bcd9bc32e0d2a44de80c2861b41000f2a47122d0027c2861b4100271211670002024bf9000000001b8128003a7c00179bc3dbc01215c2861a81223c85ebca6b52825889548a548cd3aeffa047eb002041e80020263c00000000b3c36600fe46247c1001aa1d95c0d5eeffb4222effc820405381101875b018007780b48367081180180015808800b1eeff9c66e64aae0010660001c4102effc3a744a342207946c824562202d1fc000950481610c084e1a986811083263c46c7d2e41039100b145e828013c1100b145e207946c82456d1fc0009b332a350a379100f85984eb940027e002c2e00082806edaa41f9000000009688468243f0380010111218c082e9a980811280b1fc0000000066e8206e0008486800084eb94009da204cee3cfcff6c588fa3404e5e4e754cee3cfcff6c42804e5e4e7571fc8e53428245faea9c1630080077836000fbf643ed0018204d52884a28ffff66d2b1c966f441ed002043ed002852884a28ffff66beb1c966f441ed003043ed0830759052880c82000000ff66a6b1c966f02040227c00008e55d1c14a309800679e6000fb981d8028cd52826000fb9a79a8ffe14be8ffe12d4dff980c84000000ff6700fd7a50c42a6eff981a841744ffff4a116700fd68602aa345edad2a6eff942c05468618152a6eff94c8861a8418114a816700fd884a046600fd8842016000fdda182900027ba8ffe24be8ffe22d4dff987f84ba876600fd3c2a6eff94a345edad181588856000fd464be8ffe37395528d0c81000000ff6600009cbbc866ee42014bf9000000001b8128003a7c00172c0546869bc3dbc01215c2866000fde22f2effb8ad672f2e00084ebaf762a744a3424fef000c102effc3207946c824562202d1fc000950481610c084e1a986811083263c46c7d2e41039100b145e828013c1100b145e207946c82456d1fc0009b332a350a379100f85984eb940027e002c2e00082806edaa41f900000000968846826000fe2a72014bf9000000001b8128004a116600ff663a7c00179bc3dbc0121582856000fd4a2a6eff9879950c84000000ff6700fea850c52a6eff981a851745fffe4a116600fbfc6000fe9242052a6eff987f957985be846600fbd86000fbe442816000fc8e1039100b14cca367a36771802f004ebaf96c4fef000c4a806716203c00000000487800202f004eb94005a2b8508f4e75203c00000000487800202f004eb94005a2b8508f4e754feffff02f02226f001cab421239100b14cc202f00182f6f0020000cb48965244a806708a340c0af00245280ad424c020800740f2040d1fc0000000071b09800b4806408241f4fef00104e7573812f4100102f002f012f40000c4ebae8082240d0af0014508f206f00044a806d5a223c0000000073b01800b0816c022200b28967c22f012f082f2f00182f4800102f4900144ebaf5bc42a7a3672f2f00244ebaf8964fef0018206f00044a8066962f6f000800202f48001c2f6f00100018241f4fef00106000f58a428160b24feffff048d7041c207946c82456a742262f00142203eb8979fc18b2d1fc0008ed801039100b14cf224143e903e2c0824c040800d1c075b09800204348680001ad672f034ebaf53e4fef000c7077b08265482202780c4c44100045faeb1c94802f0242a72f034e924fef000ca742487800402f022f034e9252824fef000cad40b08266ea42a742a72f034ebaf7de4cef041c000c4fef001c4e75746c2f0242a72f0345faead4a7424e924fef000c60be4aaf000866024e756000ff46202f0004727f5280c0814e752f032f02206f0010a942226f000c102800037380b481640270041210e988760f7581b6826402720f808112801028000a6702700112280001eb8876107581b682640272108081740c13400001102800067380b4816402700c12280002e988760b7581b6826402720b8081747e13400002102800047380b4816402707e13400003102800056a02707f134000047618102800077380b6816402701813400005743f102800087380b4816402703f134000067640102800097380b68164027040727fc2af00141340000713410008241f261f4e754fefffd848d75c1c2f2f00342f2f003449ef00272f0c4ebaff16362f003a9dce4fef000cc6fc001e141ca540b08e64000086267c100b14cfa7441013227946c82456d3fc0008ed80121345ee01e9528ed5c3c084c28479fc18b24c0408004c0418002040d1fc100a4ece7009d3c11382a8001182a800b08e66ae1013227946c82456a7421213d3fc0008ed80c082c2824c0408004c04180078022040d1fc100a4eced3c11384383e1184383e4cd75c1c4fef00284e75267c100b14cfa7441013227946c82456d3fc0008ed80121345ee003f528ed5c3c084c28479fc18b24c0408004c0418002040d1fc100a4ece7009d3c11382a8001182a800b08e6600ff2a6000ff782f02720f206f0010a942226f00081010c08112807190e8881200b4806402720413410003721f741010280001c0811200b4806402721013410001a341740f71a80001ea88c0811340000a10280002c082740b1200b4806402720b13410002740c71a80002e8881200b4806402720c13410006747e102800037380b4816402707e13400004102800046a02707f134000057418102800057380b4816402701813400007743f102800067380b4816402703f134000087440102800077380b4816402704013400009727f10280008206f000c241fc28020814e75598f2f0a2f02202f0010222f0014206f00184a80672c4a81672845e8ffff743fb48a651e747fb4af001c65162f4800182f4100142f400010241f245f588f6000d944241f4280245f588f4e75222f00044a81675a71fc0919b0af000864502001204106800000004052884a28ffff663eb08866f42041200141e8004806800000005052884a28ffff6624b08866f4204106810000085941e80059719052880c80000000ff6608b28866f0a3404e7542804e754fefffd848d73cfc262f002c4a8367000168202f00300c80000009196300015a4aaf003467000152206f0034723f18280100200453807180b2806500013c4aaf003866122f2f00302f034ebaff4e508f4a806700011a7984246f00344281204a1010a3457580ba826500010eb284650001144a0066000102528158887040b08166de264322432843428547eb005943e9007949ec089aaf41c2852805e68caf48a34291c4d1c37190e2a0c0824a1267000132142a000116824a1267000120142a00021742000d4a126700010c142a00031742000fa342e3aa12104a12670000ee828210814a8066044a12673e420042143a7c000f42819284d2839bc4307c004f194000012002468091c41e353800ce801b8738002a411e2d001fce801b47001f12303800c08111803800204b4281101846804a0056c0710044808280b1c966ee307c001791c4d1c310104a1266784a816774848010825285588a47eb0020548c43e900207040b0856600ff2ca3404cd73cfc4fef00284e754cd73cfc42804fef00284e754a006700fef0102800017a787580598071805982ba8065dcab454c4528004a8066d275a800027a7eba8265be4a2800036db8528158887040b0816600fea06000febe4682c48060882e024687c2876000ff0e50c26000fef650c26000fee250c26000fed02f02202f000caf41206f0008b280651c73b00822a342b4816512721e74534c01080041f0083c7190b4806706241f42804e7571a800017232b28066f071a8000253804a80671410280002a541241fb3804a0057c0710044804e75241fa3404e754fefffc4203946c824560680c000000048d7440c0c8007efffff630c42804cd7440c4fef003c4e75207946c82456a7411039100b14cf75fc18b22f2f0040d1fc0008ed80c0814c020800487008004ebaff50508f4a8067c61039100b14d0720f77802f430020b28365b24880243946c8245641f90000000032002f4200241639100b14cf302f0042c2fc8ed81f43002fc0fc091ad081d4802c429dc82f40001c1030e80010c0b1fc0000000066f24aaf00446700024c71fc8e55206f0024d1c14a300800670002621039000000007180743f22005381b4816500ff422f2f004041ef00352f4000144ebadda0588f223946c8245606810008ed801639100b14cf342f0042202f00103243c4fc001e2042a74241e801f12609c68275fc18b24c023800d28312301800767fc6812f4300284aaf0048670c2203747f5281c4812f420028223946c8245606810008ed801639100b14cf342f00423243c4fc00182042a74241e801232609c68275fc18b24c023800d283767f73b01800b6816500fe9e2f2f00282f012f00486f003d4879000000004ebad4f62f2f00584879000000004878091a4879000000004ebafc0c4fef00244a806700fe68226f0024b3f946c824566600fe5873b9100b14d0b2af00206600fe4a73af002f75b9100b14cfb4816600fe3a226f001c93fc0000000041f9000000002f49002045f0e800121875922f4a00147781b682670e1481226f002045e8ffff13928800b1fc0000000066d82f2f0028486f00352f2f00482f40001c4ebaf8f8a742a34e260e122f003b227946c82456d3fc00095048c2822f410038242f003812114fef000ce5ab828312811239100b145e8283260e13c1100b145e207946c82456d1fc0009b332a350a379100f85984eb940027e002c7c46c7d48c222f0040202f001043f900000000e3ab2f43001846831f43001741e9ffe0528873a8ffff0c81000000ff6678b1c966ee91c81216162f0017240843e90020c28382821cc1bdfc46c7d4cc66ce2f2f00402f4000144eb94009da20588fa37946c7c72c4cd7440c202f00104fef003c4e754878091a4879000000002f4100184ebafa42508f222f00104a806600fd9a4cd7440c4fef003c4e7571fc8e53103008006000fd9c142f001b304260864e56ffe041eeffea2f0a2f0273b9100b14cc2f012d41ffe04ebadb34322effe2588f207946c82456d1fc0008ed803d6efff2fffd1d6efff4ffff2d6effeefff92d6effeafff5c2fc001e1039100b14cf2241a74143e901f1c08173fc18b24c010800d1c012309800707fc280ab407581b0ae0008657a43eeffead3ee0008206e000c7391d1c14a886d000082246e0008203c0000000071b20800b1c06c022008b0816740128020022f00486effea2f2effe041faf73a2d48ffe44e9042a7a3672f2effe04ebafbfe4fef0018206effe44a806744a1674eb94004d948a37946c7c72c588f242effd8246effdc4e5e4e75ad40b0ae00086742222e0008206e000c43f618e97391d1c14a886c804a8167d442001280200260902f02486efff52f2effe04e904fef000ca1674eb94004d948a37946c7c72c588f60aa202e000cd0824a806d3c727fb2806c02707fb08267942f00486effea2f2effe041faf6922d48ffe44e9042a7a3672f2effe04ebafb564fef0018206effe44a806600ff5860984a016700ff6042802f00486effea2f2effe041faf65a2d48ffe44e9042a7a3672f2effe04ebafb1e4fef0018206effe44a806600ff206000ff60203946c824560680c00000002f020c8007efffff62084a398000001567064280241f4e751239100b14cc207946c82456a7421039100b14cfd1fc0008ed807381c0822f0173fc18b24c010800487008004ebafa58508f4a8067c42039000000004a8066ba4a3946c7d8d866b44ab9460d173a66ac4ab9460d169457c0241f710044804e754fefff78428148d75cfc242f008c284245ef00289dce28024283264a06840000003c49ec002271b41800a346bc80650c41f648007e537190be80674252814dee001e47eb000cbdfc000000f066d82f02206f009442854e90588f91c80b0366000086528541e8001e45ea000cb1fc000000f066e84cd75cfc4fef00884e7571a800017c32bc8066b471a8000253804a80670a71a8000255804a8066a0a340e3a891c8868043f6883cab47be88642c2c08ad474c47600043f60800700c43e901ecd3c21791880042115288b0886700ff6e43f6883cab47be8865d4d3c2179188004211528860be428147f02800ab44b881651449f21800ab442242d3c11194983c5281b88164ec2c01ad474c47600449f21800528143f34800780c135401ecb88166ca528541e8001e45ea000cb1fc000000f06600ff286000ff3c487a25782f2f00084ebafebc508f4e75203946c824560680c00000002f020c8007efffff62084a39800000156706241f42804e751239100b14cc207946c82456a7421039100b14cfd1fc0008ed807381c0822f0173fc18b24c010800487008004ebaf88a508f241f4e75203900000000b0b946c82456670442804e751039100b14cfa741c081b0b90000000066ea71b9100b14ccb0b90000000066dc6000ff724fefffec70312f0a2f02226f0020a342206f0024b08956c173014481b4886700008ea340e3a82439000000002f420014c4804a82665e4a886632a340244174fd45f21a00d08a45f90000000020320c0022005381b48165322f4900202f480024241f2240245f4fef00144ed12441a54045f21a0074fdd08a45f90000000020320c0022005381b48164ce241f245f4fef00144e754a8866f24680c0af0014241f245f23c0000000004fef00144e752f4100102f4800082f49000c4ebafeb4222f0010206f0008226f000c4a806700008a103946100b1d08000005667c703eb089677c7431b48966702f4100102f4800082f49000c4ebafcac222f0010206f0008226f000c4a806750a34081b9000000001039100b14cca367a36771802f004ebaf78c4fef000c4a80677048780020203c000000002f004eb94005a2b8a1674eb94004d948a37946c7c72c4fef000c241f245f4fef00144e7542806000fee04a3946c7d8d866f24ab90000000057c0a54183b900000000a1677100448023c0000000004eb94004d948588f241fa37946c7c72c245f4fef00144e7548780020203c000000002f004eb94005a2b8a1674eb94004d948a37946c7c72c4fef000c608e203900000000b0b946c8245667024e751039100b14cfa741c081b0b90000000066ec71b9100b14ccb0b90000000066de4ebafd7e4a8067d6a37900000000a379000000004eba2256a1674eb94004d948a37946c7c72c588f4e75203900000000b0b946c8245667024e751039100b14cfa741c081b0b90000000066ec71b9100b14ccb0b90000000066de4ebafd244a8067d642b900000000a379000000004eba21fca1674eb94004d948a37946c7c72c588f4e75203946c824560680c00000002f020c8007efffff6232203946c82456a7421239100b14cf06800008ed80206f000c41e8ffdec28275fc18b24c021800af42d08122089280b4816408202f0008241f4e75a342b4af000865f02f012f004ebaf57a508f4a8067e2ab6f0008202f0008241f4e752f032f024ab90000000067084ebafcd64a806672203946c824560680c00000000c8007efffff6236223946c82456a7431039100b14cf06810008ed803040202f00100680ffffffde2408c48377fc18b24c032800d2829081af42b480640a202f000c241f261f4e75a343b6af000c65ee2f002f014ebaf4f0508f4a8067e0241fab40261f4e75203946c82456a7421239100b14cf77fc18b220790000000006800008ed8041e80022c2824c031800d081d088b0af00106600ff5c241f203900000000261f4e754fefffc4203946c824560680c000000048d74c0c0c8007efffff62000166af40b0af00446500015c223946c82456206f004091c12c48ddfcfff712802f41002473fc18b2200e4c41000220424a8266000132bdfc000062c762000128222f0044a342246f004043f218227391b48164000178a36f0020222f0044701e4c0018004aaf004866624ab900000000670001062f4100142f4800184ebafb84222f0014206f00184a80670000ec203946c8245606800008ed801439100b14cf3242a7422609c68275fc18b24c023800d083b0af0040660000c0262f0044b6b900000000660000b2a56f00482f2f00442f2f00442f41001c2f4800204ebaf3a6508f222f0014206f00184a80670000e8226f0040203c1001614e90af002441f1183c43f118422209227c100162fe93ef00241190080045e801b0139288005288b28866eea340b0af0048662c73fc18b2200e207c46c8245623d000000000a379000000004c410000222f004423c10000000023c0000000004cd74c0c202f00204fef003c4e754cd74c0ca36f0020202f00204fef003c4e752f2f00442f2f00442f41001c4ebaf2fe508f222f00144a806700ff5e4203206f0040203c1001614e226f004090af00241183183e1183183d1183183c41f1183c43f118422209227c100162fe93ef00246000ff4877912f4300206000fe86226f0044743248690001487900000000200f06800000003b2f002f4000282f410020246f004c2f48002445f2183c2f4a00344ebaed3214bc0053226f004c222f0020244145ea003f1382183d74021382183e224143e901e9202f00284fef000c2f490028206f00182f4a002c226f0028a542d3c8b488641826405288246f0040740915939800b4886700fe90528060dc246f00402640226f002cd3c85288159b9800200b60c6518f2039460e5e302f0b2f0a4a80671047f900000000b7f9460e5e2c670a4280245f265f508f4e75204041e800242f48000c2f082f40000c4eb94003567c226f000c588f4280246900282f1ba16745eaffe92f0aab672f2f001c2f3c400ba8762f4000204eb940012bd84fef0018202f0008b0b9460e5e4067165f8aa341b2806640245fa37946c7c72c265f508f4e75226f000c2051a167486a00054868fffb486affffa7672f092f4000204eb9400122544fef00185f8aa341202f0008b28067c02f1ba1672f0aab67a3402f2f001c2f3c400ba8762f4000204eb940012bd84fef0018202f0008b0b9460e5e40668a609e4ebaf8384a80670001004ab9460e5e30660000f64ab9460e70e0660000ec207c46c82456a74123d0000000001039100b14cfc28023c10000000071b9100b14cca567ad672f3c460e5e3823c00000000042b90000000042b9000000004eb94007ec604fef000c207946c82456a7411039100b14cf227900000000d1fc0008ed80c08173fc18b24c010800d1c071b098222f002f3c460e5e384eb94007edb041f90000000023c8460e5e28203c0000000023c0460e5e2c42b9460e5e342f3c4006d754a36742a7a167487800404878006e4eb94005829c4fef002023c0460e5e304a80672442a74879000000002f004eb9400570b82f3c400ce0c44eb9400314944fef00106000fe084e754ab9460e5e30670e203c00000000b0b9460e5e2c67024e754eb94006d75442b9000000004eba1bf64ef94007893c598f4ab9460e5e30670e203c00000000b0b9460e5e2c6704588f4e754ebaf73e4a8067f42239460e5e40a340b08165e82e814eb94006d7544ebaf7224a8067d823d700000000a379000000004eba1ba0a1674eb94004d948a37946c7c72c588f588f4e754feffff4222f0010206f00144ab9460e70e0677e4ab90000000066122f4800142f4100104fef000c4ef94007893c2f4100042e884ebaf6c2222f000420574a8067da4ab9460e70e067d22039000000002f4000084eb9400789e442b9000000004ebafe024ab9460e5e306726203c00000000b0b9460e5e2c66182f2f00082f3c460e5e384eb94007edb04fef00146000fce24fef000c4e75518f222f000c206f00104ab9460e70e067124ab9460e739a660aab40b0b9460e738e67102f4800102f41000c508f4ef94007909c2f4100042e884ebaf5ca222f000420574a8067dc4eb9400789e4508f6000fd7a598f4eb940031f282e804ebaf5a64a80672c4ab90000000066244a3946c7d8d8661c4ab9460d173a66144ab9460d1694660c2f174ebacaa02f400004588f2017588f4e75598f2f02203946c824560680c0000000222f000c0c8007efffff62084a39800000156708241f2001588f4e751039100b14cc207946c82456d1fc0008ed8075801039100b14cf2242a7422f09c08275fc18b24c020800487008002f41000c4ebaedea508f222f00044a8067b84ab90000000066b0ab40b0b9460d5c3066a62f41000c241f588f6000ca0a4feffff4ab402f02222f0014206f0018b0816408241f4fef000c4e75203946c824560680c00000000c8007efffff62e44a398000001566dc1439100b14cc227946c82456d3fc0008ed801039100b14cf75822f42000ca742c08275fc18b22f2f000c4c020800487108002f4100102f48000c4ebaed4c508f222f00084a8067944ab900000000668c4a3946c7d8d866844ab9460d173a6600ff7c4ab9460d16946600ff724ab9000000006600ff682f6f000400182f410014241f4fef000c6000f09c2f02ab40b0af00086406241f42804e75203946c824560680c00000000c8007efffff62e64a398000001566de1239100b14cc207946c82456a7421039100b14cfd1fc0008ed807381c0822f0173fc18b24c010800487008004ebaeca4508f4a8067a84ab90000000066a02f2f000c206f000c486800064ebaf022508f241fa3404e754e56fff0223c000000002f02243c0000000020394004e1ec2d41fff0b4b900000000670c202e0008242effec4e5e4e754ab98000001267ec207c46c8245622100681c00000000c8107efffff62d6227c100b14ccaf427391b48165c812112050d1fc0008ed800c800000000057c075811239100b14cf71002242a7422f094480c28275fc18b24c021800487018002f00486efff04ebad1fc4fef00104a8067842240206900144a886700ff7a2239000000002039460d1684b1fc00000000661e2f012f002f2e00084e904fef000c242effec2d400008202e00084e5e4e752f012f002f2e00084e904fef000c242effec2d400008202e00084e5e4e7522794004e1ec2039800000122f024a806770203946c824560680c00000000c8007efffff625a207c100b14ccaf417190b280654c1010207946c82456a7421239100b14cfd1fc0008ed807180c28275fc18b2068000000c114c021800744dd1c141f00a00102800017390b4816612b3fc00000000660a71807256b280670810104280241f4e75a342b5b900000000a1674eb94004d948588f241fa37946c7c72ca3404e75af40b0af0004650e203c00000000b0b94004e1ec67024e754ab9400bc6c066f642af00044ef9400322284feffff42f0a4eba17c620394004e1ec2079400bc6c00c800000000066044a886608245f4fef000c4e754ab98000001267f0203946c824560680c00000000c8007efffff62dc71b9100b14ccaf41b28065d02268002841e800242f49000c42a72f48000c4869fff648780032a567a7672f084eb940012254487900000000a167246f002c45eaffec2f0aab672f2f00302f3c400ba8764eb940012bd84fef00302039000000004a806734246f000c45eaffe4487900000000a1672f0aab672f2f00182f3c400ba8764eb940012bd84fef0018203900000000a341b280662aa167486a000648780032486affffa767518a2f2f001c2f40001c4eb9400122544fef00184aaf000467aa245fa37946c7c72c4fef000c4e754e56ffb0703348d7040c226e000cb0ae0008670001a67220b2ae0008670002247431b4ae0008670002227632b6ae00086700022022394004e1eca34041f9000000002d48fff0b089662a0c810000000057c020790000000074102d42ffc671004480b1fc000000006720b1fc000000006700008a2f092f2e00084ebabf96508f4cee040cffb04e5e4e750c810000000066d84ab98000001267d0223946c824560681c00000000c8107efffff62bc73b9100b14ccaf43b68165b07231b2ae00086700025c7233b2ae0008670002147420b4ae00086694262effc687b900000000b0b9000000006306a379000000004ebafdfa4cee040cffb04e5e4e754ab9800000126700ff70207c46c8245622100681c00000000c8107efffff6200ff58247c100b14ccaf427392b4816500ff481d52ffca2050a742d1fc0008ed801239100b14cf77aeffca2f0377fc18b2c2824c031800487018002f00486efff02d49ffc24ebace504fef0010226effc24a806700ff047231b2ae0008670000e27032b0ae00086600fef04ab9000000006700fee6222effc6a16742b90000000083b9000000004eb94004d9484cee040cffb0a37946c7c72c588f4e5e4e75a36effc6a340b0896730203900000000222effc6c2804a81665020394004e1ec223c000000002f092f2e00082d41fff04ebabe26508f6000fe8e22394004e1ec243c000000002079000000002d42fff00c810000000057c071004480b1fc000000006600fe4c6000fe684a896600fe58222effc64681c2804cee040cffb023c1000000004e5e4e75a56effc66000ff76a96effc66000ff6e76082d43ffc66000ff642440206a001c4a886700fe0e222effc683b9000000002039460d1684b1fc00000000660000861039100b14cca367a36771802f004ebad9644fef000c4a80672e48780020203c000000002f004eb94005a2b8508fa1674eb94004d948a37946c7c72c588f4cee040cffb04e5e4e7548780020203c000000002f004eb94005a2b8508f60d0222effc620390000000083b9000000004a806700fdfa538023c0000000004ebafbea6000fdee2f004e90588fa1674eb94004d948a37946c7c72c588f60a2a367487800312d40ffc24ebabce8508f24390000000073b9100b14cc202effc22d42ffc64a8267000362b08265000364206efff02d48ffbe4a886700045c242800082d42ffc6224143e90c112409d482207946c82456d1fc0008ed801639100b14cf2d42ffcea742c68275fc18b24c023800d1c3d1eeffce1628000175901d43ffca764db682660002b84a80670002b271aeffca226efff0b0a90008670003ba10104aaeffbe670002a02041d1fc8000666e101075b9800000027180b480670002de34012601203c00000000eb8b41f9000000002d48ffe042aeffdcc4fc004422430483000000002d43ffec2042243cb93897029489d1fc46c76dec2d42ffe8227946c82456247c100b14cf1d52ffcda7432440d3fc0008ed801d5affdb142effcd200a246effecd5c02d4affd6c48377fc18b24c032800d3c2142effdb1382a800247c100b14cf16123243a7432409c48377fc18b24c032800262effd62242d3fc100a4ece142effdb13823800a743227946c82456d3fc0008ed801d52ffd9246effe02d49ffe452aeffe01d5affca142effd9246effe8d5c82d4affd2c48377fc18b24c0328002242142effcad3eeffe41382a8001639100b14cf3243a7432409c48377fc18b24c032800262effd22242d3fc100a4ece142effca138238004aaeffdc6706116effdbffe010eeffca0c80000000006600ff082001e988224006800000184243e918322d40ffca207946c82456a7431039100b14cf75fc18b2d1fc0008ed80c08342034c020800a742d1c01183980077fc18b21039100b14cfc0824c0308002040d1fc100a4ece4200118098005289b3eeffca66b24aaeffbe6700019c207946c82456a7421039100b14cf327c004d77fc18b2d1fc0008ed80d1eeffcec08234094c030800a7431182080075fc18b2206effce1039100b14cfc08336094c020800d1c0d1fc100a4ece10834aaeffbe670000c6207946c82456a7421039100b14cf2601d1fc000905a3d68343eeffc9247c100a66f1c08275fc18b2d1c3d5c377fc18b24c020800a742119108001039100b14cfc0824c030800159108002d41ffc24ebab99e222effc24aaeffbe6700faba226effbe206900104a886700faacb1fc000000006600015a2f014ebadd3a588f4ebaf8926000fa964aaeffbe6600fd64207946c82456a7421039100b14cf77fc18b2d1fc0008ed80d1eeffcec082744d4c03080071b00800b4806700fd364ebaf8546000fa5871fc00ff2d40ffc66000ff3242aeffbe6000fcb642aeffbe42aeffc66000fcaa2041d1fc80006676101016398000000330432601eb8b2408b580340141f9000000002d48ffe022430483000000002d43ffec4a0057c0c4fc00442042243cb938970294897100d1fc46c76dec2d42ffe844802d40ffdc203c000000006000fd04207946c82456a7421039100b14cf327cffff77fc18b2d1fc0008ed80d1eeffcec08234094c030800a7431182080075fc18b2206effce1039100b14cfc08336094c020800d1c0d1fc100a4ece10834aaeffbe6600fe686000ff28b3eeffbe6700f972206900104a886700fc42b1fc000000006700fc3842a72f012d41ffc24e90508f222effc26000fc24a3672f014e90508f4ebaf73a6000f93e42aeffc66000fba84e56fff0223c000000002f0220394004e1ecab422d41fff0b4ae0008650e43f900000000b3f9000000006708242effec4e5e4e754ab98000001267f0207c46c8245622100681c00000000c8107efffff62da227c100b14ccaf427391b48165cc12112050d1fc0008ed800c800000000057c075811239100b14cf71002242a7422f094480c28275fc18b24c021800487018002f00486efff04ebac75a4fef00104a8067882240206900184a886700ff7e2239000000002039460d1684b1fc00000000662a2f012f2e000c2f2e00082f004e904fef0010a1674eb94004d948a37946c7c72c588f242effec4e5e4e752f012f2e000c2f2e00082f004e904fef0010a1674eb94004d948a37946c7c72c588f60d44e56ffd4227c46c8245648d71c0c24794004e1ec203c00000000761c26512d40fff0b5fc0000000057c01239800000037100448030412239000000002408e7aab580240bb580b5fc00000000660002940a8000000000b2806700008223c00000000020110680c00000000c8007efffff626a2851a74375fc18b21039100b14cfd9fc0008ed80347c03f0267c46c76dce223c80006676c0834c020800d9c041ec18232d48ffe8206effe82248764d101075a1b68266107180206efff0b0a800086700019c101154aeffe8528147eb004445ea00200c818000667e66ca4ab98000001267000208207c46c8245620100680c00000000c8007efffff620001f073b9100b14cc2010af421639100b14cf3043b481650001f42608a742c68275fc18b206800008ed804c023800204345f008004ab9400bc6c0660002ca2f012f0aa367486efff02d41ffec42b9000000004ebac5924fef0010222effecb2b9000000006700035c42b90000000023c1000000004a80670001b045f900000000267900000000b7ca660002224a93670000c84ab900000000660000beb7fc0000000057c02f0b2200448128414eb94003146c42b9000000002079460d165c588fb7fc00000000670001c24a88670001944a906600018e41f9000000002d48ffe845f900000000206effe852aeffe8719891c8c0fc00182240d3fc46c7d8de203188000c80000000006704258088005888700cb08866e845ea000cb5fc0000000066c442932f0b4eb940031494b7fc0000000057c023cb00000000588f4480340c71807382b2806710a1674eb94004d948a37946c7c72c588f4cee1c0cffd44e5e4e754a34a8006700fe62207946c82456a7421039100b14cf77fc18b2d1fc0008ed80c0824c030800d1c042001180a8001039100b14cfc08242024c0308002040d1fc100a4ece1182a80020411028fff875b9800000027180b480670000ac2d41ffec4ebab436222effec528154aeffe847eb004445ea00200c818000667e6600fdca6000fdfcb280670623c0000000004ab900000000670000f873b9100b14cc203946c824561039100b14cf42b900000000b2b9000000006700012e42b90000000023c1000000002039000000004a806700ff264ab9000000006600ff1c0c800000000057c12f00240144824eb94003146c42b9000000002079460d165c2842588f42006000fed8101075b9800000037180b4806600ff4842132d41ffec4ebab37a222effec6000ff424ab9400bc6a466d041f90000000047f9000000002d48ffe845f9000000006000fe3c4ab9000000006600fea44a8b660001402079460d165cb5fc00000000670000e64a886700fe884a906600fe8299cc264a41f9000000002d48ffe845f9000000006000fdf84cee1c0cffd442b90000000042b9000000004e5e4e752679000000004a8b67602f012f0aa367486efff02d41ffec4ebac2c64fef0010222effecb2b900000000672042b90000000023c10000000045f9000000006000fd3a42b9000000006000fed84a80670aa543b6b9460d168467de42b90000000045f9000000006000fd122041744d41e80c1143f28a00a37900000000102900017791b483660e7180206efff0b0a80008674a10112d41ffec23cb000000004ebaf178222effec6000ff624ab9400bc6a46600fda099cc264a6000ff1c4a806782a540b0b9460d16846700fcaa42b90000000045f9000000006000fca0a34b2d41ffec23cb000000004ebaf12e222effec6000ff18b7fc0000000057c02f0b260044834eb94003146c42b9000000002079460d165c2843588fb5fc000000006700fe64264a4a8a6600fc9c42006000fd0a4fefffc048d74c7c4ebafac44ab90000000067104ab9460e70e06600047042b9000000004ab900000000660002c6203946c824560680c00000000c8007efffff63000108a3412039800065b8b2806700040e23c000000000263946c82456428273b9100b14cf2f41002879b9100b14cc247900000000203900000000b6b900000000670002944a8a6700035e4a80660003bc2a2f002842b90000000023c30000000023c50000000023c4000000002079460d165c4a82670000884a88670000824a90667c223c00000000207c46c7dd7643f9000000002010b0816704238088005888b1fc46c7dd8266ec207c46c7deae43f9000000002010b0816704238088005888b1fc46c7deba66ec4ebadfe423c0000000004a806700039241f90000000042902f084eb940031494a167a379000000004eb94004d948a37946c7c72c508f4cd74c7c4fef00404e75247946c82456a7451039100b14cf7dfc18b2d5fc0008ed809dce428247fada32c0854c060800d5c02f0e2f0a4e93508f4a806708a340220ee3a88480528e7a08ba8e66e42039800065b8a345ba80670001ea23c000000000263946c824561a39100b14cf1f45002f7d8579b9100b14cc2f4600283c7c01f1428047eafe4d0102670a73b3e800a345ba81675452804dee001e7208b28066e6af45ba84650001f64a324822660001ee203c400d301c23c0400d5f4c4a826700fe6e4ab98000001257c224790000000020390000000075024482b6b9000000006600fe62600000f02f0041ef00392f4000242f4100284ebab84a207946c82456d1fc0008ed801a39100b14cf3245a7452c09cc857bfc18b24c056800d1c61c30e80030467c7f2a08ca86a7462e85486f0039202f00282f002f40002c4ebad4a41a2f003b227946c82456d3fc00095048ca862f45003c1a11222f00302c2f003c4fef000ceda930452a088a8112851c39100b145e30462a08828513c1100b145e207946c82456d1fc0009b332a350a379100f85984eb940027e004dee001e202f002072085280b2806600fedc6000fef24ebae0244a80670001a64ab9460e5e306600fd2a4ab9460e70e06600fd204ebae7726000fd182c2f0028bcb9000000006600fd62b8b9000000006600fd584a8a670001a04a806700fd7447f9000000004a82670a4ab900000000670001a24ab9000000006600fde82f0b4eb94003146c42b90000000023c30000000023c40000000043ef002c588f23d1000000006000fd2cbab9000000006700fe104a826700017297cb4dfad86242a77c0842a72f0b4e96528b4fef000cbc8b66eca37900000000263946c824561039100b14cf3c7c01f147eafe4d1f40002f7380428079b9100b14cc2f4100286000fdec203c400d31ae6000fe124a806740203c000000004ab9000000006600fd462f004eb94003146c42b90000000042b90000000023c30000000041ef002c588f23c40000000023d0000000006000fc84222f002842b90000000023c30000000023c10000000023c4000000006000fc64203c000000004ab9000000006600fce6609ea346bcb9000000006700fbf0a37900000000263946c82456428273b9100b14cf2f41002879b9100b14cc6000fbe64ebade8a4a806600fb9042b9000000006000fb8642b9000000006000fb8641f90000000042902f084eb940031494a167a379000000004eb94004d948a37946c7c72c508f6000fc6e4a806700fbd647f9000000004a826700fe6c4ab9000000006600fe624ebadbfeb5c06600fe584cd74c7c4fef00404e75a37900000000263946c824561a39100b14cf1f45002f7d8579b9100b14cc2f4600286000fc96202f00040c800000000567044efa038c41fa023020084e75400b3eac400b3e98400b7c67400b5413400b7a63000000004fefffec48ef030200082e802f4800044ebae0564cef030200084fef00144e754fefffe048ef0307000c2409d48006820008ed802e822f41000474000c8400000005660274012f4200084ebae1540c8400000005660228004cef0307000c4fef00204efa031248794005a61c600648794005a8562239460d5c304fefffe048ef030d000c2609d68006830008ed802e832f42000476000c8100000005660276012f43000826014ebae0f80c83000000056702200322004cef030d000c4fef00204e7516102f0071036100ff362600201f79034879400bb7044ef9400585e67110610000582f004879460e73864ef940078890610000124ef94003d722610000084ef94004c3746100fef841fafedc22300c004e7571104fef00186100fee44ef94003c986711061000012b48066064ef9400786ce4ef9400786fc4fefffec48ef030200082e802f4800044ebadf8e4cef030200084fef00144e752f082f01207946c8245673b9100b14cfc2fc18b2d1c173b9100b14ccd1fc0008eda271b01800221f205f4e750c820000000566344fefffe448ef0303000c2e8b2f4300044ebae7a22f4000084cef0303000c4aaf00084fef001c67064ef94003a6246100ff9c24004efa01be0c8600000005662a4fefffec48ef030300042eaf005c4ebae6182f40005c4cef030300044fef00142f006100ff682c00201f4efa01964eb94005213c4eb94007e9404ebaf89c4ef940052228564543544f5200004878ffff4878ffff4ebae58e4ef94004e4d04feffff048d703034ebadb2e4a80670c4cd703034fef00104efae2e44cd703034fef00102f0a4ab9460e70e04ef9400791ec4feffff048d703034ebae1d04a80670a4cd703034fef00104e754cd703034fef00104fefffe848d73c0c4ef94006d78c7c010c800000000566224feffff048d703034ebadac24a80670a4cd703034fef0010600c4cd703034fef0010bc8065064ef940077b624ef940077b704efada884fefffa048d77cfc4ef9400023204eb9400339704a80671e4feffff048d703032f024ebae872588f4cd703034fef00104ef940083b7e4ef940083b062f2e00084878ffff4eb940031ee04feffff448d703022f004ebae6a0588f4cd703024fef000c4ef94004e1f44feffff048d703034ebae7804a804cd703034fef0010660c2279400cfeda4ef9400322ec4e7500000000000000004ef9400365500000000000004ef9400334de0000000000004ef94007982200000000000000004ef94003a53600000000000000004ef94003cda00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffff0000000000000000000000000000000000000000ffffffffffffffff31000000000000000000000000000000000000000000000000003e00000000000000000000000000000000000000000000000000ff00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000002000000000000000000000000000000000000000000030000000000000000000000000000000000000000000400000000000000000000000000000000000000000005000000000000000000000000000000000000000000ff0000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffff0000000000000000000000000000000000000000ffffffffffffffff330000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000003100000000000000000000000000000000000000000000000000ff0000000000000000000000000000000000000000000000000031000000000000000000000000000000000000000000000000003200000000000000000000000000000000000000000000000000ff00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000002000000000000000000000000000000000000000000030000000000000000000000000000000000000000000400000000000000000000000000000000000000000005000000000000000000000000000000000000000000ff000000000000000000000000000000000000000000564543004f464600465744000052455600564543544f522047454e455241544544004e4f204348414e474500ab204d414348494e453a564543544f5220bb00564543544f52004300432300440044230045004600462300470047230041004123004200545950450044454e5300524f4f54005343414c00474154450041434e540053454544005350414e004f46535400524f540052505400444952004f43540056454c0050524f420048554d4e00303031205354415449430030303220464c455800434852004d494e004d414a00444f520050454e540000000000000000000000000000000000000000000000000000564543544f5220535243000000564543544f5220414d50203100564543544f5220414d502032000b0b00010030010c0c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000033203132000007000000400000050006000000020000000000000056000000010000000000000000000000000000000000000000000102030c060d050407080a090b0e0f1010000102030405060708090a0b00000d0e0f100b047e7f7f0c183f4001097f1517000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000fff05ad0ab506ad04a900000000000000000000000000000000000000000f100b047e7f7f0c183f40010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b0b000120300c0c00000000000000000000000000000000000000000000000100000000000000000400fff10000000000000000000000000300000100000000000000000000000003000003000000000000000000000000030000050000000a000000000000004c02000001000000130000004c00000074020000010000001e00000054000000300100000500000027000000c00000055e020000010000003e0000016a0000000a01000007000000450000061e0000013e0200000100000054000000200000000401000003000000630000001c0000000401000003000000730000002400000192010000030000007c000000800000003001000007000000860000117000000048020000010000009700001120000000500200000100000000000000000000000003000006000000a80000075c0000016402000001000000b90000008c0000000401000005000000c3000000000000000401000003000000d3000000180000002701000007000000dc000000000000001801000007000000e60000011e0000004401000007000000f1000000ec00000012010000070000028c000008c00000029e02000001000000fd00000b5e00000132020000010000010a0000010e0000001001000007000001130000003f00000010010000070000011b000000fe00000010010000070000012500000c90000001fa02000001000001310000005000000030010000070000013900000e8a0000001e020000010000014700000ea80000001e020000010000015500000ec60000001e020000010000016300000ee40000001e020000010000017100000f020000001e020000010000017f00000f200000001e020000010000018d00000f3e000000ae020000010000019800000fec0000007402000001000001a500001060000000c002000001000001c2000011b8000001dc02000001000001d1000000500000003001000007000001d9000013940000000a02000001000001e30000139e0000000a02000001000001ec000013a80000000802000001000001f5000013b00000003e0200000100000168000013ee0000003e020000010000015a0000142c0000003e02000001000001ff0000146a000000d002000001000002080000153a000000d002000001000001840000160a000000d00200000100000176000016da000000d0020000010000014c000017aa000000d0020000010000013e0000187a000000d002000001000002110000194a000002e6020000010000022200001c300000068402000001000005a6000001b600000101010000030000023000000000000000400100000500000239000022b4000000460200000100000249000022fa000000cc020000010000025a000023c6000000b00200000100000274000024760000000c02000001000002870000256000000104020000010000029500002a360000033c02000001000002a4000002b70000091a01000003000002ac00002d72000001ba02000001000002bb00002f2c0000008402000001000002ca00000bf60000000401000003000002d4000031540000003602000001000002e1000000180000000401000003000002eb000000140000000401000003000002f50000001000000004010000030000037300000bd200000004010000030000002100000bda0000001801000003000003000000334a0000005a020000010000030a0000000400000004010000030000031600000008000000040100000300000322000033a40000005a020000010000032e0000000c00000004010000030000033b00000162000000080100000700000347000000b00000000801000007000003520000008400000004010000050000035c0000004c0000000401000005000003660000004400000004010000050000037000000050000000040100000500000378000000c2000000060100000700000384000000bc0000000601000007000003970000008800000004010000050000039f000000400000000401000005000003a9000000480000000401000005000003b2000000b80000000401000007000003ba00000bd60000000401000003000003c900000bf200000004010000030000035500000c060000000401000003000003d300000c020000000401000003000003de00000bfe0000000401000003000003e900000bfa000000040100000300000000000000000000000003000007000003f546c82456000000000000fff1000003fe0008ed80000000000000fff10000040700005700000000000000000100000416000055a800000000000000010000041e0000539600000000000000010000042a0000570c0000000000000001000004390000540a000000000000000100000447000054d000000000000000010000045b0000549c000000000000000100000468000054f000000000000000010000047500005718000000000000000100000484000057260000000000000001000004ee00000c4400000000000000030000049300000c9200000000000000030000049b000055de0000000000000001000004a70000560e0000000000000001000004b3000056500000000000000001000004c0000056480000000000000001000004d0000056540000000000000001000004dc0000565a0000000000000001000004e900000d640000000000000003000004f600000dcc00000000000000030000050300000e1a0000000000000003000005100000019400000030110000070000052500000174000000141100000700000538000001880000000c110000070000054b000024820000000c120000010000055c0000248e000000d2120000010000056800002664000000d812000001000005760000273c0000004c120000010000058600002788000000661200000100000599000027ee000001e812000001000005ad000029d60000006012000001000005c100002fb00000013a12000001000005d6000030ea0000001012000001000005e7000056640000000010000001000005f9000030fa0000005a12000001000006050000318a000001c0120000010000060c000055e600000000100000010000061f000033fe00000072120000010000062700003470000000c6120000010000063700003536000002981200000100000641000001c40000000b1100000700000651000037ce000000f21200000100000665000038c00000010a1200000100000679000039ca0000002e120000010000068d000039f80000006412000001000006a200003a5c0000009812000001000006af00003af40000005412000001000006bd00003b480000004412000001000006ca00003b8c0000008a12000001000006d800003c16000000c2120000010000076900000c0c0000000010000003000006e000003cd80000008212000001000006ee00003d5a000000fc12000001000006f6000000c800000024110000070000070200000d48000000001000000300000710000056a000000000100000010000071d00003e56000000a4120000010000072a00003efa0000002a120000010000073700003f2400000116120000010000074a000056f200000000100000010000075d0000403a000007be120000010000076400000d2c000000001000000300000772000047f800000112120000010000077a0000490a00000532120000010000078200004e3c0000052a120000010000078d00000c2800000000100000030000079b000053660000000010000001000007ab0000537e0000000010000001000007b8000053b60000000010000001000007c7000053fc0000000010000001000007d5000054040000000010000001000007e4000054880000000010000001000007ee000054920000000010000001000007f80000545800000000100000010000080600005474000000001000000100000816000054aa000000001000000100000823000054ba0000000010000001000008320000551c0000000010000001000008410000555c0000000010000001000008500000559200000000100000010000085d000055b0000000001000000100000869000055c2000000001000000100000876000055f4000000001000000100000883000056240000000010000001000008910000566000000000100000010000089d000056720000000010000001000008a9000056cc0000000010000001000008b7000056f2000000001000000100766563746f722e63006d675f6469727479006d675f666f7277617264006d675f736176656400766563746f725f67656e65726174652e706172742e30007363616c65730067656e657261746f725f70616765007372635f706167655f7265616479007372635f706167655f736f75726365007372635f7061676500666f726d6174732e370067656e657261746f725f776964676574007365636f6e646172795f77696467657400766563746f725f6d6964695f70616765006d6964695f76696577006d6964695f706167655f6275696c74007469746c65732e3200666f726d6174732e31006d6964695f6e616d6573006d6964695f6c61796f7574006d6964695f636f6e74726f6c006d6964695f6d61780066697273742e33006d6964695f62797465006d6964695f666f726d617400726f6f74732e30006d6964695f666f726d61745f30006d6964695f666f726d61745f31006d6964695f666f726d61745f32006d6964695f666f726d61745f33006d6964695f666f726d61745f34006d6964695f666f726d61745f35006d6964695f7061676531006d675f706167655f7669657700647261775f67656e657261746f725f7769646765742e706172742e3000666f726d61745f636f6e74726f6c00726f6f74732e3600666f726d61745f313000666f726d61745f3800666f726d61745f3600666f726d61745f313100666f726d61745f3900666f726d61745f37006d6964695f7365745f636f6e74726f6c006d6964695f67656e6572617465006c6f636b65642e3400766563746f725f6d6964695f79657300766563746f725f6d6964695f6b6e6f6200766563746f725f6d6964695f61737369676e2e706172742e3000766563746f725f6d6964695f61737369676e00736176655f73657474696e67730067656e65726174655f747261636b0073746167696e67006368616e67655f636f6e74726f6c0067656e657261746f725f7669657700656469745f7669657700706f6f6c5f636f6e7465787400706f6f6c5f62616e6b00706f6f6c5f7061727400706f6f6c5f747261636b00706f6f6c5f666c657800706f6f6c5f62726f77736500706f6f6c5f64697265637400706f6f6c5f73746174696300706f6f6c5f70656e64696e6700706f6f6c5f6c6162656c730068616e646c6572732e38006d675f616374697665006d675f7365636f6e64006d675f637572736f72006d675f6d696e65006d675f6172705f70616765006d675f6172705f73657475705f736c6f7473006d675f7365656e006d675f6f70656e6564006d675f73686f776e006d675f6b657973006c6173745f7472616e73706f7274006c617965725f67656e0073686f776e5f62616e6b0073686f776e5f706172740073686f776e5f747261636b0042414e4b5f50545200504152545f4f46460073745f6e616d655f7265706c61790073745f6e616d650073745f726f775f747970650073745f6d61696e5f7265706c61790073745f7372635f636f6d6d6f6e0073745f63686f6f7365725f726f775f747970650073745f6e616d655f7069636b0073745f706f6f6c5f6b696e640073745f656469745f7265706c61790073745f647261775f7265706c61790073745f656e6373002e706f6f6c5f73746f636b002e6c6973745f73746f636b002e7469746c655f73746f636b002e7469746c655f756e7369676e6564002e7469746c655f706f6f6c002e7469746c655f706c61696e006d675f6c6973745f6b657973006d675f706167655f6b657973006d675f706167655f656e637300766563746f725f636f6e74726f6c5f6e616d657300766563746f725f7363616c655f6e616d657300766563746f725f636f6e74726f6c5f6d617800766563746f725f6e6578745f7365656400766563746f725f7061636b00766563746f725f756e7061636b00766563746f725f67656e657261746500766563746f725f747261636b5f656d70747900766563746f725f77726974655f70687261736500766563746f725f7369676e65645f747261636b00766563746f725f76616c69646174655f706172740073745f76616c69646174655f706172740073745f73746f636b5f76616c69646174650073745f73656c65637465640073745f6b65790073745f73746f636b5f706f6f6c5f6f70656e0073745f747970650073745f63686f6f7365725f747970650073745f61737369676e00766563746f725f64656661756c74730073745f706f6f6c5f63686f6963655f647261770073745f706f6f6c5f63686f6963655f6f70656e0073745f706f6f6c5f63686f6963655f6c6566740073745f706f6f6c5f63686f6963655f72696768740073745f706f6f6c5f6c6566740073745f706f6f6c5f72696768740073745f647261775f706167650073745f73657475705f706167650073745f6b6e6f620073745f73657475705f6b6e6f62006d675f7061676500766563746f725f6d696469006d675f706167655f6c61796572006d675f706167655f73697465006d675f6172705f7365747570006d675f747261636b5f746170006d675f6e6f74655f73657475705f64726177006d675f73746f636b5f6e6f74655f64726177006d675f6b6579006d675f6c6973745f6c61796572006d675f6b6e6f62006d675f7469636b0073745f75695f7469636b0073745f656469745f6c617965720073745f6d616368696e655f6e616d650073745f7372635f6e616d65730073745f6d61696e5f636f6d6d69740073745f7372635f636f6d6d69740073745f7372635f636f6d6d6974320073745f6e616d655f610073745f6e616d655f620073745f73657475705f6f70656e0073745f63686f6f7365725f6f70656e0073745f73657475705f726f770073745f63686f6f7365725f726f770073745f73657475705f65646974360073745f73657475705f64726177360073745f7469636b5f686f6f6b0073745f7372635f647261770073745f706f6f6c5f6f70656e0073745f6c6973745f647261770073745f706f6f6c5f7469746c650073745f76616c6964617465006d675f7461705f73697465006d675f73657475705f73697465006d6f647765726b5f73746f636b5f34303033363534385f380000000634000003010000001c0000065000000301000001b6000006720000030100000040000006bc0000020100001170000006fe00000301000001b20000070400000301000000200000070a00000301000001ae00000710000003010000001c0000071600000301000000240000072600000201000011200000077e000004010000008c0000078e0000030100000000000007a600000301000001b6000007ce0000030100000028000007d6000003010000002e000007ec0000620100000018000007f4000003010000003a0000080a00000301000000400000081c00006201000000ec0000088800006201000000180000089a00000301000001b2000008a00000030100000020000008a600000301000001ae000008ac0000030100000000000008b2000003010000002400000eb800006201000000ed00000ed600006201000000ee00000ef400006201000000ef00000f1200006201000000f000000f3000006201000000f100001fda00000301000002b60000208c0000040100000040000022d00000110100000011000022e600001101000000220000233200006201000000ec0000236a000062010000010e00002ade0000030100000bd100002c2000000301effea16a00002c500000030100000bd100002e0400006201000001880000317200000301000000140000318000000301000000100000322e0000030100000bd2000032960000030100000bd2000032ba0000110100000011000032fc0000030100000bd2000033080000030100000bf60000332a00001101000000220000336600000301000000140000337400000301000000100000338400000301000000040000338a0000030100000008000033c00000030100000014000033ce0000030100000010000033de0000030100000004000033e400000301000000080000361200000301000000100000368c000003010000001800003692000003010000000c000036a00000030100000010000036a60000030100000014000038e80000030100000018000038f600000301000000140000390c000003010000001000003912000003010000000800003918000003010000000c0000396c0000620100000162000039d40000620100000162000039ea000003010000000800003a04000062010000016200003a3a000003010000000400003a40000003010000000800003ab8000003010000000800003aca000062010000016200003d6000006201000000c800003d680000030100000d4800003d78000004010000008400003dc200000201000056a000003e14000002010000075c00003ec600000201000056a000003ee0000004010000004c00003f0400000201000056a000003f3c00000201000056a00000408600000201000056a00000409e0000030100000d2c000040a60000030100000d48000040c600000201000056a00000411600000401000000500000411c0000040100000044000041240000040100000044000041d2000004010000004c000041d800000401000000500000421600006201000000c80000423600006201000000c80000424600000201000056a0000042520000030100000d2c000042740000040100000050000042a80000040100000050000042b400000201000022b4000042dc00001101000000110000430a00001101000000220000432600000401000000500000433400000401000000440000442000006201000000c20000443c00006201fffffcd50000454a00006201000000c80000468000000201000024760000472000006201fffffcd50000474e00006201000000c2000047c40000020100002476000047fe00006201000000c80000481e00000401000000840000486400000201000056a0000048b600000201000022fa0000492000006201000000c80000492e00000201000056a00000495200000201000056a00000495c00006201000000c800004968000004010000008800004a54000004010000004000004a66000004010000004800004a70000004010000004c00004a76000004010000004800004aa40000030100000d4800004aba000004010000008400004ac80000030100000d2c00004b0a000002010000403a00004b22000004010000008400004b340000030100000d4800004b3c000004010000008400004bf2000004010000008800004c14000004010000004000004c1a000004010000004800004c24000004010000004c00004c2a000004010000004800004c460000030100000d4800004c5a000004010000008400004cca0000030100000d2c00004cfe000004010000004000004d04000004010000004c00004d32000004010000004800004d3a000004010000004c00004d40000004010000004800004d50000004010000004c00004d68000004010000004c00004d84000004010000004000004da6000004010000004400004dda000004010000004c00004df0000004010000004400004e020000030100000d4800004e16000004010000008400004e260000030100000d2c00004e5c000003010000000800004e900000030100000bd600004eba0000030100000c0200004ed40000030100000bf600004eda0000030100000c0200004ee00000030100000bfe00004ee60000030100000bfa00004f02000002010000318a00004f4c0000030100000bf200004f6a0000030100000c0600004fda0000030100000bd60000505a0000030100000c020000515a0000030100000bfe000051640000030100000bfa000051a00000030100000c06000051a60000030100000c02000051ac0000030100000bfa000051b80000030100000bfe000051c20000030100000bd6000051ec0000030100000bd60000522a0000030100000c28000052420000030100000c06000052480000030100000bf60000524e0000030100000c020000525a0000030100000bfa000052600000030100000bfe0000526e0000030100000bf6000052740000030100000c020000527a0000030100000bfe000052800000030100000bfa0000528a0000030100000c0c0000529e0000030100000bd6000052a80000030100000bd6000052d40000030100000008000052de000003010000000c000052fa0000030100000c06000053420000030100000bd60000539200000201000055a80000008c0000040100000054000002ee000062010000016a0000062800000301000000200000063e00000301000000240000065800006201000001940000066000000301000000ee0000066600006201000000800000066c000003010000003a000007860000030100000020000007980000030100000024000007ae0000110100000000000007b60000030100000028000007e0000003010000002d000007fe00006201000000000000080400000301000000ee00000810000062010000011e00000bb6000062010000010e00000c22000062010000003f00000c5000006201000000fe00000cec000011010000000c00000d08000062010000005000000d36000011010000000400000de4000062010000017400000dfe000011010000000d00000e42000011010000000800000e8c000004010000008c00000e9400006201000000ec00000eaa000004010000008c00000ec8000004010000008c00000ee6000004010000008c00000f04000004010000008c00000f22000004010000008c000010a4000062010000018800001202000062010000017400001236000011010000000d0000131a00001101000000080000132a00006201000000500000134c0000110100000004000013ce000011010000000d000013e800001101000000080000140e00006201000001740000144c0000620100000050000019ba00006201000000fe00001b6e00006201000000fe00001d6600000301000001b600001e0200000301000001b600001fa80000040100000000000020720000040100000000000021c0000004010000000000002246000004010000000000002256000004010000000000002aaa00000301000002b700002b00000003010000030700002bc400000301000001b600002bd200000301000001b600002bdc00000301000002b700002c2600000301000002b700002cd0000003010000033000002d3c00000301000002b700002f880000030100000bf6000031560000030100000018000031b20000030100000bd2000031d20000030100000bda000032040000030100000bda000032f20000030100000bf60000334c0000030100000018000033a600000301000000180000347600000301000000080000350a00000301000000100000352e0000030100000004000035be00000301000000080000373400006201000001c4000037e000006201000001620000393600000301000000100000396000006201000000b0000039a8000011010000002c00003a72000003010000000800003aa8000003010000000400003b5c0000030100000bf600003bfa0000030100000bf600003c980000030100000bf600003cbc0000030100000c0c00003d3c0000030100000bf600003e08000004010000004c00003f9e000011010000000400003fc6000004010000004400003fd8000011010000003f00003ff800000401000000440000407800006201000000c80000408e0000040100000084000041c2000004010000004c0000420000000401000000500000423c00000401000000840000432000000401000000440000436a00000401000000440000442800006201000000bc0000471400006201000000bc000048180000030100000d48000048aa000004010000004c00004942000004010000008800004a820000030100000d4800004a88000004010000008400004a9a000004010000005000004ade00006201000000b800004ae8000004010000005400004bf8000004010000008400004c30000004010000008400004c3c000004010000005000004c9a00006201000000b800004ca00000030100000d2c00004caa000004010000005400004cb4000004010000005000004ce400006201000000b800004cee000004010000005400004d0e000004010000004000004d460000030100000d2c00004d6e0000030100000d2c00004de00000030100000d4800004e4a000003010000000800004e62000003010000000c00004eae0000030100000bf200004eb40000030100000c0600004f0e00000301b9382e6400004f2e00000301b9382d3800004f580000030100000c0c0000504a0000030100000bf2000050500000030100000c060000517a0000030100000c0c000051840000030100000c0c0000518e0000030100000bd2000052300000030100000bd2000052900000030100000bd2000052e80000030100000c28000053180000030100000c28000053240000030100000c2800000c100000030100000c4400000c140000030100000c9200000c2c0000030100000c4400000c46000002010000318a00000c4a000002010000318a00000c4e000002010000318a00000c60000002010000318a00000c64000002010000318a00000c68000002010000318a00000c940000020100003c1600000caa0000020100003c1600000cc00000020100003c1600000cd60000020100003c1600000cec0000020100003c1600000d020000020100003c1600000d300000030100000d6400000d4c0000030100000dcc00000d500000030100000e1a00000d66000002010000403a00000d6a000002010000403a00000d6e000002010000403a00000d80000002010000403a00000d84000002010000403a00000d88000002010000403a00000d9a000002010000403a00000d9e000002010000403a00000da2000002010000403a00000dce000002010000403a00000dd2000002010000403a00000dd6000002010000403a00000de8000002010000403a00000dec000002010000403a00000df0000002010000403a00000e1c00000201000047f800000e3200000201000047f800000e4800000201000047f800000e5e00000201000047f800000e7400000201000047f800000e8a00000201000047f8000000000000020100000e8a000000040000020100000ea8000000080000020100000ec60000000c0000020100000ee4000000100000020100000f02000000140000020100000f2000000050000011010000004600000054000011010000004800000058000011010000004b0000005c000011010000004d0000006000001101000000500000006400001101000000520000006800001101000000540000006c000011010000005700000070000011010000005900000074000011010000005c00000078000011010000005e0000007c000011010000006100000080000002010000187a0000008400000201000017aa00000088000002010000142c0000008c00000201000013ee0000009000000201000016da00000094000002010000160a0000009800000201000013a80000009c000002010000153a000000a0000002010000139e000000a4000002010000146a000000a80000020100001394000000ac00000201000013b0000000b000000201000033a4000000b4000002010000334a000000cc000011010000003f000000d80000020100002476000000dc000002010000075c000000e000000201000022fa000000e400000201000022b40000011e000011010000006300000122000011010000006800000126000011010000006d0000012a00001101000000720000012e000011010000007700000132000011010000007c0000013600001101000000810000013a00001101000000860000013e000011010000008b0000014200001101000000900000014600001101000000940000014a00001101000000980000014e000011010000009c0000015200001101000000a00000015600001101000000a40000015a00001101000000a90000015e000011010000000c0000016200001101000000ae0000016600001101000000b90000017400001101000000c20000017800001101000000c60000017c00001101000000ca0000018000001101000000ce0000018400001101000000d20000019400001101000000630000019800001101000000680000019c000011010000006d000001a00000110100000072000001a40000110100000077000001a8000011010000007c000001ac0000110100000081000001b00000110100000086000001b4000011010000008b000001b80000110100000090000001bc0000110100000094000001c00000110100000098002e73796d746162002e737472746162002e7368737472746162002e72656c612e74657874002e72656c612e64617461002e627373002e726f646174612e737472312e31002e72656c612e726f6461746100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000100000006000000000000003400005734000000000000000000000004000000000000001b00000004000000400000000000007d6400000f3c0000000900000001000000040000000c0000002b0000000100000003000000000000576800000eb4000000000000000000000004000000000000002600000004000000400000000000008ca0000001d40000000900000003000000040000000c000000310000000800000003000000000000661c0000009000000000000000000000000400000000000000360000000100000032000000000000661c000000d7000000000000000000000001000000010000004a000000010000000200000000000066f4000001cf000000000000000000000002000000000000004500000004000000400000000000008e740000036c0000000900000007000000040000000c00000001000000020000000000000000000068c400000bd00000000a0000007a00000004000000100000000900000003000000000000000000007494000008d00000000000000000000000010000000000000011000000030000000000000000000091e00000005200000000000000000000000100000000", + "sha256": "56226ffce2f0ac2c2abc6d48e2b8cc5a0e83077f464cabe3dffa7743fe2b78db", "stockCopies": [ { "section": 1, - "offset": 12948, + "offset": 22272, "source": 1073951960, "bytes": 6, "sha256": "d6c9f1f60272197a17511f496fc19dd21ddd7df5f1f1ec0cab7a16cad60b0609" }, { "section": 1, - "offset": 12960, + "offset": 22284, "source": 1074239516, "bytes": 6, "sha256": "89c50ac3ca041fdf5647ec5ee2c3580f9a67dd79f0b5cc15ceadda4b9e9bede0" }, { "section": 1, - "offset": 12972, + "offset": 22296, "source": 1073980718, "bytes": 8, "sha256": "cae34bf50383462ed4f92d8044e3021247edb8bf69c17a9c7ead62f6edf79510" }, { "section": 1, - "offset": 12986, + "offset": 22310, "source": 1073991064, "bytes": 8, "sha256": "ed71ef874312890edc87cef7e19cd8c0f8ac4ac9b90182c2364f78d3a4567f45" + }, + { + "section": 1, + "offset": 22258, + "source": 1073964360, + "bytes": 8, + "sha256": "e7935464f6aea76650f55814efc9b45785485164937f3bd5ed6f2a4d384b8d4b" } ], "placement": "linked", @@ -2846,6 +2853,50 @@ "kind": "jmp", "writeLength": 8, "note": "VECTOR native selection/editor access" + }, + { + "address": 1074281212, + "guardLength": 10, + "guardSha256": "d611d680ad5031e96fe61f954ea40fd87a76bbc961c6d2deefdfc55935dd9f1e", + "unit": "vector", + "symbol": "mg_tap_site", + "target": null, + "kind": "jmp", + "writeLength": 10, + "note": "Double-tap TRACK in MIDI mode opens MIDI NOTE SETUP, with the generator list" + }, + { + "address": 1074061802, + "guardLength": 10, + "guardSha256": "b40743bf9a64ff977ac996a4a3c34f6582d8fcda08b78cf52fdf634c94c54959", + "unit": "vector", + "symbol": "mg_page_site", + "target": null, + "kind": "jmp", + "writeLength": 10, + "note": "VECTOR controls on a VECTOR MIDI track's ARP page" + }, + { + "address": 1073947264, + "guardLength": 8, + "guardSha256": "de77e904028311689866c543af3ce42a7fcfa1e3fdc531807fc98eaf0689d1cf", + "unit": "vector", + "symbol": "mg_setup_site", + "target": null, + "kind": "jmp", + "writeLength": 8, + "note": "FUNC+AMP turns a VECTOR MIDI track's ARP page to its second page" + }, + { + "address": 1073964360, + "guardLength": 8, + "guardSha256": "e7935464f6aea76650f55814efc9b45785485164937f3bd5ed6f2a4d384b8d4b", + "unit": "vector", + "symbol": "mg_note_setup_draw", + "target": null, + "kind": "jmp", + "writeLength": 8, + "note": "MIDI NOTE SETUP lists the MIDI generators in its left half" } ], "refs": [ diff --git a/src/engine/assets/resident-dsp.json b/src/engine/assets/resident-dsp.json index cb55bd412..27a818bd2 100644 --- a/src/engine/assets/resident-dsp.json +++ b/src/engine/assets/resident-dsp.json @@ -335,7 +335,7 @@ ] } ], - "sourceCommit": "b28f5275fa014f66f63d60878bb500f69039dc88", + "sourceCommit": "7c9af7ce0539d401b8d39f8d34399f6db99eb871", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -358,7 +358,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.1.2-experimental", - "vector": "0.2.4-experimental", + "vector": "0.3.0-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.1-experimental", "recorder-loop-fix": "0.1.0-experimental", diff --git a/src/engine/assets/rom-packages.json b/src/engine/assets/rom-packages.json index c4e07bd8a..50e90c5f9 100644 --- a/src/engine/assets/rom-packages.json +++ b/src/engine/assets/rom-packages.json @@ -399,7 +399,7 @@ "sha256": "fdba0ffd31b7932ceb1ded3bde9a976b6f148ae96fc73a4efc4fedf6fb692341" } ], - "sourceCommit": "b28f5275fa014f66f63d60878bb500f69039dc88", + "sourceCommit": "7c9af7ce0539d401b8d39f8d34399f6db99eb871", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -422,7 +422,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.1.2-experimental", - "vector": "0.2.4-experimental", + "vector": "0.3.0-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.1-experimental", "recorder-loop-fix": "0.1.0-experimental", diff --git a/src/engine/assets/usb-audio-packages.json b/src/engine/assets/usb-audio-packages.json index 63fa5eb58..30de673f4 100644 --- a/src/engine/assets/usb-audio-packages.json +++ b/src/engine/assets/usb-audio-packages.json @@ -553,7 +553,7 @@ } ] }, - "sourceCommit": "b28f5275fa014f66f63d60878bb500f69039dc88", + "sourceCommit": "7c9af7ce0539d401b8d39f8d34399f6db99eb871", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -576,7 +576,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.1.2-experimental", - "vector": "0.2.4-experimental", + "vector": "0.3.0-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.1-experimental", "recorder-loop-fix": "0.1.0-experimental", diff --git a/src/engine/assets/utility-packages.json b/src/engine/assets/utility-packages.json index fcee21f55..451697003 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": "b28f5275fa014f66f63d60878bb500f69039dc88", + "sourceCommit": "7c9af7ce0539d401b8d39f8d34399f6db99eb871", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -26,7 +26,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.1.2-experimental", - "vector": "0.2.4-experimental", + "vector": "0.3.0-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.1-experimental", "recorder-loop-fix": "0.1.0-experimental", From df05e52c0af4a0fe93ca4d4b6e105d3e36b3d0fb Mon Sep 17 00:00:00 2001 From: repeat98 Date: Sat, 24 Oct 2026 10:14:32 +0200 Subject: [PATCH 09/33] VECTOR 0.3.0: native comparison for layout A (54 matching images, 92 matching refusals, 0 mismatches) Module documents are not regenerated: modules:generate refuses 0.3.0 until the owner's approval for this exact source (sdk/vector-build-approval.json still binds 0.2.4). Co-Authored-By: Claude Opus 5.5 --- sdk/native-comparisons/vector.json | 2163 ++++++++++++++++++---------- 1 file changed, 1366 insertions(+), 797 deletions(-) diff --git a/sdk/native-comparisons/vector.json b/sdk/native-comparisons/vector.json index 376ce18ce..cea2808f9 100644 --- a/sdk/native-comparisons/vector.json +++ b/sdk/native-comparisons/vector.json @@ -2,7 +2,7 @@ "schemaVersion": 1, "moduleId": "vector", "moduleVersion": "0.3.0-experimental", - "moduleSourceSha256": "9760ef4dcd4221fc36936a31e02555278bec18101fbb95b63a24af203c3062de", + "moduleSourceSha256": "9dab5e0081ed0551f1d46de8eef449c7217ab1a7248278ced82cbfe0303c89df", "revision": "b8deefc88b2c3e5f3c6158e364eb741df1924e1d", "originalOsSha256": "164f31224bf61181e3f50e7dec40df9afcae5b16dbf6e4c0d0cc5e986af0a84e", "pool": [ @@ -15,6 +15,7 @@ "everb", "bbd", "lofi2", + "ring-sc", "analog-bassdrum", "usb-audio-out-tracks-main-cue", "quantizer", @@ -26,16 +27,17 @@ "playmodes", "mute-modes", "recorder-loop-fix", + "poly8", "output-matrix", "quantize-live-rec-toggle", "apply-scene" ], "summary": { - "selections": 138, - "built": 48, + "selections": 146, + "built": 54, "identicalOutright": 0, - "identicalOutsidePlatformWrites": 48, - "refused": 90, + "identicalOutsidePlatformWrites": 54, + "refused": 92, "mismatches": 0 }, "selections": [ @@ -75,9 +77,9 @@ ] }, "native": { - "bytes": 1126741, - "osSha256": "02a1fd3e7d7e7aea9ddc9ff2f8a229e8e28547d1ccb56317755dce02d687dff5", - "maskedOsSha256": "714303efb9eab45f3b2ae90b12604ca748262b3beed5caabccf8a6047e93b2e1" + "bytes": 1126983, + "osSha256": "195b0033131812a30bbac007899c365cca0962201d893fe6a880933395448b16", + "maskedOsSha256": "b45d9045530d03bd40ecf413a5ca11be27216983286ecda02e430481fcf6c6ae" }, "result": "masked" }, @@ -102,9 +104,9 @@ "fx2": [] }, "native": { - "bytes": 1126741, - "osSha256": "66dff56c7fdbf4b73771fe90032147a279ff49e348afa190e296c804046981ca", - "maskedOsSha256": "9094d984cf8cf21a7821834f8e2e4731ba83a6e5b4999ad7522098d28bb37794" + "bytes": 1126983, + "osSha256": "7acc07e850745c04571466a034b0fa61efcfee86f5f049bb76cbe9bb966b2c54", + "maskedOsSha256": "07bbb85704b3e030550cc47f139d41114b0835b47db887bd3ae30dabe030a883" }, "result": "masked" }, @@ -145,9 +147,9 @@ ] }, "native": { - "bytes": 1126741, - "osSha256": "05f55ffdaaaf73ba44f0a4a45a3b9b491763053d155dc5cf67a844ed00b58b26", - "maskedOsSha256": "15170b011192eaaa955de312b142fa1052541ca08a24c20f82e1ed1ffea5059f" + "bytes": 1126983, + "osSha256": "a89c07aaeaee8ff10fb7138ed98f793f3923c7a1cfb97f8f864978d4af54fffb", + "maskedOsSha256": "0accb8d3419f973c7a40f4975e094fc50a2909112f40e733e9fc7bc5fba2a4ad" }, "result": "masked" }, @@ -175,9 +177,9 @@ ] }, "native": { - "bytes": 1126741, - "osSha256": "93082737fdf81a7274c5407211fb3300e8852002a8ad48f3987c1af27c1bfb1b", - "maskedOsSha256": "82230187a4d0538df700fb22085414f5e053a2442c015dc895aa41b490c943eb" + "bytes": 1126983, + "osSha256": "56786a59b504b66d38071197bca00aec9dffa6a73b97bab1dcba1b188a69d9ba", + "maskedOsSha256": "a949427872be652340edeabf37664f1980c1aad5d8a1fa5b7ab89b5783a7bb30" }, "result": "masked" }, @@ -218,9 +220,9 @@ ] }, "native": { - "bytes": 1228940, - "osSha256": "424d25def9ba9b240e7887bc1d169a501b1fe234605d35252af5aca20f170a18", - "maskedOsSha256": "5b493f1b0da69dbcb36d88590b793e39d88a83d07b11b55c9da0d2118df6f21d" + "bytes": 1229165, + "osSha256": "25e01574b05deb10d289d79e3005057fe4a93e40c51a42b09ee7012f3215238c", + "maskedOsSha256": "34be76f210c4d8e741d4aadfaa4a0652120f8dfd9778943af29def2420327f48" }, "result": "masked" }, @@ -248,9 +250,9 @@ ] }, "native": { - "bytes": 1228940, - "osSha256": "598c3675ec21194255f093222e5ca11affe132a07229bdcf4cfdcce0bf96860f", - "maskedOsSha256": "26bc52f5061f308cceafb838432a75cdf1c4c97b470ddb58345018a6db237058" + "bytes": 1229165, + "osSha256": "ecc621b66c25e7c851886ef28c38b3a211f50f20beecd4af0447a7f2ea83e582", + "maskedOsSha256": "55bdab26853b614ebfd27611e05c865e6decc51548271b1574e0798e291cc862" }, "result": "masked" }, @@ -292,9 +294,9 @@ ] }, "native": { - "bytes": 1128873, - "osSha256": "212f379536601d4392cb150d3136d32123f2a81574c65423d5eff2ab82102ccd", - "maskedOsSha256": "752a4055d5261e4dd58394563aa1b1536eb662a3fe834999537e8e77b6ba1b49" + "bytes": 1129098, + "osSha256": "c1cabfcdb35333d7b6d6be104a38eaa77b4d0e1c9bab1a01f91711c031257e4e", + "maskedOsSha256": "2c0372b5a362f8f7abf96f8fa0c13c19537604612bccd7624ffb367e0f682afd" }, "result": "masked" }, @@ -323,9 +325,9 @@ ] }, "native": { - "bytes": 1128873, - "osSha256": "165f32cf8b244d67e430cd553ac912bdb7bc4aff50767dcecdeee873020051e2", - "maskedOsSha256": "04928ed37d03a423cc0d87056394a7aa5f1525add4760edde95ce7d5ac18dbe0" + "bytes": 1129098, + "osSha256": "a808453284cadf68ad93419107d6074d85af7ac4368ddaa98c83f994de84f52f", + "maskedOsSha256": "5dfae76e0a295ce288498899e33efa182a895e3c80085afecc130225f420e920" }, "result": "masked" }, @@ -366,9 +368,9 @@ ] }, "native": { - "bytes": 1126741, - "osSha256": "87c48992c40d0017b8468eaa8dc60ea597c1ebbd2c6b8aea566b0cd58035f893", - "maskedOsSha256": "adcf1b98df404e4b44e8a4d4bfb589c7a214b580cbe07de897b7286bf58eeecf" + "bytes": 1126983, + "osSha256": "e061d7272e454bfe01dac6e8b892cb28ff20c8ff2e154ca239d8f27c39d925ef", + "maskedOsSha256": "39b4493ad0188410b0dfd3d3938eb7b1c7165154229a7ae170a6efd0b3b4c0f0" }, "result": "masked" }, @@ -394,9 +396,9 @@ "fx2": [] }, "native": { - "bytes": 1126741, - "osSha256": "73f9f529fe42acf9622222fb7de3f1640a12deebe5dacae39c368a24b3c62695", - "maskedOsSha256": "02a854e757b0b64444aa11e0e4b287a96562b0af0f67360c49f207ab6555e54e" + "bytes": 1126983, + "osSha256": "d28fbb9db0bbbdd895341c39cfa6d64d7e5933dcf78fc0efb90543c05afeea39", + "maskedOsSha256": "8d1236e483a17feaad5d0edf96e89767615f4fb3ea32cc68c7b511bef1750644" }, "result": "masked" }, @@ -438,9 +440,9 @@ ] }, "native": { - "bytes": 1126741, - "osSha256": "76fa6e5f5c2de816d0358c016d3eedb2df63f3ddd588bce920caf7d754bc95c2", - "maskedOsSha256": "a89013b4f003898743c9663a7e9e1e54e7c2b33a270ebc611190f8d41849ff7a" + "bytes": 1126983, + "osSha256": "d42c045169c8e30de4f7e2834edd5d976f712866e3fa4c3575f03aa0b8f55cb3", + "maskedOsSha256": "63547dc1556c6b970759db62c1848f3c9385679fd7ae2706f64c4fd6eb4b874d" }, "result": "masked" }, @@ -469,9 +471,9 @@ ] }, "native": { - "bytes": 1126741, - "osSha256": "d3edb0391c8b5a373775f4a403ed6aa42c93376fb2bad1266647c97e56c97487", - "maskedOsSha256": "a649755cd27ea180253fe556ba9f04b65e02951d98dd151f54ea45d724fda162" + "bytes": 1126983, + "osSha256": "e6bad1878870c1f219d6f385117e908f15d8bbd9ea43d5dac8779b4339971236", + "maskedOsSha256": "0d87d5a263049466007d7f95124b69d4ead92085d64b2b4a35b9995e18204cf6" }, "result": "masked" }, @@ -512,9 +514,9 @@ ] }, "native": { - "bytes": 1126741, - "osSha256": "4a5a8d76e49f09eaf480727c93065e7edd5577870ba886a30af9258123e39d41", - "maskedOsSha256": "80ae46a9f115f616e6dcf52f9764fdf1db2a12b135e56c4f70c669f86768bfa0" + "bytes": 1126983, + "osSha256": "e177203babd38935f6c48d17d8892716cc30ee4dd3f299cce723e4242bd766b5", + "maskedOsSha256": "c666101ed86f65835ff64968113159729d9e4a196292b65f954ec5c85797d354" }, "result": "masked" }, @@ -542,9 +544,9 @@ ] }, "native": { - "bytes": 1126741, - "osSha256": "38c9804e324a4fd42c569897b28d9c27b2bd71f36e0d94d8a948b908a9d58fb0", - "maskedOsSha256": "df134b34b79c606ec1baf180ff79a060163ec33b7c3ce46c0ade7b594b8185ec" + "bytes": 1126983, + "osSha256": "9b76736d80de741a1c6cf1f56c31a12a0a253bad8a491a4b4e6867226bd62215", + "maskedOsSha256": "f7ad1edcdfb04801dc89428049d7320dfe360ed10ca974332ca14a687f4fc63d" }, "result": "masked" }, @@ -584,9 +586,9 @@ ] }, "native": { - "bytes": 1126741, - "osSha256": "5048fba8f2c442f18ec18b4df2c640791f8a0854ab2e6e0bd7caab344b8d3fa9", - "maskedOsSha256": "3eea0a74f26fb9cb75a26d16de3fa1f63f9120d786c2885d221b0250dbf51605" + "bytes": 1126983, + "osSha256": "b3ffc091e8243e21d70adce4dd0ad7c3e78be4075dcb91cd598999f0ea2d7567", + "maskedOsSha256": "fbe51f184962253b294249828a3d65d213219da6352062eaa96a83f1a311ce25" }, "result": "masked" }, @@ -614,9 +616,9 @@ ] }, "native": { - "bytes": 1126741, - "osSha256": "cee643da22831c4fcae5a12be53e1c4a4b417cac09b86333e0f3d4b52972b6f5", - "maskedOsSha256": "eb06e0a43859262ae3d8469bd15c16a6f7b3d6bfa3ca77aaaab44bd86b04afa9" + "bytes": 1126983, + "osSha256": "5ee4c1dbbb98d3aca9869451b3b4d480394d0254d77340c5a30b76d0ba5ea6ea", + "maskedOsSha256": "94157651645d41dcd5405e437431695a95a7c0d3f3157d6d7d293c646382caf3" }, "result": "masked" }, @@ -656,9 +658,9 @@ ] }, "native": { - "bytes": 1126782, - "osSha256": "f68d0e193b82b6b331ce7a452bbbc8a481cf3e9e60ce6dde3f59cbff6716c52d", - "maskedOsSha256": "e9eeece876ac321db4974f9c6de4c71419977fe5a7bb425689f60fa7b731167d" + "bytes": 1127012, + "osSha256": "e03fd72778822f5f8d4344e2c3635885a395f7031f84083ba62c9fbba7f663a4", + "maskedOsSha256": "e73308cb1642c30f5577b16efee9ffa8c452fa6c774695a2e04890f21ae74703" }, "result": "masked" }, @@ -686,9 +688,9 @@ ] }, "native": { - "bytes": 1126782, - "osSha256": "a7e4309baa1bc2c7e9a91da9d5e6f8bc801ccd915631ee4286139ed98edba930", - "maskedOsSha256": "dec6698c59f7496199fb09ba9412f44fcbf1528e99c17f54a6a118f5fc276d04" + "bytes": 1127012, + "osSha256": "02b083735ecc153927b3aa3fe9fc81eb593d99ad248c9677f72abbd810b7f5dd", + "maskedOsSha256": "4f57ee38119340fd7e8ea222b2af13c739fa69575518d4fe57fa5d291a097efa" }, "result": "masked" }, @@ -728,9 +730,9 @@ ] }, "native": { - "bytes": 1126741, - "osSha256": "58a137c4fa309d5fa853e0dbf5862db9212439302c7645eacf13742106bd67f2", - "maskedOsSha256": "684e5d9b4f10ec42c5301fbd82b523cdde0c1af4a0c74214a23c317dc0b2dccf" + "bytes": 1126983, + "osSha256": "46047d14a8096d2b2c17df754d5c8e5214972a8af1cf94518b1ff3864921e41e", + "maskedOsSha256": "dfa34926846a26c7c4f38d7028267c3b6b28a2f6abc023227ccb0b706ca4d356" }, "result": "masked" }, @@ -758,9 +760,84 @@ ] }, "native": { - "bytes": 1126741, - "osSha256": "ebf77b336d04d1807bfeb586cbe76fc44a00049f2287c4ccdbdbac2215e4960f", - "maskedOsSha256": "eb29fa567122e8bfd6958fc4dbbbd6c95d6b4eefa6dcc144630df7e38c0eb857" + "bytes": 1126983, + "osSha256": "b06f508933861dd4acf38ac1e209038701312fd8f07c8f12c6357e358a646171", + "maskedOsSha256": "561f09f4dd2ee844e40fb52657e440075149907869910617ce9669625d1c1f3f" + }, + "result": "masked" + }, + { + "moduleIds": [ + "ring-sc", + "vector" + ], + "keepStockFx2": true, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI", + "RING_SC" + ], + "fx2": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI", + "DELAY", + "PLATE REV", + "DARK REV", + "RING_SC" + ] + }, + "native": { + "bytes": 1126983, + "osSha256": "bf0b8febf0dc65383952b6645531cfa6a6bbf671be78ae3457dc312fdbeb078d", + "maskedOsSha256": "b302dd21910a14df14f9ab8cdfe307dc1cff22fd8fdef1dd55b713c28507c491" + }, + "result": "masked" + }, + { + "moduleIds": [ + "ring-sc", + "vector" + ], + "keepStockFx2": false, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI", + "RING_SC" + ], + "fx2": [ + "RING_SC" + ] + }, + "native": { + "bytes": 1126983, + "osSha256": "f6ad40f8867f3a02d2bf430259aabec0320dc36832753b40d843b320dea64dc2", + "maskedOsSha256": "e52c4abea664702b77d926318ae7c5c90147d25570fd4b43859ed874be42b38b" }, "result": "masked" }, @@ -867,9 +944,9 @@ ] }, "native": { - "bytes": 1129491, - "osSha256": "c2cd8b043dccef45097e61064a0e5605a02b27f5d865cdaef8fadf78aedd8cb4", - "maskedOsSha256": "ab51044e088f872e6492548c05e0e88aa4c61bba273db896cc119ceef5a374b1" + "bytes": 1129731, + "osSha256": "38b59564fe9f2fbbd6a7c5dba4a0938c77c234f916a5b0ea00c655f70e84cc60", + "maskedOsSha256": "8e31c43de5ad38250d2cebb42312c78320603135bd1122b18066c6331a605615" }, "result": "masked" }, @@ -895,9 +972,9 @@ "fx2": [] }, "native": { - "bytes": 1129491, - "osSha256": "eb9bf2739371b3c0753af2823f861ae45ed0cc82564f1206456ba8cc45a17ba1", - "maskedOsSha256": "09c1ae8061cf3613a0897970e309de0498a23500127bf406037bb6fd1f2d1132" + "bytes": 1129731, + "osSha256": "4190d71b91e33a0f625a321dcae0317d7e55ddda802c6144de764f38bb06c3ff", + "maskedOsSha256": "c3c299863b5725b20e9f75160aa3640cee84b4c52e31d3f0d35839a5306bdda8" }, "result": "masked" }, @@ -938,9 +1015,9 @@ ] }, "native": { - "bytes": 1128952, - "osSha256": "1f08d15f90afd53dc3bf209432c832acc2adb10999ba54466e2c235335b5ce6a", - "maskedOsSha256": "bc58e70b31e42fb8694a0a9580c34781dfd83cb09b7974e0cfe7d69661718010" + "bytes": 1129167, + "osSha256": "619365c05028fd14872a776f94c24a4714beee0e35299873c036c296d013535d", + "maskedOsSha256": "d4ad7ce984aa806261b94f7b7390ec8d1a28e255c2e1651df8f9f5a680ecf965" }, "result": "masked" }, @@ -966,9 +1043,9 @@ "fx2": [] }, "native": { - "bytes": 1128952, - "osSha256": "2dd4a9d118afae6b0c0050ffa156eadcaf0a9dd5d3bded606f1a359c25ca1482", - "maskedOsSha256": "26973b2197adf5264b261a45e905729c7946ee2227684e91b957daf3378ebdc8" + "bytes": 1129167, + "osSha256": "ca52adebf9641962e4f0956fdec74ef13ae8619cd74945b12e693d3cbcbf1c02", + "maskedOsSha256": "ed23cef91289498fa3afe5ef9d5f3d217fe907c45df345ad4d4daf33761fc329" }, "result": "masked" }, @@ -1076,9 +1153,9 @@ ] }, "native": { - "bytes": 1126741, - "osSha256": "f38139f67dcaf266ef8c119da3608ccbfd73e82587c5153ded705a1ab6ef6eb7", - "maskedOsSha256": "cd56e4438c1b80eeb77a1977402ebf8a2f267df21e44e044e38704593cb92c6a" + "bytes": 1126983, + "osSha256": "c493ff804d5a15229993959dd35d2a9b143b5e0038e5d256948205af689fe71f", + "maskedOsSha256": "bf628029a1516325e953f5652785484091b98cfcc53364d2689963f8130e4b72" }, "result": "masked" }, @@ -1104,9 +1181,9 @@ "fx2": [] }, "native": { - "bytes": 1126741, - "osSha256": "335ea0691d49b61d0e87d757a7f5315d0c8aa45c182aedd5705b39e5a03b0c47", - "maskedOsSha256": "18013befbce8ca31512e1093df2c1fd771d0be444ec980a97c946a6a68e0b130" + "bytes": 1126983, + "osSha256": "5cc07ab314181e6a12550e14b07ade391605f667d5f32f065494014b2311287c", + "maskedOsSha256": "925fb61d95a737d40b68d54dbfce827d0bb43cfd6445665ad826f52c73118530" }, "result": "masked" }, @@ -1147,9 +1224,9 @@ ] }, "native": { - "bytes": 1126741, - "osSha256": "544ae40818b1d69d9edb655e3a8b19c52b3646d9d5c581c6aa81680453409546", - "maskedOsSha256": "a9a471514bfef525a5d7bafde6002ff774acd21f5bebfd6c6828086f9897c224" + "bytes": 1126983, + "osSha256": "a130aadd42adaf82937284cbabf22f4fd7a74897288d4034ee6f5e61f886f5f6", + "maskedOsSha256": "6046ef1da756bfb050c69b0f8e56aa483a2234319f2568922496780d872004af" }, "result": "masked" }, @@ -1175,9 +1252,9 @@ "fx2": [] }, "native": { - "bytes": 1126741, - "osSha256": "345184ba65c5a92677fcac82602a573c982a5fc05cfb044d0f9f75ea22cc0d1c", - "maskedOsSha256": "5a82152b1a87fe808cd56b13303dfc75688b834614244f10d85b02e24d0fa120" + "bytes": 1126983, + "osSha256": "18164c7776a3c5877ffa9bf6956b7734ddc2683892937c6623db0dc5f0f17323", + "maskedOsSha256": "8b213c9641d4346a5779b5ac241db14141a44aa88ae5f7eeb671c3b46e97cf1c" }, "result": "masked" }, @@ -1217,9 +1294,9 @@ ] }, "native": { - "bytes": 1126741, - "osSha256": "b069b0a3c81f18f42b71ee4aa7484bdb5f3c3bb47f913d4a0f6a5e6d39caff8b", - "maskedOsSha256": "5673e5640a871ae7b05c3e3e23fa8a0f17cb7b1db47463c46fbc224850922812" + "bytes": 1126983, + "osSha256": "aa2dae527c7246247c43d87daf7b29d2a2824072f0e6b74529675d35f507c2a7", + "maskedOsSha256": "c8e3d0be08e55f5e923972efb8903d3369eccfeb8726fcb51eb31e89c6d79db9" }, "result": "masked" }, @@ -1247,9 +1324,9 @@ ] }, "native": { - "bytes": 1126741, - "osSha256": "9b1484ae9a5a2fcac19e7472d141adba7c1eacc7d38963b8e59ea9667c42a0b6", - "maskedOsSha256": "d67988ec733104208742c394e504ae7984f54559437aef6c5580c3bacaed0686" + "bytes": 1126983, + "osSha256": "e6f49c2603b8de292d2f2886f9a1956491efd671f53bdbe027bdfad6d0a3aee3", + "maskedOsSha256": "0728cc588c3ba39e682ae4a53315eb16ded9327ad82dd1c5f3e920d9cbc7fe93" }, "result": "masked" }, @@ -1290,9 +1367,9 @@ ] }, "native": { - "bytes": 1132503, - "osSha256": "d2d4984cca927e789adb08b98f86547d5581c4d5cf18148c059e5b599e0b72be", - "maskedOsSha256": "7f72258872cc948efa984de6aecbc62ec5e85dd61e79b7d538479157c3245c5c" + "bytes": 1132755, + "osSha256": "39bd0f3b2af85bf6c08f4877d2c9c8bc26a158c1148c8cc016136dd64ce3b5ff", + "maskedOsSha256": "62ae85b2ca40461ac6e1b8046e60142bae045afb29413abd3941d8be48d75bd8" }, "result": "masked" }, @@ -1318,9 +1395,9 @@ "fx2": [] }, "native": { - "bytes": 1132503, - "osSha256": "f0b765fffa44182af51f5758bb500b0daf5110903eb9c78fadaa47df561e4b64", - "maskedOsSha256": "3efe8709546fc0bdade8ed3d2a764f004547b88918a31f12bc789a06694f9368" + "bytes": 1132755, + "osSha256": "0d87d6f2cd601abaa9db57f594dd1d8f188d66b40c66e81623282f91b7ecc7b4", + "maskedOsSha256": "c71fe4740146e93ccbb716c02a98f4d0bb9da7be818366d4386ffedcb4c9f604" }, "result": "masked" }, @@ -1361,9 +1438,9 @@ ] }, "native": { - "bytes": 1126741, - "osSha256": "fc128534dd31c25996277ee68c03c5b85cff47ec9b039d50b8018a7b939fd327", - "maskedOsSha256": "d968fa9956417c22e58ec0ad05ca0f18e40e74a22de6efc6f61d193f616bd84e" + "bytes": 1126983, + "osSha256": "ae93e18f05c8153a341fe86b262d80fc00d4dc26c021a5d7717c8e6b3391f196", + "maskedOsSha256": "a79adda725ac55c45d5fa379ac3751871f976d44436b9746ff249f3cd4145350" }, "result": "masked" }, @@ -1389,9 +1466,9 @@ "fx2": [] }, "native": { - "bytes": 1126741, - "osSha256": "e66ea89aed7bd944e3824574c2f9a9bf284c54a7d374e285ee136073520d2745", - "maskedOsSha256": "1b538f161442a89757bd90944993cf59511105540d457545a0f008e17938b654" + "bytes": 1126983, + "osSha256": "0105e4e86a94d571ea1ed3bd82d79fcafbf5a97f1d71ea5e245ec2a3c891de38", + "maskedOsSha256": "990577ce67b492a1b9ad28ac170b16a10fa7d48f74a1539a64700ecfab26b1cc" }, "result": "masked" }, @@ -1432,9 +1509,9 @@ ] }, "native": { - "bytes": 1126741, - "osSha256": "ba9a0b29720c2a1bbb3a055f4b5185859ed69280cb9a833fb5f69b7a85ad62c7", - "maskedOsSha256": "75a02b9f0209e787a0ef890d837ec6a14bc81a15328d04cd752cc49e1b44fe27", + "bytes": 1126983, + "osSha256": "061ef2eb8a57922a9b83f3df0e83d75d61d0de729fafd0d670100bc25fc45cdd", + "maskedOsSha256": "4c3a73f3fc1e182029fa7f1de80c730dd69b43d6380c7795582e16e33b028f26", "platformArena": true }, "result": "masked" @@ -1461,13 +1538,84 @@ "fx2": [] }, "native": { - "bytes": 1126741, - "osSha256": "c22bb0046f3de92e27b64e058d93cb07a16af3ab4363d23c44324be03c345f22", - "maskedOsSha256": "680708323d5a6315ee414ede8137d66adad7c6b10d6df0ba96622b5065f0774b", + "bytes": 1126983, + "osSha256": "04803b47a3c8ca09cc0b8ab006ccb13425b5e2af41a297813f64c81e4275fd03", + "maskedOsSha256": "5cdf31265e245c343ce9a0fc7700935bc2346599705990dfb20662fdb6324f82", "platformArena": true }, "result": "masked" }, + { + "moduleIds": [ + "vector", + "poly8" + ], + "keepStockFx2": true, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI" + ], + "fx2": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI", + "DELAY", + "PLATE REV", + "SPRING REV", + "DARK REV" + ] + }, + "native": { + "bytes": 1140074, + "osSha256": "7ebb22f3cbd303fadd5ecf2fc9b6ea1da15404f57ea304980f0b53ecce3d77c8", + "maskedOsSha256": "1cdad67d9fc32a5ea9cbcdb09979fd91d6b17f85654d8ca6a1c8f0415288e69d" + }, + "result": "masked" + }, + { + "moduleIds": [ + "vector", + "poly8" + ], + "keepStockFx2": false, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI" + ], + "fx2": [] + }, + "native": { + "bytes": 1140074, + "osSha256": "f8c6b23ae3ee6984a2028be3e7a337b583124899fd4f1712093c4a4fdbeef740", + "maskedOsSha256": "f0d871b4e7e8f45f681eb8982c46b2208231f1400499a35e862d1b5e70f90ad1" + }, + "result": "masked" + }, { "moduleIds": [ "vector", @@ -1504,9 +1652,9 @@ ] }, "native": { - "bytes": 1127929, - "osSha256": "82e6be7c0dd44d7a17213a1744312eedfde2eab01746796106e1e438e6b441a6", - "maskedOsSha256": "30d8e0aecee9f75fc3cc385aee9021ec04ca1f616bec6855728611951ea967e3" + "bytes": 1128179, + "osSha256": "0b451b889866b06d64299e45647c319f317ff25f322a83540f7e4ad08bbd60ae", + "maskedOsSha256": "7fbc3ff6073f036d3a1d23b4de9b8b5075e8101b46cc43253d40eb414320fee6" }, "result": "masked" }, @@ -1532,9 +1680,9 @@ "fx2": [] }, "native": { - "bytes": 1127929, - "osSha256": "088b98137e463433d8ab8b2b6466261ea1de70a6a37584bd31a0412a6a0546e3", - "maskedOsSha256": "2c5af3d0110851ab0dfd3f5b4360528c4491f10ad552bb1302f6747912d6dab5" + "bytes": 1128179, + "osSha256": "4db115de1dbf3e3c1c62619864292ea9e603b81c0afaec536e8d7a01c8d2042a", + "maskedOsSha256": "6b4f20ac6c98aa86fc7fb59183c412f3c651961d917c434c70fab18dadf6edd5" }, "result": "masked" }, @@ -1575,9 +1723,9 @@ ] }, "native": { - "bytes": 1126741, - "osSha256": "3650870009f45a612268ccc40caa411b8025b5cdbcff6dceb6f0f81b098baff8", - "maskedOsSha256": "d2447ba1845365bb9ea5dae8dff5d9301e9d5429b8508444cc503396c9b59cf8" + "bytes": 1126983, + "osSha256": "12ffa7fee946796071f6c5f32eb6980b53b2984e1f19cd6ec72228809c13bb6d", + "maskedOsSha256": "d29c92652ed8aae69b591ae602537ebf704b0dbfc55ae4ab2f3394ca8c5b63cf" }, "result": "masked" }, @@ -1603,9 +1751,9 @@ "fx2": [] }, "native": { - "bytes": 1126741, - "osSha256": "8ea628b14ad6ec40ade0c50b092d92d3e16ea631270364d7b72b6eed9bcab269", - "maskedOsSha256": "78e4316b534b3584b6ce132923de1ac2f33dc49773ae3b0c7979be7e75df76d3" + "bytes": 1126983, + "osSha256": "41ebd072b74301e27638de7c5a5071ea765bfcc810d1db6c3797ade92a584a11", + "maskedOsSha256": "abc0e5dcefe81a6388e8cc33dada24f5d286e15f59db32f887d785556494194d" }, "result": "masked" }, @@ -1646,9 +1794,9 @@ ] }, "native": { - "bytes": 1127206, - "osSha256": "ccf5754feb2f21448b152663b315d9d3010b6b8cb7b5fd6c1231d009e599c725", - "maskedOsSha256": "00209c55f24352f97caf6da239e43f710d19d3686198ab7d45d50bd6edaa77a3" + "bytes": 1128213, + "osSha256": "c09e31f2f72e680f3b8ebe380f21a5382c7293a0a2fde85eadb5c6019f64ff75", + "maskedOsSha256": "c8ba8774f82fa28a117f70f89132c38cd58b119b0cc86f5abf2576d6d834c4a8" }, "result": "masked" }, @@ -1674,9 +1822,9 @@ "fx2": [] }, "native": { - "bytes": 1127206, - "osSha256": "4055cadeda4fef3071fe79b80869d00e9a718ab59c56d1318771abe568a28c12", - "maskedOsSha256": "9af32dd04b67d2ba9243376472811662b2dc2522610e80da7d239fa981d1ccdc" + "bytes": 1128213, + "osSha256": "01afca2bc34ddf021d5353613958cf96b012e680f76e9bab245a92fe2155202c", + "maskedOsSha256": "3df9a4fca78ab0b5d2ff71734fef55554ef8f8a641e1d6db7dac25e228077981" }, "result": "masked" }, @@ -1691,6 +1839,7 @@ "everb", "bbd", "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -1701,6 +1850,7 @@ "playmodes", "mute-modes", "recorder-loop-fix", + "poly8", "output-matrix", "quantize-live-rec-toggle", "apply-scene" @@ -1719,7 +1869,8 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "FILTER", @@ -1740,11 +1891,12 @@ "AIR CHORUS", "EVERB", "BBD", - "LOFI2" + "LOFI2", + "RING_SC" ] }, "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 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" + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" }, "result": "refused" }, @@ -1759,6 +1911,7 @@ "everb", "bbd", "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -1769,6 +1922,7 @@ "playmodes", "mute-modes", "recorder-loop-fix", + "poly8", "output-matrix", "quantize-live-rec-toggle", "apply-scene" @@ -1787,7 +1941,8 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "MINIVERB", @@ -1798,11 +1953,12 @@ "EVERB", "BBD", "LOFI2", + "RING_SC", "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 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" + "refused": "SYNTH MACHINE fm_qzc at 0x400d7b80 not free" }, "result": "refused" }, @@ -1816,6 +1972,7 @@ "everb", "bbd", "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -1826,6 +1983,7 @@ "playmodes", "mute-modes", "recorder-loop-fix", + "poly8", "output-matrix", "quantize-live-rec-toggle", "apply-scene" @@ -1844,7 +2002,8 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "FILTER", @@ -1864,11 +2023,12 @@ "AIR CHORUS", "EVERB", "BBD", - "LOFI2" + "LOFI2", + "RING_SC" ] }, "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 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" + "refused": "SYNTH MACHINE fm_qzc at 0x400d7b80 not free" }, "result": "refused" }, @@ -1882,6 +2042,7 @@ "everb", "bbd", "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -1892,6 +2053,7 @@ "playmodes", "mute-modes", "recorder-loop-fix", + "poly8", "output-matrix", "quantize-live-rec-toggle", "apply-scene" @@ -1910,7 +2072,8 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "TAPE ECHO", @@ -1920,11 +2083,12 @@ "EVERB", "BBD", "LOFI2", + "RING_SC", "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 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" + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" }, "result": "refused" }, @@ -1938,6 +2102,7 @@ "everb", "bbd", "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -1948,6 +2113,7 @@ "playmodes", "mute-modes", "recorder-loop-fix", + "poly8", "output-matrix", "quantize-live-rec-toggle", "apply-scene" @@ -1966,7 +2132,8 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "FILTER", @@ -1986,11 +2153,12 @@ "AIR CHORUS", "EVERB", "BBD", - "LOFI2" + "LOFI2", + "RING_SC" ] }, "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 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" + "refused": "SYNTH MACHINE fm_qzc at 0x400d7b80 not free" }, "result": "refused" }, @@ -2004,6 +2172,7 @@ "everb", "bbd", "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -2014,6 +2183,7 @@ "playmodes", "mute-modes", "recorder-loop-fix", + "poly8", "output-matrix", "quantize-live-rec-toggle", "apply-scene" @@ -2032,7 +2202,8 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "MINIVERB", @@ -2042,11 +2213,12 @@ "EVERB", "BBD", "LOFI2", + "RING_SC", "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 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" + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" }, "result": "refused" }, @@ -2060,6 +2232,7 @@ "everb", "bbd", "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -2070,6 +2243,7 @@ "playmodes", "mute-modes", "recorder-loop-fix", + "poly8", "output-matrix", "quantize-live-rec-toggle", "apply-scene" @@ -2087,7 +2261,8 @@ "COMB FILTER", "SIDECHAIN_COMPRESSOR", "LO-FI", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "FILTER", @@ -2107,11 +2282,12 @@ "AIR CHORUS", "EVERB", "BBD", - "LOFI2" + "LOFI2", + "RING_SC" ] }, "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 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" + "refused": "SYNTH MACHINE fm_qzc at 0x400d7b80 not free" }, "result": "refused" }, @@ -2125,6 +2301,7 @@ "everb", "bbd", "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -2135,6 +2312,7 @@ "playmodes", "mute-modes", "recorder-loop-fix", + "poly8", "output-matrix", "quantize-live-rec-toggle", "apply-scene" @@ -2152,7 +2330,8 @@ "COMB FILTER", "SIDECHAIN_COMPRESSOR", "LO-FI", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "MINIVERB", @@ -2162,11 +2341,12 @@ "EVERB", "BBD", "LOFI2", + "RING_SC", "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 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" + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" }, "result": "refused" }, @@ -2180,6 +2360,7 @@ "everb", "bbd", "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -2190,6 +2371,7 @@ "playmodes", "mute-modes", "recorder-loop-fix", + "poly8", "output-matrix", "quantize-live-rec-toggle", "apply-scene" @@ -2208,7 +2390,8 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "FILTER", @@ -2229,11 +2412,12 @@ "AIR CHORUS", "EVERB", "BBD", - "LOFI2" + "LOFI2", + "RING_SC" ] }, "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 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" + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" }, "result": "refused" }, @@ -2247,6 +2431,7 @@ "everb", "bbd", "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -2257,6 +2442,7 @@ "playmodes", "mute-modes", "recorder-loop-fix", + "poly8", "output-matrix", "quantize-live-rec-toggle", "apply-scene" @@ -2275,7 +2461,8 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "MINIVERB", @@ -2286,11 +2473,12 @@ "EVERB", "BBD", "LOFI2", + "RING_SC", "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 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" + "refused": "SYNTH MACHINE fm_qzc at 0x400d7b80 not free" }, "result": "refused" }, @@ -2304,6 +2492,7 @@ "everb", "bbd", "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -2314,6 +2503,7 @@ "playmodes", "mute-modes", "recorder-loop-fix", + "poly8", "output-matrix", "quantize-live-rec-toggle", "apply-scene" @@ -2331,7 +2521,8 @@ "COMB FILTER", "SIDECHAIN_COMPRESSOR", "LO-FI", - "EUCLID" + "EUCLID", + "RING_SC" ], "fx2": [ "FILTER", @@ -2351,11 +2542,12 @@ "AIR CHORUS", "EVERB", "BBD", - "LOFI2" + "LOFI2", + "RING_SC" ] }, "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 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" + "refused": "SYNTH MACHINE fm_qzc at 0x400d7b80 not free" }, "result": "refused" }, @@ -2369,6 +2561,7 @@ "everb", "bbd", "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -2379,6 +2572,7 @@ "playmodes", "mute-modes", "recorder-loop-fix", + "poly8", "output-matrix", "quantize-live-rec-toggle", "apply-scene" @@ -2396,7 +2590,8 @@ "COMB FILTER", "SIDECHAIN_COMPRESSOR", "LO-FI", - "EUCLID" + "EUCLID", + "RING_SC" ], "fx2": [ "MINIVERB", @@ -2406,11 +2601,12 @@ "EVERB", "BBD", "LOFI2", + "RING_SC", "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 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" + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" }, "result": "refused" }, @@ -2424,6 +2620,7 @@ "everb", "bbd", "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -2434,6 +2631,7 @@ "playmodes", "mute-modes", "recorder-loop-fix", + "poly8", "output-matrix", "quantize-live-rec-toggle", "apply-scene" @@ -2452,7 +2650,8 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "FILTER", @@ -2472,11 +2671,12 @@ "TAPEHEAD", "EVERB", "BBD", - "LOFI2" + "LOFI2", + "RING_SC" ] }, "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 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" + "refused": "SYNTH MACHINE fm_qzc at 0x400d7b80 not free" }, "result": "refused" }, @@ -2490,6 +2690,7 @@ "everb", "bbd", "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -2500,6 +2701,7 @@ "playmodes", "mute-modes", "recorder-loop-fix", + "poly8", "output-matrix", "quantize-live-rec-toggle", "apply-scene" @@ -2518,7 +2720,8 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "MINIVERB", @@ -2528,11 +2731,12 @@ "EVERB", "BBD", "LOFI2", + "RING_SC", "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 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" + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" }, "result": "refused" }, @@ -2546,6 +2750,7 @@ "airwindows-chorus", "bbd", "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -2556,6 +2761,7 @@ "playmodes", "mute-modes", "recorder-loop-fix", + "poly8", "output-matrix", "quantize-live-rec-toggle", "apply-scene" @@ -2574,7 +2780,8 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "FILTER", @@ -2594,11 +2801,12 @@ "TAPEHEAD", "AIR CHORUS", "BBD", - "LOFI2" + "LOFI2", + "RING_SC" ] }, "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 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" + "refused": "SYNTH MACHINE fm_qzc at 0x400d7b80 not free" }, "result": "refused" }, @@ -2612,6 +2820,7 @@ "airwindows-chorus", "bbd", "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -2622,6 +2831,7 @@ "playmodes", "mute-modes", "recorder-loop-fix", + "poly8", "output-matrix", "quantize-live-rec-toggle", "apply-scene" @@ -2640,7 +2850,8 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "MINIVERB", @@ -2650,11 +2861,12 @@ "AIR CHORUS", "BBD", "LOFI2", + "RING_SC", "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 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" + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" }, "result": "refused" }, @@ -2668,6 +2880,7 @@ "airwindows-chorus", "everb", "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -2678,6 +2891,7 @@ "playmodes", "mute-modes", "recorder-loop-fix", + "poly8", "output-matrix", "quantize-live-rec-toggle", "apply-scene" @@ -2696,7 +2910,8 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "FILTER", @@ -2716,11 +2931,12 @@ "TAPEHEAD", "AIR CHORUS", "EVERB", - "LOFI2" + "LOFI2", + "RING_SC" ] }, "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 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" + "refused": "SYNTH MACHINE fm_qzc at 0x400d7b80 not free" }, "result": "refused" }, @@ -2734,6 +2950,7 @@ "airwindows-chorus", "everb", "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -2744,6 +2961,7 @@ "playmodes", "mute-modes", "recorder-loop-fix", + "poly8", "output-matrix", "quantize-live-rec-toggle", "apply-scene" @@ -2762,7 +2980,8 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "MINIVERB", @@ -2772,11 +2991,12 @@ "AIR CHORUS", "EVERB", "LOFI2", + "RING_SC", "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 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" + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" }, "result": "refused" }, @@ -2790,6 +3010,7 @@ "airwindows-chorus", "everb", "bbd", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -2800,6 +3021,7 @@ "playmodes", "mute-modes", "recorder-loop-fix", + "poly8", "output-matrix", "quantize-live-rec-toggle", "apply-scene" @@ -2818,7 +3040,8 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "FILTER", @@ -2838,11 +3061,12 @@ "TAPEHEAD", "AIR CHORUS", "EVERB", - "BBD" + "BBD", + "RING_SC" ] }, "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 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" + "refused": "SYNTH MACHINE fm_qzc at 0x400d7b80 not free" }, "result": "refused" }, @@ -2856,6 +3080,7 @@ "airwindows-chorus", "everb", "bbd", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -2866,6 +3091,7 @@ "playmodes", "mute-modes", "recorder-loop-fix", + "poly8", "output-matrix", "quantize-live-rec-toggle", "apply-scene" @@ -2884,7 +3110,8 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "MINIVERB", @@ -2894,11 +3121,12 @@ "AIR CHORUS", "EVERB", "BBD", + "RING_SC", "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 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" + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" }, "result": "refused" }, @@ -2913,6 +3141,7 @@ "everb", "bbd", "lofi2", + "usb-audio-out-tracks-main-cue", "quantizer", "synth", "previewvol", @@ -2922,6 +3151,7 @@ "playmodes", "mute-modes", "recorder-loop-fix", + "poly8", "output-matrix", "quantize-live-rec-toggle", "apply-scene" @@ -2965,7 +3195,7 @@ ] }, "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 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" + "refused": "SYNTH MACHINE fm_qzc at 0x400d7b80 not free" }, "result": "refused" }, @@ -2980,6 +3210,7 @@ "everb", "bbd", "lofi2", + "usb-audio-out-tracks-main-cue", "quantizer", "synth", "previewvol", @@ -2989,6 +3220,7 @@ "playmodes", "mute-modes", "recorder-loop-fix", + "poly8", "output-matrix", "quantize-live-rec-toggle", "apply-scene" @@ -3022,7 +3254,7 @@ ] }, "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 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" + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" }, "result": "refused" }, @@ -3037,7 +3269,8 @@ "everb", "bbd", "lofi2", - "usb-audio-out-tracks-main-cue", + "ring-sc", + "quantizer", "synth", "previewvol", "cc-map", @@ -3046,6 +3279,7 @@ "playmodes", "mute-modes", "recorder-loop-fix", + "poly8", "output-matrix", "quantize-live-rec-toggle", "apply-scene" @@ -3064,7 +3298,8 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "FILTER", @@ -3085,11 +3320,12 @@ "AIR CHORUS", "EVERB", "BBD", - "LOFI2" + "LOFI2", + "RING_SC" ] }, "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": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" }, "result": "refused" }, @@ -3104,7 +3340,8 @@ "everb", "bbd", "lofi2", - "usb-audio-out-tracks-main-cue", + "ring-sc", + "quantizer", "synth", "previewvol", "cc-map", @@ -3113,6 +3350,7 @@ "playmodes", "mute-modes", "recorder-loop-fix", + "poly8", "output-matrix", "quantize-live-rec-toggle", "apply-scene" @@ -3131,7 +3369,8 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "MINIVERB", @@ -3142,11 +3381,12 @@ "EVERB", "BBD", "LOFI2", + "RING_SC", "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": "SYNTH MACHINE fm_qzc at 0x400d7b80 not free" }, "result": "refused" }, @@ -3161,8 +3401,9 @@ "everb", "bbd", "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", - "quantizer", + "synth", "previewvol", "cc-map", "sidechain-compressor", @@ -3170,6 +3411,7 @@ "playmodes", "mute-modes", "recorder-loop-fix", + "poly8", "output-matrix", "quantize-live-rec-toggle", "apply-scene" @@ -3188,7 +3430,8 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "FILTER", @@ -3209,11 +3452,12 @@ "AIR CHORUS", "EVERB", "BBD", - "LOFI2" + "LOFI2", + "RING_SC" ] }, "native": { - "refused": "REPITCH repitch at 0x400d7b80 not free" + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" }, "result": "refused" }, @@ -3228,8 +3472,9 @@ "everb", "bbd", "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", - "quantizer", + "synth", "previewvol", "cc-map", "sidechain-compressor", @@ -3237,6 +3482,7 @@ "playmodes", "mute-modes", "recorder-loop-fix", + "poly8", "output-matrix", "quantize-live-rec-toggle", "apply-scene" @@ -3255,7 +3501,8 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "MINIVERB", @@ -3266,11 +3513,12 @@ "EVERB", "BBD", "LOFI2", + "RING_SC", "SIDECHAIN_COMPRESSOR" ] }, "native": { - "refused": "REPITCH repitch at 0x400d7a00 not free" + "refused": "SYNTH MACHINE fm_qzc at 0x400d7b80 not free" }, "result": "refused" }, @@ -3285,15 +3533,17 @@ "everb", "bbd", "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", - "synth", + "previewvol", "cc-map", "sidechain-compressor", "vector", "playmodes", "mute-modes", "recorder-loop-fix", + "poly8", "output-matrix", "quantize-live-rec-toggle", "apply-scene" @@ -3312,7 +3562,8 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "FILTER", @@ -3333,11 +3584,12 @@ "AIR CHORUS", "EVERB", "BBD", - "LOFI2" + "LOFI2", + "RING_SC" ] }, "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 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" + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" }, "result": "refused" }, @@ -3352,15 +3604,17 @@ "everb", "bbd", "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", - "synth", + "previewvol", "cc-map", "sidechain-compressor", "vector", "playmodes", "mute-modes", "recorder-loop-fix", + "poly8", "output-matrix", "quantize-live-rec-toggle", "apply-scene" @@ -3379,7 +3633,8 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "MINIVERB", @@ -3390,11 +3645,12 @@ "EVERB", "BBD", "LOFI2", + "RING_SC", "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 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" + "refused": "SCALE QUANTIZER qzc at 0x400d7b80 not free" }, "result": "refused" }, @@ -3409,15 +3665,17 @@ "everb", "bbd", "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", - "previewvol", + "cc-map", "sidechain-compressor", "vector", "playmodes", "mute-modes", "recorder-loop-fix", + "poly8", "output-matrix", "quantize-live-rec-toggle", "apply-scene" @@ -3436,7 +3694,8 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "FILTER", @@ -3457,11 +3716,12 @@ "AIR CHORUS", "EVERB", "BBD", - "LOFI2" + "LOFI2", + "RING_SC" ] }, "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 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" + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" }, "result": "refused" }, @@ -3476,15 +3736,17 @@ "everb", "bbd", "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", - "previewvol", + "cc-map", "sidechain-compressor", "vector", "playmodes", "mute-modes", "recorder-loop-fix", + "poly8", "output-matrix", "quantize-live-rec-toggle", "apply-scene" @@ -3503,7 +3765,8 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "MINIVERB", @@ -3514,11 +3777,12 @@ "EVERB", "BBD", "LOFI2", + "RING_SC", "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 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" + "refused": "SYNTH MACHINE fm_qzc at 0x400d7b80 not free" }, "result": "refused" }, @@ -3533,15 +3797,17 @@ "everb", "bbd", "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", "previewvol", - "cc-map", + "sidechain-compressor", "vector", "playmodes", "mute-modes", "recorder-loop-fix", + "poly8", "output-matrix", "quantize-live-rec-toggle", "apply-scene" @@ -3557,10 +3823,11 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "FILTER", @@ -3571,7 +3838,7 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", "MINIVERB", @@ -3581,11 +3848,12 @@ "AIR CHORUS", "EVERB", "BBD", - "LOFI2" + "LOFI2", + "RING_SC" ] }, "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 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" + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" }, "result": "refused" }, @@ -3600,15 +3868,17 @@ "everb", "bbd", "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", "previewvol", - "cc-map", + "sidechain-compressor", "vector", "playmodes", "mute-modes", "recorder-loop-fix", + "poly8", "output-matrix", "quantize-live-rec-toggle", "apply-scene" @@ -3624,10 +3894,11 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "MINIVERB", @@ -3637,11 +3908,13 @@ "AIR CHORUS", "EVERB", "BBD", - "LOFI2" + "LOFI2", + "RING_SC", + "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 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" + "refused": "SYNTH MACHINE fm_qzc at 0x400d7b80 not free" }, "result": "refused" }, @@ -3656,15 +3929,17 @@ "everb", "bbd", "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", "previewvol", "cc-map", - "sidechain-compressor", "vector", + "playmodes", "mute-modes", "recorder-loop-fix", + "poly8", "output-matrix", "quantize-live-rec-toggle", "apply-scene" @@ -3680,10 +3955,11 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "FILTER", @@ -3694,7 +3970,7 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", "DELAY", "MINIVERB", @@ -3704,11 +3980,12 @@ "AIR CHORUS", "EVERB", "BBD", - "LOFI2" + "LOFI2", + "RING_SC" ] }, "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 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" + "refused": "MUTE_MODES mm_menu at 0x400d7b80 not free" }, "result": "refused" }, @@ -3723,15 +4000,17 @@ "everb", "bbd", "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", "previewvol", "cc-map", - "sidechain-compressor", "vector", + "playmodes", "mute-modes", "recorder-loop-fix", + "poly8", "output-matrix", "quantize-live-rec-toggle", "apply-scene" @@ -3747,10 +4026,11 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "MINIVERB", @@ -3761,11 +4041,11 @@ "EVERB", "BBD", "LOFI2", - "SIDECHAIN_COMPRESSOR" + "RING_SC" ] }, "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 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" + "refused": "MUTE_MODES mm_menu at 0x400d7b80 not free" }, "result": "refused" }, @@ -3780,6 +4060,7 @@ "everb", "bbd", "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -3787,8 +4068,9 @@ "cc-map", "sidechain-compressor", "vector", - "playmodes", + "mute-modes", "recorder-loop-fix", + "poly8", "output-matrix", "quantize-live-rec-toggle", "apply-scene" @@ -3807,7 +4089,8 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "FILTER", @@ -3828,11 +4111,12 @@ "AIR CHORUS", "EVERB", "BBD", - "LOFI2" + "LOFI2", + "RING_SC" ] }, "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 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" + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" }, "result": "refused" }, @@ -3847,6 +4131,7 @@ "everb", "bbd", "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -3854,8 +4139,9 @@ "cc-map", "sidechain-compressor", "vector", - "playmodes", + "mute-modes", "recorder-loop-fix", + "poly8", "output-matrix", "quantize-live-rec-toggle", "apply-scene" @@ -3874,7 +4160,8 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "MINIVERB", @@ -3885,11 +4172,12 @@ "EVERB", "BBD", "LOFI2", + "RING_SC", "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 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" + "refused": "SYNTH MACHINE fm_qzc at 0x400d7b80 not free" }, "result": "refused" }, @@ -3904,6 +4192,7 @@ "everb", "bbd", "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -3912,7 +4201,8 @@ "sidechain-compressor", "vector", "playmodes", - "mute-modes", + "recorder-loop-fix", + "poly8", "output-matrix", "quantize-live-rec-toggle", "apply-scene" @@ -3931,7 +4221,8 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "FILTER", @@ -3952,11 +4243,12 @@ "AIR CHORUS", "EVERB", "BBD", - "LOFI2" + "LOFI2", + "RING_SC" ] }, "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 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" + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" }, "result": "refused" }, @@ -3971,6 +4263,7 @@ "everb", "bbd", "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -3979,7 +4272,8 @@ "sidechain-compressor", "vector", "playmodes", - "mute-modes", + "recorder-loop-fix", + "poly8", "output-matrix", "quantize-live-rec-toggle", "apply-scene" @@ -3998,7 +4292,8 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "MINIVERB", @@ -4009,11 +4304,12 @@ "EVERB", "BBD", "LOFI2", + "RING_SC", "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 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" + "refused": "SYNTH MACHINE fm_qzc at 0x400d7b80 not free" }, "result": "refused" }, @@ -4028,6 +4324,7 @@ "everb", "bbd", "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -4037,7 +4334,8 @@ "vector", "playmodes", "mute-modes", - "recorder-loop-fix", + "poly8", + "output-matrix", "quantize-live-rec-toggle", "apply-scene" ], @@ -4055,7 +4353,8 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "FILTER", @@ -4076,11 +4375,12 @@ "AIR CHORUS", "EVERB", "BBD", - "LOFI2" + "LOFI2", + "RING_SC" ] }, "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 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" + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" }, "result": "refused" }, @@ -4095,6 +4395,7 @@ "everb", "bbd", "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -4104,7 +4405,8 @@ "vector", "playmodes", "mute-modes", - "recorder-loop-fix", + "poly8", + "output-matrix", "quantize-live-rec-toggle", "apply-scene" ], @@ -4122,7 +4424,8 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "MINIVERB", @@ -4133,11 +4436,12 @@ "EVERB", "BBD", "LOFI2", + "RING_SC", "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 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" + "refused": "SYNTH MACHINE fm_qzc at 0x400d7b80 not free" }, "result": "refused" }, @@ -4152,6 +4456,7 @@ "everb", "bbd", "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -4163,6 +4468,7 @@ "mute-modes", "recorder-loop-fix", "output-matrix", + "quantize-live-rec-toggle", "apply-scene" ], "keepStockFx2": true, @@ -4179,7 +4485,8 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "FILTER", @@ -4200,7 +4507,8 @@ "AIR CHORUS", "EVERB", "BBD", - "LOFI2" + "LOFI2", + "RING_SC" ] }, "native": { @@ -4219,6 +4527,7 @@ "everb", "bbd", "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -4230,6 +4539,7 @@ "mute-modes", "recorder-loop-fix", "output-matrix", + "quantize-live-rec-toggle", "apply-scene" ], "keepStockFx2": false, @@ -4246,7 +4556,8 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "MINIVERB", @@ -4257,6 +4568,7 @@ "EVERB", "BBD", "LOFI2", + "RING_SC", "SIDECHAIN_COMPRESSOR" ] }, @@ -4276,6 +4588,7 @@ "everb", "bbd", "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -4286,8 +4599,9 @@ "playmodes", "mute-modes", "recorder-loop-fix", - "output-matrix", - "quantize-live-rec-toggle" + "poly8", + "quantize-live-rec-toggle", + "apply-scene" ], "keepStockFx2": true, "menu": { @@ -4303,7 +4617,8 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "FILTER", @@ -4324,11 +4639,12 @@ "AIR CHORUS", "EVERB", "BBD", - "LOFI2" + "LOFI2", + "RING_SC" ] }, "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 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" + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" }, "result": "refused" }, @@ -4343,6 +4659,7 @@ "everb", "bbd", "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -4353,8 +4670,9 @@ "playmodes", "mute-modes", "recorder-loop-fix", - "output-matrix", - "quantize-live-rec-toggle" + "poly8", + "quantize-live-rec-toggle", + "apply-scene" ], "keepStockFx2": false, "menu": { @@ -4370,7 +4688,8 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "MINIVERB", @@ -4381,11 +4700,12 @@ "EVERB", "BBD", "LOFI2", + "RING_SC", "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 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" + "refused": "SYNTH MACHINE fm_qzc at 0x400d7b80 not free" }, "result": "refused" }, @@ -4393,10 +4713,15 @@ "moduleIds": [ "miniverb", "tapeecho", + "euclid", "repitch", "tapehead", + "airwindows-chorus", + "everb", "bbd", "lofi2", + "ring-sc", + "usb-audio-out-tracks-main-cue", "quantizer", "synth", "previewvol", @@ -4406,6 +4731,8 @@ "playmodes", "mute-modes", "recorder-loop-fix", + "poly8", + "output-matrix", "apply-scene" ], "keepStockFx2": true, @@ -4421,7 +4748,9 @@ "COMB FILTER", "SIDECHAIN_COMPRESSOR", "LO-FI", - "TAPEHEAD" + "EUCLID", + "TAPEHEAD", + "RING_SC" ], "fx2": [ "FILTER", @@ -4437,13 +4766,17 @@ "DELAY", "MINIVERB", "TAPE ECHO", + "EUCLID", "TAPEHEAD", + "AIR CHORUS", + "EVERB", "BBD", - "LOFI2" + "LOFI2", + "RING_SC" ] }, "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 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" + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" }, "result": "refused" }, @@ -4451,10 +4784,15 @@ "moduleIds": [ "miniverb", "tapeecho", + "euclid", "repitch", "tapehead", + "airwindows-chorus", + "everb", "bbd", "lofi2", + "ring-sc", + "usb-audio-out-tracks-main-cue", "quantizer", "synth", "previewvol", @@ -4464,6 +4802,8 @@ "playmodes", "mute-modes", "recorder-loop-fix", + "poly8", + "output-matrix", "apply-scene" ], "keepStockFx2": false, @@ -4479,34 +4819,53 @@ "COMB FILTER", "SIDECHAIN_COMPRESSOR", "LO-FI", - "TAPEHEAD" + "EUCLID", + "TAPEHEAD", + "RING_SC" ], "fx2": [ "MINIVERB", "TAPE ECHO", + "EUCLID", "TAPEHEAD", + "AIR CHORUS", + "EVERB", "BBD", "LOFI2", + "RING_SC", "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 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" + "refused": "SYNTH MACHINE fm_qzc at 0x400d7b80 not free" }, "result": "refused" }, { "moduleIds": [ + "miniverb", "tapeecho", "euclid", + "repitch", + "tapehead", "airwindows-chorus", + "everb", "bbd", "lofi2", + "ring-sc", + "usb-audio-out-tracks-main-cue", "quantizer", + "synth", + "previewvol", + "cc-map", + "sidechain-compressor", "vector", + "playmodes", + "mute-modes", "recorder-loop-fix", + "poly8", "output-matrix", - "apply-scene" + "quantize-live-rec-toggle" ], "keepStockFx2": true, "menu": { @@ -4519,9 +4878,11 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", - "EUCLID" + "EUCLID", + "TAPEHEAD", + "RING_SC" ], "fx2": [ "FILTER", @@ -4532,33 +4893,50 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", + "MINIVERB", "TAPE ECHO", "EUCLID", + "TAPEHEAD", "AIR CHORUS", + "EVERB", "BBD", - "LOFI2" + "LOFI2", + "RING_SC" ] }, "native": { - "refused": "label formatters do not fit: TAPE ECHO slot 4 needs 54 B; the clone window ends at 0x400d7bbc and the overflow run at 0x400d2ce0 (next free 0x400d2ce0)" + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" }, "result": "refused" }, { "moduleIds": [ + "miniverb", "tapeecho", "euclid", + "repitch", + "tapehead", "airwindows-chorus", + "everb", "bbd", "lofi2", + "ring-sc", + "usb-audio-out-tracks-main-cue", "quantizer", + "synth", + "previewvol", + "cc-map", + "sidechain-compressor", "vector", + "playmodes", + "mute-modes", "recorder-loop-fix", + "poly8", "output-matrix", - "apply-scene" + "quantize-live-rec-toggle" ], "keepStockFx2": false, "menu": { @@ -4571,29 +4949,40 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", - "EUCLID" + "EUCLID", + "TAPEHEAD", + "RING_SC" ], "fx2": [ + "MINIVERB", "TAPE ECHO", "EUCLID", + "TAPEHEAD", "AIR CHORUS", + "EVERB", "BBD", - "LOFI2" + "LOFI2", + "RING_SC", + "SIDECHAIN_COMPRESSOR" ] }, "native": { - "refused": "label formatters do not fit: EUCLID slot 4 needs 352 B; the clone window ends at 0x400d7c3c and the overflow run at 0x400d2ce0 (next free 0x400d2ce0)" + "refused": "SYNTH MACHINE fm_qzc at 0x400d7b80 not free" }, "result": "refused" }, { "moduleIds": [ - "repitch", - "tapehead", + "tapeecho", + "bbd", + "synth", "vector", - "apply-scene" + "playmodes", + "mute-modes", + "recorder-loop-fix", + "output-matrix" ], "keepStockFx2": true, "menu": { @@ -4607,8 +4996,7 @@ "SPATIALIZER", "COMB FILTER", "COMPRESSOR", - "LO-FI", - "TAPEHEAD" + "LO-FI" ], "fx2": [ "FILTER", @@ -4623,23 +5011,25 @@ "LO-FI", "DELAY", "PLATE REV", - "DARK REV", - "TAPEHEAD" + "TAPE ECHO", + "BBD" ] }, "native": { - "bytes": 1127206, - "osSha256": "02f049b0c848ac8f2fb286cf59d79f0269f780c5a7670095843bccaa6d773cff", - "maskedOsSha256": "ebbea9e2e4b48997984a276a363b9ce50b6d025c591a24c25176a0b18ed70702" + "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": "masked" + "result": "refused" }, { "moduleIds": [ - "repitch", - "tapehead", + "tapeecho", + "bbd", + "synth", "vector", - "apply-scene" + "playmodes", + "mute-modes", + "recorder-loop-fix", + "output-matrix" ], "keepStockFx2": false, "menu": { @@ -4653,19 +5043,17 @@ "SPATIALIZER", "COMB FILTER", "COMPRESSOR", - "LO-FI", - "TAPEHEAD" + "LO-FI" ], "fx2": [ - "TAPEHEAD" + "TAPE ECHO", + "BBD" ] }, "native": { - "bytes": 1127206, - "osSha256": "f4451c6f5bf628a0dd40239e6b7d820abe929dbcb51be2d49bb4a8a293e52b0b", - "maskedOsSha256": "4795c0f3b96e28123ed4d3b7a8c186e565c23a0143de94e352de44af31949534" + "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": "masked" + "result": "refused" }, { "moduleIds": [ @@ -4678,8 +5066,8 @@ "everb", "bbd", "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", - "synth", "previewvol", "cc-map", "sidechain-compressor", @@ -4687,8 +5075,10 @@ "playmodes", "mute-modes", "recorder-loop-fix", + "poly8", "output-matrix", - "quantize-live-rec-toggle" + "quantize-live-rec-toggle", + "apply-scene" ], "keepStockFx2": true, "menu": { @@ -4704,7 +5094,8 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "FILTER", @@ -4725,11 +5116,12 @@ "AIR CHORUS", "EVERB", "BBD", - "LOFI2" + "LOFI2", + "RING_SC" ] }, "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": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" }, "result": "refused" }, @@ -4744,8 +5136,8 @@ "everb", "bbd", "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", - "synth", "previewvol", "cc-map", "sidechain-compressor", @@ -4753,8 +5145,10 @@ "playmodes", "mute-modes", "recorder-loop-fix", + "poly8", "output-matrix", - "quantize-live-rec-toggle" + "quantize-live-rec-toggle", + "apply-scene" ], "keepStockFx2": false, "menu": { @@ -4770,7 +5164,8 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "MINIVERB", @@ -4781,30 +5176,22 @@ "EVERB", "BBD", "LOFI2", + "RING_SC", "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": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7c00 not free" }, "result": "refused" }, { "moduleIds": [ "miniverb", - "tapeecho", - "euclid", - "tapehead", - "airwindows-chorus", - "bbd", - "lofi2", - "synth", - "previewvol", + "repitch", + "ring-sc", "sidechain-compressor", - "vector", - "playmodes", - "mute-modes", - "output-matrix" + "vector" ], "keepStockFx2": true, "menu": { @@ -4819,8 +5206,7 @@ "COMB FILTER", "SIDECHAIN_COMPRESSOR", "LO-FI", - "EUCLID", - "TAPEHEAD" + "RING_SC" ], "fx2": [ "FILTER", @@ -4834,36 +5220,25 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", + "DARK REV", "MINIVERB", - "TAPE ECHO", - "EUCLID", - "TAPEHEAD", - "AIR CHORUS", - "BBD", - "LOFI2" + "RING_SC" ] }, "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": 1126983, + "osSha256": "6a29157e261bfc021306d4907c219915c58bcba63b00c2dc8bbe7cec97a348bd", + "maskedOsSha256": "5f4e66830840797f0d2e078a2ccf58621be42a883c15bd4d58d31207e2a279bf" }, - "result": "refused" + "result": "masked" }, { "moduleIds": [ "miniverb", - "tapeecho", - "euclid", - "tapehead", - "airwindows-chorus", - "bbd", - "lofi2", - "synth", - "previewvol", + "repitch", + "ring-sc", "sidechain-compressor", - "vector", - "playmodes", - "mute-modes", - "output-matrix" + "vector" ], "keepStockFx2": false, "menu": { @@ -4878,43 +5253,39 @@ "COMB FILTER", "SIDECHAIN_COMPRESSOR", "LO-FI", - "EUCLID", - "TAPEHEAD" + "RING_SC" ], "fx2": [ "MINIVERB", - "TAPE ECHO", - "EUCLID", - "TAPEHEAD", - "AIR CHORUS", - "BBD", - "LOFI2", + "RING_SC", "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" + "bytes": 1126983, + "osSha256": "4d61841e07cfe6f1d12a1c9462edeae33eb5d45c1d61d4ba4fc32de60d12c30a", + "maskedOsSha256": "cd355ae6c432ef7a9952b798fe954fb078e3d38aa3420a580e4e91e2afe74aae" }, - "result": "refused" + "result": "masked" }, { "moduleIds": [ "miniverb", + "tapeecho", + "euclid", "repitch", + "tapehead", "airwindows-chorus", - "bbd", + "everb", "lofi2", - "usb-audio-out-tracks-main-cue", "quantizer", "synth", + "previewvol", "sidechain-compressor", "vector", - "playmodes", "mute-modes", - "recorder-loop-fix", "output-matrix", - "quantize-live-rec-toggle", - "apply-scene" + "quantize-live-rec-toggle" ], "keepStockFx2": true, "menu": { @@ -4928,7 +5299,9 @@ "SPATIALIZER", "COMB FILTER", "SIDECHAIN_COMPRESSOR", - "LO-FI" + "LO-FI", + "EUCLID", + "TAPEHEAD" ], "fx2": [ "FILTER", @@ -4943,8 +5316,11 @@ "LO-FI", "DELAY", "MINIVERB", + "TAPE ECHO", + "EUCLID", + "TAPEHEAD", "AIR CHORUS", - "BBD", + "EVERB", "LOFI2" ] }, @@ -4956,21 +5332,21 @@ { "moduleIds": [ "miniverb", + "tapeecho", + "euclid", "repitch", + "tapehead", "airwindows-chorus", - "bbd", + "everb", "lofi2", - "usb-audio-out-tracks-main-cue", "quantizer", "synth", + "previewvol", "sidechain-compressor", "vector", - "playmodes", "mute-modes", - "recorder-loop-fix", "output-matrix", - "quantize-live-rec-toggle", - "apply-scene" + "quantize-live-rec-toggle" ], "keepStockFx2": false, "menu": { @@ -4984,12 +5360,17 @@ "SPATIALIZER", "COMB FILTER", "SIDECHAIN_COMPRESSOR", - "LO-FI" + "LO-FI", + "EUCLID", + "TAPEHEAD" ], "fx2": [ "MINIVERB", + "TAPE ECHO", + "EUCLID", + "TAPEHEAD", "AIR CHORUS", - "BBD", + "EVERB", "LOFI2", "SIDECHAIN_COMPRESSOR" ] @@ -5001,26 +5382,13 @@ }, { "moduleIds": [ - "miniverb", - "tapeecho", "euclid", - "repitch", - "tapehead", "airwindows-chorus", - "everb", - "bbd", "usb-audio-out-tracks-main-cue", - "quantizer", "synth", "previewvol", - "cc-map", "vector", - "playmodes", - "mute-modes", - "recorder-loop-fix", - "output-matrix", - "quantize-live-rec-toggle", - "apply-scene" + "quantize-live-rec-toggle" ], "keepStockFx2": true, "menu": { @@ -5035,8 +5403,7 @@ "COMB FILTER", "COMPRESSOR", "LO-FI", - "EUCLID", - "TAPEHEAD" + "EUCLID" ], "fx2": [ "FILTER", @@ -5050,42 +5417,25 @@ "COMPRESSOR", "LO-FI", "DELAY", - "MINIVERB", - "TAPE ECHO", + "DARK REV", "EUCLID", - "TAPEHEAD", - "AIR CHORUS", - "EVERB", - "BBD" + "AIR CHORUS" ] }, "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 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" + "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" }, { "moduleIds": [ - "miniverb", - "tapeecho", "euclid", - "repitch", - "tapehead", "airwindows-chorus", - "everb", - "bbd", "usb-audio-out-tracks-main-cue", - "quantizer", "synth", "previewvol", - "cc-map", "vector", - "playmodes", - "mute-modes", - "recorder-loop-fix", - "output-matrix", - "quantize-live-rec-toggle", - "apply-scene" + "quantize-live-rec-toggle" ], "keepStockFx2": false, "menu": { @@ -5100,39 +5450,36 @@ "COMB FILTER", "COMPRESSOR", "LO-FI", - "EUCLID", - "TAPEHEAD" + "EUCLID" ], "fx2": [ - "MINIVERB", - "TAPE ECHO", "EUCLID", - "TAPEHEAD", - "AIR CHORUS", - "EVERB", - "BBD" + "AIR CHORUS" ] }, "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 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" + "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" }, { "moduleIds": [ - "miniverb", "tapeecho", + "euclid", + "repitch", "tapehead", "airwindows-chorus", "bbd", - "lofi2", - "quantizer", + "ring-sc", "synth", "previewvol", "cc-map", "vector", - "recorder-loop-fix", - "output-matrix" + "playmodes", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene" ], "keepStockFx2": true, "menu": { @@ -5147,7 +5494,9 @@ "COMB FILTER", "COMPRESSOR", "LO-FI", - "TAPEHEAD" + "EUCLID", + "TAPEHEAD", + "RING_SC" ], "fx2": [ "FILTER", @@ -5161,34 +5510,37 @@ "COMPRESSOR", "LO-FI", "DELAY", - "MINIVERB", "TAPE ECHO", + "EUCLID", "TAPEHEAD", "AIR CHORUS", "BBD", - "LOFI2" + "RING_SC" ] }, "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 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" + "refused": "SYNTH MACHINE table SEQUENCER getters at 0x400d7c00 not free" }, "result": "refused" }, { "moduleIds": [ - "miniverb", "tapeecho", + "euclid", + "repitch", "tapehead", "airwindows-chorus", "bbd", - "lofi2", - "quantizer", + "ring-sc", "synth", "previewvol", "cc-map", "vector", - "recorder-loop-fix", - "output-matrix" + "playmodes", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene" ], "keepStockFx2": false, "menu": { @@ -5203,30 +5555,41 @@ "COMB FILTER", "COMPRESSOR", "LO-FI", - "TAPEHEAD" + "EUCLID", + "TAPEHEAD", + "RING_SC" ], "fx2": [ - "MINIVERB", "TAPE ECHO", + "EUCLID", "TAPEHEAD", "AIR CHORUS", "BBD", - "LOFI2" + "RING_SC" ] }, "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 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" + "refused": "SYNTH MACHINE table SEQUENCER setters at 0x400d7c80 not free" }, "result": "refused" }, { "moduleIds": [ + "miniverb", + "euclid", + "tapehead", + "airwindows-chorus", "everb", "bbd", - "previewvol", + "usb-audio-out-tracks-main-cue", + "cc-map", + "sidechain-compressor", "vector", + "playmodes", "recorder-loop-fix", - "quantize-live-rec-toggle" + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene" ], "keepStockFx2": true, "menu": { @@ -5239,8 +5602,10 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", - "LO-FI" + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID", + "TAPEHEAD" ], "fx2": [ "FILTER", @@ -5251,29 +5616,39 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", + "MINIVERB", + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", "EVERB", "BBD" ] }, "native": { - "bytes": 1126782, - "osSha256": "2d099e104b7744330f998b661769eb52d54ca77250f0a8e2ad27c80ea8e1737f", - "maskedOsSha256": "449138c44c1b2895b69711b9f4eb1efa854460ad86f65b708af63a003444dfb1", - "platformArena": true + "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 0x400d2c84)" }, - "result": "masked" + "result": "refused" }, { "moduleIds": [ + "miniverb", + "euclid", + "tapehead", + "airwindows-chorus", "everb", "bbd", - "previewvol", + "usb-audio-out-tracks-main-cue", + "cc-map", + "sidechain-compressor", "vector", + "playmodes", "recorder-loop-fix", - "quantize-live-rec-toggle" + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene" ], "keepStockFx2": false, "menu": { @@ -5286,38 +5661,47 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", - "LO-FI" + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID", + "TAPEHEAD" ], "fx2": [ + "MINIVERB", + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", "EVERB", - "BBD" + "BBD", + "SIDECHAIN_COMPRESSOR" ] }, "native": { - "bytes": 1126782, - "osSha256": "c8cb976bc9bc3e244d6ff85b29f604b784cce89faf5c55138b8541b42f3f6907", - "maskedOsSha256": "ef0ba0f0ffc7f8574d9a959f8d6a29705e9566a0113d6138abdb11bb626d09d9", - "platformArena": true + "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 0x400d2c84)" }, - "result": "masked" + "result": "refused" }, { "moduleIds": [ - "tapeecho", + "miniverb", "euclid", "repitch", "tapehead", "airwindows-chorus", + "everb", "bbd", "lofi2", - "usb-audio-out-tracks-main-cue", - "synth", - "previewvol", + "quantizer", "cc-map", "sidechain-compressor", "vector", - "recorder-loop-fix" + "playmodes", + "mute-modes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene" ], "keepStockFx2": true, "menu": { @@ -5347,35 +5731,41 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "TAPE ECHO", + "MINIVERB", "EUCLID", "TAPEHEAD", "AIR CHORUS", + "EVERB", "BBD", "LOFI2" ] }, "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": "MUTE_MODES mm_menu at 0x400d7b00 not free" }, "result": "refused" }, { "moduleIds": [ - "tapeecho", + "miniverb", "euclid", "repitch", "tapehead", "airwindows-chorus", + "everb", "bbd", "lofi2", - "usb-audio-out-tracks-main-cue", - "synth", - "previewvol", + "quantizer", "cc-map", "sidechain-compressor", "vector", - "recorder-loop-fix" + "playmodes", + "mute-modes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene" ], "keepStockFx2": false, "menu": { @@ -5394,17 +5784,18 @@ "TAPEHEAD" ], "fx2": [ - "TAPE ECHO", + "MINIVERB", "EUCLID", "TAPEHEAD", "AIR CHORUS", + "EVERB", "BBD", "LOFI2", "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": "MUTE_MODES mm_menu at 0x400d7b00 not free" }, "result": "refused" }, @@ -5414,18 +5805,20 @@ "tapeecho", "euclid", "repitch", + "tapehead", "airwindows-chorus", + "everb", "bbd", - "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", - "previewvol", "cc-map", "sidechain-compressor", "vector", + "playmodes", "recorder-loop-fix", - "quantize-live-rec-toggle", + "output-matrix", "apply-scene" ], "keepStockFx2": true, @@ -5441,7 +5834,9 @@ "COMB FILTER", "SIDECHAIN_COMPRESSOR", "LO-FI", - "EUCLID" + "EUCLID", + "TAPEHEAD", + "RING_SC" ], "fx2": [ "FILTER", @@ -5458,9 +5853,11 @@ "MINIVERB", "TAPE ECHO", "EUCLID", + "TAPEHEAD", "AIR CHORUS", + "EVERB", "BBD", - "LOFI2" + "RING_SC" ] }, "native": { @@ -5474,18 +5871,20 @@ "tapeecho", "euclid", "repitch", + "tapehead", "airwindows-chorus", + "everb", "bbd", - "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", - "previewvol", "cc-map", "sidechain-compressor", "vector", + "playmodes", "recorder-loop-fix", - "quantize-live-rec-toggle", + "output-matrix", "apply-scene" ], "keepStockFx2": false, @@ -5501,15 +5900,19 @@ "COMB FILTER", "SIDECHAIN_COMPRESSOR", "LO-FI", - "EUCLID" + "EUCLID", + "TAPEHEAD", + "RING_SC" ], "fx2": [ "MINIVERB", "TAPE ECHO", "EUCLID", + "TAPEHEAD", "AIR CHORUS", + "EVERB", "BBD", - "LOFI2", + "RING_SC", "SIDECHAIN_COMPRESSOR" ] }, @@ -5522,15 +5925,12 @@ "moduleIds": [ "miniverb", "tapehead", - "everb", - "bbd", + "airwindows-chorus", "quantizer", "previewvol", - "sidechain-compressor", "vector", - "mute-modes", - "recorder-loop-fix", - "quantize-live-rec-toggle", + "poly8", + "output-matrix", "apply-scene" ], "keepStockFx2": true, @@ -5544,7 +5944,7 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", "TAPEHEAD" ], @@ -5557,33 +5957,31 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", "DELAY", "MINIVERB", "TAPEHEAD", - "EVERB", - "BBD" + "AIR CHORUS" ] }, "native": { - "refused": "MUTE_MODES mm_menu at 0x400d7b00 not free" + "bytes": 1144688, + "osSha256": "4dc2f0e010fd0534b85c511c5aa5120db0a0b82cf79904f991e99ff49663985d", + "maskedOsSha256": "30584a13e6d3e2bd652fc69abdd176ee9ce9f915c96a84cedb28c6999b1f2531" }, - "result": "refused" + "result": "masked" }, { "moduleIds": [ "miniverb", "tapehead", - "everb", - "bbd", + "airwindows-chorus", "quantizer", "previewvol", - "sidechain-compressor", "vector", - "mute-modes", - "recorder-loop-fix", - "quantize-live-rec-toggle", + "poly8", + "output-matrix", "apply-scene" ], "keepStockFx2": false, @@ -5597,39 +5995,34 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", "TAPEHEAD" ], "fx2": [ "MINIVERB", "TAPEHEAD", - "EVERB", - "BBD", - "SIDECHAIN_COMPRESSOR" + "AIR CHORUS" ] }, "native": { - "refused": "QUANTIZE_LIVE_REC_TOGGLE qlr at 0x400d7c00 not free" + "bytes": 1144688, + "osSha256": "4148d65fc4da1b07674cbc84959f95f9dfc253fbdbde3170dbe33ac323f187df", + "maskedOsSha256": "eb55b90b82b816aa06716338934f8f3cb0e91116fbf10ee9d6457077267c556b" }, - "result": "refused" + "result": "masked" }, { "moduleIds": [ "tapeecho", - "euclid", - "repitch", - "airwindows-chorus", "bbd", + "usb-audio-out-tracks-main-cue", "synth", "previewvol", - "cc-map", "vector", - "playmodes", "mute-modes", "recorder-loop-fix", - "output-matrix", - "apply-scene" + "poly8" ], "keepStockFx2": true, "menu": { @@ -5643,8 +6036,7 @@ "SPATIALIZER", "COMB FILTER", "COMPRESSOR", - "LO-FI", - "EUCLID" + "LO-FI" ], "fx2": [ "FILTER", @@ -5658,33 +6050,30 @@ "COMPRESSOR", "LO-FI", "DELAY", + "DARK REV", "TAPE ECHO", - "EUCLID", - "AIR CHORUS", "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": 1257912, + "osSha256": "2587a3bf305e76d744569da10eeefc607806a291ba53227578ed39bcff785a7c", + "maskedOsSha256": "5f3820780048a1efe24cc1de7fb07a8e9077e5ab26e6b096e13661e130ba3a48", + "platformArena": true }, - "result": "refused" + "result": "masked" }, { "moduleIds": [ "tapeecho", - "euclid", - "repitch", - "airwindows-chorus", "bbd", + "usb-audio-out-tracks-main-cue", "synth", "previewvol", - "cc-map", "vector", - "playmodes", "mute-modes", "recorder-loop-fix", - "output-matrix", - "apply-scene" + "poly8" ], "keepStockFx2": false, "menu": { @@ -5698,31 +6087,29 @@ "SPATIALIZER", "COMB FILTER", "COMPRESSOR", - "LO-FI", - "EUCLID" + "LO-FI" ], "fx2": [ "TAPE ECHO", - "EUCLID", - "AIR CHORUS", "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": 1257912, + "osSha256": "9f012db5891de295f4d39f8676e34c3efaca3f3de35e108fec6952b92cbc723d", + "maskedOsSha256": "4a0510428b377562d2035d786fa8e8c97aa106f43c1247d5e547feaecab7aa8d", + "platformArena": true }, - "result": "refused" + "result": "masked" }, { "moduleIds": [ "miniverb", - "tapeecho", - "euclid", "repitch", "tapehead", "airwindows-chorus", - "everb", - "lofi2", + "bbd", + "usb-audio-out-tracks-main-cue", "quantizer", "synth", "previewvol", @@ -5731,7 +6118,7 @@ "vector", "playmodes", "mute-modes", - "recorder-loop-fix", + "poly8", "output-matrix", "quantize-live-rec-toggle" ], @@ -5748,7 +6135,6 @@ "COMB FILTER", "SIDECHAIN_COMPRESSOR", "LO-FI", - "EUCLID", "TAPEHEAD" ], "fx2": [ @@ -5764,29 +6150,24 @@ "LO-FI", "DELAY", "MINIVERB", - "TAPE ECHO", - "EUCLID", "TAPEHEAD", "AIR CHORUS", - "EVERB", - "LOFI2" + "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 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" + "refused": "SYNTH MACHINE table SEQUENCER setters at 0x400d7c80 not free" }, "result": "refused" }, { "moduleIds": [ "miniverb", - "tapeecho", - "euclid", "repitch", "tapehead", "airwindows-chorus", - "everb", - "lofi2", + "bbd", + "usb-audio-out-tracks-main-cue", "quantizer", "synth", "previewvol", @@ -5795,7 +6176,7 @@ "vector", "playmodes", "mute-modes", - "recorder-loop-fix", + "poly8", "output-matrix", "quantize-live-rec-toggle" ], @@ -5812,36 +6193,38 @@ "COMB FILTER", "SIDECHAIN_COMPRESSOR", "LO-FI", - "EUCLID", "TAPEHEAD" ], "fx2": [ "MINIVERB", - "TAPE ECHO", - "EUCLID", "TAPEHEAD", "AIR CHORUS", - "EVERB", - "LOFI2", + "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 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" + "refused": "SYNTH MACHINE table SEQUENCER setters at 0x400d7c80 not free" }, "result": "refused" }, { "moduleIds": [ - "everb", - "lofi2", + "miniverb", + "tapeecho", + "repitch", + "tapehead", + "bbd", + "ring-sc", + "usb-audio-out-tracks-main-cue", "quantizer", - "cc-map", + "synth", + "previewvol", "sidechain-compressor", "vector", "playmodes", "recorder-loop-fix", - "apply-scene" + "poly8" ], "keepStockFx2": true, "menu": { @@ -5855,7 +6238,9 @@ "SPATIALIZER", "COMB FILTER", "SIDECHAIN_COMPRESSOR", - "LO-FI" + "LO-FI", + "TAPEHEAD", + "RING_SC" ], "fx2": [ "FILTER", @@ -5869,26 +6254,35 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "EVERB", - "LOFI2" + "MINIVERB", + "TAPE ECHO", + "TAPEHEAD", + "BBD", + "RING_SC" ] }, "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)" + "refused": "hold cave (copy): 108 B fits neither the clone window (from 0x400d7b80) nor the overflow run" }, "result": "refused" }, { "moduleIds": [ - "everb", - "lofi2", + "miniverb", + "tapeecho", + "repitch", + "tapehead", + "bbd", + "ring-sc", + "usb-audio-out-tracks-main-cue", "quantizer", - "cc-map", + "synth", + "previewvol", "sidechain-compressor", "vector", "playmodes", "recorder-loop-fix", - "apply-scene" + "poly8" ], "keepStockFx2": false, "menu": { @@ -5902,24 +6296,33 @@ "SPATIALIZER", "COMB FILTER", "SIDECHAIN_COMPRESSOR", - "LO-FI" + "LO-FI", + "TAPEHEAD", + "RING_SC" ], "fx2": [ - "EVERB", - "LOFI2", + "MINIVERB", + "TAPE ECHO", + "TAPEHEAD", + "BBD", + "RING_SC", "SIDECHAIN_COMPRESSOR" ] }, "native": { - "refused": "label formatters do not fit: LOFI2 slot 8 needs 164 B; the clone window ends at 0x400d7c3c and the overflow run at 0x400d2ce0 (next free 0x400d2ce0)" + "refused": "hold cave (crossfade, +0x48): 110 B fits neither the clone window (from 0x400d7c00) nor the overflow run" }, "result": "refused" }, { "moduleIds": [ - "sidechain-compressor", + "miniverb", + "repitch", + "synth", + "previewvol", "vector", - "recorder-loop-fix" + "output-matrix", + "apply-scene" ], "keepStockFx2": true, "menu": { @@ -5932,7 +6335,7 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI" ], "fx2": [ @@ -5944,26 +6347,27 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", - "DARK REV" + "DARK REV", + "MINIVERB" ] }, "native": { - "bytes": 1126741, - "osSha256": "290ac6d599ce563d55469b8b669c90c451ddd728a124a0e546f848c7cb560425", - "maskedOsSha256": "b2eca70d37972a5e663a1ce6e14ec0c447b7d83750ae209a9156693a80468994", - "platformArena": true + "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": "masked" + "result": "refused" }, { "moduleIds": [ - "sidechain-compressor", + "miniverb", + "repitch", + "synth", + "previewvol", "vector", - "recorder-loop-fix" + "output-matrix", + "apply-scene" ], "keepStockFx2": false, "menu": { @@ -5976,20 +6380,124 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI" ], "fx2": [ - "SIDECHAIN_COMPRESSOR" + "MINIVERB" ] }, "native": { - "bytes": 1126741, - "osSha256": "e9dbda84d06f4722740c48dc28bbfc4411fca91bef9b7eb9bebecab6ff79a67c", - "maskedOsSha256": "1322c8c1d62672cb8aea6e2450ebae642bdcfd48a97b79407c06247b06eff95b", - "platformArena": true + "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": "masked" + "result": "refused" + }, + { + "moduleIds": [ + "tapeecho", + "repitch", + "tapehead", + "airwindows-chorus", + "everb", + "lofi2", + "ring-sc", + "quantizer", + "vector", + "mute-modes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene" + ], + "keepStockFx2": true, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI", + "TAPEHEAD", + "RING_SC" + ], + "fx2": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI", + "DELAY", + "TAPE ECHO", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "LOFI2", + "RING_SC" + ] + }, + "native": { + "refused": "hold cave (copy): 108 B fits neither the clone window (from 0x400d7b80) nor the overflow run" + }, + "result": "refused" + }, + { + "moduleIds": [ + "tapeecho", + "repitch", + "tapehead", + "airwindows-chorus", + "everb", + "lofi2", + "ring-sc", + "quantizer", + "vector", + "mute-modes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene" + ], + "keepStockFx2": false, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI", + "TAPEHEAD", + "RING_SC" + ], + "fx2": [ + "TAPE ECHO", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "LOFI2", + "RING_SC" + ] + }, + "native": { + "refused": "hold cave (crossfade, +0x48): 110 B fits neither the clone window (from 0x400d7c00) nor the overflow run" + }, + "result": "refused" }, { "moduleIds": [ @@ -5998,18 +6506,21 @@ "euclid", "repitch", "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", - "previewvol", - "sidechain-compressor", + "cc-map", "vector", - "playmodes", "mute-modes", "recorder-loop-fix", + "poly8", "output-matrix", - "quantize-live-rec-toggle", - "apply-scene" + "quantize-live-rec-toggle" ], "keepStockFx2": true, "menu": { @@ -6022,10 +6533,11 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "FILTER", @@ -6036,17 +6548,22 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", "DELAY", "MINIVERB", "TAPE ECHO", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC" ] }, "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 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" + "refused": "MUTE_MODES mm_menu at 0x400d7b00 not free" }, "result": "refused" }, @@ -6057,18 +6574,21 @@ "euclid", "repitch", "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", - "previewvol", - "sidechain-compressor", + "cc-map", "vector", - "playmodes", "mute-modes", "recorder-loop-fix", + "poly8", "output-matrix", - "quantize-live-rec-toggle", - "apply-scene" + "quantize-live-rec-toggle" ], "keepStockFx2": false, "menu": { @@ -6081,33 +6601,128 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "MINIVERB", "TAPE ECHO", "EUCLID", "TAPEHEAD", - "SIDECHAIN_COMPRESSOR" + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC" ] }, "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 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" + "refused": "MUTE_MODES mm_menu at 0x400d7b00 not free" }, "result": "refused" }, { "moduleIds": [ - "euclid", + "miniverb", + "tapeecho", "airwindows-chorus", + "bbd", + "synth", + "vector", + "output-matrix" + ], + "keepStockFx2": true, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI" + ], + "fx2": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI", + "DELAY", + "MINIVERB", + "TAPE ECHO", + "AIR CHORUS", + "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" + }, + "result": "refused" + }, + { + "moduleIds": [ + "miniverb", + "tapeecho", + "airwindows-chorus", + "bbd", + "synth", + "vector", + "output-matrix" + ], + "keepStockFx2": false, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI" + ], + "fx2": [ + "MINIVERB", + "TAPE ECHO", + "AIR CHORUS", + "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" + }, + "result": "refused" + }, + { + "moduleIds": [ + "miniverb", + "tapeecho", + "repitch", + "tapehead", + "airwindows-chorus", + "everb", "lofi2", + "quantizer", "synth", + "previewvol", "vector", + "recorder-loop-fix", "output-matrix", - "quantize-live-rec-toggle" + "apply-scene" ], "keepStockFx2": true, "menu": { @@ -6122,7 +6737,7 @@ "COMB FILTER", "COMPRESSOR", "LO-FI", - "EUCLID" + "TAPEHEAD" ], "fx2": [ "FILTER", @@ -6136,25 +6751,35 @@ "COMPRESSOR", "LO-FI", "DELAY", - "EUCLID", + "MINIVERB", + "TAPE ECHO", + "TAPEHEAD", "AIR CHORUS", + "EVERB", "LOFI2" ] }, "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" }, { "moduleIds": [ - "euclid", + "miniverb", + "tapeecho", + "repitch", + "tapehead", "airwindows-chorus", + "everb", "lofi2", + "quantizer", "synth", + "previewvol", "vector", + "recorder-loop-fix", "output-matrix", - "quantize-live-rec-toggle" + "apply-scene" ], "keepStockFx2": false, "menu": { @@ -6169,31 +6794,27 @@ "COMB FILTER", "COMPRESSOR", "LO-FI", - "EUCLID" + "TAPEHEAD" ], "fx2": [ - "EUCLID", + "MINIVERB", + "TAPE ECHO", + "TAPEHEAD", "AIR CHORUS", + "EVERB", "LOFI2" ] }, "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" }, { "moduleIds": [ - "miniverb", - "repitch", "everb", - "quantizer", - "synth", - "sidechain-compressor", "vector", - "recorder-loop-fix", - "output-matrix", - "apply-scene" + "mute-modes" ], "keepStockFx2": true, "menu": { @@ -6206,7 +6827,7 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI" ], "fx2": [ @@ -6218,30 +6839,25 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", "DELAY", - "MINIVERB", + "PLATE REV", "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 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" + "bytes": 1126983, + "osSha256": "f73bb9853d914d03e28b4961a371163f571b44bb00a70fbc9958e325bf8eda1b", + "maskedOsSha256": "1c25a0016e86826c018244f00c3f19267807b33df0d3b35303536cdb1cf95595" }, - "result": "refused" + "result": "masked" }, { "moduleIds": [ - "miniverb", - "repitch", "everb", - "quantizer", - "synth", - "sidechain-compressor", "vector", - "recorder-loop-fix", - "output-matrix", - "apply-scene" + "mute-modes" ], "keepStockFx2": false, "menu": { @@ -6254,40 +6870,30 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI" ], "fx2": [ - "MINIVERB", - "EVERB", - "SIDECHAIN_COMPRESSOR" + "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 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" + "bytes": 1126983, + "osSha256": "0797c853d42300940b0734e7ac2e112777c11cd151f825d4628df168e3300ce0", + "maskedOsSha256": "bd084a4904541154659f47eede8655ef2142c93b8f2a18f3a7165091718bf66a" }, - "result": "refused" + "result": "masked" }, { "moduleIds": [ - "miniverb", - "tapeecho", "euclid", - "repitch", - "tapehead", - "bbd", + "airwindows-chorus", "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", - "quantizer", - "previewvol", - "cc-map", - "sidechain-compressor", "vector", "playmodes", - "mute-modes", - "recorder-loop-fix", - "output-matrix", - "quantize-live-rec-toggle" + "recorder-loop-fix" ], "keepStockFx2": true, "menu": { @@ -6300,10 +6906,10 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "RING_SC" ], "fx2": [ "FILTER", @@ -6314,42 +6920,30 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", "DELAY", - "MINIVERB", - "TAPE ECHO", "EUCLID", - "TAPEHEAD", - "BBD", - "LOFI2" + "AIR CHORUS", + "LOFI2", + "RING_SC" ] }, "native": { - "refused": "MUTE_MODES mm_softmute at 0x400d7c00 not free" + "refused": "payload A: RING_SC overruns the region (2895 > 2724 words)" }, "result": "refused" }, { "moduleIds": [ - "miniverb", - "tapeecho", "euclid", - "repitch", - "tapehead", - "bbd", + "airwindows-chorus", "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", - "quantizer", - "previewvol", - "cc-map", - "sidechain-compressor", "vector", "playmodes", - "mute-modes", - "recorder-loop-fix", - "output-matrix", - "quantize-live-rec-toggle" + "recorder-loop-fix" ], "keepStockFx2": false, "menu": { @@ -6362,23 +6956,20 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "RING_SC" ], "fx2": [ - "MINIVERB", - "TAPE ECHO", "EUCLID", - "TAPEHEAD", - "BBD", + "AIR CHORUS", "LOFI2", - "SIDECHAIN_COMPRESSOR" + "RING_SC" ] }, "native": { - "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7a80 not free" + "refused": "payload A: RING_SC overruns the region (2895 > 2724 words)" }, "result": "refused" }, @@ -6386,18 +6977,18 @@ "moduleIds": [ "miniverb", "tapeecho", - "euclid", - "repitch", "tapehead", - "airwindows-chorus", "everb", "bbd", "lofi2", - "usb-audio-out-tracks-main-cue", - "quantizer", - "synth", + "ring-sc", + "cc-map", + "sidechain-compressor", "vector", + "playmodes", "recorder-loop-fix", + "poly8", + "output-matrix", "quantize-live-rec-toggle", "apply-scene" ], @@ -6412,10 +7003,10 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", - "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "FILTER", @@ -6426,21 +7017,20 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", "MINIVERB", "TAPE ECHO", - "EUCLID", "TAPEHEAD", - "AIR CHORUS", "EVERB", "BBD", - "LOFI2" + "LOFI2", + "RING_SC" ] }, "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 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" + "refused": "label formatters do not fit: BBD slot 6 needs 54 B; the clone window ends at 0x400d7bbc and the overflow run at 0x400d2ce0 (next free 0x400d2cdc)" }, "result": "refused" }, @@ -6448,18 +7038,18 @@ "moduleIds": [ "miniverb", "tapeecho", - "euclid", - "repitch", "tapehead", - "airwindows-chorus", "everb", "bbd", "lofi2", - "usb-audio-out-tracks-main-cue", - "quantizer", - "synth", + "ring-sc", + "cc-map", + "sidechain-compressor", "vector", + "playmodes", "recorder-loop-fix", + "poly8", + "output-matrix", "quantize-live-rec-toggle", "apply-scene" ], @@ -6474,45 +7064,37 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", - "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "MINIVERB", "TAPE ECHO", - "EUCLID", "TAPEHEAD", - "AIR CHORUS", "EVERB", "BBD", - "LOFI2" + "LOFI2", + "RING_SC", + "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 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" + "refused": "label formatters do not fit: BBD slot 6 needs 54 B; the clone window ends at 0x400d7bbc and the overflow run at 0x400d2ce0 (next free 0x400d2cdc)" }, "result": "refused" }, { "moduleIds": [ - "miniverb", "euclid", - "tapehead", "bbd", "lofi2", - "quantizer", - "synth", "cc-map", "sidechain-compressor", "vector", - "playmodes", - "mute-modes", "recorder-loop-fix", - "output-matrix", - "quantize-live-rec-toggle", - "apply-scene" + "output-matrix" ], "keepStockFx2": true, "menu": { @@ -6527,8 +7109,7 @@ "COMB FILTER", "SIDECHAIN_COMPRESSOR", "LO-FI", - "EUCLID", - "TAPEHEAD" + "EUCLID" ], "fx2": [ "FILTER", @@ -6542,36 +7123,26 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "MINIVERB", "EUCLID", - "TAPEHEAD", "BBD", "LOFI2" ] }, "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 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" + "refused": "FX1 chooser list of 12 rows needs 52 B; the clone window ends at 0x400d7bbc and the overflow run at 0x400d2ce0" }, "result": "refused" }, { "moduleIds": [ - "miniverb", "euclid", - "tapehead", "bbd", "lofi2", - "quantizer", - "synth", "cc-map", "sidechain-compressor", "vector", - "playmodes", - "mute-modes", "recorder-loop-fix", - "output-matrix", - "quantize-live-rec-toggle", - "apply-scene" + "output-matrix" ], "keepStockFx2": false, "menu": { @@ -6586,36 +7157,41 @@ "COMB FILTER", "SIDECHAIN_COMPRESSOR", "LO-FI", - "EUCLID", - "TAPEHEAD" + "EUCLID" ], "fx2": [ - "MINIVERB", "EUCLID", - "TAPEHEAD", "BBD", "LOFI2", "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 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" + "refused": "payload A: LOFI2 overruns the region (2861 > 2724 words)" }, "result": "refused" }, { "moduleIds": [ "miniverb", + "tapeecho", + "euclid", "repitch", "tapehead", + "everb", "lofi2", + "ring-sc", + "usb-audio-out-tracks-main-cue", "quantizer", "synth", + "previewvol", "cc-map", + "sidechain-compressor", "vector", - "playmodes", "mute-modes", + "poly8", "output-matrix", + "quantize-live-rec-toggle", "apply-scene" ], "keepStockFx2": true, @@ -6629,9 +7205,11 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", - "TAPEHEAD" + "EUCLID", + "TAPEHEAD", + "RING_SC" ], "fx2": [ "FILTER", @@ -6642,32 +7220,44 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", "MINIVERB", + "TAPE ECHO", + "EUCLID", "TAPEHEAD", - "LOFI2" + "EVERB", + "LOFI2", + "RING_SC" ] }, "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 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" + "refused": "MUTE_MODES mm_menu at 0x400d7b80 not free" }, "result": "refused" }, { "moduleIds": [ "miniverb", + "tapeecho", + "euclid", "repitch", "tapehead", + "everb", "lofi2", + "ring-sc", + "usb-audio-out-tracks-main-cue", "quantizer", "synth", + "previewvol", "cc-map", + "sidechain-compressor", "vector", - "playmodes", "mute-modes", + "poly8", "output-matrix", + "quantize-live-rec-toggle", "apply-scene" ], "keepStockFx2": false, @@ -6681,42 +7271,39 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", - "TAPEHEAD" + "EUCLID", + "TAPEHEAD", + "RING_SC" ], "fx2": [ "MINIVERB", + "TAPE ECHO", + "EUCLID", "TAPEHEAD", - "LOFI2" + "EVERB", + "LOFI2", + "RING_SC", + "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 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" + "refused": "MUTE_MODES mm_menu at 0x400d7b80 not free" }, "result": "refused" }, { "moduleIds": [ - "miniverb", - "tapeecho", "euclid", "repitch", "tapehead", - "airwindows-chorus", - "everb", - "bbd", - "lofi2", - "usb-audio-out-tracks-main-cue", - "quantizer", + "ring-sc", "previewvol", - "sidechain-compressor", + "cc-map", "vector", - "playmodes", "mute-modes", - "recorder-loop-fix", "output-matrix", - "quantize-live-rec-toggle", "apply-scene" ], "keepStockFx2": true, @@ -6730,10 +7317,11 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "FILTER", @@ -6744,45 +7332,31 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", "DELAY", - "MINIVERB", - "TAPE ECHO", + "PLATE REV", "EUCLID", "TAPEHEAD", - "AIR CHORUS", - "EVERB", - "BBD", - "LOFI2" + "RING_SC" ] }, "native": { - "refused": "REPITCH repitch at 0x400d7b80 not free" + "refused": "MUTE_MODES table PERSONALIZE getters at 0x400d7b80 not free" }, "result": "refused" }, { "moduleIds": [ - "miniverb", - "tapeecho", "euclid", "repitch", "tapehead", - "airwindows-chorus", - "everb", - "bbd", - "lofi2", - "usb-audio-out-tracks-main-cue", - "quantizer", + "ring-sc", "previewvol", - "sidechain-compressor", + "cc-map", "vector", - "playmodes", "mute-modes", - "recorder-loop-fix", "output-matrix", - "quantize-live-rec-toggle", "apply-scene" ], "keepStockFx2": false, @@ -6796,25 +7370,20 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ - "MINIVERB", - "TAPE ECHO", "EUCLID", "TAPEHEAD", - "AIR CHORUS", - "EVERB", - "BBD", - "LOFI2", - "SIDECHAIN_COMPRESSOR" + "RING_SC" ] }, "native": { - "refused": "REPITCH repitch at 0x400d7a00 not free" + "refused": "MUTE_MODES table PERSONALIZE setters at 0x400d7c00 not free" }, "result": "refused" } From 72faeba1ebb4518349afc28438789e1d71b7e441 Mon Sep 17 00:00:00 2001 From: repeat98 Date: Sun, 1 Nov 2026 19:42:51 +0100 Subject: [PATCH 10/33] VECTOR 0.2.6-experimental: SRC SETUP page 2 on VECTOR's own row, wherever it sits (#1119) st_setup_page no longer tests for SRC SETUP's cursor on row 5: its callers already ask on VECTOR's row (hooks.s alone, the base over USB, POLY8's shared hooks from POLY8 0.3.3). The USB adapter dropped the same test since 0.2.5, so it no longer rewrites it; the USB package's unit source is byte-identical and 0.2.5's package stays published (lagsBehind). Co-Authored-By: Claude Opus 5.5 --- sdk/catalog.json | 2 +- .../module-adapters/machine-ports.json | 2 +- .../module-adapters/machine-recipes.json | 14 +++++------ .../module-adapters/vector_runtime.py | 16 ++++--------- sdk/octabam/modules/vector/TESTING.md | 15 ++++++++++++ sdk/octabam/modules/vector/control.s | 3 --- sdk/octabam/modules/vector/native.c | 4 +++- .../modules/vector/octamod.module.json | 24 +++++++++---------- src/catalog/module-documents.json | 24 +++++++++---------- src/community/module-changelogs/vector.json | 9 +++++++ .../assets/octatrack-module-packages.json | 4 +++- 11 files changed, 67 insertions(+), 50 deletions(-) diff --git a/sdk/catalog.json b/sdk/catalog.json index e03abb303..fbf5ef806 100644 --- a/sdk/catalog.json +++ b/sdk/catalog.json @@ -109,7 +109,7 @@ }, { "id": "vector", - "version": "0.2.5-experimental", + "version": "0.2.6-experimental", "addedAt": "2026-10-06T08:02:00Z" }, { diff --git a/sdk/machines/octatrack/module-adapters/machine-ports.json b/sdk/machines/octatrack/module-adapters/machine-ports.json index 0415c8102..1de481cbb 100644 --- a/sdk/machines/octatrack/module-adapters/machine-ports.json +++ b/sdk/machines/octatrack/module-adapters/machine-ports.json @@ -151,7 +151,7 @@ }, "vector": { "sources": { - "sdk/octabam/modules/vector/control.s": "c4f829e437ffbde1275c00827031b694a86011013d37269077e4696818323471", + "sdk/octabam/modules/vector/control.s": "1939a627870464126d138522173d0465d1abc790cdb4ad4bc29a15501484faf5", "sdk/octabam/modules/vector/manifest.py": "4d921f24256038797a99671534885b0bb9a27eaa79261b11136cf0a95a75af21" }, "contribute": [ diff --git a/sdk/machines/octatrack/module-adapters/machine-recipes.json b/sdk/machines/octatrack/module-adapters/machine-recipes.json index 5edd48ea0..dd5eaa015 100644 --- a/sdk/machines/octatrack/module-adapters/machine-recipes.json +++ b/sdk/machines/octatrack/module-adapters/machine-recipes.json @@ -6,7 +6,7 @@ "schema": 1, "imageSha256": "642d27796f5ee0100eed8477266a7aff77d8614b40da50b554218170a19d49c5", "sources": { - "sdk/machines/octatrack/module-adapters/machine-ports.json": "58241dacb72646dc8a56350d50e559d1afff8a7c0cc80ff787a145c789be0867", + "sdk/machines/octatrack/module-adapters/machine-ports.json": "ba3ac422bc33f469867664ef20a13924e10a7e28ef12d1d140a6660b6898f70b", "sdk/machines/octatrack/module-adapters/machine_ports.py": "bbb91f0c54c27043b54a9156cad01053531f2ef78fb13cc73e2b45f7fc7e8d6f", "sdk/octabam/modules/poly8/manifest.py": "f8759dbcbb246b247c195e61f0c0464fd0cdc0dd40b68dd8f74c03b46c584afc", "sdk/octabam/modules/poly8/polyphony.s": "c86a3a783c46ecdbb3b44341098f0c094c65b9a8d11716835c2d28c2d2d6ecee", @@ -57,7 +57,7 @@ "schema": 1, "imageSha256": "eb2c30d222a63ed062dc07f057f172973cd35c7b7c2b952d3662be809d600df4", "sources": { - "sdk/machines/octatrack/module-adapters/machine-ports.json": "58241dacb72646dc8a56350d50e559d1afff8a7c0cc80ff787a145c789be0867", + "sdk/machines/octatrack/module-adapters/machine-ports.json": "ba3ac422bc33f469867664ef20a13924e10a7e28ef12d1d140a6660b6898f70b", "sdk/machines/octatrack/module-adapters/machine_ports.py": "bbb91f0c54c27043b54a9156cad01053531f2ef78fb13cc73e2b45f7fc7e8d6f", "sdk/machines/octatrack/module-adapters/quantizer_runtime.py": "d40b72c887142cec0bed46b26de6269e7939f7453350b25ae24f48395777e6a4", "sdk/octabam/modules/quantizer/manifest.py": "0cb4a79f7cd68e1881cd1076a0f6ba2e132b1c199da3a2d4923906b443797602", @@ -112,7 +112,7 @@ "imageSha256": "11afe489011aa243c5bc579a824635f7d1334b17f0a21d554d897ceec3d3fb1a", "sources": { "sdk/machines/octatrack/module-adapters/fm_runtime.py": "ecf39c395bd8231d1dda340e1c6bc26e8473ba548cfa422f9a4ae4ff2bd6807e", - "sdk/machines/octatrack/module-adapters/machine-ports.json": "58241dacb72646dc8a56350d50e559d1afff8a7c0cc80ff787a145c789be0867", + "sdk/machines/octatrack/module-adapters/machine-ports.json": "ba3ac422bc33f469867664ef20a13924e10a7e28ef12d1d140a6660b6898f70b", "sdk/machines/octatrack/module-adapters/machine_ports.py": "bbb91f0c54c27043b54a9156cad01053531f2ef78fb13cc73e2b45f7fc7e8d6f", "sdk/octabam/modules/synth/machine.s": "de9d849bf0b6e5d5ad747df32ae5806e7f9516674a14ac74b1c15d73d30d280a", "sdk/octabam/modules/synth/manifest.py": "7854330aca001d2841de2fb384f0ca8adb7497db49dacc56da2815c1f444c0e6", @@ -401,10 +401,10 @@ "schema": 1, "imageSha256": "70187665697dd57baefc9b65480a564e7514c75bdbce9c3c6f5519d2953684ab", "sources": { - "sdk/machines/octatrack/module-adapters/machine-ports.json": "58241dacb72646dc8a56350d50e559d1afff8a7c0cc80ff787a145c789be0867", + "sdk/machines/octatrack/module-adapters/machine-ports.json": "ba3ac422bc33f469867664ef20a13924e10a7e28ef12d1d140a6660b6898f70b", "sdk/machines/octatrack/module-adapters/machine_ports.py": "bbb91f0c54c27043b54a9156cad01053531f2ef78fb13cc73e2b45f7fc7e8d6f", - "sdk/machines/octatrack/module-adapters/vector_runtime.py": "e5e8351f4be954b1028a7b455a977c1460864c85ad10d781dfe4aef4876ad6e3", - "sdk/octabam/modules/vector/control.s": "c4f829e437ffbde1275c00827031b694a86011013d37269077e4696818323471", + "sdk/machines/octatrack/module-adapters/vector_runtime.py": "799ca5fa3a3991dda266041eb7588775cc6dda3e71241a1df8784e781e34b45f", + "sdk/octabam/modules/vector/control.s": "1939a627870464126d138522173d0465d1abc790cdb4ad4bc29a15501484faf5", "sdk/octabam/modules/vector/manifest.py": "4d921f24256038797a99671534885b0bb9a27eaa79261b11136cf0a95a75af21", "sdk/runtime/loader/build.py": "5131901224dcd037c07f0233cadabd67eec2a952878bef5a92274dd3d6236c7d" }, @@ -474,7 +474,7 @@ "sources": { "sdk/machines/octatrack/module-adapters/analog_bd_runtime.py": "b9c0e0f96632a0d0ab5283387edaae1b604e4e82e27e26b3fdc1666867d31daf", "sdk/machines/octatrack/module-adapters/analog_bd_write_lease.py": "3e6a3766f32176e9be69627ef2b71272970f2d02a2088e77673946b640d365c7", - "sdk/machines/octatrack/module-adapters/machine-ports.json": "58241dacb72646dc8a56350d50e559d1afff8a7c0cc80ff787a145c789be0867", + "sdk/machines/octatrack/module-adapters/machine-ports.json": "ba3ac422bc33f469867664ef20a13924e10a7e28ef12d1d140a6660b6898f70b", "sdk/machines/octatrack/module-adapters/machine_ports.py": "bbb91f0c54c27043b54a9156cad01053531f2ef78fb13cc73e2b45f7fc7e8d6f", "sdk/machines/octatrack/module-adapters/stock_hook_write_lease.h": "ab14679a5faae84ef47d1ca37e46b3171da45252d12310e0b4458228be8334be", "sdk/octabam/modules/analog-bassdrum/control.s": "463dacf528e4996c7f21e97533391583329a2e3aabda95c87b7cd020dee7adb6", diff --git a/sdk/machines/octatrack/module-adapters/vector_runtime.py b/sdk/machines/octatrack/module-adapters/vector_runtime.py index b62004a35..2a00cac6a 100644 --- a/sdk/machines/octatrack/module-adapters/vector_runtime.py +++ b/sdk/machines/octatrack/module-adapters/vector_runtime.py @@ -4,32 +4,24 @@ import hashlib from pathlib import Path -CONTROL_SHA256 = 'c4f829e437ffbde1275c00827031b694a86011013d37269077e4696818323471' +CONTROL_SHA256 = '1939a627870464126d138522173d0465d1abc790cdb4ad4bc29a15501484faf5' ARITHMETIC = ( ('\tsub.l #staging-268525901,%a1', '\tadd.l #268525901,%a1\n\tsub.l #staging,%a1'), ('\tlea saved-1187503478,%a1', '\tlea saved,%a1\n\tsub.l #1187503478,%a1'), ('\tlea saved-1187503778,%a1', '\tlea saved,%a1\n\tsub.l #1187503778,%a1'), ) -# SRC SETUP's second page: the card build's st_setup_draw6 asks st_setup_page on chooser row 5 only, and st_setup_page -# also wants SRC SETUP's cursor (0x460d5c30) on row 5, the card's VECTOR row. Over USB VECTOR's row is wherever the -# base's table puts it (5-8), and the base asks the page only with the cursor on that row and the track a VECTOR track -# (machine_registry.c mw_setup_page, MODWERK_MACHINE_SETUP_PAGE), so the package drops the row-5 test. -SETUP_ROW = ('\tjne .L702\n\tmov3q.l #5,%d0\n\tcmp.l 1175280688.l,%d0\n\tjne .L702\n\tmove.l %d1,12(%sp)\n', - '\tjne .L702\n\tmove.l %d1,12(%sp)\n') def source_variant(original): - """Keep self-references inside the package; address arithmetic does not alter CCR. SRC SETUP's page is asked on - VECTOR's own row, wherever the base puts it.""" + """Keep self-references inside the package; address arithmetic does not alter CCR. Since VECTOR 0.2.6 the card + source asks SRC SETUP's page on VECTOR's own row itself (st_setup_page has no row-5 test), so the base's row works.""" if hashlib.sha256(original.encode()).hexdigest() != CONTROL_SHA256: raise ValueError('Reviewed VECTOR runtime source changed.') for before, after in ARITHMETIC: if original.count(before) != 1: raise ValueError('VECTOR address arithmetic seam changed.') original = original.replace(before, after) - if original.count(SETUP_ROW[0]) != 1: - raise ValueError('VECTOR SRC SETUP row seam changed.') - return original.replace(*SETUP_ROW) + return original def port(module, sdk_root, work): diff --git a/sdk/octabam/modules/vector/TESTING.md b/sdk/octabam/modules/vector/TESTING.md index 4384bef3c..9700f1550 100644 --- a/sdk/octabam/modules/vector/TESTING.md +++ b/sdk/octabam/modules/vector/TESTING.md @@ -1,5 +1,20 @@ # VECTOR tests and measurements +## 0.2.6: SRC SETUP page 2 on VECTOR's own row (card builds, #1119) + +Report #1119 (also #842/#843): on a card build with POLY8, a double tap on SRC on a VECTOR track showed the stock Flex/Static setup (TSTR AUTO) instead of SEED/SPAN. Beside POLY8, VECTOR is machine row 6 or 7; POLY8's shared SRC SETUP hooks replace VECTOR's and never asked VECTOR, and `st_setup_page` itself also wanted SRC SETUP's cursor (0x460d5c30) on row 5. 0.2.6 drops that test: its callers already ask on VECTOR's row (row 5 in `hooks.s` alone, the base's row over USB, POLY8's row with POLY8 0.3.3). The USB adapter dropped the same test since 0.2.5, so `vector_runtime.py` no longer rewrites it; the package's control unit source is byte-identical to 0.2.5's and the 0.2.5 USB package stays published (`lagsBehind`). The 0.2.5 hardware report above that run covers those bytes. + +Emulator, 1 November 2026 (`ot_emu` built from upstream octabam, MKII panel, DSP on, empty scratch card; card images composed by the site's builder from packages built in the isolated toolchain; `scripts/capture-module-ui.py` with 50 ms keys: FUNC+SRC, DOWN to VECTOR, YES, YES on STATIC, NO, SRC, FUNC+SRC, encoder A +3, encoder E +2): + +| Image | Result | +| --- | --- | +| main (VECTOR 0.2.5, POLY8 0.3.2) + FM Synth | reproduces the report: SRC shows SRC▸VECTOR with TYPE…ACNT, SRC SETUP shows LOOP SLIC LEN RATE TSTR(AUTO) TSNS | +| VECTOR 0.2.6 + POLY8 0.3.3 + FM Synth | SRC SETUP shows SEED 1, SPAN 12, OFST 0, ROT 0, RPT OFF, DIR FWD; encoder A gives SEED 4, encoder E RPT 2; cursor on POLY8 shows the stock setup | +| VECTOR 0.2.6 + POLY8 0.3.2 + FM Synth | not run; POLY8 0.3.2's shared hooks never call `st_setup_page`, so the stock setup stays as on main (code read) | +| VECTOR alone, 0.2.5 and 0.2.6 | all eight screens of the plan pixel-identical; page 2 on row 5, encoders A and E as above | + +`verify_native.py` passes in the pinned toolchain (sanitizer tests, `control.s` reproduces). Not tested: a unit, MKI, saving and reloading, a power cycle, listening. + ## 0.2.5 over USB on a MKII (SRC SETUP page 2, #972) Version `0.2.5-experimental` changes only the USB package: its `ot_machines` record is a `struct modwerk_machine_setup` (SETUP_PAGE) naming the card build's own `st_setup_page` and `st_setup_knob`, and the package's source variant drops `st_setup_page`'s test for SRC SETUP's cursor on row 5. The card source and every result in the sections below are 0.2.4's. diff --git a/sdk/octabam/modules/vector/control.s b/sdk/octabam/modules/vector/control.s index 3590b056c..84105aa5b 100644 --- a/sdk/octabam/modules/vector/control.s +++ b/sdk/octabam/modules/vector/control.s @@ -3901,9 +3901,6 @@ st_setup_page: jeq .L702 tst.l edit_view jne .L702 - mov3q.l #5,%d0 - cmp.l 1175280688.l,%d0 - jne .L702 move.l %d1,12(%sp) move.l (%sp)+,%d2 addq.l #4,%sp diff --git a/sdk/octabam/modules/vector/native.c b/sdk/octabam/modules/vector/native.c index c1a597560..42e18840b 100644 --- a/sdk/octabam/modules/vector/native.c +++ b/sdk/octabam/modules/vector/native.c @@ -343,8 +343,10 @@ uint32_t st_draw_page(void) { uint32_t stock=((uint32_t (*)(void))0x40031f28u)(); return generator_view()?generator_page(stock):stock; } +/* Asked on VECTOR's own SRC SETUP row: 5 alone (hooks.s), the next one beside POLY8 (its shared-machine.c), the + * base's row over USB (#1119). */ uint32_t st_setup_page(uint32_t stock) { - return st_selected() && !edit_view && U32(0x460d5c30u)==5?generator_page(stock):stock; + return st_selected() && !edit_view?generator_page(stock):stock; } static void change_control(unsigned control,int delta) { unsigned t=U8(TRACK_IDX); VectorParams p=settings(t), before=p; diff --git a/sdk/octabam/modules/vector/octamod.module.json b/sdk/octabam/modules/vector/octamod.module.json index 808a97499..0a939815b 100644 --- a/sdk/octabam/modules/vector/octamod.module.json +++ b/sdk/octabam/modules/vector/octamod.module.json @@ -3,7 +3,7 @@ "id": "vector", "key": "VECTOR", "name": "VECTOR", - "version": "0.2.5-experimental", + "version": "0.2.6-experimental", "category": "machines", "author": { "github": "repeat98", @@ -223,8 +223,8 @@ ], "evidenceRevision": "645d73da3872ce9111f3e3172114fb33a3660b9f", "qualification": { - "moduleVersion": "0.2.5-experimental", - "sourceSha256": "1255e99133cbd8d6d2587c95f93462ea80fccbd169462a2acb02aedbd346cbd3", + "moduleVersion": "0.2.6-experimental", + "sourceSha256": "27eca33a8d42bc0b5c56010864915454684d8d61df1a074403a66dda1e3d9a42", "imageSha256": "a753ddf67b0fe64e3742b4c89ecf141071eb30757b170173215e92b1b4794d24", "cycles": [ { @@ -324,7 +324,7 @@ "The base was the development twin of the release base, not the b1b2ca58 build itself, nor the base this release commits.", "Not tested: the FLEX, THRU and PICKUP setups; a POLY8 or Analog BD track's SRC SETUP; VECTOR 0.2.4 on the new base; whether the SRC main page regenerates the phrase.", "Not tested: saving and reloading, a power cycle with VECTOR kept, and listening; no chip timing or stress.", - "One MKII; no MKI. The card build is 0.2.4's and was not run for this version." + "One MKII; no MKI. The card build was not run on a unit: 0.2.4's card source, and 0.2.6's (st_setup_page without its row-5 test, for POLY8 sets, #1119) only in ot_emu. 0.2.6 keeps publishing this 0.2.5 USB package; its control unit source is byte-identical." ], "report": "TESTING.md" }, @@ -372,7 +372,7 @@ "page": "SRC SETUP machine chooser", "shows": "location", "firmware": "1.40C", - "moduleVersion": "0.2.5-experimental", + "moduleVersion": "0.2.6-experimental", "imageSha256": "cabcc2967a23a0ef719a38de444aec1b68662c12bb9057093d475b89424d0026", "setup": "Native ColdFire port, MKII panel mapping; original 1.40C, reported five-module composition, disposable RIG card, T1/T5 Flex with distinct VECTOR settings, Part ONE, A01, 120 BPM. Actual LCD plane plus visible stock windows rendered at 6x nearest-neighbor in monochrome. Stand-in DSP; no physical hardware or audio qualification." } @@ -389,7 +389,7 @@ "page": "SRC generator", "shows": "controls", "firmware": "1.40C", - "moduleVersion": "0.2.5-experimental", + "moduleVersion": "0.2.6-experimental", "imageSha256": "cabcc2967a23a0ef719a38de444aec1b68662c12bb9057093d475b89424d0026", "setup": "Native ColdFire port, MKII panel mapping; original 1.40C, reported five-module composition, disposable RIG card, T1/T5 Flex with distinct VECTOR settings, Part ONE, A01, 120 BPM. Actual LCD plane plus visible stock windows rendered at 6x nearest-neighbor in monochrome. Stand-in DSP; no physical hardware or audio qualification." } @@ -406,7 +406,7 @@ "page": "SRC after Generate", "shows": "controls", "firmware": "1.40C", - "moduleVersion": "0.2.5-experimental", + "moduleVersion": "0.2.6-experimental", "imageSha256": "cabcc2967a23a0ef719a38de444aec1b68662c12bb9057093d475b89424d0026", "setup": "Native ColdFire port, MKII panel mapping; original 1.40C, reported five-module composition, disposable RIG card, T1/T5 Flex with distinct VECTOR settings, Part ONE, A01, 120 BPM. Actual LCD plane plus visible stock windows rendered at 6x nearest-neighbor in monochrome. Stand-in DSP; no physical hardware or audio qualification." } @@ -423,7 +423,7 @@ "page": "SRC sample editor", "shows": "controls", "firmware": "1.40C", - "moduleVersion": "0.2.5-experimental", + "moduleVersion": "0.2.6-experimental", "imageSha256": "cabcc2967a23a0ef719a38de444aec1b68662c12bb9057093d475b89424d0026", "setup": "Native ColdFire port, MKII panel mapping; original 1.40C, reported five-module composition, disposable RIG card, T1/T5 Flex with distinct VECTOR settings, Part ONE, A01, 120 BPM. Actual LCD plane plus visible stock windows rendered at 6x nearest-neighbor in monochrome. Stand-in DSP; no physical hardware or audio qualification." } @@ -440,7 +440,7 @@ "page": "SRC SETUP", "shows": "controls", "firmware": "1.40C", - "moduleVersion": "0.2.5-experimental", + "moduleVersion": "0.2.6-experimental", "imageSha256": "cabcc2967a23a0ef719a38de444aec1b68662c12bb9057093d475b89424d0026", "setup": "Native ColdFire port, MKII panel mapping; original 1.40C, reported five-module composition, disposable RIG card, T1/T5 Flex with distinct VECTOR settings, Part ONE, A01, 120 BPM. Actual LCD plane plus visible stock windows rendered at 6x nearest-neighbor in monochrome. Stand-in DSP; no physical hardware or audio qualification." } @@ -457,7 +457,7 @@ "page": "Backing-pool choice", "shows": "controls", "firmware": "1.40C", - "moduleVersion": "0.2.5-experimental", + "moduleVersion": "0.2.6-experimental", "imageSha256": "cabcc2967a23a0ef719a38de444aec1b68662c12bb9057093d475b89424d0026", "setup": "Native ColdFire port, MKII panel mapping; original 1.40C, reported five-module composition, disposable RIG card, T1/T5 Flex with distinct VECTOR settings, Part ONE, A01, 120 BPM. Actual LCD plane plus visible stock windows rendered at 6x nearest-neighbor in monochrome. Stand-in DSP; no physical hardware or audio qualification." } @@ -474,7 +474,7 @@ "page": "Static sample pool", "shows": "controls", "firmware": "1.40C", - "moduleVersion": "0.2.5-experimental", + "moduleVersion": "0.2.6-experimental", "imageSha256": "cabcc2967a23a0ef719a38de444aec1b68662c12bb9057093d475b89424d0026", "setup": "Native ColdFire port, MKII panel mapping; original 1.40C, reported five-module composition, disposable RIG card, T1/T5 Flex with distinct VECTOR settings, Part ONE, A01, 120 BPM. Actual LCD plane plus visible stock windows rendered at 6x nearest-neighbor in monochrome. Stand-in DSP; no physical hardware or audio qualification." } @@ -491,7 +491,7 @@ "page": "Flex sample pool", "shows": "controls", "firmware": "1.40C", - "moduleVersion": "0.2.5-experimental", + "moduleVersion": "0.2.6-experimental", "imageSha256": "cabcc2967a23a0ef719a38de444aec1b68662c12bb9057093d475b89424d0026", "setup": "Native ColdFire port, MKII panel mapping; original 1.40C, reported five-module composition, disposable RIG card, T1/T5 Flex with distinct VECTOR settings, Part ONE, A01, 120 BPM. Actual LCD plane plus visible stock windows rendered at 6x nearest-neighbor in monochrome. Stand-in DSP; no physical hardware or audio qualification." } diff --git a/src/catalog/module-documents.json b/src/catalog/module-documents.json index db3df09e7..3d8083451 100644 --- a/src/catalog/module-documents.json +++ b/src/catalog/module-documents.json @@ -6150,7 +6150,7 @@ "id": "vector", "key": "VECTOR", "name": "VECTOR", - "version": "0.2.5-experimental", + "version": "0.2.6-experimental", "category": "machines", "source": { "repository": "https://github.com/repeat98/modwerk", @@ -6420,8 +6420,8 @@ ], "screenshotStyle": "black-and-white" }, - "moduleVersion": "0.2.5-experimental", - "sourceSha256": "1255e99133cbd8d6d2587c95f93462ea80fccbd169462a2acb02aedbd346cbd3", + "moduleVersion": "0.2.6-experimental", + "sourceSha256": "27eca33a8d42bc0b5c56010864915454684d8d61df1a074403a66dda1e3d9a42", "imageSha256": "a753ddf67b0fe64e3742b4c89ecf141071eb30757b170173215e92b1b4794d24", "cycles": [ { @@ -6521,7 +6521,7 @@ "The base was the development twin of the release base, not the b1b2ca58 build itself, nor the base this release commits.", "Not tested: the FLEX, THRU and PICKUP setups; a POLY8 or Analog BD track's SRC SETUP; VECTOR 0.2.4 on the new base; whether the SRC main page regenerates the phrase.", "Not tested: saving and reloading, a power cycle with VECTOR kept, and listening; no chip timing or stress.", - "One MKII; no MKI. The card build is 0.2.4's and was not run for this version." + "One MKII; no MKI. The card build was not run on a unit: 0.2.4's card source, and 0.2.6's (st_setup_page without its row-5 test, for POLY8 sets, #1119) only in ot_emu. 0.2.6 keeps publishing this 0.2.5 USB package; its control unit source is byte-identical." ], "report": "TESTING.md" } @@ -6545,7 +6545,7 @@ "page": "SRC SETUP machine chooser", "shows": "location", "firmware": "1.40C", - "moduleVersion": "0.2.5-experimental", + "moduleVersion": "0.2.6-experimental", "imageSha256": "cabcc2967a23a0ef719a38de444aec1b68662c12bb9057093d475b89424d0026", "setup": "Native ColdFire port, MKII panel mapping; original 1.40C, reported five-module composition, disposable RIG card, T1/T5 Flex with distinct VECTOR settings, Part ONE, A01, 120 BPM. Actual LCD plane plus visible stock windows rendered at 6x nearest-neighbor in monochrome. Stand-in DSP; no physical hardware or audio qualification." } @@ -6562,7 +6562,7 @@ "page": "SRC generator", "shows": "controls", "firmware": "1.40C", - "moduleVersion": "0.2.5-experimental", + "moduleVersion": "0.2.6-experimental", "imageSha256": "cabcc2967a23a0ef719a38de444aec1b68662c12bb9057093d475b89424d0026", "setup": "Native ColdFire port, MKII panel mapping; original 1.40C, reported five-module composition, disposable RIG card, T1/T5 Flex with distinct VECTOR settings, Part ONE, A01, 120 BPM. Actual LCD plane plus visible stock windows rendered at 6x nearest-neighbor in monochrome. Stand-in DSP; no physical hardware or audio qualification." } @@ -6579,7 +6579,7 @@ "page": "SRC after Generate", "shows": "controls", "firmware": "1.40C", - "moduleVersion": "0.2.5-experimental", + "moduleVersion": "0.2.6-experimental", "imageSha256": "cabcc2967a23a0ef719a38de444aec1b68662c12bb9057093d475b89424d0026", "setup": "Native ColdFire port, MKII panel mapping; original 1.40C, reported five-module composition, disposable RIG card, T1/T5 Flex with distinct VECTOR settings, Part ONE, A01, 120 BPM. Actual LCD plane plus visible stock windows rendered at 6x nearest-neighbor in monochrome. Stand-in DSP; no physical hardware or audio qualification." } @@ -6596,7 +6596,7 @@ "page": "SRC sample editor", "shows": "controls", "firmware": "1.40C", - "moduleVersion": "0.2.5-experimental", + "moduleVersion": "0.2.6-experimental", "imageSha256": "cabcc2967a23a0ef719a38de444aec1b68662c12bb9057093d475b89424d0026", "setup": "Native ColdFire port, MKII panel mapping; original 1.40C, reported five-module composition, disposable RIG card, T1/T5 Flex with distinct VECTOR settings, Part ONE, A01, 120 BPM. Actual LCD plane plus visible stock windows rendered at 6x nearest-neighbor in monochrome. Stand-in DSP; no physical hardware or audio qualification." } @@ -6613,7 +6613,7 @@ "page": "SRC SETUP", "shows": "controls", "firmware": "1.40C", - "moduleVersion": "0.2.5-experimental", + "moduleVersion": "0.2.6-experimental", "imageSha256": "cabcc2967a23a0ef719a38de444aec1b68662c12bb9057093d475b89424d0026", "setup": "Native ColdFire port, MKII panel mapping; original 1.40C, reported five-module composition, disposable RIG card, T1/T5 Flex with distinct VECTOR settings, Part ONE, A01, 120 BPM. Actual LCD plane plus visible stock windows rendered at 6x nearest-neighbor in monochrome. Stand-in DSP; no physical hardware or audio qualification." } @@ -6630,7 +6630,7 @@ "page": "Backing-pool choice", "shows": "controls", "firmware": "1.40C", - "moduleVersion": "0.2.5-experimental", + "moduleVersion": "0.2.6-experimental", "imageSha256": "cabcc2967a23a0ef719a38de444aec1b68662c12bb9057093d475b89424d0026", "setup": "Native ColdFire port, MKII panel mapping; original 1.40C, reported five-module composition, disposable RIG card, T1/T5 Flex with distinct VECTOR settings, Part ONE, A01, 120 BPM. Actual LCD plane plus visible stock windows rendered at 6x nearest-neighbor in monochrome. Stand-in DSP; no physical hardware or audio qualification." } @@ -6647,7 +6647,7 @@ "page": "Static sample pool", "shows": "controls", "firmware": "1.40C", - "moduleVersion": "0.2.5-experimental", + "moduleVersion": "0.2.6-experimental", "imageSha256": "cabcc2967a23a0ef719a38de444aec1b68662c12bb9057093d475b89424d0026", "setup": "Native ColdFire port, MKII panel mapping; original 1.40C, reported five-module composition, disposable RIG card, T1/T5 Flex with distinct VECTOR settings, Part ONE, A01, 120 BPM. Actual LCD plane plus visible stock windows rendered at 6x nearest-neighbor in monochrome. Stand-in DSP; no physical hardware or audio qualification." } @@ -6664,7 +6664,7 @@ "page": "Flex sample pool", "shows": "controls", "firmware": "1.40C", - "moduleVersion": "0.2.5-experimental", + "moduleVersion": "0.2.6-experimental", "imageSha256": "cabcc2967a23a0ef719a38de444aec1b68662c12bb9057093d475b89424d0026", "setup": "Native ColdFire port, MKII panel mapping; original 1.40C, reported five-module composition, disposable RIG card, T1/T5 Flex with distinct VECTOR settings, Part ONE, A01, 120 BPM. Actual LCD plane plus visible stock windows rendered at 6x nearest-neighbor in monochrome. Stand-in DSP; no physical hardware or audio qualification." } diff --git a/src/community/module-changelogs/vector.json b/src/community/module-changelogs/vector.json index 187465069..4563d9542 100644 --- a/src/community/module-changelogs/vector.json +++ b/src/community/module-changelogs/vector.json @@ -1,4 +1,13 @@ [ + { + "version": "0.2.6-experimental", + "date": "2026-11-01", + "changes": [ + "Card builds: VECTOR's second page (SEED, SPAN, OFST, ROT, RPT, DIR) can now open beside POLY8, where it sits lower in the machine list (#1119). It shows once POLY8 0.3.3 is out too.", + "VECTOR on its own and over USB works as before.", + "Known issue: not yet tested on hardware." + ] + }, { "version": "0.2.5-experimental", "date": "2026-10-27", diff --git a/src/engine/assets/octatrack-module-packages.json b/src/engine/assets/octatrack-module-packages.json index 89fa658b2..d348b5d62 100644 --- a/src/engine/assets/octatrack-module-packages.json +++ b/src/engine/assets/octatrack-module-packages.json @@ -198,7 +198,9 @@ "module": "b0d51c58", "bytes": 18354, "sha256": "45c962ca3a202ac697e3d33d97e4b3b94052706a390189e5baf923fa829de577", - "path": "octatrack-modules/vector/0.2.5-experimental.mwrm" + "path": "octatrack-modules/vector/0.2.5-experimental.mwrm", + "lagsBehind": "0.2.6-experimental", + "lagReason": "0.2.6 changes only the card build: st_setup_page no longer tests for row 5, which VECTOR's USB adapter already dropped (#972, #1119); the package's control unit source is byte-identical to 0.2.5's" }, { "id": "synth", From bc36ae820006f936fb4f398878dbf0761514f792 Mon Sep 17 00:00:00 2001 From: repeat98 Date: Sun, 1 Nov 2026 19:43:05 +0100 Subject: [PATCH 11/33] VECTOR 0.2.6: import the isolated toolchain's packages 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 | 4 +-- src/engine/assets/menu-recipes.json | 4 +-- src/engine/assets/module-build.json | 30 +++++++++++------------ src/engine/assets/platform-writes.json | 4 +-- src/engine/assets/requested-packages.json | 22 ++++++++--------- 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, 46 insertions(+), 46 deletions(-) diff --git a/src/engine/assets/bootstrap-package.json b/src/engine/assets/bootstrap-package.json index cbc0133c0..6bebdd72c 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": "b18d1776b0d982081c2c69ef5796154fff0efbf9", + "sourceCommit": "72faeba1ebb4518349afc28438789e1d71b7e441", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -39,7 +39,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.2.0-experimental", - "vector": "0.2.5-experimental", + "vector": "0.2.6-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.1-experimental", "recorder-loop-fix": "0.1.0-experimental", diff --git a/src/engine/assets/coldfire-packages.json b/src/engine/assets/coldfire-packages.json index a05b0c558..d38d637b2 100644 --- a/src/engine/assets/coldfire-packages.json +++ b/src/engine/assets/coldfire-packages.json @@ -208,7 +208,7 @@ "sha256": "ccffbf72d45358bde585760b9230c668bf38ebf412ab23efc73732cf96024dca" } ], - "sourceCommit": "b18d1776b0d982081c2c69ef5796154fff0efbf9", + "sourceCommit": "72faeba1ebb4518349afc28438789e1d71b7e441", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -231,7 +231,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.2.0-experimental", - "vector": "0.2.5-experimental", + "vector": "0.2.6-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.1-experimental", "recorder-loop-fix": "0.1.0-experimental", diff --git a/src/engine/assets/descriptor-recipes.json b/src/engine/assets/descriptor-recipes.json index 442a26d66..03264d3b7 100644 --- a/src/engine/assets/descriptor-recipes.json +++ b/src/engine/assets/descriptor-recipes.json @@ -4439,7 +4439,7 @@ ] } ], - "sourceCommit": "b18d1776b0d982081c2c69ef5796154fff0efbf9", + "sourceCommit": "72faeba1ebb4518349afc28438789e1d71b7e441", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -4462,7 +4462,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.2.0-experimental", - "vector": "0.2.5-experimental", + "vector": "0.2.6-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.1-experimental", "recorder-loop-fix": "0.1.0-experimental", diff --git a/src/engine/assets/dsp-packages.json b/src/engine/assets/dsp-packages.json index 7550fd1ec..3e2144837 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": "b18d1776b0d982081c2c69ef5796154fff0efbf9", + "sourceCommit": "72faeba1ebb4518349afc28438789e1d71b7e441", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -25,7 +25,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.2.0-experimental", - "vector": "0.2.5-experimental", + "vector": "0.2.6-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.1-experimental", "recorder-loop-fix": "0.1.0-experimental", diff --git a/src/engine/assets/menu-recipes.json b/src/engine/assets/menu-recipes.json index 366d4d25b..cc6c9b572 100644 --- a/src/engine/assets/menu-recipes.json +++ b/src/engine/assets/menu-recipes.json @@ -1425,7 +1425,7 @@ "caveLimit": 1074625596 } ], - "sourceCommit": "b18d1776b0d982081c2c69ef5796154fff0efbf9", + "sourceCommit": "72faeba1ebb4518349afc28438789e1d71b7e441", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -1448,7 +1448,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.2.0-experimental", - "vector": "0.2.5-experimental", + "vector": "0.2.6-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.1-experimental", "recorder-loop-fix": "0.1.0-experimental", diff --git a/src/engine/assets/module-build.json b/src/engine/assets/module-build.json index b710bf804..fccbb534f 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": "b18d1776b0d982081c2c69ef5796154fff0efbf9", + "sourceCommit": "72faeba1ebb4518349afc28438789e1d71b7e441", "nativeRevision": "b8deefc88b2c3e5f3c6158e364eb741df1924e1d", - "sourceTreeSha256": "567e4164b411efa282e4a485e44f46574da8011cfc4d12cecd9098eec858ed7c", + "sourceTreeSha256": "02d9d4659c20ef1d686ffe661c09c8e234e29970d56c6d6c000ab90ba2e3938e", "compilerSha256": "6af1ca0e10e9f9ba64862600343675465a0f6cff40dac6a73501333647bca79a", "moduleVersions": { "spectrum": "0.1.1-experimental", @@ -27,7 +27,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.2.0-experimental", - "vector": "0.2.5-experimental", + "vector": "0.2.6-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.1-experimental", "recorder-loop-fix": "0.1.0-experimental", @@ -42,47 +42,47 @@ "files": { "dsp-packages.json": { "bytes": 91853, - "sha256": "301bab722f975f6edb85642f53c1d05928ec232defb90b5cd8b02785c08b73cc" + "sha256": "eb8ffb9545f9c2c40de262e669ca24629825198ae6ca837b85ee6c6a79401fc2" }, "resident-dsp.json": { "bytes": 25258, - "sha256": "ae04b8b6ce5bc77f235022bec77943c1e72a2b8c4c0bf6323490863744dcb35b" + "sha256": "ff3209d722445d09fb9d3cea62b81d2893fca5db9bf58707b7d0890a0fae54b1" }, "coldfire-packages.json": { "bytes": 353789, - "sha256": "ece5235851fee2d23f685a94d9739f1555dcdf0821c57a94fb82d76dc05571d0" + "sha256": "84734ab0cb4a4a73184108ecbcb59204717e3234c4f13a5be2b4d3dec81f6c0d" }, "rom-packages.json": { "bytes": 33409, - "sha256": "0569b717bdfa5b8c2915781406d81512d8d6aa7ad61ef40048f42a6a4323c44e" + "sha256": "5249880d2808619b1a70211d718c9d5e5c72df1ea390fd3796fa55f2a51e142d" }, "bootstrap-package.json": { "bytes": 3992, - "sha256": "37d19d72368ec8e2f1eeec9f90dbc90585bb0a93ce7306616bc1ac5edea32308" + "sha256": "9d46bbb024ebe6e75ce21318046668ddc694b9cf8580b87cd0fe01a753ea2922" }, "menu-recipes.json": { "bytes": 37651, - "sha256": "ca1eaf307ee09c95a984fe8080779a347d326a546e45aed70ce64bc3584c725c" + "sha256": "49e0778acdc1b2825a322122e45346c80a014beb712f63a61ed4db9238271578" }, "descriptor-recipes.json": { "bytes": 85276, - "sha256": "f8006d06e3b7c5df2d950dba3364797e16b86e65c39fefc40b5cbef7570407cd" + "sha256": "92ab9399129e0289534762043873766d98f55b81ad8f4f36385f605737a7dcae" }, "platform-writes.json": { "bytes": 17735, - "sha256": "772a86e82549a928718814fcac99b016c7d08fe3d9d73c16913dc827df88af99" + "sha256": "6a8bff9b43321f93a45745a650b09b8caa3850518db4602c7191648ee8e127dc" }, "requested-packages.json": { - "bytes": 1145826, - "sha256": "b9ce385797fd446031d3a488d3f767abba7cfb3f475eea3f134dc1394680fa57" + "bytes": 1145810, + "sha256": "70b010e4dc141d871f65e27add8579cc0df8880e9a58248206a05bc06108b8dd" }, "utility-packages.json": { "bytes": 13120, - "sha256": "4ce6455258aa59e2a474c0f0a4807e5a84d558d54b18be32c48aa6772f1a0701" + "sha256": "14348949eb793bf8235f0c774994f09b8bd7937e782a9760509df716a707466d" }, "usb-audio-packages.json": { "bytes": 737762, - "sha256": "dba17acaa21b5fa451fe5f1900ea8fddfebb9b94d53fb6b0dff00588fd88af4c" + "sha256": "760f118e2dcefd1df265f400a1c237dd53c13475f134d1d19c045512465cc361" } }, "approval": null, diff --git a/src/engine/assets/platform-writes.json b/src/engine/assets/platform-writes.json index c86c6ae85..c4ecf399b 100644 --- a/src/engine/assets/platform-writes.json +++ b/src/engine/assets/platform-writes.json @@ -526,7 +526,7 @@ "sha256": "09effec7437266b693e358d43f0ba0f3de2b0b35fe4d81e7b76ba90cf388bde8" } ], - "sourceCommit": "b18d1776b0d982081c2c69ef5796154fff0efbf9", + "sourceCommit": "72faeba1ebb4518349afc28438789e1d71b7e441", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -549,7 +549,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.2.0-experimental", - "vector": "0.2.5-experimental", + "vector": "0.2.6-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.1-experimental", "recorder-loop-fix": "0.1.0-experimental", diff --git a/src/engine/assets/requested-packages.json b/src/engine/assets/requested-packages.json index dc9a4a318..da58ce22e 100644 --- a/src/engine/assets/requested-packages.json +++ b/src/engine/assets/requested-packages.json @@ -1,7 +1,7 @@ { "schema": 1, "revision": "b8deefc88b2c3e5f3c6158e364eb741df1924e1d", - "sourceCommit": "b18d1776b0d982081c2c69ef5796154fff0efbf9", + "sourceCommit": "72faeba1ebb4518349afc28438789e1d71b7e441", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -24,7 +24,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.2.0-experimental", - "vector": "0.2.5-experimental", + "vector": "0.2.6-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.1-experimental", "recorder-loop-fix": "0.1.0-experimental", @@ -441,7 +441,7 @@ { "label": "vector", "moduleId": "vector", - "version": "0.2.5-experimental", + "version": "0.2.6-experimental", "key": "VECTOR", "author": "repeat98", "nativeAuthor": "repeat98", @@ -450,37 +450,37 @@ "caveAddress": null, "source": "modules/vector/control.s", "sources": { - "modules/vector/control.s": "c4f829e437ffbde1275c00827031b694a86011013d37269077e4696818323471", + "modules/vector/control.s": "1939a627870464126d138522173d0465d1abc790cdb4ad4bc29a15501484faf5", "modules/vector/manifest.py": "4d921f24256038797a99671534885b0bb9a27eaa79261b11136cf0a95a75af21" }, - "bytes": 23508, - "code": "7f454c4601020100000000000000000000010004000000010000000000000000000059f4000000260034000000000028000c000b4fefffe048d73c3c4ab900000000670e202f0024b0b900000000670000da41f900000000226f002493c81031880010c0b1fc0000000066f24bf900000000428243f90000000049f90000000045f900000000223c00000000265d91c810338800670c158088005288ab43b68866eed1ca4218b28866fa201c26004243484378182a00e8ad2800e08c13400003ab4012851344000213430001b082656a203c00000000781826002a0042434843e8ad2800e08c1340003358891345002c1344002e52825c8a5c81700c1343002db082668877fc5555202f0024283c5555555523c400000000a3790000000023c30000000023c000000000203c000000004cd73c3c4fef00204e75203c00000000781826002a0042434843e8ad2800e08c1340003358891345002c1344002e52825c8a5c81700c1343002db0826600ff1e60924feffc38720f48d77cfc206f03d071902f40003eb2806406740f2f42003e7010206f03d077a800012f43003ab083640672102f41003a700b206f03d075a800022f42004ab0826406720b2f41004aa940206f03d075a800032f420042b0826404a96f0042206f03d0707e73a800042f410046b0816406727e2f410046707f206f03d075a800052f42004eb0826406727f2f41004e700c206f03d075a800062f420032b0826406720c2f4100327218206f03d01028000875a800072f4200361f40005fb282640674182f420036206f03d0226f0036282f03d41028000943e9fff42f4900524a0067107240b2846500042e7180b08465000408206f03cc47ef02c84def03c8116f03d701002f480060224b50c0421011400003114000021140000122d8bdc966ea2a2f003e720b243c9e3779b942862e3c7feb352de3ad45ef00c849ef01c8260a2c452a2f03dc2205b581200142404840b3804c0708007e0f2200eea9b380223c846ca68b4c0108002e0042474847b187a740c0867fc74a80677ade8e2887204320062228fffc4bef03c843f51c00bea9fe00640a2081538059884a8066e441f70c002a4606829e3779b9528d588c5883214600c8bbc4675e22052e3c7feb352db5812c0d200142404840b3804c0708007e0f2200eea9b380223c846ca68b4c0108002e0042474847b187a740c0867fc74a80668628874a866684428041f70c002a4606829e3779b9528d588c5883214600c8bbc466a2300dc0ef003c5080e888671671c043f20c00201a41f70c007001114002c8b5c966f0720c760c202f004a5e804c41000273fc00fe92af004e7ffc00fe226f0052780c700c90af004a2f42005ac2ef03da286f0052d0824c4300024c471001307c001893ef003291ef004a98af0036a340e5a81f410059d9ef003242af002e2c492f4d00522f46003a2f40004e2a6f002e52af002e4a1367000144223c85ebca6b42832c2f002e428543f90000000070f42e2f03dc4c016800246f00422f4b003675f1aa00327c0064bf867e0f0a86b5297a4d220642414841bd812c3c7feb352d4c0618002c01eeaebd812c3c846ca68b4c0618002c0142464846b3862f46003222007c0cd2884c4610070f02672ab08e6c0001542204d2804a816d00013cb3c16f00013e2600528022417c0c2200d2884c4610070f0266d65280720db28066c02c2f0032266f00364a8567162006e0884c45000143f71c00262900640683fffffff4700fc086b0af003e642c7030c0864a80660ac4af004e4a826600015e202f004a0806000667060680fffffff4b08e6d06b9c06d0226007018a7422206e0a9c7fc00054c421000068300000040174300015480c0ef0048e48817400002200dc0824a80670000d80286003000004a86670000cc102f005917400003588bbbef003a6600fea82a6f00524aaf03d4675c71af005f763fb680650000b02c2f03d42206246f03cc2806206f03d053844c4600021628000a71c6206f00602a0643f20c009282240d2c0152814c4560004a0367062c049c8020064c42000647ef03c845f36c0020eaff00b3c866da4cd77cfca3404fef03c84e754481b3c16e00fec652806000fe9cb08c6e1045f75c002640528547eb000c254b00642204d2804a816d18b3c16f00feb222412600720d5280b2806600fe6c6000fea8448160e4102f03db174000036000ff342c2f03d4703f206f03d02206246f03cc28064c4600021628000a71c6206f006053842a06928243f20c00240d6000ff4e202f005a6000fea2206f03cc280047ef02c84def03c8116f03d701002f480060224b6000fbf671807840b0846400fbd460d64fefffd448d74c044242203946c82456227c20300c0c2f4800102040d1fc0008ed8042001239100b14cf3f420028243c0b0b00012f420020a7421f40002a302f00322f490024c28275fc18b2c0fc001e4c021800d1c173b0083e53814a81670001f64def001793c922090681000001e9d280a542b489641e1cb0180052897209b289671e22090681000001e9528ed280a542b48965e245f1083f52891cf0a80060c6102f0017720fa942c2807180e88830401f410020b4806500017e3008122f001874101f400023701fc0813040b4806500013c3408102f0019ea891f420021a342c282740fc4801f41002a12022042740bb488650001027180e8881f410022720c3040b280650000d6122f001a340871811f420026747eb480650000b0102f001b1f4100244a006d00008c122f001c1f40002574187181b480656871af001d1f410027723fb2806546122f001ee188758120427440b4886528100147ef00203f400028206f0010200820d320ef002430ef00284cd74c0410af002a4fef002c4e75724047ef002010013f40002860d4122f001e703fe188758120427440b48864b860de721871af001d1f410027723fb280649660da707f122f001c74181f4000257181b4806400ff7460d8727e102f001b1f4100244a006c00ff5260d8307c000c122f001a340871811f420026747eb4806400ff2a60d4720b7180e88830401f410022720cb2806400ff0060d0307c0010102f0019ea8934081f420021a342c282740fc4801f41002a12022042740bb4886400fec460c0307c0004122f0018741030081f400023701fc0813040b4806400fe8260b847ef002093c9244b22090681000001e94df1083fd280a542b489651a528914f0e80022090681000001e94df1083fd280a542b48964e614b018005289ad41b2896700fecc528a60c0203946c824560680c00000002f020c8007efffff624a327c0022723ca742207946c82456d1fc0008ed801039100b14cfc08275fc18b24c020800a342d1c071b09800d1c1528906810000001eb480650871907453b480670e0c810000012c66bc241f42804e7571a800017432b48066e871a8000253804a80670a71a8000255804a8066d4241fa3404e754feffff42f0e2f0271b9100b14cc2c6f00242f0041ef000d4ebafcbe588fad40b08e675cab42200eb48e6402538071b7080920402f2f00302f2f003070fec0af003043f90000000073b1e8002f002001b1c164022008c0fc007f4c4100002f002f2f00302f2f00302f2f00304eb9400479b44fef001c241f2c5f4fef000c4e751039100b14cc227946c82456a7421239100b14cfd3fc0008ed807180c282c0fc001e204071fc18b241e801f14c001800d3c110318800727fc28020416000ff76518f2f02740b202f00182200206f00105c81226f00142f6f002000042f6f00240008b4816406241f508f4e752f6f000800242f6f000400202f41001c2f4000182f4900142f480010241f508f6000fef2598f2f02740b202f0014222f000c206f0010226f001c2f6f00200004b4806406241f588f4e752f6f000400202f49001c2f4000182f4000142f4800102f41000c241f588f6000feaa4fefffe448d7401c242f002441ef001171b9100b14cc2f004ebafb66588fad40b082676cab40b082653c71b728112202a3435581b6816500009255824a826700012aab434c43000141f900000000226f002020701c00101812c066fa4cd7401c4fef001c4e7571b72810780bb882660001124a80670000e6226f002041f900000000101812c067d4101812c066f460cc1039100b14cc227946c82456a7421239100b14cf77fc18b2d3fc0008ed80787f7180c282c0fc001e20404c03180041e801f1d3c110318800c0847663b68064587864760a2200a54e4c441001206f0020a74906810000003010c122004c43100124014c43200422040681000000301081206f0020d1ce740a4c42000142030681000000301081206f0020118398004cd7401c4fef001c4e75206f0020a34942817409b48064d02c49760a224122004c431001548924014c43200422040681000000301081206f0020d1ce60aa226f002041f9000000006000ff1a740c4c42000141f900000000226f002020701c006000fed6780ab88266144a806600ff3e226f002041f9000000006000fee851824a826600ff2822000681fffffff44a816d0e20017663b6806500ff186000ff6c206f0020740c94802002a54910fc002da3417409b4806400ff306000ff5c700a2f4000086000fe1c70082f4000086000fe12ad6f00086000fe0a71b9100b14cc4feffff441ef00012f004ebaf976588f4a2f000b671641f900000000226f0010101812c066fa4fef000c4e75226f001041f90000000060e84feffff42f0271b9100b14cc41ef0005ab422f004ebaf93471af000c588f41f9000000004c420001226f001420701c00101812c066fa241f4fef000c4e754feffff42f02740c71b9100b14cc41ef00052f004ebaf8f671af000b588f41f9000000004c420001226f001420701c00101812c066fa241f4fef000c4e754fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf8b471af0025588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf7e471af0023588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf71471af0022588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf64471af0021588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf57471af001e588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf4a471af001d588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d8148006090202f0004727f5280c0814e752f032f02206f0010a942226f000c102800037380b481640270041210e988760f7581b6826402720f808112801028000a6702700112280001eb8876107581b682640272108081740c13400001102800067380b4816402700c12280002e988760b7581b6826402720b8081747e13400002102800047380b4816402707e13400003102800056a02707f134000047618102800077380b6816402701813400005743f102800087380b4816402703f134000067640102800097380b68164027040727fc2af00141340000713410008241f261f4e754fefffd848d75c1c2f2f00342f2f003449ef00272f0c4ebaff16362f003a9dce4fef000cc6fc001e141ca540b08e64000086267c100b14cfa7441013227946c82456d3fc0008ed80121345ee01e9528ed5c3c084c28479fc18b24c0408004c0418002040d1fc100a4ece7009d3c11382a8001182a800b08e66ae1013227946c82456a7421213d3fc0008ed80c082c2824c0408004c04180078022040d1fc100a4eced3c11384383e1184383e4cd75c1c4fef00284e75267c100b14cfa7441013227946c82456d3fc0008ed80121345ee003f528ed5c3c084c28479fc18b24c0408004c0418002040d1fc100a4ece7009d3c11382a8001182a800b08e6600ff2a6000ff782f02720f206f0010a942226f00081010c08112807190e8881200b4806402720413410003721f741010280001c0811200b4806402721013410001a341740f71a80001ea88c0811340000a10280002c082740b1200b4806402720b13410002740c71a80002e8881200b4806402720c13410006747e102800037380b4816402707e13400004102800046a02707f134000057418102800057380b4816402701813400007743f102800067380b4816402703f134000087440102800077380b4816402704013400009727f10280008206f000c241fc28020814e75598f2f0a2f02202f0010222f0014206f00184a80672c4a81672845e8ffff743fb48a651e747fb4af001c65162f4800182f4100142f400010241f245f588f6000ebcc241f4280245f588f4e75222f00044a81675a71fc0919b0af000864502001204106800000004052884a28ffff663eb08866f42041200141e8004806800000005052884a28ffff6624b08866f4204106810000085941e80059719052880c80000000ff6608b28866f0a3404e7542804e754fefffd848d73cfc262f002c4a8367000168202f00300c80000009196300015a4aaf003467000152206f0034723f18280100200453807180b2806500013c4aaf003866122f2f00302f034ebaff4e508f4a806700011a7984246f00344281204a1010a3457580ba826500010eb284650001144a0066000102528158887040b08166de264322432843428547eb005943e9007949ec089aaf41c2852805e68caf48a34291c4d1c37190e2a0c0824a1267000132142a000116824a1267000120142a00021742000d4a126700010c142a00031742000fa342e3aa12104a12670000ee828210814a8066044a12673e420042143a7c000f42819284d2839bc4307c004f194000012002468091c41e353800ce801b8738002a411e2d001fce801b47001f12303800c08111803800204b4281101846804a0056c0710044808280b1c966ee307c001791c4d1c310104a1266784a816774848010825285588a47eb0020548c43e900207040b0856600ff2ca3404cd73cfc4fef00284e754cd73cfc42804fef00284e754a006700fef0102800017a787580598071805982ba8065dcab454c4528004a8066d275a800027a7eba8265be4a2800036db8528158887040b0816600fea06000febe4682c48060882e024687c2876000ff0e50c26000fef650c26000fee250c26000fed02f02202f000caf41206f0008b280651c73b00822a342b4816512721e74534c01080041f0083c7190b4806706241f42804e7571a800017232b28066f071a8000253804a80671410280002a541241fb3804a0057c0710044804e75241fa3404e754fefffc8203946c824560680c000000048d744040c8007efffff630c42804cd744044fef00384e75207946c82456a7411039100b14cf75fc18b22f2f003cd1fc0008ed80c0814c020800487008004ebaff50508f4a8067c61039100b14d0740f73802f410018b48165b2322f003e227946c82456488041f9000000002f49001c1439100b14cf246f001cc2fc091a1f4200272c413200c2fc8ed843f618004df298002f4900209dc81030e80010c0b1fc0000000066f24aaf0040670001f871fc8e55206f001cd1c14a3008006700020e1039000000007180743f22005381b4816500ff3a2f2f003c41ef00312f4000104ebaed48342f0042588f207946c82456d1fc0008ed801239100b14cfc4fc001e202f000c2242a742c28275fc18b243e901f14c021800747fd1c112309800c4812f4200284aaf0044670c2202747f5281c4812f420028342f003e207946c82456d1fc0008ed801239100b14cfc4fc00182242a742c28275fc18b243e901234c021800747fd1c173b09800b4816500fe9e2f2f00282f012f00486f00394879000000004ebae77e2f2f00544879000000004878091a4879000000004ebafc0c4fef00244a806700fe68226f001cb3f946c824566600fe5873b9100b14d0b2af00186600fe4a73af002775b9100b14cfb4816600fe3a226f002093fc0000000041f9000000002f49001845f0e800121875922f4a00102f4200147581b4af0014670e1481226f001845e8ffff13928800b1fc0000000066d22f2f0028486f00312f2f00442f4000184ebaf8f2a742122f00332c7946c82456ddfc000950484fef000cc28214163242a342e3aa204222022409828224081c811239100b145e828213c1100b145e207946c82456d1fc0009b332a350a379100f85984eb940027e004eb9400339d82f2f003c4eb94009da20588f4cd74404a37946c7c72c202f000c4fef00384e754878091a4879000000002f4100144ebafa8e508f222f000c4a806600fdee4cd744044fef00384e7571fc8e53103008006000fdf04e56ffe041eeffea2f0a2f0273b9100b14cc2f012d41ffe04ebaeb38322effe2588f207946c82456d1fc0008ed803d6efff2fffd1d6efff4ffff2d6effeefff92d6effeafff5c2fc001e1039100b14cf2241a74143e901f1c08173fc18b24c010800d1c012309800707fc280ab407581b0ae0008657a43eeffead3ee0008206e000c7391d1c14a886d000082246e0008203c0000000071b20800b1c06c022008b0816740128020022f00486effea2f2effe041faf78e2d48ffe44e9042a7a3672f2effe04ebafc524fef0018206effe44a806744a1674eb94004d948a37946c7c72c588f242effd8246effdc4e5e4e75ad40b0ae00086742222e0008206e000c43f618e97391d1c14a886c804a8167d442001280200260902f02486efff52f2effe04e904fef000ca1674eb94004d948a37946c7c72c588f60aa202e000cd0824a806d3c727fb2806c02707fb08267942f00486effea2f2effe041faf6e62d48ffe44e9042a7a3672f2effe04ebafbaa4fef0018206effe44a806600ff5860984a016700ff6042802f00486effea2f2effe041faf6ae2d48ffe44e9042a7a3672f2effe04ebafb724fef0018206effe44a806600ff206000ff60203946c824560680c00000002f020c8007efffff62084a398000001567064280241f4e751239100b14cc207946c82456a7421039100b14cfd1fc0008ed807381c0822f0173fc18b24c010800487008004ebafaac508f4a8067c42039000000004a8066ba4a3946c7d8d866b44ab9460d173a66ac4ab9460d169457c0241f710044804e754fefff78428148d75cfc242f008c284245ef00289dce28024283264a06840000003c49ec002271b41800a346bc80650c41f648007e537190be80674252814dee001e47eb000cbdfc000000f066d82f02206f009442854e90588f91c80b0366000086528541e8001e45ea000cb1fc000000f066e84cd75cfc4fef00884e7571a800017c32bc8066b471a8000253804a80670a71a8000255804a8066a0a340e3a891c8868043f6883cab47be88642c2c08ad474c47600043f60800700c43e901ecd3c21791880042115288b0886700ff6e43f6883cab47be8865d4d3c2179188004211528860be428147f02800ab44b881651449f21800ab442242d3c11194983c5281b88164ec2c01ad474c47600449f21800528143f34800780c135401ecb88166ca528541e8001e45ea000cb1fc000000f06600ff286000ff3c487a13f82f2f00084ebafebc508f4e75203946c824560680c00000002f020c8007efffff62084a39800000156706241f42804e751239100b14cc207946c82456a7421039100b14cfd1fc0008ed807381c0822f0173fc18b24c010800487008004ebaf8de508f241f4e75203900000000b0b946c82456670442804e751039100b14cfa741c081b0b90000000066ea71b9100b14ccb0b90000000066dc6000ff724fefffec70312f0a2f02226f0020a342206f0024b08956c173014481b4886700008ea340e3a82439000000002f420014c4804a82665e4a886632a340244174fd45f21a00d08a45f90000000020320c0022005381b48165322f4900202f480024241f2240245f4fef00144ed12441a54045f21a0074fdd08a45f90000000020320c0022005381b48164ce241f245f4fef00144e754a8866f24680c0af0014241f245f23c0000000004fef00144e752f4100102f4800082f49000c4ebafeb4222f0010206f0008226f000c4a806700008a103946100b1d08000005667c703eb089677c7431b48966702f4100102f4800082f49000c4ebafcac222f0010206f0008226f000c4a806750a34081b9000000001039100b14cca367a36771802f004ebaf7e04fef000c4a80677048780020203c000000002f004eb94005a2b8a1674eb94004d948a37946c7c72c4fef000c241f245f4fef00144e7542806000fee04a3946c7d8d866f24ab90000000057c0a54183b900000000a1677100448023c0000000004eb94004d948588f241fa37946c7c72c245f4fef00144e7548780020203c000000002f004eb94005a2b8a1674eb94004d948a37946c7c72c4fef000c608e203900000000b0b946c8245667024e751039100b14cfa741c081b0b90000000066ec71b9100b14ccb0b90000000066de4ebafd7e4a8067d6a37900000000a379000000004eba10d6a1674eb94004d948a37946c7c72c588f4e75203900000000b0b946c8245667024e751039100b14cfa741c081b0b90000000066ec71b9100b14ccb0b90000000066de4ebafd244a8067d642b900000000a379000000004eba107ca1674eb94004d948a37946c7c72c588f4e75203946c824560680c00000002f020c8007efffff6232203946c82456a7421239100b14cf06800008ed80206f000c41e8ffdec28275fc18b24c021800af42d08122089280b4816408202f0008241f4e75a342b4af000865f02f012f004ebaf5ce508f4a8067e2ab6f0008202f0008241f4e752f032f024ab90000000067084ebafcd64a806672203946c824560680c00000000c8007efffff6236223946c82456a7431039100b14cf06810008ed803040202f00100680ffffffde2408c48377fc18b24c032800d2829081af42b480640a202f000c241f261f4e75a343b6af000c65ee2f002f014ebaf544508f4a8067e0241fab40261f4e75203946c82456a7421239100b14cf77fc18b220790000000006800008ed8041e80022c2824c031800d081d088b0af00106600ff5c241f203900000000261f4e754fefffc4203946c824560680c000000048d74c0c0c8007efffff62000166af40b0af00446500015c223946c82456206f004091c12c48ddfcfff712802f41002473fc18b2200e4c41000220424a8266000132bdfc000062c762000128222f0044a342246f004043f218227391b48164000178a36f0020222f0044701e4c0018004aaf004866624ab900000000670001062f4100142f4800184ebafb84222f0014206f00184a80670000ec203946c8245606800008ed801439100b14cf3242a7422609c68275fc18b24c023800d083b0af0040660000c0262f0044b6b900000000660000b2a56f00482f2f00442f2f00442f41001c2f4800204ebaf3fa508f222f0014206f00184a80670000e8226f0040203c1001614e90af002441f1183c43f118422209227c100162fe93ef00241190080045e801b0139288005288b28866eea340b0af0048662c73fc18b2200e207c46c8245623d000000000a379000000004c410000222f004423c10000000023c0000000004cd74c0c202f00204fef003c4e754cd74c0ca36f0020202f00204fef003c4e752f2f00442f2f00442f41001c4ebaf352508f222f00144a806700ff5e4203206f0040203c1001614e226f004090af00241183183e1183183d1183183c41f1183c43f118422209227c100162fe93ef00246000ff4877912f4300206000fe86226f0044743248690001487900000000200f06800000003b2f002f4000282f410020246f004c2f48002445f2183c2f4a00344ebaed8614bc0053226f004c222f0020244145ea003f1382183d74021382183e224143e901e9202f00284fef000c2f490028206f00182f4a002c226f0028a542d3c8b488641826405288246f0040740915939800b4886700fe90528060dc246f00402640226f002cd3c85288159b9800200b60c6518f2039460e5e302f0b2f0a4a80671047f900000000b7f9460e5e2c670a4280245f265f508f4e75204041e800242f48000c2f082f40000c4eb94003567c226f000c588f4280246900282f1ba16745eaffe92f0aab672f2f001c2f3c400ba8762f4000204eb940012bd84fef0018202f0008b0b9460e5e4067165f8aa341b2806640245fa37946c7c72c265f508f4e75226f000c2051a167486a00054868fffb486affffa7672f092f4000204eb9400122544fef00185f8aa341202f0008b28067c02f1ba1672f0aab67a3402f2f001c2f3c400ba8762f4000204eb940012bd84fef0018202f0008b0b9460e5e40668a609e4ebaf8384a80670001004ab9460e5e30660000f64ab9460e70e0660000ec207c46c82456a74123d0000000001039100b14cfc28023c10000000071b9100b14cca567ad672f3c460e5e3823c00000000042b90000000042b9000000004eb94007ec604fef000c207946c82456a7411039100b14cf227900000000d1fc0008ed80c08173fc18b24c010800d1c071b098222f002f3c460e5e384eb94007edb041f90000000023c8460e5e28203c0000000023c0460e5e2c42b9460e5e342f3c4006d754a36742a7a167487800404878006e4eb94005829c4fef002023c0460e5e304a80672442a74879000000002f004eb9400570b82f3c400ce0c44eb9400314944fef00106000fe084e754ab9460e5e30670e203c00000000b0b9460e5e2c67024e754eb94006d75442b9000000004eba0a764ef94007893c598f4ab9460e5e30670e203c00000000b0b9460e5e2c6704588f4e754ebaf73e4a8067f42239460e5e40a340b08165e82e814eb94006d7544ebaf7224a8067d823d700000000a379000000004eba0a20a1674eb94004d948a37946c7c72c588f588f4e754feffff4222f0010206f00144ab9460e70e0677e4ab90000000066122f4800142f4100104fef000c4ef94007893c2f4100042e884ebaf6c2222f000420574a8067da4ab9460e70e067d22039000000002f4000084eb9400789e442b9000000004ebafe024ab9460e5e306726203c00000000b0b9460e5e2c66182f2f00082f3c460e5e384eb94007edb04fef00146000fce24fef000c4e75518f222f000c206f00104ab9460e70e067124ab9460e739a660aab40b0b9460e738e67102f4800102f41000c508f4ef94007909c2f4100042e884ebaf5ca222f000420574a8067dc4eb9400789e4508f6000fd7a598f4eb940031f282e804ebaf5a64a80672c4ab90000000066244a3946c7d8d8661c4ab9460d173a66144ab9460d1694660c2f174ebad6e02f400004588f2017588f4e75598f2f02203946c824560680c0000000222f000c0c8007efffff62084a39800000156708241f2001588f4e751039100b14cc207946c82456d1fc0008ed8075801039100b14cf2242a7422f09c08275fc18b24c020800487008002f41000c4ebaee3e508f222f00044a8067b84ab90000000066b0ab40b0b9460d5c3066a62f41000c241f588f6000d64a4feffff4ab402f02222f0014206f0018b0816408241f4fef000c4e75203946c824560680c00000000c8007efffff62e44a398000001566dc1439100b14cc227946c82456d3fc0008ed801039100b14cf75822f42000ca742c08275fc18b22f2f000c4c020800487108002f4100102f48000c4ebaeda0508f222f00084a8067944ab900000000668c4a3946c7d8d866844ab9460d173a6600ff7c4ab9460d16946600ff724ab9000000006600ff682f6f000400182f410014241f4fef000c6000f09c2f02ab40b0af00086406241f42804e75203946c824560680c00000000c8007efffff62e64a398000001566de1239100b14cc207946c82456a7421039100b14cfd1fc0008ed807381c0822f0173fc18b24c010800487008004ebaecf8508f4a8067a84ab90000000066a02f2f000c206f000c486800064ebaf022508f241fa3404e754fefffd448d75c0c4ab90000000067104ab9460e70e0660003b242b9000000004ab900000000660002fa2479800065b8a340b08a6700031c47faddce23ca00000000203946c824560680c00000000c8007efffff620000b0387c003e9dce45faec70207946c82456a7431039100b14cf73fc18b22f0ed1fc0008ed80c0834c010800487008004e92508f4a80672a207946c82456d1fc0008ed801039100b14cf75fc18b2c083a3434c020800d1c071b0c800b680670000ba528e49ec001e7008b08e669e73b9100b14ccaf42b481650002ce207946c82456a7431039100b14cf75fc18b2d1fc0008ed80c0834c020800d1c04a301822660002a6203c400d301c23c0400d5f4c4e93247946c8245673b9100b14cf77b9100b14cc2c402679000000002039000000002843b5f900000000670000e84a8b67204a8067000272203c000000004ab900000000670002c64cd75c0c4fef002c4e754a8067000252203c000000004ab90000000066e2600002a42f0e41ef0025a7422f4000204ebad9ec77fc18b2207946c82456d1fc0008ed801239100b14cf43ec01b349ec001ec282747f4c031800d1c112309800c4812e82486f00252f0e4ebae6a24fef000c1639100b14cf202f001c227946c82456d3fc0009504812113043a7432408c483e5a8828012811239100b145e808113c0100b145e207946c82456d1fc0009b332a350a379100f85984eb940027e00528e7008b08e6600fe4e6000feacb2b9000000006600ff12b6b9000000006600ff084a8b670002144a80674841f9000000004a8e670a4ab900000000670002184ab9000000006600fefa2f082f41001c4eb94003146c42b90000000023ca0000000023cc00000000222f001c588f23c1000000002079460d165c4a8e6700fec44a886700febe4a906600feb8223c00000000207c46c7dd7643f90000000020100c80000000006704238088005888b1fc46c7dd8266e8207c46c7deae43f9000000002010b0816704238088005888b1fc46c7deba66ec4ebaeeee23c0000000004a80670000f841f90000000042902f084eb940031494a167a379000000004eb94004d948a37946c7c72c508f4cd75c0c4fef002c4e754ebaf0d64a80670000b44ab9460e5e306600fcf64ab9460e70e06600fcec4ebaf8242479800065b8a340b08a6600fce8a34147fadab2b2b9000000006700fcdc4e934a806700fcd499cc4dfae9c242a7740842a72f0c4e96528c4fef000cb48c6700fcb842a7740842a72f0c4e96528c4fef000cb48c66d66000fca0203c400d31ae23c0400d5f4c6000fd5a42b90000000023ca0000000023c10000000023cc000000006000feb84ebaf02e4a806600fc4e42b9000000006000fc4442b9000000006000fc4441f90000000042902f084eb940031494a167a379000000004eb94004d948a37946c7c72c508f6000ff082f002f41001c4eb94003146c42b90000000042b90000000023ca00000000222f001c588f23cc0000000023c1000000006000fe3c4a806700fe3641f9000000004a8e6700fdf64ab9000000006600fdec2f4100182f48001c4ebaed66222f0018206f001cb08b6600fdd223ca000000004cd75c0c4fef002c4e75202f00040c800000000567044efa02fe41fa023020084e75400b3eac400b3e98400b7c67400b5413400b7a63000000004fefffec48ef030200082e802f4800044ebaf1d64cef030200084fef00144e754fefffe048ef0307000c2409d48006820008ed802e822f41000474000c8400000005660274012f4200084ebaf2d40c8400000005660228004cef0307000c4fef00204efa028448794005a61c600648794005a8562239460d5c304fefffe048ef030d000c2609d68006830008ed802e832f42000476000c8100000005660276012f43000826014ebaf2780c83000000056702200322004cef030d000c4fef00204e7516102f0071036100ff362600201f79034879400bb7044ef9400585e67110610000582f004879460e73864ef940078890610000124ef94003d722610000084ef94004c3746100fef841fafedc22300c004e7571104fef00186100fee44ef94003c986711061000012b48066064ef9400786ce4ef9400786fc4fefffec48ef030200082e802f4800044ebaf10e4cef030200084fef00144e752f082f01207946c8245673b9100b14cfc2fc18b2d1c173b9100b14ccd1fc0008eda271b01800221f205f4e750c820000000566344fefffe448ef0303000c2e8b2f4300044ebaf9222f4000084cef0303000c4aaf00084fef001c67064ef94003a6246100ff9c24004efa01300c8600000005662a4fefffec48ef030300042eaf005c4ebaf7982f40005c4cef030300044fef00142f006100ff682c00201f4efa01084eb94005213c4eb94007e9404ebaf93a4ef940052228564543544f5200004878ffff4878ffff4ebaf70e4ef94004e4d04feffff048d703034ebaecae4a80670c4cd703034fef00104efaf4644cd703034fef00102f0a4ab9460e70e04ef9400791ec4feffff048d703034ebaf3504a80670a4cd703034fef00104e754cd703034fef00104fefffe848d73c0c4ef94006d78c7c010c800000000566224feffff048d703034ebaec424a80670a4cd703034fef0010600c4cd703034fef0010bc8065064ef940077b624ef940077b704efaec084fefffa048d77cfc4ef9400023200000000000004ef9400334de0000000000004ef94007982200000000000000004ef94003a53600000000000000004ef94003cda000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffff0000000000000000000000000000000000000000ffffffffffffffff31000000000000000000000000000000000000000000000000003e00000000000000000000000000000000000000000000000000ff00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000002000000000000000000000000000000000000000000030000000000000000000000000000000000000000000400000000000000000000000000000000000000000005000000000000000000000000000000000000000000ff000000000000000000000000000000000000000000465744004f46460052455600564543544f522047454e455241544544004e4f204348414e474500ab204d414348494e453a564543544f5220bb004300432300440044230045004600462300470047230041004123004200303031205354415449430030303220464c455800434852004d494e004d414a00444f520050454e5400545950450044454e5300524f4f54005343414c00474154450041434e540053454544005350414e004f46535400524f5400525054004449520000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000fff05ad0ab506ad04a900000000000000000000000000000000000000000f100b047e7f7f0c183f40010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b0b000120300c0c00000000000000000000000000000000000000000000000100000000000000000400fff10000000000000000000000000300000100000000000000000000000003000003000000000000000000000000030000050000000a000000000000013e02000001000000190000001c00000004010000030000002800000018000000040100000300000038000000200000019201000003000000410000003000000030010000070000004b00000a9e00000048020000010000005c00000a4e00000050020000010000006d0000013e000005280200000100000084000000700000000a010000070000013d000006660000029e020000010000008b000009040000008a02000001000000960000098e000000c00200000100000000000000000000000003000006000000b300000ae6000001dc02000001000000c2000000000000003001000007000000ca00000cc20000000a02000001000000d400000ccc0000000a02000001000000dd00000cd60000000802000001000000e600000cde0000003e02000001000000f000000d1c0000003e02000001000000f900000d5a0000003e020000010000010200000d98000000d0020000010000010b00000e68000000d0020000010000011400000f38000000d0020000010000011d00001008000000d00200000100000126000010d8000000d0020000010000012f000011a8000000d00200000100000138000013560000010402000001000001460000182c000002e80200000100000155000002b30000091a01000003000003e2000001b200000101010000030000015d00001b14000001ba020000010000016c00001cce00000084020000010000017b00000bf200000004010000030000018500001ef60000003602000001000001920000001400000004010000030000019c000000100000000401000003000001a60000000c0000000401000003000001b100000bce0000000401000003000001b600000bd60000001801000003000001bc000020ec0000005a02000001000001c6000000000000000401000003000001d2000000040000000401000003000001de000021460000005a02000001000001ea000000080000000401000003000001f7000000680000000801000007000002030000006000000008010000070000020e00000bd200000004010000030000021d00000bee00000004010000030000022700000c0200000004010000030000022e00000bfe00000004010000030000023900000bfa00000004010000030000024400000bf60000000401000003000000000000000000000000030000070000025046c82456000000000000fff1000002590008ed80000000000000fff10000026200003294000000000000000100000271000031ca00000000000000010000027900002fb8000000000000000100000285000032a00000000000000001000002940000302c0000000000000001000002a2000030f20000000000000001000002b6000030be0000000000000001000002c3000031120000000000000001000002d0000032ac0000000000000001000002df000032ba0000000000000001000002ee00000c400000000000000003000002f600000c8e0000000000000003000002fe0000320000000000000000010000030a00003230000000000000000100000316000032720000000000000001000003230000326a0000000000000001000003330000327600000000000000010000033f0000327c00000000000000010000034c0000009a0000003011000007000003610000008e0000000c11000007000003740000007a000000141100000700000387000012780000000c120000010000039800001284000000d212000001000003a40000145a000000d812000001000003b2000015320000004c12000001000003c20000157e0000006612000001000003d5000015e4000001e812000001000003e9000017cc0000006012000001000003fd00001d520000013a120000010000041200001e8c0000001012000001000004230000328600000000100000010000043500001e9c0000005a120000010000044100001f2c000001c012000001000004480000320800000000100000010000045b000021a000000072120000010000046300002212000000c61200000100000473000022d800000298120000010000047d000000ca0000000b110000070000048d00002570000000f212000001000004a1000026620000010a12000001000004b50000276c0000002e12000001000004c90000279a0000006412000001000004de000027fe0000009812000001000004eb000028960000005412000001000004f9000028ea0000004412000001000005060000292e0000008a1200000100000514000029b8000000c2120000010000051c00000c0800000000100000030000052500002a7a00000082120000010000053300002afc0000048c120000010000053e00000c2400000000100000030000054c00002f8800000000100000010000055c00002fa000000000100000010000056900002fd80000000010000001000005780000301e00000000100000010000058600003026000000001000000100000595000030aa00000000100000010000059f000030b40000000010000001000005a90000307a0000000010000001000005b7000030960000000010000001000005c7000030cc0000000010000001000005d4000030dc0000000010000001000005e30000313e0000000010000001000005f20000317e000000001000000100000601000031b400000000100000010000060e000031d200000000100000010000061a000031e4000000001000000100000627000032160000000010000001000006340000324600000000100000010000064200003282000000001000000100766563746f722e630067656e657261746f725f70616765007372635f706167655f7265616479007372635f706167655f736f75726365007372635f7061676500666f726d6174732e320067656e657261746f725f776964676574007365636f6e646172795f77696467657400766563746f725f67656e65726174652e706172742e30007363616c657300616e795f766563746f7200647261775f67656e657261746f725f7769646765742e706172742e3000666f726d61745f636f6e74726f6c00726f6f74732e3100666f726d61745f313000666f726d61745f3800666f726d61745f3600666f726d61745f313100666f726d61745f3300666f726d61745f3200666f726d61745f3900666f726d61745f3700666f726d61745f3500666f726d61745f3400666f726d61745f3100666f726d61745f3000736176655f73657474696e67730067656e65726174655f747261636b0073746167696e67006368616e67655f636f6e74726f6c0067656e657261746f725f7669657700656469745f7669657700706f6f6c5f636f6e7465787400706f6f6c5f62616e6b00706f6f6c5f7061727400706f6f6c5f747261636b006d696e6500736176656400706f6f6c5f666c657800706f6f6c5f62726f77736500706f6f6c5f64697265637400706f6f6c5f73746174696300706f6f6c5f70656e64696e6700706f6f6c5f6c6162656c730068616e646c6572732e33006c6173745f7472616e73706f7274006c617965725f67656e006163746976650073686f776e5f62616e6b0073686f776e5f706172740073686f776e5f747261636b0042414e4b5f50545200504152545f4f46460073745f6e616d655f7265706c61790073745f6e616d650073745f726f775f747970650073745f6d61696e5f7265706c61790073745f7372635f636f6d6d6f6e0073745f63686f6f7365725f726f775f747970650073745f6e616d655f7069636b0073745f706f6f6c5f6b696e640073745f656469745f7265706c61790073745f647261775f7265706c61790073745f6b6579730073745f656e6373002e706f6f6c5f73746f636b002e6c6973745f73746f636b002e7469746c655f73746f636b002e7469746c655f756e7369676e6564002e7469746c655f706f6f6c002e7469746c655f706c61696e00766563746f725f636f6e74726f6c5f6e616d657300766563746f725f636f6e74726f6c5f6d617800766563746f725f7363616c655f6e616d657300766563746f725f6e6578745f7365656400766563746f725f7061636b00766563746f725f756e7061636b00766563746f725f67656e657261746500766563746f725f747261636b5f656d70747900766563746f725f77726974655f70687261736500766563746f725f7369676e65645f747261636b00766563746f725f76616c69646174655f706172740073745f76616c69646174655f706172740073745f73746f636b5f76616c69646174650073745f73656c65637465640073745f6b65790073745f73746f636b5f706f6f6c5f6f70656e0073745f747970650073745f63686f6f7365725f747970650073745f61737369676e00766563746f725f64656661756c74730073745f706f6f6c5f63686f6963655f647261770073745f706f6f6c5f63686f6963655f6f70656e0073745f706f6f6c5f63686f6963655f6c6566740073745f706f6f6c5f63686f6963655f72696768740073745f706f6f6c5f6c6566740073745f706f6f6c5f72696768740073745f647261775f706167650073745f73657475705f706167650073745f6b6e6f620073745f6c617965720073745f73657475705f6b6e6f620073745f75695f7469636b0073745f656469745f6c617965720073745f6d616368696e655f6e616d650073745f7372635f6e616d65730073745f6d61696e5f636f6d6d69740073745f7372635f636f6d6d69740073745f7372635f636f6d6d6974320073745f6e616d655f610073745f6e616d655f620073745f73657475705f6f70656e0073745f63686f6f7365725f6f70656e0073745f73657475705f726f770073745f63686f6f7365725f726f770073745f73657475705f65646974360073745f73657475705f64726177360073745f7469636b5f686f6f6b0073745f7372635f647261770073745f706f6f6c5f6f70656e0073745f6c6973745f647261770073745f706f6f6c5f7469746c650073745f76616c69646174650000000000001600000301000000180000003200000301000001b200000054000003010000003c0000009e0000020100000a9e000000e000000301000001ae000000e6000003010000001c000000ec00000301000001aa000000f20000030100000018000000f80000030100000020000001080000020100000a4e000018dc0000030100000bcd00001a1600000301effea16600001a4c0000030100000bcd00001ba600003a010000008e00001f14000003010000001000001f22000003010000000c00001fd00000030100000bce000020380000030100000bce0000205c000011010000000c0000209e0000030100000bce000020aa0000030100000bf2000020cc000011010000001d00002108000003010000001000002116000003010000000c0000212600000301000000000000212c000003010000000400002162000003010000001000002170000003010000000c000021800000030100000000000021860000030100000004000023b4000003010000000c0000242e000003010000001400002434000003010000000800002442000003010000000c0000244800000301000000100000268a0000030100000014000026980000030100000010000026ae000003010000000c000026b40000030100000004000026ba00000301000000080000270e00003a01000000680000277600003a01000000680000278c0000030100000004000027a600003a0100000068000027dc0000030100000000000027e200000301000000040000285a00000301000000040000286c00003a010000006800002b18000003010000000400002b3a0000030100000bd200002c280000030100000bfe00002c3c0000030100000c0800002c5c0000030100000c2400002d180000030100000bfa00002d220000030100000bf600002d600000030100000c0200002d660000030100000bfe00002d6c0000030100000bf600002d780000030100000bfa00002d960000020100001f2c00002daa0000020100001f2c00002de40000030100000bee00002e020000030100000c0200002e560000030100000bd200002eac0000030100000bf200002eb20000030100000bfe00002eb80000030100000bfa00002ebe0000030100000bf600002ed2000003010000000400002edc000003010000000800002ef80000030100000c0200002f1c0000030100000c0200002f220000030100000bf200002f280000030100000bfe00002f340000030100000bf600002f3a0000030100000bfa00002f7a0000030100000bfe00002fb400000201000031ca0000000a000003010000001c0000002000000301000000200000003a00003a010000009a0000004200000301000000ea0000004800003a01000000300000004e00000301000000360000040400003a0100000070000009d200003a010000008e00000b3000003a010000007a00000b64000011010000000800000c48000011010000000000000c5800003a010000000000000c7a000011010000000400000cfc000011010000000800000d16000011010000000000000d3c00003a010000007a00000d7a00003a0100000000000018a400000301000002b3000018fe0000030100000303000019ba00000301000001b2000019c800000301000001b2000019d200000301000002b300001a1c00000301000002b300001ae600000301000002b300001d2a0000030100000bf200001ef8000003010000001400001f540000030100000bce00001f740000030100000bd600001fa60000030100000bd6000020940000030100000bf2000020ee0000030100000014000021480000030100000014000022180000030100000004000022ac000003010000000c000022d00000030100000000000023600000030100000004000024d600003a01000000ca0000258200003a0100000068000026d8000003010000000c0000270200003a01000000600000274a00001101000000270000281400000301000000040000284a0000030100000000000028fe0000030100000bf20000299c0000030100000bf200002a3a0000030100000bf200002a5e0000030100000c0800002ade0000030100000bf200002b06000003010000000400002b1e000003010000000800002c1a0000030100000bee00002c200000030100000c0200002c420000030100000bce00002c620000030100000bce00002d360000030100000c0800002d400000030100000c0800002d4a0000030100000bce00002da200000301b9382e6000002dc600000301b9382d3400002df00000030100000c0800002ee60000030100000c2400002f4a0000030100000c2400002f560000030100000c2400000c0c0000030100000c4000000c100000030100000c8e00000c280000030100000c4000000c420000020100001f2c00000c460000020100001f2c00000c4a0000020100001f2c00000c5c0000020100001f2c00000c600000020100001f2c00000c640000020100001f2c00000c9000000201000029b800000ca600000201000029b800000cbc00000201000029b800000cd200000201000029b800000ce800000201000029b800000cfe00000201000029b800000000000011010000003a00000004000011010000003c00000008000011010000003f0000000c00001101000000410000001000001101000000440000001400001101000000460000001800001101000000480000001c000011010000004b00000020000011010000004d0000002400001101000000500000002800001101000000520000002c00001101000000550000003000000201000011a80000003400000201000010d8000000380000020100000d5a0000003c0000020100000d1c000000400000020100001008000000440000020100000f38000000480000020100000cd60000004c0000020100000e68000000500000020100000ccc000000540000020100000d98000000580000020100000cc20000005c0000020100000cde0000006000000201000021460000006400000201000020ec0000006800001101000000570000006c00001101000000620000007a000011010000006b0000007e000011010000006f0000008200001101000000730000008600001101000000770000008a000011010000007b0000009a00001101000000800000009e0000110100000085000000a2000011010000008a000000a6000011010000008f000000aa0000110100000094000000ae0000110100000099000000b2000011010000009e000000b600001101000000a3000000ba00001101000000a8000000be00001101000000ad000000c200001101000000b1000000c600001101000000b5002e73796d746162002e737472746162002e7368737472746162002e72656c612e74657874002e72656c612e64617461002e627373002e726f646174612e737472312e31002e72656c612e726f64617461000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000001000000060000000000000034000032c8000000000000000000000004000000000000001b000000040000004000000000000050340000069c0000000900000001000000040000000c0000002b000000010000000300000000000032fc00000d280000000000000000000000040000000000000026000000040000004000000000000056d0000000b40000000900000003000000040000000c000000310000000800000003000000000000402400000000000000000000000000000004000000000000003600000001000000320000000000004024000000b9000000000000000000000001000000010000004a000000010000000200000000000040de000000d50000000000000000000000020000000000000045000000040000004000000000000057840000021c0000000900000007000000040000000c00000001000000020000000000000000000041b4000008300000000a0000004f000000040000001000000009000000030000000000000000000049e40000064e0000000000000000000000010000000000000011000000030000000000000000000059a00000005200000000000000000000000100000000", - "sha256": "5b43ff757c7726bce8a182ad1b2e8a4d752ff4a2eb969c50f1b5335b6438d11a", + "bytes": 23500, + "code": "7f454c4601020100000000000000000000010004000000010000000000000000000059ec000000260034000000000028000c000b4fefffe048d73c3c4ab900000000670e202f0024b0b900000000670000da41f900000000226f002493c81031880010c0b1fc0000000066f24bf900000000428243f90000000049f90000000045f900000000223c00000000265d91c810338800670c158088005288ab43b68866eed1ca4218b28866fa201c26004243484378182a00e8ad2800e08c13400003ab4012851344000213430001b082656a203c00000000781826002a0042434843e8ad2800e08c1340003358891345002c1344002e52825c8a5c81700c1343002db082668877fc5555202f0024283c5555555523c400000000a3790000000023c30000000023c000000000203c000000004cd73c3c4fef00204e75203c00000000781826002a0042434843e8ad2800e08c1340003358891345002c1344002e52825c8a5c81700c1343002db0826600ff1e60924feffc38720f48d77cfc206f03d071902f40003eb2806406740f2f42003e7010206f03d077a800012f43003ab083640672102f41003a700b206f03d075a800022f42004ab0826406720b2f41004aa940206f03d075a800032f420042b0826404a96f0042206f03d0707e73a800042f410046b0816406727e2f410046707f206f03d075a800052f42004eb0826406727f2f41004e700c206f03d075a800062f420032b0826406720c2f4100327218206f03d01028000875a800072f4200361f40005fb282640674182f420036206f03d0226f0036282f03d41028000943e9fff42f4900524a0067107240b2846500042e7180b08465000408206f03cc47ef02c84def03c8116f03d701002f480060224b50c0421011400003114000021140000122d8bdc966ea2a2f003e720b243c9e3779b942862e3c7feb352de3ad45ef00c849ef01c8260a2c452a2f03dc2205b581200142404840b3804c0708007e0f2200eea9b380223c846ca68b4c0108002e0042474847b187a740c0867fc74a80677ade8e2887204320062228fffc4bef03c843f51c00bea9fe00640a2081538059884a8066e441f70c002a4606829e3779b9528d588c5883214600c8bbc4675e22052e3c7feb352db5812c0d200142404840b3804c0708007e0f2200eea9b380223c846ca68b4c0108002e0042474847b187a740c0867fc74a80668628874a866684428041f70c002a4606829e3779b9528d588c5883214600c8bbc466a2300dc0ef003c5080e888671671c043f20c00201a41f70c007001114002c8b5c966f0720c760c202f004a5e804c41000273fc00fe92af004e7ffc00fe226f0052780c700c90af004a2f42005ac2ef03da286f0052d0824c4300024c471001307c001893ef003291ef004a98af0036a340e5a81f410059d9ef003242af002e2c492f4d00522f46003a2f40004e2a6f002e52af002e4a1367000144223c85ebca6b42832c2f002e428543f90000000070f42e2f03dc4c016800246f00422f4b003675f1aa00327c0064bf867e0f0a86b5297a4d220642414841bd812c3c7feb352d4c0618002c01eeaebd812c3c846ca68b4c0618002c0142464846b3862f46003222007c0cd2884c4610070f02672ab08e6c0001542204d2804a816d00013cb3c16f00013e2600528022417c0c2200d2884c4610070f0266d65280720db28066c02c2f0032266f00364a8567162006e0884c45000143f71c00262900640683fffffff4700fc086b0af003e642c7030c0864a80660ac4af004e4a826600015e202f004a0806000667060680fffffff4b08e6d06b9c06d0226007018a7422206e0a9c7fc00054c421000068300000040174300015480c0ef0048e48817400002200dc0824a80670000d80286003000004a86670000cc102f005917400003588bbbef003a6600fea82a6f00524aaf03d4675c71af005f763fb680650000b02c2f03d42206246f03cc2806206f03d053844c4600021628000a71c6206f00602a0643f20c009282240d2c0152814c4560004a0367062c049c8020064c42000647ef03c845f36c0020eaff00b3c866da4cd77cfca3404fef03c84e754481b3c16e00fec652806000fe9cb08c6e1045f75c002640528547eb000c254b00642204d2804a816d18b3c16f00feb222412600720d5280b2806600fe6c6000fea8448160e4102f03db174000036000ff342c2f03d4703f206f03d02206246f03cc28064c4600021628000a71c6206f006053842a06928243f20c00240d6000ff4e202f005a6000fea2206f03cc280047ef02c84def03c8116f03d701002f480060224b6000fbf671807840b0846400fbd460d64fefffd448d74c044242203946c82456227c20300c0c2f4800102040d1fc0008ed8042001239100b14cf3f420028243c0b0b00012f420020a7421f40002a302f00322f490024c28275fc18b2c0fc001e4c021800d1c173b0083e53814a81670001f64def001793c922090681000001e9d280a542b489641e1cb0180052897209b289671e22090681000001e9528ed280a542b48965e245f1083f52891cf0a80060c6102f0017720fa942c2807180e88830401f410020b4806500017e3008122f001874101f400023701fc0813040b4806500013c3408102f0019ea891f420021a342c282740fc4801f41002a12022042740bb488650001027180e8881f410022720c3040b280650000d6122f001a340871811f420026747eb480650000b0102f001b1f4100244a006d00008c122f001c1f40002574187181b480656871af001d1f410027723fb2806546122f001ee188758120427440b4886528100147ef00203f400028206f0010200820d320ef002430ef00284cd74c0410af002a4fef002c4e75724047ef002010013f40002860d4122f001e703fe188758120427440b48864b860de721871af001d1f410027723fb280649660da707f122f001c74181f4000257181b4806400ff7460d8727e102f001b1f4100244a006c00ff5260d8307c000c122f001a340871811f420026747eb4806400ff2a60d4720b7180e88830401f410022720cb2806400ff0060d0307c0010102f0019ea8934081f420021a342c282740fc4801f41002a12022042740bb4886400fec460c0307c0004122f0018741030081f400023701fc0813040b4806400fe8260b847ef002093c9244b22090681000001e94df1083fd280a542b489651a528914f0e80022090681000001e94df1083fd280a542b48964e614b018005289ad41b2896700fecc528a60c0203946c824560680c00000002f020c8007efffff624a327c0022723ca742207946c82456d1fc0008ed801039100b14cfc08275fc18b24c020800a342d1c071b09800d1c1528906810000001eb480650871907453b480670e0c810000012c66bc241f42804e7571a800017432b48066e871a8000253804a80670a71a8000255804a8066d4241fa3404e754feffff42f0e2f0271b9100b14cc2c6f00242f0041ef000d4ebafcbe588fad40b08e675cab42200eb48e6402538071b7080920402f2f00302f2f003070fec0af003043f90000000073b1e8002f002001b1c164022008c0fc007f4c4100002f002f2f00302f2f00302f2f00304eb9400479b44fef001c241f2c5f4fef000c4e751039100b14cc227946c82456a7421239100b14cfd3fc0008ed807180c282c0fc001e204071fc18b241e801f14c001800d3c110318800727fc28020416000ff76518f2f02740b202f00182200206f00105c81226f00142f6f002000042f6f00240008b4816406241f508f4e752f6f000800242f6f000400202f41001c2f4000182f4900142f480010241f508f6000fef2598f2f02740b202f0014222f000c206f0010226f001c2f6f00200004b4806406241f588f4e752f6f000400202f49001c2f4000182f4000142f4800102f41000c241f588f6000feaa4fefffe448d7401c242f002441ef001171b9100b14cc2f004ebafb66588fad40b082676cab40b082653c71b728112202a3435581b6816500009255824a826700012aab434c43000141f900000000226f002020701c00101812c066fa4cd7401c4fef001c4e7571b72810780bb882660001124a80670000e6226f002041f900000000101812c067d4101812c066f460cc1039100b14cc227946c82456a7421239100b14cf77fc18b2d3fc0008ed80787f7180c282c0fc001e20404c03180041e801f1d3c110318800c0847663b68064587864760a2200a54e4c441001206f0020a74906810000003010c122004c43100124014c43200422040681000000301081206f0020d1ce740a4c42000142030681000000301081206f0020118398004cd7401c4fef001c4e75206f0020a34942817409b48064d02c49760a224122004c431001548924014c43200422040681000000301081206f0020d1ce60aa226f002041f9000000006000ff1a740c4c42000141f900000000226f002020701c006000fed6780ab88266144a806600ff3e226f002041f9000000006000fee851824a826600ff2822000681fffffff44a816d0e20017663b6806500ff186000ff6c206f0020740c94802002a54910fc002da3417409b4806400ff306000ff5c700a2f4000086000fe1c70082f4000086000fe12ad6f00086000fe0a71b9100b14cc4feffff441ef00012f004ebaf976588f4a2f000b671641f900000000226f0010101812c066fa4fef000c4e75226f001041f90000000060e84feffff42f0271b9100b14cc41ef0005ab422f004ebaf93471af000c588f41f9000000004c420001226f001420701c00101812c066fa241f4fef000c4e754feffff42f02740c71b9100b14cc41ef00052f004ebaf8f671af000b588f41f9000000004c420001226f001420701c00101812c066fa241f4fef000c4e754fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf8b471af0025588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf7e471af0023588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf71471af0022588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf64471af0021588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf57471af001e588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf4a471af001d588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d8148006090202f0004727f5280c0814e752f032f02206f0010a942226f000c102800037380b481640270041210e988760f7581b6826402720f808112801028000a6702700112280001eb8876107581b682640272108081740c13400001102800067380b4816402700c12280002e988760b7581b6826402720b8081747e13400002102800047380b4816402707e13400003102800056a02707f134000047618102800077380b6816402701813400005743f102800087380b4816402703f134000067640102800097380b68164027040727fc2af00141340000713410008241f261f4e754fefffd848d75c1c2f2f00342f2f003449ef00272f0c4ebaff16362f003a9dce4fef000cc6fc001e141ca540b08e64000086267c100b14cfa7441013227946c82456d3fc0008ed80121345ee01e9528ed5c3c084c28479fc18b24c0408004c0418002040d1fc100a4ece7009d3c11382a8001182a800b08e66ae1013227946c82456a7421213d3fc0008ed80c082c2824c0408004c04180078022040d1fc100a4eced3c11384383e1184383e4cd75c1c4fef00284e75267c100b14cfa7441013227946c82456d3fc0008ed80121345ee003f528ed5c3c084c28479fc18b24c0408004c0418002040d1fc100a4ece7009d3c11382a8001182a800b08e6600ff2a6000ff782f02720f206f0010a942226f00081010c08112807190e8881200b4806402720413410003721f741010280001c0811200b4806402721013410001a341740f71a80001ea88c0811340000a10280002c082740b1200b4806402720b13410002740c71a80002e8881200b4806402720c13410006747e102800037380b4816402707e13400004102800046a02707f134000057418102800057380b4816402701813400007743f102800067380b4816402703f134000087440102800077380b4816402704013400009727f10280008206f000c241fc28020814e75598f2f0a2f02202f0010222f0014206f00184a80672c4a81672845e8ffff743fb48a651e747fb4af001c65162f4800182f4100142f400010241f245f588f6000ebcc241f4280245f588f4e75222f00044a81675a71fc0919b0af000864502001204106800000004052884a28ffff663eb08866f42041200141e8004806800000005052884a28ffff6624b08866f4204106810000085941e80059719052880c80000000ff6608b28866f0a3404e7542804e754fefffd848d73cfc262f002c4a8367000168202f00300c80000009196300015a4aaf003467000152206f0034723f18280100200453807180b2806500013c4aaf003866122f2f00302f034ebaff4e508f4a806700011a7984246f00344281204a1010a3457580ba826500010eb284650001144a0066000102528158887040b08166de264322432843428547eb005943e9007949ec089aaf41c2852805e68caf48a34291c4d1c37190e2a0c0824a1267000132142a000116824a1267000120142a00021742000d4a126700010c142a00031742000fa342e3aa12104a12670000ee828210814a8066044a12673e420042143a7c000f42819284d2839bc4307c004f194000012002468091c41e353800ce801b8738002a411e2d001fce801b47001f12303800c08111803800204b4281101846804a0056c0710044808280b1c966ee307c001791c4d1c310104a1266784a816774848010825285588a47eb0020548c43e900207040b0856600ff2ca3404cd73cfc4fef00284e754cd73cfc42804fef00284e754a006700fef0102800017a787580598071805982ba8065dcab454c4528004a8066d275a800027a7eba8265be4a2800036db8528158887040b0816600fea06000febe4682c48060882e024687c2876000ff0e50c26000fef650c26000fee250c26000fed02f02202f000caf41206f0008b280651c73b00822a342b4816512721e74534c01080041f0083c7190b4806706241f42804e7571a800017232b28066f071a8000253804a80671410280002a541241fb3804a0057c0710044804e75241fa3404e754fefffc8203946c824560680c000000048d744040c8007efffff630c42804cd744044fef00384e75207946c82456a7411039100b14cf75fc18b22f2f003cd1fc0008ed80c0814c020800487008004ebaff50508f4a8067c61039100b14d0740f73802f410018b48165b2322f003e227946c82456488041f9000000002f49001c1439100b14cf246f001cc2fc091a1f4200272c413200c2fc8ed843f618004df298002f4900209dc81030e80010c0b1fc0000000066f24aaf0040670001f871fc8e55206f001cd1c14a3008006700020e1039000000007180743f22005381b4816500ff3a2f2f003c41ef00312f4000104ebaed48342f0042588f207946c82456d1fc0008ed801239100b14cfc4fc001e202f000c2242a742c28275fc18b243e901f14c021800747fd1c112309800c4812f4200284aaf0044670c2202747f5281c4812f420028342f003e207946c82456d1fc0008ed801239100b14cfc4fc00182242a742c28275fc18b243e901234c021800747fd1c173b09800b4816500fe9e2f2f00282f012f00486f00394879000000004ebae77e2f2f00544879000000004878091a4879000000004ebafc0c4fef00244a806700fe68226f001cb3f946c824566600fe5873b9100b14d0b2af00186600fe4a73af002775b9100b14cfb4816600fe3a226f002093fc0000000041f9000000002f49001845f0e800121875922f4a00102f4200147581b4af0014670e1481226f001845e8ffff13928800b1fc0000000066d22f2f0028486f00312f2f00442f4000184ebaf8f2a742122f00332c7946c82456ddfc000950484fef000cc28214163242a342e3aa204222022409828224081c811239100b145e828213c1100b145e207946c82456d1fc0009b332a350a379100f85984eb940027e004eb9400339d82f2f003c4eb94009da20588f4cd74404a37946c7c72c202f000c4fef00384e754878091a4879000000002f4100144ebafa8e508f222f000c4a806600fdee4cd744044fef00384e7571fc8e53103008006000fdf04e56ffe041eeffea2f0a2f0273b9100b14cc2f012d41ffe04ebaeb38322effe2588f207946c82456d1fc0008ed803d6efff2fffd1d6efff4ffff2d6effeefff92d6effeafff5c2fc001e1039100b14cf2241a74143e901f1c08173fc18b24c010800d1c012309800707fc280ab407581b0ae0008657a43eeffead3ee0008206e000c7391d1c14a886d000082246e0008203c0000000071b20800b1c06c022008b0816740128020022f00486effea2f2effe041faf78e2d48ffe44e9042a7a3672f2effe04ebafc524fef0018206effe44a806744a1674eb94004d948a37946c7c72c588f242effd8246effdc4e5e4e75ad40b0ae00086742222e0008206e000c43f618e97391d1c14a886c804a8167d442001280200260902f02486efff52f2effe04e904fef000ca1674eb94004d948a37946c7c72c588f60aa202e000cd0824a806d3c727fb2806c02707fb08267942f00486effea2f2effe041faf6e62d48ffe44e9042a7a3672f2effe04ebafbaa4fef0018206effe44a806600ff5860984a016700ff6042802f00486effea2f2effe041faf6ae2d48ffe44e9042a7a3672f2effe04ebafb724fef0018206effe44a806600ff206000ff60203946c824560680c00000002f020c8007efffff62084a398000001567064280241f4e751239100b14cc207946c82456a7421039100b14cfd1fc0008ed807381c0822f0173fc18b24c010800487008004ebafaac508f4a8067c42039000000004a8066ba4a3946c7d8d866b44ab9460d173a66ac4ab9460d169457c0241f710044804e754fefff78428148d75cfc242f008c284245ef00289dce28024283264a06840000003c49ec002271b41800a346bc80650c41f648007e537190be80674252814dee001e47eb000cbdfc000000f066d82f02206f009442854e90588f91c80b0366000086528541e8001e45ea000cb1fc000000f066e84cd75cfc4fef00884e7571a800017c32bc8066b471a8000253804a80670a71a8000255804a8066a0a340e3a891c8868043f6883cab47be88642c2c08ad474c47600043f60800700c43e901ecd3c21791880042115288b0886700ff6e43f6883cab47be8865d4d3c2179188004211528860be428147f02800ab44b881651449f21800ab442242d3c11194983c5281b88164ec2c01ad474c47600449f21800528143f34800780c135401ecb88166ca528541e8001e45ea000cb1fc000000f06600ff286000ff3c487a13ee2f2f00084ebafebc508f4e75203946c824560680c00000002f020c8007efffff62084a39800000156706241f42804e751239100b14cc207946c82456a7421039100b14cfd1fc0008ed807381c0822f0173fc18b24c010800487008004ebaf8de508f241f4e75203900000000b0b946c82456670442804e751039100b14cfa741c081b0b90000000066ea71b9100b14ccb0b90000000066dc6000ff724fefffec70312f0a2f02226f0020a342206f0024b08956c173014481b4886700008ea340e3a82439000000002f420014c4804a82665e4a886632a340244174fd45f21a00d08a45f90000000020320c0022005381b48165322f4900202f480024241f2240245f4fef00144ed12441a54045f21a0074fdd08a45f90000000020320c0022005381b48164ce241f245f4fef00144e754a8866f24680c0af0014241f245f23c0000000004fef00144e752f4100102f4800082f49000c4ebafeb4222f0010206f0008226f000c4a806700008a103946100b1d08000005667c703eb089677c7431b48966702f4100102f4800082f49000c4ebafcac222f0010206f0008226f000c4a806750a34081b9000000001039100b14cca367a36771802f004ebaf7e04fef000c4a80677048780020203c000000002f004eb94005a2b8a1674eb94004d948a37946c7c72c4fef000c241f245f4fef00144e7542806000fee04a3946c7d8d866f24ab90000000057c0a54183b900000000a1677100448023c0000000004eb94004d948588f241fa37946c7c72c245f4fef00144e7548780020203c000000002f004eb94005a2b8a1674eb94004d948a37946c7c72c4fef000c608e203900000000b0b946c8245667024e751039100b14cfa741c081b0b90000000066ec71b9100b14ccb0b90000000066de4ebafd7e4a8067d6a37900000000a379000000004eba10cca1674eb94004d948a37946c7c72c588f4e75203900000000b0b946c8245667024e751039100b14cfa741c081b0b90000000066ec71b9100b14ccb0b90000000066de4ebafd244a8067d642b900000000a379000000004eba1072a1674eb94004d948a37946c7c72c588f4e75203946c824560680c00000002f020c8007efffff6232203946c82456a7421239100b14cf06800008ed80206f000c41e8ffdec28275fc18b24c021800af42d08122089280b4816408202f0008241f4e75a342b4af000865f02f012f004ebaf5ce508f4a8067e2ab6f0008202f0008241f4e752f032f024ab90000000067084ebafcd64a806672203946c824560680c00000000c8007efffff6236223946c82456a7431039100b14cf06810008ed803040202f00100680ffffffde2408c48377fc18b24c032800d2829081af42b480640a202f000c241f261f4e75a343b6af000c65ee2f002f014ebaf544508f4a8067e0241fab40261f4e75203946c82456a7421239100b14cf77fc18b220790000000006800008ed8041e80022c2824c031800d081d088b0af00106600ff5c241f203900000000261f4e754fefffc4203946c824560680c000000048d74c0c0c8007efffff62000166af40b0af00446500015c223946c82456206f004091c12c48ddfcfff712802f41002473fc18b2200e4c41000220424a8266000132bdfc000062c762000128222f0044a342246f004043f218227391b48164000178a36f0020222f0044701e4c0018004aaf004866624ab900000000670001062f4100142f4800184ebafb84222f0014206f00184a80670000ec203946c8245606800008ed801439100b14cf3242a7422609c68275fc18b24c023800d083b0af0040660000c0262f0044b6b900000000660000b2a56f00482f2f00442f2f00442f41001c2f4800204ebaf3fa508f222f0014206f00184a80670000e8226f0040203c1001614e90af002441f1183c43f118422209227c100162fe93ef00241190080045e801b0139288005288b28866eea340b0af0048662c73fc18b2200e207c46c8245623d000000000a379000000004c410000222f004423c10000000023c0000000004cd74c0c202f00204fef003c4e754cd74c0ca36f0020202f00204fef003c4e752f2f00442f2f00442f41001c4ebaf352508f222f00144a806700ff5e4203206f0040203c1001614e226f004090af00241183183e1183183d1183183c41f1183c43f118422209227c100162fe93ef00246000ff4877912f4300206000fe86226f0044743248690001487900000000200f06800000003b2f002f4000282f410020246f004c2f48002445f2183c2f4a00344ebaed8614bc0053226f004c222f0020244145ea003f1382183d74021382183e224143e901e9202f00284fef000c2f490028206f00182f4a002c226f0028a542d3c8b488641826405288246f0040740915939800b4886700fe90528060dc246f00402640226f002cd3c85288159b9800200b60c6518f2039460e5e302f0b2f0a4a80671047f900000000b7f9460e5e2c670a4280245f265f508f4e75204041e800242f48000c2f082f40000c4eb94003567c226f000c588f4280246900282f1ba16745eaffe92f0aab672f2f001c2f3c400ba8762f4000204eb940012bd84fef0018202f0008b0b9460e5e4067165f8aa341b2806640245fa37946c7c72c265f508f4e75226f000c2051a167486a00054868fffb486affffa7672f092f4000204eb9400122544fef00185f8aa341202f0008b28067c02f1ba1672f0aab67a3402f2f001c2f3c400ba8762f4000204eb940012bd84fef0018202f0008b0b9460e5e40668a609e4ebaf8384a80670001004ab9460e5e30660000f64ab9460e70e0660000ec207c46c82456a74123d0000000001039100b14cfc28023c10000000071b9100b14cca567ad672f3c460e5e3823c00000000042b90000000042b9000000004eb94007ec604fef000c207946c82456a7411039100b14cf227900000000d1fc0008ed80c08173fc18b24c010800d1c071b098222f002f3c460e5e384eb94007edb041f90000000023c8460e5e28203c0000000023c0460e5e2c42b9460e5e342f3c4006d754a36742a7a167487800404878006e4eb94005829c4fef002023c0460e5e304a80672442a74879000000002f004eb9400570b82f3c400ce0c44eb9400314944fef00106000fe084e754ab9460e5e30670e203c00000000b0b9460e5e2c67024e754eb94006d75442b9000000004eba0a6c4ef94007893c598f4ab9460e5e30670e203c00000000b0b9460e5e2c6704588f4e754ebaf73e4a8067f42239460e5e40a340b08165e82e814eb94006d7544ebaf7224a8067d823d700000000a379000000004eba0a16a1674eb94004d948a37946c7c72c588f588f4e754feffff4222f0010206f00144ab9460e70e0677e4ab90000000066122f4800142f4100104fef000c4ef94007893c2f4100042e884ebaf6c2222f000420574a8067da4ab9460e70e067d22039000000002f4000084eb9400789e442b9000000004ebafe024ab9460e5e306726203c00000000b0b9460e5e2c66182f2f00082f3c460e5e384eb94007edb04fef00146000fce24fef000c4e75518f222f000c206f00104ab9460e70e067124ab9460e739a660aab40b0b9460e738e67102f4800102f41000c508f4ef94007909c2f4100042e884ebaf5ca222f000420574a8067dc4eb9400789e4508f6000fd7a598f4eb940031f282e804ebaf5a64a80672c4ab90000000066244a3946c7d8d8661c4ab9460d173a66144ab9460d1694660c2f174ebad6e02f400004588f2017588f4e75598f2f02203946c824560680c0000000222f000c0c8007efffff62084a39800000156708241f2001588f4e751039100b14cc207946c82456d1fc0008ed8075801039100b14cf2242a7422f09c08275fc18b24c020800487008002f41000c4ebaee3e508f222f00044a8067b84ab90000000066b02f41000c241f588f6000d6544feffff4ab402f02222f0014206f0018b0816408241f4fef000c4e75203946c824560680c00000000c8007efffff62e44a398000001566dc1439100b14cc227946c82456d3fc0008ed801039100b14cf75822f42000ca742c08275fc18b22f2f000c4c020800487108002f4100102f48000c4ebaedaa508f222f00084a8067944ab900000000668c4a3946c7d8d866844ab9460d173a6600ff7c4ab9460d16946600ff724ab9000000006600ff682f6f000400182f410014241f4fef000c6000f0a62f02ab40b0af00086406241f42804e75203946c824560680c00000000c8007efffff62e64a398000001566de1239100b14cc207946c82456a7421039100b14cfd1fc0008ed807381c0822f0173fc18b24c010800487008004ebaed02508f4a8067a84ab90000000066a02f2f000c206f000c486800064ebaf02c508f241fa3404e754fefffd448d75c0c4ab90000000067104ab9460e70e0660003b242b9000000004ab900000000660002fa2479800065b8a340b08a6700031c47faddd823ca00000000203946c824560680c00000000c8007efffff620000b0387c003e9dce45faec7a207946c82456a7431039100b14cf73fc18b22f0ed1fc0008ed80c0834c010800487008004e92508f4a80672a207946c82456d1fc0008ed801039100b14cf75fc18b2c083a3434c020800d1c071b0c800b680670000ba528e49ec001e7008b08e669e73b9100b14ccaf42b481650002ce207946c82456a7431039100b14cf75fc18b2d1fc0008ed80c0834c020800d1c04a301822660002a6203c400d301c23c0400d5f4c4e93247946c8245673b9100b14cf77b9100b14cc2c402679000000002039000000002843b5f900000000670000e84a8b67204a8067000272203c000000004ab900000000670002c64cd75c0c4fef002c4e754a8067000252203c000000004ab90000000066e2600002a42f0e41ef0025a7422f4000204ebad9f677fc18b2207946c82456d1fc0008ed801239100b14cf43ec01b349ec001ec282747f4c031800d1c112309800c4812e82486f00252f0e4ebae6ac4fef000c1639100b14cf202f001c227946c82456d3fc0009504812113043a7432408c483e5a8828012811239100b145e808113c0100b145e207946c82456d1fc0009b332a350a379100f85984eb940027e00528e7008b08e6600fe4e6000feacb2b9000000006600ff12b6b9000000006600ff084a8b670002144a80674841f9000000004a8e670a4ab900000000670002184ab9000000006600fefa2f082f41001c4eb94003146c42b90000000023ca0000000023cc00000000222f001c588f23c1000000002079460d165c4a8e6700fec44a886700febe4a906600feb8223c00000000207c46c7dd7643f90000000020100c80000000006704238088005888b1fc46c7dd8266e8207c46c7deae43f9000000002010b0816704238088005888b1fc46c7deba66ec4ebaeef823c0000000004a80670000f841f90000000042902f084eb940031494a167a379000000004eb94004d948a37946c7c72c508f4cd75c0c4fef002c4e754ebaf0e04a80670000b44ab9460e5e306600fcf64ab9460e70e06600fcec4ebaf82e2479800065b8a340b08a6600fce8a34147fadabcb2b9000000006700fcdc4e934a806700fcd499cc4dfae9cc42a7740842a72f0c4e96528c4fef000cb48c6700fcb842a7740842a72f0c4e96528c4fef000cb48c66d66000fca0203c400d31ae23c0400d5f4c6000fd5a42b90000000023ca0000000023c10000000023cc000000006000feb84ebaf0384a806600fc4e42b9000000006000fc4442b9000000006000fc4441f90000000042902f084eb940031494a167a379000000004eb94004d948a37946c7c72c508f6000ff082f002f41001c4eb94003146c42b90000000042b90000000023ca00000000222f001c588f23cc0000000023c1000000006000fe3c4a806700fe3641f9000000004a8e6700fdf64ab9000000006600fdec2f4100182f48001c4ebaed70222f0018206f001cb08b6600fdd223ca000000004cd75c0c4fef002c4e75202f00040c800000000567044efa02fe41fa023020084e75400b3eac400b3e98400b7c67400b5413400b7a63000000004fefffec48ef030200082e802f4800044ebaf1e04cef030200084fef00144e754fefffe048ef0307000c2409d48006820008ed802e822f41000474000c8400000005660274012f4200084ebaf2de0c8400000005660228004cef0307000c4fef00204efa028448794005a61c600648794005a8562239460d5c304fefffe048ef030d000c2609d68006830008ed802e832f42000476000c8100000005660276012f43000826014ebaf2820c83000000056702200322004cef030d000c4fef00204e7516102f0071036100ff362600201f79034879400bb7044ef9400585e67110610000582f004879460e73864ef940078890610000124ef94003d722610000084ef94004c3746100fef841fafedc22300c004e7571104fef00186100fee44ef94003c986711061000012b48066064ef9400786ce4ef9400786fc4fefffec48ef030200082e802f4800044ebaf1184cef030200084fef00144e752f082f01207946c8245673b9100b14cfc2fc18b2d1c173b9100b14ccd1fc0008eda271b01800221f205f4e750c820000000566344fefffe448ef0303000c2e8b2f4300044ebaf9222f4000084cef0303000c4aaf00084fef001c67064ef94003a6246100ff9c24004efa01300c8600000005662a4fefffec48ef030300042eaf005c4ebaf7a22f40005c4cef030300044fef00142f006100ff682c00201f4efa01084eb94005213c4eb94007e9404ebaf93a4ef940052228564543544f5200004878ffff4878ffff4ebaf7184ef94004e4d04feffff048d703034ebaecb84a80670c4cd703034fef00104efaf46e4cd703034fef00102f0a4ab9460e70e04ef9400791ec4feffff048d703034ebaf35a4a80670a4cd703034fef00104e754cd703034fef00104fefffe848d73c0c4ef94006d78c7c010c800000000566224feffff048d703034ebaec4c4a80670a4cd703034fef0010600c4cd703034fef0010bc8065064ef940077b624ef940077b704efaec124fefffa048d77cfc4ef9400023200000000000004ef9400334de0000000000004ef94007982200000000000000004ef94003a53600000000000000004ef94003cda0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffff0000000000000000000000000000000000000000ffffffffffffffff31000000000000000000000000000000000000000000000000003e00000000000000000000000000000000000000000000000000ff00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000002000000000000000000000000000000000000000000030000000000000000000000000000000000000000000400000000000000000000000000000000000000000005000000000000000000000000000000000000000000ff000000000000000000000000000000000000000000465744004f46460052455600564543544f522047454e455241544544004e4f204348414e474500ab204d414348494e453a564543544f5220bb004300432300440044230045004600462300470047230041004123004200303031205354415449430030303220464c455800434852004d494e004d414a00444f520050454e5400545950450044454e5300524f4f54005343414c00474154450041434e540053454544005350414e004f46535400524f5400525054004449520000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000fff05ad0ab506ad04a900000000000000000000000000000000000000000f100b047e7f7f0c183f40010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b0b000120300c0c00000000000000000000000000000000000000000000000100000000000000000400fff10000000000000000000000000300000100000000000000000000000003000003000000000000000000000000030000050000000a000000000000013e02000001000000190000001c00000004010000030000002800000018000000040100000300000038000000200000019201000003000000410000003000000030010000070000004b00000a9e00000048020000010000005c00000a4e00000050020000010000006d0000013e000005280200000100000084000000700000000a010000070000013d000006660000029e020000010000008b000009040000008a02000001000000960000098e000000c00200000100000000000000000000000003000006000000b300000ae6000001dc02000001000000c2000000000000003001000007000000ca00000cc20000000a02000001000000d400000ccc0000000a02000001000000dd00000cd60000000802000001000000e600000cde0000003e02000001000000f000000d1c0000003e02000001000000f900000d5a0000003e020000010000010200000d98000000d0020000010000010b00000e68000000d0020000010000011400000f38000000d0020000010000011d00001008000000d00200000100000126000010d8000000d0020000010000012f000011a8000000d00200000100000138000013560000010402000001000001460000182c000002e80200000100000155000002b30000091a01000003000003e2000001b200000101010000030000015d00001b14000001ba020000010000016c00001cce00000084020000010000017b00000bf200000004010000030000018500001ef60000003602000001000001920000001400000004010000030000019c000000100000000401000003000001a60000000c0000000401000003000001b100000bce0000000401000003000001b600000bd60000001801000003000001bc000020ec0000005a02000001000001c6000000000000000401000003000001d2000000040000000401000003000001de000021460000005a02000001000001ea000000080000000401000003000001f7000000680000000801000007000002030000006000000008010000070000020e00000bd200000004010000030000021d00000bee00000004010000030000022700000c0200000004010000030000022e00000bfe00000004010000030000023900000bfa00000004010000030000024400000bf60000000401000003000000000000000000000000030000070000025046c82456000000000000fff1000002590008ed80000000000000fff1000002620000328a000000000000000100000271000031c000000000000000010000027900002fae00000000000000010000028500003296000000000000000100000294000030220000000000000001000002a2000030e80000000000000001000002b6000030b40000000000000001000002c3000031080000000000000001000002d0000032a20000000000000001000002df000032b00000000000000001000002ee00000c400000000000000003000002f600000c8e0000000000000003000002fe000031f600000000000000010000030a0000322600000000000000010000031600003268000000000000000100000323000032600000000000000001000003330000326c00000000000000010000033f0000327200000000000000010000034c0000009a0000003011000007000003610000008e0000000c11000007000003740000007a000000141100000700000387000012780000000c120000010000039800001284000000d212000001000003a40000145a000000d812000001000003b2000015320000004c12000001000003c20000157e0000006612000001000003d5000015e4000001e812000001000003e9000017cc0000006012000001000003fd00001d520000013a120000010000041200001e8c0000001012000001000004230000327c00000000100000010000043500001e9c0000005a120000010000044100001f2c000001c01200000100000448000031fe00000000100000010000045b000021a000000072120000010000046300002212000000c61200000100000473000022d800000298120000010000047d000000ca0000000b110000070000048d00002570000000f212000001000004a1000026620000010a12000001000004b50000276c0000002e12000001000004c90000279a0000006412000001000004de000027fe0000009812000001000004eb000028960000005412000001000004f9000028ea0000004412000001000005060000292e000000801200000100000514000029ae000000c2120000010000051c00000c0800000000100000030000052500002a7000000082120000010000053300002af20000048c120000010000053e00000c2400000000100000030000054c00002f7e00000000100000010000055c00002f9600000000100000010000056900002fce000000001000000100000578000030140000000010000001000005860000301c000000001000000100000595000030a000000000100000010000059f000030aa0000000010000001000005a9000030700000000010000001000005b70000308c0000000010000001000005c7000030c20000000010000001000005d4000030d20000000010000001000005e3000031340000000010000001000005f200003174000000001000000100000601000031aa00000000100000010000060e000031c800000000100000010000061a000031da0000000010000001000006270000320c0000000010000001000006340000323c00000000100000010000064200003278000000001000000100766563746f722e630067656e657261746f725f70616765007372635f706167655f7265616479007372635f706167655f736f75726365007372635f7061676500666f726d6174732e320067656e657261746f725f776964676574007365636f6e646172795f77696467657400766563746f725f67656e65726174652e706172742e30007363616c657300616e795f766563746f7200647261775f67656e657261746f725f7769646765742e706172742e3000666f726d61745f636f6e74726f6c00726f6f74732e3100666f726d61745f313000666f726d61745f3800666f726d61745f3600666f726d61745f313100666f726d61745f3300666f726d61745f3200666f726d61745f3900666f726d61745f3700666f726d61745f3500666f726d61745f3400666f726d61745f3100666f726d61745f3000736176655f73657474696e67730067656e65726174655f747261636b0073746167696e67006368616e67655f636f6e74726f6c0067656e657261746f725f7669657700656469745f7669657700706f6f6c5f636f6e7465787400706f6f6c5f62616e6b00706f6f6c5f7061727400706f6f6c5f747261636b006d696e6500736176656400706f6f6c5f666c657800706f6f6c5f62726f77736500706f6f6c5f64697265637400706f6f6c5f73746174696300706f6f6c5f70656e64696e6700706f6f6c5f6c6162656c730068616e646c6572732e33006c6173745f7472616e73706f7274006c617965725f67656e006163746976650073686f776e5f62616e6b0073686f776e5f706172740073686f776e5f747261636b0042414e4b5f50545200504152545f4f46460073745f6e616d655f7265706c61790073745f6e616d650073745f726f775f747970650073745f6d61696e5f7265706c61790073745f7372635f636f6d6d6f6e0073745f63686f6f7365725f726f775f747970650073745f6e616d655f7069636b0073745f706f6f6c5f6b696e640073745f656469745f7265706c61790073745f647261775f7265706c61790073745f6b6579730073745f656e6373002e706f6f6c5f73746f636b002e6c6973745f73746f636b002e7469746c655f73746f636b002e7469746c655f756e7369676e6564002e7469746c655f706f6f6c002e7469746c655f706c61696e00766563746f725f636f6e74726f6c5f6e616d657300766563746f725f636f6e74726f6c5f6d617800766563746f725f7363616c655f6e616d657300766563746f725f6e6578745f7365656400766563746f725f7061636b00766563746f725f756e7061636b00766563746f725f67656e657261746500766563746f725f747261636b5f656d70747900766563746f725f77726974655f70687261736500766563746f725f7369676e65645f747261636b00766563746f725f76616c69646174655f706172740073745f76616c69646174655f706172740073745f73746f636b5f76616c69646174650073745f73656c65637465640073745f6b65790073745f73746f636b5f706f6f6c5f6f70656e0073745f747970650073745f63686f6f7365725f747970650073745f61737369676e00766563746f725f64656661756c74730073745f706f6f6c5f63686f6963655f647261770073745f706f6f6c5f63686f6963655f6f70656e0073745f706f6f6c5f63686f6963655f6c6566740073745f706f6f6c5f63686f6963655f72696768740073745f706f6f6c5f6c6566740073745f706f6f6c5f72696768740073745f647261775f706167650073745f73657475705f706167650073745f6b6e6f620073745f6c617965720073745f73657475705f6b6e6f620073745f75695f7469636b0073745f656469745f6c617965720073745f6d616368696e655f6e616d650073745f7372635f6e616d65730073745f6d61696e5f636f6d6d69740073745f7372635f636f6d6d69740073745f7372635f636f6d6d6974320073745f6e616d655f610073745f6e616d655f620073745f73657475705f6f70656e0073745f63686f6f7365725f6f70656e0073745f73657475705f726f770073745f63686f6f7365725f726f770073745f73657475705f65646974360073745f73657475705f64726177360073745f7469636b5f686f6f6b0073745f7372635f647261770073745f706f6f6c5f6f70656e0073745f6c6973745f647261770073745f706f6f6c5f7469746c650073745f76616c69646174650000000000001600000301000000180000003200000301000001b200000054000003010000003c0000009e0000020100000a9e000000e000000301000001ae000000e6000003010000001c000000ec00000301000001aa000000f20000030100000018000000f80000030100000020000001080000020100000a4e000018dc0000030100000bcd00001a1600000301effea16600001a4c0000030100000bcd00001ba600003a010000008e00001f14000003010000001000001f22000003010000000c00001fd00000030100000bce000020380000030100000bce0000205c000011010000000c0000209e0000030100000bce000020aa0000030100000bf2000020cc000011010000001d00002108000003010000001000002116000003010000000c0000212600000301000000000000212c000003010000000400002162000003010000001000002170000003010000000c000021800000030100000000000021860000030100000004000023b4000003010000000c0000242e000003010000001400002434000003010000000800002442000003010000000c0000244800000301000000100000268a0000030100000014000026980000030100000010000026ae000003010000000c000026b40000030100000004000026ba00000301000000080000270e00003a01000000680000277600003a01000000680000278c0000030100000004000027a600003a0100000068000027dc0000030100000000000027e200000301000000040000285a00000301000000040000286c00003a010000006800002b0e000003010000000400002b300000030100000bd200002c1e0000030100000bfe00002c320000030100000c0800002c520000030100000c2400002d0e0000030100000bfa00002d180000030100000bf600002d560000030100000c0200002d5c0000030100000bfe00002d620000030100000bf600002d6e0000030100000bfa00002d8c0000020100001f2c00002da00000020100001f2c00002dda0000030100000bee00002df80000030100000c0200002e4c0000030100000bd200002ea20000030100000bf200002ea80000030100000bfe00002eae0000030100000bfa00002eb40000030100000bf600002ec8000003010000000400002ed2000003010000000800002eee0000030100000c0200002f120000030100000c0200002f180000030100000bf200002f1e0000030100000bfe00002f2a0000030100000bf600002f300000030100000bfa00002f700000030100000bfe00002faa00000201000031c00000000a000003010000001c0000002000000301000000200000003a00003a010000009a0000004200000301000000ea0000004800003a01000000300000004e00000301000000360000040400003a0100000070000009d200003a010000008e00000b3000003a010000007a00000b64000011010000000800000c48000011010000000000000c5800003a010000000000000c7a000011010000000400000cfc000011010000000800000d16000011010000000000000d3c00003a010000007a00000d7a00003a0100000000000018a400000301000002b3000018fe0000030100000303000019ba00000301000001b2000019c800000301000001b2000019d200000301000002b300001a1c00000301000002b300001ae600000301000002b300001d2a0000030100000bf200001ef8000003010000001400001f540000030100000bce00001f740000030100000bd600001fa60000030100000bd6000020940000030100000bf2000020ee0000030100000014000021480000030100000014000022180000030100000004000022ac000003010000000c000022d00000030100000000000023600000030100000004000024d600003a01000000ca0000258200003a0100000068000026d8000003010000000c0000270200003a01000000600000274a00001101000000270000281400000301000000040000284a0000030100000000000028fe0000030100000bf20000299c0000030100000bf200002a300000030100000bf200002a540000030100000c0800002ad40000030100000bf200002afc000003010000000400002b14000003010000000800002c100000030100000bee00002c160000030100000c0200002c380000030100000bce00002c580000030100000bce00002d2c0000030100000c0800002d360000030100000c0800002d400000030100000bce00002d9800000301b9382e6000002dbc00000301b9382d3400002de60000030100000c0800002edc0000030100000c2400002f400000030100000c2400002f4c0000030100000c2400000c0c0000030100000c4000000c100000030100000c8e00000c280000030100000c4000000c420000020100001f2c00000c460000020100001f2c00000c4a0000020100001f2c00000c5c0000020100001f2c00000c600000020100001f2c00000c640000020100001f2c00000c9000000201000029ae00000ca600000201000029ae00000cbc00000201000029ae00000cd200000201000029ae00000ce800000201000029ae00000cfe00000201000029ae00000000000011010000003a00000004000011010000003c00000008000011010000003f0000000c00001101000000410000001000001101000000440000001400001101000000460000001800001101000000480000001c000011010000004b00000020000011010000004d0000002400001101000000500000002800001101000000520000002c00001101000000550000003000000201000011a80000003400000201000010d8000000380000020100000d5a0000003c0000020100000d1c000000400000020100001008000000440000020100000f38000000480000020100000cd60000004c0000020100000e68000000500000020100000ccc000000540000020100000d98000000580000020100000cc20000005c0000020100000cde0000006000000201000021460000006400000201000020ec0000006800001101000000570000006c00001101000000620000007a000011010000006b0000007e000011010000006f0000008200001101000000730000008600001101000000770000008a000011010000007b0000009a00001101000000800000009e0000110100000085000000a2000011010000008a000000a6000011010000008f000000aa0000110100000094000000ae0000110100000099000000b2000011010000009e000000b600001101000000a3000000ba00001101000000a8000000be00001101000000ad000000c200001101000000b1000000c600001101000000b5002e73796d746162002e737472746162002e7368737472746162002e72656c612e74657874002e72656c612e64617461002e627373002e726f646174612e737472312e31002e72656c612e726f64617461000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000001000000060000000000000034000032be000000000000000000000004000000000000001b0000000400000040000000000000502c0000069c0000000900000001000000040000000c0000002b000000010000000300000000000032f400000d280000000000000000000000040000000000000026000000040000004000000000000056c8000000b40000000900000003000000040000000c000000310000000800000003000000000000401c0000000000000000000000000000000400000000000000360000000100000032000000000000401c000000b9000000000000000000000001000000010000004a000000010000000200000000000040d6000000d500000000000000000000000200000000000000450000000400000040000000000000577c0000021c0000000900000007000000040000000c00000001000000020000000000000000000041ac000008300000000a0000004f000000040000001000000009000000030000000000000000000049dc0000064e0000000000000000000000010000000000000011000000030000000000000000000059980000005200000000000000000000000100000000", + "sha256": "f9e594a057e3729261497e49daf9b59a3fbb72fe34f1c52cb67abc5883c02890", "stockCopies": [ { "section": 1, - "offset": 12948, + "offset": 12938, "source": 1073951960, "bytes": 6, "sha256": "d6c9f1f60272197a17511f496fc19dd21ddd7df5f1f1ec0cab7a16cad60b0609" }, { "section": 1, - "offset": 12960, + "offset": 12950, "source": 1074239516, "bytes": 6, "sha256": "89c50ac3ca041fdf5647ec5ee2c3580f9a67dd79f0b5cc15ceadda4b9e9bede0" }, { "section": 1, - "offset": 12972, + "offset": 12962, "source": 1073980718, "bytes": 8, "sha256": "cae34bf50383462ed4f92d8044e3021247edb8bf69c17a9c7ead62f6edf79510" }, { "section": 1, - "offset": 12986, + "offset": 12976, "source": 1073991064, "bytes": 8, "sha256": "ed71ef874312890edc87cef7e19cd8c0f8ac4ac9b90182c2364f78d3a4567f45" diff --git a/src/engine/assets/resident-dsp.json b/src/engine/assets/resident-dsp.json index 3a08972a3..ef7ace2fd 100644 --- a/src/engine/assets/resident-dsp.json +++ b/src/engine/assets/resident-dsp.json @@ -335,7 +335,7 @@ ] } ], - "sourceCommit": "b18d1776b0d982081c2c69ef5796154fff0efbf9", + "sourceCommit": "72faeba1ebb4518349afc28438789e1d71b7e441", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -358,7 +358,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.2.0-experimental", - "vector": "0.2.5-experimental", + "vector": "0.2.6-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.1-experimental", "recorder-loop-fix": "0.1.0-experimental", diff --git a/src/engine/assets/rom-packages.json b/src/engine/assets/rom-packages.json index a4e8f6786..8c522cfee 100644 --- a/src/engine/assets/rom-packages.json +++ b/src/engine/assets/rom-packages.json @@ -494,7 +494,7 @@ "sha256": "fdba0ffd31b7932ceb1ded3bde9a976b6f148ae96fc73a4efc4fedf6fb692341" } ], - "sourceCommit": "b18d1776b0d982081c2c69ef5796154fff0efbf9", + "sourceCommit": "72faeba1ebb4518349afc28438789e1d71b7e441", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -517,7 +517,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.2.0-experimental", - "vector": "0.2.5-experimental", + "vector": "0.2.6-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.1-experimental", "recorder-loop-fix": "0.1.0-experimental", diff --git a/src/engine/assets/usb-audio-packages.json b/src/engine/assets/usb-audio-packages.json index e99618197..24877bf72 100644 --- a/src/engine/assets/usb-audio-packages.json +++ b/src/engine/assets/usb-audio-packages.json @@ -553,7 +553,7 @@ } ] }, - "sourceCommit": "b18d1776b0d982081c2c69ef5796154fff0efbf9", + "sourceCommit": "72faeba1ebb4518349afc28438789e1d71b7e441", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -576,7 +576,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.2.0-experimental", - "vector": "0.2.5-experimental", + "vector": "0.2.6-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.1-experimental", "recorder-loop-fix": "0.1.0-experimental", diff --git a/src/engine/assets/utility-packages.json b/src/engine/assets/utility-packages.json index 3c2e8c0b5..394be7795 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": "b18d1776b0d982081c2c69ef5796154fff0efbf9", + "sourceCommit": "72faeba1ebb4518349afc28438789e1d71b7e441", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -26,7 +26,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.2.0-experimental", - "vector": "0.2.5-experimental", + "vector": "0.2.6-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.1-experimental", "recorder-loop-fix": "0.1.0-experimental", From bfaa3644a25c8fedfcb0120fe74fb5da233522da Mon Sep 17 00:00:00 2001 From: repeat98 Date: Sun, 1 Nov 2026 19:45:08 +0100 Subject: [PATCH 12/33] VECTOR 0.2.6: native comparison (54 images match, 108 refusals match, 0 mismatches of 162) Co-Authored-By: Claude Opus 5.5 --- sdk/native-comparisons/vector.json | 5554 +++++++++++++++++++++++----- 1 file changed, 4692 insertions(+), 862 deletions(-) diff --git a/sdk/native-comparisons/vector.json b/sdk/native-comparisons/vector.json index 74891061c..5fb16411d 100644 --- a/sdk/native-comparisons/vector.json +++ b/sdk/native-comparisons/vector.json @@ -1,8 +1,8 @@ { "schemaVersion": 1, "moduleId": "vector", - "moduleVersion": "0.2.4-experimental", - "moduleSourceSha256": "1255e99133cbd8d6d2587c95f93462ea80fccbd169462a2acb02aedbd346cbd3", + "moduleVersion": "0.2.6-experimental", + "moduleSourceSha256": "27eca33a8d42bc0b5c56010864915454684d8d61df1a074403a66dda1e3d9a42", "revision": "b8deefc88b2c3e5f3c6158e364eb741df1924e1d", "originalOsSha256": "164f31224bf61181e3f50e7dec40df9afcae5b16dbf6e4c0d0cc5e986af0a84e", "pool": [ @@ -11,6 +11,11 @@ "euclid", "repitch", "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", "analog-bassdrum", "usb-audio-out-tracks-main-cue", "quantizer", @@ -21,14 +26,22 @@ "vector", "playmodes", "mute-modes", - "recorder-loop-fix" + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "beat-slicer" ], "summary": { - "selections": 110, - "built": 46, + "selections": 162, + "built": 54, "identicalOutright": 0, - "identicalOutsidePlatformWrites": 46, - "refused": 64, + "identicalOutsidePlatformWrites": 54, + "refused": 108, "mismatches": 0 }, "selections": [ @@ -68,9 +81,9 @@ ] }, "native": { - "bytes": 1121076, - "osSha256": "d64284abbb02e1bedab13282218ac3d5d0c4e1c57fe165dce8148b5c5226ab95", - "maskedOsSha256": "c241d50a5a4728e097bcdae58e6a5b8afd7fdee4f6dfcc534d060ba668e489fe" + "bytes": 1121067, + "osSha256": "c3d36297974621086c554585e822b13958cf59a5aa017e10a278ec37e455ecc9", + "maskedOsSha256": "fa2b6d59ad779563aa77690ccf43d56378ba80742ca1d3b16aca63763d8d5958" }, "result": "masked" }, @@ -95,9 +108,9 @@ "fx2": [] }, "native": { - "bytes": 1121076, - "osSha256": "126e6076bba8ab056579d103fb0134365a7d49bd9eb25b499c2ce483a1502041", - "maskedOsSha256": "f914320de31a948195ca34a259355536d55ffd9791da78b6245b02a08251b9e8" + "bytes": 1121067, + "osSha256": "3ae7b28075e0eee4bdb0e2ce6de91ce0882e3bb68392d2fa7e88185ec6685ed0", + "maskedOsSha256": "58fc4fce2912a0c852109b0950c0b10fb4d10b5c79de2c1ea43619a46d0c6b10" }, "result": "masked" }, @@ -138,9 +151,9 @@ ] }, "native": { - "bytes": 1121076, - "osSha256": "f068bcae6efe65a85d63b827be494c0b6254727981042ca0bae38d83c2d9dc89", - "maskedOsSha256": "ce6451277d6c1310416d1b4e26b1028ac6d7b2fdb9616aa921f9f4bcb7c19042" + "bytes": 1121067, + "osSha256": "9b12e69e1eb8b7c12a09f9a4e282fdb8eb378098f128a3b020e8051e6c8fc906", + "maskedOsSha256": "9b64aff5ac39777ef583f646655be8e88024a60c230f20521f32e09e5c3f8499" }, "result": "masked" }, @@ -168,9 +181,9 @@ ] }, "native": { - "bytes": 1121076, - "osSha256": "71d39e3303944d88e40031975caaf69ef9a921c7a1bbbf2c8208944f21b06c62", - "maskedOsSha256": "89b2f94bc172feb9b233fad80e12be54da137a0026f802ce9dda4ef9b9ba9f0d" + "bytes": 1121067, + "osSha256": "f95394815364b93b6a34892640d1e3d4a4f7a24b9b230e8a5e621d0cc8e89802", + "maskedOsSha256": "a7429deb8e0126cc35feb518220207a01f05362c79b3ea8d1c9f3052c2f77929" }, "result": "masked" }, @@ -211,9 +224,9 @@ ] }, "native": { - "bytes": 1223252, - "osSha256": "305250f98daf17473d530cf43489ab23d244e36d137ae47319cd6c9cc79fba8c", - "maskedOsSha256": "3ddb91870a6f88b2ff2ef0ab48200a44c8557ededc73c615c792458f30dafaa4" + "bytes": 1223304, + "osSha256": "5613e610c2a8ee2dd91efbc3361f737ba7d470f800abe5c708114ab390753d17", + "maskedOsSha256": "1483ab1ccbb936d2a4a059f007c0ae2d71d6ffed51d89a7159fb9e228c5fab07" }, "result": "masked" }, @@ -241,9 +254,9 @@ ] }, "native": { - "bytes": 1223252, - "osSha256": "8b6191d5e60ac6aec4629c68c9acce1b141d9931a5ec942f4f5f2781617983a9", - "maskedOsSha256": "77542d1d8ab14a21223e8d2a2a1fa331cc67ba82b9e3c027a17c95d0a2928452" + "bytes": 1223304, + "osSha256": "ef4734fc9a4417c5d59c30cb3623bb31ef3241136c9ecdad46436fd9e21ee3b7", + "maskedOsSha256": "802b0b18bc226f6664e65ec6a83f50f90ac4d105fee29996fc1f0fe2523e356a" }, "result": "masked" }, @@ -285,9 +298,9 @@ ] }, "native": { - "bytes": 1123175, - "osSha256": "7aaa8e06e062e8c408a4be10e000cb1f0859e74543e19ab8ba584dd4a5f15a4a", - "maskedOsSha256": "41c87f90ba9e7382034a59c371ac5cf2ff01b05dff16b2ee14c2dad75e20e600" + "bytes": 1123156, + "osSha256": "b245428770c8c2f3e2ac05c8897f205d1ea4e98025973221493bac49cc47abd1", + "maskedOsSha256": "7154affc7e732351a235633f7f2709e4482875afbece76cec7570c795ae18a29" }, "result": "masked" }, @@ -316,9 +329,9 @@ ] }, "native": { - "bytes": 1123175, - "osSha256": "b2b22a6ea9459738609db6449bbc1e726996a81bf1bfee6d1eec57098b0c745c", - "maskedOsSha256": "090340d9fe92d9d3ee0bf64ab87d2235bb522a3cf8f07a1f1427a0f81ce1efde" + "bytes": 1123156, + "osSha256": "c6df191749b132e36e4231c8532471feab824cb6edb20f51cce30158dcb9db7c", + "maskedOsSha256": "a2d0a7cdbe01183023511a2e1490c4f6add7b418670a5dc453b92521ed983f13" }, "result": "masked" }, @@ -359,9 +372,9 @@ ] }, "native": { - "bytes": 1121076, - "osSha256": "5c33ae65e5c47be634050a87035b432257aea64c56459ae1d789d962559f3045", - "maskedOsSha256": "3e17b8d64ae9c0e18d05f13f26ddfa2b67e1bce9e607ab333d56c707f51746ef" + "bytes": 1121067, + "osSha256": "4e656106422243d366604964304f459aa06cc9edf43e4e785c197aae6626d486", + "maskedOsSha256": "b7853b768d03ac949fd3bd5b4c4190e67720875029ae91920614e523862a959e" }, "result": "masked" }, @@ -387,9 +400,9 @@ "fx2": [] }, "native": { - "bytes": 1121076, - "osSha256": "505d85d24e9ab863aa80167103ae87347143c995ab27d391b53e5fd06587f524", - "maskedOsSha256": "39cecd8164a36010255a687f0b84a69f752d4f798e02733156251f730ec6dac1" + "bytes": 1121067, + "osSha256": "3284bf5dbe902ce67dca6f739b79a4c0721afaede15138b872f7123634a21139", + "maskedOsSha256": "8ab2c80ce2bb842c5842a81549a5903fb23d2cd01e1b7cf9e5fdd5038e5d9e82" }, "result": "masked" }, @@ -431,9 +444,9 @@ ] }, "native": { - "bytes": 1121076, - "osSha256": "bf446d211d655ecf42caf2fe9da95c6a63bce18a234cd8f27e6a046138988816", - "maskedOsSha256": "eb4c6163c3c464e99c00c6905c284a35e29ca905678b8f3f3cba519db90b484b" + "bytes": 1121067, + "osSha256": "839e6b1f96fefb9730b54ee4964d80515733729ff1323938b6569aa91c599847", + "maskedOsSha256": "6286425cd0016fa66dd89671a3767173153f0a5c10fa0905e272c6d82f4a79ae" }, "result": "masked" }, @@ -462,15 +475,15 @@ ] }, "native": { - "bytes": 1121076, - "osSha256": "0f7b4792fbe2b674f18a3492481aa9b894143ad4cc41c0244e680164cddf9b1c", - "maskedOsSha256": "3b55973ca75ea802d65ad6b7263ae259d525c1846a5f6d05bd23f4996cd9a69d" + "bytes": 1121067, + "osSha256": "e155961c881698a0ea13cc9f71fefc0b23545e1265d6dfb689e5433ee38a6843", + "maskedOsSha256": "c85dde736d7516b1fcd9aafe17e4c08a964c625ff834f359c8292659f1171f19" }, "result": "masked" }, { "moduleIds": [ - "analog-bassdrum", + "airwindows-chorus", "vector" ], "keepStockFx2": true, @@ -500,17 +513,20 @@ "LO-FI", "DELAY", "PLATE REV", - "DARK REV" + "DARK REV", + "AIR CHORUS" ] }, "native": { - "refused": "remix 'octamod-composition-proof' has colliding modules:\n hook site: analog-bassdrum and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x40077b5c -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4006d784 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x400791e4 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: analog-bassdrum (symbol ref abcontrol:ab_engine_left (LEFT from Analog BD engine pool to machine chooser)) and vector (symbol ref vector:st_pool_choice_left (LEFT returns from VECTOR pool choice to machines)) both claim 0x400ce10e -- both rewrite the same bytes\n poke site: analog-bassdrum (symbol ref abcontrol:ab_engine_right (RIGHT on Analog BD enters its engine pool)) and vector (symbol ref vector:st_pool_right (RIGHT on VECTOR opens its pool-choice modal)) both claim 0x400cf714 -- both rewrite the same bytes\n poke site: analog-bassdrum (poke machine chooser has six rows, ANALOG BD the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: analog-bassdrum (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: analog-bassdrum (poke SRC SETUP name lookup admits AB) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: analog-bassdrum (poke machine chooser draws AB) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: analog-bassdrum (poke machine chooser highlights AB) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: analog-bassdrum (poke machine chooser persists AB) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes" + "bytes": 1121067, + "osSha256": "ae5bedda685386ce47d84a4c46d30a845ba29554d6037010b9c09caed0225a90", + "maskedOsSha256": "3cc48c8359d11fff632561ee0fa7765b3771c62f9fd5a1db074c649d99486819" }, - "result": "refused" + "result": "masked" }, { "moduleIds": [ - "analog-bassdrum", + "airwindows-chorus", "vector" ], "keepStockFx2": false, @@ -527,16 +543,20 @@ "COMPRESSOR", "LO-FI" ], - "fx2": [] + "fx2": [ + "AIR CHORUS" + ] }, "native": { - "refused": "remix 'octamod-composition-proof' has colliding modules:\n hook site: analog-bassdrum and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x40077b5c -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4006d784 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x400791e4 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: analog-bassdrum (symbol ref abcontrol:ab_engine_left (LEFT from Analog BD engine pool to machine chooser)) and vector (symbol ref vector:st_pool_choice_left (LEFT returns from VECTOR pool choice to machines)) both claim 0x400ce10e -- both rewrite the same bytes\n poke site: analog-bassdrum (symbol ref abcontrol:ab_engine_right (RIGHT on Analog BD enters its engine pool)) and vector (symbol ref vector:st_pool_right (RIGHT on VECTOR opens its pool-choice modal)) both claim 0x400cf714 -- both rewrite the same bytes\n poke site: analog-bassdrum (poke machine chooser has six rows, ANALOG BD the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: analog-bassdrum (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: analog-bassdrum (poke SRC SETUP name lookup admits AB) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: analog-bassdrum (poke machine chooser draws AB) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: analog-bassdrum (poke machine chooser highlights AB) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: analog-bassdrum (poke machine chooser persists AB) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes" + "bytes": 1121067, + "osSha256": "23fdcd850f080ef34c317ab551b96717b0ac84e72dd4de4c229b1f6d539d24d6", + "maskedOsSha256": "d4cf2f1cacfe88cd68ce0de3c5bcab4e5fec24b36fe4668144f571f44b647c82" }, - "result": "refused" + "result": "masked" }, { "moduleIds": [ - "usb-audio-out-tracks-main-cue", + "everb", "vector" ], "keepStockFx2": true, @@ -566,20 +586,19 @@ "LO-FI", "DELAY", "PLATE REV", - "SPRING REV", - "DARK REV" + "EVERB" ] }, "native": { - "bytes": 1123770, - "osSha256": "e30261aaf95cc04ff36db5231782bce5e5afaeb3b7c4efaf4efe9db40a74db46", - "maskedOsSha256": "3e26f4a0e710da1b7b9a5ad597433a06d427247838a3c2a80fb67ade8193e8d2" + "bytes": 1121067, + "osSha256": "20f71db85a5880da55edeb938a2f186571b228c7a11656a3b14b16311b09f44a", + "maskedOsSha256": "f450a373262f456f64fbd168c6a6abf0a2a6d0c268c0073773c60f27e4dde8c9" }, "result": "masked" }, { "moduleIds": [ - "usb-audio-out-tracks-main-cue", + "everb", "vector" ], "keepStockFx2": false, @@ -596,18 +615,20 @@ "COMPRESSOR", "LO-FI" ], - "fx2": [] + "fx2": [ + "EVERB" + ] }, "native": { - "bytes": 1123770, - "osSha256": "4d4e9655c64934adf6fd9e5b5abfaa7649ad678aa6523f100b3ea9dd9921cd16", - "maskedOsSha256": "59778a2b644e631ea86cfaad3c5003b2c901ff7c8e8cdf7acaec58fe3082826c" + "bytes": 1121067, + "osSha256": "42ac32b745676d2e90e152452871da9b3ef1c75554c9ec38f3660450119e237a", + "maskedOsSha256": "3be49c642f96b6ecae1e6ecdc1966b06ada809ecedf098de91dd03e84fbed36f" }, "result": "masked" }, { "moduleIds": [ - "quantizer", + "bbd", "vector" ], "keepStockFx2": true, @@ -636,21 +657,20 @@ "COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", - "SPRING REV", - "DARK REV" + "DARK REV", + "BBD" ] }, "native": { - "bytes": 1123257, - "osSha256": "2647acc08f00f3267667d3f86d26937d7b1510176a521fa6d5f0f6a07daef2c9", - "maskedOsSha256": "bcd68bc8fa9902d295c3621f04842e4cd73225b5feb22053d0b315c70dcfaf33" + "bytes": 1121094, + "osSha256": "c0a654f07ff0775969fc318a2a29c81a1ed3503d4a7938f8bb8af7d96b741f37", + "maskedOsSha256": "3604a2a3ab9c9004aca27f7aee80ec30b1e214ec1a213de6febfa92143df0fde" }, "result": "masked" }, { "moduleIds": [ - "quantizer", + "bbd", "vector" ], "keepStockFx2": false, @@ -667,18 +687,20 @@ "COMPRESSOR", "LO-FI" ], - "fx2": [] + "fx2": [ + "BBD" + ] }, "native": { - "bytes": 1123257, - "osSha256": "d693782164a4b125dbdc61802b741441580d766c908ea54ef74e11a35351dc35", - "maskedOsSha256": "09618100b11c04717a4c5674a78b78608ff063c86b9a753974dcc1e63d39a91a" + "bytes": 1121094, + "osSha256": "46d9f78929305dd95092544ce661398597db78460efce98c01aa12ad1a6d3039", + "maskedOsSha256": "40b08f3d941622bae75de412346465c177abde1b406d29632c8e5c269cbb19d9" }, "result": "masked" }, { "moduleIds": [ - "synth", + "lofi2", "vector" ], "keepStockFx2": true, @@ -707,19 +729,20 @@ "COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", - "SPRING REV", - "DARK REV" + "DARK REV", + "LOFI2" ] }, "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": 1121067, + "osSha256": "91fb06dc60c9f18f4e4b13738fb8c94c48347d44199447d424efd8293f0df57d", + "maskedOsSha256": "ae25fb14da025ee6d6dbd6438dc3eda85a777dfa530e0c0c1a2743ac1c16d31f" }, - "result": "refused" + "result": "masked" }, { "moduleIds": [ - "synth", + "lofi2", "vector" ], "keepStockFx2": false, @@ -736,16 +759,20 @@ "COMPRESSOR", "LO-FI" ], - "fx2": [] + "fx2": [ + "LOFI2" + ] }, "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": 1121067, + "osSha256": "36bc017dd9cad50aeba286762f424ff08acf374f753b7d7287eca42307832619", + "maskedOsSha256": "08c889a768e7bde165f673de3bced168643b415e62444786d67e230f35e72db3" }, - "result": "refused" + "result": "masked" }, { "moduleIds": [ - "previewvol", + "ring-sc", "vector" ], "keepStockFx2": true, @@ -760,7 +787,8 @@ "SPATIALIZER", "COMB FILTER", "COMPRESSOR", - "LO-FI" + "LO-FI", + "RING_SC" ], "fx2": [ "FILTER", @@ -775,20 +803,20 @@ "LO-FI", "DELAY", "PLATE REV", - "SPRING REV", - "DARK REV" + "DARK REV", + "RING_SC" ] }, "native": { - "bytes": 1121076, - "osSha256": "19ada0c4f27e961b74f79042b20d8056d8f3e48db420e7a02c268c00c1bcac42", - "maskedOsSha256": "2cc05d3afa0bf1071744b997e75327884f20f5d45ff9e79ebc7f1c974bc042ba" + "bytes": 1121067, + "osSha256": "96e30b065e5bac010a15be8dd524b1eea161e76c69b476136112937a090094de", + "maskedOsSha256": "dcb5e0a1ec7683706a53f8d5dd6d485960b5d2ecc3c0e0b3e6c958974aead8dd" }, "result": "masked" }, { "moduleIds": [ - "previewvol", + "ring-sc", "vector" ], "keepStockFx2": false, @@ -803,20 +831,23 @@ "SPATIALIZER", "COMB FILTER", "COMPRESSOR", - "LO-FI" + "LO-FI", + "RING_SC" ], - "fx2": [] + "fx2": [ + "RING_SC" + ] }, "native": { - "bytes": 1121076, - "osSha256": "b53d1e2732c20799ae69ca26233dad4ee0aa19327a5487bf58ee669a40158a77", - "maskedOsSha256": "4d1c8031035796b08d832c6fd102f29deaa4ea707d191b0115fc466c89df3cc7" + "bytes": 1121067, + "osSha256": "730ee8522c914b7c9d754b6dcffc02207eee1b6e066642d7a4ce98534a34e4c8", + "maskedOsSha256": "94f3fd420bcd30cc84fee7e5fa0791c470cdc4115b9d90fbe1e15597156ec82f" }, "result": "masked" }, { "moduleIds": [ - "cc-map", + "analog-bassdrum", "vector" ], "keepStockFx2": true, @@ -846,20 +877,17 @@ "LO-FI", "DELAY", "PLATE REV", - "SPRING REV", "DARK REV" ] }, "native": { - "bytes": 1121076, - "osSha256": "3d75381ddf4e2899104fe84ab4af3d7ed1e8acac2c19428d9bbc8918a5868c6c", - "maskedOsSha256": "2293d81bda7804a8b93623ebfead516a4538a98beb68f65a7a9fe37591e4ff58" + "refused": "remix 'octamod-composition-proof' has colliding modules:\n hook site: analog-bassdrum and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x40077b5c -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4006d784 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x400791e4 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: analog-bassdrum (symbol ref abcontrol:ab_engine_left (LEFT from Analog BD engine pool to machine chooser)) and vector (symbol ref vector:st_pool_choice_left (LEFT returns from VECTOR pool choice to machines)) both claim 0x400ce10e -- both rewrite the same bytes\n poke site: analog-bassdrum (symbol ref abcontrol:ab_engine_right (RIGHT on Analog BD enters its engine pool)) and vector (symbol ref vector:st_pool_right (RIGHT on VECTOR opens its pool-choice modal)) both claim 0x400cf714 -- both rewrite the same bytes\n poke site: analog-bassdrum (poke machine chooser has six rows, ANALOG BD the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: analog-bassdrum (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: analog-bassdrum (poke SRC SETUP name lookup admits AB) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: analog-bassdrum (poke machine chooser draws AB) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: analog-bassdrum (poke machine chooser highlights AB) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: analog-bassdrum (poke machine chooser persists AB) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes" }, - "result": "masked" + "result": "refused" }, { "moduleIds": [ - "cc-map", + "analog-bassdrum", "vector" ], "keepStockFx2": false, @@ -879,15 +907,13 @@ "fx2": [] }, "native": { - "bytes": 1121076, - "osSha256": "a3efb6516d3e9e165fa8ad3b0176c74f593d1c215e2ef4697d2dc83c46dd298a", - "maskedOsSha256": "92f2940e80041e8dd8e96fdcf2cceae03bd97d10701c16608be747a96393c60b" + "refused": "remix 'octamod-composition-proof' has colliding modules:\n hook site: analog-bassdrum and vector both claim 0x40002318 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x40077b5c -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4006d784 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x400791e4 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x400334d8 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4003c928 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4003d718 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4004c36a -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4003c980 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x400786c8 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x400585dc -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4005221e -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x40078886 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4007981c -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4005a616 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4005a850 -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4003a52e -- the second jmp overwrites the first\n hook site: analog-bassdrum and vector both claim 0x4003cd98 -- the second jmp overwrites the first\n poke site: analog-bassdrum (symbol ref abcontrol:ab_engine_left (LEFT from Analog BD engine pool to machine chooser)) and vector (symbol ref vector:st_pool_choice_left (LEFT returns from VECTOR pool choice to machines)) both claim 0x400ce10e -- both rewrite the same bytes\n poke site: analog-bassdrum (symbol ref abcontrol:ab_engine_right (RIGHT on Analog BD enters its engine pool)) and vector (symbol ref vector:st_pool_right (RIGHT on VECTOR opens its pool-choice modal)) both claim 0x400cf714 -- both rewrite the same bytes\n poke site: analog-bassdrum (poke machine chooser has six rows, ANALOG BD the last) and vector (poke VECTOR is machine chooser row six) both claim 0x40079248 -- both rewrite the same bytes\n poke site: analog-bassdrum (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: analog-bassdrum (poke SRC SETUP name lookup admits AB) and vector (poke VECTOR is machine chooser row six) both claim 0x4003c950 -- both rewrite the same bytes\n poke site: analog-bassdrum (poke machine chooser draws AB) and vector (poke VECTOR is machine chooser row six) both claim 0x40078678 -- both rewrite the same bytes\n poke site: analog-bassdrum (poke machine chooser highlights AB) and vector (poke VECTOR is machine chooser row six) both claim 0x400786ce -- both rewrite the same bytes\n poke site: analog-bassdrum (poke machine chooser persists AB) and vector (poke VECTOR is machine chooser row six) both claim 0x40079904 -- both rewrite the same bytes" }, - "result": "masked" + "result": "refused" }, { "moduleIds": [ - "sidechain-compressor", + "usb-audio-out-tracks-main-cue", "vector" ], "keepStockFx2": true, @@ -901,7 +927,7 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI" ], "fx2": [ @@ -913,23 +939,24 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", "DELAY", "PLATE REV", + "SPRING REV", "DARK REV" ] }, "native": { - "bytes": 1121076, - "osSha256": "ee71fcbabc9f1b4fd3cea0124c5c57763d4b43c80d14d71753f151ed0489d032", - "maskedOsSha256": "6ee934c7e13114cb180d260151e0b1c6344cdb7982ec709e182abef6e9ffde02" + "bytes": 1123760, + "osSha256": "05cd02e2fc6cbfe928d3fe81570a00fefaf5cb0096f4508cd690db91cb238e7b", + "maskedOsSha256": "df5cf853664a9a0da0787b898c243029bf9efa966f899c56e08f6f09f9d08f0e" }, "result": "masked" }, { "moduleIds": [ - "sidechain-compressor", + "usb-audio-out-tracks-main-cue", "vector" ], "keepStockFx2": false, @@ -943,24 +970,22 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI" ], - "fx2": [ - "SIDECHAIN_COMPRESSOR" - ] + "fx2": [] }, "native": { - "bytes": 1121076, - "osSha256": "2a94dbd7522f9a287434e1426645d231e0ae5bb18283a8151cdfa10a78ea35d6", - "maskedOsSha256": "9f0c4dc5bb60f69d27c0c4e7eebc2cfa145f96cf8829ed51d4b3a121b9c26a1a" + "bytes": 1123760, + "osSha256": "287857a4b8964c4b9b6109a490fd6b2f4d752fd262a8b514f02e5f6e3b6e4f85", + "maskedOsSha256": "cebce07989bbf30622320039d7572c399d6cd01e7d5d97f847a51ce7ba58149c" }, "result": "masked" }, { "moduleIds": [ - "vector", - "playmodes" + "quantizer", + "vector" ], "keepStockFx2": true, "menu": { @@ -994,16 +1019,16 @@ ] }, "native": { - "bytes": 1126060, - "osSha256": "9670a635132678ed36bc8bd870a8fac3eed43d1c8c53af1d06764d6d48c25a95", - "maskedOsSha256": "6e3c0e7407d8319611d285ca8e40021bdc24bb1ff86a2cc35cbf65ea374a9403" + "bytes": 1123261, + "osSha256": "851a138c38786ac66456d7bde06b2073fc1e678ecdf5144af2f93668422bc8c2", + "maskedOsSha256": "240f76e05c7789c38d5e18566b5579b33ac740ae450f32a27c2188b6bdc94da5" }, "result": "masked" }, { "moduleIds": [ - "vector", - "playmodes" + "quantizer", + "vector" ], "keepStockFx2": false, "menu": { @@ -1022,16 +1047,16 @@ "fx2": [] }, "native": { - "bytes": 1126060, - "osSha256": "b99c38b9439ecf7ccd3c870c18f37b54ab6dd2c8f9bdd4cb710e65838223bf4e", - "maskedOsSha256": "8885f608310c20b7c500a5aadf840f5b14941f982641013c8f1cbd1e0d5f4813" + "bytes": 1123261, + "osSha256": "ec94b0f8a9fd498038132b788a9cdf5ad619687262881e546e9bb45dfbe568a0", + "maskedOsSha256": "36e05863a742eaf061469bc5a5f9cc05566ebf54c925d54d4029a3b276fed943" }, "result": "masked" }, { "moduleIds": [ - "vector", - "mute-modes" + "synth", + "vector" ], "keepStockFx2": true, "menu": { @@ -1065,16 +1090,14 @@ ] }, "native": { - "bytes": 1121076, - "osSha256": "eaa66566c2d4e65dbce06bd6039f13ee387d10219533f24cf503db677a343822", - "maskedOsSha256": "2bde26522210f50bec01d0afea15ce50527136208567bd3da44c7b5476cd3b84" + "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": "masked" + "result": "refused" }, { "moduleIds": [ - "vector", - "mute-modes" + "synth", + "vector" ], "keepStockFx2": false, "menu": { @@ -1093,16 +1116,14 @@ "fx2": [] }, "native": { - "bytes": 1121076, - "osSha256": "e2c128002dab843d292aed69d8b0b3f50036fa58c7282cc19834bd05ef3bf712", - "maskedOsSha256": "b234bc77d48f1c11be30ca235a48cb0c918a1266fc42f3f805ea6932fbd45d04" + "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": "masked" + "result": "refused" }, { "moduleIds": [ - "vector", - "recorder-loop-fix" + "previewvol", + "vector" ], "keepStockFx2": true, "menu": { @@ -1136,17 +1157,16 @@ ] }, "native": { - "bytes": 1121076, - "osSha256": "5f835ea60132690436e9fe3d86a3ea6ef0fbf19f4bedc6a5fe1894bc9559afa9", - "maskedOsSha256": "15d92f62181155fbb0af7787a20cf54f37eb3bc634e50ad7f09e246acfb20df7", - "platformArena": true + "bytes": 1121067, + "osSha256": "ae065d24925cc470fe1f84b9080dfed505a8234570270e7bb6fc931dbc4fad72", + "maskedOsSha256": "c6b753f2c6b495bde238313142523a74dbb760c0f42b8af800941b1da47f55e7" }, "result": "masked" }, { "moduleIds": [ - "vector", - "recorder-loop-fix" + "previewvol", + "vector" ], "keepStockFx2": false, "menu": { @@ -1165,30 +1185,16 @@ "fx2": [] }, "native": { - "bytes": 1121076, - "osSha256": "2abb458625042e846120d716d81dd785aa30af5ed50ec4fde171822996cec364", - "maskedOsSha256": "7992234753800aff7b6f7ac93a415cf5258757d7ea7c36dfe1992ef87adf0064", - "platformArena": true + "bytes": 1121067, + "osSha256": "40b2eb21e9704bb2016ad16bbef5fac092288855a8ab850f413a5d3212252685", + "maskedOsSha256": "c20114ea5d3fcde8cf5712cc166ecbcd2592b4e3ed603c43253b344d0e60095b" }, "result": "masked" }, { "moduleIds": [ - "miniverb", - "tapeecho", - "euclid", - "repitch", - "tapehead", - "usb-audio-out-tracks-main-cue", - "quantizer", - "synth", - "previewvol", "cc-map", - "sidechain-compressor", - "vector", - "playmodes", - "mute-modes", - "recorder-loop-fix" + "vector" ], "keepStockFx2": true, "menu": { @@ -1201,10 +1207,8 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", - "LO-FI", - "EUCLID", - "TAPEHEAD" + "COMPRESSOR", + "LO-FI" ], "fx2": [ "FILTER", @@ -1215,38 +1219,25 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", "DELAY", "PLATE REV", - "MINIVERB", - "TAPE ECHO", - "EUCLID", - "TAPEHEAD" + "SPRING REV", + "DARK REV" ] }, "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" + "bytes": 1121067, + "osSha256": "76300000e32b963b9444ba4ba800e0bafbd57473d3a8085fceed4286fb69b56b", + "maskedOsSha256": "904b6313c1e6f599b0abcd0356dfac6392cecd60be6f5b82334d7872f7d0969f" }, - "result": "refused" + "result": "masked" }, { "moduleIds": [ - "miniverb", - "tapeecho", - "euclid", - "repitch", - "tapehead", - "usb-audio-out-tracks-main-cue", - "quantizer", - "synth", - "previewvol", "cc-map", - "sidechain-compressor", - "vector", - "playmodes", - "mute-modes", - "recorder-loop-fix" + "vector" ], "keepStockFx2": false, "menu": { @@ -1259,40 +1250,22 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", - "LO-FI", - "EUCLID", - "TAPEHEAD" + "COMPRESSOR", + "LO-FI" ], - "fx2": [ - "MINIVERB", - "TAPE ECHO", - "EUCLID", - "TAPEHEAD", - "SIDECHAIN_COMPRESSOR" - ] + "fx2": [] }, "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" + "bytes": 1121067, + "osSha256": "c60ee044f6817f4b6b58c70f0824f035ee31fdb406c5fbe533e99ab2544d9bed", + "maskedOsSha256": "9117d1ff815d7169c56c4d038cfc2309cfc9d4d9086e00d5274606e6443afdfb" }, - "result": "refused" + "result": "masked" }, { "moduleIds": [ - "tapeecho", - "euclid", - "repitch", - "tapehead", - "usb-audio-out-tracks-main-cue", - "quantizer", - "synth", - "previewvol", - "cc-map", "sidechain-compressor", - "vector", - "playmodes", - "mute-modes", - "recorder-loop-fix" + "vector" ], "keepStockFx2": true, "menu": { @@ -1306,9 +1279,7 @@ "SPATIALIZER", "COMB FILTER", "SIDECHAIN_COMPRESSOR", - "LO-FI", - "EUCLID", - "TAPEHEAD" + "LO-FI" ], "fx2": [ "FILTER", @@ -1322,33 +1293,21 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "DARK REV", - "TAPE ECHO", - "EUCLID", - "TAPEHEAD" + "PLATE REV", + "DARK REV" ] }, "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" + "bytes": 1121067, + "osSha256": "42d33a8d6369a5add6791fc18d2efea848ce52ce241eb60479c11813de6b1686", + "maskedOsSha256": "e3a4f45ea8426542ed09a87812b03e184b2a633d76b664c9fd83dd083cf1ca39" }, - "result": "refused" + "result": "masked" }, { "moduleIds": [ - "tapeecho", - "euclid", - "repitch", - "tapehead", - "usb-audio-out-tracks-main-cue", - "quantizer", - "synth", - "previewvol", - "cc-map", "sidechain-compressor", - "vector", - "playmodes", - "mute-modes", - "recorder-loop-fix" + "vector" ], "keepStockFx2": false, "menu": { @@ -1362,38 +1321,23 @@ "SPATIALIZER", "COMB FILTER", "SIDECHAIN_COMPRESSOR", - "LO-FI", - "EUCLID", - "TAPEHEAD" + "LO-FI" ], "fx2": [ - "TAPE ECHO", - "EUCLID", - "TAPEHEAD", "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" + "bytes": 1121067, + "osSha256": "e5d899c6385e6362dd4ac05680012a3ac751c6edde7bbc218cb861eecb3116bc", + "maskedOsSha256": "f3e800f05d7bfd082b126d9e4b68b17f53b9da94552799341eb6cd658b2d50c4" }, - "result": "refused" + "result": "masked" }, { "moduleIds": [ - "miniverb", - "euclid", - "repitch", - "tapehead", - "usb-audio-out-tracks-main-cue", - "quantizer", - "synth", - "previewvol", - "cc-map", - "sidechain-compressor", "vector", - "playmodes", - "mute-modes", - "recorder-loop-fix" + "playmodes" ], "keepStockFx2": true, "menu": { @@ -1406,10 +1350,8 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", - "LO-FI", - "EUCLID", - "TAPEHEAD" + "COMPRESSOR", + "LO-FI" ], "fx2": [ "FILTER", @@ -1420,36 +1362,2942 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", "DELAY", "PLATE REV", - "MINIVERB", - "EUCLID", - "TAPEHEAD" + "SPRING REV", + "DARK REV" ] }, "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" + "bytes": 1126805, + "osSha256": "2463c0ee97fb07be53d8234fa93b5145ae61f3ad703654f8542ee93002117e21", + "maskedOsSha256": "fe07f4cb649ae180d118094628a4c0d43881e68eb0c2536f4c2ac5369c835cfc" }, - "result": "refused" + "result": "masked" }, { "moduleIds": [ - "miniverb", - "euclid", + "vector", + "playmodes" + ], + "keepStockFx2": false, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI" + ], + "fx2": [] + }, + "native": { + "bytes": 1126805, + "osSha256": "ead33f11310d4af745809eb2cc3084d997dbe8e6202901d8e3ab950be977b36f", + "maskedOsSha256": "176aba6b1069be0e16ee797403b0078af44773b8e9a21b16782610eb2f169996" + }, + "result": "masked" + }, + { + "moduleIds": [ + "vector", + "mute-modes" + ], + "keepStockFx2": true, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI" + ], + "fx2": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI", + "DELAY", + "PLATE REV", + "SPRING REV", + "DARK REV" + ] + }, + "native": { + "bytes": 1121067, + "osSha256": "852206c8cbc06628d3e4b8b1993cfb1f7575975f13d53b196da2cdb9d87db08c", + "maskedOsSha256": "92672f6ae14f4ec6e1ee58df35ec251cd46c6c76c4730e7075a74ef220866131" + }, + "result": "masked" + }, + { + "moduleIds": [ + "vector", + "mute-modes" + ], + "keepStockFx2": false, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI" + ], + "fx2": [] + }, + "native": { + "bytes": 1121067, + "osSha256": "257ce900fc6c4da90ad1b9c7e55e5001301716d728d1d3649e6166b0ab7cf81b", + "maskedOsSha256": "496a683c130e23806e4df596e7dd2e40c82a2f2d344774653b823c489cda661a" + }, + "result": "masked" + }, + { + "moduleIds": [ + "vector", + "recorder-loop-fix" + ], + "keepStockFx2": true, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI" + ], + "fx2": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI", + "DELAY", + "PLATE REV", + "SPRING REV", + "DARK REV" + ] + }, + "native": { + "bytes": 1121067, + "osSha256": "6e4596bf18984f1732809752c5ffee3d821d68986502336ac874a75dfb37c8e1", + "maskedOsSha256": "26c51e896e0baa88a60deb0fb171f246da2456a8cc4e2b0851f0951954169d7c", + "platformArena": true + }, + "result": "masked" + }, + { + "moduleIds": [ + "vector", + "recorder-loop-fix" + ], + "keepStockFx2": false, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI" + ], + "fx2": [] + }, + "native": { + "bytes": 1121067, + "osSha256": "730732059209d54214b8d1874d3c507fd88165a800a0ddbef490c3803e9b0f7c", + "maskedOsSha256": "af28ab89ffedac76aedfac801b99fab9eaf1e814f2b0746f15ad4a5cc171afba", + "platformArena": true + }, + "result": "masked" + }, + { + "moduleIds": [ + "vector", + "poly8" + ], + "keepStockFx2": true, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI" + ], + "fx2": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI", + "DELAY", + "PLATE REV", + "SPRING REV", + "DARK REV" + ] + }, + "native": { + "bytes": 1134062, + "osSha256": "35dd8d08079f123d29f9290652e7864f724acf17b99e3f1dad347e3a1c7fc37f", + "maskedOsSha256": "3f041a65f88e63df12a2799ce2b8fdc1bce1501caed1f329f6ec16333ef98f29" + }, + "result": "masked" + }, + { + "moduleIds": [ + "vector", + "poly8" + ], + "keepStockFx2": false, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI" + ], + "fx2": [] + }, + "native": { + "bytes": 1134062, + "osSha256": "6edeb28c95aa76a6ec0f8137c99198e4bfe6688a9289d6e867bf04f5a6067f15", + "maskedOsSha256": "d9cb89cd1d21d165ebda1ae51723fad2b30a7aa2501777278f19bdb5a92482b4" + }, + "result": "masked" + }, + { + "moduleIds": [ + "vector", + "output-matrix" + ], + "keepStockFx2": true, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI" + ], + "fx2": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI", + "DELAY", + "PLATE REV", + "DARK REV" + ] + }, + "native": { + "bytes": 1122257, + "osSha256": "95dc290f21a25bb589cc9762366df9b8f3eeda13614035eec5dbb16ce1b1b611", + "maskedOsSha256": "88f09aac65a798c54a24e3f40d180bba1f8e1327e07b50614a877d5f660581b1" + }, + "result": "masked" + }, + { + "moduleIds": [ + "vector", + "output-matrix" + ], + "keepStockFx2": false, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI" + ], + "fx2": [] + }, + "native": { + "bytes": 1122257, + "osSha256": "2563abdfc81ac65cf246ebbacc830425e7969434a086ccd16538899cbdf4bc26", + "maskedOsSha256": "b7dba4ba91044f2ba228b02f7130d6c9ab20f9fa49736c1323e0166a40b8b3d8" + }, + "result": "masked" + }, + { + "moduleIds": [ + "vector", + "quantize-live-rec-toggle" + ], + "keepStockFx2": true, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI" + ], + "fx2": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI", + "DELAY", + "PLATE REV", + "SPRING REV", + "DARK REV" + ] + }, + "native": { + "bytes": 1121067, + "osSha256": "bcc97b072585385f7881f4d7e67d23e9e22b2f1d1f538902ab12acd3d196256c", + "maskedOsSha256": "5b594476f2a64ed3db6617b2e0b706e39e12e29bf81d2f2a0e570f90fb7135c7" + }, + "result": "masked" + }, + { + "moduleIds": [ + "vector", + "quantize-live-rec-toggle" + ], + "keepStockFx2": false, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI" + ], + "fx2": [] + }, + "native": { + "bytes": 1121067, + "osSha256": "54cbdb6f3d265bd1240719bc0e013044e81bff3124adf2af713a3394df25c425", + "maskedOsSha256": "17a7cc045f1e7b3c7a93ee7cc4c27ecf6ff0ad6fd272b18614da3f6ee0c7fe71" + }, + "result": "masked" + }, + { + "moduleIds": [ + "vector", + "apply-scene" + ], + "keepStockFx2": true, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI" + ], + "fx2": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI", + "DELAY", + "PLATE REV", + "SPRING REV", + "DARK REV" + ] + }, + "native": { + "bytes": 1122298, + "osSha256": "4ff6e57f325e078111d9881df62b49eed78163e466797ce9548c8d835513ada6", + "maskedOsSha256": "2ddc935070690a4e8ec6000932bf5e1f0de71125e63f3e0338cae0b860d7c4d4" + }, + "result": "masked" + }, + { + "moduleIds": [ + "vector", + "apply-scene" + ], + "keepStockFx2": false, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI" + ], + "fx2": [] + }, + "native": { + "bytes": 1122298, + "osSha256": "25cda2ef6f5c1fa3803df8210482324d4cbd1a66d98094daf9c4e48706ec810a", + "maskedOsSha256": "2219e34affd09e67f44b6c33dcf19bb88f491df7a7d8a1b8a2efc027376bf05d" + }, + "result": "masked" + }, + { + "moduleIds": [ + "vector", + "direct-jump-kyoti" + ], + "keepStockFx2": true, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI" + ], + "fx2": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI", + "DELAY", + "PLATE REV", + "SPRING REV", + "DARK REV" + ] + }, + "native": { + "bytes": 1122450, + "osSha256": "b1198833e94b27cc6066abc7acb589b4c6886a3dc0d0305713b14fd63cc552ac", + "maskedOsSha256": "da83bb95834992ed62473523aad3fc0726246f108e7fe81f1519e4907fb43354" + }, + "result": "masked" + }, + { + "moduleIds": [ + "vector", + "direct-jump-kyoti" + ], + "keepStockFx2": false, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI" + ], + "fx2": [] + }, + "native": { + "bytes": 1122450, + "osSha256": "5bd111b2b40bf1999ff6768cbe97ed5ef2975d2234c3cb6e204d9dc04c94b343", + "maskedOsSha256": "ef95136e2e0f4714686ab3d3e7f0c21b958e83ba604f2743ab9eb94b9190b819" + }, + "result": "masked" + }, + { + "moduleIds": [ + "vector", + "dejavu" + ], + "keepStockFx2": true, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI" + ], + "fx2": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI", + "DELAY", + "PLATE REV", + "SPRING REV", + "DARK REV" + ] + }, + "native": { + "bytes": 1122675, + "osSha256": "599076160193c775cdd13520fa5636f57a6af459d6d9c1890f03a0e6ae18501c", + "maskedOsSha256": "fe814f72fd1b09cb3e0e4228288c172518073a65ac60ab7fff6770732e6f5df0" + }, + "result": "masked" + }, + { + "moduleIds": [ + "vector", + "dejavu" + ], + "keepStockFx2": false, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI" + ], + "fx2": [] + }, + "native": { + "bytes": 1122675, + "osSha256": "9537d4e09de53de25323471a3bc1fb3877df62d6625ad01817c8e6d2c2e41999", + "maskedOsSha256": "f3416a63f9912c48b98c31dbb04bbfe5623eccd812c17d82a02011955f4d0fa1" + }, + "result": "masked" + }, + { + "moduleIds": [ + "vector", + "arp-key-locks" + ], + "keepStockFx2": true, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI" + ], + "fx2": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI", + "DELAY", + "PLATE REV", + "SPRING REV", + "DARK REV" + ] + }, + "native": { + "bytes": 1123981, + "osSha256": "aadfd69bf9dcc4e4913036a2e4923c048d02c17e335da6b32fa03ba5db46da56", + "maskedOsSha256": "f11c04acf63b9c2360df9eba53485237834a7de3e8ec7e3e4a928e28de0f5336" + }, + "result": "masked" + }, + { + "moduleIds": [ + "vector", + "arp-key-locks" + ], + "keepStockFx2": false, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI" + ], + "fx2": [] + }, + "native": { + "bytes": 1123981, + "osSha256": "526ee8a03a8158bf21f88644a2ec984885105b994cdb84ebca876f6e3cdfdf64", + "maskedOsSha256": "05cca2da6511c91237ca62627e0196f4eab3ffd5f1f3f10abc62d3802c078e59" + }, + "result": "masked" + }, + { + "moduleIds": [ + "vector", + "beat-slicer" + ], + "keepStockFx2": true, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI" + ], + "fx2": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI", + "DELAY", + "PLATE REV", + "SPRING REV", + "DARK REV" + ] + }, + "native": { + "bytes": 1121067, + "osSha256": "c3d36297974621086c554585e822b13958cf59a5aa017e10a278ec37e455ecc9", + "maskedOsSha256": "fa2b6d59ad779563aa77690ccf43d56378ba80742ca1d3b16aca63763d8d5958" + }, + "result": "masked" + }, + { + "moduleIds": [ + "vector", + "beat-slicer" + ], + "keepStockFx2": false, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI" + ], + "fx2": [] + }, + "native": { + "bytes": 1121067, + "osSha256": "3ae7b28075e0eee4bdb0e2ce6de91ce0882e3bb68392d2fa7e88185ec6685ed0", + "maskedOsSha256": "58fc4fce2912a0c852109b0950c0b10fb4d10b5c79de2c1ea43619a46d0c6b10" + }, + "result": "masked" + }, + { + "moduleIds": [ + "miniverb", + "tapeecho", + "euclid", + "repitch", + "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", + "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "beat-slicer" + ], + "keepStockFx2": true, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID", + "TAPEHEAD", + "RING_SC" + ], + "fx2": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "DELAY", + "MINIVERB", + "TAPE ECHO", + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC" + ] + }, + "native": { + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" + }, + "result": "refused" + }, + { + "moduleIds": [ + "miniverb", + "tapeecho", + "euclid", + "repitch", + "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", + "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "beat-slicer" + ], + "keepStockFx2": false, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID", + "TAPEHEAD", + "RING_SC" + ], + "fx2": [ + "MINIVERB", + "TAPE ECHO", + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC", + "SIDECHAIN_COMPRESSOR" + ] + }, + "native": { + "refused": "SYNTH MACHINE fm_qzc at 0x400d7b80 not free" + }, + "result": "refused" + }, + { + "moduleIds": [ + "tapeecho", + "euclid", + "repitch", + "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", + "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "beat-slicer" + ], + "keepStockFx2": true, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID", + "TAPEHEAD", + "RING_SC" + ], + "fx2": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "DELAY", + "TAPE ECHO", + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC" + ] + }, + "native": { + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7a00 not free" + }, + "result": "refused" + }, + { + "moduleIds": [ + "tapeecho", + "euclid", + "repitch", + "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", + "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "beat-slicer" + ], + "keepStockFx2": false, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID", + "TAPEHEAD", + "RING_SC" + ], + "fx2": [ + "TAPE ECHO", + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC", + "SIDECHAIN_COMPRESSOR" + ] + }, + "native": { + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" + }, + "result": "refused" + }, + { + "moduleIds": [ + "miniverb", + "euclid", + "repitch", + "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", + "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "beat-slicer" + ], + "keepStockFx2": true, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID", + "TAPEHEAD", + "RING_SC" + ], + "fx2": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "DELAY", + "MINIVERB", + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC" + ] + }, + "native": { + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7a00 not free" + }, + "result": "refused" + }, + { + "moduleIds": [ + "miniverb", + "euclid", + "repitch", + "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", + "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "beat-slicer" + ], + "keepStockFx2": false, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID", + "TAPEHEAD", + "RING_SC" + ], + "fx2": [ + "MINIVERB", + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC", + "SIDECHAIN_COMPRESSOR" + ] + }, + "native": { + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" + }, + "result": "refused" + }, + { + "moduleIds": [ + "miniverb", + "tapeecho", + "repitch", + "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", + "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "beat-slicer" + ], + "keepStockFx2": true, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "TAPEHEAD", + "RING_SC" + ], + "fx2": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "DELAY", + "MINIVERB", + "TAPE ECHO", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC" + ] + }, + "native": { + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7a00 not free" + }, + "result": "refused" + }, + { + "moduleIds": [ + "miniverb", + "tapeecho", + "repitch", + "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", + "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "beat-slicer" + ], + "keepStockFx2": false, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "TAPEHEAD", + "RING_SC" + ], + "fx2": [ + "MINIVERB", + "TAPE ECHO", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC", + "SIDECHAIN_COMPRESSOR" + ] + }, + "native": { + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" + }, + "result": "refused" + }, + { + "moduleIds": [ + "miniverb", + "tapeecho", + "euclid", + "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", + "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "beat-slicer" + ], + "keepStockFx2": true, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID", + "TAPEHEAD", + "RING_SC" + ], + "fx2": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "DELAY", + "MINIVERB", + "TAPE ECHO", + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC" + ] + }, + "native": { + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" + }, + "result": "refused" + }, + { + "moduleIds": [ + "miniverb", + "tapeecho", + "euclid", + "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", + "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "beat-slicer" + ], + "keepStockFx2": false, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID", + "TAPEHEAD", + "RING_SC" + ], + "fx2": [ + "MINIVERB", + "TAPE ECHO", + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC", + "SIDECHAIN_COMPRESSOR" + ] + }, + "native": { + "refused": "SYNTH MACHINE fm_qzc at 0x400d7b80 not free" + }, + "result": "refused" + }, + { + "moduleIds": [ + "miniverb", + "tapeecho", + "euclid", + "repitch", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", + "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "beat-slicer" + ], + "keepStockFx2": true, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID", + "RING_SC" + ], + "fx2": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "DELAY", + "MINIVERB", + "TAPE ECHO", + "EUCLID", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC" + ] + }, + "native": { + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7a00 not free" + }, + "result": "refused" + }, + { + "moduleIds": [ + "miniverb", + "tapeecho", + "euclid", + "repitch", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", + "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "beat-slicer" + ], + "keepStockFx2": false, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID", + "RING_SC" + ], + "fx2": [ + "MINIVERB", + "TAPE ECHO", + "EUCLID", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC", + "SIDECHAIN_COMPRESSOR" + ] + }, + "native": { + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" + }, + "result": "refused" + }, + { + "moduleIds": [ + "miniverb", + "tapeecho", + "euclid", + "repitch", + "tapehead", + "everb", + "bbd", + "lofi2", + "ring-sc", + "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "beat-slicer" + ], + "keepStockFx2": true, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID", + "TAPEHEAD", + "RING_SC" + ], + "fx2": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "DELAY", + "MINIVERB", + "TAPE ECHO", + "EUCLID", + "TAPEHEAD", + "EVERB", + "BBD", + "LOFI2", + "RING_SC" + ] + }, + "native": { + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7a00 not free" + }, + "result": "refused" + }, + { + "moduleIds": [ + "miniverb", + "tapeecho", + "euclid", + "repitch", + "tapehead", + "everb", + "bbd", + "lofi2", + "ring-sc", + "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "beat-slicer" + ], + "keepStockFx2": false, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID", + "TAPEHEAD", + "RING_SC" + ], + "fx2": [ + "MINIVERB", + "TAPE ECHO", + "EUCLID", + "TAPEHEAD", + "EVERB", + "BBD", + "LOFI2", + "RING_SC", + "SIDECHAIN_COMPRESSOR" + ] + }, + "native": { + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" + }, + "result": "refused" + }, + { + "moduleIds": [ + "miniverb", + "tapeecho", + "euclid", + "repitch", + "tapehead", + "airwindows-chorus", + "bbd", + "lofi2", + "ring-sc", + "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "beat-slicer" + ], + "keepStockFx2": true, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID", + "TAPEHEAD", + "RING_SC" + ], + "fx2": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "DELAY", + "MINIVERB", + "TAPE ECHO", + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "BBD", + "LOFI2", + "RING_SC" + ] + }, + "native": { + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7a00 not free" + }, + "result": "refused" + }, + { + "moduleIds": [ + "miniverb", + "tapeecho", + "euclid", + "repitch", + "tapehead", + "airwindows-chorus", + "bbd", + "lofi2", + "ring-sc", + "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "beat-slicer" + ], + "keepStockFx2": false, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID", + "TAPEHEAD", + "RING_SC" + ], + "fx2": [ + "MINIVERB", + "TAPE ECHO", + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "BBD", + "LOFI2", + "RING_SC", + "SIDECHAIN_COMPRESSOR" + ] + }, + "native": { + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" + }, + "result": "refused" + }, + { + "moduleIds": [ + "miniverb", + "tapeecho", + "euclid", + "repitch", + "tapehead", + "airwindows-chorus", + "everb", + "lofi2", + "ring-sc", + "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "beat-slicer" + ], + "keepStockFx2": true, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID", + "TAPEHEAD", + "RING_SC" + ], + "fx2": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "DELAY", + "MINIVERB", + "TAPE ECHO", + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "LOFI2", + "RING_SC" + ] + }, + "native": { + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7a00 not free" + }, + "result": "refused" + }, + { + "moduleIds": [ + "miniverb", + "tapeecho", + "euclid", + "repitch", + "tapehead", + "airwindows-chorus", + "everb", + "lofi2", + "ring-sc", + "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "beat-slicer" + ], + "keepStockFx2": false, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID", + "TAPEHEAD", + "RING_SC" + ], + "fx2": [ + "MINIVERB", + "TAPE ECHO", + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "LOFI2", + "RING_SC", + "SIDECHAIN_COMPRESSOR" + ] + }, + "native": { + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" + }, + "result": "refused" + }, + { + "moduleIds": [ + "miniverb", + "tapeecho", + "euclid", + "repitch", + "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "ring-sc", + "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "beat-slicer" + ], + "keepStockFx2": true, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID", + "TAPEHEAD", + "RING_SC" + ], + "fx2": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "DELAY", + "MINIVERB", + "TAPE ECHO", + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "RING_SC" + ] + }, + "native": { + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7a00 not free" + }, + "result": "refused" + }, + { + "moduleIds": [ + "miniverb", + "tapeecho", + "euclid", + "repitch", + "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "ring-sc", + "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "beat-slicer" + ], + "keepStockFx2": false, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID", + "TAPEHEAD", + "RING_SC" + ], + "fx2": [ + "MINIVERB", + "TAPE ECHO", + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "RING_SC", + "SIDECHAIN_COMPRESSOR" + ] + }, + "native": { + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" + }, + "result": "refused" + }, + { + "moduleIds": [ + "miniverb", + "tapeecho", + "euclid", + "repitch", + "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "beat-slicer" + ], + "keepStockFx2": true, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID", + "TAPEHEAD" + ], + "fx2": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "DELAY", + "MINIVERB", + "TAPE ECHO", + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2" + ] + }, + "native": { + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7a00 not free" + }, + "result": "refused" + }, + { + "moduleIds": [ + "miniverb", + "tapeecho", + "euclid", + "repitch", + "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "beat-slicer" + ], + "keepStockFx2": false, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID", + "TAPEHEAD" + ], + "fx2": [ + "MINIVERB", + "TAPE ECHO", + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "SIDECHAIN_COMPRESSOR" + ] + }, + "native": { + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" + }, + "result": "refused" + }, + { + "moduleIds": [ + "miniverb", + "tapeecho", + "euclid", + "repitch", + "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", + "quantizer", + "synth", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "beat-slicer" + ], + "keepStockFx2": true, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID", + "TAPEHEAD", + "RING_SC" + ], + "fx2": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "DELAY", + "MINIVERB", + "TAPE ECHO", + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC" + ] + }, + "native": { + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" + }, + "result": "refused" + }, + { + "moduleIds": [ + "miniverb", + "tapeecho", + "euclid", + "repitch", + "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", + "quantizer", + "synth", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "beat-slicer" + ], + "keepStockFx2": false, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID", + "TAPEHEAD", + "RING_SC" + ], + "fx2": [ + "MINIVERB", + "TAPE ECHO", + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC", + "SIDECHAIN_COMPRESSOR" + ] + }, + "native": { + "refused": "SYNTH MACHINE fm_qzc at 0x400d7b80 not free" + }, + "result": "refused" + }, + { + "moduleIds": [ + "miniverb", + "tapeecho", + "euclid", + "repitch", + "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", + "usb-audio-out-tracks-main-cue", + "synth", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "beat-slicer" + ], + "keepStockFx2": true, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID", + "TAPEHEAD", + "RING_SC" + ], + "fx2": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "DELAY", + "MINIVERB", + "TAPE ECHO", + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC" + ] + }, + "native": { + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" + }, + "result": "refused" + }, + { + "moduleIds": [ + "miniverb", + "tapeecho", + "euclid", + "repitch", + "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", + "usb-audio-out-tracks-main-cue", + "synth", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "beat-slicer" + ], + "keepStockFx2": false, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID", + "TAPEHEAD", + "RING_SC" + ], + "fx2": [ + "MINIVERB", + "TAPE ECHO", + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC", + "SIDECHAIN_COMPRESSOR" + ] + }, + "native": { + "refused": "SYNTH MACHINE fm_qzc at 0x400d7b80 not free" + }, + "result": "refused" + }, + { + "moduleIds": [ + "miniverb", + "tapeecho", + "euclid", + "repitch", + "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", + "usb-audio-out-tracks-main-cue", + "quantizer", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "beat-slicer" + ], + "keepStockFx2": true, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID", + "TAPEHEAD", + "RING_SC" + ], + "fx2": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "DELAY", + "MINIVERB", + "TAPE ECHO", + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC" + ] + }, + "native": { + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" + }, + "result": "refused" + }, + { + "moduleIds": [ + "miniverb", + "tapeecho", + "euclid", + "repitch", + "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", + "usb-audio-out-tracks-main-cue", + "quantizer", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "beat-slicer" + ], + "keepStockFx2": false, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID", + "TAPEHEAD", + "RING_SC" + ], + "fx2": [ + "MINIVERB", + "TAPE ECHO", + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC", + "SIDECHAIN_COMPRESSOR" + ] + }, + "native": { + "refused": "SCALE QUANTIZER qzc at 0x400d7b80 not free" + }, + "result": "refused" + }, + { + "moduleIds": [ + "miniverb", + "tapeecho", + "euclid", + "repitch", + "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", + "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "beat-slicer" + ], + "keepStockFx2": true, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID", + "TAPEHEAD", + "RING_SC" + ], + "fx2": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "DELAY", + "MINIVERB", + "TAPE ECHO", + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC" + ] + }, + "native": { + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" + }, + "result": "refused" + }, + { + "moduleIds": [ + "miniverb", + "tapeecho", + "euclid", + "repitch", + "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", + "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "beat-slicer" + ], + "keepStockFx2": false, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID", + "TAPEHEAD", + "RING_SC" + ], + "fx2": [ + "MINIVERB", + "TAPE ECHO", + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC", + "SIDECHAIN_COMPRESSOR" + ] + }, + "native": { + "refused": "SYNTH MACHINE fm_qzc at 0x400d7b80 not free" + }, + "result": "refused" + }, + { + "moduleIds": [ + "miniverb", + "tapeecho", + "euclid", "repitch", "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", "previewvol", - "cc-map", "sidechain-compressor", "vector", "playmodes", "mute-modes", - "recorder-loop-fix" + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "beat-slicer" + ], + "keepStockFx2": true, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID", + "TAPEHEAD", + "RING_SC" + ], + "fx2": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "DELAY", + "MINIVERB", + "TAPE ECHO", + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC" + ] + }, + "native": { + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" + }, + "result": "refused" + }, + { + "moduleIds": [ + "miniverb", + "tapeecho", + "euclid", + "repitch", + "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", + "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", + "previewvol", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "beat-slicer" ], "keepStockFx2": false, "menu": { @@ -1465,17 +4313,24 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "MINIVERB", + "TAPE ECHO", "EUCLID", "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC", "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": "SYNTH MACHINE fm_qzc at 0x400d7b80 not free" }, "result": "refused" }, @@ -1483,18 +4338,31 @@ "moduleIds": [ "miniverb", "tapeecho", + "euclid", "repitch", "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", "previewvol", "cc-map", - "sidechain-compressor", "vector", "playmodes", "mute-modes", - "recorder-loop-fix" + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "beat-slicer" ], "keepStockFx2": true, "menu": { @@ -1507,9 +4375,11 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", - "TAPEHEAD" + "EUCLID", + "TAPEHEAD", + "RING_SC" ], "fx2": [ "FILTER", @@ -1520,17 +4390,22 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", "DELAY", - "DARK REV", "MINIVERB", "TAPE ECHO", - "TAPEHEAD" + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC" ] }, "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": "MUTE_MODES mm_menu at 0x400d7b80 not free" }, "result": "refused" }, @@ -1538,18 +4413,31 @@ "moduleIds": [ "miniverb", "tapeecho", + "euclid", "repitch", "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", "previewvol", "cc-map", - "sidechain-compressor", "vector", "playmodes", "mute-modes", - "recorder-loop-fix" + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "beat-slicer" ], "keepStockFx2": false, "menu": { @@ -1562,19 +4450,26 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", - "TAPEHEAD" + "EUCLID", + "TAPEHEAD", + "RING_SC" ], "fx2": [ "MINIVERB", "TAPE ECHO", + "EUCLID", "TAPEHEAD", - "SIDECHAIN_COMPRESSOR" + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC" ] }, "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": "MUTE_MODES mm_menu at 0x400d7b80 not free" }, "result": "refused" }, @@ -1583,7 +4478,13 @@ "miniverb", "tapeecho", "euclid", + "repitch", "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -1591,9 +4492,16 @@ "cc-map", "sidechain-compressor", "vector", - "playmodes", "mute-modes", - "recorder-loop-fix" + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "beat-slicer" ], "keepStockFx2": true, "menu": { @@ -1609,7 +4517,8 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "FILTER", @@ -1623,15 +4532,19 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", "MINIVERB", "TAPE ECHO", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC" ] }, "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": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" }, "result": "refused" }, @@ -1640,7 +4553,13 @@ "miniverb", "tapeecho", "euclid", + "repitch", "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -1648,9 +4567,16 @@ "cc-map", "sidechain-compressor", "vector", - "playmodes", "mute-modes", - "recorder-loop-fix" + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "beat-slicer" ], "keepStockFx2": false, "menu": { @@ -1666,18 +4592,24 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "MINIVERB", "TAPE ECHO", "EUCLID", "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC", "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": "SYNTH MACHINE fm_qzc at 0x400d7b80 not free" }, "result": "refused" }, @@ -1687,6 +4619,12 @@ "tapeecho", "euclid", "repitch", + "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -1695,8 +4633,15 @@ "sidechain-compressor", "vector", "playmodes", - "mute-modes", - "recorder-loop-fix" + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "beat-slicer" ], "keepStockFx2": true, "menu": { @@ -1711,7 +4656,9 @@ "COMB FILTER", "SIDECHAIN_COMPRESSOR", "LO-FI", - "EUCLID" + "EUCLID", + "TAPEHEAD", + "RING_SC" ], "fx2": [ "FILTER", @@ -1725,14 +4672,19 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "DARK REV", "MINIVERB", "TAPE ECHO", - "EUCLID" + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC" ] }, "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": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" }, "result": "refused" }, @@ -1742,6 +4694,12 @@ "tapeecho", "euclid", "repitch", + "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -1750,8 +4708,15 @@ "sidechain-compressor", "vector", "playmodes", - "mute-modes", - "recorder-loop-fix" + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "beat-slicer" ], "keepStockFx2": false, "menu": { @@ -1766,17 +4731,25 @@ "COMB FILTER", "SIDECHAIN_COMPRESSOR", "LO-FI", - "EUCLID" + "EUCLID", + "TAPEHEAD", + "RING_SC" ], "fx2": [ "MINIVERB", "TAPE ECHO", "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC", "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": "SYNTH MACHINE fm_qzc at 0x400d7b80 not free" }, "result": "refused" }, @@ -1787,6 +4760,12 @@ "euclid", "repitch", "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", + "usb-audio-out-tracks-main-cue", "quantizer", "synth", "previewvol", @@ -1795,7 +4774,14 @@ "vector", "playmodes", "mute-modes", - "recorder-loop-fix" + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "beat-slicer" ], "keepStockFx2": true, "menu": { @@ -1811,7 +4797,8 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "FILTER", @@ -1825,15 +4812,19 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", "MINIVERB", "TAPE ECHO", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC" ] }, "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": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" }, "result": "refused" }, @@ -1844,6 +4835,12 @@ "euclid", "repitch", "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", + "usb-audio-out-tracks-main-cue", "quantizer", "synth", "previewvol", @@ -1852,7 +4849,14 @@ "vector", "playmodes", "mute-modes", - "recorder-loop-fix" + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "beat-slicer" ], "keepStockFx2": false, "menu": { @@ -1868,18 +4872,24 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "MINIVERB", "TAPE ECHO", "EUCLID", "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC", "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": "SYNTH MACHINE fm_qzc at 0x400d7b80 not free" }, "result": "refused" }, @@ -1890,7 +4900,13 @@ "euclid", "repitch", "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", + "quantizer", "synth", "previewvol", "cc-map", @@ -1898,7 +4914,14 @@ "vector", "playmodes", "mute-modes", - "recorder-loop-fix" + "recorder-loop-fix", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "beat-slicer" ], "keepStockFx2": true, "menu": { @@ -1914,7 +4937,8 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "FILTER", @@ -1928,15 +4952,19 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", "MINIVERB", "TAPE ECHO", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC" ] }, "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" }, @@ -1947,7 +4975,13 @@ "euclid", "repitch", "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", + "quantizer", "synth", "previewvol", "cc-map", @@ -1955,7 +4989,14 @@ "vector", "playmodes", "mute-modes", - "recorder-loop-fix" + "recorder-loop-fix", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "beat-slicer" ], "keepStockFx2": false, "menu": { @@ -1971,18 +5012,24 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "MINIVERB", "TAPE ECHO", "EUCLID", "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC", "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" }, @@ -1993,15 +5040,28 @@ "euclid", "repitch", "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", + "synth", "previewvol", "cc-map", "sidechain-compressor", "vector", "playmodes", "mute-modes", - "recorder-loop-fix" + "recorder-loop-fix", + "poly8", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "beat-slicer" ], "keepStockFx2": true, "menu": { @@ -2017,7 +5077,8 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "FILTER", @@ -2031,15 +5092,19 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", "MINIVERB", "TAPE ECHO", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC" ] }, "native": { - "refused": "MUTE_MODES mm_softmute at 0x400d7880 not free" + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" }, "result": "refused" }, @@ -2050,15 +5115,28 @@ "euclid", "repitch", "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", + "synth", "previewvol", "cc-map", "sidechain-compressor", "vector", "playmodes", "mute-modes", - "recorder-loop-fix" + "recorder-loop-fix", + "poly8", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "beat-slicer" ], "keepStockFx2": false, "menu": { @@ -2074,18 +5152,24 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "MINIVERB", "TAPE ECHO", "EUCLID", "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC", "SIDECHAIN_COMPRESSOR" ] }, "native": { - "refused": "MUTE_MODES mm_softmute at 0x400d7880 not free" + "refused": "SYNTH MACHINE fm_qzc at 0x400d7b80 not free" }, "result": "refused" }, @@ -2096,15 +5180,28 @@ "euclid", "repitch", "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", + "previewvol", "cc-map", "sidechain-compressor", "vector", "playmodes", "mute-modes", - "recorder-loop-fix" + "recorder-loop-fix", + "poly8", + "output-matrix", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "beat-slicer" ], "keepStockFx2": true, "menu": { @@ -2120,7 +5217,8 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "FILTER", @@ -2134,15 +5232,19 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", "MINIVERB", "TAPE ECHO", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC" ] }, "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": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" }, "result": "refused" }, @@ -2153,15 +5255,28 @@ "euclid", "repitch", "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", + "previewvol", "cc-map", "sidechain-compressor", "vector", "playmodes", "mute-modes", - "recorder-loop-fix" + "recorder-loop-fix", + "poly8", + "output-matrix", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "beat-slicer" ], "keepStockFx2": false, "menu": { @@ -2177,18 +5292,24 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "MINIVERB", "TAPE ECHO", "EUCLID", "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC", "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": "SYNTH MACHINE fm_qzc at 0x400d7b80 not free" }, "result": "refused" }, @@ -2199,15 +5320,28 @@ "euclid", "repitch", "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", "previewvol", + "cc-map", "sidechain-compressor", "vector", "playmodes", "mute-modes", - "recorder-loop-fix" + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "beat-slicer" ], "keepStockFx2": true, "menu": { @@ -2223,7 +5357,8 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "FILTER", @@ -2237,15 +5372,19 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", "MINIVERB", "TAPE ECHO", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC" ] }, "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": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" }, "result": "refused" }, @@ -2256,15 +5395,28 @@ "euclid", "repitch", "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", "previewvol", + "cc-map", "sidechain-compressor", "vector", "playmodes", "mute-modes", - "recorder-loop-fix" + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "beat-slicer" ], "keepStockFx2": false, "menu": { @@ -2280,18 +5432,24 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "MINIVERB", "TAPE ECHO", "EUCLID", "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC", "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": "SYNTH MACHINE fm_qzc at 0x400d7b80 not free" }, "result": "refused" }, @@ -2302,15 +5460,28 @@ "euclid", "repitch", "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", "previewvol", "cc-map", + "sidechain-compressor", "vector", "playmodes", "mute-modes", - "recorder-loop-fix" + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "dejavu", + "arp-key-locks", + "beat-slicer" ], "keepStockFx2": true, "menu": { @@ -2323,10 +5494,11 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "FILTER", @@ -2337,18 +5509,22 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "DARK REV", "MINIVERB", "TAPE ECHO", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC" ] }, "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": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" }, "result": "refused" }, @@ -2359,15 +5535,28 @@ "euclid", "repitch", "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", "previewvol", "cc-map", + "sidechain-compressor", "vector", "playmodes", "mute-modes", - "recorder-loop-fix" + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "dejavu", + "arp-key-locks", + "beat-slicer" ], "keepStockFx2": false, "menu": { @@ -2380,20 +5569,27 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "MINIVERB", "TAPE ECHO", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC", + "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": "SYNTH MACHINE fm_qzc at 0x400d7b80 not free" }, "result": "refused" }, @@ -2404,6 +5600,11 @@ "euclid", "repitch", "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -2411,8 +5612,16 @@ "cc-map", "sidechain-compressor", "vector", + "playmodes", "mute-modes", - "recorder-loop-fix" + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "arp-key-locks", + "beat-slicer" ], "keepStockFx2": true, "menu": { @@ -2428,7 +5637,8 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "FILTER", @@ -2442,15 +5652,19 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", "MINIVERB", "TAPE ECHO", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC" ] }, "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": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" }, "result": "refused" }, @@ -2461,6 +5675,11 @@ "euclid", "repitch", "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -2468,8 +5687,16 @@ "cc-map", "sidechain-compressor", "vector", + "playmodes", "mute-modes", - "recorder-loop-fix" + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "arp-key-locks", + "beat-slicer" ], "keepStockFx2": false, "menu": { @@ -2485,18 +5712,24 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "MINIVERB", "TAPE ECHO", "EUCLID", "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC", "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": "SYNTH MACHINE fm_qzc at 0x400d7b80 not free" }, "result": "refused" }, @@ -2507,6 +5740,11 @@ "euclid", "repitch", "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -2515,7 +5753,15 @@ "sidechain-compressor", "vector", "playmodes", - "recorder-loop-fix" + "mute-modes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "beat-slicer" ], "keepStockFx2": true, "menu": { @@ -2531,7 +5777,8 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "FILTER", @@ -2545,15 +5792,19 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", "MINIVERB", "TAPE ECHO", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC" ] }, "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": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" }, "result": "refused" }, @@ -2564,6 +5815,11 @@ "euclid", "repitch", "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -2572,7 +5828,15 @@ "sidechain-compressor", "vector", "playmodes", - "recorder-loop-fix" + "mute-modes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "beat-slicer" ], "keepStockFx2": false, "menu": { @@ -2588,18 +5852,24 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "MINIVERB", "TAPE ECHO", "EUCLID", "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC", "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": "SYNTH MACHINE fm_qzc at 0x400d7b80 not free" }, "result": "refused" }, @@ -2610,6 +5880,11 @@ "euclid", "repitch", "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -2618,7 +5893,15 @@ "sidechain-compressor", "vector", "playmodes", - "mute-modes" + "mute-modes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks" ], "keepStockFx2": true, "menu": { @@ -2634,7 +5917,8 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "FILTER", @@ -2648,15 +5932,19 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", "MINIVERB", "TAPE ECHO", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC" ] }, "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": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" }, "result": "refused" }, @@ -2667,6 +5955,11 @@ "euclid", "repitch", "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -2675,7 +5968,15 @@ "sidechain-compressor", "vector", "playmodes", - "mute-modes" + "mute-modes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks" ], "keepStockFx2": false, "menu": { @@ -2691,18 +5992,24 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "MINIVERB", "TAPE ECHO", "EUCLID", "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC", "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": "SYNTH MACHINE fm_qzc at 0x400d7b80 not free" }, "result": "refused" }, @@ -2712,12 +6019,24 @@ "tapeecho", "euclid", "repitch", + "airwindows-chorus", + "everb", + "lofi2", + "ring-sc", + "usb-audio-out-tracks-main-cue", + "quantizer", "synth", "previewvol", "cc-map", "vector", "playmodes", - "mute-modes" + "recorder-loop-fix", + "poly8", + "output-matrix", + "apply-scene", + "direct-jump-kyoti", + "arp-key-locks", + "beat-slicer" ], "keepStockFx2": true, "menu": { @@ -2732,7 +6051,8 @@ "COMB FILTER", "COMPRESSOR", "LO-FI", - "EUCLID" + "EUCLID", + "RING_SC" ], "fx2": [ "FILTER", @@ -2746,15 +6066,17 @@ "COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", - "SPRING REV", "MINIVERB", "TAPE ECHO", - "EUCLID" + "EUCLID", + "AIR CHORUS", + "EVERB", + "LOFI2", + "RING_SC" ] }, "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": "CC->FX2/FX1 page-2 cave + dispatch repoint: 724 B fits neither the clone window (from 0x400d7900) nor the overflow run" }, "result": "refused" }, @@ -2764,12 +6086,24 @@ "tapeecho", "euclid", "repitch", + "airwindows-chorus", + "everb", + "lofi2", + "ring-sc", + "usb-audio-out-tracks-main-cue", + "quantizer", "synth", "previewvol", "cc-map", "vector", "playmodes", - "mute-modes" + "recorder-loop-fix", + "poly8", + "output-matrix", + "apply-scene", + "direct-jump-kyoti", + "arp-key-locks", + "beat-slicer" ], "keepStockFx2": false, "menu": { @@ -2784,24 +6118,41 @@ "COMB FILTER", "COMPRESSOR", "LO-FI", - "EUCLID" + "EUCLID", + "RING_SC" ], "fx2": [ "MINIVERB", "TAPE ECHO", - "EUCLID" + "EUCLID", + "AIR CHORUS", + "EVERB", + "LOFI2", + "RING_SC" ] }, "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": "CC->FX2/FX1 page-2 cave + dispatch repoint: 724 B fits neither the clone window (from 0x400d7900) nor the overflow run" }, "result": "refused" }, { "moduleIds": [ - "tapeecho", + "miniverb", + "repitch", + "tapehead", + "airwindows-chorus", + "lofi2", + "usb-audio-out-tracks-main-cue", + "previewvol", "cc-map", - "vector" + "sidechain-compressor", + "vector", + "mute-modes", + "poly8", + "apply-scene", + "dejavu", + "arp-key-locks" ], "keepStockFx2": true, "menu": { @@ -2814,8 +6165,9 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", - "LO-FI" + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "TAPEHEAD" ], "fx2": [ "FILTER", @@ -2826,26 +6178,37 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", - "DARK REV", - "TAPE ECHO" + "MINIVERB", + "TAPEHEAD", + "AIR CHORUS", + "LOFI2" ] }, "native": { - "bytes": 1223252, - "osSha256": "8ea327c84b0d3d3cd4978653f6468d1a0a6eeaf814b6f8644e67e369f7dae055", - "maskedOsSha256": "9575d013c2ae1dc7cde267a4b7e5d10177929495e0d3cead5684c3c663629a7b" + "refused": "MUTE_MODES table PERSONALIZE setters at 0x400d7b80 not free" }, - "result": "masked" + "result": "refused" }, { "moduleIds": [ - "tapeecho", + "miniverb", + "repitch", + "tapehead", + "airwindows-chorus", + "lofi2", + "usb-audio-out-tracks-main-cue", + "previewvol", "cc-map", - "vector" + "sidechain-compressor", + "vector", + "mute-modes", + "poly8", + "apply-scene", + "dejavu", + "arp-key-locks" ], "keepStockFx2": false, "menu": { @@ -2858,33 +6221,42 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", - "LO-FI" + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "TAPEHEAD" ], "fx2": [ - "TAPE ECHO" + "MINIVERB", + "TAPEHEAD", + "AIR CHORUS", + "LOFI2", + "SIDECHAIN_COMPRESSOR" ] }, "native": { - "bytes": 1223252, - "osSha256": "c250f5a5510ee45f2f4af080220487b00d9e7467f7d3ecadca9574b53df084b3", - "maskedOsSha256": "97d896c88c7c39874878b86a7e260d3b10ed19121b40141edfdd064d1a5d9c06" + "refused": "DEJAVU table LFO WAVE labels + DJV at 0x400d7c00 not free" }, - "result": "masked" + "result": "refused" }, { "moduleIds": [ "miniverb", "tapeecho", - "euclid", + "repitch", "tapehead", + "bbd", + "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", - "quantizer", - "synth", + "cc-map", "sidechain-compressor", "vector", "playmodes", - "mute-modes" + "mute-modes", + "output-matrix", + "quantize-live-rec-toggle", + "direct-jump-kyoti", + "beat-slicer" ], "keepStockFx2": true, "menu": { @@ -2899,8 +6271,8 @@ "COMB FILTER", "SIDECHAIN_COMPRESSOR", "LO-FI", - "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "FILTER", @@ -2914,15 +6286,16 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", "MINIVERB", "TAPE ECHO", - "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "BBD", + "LOFI2", + "RING_SC" ] }, "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": "SIDECHAIN_COMPRESSOR sc_ui at 0x400d7980 not free" }, "result": "refused" }, @@ -2930,15 +6303,21 @@ "moduleIds": [ "miniverb", "tapeecho", - "euclid", + "repitch", "tapehead", + "bbd", + "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", - "quantizer", - "synth", + "cc-map", "sidechain-compressor", "vector", "playmodes", - "mute-modes" + "mute-modes", + "output-matrix", + "quantize-live-rec-toggle", + "direct-jump-kyoti", + "beat-slicer" ], "keepStockFx2": false, "menu": { @@ -2953,35 +6332,44 @@ "COMB FILTER", "SIDECHAIN_COMPRESSOR", "LO-FI", - "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "MINIVERB", "TAPE ECHO", - "EUCLID", "TAPEHEAD", + "BBD", + "LOFI2", + "RING_SC", "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": "SIDECHAIN_COMPRESSOR sc_ui at 0x400d7c00 not free" }, "result": "refused" }, { "moduleIds": [ "miniverb", - "tapeecho", "euclid", "repitch", - "usb-audio-out-tracks-main-cue", - "quantizer", + "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "synth", "previewvol", "cc-map", + "sidechain-compressor", "vector", - "mute-modes", - "recorder-loop-fix" + "recorder-loop-fix", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "dejavu" ], "keepStockFx2": true, "menu": { @@ -2994,9 +6382,10 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", - "EUCLID" + "EUCLID", + "TAPEHEAD" ], "fx2": [ "FILTER", @@ -3007,34 +6396,43 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", - "SPRING REV", "MINIVERB", - "TAPE ECHO", - "EUCLID" + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2" ] }, "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 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" }, { "moduleIds": [ "miniverb", - "tapeecho", "euclid", "repitch", - "usb-audio-out-tracks-main-cue", - "quantizer", + "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "synth", "previewvol", "cc-map", + "sidechain-compressor", "vector", - "mute-modes", - "recorder-loop-fix" + "recorder-loop-fix", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "dejavu" ], "keepStockFx2": false, "menu": { @@ -3047,35 +6445,41 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", - "EUCLID" + "EUCLID", + "TAPEHEAD" ], "fx2": [ "MINIVERB", - "TAPE ECHO", - "EUCLID" + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "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 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" }, { "moduleIds": [ - "miniverb", "tapeecho", "repitch", "tapehead", - "usb-audio-out-tracks-main-cue", - "quantizer", - "synth", + "everb", + "bbd", "cc-map", "vector", "playmodes", - "mute-modes", - "recorder-loop-fix" + "recorder-loop-fix", + "poly8", + "quantize-live-rec-toggle", + "beat-slicer" ], "keepStockFx2": true, "menu": { @@ -3104,32 +6508,31 @@ "COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", - "SPRING REV", - "MINIVERB", "TAPE ECHO", - "TAPEHEAD" + "TAPEHEAD", + "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": "payload A: EVERB overruns the region (3141 > 2724 words)" }, "result": "refused" }, { "moduleIds": [ - "miniverb", "tapeecho", "repitch", "tapehead", - "usb-audio-out-tracks-main-cue", - "quantizer", - "synth", + "everb", + "bbd", "cc-map", "vector", "playmodes", - "mute-modes", - "recorder-loop-fix" + "recorder-loop-fix", + "poly8", + "quantize-live-rec-toggle", + "beat-slicer" ], "keepStockFx2": false, "menu": { @@ -3147,25 +6550,37 @@ "TAPEHEAD" ], "fx2": [ - "MINIVERB", "TAPE ECHO", - "TAPEHEAD" + "TAPEHEAD", + "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": "payload A: EVERB overruns the region (3141 > 2724 words)" }, "result": "refused" }, { "moduleIds": [ - "tapeecho", - "euclid", - "tapehead", - "quantizer", + "miniverb", + "repitch", + "airwindows-chorus", + "everb", + "bbd", + "ring-sc", "synth", + "previewvol", + "cc-map", "vector", - "mute-modes" + "playmodes", + "mute-modes", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "direct-jump-kyoti", + "arp-key-locks", + "beat-slicer" ], "keepStockFx2": true, "menu": { @@ -3180,8 +6595,7 @@ "COMB FILTER", "COMPRESSOR", "LO-FI", - "EUCLID", - "TAPEHEAD" + "RING_SC" ], "fx2": [ "FILTER", @@ -3195,27 +6609,38 @@ "COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", - "SPRING REV", - "TAPE ECHO", - "EUCLID", - "TAPEHEAD" + "MINIVERB", + "AIR CHORUS", + "EVERB", + "BBD", + "RING_SC" ] }, "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": "MUTE_MODES table PERSONALIZE labels at 0x400d7b80 not free" }, "result": "refused" }, { "moduleIds": [ - "tapeecho", - "euclid", - "tapehead", - "quantizer", + "miniverb", + "repitch", + "airwindows-chorus", + "everb", + "bbd", + "ring-sc", "synth", + "previewvol", + "cc-map", "vector", - "mute-modes" + "playmodes", + "mute-modes", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "direct-jump-kyoti", + "arp-key-locks", + "beat-slicer" ], "keepStockFx2": false, "menu": { @@ -3230,25 +6655,33 @@ "COMB FILTER", "COMPRESSOR", "LO-FI", - "EUCLID", - "TAPEHEAD" + "RING_SC" ], "fx2": [ - "TAPE ECHO", - "EUCLID", - "TAPEHEAD" + "MINIVERB", + "AIR CHORUS", + "EVERB", + "BBD", + "RING_SC" ] }, "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": "MUTE_MODES table PERSONALIZE getters at 0x400d7c00 not free" }, "result": "refused" }, { "moduleIds": [ + "miniverb", + "repitch", + "tapehead", + "airwindows-chorus", + "bbd", + "quantizer", "synth", "vector", - "playmodes" + "playmodes", + "poly8" ], "keepStockFx2": true, "menu": { @@ -3262,7 +6695,8 @@ "SPATIALIZER", "COMB FILTER", "COMPRESSOR", - "LO-FI" + "LO-FI", + "TAPEHEAD" ], "fx2": [ "FILTER", @@ -3276,21 +6710,29 @@ "COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", - "SPRING REV", - "DARK REV" + "MINIVERB", + "TAPEHEAD", + "AIR CHORUS", + "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": "payload A: AIR CHORUS overruns the region (2867 > 2724 words)" }, "result": "refused" }, { "moduleIds": [ + "miniverb", + "repitch", + "tapehead", + "airwindows-chorus", + "bbd", + "quantizer", "synth", "vector", - "playmodes" + "playmodes", + "poly8" ], "keepStockFx2": false, "menu": { @@ -3304,29 +6746,40 @@ "SPATIALIZER", "COMB FILTER", "COMPRESSOR", - "LO-FI" + "LO-FI", + "TAPEHEAD" ], - "fx2": [] + "fx2": [ + "MINIVERB", + "TAPEHEAD", + "AIR CHORUS", + "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": "payload A: AIR CHORUS overruns the region (2867 > 2724 words)" }, "result": "refused" }, { "moduleIds": [ "miniverb", - "tapeecho", - "repitch", - "tapehead", + "euclid", + "airwindows-chorus", + "everb", + "bbd", "usb-audio-out-tracks-main-cue", "quantizer", - "synth", - "previewvol", - "sidechain-compressor", "vector", "playmodes", - "mute-modes" + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks" ], "keepStockFx2": true, "menu": { @@ -3339,9 +6792,9 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", - "TAPEHEAD" + "EUCLID" ], "fx2": [ "FILTER", @@ -3352,34 +6805,40 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", "DELAY", - "DARK REV", "MINIVERB", - "TAPE ECHO", - "TAPEHEAD" + "EUCLID", + "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": "DEJAVU table LFO WAVE labels + DJV at 0x400d7c00 not free" }, "result": "refused" }, { "moduleIds": [ "miniverb", - "tapeecho", - "repitch", - "tapehead", + "euclid", + "airwindows-chorus", + "everb", + "bbd", "usb-audio-out-tracks-main-cue", "quantizer", - "synth", - "previewvol", - "sidechain-compressor", "vector", "playmodes", - "mute-modes" + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks" ], "keepStockFx2": false, "menu": { @@ -3392,35 +6851,37 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", - "TAPEHEAD" + "EUCLID" ], "fx2": [ "MINIVERB", - "TAPE ECHO", - "TAPEHEAD", - "SIDECHAIN_COMPRESSOR" + "EUCLID", + "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": "DEJAVU table LFO WAVE labels + DJV at 0x400d7c00 not free" }, "result": "refused" }, { "moduleIds": [ - "tapeecho", + "miniverb", "euclid", - "repitch", - "tapehead", + "bbd", + "lofi2", "usb-audio-out-tracks-main-cue", "quantizer", + "previewvol", "cc-map", "vector", - "playmodes", - "mute-modes", - "recorder-loop-fix" + "poly8", + "output-matrix", + "direct-jump-kyoti" ], "keepStockFx2": true, "menu": { @@ -3435,8 +6896,7 @@ "COMB FILTER", "COMPRESSOR", "LO-FI", - "EUCLID", - "TAPEHEAD" + "EUCLID" ], "fx2": [ "FILTER", @@ -3450,31 +6910,31 @@ "COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", - "SPRING REV", - "TAPE ECHO", + "MINIVERB", "EUCLID", - "TAPEHEAD" + "BBD", + "LOFI2" ] }, "native": { - "refused": "CC->FX2/FX1 page-2 cave + dispatch repoint: 724 B fits neither the clone window (from 0x400d7980) nor the overflow run" + "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)" }, "result": "refused" }, { "moduleIds": [ - "tapeecho", + "miniverb", "euclid", - "repitch", - "tapehead", + "bbd", + "lofi2", "usb-audio-out-tracks-main-cue", "quantizer", + "previewvol", "cc-map", "vector", - "playmodes", - "mute-modes", - "recorder-loop-fix" + "poly8", + "output-matrix", + "direct-jump-kyoti" ], "keepStockFx2": false, "menu": { @@ -3489,25 +6949,39 @@ "COMB FILTER", "COMPRESSOR", "LO-FI", - "EUCLID", - "TAPEHEAD" + "EUCLID" ], "fx2": [ - "TAPE ECHO", + "MINIVERB", "EUCLID", - "TAPEHEAD" + "BBD", + "LOFI2" ] }, "native": { - "refused": "CC->FX2/FX1 page-2 cave + dispatch repoint: 724 B fits neither the clone window (from 0x400d7980) nor the overflow run" + "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)" }, "result": "refused" }, { "moduleIds": [ - "synth", + "miniverb", + "tapehead", + "airwindows-chorus", + "bbd", + "ring-sc", + "usb-audio-out-tracks-main-cue", + "quantizer", + "cc-map", "vector", - "recorder-loop-fix" + "playmodes", + "mute-modes", + "poly8", + "output-matrix", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "beat-slicer" ], "keepStockFx2": true, "menu": { @@ -3521,7 +6995,9 @@ "SPATIALIZER", "COMB FILTER", "COMPRESSOR", - "LO-FI" + "LO-FI", + "TAPEHEAD", + "RING_SC" ], "fx2": [ "FILTER", @@ -3535,21 +7011,37 @@ "COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", - "SPRING REV", - "DARK REV" + "MINIVERB", + "TAPEHEAD", + "AIR CHORUS", + "BBD", + "RING_SC" ] }, "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": "DEJAVU table LFO WAVE labels + DJV at 0x400d7b80 not free" }, "result": "refused" }, { "moduleIds": [ - "synth", + "miniverb", + "tapehead", + "airwindows-chorus", + "bbd", + "ring-sc", + "usb-audio-out-tracks-main-cue", + "quantizer", + "cc-map", "vector", - "recorder-loop-fix" + "playmodes", + "mute-modes", + "poly8", + "output-matrix", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "beat-slicer" ], "keepStockFx2": false, "menu": { @@ -3563,24 +7055,49 @@ "SPATIALIZER", "COMB FILTER", "COMPRESSOR", - "LO-FI" + "LO-FI", + "TAPEHEAD", + "RING_SC" ], - "fx2": [] + "fx2": [ + "MINIVERB", + "TAPEHEAD", + "AIR CHORUS", + "BBD", + "RING_SC" + ] }, "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": "DEJAVU table LFO WAVE icons + DJV at 0x400d7c00 not free" }, "result": "refused" }, { "moduleIds": [ + "miniverb", + "tapeecho", "euclid", + "repitch", + "tapehead", + "everb", + "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", - "previewvol", + "quantizer", + "synth", "cc-map", "sidechain-compressor", "vector", - "playmodes" + "playmodes", + "mute-modes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "dejavu", + "arp-key-locks", + "beat-slicer" ], "keepStockFx2": true, "menu": { @@ -3595,7 +7112,9 @@ "COMB FILTER", "SIDECHAIN_COMPRESSOR", "LO-FI", - "EUCLID" + "EUCLID", + "TAPEHEAD", + "RING_SC" ], "fx2": [ "FILTER", @@ -3609,27 +7128,46 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", - "DARK REV", - "EUCLID" + "MINIVERB", + "TAPE ECHO", + "EUCLID", + "TAPEHEAD", + "EVERB", + "LOFI2", + "RING_SC" ] }, "native": { - "bytes": 1130864, - "osSha256": "2e828cbf86ea8aa38916287c928c52a63682e2d6ade321b54618244631a1c195", - "maskedOsSha256": "3384eabab0f942511a3a72d4e8179999e4d1ea679616af296386fd552ee0a8c2" + "refused": "SIDECHAIN_COMPRESSOR sc_ui at 0x400d7b80 not free" }, - "result": "masked" + "result": "refused" }, { "moduleIds": [ + "miniverb", + "tapeecho", "euclid", + "repitch", + "tapehead", + "everb", + "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", - "previewvol", + "quantizer", + "synth", "cc-map", "sidechain-compressor", "vector", - "playmodes" + "playmodes", + "mute-modes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "dejavu", + "arp-key-locks", + "beat-slicer" ], "keepStockFx2": false, "menu": { @@ -3644,26 +7182,41 @@ "COMB FILTER", "SIDECHAIN_COMPRESSOR", "LO-FI", - "EUCLID" + "EUCLID", + "TAPEHEAD", + "RING_SC" ], "fx2": [ + "MINIVERB", + "TAPE ECHO", "EUCLID", + "TAPEHEAD", + "EVERB", + "LOFI2", + "RING_SC", "SIDECHAIN_COMPRESSOR" ] }, "native": { - "bytes": 1130864, - "osSha256": "41a2e4e9c697cbcdb43d59b3e5775949477b32d00e08f1567fce7e055804b42a", - "maskedOsSha256": "714912dbd2db3d074f110a76611f0630797d9a721218e53a67107f998f1fe953" + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7980 not free" }, - "result": "masked" + "result": "refused" }, { "moduleIds": [ - "euclid", - "repitch", - "quantizer", - "vector" + "miniverb", + "tapeecho", + "airwindows-chorus", + "everb", + "bbd", + "usb-audio-out-tracks-main-cue", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "output-matrix", + "apply-scene", + "direct-jump-kyoti" ], "keepStockFx2": true, "menu": { @@ -3676,9 +7229,8 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", - "LO-FI", - "EUCLID" + "SIDECHAIN_COMPRESSOR", + "LO-FI" ], "fx2": [ "FILTER", @@ -3689,27 +7241,36 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", - "DARK REV", - "EUCLID" + "MINIVERB", + "TAPE ECHO", + "AIR CHORUS", + "EVERB", + "BBD" ] }, "native": { - "bytes": 1125357, - "osSha256": "a2f14d6ce374ada0ebffbee8a9a711f95b371ba70972812f8bad57ae42f62245", - "maskedOsSha256": "aa1dc951f6b07c6492c5db8b10dbe9f3c4a2093661ff1090c2774bc311ae5e3b" + "refused": "payload A: EVERB overruns the region (4052 > 2724 words)" }, - "result": "masked" + "result": "refused" }, { "moduleIds": [ - "euclid", - "repitch", - "quantizer", - "vector" + "miniverb", + "tapeecho", + "airwindows-chorus", + "everb", + "bbd", + "usb-audio-out-tracks-main-cue", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "output-matrix", + "apply-scene", + "direct-jump-kyoti" ], "keepStockFx2": false, "menu": { @@ -3722,32 +7283,33 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", - "LO-FI", - "EUCLID" + "SIDECHAIN_COMPRESSOR", + "LO-FI" ], "fx2": [ - "EUCLID" + "MINIVERB", + "TAPE ECHO", + "AIR CHORUS", + "EVERB", + "BBD", + "SIDECHAIN_COMPRESSOR" ] }, "native": { - "bytes": 1125357, - "osSha256": "e68df50a26b040ffd7d828984819643319d965a92ca3c464a06963fc33d1a966", - "maskedOsSha256": "6235642661a29570b259c6f65182d858ed634d6479ebb02de17b09339b928e5b" + "refused": "payload A: EVERB overruns the region (4052 > 2724 words)" }, - "result": "masked" + "result": "refused" }, { "moduleIds": [ - "miniverb", "tapeecho", - "euclid", - "tapehead", - "quantizer", - "previewvol", + "ring-sc", + "synth", "vector", "mute-modes", - "recorder-loop-fix" + "output-matrix", + "apply-scene", + "direct-jump-kyoti" ], "keepStockFx2": true, "menu": { @@ -3762,8 +7324,7 @@ "COMB FILTER", "COMPRESSOR", "LO-FI", - "EUCLID", - "TAPEHEAD" + "RING_SC" ], "fx2": [ "FILTER", @@ -3778,28 +7339,25 @@ "LO-FI", "DELAY", "DARK REV", - "MINIVERB", "TAPE ECHO", - "EUCLID", - "TAPEHEAD" + "RING_SC" ] }, "native": { - "refused": "hold cave (copy) not free" + "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" }, { "moduleIds": [ - "miniverb", "tapeecho", - "euclid", - "tapehead", - "quantizer", - "previewvol", + "ring-sc", + "synth", "vector", "mute-modes", - "recorder-loop-fix" + "output-matrix", + "apply-scene", + "direct-jump-kyoti" ], "keepStockFx2": false, "menu": { @@ -3814,30 +7372,38 @@ "COMB FILTER", "COMPRESSOR", "LO-FI", - "EUCLID", - "TAPEHEAD" + "RING_SC" ], "fx2": [ - "MINIVERB", "TAPE ECHO", - "EUCLID", - "TAPEHEAD" + "RING_SC" ] }, "native": { - "refused": "past the stock zero run (or into the long chooser list)" + "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" }, { "moduleIds": [ - "tapehead", + "miniverb", + "euclid", + "everb", + "bbd", "quantizer", "previewvol", "sidechain-compressor", "vector", "playmodes", - "recorder-loop-fix" + "mute-modes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "beat-slicer" ], "keepStockFx2": true, "menu": { @@ -3852,7 +7418,7 @@ "COMB FILTER", "SIDECHAIN_COMPRESSOR", "LO-FI", - "TAPEHEAD" + "EUCLID" ], "fx2": [ "FILTER", @@ -3866,28 +7432,37 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", - "DARK REV", - "TAPEHEAD" + "MINIVERB", + "EUCLID", + "EVERB", + "BBD" ] }, "native": { - "bytes": 1128231, - "osSha256": "e67a74c4618cb562bad8565e5931266c7ee5ff1980f3bb7a1fb9886da0b82ee7", - "maskedOsSha256": "994ab9682662c583ef95830b872f70c03ec355b8edcd4f03e3f06021253ba7e8", - "platformArena": true + "refused": "seek-bind counter cave: 16 B fits neither the clone window (from 0x400d7c00) nor the overflow run" }, - "result": "masked" + "result": "refused" }, { "moduleIds": [ - "tapehead", + "miniverb", + "euclid", + "everb", + "bbd", "quantizer", "previewvol", "sidechain-compressor", "vector", "playmodes", - "recorder-loop-fix" + "mute-modes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "beat-slicer" ], "keepStockFx2": false, "menu": { @@ -3902,30 +7477,40 @@ "COMB FILTER", "SIDECHAIN_COMPRESSOR", "LO-FI", - "TAPEHEAD" + "EUCLID" ], "fx2": [ - "TAPEHEAD", + "MINIVERB", + "EUCLID", + "EVERB", + "BBD", "SIDECHAIN_COMPRESSOR" ] }, "native": { - "bytes": 1128231, - "osSha256": "241a2ce4fdd91595ce6d6b0a958bafa37cc9146bf3da3f8b777c156014120c7b", - "maskedOsSha256": "08f2e74fa724899adc4c7fbb18c66b48d449fca8dfde43926a702b9c47edbafd", - "platformArena": true + "refused": "spacing cave: 286 B fits neither the clone window (from 0x400d7c80) nor the overflow run" }, - "result": "masked" + "result": "refused" }, { "moduleIds": [ + "miniverb", "tapeecho", "euclid", - "repitch", - "tapehead", + "everb", + "quantizer", + "synth", "cc-map", + "sidechain-compressor", "vector", - "mute-modes" + "mute-modes", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "beat-slicer" ], "keepStockFx2": true, "menu": { @@ -3938,10 +7523,9 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", - "EUCLID", - "TAPEHEAD" + "EUCLID" ], "fx2": [ "FILTER", @@ -3952,30 +7536,39 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", - "SPRING REV", + "MINIVERB", "TAPE ECHO", "EUCLID", - "TAPEHEAD" + "EVERB" ] }, "native": { - "refused": "MUTE_MODES table PERSONALIZE labels at 0x400d7b80 not free" + "refused": "QUANTIZE_LIVE_REC_TOGGLE qlr at 0x400d7b00 not free" }, "result": "refused" }, { "moduleIds": [ + "miniverb", "tapeecho", "euclid", - "repitch", - "tapehead", + "everb", + "quantizer", + "synth", "cc-map", + "sidechain-compressor", "vector", - "mute-modes" + "mute-modes", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "beat-slicer" ], "keepStockFx2": false, "menu": { @@ -3988,19 +7581,20 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", - "EUCLID", - "TAPEHEAD" + "EUCLID" ], "fx2": [ + "MINIVERB", "TAPE ECHO", "EUCLID", - "TAPEHEAD" + "EVERB", + "SIDECHAIN_COMPRESSOR" ] }, "native": { - "refused": "MUTE_MODES table PERSONALIZE getters at 0x400d7c00 not free" + "refused": "Tape TIME formatter: 244 B fits neither the clone window (from 0x400d7c00) nor the overflow run" }, "result": "refused" }, @@ -4008,8 +7602,30 @@ "moduleIds": [ "miniverb", "euclid", + "repitch", + "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", + "usb-audio-out-tracks-main-cue", "quantizer", - "vector" + "synth", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "beat-slicer" ], "keepStockFx2": true, "menu": { @@ -4022,9 +7638,11 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", - "EUCLID" + "EUCLID", + "TAPEHEAD", + "RING_SC" ], "fx2": [ "FILTER", @@ -4035,28 +7653,52 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", - "SPRING REV", "MINIVERB", - "EUCLID" + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC" ] }, "native": { - "bytes": 1125357, - "osSha256": "d2618c547c287ff118c91f022762c102623b53465b22330eccc63040583ed4d9", - "maskedOsSha256": "139f4b8c577f5e92d3753fdf6b602c1c57b4f3f2d32f001d21f4e91be50e77ba" + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7a00 not free" }, - "result": "masked" + "result": "refused" }, { "moduleIds": [ "miniverb", "euclid", + "repitch", + "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", + "usb-audio-out-tracks-main-cue", "quantizer", - "vector" + "synth", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "beat-slicer" ], "keepStockFx2": false, "menu": { @@ -4069,33 +7711,48 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", - "EUCLID" + "EUCLID", + "TAPEHEAD", + "RING_SC" ], "fx2": [ "MINIVERB", - "EUCLID" + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC", + "SIDECHAIN_COMPRESSOR" ] }, "native": { - "bytes": 1125357, - "osSha256": "1184f9e4cdf525f48faea8f8714fc20c7c95683c24b355246d62208bb6b5dd3c", - "maskedOsSha256": "75f0fd1b7ae52139c6c74355bf179fc4ceee9203b7c98eb0fa2751172ec05025" + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" }, - "result": "masked" + "result": "refused" }, { "moduleIds": [ + "miniverb", "tapeecho", - "euclid", - "repitch", - "tapehead", - "usb-audio-out-tracks-main-cue", + "airwindows-chorus", + "everb", + "bbd", + "ring-sc", + "quantizer", + "cc-map", + "sidechain-compressor", "vector", "playmodes", "mute-modes", - "recorder-loop-fix" + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "beat-slicer" ], "keepStockFx2": true, "menu": { @@ -4108,10 +7765,9 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", - "EUCLID", - "TAPEHEAD" + "RING_SC" ], "fx2": [ "FILTER", @@ -4122,32 +7778,41 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", - "SPRING REV", + "MINIVERB", "TAPE ECHO", - "EUCLID", - "TAPEHEAD" + "AIR CHORUS", + "EVERB", + "BBD", + "RING_SC" ] }, "native": { - "refused": "past the stock zero run (or into the long chooser list)" + "refused": "SIDECHAIN_COMPRESSOR sc_ui at 0x400d7980 not free" }, "result": "refused" }, { "moduleIds": [ + "miniverb", "tapeecho", - "euclid", - "repitch", - "tapehead", - "usb-audio-out-tracks-main-cue", + "airwindows-chorus", + "everb", + "bbd", + "ring-sc", + "quantizer", + "cc-map", + "sidechain-compressor", "vector", "playmodes", "mute-modes", - "recorder-loop-fix" + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "beat-slicer" ], "keepStockFx2": false, "menu": { @@ -4160,30 +7825,49 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", - "EUCLID", - "TAPEHEAD" + "RING_SC" ], "fx2": [ + "MINIVERB", "TAPE ECHO", - "EUCLID", - "TAPEHEAD" + "AIR CHORUS", + "EVERB", + "BBD", + "RING_SC", + "SIDECHAIN_COMPRESSOR" ] }, "native": { - "refused": "past the stock zero run (or into the long chooser list)" + "refused": "SIDECHAIN_COMPRESSOR sc_ui at 0x400d7a80 not free" }, "result": "refused" }, { "moduleIds": [ - "usb-audio-out-tracks-main-cue", + "tapeecho", + "repitch", + "airwindows-chorus", + "bbd", + "ring-sc", + "quantizer", + "synth", "previewvol", "cc-map", "sidechain-compressor", "vector", - "playmodes" + "playmodes", + "mute-modes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "beat-slicer" ], "keepStockFx2": true, "menu": { @@ -4197,7 +7881,8 @@ "SPATIALIZER", "COMB FILTER", "SIDECHAIN_COMPRESSOR", - "LO-FI" + "LO-FI", + "RING_SC" ], "fx2": [ "FILTER", @@ -4211,25 +7896,41 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", - "DARK REV" + "TAPE ECHO", + "AIR CHORUS", + "BBD", + "RING_SC" ] }, "native": { - "bytes": 1128783, - "osSha256": "d1308c868b77c13ce6d7b95aab7010ee2f6b9324be62d6ce730443b0e4901dcd", - "maskedOsSha256": "6c5c54cedc954f7cedd4dabf7264799b5d94406258bebb61f02c4743c4ed8f98" + "refused": "QUANTIZE_LIVE_REC_TOGGLE qlr at 0x400d7b80 not free" }, - "result": "masked" + "result": "refused" }, { "moduleIds": [ - "usb-audio-out-tracks-main-cue", + "tapeecho", + "repitch", + "airwindows-chorus", + "bbd", + "ring-sc", + "quantizer", + "synth", "previewvol", "cc-map", "sidechain-compressor", "vector", - "playmodes" + "playmodes", + "mute-modes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "beat-slicer" ], "keepStockFx2": false, "menu": { @@ -4243,34 +7944,39 @@ "SPATIALIZER", "COMB FILTER", "SIDECHAIN_COMPRESSOR", - "LO-FI" + "LO-FI", + "RING_SC" ], "fx2": [ + "TAPE ECHO", + "AIR CHORUS", + "BBD", + "RING_SC", "SIDECHAIN_COMPRESSOR" ] }, "native": { - "bytes": 1128783, - "osSha256": "dc68b3445fdefde0c97fcf870f7be3d4853e70be119e48955d664c944476a42c", - "maskedOsSha256": "d2b01d16411e375df24bf8dba35f14c0277d8a9f021fdd5d9c8dafd4b8022581" + "refused": "QUANTIZE_LIVE_REC_TOGGLE qlr at 0x400d7b80 not free" }, - "result": "masked" + "result": "refused" }, { "moduleIds": [ - "miniverb", "tapeecho", "euclid", "repitch", - "tapehead", + "airwindows-chorus", + "lofi2", "usb-audio-out-tracks-main-cue", "synth", + "previewvol", "cc-map", "sidechain-compressor", "vector", - "playmodes", "mute-modes", - "recorder-loop-fix" + "poly8", + "direct-jump-kyoti", + "beat-slicer" ], "keepStockFx2": true, "menu": { @@ -4285,8 +7991,7 @@ "COMB FILTER", "SIDECHAIN_COMPRESSOR", "LO-FI", - "EUCLID", - "TAPEHEAD" + "EUCLID" ], "fx2": [ "FILTER", @@ -4300,33 +8005,34 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", - "MINIVERB", "TAPE ECHO", "EUCLID", - "TAPEHEAD" + "AIR CHORUS", + "LOFI2" ] }, "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": "Tape TIME formatter: 244 B fits neither the clone window (from 0x400d7b80) nor the overflow run" }, "result": "refused" }, { "moduleIds": [ - "miniverb", "tapeecho", "euclid", "repitch", - "tapehead", + "airwindows-chorus", + "lofi2", "usb-audio-out-tracks-main-cue", "synth", + "previewvol", "cc-map", "sidechain-compressor", "vector", - "playmodes", "mute-modes", - "recorder-loop-fix" + "poly8", + "direct-jump-kyoti", + "beat-slicer" ], "keepStockFx2": false, "menu": { @@ -4341,30 +8047,34 @@ "COMB FILTER", "SIDECHAIN_COMPRESSOR", "LO-FI", - "EUCLID", - "TAPEHEAD" + "EUCLID" ], "fx2": [ - "MINIVERB", "TAPE ECHO", "EUCLID", - "TAPEHEAD", + "AIR CHORUS", + "LOFI2", "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": "Tape TIME formatter: 244 B fits neither the clone window (from 0x400d7b80) nor the overflow run" }, "result": "refused" }, { "moduleIds": [ - "miniverb", + "tapeecho", + "airwindows-chorus", + "everb", + "bbd", + "usb-audio-out-tracks-main-cue", "quantizer", - "previewvol", "vector", - "playmodes", - "recorder-loop-fix" + "recorder-loop-fix", + "poly8", + "arp-key-locks", + "beat-slicer" ], "keepStockFx2": true, "menu": { @@ -4392,27 +8102,30 @@ "COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", - "DARK REV", - "MINIVERB" + "TAPE ECHO", + "AIR CHORUS", + "EVERB", + "BBD" ] }, "native": { - "bytes": 1128231, - "osSha256": "d2bff104533227197adbf80dd2c4e96e85efa5756eb01103db0d5370f3ee3496", - "maskedOsSha256": "e621d471b4ce0a1c979c1b9ba9e295fc39484e7a9c2d9672eaf59335c260cee9", - "platformArena": true + "refused": "payload A: EVERB overruns the region (3514 > 2724 words)" }, - "result": "masked" + "result": "refused" }, { "moduleIds": [ - "miniverb", + "tapeecho", + "airwindows-chorus", + "everb", + "bbd", + "usb-audio-out-tracks-main-cue", "quantizer", - "previewvol", "vector", - "playmodes", - "recorder-loop-fix" + "recorder-loop-fix", + "poly8", + "arp-key-locks", + "beat-slicer" ], "keepStockFx2": false, "menu": { @@ -4429,25 +8142,35 @@ "LO-FI" ], "fx2": [ - "MINIVERB" + "TAPE ECHO", + "AIR CHORUS", + "EVERB", + "BBD" ] }, "native": { - "bytes": 1128231, - "osSha256": "ec3123b9f8105d3c203795b05859b85f7662b9ad09dcaf2ddacc18ca66ce9f7f", - "maskedOsSha256": "62a33ae12d26326d58ccd6a4630bea0a76649282320c4ef2ec0070b0f1f57068", - "platformArena": true + "refused": "payload A: EVERB overruns the region (3514 > 2724 words)" }, - "result": "masked" + "result": "refused" }, { "moduleIds": [ "miniverb", - "euclid", - "previewvol", - "cc-map", + "tapeecho", + "tapehead", + "everb", + "lofi2", + "sidechain-compressor", "vector", - "recorder-loop-fix" + "playmodes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "arp-key-locks", + "beat-slicer" ], "keepStockFx2": true, "menu": { @@ -4460,9 +8183,9 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", - "EUCLID" + "TAPEHEAD" ], "fx2": [ "FILTER", @@ -4473,31 +8196,39 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", - "SPRING REV", "MINIVERB", - "EUCLID" + "TAPE ECHO", + "TAPEHEAD", + "EVERB", + "LOFI2" ] }, "native": { - "bytes": 1123175, - "osSha256": "eefb3b4629743dad355ba7312375bd12ffde2807b665503a10c4d0e9a3987234", - "maskedOsSha256": "259cc4650e6790086ef4fc3020f71f1677ce17dd4958158fb472f5164c180210", - "platformArena": true + "refused": "payload A: LOFI2 does not fit any harvested run -- 157 words are free across 1 separate runs but the largest single opening has only 157; harvest an effect BETWEEN two runs to join them into one" }, - "result": "masked" + "result": "refused" }, { "moduleIds": [ "miniverb", - "euclid", - "previewvol", - "cc-map", + "tapeecho", + "tapehead", + "everb", + "lofi2", + "sidechain-compressor", "vector", - "recorder-loop-fix" + "playmodes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "arp-key-locks", + "beat-slicer" ], "keepStockFx2": false, "menu": { @@ -4510,29 +8241,46 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", - "EUCLID" + "TAPEHEAD" ], "fx2": [ "MINIVERB", - "EUCLID" + "TAPE ECHO", + "TAPEHEAD", + "EVERB", + "LOFI2", + "SIDECHAIN_COMPRESSOR" ] }, "native": { - "bytes": 1123175, - "osSha256": "823fba6f60681dd71156c6dd8936c6efa689706bdbb91280acd9f0659e2c1ca7", - "maskedOsSha256": "410bae410ed9ecfd29dca346e7c70f82d375b34de0087ef48b1e62092d909d4c", - "platformArena": true + "refused": "payload A: LOFI2 does not fit any harvested run -- 157 words are free across 1 separate runs but the largest single opening has only 157; harvest an effect BETWEEN two runs to join them into one" }, - "result": "masked" + "result": "refused" }, { "moduleIds": [ - "tapehead", - "cc-map", + "miniverb", + "tapeecho", + "repitch", + "airwindows-chorus", + "bbd", + "lofi2", + "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", + "previewvol", + "sidechain-compressor", "vector", - "recorder-loop-fix" + "playmodes", + "mute-modes", + "poly8", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "beat-slicer" ], "keepStockFx2": true, "menu": { @@ -4545,9 +8293,8 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", - "LO-FI", - "TAPEHEAD" + "SIDECHAIN_COMPRESSOR", + "LO-FI" ], "fx2": [ "FILTER", @@ -4558,28 +8305,43 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", - "DARK REV", - "TAPEHEAD" + "MINIVERB", + "TAPE ECHO", + "AIR CHORUS", + "BBD", + "LOFI2" ] }, "native": { - "bytes": 1121076, - "osSha256": "55e2fd79f377bdfb1b8cb179475fdbee4b5d2fdc6b42029f204bb1b59e3cae35", - "maskedOsSha256": "8bcd50128337779fabf693aac3502021b6d74bb8c692ab969c9f6540b2231b8e", - "platformArena": true + "refused": "MUTE_MODES mm_menu at 0x400d7c00 not free" }, - "result": "masked" + "result": "refused" }, { "moduleIds": [ - "tapehead", - "cc-map", + "miniverb", + "tapeecho", + "repitch", + "airwindows-chorus", + "bbd", + "lofi2", + "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", + "previewvol", + "sidechain-compressor", "vector", - "recorder-loop-fix" + "playmodes", + "mute-modes", + "poly8", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "beat-slicer" ], "keepStockFx2": false, "menu": { @@ -4592,31 +8354,39 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", - "LO-FI", - "TAPEHEAD" + "SIDECHAIN_COMPRESSOR", + "LO-FI" ], "fx2": [ - "TAPEHEAD" + "MINIVERB", + "TAPE ECHO", + "AIR CHORUS", + "BBD", + "LOFI2", + "SIDECHAIN_COMPRESSOR" ] }, "native": { - "bytes": 1121076, - "osSha256": "0421c34d03636eea64a4593a0abe0e7800b64670709fa2bc0ebcd034f1deadaa", - "maskedOsSha256": "7c64618cc7726d2a3ecd836bc7a40faee6f92d52508e4faa4236f7c52ed28dd8", - "platformArena": true + "refused": "MUTE_MODES mm_menu at 0x400d7c00 not free" }, - "result": "masked" + "result": "refused" }, { "moduleIds": [ - "repitch", - "previewvol", + "tapeecho", + "tapehead", + "bbd", + "ring-sc", + "usb-audio-out-tracks-main-cue", "sidechain-compressor", "vector", "playmodes", "mute-modes", - "recorder-loop-fix" + "poly8", + "quantize-live-rec-toggle", + "apply-scene", + "arp-key-locks", + "beat-slicer" ], "keepStockFx2": true, "menu": { @@ -4630,7 +8400,9 @@ "SPATIALIZER", "COMB FILTER", "SIDECHAIN_COMPRESSOR", - "LO-FI" + "LO-FI", + "TAPEHEAD", + "RING_SC" ], "fx2": [ "FILTER", @@ -4644,24 +8416,33 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", - "DARK REV" + "TAPE ECHO", + "TAPEHEAD", + "BBD", + "RING_SC" ] }, "native": { - "refused": "MUTE_MODES table PERSONALIZE labels at 0x400d7b80 not free" + "refused": "MUTE_MODES table PERSONALIZE getters at 0x400d7b80 not free" }, "result": "refused" }, { "moduleIds": [ - "repitch", - "previewvol", + "tapeecho", + "tapehead", + "bbd", + "ring-sc", + "usb-audio-out-tracks-main-cue", "sidechain-compressor", "vector", "playmodes", "mute-modes", - "recorder-loop-fix" + "poly8", + "quantize-live-rec-toggle", + "apply-scene", + "arp-key-locks", + "beat-slicer" ], "keepStockFx2": false, "menu": { @@ -4675,28 +8456,49 @@ "SPATIALIZER", "COMB FILTER", "SIDECHAIN_COMPRESSOR", - "LO-FI" + "LO-FI", + "TAPEHEAD", + "RING_SC" ], "fx2": [ + "TAPE ECHO", + "TAPEHEAD", + "BBD", + "RING_SC", "SIDECHAIN_COMPRESSOR" ] }, "native": { - "refused": "MUTE_MODES table PERSONALIZE getters at 0x400d7c00 not free" + "refused": "MUTE_MODES table PERSONALIZE labels at 0x400d7c00 not free" }, "result": "refused" }, { "moduleIds": [ "miniverb", + "tapeecho", "euclid", "repitch", "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", + "usb-audio-out-tracks-main-cue", "quantizer", "synth", + "cc-map", "vector", "playmodes", - "recorder-loop-fix" + "mute-modes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "dejavu", + "arp-key-locks", + "beat-slicer" ], "keepStockFx2": true, "menu": { @@ -4712,7 +8514,8 @@ "COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "FILTER", @@ -4726,28 +8529,48 @@ "COMPRESSOR", "LO-FI", "DELAY", - "DARK REV", "MINIVERB", + "TAPE ECHO", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC" ] }, "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": "MUTE_MODES mm_menu at 0x400d7b00 not free" }, "result": "refused" }, { "moduleIds": [ "miniverb", + "tapeecho", "euclid", "repitch", "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", + "usb-audio-out-tracks-main-cue", "quantizer", "synth", + "cc-map", "vector", "playmodes", - "recorder-loop-fix" + "mute-modes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "dejavu", + "arp-key-locks", + "beat-slicer" ], "keepStockFx2": false, "menu": { @@ -4763,16 +8586,23 @@ "COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "MINIVERB", + "TAPE ECHO", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC" ] }, "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": "MUTE_MODES mm_menu at 0x400d7b00 not free" }, "result": "refused" } From cf55b5a4164b77a3e434545cdbc2fd7ea52fe02c Mon Sep 17 00:00:00 2001 From: repeat98 Date: Sun, 1 Nov 2026 19:51:06 +0100 Subject: [PATCH 13/33] VECTOR 0.2.6: quick-test guide and source-test version pin Co-Authored-By: Claude Opus 5.5 --- scripts/module-source.test.mjs | 2 +- src/community/downloaded-module-guide.ts | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/scripts/module-source.test.mjs b/scripts/module-source.test.mjs index f5e723225..e86654940 100644 --- a/scripts/module-source.test.mjs +++ b/scripts/module-source.test.mjs @@ -27,7 +27,7 @@ describe('release package scope and reviewed source inventory', () => { expect(versions['midi-scenes']).toBe('0.2.5-experimental') expect(versions.miniverb).toBe('0.2.3-experimental') for (const id of verifiedRequested) { - expect(versions[id]).toBe(id === 'analog-bassdrum' ? '0.1.6-experimental' : id === 'vector' ? '0.2.5-experimental' : id === 'quantizer' ? '0.1.3-experimental' : id === 'synth' ? '0.1.2-experimental' : id === 'usb-audio-out-tracks-main-cue' ? '0.2.0-experimental' : '0.1.2-experimental') + expect(versions[id]).toBe(id === 'analog-bassdrum' ? '0.1.6-experimental' : id === 'vector' ? '0.2.6-experimental' : id === 'quantizer' ? '0.1.3-experimental' : id === 'synth' ? '0.1.2-experimental' : id === 'usb-audio-out-tracks-main-cue' ? '0.2.0-experimental' : '0.1.2-experimental') expect(paths).toContain('modules/' + id + '/manifest.py') } expect(paths).toContain('modules/midi-scenes/recipe.json') diff --git a/src/community/downloaded-module-guide.ts b/src/community/downloaded-module-guide.ts index 068e9c63c..0639fefb4 100644 --- a/src/community/downloaded-module-guide.ts +++ b/src/community/downloaded-module-guide.ts @@ -43,7 +43,7 @@ const QUICK_TESTS: Record = { { title: 'Enlarge the signal.', text: 'Press YES for fullscreen. Change a track’s level on its usual page and compare the plot.' }, { title: 'Close the view.', text: 'Press NO and stop playback. Outside the utility, a short SONG press opens the normal popup.' }, ] }, - vector: { version: '0.2.5-experimental', steps: [ + vector: { version: '0.2.6-experimental', steps: [ { title: 'Choose VECTOR.', text: 'Select an audio track, double-tap SRC, choose VECTOR and press YES.' }, { title: 'Assign a sample.', text: 'Choose STATIC or FLEX with UP/DOWN or LEVEL, then press RIGHT. Select a loaded, tuned sample and press YES to assign it.' }, { title: 'Shape a phrase.', text: 'Press SRC. Change TYPE, DENS or ROOT to generate a phrase; each edit commits immediately, even during playback.' }, From 1aade270b15f43c71515de1acb5ec3d572fe2080 Mon Sep 17 00:00:00 2001 From: repeat98 Date: Sun, 1 Nov 2026 19:58:51 +0100 Subject: [PATCH 14/33] VECTOR 0.2.6: Analog BD proofs re-exported for the new module source tree (212 proofs unchanged) 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 2a8fda74a..666b3bf8e 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": "567e4164b411efa282e4a485e44f46574da8011cfc4d12cecd9098eec858ed7c", + "moduleSourceTreeSha256": "02d9d4659c20ef1d686ffe661c09c8e234e29970d56c6d6c000ab90ba2e3938e", "packing": null, "proofs": [ { From 9080a87016eaf9b3cf2ae8756465206a672f94bd Mon Sep 17 00:00:00 2001 From: repeat98 Date: Sun, 1 Nov 2026 19:59:54 +0100 Subject: [PATCH 15/33] VECTOR 0.2.6: Tape Echo and Euclid standalone recipes re-pin the imported asset files Co-Authored-By: Claude Opus 5.5 --- .../module-adapters/standalone-recipes.json | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/sdk/machines/octatrack/module-adapters/standalone-recipes.json b/sdk/machines/octatrack/module-adapters/standalone-recipes.json index 1947108ab..c130dc43c 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": "dcd8397b8cecf6fab61debd9aa2f86f612da0ca6ccf363c79d56033bc170b993", "src/catalog/modules.ts": "e268c6d42e4d5093ab943aed5cf2263a72e6d5e1a7ac0e72efc8a7ec6c62b89b", - "src/engine/assets/dsp-packages.json": "301bab722f975f6edb85642f53c1d05928ec232defb90b5cd8b02785c08b73cc", - "src/engine/assets/descriptor-recipes.json": "f8006d06e3b7c5df2d950dba3364797e16b86e65c39fefc40b5cbef7570407cd", - "src/engine/assets/menu-recipes.json": "ca1eaf307ee09c95a984fe8080779a347d326a546e45aed70ce64bc3584c725c", - "src/engine/assets/rom-packages.json": "0569b717bdfa5b8c2915781406d81512d8d6aa7ad61ef40048f42a6a4323c44e", + "src/engine/assets/dsp-packages.json": "eb8ffb9545f9c2c40de262e669ca24629825198ae6ca837b85ee6c6a79401fc2", + "src/engine/assets/descriptor-recipes.json": "92ab9399129e0289534762043873766d98f55b81ad8f4f36385f605737a7dcae", + "src/engine/assets/menu-recipes.json": "49e0778acdc1b2825a322122e45346c80a014beb712f63a61ed4db9238271578", + "src/engine/assets/rom-packages.json": "5249880d2808619b1a70211d718c9d5e5c72df1ea390fd3796fa55f2a51e142d", "upstream/elekloader/link.py": "5d31157ccbe62807ff9f05fd47e1e55b54be0475ab53565e6607a56566603ba8", "upstream/elekloader/dsp.py": "9486d64eecee023670b716f6ae854996da02ee7c1a0efd5361cd963c756dbc69", "upstream/elekloader/patch.py": "77c0a74bf4b0ff8c5525d4c4b1bc42af765314a4601c0510577817a7487d8666", @@ -405,10 +405,10 @@ "src/engine/coldfire-elf.ts": "319ca0d835d1b0c602c8f4b06990016d0ebfe246cedbfc596cea3cc7adfe3cd2", "src/engine/module-build.ts": "dcd8397b8cecf6fab61debd9aa2f86f612da0ca6ccf363c79d56033bc170b993", "src/catalog/modules.ts": "e268c6d42e4d5093ab943aed5cf2263a72e6d5e1a7ac0e72efc8a7ec6c62b89b", - "src/engine/assets/dsp-packages.json": "301bab722f975f6edb85642f53c1d05928ec232defb90b5cd8b02785c08b73cc", - "src/engine/assets/descriptor-recipes.json": "f8006d06e3b7c5df2d950dba3364797e16b86e65c39fefc40b5cbef7570407cd", - "src/engine/assets/menu-recipes.json": "ca1eaf307ee09c95a984fe8080779a347d326a546e45aed70ce64bc3584c725c", - "src/engine/assets/rom-packages.json": "0569b717bdfa5b8c2915781406d81512d8d6aa7ad61ef40048f42a6a4323c44e", + "src/engine/assets/dsp-packages.json": "eb8ffb9545f9c2c40de262e669ca24629825198ae6ca837b85ee6c6a79401fc2", + "src/engine/assets/descriptor-recipes.json": "92ab9399129e0289534762043873766d98f55b81ad8f4f36385f605737a7dcae", + "src/engine/assets/menu-recipes.json": "49e0778acdc1b2825a322122e45346c80a014beb712f63a61ed4db9238271578", + "src/engine/assets/rom-packages.json": "5249880d2808619b1a70211d718c9d5e5c72df1ea390fd3796fa55f2a51e142d", "upstream/elekloader/link.py": "5d31157ccbe62807ff9f05fd47e1e55b54be0475ab53565e6607a56566603ba8", "upstream/elekloader/dsp.py": "9486d64eecee023670b716f6ae854996da02ee7c1a0efd5361cd963c756dbc69", "upstream/elekloader/patch.py": "77c0a74bf4b0ff8c5525d4c4b1bc42af765314a4601c0510577817a7487d8666", From 95531639e2fdc76c8645db04f1e90758af679130 Mon Sep 17 00:00:00 2001 From: repeat98 Date: Fri, 6 Nov 2026 12:32:33 +0100 Subject: [PATCH 16/33] VECTOR 0.2.6: import the isolated toolchain's packages after merging main 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 | 4 +-- src/engine/assets/menu-recipes.json | 4 +-- src/engine/assets/module-build.json | 30 +++++++++++------------ src/engine/assets/platform-writes.json | 4 +-- src/engine/assets/requested-packages.json | 22 ++++++++--------- 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, 46 insertions(+), 46 deletions(-) diff --git a/src/engine/assets/bootstrap-package.json b/src/engine/assets/bootstrap-package.json index c4cf597c3..83c6eaf69 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": "be64a4ed8ce2fcce671c6e019ea29c250c12defe", + "sourceCommit": "76032d41c4617dcc804726c36f006e5ce078335b", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -39,7 +39,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.2.0-experimental", - "vector": "0.2.5-experimental", + "vector": "0.2.6-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.2-experimental", "recorder-loop-fix": "0.1.0-experimental", diff --git a/src/engine/assets/coldfire-packages.json b/src/engine/assets/coldfire-packages.json index d9d2cc9c5..ee3cb6af6 100644 --- a/src/engine/assets/coldfire-packages.json +++ b/src/engine/assets/coldfire-packages.json @@ -208,7 +208,7 @@ "sha256": "ccffbf72d45358bde585760b9230c668bf38ebf412ab23efc73732cf96024dca" } ], - "sourceCommit": "be64a4ed8ce2fcce671c6e019ea29c250c12defe", + "sourceCommit": "76032d41c4617dcc804726c36f006e5ce078335b", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -231,7 +231,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.2.0-experimental", - "vector": "0.2.5-experimental", + "vector": "0.2.6-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.2-experimental", "recorder-loop-fix": "0.1.0-experimental", diff --git a/src/engine/assets/descriptor-recipes.json b/src/engine/assets/descriptor-recipes.json index d90c0d01f..06b7c7a52 100644 --- a/src/engine/assets/descriptor-recipes.json +++ b/src/engine/assets/descriptor-recipes.json @@ -4439,7 +4439,7 @@ ] } ], - "sourceCommit": "be64a4ed8ce2fcce671c6e019ea29c250c12defe", + "sourceCommit": "76032d41c4617dcc804726c36f006e5ce078335b", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -4462,7 +4462,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.2.0-experimental", - "vector": "0.2.5-experimental", + "vector": "0.2.6-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.2-experimental", "recorder-loop-fix": "0.1.0-experimental", diff --git a/src/engine/assets/dsp-packages.json b/src/engine/assets/dsp-packages.json index f9a0fc6c2..340f1560e 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": "be64a4ed8ce2fcce671c6e019ea29c250c12defe", + "sourceCommit": "76032d41c4617dcc804726c36f006e5ce078335b", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -25,7 +25,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.2.0-experimental", - "vector": "0.2.5-experimental", + "vector": "0.2.6-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.2-experimental", "recorder-loop-fix": "0.1.0-experimental", diff --git a/src/engine/assets/menu-recipes.json b/src/engine/assets/menu-recipes.json index 168bb63e0..de33d05b3 100644 --- a/src/engine/assets/menu-recipes.json +++ b/src/engine/assets/menu-recipes.json @@ -1425,7 +1425,7 @@ "caveLimit": 1074625596 } ], - "sourceCommit": "be64a4ed8ce2fcce671c6e019ea29c250c12defe", + "sourceCommit": "76032d41c4617dcc804726c36f006e5ce078335b", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -1448,7 +1448,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.2.0-experimental", - "vector": "0.2.5-experimental", + "vector": "0.2.6-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.2-experimental", "recorder-loop-fix": "0.1.0-experimental", diff --git a/src/engine/assets/module-build.json b/src/engine/assets/module-build.json index 7de078fb7..a4f2c07ae 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": "be64a4ed8ce2fcce671c6e019ea29c250c12defe", + "sourceCommit": "76032d41c4617dcc804726c36f006e5ce078335b", "nativeRevision": "b8deefc88b2c3e5f3c6158e364eb741df1924e1d", - "sourceTreeSha256": "dde13b5b19877958384a9d341f4d4b868b76593a9a19727380a8a47da8f1de81", + "sourceTreeSha256": "f8ca3d9bd4bac70c16f6d804a81bc0f464d7595dc1f5d1cad72aa022069a8001", "compilerSha256": "2d2d0aabd4d9fa85485637f7dfac51612118e150a143d2a1c9fac9f9ce8b87ef", "moduleVersions": { "spectrum": "0.1.1-experimental", @@ -27,7 +27,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.2.0-experimental", - "vector": "0.2.5-experimental", + "vector": "0.2.6-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.2-experimental", "recorder-loop-fix": "0.1.0-experimental", @@ -44,47 +44,47 @@ "files": { "dsp-packages.json": { "bytes": 91927, - "sha256": "6a92fb857b757dd887b653fc627fa7729c6a8dd150433142ff64f8e9c8dcc6bb" + "sha256": "df9b31dd9f982defc74a7de24fd963ed628ad3c1c0abaf34eed5ce8e0555c4a3" }, "resident-dsp.json": { "bytes": 25332, - "sha256": "bd1b6dc4a7725808c12a2ecd1fece3412de458ea556f77c1a8004f08da9af418" + "sha256": "e82de603321bd0d91354b1f175bfde4e1ddb24bf859ae7292b678932e885c68a" }, "coldfire-packages.json": { "bytes": 353863, - "sha256": "a7b723674e695dac1b224a722733bd0aef8dae87fa884446d6fdada720144f8f" + "sha256": "b703cad5b3a3f5fe25ba108ff7675b05d00b4939d38d5b41ac7dd064c495d7c7" }, "rom-packages.json": { "bytes": 33483, - "sha256": "65365ef79215562a511305b8e6d494fcba171aa7763780af0656e1bca8ce06a0" + "sha256": "8682f3e34a0aa3e99f3e44dd359b0e48848628e3ea8cf02623a4cd5b12a71319" }, "bootstrap-package.json": { "bytes": 4066, - "sha256": "5f74b8b1d97a5cb91ee4d49d1838ca29a66a798716d6bdcb7175d9f16af6efd5" + "sha256": "29c704d1a345df480d25cd2c8daaf46407beaf52d6e47f458ae27163b8a07ade" }, "menu-recipes.json": { "bytes": 37725, - "sha256": "b03462fe6469604df4e3b087c0e8b99f654d49cc2b7cc2b494cf393f369cb961" + "sha256": "1d4e64994baef0bfed56fe8781851957d00b20dab6b2e0e8d3059927c1125d45" }, "descriptor-recipes.json": { "bytes": 85350, - "sha256": "2159af671066e45073ef135de21a9343d19b0fd9b7edf8c962f0d124bd532485" + "sha256": "956677330370c6e3e9e8f0000be83b99ae05ff7ad6ecfec61b94b8c6d160b8cc" }, "platform-writes.json": { "bytes": 17809, - "sha256": "7269986040c6ff1c46e58d3f8e6e58703c1b9a99760756268be18b68d17b3581" + "sha256": "3123c38d2c43e20c329e167f47384e2621dcbb912b491251657850e81025fc50" }, "requested-packages.json": { - "bytes": 1230696, - "sha256": "26bbd6da9197becbc1ded535c3044d0a40308b2737089f664ada2e7034387a10" + "bytes": 1230680, + "sha256": "3dcfa4bab24a729a5ca24a9cd0785c87a8ebad2358cfbb755ee41237626aa165" }, "utility-packages.json": { "bytes": 13194, - "sha256": "64f3f5d198329be23bd1aadd0c3c49a29dabb1b822db9dfa869387326b34c269" + "sha256": "718bcfe56eb71363db32e5586dde4f5925b85480afc253a67a95c634a67285a0" }, "usb-audio-packages.json": { "bytes": 737836, - "sha256": "c413b733775c0ec01f0ecc58857ab8703fde94d35e17b3261f62d4d44ff3388d" + "sha256": "f97672986f2b52440803c948a9643d94c8070b97f573674a3675ad366e9ed6a5" } }, "approval": null, diff --git a/src/engine/assets/platform-writes.json b/src/engine/assets/platform-writes.json index fc81b90d4..edccc6a38 100644 --- a/src/engine/assets/platform-writes.json +++ b/src/engine/assets/platform-writes.json @@ -526,7 +526,7 @@ "sha256": "09effec7437266b693e358d43f0ba0f3de2b0b35fe4d81e7b76ba90cf388bde8" } ], - "sourceCommit": "be64a4ed8ce2fcce671c6e019ea29c250c12defe", + "sourceCommit": "76032d41c4617dcc804726c36f006e5ce078335b", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -549,7 +549,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.2.0-experimental", - "vector": "0.2.5-experimental", + "vector": "0.2.6-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.2-experimental", "recorder-loop-fix": "0.1.0-experimental", diff --git a/src/engine/assets/requested-packages.json b/src/engine/assets/requested-packages.json index 55e2399aa..a9bd4f094 100644 --- a/src/engine/assets/requested-packages.json +++ b/src/engine/assets/requested-packages.json @@ -1,7 +1,7 @@ { "schema": 1, "revision": "b8deefc88b2c3e5f3c6158e364eb741df1924e1d", - "sourceCommit": "be64a4ed8ce2fcce671c6e019ea29c250c12defe", + "sourceCommit": "76032d41c4617dcc804726c36f006e5ce078335b", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -24,7 +24,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.2.0-experimental", - "vector": "0.2.5-experimental", + "vector": "0.2.6-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.2-experimental", "recorder-loop-fix": "0.1.0-experimental", @@ -443,7 +443,7 @@ { "label": "vector", "moduleId": "vector", - "version": "0.2.5-experimental", + "version": "0.2.6-experimental", "key": "VECTOR", "author": "repeat98", "nativeAuthor": "repeat98", @@ -452,37 +452,37 @@ "caveAddress": null, "source": "modules/vector/control.s", "sources": { - "modules/vector/control.s": "c4f829e437ffbde1275c00827031b694a86011013d37269077e4696818323471", + "modules/vector/control.s": "1939a627870464126d138522173d0465d1abc790cdb4ad4bc29a15501484faf5", "modules/vector/manifest.py": "4d921f24256038797a99671534885b0bb9a27eaa79261b11136cf0a95a75af21" }, - "bytes": 23508, - "code": "7f454c4601020100000000000000000000010004000000010000000000000000000059f4000000260034000000000028000c000b4fefffe048d73c3c4ab900000000670e202f0024b0b900000000670000da41f900000000226f002493c81031880010c0b1fc0000000066f24bf900000000428243f90000000049f90000000045f900000000223c00000000265d91c810338800670c158088005288ab43b68866eed1ca4218b28866fa201c26004243484378182a00e8ad2800e08c13400003ab4012851344000213430001b082656a203c00000000781826002a0042434843e8ad2800e08c1340003358891345002c1344002e52825c8a5c81700c1343002db082668877fc5555202f0024283c5555555523c400000000a3790000000023c30000000023c000000000203c000000004cd73c3c4fef00204e75203c00000000781826002a0042434843e8ad2800e08c1340003358891345002c1344002e52825c8a5c81700c1343002db0826600ff1e60924feffc38720f48d77cfc206f03d071902f40003eb2806406740f2f42003e7010206f03d077a800012f43003ab083640672102f41003a700b206f03d075a800022f42004ab0826406720b2f41004aa940206f03d075a800032f420042b0826404a96f0042206f03d0707e73a800042f410046b0816406727e2f410046707f206f03d075a800052f42004eb0826406727f2f41004e700c206f03d075a800062f420032b0826406720c2f4100327218206f03d01028000875a800072f4200361f40005fb282640674182f420036206f03d0226f0036282f03d41028000943e9fff42f4900524a0067107240b2846500042e7180b08465000408206f03cc47ef02c84def03c8116f03d701002f480060224b50c0421011400003114000021140000122d8bdc966ea2a2f003e720b243c9e3779b942862e3c7feb352de3ad45ef00c849ef01c8260a2c452a2f03dc2205b581200142404840b3804c0708007e0f2200eea9b380223c846ca68b4c0108002e0042474847b187a740c0867fc74a80677ade8e2887204320062228fffc4bef03c843f51c00bea9fe00640a2081538059884a8066e441f70c002a4606829e3779b9528d588c5883214600c8bbc4675e22052e3c7feb352db5812c0d200142404840b3804c0708007e0f2200eea9b380223c846ca68b4c0108002e0042474847b187a740c0867fc74a80668628874a866684428041f70c002a4606829e3779b9528d588c5883214600c8bbc466a2300dc0ef003c5080e888671671c043f20c00201a41f70c007001114002c8b5c966f0720c760c202f004a5e804c41000273fc00fe92af004e7ffc00fe226f0052780c700c90af004a2f42005ac2ef03da286f0052d0824c4300024c471001307c001893ef003291ef004a98af0036a340e5a81f410059d9ef003242af002e2c492f4d00522f46003a2f40004e2a6f002e52af002e4a1367000144223c85ebca6b42832c2f002e428543f90000000070f42e2f03dc4c016800246f00422f4b003675f1aa00327c0064bf867e0f0a86b5297a4d220642414841bd812c3c7feb352d4c0618002c01eeaebd812c3c846ca68b4c0618002c0142464846b3862f46003222007c0cd2884c4610070f02672ab08e6c0001542204d2804a816d00013cb3c16f00013e2600528022417c0c2200d2884c4610070f0266d65280720db28066c02c2f0032266f00364a8567162006e0884c45000143f71c00262900640683fffffff4700fc086b0af003e642c7030c0864a80660ac4af004e4a826600015e202f004a0806000667060680fffffff4b08e6d06b9c06d0226007018a7422206e0a9c7fc00054c421000068300000040174300015480c0ef0048e48817400002200dc0824a80670000d80286003000004a86670000cc102f005917400003588bbbef003a6600fea82a6f00524aaf03d4675c71af005f763fb680650000b02c2f03d42206246f03cc2806206f03d053844c4600021628000a71c6206f00602a0643f20c009282240d2c0152814c4560004a0367062c049c8020064c42000647ef03c845f36c0020eaff00b3c866da4cd77cfca3404fef03c84e754481b3c16e00fec652806000fe9cb08c6e1045f75c002640528547eb000c254b00642204d2804a816d18b3c16f00feb222412600720d5280b2806600fe6c6000fea8448160e4102f03db174000036000ff342c2f03d4703f206f03d02206246f03cc28064c4600021628000a71c6206f006053842a06928243f20c00240d6000ff4e202f005a6000fea2206f03cc280047ef02c84def03c8116f03d701002f480060224b6000fbf671807840b0846400fbd460d64fefffd448d74c044242203946c82456227c20300c0c2f4800102040d1fc0008ed8042001239100b14cf3f420028243c0b0b00012f420020a7421f40002a302f00322f490024c28275fc18b2c0fc001e4c021800d1c173b0083e53814a81670001f64def001793c922090681000001e9d280a542b489641e1cb0180052897209b289671e22090681000001e9528ed280a542b48965e245f1083f52891cf0a80060c6102f0017720fa942c2807180e88830401f410020b4806500017e3008122f001874101f400023701fc0813040b4806500013c3408102f0019ea891f420021a342c282740fc4801f41002a12022042740bb488650001027180e8881f410022720c3040b280650000d6122f001a340871811f420026747eb480650000b0102f001b1f4100244a006d00008c122f001c1f40002574187181b480656871af001d1f410027723fb2806546122f001ee188758120427440b4886528100147ef00203f400028206f0010200820d320ef002430ef00284cd74c0410af002a4fef002c4e75724047ef002010013f40002860d4122f001e703fe188758120427440b48864b860de721871af001d1f410027723fb280649660da707f122f001c74181f4000257181b4806400ff7460d8727e102f001b1f4100244a006c00ff5260d8307c000c122f001a340871811f420026747eb4806400ff2a60d4720b7180e88830401f410022720cb2806400ff0060d0307c0010102f0019ea8934081f420021a342c282740fc4801f41002a12022042740bb4886400fec460c0307c0004122f0018741030081f400023701fc0813040b4806400fe8260b847ef002093c9244b22090681000001e94df1083fd280a542b489651a528914f0e80022090681000001e94df1083fd280a542b48964e614b018005289ad41b2896700fecc528a60c0203946c824560680c00000002f020c8007efffff624a327c0022723ca742207946c82456d1fc0008ed801039100b14cfc08275fc18b24c020800a342d1c071b09800d1c1528906810000001eb480650871907453b480670e0c810000012c66bc241f42804e7571a800017432b48066e871a8000253804a80670a71a8000255804a8066d4241fa3404e754feffff42f0e2f0271b9100b14cc2c6f00242f0041ef000d4ebafcbe588fad40b08e675cab42200eb48e6402538071b7080920402f2f00302f2f003070fec0af003043f90000000073b1e8002f002001b1c164022008c0fc007f4c4100002f002f2f00302f2f00302f2f00304eb9400479b44fef001c241f2c5f4fef000c4e751039100b14cc227946c82456a7421239100b14cfd3fc0008ed807180c282c0fc001e204071fc18b241e801f14c001800d3c110318800727fc28020416000ff76518f2f02740b202f00182200206f00105c81226f00142f6f002000042f6f00240008b4816406241f508f4e752f6f000800242f6f000400202f41001c2f4000182f4900142f480010241f508f6000fef2598f2f02740b202f0014222f000c206f0010226f001c2f6f00200004b4806406241f588f4e752f6f000400202f49001c2f4000182f4000142f4800102f41000c241f588f6000feaa4fefffe448d7401c242f002441ef001171b9100b14cc2f004ebafb66588fad40b082676cab40b082653c71b728112202a3435581b6816500009255824a826700012aab434c43000141f900000000226f002020701c00101812c066fa4cd7401c4fef001c4e7571b72810780bb882660001124a80670000e6226f002041f900000000101812c067d4101812c066f460cc1039100b14cc227946c82456a7421239100b14cf77fc18b2d3fc0008ed80787f7180c282c0fc001e20404c03180041e801f1d3c110318800c0847663b68064587864760a2200a54e4c441001206f0020a74906810000003010c122004c43100124014c43200422040681000000301081206f0020d1ce740a4c42000142030681000000301081206f0020118398004cd7401c4fef001c4e75206f0020a34942817409b48064d02c49760a224122004c431001548924014c43200422040681000000301081206f0020d1ce60aa226f002041f9000000006000ff1a740c4c42000141f900000000226f002020701c006000fed6780ab88266144a806600ff3e226f002041f9000000006000fee851824a826600ff2822000681fffffff44a816d0e20017663b6806500ff186000ff6c206f0020740c94802002a54910fc002da3417409b4806400ff306000ff5c700a2f4000086000fe1c70082f4000086000fe12ad6f00086000fe0a71b9100b14cc4feffff441ef00012f004ebaf976588f4a2f000b671641f900000000226f0010101812c066fa4fef000c4e75226f001041f90000000060e84feffff42f0271b9100b14cc41ef0005ab422f004ebaf93471af000c588f41f9000000004c420001226f001420701c00101812c066fa241f4fef000c4e754feffff42f02740c71b9100b14cc41ef00052f004ebaf8f671af000b588f41f9000000004c420001226f001420701c00101812c066fa241f4fef000c4e754fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf8b471af0025588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf7e471af0023588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf71471af0022588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf64471af0021588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf57471af001e588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf4a471af001d588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d8148006090202f0004727f5280c0814e752f032f02206f0010a942226f000c102800037380b481640270041210e988760f7581b6826402720f808112801028000a6702700112280001eb8876107581b682640272108081740c13400001102800067380b4816402700c12280002e988760b7581b6826402720b8081747e13400002102800047380b4816402707e13400003102800056a02707f134000047618102800077380b6816402701813400005743f102800087380b4816402703f134000067640102800097380b68164027040727fc2af00141340000713410008241f261f4e754fefffd848d75c1c2f2f00342f2f003449ef00272f0c4ebaff16362f003a9dce4fef000cc6fc001e141ca540b08e64000086267c100b14cfa7441013227946c82456d3fc0008ed80121345ee01e9528ed5c3c084c28479fc18b24c0408004c0418002040d1fc100a4ece7009d3c11382a8001182a800b08e66ae1013227946c82456a7421213d3fc0008ed80c082c2824c0408004c04180078022040d1fc100a4eced3c11384383e1184383e4cd75c1c4fef00284e75267c100b14cfa7441013227946c82456d3fc0008ed80121345ee003f528ed5c3c084c28479fc18b24c0408004c0418002040d1fc100a4ece7009d3c11382a8001182a800b08e6600ff2a6000ff782f02720f206f0010a942226f00081010c08112807190e8881200b4806402720413410003721f741010280001c0811200b4806402721013410001a341740f71a80001ea88c0811340000a10280002c082740b1200b4806402720b13410002740c71a80002e8881200b4806402720c13410006747e102800037380b4816402707e13400004102800046a02707f134000057418102800057380b4816402701813400007743f102800067380b4816402703f134000087440102800077380b4816402704013400009727f10280008206f000c241fc28020814e75598f2f0a2f02202f0010222f0014206f00184a80672c4a81672845e8ffff743fb48a651e747fb4af001c65162f4800182f4100142f400010241f245f588f6000ebcc241f4280245f588f4e75222f00044a81675a71fc0919b0af000864502001204106800000004052884a28ffff663eb08866f42041200141e8004806800000005052884a28ffff6624b08866f4204106810000085941e80059719052880c80000000ff6608b28866f0a3404e7542804e754fefffd848d73cfc262f002c4a8367000168202f00300c80000009196300015a4aaf003467000152206f0034723f18280100200453807180b2806500013c4aaf003866122f2f00302f034ebaff4e508f4a806700011a7984246f00344281204a1010a3457580ba826500010eb284650001144a0066000102528158887040b08166de264322432843428547eb005943e9007949ec089aaf41c2852805e68caf48a34291c4d1c37190e2a0c0824a1267000132142a000116824a1267000120142a00021742000d4a126700010c142a00031742000fa342e3aa12104a12670000ee828210814a8066044a12673e420042143a7c000f42819284d2839bc4307c004f194000012002468091c41e353800ce801b8738002a411e2d001fce801b47001f12303800c08111803800204b4281101846804a0056c0710044808280b1c966ee307c001791c4d1c310104a1266784a816774848010825285588a47eb0020548c43e900207040b0856600ff2ca3404cd73cfc4fef00284e754cd73cfc42804fef00284e754a006700fef0102800017a787580598071805982ba8065dcab454c4528004a8066d275a800027a7eba8265be4a2800036db8528158887040b0816600fea06000febe4682c48060882e024687c2876000ff0e50c26000fef650c26000fee250c26000fed02f02202f000caf41206f0008b280651c73b00822a342b4816512721e74534c01080041f0083c7190b4806706241f42804e7571a800017232b28066f071a8000253804a80671410280002a541241fb3804a0057c0710044804e75241fa3404e754fefffc8203946c824560680c000000048d744040c8007efffff630c42804cd744044fef00384e75207946c82456a7411039100b14cf75fc18b22f2f003cd1fc0008ed80c0814c020800487008004ebaff50508f4a8067c61039100b14d0740f73802f410018b48165b2322f003e227946c82456488041f9000000002f49001c1439100b14cf246f001cc2fc091a1f4200272c413200c2fc8ed843f618004df298002f4900209dc81030e80010c0b1fc0000000066f24aaf0040670001f871fc8e55206f001cd1c14a3008006700020e1039000000007180743f22005381b4816500ff3a2f2f003c41ef00312f4000104ebaed48342f0042588f207946c82456d1fc0008ed801239100b14cfc4fc001e202f000c2242a742c28275fc18b243e901f14c021800747fd1c112309800c4812f4200284aaf0044670c2202747f5281c4812f420028342f003e207946c82456d1fc0008ed801239100b14cfc4fc00182242a742c28275fc18b243e901234c021800747fd1c173b09800b4816500fe9e2f2f00282f012f00486f00394879000000004ebae77e2f2f00544879000000004878091a4879000000004ebafc0c4fef00244a806700fe68226f001cb3f946c824566600fe5873b9100b14d0b2af00186600fe4a73af002775b9100b14cfb4816600fe3a226f002093fc0000000041f9000000002f49001845f0e800121875922f4a00102f4200147581b4af0014670e1481226f001845e8ffff13928800b1fc0000000066d22f2f0028486f00312f2f00442f4000184ebaf8f2a742122f00332c7946c82456ddfc000950484fef000cc28214163242a342e3aa204222022409828224081c811239100b145e828213c1100b145e207946c82456d1fc0009b332a350a379100f85984eb940027e004eb9400339d82f2f003c4eb94009da20588f4cd74404a37946c7c72c202f000c4fef00384e754878091a4879000000002f4100144ebafa8e508f222f000c4a806600fdee4cd744044fef00384e7571fc8e53103008006000fdf04e56ffe041eeffea2f0a2f0273b9100b14cc2f012d41ffe04ebaeb38322effe2588f207946c82456d1fc0008ed803d6efff2fffd1d6efff4ffff2d6effeefff92d6effeafff5c2fc001e1039100b14cf2241a74143e901f1c08173fc18b24c010800d1c012309800707fc280ab407581b0ae0008657a43eeffead3ee0008206e000c7391d1c14a886d000082246e0008203c0000000071b20800b1c06c022008b0816740128020022f00486effea2f2effe041faf78e2d48ffe44e9042a7a3672f2effe04ebafc524fef0018206effe44a806744a1674eb94004d948a37946c7c72c588f242effd8246effdc4e5e4e75ad40b0ae00086742222e0008206e000c43f618e97391d1c14a886c804a8167d442001280200260902f02486efff52f2effe04e904fef000ca1674eb94004d948a37946c7c72c588f60aa202e000cd0824a806d3c727fb2806c02707fb08267942f00486effea2f2effe041faf6e62d48ffe44e9042a7a3672f2effe04ebafbaa4fef0018206effe44a806600ff5860984a016700ff6042802f00486effea2f2effe041faf6ae2d48ffe44e9042a7a3672f2effe04ebafb724fef0018206effe44a806600ff206000ff60203946c824560680c00000002f020c8007efffff62084a398000001567064280241f4e751239100b14cc207946c82456a7421039100b14cfd1fc0008ed807381c0822f0173fc18b24c010800487008004ebafaac508f4a8067c42039000000004a8066ba4a3946c7d8d866b44ab9460d173a66ac4ab9460d169457c0241f710044804e754fefff78428148d75cfc242f008c284245ef00289dce28024283264a06840000003c49ec002271b41800a346bc80650c41f648007e537190be80674252814dee001e47eb000cbdfc000000f066d82f02206f009442854e90588f91c80b0366000086528541e8001e45ea000cb1fc000000f066e84cd75cfc4fef00884e7571a800017c32bc8066b471a8000253804a80670a71a8000255804a8066a0a340e3a891c8868043f6883cab47be88642c2c08ad474c47600043f60800700c43e901ecd3c21791880042115288b0886700ff6e43f6883cab47be8865d4d3c2179188004211528860be428147f02800ab44b881651449f21800ab442242d3c11194983c5281b88164ec2c01ad474c47600449f21800528143f34800780c135401ecb88166ca528541e8001e45ea000cb1fc000000f06600ff286000ff3c487a13f82f2f00084ebafebc508f4e75203946c824560680c00000002f020c8007efffff62084a39800000156706241f42804e751239100b14cc207946c82456a7421039100b14cfd1fc0008ed807381c0822f0173fc18b24c010800487008004ebaf8de508f241f4e75203900000000b0b946c82456670442804e751039100b14cfa741c081b0b90000000066ea71b9100b14ccb0b90000000066dc6000ff724fefffec70312f0a2f02226f0020a342206f0024b08956c173014481b4886700008ea340e3a82439000000002f420014c4804a82665e4a886632a340244174fd45f21a00d08a45f90000000020320c0022005381b48165322f4900202f480024241f2240245f4fef00144ed12441a54045f21a0074fdd08a45f90000000020320c0022005381b48164ce241f245f4fef00144e754a8866f24680c0af0014241f245f23c0000000004fef00144e752f4100102f4800082f49000c4ebafeb4222f0010206f0008226f000c4a806700008a103946100b1d08000005667c703eb089677c7431b48966702f4100102f4800082f49000c4ebafcac222f0010206f0008226f000c4a806750a34081b9000000001039100b14cca367a36771802f004ebaf7e04fef000c4a80677048780020203c000000002f004eb94005a2b8a1674eb94004d948a37946c7c72c4fef000c241f245f4fef00144e7542806000fee04a3946c7d8d866f24ab90000000057c0a54183b900000000a1677100448023c0000000004eb94004d948588f241fa37946c7c72c245f4fef00144e7548780020203c000000002f004eb94005a2b8a1674eb94004d948a37946c7c72c4fef000c608e203900000000b0b946c8245667024e751039100b14cfa741c081b0b90000000066ec71b9100b14ccb0b90000000066de4ebafd7e4a8067d6a37900000000a379000000004eba10d6a1674eb94004d948a37946c7c72c588f4e75203900000000b0b946c8245667024e751039100b14cfa741c081b0b90000000066ec71b9100b14ccb0b90000000066de4ebafd244a8067d642b900000000a379000000004eba107ca1674eb94004d948a37946c7c72c588f4e75203946c824560680c00000002f020c8007efffff6232203946c82456a7421239100b14cf06800008ed80206f000c41e8ffdec28275fc18b24c021800af42d08122089280b4816408202f0008241f4e75a342b4af000865f02f012f004ebaf5ce508f4a8067e2ab6f0008202f0008241f4e752f032f024ab90000000067084ebafcd64a806672203946c824560680c00000000c8007efffff6236223946c82456a7431039100b14cf06810008ed803040202f00100680ffffffde2408c48377fc18b24c032800d2829081af42b480640a202f000c241f261f4e75a343b6af000c65ee2f002f014ebaf544508f4a8067e0241fab40261f4e75203946c82456a7421239100b14cf77fc18b220790000000006800008ed8041e80022c2824c031800d081d088b0af00106600ff5c241f203900000000261f4e754fefffc4203946c824560680c000000048d74c0c0c8007efffff62000166af40b0af00446500015c223946c82456206f004091c12c48ddfcfff712802f41002473fc18b2200e4c41000220424a8266000132bdfc000062c762000128222f0044a342246f004043f218227391b48164000178a36f0020222f0044701e4c0018004aaf004866624ab900000000670001062f4100142f4800184ebafb84222f0014206f00184a80670000ec203946c8245606800008ed801439100b14cf3242a7422609c68275fc18b24c023800d083b0af0040660000c0262f0044b6b900000000660000b2a56f00482f2f00442f2f00442f41001c2f4800204ebaf3fa508f222f0014206f00184a80670000e8226f0040203c1001614e90af002441f1183c43f118422209227c100162fe93ef00241190080045e801b0139288005288b28866eea340b0af0048662c73fc18b2200e207c46c8245623d000000000a379000000004c410000222f004423c10000000023c0000000004cd74c0c202f00204fef003c4e754cd74c0ca36f0020202f00204fef003c4e752f2f00442f2f00442f41001c4ebaf352508f222f00144a806700ff5e4203206f0040203c1001614e226f004090af00241183183e1183183d1183183c41f1183c43f118422209227c100162fe93ef00246000ff4877912f4300206000fe86226f0044743248690001487900000000200f06800000003b2f002f4000282f410020246f004c2f48002445f2183c2f4a00344ebaed8614bc0053226f004c222f0020244145ea003f1382183d74021382183e224143e901e9202f00284fef000c2f490028206f00182f4a002c226f0028a542d3c8b488641826405288246f0040740915939800b4886700fe90528060dc246f00402640226f002cd3c85288159b9800200b60c6518f2039460e5e302f0b2f0a4a80671047f900000000b7f9460e5e2c670a4280245f265f508f4e75204041e800242f48000c2f082f40000c4eb94003567c226f000c588f4280246900282f1ba16745eaffe92f0aab672f2f001c2f3c400ba8762f4000204eb940012bd84fef0018202f0008b0b9460e5e4067165f8aa341b2806640245fa37946c7c72c265f508f4e75226f000c2051a167486a00054868fffb486affffa7672f092f4000204eb9400122544fef00185f8aa341202f0008b28067c02f1ba1672f0aab67a3402f2f001c2f3c400ba8762f4000204eb940012bd84fef0018202f0008b0b9460e5e40668a609e4ebaf8384a80670001004ab9460e5e30660000f64ab9460e70e0660000ec207c46c82456a74123d0000000001039100b14cfc28023c10000000071b9100b14cca567ad672f3c460e5e3823c00000000042b90000000042b9000000004eb94007ec604fef000c207946c82456a7411039100b14cf227900000000d1fc0008ed80c08173fc18b24c010800d1c071b098222f002f3c460e5e384eb94007edb041f90000000023c8460e5e28203c0000000023c0460e5e2c42b9460e5e342f3c4006d754a36742a7a167487800404878006e4eb94005829c4fef002023c0460e5e304a80672442a74879000000002f004eb9400570b82f3c400ce0c44eb9400314944fef00106000fe084e754ab9460e5e30670e203c00000000b0b9460e5e2c67024e754eb94006d75442b9000000004eba0a764ef94007893c598f4ab9460e5e30670e203c00000000b0b9460e5e2c6704588f4e754ebaf73e4a8067f42239460e5e40a340b08165e82e814eb94006d7544ebaf7224a8067d823d700000000a379000000004eba0a20a1674eb94004d948a37946c7c72c588f588f4e754feffff4222f0010206f00144ab9460e70e0677e4ab90000000066122f4800142f4100104fef000c4ef94007893c2f4100042e884ebaf6c2222f000420574a8067da4ab9460e70e067d22039000000002f4000084eb9400789e442b9000000004ebafe024ab9460e5e306726203c00000000b0b9460e5e2c66182f2f00082f3c460e5e384eb94007edb04fef00146000fce24fef000c4e75518f222f000c206f00104ab9460e70e067124ab9460e739a660aab40b0b9460e738e67102f4800102f41000c508f4ef94007909c2f4100042e884ebaf5ca222f000420574a8067dc4eb9400789e4508f6000fd7a598f4eb940031f282e804ebaf5a64a80672c4ab90000000066244a3946c7d8d8661c4ab9460d173a66144ab9460d1694660c2f174ebad6e02f400004588f2017588f4e75598f2f02203946c824560680c0000000222f000c0c8007efffff62084a39800000156708241f2001588f4e751039100b14cc207946c82456d1fc0008ed8075801039100b14cf2242a7422f09c08275fc18b24c020800487008002f41000c4ebaee3e508f222f00044a8067b84ab90000000066b0ab40b0b9460d5c3066a62f41000c241f588f6000d64a4feffff4ab402f02222f0014206f0018b0816408241f4fef000c4e75203946c824560680c00000000c8007efffff62e44a398000001566dc1439100b14cc227946c82456d3fc0008ed801039100b14cf75822f42000ca742c08275fc18b22f2f000c4c020800487108002f4100102f48000c4ebaeda0508f222f00084a8067944ab900000000668c4a3946c7d8d866844ab9460d173a6600ff7c4ab9460d16946600ff724ab9000000006600ff682f6f000400182f410014241f4fef000c6000f09c2f02ab40b0af00086406241f42804e75203946c824560680c00000000c8007efffff62e64a398000001566de1239100b14cc207946c82456a7421039100b14cfd1fc0008ed807381c0822f0173fc18b24c010800487008004ebaecf8508f4a8067a84ab90000000066a02f2f000c206f000c486800064ebaf022508f241fa3404e754fefffd448d75c0c4ab90000000067104ab9460e70e0660003b242b9000000004ab900000000660002fa2479800065b8a340b08a6700031c47faddce23ca00000000203946c824560680c00000000c8007efffff620000b0387c003e9dce45faec70207946c82456a7431039100b14cf73fc18b22f0ed1fc0008ed80c0834c010800487008004e92508f4a80672a207946c82456d1fc0008ed801039100b14cf75fc18b2c083a3434c020800d1c071b0c800b680670000ba528e49ec001e7008b08e669e73b9100b14ccaf42b481650002ce207946c82456a7431039100b14cf75fc18b2d1fc0008ed80c0834c020800d1c04a301822660002a6203c400d301c23c0400d5f4c4e93247946c8245673b9100b14cf77b9100b14cc2c402679000000002039000000002843b5f900000000670000e84a8b67204a8067000272203c000000004ab900000000670002c64cd75c0c4fef002c4e754a8067000252203c000000004ab90000000066e2600002a42f0e41ef0025a7422f4000204ebad9ec77fc18b2207946c82456d1fc0008ed801239100b14cf43ec01b349ec001ec282747f4c031800d1c112309800c4812e82486f00252f0e4ebae6a24fef000c1639100b14cf202f001c227946c82456d3fc0009504812113043a7432408c483e5a8828012811239100b145e808113c0100b145e207946c82456d1fc0009b332a350a379100f85984eb940027e00528e7008b08e6600fe4e6000feacb2b9000000006600ff12b6b9000000006600ff084a8b670002144a80674841f9000000004a8e670a4ab900000000670002184ab9000000006600fefa2f082f41001c4eb94003146c42b90000000023ca0000000023cc00000000222f001c588f23c1000000002079460d165c4a8e6700fec44a886700febe4a906600feb8223c00000000207c46c7dd7643f90000000020100c80000000006704238088005888b1fc46c7dd8266e8207c46c7deae43f9000000002010b0816704238088005888b1fc46c7deba66ec4ebaeeee23c0000000004a80670000f841f90000000042902f084eb940031494a167a379000000004eb94004d948a37946c7c72c508f4cd75c0c4fef002c4e754ebaf0d64a80670000b44ab9460e5e306600fcf64ab9460e70e06600fcec4ebaf8242479800065b8a340b08a6600fce8a34147fadab2b2b9000000006700fcdc4e934a806700fcd499cc4dfae9c242a7740842a72f0c4e96528c4fef000cb48c6700fcb842a7740842a72f0c4e96528c4fef000cb48c66d66000fca0203c400d31ae23c0400d5f4c6000fd5a42b90000000023ca0000000023c10000000023cc000000006000feb84ebaf02e4a806600fc4e42b9000000006000fc4442b9000000006000fc4441f90000000042902f084eb940031494a167a379000000004eb94004d948a37946c7c72c508f6000ff082f002f41001c4eb94003146c42b90000000042b90000000023ca00000000222f001c588f23cc0000000023c1000000006000fe3c4a806700fe3641f9000000004a8e6700fdf64ab9000000006600fdec2f4100182f48001c4ebaed66222f0018206f001cb08b6600fdd223ca000000004cd75c0c4fef002c4e75202f00040c800000000567044efa02fe41fa023020084e75400b3eac400b3e98400b7c67400b5413400b7a63000000004fefffec48ef030200082e802f4800044ebaf1d64cef030200084fef00144e754fefffe048ef0307000c2409d48006820008ed802e822f41000474000c8400000005660274012f4200084ebaf2d40c8400000005660228004cef0307000c4fef00204efa028448794005a61c600648794005a8562239460d5c304fefffe048ef030d000c2609d68006830008ed802e832f42000476000c8100000005660276012f43000826014ebaf2780c83000000056702200322004cef030d000c4fef00204e7516102f0071036100ff362600201f79034879400bb7044ef9400585e67110610000582f004879460e73864ef940078890610000124ef94003d722610000084ef94004c3746100fef841fafedc22300c004e7571104fef00186100fee44ef94003c986711061000012b48066064ef9400786ce4ef9400786fc4fefffec48ef030200082e802f4800044ebaf10e4cef030200084fef00144e752f082f01207946c8245673b9100b14cfc2fc18b2d1c173b9100b14ccd1fc0008eda271b01800221f205f4e750c820000000566344fefffe448ef0303000c2e8b2f4300044ebaf9222f4000084cef0303000c4aaf00084fef001c67064ef94003a6246100ff9c24004efa01300c8600000005662a4fefffec48ef030300042eaf005c4ebaf7982f40005c4cef030300044fef00142f006100ff682c00201f4efa01084eb94005213c4eb94007e9404ebaf93a4ef940052228564543544f5200004878ffff4878ffff4ebaf70e4ef94004e4d04feffff048d703034ebaecae4a80670c4cd703034fef00104efaf4644cd703034fef00102f0a4ab9460e70e04ef9400791ec4feffff048d703034ebaf3504a80670a4cd703034fef00104e754cd703034fef00104fefffe848d73c0c4ef94006d78c7c010c800000000566224feffff048d703034ebaec424a80670a4cd703034fef0010600c4cd703034fef0010bc8065064ef940077b624ef940077b704efaec084fefffa048d77cfc4ef9400023200000000000004ef9400334de0000000000004ef94007982200000000000000004ef94003a53600000000000000004ef94003cda000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffff0000000000000000000000000000000000000000ffffffffffffffff31000000000000000000000000000000000000000000000000003e00000000000000000000000000000000000000000000000000ff00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000002000000000000000000000000000000000000000000030000000000000000000000000000000000000000000400000000000000000000000000000000000000000005000000000000000000000000000000000000000000ff000000000000000000000000000000000000000000465744004f46460052455600564543544f522047454e455241544544004e4f204348414e474500ab204d414348494e453a564543544f5220bb004300432300440044230045004600462300470047230041004123004200303031205354415449430030303220464c455800434852004d494e004d414a00444f520050454e5400545950450044454e5300524f4f54005343414c00474154450041434e540053454544005350414e004f46535400524f5400525054004449520000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000fff05ad0ab506ad04a900000000000000000000000000000000000000000f100b047e7f7f0c183f40010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b0b000120300c0c00000000000000000000000000000000000000000000000100000000000000000400fff10000000000000000000000000300000100000000000000000000000003000003000000000000000000000000030000050000000a000000000000013e02000001000000190000001c00000004010000030000002800000018000000040100000300000038000000200000019201000003000000410000003000000030010000070000004b00000a9e00000048020000010000005c00000a4e00000050020000010000006d0000013e000005280200000100000084000000700000000a010000070000013d000006660000029e020000010000008b000009040000008a02000001000000960000098e000000c00200000100000000000000000000000003000006000000b300000ae6000001dc02000001000000c2000000000000003001000007000000ca00000cc20000000a02000001000000d400000ccc0000000a02000001000000dd00000cd60000000802000001000000e600000cde0000003e02000001000000f000000d1c0000003e02000001000000f900000d5a0000003e020000010000010200000d98000000d0020000010000010b00000e68000000d0020000010000011400000f38000000d0020000010000011d00001008000000d00200000100000126000010d8000000d0020000010000012f000011a8000000d00200000100000138000013560000010402000001000001460000182c000002e80200000100000155000002b30000091a01000003000003e2000001b200000101010000030000015d00001b14000001ba020000010000016c00001cce00000084020000010000017b00000bf200000004010000030000018500001ef60000003602000001000001920000001400000004010000030000019c000000100000000401000003000001a60000000c0000000401000003000001b100000bce0000000401000003000001b600000bd60000001801000003000001bc000020ec0000005a02000001000001c6000000000000000401000003000001d2000000040000000401000003000001de000021460000005a02000001000001ea000000080000000401000003000001f7000000680000000801000007000002030000006000000008010000070000020e00000bd200000004010000030000021d00000bee00000004010000030000022700000c0200000004010000030000022e00000bfe00000004010000030000023900000bfa00000004010000030000024400000bf60000000401000003000000000000000000000000030000070000025046c82456000000000000fff1000002590008ed80000000000000fff10000026200003294000000000000000100000271000031ca00000000000000010000027900002fb8000000000000000100000285000032a00000000000000001000002940000302c0000000000000001000002a2000030f20000000000000001000002b6000030be0000000000000001000002c3000031120000000000000001000002d0000032ac0000000000000001000002df000032ba0000000000000001000002ee00000c400000000000000003000002f600000c8e0000000000000003000002fe0000320000000000000000010000030a00003230000000000000000100000316000032720000000000000001000003230000326a0000000000000001000003330000327600000000000000010000033f0000327c00000000000000010000034c0000009a0000003011000007000003610000008e0000000c11000007000003740000007a000000141100000700000387000012780000000c120000010000039800001284000000d212000001000003a40000145a000000d812000001000003b2000015320000004c12000001000003c20000157e0000006612000001000003d5000015e4000001e812000001000003e9000017cc0000006012000001000003fd00001d520000013a120000010000041200001e8c0000001012000001000004230000328600000000100000010000043500001e9c0000005a120000010000044100001f2c000001c012000001000004480000320800000000100000010000045b000021a000000072120000010000046300002212000000c61200000100000473000022d800000298120000010000047d000000ca0000000b110000070000048d00002570000000f212000001000004a1000026620000010a12000001000004b50000276c0000002e12000001000004c90000279a0000006412000001000004de000027fe0000009812000001000004eb000028960000005412000001000004f9000028ea0000004412000001000005060000292e0000008a1200000100000514000029b8000000c2120000010000051c00000c0800000000100000030000052500002a7a00000082120000010000053300002afc0000048c120000010000053e00000c2400000000100000030000054c00002f8800000000100000010000055c00002fa000000000100000010000056900002fd80000000010000001000005780000301e00000000100000010000058600003026000000001000000100000595000030aa00000000100000010000059f000030b40000000010000001000005a90000307a0000000010000001000005b7000030960000000010000001000005c7000030cc0000000010000001000005d4000030dc0000000010000001000005e30000313e0000000010000001000005f20000317e000000001000000100000601000031b400000000100000010000060e000031d200000000100000010000061a000031e4000000001000000100000627000032160000000010000001000006340000324600000000100000010000064200003282000000001000000100766563746f722e630067656e657261746f725f70616765007372635f706167655f7265616479007372635f706167655f736f75726365007372635f7061676500666f726d6174732e320067656e657261746f725f776964676574007365636f6e646172795f77696467657400766563746f725f67656e65726174652e706172742e30007363616c657300616e795f766563746f7200647261775f67656e657261746f725f7769646765742e706172742e3000666f726d61745f636f6e74726f6c00726f6f74732e3100666f726d61745f313000666f726d61745f3800666f726d61745f3600666f726d61745f313100666f726d61745f3300666f726d61745f3200666f726d61745f3900666f726d61745f3700666f726d61745f3500666f726d61745f3400666f726d61745f3100666f726d61745f3000736176655f73657474696e67730067656e65726174655f747261636b0073746167696e67006368616e67655f636f6e74726f6c0067656e657261746f725f7669657700656469745f7669657700706f6f6c5f636f6e7465787400706f6f6c5f62616e6b00706f6f6c5f7061727400706f6f6c5f747261636b006d696e6500736176656400706f6f6c5f666c657800706f6f6c5f62726f77736500706f6f6c5f64697265637400706f6f6c5f73746174696300706f6f6c5f70656e64696e6700706f6f6c5f6c6162656c730068616e646c6572732e33006c6173745f7472616e73706f7274006c617965725f67656e006163746976650073686f776e5f62616e6b0073686f776e5f706172740073686f776e5f747261636b0042414e4b5f50545200504152545f4f46460073745f6e616d655f7265706c61790073745f6e616d650073745f726f775f747970650073745f6d61696e5f7265706c61790073745f7372635f636f6d6d6f6e0073745f63686f6f7365725f726f775f747970650073745f6e616d655f7069636b0073745f706f6f6c5f6b696e640073745f656469745f7265706c61790073745f647261775f7265706c61790073745f6b6579730073745f656e6373002e706f6f6c5f73746f636b002e6c6973745f73746f636b002e7469746c655f73746f636b002e7469746c655f756e7369676e6564002e7469746c655f706f6f6c002e7469746c655f706c61696e00766563746f725f636f6e74726f6c5f6e616d657300766563746f725f636f6e74726f6c5f6d617800766563746f725f7363616c655f6e616d657300766563746f725f6e6578745f7365656400766563746f725f7061636b00766563746f725f756e7061636b00766563746f725f67656e657261746500766563746f725f747261636b5f656d70747900766563746f725f77726974655f70687261736500766563746f725f7369676e65645f747261636b00766563746f725f76616c69646174655f706172740073745f76616c69646174655f706172740073745f73746f636b5f76616c69646174650073745f73656c65637465640073745f6b65790073745f73746f636b5f706f6f6c5f6f70656e0073745f747970650073745f63686f6f7365725f747970650073745f61737369676e00766563746f725f64656661756c74730073745f706f6f6c5f63686f6963655f647261770073745f706f6f6c5f63686f6963655f6f70656e0073745f706f6f6c5f63686f6963655f6c6566740073745f706f6f6c5f63686f6963655f72696768740073745f706f6f6c5f6c6566740073745f706f6f6c5f72696768740073745f647261775f706167650073745f73657475705f706167650073745f6b6e6f620073745f6c617965720073745f73657475705f6b6e6f620073745f75695f7469636b0073745f656469745f6c617965720073745f6d616368696e655f6e616d650073745f7372635f6e616d65730073745f6d61696e5f636f6d6d69740073745f7372635f636f6d6d69740073745f7372635f636f6d6d6974320073745f6e616d655f610073745f6e616d655f620073745f73657475705f6f70656e0073745f63686f6f7365725f6f70656e0073745f73657475705f726f770073745f63686f6f7365725f726f770073745f73657475705f65646974360073745f73657475705f64726177360073745f7469636b5f686f6f6b0073745f7372635f647261770073745f706f6f6c5f6f70656e0073745f6c6973745f647261770073745f706f6f6c5f7469746c650073745f76616c69646174650000000000001600000301000000180000003200000301000001b200000054000003010000003c0000009e0000020100000a9e000000e000000301000001ae000000e6000003010000001c000000ec00000301000001aa000000f20000030100000018000000f80000030100000020000001080000020100000a4e000018dc0000030100000bcd00001a1600000301effea16600001a4c0000030100000bcd00001ba600003a010000008e00001f14000003010000001000001f22000003010000000c00001fd00000030100000bce000020380000030100000bce0000205c000011010000000c0000209e0000030100000bce000020aa0000030100000bf2000020cc000011010000001d00002108000003010000001000002116000003010000000c0000212600000301000000000000212c000003010000000400002162000003010000001000002170000003010000000c000021800000030100000000000021860000030100000004000023b4000003010000000c0000242e000003010000001400002434000003010000000800002442000003010000000c0000244800000301000000100000268a0000030100000014000026980000030100000010000026ae000003010000000c000026b40000030100000004000026ba00000301000000080000270e00003a01000000680000277600003a01000000680000278c0000030100000004000027a600003a0100000068000027dc0000030100000000000027e200000301000000040000285a00000301000000040000286c00003a010000006800002b18000003010000000400002b3a0000030100000bd200002c280000030100000bfe00002c3c0000030100000c0800002c5c0000030100000c2400002d180000030100000bfa00002d220000030100000bf600002d600000030100000c0200002d660000030100000bfe00002d6c0000030100000bf600002d780000030100000bfa00002d960000020100001f2c00002daa0000020100001f2c00002de40000030100000bee00002e020000030100000c0200002e560000030100000bd200002eac0000030100000bf200002eb20000030100000bfe00002eb80000030100000bfa00002ebe0000030100000bf600002ed2000003010000000400002edc000003010000000800002ef80000030100000c0200002f1c0000030100000c0200002f220000030100000bf200002f280000030100000bfe00002f340000030100000bf600002f3a0000030100000bfa00002f7a0000030100000bfe00002fb400000201000031ca0000000a000003010000001c0000002000000301000000200000003a00003a010000009a0000004200000301000000ea0000004800003a01000000300000004e00000301000000360000040400003a0100000070000009d200003a010000008e00000b3000003a010000007a00000b64000011010000000800000c48000011010000000000000c5800003a010000000000000c7a000011010000000400000cfc000011010000000800000d16000011010000000000000d3c00003a010000007a00000d7a00003a0100000000000018a400000301000002b3000018fe0000030100000303000019ba00000301000001b2000019c800000301000001b2000019d200000301000002b300001a1c00000301000002b300001ae600000301000002b300001d2a0000030100000bf200001ef8000003010000001400001f540000030100000bce00001f740000030100000bd600001fa60000030100000bd6000020940000030100000bf2000020ee0000030100000014000021480000030100000014000022180000030100000004000022ac000003010000000c000022d00000030100000000000023600000030100000004000024d600003a01000000ca0000258200003a0100000068000026d8000003010000000c0000270200003a01000000600000274a00001101000000270000281400000301000000040000284a0000030100000000000028fe0000030100000bf20000299c0000030100000bf200002a3a0000030100000bf200002a5e0000030100000c0800002ade0000030100000bf200002b06000003010000000400002b1e000003010000000800002c1a0000030100000bee00002c200000030100000c0200002c420000030100000bce00002c620000030100000bce00002d360000030100000c0800002d400000030100000c0800002d4a0000030100000bce00002da200000301b9382e6000002dc600000301b9382d3400002df00000030100000c0800002ee60000030100000c2400002f4a0000030100000c2400002f560000030100000c2400000c0c0000030100000c4000000c100000030100000c8e00000c280000030100000c4000000c420000020100001f2c00000c460000020100001f2c00000c4a0000020100001f2c00000c5c0000020100001f2c00000c600000020100001f2c00000c640000020100001f2c00000c9000000201000029b800000ca600000201000029b800000cbc00000201000029b800000cd200000201000029b800000ce800000201000029b800000cfe00000201000029b800000000000011010000003a00000004000011010000003c00000008000011010000003f0000000c00001101000000410000001000001101000000440000001400001101000000460000001800001101000000480000001c000011010000004b00000020000011010000004d0000002400001101000000500000002800001101000000520000002c00001101000000550000003000000201000011a80000003400000201000010d8000000380000020100000d5a0000003c0000020100000d1c000000400000020100001008000000440000020100000f38000000480000020100000cd60000004c0000020100000e68000000500000020100000ccc000000540000020100000d98000000580000020100000cc20000005c0000020100000cde0000006000000201000021460000006400000201000020ec0000006800001101000000570000006c00001101000000620000007a000011010000006b0000007e000011010000006f0000008200001101000000730000008600001101000000770000008a000011010000007b0000009a00001101000000800000009e0000110100000085000000a2000011010000008a000000a6000011010000008f000000aa0000110100000094000000ae0000110100000099000000b2000011010000009e000000b600001101000000a3000000ba00001101000000a8000000be00001101000000ad000000c200001101000000b1000000c600001101000000b5002e73796d746162002e737472746162002e7368737472746162002e72656c612e74657874002e72656c612e64617461002e627373002e726f646174612e737472312e31002e72656c612e726f64617461000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000001000000060000000000000034000032c8000000000000000000000004000000000000001b000000040000004000000000000050340000069c0000000900000001000000040000000c0000002b000000010000000300000000000032fc00000d280000000000000000000000040000000000000026000000040000004000000000000056d0000000b40000000900000003000000040000000c000000310000000800000003000000000000402400000000000000000000000000000004000000000000003600000001000000320000000000004024000000b9000000000000000000000001000000010000004a000000010000000200000000000040de000000d50000000000000000000000020000000000000045000000040000004000000000000057840000021c0000000900000007000000040000000c00000001000000020000000000000000000041b4000008300000000a0000004f000000040000001000000009000000030000000000000000000049e40000064e0000000000000000000000010000000000000011000000030000000000000000000059a00000005200000000000000000000000100000000", - "sha256": "5b43ff757c7726bce8a182ad1b2e8a4d752ff4a2eb969c50f1b5335b6438d11a", + "bytes": 23500, + "code": "7f454c4601020100000000000000000000010004000000010000000000000000000059ec000000260034000000000028000c000b4fefffe048d73c3c4ab900000000670e202f0024b0b900000000670000da41f900000000226f002493c81031880010c0b1fc0000000066f24bf900000000428243f90000000049f90000000045f900000000223c00000000265d91c810338800670c158088005288ab43b68866eed1ca4218b28866fa201c26004243484378182a00e8ad2800e08c13400003ab4012851344000213430001b082656a203c00000000781826002a0042434843e8ad2800e08c1340003358891345002c1344002e52825c8a5c81700c1343002db082668877fc5555202f0024283c5555555523c400000000a3790000000023c30000000023c000000000203c000000004cd73c3c4fef00204e75203c00000000781826002a0042434843e8ad2800e08c1340003358891345002c1344002e52825c8a5c81700c1343002db0826600ff1e60924feffc38720f48d77cfc206f03d071902f40003eb2806406740f2f42003e7010206f03d077a800012f43003ab083640672102f41003a700b206f03d075a800022f42004ab0826406720b2f41004aa940206f03d075a800032f420042b0826404a96f0042206f03d0707e73a800042f410046b0816406727e2f410046707f206f03d075a800052f42004eb0826406727f2f41004e700c206f03d075a800062f420032b0826406720c2f4100327218206f03d01028000875a800072f4200361f40005fb282640674182f420036206f03d0226f0036282f03d41028000943e9fff42f4900524a0067107240b2846500042e7180b08465000408206f03cc47ef02c84def03c8116f03d701002f480060224b50c0421011400003114000021140000122d8bdc966ea2a2f003e720b243c9e3779b942862e3c7feb352de3ad45ef00c849ef01c8260a2c452a2f03dc2205b581200142404840b3804c0708007e0f2200eea9b380223c846ca68b4c0108002e0042474847b187a740c0867fc74a80677ade8e2887204320062228fffc4bef03c843f51c00bea9fe00640a2081538059884a8066e441f70c002a4606829e3779b9528d588c5883214600c8bbc4675e22052e3c7feb352db5812c0d200142404840b3804c0708007e0f2200eea9b380223c846ca68b4c0108002e0042474847b187a740c0867fc74a80668628874a866684428041f70c002a4606829e3779b9528d588c5883214600c8bbc466a2300dc0ef003c5080e888671671c043f20c00201a41f70c007001114002c8b5c966f0720c760c202f004a5e804c41000273fc00fe92af004e7ffc00fe226f0052780c700c90af004a2f42005ac2ef03da286f0052d0824c4300024c471001307c001893ef003291ef004a98af0036a340e5a81f410059d9ef003242af002e2c492f4d00522f46003a2f40004e2a6f002e52af002e4a1367000144223c85ebca6b42832c2f002e428543f90000000070f42e2f03dc4c016800246f00422f4b003675f1aa00327c0064bf867e0f0a86b5297a4d220642414841bd812c3c7feb352d4c0618002c01eeaebd812c3c846ca68b4c0618002c0142464846b3862f46003222007c0cd2884c4610070f02672ab08e6c0001542204d2804a816d00013cb3c16f00013e2600528022417c0c2200d2884c4610070f0266d65280720db28066c02c2f0032266f00364a8567162006e0884c45000143f71c00262900640683fffffff4700fc086b0af003e642c7030c0864a80660ac4af004e4a826600015e202f004a0806000667060680fffffff4b08e6d06b9c06d0226007018a7422206e0a9c7fc00054c421000068300000040174300015480c0ef0048e48817400002200dc0824a80670000d80286003000004a86670000cc102f005917400003588bbbef003a6600fea82a6f00524aaf03d4675c71af005f763fb680650000b02c2f03d42206246f03cc2806206f03d053844c4600021628000a71c6206f00602a0643f20c009282240d2c0152814c4560004a0367062c049c8020064c42000647ef03c845f36c0020eaff00b3c866da4cd77cfca3404fef03c84e754481b3c16e00fec652806000fe9cb08c6e1045f75c002640528547eb000c254b00642204d2804a816d18b3c16f00feb222412600720d5280b2806600fe6c6000fea8448160e4102f03db174000036000ff342c2f03d4703f206f03d02206246f03cc28064c4600021628000a71c6206f006053842a06928243f20c00240d6000ff4e202f005a6000fea2206f03cc280047ef02c84def03c8116f03d701002f480060224b6000fbf671807840b0846400fbd460d64fefffd448d74c044242203946c82456227c20300c0c2f4800102040d1fc0008ed8042001239100b14cf3f420028243c0b0b00012f420020a7421f40002a302f00322f490024c28275fc18b2c0fc001e4c021800d1c173b0083e53814a81670001f64def001793c922090681000001e9d280a542b489641e1cb0180052897209b289671e22090681000001e9528ed280a542b48965e245f1083f52891cf0a80060c6102f0017720fa942c2807180e88830401f410020b4806500017e3008122f001874101f400023701fc0813040b4806500013c3408102f0019ea891f420021a342c282740fc4801f41002a12022042740bb488650001027180e8881f410022720c3040b280650000d6122f001a340871811f420026747eb480650000b0102f001b1f4100244a006d00008c122f001c1f40002574187181b480656871af001d1f410027723fb2806546122f001ee188758120427440b4886528100147ef00203f400028206f0010200820d320ef002430ef00284cd74c0410af002a4fef002c4e75724047ef002010013f40002860d4122f001e703fe188758120427440b48864b860de721871af001d1f410027723fb280649660da707f122f001c74181f4000257181b4806400ff7460d8727e102f001b1f4100244a006c00ff5260d8307c000c122f001a340871811f420026747eb4806400ff2a60d4720b7180e88830401f410022720cb2806400ff0060d0307c0010102f0019ea8934081f420021a342c282740fc4801f41002a12022042740bb4886400fec460c0307c0004122f0018741030081f400023701fc0813040b4806400fe8260b847ef002093c9244b22090681000001e94df1083fd280a542b489651a528914f0e80022090681000001e94df1083fd280a542b48964e614b018005289ad41b2896700fecc528a60c0203946c824560680c00000002f020c8007efffff624a327c0022723ca742207946c82456d1fc0008ed801039100b14cfc08275fc18b24c020800a342d1c071b09800d1c1528906810000001eb480650871907453b480670e0c810000012c66bc241f42804e7571a800017432b48066e871a8000253804a80670a71a8000255804a8066d4241fa3404e754feffff42f0e2f0271b9100b14cc2c6f00242f0041ef000d4ebafcbe588fad40b08e675cab42200eb48e6402538071b7080920402f2f00302f2f003070fec0af003043f90000000073b1e8002f002001b1c164022008c0fc007f4c4100002f002f2f00302f2f00302f2f00304eb9400479b44fef001c241f2c5f4fef000c4e751039100b14cc227946c82456a7421239100b14cfd3fc0008ed807180c282c0fc001e204071fc18b241e801f14c001800d3c110318800727fc28020416000ff76518f2f02740b202f00182200206f00105c81226f00142f6f002000042f6f00240008b4816406241f508f4e752f6f000800242f6f000400202f41001c2f4000182f4900142f480010241f508f6000fef2598f2f02740b202f0014222f000c206f0010226f001c2f6f00200004b4806406241f588f4e752f6f000400202f49001c2f4000182f4000142f4800102f41000c241f588f6000feaa4fefffe448d7401c242f002441ef001171b9100b14cc2f004ebafb66588fad40b082676cab40b082653c71b728112202a3435581b6816500009255824a826700012aab434c43000141f900000000226f002020701c00101812c066fa4cd7401c4fef001c4e7571b72810780bb882660001124a80670000e6226f002041f900000000101812c067d4101812c066f460cc1039100b14cc227946c82456a7421239100b14cf77fc18b2d3fc0008ed80787f7180c282c0fc001e20404c03180041e801f1d3c110318800c0847663b68064587864760a2200a54e4c441001206f0020a74906810000003010c122004c43100124014c43200422040681000000301081206f0020d1ce740a4c42000142030681000000301081206f0020118398004cd7401c4fef001c4e75206f0020a34942817409b48064d02c49760a224122004c431001548924014c43200422040681000000301081206f0020d1ce60aa226f002041f9000000006000ff1a740c4c42000141f900000000226f002020701c006000fed6780ab88266144a806600ff3e226f002041f9000000006000fee851824a826600ff2822000681fffffff44a816d0e20017663b6806500ff186000ff6c206f0020740c94802002a54910fc002da3417409b4806400ff306000ff5c700a2f4000086000fe1c70082f4000086000fe12ad6f00086000fe0a71b9100b14cc4feffff441ef00012f004ebaf976588f4a2f000b671641f900000000226f0010101812c066fa4fef000c4e75226f001041f90000000060e84feffff42f0271b9100b14cc41ef0005ab422f004ebaf93471af000c588f41f9000000004c420001226f001420701c00101812c066fa241f4fef000c4e754feffff42f02740c71b9100b14cc41ef00052f004ebaf8f671af000b588f41f9000000004c420001226f001420701c00101812c066fa241f4fef000c4e754fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf8b471af0025588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf7e471af0023588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf71471af0022588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf64471af0021588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf57471af001e588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf4a471af001d588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d8148006090202f0004727f5280c0814e752f032f02206f0010a942226f000c102800037380b481640270041210e988760f7581b6826402720f808112801028000a6702700112280001eb8876107581b682640272108081740c13400001102800067380b4816402700c12280002e988760b7581b6826402720b8081747e13400002102800047380b4816402707e13400003102800056a02707f134000047618102800077380b6816402701813400005743f102800087380b4816402703f134000067640102800097380b68164027040727fc2af00141340000713410008241f261f4e754fefffd848d75c1c2f2f00342f2f003449ef00272f0c4ebaff16362f003a9dce4fef000cc6fc001e141ca540b08e64000086267c100b14cfa7441013227946c82456d3fc0008ed80121345ee01e9528ed5c3c084c28479fc18b24c0408004c0418002040d1fc100a4ece7009d3c11382a8001182a800b08e66ae1013227946c82456a7421213d3fc0008ed80c082c2824c0408004c04180078022040d1fc100a4eced3c11384383e1184383e4cd75c1c4fef00284e75267c100b14cfa7441013227946c82456d3fc0008ed80121345ee003f528ed5c3c084c28479fc18b24c0408004c0418002040d1fc100a4ece7009d3c11382a8001182a800b08e6600ff2a6000ff782f02720f206f0010a942226f00081010c08112807190e8881200b4806402720413410003721f741010280001c0811200b4806402721013410001a341740f71a80001ea88c0811340000a10280002c082740b1200b4806402720b13410002740c71a80002e8881200b4806402720c13410006747e102800037380b4816402707e13400004102800046a02707f134000057418102800057380b4816402701813400007743f102800067380b4816402703f134000087440102800077380b4816402704013400009727f10280008206f000c241fc28020814e75598f2f0a2f02202f0010222f0014206f00184a80672c4a81672845e8ffff743fb48a651e747fb4af001c65162f4800182f4100142f400010241f245f588f6000ebcc241f4280245f588f4e75222f00044a81675a71fc0919b0af000864502001204106800000004052884a28ffff663eb08866f42041200141e8004806800000005052884a28ffff6624b08866f4204106810000085941e80059719052880c80000000ff6608b28866f0a3404e7542804e754fefffd848d73cfc262f002c4a8367000168202f00300c80000009196300015a4aaf003467000152206f0034723f18280100200453807180b2806500013c4aaf003866122f2f00302f034ebaff4e508f4a806700011a7984246f00344281204a1010a3457580ba826500010eb284650001144a0066000102528158887040b08166de264322432843428547eb005943e9007949ec089aaf41c2852805e68caf48a34291c4d1c37190e2a0c0824a1267000132142a000116824a1267000120142a00021742000d4a126700010c142a00031742000fa342e3aa12104a12670000ee828210814a8066044a12673e420042143a7c000f42819284d2839bc4307c004f194000012002468091c41e353800ce801b8738002a411e2d001fce801b47001f12303800c08111803800204b4281101846804a0056c0710044808280b1c966ee307c001791c4d1c310104a1266784a816774848010825285588a47eb0020548c43e900207040b0856600ff2ca3404cd73cfc4fef00284e754cd73cfc42804fef00284e754a006700fef0102800017a787580598071805982ba8065dcab454c4528004a8066d275a800027a7eba8265be4a2800036db8528158887040b0816600fea06000febe4682c48060882e024687c2876000ff0e50c26000fef650c26000fee250c26000fed02f02202f000caf41206f0008b280651c73b00822a342b4816512721e74534c01080041f0083c7190b4806706241f42804e7571a800017232b28066f071a8000253804a80671410280002a541241fb3804a0057c0710044804e75241fa3404e754fefffc8203946c824560680c000000048d744040c8007efffff630c42804cd744044fef00384e75207946c82456a7411039100b14cf75fc18b22f2f003cd1fc0008ed80c0814c020800487008004ebaff50508f4a8067c61039100b14d0740f73802f410018b48165b2322f003e227946c82456488041f9000000002f49001c1439100b14cf246f001cc2fc091a1f4200272c413200c2fc8ed843f618004df298002f4900209dc81030e80010c0b1fc0000000066f24aaf0040670001f871fc8e55206f001cd1c14a3008006700020e1039000000007180743f22005381b4816500ff3a2f2f003c41ef00312f4000104ebaed48342f0042588f207946c82456d1fc0008ed801239100b14cfc4fc001e202f000c2242a742c28275fc18b243e901f14c021800747fd1c112309800c4812f4200284aaf0044670c2202747f5281c4812f420028342f003e207946c82456d1fc0008ed801239100b14cfc4fc00182242a742c28275fc18b243e901234c021800747fd1c173b09800b4816500fe9e2f2f00282f012f00486f00394879000000004ebae77e2f2f00544879000000004878091a4879000000004ebafc0c4fef00244a806700fe68226f001cb3f946c824566600fe5873b9100b14d0b2af00186600fe4a73af002775b9100b14cfb4816600fe3a226f002093fc0000000041f9000000002f49001845f0e800121875922f4a00102f4200147581b4af0014670e1481226f001845e8ffff13928800b1fc0000000066d22f2f0028486f00312f2f00442f4000184ebaf8f2a742122f00332c7946c82456ddfc000950484fef000cc28214163242a342e3aa204222022409828224081c811239100b145e828213c1100b145e207946c82456d1fc0009b332a350a379100f85984eb940027e004eb9400339d82f2f003c4eb94009da20588f4cd74404a37946c7c72c202f000c4fef00384e754878091a4879000000002f4100144ebafa8e508f222f000c4a806600fdee4cd744044fef00384e7571fc8e53103008006000fdf04e56ffe041eeffea2f0a2f0273b9100b14cc2f012d41ffe04ebaeb38322effe2588f207946c82456d1fc0008ed803d6efff2fffd1d6efff4ffff2d6effeefff92d6effeafff5c2fc001e1039100b14cf2241a74143e901f1c08173fc18b24c010800d1c012309800707fc280ab407581b0ae0008657a43eeffead3ee0008206e000c7391d1c14a886d000082246e0008203c0000000071b20800b1c06c022008b0816740128020022f00486effea2f2effe041faf78e2d48ffe44e9042a7a3672f2effe04ebafc524fef0018206effe44a806744a1674eb94004d948a37946c7c72c588f242effd8246effdc4e5e4e75ad40b0ae00086742222e0008206e000c43f618e97391d1c14a886c804a8167d442001280200260902f02486efff52f2effe04e904fef000ca1674eb94004d948a37946c7c72c588f60aa202e000cd0824a806d3c727fb2806c02707fb08267942f00486effea2f2effe041faf6e62d48ffe44e9042a7a3672f2effe04ebafbaa4fef0018206effe44a806600ff5860984a016700ff6042802f00486effea2f2effe041faf6ae2d48ffe44e9042a7a3672f2effe04ebafb724fef0018206effe44a806600ff206000ff60203946c824560680c00000002f020c8007efffff62084a398000001567064280241f4e751239100b14cc207946c82456a7421039100b14cfd1fc0008ed807381c0822f0173fc18b24c010800487008004ebafaac508f4a8067c42039000000004a8066ba4a3946c7d8d866b44ab9460d173a66ac4ab9460d169457c0241f710044804e754fefff78428148d75cfc242f008c284245ef00289dce28024283264a06840000003c49ec002271b41800a346bc80650c41f648007e537190be80674252814dee001e47eb000cbdfc000000f066d82f02206f009442854e90588f91c80b0366000086528541e8001e45ea000cb1fc000000f066e84cd75cfc4fef00884e7571a800017c32bc8066b471a8000253804a80670a71a8000255804a8066a0a340e3a891c8868043f6883cab47be88642c2c08ad474c47600043f60800700c43e901ecd3c21791880042115288b0886700ff6e43f6883cab47be8865d4d3c2179188004211528860be428147f02800ab44b881651449f21800ab442242d3c11194983c5281b88164ec2c01ad474c47600449f21800528143f34800780c135401ecb88166ca528541e8001e45ea000cb1fc000000f06600ff286000ff3c487a13ee2f2f00084ebafebc508f4e75203946c824560680c00000002f020c8007efffff62084a39800000156706241f42804e751239100b14cc207946c82456a7421039100b14cfd1fc0008ed807381c0822f0173fc18b24c010800487008004ebaf8de508f241f4e75203900000000b0b946c82456670442804e751039100b14cfa741c081b0b90000000066ea71b9100b14ccb0b90000000066dc6000ff724fefffec70312f0a2f02226f0020a342206f0024b08956c173014481b4886700008ea340e3a82439000000002f420014c4804a82665e4a886632a340244174fd45f21a00d08a45f90000000020320c0022005381b48165322f4900202f480024241f2240245f4fef00144ed12441a54045f21a0074fdd08a45f90000000020320c0022005381b48164ce241f245f4fef00144e754a8866f24680c0af0014241f245f23c0000000004fef00144e752f4100102f4800082f49000c4ebafeb4222f0010206f0008226f000c4a806700008a103946100b1d08000005667c703eb089677c7431b48966702f4100102f4800082f49000c4ebafcac222f0010206f0008226f000c4a806750a34081b9000000001039100b14cca367a36771802f004ebaf7e04fef000c4a80677048780020203c000000002f004eb94005a2b8a1674eb94004d948a37946c7c72c4fef000c241f245f4fef00144e7542806000fee04a3946c7d8d866f24ab90000000057c0a54183b900000000a1677100448023c0000000004eb94004d948588f241fa37946c7c72c245f4fef00144e7548780020203c000000002f004eb94005a2b8a1674eb94004d948a37946c7c72c4fef000c608e203900000000b0b946c8245667024e751039100b14cfa741c081b0b90000000066ec71b9100b14ccb0b90000000066de4ebafd7e4a8067d6a37900000000a379000000004eba10cca1674eb94004d948a37946c7c72c588f4e75203900000000b0b946c8245667024e751039100b14cfa741c081b0b90000000066ec71b9100b14ccb0b90000000066de4ebafd244a8067d642b900000000a379000000004eba1072a1674eb94004d948a37946c7c72c588f4e75203946c824560680c00000002f020c8007efffff6232203946c82456a7421239100b14cf06800008ed80206f000c41e8ffdec28275fc18b24c021800af42d08122089280b4816408202f0008241f4e75a342b4af000865f02f012f004ebaf5ce508f4a8067e2ab6f0008202f0008241f4e752f032f024ab90000000067084ebafcd64a806672203946c824560680c00000000c8007efffff6236223946c82456a7431039100b14cf06810008ed803040202f00100680ffffffde2408c48377fc18b24c032800d2829081af42b480640a202f000c241f261f4e75a343b6af000c65ee2f002f014ebaf544508f4a8067e0241fab40261f4e75203946c82456a7421239100b14cf77fc18b220790000000006800008ed8041e80022c2824c031800d081d088b0af00106600ff5c241f203900000000261f4e754fefffc4203946c824560680c000000048d74c0c0c8007efffff62000166af40b0af00446500015c223946c82456206f004091c12c48ddfcfff712802f41002473fc18b2200e4c41000220424a8266000132bdfc000062c762000128222f0044a342246f004043f218227391b48164000178a36f0020222f0044701e4c0018004aaf004866624ab900000000670001062f4100142f4800184ebafb84222f0014206f00184a80670000ec203946c8245606800008ed801439100b14cf3242a7422609c68275fc18b24c023800d083b0af0040660000c0262f0044b6b900000000660000b2a56f00482f2f00442f2f00442f41001c2f4800204ebaf3fa508f222f0014206f00184a80670000e8226f0040203c1001614e90af002441f1183c43f118422209227c100162fe93ef00241190080045e801b0139288005288b28866eea340b0af0048662c73fc18b2200e207c46c8245623d000000000a379000000004c410000222f004423c10000000023c0000000004cd74c0c202f00204fef003c4e754cd74c0ca36f0020202f00204fef003c4e752f2f00442f2f00442f41001c4ebaf352508f222f00144a806700ff5e4203206f0040203c1001614e226f004090af00241183183e1183183d1183183c41f1183c43f118422209227c100162fe93ef00246000ff4877912f4300206000fe86226f0044743248690001487900000000200f06800000003b2f002f4000282f410020246f004c2f48002445f2183c2f4a00344ebaed8614bc0053226f004c222f0020244145ea003f1382183d74021382183e224143e901e9202f00284fef000c2f490028206f00182f4a002c226f0028a542d3c8b488641826405288246f0040740915939800b4886700fe90528060dc246f00402640226f002cd3c85288159b9800200b60c6518f2039460e5e302f0b2f0a4a80671047f900000000b7f9460e5e2c670a4280245f265f508f4e75204041e800242f48000c2f082f40000c4eb94003567c226f000c588f4280246900282f1ba16745eaffe92f0aab672f2f001c2f3c400ba8762f4000204eb940012bd84fef0018202f0008b0b9460e5e4067165f8aa341b2806640245fa37946c7c72c265f508f4e75226f000c2051a167486a00054868fffb486affffa7672f092f4000204eb9400122544fef00185f8aa341202f0008b28067c02f1ba1672f0aab67a3402f2f001c2f3c400ba8762f4000204eb940012bd84fef0018202f0008b0b9460e5e40668a609e4ebaf8384a80670001004ab9460e5e30660000f64ab9460e70e0660000ec207c46c82456a74123d0000000001039100b14cfc28023c10000000071b9100b14cca567ad672f3c460e5e3823c00000000042b90000000042b9000000004eb94007ec604fef000c207946c82456a7411039100b14cf227900000000d1fc0008ed80c08173fc18b24c010800d1c071b098222f002f3c460e5e384eb94007edb041f90000000023c8460e5e28203c0000000023c0460e5e2c42b9460e5e342f3c4006d754a36742a7a167487800404878006e4eb94005829c4fef002023c0460e5e304a80672442a74879000000002f004eb9400570b82f3c400ce0c44eb9400314944fef00106000fe084e754ab9460e5e30670e203c00000000b0b9460e5e2c67024e754eb94006d75442b9000000004eba0a6c4ef94007893c598f4ab9460e5e30670e203c00000000b0b9460e5e2c6704588f4e754ebaf73e4a8067f42239460e5e40a340b08165e82e814eb94006d7544ebaf7224a8067d823d700000000a379000000004eba0a16a1674eb94004d948a37946c7c72c588f588f4e754feffff4222f0010206f00144ab9460e70e0677e4ab90000000066122f4800142f4100104fef000c4ef94007893c2f4100042e884ebaf6c2222f000420574a8067da4ab9460e70e067d22039000000002f4000084eb9400789e442b9000000004ebafe024ab9460e5e306726203c00000000b0b9460e5e2c66182f2f00082f3c460e5e384eb94007edb04fef00146000fce24fef000c4e75518f222f000c206f00104ab9460e70e067124ab9460e739a660aab40b0b9460e738e67102f4800102f41000c508f4ef94007909c2f4100042e884ebaf5ca222f000420574a8067dc4eb9400789e4508f6000fd7a598f4eb940031f282e804ebaf5a64a80672c4ab90000000066244a3946c7d8d8661c4ab9460d173a66144ab9460d1694660c2f174ebad6e02f400004588f2017588f4e75598f2f02203946c824560680c0000000222f000c0c8007efffff62084a39800000156708241f2001588f4e751039100b14cc207946c82456d1fc0008ed8075801039100b14cf2242a7422f09c08275fc18b24c020800487008002f41000c4ebaee3e508f222f00044a8067b84ab90000000066b02f41000c241f588f6000d6544feffff4ab402f02222f0014206f0018b0816408241f4fef000c4e75203946c824560680c00000000c8007efffff62e44a398000001566dc1439100b14cc227946c82456d3fc0008ed801039100b14cf75822f42000ca742c08275fc18b22f2f000c4c020800487108002f4100102f48000c4ebaedaa508f222f00084a8067944ab900000000668c4a3946c7d8d866844ab9460d173a6600ff7c4ab9460d16946600ff724ab9000000006600ff682f6f000400182f410014241f4fef000c6000f0a62f02ab40b0af00086406241f42804e75203946c824560680c00000000c8007efffff62e64a398000001566de1239100b14cc207946c82456a7421039100b14cfd1fc0008ed807381c0822f0173fc18b24c010800487008004ebaed02508f4a8067a84ab90000000066a02f2f000c206f000c486800064ebaf02c508f241fa3404e754fefffd448d75c0c4ab90000000067104ab9460e70e0660003b242b9000000004ab900000000660002fa2479800065b8a340b08a6700031c47faddd823ca00000000203946c824560680c00000000c8007efffff620000b0387c003e9dce45faec7a207946c82456a7431039100b14cf73fc18b22f0ed1fc0008ed80c0834c010800487008004e92508f4a80672a207946c82456d1fc0008ed801039100b14cf75fc18b2c083a3434c020800d1c071b0c800b680670000ba528e49ec001e7008b08e669e73b9100b14ccaf42b481650002ce207946c82456a7431039100b14cf75fc18b2d1fc0008ed80c0834c020800d1c04a301822660002a6203c400d301c23c0400d5f4c4e93247946c8245673b9100b14cf77b9100b14cc2c402679000000002039000000002843b5f900000000670000e84a8b67204a8067000272203c000000004ab900000000670002c64cd75c0c4fef002c4e754a8067000252203c000000004ab90000000066e2600002a42f0e41ef0025a7422f4000204ebad9f677fc18b2207946c82456d1fc0008ed801239100b14cf43ec01b349ec001ec282747f4c031800d1c112309800c4812e82486f00252f0e4ebae6ac4fef000c1639100b14cf202f001c227946c82456d3fc0009504812113043a7432408c483e5a8828012811239100b145e808113c0100b145e207946c82456d1fc0009b332a350a379100f85984eb940027e00528e7008b08e6600fe4e6000feacb2b9000000006600ff12b6b9000000006600ff084a8b670002144a80674841f9000000004a8e670a4ab900000000670002184ab9000000006600fefa2f082f41001c4eb94003146c42b90000000023ca0000000023cc00000000222f001c588f23c1000000002079460d165c4a8e6700fec44a886700febe4a906600feb8223c00000000207c46c7dd7643f90000000020100c80000000006704238088005888b1fc46c7dd8266e8207c46c7deae43f9000000002010b0816704238088005888b1fc46c7deba66ec4ebaeef823c0000000004a80670000f841f90000000042902f084eb940031494a167a379000000004eb94004d948a37946c7c72c508f4cd75c0c4fef002c4e754ebaf0e04a80670000b44ab9460e5e306600fcf64ab9460e70e06600fcec4ebaf82e2479800065b8a340b08a6600fce8a34147fadabcb2b9000000006700fcdc4e934a806700fcd499cc4dfae9cc42a7740842a72f0c4e96528c4fef000cb48c6700fcb842a7740842a72f0c4e96528c4fef000cb48c66d66000fca0203c400d31ae23c0400d5f4c6000fd5a42b90000000023ca0000000023c10000000023cc000000006000feb84ebaf0384a806600fc4e42b9000000006000fc4442b9000000006000fc4441f90000000042902f084eb940031494a167a379000000004eb94004d948a37946c7c72c508f6000ff082f002f41001c4eb94003146c42b90000000042b90000000023ca00000000222f001c588f23cc0000000023c1000000006000fe3c4a806700fe3641f9000000004a8e6700fdf64ab9000000006600fdec2f4100182f48001c4ebaed70222f0018206f001cb08b6600fdd223ca000000004cd75c0c4fef002c4e75202f00040c800000000567044efa02fe41fa023020084e75400b3eac400b3e98400b7c67400b5413400b7a63000000004fefffec48ef030200082e802f4800044ebaf1e04cef030200084fef00144e754fefffe048ef0307000c2409d48006820008ed802e822f41000474000c8400000005660274012f4200084ebaf2de0c8400000005660228004cef0307000c4fef00204efa028448794005a61c600648794005a8562239460d5c304fefffe048ef030d000c2609d68006830008ed802e832f42000476000c8100000005660276012f43000826014ebaf2820c83000000056702200322004cef030d000c4fef00204e7516102f0071036100ff362600201f79034879400bb7044ef9400585e67110610000582f004879460e73864ef940078890610000124ef94003d722610000084ef94004c3746100fef841fafedc22300c004e7571104fef00186100fee44ef94003c986711061000012b48066064ef9400786ce4ef9400786fc4fefffec48ef030200082e802f4800044ebaf1184cef030200084fef00144e752f082f01207946c8245673b9100b14cfc2fc18b2d1c173b9100b14ccd1fc0008eda271b01800221f205f4e750c820000000566344fefffe448ef0303000c2e8b2f4300044ebaf9222f4000084cef0303000c4aaf00084fef001c67064ef94003a6246100ff9c24004efa01300c8600000005662a4fefffec48ef030300042eaf005c4ebaf7a22f40005c4cef030300044fef00142f006100ff682c00201f4efa01084eb94005213c4eb94007e9404ebaf93a4ef940052228564543544f5200004878ffff4878ffff4ebaf7184ef94004e4d04feffff048d703034ebaecb84a80670c4cd703034fef00104efaf46e4cd703034fef00102f0a4ab9460e70e04ef9400791ec4feffff048d703034ebaf35a4a80670a4cd703034fef00104e754cd703034fef00104fefffe848d73c0c4ef94006d78c7c010c800000000566224feffff048d703034ebaec4c4a80670a4cd703034fef0010600c4cd703034fef0010bc8065064ef940077b624ef940077b704efaec124fefffa048d77cfc4ef9400023200000000000004ef9400334de0000000000004ef94007982200000000000000004ef94003a53600000000000000004ef94003cda0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffff0000000000000000000000000000000000000000ffffffffffffffff31000000000000000000000000000000000000000000000000003e00000000000000000000000000000000000000000000000000ff00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000002000000000000000000000000000000000000000000030000000000000000000000000000000000000000000400000000000000000000000000000000000000000005000000000000000000000000000000000000000000ff000000000000000000000000000000000000000000465744004f46460052455600564543544f522047454e455241544544004e4f204348414e474500ab204d414348494e453a564543544f5220bb004300432300440044230045004600462300470047230041004123004200303031205354415449430030303220464c455800434852004d494e004d414a00444f520050454e5400545950450044454e5300524f4f54005343414c00474154450041434e540053454544005350414e004f46535400524f5400525054004449520000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000fff05ad0ab506ad04a900000000000000000000000000000000000000000f100b047e7f7f0c183f40010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b0b000120300c0c00000000000000000000000000000000000000000000000100000000000000000400fff10000000000000000000000000300000100000000000000000000000003000003000000000000000000000000030000050000000a000000000000013e02000001000000190000001c00000004010000030000002800000018000000040100000300000038000000200000019201000003000000410000003000000030010000070000004b00000a9e00000048020000010000005c00000a4e00000050020000010000006d0000013e000005280200000100000084000000700000000a010000070000013d000006660000029e020000010000008b000009040000008a02000001000000960000098e000000c00200000100000000000000000000000003000006000000b300000ae6000001dc02000001000000c2000000000000003001000007000000ca00000cc20000000a02000001000000d400000ccc0000000a02000001000000dd00000cd60000000802000001000000e600000cde0000003e02000001000000f000000d1c0000003e02000001000000f900000d5a0000003e020000010000010200000d98000000d0020000010000010b00000e68000000d0020000010000011400000f38000000d0020000010000011d00001008000000d00200000100000126000010d8000000d0020000010000012f000011a8000000d00200000100000138000013560000010402000001000001460000182c000002e80200000100000155000002b30000091a01000003000003e2000001b200000101010000030000015d00001b14000001ba020000010000016c00001cce00000084020000010000017b00000bf200000004010000030000018500001ef60000003602000001000001920000001400000004010000030000019c000000100000000401000003000001a60000000c0000000401000003000001b100000bce0000000401000003000001b600000bd60000001801000003000001bc000020ec0000005a02000001000001c6000000000000000401000003000001d2000000040000000401000003000001de000021460000005a02000001000001ea000000080000000401000003000001f7000000680000000801000007000002030000006000000008010000070000020e00000bd200000004010000030000021d00000bee00000004010000030000022700000c0200000004010000030000022e00000bfe00000004010000030000023900000bfa00000004010000030000024400000bf60000000401000003000000000000000000000000030000070000025046c82456000000000000fff1000002590008ed80000000000000fff1000002620000328a000000000000000100000271000031c000000000000000010000027900002fae00000000000000010000028500003296000000000000000100000294000030220000000000000001000002a2000030e80000000000000001000002b6000030b40000000000000001000002c3000031080000000000000001000002d0000032a20000000000000001000002df000032b00000000000000001000002ee00000c400000000000000003000002f600000c8e0000000000000003000002fe000031f600000000000000010000030a0000322600000000000000010000031600003268000000000000000100000323000032600000000000000001000003330000326c00000000000000010000033f0000327200000000000000010000034c0000009a0000003011000007000003610000008e0000000c11000007000003740000007a000000141100000700000387000012780000000c120000010000039800001284000000d212000001000003a40000145a000000d812000001000003b2000015320000004c12000001000003c20000157e0000006612000001000003d5000015e4000001e812000001000003e9000017cc0000006012000001000003fd00001d520000013a120000010000041200001e8c0000001012000001000004230000327c00000000100000010000043500001e9c0000005a120000010000044100001f2c000001c01200000100000448000031fe00000000100000010000045b000021a000000072120000010000046300002212000000c61200000100000473000022d800000298120000010000047d000000ca0000000b110000070000048d00002570000000f212000001000004a1000026620000010a12000001000004b50000276c0000002e12000001000004c90000279a0000006412000001000004de000027fe0000009812000001000004eb000028960000005412000001000004f9000028ea0000004412000001000005060000292e000000801200000100000514000029ae000000c2120000010000051c00000c0800000000100000030000052500002a7000000082120000010000053300002af20000048c120000010000053e00000c2400000000100000030000054c00002f7e00000000100000010000055c00002f9600000000100000010000056900002fce000000001000000100000578000030140000000010000001000005860000301c000000001000000100000595000030a000000000100000010000059f000030aa0000000010000001000005a9000030700000000010000001000005b70000308c0000000010000001000005c7000030c20000000010000001000005d4000030d20000000010000001000005e3000031340000000010000001000005f200003174000000001000000100000601000031aa00000000100000010000060e000031c800000000100000010000061a000031da0000000010000001000006270000320c0000000010000001000006340000323c00000000100000010000064200003278000000001000000100766563746f722e630067656e657261746f725f70616765007372635f706167655f7265616479007372635f706167655f736f75726365007372635f7061676500666f726d6174732e320067656e657261746f725f776964676574007365636f6e646172795f77696467657400766563746f725f67656e65726174652e706172742e30007363616c657300616e795f766563746f7200647261775f67656e657261746f725f7769646765742e706172742e3000666f726d61745f636f6e74726f6c00726f6f74732e3100666f726d61745f313000666f726d61745f3800666f726d61745f3600666f726d61745f313100666f726d61745f3300666f726d61745f3200666f726d61745f3900666f726d61745f3700666f726d61745f3500666f726d61745f3400666f726d61745f3100666f726d61745f3000736176655f73657474696e67730067656e65726174655f747261636b0073746167696e67006368616e67655f636f6e74726f6c0067656e657261746f725f7669657700656469745f7669657700706f6f6c5f636f6e7465787400706f6f6c5f62616e6b00706f6f6c5f7061727400706f6f6c5f747261636b006d696e6500736176656400706f6f6c5f666c657800706f6f6c5f62726f77736500706f6f6c5f64697265637400706f6f6c5f73746174696300706f6f6c5f70656e64696e6700706f6f6c5f6c6162656c730068616e646c6572732e33006c6173745f7472616e73706f7274006c617965725f67656e006163746976650073686f776e5f62616e6b0073686f776e5f706172740073686f776e5f747261636b0042414e4b5f50545200504152545f4f46460073745f6e616d655f7265706c61790073745f6e616d650073745f726f775f747970650073745f6d61696e5f7265706c61790073745f7372635f636f6d6d6f6e0073745f63686f6f7365725f726f775f747970650073745f6e616d655f7069636b0073745f706f6f6c5f6b696e640073745f656469745f7265706c61790073745f647261775f7265706c61790073745f6b6579730073745f656e6373002e706f6f6c5f73746f636b002e6c6973745f73746f636b002e7469746c655f73746f636b002e7469746c655f756e7369676e6564002e7469746c655f706f6f6c002e7469746c655f706c61696e00766563746f725f636f6e74726f6c5f6e616d657300766563746f725f636f6e74726f6c5f6d617800766563746f725f7363616c655f6e616d657300766563746f725f6e6578745f7365656400766563746f725f7061636b00766563746f725f756e7061636b00766563746f725f67656e657261746500766563746f725f747261636b5f656d70747900766563746f725f77726974655f70687261736500766563746f725f7369676e65645f747261636b00766563746f725f76616c69646174655f706172740073745f76616c69646174655f706172740073745f73746f636b5f76616c69646174650073745f73656c65637465640073745f6b65790073745f73746f636b5f706f6f6c5f6f70656e0073745f747970650073745f63686f6f7365725f747970650073745f61737369676e00766563746f725f64656661756c74730073745f706f6f6c5f63686f6963655f647261770073745f706f6f6c5f63686f6963655f6f70656e0073745f706f6f6c5f63686f6963655f6c6566740073745f706f6f6c5f63686f6963655f72696768740073745f706f6f6c5f6c6566740073745f706f6f6c5f72696768740073745f647261775f706167650073745f73657475705f706167650073745f6b6e6f620073745f6c617965720073745f73657475705f6b6e6f620073745f75695f7469636b0073745f656469745f6c617965720073745f6d616368696e655f6e616d650073745f7372635f6e616d65730073745f6d61696e5f636f6d6d69740073745f7372635f636f6d6d69740073745f7372635f636f6d6d6974320073745f6e616d655f610073745f6e616d655f620073745f73657475705f6f70656e0073745f63686f6f7365725f6f70656e0073745f73657475705f726f770073745f63686f6f7365725f726f770073745f73657475705f65646974360073745f73657475705f64726177360073745f7469636b5f686f6f6b0073745f7372635f647261770073745f706f6f6c5f6f70656e0073745f6c6973745f647261770073745f706f6f6c5f7469746c650073745f76616c69646174650000000000001600000301000000180000003200000301000001b200000054000003010000003c0000009e0000020100000a9e000000e000000301000001ae000000e6000003010000001c000000ec00000301000001aa000000f20000030100000018000000f80000030100000020000001080000020100000a4e000018dc0000030100000bcd00001a1600000301effea16600001a4c0000030100000bcd00001ba600003a010000008e00001f14000003010000001000001f22000003010000000c00001fd00000030100000bce000020380000030100000bce0000205c000011010000000c0000209e0000030100000bce000020aa0000030100000bf2000020cc000011010000001d00002108000003010000001000002116000003010000000c0000212600000301000000000000212c000003010000000400002162000003010000001000002170000003010000000c000021800000030100000000000021860000030100000004000023b4000003010000000c0000242e000003010000001400002434000003010000000800002442000003010000000c0000244800000301000000100000268a0000030100000014000026980000030100000010000026ae000003010000000c000026b40000030100000004000026ba00000301000000080000270e00003a01000000680000277600003a01000000680000278c0000030100000004000027a600003a0100000068000027dc0000030100000000000027e200000301000000040000285a00000301000000040000286c00003a010000006800002b0e000003010000000400002b300000030100000bd200002c1e0000030100000bfe00002c320000030100000c0800002c520000030100000c2400002d0e0000030100000bfa00002d180000030100000bf600002d560000030100000c0200002d5c0000030100000bfe00002d620000030100000bf600002d6e0000030100000bfa00002d8c0000020100001f2c00002da00000020100001f2c00002dda0000030100000bee00002df80000030100000c0200002e4c0000030100000bd200002ea20000030100000bf200002ea80000030100000bfe00002eae0000030100000bfa00002eb40000030100000bf600002ec8000003010000000400002ed2000003010000000800002eee0000030100000c0200002f120000030100000c0200002f180000030100000bf200002f1e0000030100000bfe00002f2a0000030100000bf600002f300000030100000bfa00002f700000030100000bfe00002faa00000201000031c00000000a000003010000001c0000002000000301000000200000003a00003a010000009a0000004200000301000000ea0000004800003a01000000300000004e00000301000000360000040400003a0100000070000009d200003a010000008e00000b3000003a010000007a00000b64000011010000000800000c48000011010000000000000c5800003a010000000000000c7a000011010000000400000cfc000011010000000800000d16000011010000000000000d3c00003a010000007a00000d7a00003a0100000000000018a400000301000002b3000018fe0000030100000303000019ba00000301000001b2000019c800000301000001b2000019d200000301000002b300001a1c00000301000002b300001ae600000301000002b300001d2a0000030100000bf200001ef8000003010000001400001f540000030100000bce00001f740000030100000bd600001fa60000030100000bd6000020940000030100000bf2000020ee0000030100000014000021480000030100000014000022180000030100000004000022ac000003010000000c000022d00000030100000000000023600000030100000004000024d600003a01000000ca0000258200003a0100000068000026d8000003010000000c0000270200003a01000000600000274a00001101000000270000281400000301000000040000284a0000030100000000000028fe0000030100000bf20000299c0000030100000bf200002a300000030100000bf200002a540000030100000c0800002ad40000030100000bf200002afc000003010000000400002b14000003010000000800002c100000030100000bee00002c160000030100000c0200002c380000030100000bce00002c580000030100000bce00002d2c0000030100000c0800002d360000030100000c0800002d400000030100000bce00002d9800000301b9382e6000002dbc00000301b9382d3400002de60000030100000c0800002edc0000030100000c2400002f400000030100000c2400002f4c0000030100000c2400000c0c0000030100000c4000000c100000030100000c8e00000c280000030100000c4000000c420000020100001f2c00000c460000020100001f2c00000c4a0000020100001f2c00000c5c0000020100001f2c00000c600000020100001f2c00000c640000020100001f2c00000c9000000201000029ae00000ca600000201000029ae00000cbc00000201000029ae00000cd200000201000029ae00000ce800000201000029ae00000cfe00000201000029ae00000000000011010000003a00000004000011010000003c00000008000011010000003f0000000c00001101000000410000001000001101000000440000001400001101000000460000001800001101000000480000001c000011010000004b00000020000011010000004d0000002400001101000000500000002800001101000000520000002c00001101000000550000003000000201000011a80000003400000201000010d8000000380000020100000d5a0000003c0000020100000d1c000000400000020100001008000000440000020100000f38000000480000020100000cd60000004c0000020100000e68000000500000020100000ccc000000540000020100000d98000000580000020100000cc20000005c0000020100000cde0000006000000201000021460000006400000201000020ec0000006800001101000000570000006c00001101000000620000007a000011010000006b0000007e000011010000006f0000008200001101000000730000008600001101000000770000008a000011010000007b0000009a00001101000000800000009e0000110100000085000000a2000011010000008a000000a6000011010000008f000000aa0000110100000094000000ae0000110100000099000000b2000011010000009e000000b600001101000000a3000000ba00001101000000a8000000be00001101000000ad000000c200001101000000b1000000c600001101000000b5002e73796d746162002e737472746162002e7368737472746162002e72656c612e74657874002e72656c612e64617461002e627373002e726f646174612e737472312e31002e72656c612e726f64617461000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000001000000060000000000000034000032be000000000000000000000004000000000000001b0000000400000040000000000000502c0000069c0000000900000001000000040000000c0000002b000000010000000300000000000032f400000d280000000000000000000000040000000000000026000000040000004000000000000056c8000000b40000000900000003000000040000000c000000310000000800000003000000000000401c0000000000000000000000000000000400000000000000360000000100000032000000000000401c000000b9000000000000000000000001000000010000004a000000010000000200000000000040d6000000d500000000000000000000000200000000000000450000000400000040000000000000577c0000021c0000000900000007000000040000000c00000001000000020000000000000000000041ac000008300000000a0000004f000000040000001000000009000000030000000000000000000049dc0000064e0000000000000000000000010000000000000011000000030000000000000000000059980000005200000000000000000000000100000000", + "sha256": "f9e594a057e3729261497e49daf9b59a3fbb72fe34f1c52cb67abc5883c02890", "stockCopies": [ { "section": 1, - "offset": 12948, + "offset": 12938, "source": 1073951960, "bytes": 6, "sha256": "d6c9f1f60272197a17511f496fc19dd21ddd7df5f1f1ec0cab7a16cad60b0609" }, { "section": 1, - "offset": 12960, + "offset": 12950, "source": 1074239516, "bytes": 6, "sha256": "89c50ac3ca041fdf5647ec5ee2c3580f9a67dd79f0b5cc15ceadda4b9e9bede0" }, { "section": 1, - "offset": 12972, + "offset": 12962, "source": 1073980718, "bytes": 8, "sha256": "cae34bf50383462ed4f92d8044e3021247edb8bf69c17a9c7ead62f6edf79510" }, { "section": 1, - "offset": 12986, + "offset": 12976, "source": 1073991064, "bytes": 8, "sha256": "ed71ef874312890edc87cef7e19cd8c0f8ac4ac9b90182c2364f78d3a4567f45" diff --git a/src/engine/assets/resident-dsp.json b/src/engine/assets/resident-dsp.json index 9e04881d6..214434e84 100644 --- a/src/engine/assets/resident-dsp.json +++ b/src/engine/assets/resident-dsp.json @@ -335,7 +335,7 @@ ] } ], - "sourceCommit": "be64a4ed8ce2fcce671c6e019ea29c250c12defe", + "sourceCommit": "76032d41c4617dcc804726c36f006e5ce078335b", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -358,7 +358,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.2.0-experimental", - "vector": "0.2.5-experimental", + "vector": "0.2.6-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.2-experimental", "recorder-loop-fix": "0.1.0-experimental", diff --git a/src/engine/assets/rom-packages.json b/src/engine/assets/rom-packages.json index 4674f76e3..947ab1d18 100644 --- a/src/engine/assets/rom-packages.json +++ b/src/engine/assets/rom-packages.json @@ -494,7 +494,7 @@ "sha256": "fdba0ffd31b7932ceb1ded3bde9a976b6f148ae96fc73a4efc4fedf6fb692341" } ], - "sourceCommit": "be64a4ed8ce2fcce671c6e019ea29c250c12defe", + "sourceCommit": "76032d41c4617dcc804726c36f006e5ce078335b", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -517,7 +517,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.2.0-experimental", - "vector": "0.2.5-experimental", + "vector": "0.2.6-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.2-experimental", "recorder-loop-fix": "0.1.0-experimental", diff --git a/src/engine/assets/usb-audio-packages.json b/src/engine/assets/usb-audio-packages.json index 110cf61e2..9a5a002c8 100644 --- a/src/engine/assets/usb-audio-packages.json +++ b/src/engine/assets/usb-audio-packages.json @@ -553,7 +553,7 @@ } ] }, - "sourceCommit": "be64a4ed8ce2fcce671c6e019ea29c250c12defe", + "sourceCommit": "76032d41c4617dcc804726c36f006e5ce078335b", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -576,7 +576,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.2.0-experimental", - "vector": "0.2.5-experimental", + "vector": "0.2.6-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.2-experimental", "recorder-loop-fix": "0.1.0-experimental", diff --git a/src/engine/assets/utility-packages.json b/src/engine/assets/utility-packages.json index ad8f9ff55..5ab84fcdc 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": "be64a4ed8ce2fcce671c6e019ea29c250c12defe", + "sourceCommit": "76032d41c4617dcc804726c36f006e5ce078335b", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -26,7 +26,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.2.0-experimental", - "vector": "0.2.5-experimental", + "vector": "0.2.6-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.2-experimental", "recorder-loop-fix": "0.1.0-experimental", From dbe9728083ceb5f30cb7dd265fb4380d7ed0c1fe Mon Sep 17 00:00:00 2001 From: repeat98 Date: Fri, 6 Nov 2026 12:35:10 +0100 Subject: [PATCH 17/33] VECTOR 0.2.6: bind the card captures to 0.2.4's native source by name (owner accepted 0.2.4's card evidence, 6 Nov 2026) 0.2.6 changes only st_setup_page's row-5 test in control.s and native.c; the test now requires exactly those two capture inputs to differ and the manifest's qualification to name the current source. Co-Authored-By: Claude Opus 5.5 --- src/catalog/vector.test.ts | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/catalog/vector.test.ts b/src/catalog/vector.test.ts index 810d68c4b..b2bfaf038 100644 --- a/src/catalog/vector.test.ts +++ b/src/catalog/vector.test.ts @@ -18,6 +18,10 @@ const folder = resolve('sdk/octabam/modules/vector') // 0.2.5 changes only the USB package: its card source (the native source SHA-256 below) and card build are 0.2.4's, so // 0.2.4's emulator and behaviour records stand for its card build; the UI captures are labelled 0.2.5 for publication. const CARD_EVIDENCE = '0.2.4-experimental' +// The owner accepted 0.2.4's card evidence for 0.2.6 (6 Nov 2026): 0.2.6 only drops st_setup_page's row-5 test (#1119), in +// control.s and native.c, so the captures stay bound to 0.2.4's native source by name. +const CARD_EVIDENCE_SOURCE = '1255e99133cbd8d6d2587c95f93462ea80fccbd169462a2acb02aedbd346cbd3' +const CHANGED_SINCE_CARD_EVIDENCE = ['native.c', 'control.s'] const sha = (bytes: Buffer) => createHash('sha256').update(bytes).digest('hex') describe('VECTOR release', () => { @@ -48,7 +52,8 @@ describe('VECTOR release', () => { it('binds reviewed monochrome captures and complete tutorial to the authored source', async () => { const document = parseModuleDocument(draft) expect(capture.moduleVersion).toBe(CARD_EVIDENCE) - expect(capture.sourceSha256).toBe(await moduleNativeSourceSha256(folder, document)) + expect(capture.sourceSha256).toBe(CARD_EVIDENCE_SOURCE) + expect(await moduleNativeSourceSha256(folder, document)).toBe(document.tests.qualification!.sourceSha256) expect(document.tests.qualification!.documentation.screenshots).toEqual(document.access!.screenshots) requireCompleteReadme({ id: document.id, tests: { qualification: { documentation: { ...document.tests.qualification!.documentation, screenshotStyle: 'black-and-white' as const } } } }, await readFile(resolve(folder, 'README.md'), 'utf8')) for (const media of document.media) { @@ -58,9 +63,11 @@ describe('VECTOR release', () => { expect(media.otUi?.moduleVersion).toBe(document.version) expect(media.otUi?.imageSha256).toBe(capture.imageSha256) } + const changed = [] for (const [path, hash] of Object.entries(capture.nativeBuildInputs)) { - expect(sha(await readFile(resolve(folder, path)))).toBe(hash) + if (sha(await readFile(resolve(folder, path))) !== hash) changed.push(path) } + expect(changed).toEqual(CHANGED_SINCE_CARD_EVIDENCE) expect(sha(await readFile(resolve(folder, capture.panelWalk)))).toBe(capture.panelWalkSha256) }) From 50d939e9bcd17d5a41836b70670378510a5c2131 Mon Sep 17 00:00:00 2001 From: repeat98 Date: Fri, 6 Nov 2026 12:35:36 +0100 Subject: [PATCH 18/33] VECTOR 0.2.6: Tape Echo and Euclid standalone recipes re-pin the imported asset files Co-Authored-By: Claude Opus 5.5 --- .../module-adapters/standalone-recipes.json | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/sdk/machines/octatrack/module-adapters/standalone-recipes.json b/sdk/machines/octatrack/module-adapters/standalone-recipes.json index 97038ea7d..1ce82b3a6 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": "dcd8397b8cecf6fab61debd9aa2f86f612da0ca6ccf363c79d56033bc170b993", "src/catalog/modules.ts": "e268c6d42e4d5093ab943aed5cf2263a72e6d5e1a7ac0e72efc8a7ec6c62b89b", - "src/engine/assets/dsp-packages.json": "6a92fb857b757dd887b653fc627fa7729c6a8dd150433142ff64f8e9c8dcc6bb", - "src/engine/assets/descriptor-recipes.json": "2159af671066e45073ef135de21a9343d19b0fd9b7edf8c962f0d124bd532485", - "src/engine/assets/menu-recipes.json": "b03462fe6469604df4e3b087c0e8b99f654d49cc2b7cc2b494cf393f369cb961", - "src/engine/assets/rom-packages.json": "65365ef79215562a511305b8e6d494fcba171aa7763780af0656e1bca8ce06a0", + "src/engine/assets/dsp-packages.json": "df9b31dd9f982defc74a7de24fd963ed628ad3c1c0abaf34eed5ce8e0555c4a3", + "src/engine/assets/descriptor-recipes.json": "956677330370c6e3e9e8f0000be83b99ae05ff7ad6ecfec61b94b8c6d160b8cc", + "src/engine/assets/menu-recipes.json": "1d4e64994baef0bfed56fe8781851957d00b20dab6b2e0e8d3059927c1125d45", + "src/engine/assets/rom-packages.json": "8682f3e34a0aa3e99f3e44dd359b0e48848628e3ea8cf02623a4cd5b12a71319", "upstream/elekloader/link.py": "5d31157ccbe62807ff9f05fd47e1e55b54be0475ab53565e6607a56566603ba8", "upstream/elekloader/dsp.py": "9486d64eecee023670b716f6ae854996da02ee7c1a0efd5361cd963c756dbc69", "upstream/elekloader/patch.py": "77c0a74bf4b0ff8c5525d4c4b1bc42af765314a4601c0510577817a7487d8666", @@ -405,10 +405,10 @@ "src/engine/coldfire-elf.ts": "319ca0d835d1b0c602c8f4b06990016d0ebfe246cedbfc596cea3cc7adfe3cd2", "src/engine/module-build.ts": "dcd8397b8cecf6fab61debd9aa2f86f612da0ca6ccf363c79d56033bc170b993", "src/catalog/modules.ts": "e268c6d42e4d5093ab943aed5cf2263a72e6d5e1a7ac0e72efc8a7ec6c62b89b", - "src/engine/assets/dsp-packages.json": "6a92fb857b757dd887b653fc627fa7729c6a8dd150433142ff64f8e9c8dcc6bb", - "src/engine/assets/descriptor-recipes.json": "2159af671066e45073ef135de21a9343d19b0fd9b7edf8c962f0d124bd532485", - "src/engine/assets/menu-recipes.json": "b03462fe6469604df4e3b087c0e8b99f654d49cc2b7cc2b494cf393f369cb961", - "src/engine/assets/rom-packages.json": "65365ef79215562a511305b8e6d494fcba171aa7763780af0656e1bca8ce06a0", + "src/engine/assets/dsp-packages.json": "df9b31dd9f982defc74a7de24fd963ed628ad3c1c0abaf34eed5ce8e0555c4a3", + "src/engine/assets/descriptor-recipes.json": "956677330370c6e3e9e8f0000be83b99ae05ff7ad6ecfec61b94b8c6d160b8cc", + "src/engine/assets/menu-recipes.json": "1d4e64994baef0bfed56fe8781851957d00b20dab6b2e0e8d3059927c1125d45", + "src/engine/assets/rom-packages.json": "8682f3e34a0aa3e99f3e44dd359b0e48848628e3ea8cf02623a4cd5b12a71319", "upstream/elekloader/link.py": "5d31157ccbe62807ff9f05fd47e1e55b54be0475ab53565e6607a56566603ba8", "upstream/elekloader/dsp.py": "9486d64eecee023670b716f6ae854996da02ee7c1a0efd5361cd963c756dbc69", "upstream/elekloader/patch.py": "77c0a74bf4b0ff8c5525d4c4b1bc42af765314a4601c0510577817a7487d8666", From 62c9aa7c18205ab4b7dd13c8f2fc659b4ddf139c Mon Sep 17 00:00:00 2001 From: repeat98 Date: Fri, 6 Nov 2026 12:38:20 +0100 Subject: [PATCH 19/33] VECTOR 0.2.6: Analog BD proofs re-exported for the merged module source tree (212 proofs unchanged) 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 669976e6e..40b49fe17 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": "dde13b5b19877958384a9d341f4d4b868b76593a9a19727380a8a47da8f1de81", + "moduleSourceTreeSha256": "f8ca3d9bd4bac70c16f6d804a81bc0f464d7595dc1f5d1cad72aa022069a8001", "packing": null, "proofs": [ { From 9be221aabc43919ab1165cad9df7c1415b96f2f7 Mon Sep 17 00:00:00 2001 From: repeat98 Date: Sun, 8 Nov 2026 13:10:25 +0100 Subject: [PATCH 20/33] VECTOR 0.3.0: on main with 0.2.6's setup-page fix; release notes, regenerated control.s and hooks table, VECTOR's fifth replay span admitted Co-Authored-By: Claude Opus 5.5 --- scripts/module-source.test.mjs | 2 +- scripts/stock-copy-policy.mjs | 7 +- scripts/stock-copy-policy.test.mjs | 6 + sdk/machines/octatrack/HOOKS.md | 5 +- .../module-adapters/machine-ports.json | 4 +- .../module-adapters/vector_runtime.py | 2 +- sdk/octabam/modules/vector/control.s | 7796 ++++++++++++----- src/community/downloaded-module-guide.ts | 2 +- 8 files changed, 5532 insertions(+), 2292 deletions(-) diff --git a/scripts/module-source.test.mjs b/scripts/module-source.test.mjs index 82811b14f..747ba6d01 100644 --- a/scripts/module-source.test.mjs +++ b/scripts/module-source.test.mjs @@ -27,7 +27,7 @@ describe('release package scope and reviewed source inventory', () => { expect(versions['midi-scenes']).toBe('0.2.5-experimental') expect(versions.miniverb).toBe('0.2.3-experimental') for (const id of verifiedRequested) { - expect(versions[id]).toBe(id === 'analog-bassdrum' ? '0.1.6-experimental' : id === 'vector' ? '0.2.6-experimental' : id === 'quantizer' ? '0.1.4-experimental' : id === 'synth' ? '0.1.2-experimental' : id === 'usb-audio-out-tracks-main-cue' ? '0.2.0-experimental' : '0.1.2-experimental') + expect(versions[id]).toBe(id === 'analog-bassdrum' ? '0.1.6-experimental' : id === 'vector' ? '0.3.0-experimental' : id === 'quantizer' ? '0.1.4-experimental' : id === 'synth' ? '0.1.2-experimental' : id === 'usb-audio-out-tracks-main-cue' ? '0.2.0-experimental' : '0.1.2-experimental') expect(paths).toContain('modules/' + id + '/manifest.py') } expect(paths).toContain('modules/midi-scenes/recipe.json') diff --git a/scripts/stock-copy-policy.mjs b/scripts/stock-copy-policy.mjs index 10f499072..1eead08ad 100644 --- a/scripts/stock-copy-policy.mjs +++ b/scripts/stock-copy-policy.mjs @@ -2,8 +2,9 @@ // Which stock copies a requested card package may carry (scripts/import-module-build.mjs). A copy is a zero // placeholder the builder fills from the user's verified OS at build time, matched by address, length and SHA-256, // so no stock byte is in the package. Two kinds are admitted: -// - replay spans: the four of USB MIDI's descriptor package and of VECTOR's and POLY8's replaying units, each -// the guarded span of a detour of the same group (USB MIDI: its 23-byte descriptor); +// - replay spans: the four of USB MIDI's descriptor package and of VECTOR's and POLY8's replaying units (VECTOR's +// fifth: MIDI NOTE SETUP's drawer, its MIDI generator list on a card), each the guarded span of a detour of the +// same group (USB MIDI: its 23-byte descriptor); // - data copies: any other package's copies, each a guard its module's import record declares under stockGuards // with kind guarded-local-cpu-read, so a reviewer sees every span a module reads from the OS. @@ -15,7 +16,7 @@ export function checkRequestedStockCopies(pkg, group, guards = []) { const copies = pkg.stockCopies if (!Array.isArray(copies)) throw new Error('Invalid inherited stock placeholder inventory') if (REPLAY_LABELS.includes(pkg.label)) { - if (copies.length !== 4) throw new Error('Invalid inherited stock placeholder inventory') + if (copies.length !== (pkg.label === 'vector' ? 5 : 4)) throw new Error('Invalid inherited stock placeholder inventory') for (const copy of copies) { if (pkg.label === 'usbmidi_cfg') { if (copy.bytes !== 23) throw new Error('Invalid inherited USB descriptor length') diff --git a/scripts/stock-copy-policy.test.mjs b/scripts/stock-copy-policy.test.mjs index 57948037e..e2a0481df 100644 --- a/scripts/stock-copy-policy.test.mjs +++ b/scripts/stock-copy-policy.test.mjs @@ -17,6 +17,12 @@ describe('stock copies a requested card package may carry', () => { it('refuses a replaying package without exactly four copies', () => { expect(() => checkRequestedStockCopies({ label: 'vector', stockCopies: replay(3) }, detours)).toThrow('Invalid inherited stock placeholder inventory') }) + it("accepts VECTOR's fifth replay span (its MIDI generator list on a card) and no other package's", () => { + const five = { detours: [0, 1, 2, 3, 4].map(i => ({ address: 0x40001000 + 16 * i, guardLength: 6, guardSha256: A })) } + expect(() => checkRequestedStockCopies({ label: 'vector', stockCopies: replay(5) }, five)).not.toThrow() + expect(() => checkRequestedStockCopies({ label: 'vector', stockCopies: replay(4) }, five)).toThrow('Invalid inherited stock placeholder inventory') + expect(() => checkRequestedStockCopies({ label: 'polyui', stockCopies: replay(5) }, five)).toThrow('Invalid inherited stock placeholder inventory') + }) it('refuses a replay span that differs from its detour guard', () => { const copies = replay(); copies[2] = copy(copies[2].source, 6, B, 16) expect(() => checkRequestedStockCopies({ label: 'polyui', stockCopies: copies }, detours)).toThrow('Inherited replay span must match its declared native detour guard') diff --git a/sdk/machines/octatrack/HOOKS.md b/sdk/machines/octatrack/HOOKS.md index c28baa7a2..ee227f1f7 100644 --- a/sdk/machines/octatrack/HOOKS.md +++ b/sdk/machines/octatrack/HOOKS.md @@ -50,7 +50,7 @@ next base build, which renames them; the base loads them by those paths. | `ot_machines` | table | none | the machine chooser, SRC SETUP, the page resolver, the Part validator, the UI tick, pool navigation and the FLEX renderer ask the contributed machines, in row order: chooser rows 5 on | `80-byte record` | Contribute one struct modwerk_machine (every field but abi, sig and label optional, 0). A Part keeps its signature when the machine is absent and reads as stock. Leaving a PROTECT machine that has no assign of its own puts stock's FLEX defaults back in both Part copies before the signature goes. A priced machine (source_kind) is charged on its track's core before the track becomes it, and every owned track at each UI tick; a track the core cannot carry renders stock's silent source. Removal is refused while a Part, a UI root or a paused task still holds the machine. A SETUP_PAGE machine contributes a struct modwerk_machine_setup (88 bytes): while SRC SETUP's cursor is on its row and the current track is its own, the drawer shows the page its page function returns and encoders A-F go to its knob function before stock edits the backing pool's setup; a base without the flag ignores it and reads 80 bytes, so the machine keeps stock's setup there. A NATIVE_FLEX machine must contribute START and its own render callback. It keeps its native FLEX voice active while the base clears its retrig count; refused STARTs, unpaid owners and missing machines still stop it. Translate and restore custom controls around native START and render calls. Use a matching base: older bases ignore this flag and stop the voice. | lower first, then module id: the chooser's row order. 10 POLY8, 20 Analog BD, 30 VECTOR, 40 FM Synth (the order of POLY8's shared controller); others 50-90. | the UI task and the audio render (render only): short, no firmware call that can block | | `ot_sequencer_rows` | table | none | PROJECT > CONTROL > SEQUENCER lists stock's three rows, then one per contributed label | `4-byte record` | Contribute one struct modwerk_sequencer_rows: its rows, in order. The window shows stock's three rows and up to eight more; a row with a label an earlier row has is not shown; the getter and setter follow stock's rows' convention (CHAIN AFTER's 0x400659ec). | lower first, then module id: the rows' order. 40 FM Synth's bundled quantizer, 50 Scale Quantizer. | the UI task | | `ev_tail_kill` | call | 0x40004d0c | STOP's tail kill (STOP, STOP, STOP) holds a track: each frame, for each held track, before stock tests the track's FX2 against its three reverbs and clears theirs | `void f(uint8_t *record, unsigned track)` | A notification: every handler runs, then stock's own test. record is the track's 64-byte frame record its DSP instances read (32 halfwords): the halfword at +56 is the FX2 id stock tests, the byte at +53 FX2 SETUP's slot 11, which stock zeroes for its reverbs while the kill holds. A handler may zero its own effect's bytes there the same way (check +56 first). d2-d7/a2-a6 are the builder's and must be kept. | lower first, then module id; 10-90. | the frame interrupt: short, no firmware call that can block | -| `ot_midi_generators` | table | none | MIDI NOTE SETUP (double-tap SRC, or double-tap TRACK in MIDI mode) lists OFF and the contributed generators in its empty left half; a MIDI track running one shows that generator's pages on the MIDI pages it takes (always ARP; FUNC+AMP: the ARP page's second) | `36-byte record` | Contribute one struct modwerk_midi_generator (every field but abi, label and id optional, 0). Choosing it puts 'M' and its id in the track's arp step mask (Part 0x1822 + 2 t, high byte first), which stock's validator never reads and only ARP SETUP edits; stock's default there is ffff. On every change of generator the base first puts the track's arpeggiator back to stock's defaults (MODE OFF, every note 0), then calls the old generator's assign(t, 0) and the new one's assign(t, 1). While a generator runs a track it owns that track's 16 arpeggiator note bytes (Part 0x1832 + 16 t, each -64..63, the range stock's validator keeps), so the ARP page is always its own and FUNC+AMP never opens ARP SETUP there. Its pages show while no trig or scene is held (stock's then, so locks stay stock's); the base takes encoders A-F, YES and, on the second ARP page, NO there. Values behind the pages it takes stay stock's and keep their meaning (a NOTE page's NOT2-4 still add chord notes): set or show them itself. Layout A (owner, 24 October 2026): generators take SRC and AMP; FX1 and FX2 are kept for MIDI effects. A track whose id has no installed generator reads as stock. | lower first, then module id: the list's order. 30 for the first generator; others 40-90. | the UI task | +| `ot_midi_generators` | table | none | MIDI NOTE SETUP (double-tap SRC, or double-tap TRACK in MIDI mode) lists OFF and the contributed generators in its empty left half; a MIDI track running one shows that generator's pages on the MIDI pages it takes (always ARP; FUNC+AMP: the ARP page's second) | `36-byte record` | Contribute one struct modwerk_midi_generator (every field but abi, label and id optional, 0). Choosing it puts 'M' and its id in the track's arp step mask (Part 0x1822 + 2 t, high byte first), which stock's validator never reads and only ARP SETUP edits; stock's default there is ffff. On every change of generator the base first puts the track's arpeggiator back to stock's defaults (MODE OFF, every note 0), then calls the old generator's assign(t, 0) and the new one's assign(t, 1). While a generator runs a track it owns that track's 16 arpeggiator note bytes (Part 0x1832 + 16 t, each -64..63, the range stock's validator keeps), so the ARP page is always its own and FUNC+AMP never opens ARP SETUP there. Its pages show while no trig or scene is held (stock's then, so locks stay stock's); the base takes encoders A-F, YES and, on the second ARP page, NO there. Values behind the pages it takes stay stock's and keep their meaning (a NOTE page's NOT2-4 still add chord notes): set or show them itself. Layout A (owner, 24 October 2026): generators take SRC and AMP; FX1 and FX2 are kept for MIDI effects. A track whose id has no installed generator reads as stock. | lower first, then module id: the list's order. 30 VECTOR; others 40-90. | the UI task | | `ev_midi_note_key` | take | 0x4009fb58 | a MIDI track's note, from its trig, chord or arpeggiator, is about to be corrected to the track's KEY (ARP SETUP) and sent (d7 the track) | `struct modwerk_take, jmp entry, claims(d7)` | The taker's entry gets every register and the stack as at the site: d7 the track, a2 the note byte (it may rewrite it, 0-127, or store -1 to drop the note), -64(%fp) stock's KEY root offset. It returns to stock by jumping to 0x4009fb80 to send the note as it is now, or by replaying the stock tail below (stock's KEY correction); it must not jump into the site's bytes. Stock keeps the note it sends for that note's note-off. | 10-29: a machine claiming its own tracks (claims set); 30-49: a machine's bundled feature; 50-69: a standalone feature module. The first record that claims the call takes it. | the MIDI sequencer tick 0x400a1e0c (an interrupt, vector 0x60; octabam docs/firmware/MIDI_SCENES.md section 5), once per note: a few microseconds, no firmware call, nothing that waits or allocates | | `ev_arp_setup_knob` | take | 0x4007a2ec | an encoder turns on MIDI ARP SETUP (FUNC+AMP on a MIDI track), before stock edits LEN, KEY or an arp note | `struct modwerk_take, jmp entry, claims(nothing)` | The taker's entry gets every register and the stack as at the site: (%sp) the return address, 4(%sp) the encoder (2 LEN, 5 KEY, 6 the arp note editor), 8(%sp) the delta. It takes the turn by returning to the caller with rts (stock edits nothing), or hands it to stock by replaying the stock tail below; it must not jump into the site's bytes. A taker that stores into the pattern or the Part writes the bank and its battery-backed copy and sets the edited flags as stock's writers do. | 10-29: a machine claiming its own tracks (claims set); 30-49: a machine's bundled feature; 50-69: a standalone feature module. The first record that claims the call takes it. | the UI task (ARP SETUP's input layer): short, no firmware call that can block | | `ev_arp_setup_text` | take | 0x4007a1ec | MIDI ARP SETUP is about to draw a setup value (d3 the slot: 2 LEN, 5 KEY) | `struct modwerk_take, jmp entry, claims(d3)` | The taker's entry gets every register and the stack as at the site: d3 the slot, d4 the track's value, a3 the slot's descriptor (a3@ the text function f(buffer, value), a3@(48) the drawer or 0 for 0x400479b4), a2 and d2 the place, d6 the surface. It draws the value itself, normally by calling the slot's drawer as stock does with a text function of its own, and goes on at 0x4007a216 with every register but d0-d1/a0-a1 as it found them; or it hands the value to stock by replaying the stock tail below. It must not jump into the site's bytes. | 10-29: a machine claiming its own tracks (claims set); 30-49: a machine's bundled feature; 50-69: a standalone feature module. The first record that claims the call takes it. | the UI task (the drawer): short, no firmware call that can block | @@ -116,6 +116,7 @@ next base build, which renames them; the base loads them by those paths. | `ot_sequencer_rows` | synth | `mw_sequencer_rows` | 40 | SCALE, ROOT, GLIDE rows of FM's bundled quantizer | sdk/octabam/modules/synth/upstream/quantizer/quantizer.s (FM's bundled copy, fm_ units) qz_lbl_*, qz_get*, qz_set* | | `ot_sequencer_rows` | quantizer | `mw_sequencer_rows` | 50 | SCALE, ROOT, GLIDE rows | sdk/octabam/modules/quantizer/upstream/quantizer/quantizer.s qz_lbl_*, qz_get*, qz_set* | | `ev_tail_kill` | bbd | `bbd_tail_kill` | 50 | while the kill holds a track whose FX2 is BBD (id 0x0e), zeroes its slot 11 (+53): BBD plays the input exactly and clears its line until the track's next trig | sdk/octabam/modules/bbd/stopkill.s bbd_kill_hook (the card build's detour at the same site); on the owner's MKII 15 Oct 2026 (dev twin e429b787): slot 11 0 while held, 127 after T1's next trig, the tail cut to -132 dBFS | +| `ot_midi_generators` | vector | `vector_midi` | 30 | VECTOR: id 86 ('V'), on SRC and AMP (FUNC+AMP its second page); NOTE/VEL/LEN locks, trigs, conditions and micro-timing in the MIDI track | sdk/octabam/modules/vector/midi.c vector_midi; runtime.json | ## Reviewed raisers @@ -154,7 +155,7 @@ A raised hook has no stock site: these modules call the base's entry and act on - `ot_machines`: sdk/octabam/modules/poly8/shared-machine.c (MIT, Sam Banks / repeat98) dispatched POLY, AB, VECTOR, FM in this order; the base registry (elekloader/machine_registry.c) is that controller reading this table. - `ot_sequencer_rows`: Both quantizers name the same rows and keep them in the same bytes, so the keyed table shows one set: FM's with FM installed, Scale Quantizer's otherwise. - `ev_tail_kill`: Every handler acts only on a track whose FX2 runs its own effect id, so no order is needed between them. -- `ot_midi_generators`: No generator in the catalogue yet. +- `ot_midi_generators`: One generator so far. - `ev_midi_note_key`: No module subscribes yet. Upstream octabam's MIDI Scales (radiohagen, MIT) patches this site for its extra modes; a Modwerk port, or a module that locks KEY per step, takes it here instead. - `ev_arp_setup_knob`: No module subscribes yet. A module that locks KEY per step claims only encoder 5 while a trig is held, and leaves every other turn to stock. Upstream octabam's MIDI Scales patches KEY's branch here (0x4007a3e2) for its extra modes; a port would take this event instead. - `ev_arp_setup_text`: No module subscribes yet. A module that shows a held trig's KEY lock claims slot 5 only while a trig is held, and leaves every other draw to stock. Upstream octabam's MIDI Scales replaces KEY's text function (0x400d40c6) for its extra modes; a port would take this event instead. diff --git a/sdk/machines/octatrack/module-adapters/machine-ports.json b/sdk/machines/octatrack/module-adapters/machine-ports.json index e7ffcfd02..dcad16af7 100644 --- a/sdk/machines/octatrack/module-adapters/machine-ports.json +++ b/sdk/machines/octatrack/module-adapters/machine-ports.json @@ -151,8 +151,8 @@ }, "vector": { "sources": { - "sdk/octabam/modules/vector/control.s": "1939a627870464126d138522173d0465d1abc790cdb4ad4bc29a15501484faf5", - "sdk/octabam/modules/vector/manifest.py": "4d921f24256038797a99671534885b0bb9a27eaa79261b11136cf0a95a75af21" + "sdk/octabam/modules/vector/control.s": "c95c74baa5e5d79d1c3edf0148b2c4a84daf4e5d61c1bff5eb3934626fd0a9be", + "sdk/octabam/modules/vector/manifest.py": "b9dec167f8bd4f1b691069cc89834f6c2a6717b874eb28629ef5c8c026d3d976" }, "contribute": [ { diff --git a/sdk/machines/octatrack/module-adapters/vector_runtime.py b/sdk/machines/octatrack/module-adapters/vector_runtime.py index 2a00cac6a..054fb9d7c 100644 --- a/sdk/machines/octatrack/module-adapters/vector_runtime.py +++ b/sdk/machines/octatrack/module-adapters/vector_runtime.py @@ -4,7 +4,7 @@ import hashlib from pathlib import Path -CONTROL_SHA256 = '1939a627870464126d138522173d0465d1abc790cdb4ad4bc29a15501484faf5' +CONTROL_SHA256 = 'c95c74baa5e5d79d1c3edf0148b2c4a84daf4e5d61c1bff5eb3934626fd0a9be' ARITHMETIC = ( ('\tsub.l #staging-268525901,%a1', '\tadd.l #268525901,%a1\n\tsub.l #staging,%a1'), ('\tlea saved-1187503478,%a1', '\tlea saved,%a1\n\tsub.l #1187503478,%a1'), diff --git a/sdk/octabam/modules/vector/control.s b/sdk/octabam/modules/vector/control.s index 84105aa5b..af4e6b77e 100644 --- a/sdk/octabam/modules/vector/control.s +++ b/sdk/octabam/modules/vector/control.s @@ -2,617 +2,839 @@ .file "vector.c" .text .align 2 - .type generator_page, @function -generator_page: - lea (-32,%sp),%sp - movem.l #15420,(%sp) - tst.l src_page_ready - jeq .L2 - move.l 36(%sp),%d0 - cmp.l src_page_source.l,%d0 - jeq .L3 -.L2: - lea src_page,%a0 - move.l 36(%sp),%a1 - sub.l %a0,%a1 + .type mg_dirty, @function +mg_dirty: + move.l %d2,-(%sp) + move.b 269161679,%d0 + mov3q.l #3,%d2 + move.l 1187521622,%a1 + add.l #610376,%a1 + move.b (%a1),%d1 + and.l %d0,%d2 + mov3q.l #1,%d0 + lsl.l %d2,%d0 + or.l %d0,%d1 + move.b %d1,(%a1) + move.b 269161566,%d1 + or.l %d1,%d0 + move.b %d0,269161566 + move.l 1187521622,%a0 + add.l #635698,%a0 + move.l (%sp)+,%d2 + mov3q.l #1,(%a0) + mov3q.l #1,269452696 + jmp 1073905152 + .size mg_dirty, .-mg_dirty + .align 2 + .type mg_forward, @function +mg_forward: + move.l %d2,-(%sp) + moveq #51,%d1 + move.l 8(%sp),%d0 + move.l 12(%sp),%a0 + cmp.l %d0,%d1 + jeq .L7 + moveq #32,%d2 + cmp.l %d0,%d2 + jeq .L8 + moveq #49,%d1 + cmp.l %d0,%d1 + jeq .L9 + moveq #50,%d2 + mov3q.l #3,%a1 + cmp.l %d0,%d2 + jeq .L4 +.L3: + move.l (%sp)+,%d2 + rts +.L7: + sub.l %a1,%a1 .L4: - move.b (%a1,%a0.l),%d0 - move.b %d0,(%a0)+ - cmp.l #src_page+402,%a0 - jne .L4 - lea vector_control_names,%a5 - clr.l %d2 - lea src_page+202,%a1 - lea (formats.2),%a4 - lea src_page+22,%a2 - move.l #src_page+28,%d1 -.L11: - move.l (%a5)+,%a3 - sub.l %a0,%a0 -.L5: - move.b (%a3,%a0.l),%d0 + mov3q.l #1,%d1 + cmp.l %a0,%d1 + jeq .L10 +.L14: + tst.l %a0 jeq .L6 - move.b %d0,(%a2,%a0.l) - addq.l #1,%a0 - mov3q.l #5,%d3 - cmp.l %a0,%d3 - jne .L5 + mov3q.l #2,%d1 .L6: - add.l %a2,%a0 + lea (%a1,%a1.l*2),%a1 + moveq #-3,%d2 + add.l %a1,%d1 + lea mg_saved,%a1 + move.l (%a1,%d1.l*4),%a1 + move.l %a1,%d1 + subq.l #1,%d1 + cmp.l %d1,%d2 + jcs .L3 + move.l %a0,12(%sp) + move.l %d0,8(%sp) + move.l (%sp)+,%d2 + jmp (%a1) +.L10: + clr.l %d1 + jra .L6 .L8: - clr.b (%a0)+ + mov3q.l #1,%a1 + mov3q.l #1,%d1 cmp.l %a0,%d1 - jne .L8 - move.l (%a4)+,%d0 - move.l %d0,%d3 - clr.w %d3 - swap %d3 - moveq #24,%d4 - move.l %d0,%d5 - lsr.l %d4,%d5 - move.l %d0,%d4 - lsr.l #8,%d4 - move.b %d0,3(%a1) - mov3q.l #5,%d0 - move.b %d5,(%a1) - move.b %d4,2(%a1) - move.b %d3,1(%a1) - cmp.l %d2,%d0 - jcs .L12 - move.l #generator_widget,%d0 - moveq #24,%d4 - move.l %d0,%d3 - move.l %d0,%d5 - clr.w %d3 - swap %d3 - lsr.l %d4,%d5 - move.l %d0,%d4 - lsr.l #8,%d4 - move.b %d0,51(%a1) - addq.l #4,%a1 - move.b %d5,44(%a1) - move.b %d4,46(%a1) - addq.l #1,%d2 - addq.l #6,%a2 - addq.l #6,%d1 - moveq #12,%d0 - move.b %d3,45(%a1) - cmp.l %d2,%d0 - jne .L11 -.L22: - mvz.w #21845,%d3 - move.l 36(%sp),%d0 - move.l #1431655765,%d4 - move.l %d4,src_page+398 - mov3q.l #1,src_page_ready - move.l %d3,src_page+394 - move.l %d0,src_page_source -.L3: - move.l #src_page,%d0 - movem.l (%sp),#15420 - lea (32,%sp),%sp - rts -.L12: - move.l #secondary_widget,%d0 - moveq #24,%d4 - move.l %d0,%d3 - move.l %d0,%d5 - clr.w %d3 - swap %d3 - lsr.l %d4,%d5 - move.l %d0,%d4 - lsr.l #8,%d4 - move.b %d0,51(%a1) - addq.l #4,%a1 - move.b %d5,44(%a1) - move.b %d4,46(%a1) - addq.l #1,%d2 - addq.l #6,%a2 - addq.l #6,%d1 - moveq #12,%d0 - move.b %d3,45(%a1) - cmp.l %d2,%d0 - jne .L11 - jra .L22 - .size generator_page, .-generator_page + jne .L14 + jra .L10 +.L9: + mov3q.l #2,%a1 + mov3q.l #1,%d1 + cmp.l %a0,%d1 + jne .L14 + jra .L10 + .size mg_forward, .-mg_forward .align 2 .type vector_generate.part.0, @function vector_generate.part.0: - lea (-968,%sp),%sp + lea (-960,%sp),%sp moveq #15,%d1 movem.l #31996,(%sp) - move.l 976(%sp),%a0 + move.l 968(%sp),%a0 mvz.b (%a0),%d0 - move.l %d0,62(%sp) + move.l %d0,78(%sp) cmp.l %d0,%d1 - jcc .L24 + jcc .L16 moveq #15,%d2 - move.l %d2,62(%sp) -.L24: + move.l %d2,78(%sp) +.L16: moveq #16,%d0 - move.l 976(%sp),%a0 + move.l 968(%sp),%a0 mvz.b 1(%a0),%d3 - move.l %d3,58(%sp) + move.l %d3,70(%sp) cmp.l %d3,%d0 - jcc .L25 + jcc .L17 moveq #16,%d1 - move.l %d1,58(%sp) -.L25: + move.l %d1,70(%sp) +.L17: moveq #11,%d0 - move.l 976(%sp),%a0 + move.l 968(%sp),%a0 mvz.b 2(%a0),%d2 - move.l %d2,74(%sp) + move.l %d2,66(%sp) cmp.l %d2,%d0 - jcc .L26 + jcc .L18 moveq #11,%d1 - move.l %d1,74(%sp) -.L26: + move.l %d1,66(%sp) +.L18: mov3q.l #4,%d0 - move.l 976(%sp),%a0 + move.l 968(%sp),%a0 mvz.b 3(%a0),%d2 - move.l %d2,66(%sp) + move.l %d2,82(%sp) cmp.l %d2,%d0 - jcc .L27 - mov3q.l #4,66(%sp) -.L27: - move.l 976(%sp),%a0 + jcc .L19 + mov3q.l #4,82(%sp) +.L19: + move.l 968(%sp),%a0 moveq #126,%d0 mvz.b 4(%a0),%d1 - move.l %d1,70(%sp) + move.l %d1,62(%sp) cmp.l %d1,%d0 - jcc .L28 + jcc .L20 moveq #126,%d1 - move.l %d1,70(%sp) -.L28: + move.l %d1,62(%sp) +.L20: moveq #127,%d0 - move.l 976(%sp),%a0 + move.l 968(%sp),%a0 mvz.b 5(%a0),%d2 - move.l %d2,78(%sp) + move.l %d2,86(%sp) cmp.l %d2,%d0 - jcc .L29 + jcc .L21 moveq #127,%d1 - move.l %d1,78(%sp) -.L29: + move.l %d1,86(%sp) +.L21: moveq #12,%d0 - move.l 976(%sp),%a0 + move.l 968(%sp),%a0 mvz.b 6(%a0),%d2 - move.l %d2,50(%sp) + move.l %d2,58(%sp) cmp.l %d2,%d0 - jcc .L30 + jcc .L22 moveq #12,%d1 - move.l %d1,50(%sp) -.L30: + move.l %d1,58(%sp) +.L22: moveq #24,%d1 - move.l 976(%sp),%a0 + move.l 968(%sp),%a0 move.b 8(%a0),%d0 mvz.b 7(%a0),%d2 - move.l %d2,54(%sp) - move.b %d0,95(%sp) + move.l %d2,%a6 + move.b %d0,91(%sp) cmp.l %d2,%d1 - jcc .L31 - moveq #24,%d2 - move.l %d2,54(%sp) -.L31: - move.l 976(%sp),%a0 - move.l 54(%sp),%a1 - move.l 980(%sp),%d4 + jcc .L23 + move.w #24,%a6 +.L23: + move.l 968(%sp),%a0 + lea (-12,%a6),%a1 + move.l 972(%sp),%d6 move.b 9(%a0),%d0 - lea (-12,%a1),%a1 - move.l %a1,82(%sp) + move.l %a1,74(%sp) tst.b %d0 - jeq .L32 + jeq .L24 moveq #64,%d1 - cmp.l %d4,%d1 - jcs .L105 + cmp.l %d6,%d1 + jcs .L95 mvz.b %d0,%d0 - cmp.l %d4,%d0 - jcs .L106 -.L32: - move.l 972(%sp),%a0 - lea (712,%sp),%a3 - lea (968,%sp),%a6 - move.b 983(%sp),256(%a0) - move.l %a0,96(%sp) - move.l %a3,%a1 -.L35: - st %d0 - clr.b (%a0) - move.b %d0,3(%a0) - move.b %d0,2(%a0) - move.b %d0,1(%a0) - move.l (%a0)+,(%a1)+ - cmp.l %a1,%a6 - jne .L35 - move.l 62(%sp),%d5 - moveq #11,%d1 - move.l #-1640531527,%d2 - clr.l %d6 - move.l #2146121005,%d7 - lsl.l %d1,%d5 - lea (200,%sp),%a2 - lea (456,%sp),%a4 - move.l %a2,%d3 - move.l %d5,%a6 - move.l 988(%sp),%d5 - move.l %d5,%d1 - eor.l %d2,%d1 + cmp.l %d6,%d0 + jcs .L96 +.L24: + move.l 964(%sp),%a0 + move.l %sp,%d0 + move.l 964(%sp),%a2 + add.l #960,%d0 + move.l %a2,%a1 + move.b 975(%sp),256(%a0) + lea (704,%sp),%a0 + move.l %a0,%a3 +.L27: + st %d1 + clr.b (%a1) + move.b %d1,3(%a1) + move.b %d1,2(%a1) + move.b %d1,1(%a1) + move.l (%a1)+,(%a3)+ + cmp.l %a3,%d0 + jne .L27 + move.l 980(%sp),%d1 + move.l #-1640531527,%d4 + move.l 78(%sp),%d7 + moveq #11,%d3 + clr.l %d2 + eor.l %d4,%d1 + lsl.l %d3,%d7 + moveq #15,%d3 + lea (192,%sp),%a1 + lea (448,%sp),%a5 + move.l %a1,%d5 move.l %d1,%d0 clr.w %d0 swap %d0 eor.l %d1,%d0 - muls.l %d7,%d0 - moveq #15,%d7 + move.l #2146121005,%d1 + muls.l %d1,%d0 move.l %d0,%d1 - lsr.l %d7,%d1 + lsr.l %d3,%d1 eor.l %d1,%d0 move.l #-2073254261,%d1 muls.l %d1,%d0 - move.l %d0,%d7 - clr.w %d7 - swap %d7 - eor.l %d0,%d7 + move.l %d0,%d3 + clr.w %d3 + swap %d3 + eor.l %d0,%d3 mov3q.l #3,%d0 - and.l %d6,%d0 - mvz.w %d7,%d7 + and.l %d2,%d0 + mvz.w %d3,%d3 tst.l %d0 - jeq .L36 -.L108: - add.l %a6,%d7 - move.l %d7,(%a4) -.L37: - move.l %d3,%a0 - move.l %d6,%d0 -.L39: - move.l -4(%a0),%d1 - lea (968,%sp),%a5 - lea (%a5,%d1.l*4),%a1 - cmp.l -512(%a1),%d7 - jcc .L38 - move.l %d1,(%a0) + jeq .L28 +.L98: + add.l %d7,%d3 + move.l %d3,(%a5) +.L29: + move.l %d5,%a3 + move.l %d2,%d0 + move.l %a0,50(%sp) +.L31: + move.l -4(%a3),%d1 + lea (960,%sp),%a0 + lea (%a0,%d1.l*4),%a4 + cmp.l -512(%a4),%d3 + jcc .L92 + move.l %d1,(%a3) subq.l #1,%d0 - subq.l #4,%a0 + subq.l #4,%a3 tst.l %d0 - jne .L39 -.L38: - lea (%sp,%d0.l*4),%a0 - move.l %d6,%a5 - add.l #-1640531527,%d2 - addq.l #1,%a5 - addq.l #4,%a4 - addq.l #4,%d3 - move.l %d6,200(%a0) - cmp.l %d4,%a5 - jeq .L107 -.L69: - move.l %d5,%d1 - move.l #2146121005,%d7 - eor.l %d2,%d1 - move.l %a5,%d6 + jne .L31 +.L92: + lea (%sp,%d0.l*4),%a3 + move.l %d2,%d3 + add.l #-1640531527,%d4 + move.l 50(%sp),%a0 + addq.l #1,%d3 + addq.l #4,%a5 + addq.l #4,%d5 + move.l %d2,192(%a3) + cmp.l %d6,%d3 + jeq .L97 +.L61: + move.l 980(%sp),%d1 + move.l %d3,%d2 + moveq #15,%d3 + eor.l %d4,%d1 move.l %d1,%d0 clr.w %d0 swap %d0 eor.l %d1,%d0 - muls.l %d7,%d0 - moveq #15,%d7 + move.l #2146121005,%d1 + muls.l %d1,%d0 move.l %d0,%d1 - lsr.l %d7,%d1 + lsr.l %d3,%d1 eor.l %d1,%d0 move.l #-2073254261,%d1 muls.l %d1,%d0 - move.l %d0,%d7 - clr.w %d7 - swap %d7 - eor.l %d0,%d7 + move.l %d0,%d3 + clr.w %d3 + swap %d3 + eor.l %d0,%d3 mov3q.l #3,%d0 - and.l %d6,%d0 - mvz.w %d7,%d7 + and.l %d2,%d0 + mvz.w %d3,%d3 tst.l %d0 - jne .L108 -.L36: - move.l %d7,(%a4) - tst.l %d6 - jne .L37 + jne .L98 +.L28: + move.l %d3,(%a5) + tst.l %d2 + jne .L29 clr.l %d0 - lea (%sp,%d0.l*4),%a0 - move.l %d6,%a5 - add.l #-1640531527,%d2 - addq.l #1,%a5 - addq.l #4,%a4 - addq.l #4,%d3 - move.l %d6,200(%a0) - cmp.l %d4,%a5 - jne .L69 -.L107: - move.w %a5,%d0 - mulu.w 60(%sp),%d0 + lea (%sp,%d0.l*4),%a3 + move.l %d2,%d3 + add.l #-1640531527,%d4 + addq.l #1,%d3 + addq.l #4,%a5 + addq.l #4,%d5 + move.l %d2,192(%a3) + cmp.l %d6,%d3 + jne .L61 +.L97: + move.l 82(%sp),%a5 + moveq #24,%d5 + lea scales,%a3 + moveq #100,%d7 + move.w #12,%a4 + mvz.w (%a3,%a5.l*2),%d4 + move.l 74(%sp),%a3 + moveq #-12,%d0 + move.l 74(%sp),%a5 + sub.l %a6,%a4 + sub.l 66(%sp),%d5 + sub.l 58(%sp),%a3 + add.l 58(%sp),%a5 + clr.l 54(%sp) + clr.l 50(%sp) + move.l %a0,82(%sp) + move.l %d2,46(%sp) +.L42: + move.l %d5,%d1 + moveq #12,%d2 + add.l %d0,%d1 + remu.l %d2,%d6:%d1 + btst %d6,%d4 + jeq .L34 +.L100: + cmp.l %a3,%d0 + jge .L35 + move.l %a4,%d1 + add.l %d0,%d1 + tst.l %d1 + jlt .L99 + cmp.l %d1,%d7 + jle .L37 +.L103: + move.l %d0,54(%sp) + moveq #12,%d2 + addq.l #1,%d0 + move.l %d1,%d7 + move.l %d5,%d1 + add.l %d0,%d1 + remu.l %d2,%d6:%d1 + btst %d6,%d4 + jne .L100 +.L34: + addq.l #1,%d0 + moveq #13,%d1 + cmp.l %d0,%d1 + jne .L42 +.L105: + move.w 72(%sp),%d0 + move.l 82(%sp),%a0 + move.l 46(%sp),%d2 + mulu.w %d3,%d0 addq.l #8,%d0 lsr.l #4,%d0 - jeq .L42 + jeq .L43 mvz.w %d0,%d0 - lea (%a2,%d0.l*4),%a1 -.L43: - move.l (%a2)+,%d0 - lea (%sp,%d0.l*4),%a0 + lea (%a1,%d0.l*4),%a4 +.L44: + move.l (%a1)+,%d0 + lea (%sp,%d0.l*4),%a3 moveq #1,%d0 - move.b %d0,712(%a0) - cmp.l %a1,%a2 - jne .L43 -.L42: + move.b %d0,704(%a3) + cmp.l %a1,%a4 + jne .L44 +.L43: moveq #12,%d1 - moveq #12,%d3 - move.l 74(%sp),%d0 + moveq #12,%d6 + move.l 66(%sp),%d0 addq.l #7,%d0 - remu.l %d1,%d2:%d0 + remu.l %d1,%d5:%d0 mvz.w #254,%d1 - sub.l 78(%sp),%d1 - mvz.w #254,%d7 - move.l 82(%sp),%a1 - moveq #12,%d4 + sub.l 86(%sp),%d1 + move.l 74(%sp),%a4 + move.l %d2,%a1 + move.l 74(%sp),%a5 + clr.l %d7 moveq #12,%d0 - sub.l 74(%sp),%d0 - move.l %d2,90(%sp) - mulu.w 986(%sp),%d1 - move.l 82(%sp),%a4 - add.l %d2,%d0 - remu.l %d3,%d2:%d0 - divu.l %d7,%d1 - move.w #24,%a0 - sub.l 50(%sp),%a1 - sub.l 74(%sp),%a0 - sub.l 54(%sp),%d4 + sub.l 66(%sp),%d0 + move.l %d5,70(%sp) + mulu.w 978(%sp),%d1 + add.l 58(%sp),%a5 + add.l %d5,%d0 + remu.l %d6,%d5:%d0 + mvz.w #254,%d6 + sub.l 58(%sp),%a4 + move.l %a5,74(%sp) + move.l 50(%sp),%d2 + move.l %d3,%a3 + divu.l %d6,%d1 + asr.l %d5,%d4 + move.l 78(%sp),%a5 + move.l %a2,82(%sp) + move.l 980(%sp),50(%sp) mov3q.l #1,%d0 - lsl.l %d2,%d0 - move.b %d1,89(%sp) - add.l 50(%sp),%a4 - clr.l 46(%sp) - move.l %a1,%a6 - move.l %a5,82(%sp) - move.l %d6,58(%sp) + and.l %d4,%d0 + move.b %d1,61(%sp) move.l %d0,78(%sp) -.L62: - move.l 46(%sp),%a5 - addq.l #1,46(%sp) - tst.b (%a3) - jeq .L44 - move.l #-2048144789,%d1 - clr.l %d3 - move.l 46(%sp),%d6 - clr.l %d5 - lea scales,%a1 - moveq #-12,%d0 - move.l 988(%sp),%d7 - muls.l %d1,%d6 - move.l 66(%sp),%a2 - move.l %a3,54(%sp) - mvz.w (%a1,%a2.l*2),%d2 - move.w #100,%a1 - eor.l %d7,%d6 - moveq #15,%d7 - eor.l #-1255572915,%d6 - move.l %d6,%d1 - clr.w %d1 - swap %d1 - eor.l %d6,%d1 - move.l #2146121005,%d6 - muls.l %d6,%d1 - move.l %d1,%d6 - lsr.l %d7,%d6 - eor.l %d6,%d1 - move.l #-2073254261,%d6 - muls.l %d6,%d1 - move.l %d1,%d6 - clr.w %d6 - swap %d6 - eor.l %d1,%d6 - move.l %d6,50(%sp) -.L53: - move.l %d0,%d1 - moveq #12,%d6 - add.l %a0,%d1 - remu.l %d6,%d7:%d1 - btst %d7,%d2 +.L54: + move.l %d7,%d6 + addq.l #1,%d7 + tst.b (%a0) jeq .L45 -.L110: - cmp.l %a6,%d0 - jge .L46 - move.l %d4,%d1 - add.l %d0,%d1 - tst.l %d1 - jlt .L109 - cmp.l %d1,%a1 - jle .L48 -.L113: - move.l %d0,%d3 - addq.l #1,%d0 - move.l %d1,%a1 - moveq #12,%d6 + move.l #-2048144789,%d1 + moveq #15,%d5 + muls.l %d7,%d1 + move.l 50(%sp),%d3 + move.l #2146121005,%d4 + eor.l %d3,%d1 + eor.l #-1255572915,%d1 + move.l %d1,%d0 + clr.w %d0 + swap %d0 + eor.l %d1,%d0 + muls.l %d4,%d0 move.l %d0,%d1 - add.l %a0,%d1 - remu.l %d6,%d7:%d1 - btst %d7,%d2 - jne .L110 -.L45: - addq.l #1,%d0 - moveq #13,%d1 - cmp.l %d0,%d1 - jne .L53 -.L115: - move.l 50(%sp),%d6 - move.l 54(%sp),%a3 - tst.l %d5 - jeq .L54 - move.l %d6,%d0 + lsr.l %d5,%d1 + eor.l %d1,%d0 + move.l #-2073254261,%d1 + muls.l %d1,%d0 + move.l %d0,%d1 + clr.w %d1 + swap %d1 + eor.l %d0,%d1 + tst.l %d2 + jeq .L62 + move.l %d1,%d0 lsr.l #8,%d0 - remu.l %d5,%d1:%d0 - lea (%sp,%d1.l*4),%a1 - move.l 100(%a1),%d3 - add.l #-12,%d3 -.L54: + remu.l %d2,%d4:%d0 + lea (%sp,%d4.l*4),%a6 + move.l 92(%a6),%d4 + add.l #-12,%d4 +.L46: moveq #15,%d0 - and.l %d6,%d0 - cmp.l 62(%sp),%d0 - jcc .L59 + and.l %d1,%d0 + cmp.l %a5,%d0 + jcc .L51 moveq #48,%d0 - and.l %d6,%d0 + and.l %d1,%d0 tst.l %d0 - jne .L71 - and.l 78(%sp),%d2 - tst.l %d2 - jne .L111 -.L71: - move.l 74(%sp),%d0 -.L56: - btst #6,%d6 - jeq .L57 + jne .L64 + tst.l 78(%sp) + jne .L101 +.L64: + move.l 66(%sp),%d0 +.L48: + btst #6,%d1 + jeq .L49 add.l #-12,%d0 -.L57: - cmp.l %a6,%d0 - jlt .L59 - cmp.l %d0,%a4 - jlt .L59 - move.l %d0,%d3 -.L59: - moveq #24,%d0 - mov3q.l #3,%d2 - move.l %d6,%d1 - lsr.l %d0,%d1 - muls.w #5,%d3 - remu.l %d2,%d0:%d1 - add.l #64,%d3 - move.b %d3,1(%a3) +.L49: + cmp.l %a4,%d0 + jlt .L51 + cmp.l 74(%sp),%d0 + jgt .L51 + move.l %d0,%d4 +.L51: + moveq #24,%d3 + move.l %d1,%d0 + lsr.l %d3,%d0 + mov3q.l #3,%d3 + muls.w #5,%d4 + move.l %d0,%d5 + remu.l %d3,%d0:%d5 + add.l #64,%d4 + move.b %d4,1(%a0) addq.l #2,%d0 - mulu.w 72(%sp),%d0 + mulu.w 64(%sp),%d0 lsr.l #2,%d0 - move.b %d0,2(%a3) - move.l %a5,%d0 - and.l %d2,%d0 + move.b %d0,2(%a0) + mov3q.l #3,%d0 + and.l %d6,%d0 tst.l %d0 - jeq .L60 - and.l #3145728,%d6 - tst.l %d6 - jeq .L60 - move.b 89(%sp),%d0 - move.b %d0,3(%a3) -.L44: - addq.l #4,%a3 - cmp.l 58(%sp),%a5 - jne .L62 - move.l 82(%sp),%a5 - tst.l 980(%sp) - jeq .L63 - mvz.b 95(%sp),%d0 - moveq #63,%d3 - cmp.l %d0,%d3 - jcs .L112 - move.l 980(%sp),%d6 - move.l %d6,%d1 - move.l 972(%sp),%a2 - move.l %d6,%d4 - move.l 976(%sp),%a0 - subq.l #1,%d4 - remu.l %d6,%d2:%d0 - move.b 10(%a0),%d3 - mvz.w %d6,%d0 - move.l 96(%sp),%a0 - move.l %d6,%d5 - lea (%a2,%d0.l*4),%a1 + jeq .L52 + and.l #3145728,%d1 + tst.l %d1 + jeq .L52 + move.b 61(%sp),%d0 + move.b %d0,3(%a0) +.L45: + addq.l #4,%a0 + cmp.l %a1,%d6 + jne .L54 + move.l 82(%sp),%a2 + move.l %a3,%d3 + tst.l 972(%sp) + jeq .L55 + mvz.b 91(%sp),%d0 + moveq #63,%d4 + cmp.l %d0,%d4 + jcs .L102 + move.l 972(%sp),%d5 + move.l 968(%sp),%a0 + move.l 964(%sp),%a3 + remu.l %d5,%d2:%d0 + move.b 10(%a0),%d4 + mvz.w %d5,%d0 + move.l 972(%sp),%d1 + subq.l #1,%d5 + lea (%a3,%d0.l*4),%a1 sub.l %d2,%d1 - move.l %a5,%d2 -.L66: + move.l 972(%sp),%d2 +.L58: move.l %d1,%d6 addq.l #1,%d1 - remu.l %d5,%d0:%d6 - tst.b %d3 - jeq .L65 - move.l %d4,%d6 + remu.l %d2,%d0:%d6 + tst.b %d4 + jeq .L57 + move.l %d5,%d6 sub.l %d0,%d6 move.l %d6,%d0 -.L65: - remu.l %d2,%d6:%d0 - lea (968,%sp),%a3 - lea (%a3,%d6.l*4),%a2 - move.l -256(%a2),(%a0)+ - cmp.l %a0,%a1 - jne .L66 -.L63: +.L57: + remu.l %d3,%d6:%d0 + lea (960,%sp),%a3 + lea (%a3,%d6.l*4),%a0 + move.l -256(%a0),(%a2)+ + cmp.l %a1,%a2 + jne .L58 +.L55: movem.l (%sp),#31996 mov3q.l #1,%d0 - lea (968,%sp),%sp + lea (960,%sp),%sp rts -.L109: +.L99: neg.l %d1 - cmp.l %d1,%a1 - jgt .L113 -.L48: + cmp.l %d1,%d7 + jgt .L103 +.L37: addq.l #1,%d0 - jra .L53 -.L46: - cmp.l %a4,%d0 - jgt .L50 - lea (%sp,%d5.l*4),%a2 - move.l %d0,%a3 - addq.l #1,%d5 - lea (12,%a3),%a3 - move.l %a3,100(%a2) -.L50: - move.l %d4,%d1 + jra .L42 +.L35: + cmp.l %a5,%d0 + jgt .L39 + move.l 50(%sp),%d1 + move.l %d0,%a0 + lea (12,%a0),%a0 + lea (%sp,%d1.l*4),%a6 + addq.l #1,%d1 + move.l %d1,50(%sp) + move.l %a0,92(%a6) +.L39: + move.l %a4,%d1 add.l %d0,%d1 tst.l %d1 - jlt .L114 -.L51: - cmp.l %d1,%a1 - jle .L45 - move.l %d1,%a1 - move.l %d0,%d3 - moveq #13,%d1 + jlt .L104 +.L40: + cmp.l %d1,%d7 + jle .L34 + move.l %d0,54(%sp) + move.l %d1,%d7 addq.l #1,%d0 + moveq #13,%d1 cmp.l %d0,%d1 - jne .L53 - jra .L115 -.L114: + jne .L42 + jra .L105 +.L104: neg.l %d1 - jra .L51 -.L60: - move.b 987(%sp),%d0 - move.b %d0,3(%a3) - jra .L44 -.L112: - move.l 980(%sp),%d6 + jra .L40 +.L52: + move.b 979(%sp),%d0 + move.b %d0,3(%a0) + jra .L45 +.L62: + move.l 54(%sp),%d4 + jra .L46 +.L102: + move.l 972(%sp),%d5 moveq #63,%d0 - move.l 976(%sp),%a0 - move.l %d6,%d1 - move.l 972(%sp),%a2 - move.l %d6,%d4 - remu.l %d6,%d2:%d0 - move.b 10(%a0),%d3 - mvz.w %d6,%d0 - move.l 96(%sp),%a0 - subq.l #1,%d4 - move.l %d6,%d5 + move.l 968(%sp),%a0 + move.l 964(%sp),%a3 + remu.l %d5,%d2:%d0 + move.l 972(%sp),%d1 + mvz.w %d5,%d0 + move.b 10(%a0),%d4 + subq.l #1,%d5 sub.l %d2,%d1 - lea (%a2,%d0.l*4),%a1 - move.l %a5,%d2 - jra .L66 -.L111: - move.l 90(%sp),%d0 - jra .L56 -.L106: - move.l 972(%sp),%a0 - move.l %d0,%d4 - lea (712,%sp),%a3 - lea (968,%sp),%a6 - move.b 983(%sp),256(%a0) - move.l %a0,96(%sp) - move.l %a3,%a1 - jra .L35 -.L105: + lea (%a3,%d0.l*4),%a1 + move.l 972(%sp),%d2 + jra .L58 +.L101: + move.l 70(%sp),%d0 + jra .L48 +.L96: + move.l 964(%sp),%a0 + move.l %d0,%d6 + move.l 964(%sp),%a2 + move.l %sp,%d0 + move.l %a2,%a1 + add.l #960,%d0 + move.b 975(%sp),256(%a0) + lea (704,%sp),%a0 + move.l %a0,%a3 + jra .L27 +.L95: mvz.b %d0,%d0 - moveq #64,%d4 - cmp.l %d4,%d0 - jcc .L32 - jra .L106 + moveq #64,%d6 + cmp.l %d6,%d0 + jcc .L24 + jra .L96 .size vector_generate.part.0, .-vector_generate.part.0 .align 2 + .type generator_page, @function +generator_page: + lea (-32,%sp),%sp + movem.l #15420,(%sp) + tst.l src_page_ready + jeq .L107 + move.l 36(%sp),%d0 + cmp.l src_page_source.l,%d0 + jeq .L108 +.L107: + lea src_page,%a0 + move.l 36(%sp),%a1 + sub.l %a0,%a1 +.L109: + move.b (%a1,%a0.l),%d0 + move.b %d0,(%a0)+ + cmp.l #src_page+402,%a0 + jne .L109 + lea vector_control_names,%a5 + clr.l %d2 + lea src_page+202,%a1 + lea (formats.7),%a4 + lea src_page+22,%a2 + move.l #src_page+28,%d1 +.L116: + move.l (%a5)+,%a3 + sub.l %a0,%a0 +.L110: + move.b (%a3,%a0.l),%d0 + jeq .L111 + move.b %d0,(%a2,%a0.l) + addq.l #1,%a0 + mov3q.l #5,%d3 + cmp.l %a0,%d3 + jne .L110 +.L111: + add.l %a2,%a0 +.L113: + clr.b (%a0)+ + cmp.l %a0,%d1 + jne .L113 + move.l (%a4)+,%d0 + move.l %d0,%d3 + clr.w %d3 + swap %d3 + moveq #24,%d4 + move.l %d0,%d5 + lsr.l %d4,%d5 + move.l %d0,%d4 + lsr.l #8,%d4 + move.b %d0,3(%a1) + mov3q.l #5,%d0 + move.b %d5,(%a1) + move.b %d4,2(%a1) + move.b %d3,1(%a1) + cmp.l %d2,%d0 + jcs .L117 + move.l #generator_widget,%d0 + moveq #24,%d4 + move.l %d0,%d3 + move.l %d0,%d5 + clr.w %d3 + swap %d3 + lsr.l %d4,%d5 + move.l %d0,%d4 + lsr.l #8,%d4 + move.b %d0,51(%a1) + addq.l #4,%a1 + move.b %d5,44(%a1) + move.b %d4,46(%a1) + addq.l #1,%d2 + addq.l #6,%a2 + addq.l #6,%d1 + moveq #12,%d0 + move.b %d3,45(%a1) + cmp.l %d2,%d0 + jne .L116 +.L127: + mvz.w #21845,%d3 + move.l 36(%sp),%d0 + move.l #1431655765,%d4 + move.l %d4,src_page+398 + mov3q.l #1,src_page_ready + move.l %d3,src_page+394 + move.l %d0,src_page_source +.L108: + move.l #src_page,%d0 + movem.l (%sp),#15420 + lea (32,%sp),%sp + rts +.L117: + move.l #secondary_widget,%d0 + moveq #24,%d4 + move.l %d0,%d3 + move.l %d0,%d5 + clr.w %d3 + swap %d3 + lsr.l %d4,%d5 + move.l %d0,%d4 + lsr.l #8,%d4 + move.b %d0,51(%a1) + addq.l #4,%a1 + move.b %d5,44(%a1) + move.b %d4,46(%a1) + addq.l #1,%d2 + addq.l #6,%a2 + addq.l #6,%d1 + moveq #12,%d0 + move.b %d3,45(%a1) + cmp.l %d2,%d0 + jne .L116 + jra .L127 + .size generator_page, .-generator_page + .section .rodata.str1.1,"aMS",@progbits,1 +.LC0: + .string "VEC" + .text + .align 2 + .type vector_midi_page, @function +vector_midi_page: + lea (-32,%sp),%sp + move.l 40(%sp),%d1 + movem.l #31772,(%sp) + move.l 36(%sp),%a1 + tst.l %d1 + jeq .L129 + mov3q.l #1,%d1 + and.l 44(%sp),%d1 + addq.l #1,%d1 +.L129: + lea 1(%a1,%d1.l),%a0 + move.l %d1,midi_view + move.l %a0,%d4 + tst.l src_page_ready + jne .L130 + cmp.l midi_page_built.l,%a0 + jeq .L131 +.L130: + lea src_page,%a0 + sub.l %a0,%a1 +.L132: + move.b (%a1,%a0.l),%d0 + move.b %d0,(%a0)+ + cmp.l #src_page+402,%a0 + jne .L132 + lea .LC0,%a1 + sub.l %a0,%a0 + lea src_page+4,%a2 +.L133: + move.b (%a1),%d0 + addq.l #1,%a1 + tst.b %d0 + jeq .L134 + move.b %d0,(%a2)+ + addq.l #1,%a0 + mov3q.l #5,%d0 + cmp.l %a0,%d0 + jne .L133 +.L134: + add.l #src_page+4,%a0 +.L136: + clr.b (%a0)+ + cmp.l #src_page+10,%a0 + jne .L136 + move.w %d1,%d2 + lea src_page+9,%a0 + mulu.w #13,%d2 + move.l %d2,%a1 + add.l #titles.2,%a1 +.L138: + move.b (%a1)+,(%a0)+ + cmp.l #src_page+22,%a0 + jne .L138 + move.w %d1,%d0 + lea (formats.1),%a6 + lea src_page+202,%a1 + move.l #src_page+28,%d1 + lea midi_names,%a3 + mulu.w #6,%d0 + move.l %d0,%a5 + add.l #midi_layout,%a5 +.L144: + mvz.b (%a5)+,%d0 + move.l %d1,%a2 + sub.l %a0,%a0 + subq.l #6,%a2 + move.l (%a3,%d0.l*4),%a4 +.L139: + move.b (%a4,%a0.l),%d0 + jeq .L140 + move.b %d0,(%a2,%a0.l) + addq.l #1,%a0 + mov3q.l #5,%d0 + cmp.l %a0,%d0 + jne .L139 +.L140: + add.l %a2,%a0 +.L142: + clr.b (%a0)+ + cmp.l %a0,%d1 + jne .L142 + moveq #64,%d2 + move.l (%a6)+,%d0 + moveq #24,%d1 + move.l %d0,%d3 + lsr.l %d1,%d3 + move.l %d0,%d1 + lsr.l #8,%d1 + move.b %d0,3(%a1) + addq.l #4,%a1 + move.b %d3,-4(%a1) + move.b %d1,-2(%a1) + moveq #103,%d1 + move.b %d2,44(%a1) + move.l %d0,%d2 + moveq #4,%d0 + clr.w %d2 + swap %d2 + move.b %d1,46(%a1) + move.l %a0,%d1 + addq.l #6,%d1 + move.b %d0,45(%a1) + moveq #-92,%d0 + move.b %d0,47(%a1) + move.b %d2,-3(%a1) + cmp.l #formats.1+24,%a6 + jne .L144 + mvz.w #21845,%d1 + move.l #1431655765,%d2 + move.l %d2,src_page+398 + clr.l src_page_ready + move.l %d1,src_page+394 + move.l %d4,midi_page_built +.L131: + move.l #src_page,%d0 + movem.l (%sp),#31772 + lea (32,%sp),%sp + rts + .size vector_midi_page, .-vector_midi_page + .align 2 .type settings, @function settings: lea (-44,%sp),%sp @@ -640,35 +862,35 @@ settings: mvz.b 62(%a0,%d0.l),%d1 subq.l #1,%d1 tst.l %d1 - jeq .L140 + jeq .L187 lea (23,%sp),%a6 sub.l %a1,%a1 -.L125: +.L172: move.l %a1,%d1 add.l #489,%d1 add.l %d0,%d1 mov3q.l #2,%d2 cmp.l %a1,%d2 - jcc .L141 -.L122: + jcc .L188 +.L169: move.b (%a0,%d1.l),(%a6) addq.l #1,%a1 moveq #9,%d1 cmp.l %a1,%d1 - jeq .L124 + jeq .L171 move.l %a1,%d1 add.l #489,%d1 addq.l #1,%a6 add.l %d0,%d1 mov3q.l #2,%d2 cmp.l %a1,%d2 - jcs .L122 -.L141: + jcs .L169 +.L188: lea 63(%a1,%d0.l),%a2 addq.l #1,%a1 move.b (%a0,%a2.l),(%a6)+ - jra .L125 -.L124: + jra .L172 +.L171: move.b 23(%sp),%d0 moveq #15,%d1 mov3q.l #4,%d2 @@ -678,7 +900,7 @@ settings: move.w %d0,%a0 move.b %d1,32(%sp) cmp.l %d0,%d2 - jcs .L142 + jcs .L189 move.w %a0,%d0 move.b 24(%sp),%d1 moveq #16,%d2 @@ -687,8 +909,8 @@ settings: and.l %d1,%d0 move.w %d0,%a0 cmp.l %d0,%d2 - jcs .L143 -.L127: + jcs .L190 +.L174: move.w %a0,%d2 move.b 25(%sp),%d0 lsr.l #5,%d1 @@ -702,54 +924,54 @@ settings: move.l %d2,%a0 moveq #11,%d2 cmp.l %a0,%d2 - jcs .L144 -.L128: + jcs .L191 +.L175: mvz.b %d0,%d0 lsr.l #4,%d0 move.b %d1,34(%sp) moveq #12,%d1 move.w %d0,%a0 cmp.l %d0,%d1 - jcs .L145 -.L129: + jcs .L192 +.L176: move.b 26(%sp),%d1 move.w %a0,%d2 mvz.b %d1,%d0 move.b %d2,38(%sp) moveq #126,%d2 cmp.l %d0,%d2 - jcs .L146 -.L130: + jcs .L193 +.L177: move.b 27(%sp),%d0 move.b %d1,36(%sp) tst.b %d0 - jlt .L147 -.L131: + jlt .L194 +.L178: move.b 28(%sp),%d1 move.b %d0,37(%sp) moveq #24,%d2 mvz.b %d1,%d0 cmp.l %d0,%d2 - jcs .L148 -.L132: + jcs .L195 +.L179: mvz.b 29(%sp),%d0 move.b %d1,39(%sp) moveq #63,%d1 cmp.l %d0,%d1 - jcs .L149 -.L133: + jcs .L196 +.L180: move.b 30(%sp),%d1 lsl.l #8,%d0 mvz.b %d1,%d2 move.l %d2,%a0 moveq #64,%d2 cmp.l %a0,%d2 - jcs .L150 -.L134: + jcs .L197 +.L181: move.b %d1,%d0 lea (32,%sp),%a3 move.w %d0,40(%sp) -.L120: +.L167: move.l 16(%sp),%a0 move.l %a0,%d0 move.l (%a3),(%a0)+ @@ -759,13 +981,13 @@ settings: move.b 42(%sp),(%a0) lea (44,%sp),%sp rts -.L150: +.L197: moveq #64,%d1 lea (32,%sp),%a3 move.b %d1,%d0 move.w %d0,40(%sp) - jra .L120 -.L149: + jra .L167 +.L196: move.b 30(%sp),%d1 moveq #63,%d0 lsl.l #8,%d0 @@ -773,33 +995,33 @@ settings: move.l %d2,%a0 moveq #64,%d2 cmp.l %a0,%d2 - jcc .L134 - jra .L150 -.L148: + jcc .L181 + jra .L197 +.L195: moveq #24,%d1 mvz.b 29(%sp),%d0 move.b %d1,39(%sp) moveq #63,%d1 cmp.l %d0,%d1 - jcc .L133 - jra .L149 -.L147: + jcc .L180 + jra .L196 +.L194: moveq #127,%d0 move.b 28(%sp),%d1 moveq #24,%d2 move.b %d0,37(%sp) mvz.b %d1,%d0 cmp.l %d0,%d2 - jcc .L132 - jra .L148 -.L146: + jcc .L179 + jra .L195 +.L193: moveq #126,%d1 move.b 27(%sp),%d0 move.b %d1,36(%sp) tst.b %d0 - jge .L131 - jra .L147 -.L145: + jge .L178 + jra .L194 +.L192: move.w #12,%a0 move.b 26(%sp),%d1 move.w %a0,%d2 @@ -807,9 +1029,9 @@ settings: move.b %d2,38(%sp) moveq #126,%d2 cmp.l %d0,%d2 - jcc .L130 - jra .L146 -.L144: + jcc .L177 + jra .L193 +.L191: moveq #11,%d1 mvz.b %d0,%d0 lsr.l #4,%d0 @@ -817,9 +1039,9 @@ settings: move.b %d1,34(%sp) moveq #12,%d1 cmp.l %d0,%d1 - jcc .L129 - jra .L145 -.L143: + jcc .L176 + jra .L192 +.L190: move.w #16,%a0 move.b 25(%sp),%d0 lsr.l #5,%d1 @@ -834,9 +1056,9 @@ settings: move.l %d2,%a0 moveq #11,%d2 cmp.l %a0,%d2 - jcc .L128 - jra .L144 -.L142: + jcc .L175 + jra .L191 +.L189: move.w #4,%a0 move.b 24(%sp),%d1 moveq #16,%d2 @@ -846,21 +1068,21 @@ settings: and.l %d1,%d0 move.w %d0,%a0 cmp.l %d0,%d2 - jcc .L127 - jra .L143 -.L140: + jcc .L174 + jra .L190 +.L187: lea (32,%sp),%a3 sub.l %a1,%a1 move.l %a3,%a2 -.L121: +.L168: move.l %a1,%d1 add.l #489,%d1 lea 63(%a1,%d0.l),%a6 add.l %d0,%d1 mov3q.l #2,%d2 cmp.l %a1,%d2 - jcs .L118 -.L151: + jcs .L165 +.L198: addq.l #1,%a1 move.b (%a0,%a6.l),(%a2)+ move.l %a1,%d1 @@ -869,621 +1091,898 @@ settings: add.l %d0,%d1 mov3q.l #2,%d2 cmp.l %a1,%d2 - jcc .L151 -.L118: + jcc .L198 +.L165: move.b (%a0,%d1.l),(%a2) addq.l #1,%a1 mov3q.l #6,%d1 cmp.l %a1,%d1 - jeq .L120 + jeq .L167 addq.l #1,%a2 - jra .L121 + jra .L168 .size settings, .-settings .align 2 - .type any_vector, @function -any_vector: - move.l 1187521622,%d0 - add.l #-1073741824,%d0 + .type midi_control, @function +midi_control: + subq.l #8,%sp + move.l %a2,-(%sp) move.l %d2,-(%sp) - cmp.l #133169151,%d0 - jhi .L157 - move.w #34,%a1 - moveq #60,%d1 -.L153: + moveq #15,%d2 + move.l 24(%sp),%a0 + move.l 1187521622,%d0 + move.b 269161679,%d1 + cmp.l %a0,%d2 + jcs .L208 mov3q.l #3,%d2 - move.l 1187521622,%a0 - add.l #585088,%a0 - move.b 269161679,%d0 - and.l %d2,%d0 + and.l %d2,%d1 + move.l 20(%sp),%d2 + add.l #585088,%d0 + lsl.l #5,%d2 + move.l %d2,%a1 mvz.w #6322,%d2 - muls.l %d2,%d0 - mov3q.l #1,%d2 - add.l %d0,%a0 - mvz.b (%a0,%a1.l),%d0 - add.l %d1,%a0 - addq.l #1,%a1 - add.l #30,%d1 - cmp.l %d0,%d2 - jcs .L155 - mvz.b (%a0),%d0 - moveq #83,%d2 - cmp.l %d0,%d2 - jeq .L168 -.L155: - cmp.l #300,%d1 - jne .L153 -.L157: - move.l (%sp)+,%d2 - clr.l %d0 - rts -.L168: - mvz.b 1(%a0),%d0 - moveq #50,%d2 - cmp.l %d0,%d2 - jne .L155 - mvz.b 2(%a0),%d0 - subq.l #1,%d0 - tst.l %d0 - jeq .L156 - mvz.b 2(%a0),%d0 - subq.l #2,%d0 - tst.l %d0 - jne .L155 -.L156: + lea (994,%a1),%a1 + muls.l %d2,%d1 + add.l %d1,%d0 + add.l %d0,%a1 + moveq #12,%d0 + cmp.l %a0,%d0 + jeq .L211 + moveq #13,%d0 + cmp.l %a0,%d0 + jeq .L212 + mov3q.l #4,%d1 + cmp.l %a0,%d1 + jne .L204 + mvz.b 2(%a1),%d1 +.L202: + lea midi_max,%a1 + mvz.b (%a1,%a0.l),%d0 + cmp.l %d0,%d1 + jcc .L199 + move.l %d1,%d0 +.L199: move.l (%sp)+,%d2 - mov3q.l #1,%d0 + move.l (%sp)+,%a2 + addq.l #8,%sp rts - .size any_vector, .-any_vector - .align 2 - .type draw_generator_widget.part.0, @function -draw_generator_widget.part.0: - lea (-12,%sp),%sp - move.l %a6,-(%sp) - move.l %d2,-(%sp) - mvz.b 269161676,%d0 - move.l 36(%sp),%a6 - move.l %d0,-(%sp) - lea (13,%sp),%a0 - jsr settings - addq.l #4,%sp - mov3q.l #6,%d0 - cmp.l %a6,%d0 - jeq .L177 - mov3q.l #5,%d2 - move.l %a6,%d0 - cmp.l %a6,%d2 - jcc .L172 - subq.l #1,%d0 -.L172: - mvz.b 9(%sp,%d0.l),%d0 - move.l %d0,%a0 -.L171: - move.l 48(%sp),-(%sp) - move.l 48(%sp),-(%sp) - moveq #-2,%d0 - and.l 48(%sp),%d0 - lea vector_control_max,%a1 - mvz.b (%a1,%a6.l),%d1 - move.l %d0,-(%sp) - move.l %d1,%d0 - cmp.l %d1,%a0 - jcc .L173 - move.l %a0,%d0 -.L173: - mulu.w #127,%d0 - divu.l %d1,%d0 - move.l %d0,-(%sp) - move.l 48(%sp),-(%sp) - move.l 48(%sp),-(%sp) - move.l 48(%sp),-(%sp) - jsr 1074035124 - lea (28,%sp),%sp +.L211: + mvz.b (%a1),%d1 + moveq #19,%d2 + mulu.w #43691,%d1 + lsr.l %d2,%d1 + jra .L202 +.L208: move.l (%sp)+,%d2 - move.l (%sp)+,%a6 - lea (12,%sp),%sp + clr.l %d0 + move.l (%sp)+,%a2 + addq.l #8,%sp rts -.L177: - move.b 269161676,%d0 +.L204: move.l 1187521622,%a1 mov3q.l #3,%d2 - move.b 269161679,%d1 + move.b 269161679,%d0 + move.l 20(%sp),%d1 add.l #585088,%a1 - mvz.b %d0,%d0 - and.l %d2,%d1 - mulu.w #30,%d0 - move.l %d0,%a0 - mvz.w #6322,%d0 - lea (497,%a0),%a0 - muls.l %d0,%d1 - add.l %d1,%a1 - move.b (%a1,%a0.l),%d0 - moveq #127,%d1 - and.l %d0,%d1 - move.l %d1,%a0 - jra .L171 - .size draw_generator_widget.part.0, .-draw_generator_widget.part.0 - .align 2 - .type secondary_widget, @function -secondary_widget: - subq.l #8,%sp - move.l %d2,-(%sp) - moveq #11,%d2 - move.l 24(%sp),%d0 - move.l %d0,%d1 - move.l 16(%sp),%a0 - addq.l #6,%d1 - move.l 20(%sp),%a1 - move.l 32(%sp),4(%sp) - move.l 36(%sp),8(%sp) - cmp.l %d1,%d2 - jcc .L182 + lsl.l #4,%d1 + and.l %d2,%d0 + mvz.w #6322,%d2 + move.l %d1,%a2 + lea (6206,%a2),%a2 + muls.l %d2,%d0 + moveq #22,%d2 + add.l %d0,%a1 + mvz.b (%a1,%a2.l),%d0 + cmp.l %d0,%d2 + jeq .L205 + mov3q.l #6,%d0 + cmp.l %a0,%d0 + jeq .L213 move.l (%sp)+,%d2 + lea (first.3),%a1 + mvz.b (%a1,%a0.l),%d0 + move.l (%sp)+,%a2 addq.l #8,%sp rts -.L182: - move.l 8(%sp),36(%sp) - move.l 4(%sp),32(%sp) - move.l %d1,28(%sp) - move.l %d0,24(%sp) - move.l %a1,20(%sp) - move.l %a0,16(%sp) - move.l (%sp)+,%d2 - addq.l #8,%sp - jra (draw_generator_widget.part.0) - .size secondary_widget, .-secondary_widget - .align 2 - .type generator_widget, @function -generator_widget: - subq.l #4,%sp - move.l %d2,-(%sp) - moveq #11,%d2 +.L212: + mvz.b 1(%a1),%d1 + jra .L202 +.L205: + move.l 1187521622,%d0 + add.l #585088,%d0 + move.b 269161679,%d2 + move.l %d0,12(%sp) + lea midi_byte,%a1 + mvz.b (%a1,%a0.l),%d0 + move.l %d0,%a1 + add.l %d1,%a1 + mov3q.l #3,%d1 + move.b %d2,%d0 + mvz.w #6322,%d2 + lea (6194,%a1),%a1 + and.l %d1,%d0 + muls.l %d2,%d0 + add.l 12(%sp),%d0 + move.b (%a1,%d0.l),%d1 + add.l #64,%d1 + mvz.b %d1,%d1 + jra .L202 +.L213: move.l 20(%sp),%d0 - move.l 12(%sp),%d1 - move.l 16(%sp),%a0 - move.l 28(%sp),%a1 - move.l 32(%sp),4(%sp) - cmp.l %d0,%d2 - jcc .L187 + addq.l #1,%d0 move.l (%sp)+,%d2 - addq.l #4,%sp + move.l (%sp)+,%a2 + addq.l #8,%sp rts -.L187: - move.l 4(%sp),32(%sp) - move.l %a1,28(%sp) - move.l %d0,24(%sp) - move.l %d0,20(%sp) - move.l %a0,16(%sp) - move.l %d1,12(%sp) - move.l (%sp)+,%d2 - addq.l #4,%sp - jra (draw_generator_widget.part.0) - .size generator_widget, .-generator_widget - .section .rodata.str1.1,"aMS",@progbits,1 -.LC0: - .string "FWD" + .size midi_control, .-midi_control + .section .rodata.str1.1 .LC1: .string "OFF" .LC2: + .string "FWD" +.LC3: + .string "" +.LC4: .string "REV" .text .align 2 - .type format_control, @function -format_control: - lea (-28,%sp),%sp - movem.l #16412,(%sp) - move.l 36(%sp),%d2 - lea (17,%sp),%a0 - mvz.b 269161676,%d0 - move.l %d0,-(%sp) - jsr settings - addq.l #4,%sp - mov3q.l #6,%d0 + .type midi_format, @function +midi_format: + lea (-24,%sp),%sp + movem.l #3100,(%sp) + move.l 32(%sp),%d2 + move.l 28(%sp),%a2 + mvz.b 269161676,%d3 + move.l %d2,-(%sp) + move.l %d3,-(%sp) + jsr midi_control + addq.l #8,%sp + move.l %d0,%d1 + mov3q.l #4,%d0 cmp.l %d2,%d0 - jeq .L216 - mov3q.l #5,%d0 + jeq .L249 + moveq #12,%d4 + cmp.l %d2,%d4 + jeq .L250 + mov3q.l #2,%d0 cmp.l %d2,%d0 - jcs .L191 - mvz.b 17(%sp,%d2.l),%d0 - move.l %d2,%d1 - mov3q.l #1,%d3 - subq.l #2,%d1 - cmp.l %d1,%d3 - jcs .L190 - subq.l #2,%d2 - tst.l %d2 - jeq .L217 - mov3q.l #5,%d3 - remu.l %d3,%d1:%d0 - lea vector_scale_names,%a0 - move.l 32(%sp),%a1 - move.l (%a0,%d1.l*4),%a0 -.L197: - move.b (%a0)+,%d0 - move.b %d0,(%a1)+ - jne .L197 -.L188: - movem.l (%sp),#16412 - lea (28,%sp),%sp - rts -.L191: - mvz.b 16(%sp,%d2.l),%d0 - moveq #11,%d4 + jeq .L251 + mov3q.l #3,%d3 + cmp.l %d2,%d3 + jeq .L252 + moveq #11,%d0 + cmp.l %d2,%d0 + jeq .L253 + moveq #10,%d3 + cmp.l %d2,%d3 + jeq .L254 + moveq #14,%d4 cmp.l %d2,%d4 - jne .L218 - tst.l %d0 - jeq .L208 - move.l 32(%sp),%a1 - lea .LC2,%a0 -.L201: + jeq .L255 + moveq #16,%d0 + cmp.l %d2,%d0 + jne .L256 + lea .LC3,%a0 +.L227: move.b (%a0)+,%d0 - move.b %d0,(%a1)+ - jeq .L188 + move.b %d0,(%a2)+ + jne .L227 +.L214: + movem.l (%sp),#3100 + lea (24,%sp),%sp + rts +.L251: + moveq #12,%d2 + remu.l %d2,%d0:%d1 + lea (roots.0),%a0 + move.l (%a0,%d0.l*4),%a0 move.b (%a0)+,%d0 - move.b %d0,(%a1)+ - jne .L201 - jra .L188 -.L216: - move.b 269161676,%d0 - move.l 1187521622,%a1 - mov3q.l #3,%d2 - move.b 269161679,%d1 - mvz.w #6322,%d3 - add.l #585088,%a1 - moveq #127,%d4 - mvz.b %d0,%d0 - and.l %d2,%d1 - mulu.w #30,%d0 - move.l %d0,%a0 - muls.l %d3,%d1 - lea (497,%a0),%a0 - add.l %d1,%a1 - move.b (%a1,%a0.l),%d0 - and.l %d4,%d0 -.L190: + move.b %d0,(%a2)+ + jne .L227 + jra .L214 +.L249: + move.l %a2,28(%sp) + movem.l (%sp),#3100 + move.l %d1,32(%sp) + move.l 1074609936,%a1 + lea (24,%sp),%sp + jmp (%a1) +.L254: + tst.l %d1 + jne .L245 +.L222: + lea .LC1,%a0 + move.b (%a0)+,%d0 + move.b %d0,(%a2)+ + jne .L227 + jra .L214 +.L256: + subq.l #8,%d2 + tst.l %d2 + jne .L245 + move.l %d1,%d0 + add.l #-12,%d0 + tst.l %d0 + jlt .L257 + move.l %d0,%d1 +.L245: + move.l %a2,%a1 + mov3q.l #1,%a0 + clr.l %d0 +.L230: moveq #99,%d3 - cmp.l %d0,%d3 - jcc .L209 -.L220: + cmp.l %d1,%d3 + jcc .L232 moveq #100,%d4 moveq #10,%d3 - move.l %d0,%d1 - mov3q.l #2,%a6 - divu.l %d4,%d1 - move.l 32(%sp),%a0 - mov3q.l #3,%a1 - add.l #48,%d1 - move.b %d1,(%a0)+ - move.l %d0,%d1 - divu.l %d3,%d1 - move.l %d1,%d2 + move.l %d1,%d0 + divu.l %d4,%d0 + add.l #48,%d0 + move.b %d0,(%a1) + move.l %d1,%d0 + divu.l %d3,%d0 + lea 1(%a2,%a0.l),%a1 + move.l %d0,%d2 remu.l %d3,%d4:%d2 - move.l %d4,%d1 - add.l #48,%d1 - move.b %d1,(%a0) - move.l 32(%sp),%a0 - add.l %a6,%a0 -.L206: + move.l %d4,%d0 + add.l #48,%d0 + move.b %d0,(%a2,%a0.l) + addq.l #2,%a0 +.L234: moveq #10,%d2 - remu.l %d2,%d1:%d0 + remu.l %d2,%d0:%d1 clr.b %d3 - add.l #48,%d1 - move.b %d1,(%a0) - move.l 32(%sp),%a0 - move.b %d3,(%a0,%a1.l) - movem.l (%sp),#16412 - lea (28,%sp),%sp + add.l #48,%d0 + move.b %d0,(%a1) + move.b %d3,(%a2,%a0.l) + movem.l (%sp),#3100 + lea (24,%sp),%sp rts -.L209: - move.l 32(%sp),%a0 - mov3q.l #1,%a1 - clr.l %d1 +.L232: moveq #9,%d2 - cmp.l %d0,%d2 - jcc .L206 -.L221: - move.l %a1,%a6 + cmp.l %d1,%d2 + jcc .L234 + move.l %d0,%a0 moveq #10,%d3 - move.l %d1,%a1 - move.l %d0,%d1 - divu.l %d3,%d1 - addq.l #2,%a1 - move.l %d1,%d2 + move.l %d1,%d0 + divu.l %d3,%d0 + lea 1(%a2,%a0.l),%a1 + move.l %d0,%d2 remu.l %d3,%d4:%d2 - move.l %d4,%d1 - add.l #48,%d1 - move.b %d1,(%a0) - move.l 32(%sp),%a0 - add.l %a6,%a0 - jra .L206 -.L208: - move.l 32(%sp),%a1 - lea .LC0,%a0 - jra .L201 -.L217: - moveq #12,%d2 - remu.l %d2,%d1:%d0 - lea (roots.1),%a0 - move.l 32(%sp),%a1 - move.l (%a0,%d1.l*4),%a0 - jra .L197 -.L218: - moveq #10,%d4 - cmp.l %d2,%d4 - jne .L199 - tst.l %d0 - jne .L190 - move.l 32(%sp),%a1 - lea .LC1,%a0 - jra .L201 -.L199: - subq.l #8,%d2 - tst.l %d2 - jne .L190 - move.l %d0,%d1 - add.l #-12,%d1 + move.l %d4,%d0 + add.l #48,%d0 + move.b %d0,(%a2,%a0.l) + addq.l #2,%a0 + jra .L234 +.L252: + mov3q.l #5,%d4 + remu.l %d4,%d0:%d1 + lea vector_scale_names,%a0 + move.l (%a0,%d0.l*4),%a0 + move.b (%a0)+,%d0 + move.b %d0,(%a2)+ + jne .L227 + jra .L214 +.L253: tst.l %d1 - jlt .L219 - move.l %d1,%d0 - moveq #99,%d3 - cmp.l %d0,%d3 - jcs .L220 - jra .L209 -.L219: - move.l 32(%sp),%a0 + jeq .L235 + lea .LC4,%a0 + move.b (%a0)+,%d0 + move.b %d0,(%a2)+ + jne .L227 + jra .L214 +.L250: + move.l 1074609928,%d2 + mov3q.l #2,-(%sp) + move.l %d3,-(%sp) + move.l %d1,28(%sp) + jsr midi_control + move.l %a2,36(%sp) + move.l 28(%sp),%d1 + move.l %d2,%a1 + muls.l %d4,%d1 + movem.l 8(%sp),#3100 + add.l %d0,%d1 + move.l %d1,40(%sp) + lea (32,%sp),%sp + jmp (%a1) +.L235: + lea .LC2,%a0 + move.b (%a0)+,%d0 + move.b %d0,(%a2)+ + jne .L227 + jra .L214 +.L257: moveq #12,%d2 - sub.l %d0,%d2 - move.l %d2,%d0 - mov3q.l #2,%a1 - move.b #45,(%a0)+ - mov3q.l #1,%d1 - moveq #9,%d2 - cmp.l %d0,%d2 - jcc .L206 - jra .L221 - .size format_control, .-format_control + mov3q.l #2,%a0 + move.l %a2,%a1 + sub.l %d1,%d2 + move.b #45,(%a1)+ + move.l %d2,%d1 + mov3q.l #1,%d0 + jra .L230 +.L255: + tst.l %d1 + jeq .L222 + move.l #268618112,%d0 + sub.l %d1,%d0 + lsl.l #2,%d0 + move.l %d0,%a1 + move.l (%a1),%a0 + tst.l %a0 + jne .L227 + move.l %a2,%a1 + mov3q.l #1,%a0 + clr.l %d0 + jra .L230 + .size midi_format, .-midi_format .align 2 - .type format_10, @function -format_10: - moveq #10,%d0 + .type midi_format_0, @function +midi_format_0: + move.l midi_view,%d0 + mov3q.l #6,%d1 + lea midi_layout,%a0 + muls.l %d1,%d0 + mvz.b (%a0,%d0.l),%d0 move.l %d0,8(%sp) - jra format_control - .size format_10, .-format_10 + jra midi_format + .size midi_format_0, .-midi_format_0 .align 2 - .type format_8, @function -format_8: - moveq #8,%d0 + .type midi_format_1, @function +midi_format_1: + move.l midi_view,%d0 + mov3q.l #6,%d1 + muls.l %d1,%d0 + move.l %d0,%a0 + add.l #midi_layout+1,%a0 + mvz.b (%a0),%d0 move.l %d0,8(%sp) - jra format_control - .size format_8, .-format_8 + jra midi_format + .size midi_format_1, .-midi_format_1 .align 2 - .type format_6, @function -format_6: - mov3q.l #6,8(%sp) - jra format_control - .size format_6, .-format_6 + .type midi_format_2, @function +midi_format_2: + move.l midi_view,%d0 + mov3q.l #6,%d1 + muls.l %d1,%d0 + move.l %d0,%a0 + add.l #midi_layout+2,%a0 + mvz.b (%a0),%d0 + move.l %d0,8(%sp) + jra midi_format + .size midi_format_2, .-midi_format_2 .align 2 - .type format_11, @function -format_11: - mvz.b 269161676,%d0 - lea (-12,%sp),%sp - lea (1,%sp),%a0 - move.l %d0,-(%sp) - jsr settings - addq.l #4,%sp - tst.b 11(%sp) - jeq .L231 - lea .LC2,%a0 - move.l 16(%sp),%a1 -.L230: - move.b (%a0)+,%d0 - move.b %d0,(%a1)+ - jne .L230 - lea (12,%sp),%sp - rts -.L231: - move.l 16(%sp),%a1 - lea .LC0,%a0 - jra .L230 - .size format_11, .-format_11 + .type midi_format_3, @function +midi_format_3: + move.l midi_view,%d0 + mov3q.l #6,%d1 + muls.l %d1,%d0 + move.l %d0,%a0 + add.l #midi_layout+3,%a0 + mvz.b (%a0),%d0 + move.l %d0,8(%sp) + jra midi_format + .size midi_format_3, .-midi_format_3 .align 2 - .type format_3, @function -format_3: - lea (-12,%sp),%sp - move.l %d2,-(%sp) - mvz.b 269161676,%d0 - lea (5,%sp),%a0 - mov3q.l #5,%d2 - move.l %d0,-(%sp) - jsr settings - mvz.b 12(%sp),%d0 - addq.l #4,%sp - lea vector_scale_names,%a0 - remu.l %d2,%d1:%d0 - move.l 20(%sp),%a1 - move.l (%a0,%d1.l*4),%a0 -.L236: - move.b (%a0)+,%d0 - move.b %d0,(%a1)+ - jne .L236 - move.l (%sp)+,%d2 - lea (12,%sp),%sp - rts - .size format_3, .-format_3 + .type midi_format_4, @function +midi_format_4: + move.l midi_view,%d0 + mov3q.l #6,%d1 + muls.l %d1,%d0 + move.l %d0,%a0 + add.l #midi_layout+4,%a0 + mvz.b (%a0),%d0 + move.l %d0,8(%sp) + jra midi_format + .size midi_format_4, .-midi_format_4 .align 2 - .type format_2, @function -format_2: - lea (-12,%sp),%sp - move.l %d2,-(%sp) - moveq #12,%d2 - mvz.b 269161676,%d0 - lea (5,%sp),%a0 - move.l %d0,-(%sp) - jsr settings - mvz.b 11(%sp),%d0 - addq.l #4,%sp - lea (roots.1),%a0 - remu.l %d2,%d1:%d0 - move.l 20(%sp),%a1 - move.l (%a0,%d1.l*4),%a0 -.L241: - move.b (%a0)+,%d0 - move.b %d0,(%a1)+ - jne .L241 + .type midi_format_5, @function +midi_format_5: + move.l midi_view,%d0 + mov3q.l #6,%d1 + muls.l %d1,%d0 + move.l %d0,%a0 + add.l #midi_layout+5,%a0 + mvz.b (%a0),%d0 + move.l %d0,8(%sp) + jra midi_format + .size midi_format_5, .-midi_format_5 + .align 2 + .type midi_page1, @function +midi_page1: + lea (-16,%sp),%sp + movem.l #3084,(%sp) + move.l 1187521622,%a0 + mov3q.l #3,%d3 + move.l 20(%sp),%d1 + move.l %d1,%d2 + lsl.l #5,%d2 + move.l 24(%sp),%a1 + add.l #585088,%a0 + lea (31,%sp),%a3 + move.l %d1,%a2 + add.l #-2147457426,%a2 + lea (994,%a1),%a1 + move.b 269161679,%d0 + add.l %d2,%a1 + mvz.w #6322,%d2 + and.l %d3,%d0 + muls.l %d2,%d0 + add.l %d0,%a0 + move.b (%a3),(%a0,%a1.l) + move.b 269161679,%d0 + and.l %d3,%d0 + muls.l %d2,%d0 + move.l %d0,%a0 + add.l #269110990,%a0 + move.b (%a3),(%a0,%a1.l) + move.b (%a2),%d0 + mvz.b -2147483646,%d2 + mvz.b %d0,%d0 + cmp.l %d0,%d2 + jeq .L274 +.L270: + movem.l (%sp),#3084 + lea (16,%sp),%sp + rts +.L274: + move.l %d1,%a0 + add.l #-2147457418,%a0 + move.b (%a0),%d0 + mvz.b -2147483645,%d2 + mvz.b %d0,%d0 + cmp.l %d0,%d2 + jne .L270 + moveq #68,%d0 + muls.l %d1,%d0 + move.l 24(%sp),%a0 + add.l #1187474880,%a0 + move.b (%a3),(%a0,%d0.l) + movem.l (%sp),#3084 + lea (16,%sp),%sp + rts + .size midi_page1, .-midi_page1 + .align 2 + .type mg_page_view, @function +mg_page_view: + move.l 1175262852,%d1 + mov3q.l #4,%d0 + move.l %a2,-(%sp) + move.l %d2,-(%sp) + cmp.l %d1,%d0 + jcs .L283 + tst.l 1175263034 + jne .L283 + tst.l 1175262868 + jne .L283 + move.l 24(%sp),%d0 + add.l #3089,%d0 + mvz.w %d0,%d0 + move.l 20(%sp),%a0 + lea (%a0,%d0.l*2),%a0 + move.b 1(%a0),%d0 + mvz.b (%a0),%d2 + move.l %d2,%a1 + moveq #77,%d2 + cmp.l %a1,%d2 + jne .L283 + tst.l 16(%sp) + jeq .L283 + mvz.b %d0,%d0 + move.l 12(%sp),%a2 + move.l %d0,%a1 + move.l (%a2),%d0 + move.l %d0,%a2 + cmp.l 8(%a2),%a1 + jeq .L287 + move.b (%a0),%d0 +.L283: move.l (%sp)+,%d2 - lea (12,%sp),%sp + clr.l %d0 + move.l (%sp)+,%a2 rts - .size format_2, .-format_2 +.L287: + mov3q.l #4,%d2 + or.l 12(%a2),%d2 + btst %d1,%d2 + jeq .L283 + move.l (%sp)+,%d2 + move.l (%sp)+,%a2 + rts + .size mg_page_view, .-mg_page_view .align 2 - .type format_9, @function -format_9: - lea (-36,%sp),%sp - movem.l #16412,(%sp) - move.l 40(%sp),%a6 - lea (25,%sp),%a0 + .type draw_generator_widget.part.0, @function +draw_generator_widget.part.0: + lea (-12,%sp),%sp + move.l %a6,-(%sp) + move.l %d2,-(%sp) mvz.b 269161676,%d0 + move.l 36(%sp),%a6 move.l %d0,-(%sp) + lea (13,%sp),%a0 jsr settings - mvz.b 37(%sp),%d0 addq.l #4,%sp - moveq #99,%d1 - cmp.l %d0,%d1 - jcc .L246 - moveq #100,%d2 - mov3q.l #2,%a0 - move.l %d0,%d1 - mov3q.l #3,%a1 - divu.l %d2,%d1 - moveq #10,%d2 - add.l %a6,%a0 - mov3q.l #1,16(%sp) - add.l #48,%d1 - move.b %d1,(%a6) + mov3q.l #6,%d0 + cmp.l %a6,%d0 + jeq .L296 + mov3q.l #5,%d2 + move.l %a6,%d0 + cmp.l %a6,%d2 + jcc .L291 + subq.l #1,%d0 +.L291: + mvz.b 9(%sp,%d0.l),%d0 + move.l %d0,%a0 +.L290: + move.l 48(%sp),-(%sp) + move.l 48(%sp),-(%sp) + moveq #-2,%d0 + and.l 48(%sp),%d0 + lea vector_control_max,%a1 + mvz.b (%a1,%a6.l),%d1 + move.l %d0,-(%sp) + move.l %d1,%d0 + cmp.l %d1,%a0 + jcc .L292 + move.l %a0,%d0 +.L292: + mulu.w #127,%d0 + divu.l %d1,%d0 + move.l %d0,-(%sp) + move.l 48(%sp),-(%sp) + move.l 48(%sp),-(%sp) + move.l 48(%sp),-(%sp) + jsr 1074035124 + lea (28,%sp),%sp + move.l (%sp)+,%d2 + move.l (%sp)+,%a6 + lea (12,%sp),%sp + rts +.L296: + move.b 269161676,%d0 + move.l 1187521622,%a1 + mov3q.l #3,%d2 + move.b 269161679,%d1 + add.l #585088,%a1 + mvz.b %d0,%d0 + and.l %d2,%d1 + mulu.w #30,%d0 + move.l %d0,%a0 + mvz.w #6322,%d0 + lea (497,%a0),%a0 + muls.l %d0,%d1 + add.l %d1,%a1 + move.b (%a1,%a0.l),%d0 + moveq #127,%d1 + and.l %d0,%d1 + move.l %d1,%a0 + jra .L290 + .size draw_generator_widget.part.0, .-draw_generator_widget.part.0 + .align 2 + .type secondary_widget, @function +secondary_widget: + subq.l #8,%sp + move.l %d2,-(%sp) + moveq #11,%d2 + move.l 24(%sp),%d0 move.l %d0,%d1 - divu.l %d2,%d1 - move.l %d1,%d4 - remu.l %d2,%d3:%d4 - move.l 16(%sp),%d4 - move.l %d3,%d1 - add.l #48,%d1 - move.b %d1,(%a6,%d4.l) -.L248: - moveq #10,%d2 - remu.l %d2,%d1:%d0 - clr.b %d3 - add.l #48,%d1 - move.b %d1,(%a0) - move.b %d3,(%a6,%a1.l) - movem.l (%sp),#16412 - lea (36,%sp),%sp + move.l 16(%sp),%a0 + addq.l #6,%d1 + move.l 20(%sp),%a1 + move.l 32(%sp),4(%sp) + move.l 36(%sp),8(%sp) + cmp.l %d1,%d2 + jcc .L301 + move.l (%sp)+,%d2 + addq.l #8,%sp rts -.L246: - moveq #9,%d4 - cmp.l %d0,%d4 - jcs .L252 - moveq #10,%d2 - mov3q.l #1,%a1 - remu.l %d2,%d1:%d0 - clr.b %d3 - move.l %a6,%a0 - add.l #48,%d1 - move.b %d1,(%a0) - move.b %d3,(%a6,%a1.l) - movem.l (%sp),#16412 - lea (36,%sp),%sp +.L301: + move.l 8(%sp),36(%sp) + move.l 4(%sp),32(%sp) + move.l %d1,28(%sp) + move.l %d0,24(%sp) + move.l %a1,20(%sp) + move.l %a0,16(%sp) + move.l (%sp)+,%d2 + addq.l #8,%sp + jra (draw_generator_widget.part.0) + .size secondary_widget, .-secondary_widget + .align 2 + .type generator_widget, @function +generator_widget: + subq.l #4,%sp + move.l %d2,-(%sp) + moveq #11,%d2 + move.l 20(%sp),%d0 + move.l 12(%sp),%d1 + move.l 16(%sp),%a0 + move.l 28(%sp),%a1 + move.l 32(%sp),4(%sp) + cmp.l %d0,%d2 + jcc .L306 + move.l (%sp)+,%d2 + addq.l #4,%sp rts -.L252: - moveq #10,%d2 - mov3q.l #1,%a0 - move.l %d0,%d1 - mov3q.l #2,%a1 - divu.l %d2,%d1 - clr.l 16(%sp) - add.l %a6,%a0 - move.l %d1,%d4 - remu.l %d2,%d3:%d4 - move.l 16(%sp),%d4 - move.l %d3,%d1 - add.l #48,%d1 - move.b %d1,(%a6,%d4.l) - jra .L248 - .size format_9, .-format_9 +.L306: + move.l 4(%sp),32(%sp) + move.l %a1,28(%sp) + move.l %d0,24(%sp) + move.l %d0,20(%sp) + move.l %a0,16(%sp) + move.l %d1,12(%sp) + move.l (%sp)+,%d2 + addq.l #4,%sp + jra (draw_generator_widget.part.0) + .size generator_widget, .-generator_widget .align 2 - .type format_7, @function -format_7: - lea (-36,%sp),%sp + .type format_control, @function +format_control: + lea (-28,%sp),%sp movem.l #16412,(%sp) - move.l 40(%sp),%a6 - lea (25,%sp),%a0 + move.l 36(%sp),%d2 + lea (17,%sp),%a0 mvz.b 269161676,%d0 move.l %d0,-(%sp) jsr settings - mvz.b 35(%sp),%d0 addq.l #4,%sp - moveq #99,%d1 - cmp.l %d0,%d1 - jcc .L254 - moveq #100,%d2 - mov3q.l #2,%a0 - move.l %d0,%d1 - mov3q.l #3,%a1 - divu.l %d2,%d1 - moveq #10,%d2 - add.l %a6,%a0 - mov3q.l #1,16(%sp) - add.l #48,%d1 - move.b %d1,(%a6) + mov3q.l #6,%d0 + cmp.l %d2,%d0 + jeq .L335 + mov3q.l #5,%d0 + cmp.l %d2,%d0 + jcs .L310 + mvz.b 17(%sp,%d2.l),%d0 + move.l %d2,%d1 + mov3q.l #1,%d3 + subq.l #2,%d1 + cmp.l %d1,%d3 + jcs .L309 + subq.l #2,%d2 + tst.l %d2 + jeq .L336 + mov3q.l #5,%d3 + remu.l %d3,%d1:%d0 + lea vector_scale_names,%a0 + move.l 32(%sp),%a1 + move.l (%a0,%d1.l*4),%a0 +.L316: + move.b (%a0)+,%d0 + move.b %d0,(%a1)+ + jne .L316 +.L307: + movem.l (%sp),#16412 + lea (28,%sp),%sp + rts +.L310: + mvz.b 16(%sp,%d2.l),%d0 + moveq #11,%d4 + cmp.l %d2,%d4 + jne .L337 + tst.l %d0 + jeq .L327 + move.l 32(%sp),%a1 + lea .LC4,%a0 +.L320: + move.b (%a0)+,%d0 + move.b %d0,(%a1)+ + jeq .L307 + move.b (%a0)+,%d0 + move.b %d0,(%a1)+ + jne .L320 + jra .L307 +.L335: + move.b 269161676,%d0 + move.l 1187521622,%a1 + mov3q.l #3,%d2 + move.b 269161679,%d1 + mvz.w #6322,%d3 + add.l #585088,%a1 + moveq #127,%d4 + mvz.b %d0,%d0 + and.l %d2,%d1 + mulu.w #30,%d0 + move.l %d0,%a0 + muls.l %d3,%d1 + lea (497,%a0),%a0 + add.l %d1,%a1 + move.b (%a1,%a0.l),%d0 + and.l %d4,%d0 +.L309: + moveq #99,%d3 + cmp.l %d0,%d3 + jcc .L328 +.L339: + moveq #100,%d4 + moveq #10,%d3 move.l %d0,%d1 - divu.l %d2,%d1 - move.l %d1,%d4 - remu.l %d2,%d3:%d4 - move.l 16(%sp),%d4 - move.l %d3,%d1 + mov3q.l #2,%a6 + divu.l %d4,%d1 + move.l 32(%sp),%a0 + mov3q.l #3,%a1 add.l #48,%d1 - move.b %d1,(%a6,%d4.l) -.L256: + move.b %d1,(%a0)+ + move.l %d0,%d1 + divu.l %d3,%d1 + move.l %d1,%d2 + remu.l %d3,%d4:%d2 + move.l %d4,%d1 + add.l #48,%d1 + move.b %d1,(%a0) + move.l 32(%sp),%a0 + add.l %a6,%a0 +.L325: moveq #10,%d2 remu.l %d2,%d1:%d0 clr.b %d3 add.l #48,%d1 move.b %d1,(%a0) - move.b %d3,(%a6,%a1.l) + move.l 32(%sp),%a0 + move.b %d3,(%a0,%a1.l) movem.l (%sp),#16412 - lea (36,%sp),%sp + lea (28,%sp),%sp rts -.L254: - moveq #9,%d4 - cmp.l %d0,%d4 - jcs .L260 - moveq #10,%d2 +.L328: + move.l 32(%sp),%a0 mov3q.l #1,%a1 - remu.l %d2,%d1:%d0 - clr.b %d3 - move.l %a6,%a0 + clr.l %d1 + moveq #9,%d2 + cmp.l %d0,%d2 + jcc .L325 +.L340: + move.l %a1,%a6 + moveq #10,%d3 + move.l %d1,%a1 + move.l %d0,%d1 + divu.l %d3,%d1 + addq.l #2,%a1 + move.l %d1,%d2 + remu.l %d3,%d4:%d2 + move.l %d4,%d1 add.l #48,%d1 move.b %d1,(%a0) - move.b %d3,(%a6,%a1.l) - movem.l (%sp),#16412 - lea (36,%sp),%sp - rts -.L260: - moveq #10,%d2 - mov3q.l #1,%a0 + move.l 32(%sp),%a0 + add.l %a6,%a0 + jra .L325 +.L327: + move.l 32(%sp),%a1 + lea .LC2,%a0 + jra .L320 +.L336: + moveq #12,%d2 + remu.l %d2,%d1:%d0 + lea (roots.6),%a0 + move.l 32(%sp),%a1 + move.l (%a0,%d1.l*4),%a0 + jra .L316 +.L337: + moveq #10,%d4 + cmp.l %d2,%d4 + jne .L318 + tst.l %d0 + jne .L309 + move.l 32(%sp),%a1 + lea .LC1,%a0 + jra .L320 +.L318: + subq.l #8,%d2 + tst.l %d2 + jne .L309 move.l %d0,%d1 + add.l #-12,%d1 + tst.l %d1 + jlt .L338 + move.l %d1,%d0 + moveq #99,%d3 + cmp.l %d0,%d3 + jcs .L339 + jra .L328 +.L338: + move.l 32(%sp),%a0 + moveq #12,%d2 + sub.l %d0,%d2 + move.l %d2,%d0 mov3q.l #2,%a1 - divu.l %d2,%d1 - clr.l 16(%sp) - add.l %a6,%a0 - move.l %d1,%d4 - remu.l %d2,%d3:%d4 - move.l 16(%sp),%d4 - move.l %d3,%d1 - add.l #48,%d1 - move.b %d1,(%a6,%d4.l) - jra .L256 - .size format_7, .-format_7 + move.b #45,(%a0)+ + mov3q.l #1,%d1 + moveq #9,%d2 + cmp.l %d0,%d2 + jcc .L325 + jra .L340 + .size format_control, .-format_control .align 2 - .type format_5, @function -format_5: + .type format_10, @function +format_10: + moveq #10,%d0 + move.l %d0,8(%sp) + jra format_control + .size format_10, .-format_10 + .align 2 + .type format_8, @function +format_8: + moveq #8,%d0 + move.l %d0,8(%sp) + jra format_control + .size format_8, .-format_8 + .align 2 + .type format_6, @function +format_6: + mov3q.l #6,8(%sp) + jra format_control + .size format_6, .-format_6 + .align 2 + .type format_11, @function +format_11: + mvz.b 269161676,%d0 + lea (-12,%sp),%sp + lea (1,%sp),%a0 + move.l %d0,-(%sp) + jsr settings + addq.l #4,%sp + tst.b 11(%sp) + jeq .L350 + lea .LC4,%a0 + move.l 16(%sp),%a1 +.L349: + move.b (%a0)+,%d0 + move.b %d0,(%a1)+ + jne .L349 + lea (12,%sp),%sp + rts +.L350: + move.l 16(%sp),%a1 + lea .LC2,%a0 + jra .L349 + .size format_11, .-format_11 + .align 2 + .type format_3, @function +format_3: + lea (-12,%sp),%sp + move.l %d2,-(%sp) + mvz.b 269161676,%d0 + lea (5,%sp),%a0 + mov3q.l #5,%d2 + move.l %d0,-(%sp) + jsr settings + mvz.b 12(%sp),%d0 + addq.l #4,%sp + lea vector_scale_names,%a0 + remu.l %d2,%d1:%d0 + move.l 20(%sp),%a1 + move.l (%a0,%d1.l*4),%a0 +.L355: + move.b (%a0)+,%d0 + move.b %d0,(%a1)+ + jne .L355 + move.l (%sp)+,%d2 + lea (12,%sp),%sp + rts + .size format_3, .-format_3 + .align 2 + .type format_2, @function +format_2: + lea (-12,%sp),%sp + move.l %d2,-(%sp) + moveq #12,%d2 + mvz.b 269161676,%d0 + lea (5,%sp),%a0 + move.l %d0,-(%sp) + jsr settings + mvz.b 11(%sp),%d0 + addq.l #4,%sp + lea (roots.6),%a0 + remu.l %d2,%d1:%d0 + move.l 20(%sp),%a1 + move.l (%a0,%d1.l*4),%a0 +.L360: + move.b (%a0)+,%d0 + move.b %d0,(%a1)+ + jne .L360 + move.l (%sp)+,%d2 + lea (12,%sp),%sp + rts + .size format_2, .-format_2 + .align 2 + .type format_9, @function +format_9: lea (-36,%sp),%sp movem.l #16412,(%sp) move.l 40(%sp),%a6 @@ -1491,11 +1990,11 @@ format_5: mvz.b 269161676,%d0 move.l %d0,-(%sp) jsr settings - mvz.b 34(%sp),%d0 + mvz.b 37(%sp),%d0 addq.l #4,%sp moveq #99,%d1 cmp.l %d0,%d1 - jcc .L262 + jcc .L365 moveq #100,%d2 mov3q.l #2,%a0 move.l %d0,%d1 @@ -1514,7 +2013,7 @@ format_5: move.l %d3,%d1 add.l #48,%d1 move.b %d1,(%a6,%d4.l) -.L264: +.L367: moveq #10,%d2 remu.l %d2,%d1:%d0 clr.b %d3 @@ -1524,10 +2023,10 @@ format_5: movem.l (%sp),#16412 lea (36,%sp),%sp rts -.L262: +.L365: moveq #9,%d4 cmp.l %d0,%d4 - jcs .L268 + jcs .L371 moveq #10,%d2 mov3q.l #1,%a1 remu.l %d2,%d1:%d0 @@ -1539,7 +2038,7 @@ format_5: movem.l (%sp),#16412 lea (36,%sp),%sp rts -.L268: +.L371: moveq #10,%d2 mov3q.l #1,%a0 move.l %d0,%d1 @@ -1553,11 +2052,11 @@ format_5: move.l %d3,%d1 add.l #48,%d1 move.b %d1,(%a6,%d4.l) - jra .L264 - .size format_5, .-format_5 + jra .L367 + .size format_9, .-format_9 .align 2 - .type format_4, @function -format_4: + .type format_7, @function +format_7: lea (-36,%sp),%sp movem.l #16412,(%sp) move.l 40(%sp),%a6 @@ -1565,11 +2064,11 @@ format_4: mvz.b 269161676,%d0 move.l %d0,-(%sp) jsr settings - mvz.b 33(%sp),%d0 + mvz.b 35(%sp),%d0 addq.l #4,%sp moveq #99,%d1 cmp.l %d0,%d1 - jcc .L270 + jcc .L373 moveq #100,%d2 mov3q.l #2,%a0 move.l %d0,%d1 @@ -1588,7 +2087,7 @@ format_4: move.l %d3,%d1 add.l #48,%d1 move.b %d1,(%a6,%d4.l) -.L272: +.L375: moveq #10,%d2 remu.l %d2,%d1:%d0 clr.b %d3 @@ -1598,10 +2097,158 @@ format_4: movem.l (%sp),#16412 lea (36,%sp),%sp rts -.L270: +.L373: + moveq #9,%d4 + cmp.l %d0,%d4 + jcs .L379 + moveq #10,%d2 + mov3q.l #1,%a1 + remu.l %d2,%d1:%d0 + clr.b %d3 + move.l %a6,%a0 + add.l #48,%d1 + move.b %d1,(%a0) + move.b %d3,(%a6,%a1.l) + movem.l (%sp),#16412 + lea (36,%sp),%sp + rts +.L379: + moveq #10,%d2 + mov3q.l #1,%a0 + move.l %d0,%d1 + mov3q.l #2,%a1 + divu.l %d2,%d1 + clr.l 16(%sp) + add.l %a6,%a0 + move.l %d1,%d4 + remu.l %d2,%d3:%d4 + move.l 16(%sp),%d4 + move.l %d3,%d1 + add.l #48,%d1 + move.b %d1,(%a6,%d4.l) + jra .L375 + .size format_7, .-format_7 + .align 2 + .type format_5, @function +format_5: + lea (-36,%sp),%sp + movem.l #16412,(%sp) + move.l 40(%sp),%a6 + lea (25,%sp),%a0 + mvz.b 269161676,%d0 + move.l %d0,-(%sp) + jsr settings + mvz.b 34(%sp),%d0 + addq.l #4,%sp + moveq #99,%d1 + cmp.l %d0,%d1 + jcc .L381 + moveq #100,%d2 + mov3q.l #2,%a0 + move.l %d0,%d1 + mov3q.l #3,%a1 + divu.l %d2,%d1 + moveq #10,%d2 + add.l %a6,%a0 + mov3q.l #1,16(%sp) + add.l #48,%d1 + move.b %d1,(%a6) + move.l %d0,%d1 + divu.l %d2,%d1 + move.l %d1,%d4 + remu.l %d2,%d3:%d4 + move.l 16(%sp),%d4 + move.l %d3,%d1 + add.l #48,%d1 + move.b %d1,(%a6,%d4.l) +.L383: + moveq #10,%d2 + remu.l %d2,%d1:%d0 + clr.b %d3 + add.l #48,%d1 + move.b %d1,(%a0) + move.b %d3,(%a6,%a1.l) + movem.l (%sp),#16412 + lea (36,%sp),%sp + rts +.L381: + moveq #9,%d4 + cmp.l %d0,%d4 + jcs .L387 + moveq #10,%d2 + mov3q.l #1,%a1 + remu.l %d2,%d1:%d0 + clr.b %d3 + move.l %a6,%a0 + add.l #48,%d1 + move.b %d1,(%a0) + move.b %d3,(%a6,%a1.l) + movem.l (%sp),#16412 + lea (36,%sp),%sp + rts +.L387: + moveq #10,%d2 + mov3q.l #1,%a0 + move.l %d0,%d1 + mov3q.l #2,%a1 + divu.l %d2,%d1 + clr.l 16(%sp) + add.l %a6,%a0 + move.l %d1,%d4 + remu.l %d2,%d3:%d4 + move.l 16(%sp),%d4 + move.l %d3,%d1 + add.l #48,%d1 + move.b %d1,(%a6,%d4.l) + jra .L383 + .size format_5, .-format_5 + .align 2 + .type format_4, @function +format_4: + lea (-36,%sp),%sp + movem.l #16412,(%sp) + move.l 40(%sp),%a6 + lea (25,%sp),%a0 + mvz.b 269161676,%d0 + move.l %d0,-(%sp) + jsr settings + mvz.b 33(%sp),%d0 + addq.l #4,%sp + moveq #99,%d1 + cmp.l %d0,%d1 + jcc .L389 + moveq #100,%d2 + mov3q.l #2,%a0 + move.l %d0,%d1 + mov3q.l #3,%a1 + divu.l %d2,%d1 + moveq #10,%d2 + add.l %a6,%a0 + mov3q.l #1,16(%sp) + add.l #48,%d1 + move.b %d1,(%a6) + move.l %d0,%d1 + divu.l %d2,%d1 + move.l %d1,%d4 + remu.l %d2,%d3:%d4 + move.l 16(%sp),%d4 + move.l %d3,%d1 + add.l #48,%d1 + move.b %d1,(%a6,%d4.l) +.L391: + moveq #10,%d2 + remu.l %d2,%d1:%d0 + clr.b %d3 + add.l #48,%d1 + move.b %d1,(%a0) + move.b %d3,(%a6,%a1.l) + movem.l (%sp),#16412 + lea (36,%sp),%sp + rts +.L389: moveq #9,%d4 cmp.l %d0,%d4 - jcs .L276 + jcs .L395 moveq #10,%d2 mov3q.l #1,%a1 remu.l %d2,%d1:%d0 @@ -1613,7 +2260,7 @@ format_4: movem.l (%sp),#16412 lea (36,%sp),%sp rts -.L276: +.L395: moveq #10,%d2 mov3q.l #1,%a0 move.l %d0,%d1 @@ -1627,7 +2274,7 @@ format_4: move.l %d3,%d1 add.l #48,%d1 move.b %d1,(%a6,%d4.l) - jra .L272 + jra .L391 .size format_4, .-format_4 .align 2 .type format_1, @function @@ -1643,7 +2290,7 @@ format_1: addq.l #4,%sp moveq #99,%d1 cmp.l %d0,%d1 - jcc .L278 + jcc .L397 moveq #100,%d2 mov3q.l #2,%a0 move.l %d0,%d1 @@ -1662,7 +2309,7 @@ format_1: move.l %d3,%d1 add.l #48,%d1 move.b %d1,(%a6,%d4.l) -.L280: +.L399: moveq #10,%d2 remu.l %d2,%d1:%d0 clr.b %d3 @@ -1672,10 +2319,10 @@ format_1: movem.l (%sp),#16412 lea (36,%sp),%sp rts -.L278: +.L397: moveq #9,%d4 cmp.l %d0,%d4 - jcs .L284 + jcs .L403 moveq #10,%d2 mov3q.l #1,%a1 remu.l %d2,%d1:%d0 @@ -1687,7 +2334,7 @@ format_1: movem.l (%sp),#16412 lea (36,%sp),%sp rts -.L284: +.L403: moveq #10,%d2 mov3q.l #1,%a0 move.l %d0,%d1 @@ -1701,7 +2348,7 @@ format_1: move.l %d3,%d1 add.l #48,%d1 move.b %d1,(%a6,%d4.l) - jra .L280 + jra .L399 .size format_1, .-format_1 .align 2 .type format_0, @function @@ -1717,7 +2364,7 @@ format_0: addq.l #4,%sp moveq #99,%d1 cmp.l %d0,%d1 - jcc .L286 + jcc .L405 moveq #100,%d2 mov3q.l #2,%a0 move.l %d0,%d1 @@ -1736,7 +2383,7 @@ format_0: move.l %d3,%d1 add.l #48,%d1 move.b %d1,(%a6,%d4.l) -.L288: +.L407: moveq #10,%d2 remu.l %d2,%d1:%d0 clr.b %d3 @@ -1746,10 +2393,10 @@ format_0: movem.l (%sp),#16412 lea (36,%sp),%sp rts -.L286: +.L405: moveq #9,%d4 cmp.l %d0,%d4 - jcs .L292 + jcs .L411 moveq #10,%d2 mov3q.l #1,%a1 remu.l %d2,%d1:%d0 @@ -1761,7 +2408,7 @@ format_0: movem.l (%sp),#16412 lea (36,%sp),%sp rts -.L292: +.L411: moveq #10,%d2 mov3q.l #1,%a0 move.l %d0,%d1 @@ -1775,110 +2422,1096 @@ format_0: move.l %d3,%d1 add.l #48,%d1 move.b %d1,(%a6,%d4.l) - jra .L288 + jra .L407 .size format_0, .-format_0 .align 2 - .globl vector_next_seed - .type vector_next_seed, @function -vector_next_seed: - move.l 4(%sp),%d0 - moveq #127,%d1 - addq.l #1,%d0 + .type midi_set_control, @function +midi_set_control: + lea (-44,%sp),%sp + moveq #12,%d0 + movem.l #1084,(%sp) + move.l 52(%sp),%d4 + move.l 48(%sp),%d2 + move.l 56(%sp),%d3 + cmp.l %d4,%d0 + jeq .L413 + mov3q.l #2,%d1 + cmp.l %d4,%d1 + jeq .L414 + moveq #13,%d5 + cmp.l %d4,%d5 + jeq .L415 + mov3q.l #4,%d0 + cmp.l %d4,%d0 + jeq .L431 +.L417: + move.l 1187521622,%a0 + mov3q.l #3,%d1 + move.b 269161679,%d0 + move.l %d2,%d5 + add.l #585088,%a0 + lsl.l #4,%d5 + and.l %d1,%d0 + mvz.w #6322,%d1 + move.l %d5,%a1 + moveq #22,%d5 + lea (6206,%a1),%a2 + move.l %a2,24(%sp) + muls.l %d1,%d0 + add.l %d0,%a0 + mvz.b (%a0,%a2.l),%d0 + cmp.l %d0,%d5 + jeq .L432 + lea midi_byte,%a0 + clr.l %d1 + lea (6194,%a1),%a1 + moveq #13,%d0 + move.l %a0,32(%sp) + move.l %a1,28(%sp) + cmp.l %d1,%d0 + jcs .L421 +.L433: + moveq #11,%d5 + cmp.l %d1,%d5 + jcs .L422 + mov3q.l #4,%d0 + cmp.l %d1,%d0 + jeq .L422 +.L423: + move.l %d1,-(%sp) + move.l #269161679,%a2 + move.l %d2,-(%sp) + move.l %d1,28(%sp) + jsr midi_control + mov3q.l #3,%d5 + move.l 1187521622,%a0 + add.l #585088,%a0 + move.b (%a2),51(%sp) + move.l 28(%sp),%d1 + move.l %d0,%a1 + move.l 40(%sp),%a2 + lea (-64,%a1),%a1 + move.l %a1,44(%sp) + mvz.b (%a2,%d1.l),%d0 + addq.l #8,%sp + lea (39,%sp),%a2 + move.l 28(%sp),%a1 + add.l %d0,%a1 + move.b 43(%sp),%d0 + and.l %d5,%d0 + mvz.w #6322,%d5 + muls.l %d5,%d0 + mov3q.l #3,%d5 + add.l %d0,%a0 + move.b (%a2),(%a0,%a1.l) + move.b 269161679,%d0 + and.l %d5,%d0 + mvz.w #6322,%d5 + muls.l %d5,%d0 + move.l %d0,%a0 + add.l #269110990,%a0 + move.b (%a2),(%a0,%a1.l) +.L422: + addq.l #1,%d1 + moveq #13,%d0 + cmp.l %d1,%d0 + jcc .L433 +.L421: + moveq #16,%d5 + cmp.l %d1,%d5 + jne .L423 + move.l 1187521622,%a0 + mov3q.l #3,%d1 + move.b 269161679,%d0 + mvz.w #6322,%d5 + add.l #585088,%a0 + move.l 24(%sp),%a1 + add.l #-64,%d3 + move.l 32(%sp),%a2 + mvz.b (%a2,%d4.l),%d2 + and.l %d1,%d0 + move.l 24(%sp),%d1 + muls.l %d5,%d0 + mov3q.l #3,%d5 + add.l %d0,%a0 + moveq #22,%d0 + move.b %d0,(%a0,%d1.l) + mvz.w #6322,%d1 + move.b 269161679,%d0 + and.l %d5,%d0 + moveq #22,%d5 + muls.l %d1,%d0 + mov3q.l #3,%d1 + move.l %d0,%a0 + add.l #269110990,%a0 + move.b %d5,(%a0,%a1.l) + mvz.w #6322,%d5 + move.l 28(%sp),%a1 + add.l %d2,%a1 + move.l 1187521622,%a0 + add.l #585088,%a0 + move.b 269161679,%d0 and.l %d1,%d0 + muls.l %d5,%d0 + add.l %d0,%a0 + move.b %d3,(%a0,%a1.l) + move.b 269161679,%d0 + and.l %d1,%d0 + muls.l %d5,%d0 + move.l %d0,%a0 + add.l #269110990,%a0 + move.b %d3,(%a0,%a1.l) + movem.l (%sp),#1084 + lea (44,%sp),%sp rts - .size vector_next_seed, .-vector_next_seed - .align 2 - .globl vector_pack - .type vector_pack, @function -vector_pack: - move.l %d3,-(%sp) +.L413: + mov3q.l #2,-(%sp) move.l %d2,-(%sp) - move.l 16(%sp),%a0 - mov3q.l #4,%d2 - move.l 12(%sp),%a1 - move.b 3(%a0),%d0 - mvz.b %d0,%d1 - cmp.l %d1,%d2 - jcc .L296 - moveq #4,%d0 -.L296: - move.b (%a0),%d1 - lsl.l #4,%d0 - moveq #15,%d3 - mvz.b %d1,%d2 - cmp.l %d2,%d3 - jcc .L297 - moveq #15,%d1 -.L297: - or.l %d1,%d0 - move.b %d0,(%a1) - move.b 10(%a0),%d0 - jeq .L298 - moveq #1,%d0 -.L298: - move.b 1(%a0),%d1 - lsl.l #5,%d0 - moveq #16,%d3 - mvz.b %d1,%d2 - cmp.l %d2,%d3 - jcc .L299 - moveq #16,%d1 -.L299: - or.l %d1,%d0 - moveq #12,%d2 - move.b %d0,1(%a1) - move.b 6(%a0),%d0 - mvz.b %d0,%d1 - cmp.l %d1,%d2 - jcc .L300 - moveq #12,%d0 -.L300: - move.b 2(%a0),%d1 + jsr midi_control + move.l %d2,56(%sp) + clr.l 60(%sp) + moveq #12,%d1 + muls.l %d1,%d3 + add.l %d0,%d3 + move.l %d3,64(%sp) + movem.l 8(%sp),#1084 + lea (52,%sp),%sp + jra midi_page1 +.L415: + move.l %d3,56(%sp) + move.l %d2,48(%sp) + movem.l (%sp),#1084 + mov3q.l #1,52(%sp) + lea (44,%sp),%sp + jra midi_page1 +.L431: + move.l %d3,56(%sp) + move.l %d2,48(%sp) + movem.l (%sp),#1084 + mov3q.l #2,52(%sp) + lea (44,%sp),%sp + jra midi_page1 +.L432: + lea midi_byte,%a0 + mov3q.l #3,%d1 + move.l %a0,32(%sp) + lea (6194,%a1),%a1 + add.l #-64,%d3 + move.l 1187521622,%a0 + add.l #585088,%a0 + move.l %a1,28(%sp) + mvz.w #6322,%d5 + move.b 269161679,%d0 + move.l 32(%sp),%a2 + move.l 28(%sp),%a1 + mvz.b (%a2,%d4.l),%d2 + add.l %d2,%a1 + and.l %d1,%d0 + muls.l %d5,%d0 + add.l %d0,%a0 + move.b %d3,(%a0,%a1.l) + move.b 269161679,%d0 + and.l %d1,%d0 + muls.l %d5,%d0 + move.l %d0,%a0 + add.l #269110990,%a0 + move.b %d3,(%a0,%a1.l) + movem.l (%sp),#1084 + lea (44,%sp),%sp + rts +.L414: + move.l 1187521622,%a1 + mov3q.l #3,%d1 + move.b 269161679,%d0 + move.l %d2,%d5 + add.l #585088,%a1 + lsl.l #5,%d5 + and.l %d1,%d0 + mvz.w #6322,%d1 + move.l %d5,%a0 + moveq #19,%d5 + lea (994,%a0),%a0 + muls.l %d1,%d0 + moveq #9,%d1 + add.l %d0,%a1 + mvz.b (%a1,%a0.l),%d0 + mulu.w #43691,%d0 + lsr.l %d5,%d0 + cmp.l %d0,%d1 + jcc .L418 + moveq #9,%d0 +.L418: + mulu.w #12,%d0 + move.l %d0,%a0 + pea (%a0,%d3.l) + clr.l -(%sp) + move.l %d2,-(%sp) + jsr midi_page1 + lea (12,%sp),%sp + jra .L417 + .size midi_set_control, .-midi_set_control + .align 2 + .type midi_generate, @function +midi_generate: + link.w %fp,#-148 + movem.l #15612,(%sp) + move.b 269161680,%d0 + move.l 1187521622,%d1 + add.l #-1073741824,%d1 + cmp.l #133169151,%d1 + jhi .L441 + mov3q.l #7,%d1 + cmp.l 8(%fp),%d1 + jcs .L441 + mvz.b %d0,%d1 + moveq #15,%d2 + cmp.l %d1,%d2 + jcs .L441 + ext.w %d0 + mvz.w #2224,%d6 + move.l 1187521622,%d1 + move.l %d1,%a0 + move.l 8(%fp),%d4 + move.b 269161679,%d3 + mulu.w #36568,%d0 + muls.l %d6,%d4 + lea (18640,%a0),%a0 + move.l %d4,%a1 + add.l %d0,%a1 + move.b %d3,-61(%fp) + move.l %a1,-76(%fp) + lea (%a1,%a0.l),%a5 + tst.l 12(%fp) + jeq .L515 + move.l %d0,%a0 + move.l #36437,%a1 + add.l %d1,%a0 + tst.b (%a0,%a1.l) + jeq .L444 +.L519: + move.b 40(%a5),%d3 + clr.l %d2 + lea midi_control,%a2 + mvz.b %d3,%d3 +.L450: + mov3q.l #6,%d7 + cmp.l %d2,%d7 + jne .L446 + mov3q.l #7,%d2 +.L446: + move.l %d2,-(%sp) + move.l 8(%fp),-(%sp) + jsr (%a2) + addq.l #8,%sp + mov3q.l #5,%d1 + cmp.l %d2,%d1 + jcc .L516 + move.b %d0,-52(%fp,%d2.l) + addq.l #1,%d2 + moveq #12,%d4 + cmp.l %d2,%d4 + jne .L450 + mov3q.l #6,-(%sp) + move.l 8(%fp),-(%sp) + jsr (%a2) + addq.l #8,%sp + move.l %d0,-72(%fp) + tst.l 16(%fp) + jeq .L451 + addq.l #1,%d0 + moveq #127,%d6 + and.l %d0,%d6 + move.l %d6,-72(%fp) +.L451: + move.l 1187521622,%d0 + move.l %d3,%a0 + move.b 269161679,%d1 + subq.l #1,%a0 + moveq #63,%d7 + cmp.l %a0,%d7 + jcs .L441 + mov3q.l #3,%d2 + and.l %d2,%d1 + move.l %d0,%a3 + add.l #585088,%a3 + move.l 8(%fp),%d0 + mvz.w #6322,%d4 + lsl.l #5,%d0 + muls.l %d4,%d1 + add.l #994,%d0 + add.l %d1,%a3 + add.l %d0,%a3 + tst.b 1(%a3) + jlt .L441 + mvz.b 1(%a3),%d0 + moveq #127,%d6 + cmp.l %d0,%d6 + jcs .L441 + move.l -72(%fp),-(%sp) + move.l %d0,-(%sp) + moveq #19,%d4 + move.l %d3,-(%sp) + pea -51(%fp) + pea phrase + jsr (vector_generate.part.0) + pea 15.w + move.l 8(%fp),-(%sp) + jsr (%a2) + pea 14.w + move.l 8(%fp),-(%sp) + move.l %d0,-92(%fp) + jsr (%a2) + move.b (%a3),%d3 + mvz.b (%a3),%d1 + lea (36,%sp),%sp + move.l %a5,%a0 + move.l %d0,-84(%fp) + move.w %d1,%d2 + move.l %fp,%d0 + add.l #-40,%d0 + sub.l %d0,%a0 + move.l %a0,-56(%fp) + move.l -56(%fp),%a1 + move.l %d0,%a0 + mvz.b %d3,%d3 + move.l %fp,-100(%fp) + mulu.w #43691,%d2 + lsr.l %d4,%d2 + muls.w #12,%d2 + sub.l %d2,%d1 + mvz.b %d1,%d1 + sub.l %d1,%d3 + move.l %d3,-88(%fp) +.L452: + move.b (%a1,%a0.l),%d1 + move.b %d1,(%a0)+ + cmp.l -100(%fp),%a0 + jne .L452 + move.l -72(%fp),%d1 + move.l #-1640531527,%d6 + addq.l #1,%d1 + muls.l %d1,%d6 + move.l #-2048144789,%d1 + moveq #30,%d7 + move.l %d1,-96(%fp) + move.l -92(%fp),%d1 + clr.l %d2 + sub.l -84(%fp),%d7 + move.l -76(%fp),%a4 + add.l #268546638,%a4 + lea phrase,%a1 + add.l %d1,%d1 + move.l -76(%fp),%a3 + add.l #268544592,%a3 + move.l %d6,-68(%fp) + lea (2097,%a5),%a2 + move.l %d7,-60(%fp) + lea (80,%a5),%a0 + addq.l #1,%d1 + move.l %d1,-80(%fp) +.L477: + mov3q.l #7,%d6 + and.l %d2,%d6 + move.l %d2,%d3 + lsr.l #3,%d3 + lea (-32,%a0),%a5 + mov3q.l #1,%d4 + move.l %a5,-104(%fp) + mov3q.l #7,%a5 + sub.l %d3,%a5 + add.l %d0,%a5 + move.l %a5,-108(%fp) + mvz.b (%a5),%d1 + asr.l %d6,%d1 + and.l %d4,%d1 + tst.b (%a1) + jeq .L453 + mvz.b 1(%a1),%d4 + mov3q.l #5,%d7 + add.l #-64,%d4 + divs.l %d7,%d4 + move.l -88(%fp),%d5 + add.l %d4,%d5 + tst.l %d5 + jlt .L487 + moveq #127,%d4 + cmp.l %d5,%d4 + jge .L454 + moveq #127,%d5 +.L454: + move.l -104(%fp),%a5 + mvz.b %d5,%d4 + mvz.b (%a5),%d7 + cmp.l %d4,%d7 + jeq .L483 +.L482: + move.l -104(%fp),%a5 + move.b %d5,(%a5) + move.b %d5,-2(%a3) + tst.b (%a1) + jeq .L455 +.L483: + move.b 3(%a1),%d4 + mvz.b -31(%a0),%d7 + lea (-31,%a0),%a5 + move.l %a5,-104(%fp) + mvz.b %d4,%d5 + cmp.l %d7,%d5 + jeq .L456 + move.l -104(%fp),%a5 + move.b %d4,(%a5) + move.b %d4,-1(%a3) + tst.b (%a1) + jne .L456 +.L457: + mvz.b -30(%a0),%d4 + lea (-30,%a0),%a5 + move.l %a5,-104(%fp) + cmp.l #255,%d4 + jeq .L517 + st %d4 +.L458: + mov3q.l #1,%d5 + move.l -104(%fp),%a5 + lsl.l %d6,%d5 + move.b %d4,(%a5) + move.b %d4,(%a3) + tst.b (%a1) + jeq .L460 + move.l -108(%fp),%a5 + move.b (%a5),%d4 + or.l %d5,%d4 +.L461: + move.l -108(%fp),%a5 + move.b %d4,(%a5) + move.b (%a1),%d4 + tst.l %d1 + jne .L462 +.L520: + tst.b %d4 + jeq .L464 +.L463: + tst.l -92(%fp) + jeq .L490 + move.l -96(%fp),%d4 + moveq #15,%d6 + move.l -68(%fp),%d1 + move.l #739982445,%d7 + eor.l %d4,%d1 + move.l %d1,%d4 + lsr.l %d6,%d4 + moveq #12,%d6 + eor.l %d4,%d1 + muls.l %d7,%d1 + move.l -80(%fp),%d7 + move.l %d1,%d4 + lsr.l %d6,%d4 + eor.l %d4,%d1 + remu.l %d7,%d4:%d1 + move.l %d4,%d1 + sub.l -92(%fp),%d1 + lsl.l #7,%d1 + and.l #8064,%d1 +.L466: + tst.l -84(%fp) + jeq .L468 + mov3q.l #3,%d4 + and.l %d2,%d4 + tst.l %d4 + jeq .L468 + or.l -60(%fp),%d1 +.L468: + move.l %d1,%d4 + lsr.l #8,%d4 +.L465: + move.l %a2,%a5 + mvz.b -(%a5),%d7 + mvz.b %d4,%d6 + cmp.l %d7,%d6 + jeq .L470 + move.b %d4,(%a5) + move.b %d4,(%a4) +.L470: + mvz.b (%a2),%d6 + mvz.b %d1,%d4 + cmp.l %d6,%d4 + jeq .L471 + move.b %d1,(%a2) + move.b %d1,1(%a4) +.L471: + clr.l %d1 + sub.l %d3,%d1 + move.l %d1,%d4 + add.l %d0,%d4 + move.l %d4,%a5 + move.l %d5,%d6 + move.b 15(%a5),%d1 + not.l %d6 + sub.l %a5,%a5 + sub.l %d3,%a5 + move.l %a5,%d7 + move.l %d4,%a5 + add.l %d0,%d7 + and.l %d6,%d1 + move.b %d1,15(%a5) + move.l %d7,%a5 + move.b 39(%a5),%d1 + and.l %d6,%d1 + move.b %d1,39(%a5) + move.b (%a1),%d1 + jeq .L464 + lea (locked.4),%a5 + move.b %d1,(%a5,%d2.l) + move.w #23,%a5 + sub.l %d3,%a5 + add.l %d0,%a5 + move.b (%a5),%d1 + and.l %d6,%d1 +.L476: + move.b %d1,(%a5) + move.l #-2048144789,%d1 + addq.l #1,%d2 + addq.l #4,%a1 + addq.l #2,%a2 + addq.l #2,%a4 + add.l %d1,-96(%fp) + lea (32,%a3),%a3 + lea (32,%a0),%a0 + move.l #phrase+256,%d3 + cmp.l %d3,%a1 + jne .L477 + move.l #268544541,%a2 + sub.l %d0,%a2 + add.l -76(%fp),%a2 + move.l -56(%fp),%d1 + move.l %d0,%a0 + subq.l #1,%d1 +.L479: + move.b (%a0)+,%d0 + mvz.b (%a0,%d1.l),%d2 + mvz.b %d0,%d3 + cmp.l %d3,%d2 + jeq .L478 + move.b %d0,(%a0,%d1.l) + move.b %d0,(%a2,%a0.l) +.L478: + cmp.l -100(%fp),%a0 + jne .L479 + tst.l 16(%fp) + jne .L518 + move.b -61(%fp),%d0 + mov3q.l #3,%d4 + mov3q.l #1,%d2 + move.l 1187521622,%a0 + move.l %d2,%d1 + add.l #610376,%a0 + move.b (%a0),%d3 + and.l %d4,%d0 + lsl.l %d0,%d1 + or.l %d1,%d3 + move.b %d3,(%a0) + move.l #1187500772,%d3 + move.b 269161566,%d0 + or.l %d0,%d1 + move.b %d1,269161566 + move.l 1187521622,%a0 + add.l #635698,%a0 + mov3q.l #1,(%a0) + mov3q.l #1,269452696 + jsr 1073905152 + move.l 8(%fp),%d6 + move.l %d6,%d4 + lsl.l %d6,%d2 + lea (locked.4),%a0 + sub.l %a0,%d3 + not.l %d2 +.L481: + lea (%a0,%d3.l),%a1 + move.b (%a1),%d0 + move.b (%a0)+,%d1 + and.l %d2,%d0 + lsl.l %d4,%d1 + or.l %d1,%d0 + move.b %d0,(%a1) + cmp.l #locked.4+64,%a0 + jne .L481 + move.l 8(%fp),%a0 + pea 8(%a0) + jsr 1074387488 + movem.l -148(%fp),#15612 + addq.l #4,%sp + mov3q.l #1,%d0 + unlk %fp + rts +.L441: + movem.l -148(%fp),#15612 + clr.l %d0 + unlk %fp + rts +.L444: + mvz.w #36435,%d0 + clr.l %d2 + lea midi_control,%a2 + move.b (%a0,%d0.l),%d3 + mvz.b %d3,%d3 + jra .L450 +.L515: + lea (24,%a5),%a1 + move.l %a5,%a0 +.L440: + addq.l #1,%a0 + tst.b -1(%a0) + jne .L441 + cmp.l %a1,%a0 + jne .L440 + lea (32,%a5),%a0 + lea (40,%a5),%a1 +.L442: + addq.l #1,%a0 + tst.b -1(%a0) + jne .L441 + cmp.l %a1,%a0 + jne .L442 + lea (48,%a5),%a0 + lea (2096,%a5),%a1 +.L443: + mvz.b (%a0),%d2 + addq.l #1,%a0 + cmp.l #255,%d2 + jne .L441 + cmp.l %a1,%a0 + jne .L443 + move.l %d0,%a0 + move.l #36437,%a1 + add.l %d1,%a0 + tst.b (%a0,%a1.l) + jeq .L444 + jra .L519 +.L516: + move.b %d0,-51(%fp,%d2.l) + addq.l #1,%d2 + jra .L450 +.L455: + mvz.b -31(%a0),%d4 + lea (-31,%a0),%a5 + move.l %a5,-104(%fp) + cmp.l #255,%d4 + jeq .L457 + st %d4 + move.l -104(%fp),%a5 + move.b %d4,(%a5) + move.b %d4,-1(%a3) + tst.b (%a1) + jeq .L457 + jra .L456 +.L517: + mov3q.l #1,%d5 + lsl.l %d6,%d5 +.L460: + move.l -108(%fp),%a5 + move.l %d5,%d6 + not.l %d6 + move.b (%a5),%d4 + move.l -108(%fp),%a5 + and.l %d6,%d4 + move.b %d4,(%a5) + move.b (%a1),%d4 + tst.l %d1 + jeq .L520 +.L462: + tst.b %d4 + jne .L463 + clr.b %d1 + jra .L465 +.L456: + move.b 2(%a1),%d4 + mvz.b -30(%a0),%d5 + lea (-30,%a0),%a5 + move.l %a5,-104(%fp) + mvz.b %d4,%d7 + cmp.l %d7,%d5 + jne .L458 + move.l -108(%fp),%a5 + mov3q.l #1,%d5 + lsl.l %d6,%d5 + move.b (%a5),%d4 + or.l %d5,%d4 + jra .L461 +.L464: + lea (-29,%a0),%a5 +.L474: + mvz.b (%a5),%d1 + addq.l #1,%a5 + cmp.l #255,%d1 + jne .L473 + cmp.l %a0,%a5 + jne .L474 + clr.b %d1 + lea (locked.4),%a5 + move.b %d1,(%a5,%d2.l) +.L512: + move.w #23,%a5 + move.l %d5,%d6 + not.l %d6 + sub.l %d3,%a5 + add.l %d0,%a5 + move.b (%a5),%d1 + and.l %d6,%d1 + jra .L476 +.L518: + move.l -72(%fp),-(%sp) + mov3q.l #6,-(%sp) + move.l 8(%fp),-(%sp) + jsr midi_set_control + mov3q.l #3,%d4 + mov3q.l #1,%d2 + lea (12,%sp),%sp + move.b -61(%fp),%d0 + move.l 1187521622,%a0 + move.l %d2,%d1 + add.l #610376,%a0 + move.b (%a0),%d3 + and.l %d4,%d0 + lsl.l %d0,%d1 + or.l %d1,%d3 + move.b %d3,(%a0) + move.l #1187500772,%d3 + move.b 269161566,%d0 + or.l %d0,%d1 + move.b %d1,269161566 + move.l 1187521622,%a0 + add.l #635698,%a0 + mov3q.l #1,(%a0) + mov3q.l #1,269452696 + jsr 1073905152 + move.l 8(%fp),%d6 + move.l %d6,%d4 + lsl.l %d6,%d2 + lea (locked.4),%a0 + sub.l %a0,%d3 + not.l %d2 + jra .L481 +.L473: + moveq #1,%d1 + lea (locked.4),%a5 + move.b %d1,(%a5,%d2.l) + tst.b (%a1) + jne .L512 + move.w #23,%a5 + sub.l %d3,%a5 + add.l %d0,%a5 + move.b (%a5),%d1 + or.l %d5,%d1 + jra .L476 +.L453: + move.l -104(%fp),%a5 + mvz.b (%a5),%d4 + cmp.l #255,%d4 + jeq .L455 + st %d5 + move.l -104(%fp),%a5 + move.b %d5,(%a5) + move.b %d5,-2(%a3) + tst.b (%a1) + jne .L483 + jra .L455 +.L487: + clr.b %d5 + move.l -104(%fp),%a5 + mvz.b (%a5),%d7 + mvz.b %d5,%d4 + cmp.l %d4,%d7 + jne .L482 + jra .L483 +.L490: + clr.l %d1 + jra .L466 + .size midi_generate, .-midi_generate + .section .rodata.str1.1 +.LC5: + .string "VECTOR GENERATED" +.LC6: + .string "NO CHANGE" + .text + .align 2 + .type vector_midi_yes, @function +vector_midi_yes: + move.b 269161676,%d0 + mov3q.l #1,-(%sp) + mov3q.l #1,-(%sp) + mvz.b %d0,%d0 + move.l %d0,-(%sp) + jsr midi_generate + lea (12,%sp),%sp + tst.l %d0 + jeq .L523 + move.l #.LC5,%d0 + pea 32.w + move.l %d0,-(%sp) + jsr 1074111160 + addq.l #8,%sp + rts +.L523: + move.l #.LC6,%d0 + pea 32.w + move.l %d0,-(%sp) + jsr 1074111160 + addq.l #8,%sp + rts + .size vector_midi_yes, .-vector_midi_yes + .align 2 + .type vector_midi_knob, @function +vector_midi_knob: + lea (-16,%sp),%sp + move.l %d2,-(%sp) + move.l 28(%sp),%a1 + mov3q.l #5,%d2 + move.b 269161676,%d1 + move.l 24(%sp),%d0 + move.l 32(%sp),12(%sp) + cmp.l %a1,%d2 + jcs .L526 + tst.l %d0 + jeq .L528 + mov3q.l #1,%d0 + and.l 36(%sp),%d0 + addq.l #1,%d0 +.L528: + mov3q.l #6,%d2 + muls.l %d2,%d0 + moveq #15,%d2 + move.l %d0,%a0 + add.l #midi_layout,%a0 + mvz.b (%a0,%a1.l),%d0 + cmp.l %d0,%d2 + jcc .L537 +.L526: + move.l (%sp)+,%d2 + lea (16,%sp),%sp + rts +.L537: + mvz.b %d1,%d1 + move.l %d1,16(%sp) + move.l %d0,-(%sp) + move.l %d1,-(%sp) + move.l %d0,12(%sp) + jsr midi_control + move.l %d0,%a1 + add.l 20(%sp),%d0 + addq.l #8,%sp + move.l 4(%sp),%a0 + tst.l %d0 + jlt .L531 + move.l #midi_max,%d1 + mvz.b (%a0,%d1.l),%d1 + cmp.l %d1,%d0 + jge .L529 + move.l %d0,%d1 +.L529: + cmp.l %a1,%d1 + jeq .L526 + move.l %d1,-(%sp) + move.l %a0,-(%sp) + move.l 24(%sp),-(%sp) + move.l %a0,16(%sp) + move.l %a1,20(%sp) + jsr midi_set_control + clr.l -(%sp) + mov3q.l #1,-(%sp) + move.l 36(%sp),-(%sp) + jsr midi_generate + lea (24,%sp),%sp + move.l 4(%sp),%a0 + tst.l %d0 + jne .L526 + move.l 8(%sp),32(%sp) + move.l %a0,28(%sp) + move.l 16(%sp),24(%sp) + move.l (%sp)+,%d2 + lea (16,%sp),%sp + jra midi_set_control +.L531: + clr.l %d1 + jra .L529 + .size vector_midi_knob, .-vector_midi_knob + .align 2 + .type vector_midi_assign.part.0, @function +vector_midi_assign.part.0: + lea (-16,%sp),%sp + movem.l #1052,(%sp) + move.l 1187521622,%a0 + mov3q.l #3,%d2 + move.l 20(%sp),%d3 + move.l %d3,%d1 + lsl.l #5,%d1 + mvz.w #6322,%d4 + add.l #585088,%a0 + move.b 269161679,%d0 + move.l %d1,%a1 + lea (994,%a1),%a1 + and.l %d2,%d0 + muls.l %d4,%d0 + add.l %d0,%a0 + mvz.b (%a0,%a1.l),%d2 + move.l %d3,%a0 + pea 1(%a0) + mov3q.l #6,-(%sp) + move.l %d3,-(%sp) + jsr midi_set_control + lea (12,%sp),%sp + moveq #119,%d0 + cmp.l %d2,%d0 + jcs .L541 + move.l %d2,%d1 + moveq #12,%d4 + remu.l %d4,%d0:%d1 + lea midi_page1,%a2 + sub.l %d0,%d2 + move.l %d2,-(%sp) + clr.l -(%sp) + move.l %d3,-(%sp) + jsr (%a2) + lea (12,%sp),%sp + mov3q.l #3,%d2 +.L540: + pea 64.w + move.l %d2,-(%sp) + move.l %d3,-(%sp) + jsr (%a2) + addq.l #1,%d2 + lea (12,%sp),%sp + mov3q.l #6,%d0 + cmp.l %d2,%d0 + jne .L540 + clr.l -(%sp) + clr.l -(%sp) + move.l %d3,-(%sp) + jsr midi_generate + movem.l 12(%sp),#1052 + lea (28,%sp),%sp + rts +.L541: + moveq #108,%d2 + move.l %d2,-(%sp) + clr.l -(%sp) + move.l %d3,-(%sp) + lea midi_page1,%a2 + mov3q.l #3,%d2 + jsr (%a2) + lea (12,%sp),%sp + jra .L540 + .size vector_midi_assign.part.0, .-vector_midi_assign.part.0 + .align 2 + .type vector_midi_assign, @function +vector_midi_assign: + tst.l 8(%sp) + jne .L549 + rts +.L549: + jra (vector_midi_assign.part.0) + .size vector_midi_assign, .-vector_midi_assign + .align 2 + .globl vector_next_seed + .type vector_next_seed, @function +vector_next_seed: + move.l 4(%sp),%d0 + moveq #127,%d1 + addq.l #1,%d0 + and.l %d1,%d0 + rts + .size vector_next_seed, .-vector_next_seed + .align 2 + .globl vector_pack + .type vector_pack, @function +vector_pack: + move.l %d3,-(%sp) + move.l %d2,-(%sp) + move.l 16(%sp),%a0 + mov3q.l #4,%d2 + move.l 12(%sp),%a1 + move.b 3(%a0),%d0 + mvz.b %d0,%d1 + cmp.l %d1,%d2 + jcc .L553 + moveq #4,%d0 +.L553: + move.b (%a0),%d1 + lsl.l #4,%d0 + moveq #15,%d3 + mvz.b %d1,%d2 + cmp.l %d2,%d3 + jcc .L554 + moveq #15,%d1 +.L554: + or.l %d1,%d0 + move.b %d0,(%a1) + move.b 10(%a0),%d0 + jeq .L555 + moveq #1,%d0 +.L555: + move.b 1(%a0),%d1 + lsl.l #5,%d0 + moveq #16,%d3 + mvz.b %d1,%d2 + cmp.l %d2,%d3 + jcc .L556 + moveq #16,%d1 +.L556: + or.l %d1,%d0 + moveq #12,%d2 + move.b %d0,1(%a1) + move.b 6(%a0),%d0 + mvz.b %d0,%d1 + cmp.l %d1,%d2 + jcc .L557 + moveq #12,%d0 +.L557: + move.b 2(%a0),%d1 lsl.l #4,%d0 moveq #11,%d3 mvz.b %d1,%d2 cmp.l %d2,%d3 - jcc .L301 + jcc .L558 moveq #11,%d1 -.L301: +.L558: or.l %d1,%d0 moveq #126,%d2 move.b %d0,2(%a1) move.b 4(%a0),%d0 mvz.b %d0,%d1 cmp.l %d1,%d2 - jcc .L302 + jcc .L559 moveq #126,%d0 -.L302: +.L559: move.b %d0,3(%a1) move.b 5(%a0),%d0 - jpl .L303 + jpl .L560 moveq #127,%d0 -.L303: +.L560: move.b %d0,4(%a1) moveq #24,%d3 move.b 7(%a0),%d0 mvz.b %d0,%d1 cmp.l %d1,%d3 - jcc .L304 + jcc .L561 moveq #24,%d0 -.L304: +.L561: move.b %d0,5(%a1) moveq #63,%d2 move.b 8(%a0),%d0 mvz.b %d0,%d1 cmp.l %d1,%d2 - jcc .L305 + jcc .L562 moveq #63,%d0 -.L305: +.L562: move.b %d0,6(%a1) moveq #64,%d3 move.b 9(%a0),%d0 mvz.b %d0,%d1 cmp.l %d1,%d3 - jcc .L306 + jcc .L563 moveq #64,%d0 -.L306: +.L563: moveq #127,%d1 and.l 20(%sp),%d1 move.b %d0,7(%a1) @@ -1901,11 +3534,11 @@ save_settings: sub.l %a6,%a6 lea (12,%sp),%sp mulu.w #30,%d3 -.L315: +.L572: move.b (%a4)+,%d2 mov3q.l #2,%d0 cmp.l %a6,%d0 - jcc .L319 + jcc .L576 move.l #269161679,%a3 mov3q.l #3,%d4 move.b (%a3),%d0 @@ -1927,8 +3560,8 @@ save_settings: move.b %d2,(%a1,%a2.l) move.b %d2,(%a0,%a2.l) cmp.l %a6,%d0 - jne .L315 -.L320: + jne .L572 +.L577: move.b (%a3),%d0 move.l 1187521622,%a1 mov3q.l #3,%d2 @@ -1947,7 +3580,7 @@ save_settings: movem.l (%sp),#23580 lea (40,%sp),%sp rts -.L319: +.L576: move.l #269161679,%a3 mov3q.l #3,%d4 move.b (%a3),%d0 @@ -1969,8 +3602,8 @@ save_settings: move.b %d2,(%a1,%a2.l) move.b %d2,(%a0,%a2.l) cmp.l %a6,%d0 - jne .L315 - jra .L320 + jne .L572 + jra .L577 .size save_settings, .-save_settings .align 2 .globl vector_unpack @@ -1988,9 +3621,9 @@ vector_unpack: lsr.l #4,%d0 move.b %d0,%d1 cmp.l %d0,%d2 - jcc .L322 + jcc .L579 moveq #4,%d1 -.L322: +.L579: move.b %d1,3(%a1) moveq #31,%d1 moveq #16,%d2 @@ -1998,9 +3631,9 @@ vector_unpack: and.l %d1,%d0 move.b %d0,%d1 cmp.l %d0,%d2 - jcc .L323 + jcc .L580 moveq #16,%d1 -.L323: +.L580: move.b %d1,1(%a1) mov3q.l #1,%d1 moveq #15,%d2 @@ -2013,55 +3646,55 @@ vector_unpack: moveq #11,%d2 move.b %d0,%d1 cmp.l %d0,%d2 - jcc .L324 + jcc .L581 moveq #11,%d1 -.L324: +.L581: move.b %d1,2(%a1) moveq #12,%d2 mvz.b 2(%a0),%d0 lsr.l #4,%d0 move.b %d0,%d1 cmp.l %d0,%d2 - jcc .L325 + jcc .L582 moveq #12,%d1 -.L325: +.L582: move.b %d1,6(%a1) moveq #126,%d2 move.b 3(%a0),%d0 mvz.b %d0,%d1 cmp.l %d1,%d2 - jcc .L326 + jcc .L583 moveq #126,%d0 -.L326: +.L583: move.b %d0,4(%a1) move.b 4(%a0),%d0 - jpl .L327 + jpl .L584 moveq #127,%d0 -.L327: +.L584: move.b %d0,5(%a1) moveq #24,%d2 move.b 5(%a0),%d0 mvz.b %d0,%d1 cmp.l %d1,%d2 - jcc .L328 + jcc .L585 moveq #24,%d0 -.L328: +.L585: move.b %d0,7(%a1) moveq #63,%d2 move.b 6(%a0),%d0 mvz.b %d0,%d1 cmp.l %d1,%d2 - jcc .L329 + jcc .L586 moveq #63,%d0 -.L329: +.L586: move.b %d0,8(%a1) moveq #64,%d2 move.b 7(%a0),%d0 mvz.b %d0,%d1 cmp.l %d1,%d2 - jcc .L330 + jcc .L587 moveq #64,%d0 -.L330: +.L587: move.b %d0,9(%a1) moveq #127,%d1 move.b 8(%a0),%d0 @@ -2082,16 +3715,16 @@ vector_generate: move.l 20(%sp),%d1 move.l 24(%sp),%a0 tst.l %d0 - jeq .L335 + jeq .L592 tst.l %d1 - jeq .L335 + jeq .L592 lea (-1,%a0),%a2 moveq #63,%d2 cmp.l %a2,%d2 - jcs .L335 + jcs .L592 moveq #127,%d2 cmp.l 28(%sp),%d2 - jcs .L335 + jcs .L592 move.l %a0,24(%sp) move.l %d1,20(%sp) move.l %d0,16(%sp) @@ -2099,7 +3732,7 @@ vector_generate: move.l (%sp)+,%a2 addq.l #4,%sp jra (vector_generate.part.0) -.L335: +.L592: move.l (%sp)+,%d2 clr.l %d0 move.l (%sp)+,%a2 @@ -2112,42 +3745,42 @@ vector_generate: vector_track_empty: move.l 4(%sp),%d1 tst.l %d1 - jeq .L345 + jeq .L602 mvz.w #2329,%d0 cmp.l 8(%sp),%d0 - jcc .L345 + jcc .L602 move.l %d1,%d0 move.l %d1,%a0 add.l #64,%d0 -.L346: +.L603: addq.l #1,%a0 tst.b -1(%a0) - jne .L345 + jne .L602 cmp.l %a0,%d0 - jne .L346 + jne .L603 move.l %d1,%a0 move.l %d1,%d0 lea (72,%a0),%a0 add.l #80,%d0 -.L347: +.L604: addq.l #1,%a0 tst.b -1(%a0) - jne .L345 + jne .L602 cmp.l %a0,%d0 - jne .L347 + jne .L604 move.l %d1,%a0 add.l #2137,%d1 lea (89,%a0),%a0 -.L348: +.L605: mvz.b (%a0),%d0 addq.l #1,%a0 cmp.l #255,%d0 - jne .L345 + jne .L602 cmp.l %a0,%d1 - jne .L348 + jne .L605 mov3q.l #1,%d0 rts -.L345: +.L602: clr.l %d0 rts .size vector_track_empty, .-vector_track_empty @@ -2159,12 +3792,12 @@ vector_write_phrase: movem.l #15612,(%sp) move.l 44(%sp),%d3 tst.l %d3 - jeq .L355 + jeq .L612 move.l 48(%sp),%d0 cmp.l #2329,%d0 - jls .L355 + jls .L612 tst.l 52(%sp) - jeq .L355 + jeq .L612 move.l 52(%sp),%a0 moveq #63,%d1 move.b 256(%a0),%d4 @@ -2172,37 +3805,37 @@ vector_write_phrase: subq.l #1,%d0 mvz.b %d0,%d0 cmp.l %d0,%d1 - jcs .L355 + jcs .L612 tst.l 56(%sp) - jne .L358 + jne .L615 move.l 48(%sp),-(%sp) move.l %d3,-(%sp) jsr vector_track_empty addq.l #8,%sp tst.l %d0 - jeq .L354 -.L358: + jeq .L611 +.L615: mvz.b %d4,%d4 move.l 52(%sp),%a2 clr.l %d1 move.l %a2,%a0 -.L362: +.L619: move.b (%a0),%d0 mov3q.l #1,%d5 mvz.b %d0,%d2 cmp.l %d2,%d5 - jcs .L355 + jcs .L612 cmp.l %d4,%d1 - jcs .L359 + jcs .L616 tst.b %d0 - jne .L355 -.L360: + jne .L612 +.L617: addq.l #1,%d1 addq.l #4,%a0 moveq #64,%d0 cmp.l %d1,%d0 - jne .L362 -.L395: + jne .L619 +.L652: move.l %d3,%a3 move.l %d3,%a1 move.l %d3,%a4 @@ -2210,7 +3843,7 @@ vector_write_phrase: lea (89,%a3),%a3 lea (121,%a1),%a1 lea (2202,%a4),%a4 -.L374: +.L631: mov3q.l #7,%d1 and.l %d5,%d1 move.l %d5,%d4 @@ -2223,33 +3856,33 @@ vector_write_phrase: asr.l %d1,%d0 and.l %d2,%d0 tst.b (%a2) - jeq .L375 + jeq .L632 move.b 1(%a2),%d2 -.L363: +.L620: move.b %d2,(%a3) tst.b (%a2) - jeq .L376 + jeq .L633 move.b 2(%a2),%d2 -.L364: +.L621: move.b %d2,13(%a3) tst.b (%a2) - jeq .L377 + jeq .L634 move.b 3(%a2),%d2 -.L365: +.L622: move.b %d2,15(%a3) mov3q.l #1,%d2 lsl.l %d1,%d2 move.b (%a0),%d1 tst.b (%a2) - jeq .L366 + jeq .L623 or.l %d2,%d1 -.L367: +.L624: move.b %d1,(%a0) tst.l %d0 - jne .L368 + jne .L625 tst.b (%a2) - jeq .L369 -.L368: + jeq .L626 +.L625: clr.b %d0 clr.b (%a4) move.w #15,%a5 @@ -2272,10 +3905,10 @@ vector_write_phrase: move.b (%a0,%d3.l),%d1 and.l %d1,%d0 move.b %d0,(%a0,%d3.l) -.L369: +.L626: move.l %a3,%a0 clr.l %d1 -.L370: +.L627: move.b (%a0)+,%d0 not.l %d0 tst.b %d0 @@ -2284,17 +3917,17 @@ vector_write_phrase: neg.l %d0 or.l %d0,%d1 cmp.l %a1,%a0 - jne .L370 + jne .L627 move.w #23,%a0 sub.l %d4,%a0 add.l %d3,%a0 move.b (%a0),%d0 tst.b (%a2) - jne .L371 + jne .L628 tst.l %d1 - jeq .L371 + jeq .L628 or.l %d0,%d2 -.L373: +.L630: move.b %d2,(%a0) addq.l #1,%d5 addq.l #4,%a2 @@ -2303,20 +3936,20 @@ vector_write_phrase: lea (32,%a1),%a1 moveq #64,%d0 cmp.l %d5,%d0 - jne .L374 + jne .L631 mov3q.l #1,%d0 -.L354: +.L611: movem.l (%sp),#15612 lea (40,%sp),%sp rts -.L355: +.L612: movem.l (%sp),#15612 clr.l %d0 lea (40,%sp),%sp rts -.L359: +.L616: tst.b %d0 - jeq .L360 + jeq .L617 move.b 1(%a0),%d0 moveq #120,%d5 mvz.b %d0,%d2 @@ -2324,41 +3957,41 @@ vector_write_phrase: mvz.b %d0,%d0 subq.l #4,%d2 cmp.l %d0,%d5 - jcs .L355 + jcs .L612 mov3q.l #5,%d5 rems.l %d5,%d0:%d2 tst.l %d0 - jne .L355 + jne .L612 mvz.b 2(%a0),%d2 moveq #126,%d5 cmp.l %d2,%d5 - jcs .L354 + jcs .L611 tst.b 3(%a0) - jlt .L354 + jlt .L611 addq.l #1,%d1 addq.l #4,%a0 moveq #64,%d0 cmp.l %d1,%d0 - jne .L362 - jra .L395 -.L371: + jne .L619 + jra .L652 +.L628: not.l %d2 and.l %d0,%d2 - jra .L373 -.L366: + jra .L630 +.L623: move.l %d2,%d7 not.l %d7 and.l %d7,%d1 - jra .L367 -.L377: + jra .L624 +.L634: st %d2 - jra .L365 -.L376: + jra .L622 +.L633: st %d2 - jra .L364 -.L375: + jra .L621 +.L632: st %d2 - jra .L363 + jra .L620 .size vector_write_phrase, .-vector_write_phrase .align 2 .globl vector_signed_track @@ -2369,31 +4002,31 @@ vector_signed_track: mov3q.l #7,%d1 move.l 8(%sp),%a0 cmp.l %d0,%d1 - jcs .L399 + jcs .L656 mvz.b 34(%a0,%d0.l),%d1 mov3q.l #1,%d2 cmp.l %d1,%d2 - jcs .L399 + jcs .L656 moveq #30,%d1 moveq #83,%d2 muls.l %d1,%d0 lea 60(%a0,%d0.l),%a0 mvz.b (%a0),%d0 cmp.l %d0,%d2 - jeq .L403 -.L399: + jeq .L660 +.L656: move.l (%sp)+,%d2 clr.l %d0 rts -.L403: +.L660: mvz.b 1(%a0),%d0 moveq #50,%d1 cmp.l %d0,%d1 - jne .L399 + jne .L656 mvz.b 2(%a0),%d0 subq.l #1,%d0 tst.l %d0 - jeq .L400 + jeq .L657 move.b 2(%a0),%d0 mov3q.l #2,%d1 move.l (%sp)+,%d2 @@ -2403,7 +4036,7 @@ vector_signed_track: mvs.b %d0,%d0 neg.l %d0 rts -.L400: +.L657: move.l (%sp)+,%d2 mov3q.l #1,%d0 rts @@ -2411,24 +4044,24 @@ vector_signed_track: .align 2 .type generate_track, @function generate_track: - lea (-56,%sp),%sp + lea (-60,%sp),%sp move.l 1187521622,%d0 add.l #-1073741824,%d0 - movem.l #17412,(%sp) + movem.l #17420,(%sp) cmp.l #133169151,%d0 - jls .L435 -.L417: + jls .L698 +.L678: clr.l %d0 -.L404: - movem.l (%sp),#17412 - lea (56,%sp),%sp +.L661: + movem.l (%sp),#17420 + lea (60,%sp),%sp rts -.L435: +.L698: move.l 1187521622,%a0 mov3q.l #3,%d1 move.b 269161679,%d0 mvz.w #6322,%d2 - move.l 60(%sp),-(%sp) + move.l 64(%sp),-(%sp) add.l #585088,%a0 and.l %d1,%d0 muls.l %d2,%d0 @@ -2436,194 +4069,227 @@ generate_track: jsr vector_signed_track addq.l #8,%sp tst.l %d0 - jeq .L404 + jeq .L661 move.b 269161680,%d0 - moveq #15,%d2 - mvz.b %d0,%d1 - move.l %d1,24(%sp) - cmp.l %d1,%d2 - jcs .L417 - move.w 62(%sp),%d1 - move.l 1187521622,%a1 + moveq #15,%d1 + mvz.b %d0,%d3 + move.l %d3,32(%sp) + cmp.l %d3,%d1 + jcs .L678 ext.w %d0 + move.l 1187521622,%d2 lea staging,%a0 - move.l %a1,28(%sp) - move.b 269161679,%d2 - move.l 28(%sp),%a2 - mulu.w #2330,%d1 - move.b %d2,39(%sp) - move.l %d1,%a6 move.w %d0,%d1 + move.l %d2,36(%sp) + move.b 269161679,%d3 + move.w 66(%sp),%d0 mulu.w #36568,%d1 - lea (%a6,%d1.l),%a1 - lea (%a2,%a1.l),%a6 - move.l %a1,32(%sp) + move.b %d3,47(%sp) + mulu.w #2330,%d0 + add.l %d1,%d0 + add.l %d0,%d2 + move.l %d2,%a6 sub.l %a0,%a6 -.L408: + move.l %d0,28(%sp) +.L665: move.b (%a0,%a6.l),%d0 move.b %d0,(%a0)+ cmp.l #staging+2330,%a0 - jne .L408 - tst.l 64(%sp) - jeq .L436 -.L409: + jne .L665 + tst.l 68(%sp) + jeq .L699 +.L666: mvz.w #36437,%d0 - move.l 28(%sp),%a0 + move.l 36(%sp),%a0 add.l %d1,%a0 tst.b (%a0,%d0.l) - jeq .L410 + jeq .L667 move.b staging+80,%d0 -.L411: +.L668: mvz.b %d0,%d0 moveq #63,%d2 move.l %d0,%d1 subq.l #1,%d1 cmp.l %d1,%d2 - jcs .L417 - move.l 60(%sp),-(%sp) - lea (49,%sp),%a0 - move.l %d0,16(%sp) + jcs .L678 + move.l 64(%sp),-(%sp) + lea (53,%sp),%a0 + move.l %d0,20(%sp) jsr settings - move.w 66(%sp),%d2 addq.l #4,%sp - move.l 1187521622,%a0 - add.l #585088,%a0 - move.b 269161679,%d1 + move.l 1187521622,%d1 + add.l #585088,%d1 + move.b 269161679,%d3 + move.w 66(%sp),%d2 + move.l 16(%sp),%d0 + move.w %d3,%a1 mulu.w #30,%d2 - move.l 12(%sp),%d0 - move.l %d2,%a1 + move.l %d2,%a0 mov3q.l #3,%d2 - and.l %d2,%d1 + lea (497,%a0),%a0 + move.l %a1,%d3 + and.l %d2,%d3 mvz.w #6322,%d2 - lea (497,%a1),%a1 - muls.l %d2,%d1 - moveq #127,%d2 - add.l %d1,%a0 - move.b (%a0,%a1.l),%d1 - and.l %d1,%d2 - move.l %d2,40(%sp) - tst.l 68(%sp) - jeq .L413 - move.l %d2,%d1 + muls.l %d2,%d3 + add.l %d3,%d1 + move.b (%a0,%d1.l),%d1 + moveq #127,%d3 + and.l %d1,%d3 + move.l %d3,40(%sp) + tst.l 72(%sp) + jeq .L670 + move.l %d3,%d1 moveq #127,%d2 addq.l #1,%d1 and.l %d1,%d2 move.l %d2,40(%sp) -.L413: - move.w 62(%sp),%d2 - move.l 1187521622,%a0 - add.l #585088,%a0 - move.b 269161679,%d1 +.L670: + move.l 1187521622,%d1 + add.l #585088,%d1 + move.b 269161679,%d3 + move.w 66(%sp),%d2 + move.w %d3,%a1 mulu.w #24,%d2 - move.l %d2,%a1 + move.l %d2,%a0 mov3q.l #3,%d2 - and.l %d2,%d1 + lea (291,%a0),%a0 + move.l %a1,%d3 + and.l %d2,%d3 mvz.w #6322,%d2 - lea (291,%a1),%a1 - muls.l %d2,%d1 - moveq #127,%d2 - add.l %d1,%a0 - mvz.b (%a0,%a1.l),%d1 - cmp.l %d1,%d2 - jcs .L417 + muls.l %d2,%d3 + add.l %d3,%d1 + moveq #127,%d3 + mvz.b (%a0,%d1.l),%d1 + cmp.l %d1,%d3 + jcs .L678 move.l 40(%sp),-(%sp) move.l %d1,-(%sp) move.l %d0,-(%sp) - pea 57(%sp) + pea 61(%sp) pea phrase jsr (vector_generate.part.0) - move.l 84(%sp),-(%sp) + move.l 88(%sp),-(%sp) pea phrase pea 2330.w pea staging jsr vector_write_phrase lea (36,%sp),%sp tst.l %d0 - jeq .L404 - move.l 28(%sp),%a1 + jeq .L661 + move.l 36(%sp),%a1 cmp.l 1187521622.l,%a1 - jne .L417 + jne .L678 mvz.b 269161680,%d1 - cmp.l 24(%sp),%d1 - jne .L417 - mvz.b 39(%sp),%d1 + cmp.l 32(%sp),%d1 + jne .L678 + mvz.b 47(%sp),%d1 mvz.b 269161679,%d2 cmp.l %d1,%d2 - jne .L417 - move.l 32(%sp),%a1 + jne .L678 + move.l 28(%sp),%a1 sub.l #staging-268525901,%a1 lea staging,%a0 - move.l %a1,24(%sp) -.L416: + move.l %a1,32(%sp) +.L673: lea (%a0,%a6.l),%a2 move.b (%a0)+,%d1 mvz.b (%a2),%d2 - move.l %a2,16(%sp) - move.l %d2,20(%sp) - mvz.b %d1,%d2 - cmp.l 20(%sp),%d2 - jeq .L415 + move.l %a2,20(%sp) + mvz.b %d1,%d3 + cmp.l %d2,%d3 + jeq .L672 move.b %d1,(%a2) - move.l 24(%sp),%a1 + move.l 32(%sp),%a1 lea (-1,%a0),%a2 move.b (%a2),(%a1,%a0.l) -.L415: +.L672: cmp.l #staging+2330,%a0 - jne .L416 + jne .L673 move.l 40(%sp),-(%sp) - pea 49(%sp) - move.l 68(%sp),-(%sp) - move.l %d0,24(%sp) + pea 53(%sp) + move.l 72(%sp),-(%sp) + move.l %d0,28(%sp) jsr save_settings mov3q.l #3,%d2 - move.b 51(%sp),%d1 - move.l 1187521622,%a6 - add.l #610376,%a6 - lea (12,%sp),%sp + mov3q.l #1,%a6 + move.l %a6,%d3 + move.b 59(%sp),%d1 + move.l 1187521622,%a1 + add.l #610376,%a1 and.l %d2,%d1 - move.b (%a6),%d2 - move.w %d2,%a1 - mov3q.l #1,%d2 - lsl.l %d1,%d2 - move.l %d2,%a0 - move.l %d2,%d1 - move.l %a1,%d2 - or.l %d2,%d1 - move.l %a0,%d2 - move.b %d1,(%a6) + move.l %d1,56(%sp) + move.l 56(%sp),%d2 + move.b (%a1),%d1 + lea (12,%sp),%sp + lsl.l %d2,%d3 + or.l %d3,%d1 + move.b %d1,(%a1) move.b 269161566,%d1 - or.l %d2,%d1 + or.l %d3,%d1 + move.l %a6,%d3 move.b %d1,269161566 move.l 1187521622,%a0 add.l #635698,%a0 mov3q.l #1,(%a0) mov3q.l #1,269452696 jsr 1073905152 - jsr 1073953240 - move.l 60(%sp),-(%sp) + move.l #1187501196,%a6 + move.l 64(%sp),%d1 + move.l 16(%sp),%d0 + lea staging+121,%a1 + lsl.l %d1,%d3 + move.l %d3,24(%sp) + not.l %d3 + move.b %d3,23(%sp) +.L674: + lea (-32,%a1),%a0 +.L676: + addq.l #1,%a0 + mvz.b -1(%a0),%d1 + cmp.l #255,%d1 + jne .L679 + cmp.l %a1,%a0 + jne .L676 + sub.l %a0,%a0 +.L675: + move.b (%a6),%d1 + move.b 23(%sp),%d3 + move.l %a0,%d2 + lea (32,%a1),%a1 + and.l %d3,%d1 + or.l %d2,%d1 + move.b %d1,(%a6)+ + cmp.l #1187501260,%a6 + jne .L674 + move.l 64(%sp),-(%sp) + move.l %d0,20(%sp) jsr 1074387488 addq.l #4,%sp - movem.l (%sp),#17412 mov3q.l #1,1187497772 - move.l 12(%sp),%d0 - lea (56,%sp),%sp + movem.l (%sp),#17420 + move.l 16(%sp),%d0 + lea (60,%sp),%sp rts -.L436: +.L699: pea 2330.w pea staging - move.l %d1,20(%sp) + move.l %d1,24(%sp) jsr vector_track_empty addq.l #8,%sp - move.l 12(%sp),%d1 + move.l 16(%sp),%d1 tst.l %d0 - jne .L409 - movem.l (%sp),#17412 - lea (56,%sp),%sp + jne .L666 + movem.l (%sp),#17420 + lea (60,%sp),%sp rts -.L410: +.L667: mvz.w #36435,%d0 move.b (%a0,%d0.l),%d0 - jra .L411 + jra .L668 +.L679: + move.b 27(%sp),%d2 + move.w %d2,%a0 + jra .L675 .size generate_track, .-generate_track .align 2 .type change_control, @function @@ -2659,27 +4325,27 @@ change_control: mov3q.l #5,%d0 mvz.b %d1,%d2 cmp.l 8(%fp),%d0 - jcs .L438 + jcs .L701 lea (-22,%fp),%a1 add.l 8(%fp),%a1 move.l 12(%fp),%a0 mvz.b (%a1),%d1 add.l %d1,%a0 tst.l %a0 - jlt .L458 -.L441: + jlt .L721 +.L704: move.l 8(%fp),%a2 move.l #vector_control_max,%d0 mvz.b (%a2,%d0.l),%d0 cmp.l %d0,%a0 - jge .L444 + jge .L707 move.l %a0,%d0 -.L444: +.L707: cmp.l %d1,%d0 - jeq .L437 + jeq .L700 move.b %d0,(%a1) move.l %d2,%d0 -.L447: +.L710: move.l %d0,-(%sp) pea -22(%fp) move.l -32(%fp),-(%sp) @@ -2693,36 +4359,36 @@ change_control: lea (24,%sp),%sp move.l -28(%fp),%a0 tst.l %d0 - jeq .L459 -.L448: + jeq .L722 +.L711: mov3q.l #-1,-(%sp) jsr 1074059592 mov3q.l #1,1187497772 addq.l #4,%sp -.L437: +.L700: move.l -40(%fp),%d2 move.l -36(%fp),%a2 unlk %fp rts -.L438: +.L701: mov3q.l #6,%d0 cmp.l 8(%fp),%d0 - jeq .L440 + jeq .L703 move.l 8(%fp),%d1 move.l 12(%fp),%a0 lea -23(%fp,%d1.l),%a1 mvz.b (%a1),%d1 add.l %d1,%a0 tst.l %a0 - jge .L441 -.L458: + jge .L704 +.L721: tst.l %d1 - jeq .L437 + jeq .L700 clr.b %d0 move.b %d0,(%a1) move.l %d2,%d0 - jra .L447 -.L459: + jra .L710 +.L722: move.l %d2,-(%sp) pea -11(%fp) move.l -32(%fp),-(%sp) @@ -2732,19 +4398,19 @@ change_control: jsr 1074059592 mov3q.l #1,1187497772 addq.l #4,%sp - jra .L437 -.L440: + jra .L700 +.L703: move.l 12(%fp),%d0 add.l %d2,%d0 tst.l %d0 - jlt .L445 + jlt .L708 moveq #127,%d1 cmp.l %d0,%d1 - jge .L446 + jge .L709 moveq #127,%d0 -.L446: +.L709: cmp.l %d2,%d0 - jeq .L437 + jeq .L700 move.l %d0,-(%sp) pea -22(%fp) move.l -32(%fp),-(%sp) @@ -2758,11 +4424,11 @@ change_control: lea (24,%sp),%sp move.l -28(%fp),%a0 tst.l %d0 - jne .L448 - jra .L459 -.L445: + jne .L711 + jra .L722 +.L708: tst.b %d1 - jeq .L437 + jeq .L700 clr.l %d0 move.l %d0,-(%sp) pea -22(%fp) @@ -2777,8 +4443,8 @@ change_control: lea (24,%sp),%sp move.l -28(%fp),%a0 tst.l %d0 - jne .L448 - jra .L459 + jne .L711 + jra .L722 .size change_control, .-change_control .align 2 .type generator_view, @function @@ -2787,15 +4453,15 @@ generator_view: add.l #-1073741824,%d0 move.l %d2,-(%sp) cmp.l #133169151,%d0 - jhi .L463 + jhi .L726 tst.b -2147483627.l - jeq .L471 -.L463: + jeq .L734 +.L726: clr.l %d0 -.L460: +.L723: move.l (%sp)+,%d2 rts -.L471: +.L734: move.b 269161676,%d1 move.l 1187521622,%a0 mov3q.l #3,%d2 @@ -2810,14 +4476,14 @@ generator_view: jsr vector_signed_track addq.l #8,%sp tst.l %d0 - jeq .L463 + jeq .L726 move.l edit_view,%d0 tst.l %d0 - jne .L463 + jne .L726 tst.b 1187502296.l - jne .L460 + jne .L723 tst.l 1175263034 - jne .L460 + jne .L723 tst.l 1175262868 seq %d0 move.l (%sp)+,%d2 @@ -2841,64 +4507,64 @@ vector_validate_part: move.l %a2,%a3 add.l #60,%d4 lea (34,%a4),%a4 -.L478: +.L741: mvz.b (%a4,%d1.l),%d0 mov3q.l #1,%d6 cmp.l %d0,%d6 - jcs .L476 + jcs .L739 lea (%a6,%d4.l),%a0 moveq #83,%d7 mvz.b (%a0),%d0 cmp.l %d0,%d7 - jeq .L503 -.L476: + jeq .L766 +.L739: addq.l #1,%d1 lea (30,%a6),%a6 lea (12,%a3),%a3 cmp.l #240,%a6 - jne .L478 + jne .L741 move.l %d2,-(%sp) move.l 148(%sp),%a0 clr.l %d5 jsr (%a0) addq.l #4,%sp sub.l %a0,%a0 -.L483: +.L746: btst %d5,%d3 - jne .L504 + jne .L767 addq.l #1,%d5 lea (30,%a0),%a0 lea (12,%a2),%a2 cmp.l #240,%a0 - jne .L483 -.L507: + jne .L746 +.L770: movem.l (%sp),#23804 lea (136,%sp),%sp rts -.L503: +.L766: mvz.b 1(%a0),%d0 moveq #50,%d6 cmp.l %d0,%d6 - jne .L476 + jne .L739 mvz.b 2(%a0),%d0 subq.l #1,%d0 tst.l %d0 - jeq .L474 + jeq .L737 mvz.b 2(%a0),%d0 subq.l #2,%d0 tst.l %d0 - jne .L476 -.L474: + jne .L739 +.L737: mov3q.l #1,%d0 lsl.l %d1,%d0 sub.l %a0,%a0 or.l %d0,%d3 -.L477: +.L740: lea 60(%a6,%a0.l),%a1 mov3q.l #5,%d7 cmp.l %a0,%d7 - jcc .L475 -.L505: + jcc .L738 +.L768: move.l %a0,%d6 mov3q.l #6,%d7 remu.l %d7,%d0:%d6 @@ -2910,25 +4576,25 @@ vector_validate_part: clr.b (%a1) addq.l #1,%a0 cmp.l %a0,%d0 - jeq .L476 + jeq .L739 lea 60(%a6,%a0.l),%a1 mov3q.l #5,%d7 cmp.l %a0,%d7 - jcs .L505 -.L475: + jcs .L768 +.L738: add.l %d2,%a1 move.b (%a1),(%a3,%a0.l) clr.b (%a1) addq.l #1,%a0 - jra .L477 -.L504: + jra .L740 +.L767: clr.l %d1 lea (%a0,%d2.l),%a3 -.L482: +.L745: mov3q.l #5,%d4 cmp.l %d1,%d4 - jcs .L480 -.L506: + jcs .L743 +.L769: lea (%a2,%d1.l),%a4 mov3q.l #5,%d4 move.l %d2,%a1 @@ -2936,8 +4602,8 @@ vector_validate_part: move.b (%a4),60(%a0,%a1.l) addq.l #1,%d1 cmp.l %d1,%d4 - jcc .L506 -.L480: + jcc .L769 +.L743: move.l %d1,%d6 mov3q.l #6,%d7 remu.l %d7,%d4:%d6 @@ -2947,13 +4613,13 @@ vector_validate_part: moveq #12,%d4 move.b (%a4),492(%a1) cmp.l %d1,%d4 - jne .L482 + jne .L745 addq.l #1,%d5 lea (30,%a0),%a0 lea (12,%a2),%a2 cmp.l #240,%a0 - jne .L483 - jra .L507 + jne .L746 + jra .L770 .size vector_validate_part, .-vector_validate_part .align 2 .globl st_validate_part @@ -2973,14 +4639,14 @@ st_selected: add.l #-1073741824,%d0 move.l %d2,-(%sp) cmp.l #133169151,%d0 - jhi .L513 + jhi .L776 tst.b -2147483627.l - jeq .L516 -.L513: + jeq .L779 +.L776: move.l (%sp)+,%d2 clr.l %d0 rts -.L516: +.L779: move.b 269161676,%d1 move.l 1187521622,%a0 mov3q.l #3,%d2 @@ -3002,27 +4668,21 @@ st_selected: pool_context: move.l pool_bank,%d0 cmp.l 1187521622.l,%d0 - jeq .L523 -.L519: + jeq .L786 +.L782: clr.l %d0 rts -.L523: +.L786: move.b 269161679,%d0 mov3q.l #3,%d1 and.l %d1,%d0 cmp.l pool_part.l,%d0 - jne .L519 + jne .L782 mvz.b 269161676,%d0 cmp.l pool_track.l,%d0 - jne .L519 + jne .L782 jra st_selected .size pool_context, .-pool_context - .section .rodata.str1.1 -.LC3: - .string "VECTOR GENERATED" -.LC4: - .string "NO CHANGE" - .text .align 2 .globl st_key .type st_key, @function @@ -3039,18 +4699,18 @@ st_key: mvs.b %d1,%d1 neg.l %d1 cmp.l %a0,%d2 - jeq .L525 + jeq .L788 mov3q.l #1,%d0 lsl.l %d1,%d0 move.l mine,%d2 move.l %d2,20(%sp) and.l %d0,%d2 tst.l %d2 - jne .L540 + jne .L803 tst.l %a0 - jne .L534 + jne .L797 mov3q.l #1,%d0 -.L529: +.L792: move.l %d1,%a2 moveq #-3,%d2 lea (%a2,%d1.l*2),%a2 @@ -3060,8 +4720,8 @@ st_key: move.l %d0,%d1 subq.l #1,%d1 cmp.l %d1,%d2 - jcs .L524 -.L541: + jcs .L787 +.L804: move.l %a1,32(%sp) move.l %a0,36(%sp) move.l (%sp)+,%d2 @@ -3069,7 +4729,7 @@ st_key: move.l (%sp)+,%a2 lea (20,%sp),%sp jmp (%a1) -.L534: +.L797: move.l %d1,%a2 mov3q.l #2,%d0 lea (%a2,%d1.l*2),%a2 @@ -3080,15 +4740,15 @@ st_key: move.l %d0,%d1 subq.l #1,%d1 cmp.l %d1,%d2 - jcc .L541 -.L524: + jcc .L804 +.L787: move.l (%sp)+,%d2 move.l (%sp)+,%a2 lea (20,%sp),%sp rts -.L540: +.L803: tst.l %a0 - jne .L524 + jne .L787 not.l %d0 and.l 20(%sp),%d0 move.l (%sp)+,%d2 @@ -3096,7 +4756,7 @@ st_key: move.l %d0,mine lea (20,%sp),%sp rts -.L525: +.L788: move.l %d1,16(%sp) move.l %a0,8(%sp) move.l %a1,12(%sp) @@ -3105,16 +4765,16 @@ st_key: move.l 8(%sp),%a0 move.l 12(%sp),%a1 tst.l %d0 - jeq .L530 + jeq .L793 move.b 1175456541,%d0 btst #5,%d0 - jne .L530 + jne .L793 moveq #62,%d0 cmp.l %a1,%d0 - jeq .L542 + jeq .L805 moveq #49,%d2 cmp.l %a1,%d2 - jne .L530 + jne .L793 move.l %d1,16(%sp) move.l %a0,8(%sp) move.l %a1,12(%sp) @@ -3123,7 +4783,7 @@ st_key: move.l 8(%sp),%a0 move.l 12(%sp),%a1 tst.l %d0 - jeq .L530 + jeq .L793 mov3q.l #1,%d0 or.l %d0,mine move.b 269161676,%d0 @@ -3134,26 +4794,26 @@ st_key: jsr generate_track lea (12,%sp),%sp tst.l %d0 - jeq .L533 + jeq .L796 pea 32.w - move.l #.LC3,%d0 + move.l #.LC5,%d0 move.l %d0,-(%sp) jsr 1074111160 mov3q.l #-1,-(%sp) jsr 1074059592 mov3q.l #1,1187497772 lea (12,%sp),%sp -.L543: +.L806: move.l (%sp)+,%d2 move.l (%sp)+,%a2 lea (20,%sp),%sp rts -.L530: +.L793: clr.l %d0 - jra .L529 -.L542: + jra .L792 +.L805: tst.b 1187502296.l - jne .L530 + jne .L793 tst.l edit_view seq %d0 mov3q.l #2,%d1 @@ -3169,37 +4829,37 @@ st_key: move.l (%sp)+,%a2 lea (20,%sp),%sp rts -.L533: +.L796: pea 32.w - move.l #.LC4,%d0 + move.l #.LC6,%d0 move.l %d0,-(%sp) jsr 1074111160 mov3q.l #-1,-(%sp) jsr 1074059592 mov3q.l #1,1187497772 lea (12,%sp),%sp - jra .L543 + jra .L806 .size st_key, .-st_key .align 2 .type pool_flex, @function pool_flex: move.l pool_bank,%d0 cmp.l 1187521622.l,%d0 - jeq .L551 -.L544: + jeq .L814 +.L807: rts -.L551: +.L814: move.b 269161679,%d0 mov3q.l #3,%d1 and.l %d1,%d0 cmp.l pool_part.l,%d0 - jne .L544 + jne .L807 mvz.b 269161676,%d0 cmp.l pool_track.l,%d0 - jne .L544 + jne .L807 jsr st_selected tst.l %d0 - jeq .L544 + jeq .L807 mov3q.l #1,pool_browse mov3q.l #1,pool_direct jsr st_stock_pool_open @@ -3214,21 +4874,21 @@ pool_flex: pool_static: move.l pool_bank,%d0 cmp.l 1187521622.l,%d0 - jeq .L559 -.L552: + jeq .L822 +.L815: rts -.L559: +.L822: move.b 269161679,%d0 mov3q.l #3,%d1 and.l %d1,%d0 cmp.l pool_part.l,%d0 - jne .L552 + jne .L815 mvz.b 269161676,%d0 cmp.l pool_track.l,%d0 - jne .L552 + jne .L815 jsr st_selected tst.l %d0 - jeq .L552 + jeq .L815 clr.l pool_browse mov3q.l #1,pool_direct jsr st_stock_pool_open @@ -3246,7 +4906,7 @@ st_type: add.l #-1073741824,%d0 move.l %d2,-(%sp) cmp.l #133169151,%d0 - jhi .L562 + jhi .L825 move.l 1187521622,%d0 mov3q.l #3,%d2 move.b 269161679,%d1 @@ -3261,21 +4921,21 @@ st_type: move.l %a0,%d1 sub.l %d0,%d1 cmp.l %d1,%d2 - jcc .L569 -.L562: + jcc .L832 +.L825: move.l 8(%sp),%d0 move.l (%sp)+,%d2 rts -.L569: +.L832: mov3q.l #1,%d2 cmp.l 8(%sp),%d2 - jcs .L562 + jcs .L825 move.l %d1,-(%sp) move.l %d0,-(%sp) jsr vector_signed_track addq.l #8,%sp tst.l %d0 - jeq .L562 + jeq .L825 mov3q.l #5,8(%sp) move.l 8(%sp),%d0 move.l (%sp)+,%d2 @@ -3288,15 +4948,15 @@ st_chooser_type: move.l %d3,-(%sp) move.l %d2,-(%sp) tst.l pool_direct - jeq .L574 + jeq .L837 jsr pool_context tst.l %d0 - jne .L584 -.L574: + jne .L847 +.L837: move.l 1187521622,%d0 add.l #-1073741824,%d0 cmp.l #133169151,%d0 - jhi .L577 + jhi .L840 move.l 1187521622,%d1 mov3q.l #3,%d3 move.b 269161679,%d0 @@ -3312,27 +4972,27 @@ st_chooser_type: sub.l %d1,%d0 mov3q.l #7,%d2 cmp.l %d0,%d2 - jcc .L585 -.L577: + jcc .L848 +.L840: move.l 12(%sp),%d0 move.l (%sp)+,%d2 move.l (%sp)+,%d3 rts -.L585: +.L848: mov3q.l #1,%d3 cmp.l 12(%sp),%d3 - jcs .L577 + jcs .L840 move.l %d0,-(%sp) move.l %d1,-(%sp) jsr vector_signed_track addq.l #8,%sp tst.l %d0 - jeq .L577 + jeq .L840 move.l (%sp)+,%d2 mov3q.l #5,%d0 move.l (%sp)+,%d3 rts -.L584: +.L847: move.l 1187521622,%d0 mov3q.l #3,%d2 move.b 269161679,%d1 @@ -3345,7 +5005,7 @@ st_chooser_type: add.l %d1,%d0 add.l %a0,%d0 cmp.l 16(%sp),%d0 - jne .L574 + jne .L837 move.l (%sp)+,%d2 move.l pool_browse,%d0 move.l (%sp)+,%d3 @@ -3360,10 +5020,10 @@ st_assign: add.l #-1073741824,%d0 movem.l #19468,(%sp) cmp.l #133169151,%d0 - jhi .L587 + jhi .L850 mov3q.l #7,%d0 cmp.l 68(%sp),%d0 - jcs .L587 + jcs .L850 move.l 1187521622,%d1 move.l 64(%sp),%a0 sub.l %d1,%a0 @@ -3375,32 +5035,32 @@ st_assign: remu.l %d1,%d2:%d0 move.l %d2,%a0 tst.l %d2 - jne .L587 + jne .L850 cmp.l #25287,%a6 - jhi .L587 + jhi .L850 move.l 68(%sp),%d1 mov3q.l #1,%d2 move.l 64(%sp),%a2 lea 34(%a2,%d1.l),%a1 mvz.b (%a1),%d1 cmp.l %d1,%d2 - jcc .L616 + jcc .L879 mov3q.l #1,32(%sp) -.L588: +.L851: move.l 68(%sp),%d1 moveq #30,%d0 muls.l %d0,%d1 tst.l 72(%sp) - jne .L589 + jne .L852 tst.l pool_direct - jeq .L590 + jeq .L853 move.l %d1,20(%sp) move.l %a0,24(%sp) jsr pool_context move.l 20(%sp),%d1 move.l 24(%sp),%a0 tst.l %d0 - jeq .L590 + jeq .L853 move.l 1187521622,%d0 add.l #585088,%d0 move.b 269161679,%d2 @@ -3412,12 +5072,12 @@ st_assign: muls.l %d2,%d3 add.l %d3,%d0 cmp.l 64(%sp),%d0 - jne .L590 + jne .L853 move.l 68(%sp),%d3 cmp.l pool_track.l,%d3 - jne .L590 + jne .L853 mov3q.l #2,72(%sp) -.L589: +.L852: move.l 68(%sp),-(%sp) move.l 68(%sp),-(%sp) move.l %d1,28(%sp) @@ -3427,8 +5087,8 @@ st_assign: move.l 20(%sp),%d1 move.l 24(%sp),%a0 tst.l %d0 - jeq .L617 -.L592: + jeq .L880 +.L855: move.l 64(%sp),%a1 move.l #268525902,%d0 sub.l 36(%sp),%d0 @@ -3437,16 +5097,16 @@ st_assign: move.l %a1,%d1 move.l #268526334,%a1 sub.l 36(%sp),%a1 -.L599: +.L862: move.b (%a0),(%a0,%d0.l) lea (432,%a0),%a2 move.b (%a2),(%a1,%a0.l) addq.l #1,%a0 cmp.l %a0,%d1 - jne .L599 + jne .L862 mov3q.l #1,%d0 cmp.l 72(%sp),%d0 - jne .L586 + jne .L849 mvz.w #6322,%d1 move.l %a6,%d0 move.l #1187521622,%a0 @@ -3456,18 +5116,18 @@ st_assign: move.l 68(%sp),%d1 move.l %d1,pool_track move.l %d0,pool_part -.L586: +.L849: movem.l (%sp),#19468 move.l 32(%sp),%d0 lea (60,%sp),%sp rts -.L587: +.L850: movem.l (%sp),#19468 mov3q.l #1,32(%sp) move.l 32(%sp),%d0 lea (60,%sp),%sp rts -.L590: +.L853: move.l 68(%sp),-(%sp) move.l 68(%sp),-(%sp) move.l %d1,28(%sp) @@ -3475,7 +5135,7 @@ st_assign: addq.l #8,%sp move.l 20(%sp),%d1 tst.l %d0 - jeq .L592 + jeq .L855 clr.b %d3 move.l 64(%sp),%a0 move.l #268525902,%d0 @@ -3489,12 +5149,12 @@ st_assign: move.l %a1,%d1 move.l #268526334,%a1 sub.l 36(%sp),%a1 - jra .L599 -.L616: + jra .L862 +.L879: mvz.b (%a1),%d3 move.l %d3,32(%sp) - jra .L588 -.L617: + jra .L851 +.L880: move.l 68(%sp),%a1 moveq #50,%d2 pea 1(%a1) @@ -3524,22 +5184,22 @@ st_assign: move.l %a1,40(%sp) move.l 24(%sp),%a0 move.l %a2,44(%sp) -.L596: +.L859: move.l 40(%sp),%a1 mov3q.l #2,%d2 add.l %a0,%a1 cmp.l %a0,%d2 - jcc .L618 + jcc .L881 move.l %d0,%a3 addq.l #1,%a0 move.l 64(%sp),%a2 moveq #9,%d2 move.b (%a3),(%a2,%a1.l) cmp.l %a0,%d2 - jeq .L592 + jeq .L855 addq.l #1,%d0 - jra .L596 -.L618: + jra .L859 +.L881: move.l 64(%sp),%a2 move.l %d0,%a3 move.l 44(%sp),%a1 @@ -3547,7 +5207,7 @@ st_assign: addq.l #1,%a0 move.b (%a3)+,(%a2,%a1.l) move.l %a3,%d0 - jra .L596 + jra .L859 .size st_assign, .-st_assign .align 2 .globl st_pool_choice_draw @@ -3558,17 +5218,17 @@ st_pool_choice_draw: move.l %a3,-(%sp) move.l %a2,-(%sp) tst.l %d0 - jeq .L619 + jeq .L882 lea pool_labels,%a3 cmp.l 1175346732.l,%a3 - jeq .L630 + jeq .L893 clr.l %d0 -.L619: +.L882: move.l (%sp)+,%a2 move.l (%sp)+,%a3 addq.l #8,%sp rts -.L630: +.L893: move.l %d0,%a0 lea (36,%a0),%a0 move.l %a0,12(%sp) @@ -3577,654 +5237,1830 @@ st_pool_choice_draw: jsr 1073960572 move.l 12(%sp),%a1 addq.l #4,%sp - clr.l %d0 - move.l 40(%a1),%a2 - move.l (%a3)+,-(%sp) - mov3q.l #-1,-(%sp) - lea (-23,%a2),%a2 - move.l %a2,-(%sp) - mov3q.l #5,-(%sp) - move.l 28(%sp),-(%sp) - move.l #1074505846,-(%sp) - move.l %d0,32(%sp) - jsr 1073818584 - lea (24,%sp),%sp - move.l 8(%sp),%d0 - cmp.l 1175346752.l,%d0 - jeq .L631 -.L621: - subq.l #7,%a2 - mov3q.l #1,%d1 - cmp.l %d0,%d1 - jne .L624 -.L632: - move.l (%sp)+,%a2 - mov3q.l #1,1187497772 - move.l (%sp)+,%a3 - addq.l #8,%sp + clr.l %d0 + move.l 40(%a1),%a2 + move.l (%a3)+,-(%sp) + mov3q.l #-1,-(%sp) + lea (-23,%a2),%a2 + move.l %a2,-(%sp) + mov3q.l #5,-(%sp) + move.l 28(%sp),-(%sp) + move.l #1074505846,-(%sp) + move.l %d0,32(%sp) + jsr 1073818584 + lea (24,%sp),%sp + move.l 8(%sp),%d0 + cmp.l 1175346752.l,%d0 + jeq .L894 +.L884: + subq.l #7,%a2 + mov3q.l #1,%d1 + cmp.l %d0,%d1 + jne .L887 +.L895: + move.l (%sp)+,%a2 + mov3q.l #1,1187497772 + move.l (%sp)+,%a3 + addq.l #8,%sp + rts +.L894: + move.l 12(%sp),%a1 + move.l (%a1),%a0 + mov3q.l #-1,-(%sp) + pea 5(%a2) + pea -5(%a0) + pea -1(%a2) + mov3q.l #3,-(%sp) + move.l %a1,-(%sp) + move.l %d0,32(%sp) + jsr 1073816148 + lea (24,%sp),%sp + subq.l #7,%a2 + mov3q.l #1,%d1 + move.l 8(%sp),%d0 + cmp.l %d0,%d1 + jeq .L895 +.L887: + move.l (%a3)+,-(%sp) + mov3q.l #-1,-(%sp) + move.l %a2,-(%sp) + mov3q.l #5,-(%sp) + mov3q.l #1,%d0 + move.l 28(%sp),-(%sp) + move.l #1074505846,-(%sp) + move.l %d0,32(%sp) + jsr 1073818584 + lea (24,%sp),%sp + move.l 8(%sp),%d0 + cmp.l 1175346752.l,%d0 + jne .L884 + jra .L894 + .size st_pool_choice_draw, .-st_pool_choice_draw + .section .rodata.str1.1 +.LC7: + .string "\253 MACHINE:VECTOR \273" + .text + .align 2 + .globl st_pool_choice_open + .type st_pool_choice_open, @function +st_pool_choice_open: + jsr st_selected + tst.l %d0 + jeq .L896 + tst.l 1175346736 + jne .L896 + tst.l 1175351520 + jne .L896 + move.l #1187521622,%a0 + mov3q.l #3,%d1 + move.l (%a0),pool_bank + move.b 269161679,%d0 + and.l %d0,%d1 + move.l %d1,pool_part + mvz.b 269161676,%d0 + mov3q.l #2,-(%sp) + mov3q.l #6,-(%sp) + move.l #1175346744,-(%sp) + move.l %d0,pool_track + clr.l pool_direct + clr.l pool_pending + jsr 1074261088 + lea (12,%sp),%sp + move.l 1187521622,%a0 + mov3q.l #3,%d1 + move.b 269161679,%d0 + move.l pool_track,%a1 + add.l #585088,%a0 + and.l %d1,%d0 + mvz.w #6322,%d1 + muls.l %d1,%d0 + add.l %d0,%a0 + mvz.b 34(%a0,%a1.l),%d0 + move.l %d0,-(%sp) + move.l #1175346744,-(%sp) + jsr 1074261424 + lea (handlers.8),%a0 + move.l %a0,1175346728 + move.l #pool_labels,%d0 + move.l %d0,1175346732 + clr.l 1175346740 + move.l #1074190164,-(%sp) + mov3q.l #1,-(%sp) + clr.l -(%sp) + mov3q.l #-1,-(%sp) + pea 64.w + pea 110.w + jsr 1074102940 + lea (32,%sp),%sp + move.l %d0,1175346736 + tst.l %d0 + jeq .L896 + clr.l -(%sp) + pea .LC7 + move.l %d0,-(%sp) + jsr 1074098360 + move.l #1074585796,-(%sp) + jsr 1073943700 + lea (16,%sp),%sp + jra st_pool_choice_draw +.L896: + rts + .size st_pool_choice_open, .-st_pool_choice_open + .align 2 + .globl st_pool_choice_left + .type st_pool_choice_left, @function +st_pool_choice_left: + tst.l 1175346736 + jeq .L906 + move.l #pool_labels,%d0 + cmp.l 1175346732.l,%d0 + jeq .L913 +.L906: + rts +.L913: + jsr 1074190164 + clr.l pool_direct + jsr st_stock_pool_open + jmp 1074235708 + .size st_pool_choice_left, .-st_pool_choice_left + .align 2 + .globl st_pool_choice_right + .type st_pool_choice_right, @function +st_pool_choice_right: + subq.l #4,%sp + tst.l 1175346736 + jeq .L914 + move.l #pool_labels,%d0 + cmp.l 1175346732.l,%d0 + jeq .L927 +.L914: + addq.l #4,%sp + rts +.L927: + jsr pool_context + tst.l %d0 + jeq .L914 + move.l 1175346752,%d1 + mov3q.l #1,%d0 + cmp.l %d1,%d0 + jcs .L914 + move.l %d1,(%sp) + jsr 1074190164 + jsr pool_context + tst.l %d0 + jeq .L914 + move.l (%sp),pool_browse + mov3q.l #1,pool_direct + jsr st_stock_pool_open + mov3q.l #-1,-(%sp) + jsr 1074059592 + mov3q.l #1,1187497772 + addq.l #4,%sp + addq.l #4,%sp + rts + .size st_pool_choice_right, .-st_pool_choice_right + .align 2 + .globl st_pool_left + .type st_pool_left, @function +st_pool_left: + lea (-12,%sp),%sp + move.l 16(%sp),%d1 + move.l 20(%sp),%a0 + tst.l 1175351520 + jeq .L928 + tst.l pool_direct + jne .L945 +.L930: + move.l %a0,20(%sp) + move.l %d1,16(%sp) + lea (12,%sp),%sp + jmp 1074235708 +.L945: + move.l %d1,4(%sp) + move.l %a0,(%sp) + jsr pool_context + move.l 4(%sp),%d1 + move.l (%sp),%a0 + tst.l %d0 + jeq .L930 + tst.l 1175351520 + jeq .L930 + move.l pool_browse,%d0 + move.l %d0,8(%sp) + jsr 1074235876 + clr.l pool_direct + jsr st_pool_choice_open + tst.l 1175346736 + jeq .L928 + move.l #pool_labels,%d0 + cmp.l 1175346732.l,%d0 + jne .L928 + move.l 8(%sp),-(%sp) + move.l #1175346744,-(%sp) + jsr 1074261424 + lea (20,%sp),%sp + jra st_pool_choice_draw +.L928: + lea (12,%sp),%sp + rts + .size st_pool_left, .-st_pool_left + .align 2 + .globl st_pool_right + .type st_pool_right, @function +st_pool_right: + subq.l #8,%sp + move.l 12(%sp),%d1 + move.l 16(%sp),%a0 + tst.l 1175351520 + jeq .L947 + tst.l 1175352218 + jne .L947 + mov3q.l #5,%d0 + cmp.l 1175352206.l,%d0 + jeq .L956 +.L947: + move.l %a0,16(%sp) + move.l %d1,12(%sp) + addq.l #8,%sp + jmp 1074237596 +.L956: + move.l %d1,4(%sp) + move.l %a0,(%sp) + jsr st_selected + move.l 4(%sp),%d1 + move.l (%sp),%a0 + tst.l %d0 + jeq .L947 + jsr 1074235876 + addq.l #8,%sp + jra st_pool_choice_open + .size st_pool_right, .-st_pool_right + .align 2 + .globl st_draw_page + .type st_draw_page, @function +st_draw_page: + subq.l #4,%sp + jsr 1073946408 + move.l %d0,(%sp) + jsr st_selected + tst.l %d0 + jeq .L957 + tst.l edit_view + jne .L957 + tst.b 1187502296.l + jne .L957 + tst.l 1175263034 + jne .L957 + tst.l 1175262868 + jne .L957 + move.l (%sp),-(%sp) + jsr generator_page + move.l %d0,4(%sp) + addq.l #4,%sp +.L957: + move.l (%sp),%d0 + addq.l #4,%sp + rts + .size st_draw_page, .-st_draw_page + .align 2 + .globl st_setup_page + .type st_setup_page, @function +st_setup_page: + subq.l #4,%sp + move.l %d2,-(%sp) + move.l 1187521622,%d0 + add.l #-1073741824,%d0 + move.l 12(%sp),%d1 + cmp.l #133169151,%d0 + jhi .L965 + tst.b -2147483627.l + jeq .L972 +.L965: + move.l (%sp)+,%d2 + move.l %d1,%d0 + addq.l #4,%sp rts -.L631: - move.l 12(%sp),%a1 - move.l (%a1),%a0 - mov3q.l #-1,-(%sp) - pea 5(%a2) - pea -5(%a0) - pea -1(%a2) - mov3q.l #3,-(%sp) +.L972: + move.b 269161676,%d0 + move.l 1187521622,%a0 + add.l #585088,%a0 + mvz.b %d0,%d2 + move.b 269161679,%d0 + move.l %d2,%a1 + mov3q.l #3,%d2 move.l %a1,-(%sp) - move.l %d0,32(%sp) - jsr 1073816148 - lea (24,%sp),%sp - subq.l #7,%a2 - mov3q.l #1,%d1 - move.l 8(%sp),%d0 - cmp.l %d0,%d1 - jeq .L632 -.L624: - move.l (%a3)+,-(%sp) - mov3q.l #-1,-(%sp) - move.l %a2,-(%sp) - mov3q.l #5,-(%sp) - mov3q.l #1,%d0 - move.l 28(%sp),-(%sp) - move.l #1074505846,-(%sp) - move.l %d0,32(%sp) - jsr 1073818584 - lea (24,%sp),%sp - move.l 8(%sp),%d0 - cmp.l 1175346752.l,%d0 - jne .L621 - jra .L631 - .size st_pool_choice_draw, .-st_pool_choice_draw - .section .rodata.str1.1 -.LC5: - .string "\253 MACHINE:VECTOR \273" - .text - .align 2 - .globl st_pool_choice_open - .type st_pool_choice_open, @function -st_pool_choice_open: - jsr st_selected + and.l %d2,%d0 + mvz.w #6322,%d2 + muls.l %d2,%d0 + pea (%a0,%d0.l) + move.l %d1,12(%sp) + jsr vector_signed_track + addq.l #8,%sp + move.l 4(%sp),%d1 tst.l %d0 - jeq .L633 - tst.l 1175346736 - jne .L633 - tst.l 1175351520 - jne .L633 - move.l #1187521622,%a0 - mov3q.l #3,%d1 - move.l (%a0),pool_bank + jeq .L965 + tst.l edit_view + jne .L965 + move.l %d1,12(%sp) + move.l (%sp)+,%d2 + addq.l #4,%sp + jra generator_page + .size st_setup_page, .-st_setup_page + .align 2 + .globl st_knob + .type st_knob, @function +st_knob: + lea (-12,%sp),%sp + mov3q.l #5,%d0 + move.l %d2,-(%sp) + move.l 20(%sp),%d1 + move.l 24(%sp),%a0 + cmp.l %d1,%d0 + jcc .L980 +.L973: + move.l (%sp)+,%d2 + lea (12,%sp),%sp + rts +.L980: + move.l 1187521622,%d0 + add.l #-1073741824,%d0 + cmp.l #133169151,%d0 + jhi .L973 + tst.b -2147483627.l + jne .L973 + move.b 269161676,%d2 + move.l 1187521622,%a1 + add.l #585088,%a1 move.b 269161679,%d0 - and.l %d0,%d1 - move.l %d1,pool_part - mvz.b 269161676,%d0 - mov3q.l #2,-(%sp) - mov3q.l #6,-(%sp) - move.l #1175346744,-(%sp) - move.l %d0,pool_track - clr.l pool_direct - clr.l pool_pending - jsr 1074261088 + mvz.b %d2,%d2 + move.l %d2,12(%sp) + mov3q.l #3,%d2 + and.l %d2,%d0 + mvz.w #6322,%d2 + move.l 12(%sp),-(%sp) + muls.l %d2,%d0 + pea (%a1,%d0.l) + move.l %d1,16(%sp) + move.l %a0,12(%sp) + jsr vector_signed_track + addq.l #8,%sp + move.l 8(%sp),%d1 + tst.l %d0 + jeq .L973 + tst.l edit_view + jne .L973 + tst.b 1187502296.l + jne .L973 + tst.l 1175263034 + jne .L973 + tst.l 1175262868 + jne .L973 + tst.l st_layer + jne .L973 + move.l 4(%sp),24(%sp) + move.l %d1,20(%sp) + move.l (%sp)+,%d2 lea (12,%sp),%sp + jra change_control + .size st_knob, .-st_knob + .align 2 + .globl st_setup_knob + .type st_setup_knob, @function +st_setup_knob: + move.l %d2,-(%sp) + mov3q.l #5,%d0 + cmp.l 8(%sp),%d0 + jcc .L982 +.L984: + move.l (%sp)+,%d2 + clr.l %d0 + rts +.L982: + move.l 1187521622,%d0 + add.l #-1073741824,%d0 + cmp.l #133169151,%d0 + jhi .L984 + tst.b -2147483627.l + jne .L984 + move.b 269161676,%d1 move.l 1187521622,%a0 - mov3q.l #3,%d1 + mov3q.l #3,%d2 move.b 269161679,%d0 - move.l pool_track,%a1 add.l #585088,%a0 - and.l %d1,%d0 + mvz.b %d1,%d1 + and.l %d2,%d0 + move.l %d1,-(%sp) mvz.w #6322,%d1 muls.l %d1,%d0 - add.l %d0,%a0 - mvz.b 34(%a0,%a1.l),%d0 + pea (%a0,%d0.l) + jsr vector_signed_track + addq.l #8,%sp + tst.l %d0 + jeq .L984 + tst.l edit_view + jne .L984 + move.l 12(%sp),-(%sp) + move.l 12(%sp),%a0 + pea 6(%a0) + jsr change_control + addq.l #8,%sp + move.l (%sp)+,%d2 + mov3q.l #1,%d0 + rts + .size st_setup_knob, .-st_setup_knob + .align 2 + .globl mg_page + .type mg_page, @function +mg_page: + link.w %fp,#-16 + move.l #vector_midi,%d1 + move.l %d2,-(%sp) + move.l #mg_page_layer,%d2 + move.l 1074061804,%d0 + move.l %d1,-16(%fp) + cmp.l mg_active.l,%d2 + jeq .L1006 +.L992: + move.l 8(%fp),%d0 + move.l -20(%fp),%d2 + unlk %fp + rts +.L1006: + tst.l -2147483630 + jeq .L992 + move.l #1187521622,%a0 + move.l (%a0),%d1 + add.l #-1073741824,%d1 + cmp.l #133169151,%d1 + jhi .L992 + move.l #269161676,%a1 + mov3q.l #7,%d2 + mvz.b (%a1),%d1 + cmp.l %d1,%d2 + jcs .L992 + move.b (%a1),%d1 + move.l (%a0),%a0 + add.l #585088,%a0 + cmp.l #mg_page_site,%d0 + seq %d0 + mvz.b %d1,%d2 + move.b 269161679,%d1 + mvs.b %d0,%d0 + move.l %d2,%a1 + mov3q.l #3,%d2 + move.l %a1,-(%sp) + neg.l %d0 + and.l %d2,%d1 + mvz.w #6322,%d2 + muls.l %d2,%d1 + pea (%a0,%d1.l) move.l %d0,-(%sp) - move.l #1175346744,-(%sp) - jsr 1074261424 - lea (handlers.3),%a0 - move.l %a0,1175346728 - move.l #pool_labels,%d0 - move.l %d0,1175346732 - clr.l 1175346740 - move.l #1074190164,-(%sp) - mov3q.l #1,-(%sp) - clr.l -(%sp) + pea -16(%fp) + jsr mg_page_view + lea (16,%sp),%sp + tst.l %d0 + jeq .L992 + move.l %d0,%a1 + move.l 20(%a1),%a0 + tst.l %a0 + jeq .L992 + move.l mg_second,%d1 + move.l 1175262852,%d0 + cmp.l #vector_midi_page,%a0 + jne .L994 + move.l %d1,-(%sp) + move.l %d0,-(%sp) + move.l 8(%fp),-(%sp) + jsr (%a0) + lea (12,%sp),%sp + move.l -20(%fp),%d2 + move.l %d0,8(%fp) + move.l 8(%fp),%d0 + unlk %fp + rts +.L994: + move.l %d1,-(%sp) + move.l %d0,-(%sp) + move.l 8(%fp),-(%sp) + jsr (%a0) + lea (12,%sp),%sp + move.l -20(%fp),%d2 + move.l %d0,8(%fp) + move.l 8(%fp),%d0 + unlk %fp + rts + .size mg_page, .-mg_page + .align 2 + .globl mg_arp_setup + .type mg_arp_setup, @function +mg_arp_setup: + move.l 1074061804,%a1 + move.l -2147483630,%d0 + move.l %d2,-(%sp) + tst.l %d0 + jeq .L1007 + move.l 1187521622,%d0 + add.l #-1073741824,%d0 + cmp.l #133169151,%d0 + jhi .L1009 + move.l #269161676,%a0 + mov3q.l #7,%d1 + mvz.b (%a0),%d0 + cmp.l %d0,%d1 + jcs .L1009 + move.b (%a0),%d0 + move.l 1187521622,%a0 + mov3q.l #3,%d2 + move.b 269161679,%d1 + add.l #585088,%a0 + mvz.b %d0,%d0 + and.l %d2,%d1 + mvz.w #6322,%d2 + add.l #3089,%d0 + muls.l %d2,%d1 + moveq #77,%d2 + add.l %d1,%a0 + lea (%a0,%d0.l*2),%a0 + move.b 1(%a0),%d0 + mvz.b (%a0),%d1 + cmp.l %d1,%d2 + jne .L1009 + cmp.l #mg_page_site,%a1 + jne .L1009 + mvz.b %d0,%d0 + moveq #86,%d1 + cmp.l %d0,%d1 + jeq .L1011 + move.b (%a0),%d0 +.L1009: + clr.l %d0 +.L1007: + move.l (%sp)+,%d2 + rts +.L1011: + mov3q.l #1,%d2 + eor.l %d2,mg_second mov3q.l #-1,-(%sp) - pea 64.w - pea 110.w - jsr 1074102940 - lea (32,%sp),%sp - move.l %d0,1175346736 - tst.l %d0 - jeq .L633 - clr.l -(%sp) - pea .LC5 - move.l %d0,-(%sp) - jsr 1074098360 - move.l #1074585796,-(%sp) - jsr 1073943700 - lea (16,%sp),%sp - jra st_pool_choice_draw -.L633: + jsr 1074059592 + addq.l #4,%sp + move.l (%sp)+,%d2 + mov3q.l #1,1187497772 + mov3q.l #1,%d0 rts - .size st_pool_choice_open, .-st_pool_choice_open + .size mg_arp_setup, .-mg_arp_setup .align 2 - .globl st_pool_choice_left - .type st_pool_choice_left, @function -st_pool_choice_left: - tst.l 1175346736 - jeq .L643 - move.l #pool_labels,%d0 - cmp.l 1175346732.l,%d0 - jeq .L650 -.L643: + .globl mg_track_tap + .type mg_track_tap, @function +mg_track_tap: + mov3q.l #7,%d0 + cmp.l 4(%sp),%d0 + jcs .L1018 + move.l #mg_page_site,%d0 + cmp.l 1074061804.l,%d0 + jeq .L1022 +.L1018: rts -.L650: - jsr 1074190164 - clr.l pool_direct - jsr st_stock_pool_open - jmp 1074235708 - .size st_pool_choice_left, .-st_pool_choice_left +.L1022: + tst.l 1074513600 + jne .L1018 + clr.l 4(%sp) + jmp 1073947176 + .size mg_track_tap, .-mg_track_tap + .section .rodata.str1.1 +.LC8: + .string "VECTOR" + .text .align 2 - .globl st_pool_choice_right - .type st_pool_choice_right, @function -st_pool_choice_right: - subq.l #4,%sp - tst.l 1175346736 - jeq .L651 - move.l #pool_labels,%d0 - cmp.l 1175346732.l,%d0 - jeq .L664 -.L651: - addq.l #4,%sp + .globl mg_note_setup_draw + .type mg_note_setup_draw, @function +mg_note_setup_draw: + lea (-12,%sp),%sp + move.l %a2,-(%sp) + jsr mg_stock_note_draw + move.l 1074061804,%d0 + move.l 1074513600,%a0 + cmp.l #mg_page_site,%d0 + jne .L1023 + tst.l %a0 + jne .L1040 +.L1023: + move.l (%sp)+,%a2 + lea (12,%sp),%sp rts -.L664: - jsr pool_context +.L1040: + tst.l -2147483630 + jeq .L1023 + move.l 1187521622,%d0 + add.l #-1073741824,%d0 + cmp.l #133169151,%d0 + jhi .L1023 + mvz.b 269161676,%d0 + mov3q.l #7,%d1 + cmp.l %d0,%d1 + jcs .L1023 + move.l 40(%a0),%a1 + lea (36,%a0),%a0 + move.l %a1,12(%sp) + clr.l -(%sp) + move.l %a0,12(%sp) + pea -10(%a1) + pea 50.w + mov3q.l #2,-(%sp) + mov3q.l #3,-(%sp) + move.l %a0,-(%sp) + jsr 1073816148 + pea .LC1 + mov3q.l #-1,-(%sp) + move.l 44(%sp),%a2 + lea (-20,%a2),%a2 + move.l %a2,-(%sp) + mov3q.l #5,-(%sp) + move.l 48(%sp),-(%sp) + move.l #1074505846,-(%sp) + jsr 1073818584 + lea (48,%sp),%sp + move.l mg_cursor,%d0 tst.l %d0 - jeq .L651 - move.l 1175346752,%d1 + jeq .L1027 + move.l 12(%sp),%a2 + lea (-28,%a2),%a2 +.L1028: + pea .LC8 + mov3q.l #-1,-(%sp) + move.l %a2,-(%sp) + mov3q.l #5,-(%sp) + move.l 24(%sp),-(%sp) + move.l #1074505846,-(%sp) + jsr 1073818584 + lea (24,%sp),%sp + move.l mg_cursor,%d0 + mov3q.l #1,%d1 + cmp.l %d0,%d1 + jne .L1026 +.L1027: + mov3q.l #-1,-(%sp) + pea 6(%a2) + pea 50.w + pea -1(%a2) + mov3q.l #3,-(%sp) + subq.l #8,%a2 + move.l 28(%sp),-(%sp) + move.l %d0,28(%sp) + jsr 1073816148 + lea (24,%sp),%sp + tst.l 4(%sp) + jeq .L1028 +.L1026: + move.l (%sp)+,%a2 + mov3q.l #1,1187497772 + lea (12,%sp),%sp + rts + .size mg_note_setup_draw, .-mg_note_setup_draw + .align 2 + .globl mg_key + .type mg_key, @function +mg_key: + link.w %fp,#-80 + moveq #51,%d0 + movem.l #1036,(%sp) + move.l 12(%fp),%a1 + cmp.l 8(%fp),%d0 + jeq .L1071 + moveq #32,%d1 + cmp.l 8(%fp),%d1 + jeq .L1072 + moveq #49,%d2 + cmp.l 8(%fp),%d2 + jeq .L1073 + moveq #50,%d3 + cmp.l 8(%fp),%d3 + jeq .L1074 + move.l 1074061804,%d1 mov3q.l #1,%d0 - cmp.l %d1,%d0 - jcs .L651 - move.l %d1,(%sp) - jsr 1074190164 - jsr pool_context + lea vector_midi,%a0 + move.l %a0,-16(%fp) + cmp.l %a1,%d0 + jne .L1043 + cmp.l #mg_page_site,%d1 + seq %d0 + move.l mg_active,%a0 + moveq #16,%d2 + move.l %d2,-58(%fp) + mvs.b %d0,%d0 + neg.l %d0 + cmp.l #mg_list_layer,%a0 + jeq .L1122 +.L1048: + cmp.l #mg_page_layer,%a0 + jeq .L1123 +.L1043: + move.l %a1,-(%sp) + move.l 8(%fp),-(%sp) + jsr mg_forward + addq.l #8,%sp +.L1041: + movem.l -80(%fp),#1036 + unlk %fp + rts +.L1122: + cmp.l #mg_page_site,%d1 + jne .L1048 + tst.l -2147483630 + jeq .L1048 + move.l 1187521622,%d1 + add.l #-1073741824,%d1 + cmp.l #133169151,%d1 + jhi .L1048 + mvz.b 269161676,%d1 + mov3q.l #7,%d3 + cmp.l %d1,%d3 + jcs .L1048 + moveq #49,%d1 + cmp.l 8(%fp),%d1 + jeq .L1124 + moveq #51,%d1 + cmp.l 8(%fp),%d1 + jeq .L1065 + moveq #32,%d2 + cmp.l 8(%fp),%d2 + jne .L1048 + move.l -58(%fp),%d3 + or.l %d3,mg_mine + cmp.l mg_cursor.l,%d0 + jls .L1057 + mov3q.l #1,mg_cursor +.L1057: + jsr mg_note_setup_draw +.L1127: + movem.l -80(%fp),#1036 + unlk %fp + rts +.L1123: + tst.l -2147483630 + jeq .L1043 + move.l #1187521622,%a0 + move.l (%a0),%d1 + add.l #-1073741824,%d1 + cmp.l #133169151,%d1 + jhi .L1043 + move.l #269161676,%a2 + mov3q.l #7,%d2 + mvz.b (%a2),%d1 + cmp.l %d1,%d2 + jcs .L1043 + move.b (%a2),-54(%fp) + move.l (%a0),%a0 + mov3q.l #3,%d2 + add.l #585088,%a0 + move.b 269161679,%d1 + mvz.b -54(%fp),%d3 + move.l %d3,-(%sp) + mvz.w #6322,%d3 + and.l %d2,%d1 + muls.l %d3,%d1 + pea (%a0,%d1.l) + move.l %d0,-(%sp) + pea -16(%fp) + move.l %a1,-62(%fp) + jsr mg_page_view + lea (16,%sp),%sp + move.l -62(%fp),%a1 tst.l %d0 - jeq .L651 - move.l (%sp),pool_browse - mov3q.l #1,pool_direct - jsr st_stock_pool_open + jeq .L1043 + moveq #49,%d1 + cmp.l 8(%fp),%d1 + jeq .L1125 + moveq #50,%d0 + cmp.l 8(%fp),%d0 + jne .L1043 + tst.l mg_second + jeq .L1043 + move.l -58(%fp),%d1 mov3q.l #-1,-(%sp) + clr.l mg_second + or.l %d1,mg_mine jsr 1074059592 + movem.l -80(%fp),#1036 mov3q.l #1,1187497772 addq.l #4,%sp - addq.l #4,%sp + unlk %fp rts - .size st_pool_choice_right, .-st_pool_choice_right - .align 2 - .globl st_pool_left - .type st_pool_left, @function -st_pool_left: - lea (-12,%sp),%sp - move.l 16(%sp),%d1 - move.l 20(%sp),%a0 - tst.l 1175351520 - jeq .L665 - tst.l pool_direct - jne .L682 -.L667: - move.l %a0,20(%sp) - move.l %d1,16(%sp) +.L1071: + mov3q.l #1,-58(%fp) +.L1042: + mov3q.l #1,%d0 + cmp.l %a1,%d0 + jeq .L1045 + move.l mg_mine,%d0 + move.l -58(%fp),%d1 + and.l %d0,%d1 + tst.l %d1 + jne .L1126 + move.l 1074061804,%d0 + move.l #vector_midi,%d1 + move.l %a1,-(%sp) + move.l 8(%fp),-(%sp) + move.l %d1,-16(%fp) + jsr mg_forward + addq.l #8,%sp + jra .L1041 +.L1045: + move.l 1074061804,%d1 + move.l #vector_midi,%d2 + move.l mg_active,%a0 + move.l %d2,-16(%fp) + cmp.l #mg_page_site,%d1 + seq %d0 + mvs.b %d0,%d0 + neg.l %d0 + cmp.l #mg_list_layer,%a0 + jne .L1048 + jra .L1122 +.L1126: + tst.l %a1 + jne .L1041 + move.l -58(%fp),%d1 + not.l %d1 + and.l %d0,%d1 + movem.l -80(%fp),#1036 + move.l %d1,mg_mine + unlk %fp + rts +.L1072: + mov3q.l #2,-58(%fp) + jra .L1042 +.L1073: + mov3q.l #4,-58(%fp) + jra .L1042 +.L1074: + moveq #8,%d3 + move.l %d3,-58(%fp) + jra .L1042 +.L1125: + move.l %d0,%a2 + move.l 28(%a2),%a0 + tst.l %a0 + jeq .L1043 + move.l -58(%fp),%d1 + or.l %d1,mg_mine + move.l 1175262852,%d0 + cmp.l #vector_midi_yes,%a0 + jne .L1068 + move.b 269161676,%d0 + mov3q.l #1,-(%sp) + mov3q.l #1,-(%sp) + mvz.b %d0,%d0 + move.l %d0,-(%sp) + jsr midi_generate lea (12,%sp),%sp - jmp 1074235708 -.L682: - move.l %d1,4(%sp) - move.l %a0,(%sp) - jsr pool_context - move.l 4(%sp),%d1 - move.l (%sp),%a0 tst.l %d0 - jeq .L667 - tst.l 1175351520 - jeq .L667 - move.l pool_browse,%d0 - move.l %d0,8(%sp) - jsr 1074235876 - clr.l pool_direct - jsr st_pool_choice_open - tst.l 1175346736 - jeq .L665 - move.l #pool_labels,%d0 - cmp.l 1175346732.l,%d0 - jne .L665 - move.l 8(%sp),-(%sp) - move.l #1175346744,-(%sp) - jsr 1074261424 - lea (20,%sp),%sp - jra st_pool_choice_draw -.L665: - lea (12,%sp),%sp + jeq .L1080 + pea 32.w + move.l #.LC5,%d0 + move.l %d0,-(%sp) + jsr 1074111160 + addq.l #8,%sp +.L1070: + mov3q.l #-1,-(%sp) + jsr 1074059592 + mov3q.l #1,1187497772 + addq.l #4,%sp +.L1128: + movem.l -80(%fp),#1036 + unlk %fp rts - .size st_pool_left, .-st_pool_left - .align 2 - .globl st_pool_right - .type st_pool_right, @function -st_pool_right: - subq.l #8,%sp - move.l 12(%sp),%d1 - move.l 16(%sp),%a0 - tst.l 1175351520 - jeq .L684 - tst.l 1175352218 - jne .L684 - mov3q.l #5,%d0 - cmp.l 1175352206.l,%d0 - jeq .L693 -.L684: - move.l %a0,16(%sp) - move.l %d1,12(%sp) +.L1080: + pea 32.w + move.l #.LC6,%d0 + move.l %d0,-(%sp) + jsr 1074111160 addq.l #8,%sp - jmp 1074237596 -.L693: - move.l %d1,4(%sp) - move.l %a0,(%sp) - jsr st_selected - move.l 4(%sp),%d1 - move.l (%sp),%a0 + jra .L1070 +.L1065: + move.l -58(%fp),%d1 + move.l mg_cursor,%d0 + or.l %d1,mg_mine tst.l %d0 - jeq .L684 - jsr 1074235876 + jeq .L1057 + subq.l #1,%d0 + move.l %d0,mg_cursor + jsr mg_note_setup_draw + jra .L1127 +.L1068: + move.l %d0,-(%sp) + jsr (%a0) + addq.l #4,%sp + mov3q.l #-1,-(%sp) + jsr 1074059592 + mov3q.l #1,1187497772 + addq.l #4,%sp + jra .L1128 +.L1124: + mov3q.l #1,-(%sp) + pea 49.w + move.l %d0,-62(%fp) + jsr mg_forward addq.l #8,%sp - jra st_pool_choice_open - .size st_pool_right, .-st_pool_right - .align 2 - .globl st_draw_page - .type st_draw_page, @function -st_draw_page: - subq.l #4,%sp - jsr 1073946408 - move.l %d0,(%sp) - jsr st_selected + move.l mg_cursor,%d2 + mvz.b 269161676,%d1 + move.l -62(%fp),%d0 + move.l %d2,-58(%fp) + tst.l %d2 + jeq .L1075 + cmp.l %d2,%d0 + jcs .L1076 + move.l -16(%fp),%a0 + move.l %a0,-66(%fp) + tst.l %a0 + jeq .L1077 + move.l 8(%a0),%d2 + move.l %d2,-58(%fp) +.L1050: + move.l %d1,%a1 + lea (3089,%a1),%a1 + move.l %a1,%d2 + add.l %d2,%d2 + move.l 1187521622,%a0 + add.l #585088,%a0 + move.b 269161679,%d3 + move.l %d2,-50(%fp) + mov3q.l #3,%d2 + and.l %d2,%d3 + mvz.w #6322,%d2 + muls.l %d2,%d3 + add.l %d3,%a0 + add.l -50(%fp),%a0 + move.b 1(%a0),%d3 + mvz.b (%a0),%d2 + move.b %d3,-54(%fp) + moveq #77,%d3 + cmp.l %d2,%d3 + jne .L1052 tst.l %d0 - jeq .L694 - tst.l edit_view - jne .L694 - tst.b 1187502296.l - jne .L694 - tst.l 1175263034 - jne .L694 - tst.l 1175262868 - jne .L694 - move.l (%sp),-(%sp) - jsr generator_page - move.l %d0,4(%sp) - addq.l #4,%sp -.L694: - move.l (%sp),%d0 - addq.l #4,%sp - rts - .size st_draw_page, .-st_draw_page - .align 2 - .globl st_setup_page - .type st_setup_page, @function -st_setup_page: - subq.l #4,%sp - move.l %d2,-(%sp) - move.l 1187521622,%d0 - add.l #-1073741824,%d0 - move.l 12(%sp),%d1 - cmp.l #133169151,%d0 - jhi .L702 - tst.b -2147483627.l - jeq .L709 -.L702: - move.l (%sp)+,%d2 + jeq .L1052 + mvz.b -54(%fp),%d0 + move.l -16(%fp),%a1 + cmp.l 8(%a1),%d0 + jeq .L1053 + move.b (%a0),%d0 + tst.l -66(%fp) + jeq .L1054 +.L1055: + move.l %d1,%a0 + add.l #-2147457426,%a0 + move.b (%a0),%d0 + mvz.b -2147483646,%d2 + mvz.b %d0,%d0 + cmp.l %d0,%d2 + jeq .L1129 + move.w %d1,%d2 + move.l %d1,%d3 + move.l #mg_arp_page,%d0 + lsl.l #5,%d3 + lea mg_arp_setup_slots,%a0 + move.l %a0,-32(%fp) + clr.l -36(%fp) + mulu.w #68,%d2 + move.l %d3,%a1 + sub.l #mg_arp_page-1005,%d3 + move.l %d3,-20(%fp) + move.l %d2,%a0 + move.l #-1187473662,%d2 + sub.l %a1,%d2 + add.l #1187474924,%a0 + move.l %d2,-24(%fp) +.L1060: + move.l 1187521622,%a1 + move.l #269161679,%a2 + move.b (%a2),-51(%fp) + mov3q.l #3,%d3 + move.l %d0,%a2 + add.l #585088,%a1 + move.b (%a2)+,-37(%fp) + move.b -51(%fp),%d2 + move.l %a2,%d0 + move.l -20(%fp),%a2 + add.l %d0,%a2 + move.l %a2,-42(%fp) + and.l %d3,%d2 + mvz.w #6322,%d3 + muls.l %d3,%d2 + add.l %d2,%a1 + move.b -37(%fp),%d2 + move.b %d2,(%a1,%a2.l) + move.l #269161679,%a2 + move.b (%a2),%d3 + move.w %d3,%a1 + mov3q.l #3,%d3 + move.l %a1,%d2 + and.l %d3,%d2 + mvz.w #6322,%d3 + muls.l %d3,%d2 + move.l -42(%fp),%d3 + move.l %d2,%a1 + add.l #269110990,%a1 + move.b -37(%fp),%d2 + move.b %d2,(%a1,%d3.l) + mov3q.l #3,%d3 + move.l 1187521622,%a1 + add.l #585088,%a1 + move.b (%a2),-39(%fp) + move.l -32(%fp),%a2 + move.l %a1,-28(%fp) + addq.l #1,-32(%fp) + move.b (%a2)+,-54(%fp) + move.b -39(%fp),%d2 + move.l -24(%fp),%a2 + add.l %a0,%a2 + move.l %a2,-46(%fp) + and.l %d3,%d2 + mvz.w #6322,%d3 + muls.l %d3,%d2 + move.l %d2,%a1 + move.b -54(%fp),%d2 + add.l -28(%fp),%a1 + move.b %d2,(%a1,%a2.l) + move.b 269161679,%d3 + move.w %d3,%a1 + mov3q.l #3,%d3 + move.l %a1,%d2 + and.l %d3,%d2 + mvz.w #6322,%d3 + muls.l %d3,%d2 + move.l -46(%fp),%d3 + move.l %d2,%a1 + add.l #269110990,%a1 + move.b -54(%fp),%d2 + move.b %d2,(%a1,%d3.l) + tst.l -36(%fp) + jeq .L1059 + move.b -37(%fp),-32(%a0) +.L1059: + move.b -54(%fp),(%a0)+ + cmp.l #mg_arp_page+6,%d0 + jne .L1060 move.l %d1,%d0 - addq.l #4,%sp - rts -.L709: - move.b 269161676,%d0 + lsl.l #4,%d0 + move.l %d0,%a1 + add.l #6210,%d0 + lea (6194,%a1),%a1 + move.l %d0,-54(%fp) +.L1061: move.l 1187521622,%a0 + mov3q.l #3,%d3 + move.b 269161679,%d0 + mvz.w #6322,%d2 add.l #585088,%a0 - mvz.b %d0,%d2 + and.l %d3,%d0 + clr.b %d3 + muls.l %d2,%d0 + mov3q.l #3,%d2 + add.l %d0,%a0 + move.b %d3,(%a0,%a1.l) + mvz.w #6322,%d3 move.b 269161679,%d0 - move.l %d2,%a1 + and.l %d2,%d0 + muls.l %d3,%d0 + move.l %d0,%a0 + add.l #269110990,%a0 + clr.b %d0 + move.b %d0,(%a0,%a1.l) + addq.l #1,%a1 + cmp.l -54(%fp),%a1 + jne .L1061 + tst.l -66(%fp) + jeq .L1079 + move.l 1187521622,%a0 mov3q.l #3,%d2 - move.l %a1,-(%sp) + move.b 269161679,%d0 + move.w #77,%a1 + mvz.w #6322,%d3 + add.l #585088,%a0 + add.l -50(%fp),%a0 and.l %d2,%d0 + move.w %a1,%d2 + muls.l %d3,%d0 + mov3q.l #3,%d3 + move.b %d2,(%a0,%d0.l) mvz.w #6322,%d2 + move.l -50(%fp),%a0 + move.b 269161679,%d0 + and.l %d3,%d0 + move.w %a1,%d3 muls.l %d2,%d0 - pea (%a0,%d0.l) - move.l %d1,12(%sp) - jsr vector_signed_track - addq.l #8,%sp - move.l 4(%sp),%d1 - tst.l %d0 - jeq .L702 - tst.l edit_view - jne .L702 - move.l %d1,12(%sp) - move.l (%sp)+,%d2 + add.l %d0,%a0 + add.l #269110990,%a0 + move.b %d3,(%a0) + tst.l -66(%fp) + jeq .L1130 +.L1063: + move.l 1187521622,%a0 + mov3q.l #3,%d2 + move.b 269161679,%d0 + move.l %d1,%d3 + add.l #591267,%a0 + add.l %d3,%d3 + lea (-55,%fp),%a1 + move.l #269117169,%a2 + and.l %d2,%d0 + mvz.w #6322,%d2 + add.l %d3,%a0 + add.l %d3,%a2 + mvz.w #6322,%d3 + muls.l %d2,%d0 + mov3q.l #3,%d2 + move.b (%a1),(%a0,%d0.l) + move.b 269161679,%d0 + and.l %d2,%d0 + muls.l %d3,%d0 + move.b (%a1),(%a2,%d0.l) + move.l %d1,-62(%fp) + jsr mg_dirty + move.l -62(%fp),%d1 + tst.l -66(%fp) + jeq .L1057 + move.l -66(%fp),%a1 + move.l 16(%a1),%a0 + tst.l %a0 + jeq .L1057 + cmp.l #vector_midi_assign,%a0 + jne .L1064 + move.l %d1,-(%sp) + jsr (vector_midi_assign.part.0) addq.l #4,%sp - jra generator_page - .size st_setup_page, .-st_setup_page - .align 2 - .globl st_knob - .type st_knob, @function -st_knob: - lea (-12,%sp),%sp - mov3q.l #5,%d0 - move.l %d2,-(%sp) - move.l 20(%sp),%d1 - move.l 24(%sp),%a0 - cmp.l %d1,%d0 - jcc .L717 -.L710: - move.l (%sp)+,%d2 - lea (12,%sp),%sp - rts -.L717: - move.l 1187521622,%d0 - add.l #-1073741824,%d0 - cmp.l #133169151,%d0 - jhi .L710 - tst.b -2147483627.l - jne .L710 - move.b 269161676,%d2 - move.l 1187521622,%a1 - add.l #585088,%a1 + jsr mg_note_setup_draw + jra .L1127 +.L1052: + tst.l -66(%fp) + jne .L1055 +.L1054: + move.l 1187521622,%a0 + mov3q.l #3,%d2 move.b 269161679,%d0 - mvz.b %d2,%d2 - move.l %d2,12(%sp) + mvz.w #6322,%d3 + add.l #585088,%a0 + add.l -50(%fp),%a0 + and.l %d2,%d0 + moveq #77,%d2 + muls.l %d3,%d0 + mvz.b (%a0,%d0.l),%d0 + cmp.l %d0,%d2 + jeq .L1055 + jsr mg_note_setup_draw + jra .L1127 +.L1130: + mvz.w #255,%d0 + move.l %d0,-58(%fp) + jra .L1063 +.L1075: + clr.l -66(%fp) + jra .L1050 +.L1076: + clr.l -66(%fp) + clr.l -58(%fp) + jra .L1050 +.L1129: + move.l %d1,%a0 + add.l #-2147457418,%a0 + move.b (%a0),%d0 + move.b -2147483645,%d3 + move.w %d3,%a0 + move.l %d1,%d3 + lsl.l #5,%d3 + move.l %a0,%d2 + eor.l %d2,%d0 + move.w %d1,%d2 + lea mg_arp_setup_slots,%a0 + move.l %a0,-32(%fp) + move.l %d3,%a1 + sub.l #mg_arp_page-1005,%d3 + move.l %d3,-20(%fp) + tst.b %d0 + seq %d0 + mulu.w #68,%d2 + move.l %d2,%a0 + move.l #-1187473662,%d2 + sub.l %a1,%d2 + mvs.b %d0,%d0 + add.l #1187474924,%a0 + move.l %d2,-24(%fp) + neg.l %d0 + move.l %d0,-36(%fp) + move.l #mg_arp_page,%d0 + jra .L1060 +.L1079: + move.l 1187521622,%a0 mov3q.l #3,%d2 + move.b 269161679,%d0 + move.w #-1,%a1 + mvz.w #6322,%d3 + add.l #585088,%a0 + add.l -50(%fp),%a0 and.l %d2,%d0 + move.w %a1,%d2 + muls.l %d3,%d0 + mov3q.l #3,%d3 + move.b %d2,(%a0,%d0.l) mvz.w #6322,%d2 - move.l 12(%sp),-(%sp) + move.l -50(%fp),%a0 + move.b 269161679,%d0 + and.l %d3,%d0 + move.w %a1,%d3 muls.l %d2,%d0 - pea (%a1,%d0.l) - move.l %d1,16(%sp) - move.l %a0,12(%sp) - jsr vector_signed_track + add.l %d0,%a0 + add.l #269110990,%a0 + move.b %d3,(%a0) + tst.l -66(%fp) + jne .L1063 + jra .L1130 +.L1053: + cmp.l -66(%fp),%a1 + jeq .L1057 + move.l 16(%a1),%a0 + tst.l %a0 + jeq .L1055 + cmp.l #vector_midi_assign,%a0 + jeq .L1055 + clr.l -(%sp) + move.l %d1,-(%sp) + move.l %d1,-62(%fp) + jsr (%a0) addq.l #8,%sp - move.l 8(%sp),%d1 - tst.l %d0 - jeq .L710 - tst.l edit_view - jne .L710 - tst.b 1187502296.l - jne .L710 - tst.l 1175263034 - jne .L710 - tst.l 1175262868 - jne .L710 - tst.l st_layer - jne .L710 - move.l 4(%sp),24(%sp) - move.l %d1,20(%sp) - move.l (%sp)+,%d2 - lea (12,%sp),%sp - jra change_control - .size st_knob, .-st_knob + move.l -62(%fp),%d1 + jra .L1055 +.L1064: + mov3q.l #1,-(%sp) + move.l %d1,-(%sp) + jsr (%a0) + addq.l #8,%sp + jsr mg_note_setup_draw + jra .L1127 +.L1077: + clr.l -58(%fp) + jra .L1050 + .size mg_key, .-mg_key .align 2 - .globl st_setup_knob - .type st_setup_knob, @function -st_setup_knob: + .globl mg_knob + .type mg_knob, @function +mg_knob: + link.w %fp,#-16 + move.l #vector_midi,%d1 move.l %d2,-(%sp) - mov3q.l #5,%d0 - cmp.l 8(%sp),%d0 - jcc .L719 -.L721: - move.l (%sp)+,%d2 - clr.l %d0 + move.l 1074061804,%d0 + mov3q.l #5,%d2 + move.l %d1,-16(%fp) + cmp.l 8(%fp),%d2 + jcs .L1131 + lea mg_page_layer,%a1 + cmp.l mg_active.l,%a1 + jeq .L1146 +.L1131: + move.l -20(%fp),%d2 + unlk %fp rts -.L719: - move.l 1187521622,%d0 +.L1146: + tst.l -2147483630 + jeq .L1131 + move.l #1187521622,%a0 + move.l (%a0),%d1 + add.l #-1073741824,%d1 + cmp.l #133169151,%d1 + jhi .L1131 + move.l #269161676,%a1 + mov3q.l #7,%d2 + mvz.b (%a1),%d1 + cmp.l %d1,%d2 + jcs .L1131 + move.b (%a1),%d1 + move.l (%a0),%a0 + add.l #585088,%a0 + cmp.l #mg_page_site,%d0 + seq %d0 + mvz.b %d1,%d2 + move.b 269161679,%d1 + mvs.b %d0,%d0 + move.l %d2,%a1 + mov3q.l #3,%d2 + move.l %a1,-(%sp) + neg.l %d0 + and.l %d2,%d1 + mvz.w #6322,%d2 + muls.l %d2,%d1 + pea (%a0,%d1.l) + move.l %d0,-(%sp) + pea -16(%fp) + jsr mg_page_view + lea (16,%sp),%sp + tst.l %d0 + jeq .L1131 + move.l %d0,%a1 + move.l 24(%a1),%a0 + tst.l %a0 + jeq .L1131 + move.l mg_second,%d1 + move.l 1175262852,%d0 + cmp.l #vector_midi_knob,%a0 + jne .L1133 + move.l %d1,-(%sp) + move.l 12(%fp),-(%sp) + move.l 8(%fp),-(%sp) + move.l %d0,-(%sp) + jsr (%a0) + lea (16,%sp),%sp + mov3q.l #-1,-(%sp) + jsr 1074059592 + mov3q.l #1,1187497772 + addq.l #4,%sp +.L1147: + move.l -20(%fp),%d2 + unlk %fp + rts +.L1133: + move.l %d1,-(%sp) + move.l 12(%fp),-(%sp) + move.l 8(%fp),-(%sp) + move.l %d0,-(%sp) + jsr (%a0) + lea (16,%sp),%sp + mov3q.l #-1,-(%sp) + jsr 1074059592 + mov3q.l #1,1187497772 + addq.l #4,%sp + jra .L1147 + .size mg_knob, .-mg_knob + .align 2 + .globl mg_tick + .type mg_tick, @function +mg_tick: + link.w %fp,#-44 + move.l #1187521622,%a1 + movem.l #7180,(%sp) + move.l 1074061804,%a2 + move.l #vector_midi,%d0 + moveq #28,%d3 + move.l (%a1),%a3 + move.l %d0,-16(%fp) + cmp.l #mg_page_site,%a2 + seq %d0 + move.b -2147483645,%d1 + mvs.b %d0,%d0 + neg.l %d0 + move.w %d1,%a0 + move.l mg_seen,%d1 + move.l %a0,%d2 + lsl.l %d3,%d2 + eor.l %d2,%d0 + move.l %a3,%d2 + eor.l %d2,%d0 + cmp.l #mg_page_site,%a2 + jne .L1149 + eor.l #vector_midi,%d0 + cmp.l %d0,%d1 + jeq .L1150 + move.l %d0,mg_seen + move.l (%a1),%d0 + add.l #-1073741824,%d0 + cmp.l #133169151,%d0 + jhi .L1150 + move.l (%a1),%a4 + mov3q.l #3,%d3 + mvz.w #6322,%d2 + move.b 269161679,%d0 + add.l #585088,%a4 + move.w #1008,%a2 + move.l #1187474894,%a3 + move.l #-2147457418,%d1 + and.l %d3,%d0 + muls.l %d2,%d0 + add.l %d0,%a4 + lea (6179,%a4),%a0 + move.l %a0,-24(%fp) +.L1154: + move.l -24(%fp),%a0 + move.l %a0,%a1 + moveq #77,%d3 + move.b (%a0),%d0 + mvz.b -(%a1),%d2 + cmp.l %d2,%d3 + jne .L1151 + mvz.b %d0,%d0 + move.l -16(%fp),%a0 + cmp.l 8(%a0),%d0 + jeq .L1152 + move.b (%a1),%d0 +.L1151: + addq.l #2,-24(%fp) + addq.l #1,%d1 + lea (68,%a3),%a3 + lea (32,%a2),%a2 + cmp.l #-2147457410,%d1 + jne .L1154 +.L1150: + tst.l -2147483630 + jeq .L1155 + move.l #1187521622,%a0 + move.l (%a0),%d0 add.l #-1073741824,%d0 cmp.l #133169151,%d0 - jhi .L721 - tst.b -2147483627.l - jne .L721 - move.b 269161676,%d1 + jhi .L1155 + mvz.b 269161676,%d1 + move.l (%a0),%d0 + mov3q.l #7,%d2 + move.b 269161679,%d3 + move.w %d3,%a0 + cmp.l %d1,%d2 + jcs .L1159 + move.l %a0,%d3 + mov3q.l #3,%d2 + and.l %d2,%d3 + mvz.w #6322,%d2 + add.l #585088,%d0 + muls.l %d2,%d3 + move.l %d3,%a0 + lea (%a0,%d0.l),%a2 + tst.l 1074513600 + jne .L1160 + move.l %d1,-(%sp) + move.l %a2,-(%sp) + mov3q.l #1,-(%sp) + pea -16(%fp) + move.l %d1,-20(%fp) + clr.l mg_opened + jsr mg_page_view + lea (16,%sp),%sp + move.l -20(%fp),%d1 + cmp.l mg_shown.l,%d1 + jeq .L1245 + clr.l mg_second + move.l %d1,mg_shown + tst.l %d0 + jeq .L1168 +.L1174: + lea mg_page_layer,%a2 +.L1175: + move.l mg_active,%a3 + cmp.l %a2,%a3 + jne .L1246 + tst.l (%a3) + jeq .L1148 + tst.l mg_mine + jne .L1148 + cmp.l #mg_page_layer,%a3 + seq %d0 + move.l %a3,-(%sp) + move.l %d0,%d1 + neg.l %d1 + move.l %d1,%a4 + jsr 1073943660 + clr.l mg_active + move.l 1175262812,%a0 + addq.l #4,%sp + cmp.l #mg_list_layer,%a3 + jeq .L1176 +.L1177: + tst.l %a0 + jeq .L1197 + tst.l (%a0) + jne .L1197 + lea mg_keys,%a0 + move.l %a0,-24(%fp) + lea mg_saved,%a2 +.L1188: + move.l -24(%fp),%a0 + addq.l #1,-24(%fp) + mvz.b (%a0)+,%d0 + sub.l %a0,%a0 + mulu.w #24,%d0 + move.l %d0,%a1 + add.l #1187502302,%a1 +.L1187: + move.l (%a1,%a0.l),%d0 + cmp.l #mg_key,%d0 + jeq .L1186 + move.l %d0,(%a2,%a0.l) +.L1186: + addq.l #4,%a0 + moveq #12,%d0 + cmp.l %a0,%d0 + jne .L1187 + lea (12,%a2),%a2 + cmp.l #mg_saved+48,%a2 + jne .L1188 + clr.l (%a3) + move.l %a3,-(%sp) + jsr 1073943700 + cmp.l #mg_page_layer,%a3 + seq %d0 + move.l %a3,mg_active + addq.l #4,%sp + neg.l %d0 +.L1184: + move.w %a4,%d2 + mvz.b %d0,%d0 + mvz.b %d2,%d1 + cmp.l %d0,%d1 + jeq .L1148 + mov3q.l #-1,-(%sp) + jsr 1074059592 + mov3q.l #1,1187497772 + addq.l #4,%sp +.L1148: + movem.l -44(%fp),#7180 + unlk %fp + rts +.L1152: + tst.b (%a4,%a2.l) + jeq .L1151 move.l 1187521622,%a0 mov3q.l #3,%d2 move.b 269161679,%d0 + mvz.w #6322,%d3 add.l #585088,%a0 - mvz.b %d1,%d1 and.l %d2,%d0 - move.l %d1,-(%sp) - mvz.w #6322,%d1 - muls.l %d1,%d0 - pea (%a0,%d0.l) - jsr vector_signed_track - addq.l #8,%sp + muls.l %d3,%d0 + add.l %d0,%a0 + clr.b %d0 + move.b %d0,(%a0,%a2.l) + move.b 269161679,%d0 + and.l %d2,%d0 + clr.b %d2 + muls.l %d3,%d0 + move.l %d0,%a0 + add.l #269110990,%a0 + move.b %d2,(%a0,%a2.l) + move.l %d1,%a0 + move.b -8(%a0),%d0 + mvz.b -2147483646,%d2 + mvz.b %d0,%d0 + cmp.l %d0,%d2 + jeq .L1247 +.L1153: + move.l %d1,-20(%fp) + jsr mg_dirty + move.l -20(%fp),%d1 +.L1249: + addq.l #1,%d1 + addq.l #2,-24(%fp) + lea (68,%a3),%a3 + lea (32,%a2),%a2 + cmp.l #-2147457410,%d1 + jne .L1154 + jra .L1150 +.L1149: + cmp.l %d0,%d1 + jeq .L1155 + move.l %d0,mg_seen +.L1155: + tst.l mg_active + jeq .L1248 + mvz.b 269161676,%d1 + move.l 1187521622,%d0 + move.b 269161679,%d0 +.L1159: + clr.l mg_opened + cmp.l mg_shown.l,%d1 + jeq .L1167 + clr.l mg_second + move.l %d1,mg_shown +.L1168: + move.l mg_active,%d0 tst.l %d0 - jeq .L721 - tst.l edit_view - jne .L721 - move.l 12(%sp),-(%sp) - move.l 12(%sp),%a0 - pea 6(%a0) - jsr change_control - addq.l #8,%sp - move.l (%sp)+,%d2 - mov3q.l #1,%d0 + jeq .L1148 + tst.l mg_mine + jne .L1148 + cmp.l #mg_page_layer,%d0 + seq %d1 + move.l %d0,-(%sp) + move.l %d1,%d2 + neg.l %d2 + jsr 1073943660 + clr.l mg_active + move.l 1175262812,%a0 + move.l %d2,%a4 + addq.l #4,%sp +.L1197: + clr.b %d0 + jra .L1184 +.L1247: + move.b (%a0),%d0 + mvz.b -2147483645,%d2 + mvz.b %d0,%d0 + cmp.l %d0,%d2 + jne .L1153 + clr.b (%a3) + move.l %d1,-20(%fp) + jsr mg_dirty + move.l -20(%fp),%d1 + jra .L1249 +.L1176: + tst.l 1074513572 + jne .L1197 + lea mg_keys,%a0 + lea mg_list_layer,%a3 + move.l %a0,-24(%fp) + lea mg_saved,%a2 + jra .L1188 +.L1246: + tst.l mg_mine + jne .L1148 + tst.l %a3 + jne .L1179 + move.l 1175262812,%a0 + cmp.l #mg_list_layer,%a2 + jeq .L1180 + tst.l %a0 + jeq .L1148 + tst.l (%a0) + jne .L1148 + sub.l %a4,%a4 + move.l %a2,%a3 +.L1252: + lea mg_keys,%a0 + move.l %a0,-24(%fp) + lea mg_saved,%a2 + jra .L1188 +.L1248: + movem.l -44(%fp),#7180 + clr.l mg_opened + clr.l mg_second + unlk %fp rts - .size st_setup_knob, .-st_setup_knob +.L1160: + move.l mg_opened,%a3 + tst.l %a3 + jeq .L1250 +.L1163: + move.l %d1,-(%sp) + move.l %a2,-(%sp) + mov3q.l #1,-(%sp) + pea -16(%fp) + move.l %d1,-20(%fp) + jsr mg_page_view + lea (16,%sp),%sp + move.l -20(%fp),%d1 + cmp.l mg_shown.l,%d1 + jeq .L1251 + clr.l mg_second + move.l %d1,mg_shown +.L1172: + lea mg_list_layer,%a2 + jra .L1175 +.L1167: + clr.l mg_second + jra .L1168 +.L1251: + tst.l %d0 + jeq .L1170 + mov3q.l #2,%d3 + cmp.l 1175262852.l,%d3 + jeq .L1172 +.L1170: + clr.l mg_second + lea mg_list_layer,%a2 + jra .L1175 +.L1250: + move.l %d1,%a0 + moveq #77,%d2 + lea (3089,%a0),%a0 + lea (%a2,%a0.l*2),%a1 + mov3q.l #1,mg_opened + move.b 1(%a1),%d0 + mvz.b (%a1),%d3 + cmp.l %d3,%d2 + jne .L1165 + mvz.b %d0,%d0 + move.l -16(%fp),%a0 + cmp.l 8(%a0),%d0 + jeq .L1194 + move.b (%a1),%d0 +.L1165: + move.l %d1,-20(%fp) + move.l %a3,mg_cursor + jsr mg_note_setup_draw + move.l -20(%fp),%d1 + jra .L1163 +.L1180: + tst.l 1074513572 + jne .L1148 + sub.l %a4,%a4 + move.l %a2,%a3 + jra .L1252 +.L1245: + tst.l %d0 + jeq .L1167 + mov3q.l #2,%d0 + cmp.l 1175262852.l,%d0 + jeq .L1174 + clr.l mg_second + lea mg_page_layer,%a2 + jra .L1175 +.L1194: + mov3q.l #1,%a3 + move.l %d1,-20(%fp) + move.l %a3,mg_cursor + jsr mg_note_setup_draw + move.l -20(%fp),%d1 + jra .L1163 +.L1179: + cmp.l #mg_page_layer,%a3 + seq %d0 + move.l %a3,-(%sp) + move.l %d0,%d3 + neg.l %d3 + jsr 1073943660 + clr.l mg_active + move.l 1175262812,%a0 + move.l %d3,%a4 + addq.l #4,%sp + cmp.l #mg_list_layer,%a2 + jeq .L1176 + move.l %a2,%a3 + tst.l %a2 + jne .L1177 + clr.b %d0 + jra .L1184 + .size mg_tick, .-mg_tick .align 2 .globl st_ui_tick .type st_ui_tick, @function st_ui_tick: - lea (-44,%sp),%sp - movem.l #23564,(%sp) + lea (-64,%sp),%sp + movem.l #19580,(%sp) + jsr mg_tick tst.l pool_direct - jeq .L728 + jeq .L1254 tst.l 1175351520 - jne .L807 + jne .L1341 clr.l pool_direct -.L728: +.L1254: tst.l pool_pending - jne .L808 -.L730: - move.l -2147457608,%a2 - mov3q.l #1,%d0 - cmp.l %a2,%d0 - jeq .L796 -.L814: - lea any_vector,%a3 -.L732: - move.l %a2,last_transport + jne .L1342 +.L1256: move.l 1187521622,%d0 add.l #-1073741824,%d0 cmp.l #133169151,%d0 - jhi .L734 - move.w #62,%a4 - sub.l %a6,%a6 - lea vector_signed_track,%a2 -.L736: - move.l 1187521622,%a0 - mov3q.l #3,%d3 - move.b 269161679,%d0 - mvz.w #6322,%d1 - move.l %a6,-(%sp) - add.l #585088,%a0 - and.l %d3,%d0 - muls.l %d1,%d0 - pea (%a0,%d0.l) - jsr (%a2) - addq.l #8,%sp - tst.l %d0 - jeq .L735 - move.l 1187521622,%a0 - add.l #585088,%a0 - move.b 269161679,%d0 - mvz.w #6322,%d2 - and.l %d3,%d0 - mov3q.l #1,%d3 - muls.l %d2,%d0 - add.l %d0,%a0 - mvz.b (%a0,%a4.l),%d0 - cmp.l %d0,%d3 - jeq .L809 -.L735: - addq.l #1,%a6 - lea (30,%a4),%a4 - moveq #8,%d0 - cmp.l %a6,%d0 - jne .L736 -.L812: - mvz.b 269161676,%d1 - mov3q.l #7,%d2 - cmp.l %d1,%d2 - jcs .L761 - move.l 1187521622,%a0 - mov3q.l #3,%d3 - move.b 269161679,%d0 - mvz.w #6322,%d2 - add.l #585088,%a0 - and.l %d3,%d0 - muls.l %d2,%d0 - add.l %d0,%a0 - tst.b 34(%a0,%d1.l) - jne .L761 - move.l #1074606108,%d0 - move.l %d0,1074618188 -.L734: - jsr (%a3) - move.l 1187521622,%a2 + jls .L1258 + mov3q.l #1,%d1 + move.l -2147457608,%d0 + cmp.l %d0,%d1 + jeq .L1343 + move.l %d0,last_transport +.L1338: + move.l 1187521622,%d3 + clr.l %d2 mvz.b 269161679,%d1 - mvz.b 269161676,%d3 - move.l %d0,%a6 - move.l layer_gen,%a3 + move.l %d1,40(%sp) + mvz.b 269161676,%d4 +.L1266: + move.l layer_gen,%a2 move.l active,%d0 - move.l %d3,%a4 - cmp.l shown_bank.l,%a2 - jeq .L810 -.L738: - tst.l %a3 - jeq .L740 - tst.l %d0 - jeq .L799 - move.l #st_layer,%d0 - tst.l mine - jeq .L811 -.L727: - movem.l (%sp),#23564 - lea (44,%sp),%sp - rts -.L740: - tst.l %d0 - jeq .L799 - move.l #st_edit_layer,%d0 - tst.l mine - jne .L727 - jra .L811 -.L809: - move.l %a6,-(%sp) - lea (37,%sp),%a0 - mov3q.l #3,%d2 - move.l %d0,32(%sp) - jsr settings - mvz.w #6322,%d3 - move.l 1187521622,%a0 - add.l #585088,%a0 - move.b 269161679,%d1 - lea (435,%a4),%a1 - lea (30,%a4),%a4 - and.l %d2,%d1 - moveq #127,%d2 - muls.l %d3,%d1 - add.l %d1,%a0 - move.b (%a0,%a1.l),%d1 - and.l %d1,%d2 - move.l %d2,(%sp) - pea 37(%sp) - move.l %a6,-(%sp) - jsr save_settings - lea (12,%sp),%sp - move.b 269161679,%d3 - move.l 28(%sp),%d0 - move.l 1187521622,%a1 - add.l #610376,%a1 - move.b (%a1),%d1 - move.w %d3,%a0 - mov3q.l #3,%d3 - move.l %a0,%d2 - and.l %d3,%d2 - lsl.l %d2,%d0 - or.l %d0,%d1 - move.b %d1,(%a1) - move.b 269161566,%d1 - or.l %d1,%d0 - move.b %d0,269161566 - move.l 1187521622,%a0 - add.l #635698,%a0 - mov3q.l #1,(%a0) - mov3q.l #1,269452696 - jsr 1073905152 - addq.l #1,%a6 - moveq #8,%d0 - cmp.l %a6,%d0 - jne .L736 - jra .L812 -.L810: - cmp.l shown_part.l,%d1 - jne .L738 - cmp.l shown_track.l,%d3 - jne .L738 - tst.l %a3 - jeq .L743 + cmp.l shown_bank.l,%d3 + jeq .L1344 +.L1273: + tst.l %a2 + jeq .L1280 tst.l %d0 - jeq .L745 - lea st_layer,%a0 - tst.l %a6 - jeq .L748 - tst.l st_layer - jeq .L747 -.L748: - tst.l mine - jne .L727 - move.l %a0,-(%sp) - move.l %d1,28(%sp) - jsr 1073943660 - clr.l active - move.l %a2,shown_bank - move.l %a4,shown_track - move.l 28(%sp),%d1 - addq.l #4,%sp - move.l %d1,shown_part -.L745: + jne .L1298 + move.l 40(%sp),%d5 + clr.l edit_view + move.l %d3,shown_bank + move.l %d5,shown_part + move.l %d4,shown_track +.L1275: move.l 1175262812,%a0 - tst.l %a6 - jeq .L727 + tst.l %d2 + jeq .L1253 tst.l %a0 - jeq .L727 + jeq .L1253 tst.l (%a0) - jne .L727 + jne .L1253 move.l #st_key,%d1 move.l #1187503478,%a0 lea saved-1187503478,%a1 -.L754: +.L1287: move.l (%a0),%d0 - cmp.l #st_key,%d0 - jeq .L753 + cmp.l %d1,%d0 + jeq .L1286 move.l %d0,(%a1,%a0.l) -.L753: +.L1286: addq.l #4,%a0 cmp.l #1187503490,%a0 - jne .L754 + jne .L1287 move.l #1187503790,%a0 lea saved-1187503778,%a1 -.L756: +.L1289: move.l (%a0),%d0 cmp.l %d1,%d0 - jeq .L755 + jeq .L1288 move.l %d0,(%a1,%a0.l) -.L755: +.L1288: addq.l #4,%a0 cmp.l #1187503802,%a0 - jne .L756 + jne .L1289 jsr generator_view move.l %d0,layer_gen tst.l %d0 - jeq .L766 + jeq .L1300 lea st_layer,%a0 clr.l (%a0) move.l %a0,-(%sp) @@ -4234,73 +7070,264 @@ st_ui_tick: jsr 1074059592 mov3q.l #1,1187497772 addq.l #8,%sp -.L815: - movem.l (%sp),#23564 - lea (44,%sp),%sp +.L1253: + movem.l (%sp),#19580 + lea (64,%sp),%sp rts -.L808: +.L1258: + move.l 1187521622,%a2 + mov3q.l #3,%d5 + move.b 269161679,%d0 + mvz.w #6322,%d6 + add.l #585088,%a2 + sub.l %a6,%a6 + clr.l %d2 + lea vector_signed_track,%a3 + and.l %d5,%d0 + muls.l %d6,%d0 + add.l %d0,%a2 +.L1262: + move.l %a6,-(%sp) + move.l %a2,-(%sp) + jsr (%a3) + addq.l #8,%sp + tst.l %d0 + jeq .L1261 + mov3q.l #1,%d0 + move.l %a6,%d1 + lsl.l %d1,%d0 + or.l %d0,%d2 +.L1261: + addq.l #1,%a6 + moveq #8,%d5 + cmp.l %a6,%d5 + jne .L1262 + move.l -2147457608,%d0 + mov3q.l #1,%d5 + cmp.l %d0,%d5 + jeq .L1345 +.L1267: + move.l %d0,last_transport + move.l 1187521622,%d3 + move.b 269161679,%d5 + move.b %d5,47(%sp) + mvz.b %d5,%d6 + mvz.b 269161676,%d4 + move.l %d6,40(%sp) +.L1293: + move.w #497,%a6 + clr.l %d0 + lea (-435,%a2),%a3 +.L1271: + btst %d0,%d2 + jeq .L1270 + mvz.b (%a3,%a6.l),%d1 + mov3q.l #1,%d5 + cmp.l %d1,%d5 + jeq .L1346 +.L1270: + addq.l #1,%d0 + lea (30,%a6),%a6 + moveq #8,%d1 + cmp.l %d0,%d1 + jne .L1271 +.L1347: + mov3q.l #7,%d5 + cmp.l %d4,%d5 + jcs .L1294 + tst.b 34(%a2,%d4.l) + jne .L1294 + move.l #1074606108,%d0 +.L1272: + move.l %d0,1074618188 + tst.l %d2 + jeq .L1266 + tst.l -2147483630 + seq %d2 + move.l layer_gen,%a2 + move.l active,%d0 + mvs.b %d2,%d2 + neg.l %d2 + cmp.l shown_bank.l,%d3 + jne .L1273 + jra .L1344 +.L1346: + move.l %d0,-(%sp) + lea (57,%sp),%a0 + move.l %d0,36(%sp) + move.l %d1,40(%sp) + jsr settings + move.l 1187521622,%a0 + add.l #585088,%a0 + move.b 269161679,%d5 + move.w %d5,%a1 + mov3q.l #3,%d5 + move.l %a1,%d6 + and.l %d5,%d6 + mvz.w #6322,%d5 + muls.l %d5,%d6 + add.l %d6,%a0 + move.b (%a0,%a6.l),%d6 + move.w %d6,%a0 + moveq #127,%d6 + move.l %a0,%d5 + and.l %d6,%d5 + mov3q.l #3,%d6 + move.l %d5,(%sp) + pea 57(%sp) + move.l 40(%sp),%d0 + move.l %d0,-(%sp) + move.l %d0,44(%sp) + jsr save_settings + move.b 59(%sp),%d5 + move.l 1187521622,%a1 + add.l #610376,%a1 + and.l %d6,%d5 + move.l %d5,60(%sp) + move.b (%a1),%d5 + move.l 48(%sp),%d1 + move.l 60(%sp),%d6 + lea (12,%sp),%sp + lsl.l %d6,%d1 + move.w %d5,%a0 + move.l %a0,%d5 + or.l %d1,%d5 + move.b %d5,(%a1) + move.b 269161566,%d6 + move.w %d6,%a0 + move.l %a0,%d5 + or.l %d5,%d1 + move.b %d1,269161566 + move.l 1187521622,%a0 + add.l #635698,%a0 + mov3q.l #1,(%a0) + mov3q.l #1,269452696 + jsr 1073905152 + lea (30,%a6),%a6 + move.l 32(%sp),%d0 + moveq #8,%d1 + addq.l #1,%d0 + cmp.l %d0,%d1 + jne .L1271 + jra .L1347 +.L1342: jsr pool_context tst.l %d0 - jeq .L813 + jeq .L1348 tst.l 1175346736 - jne .L730 + jne .L1256 tst.l 1175351520 - jne .L730 + jne .L1256 jsr st_pool_choice_open - move.l -2147457608,%a2 - mov3q.l #1,%d0 - cmp.l %a2,%d0 - jne .L814 -.L796: - mov3q.l #1,%d1 - lea any_vector,%a3 - cmp.l last_transport.l,%d1 - jeq .L732 - jsr (%a3) + jra .L1256 +.L1344: + move.l 40(%sp),%d6 + cmp.l shown_part.l,%d6 + jne .L1273 + cmp.l shown_track.l,%d4 + jne .L1273 + tst.l %a2 + jeq .L1274 tst.l %d0 - jeq .L732 - sub.l %a4,%a4 + jeq .L1275 + lea st_layer,%a3 + tst.l %d2 + jeq .L1278 + tst.l st_layer + jeq .L1277 +.L1278: + tst.l mine + jne .L1253 + move.l %a3,-(%sp) + jsr 1073943660 + clr.l active + move.l %d3,shown_bank + move.l %d4,shown_track + lea (44,%sp),%a1 + addq.l #4,%sp + move.l (%a1),shown_part + jra .L1275 +.L1345: + cmp.l last_transport.l,%d5 + jeq .L1267 + tst.l %d2 + jeq .L1268 + sub.l %a3,%a3 lea generate_track,%a6 -.L733: - clr.l -(%sp) - moveq #8,%d2 - clr.l -(%sp) - move.l %a4,-(%sp) - jsr (%a6) - addq.l #1,%a4 - lea (12,%sp),%sp - cmp.l %a4,%d2 - jeq .L732 +.L1269: clr.l -(%sp) - moveq #8,%d2 + moveq #8,%d6 clr.l -(%sp) - move.l %a4,-(%sp) + move.l %a3,-(%sp) jsr (%a6) - addq.l #1,%a4 + addq.l #1,%a3 lea (12,%sp),%sp - cmp.l %a4,%d2 - jne .L733 - jra .L732 -.L761: + cmp.l %a3,%d6 + jne .L1269 + mov3q.l #1,last_transport + move.l 1187521622,%d3 + move.b 269161679,%d0 + move.w #497,%a6 + lea (-435,%a2),%a3 + move.b %d0,47(%sp) + mvz.b %d0,%d1 + clr.l %d0 + mvz.b 269161676,%d4 + move.l %d1,40(%sp) + jra .L1271 +.L1294: move.l #1074606510,%d0 - move.l %d0,1074618188 - jra .L734 -.L799: + jra .L1272 +.L1280: + tst.l %d0 + jeq .L1349 + move.l #st_edit_layer,%d0 + tst.l mine + jne .L1253 +.L1350: + move.l %d0,-(%sp) + jsr 1073943660 + clr.l active + clr.l edit_view + move.l %d3,shown_bank + lea (44,%sp),%a0 + addq.l #4,%sp + move.l %d4,shown_track + move.l (%a0),shown_part + jra .L1275 +.L1349: + move.l 40(%sp),%d1 clr.l edit_view - move.l %a2,shown_bank + move.l %d3,shown_bank move.l %d1,shown_part - move.l %a4,shown_track - jra .L745 -.L807: + move.l %d4,shown_track + jra .L1275 +.L1298: + move.l #st_layer,%d0 + tst.l mine + jne .L1253 + jra .L1350 +.L1343: + mov3q.l #1,%d6 + cmp.l last_transport.l,%d6 + jeq .L1338 + mov3q.l #1,last_transport + move.l 1187521622,%d3 + clr.l %d2 + mvz.b 269161679,%d1 + move.l %d1,40(%sp) + mvz.b 269161676,%d4 + jra .L1266 +.L1341: jsr pool_context tst.l %d0 - jne .L728 + jne .L1254 clr.l pool_direct - jra .L728 -.L813: + jra .L1254 +.L1348: clr.l pool_pending - jra .L730 -.L766: + jra .L1256 +.L1300: lea st_edit_layer,%a0 clr.l (%a0) move.l %a0,-(%sp) @@ -4310,73 +7337,86 @@ st_ui_tick: jsr 1074059592 mov3q.l #1,1187497772 addq.l #8,%sp - jra .L815 -.L811: - move.l %d0,-(%sp) - move.l %d1,28(%sp) - jsr 1073943660 - clr.l active - clr.l edit_view - move.l %a2,shown_bank - move.l 28(%sp),%d1 - addq.l #4,%sp - move.l %a4,shown_track - move.l %d1,shown_part - jra .L745 -.L743: + jra .L1253 +.L1274: tst.l %d0 - jeq .L745 - lea st_edit_layer,%a0 - tst.l %a6 - jeq .L748 + jeq .L1275 + lea st_edit_layer,%a3 + tst.l %d2 + jeq .L1278 tst.l st_edit_layer - jne .L748 -.L747: - move.l %d1,24(%sp) - move.l %a0,28(%sp) + jne .L1278 +.L1277: jsr generator_view - move.l 24(%sp),%d1 - move.l 28(%sp),%a0 - cmp.l %a3,%d0 - jne .L748 - move.l %a2,shown_bank - movem.l (%sp),#23564 - lea (44,%sp),%sp + cmp.l %d0,%a2 + jne .L1278 + movem.l (%sp),#19580 + lea (64,%sp),%sp rts +.L1268: + mov3q.l #1,last_transport + move.l 1187521622,%d3 + move.b 269161679,%d5 + move.b %d5,47(%sp) + mvz.b %d5,%d6 + mvz.b 269161676,%d4 + move.l %d6,40(%sp) + jra .L1293 .size st_ui_tick, .-st_ui_tick + .section .rodata + .align 2 + .type formats.1, @object + .size formats.1, 24 +formats.1: + .long midi_format_0 + .long midi_format_1 + .long midi_format_2 + .long midi_format_3 + .long midi_format_4 + .long midi_format_5 + .type titles.2, @object + .size titles.2, 39 +titles.2: + .string "VECTOR SRC" + .zero 2 + .string "VECTOR AMP 1" + .string "VECTOR AMP 2" + .type first.3, @object + .size first.3, 16 +first.3: + .base64 "CwsAAQAwAQwMAAAAAAAAAA==" + .local locked.4 + .comm locked.4,64,1 .section .rodata.str1.1 -.LC6: +.LC9: .string "C" -.LC7: +.LC10: .string "C#" -.LC8: +.LC11: .string "D" -.LC9: +.LC12: .string "D#" -.LC10: +.LC13: .string "E" -.LC11: +.LC14: .string "F" -.LC12: +.LC15: .string "F#" -.LC13: +.LC16: .string "G" -.LC14: +.LC17: .string "G#" -.LC15: +.LC18: .string "A" -.LC16: +.LC19: .string "A#" -.LC17: +.LC20: .string "B" .section .rodata .align 2 - .type roots.1, @object - .size roots.1, 48 -roots.1: - .long .LC6 - .long .LC7 - .long .LC8 + .type roots.6, @object + .size roots.6, 48 +roots.6: .long .LC9 .long .LC10 .long .LC11 @@ -4386,10 +7426,14 @@ roots.1: .long .LC15 .long .LC16 .long .LC17 + .long .LC18 + .long .LC19 + .long .LC20 + .set roots.0,roots.6 .align 2 - .type formats.2, @object - .size formats.2, 48 -formats.2: + .type formats.7, @object + .size formats.7, 48 +formats.7: .long format_0 .long format_1 .long format_2 @@ -4403,23 +7447,144 @@ formats.2: .long format_10 .long format_11 .align 2 - .type handlers.3, @object - .size handlers.3, 8 -handlers.3: + .type handlers.8, @object + .size handlers.8, 8 +handlers.8: .long pool_static .long pool_flex + .type mg_keys, @object + .size mg_keys, 4 +mg_keys: + .ascii "3 12" + .local mg_opened + .comm mg_opened,4,2 + .local mg_cursor + .comm mg_cursor,4,2 + .local mg_shown + .comm mg_shown,4,2 + .local mg_second + .comm mg_second,4,2 + .local mg_mine + .comm mg_mine,4,2 + .local mg_saved + .comm mg_saved,48,2 + .local mg_active + .comm mg_active,4,2 + .local mg_seen + .comm mg_seen,4,2 + .type mg_arp_setup_slots, @object + .size mg_arp_setup_slots, 6 +mg_arp_setup_slots: + .base64 "AAAHAAAA" + .type mg_arp_page, @object + .size mg_arp_page, 6 +mg_arp_page: + .string "@" + .base64 "AAUABg==" + .globl vector_midi + .align 2 + .type vector_midi, @object + .size vector_midi, 36 +vector_midi: + .long 2 + .long .LC8 + .long 86 + .long 1 + .long vector_midi_assign + .long vector_midi_page + .long vector_midi_knob + .long vector_midi_yes + .long 0 + .local midi_view + .comm midi_view,4,2 + .data + .align 2 + .type midi_page_built, @object + .size midi_page_built, 4 +midi_page_built: + .zero 4 + .section .rodata + .type midi_layout, @object + .size midi_layout, 18 +midi_layout: + .base64 "AAECAwwG" + .base64 "DQUEBwgK" + .base64 "CQsODxAQ" + .type midi_byte, @object + .size midi_byte, 16 +midi_byte: + .base64 "AAECAwQFBgcICQoLAAANDg==" + .type midi_max, @object + .size midi_max, 16 +midi_max: + .base64 "DxALBH5/fwwYP0ABCX8VFw==" .section .rodata.str1.1 -.LC18: +.LC21: + .string "TYPE" +.LC22: + .string "DENS" +.LC23: + .string "ROOT" +.LC24: + .string "SCAL" +.LC25: + .string "GATE" +.LC26: + .string "ACNT" +.LC27: + .string "SEED" +.LC28: + .string "SPAN" +.LC29: + .string "OFST" +.LC30: + .string "ROT" +.LC31: + .string "RPT" +.LC32: + .string "DIR" +.LC33: + .string "OCT" +.LC34: + .string "VEL" +.LC35: + .string "PROB" +.LC36: + .string "HUMN" + .section .rodata + .align 2 + .type midi_names, @object + .size midi_names, 68 +midi_names: + .long .LC21 + .long .LC22 + .long .LC23 + .long .LC24 + .long .LC25 + .long .LC26 + .long .LC27 + .long .LC28 + .long .LC29 + .long .LC30 + .long .LC31 + .long .LC32 + .long .LC33 + .long .LC34 + .long .LC35 + .long .LC36 + .long .LC3 + .section .rodata.str1.1 +.LC37: .string "001 STATIC" -.LC19: +.LC38: .string "002 FLEX" .section .rodata .align 2 .type pool_labels, @object .size pool_labels, 8 pool_labels: - .long .LC18 - .long .LC19 + .long .LC37 + .long .LC38 .data .align 2 .type pool_browse, @object @@ -4530,62 +7695,40 @@ scales: .word 1193 .globl vector_scale_names .section .rodata.str1.1 -.LC20: +.LC39: .string "CHR" -.LC21: +.LC40: .string "MIN" -.LC22: +.LC41: .string "MAJ" -.LC23: +.LC42: .string "DOR" -.LC24: +.LC43: .string "PENT" .section .rodata .align 2 .type vector_scale_names, @object .size vector_scale_names, 20 vector_scale_names: - .long .LC20 - .long .LC21 - .long .LC22 - .long .LC23 - .long .LC24 + .long .LC39 + .long .LC40 + .long .LC41 + .long .LC42 + .long .LC43 .globl vector_control_max .type vector_control_max, @object .size vector_control_max, 12 vector_control_max: .base64 "DxALBH5/fwwYP0AB" .globl vector_control_names - .section .rodata.str1.1 -.LC25: - .string "TYPE" -.LC26: - .string "DENS" -.LC27: - .string "ROOT" -.LC28: - .string "SCAL" -.LC29: - .string "GATE" -.LC30: - .string "ACNT" -.LC31: - .string "SEED" -.LC32: - .string "SPAN" -.LC33: - .string "OFST" -.LC34: - .string "ROT" -.LC35: - .string "RPT" -.LC36: - .string "DIR" - .section .rodata .align 2 .type vector_control_names, @object .size vector_control_names, 48 vector_control_names: + .long .LC21 + .long .LC22 + .long .LC23 + .long .LC24 .long .LC25 .long .LC26 .long .LC27 @@ -4594,10 +7737,6 @@ vector_control_names: .long .LC30 .long .LC31 .long .LC32 - .long .LC33 - .long .LC34 - .long .LC35 - .long .LC36 .globl vector_defaults .type vector_defaults, @object .size vector_defaults, 11 @@ -4896,6 +8035,99 @@ st_stock_validate: movem.l %d2-%d7/%a2-%fp,(%sp) jmp 0x40002320 +| SPDX-License-Identifier: MIT +| The sites of the MIDI generator registry (midi_generators.c, events.json ot_midi_generators): the base's, and a +| card build's generator module patches the same ones. Each replays its own instructions, never stock's bytes. + .text + .balign 2 + .global mg_tap_site, mg_page_site, mg_setup_site +| Double-tap TRACK (0x40083afc, 10 bytes): d2 is the tapped track, the current one. Stock asks for MIDI mode +| (0x40033970) and does nothing in it (0x40083b7e). +mg_tap_site: + jsr 0x40033970 + tst.l %d0 + beq.s 1f + lea -16(%sp),%sp + movem.l %d0-%d1/%a0-%a1,(%sp) + move.l %d2,-(%sp) + jsr mg_track_tap + addq.l #4,%sp + movem.l (%sp),%d0-%d1/%a0-%a1 + lea 16(%sp),%sp + jmp 0x40083b7e +1: jmp 0x40083b06 +| The main page drawer's MIDI arm (0x4004e1ea, 10 bytes): 0x40031ee0(-1, its page argument) is the descriptor; a +| generator's page replaces it. Stock pops the two arguments at 0x4004e1f4. +mg_page_site: + move.l 8(%fp),-(%sp) + pea -1.w + jsr 0x40031ee0 + lea -12(%sp),%sp + movem.l %d1/%a0-%a1,(%sp) + move.l %d0,-(%sp) + jsr mg_page + addq.l #4,%sp + movem.l (%sp),%d1/%a0-%a1 + lea 12(%sp),%sp + jmp 0x4004e1f4 +| The setup opener 0x40032228(page) in MIDI mode, page 2 (0x40032280, 8 bytes): ARP SETUP's open routine from its +| window record, then 0x400322ec calls it. The opener has no frame here, so rts returns to its caller. +mg_setup_site: + lea -16(%sp),%sp + movem.l %d0-%d1/%a0-%a1,(%sp) + jsr mg_arp_setup + tst.l %d0 + movem.l (%sp),%d0-%d1/%a0-%a1 | movem and lea keep the condition codes + lea 16(%sp),%sp + bne.s 1f + move.l 0x400cfeda,%a1 + jmp 0x400322ec +1: rts +| MIDI NOTE SETUP's drawer 0x40036548 (8 bytes): its displaced prologue, filled from the user's own OS (the base's +| modwerk_stock_ placeholders; a card build's StockCopy of the same span), then the rest of it. + .global mg_stock_note_draw +mg_stock_note_draw: + .globl modwerk_stock_40036548_8 +modwerk_stock_40036548_8: + .space 8 + jmp 0x40036550 + +| Input layers (stock's list at 0x460d165c: a pushed layer links last). Keys: code, then the press, release and +| repeat handlers; encoders A-F: the turn handler. + .data + .balign 4 + .global mg_list_layer, mg_page_layer +mg_list_layer: + .long 0,mg_list_keys,0,0,0,-1,-1 +mg_page_layer: + .long 0,mg_page_keys,mg_page_encs,0,0,-1,-1 +mg_list_keys: + .irp k,0x33,0x20,0x31 + .byte \k,0 + .long mg_key,mg_key,mg_key,0,0 + .word 0,0 + .endr + .byte 0xff,0 + .long 0,0,0,0,0 + .word 0,0 +mg_page_keys: + .irp k,0x31,0x32 + .byte \k,0 + .long mg_key,mg_key,mg_key,0,0 + .word 0,0 + .endr + .byte 0xff,0 + .long 0,0,0,0,0 + .word 0,0 +mg_page_encs: + .irp k,0,1,2,3,4,5 + .byte \k,0 + .long mg_knob,0,0,0,0 + .endr + .byte 0xff,0 + .long 0,0,0,0,0 + .text + .text .balign 2 st_name_replay: diff --git a/src/community/downloaded-module-guide.ts b/src/community/downloaded-module-guide.ts index ce4b8df5d..35bc6a910 100644 --- a/src/community/downloaded-module-guide.ts +++ b/src/community/downloaded-module-guide.ts @@ -43,7 +43,7 @@ const QUICK_TESTS: Record = { { title: 'Enlarge the signal.', text: 'Press YES for fullscreen. Change a track’s level on its usual page and compare the plot.' }, { title: 'Close the view.', text: 'Press NO and stop playback. Outside the utility, a short SONG press opens the normal popup.' }, ] }, - vector: { version: '0.2.6-experimental', steps: [ + vector: { version: '0.3.0-experimental', steps: [ { title: 'Choose VECTOR.', text: 'Select an audio track, double-tap SRC, choose VECTOR and press YES.' }, { title: 'Assign a sample.', text: 'Choose STATIC or FLEX with UP/DOWN or LEVEL, then press RIGHT. Select a loaded, tuned sample and press YES to assign it.' }, { title: 'Shape a phrase.', text: 'Press SRC. Change TYPE, DENS or ROOT to generate a phrase; each edit commits immediately, even during playback.' }, From 1ea000a489e1daceb30ca3af4b968f9e8b2870ce Mon Sep 17 00:00:00 2001 From: repeat98 Date: Sun, 8 Nov 2026 13:11:21 +0100 Subject: [PATCH 21/33] VECTOR 0.3.0: import the source-built packages --- 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 | 4 +- src/engine/assets/menu-recipes.json | 4 +- src/engine/assets/module-build.json | 30 ++++----- src/engine/assets/platform-writes.json | 4 +- src/engine/assets/requested-packages.json | 75 +++++++++++++++++++---- 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, 98 insertions(+), 47 deletions(-) diff --git a/src/engine/assets/bootstrap-package.json b/src/engine/assets/bootstrap-package.json index 20d403a92..58e09733f 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": "f7fbcc8a655ca63d8c01898a242f771291a41c3e", + "sourceCommit": "9be221aabc43919ab1165cad9df7c1415b96f2f7", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -39,7 +39,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.2.0-experimental", - "vector": "0.2.5-experimental", + "vector": "0.3.0-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.2-experimental", "recorder-loop-fix": "0.1.0-experimental", diff --git a/src/engine/assets/coldfire-packages.json b/src/engine/assets/coldfire-packages.json index 628b2ddaa..4d351119e 100644 --- a/src/engine/assets/coldfire-packages.json +++ b/src/engine/assets/coldfire-packages.json @@ -208,7 +208,7 @@ "sha256": "ccffbf72d45358bde585760b9230c668bf38ebf412ab23efc73732cf96024dca" } ], - "sourceCommit": "f7fbcc8a655ca63d8c01898a242f771291a41c3e", + "sourceCommit": "9be221aabc43919ab1165cad9df7c1415b96f2f7", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -231,7 +231,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.2.0-experimental", - "vector": "0.2.5-experimental", + "vector": "0.3.0-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.2-experimental", "recorder-loop-fix": "0.1.0-experimental", diff --git a/src/engine/assets/descriptor-recipes.json b/src/engine/assets/descriptor-recipes.json index 397f226fe..c09fcae03 100644 --- a/src/engine/assets/descriptor-recipes.json +++ b/src/engine/assets/descriptor-recipes.json @@ -4439,7 +4439,7 @@ ] } ], - "sourceCommit": "f7fbcc8a655ca63d8c01898a242f771291a41c3e", + "sourceCommit": "9be221aabc43919ab1165cad9df7c1415b96f2f7", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -4462,7 +4462,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.2.0-experimental", - "vector": "0.2.5-experimental", + "vector": "0.3.0-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.2-experimental", "recorder-loop-fix": "0.1.0-experimental", diff --git a/src/engine/assets/dsp-packages.json b/src/engine/assets/dsp-packages.json index c7794a8a9..be12b3141 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": "f7fbcc8a655ca63d8c01898a242f771291a41c3e", + "sourceCommit": "9be221aabc43919ab1165cad9df7c1415b96f2f7", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -25,7 +25,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.2.0-experimental", - "vector": "0.2.5-experimental", + "vector": "0.3.0-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.2-experimental", "recorder-loop-fix": "0.1.0-experimental", diff --git a/src/engine/assets/menu-recipes.json b/src/engine/assets/menu-recipes.json index 2b36667f0..aa5789e3e 100644 --- a/src/engine/assets/menu-recipes.json +++ b/src/engine/assets/menu-recipes.json @@ -1425,7 +1425,7 @@ "caveLimit": 1074625596 } ], - "sourceCommit": "f7fbcc8a655ca63d8c01898a242f771291a41c3e", + "sourceCommit": "9be221aabc43919ab1165cad9df7c1415b96f2f7", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -1448,7 +1448,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.2.0-experimental", - "vector": "0.2.5-experimental", + "vector": "0.3.0-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.2-experimental", "recorder-loop-fix": "0.1.0-experimental", diff --git a/src/engine/assets/module-build.json b/src/engine/assets/module-build.json index 1646ce2c2..d553a03ab 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": "f7fbcc8a655ca63d8c01898a242f771291a41c3e", + "sourceCommit": "9be221aabc43919ab1165cad9df7c1415b96f2f7", "nativeRevision": "b8deefc88b2c3e5f3c6158e364eb741df1924e1d", - "sourceTreeSha256": "9a824ef6dc7299be4b7acc29278cac52bdbf0f252018bcedc3c552da572e1610", + "sourceTreeSha256": "cc211a576fc3c4bb79b33d69b31782f1d290a7a43cddb66a1ebe8a88a92c51f3", "compilerSha256": "4c7b4a227737ef0686e3eafd320c7f7271003f9a19d02d72dbbe3b36aa10f702", "moduleVersions": { "spectrum": "0.1.1-experimental", @@ -27,7 +27,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.2.0-experimental", - "vector": "0.2.5-experimental", + "vector": "0.3.0-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.2-experimental", "recorder-loop-fix": "0.1.0-experimental", @@ -47,47 +47,47 @@ "files": { "dsp-packages.json": { "bytes": 92040, - "sha256": "39c8b95b6c8909841038fe7e79929dd83e2014d203746284f344815dadbf798e" + "sha256": "ed3c404f0ce44d3f365372be141693aa02f3a5a8b8719bf8d0dfed7a3cb0854b" }, "resident-dsp.json": { "bytes": 25445, - "sha256": "a598c64db2238a32b87d0d65ce3155d21148e278ea0122c5b20dacdac5d5061d" + "sha256": "f1e20d16a2ce794ebf719c327034a0eb5b8ce1283205b4d46a53d54700af2e6b" }, "coldfire-packages.json": { "bytes": 354338, - "sha256": "0397dfb07223bdeb522acdd6bcee59b499b7c2e7937ea01e5a66a168923e4694" + "sha256": "1658c4bb35b94e2d729db15de2b7c081748bd1cb57fcfe4601d6a0fc9718b686" }, "rom-packages.json": { "bytes": 33596, - "sha256": "c0bd9cbf1d626de22b1996b9676c7640ca7c31932a26a1e554ec308882e93b51" + "sha256": "0348ff37184ce84851d42ea6c87535e1a997c6774498f4e93dfb497c0c8dbb85" }, "bootstrap-package.json": { "bytes": 4179, - "sha256": "b414ea7a93c2f580edded448303eb5d9026fc8f4c49e5cabfd4a8f5945609898" + "sha256": "4a9e903e50f7d14fc1646f6cd2adca74878608d97b6b8394728099233197cd09" }, "menu-recipes.json": { "bytes": 37838, - "sha256": "43d552429e5b8f20c785ab40e0d0218105ac0b55099aa405283870ab287a90de" + "sha256": "6e0907831de45c1e807308a88067178168893b1e5c62bbe39e760e3b1f01eb5e" }, "descriptor-recipes.json": { "bytes": 85463, - "sha256": "6ac6d53faa5e784efbbfca7024d84f4c44bdb2285fc9a61f2af16910671555ba" + "sha256": "74e5a09804aa0db962eba734bc6027001d4665784abdf49719a02faca4587ac4" }, "platform-writes.json": { "bytes": 17922, - "sha256": "d8fe2d30a90d47311d44ba669f565afe01860987ba44dbb5c8dd404ef674db05" + "sha256": "0c83b24de54708275ca00e89a57615f868ae7eedf1e27b0879c96c14e49b7b5d" }, "requested-packages.json": { - "bytes": 1325008, - "sha256": "c5d01f5fee6cf07402117d0e57025197fa0bc6c2444e6652cd4e9e89e3e14979" + "bytes": 1355618, + "sha256": "d434d65f3f212584e2d197b6c251071e76b36f232d484009e7856fae6eec0ba2" }, "utility-packages.json": { "bytes": 13307, - "sha256": "c9d7db19e4f5245d1e52c06552d6627fd87a9274de833937c2e07318b605193b" + "sha256": "3c4f46981442ea9941a2a4d5eae9c30929e61e3186a87aa133488a139cc0eeff" }, "usb-audio-packages.json": { "bytes": 737949, - "sha256": "581966718cf4c3074c708eaf5f2e3c61f9700a645ac4137443dd3a98878122e6" + "sha256": "ced501a0999c1393e9bb086993d82f916bbfd24ebe89603d26acafdc600b2be8" } }, "approval": null, diff --git a/src/engine/assets/platform-writes.json b/src/engine/assets/platform-writes.json index 11f18ae30..1fe554055 100644 --- a/src/engine/assets/platform-writes.json +++ b/src/engine/assets/platform-writes.json @@ -526,7 +526,7 @@ "sha256": "09effec7437266b693e358d43f0ba0f3de2b0b35fe4d81e7b76ba90cf388bde8" } ], - "sourceCommit": "f7fbcc8a655ca63d8c01898a242f771291a41c3e", + "sourceCommit": "9be221aabc43919ab1165cad9df7c1415b96f2f7", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -549,7 +549,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.2.0-experimental", - "vector": "0.2.5-experimental", + "vector": "0.3.0-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.2-experimental", "recorder-loop-fix": "0.1.0-experimental", diff --git a/src/engine/assets/requested-packages.json b/src/engine/assets/requested-packages.json index 0db953125..a0cdf212f 100644 --- a/src/engine/assets/requested-packages.json +++ b/src/engine/assets/requested-packages.json @@ -1,7 +1,7 @@ { "schema": 1, "revision": "b8deefc88b2c3e5f3c6158e364eb741df1924e1d", - "sourceCommit": "f7fbcc8a655ca63d8c01898a242f771291a41c3e", + "sourceCommit": "9be221aabc43919ab1165cad9df7c1415b96f2f7", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -24,7 +24,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.2.0-experimental", - "vector": "0.2.5-experimental", + "vector": "0.3.0-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.2-experimental", "recorder-loop-fix": "0.1.0-experimental", @@ -446,7 +446,7 @@ { "label": "vector", "moduleId": "vector", - "version": "0.2.5-experimental", + "version": "0.3.0-experimental", "key": "VECTOR", "author": "repeat98", "nativeAuthor": "repeat98", @@ -455,40 +455,47 @@ "caveAddress": null, "source": "modules/vector/control.s", "sources": { - "modules/vector/control.s": "c4f829e437ffbde1275c00827031b694a86011013d37269077e4696818323471", - "modules/vector/manifest.py": "4d921f24256038797a99671534885b0bb9a27eaa79261b11136cf0a95a75af21" + "modules/vector/control.s": "c95c74baa5e5d79d1c3edf0148b2c4a84daf4e5d61c1bff5eb3934626fd0a9be", + "modules/vector/manifest.py": "b9dec167f8bd4f1b691069cc89834f6c2a6717b874eb28629ef5c8c026d3d976" }, - "bytes": 23508, - "code": "7f454c4601020100000000000000000000010004000000010000000000000000000059f4000000260034000000000028000c000b4fefffe048d73c3c4ab900000000670e202f0024b0b900000000670000da41f900000000226f002493c81031880010c0b1fc0000000066f24bf900000000428243f90000000049f90000000045f900000000223c00000000265d91c810338800670c158088005288ab43b68866eed1ca4218b28866fa201c26004243484378182a00e8ad2800e08c13400003ab4012851344000213430001b082656a203c00000000781826002a0042434843e8ad2800e08c1340003358891345002c1344002e52825c8a5c81700c1343002db082668877fc5555202f0024283c5555555523c400000000a3790000000023c30000000023c000000000203c000000004cd73c3c4fef00204e75203c00000000781826002a0042434843e8ad2800e08c1340003358891345002c1344002e52825c8a5c81700c1343002db0826600ff1e60924feffc38720f48d77cfc206f03d071902f40003eb2806406740f2f42003e7010206f03d077a800012f43003ab083640672102f41003a700b206f03d075a800022f42004ab0826406720b2f41004aa940206f03d075a800032f420042b0826404a96f0042206f03d0707e73a800042f410046b0816406727e2f410046707f206f03d075a800052f42004eb0826406727f2f41004e700c206f03d075a800062f420032b0826406720c2f4100327218206f03d01028000875a800072f4200361f40005fb282640674182f420036206f03d0226f0036282f03d41028000943e9fff42f4900524a0067107240b2846500042e7180b08465000408206f03cc47ef02c84def03c8116f03d701002f480060224b50c0421011400003114000021140000122d8bdc966ea2a2f003e720b243c9e3779b942862e3c7feb352de3ad45ef00c849ef01c8260a2c452a2f03dc2205b581200142404840b3804c0708007e0f2200eea9b380223c846ca68b4c0108002e0042474847b187a740c0867fc74a80677ade8e2887204320062228fffc4bef03c843f51c00bea9fe00640a2081538059884a8066e441f70c002a4606829e3779b9528d588c5883214600c8bbc4675e22052e3c7feb352db5812c0d200142404840b3804c0708007e0f2200eea9b380223c846ca68b4c0108002e0042474847b187a740c0867fc74a80668628874a866684428041f70c002a4606829e3779b9528d588c5883214600c8bbc466a2300dc0ef003c5080e888671671c043f20c00201a41f70c007001114002c8b5c966f0720c760c202f004a5e804c41000273fc00fe92af004e7ffc00fe226f0052780c700c90af004a2f42005ac2ef03da286f0052d0824c4300024c471001307c001893ef003291ef004a98af0036a340e5a81f410059d9ef003242af002e2c492f4d00522f46003a2f40004e2a6f002e52af002e4a1367000144223c85ebca6b42832c2f002e428543f90000000070f42e2f03dc4c016800246f00422f4b003675f1aa00327c0064bf867e0f0a86b5297a4d220642414841bd812c3c7feb352d4c0618002c01eeaebd812c3c846ca68b4c0618002c0142464846b3862f46003222007c0cd2884c4610070f02672ab08e6c0001542204d2804a816d00013cb3c16f00013e2600528022417c0c2200d2884c4610070f0266d65280720db28066c02c2f0032266f00364a8567162006e0884c45000143f71c00262900640683fffffff4700fc086b0af003e642c7030c0864a80660ac4af004e4a826600015e202f004a0806000667060680fffffff4b08e6d06b9c06d0226007018a7422206e0a9c7fc00054c421000068300000040174300015480c0ef0048e48817400002200dc0824a80670000d80286003000004a86670000cc102f005917400003588bbbef003a6600fea82a6f00524aaf03d4675c71af005f763fb680650000b02c2f03d42206246f03cc2806206f03d053844c4600021628000a71c6206f00602a0643f20c009282240d2c0152814c4560004a0367062c049c8020064c42000647ef03c845f36c0020eaff00b3c866da4cd77cfca3404fef03c84e754481b3c16e00fec652806000fe9cb08c6e1045f75c002640528547eb000c254b00642204d2804a816d18b3c16f00feb222412600720d5280b2806600fe6c6000fea8448160e4102f03db174000036000ff342c2f03d4703f206f03d02206246f03cc28064c4600021628000a71c6206f006053842a06928243f20c00240d6000ff4e202f005a6000fea2206f03cc280047ef02c84def03c8116f03d701002f480060224b6000fbf671807840b0846400fbd460d64fefffd448d74c044242203946c82456227c20300c0c2f4800102040d1fc0008ed8042001239100b14cf3f420028243c0b0b00012f420020a7421f40002a302f00322f490024c28275fc18b2c0fc001e4c021800d1c173b0083e53814a81670001f64def001793c922090681000001e9d280a542b489641e1cb0180052897209b289671e22090681000001e9528ed280a542b48965e245f1083f52891cf0a80060c6102f0017720fa942c2807180e88830401f410020b4806500017e3008122f001874101f400023701fc0813040b4806500013c3408102f0019ea891f420021a342c282740fc4801f41002a12022042740bb488650001027180e8881f410022720c3040b280650000d6122f001a340871811f420026747eb480650000b0102f001b1f4100244a006d00008c122f001c1f40002574187181b480656871af001d1f410027723fb2806546122f001ee188758120427440b4886528100147ef00203f400028206f0010200820d320ef002430ef00284cd74c0410af002a4fef002c4e75724047ef002010013f40002860d4122f001e703fe188758120427440b48864b860de721871af001d1f410027723fb280649660da707f122f001c74181f4000257181b4806400ff7460d8727e102f001b1f4100244a006c00ff5260d8307c000c122f001a340871811f420026747eb4806400ff2a60d4720b7180e88830401f410022720cb2806400ff0060d0307c0010102f0019ea8934081f420021a342c282740fc4801f41002a12022042740bb4886400fec460c0307c0004122f0018741030081f400023701fc0813040b4806400fe8260b847ef002093c9244b22090681000001e94df1083fd280a542b489651a528914f0e80022090681000001e94df1083fd280a542b48964e614b018005289ad41b2896700fecc528a60c0203946c824560680c00000002f020c8007efffff624a327c0022723ca742207946c82456d1fc0008ed801039100b14cfc08275fc18b24c020800a342d1c071b09800d1c1528906810000001eb480650871907453b480670e0c810000012c66bc241f42804e7571a800017432b48066e871a8000253804a80670a71a8000255804a8066d4241fa3404e754feffff42f0e2f0271b9100b14cc2c6f00242f0041ef000d4ebafcbe588fad40b08e675cab42200eb48e6402538071b7080920402f2f00302f2f003070fec0af003043f90000000073b1e8002f002001b1c164022008c0fc007f4c4100002f002f2f00302f2f00302f2f00304eb9400479b44fef001c241f2c5f4fef000c4e751039100b14cc227946c82456a7421239100b14cfd3fc0008ed807180c282c0fc001e204071fc18b241e801f14c001800d3c110318800727fc28020416000ff76518f2f02740b202f00182200206f00105c81226f00142f6f002000042f6f00240008b4816406241f508f4e752f6f000800242f6f000400202f41001c2f4000182f4900142f480010241f508f6000fef2598f2f02740b202f0014222f000c206f0010226f001c2f6f00200004b4806406241f588f4e752f6f000400202f49001c2f4000182f4000142f4800102f41000c241f588f6000feaa4fefffe448d7401c242f002441ef001171b9100b14cc2f004ebafb66588fad40b082676cab40b082653c71b728112202a3435581b6816500009255824a826700012aab434c43000141f900000000226f002020701c00101812c066fa4cd7401c4fef001c4e7571b72810780bb882660001124a80670000e6226f002041f900000000101812c067d4101812c066f460cc1039100b14cc227946c82456a7421239100b14cf77fc18b2d3fc0008ed80787f7180c282c0fc001e20404c03180041e801f1d3c110318800c0847663b68064587864760a2200a54e4c441001206f0020a74906810000003010c122004c43100124014c43200422040681000000301081206f0020d1ce740a4c42000142030681000000301081206f0020118398004cd7401c4fef001c4e75206f0020a34942817409b48064d02c49760a224122004c431001548924014c43200422040681000000301081206f0020d1ce60aa226f002041f9000000006000ff1a740c4c42000141f900000000226f002020701c006000fed6780ab88266144a806600ff3e226f002041f9000000006000fee851824a826600ff2822000681fffffff44a816d0e20017663b6806500ff186000ff6c206f0020740c94802002a54910fc002da3417409b4806400ff306000ff5c700a2f4000086000fe1c70082f4000086000fe12ad6f00086000fe0a71b9100b14cc4feffff441ef00012f004ebaf976588f4a2f000b671641f900000000226f0010101812c066fa4fef000c4e75226f001041f90000000060e84feffff42f0271b9100b14cc41ef0005ab422f004ebaf93471af000c588f41f9000000004c420001226f001420701c00101812c066fa241f4fef000c4e754feffff42f02740c71b9100b14cc41ef00052f004ebaf8f671af000b588f41f9000000004c420001226f001420701c00101812c066fa241f4fef000c4e754fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf8b471af0025588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf7e471af0023588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf71471af0022588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf64471af0021588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf57471af001e588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf4a471af001d588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d8148006090202f0004727f5280c0814e752f032f02206f0010a942226f000c102800037380b481640270041210e988760f7581b6826402720f808112801028000a6702700112280001eb8876107581b682640272108081740c13400001102800067380b4816402700c12280002e988760b7581b6826402720b8081747e13400002102800047380b4816402707e13400003102800056a02707f134000047618102800077380b6816402701813400005743f102800087380b4816402703f134000067640102800097380b68164027040727fc2af00141340000713410008241f261f4e754fefffd848d75c1c2f2f00342f2f003449ef00272f0c4ebaff16362f003a9dce4fef000cc6fc001e141ca540b08e64000086267c100b14cfa7441013227946c82456d3fc0008ed80121345ee01e9528ed5c3c084c28479fc18b24c0408004c0418002040d1fc100a4ece7009d3c11382a8001182a800b08e66ae1013227946c82456a7421213d3fc0008ed80c082c2824c0408004c04180078022040d1fc100a4eced3c11384383e1184383e4cd75c1c4fef00284e75267c100b14cfa7441013227946c82456d3fc0008ed80121345ee003f528ed5c3c084c28479fc18b24c0408004c0418002040d1fc100a4ece7009d3c11382a8001182a800b08e6600ff2a6000ff782f02720f206f0010a942226f00081010c08112807190e8881200b4806402720413410003721f741010280001c0811200b4806402721013410001a341740f71a80001ea88c0811340000a10280002c082740b1200b4806402720b13410002740c71a80002e8881200b4806402720c13410006747e102800037380b4816402707e13400004102800046a02707f134000057418102800057380b4816402701813400007743f102800067380b4816402703f134000087440102800077380b4816402704013400009727f10280008206f000c241fc28020814e75598f2f0a2f02202f0010222f0014206f00184a80672c4a81672845e8ffff743fb48a651e747fb4af001c65162f4800182f4100142f400010241f245f588f6000ebcc241f4280245f588f4e75222f00044a81675a71fc0919b0af000864502001204106800000004052884a28ffff663eb08866f42041200141e8004806800000005052884a28ffff6624b08866f4204106810000085941e80059719052880c80000000ff6608b28866f0a3404e7542804e754fefffd848d73cfc262f002c4a8367000168202f00300c80000009196300015a4aaf003467000152206f0034723f18280100200453807180b2806500013c4aaf003866122f2f00302f034ebaff4e508f4a806700011a7984246f00344281204a1010a3457580ba826500010eb284650001144a0066000102528158887040b08166de264322432843428547eb005943e9007949ec089aaf41c2852805e68caf48a34291c4d1c37190e2a0c0824a1267000132142a000116824a1267000120142a00021742000d4a126700010c142a00031742000fa342e3aa12104a12670000ee828210814a8066044a12673e420042143a7c000f42819284d2839bc4307c004f194000012002468091c41e353800ce801b8738002a411e2d001fce801b47001f12303800c08111803800204b4281101846804a0056c0710044808280b1c966ee307c001791c4d1c310104a1266784a816774848010825285588a47eb0020548c43e900207040b0856600ff2ca3404cd73cfc4fef00284e754cd73cfc42804fef00284e754a006700fef0102800017a787580598071805982ba8065dcab454c4528004a8066d275a800027a7eba8265be4a2800036db8528158887040b0816600fea06000febe4682c48060882e024687c2876000ff0e50c26000fef650c26000fee250c26000fed02f02202f000caf41206f0008b280651c73b00822a342b4816512721e74534c01080041f0083c7190b4806706241f42804e7571a800017232b28066f071a8000253804a80671410280002a541241fb3804a0057c0710044804e75241fa3404e754fefffc8203946c824560680c000000048d744040c8007efffff630c42804cd744044fef00384e75207946c82456a7411039100b14cf75fc18b22f2f003cd1fc0008ed80c0814c020800487008004ebaff50508f4a8067c61039100b14d0740f73802f410018b48165b2322f003e227946c82456488041f9000000002f49001c1439100b14cf246f001cc2fc091a1f4200272c413200c2fc8ed843f618004df298002f4900209dc81030e80010c0b1fc0000000066f24aaf0040670001f871fc8e55206f001cd1c14a3008006700020e1039000000007180743f22005381b4816500ff3a2f2f003c41ef00312f4000104ebaed48342f0042588f207946c82456d1fc0008ed801239100b14cfc4fc001e202f000c2242a742c28275fc18b243e901f14c021800747fd1c112309800c4812f4200284aaf0044670c2202747f5281c4812f420028342f003e207946c82456d1fc0008ed801239100b14cfc4fc00182242a742c28275fc18b243e901234c021800747fd1c173b09800b4816500fe9e2f2f00282f012f00486f00394879000000004ebae77e2f2f00544879000000004878091a4879000000004ebafc0c4fef00244a806700fe68226f001cb3f946c824566600fe5873b9100b14d0b2af00186600fe4a73af002775b9100b14cfb4816600fe3a226f002093fc0000000041f9000000002f49001845f0e800121875922f4a00102f4200147581b4af0014670e1481226f001845e8ffff13928800b1fc0000000066d22f2f0028486f00312f2f00442f4000184ebaf8f2a742122f00332c7946c82456ddfc000950484fef000cc28214163242a342e3aa204222022409828224081c811239100b145e828213c1100b145e207946c82456d1fc0009b332a350a379100f85984eb940027e004eb9400339d82f2f003c4eb94009da20588f4cd74404a37946c7c72c202f000c4fef00384e754878091a4879000000002f4100144ebafa8e508f222f000c4a806600fdee4cd744044fef00384e7571fc8e53103008006000fdf04e56ffe041eeffea2f0a2f0273b9100b14cc2f012d41ffe04ebaeb38322effe2588f207946c82456d1fc0008ed803d6efff2fffd1d6efff4ffff2d6effeefff92d6effeafff5c2fc001e1039100b14cf2241a74143e901f1c08173fc18b24c010800d1c012309800707fc280ab407581b0ae0008657a43eeffead3ee0008206e000c7391d1c14a886d000082246e0008203c0000000071b20800b1c06c022008b0816740128020022f00486effea2f2effe041faf78e2d48ffe44e9042a7a3672f2effe04ebafc524fef0018206effe44a806744a1674eb94004d948a37946c7c72c588f242effd8246effdc4e5e4e75ad40b0ae00086742222e0008206e000c43f618e97391d1c14a886c804a8167d442001280200260902f02486efff52f2effe04e904fef000ca1674eb94004d948a37946c7c72c588f60aa202e000cd0824a806d3c727fb2806c02707fb08267942f00486effea2f2effe041faf6e62d48ffe44e9042a7a3672f2effe04ebafbaa4fef0018206effe44a806600ff5860984a016700ff6042802f00486effea2f2effe041faf6ae2d48ffe44e9042a7a3672f2effe04ebafb724fef0018206effe44a806600ff206000ff60203946c824560680c00000002f020c8007efffff62084a398000001567064280241f4e751239100b14cc207946c82456a7421039100b14cfd1fc0008ed807381c0822f0173fc18b24c010800487008004ebafaac508f4a8067c42039000000004a8066ba4a3946c7d8d866b44ab9460d173a66ac4ab9460d169457c0241f710044804e754fefff78428148d75cfc242f008c284245ef00289dce28024283264a06840000003c49ec002271b41800a346bc80650c41f648007e537190be80674252814dee001e47eb000cbdfc000000f066d82f02206f009442854e90588f91c80b0366000086528541e8001e45ea000cb1fc000000f066e84cd75cfc4fef00884e7571a800017c32bc8066b471a8000253804a80670a71a8000255804a8066a0a340e3a891c8868043f6883cab47be88642c2c08ad474c47600043f60800700c43e901ecd3c21791880042115288b0886700ff6e43f6883cab47be8865d4d3c2179188004211528860be428147f02800ab44b881651449f21800ab442242d3c11194983c5281b88164ec2c01ad474c47600449f21800528143f34800780c135401ecb88166ca528541e8001e45ea000cb1fc000000f06600ff286000ff3c487a13f82f2f00084ebafebc508f4e75203946c824560680c00000002f020c8007efffff62084a39800000156706241f42804e751239100b14cc207946c82456a7421039100b14cfd1fc0008ed807381c0822f0173fc18b24c010800487008004ebaf8de508f241f4e75203900000000b0b946c82456670442804e751039100b14cfa741c081b0b90000000066ea71b9100b14ccb0b90000000066dc6000ff724fefffec70312f0a2f02226f0020a342206f0024b08956c173014481b4886700008ea340e3a82439000000002f420014c4804a82665e4a886632a340244174fd45f21a00d08a45f90000000020320c0022005381b48165322f4900202f480024241f2240245f4fef00144ed12441a54045f21a0074fdd08a45f90000000020320c0022005381b48164ce241f245f4fef00144e754a8866f24680c0af0014241f245f23c0000000004fef00144e752f4100102f4800082f49000c4ebafeb4222f0010206f0008226f000c4a806700008a103946100b1d08000005667c703eb089677c7431b48966702f4100102f4800082f49000c4ebafcac222f0010206f0008226f000c4a806750a34081b9000000001039100b14cca367a36771802f004ebaf7e04fef000c4a80677048780020203c000000002f004eb94005a2b8a1674eb94004d948a37946c7c72c4fef000c241f245f4fef00144e7542806000fee04a3946c7d8d866f24ab90000000057c0a54183b900000000a1677100448023c0000000004eb94004d948588f241fa37946c7c72c245f4fef00144e7548780020203c000000002f004eb94005a2b8a1674eb94004d948a37946c7c72c4fef000c608e203900000000b0b946c8245667024e751039100b14cfa741c081b0b90000000066ec71b9100b14ccb0b90000000066de4ebafd7e4a8067d6a37900000000a379000000004eba10d6a1674eb94004d948a37946c7c72c588f4e75203900000000b0b946c8245667024e751039100b14cfa741c081b0b90000000066ec71b9100b14ccb0b90000000066de4ebafd244a8067d642b900000000a379000000004eba107ca1674eb94004d948a37946c7c72c588f4e75203946c824560680c00000002f020c8007efffff6232203946c82456a7421239100b14cf06800008ed80206f000c41e8ffdec28275fc18b24c021800af42d08122089280b4816408202f0008241f4e75a342b4af000865f02f012f004ebaf5ce508f4a8067e2ab6f0008202f0008241f4e752f032f024ab90000000067084ebafcd64a806672203946c824560680c00000000c8007efffff6236223946c82456a7431039100b14cf06810008ed803040202f00100680ffffffde2408c48377fc18b24c032800d2829081af42b480640a202f000c241f261f4e75a343b6af000c65ee2f002f014ebaf544508f4a8067e0241fab40261f4e75203946c82456a7421239100b14cf77fc18b220790000000006800008ed8041e80022c2824c031800d081d088b0af00106600ff5c241f203900000000261f4e754fefffc4203946c824560680c000000048d74c0c0c8007efffff62000166af40b0af00446500015c223946c82456206f004091c12c48ddfcfff712802f41002473fc18b2200e4c41000220424a8266000132bdfc000062c762000128222f0044a342246f004043f218227391b48164000178a36f0020222f0044701e4c0018004aaf004866624ab900000000670001062f4100142f4800184ebafb84222f0014206f00184a80670000ec203946c8245606800008ed801439100b14cf3242a7422609c68275fc18b24c023800d083b0af0040660000c0262f0044b6b900000000660000b2a56f00482f2f00442f2f00442f41001c2f4800204ebaf3fa508f222f0014206f00184a80670000e8226f0040203c1001614e90af002441f1183c43f118422209227c100162fe93ef00241190080045e801b0139288005288b28866eea340b0af0048662c73fc18b2200e207c46c8245623d000000000a379000000004c410000222f004423c10000000023c0000000004cd74c0c202f00204fef003c4e754cd74c0ca36f0020202f00204fef003c4e752f2f00442f2f00442f41001c4ebaf352508f222f00144a806700ff5e4203206f0040203c1001614e226f004090af00241183183e1183183d1183183c41f1183c43f118422209227c100162fe93ef00246000ff4877912f4300206000fe86226f0044743248690001487900000000200f06800000003b2f002f4000282f410020246f004c2f48002445f2183c2f4a00344ebaed8614bc0053226f004c222f0020244145ea003f1382183d74021382183e224143e901e9202f00284fef000c2f490028206f00182f4a002c226f0028a542d3c8b488641826405288246f0040740915939800b4886700fe90528060dc246f00402640226f002cd3c85288159b9800200b60c6518f2039460e5e302f0b2f0a4a80671047f900000000b7f9460e5e2c670a4280245f265f508f4e75204041e800242f48000c2f082f40000c4eb94003567c226f000c588f4280246900282f1ba16745eaffe92f0aab672f2f001c2f3c400ba8762f4000204eb940012bd84fef0018202f0008b0b9460e5e4067165f8aa341b2806640245fa37946c7c72c265f508f4e75226f000c2051a167486a00054868fffb486affffa7672f092f4000204eb9400122544fef00185f8aa341202f0008b28067c02f1ba1672f0aab67a3402f2f001c2f3c400ba8762f4000204eb940012bd84fef0018202f0008b0b9460e5e40668a609e4ebaf8384a80670001004ab9460e5e30660000f64ab9460e70e0660000ec207c46c82456a74123d0000000001039100b14cfc28023c10000000071b9100b14cca567ad672f3c460e5e3823c00000000042b90000000042b9000000004eb94007ec604fef000c207946c82456a7411039100b14cf227900000000d1fc0008ed80c08173fc18b24c010800d1c071b098222f002f3c460e5e384eb94007edb041f90000000023c8460e5e28203c0000000023c0460e5e2c42b9460e5e342f3c4006d754a36742a7a167487800404878006e4eb94005829c4fef002023c0460e5e304a80672442a74879000000002f004eb9400570b82f3c400ce0c44eb9400314944fef00106000fe084e754ab9460e5e30670e203c00000000b0b9460e5e2c67024e754eb94006d75442b9000000004eba0a764ef94007893c598f4ab9460e5e30670e203c00000000b0b9460e5e2c6704588f4e754ebaf73e4a8067f42239460e5e40a340b08165e82e814eb94006d7544ebaf7224a8067d823d700000000a379000000004eba0a20a1674eb94004d948a37946c7c72c588f588f4e754feffff4222f0010206f00144ab9460e70e0677e4ab90000000066122f4800142f4100104fef000c4ef94007893c2f4100042e884ebaf6c2222f000420574a8067da4ab9460e70e067d22039000000002f4000084eb9400789e442b9000000004ebafe024ab9460e5e306726203c00000000b0b9460e5e2c66182f2f00082f3c460e5e384eb94007edb04fef00146000fce24fef000c4e75518f222f000c206f00104ab9460e70e067124ab9460e739a660aab40b0b9460e738e67102f4800102f41000c508f4ef94007909c2f4100042e884ebaf5ca222f000420574a8067dc4eb9400789e4508f6000fd7a598f4eb940031f282e804ebaf5a64a80672c4ab90000000066244a3946c7d8d8661c4ab9460d173a66144ab9460d1694660c2f174ebad6e02f400004588f2017588f4e75598f2f02203946c824560680c0000000222f000c0c8007efffff62084a39800000156708241f2001588f4e751039100b14cc207946c82456d1fc0008ed8075801039100b14cf2242a7422f09c08275fc18b24c020800487008002f41000c4ebaee3e508f222f00044a8067b84ab90000000066b0ab40b0b9460d5c3066a62f41000c241f588f6000d64a4feffff4ab402f02222f0014206f0018b0816408241f4fef000c4e75203946c824560680c00000000c8007efffff62e44a398000001566dc1439100b14cc227946c82456d3fc0008ed801039100b14cf75822f42000ca742c08275fc18b22f2f000c4c020800487108002f4100102f48000c4ebaeda0508f222f00084a8067944ab900000000668c4a3946c7d8d866844ab9460d173a6600ff7c4ab9460d16946600ff724ab9000000006600ff682f6f000400182f410014241f4fef000c6000f09c2f02ab40b0af00086406241f42804e75203946c824560680c00000000c8007efffff62e64a398000001566de1239100b14cc207946c82456a7421039100b14cfd1fc0008ed807381c0822f0173fc18b24c010800487008004ebaecf8508f4a8067a84ab90000000066a02f2f000c206f000c486800064ebaf022508f241fa3404e754fefffd448d75c0c4ab90000000067104ab9460e70e0660003b242b9000000004ab900000000660002fa2479800065b8a340b08a6700031c47faddce23ca00000000203946c824560680c00000000c8007efffff620000b0387c003e9dce45faec70207946c82456a7431039100b14cf73fc18b22f0ed1fc0008ed80c0834c010800487008004e92508f4a80672a207946c82456d1fc0008ed801039100b14cf75fc18b2c083a3434c020800d1c071b0c800b680670000ba528e49ec001e7008b08e669e73b9100b14ccaf42b481650002ce207946c82456a7431039100b14cf75fc18b2d1fc0008ed80c0834c020800d1c04a301822660002a6203c400d301c23c0400d5f4c4e93247946c8245673b9100b14cf77b9100b14cc2c402679000000002039000000002843b5f900000000670000e84a8b67204a8067000272203c000000004ab900000000670002c64cd75c0c4fef002c4e754a8067000252203c000000004ab90000000066e2600002a42f0e41ef0025a7422f4000204ebad9ec77fc18b2207946c82456d1fc0008ed801239100b14cf43ec01b349ec001ec282747f4c031800d1c112309800c4812e82486f00252f0e4ebae6a24fef000c1639100b14cf202f001c227946c82456d3fc0009504812113043a7432408c483e5a8828012811239100b145e808113c0100b145e207946c82456d1fc0009b332a350a379100f85984eb940027e00528e7008b08e6600fe4e6000feacb2b9000000006600ff12b6b9000000006600ff084a8b670002144a80674841f9000000004a8e670a4ab900000000670002184ab9000000006600fefa2f082f41001c4eb94003146c42b90000000023ca0000000023cc00000000222f001c588f23c1000000002079460d165c4a8e6700fec44a886700febe4a906600feb8223c00000000207c46c7dd7643f90000000020100c80000000006704238088005888b1fc46c7dd8266e8207c46c7deae43f9000000002010b0816704238088005888b1fc46c7deba66ec4ebaeeee23c0000000004a80670000f841f90000000042902f084eb940031494a167a379000000004eb94004d948a37946c7c72c508f4cd75c0c4fef002c4e754ebaf0d64a80670000b44ab9460e5e306600fcf64ab9460e70e06600fcec4ebaf8242479800065b8a340b08a6600fce8a34147fadab2b2b9000000006700fcdc4e934a806700fcd499cc4dfae9c242a7740842a72f0c4e96528c4fef000cb48c6700fcb842a7740842a72f0c4e96528c4fef000cb48c66d66000fca0203c400d31ae23c0400d5f4c6000fd5a42b90000000023ca0000000023c10000000023cc000000006000feb84ebaf02e4a806600fc4e42b9000000006000fc4442b9000000006000fc4441f90000000042902f084eb940031494a167a379000000004eb94004d948a37946c7c72c508f6000ff082f002f41001c4eb94003146c42b90000000042b90000000023ca00000000222f001c588f23cc0000000023c1000000006000fe3c4a806700fe3641f9000000004a8e6700fdf64ab9000000006600fdec2f4100182f48001c4ebaed66222f0018206f001cb08b6600fdd223ca000000004cd75c0c4fef002c4e75202f00040c800000000567044efa02fe41fa023020084e75400b3eac400b3e98400b7c67400b5413400b7a63000000004fefffec48ef030200082e802f4800044ebaf1d64cef030200084fef00144e754fefffe048ef0307000c2409d48006820008ed802e822f41000474000c8400000005660274012f4200084ebaf2d40c8400000005660228004cef0307000c4fef00204efa028448794005a61c600648794005a8562239460d5c304fefffe048ef030d000c2609d68006830008ed802e832f42000476000c8100000005660276012f43000826014ebaf2780c83000000056702200322004cef030d000c4fef00204e7516102f0071036100ff362600201f79034879400bb7044ef9400585e67110610000582f004879460e73864ef940078890610000124ef94003d722610000084ef94004c3746100fef841fafedc22300c004e7571104fef00186100fee44ef94003c986711061000012b48066064ef9400786ce4ef9400786fc4fefffec48ef030200082e802f4800044ebaf10e4cef030200084fef00144e752f082f01207946c8245673b9100b14cfc2fc18b2d1c173b9100b14ccd1fc0008eda271b01800221f205f4e750c820000000566344fefffe448ef0303000c2e8b2f4300044ebaf9222f4000084cef0303000c4aaf00084fef001c67064ef94003a6246100ff9c24004efa01300c8600000005662a4fefffec48ef030300042eaf005c4ebaf7982f40005c4cef030300044fef00142f006100ff682c00201f4efa01084eb94005213c4eb94007e9404ebaf93a4ef940052228564543544f5200004878ffff4878ffff4ebaf70e4ef94004e4d04feffff048d703034ebaecae4a80670c4cd703034fef00104efaf4644cd703034fef00102f0a4ab9460e70e04ef9400791ec4feffff048d703034ebaf3504a80670a4cd703034fef00104e754cd703034fef00104fefffe848d73c0c4ef94006d78c7c010c800000000566224feffff048d703034ebaec424a80670a4cd703034fef0010600c4cd703034fef0010bc8065064ef940077b624ef940077b704efaec084fefffa048d77cfc4ef9400023200000000000004ef9400334de0000000000004ef94007982200000000000000004ef94003a53600000000000000004ef94003cda000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffff0000000000000000000000000000000000000000ffffffffffffffff31000000000000000000000000000000000000000000000000003e00000000000000000000000000000000000000000000000000ff00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000002000000000000000000000000000000000000000000030000000000000000000000000000000000000000000400000000000000000000000000000000000000000005000000000000000000000000000000000000000000ff000000000000000000000000000000000000000000465744004f46460052455600564543544f522047454e455241544544004e4f204348414e474500ab204d414348494e453a564543544f5220bb004300432300440044230045004600462300470047230041004123004200303031205354415449430030303220464c455800434852004d494e004d414a00444f520050454e5400545950450044454e5300524f4f54005343414c00474154450041434e540053454544005350414e004f46535400524f5400525054004449520000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000fff05ad0ab506ad04a900000000000000000000000000000000000000000f100b047e7f7f0c183f40010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b0b000120300c0c00000000000000000000000000000000000000000000000100000000000000000400fff10000000000000000000000000300000100000000000000000000000003000003000000000000000000000000030000050000000a000000000000013e02000001000000190000001c00000004010000030000002800000018000000040100000300000038000000200000019201000003000000410000003000000030010000070000004b00000a9e00000048020000010000005c00000a4e00000050020000010000006d0000013e000005280200000100000084000000700000000a010000070000013d000006660000029e020000010000008b000009040000008a02000001000000960000098e000000c00200000100000000000000000000000003000006000000b300000ae6000001dc02000001000000c2000000000000003001000007000000ca00000cc20000000a02000001000000d400000ccc0000000a02000001000000dd00000cd60000000802000001000000e600000cde0000003e02000001000000f000000d1c0000003e02000001000000f900000d5a0000003e020000010000010200000d98000000d0020000010000010b00000e68000000d0020000010000011400000f38000000d0020000010000011d00001008000000d00200000100000126000010d8000000d0020000010000012f000011a8000000d00200000100000138000013560000010402000001000001460000182c000002e80200000100000155000002b30000091a01000003000003e2000001b200000101010000030000015d00001b14000001ba020000010000016c00001cce00000084020000010000017b00000bf200000004010000030000018500001ef60000003602000001000001920000001400000004010000030000019c000000100000000401000003000001a60000000c0000000401000003000001b100000bce0000000401000003000001b600000bd60000001801000003000001bc000020ec0000005a02000001000001c6000000000000000401000003000001d2000000040000000401000003000001de000021460000005a02000001000001ea000000080000000401000003000001f7000000680000000801000007000002030000006000000008010000070000020e00000bd200000004010000030000021d00000bee00000004010000030000022700000c0200000004010000030000022e00000bfe00000004010000030000023900000bfa00000004010000030000024400000bf60000000401000003000000000000000000000000030000070000025046c82456000000000000fff1000002590008ed80000000000000fff10000026200003294000000000000000100000271000031ca00000000000000010000027900002fb8000000000000000100000285000032a00000000000000001000002940000302c0000000000000001000002a2000030f20000000000000001000002b6000030be0000000000000001000002c3000031120000000000000001000002d0000032ac0000000000000001000002df000032ba0000000000000001000002ee00000c400000000000000003000002f600000c8e0000000000000003000002fe0000320000000000000000010000030a00003230000000000000000100000316000032720000000000000001000003230000326a0000000000000001000003330000327600000000000000010000033f0000327c00000000000000010000034c0000009a0000003011000007000003610000008e0000000c11000007000003740000007a000000141100000700000387000012780000000c120000010000039800001284000000d212000001000003a40000145a000000d812000001000003b2000015320000004c12000001000003c20000157e0000006612000001000003d5000015e4000001e812000001000003e9000017cc0000006012000001000003fd00001d520000013a120000010000041200001e8c0000001012000001000004230000328600000000100000010000043500001e9c0000005a120000010000044100001f2c000001c012000001000004480000320800000000100000010000045b000021a000000072120000010000046300002212000000c61200000100000473000022d800000298120000010000047d000000ca0000000b110000070000048d00002570000000f212000001000004a1000026620000010a12000001000004b50000276c0000002e12000001000004c90000279a0000006412000001000004de000027fe0000009812000001000004eb000028960000005412000001000004f9000028ea0000004412000001000005060000292e0000008a1200000100000514000029b8000000c2120000010000051c00000c0800000000100000030000052500002a7a00000082120000010000053300002afc0000048c120000010000053e00000c2400000000100000030000054c00002f8800000000100000010000055c00002fa000000000100000010000056900002fd80000000010000001000005780000301e00000000100000010000058600003026000000001000000100000595000030aa00000000100000010000059f000030b40000000010000001000005a90000307a0000000010000001000005b7000030960000000010000001000005c7000030cc0000000010000001000005d4000030dc0000000010000001000005e30000313e0000000010000001000005f20000317e000000001000000100000601000031b400000000100000010000060e000031d200000000100000010000061a000031e4000000001000000100000627000032160000000010000001000006340000324600000000100000010000064200003282000000001000000100766563746f722e630067656e657261746f725f70616765007372635f706167655f7265616479007372635f706167655f736f75726365007372635f7061676500666f726d6174732e320067656e657261746f725f776964676574007365636f6e646172795f77696467657400766563746f725f67656e65726174652e706172742e30007363616c657300616e795f766563746f7200647261775f67656e657261746f725f7769646765742e706172742e3000666f726d61745f636f6e74726f6c00726f6f74732e3100666f726d61745f313000666f726d61745f3800666f726d61745f3600666f726d61745f313100666f726d61745f3300666f726d61745f3200666f726d61745f3900666f726d61745f3700666f726d61745f3500666f726d61745f3400666f726d61745f3100666f726d61745f3000736176655f73657474696e67730067656e65726174655f747261636b0073746167696e67006368616e67655f636f6e74726f6c0067656e657261746f725f7669657700656469745f7669657700706f6f6c5f636f6e7465787400706f6f6c5f62616e6b00706f6f6c5f7061727400706f6f6c5f747261636b006d696e6500736176656400706f6f6c5f666c657800706f6f6c5f62726f77736500706f6f6c5f64697265637400706f6f6c5f73746174696300706f6f6c5f70656e64696e6700706f6f6c5f6c6162656c730068616e646c6572732e33006c6173745f7472616e73706f7274006c617965725f67656e006163746976650073686f776e5f62616e6b0073686f776e5f706172740073686f776e5f747261636b0042414e4b5f50545200504152545f4f46460073745f6e616d655f7265706c61790073745f6e616d650073745f726f775f747970650073745f6d61696e5f7265706c61790073745f7372635f636f6d6d6f6e0073745f63686f6f7365725f726f775f747970650073745f6e616d655f7069636b0073745f706f6f6c5f6b696e640073745f656469745f7265706c61790073745f647261775f7265706c61790073745f6b6579730073745f656e6373002e706f6f6c5f73746f636b002e6c6973745f73746f636b002e7469746c655f73746f636b002e7469746c655f756e7369676e6564002e7469746c655f706f6f6c002e7469746c655f706c61696e00766563746f725f636f6e74726f6c5f6e616d657300766563746f725f636f6e74726f6c5f6d617800766563746f725f7363616c655f6e616d657300766563746f725f6e6578745f7365656400766563746f725f7061636b00766563746f725f756e7061636b00766563746f725f67656e657261746500766563746f725f747261636b5f656d70747900766563746f725f77726974655f70687261736500766563746f725f7369676e65645f747261636b00766563746f725f76616c69646174655f706172740073745f76616c69646174655f706172740073745f73746f636b5f76616c69646174650073745f73656c65637465640073745f6b65790073745f73746f636b5f706f6f6c5f6f70656e0073745f747970650073745f63686f6f7365725f747970650073745f61737369676e00766563746f725f64656661756c74730073745f706f6f6c5f63686f6963655f647261770073745f706f6f6c5f63686f6963655f6f70656e0073745f706f6f6c5f63686f6963655f6c6566740073745f706f6f6c5f63686f6963655f72696768740073745f706f6f6c5f6c6566740073745f706f6f6c5f72696768740073745f647261775f706167650073745f73657475705f706167650073745f6b6e6f620073745f6c617965720073745f73657475705f6b6e6f620073745f75695f7469636b0073745f656469745f6c617965720073745f6d616368696e655f6e616d650073745f7372635f6e616d65730073745f6d61696e5f636f6d6d69740073745f7372635f636f6d6d69740073745f7372635f636f6d6d6974320073745f6e616d655f610073745f6e616d655f620073745f73657475705f6f70656e0073745f63686f6f7365725f6f70656e0073745f73657475705f726f770073745f63686f6f7365725f726f770073745f73657475705f65646974360073745f73657475705f64726177360073745f7469636b5f686f6f6b0073745f7372635f647261770073745f706f6f6c5f6f70656e0073745f6c6973745f647261770073745f706f6f6c5f7469746c650073745f76616c69646174650000000000001600000301000000180000003200000301000001b200000054000003010000003c0000009e0000020100000a9e000000e000000301000001ae000000e6000003010000001c000000ec00000301000001aa000000f20000030100000018000000f80000030100000020000001080000020100000a4e000018dc0000030100000bcd00001a1600000301effea16600001a4c0000030100000bcd00001ba600003a010000008e00001f14000003010000001000001f22000003010000000c00001fd00000030100000bce000020380000030100000bce0000205c000011010000000c0000209e0000030100000bce000020aa0000030100000bf2000020cc000011010000001d00002108000003010000001000002116000003010000000c0000212600000301000000000000212c000003010000000400002162000003010000001000002170000003010000000c000021800000030100000000000021860000030100000004000023b4000003010000000c0000242e000003010000001400002434000003010000000800002442000003010000000c0000244800000301000000100000268a0000030100000014000026980000030100000010000026ae000003010000000c000026b40000030100000004000026ba00000301000000080000270e00003a01000000680000277600003a01000000680000278c0000030100000004000027a600003a0100000068000027dc0000030100000000000027e200000301000000040000285a00000301000000040000286c00003a010000006800002b18000003010000000400002b3a0000030100000bd200002c280000030100000bfe00002c3c0000030100000c0800002c5c0000030100000c2400002d180000030100000bfa00002d220000030100000bf600002d600000030100000c0200002d660000030100000bfe00002d6c0000030100000bf600002d780000030100000bfa00002d960000020100001f2c00002daa0000020100001f2c00002de40000030100000bee00002e020000030100000c0200002e560000030100000bd200002eac0000030100000bf200002eb20000030100000bfe00002eb80000030100000bfa00002ebe0000030100000bf600002ed2000003010000000400002edc000003010000000800002ef80000030100000c0200002f1c0000030100000c0200002f220000030100000bf200002f280000030100000bfe00002f340000030100000bf600002f3a0000030100000bfa00002f7a0000030100000bfe00002fb400000201000031ca0000000a000003010000001c0000002000000301000000200000003a00003a010000009a0000004200000301000000ea0000004800003a01000000300000004e00000301000000360000040400003a0100000070000009d200003a010000008e00000b3000003a010000007a00000b64000011010000000800000c48000011010000000000000c5800003a010000000000000c7a000011010000000400000cfc000011010000000800000d16000011010000000000000d3c00003a010000007a00000d7a00003a0100000000000018a400000301000002b3000018fe0000030100000303000019ba00000301000001b2000019c800000301000001b2000019d200000301000002b300001a1c00000301000002b300001ae600000301000002b300001d2a0000030100000bf200001ef8000003010000001400001f540000030100000bce00001f740000030100000bd600001fa60000030100000bd6000020940000030100000bf2000020ee0000030100000014000021480000030100000014000022180000030100000004000022ac000003010000000c000022d00000030100000000000023600000030100000004000024d600003a01000000ca0000258200003a0100000068000026d8000003010000000c0000270200003a01000000600000274a00001101000000270000281400000301000000040000284a0000030100000000000028fe0000030100000bf20000299c0000030100000bf200002a3a0000030100000bf200002a5e0000030100000c0800002ade0000030100000bf200002b06000003010000000400002b1e000003010000000800002c1a0000030100000bee00002c200000030100000c0200002c420000030100000bce00002c620000030100000bce00002d360000030100000c0800002d400000030100000c0800002d4a0000030100000bce00002da200000301b9382e6000002dc600000301b9382d3400002df00000030100000c0800002ee60000030100000c2400002f4a0000030100000c2400002f560000030100000c2400000c0c0000030100000c4000000c100000030100000c8e00000c280000030100000c4000000c420000020100001f2c00000c460000020100001f2c00000c4a0000020100001f2c00000c5c0000020100001f2c00000c600000020100001f2c00000c640000020100001f2c00000c9000000201000029b800000ca600000201000029b800000cbc00000201000029b800000cd200000201000029b800000ce800000201000029b800000cfe00000201000029b800000000000011010000003a00000004000011010000003c00000008000011010000003f0000000c00001101000000410000001000001101000000440000001400001101000000460000001800001101000000480000001c000011010000004b00000020000011010000004d0000002400001101000000500000002800001101000000520000002c00001101000000550000003000000201000011a80000003400000201000010d8000000380000020100000d5a0000003c0000020100000d1c000000400000020100001008000000440000020100000f38000000480000020100000cd60000004c0000020100000e68000000500000020100000ccc000000540000020100000d98000000580000020100000cc20000005c0000020100000cde0000006000000201000021460000006400000201000020ec0000006800001101000000570000006c00001101000000620000007a000011010000006b0000007e000011010000006f0000008200001101000000730000008600001101000000770000008a000011010000007b0000009a00001101000000800000009e0000110100000085000000a2000011010000008a000000a6000011010000008f000000aa0000110100000094000000ae0000110100000099000000b2000011010000009e000000b600001101000000a3000000ba00001101000000a8000000be00001101000000ad000000c200001101000000b1000000c600001101000000b5002e73796d746162002e737472746162002e7368737472746162002e72656c612e74657874002e72656c612e64617461002e627373002e726f646174612e737472312e31002e72656c612e726f64617461000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000001000000060000000000000034000032c8000000000000000000000004000000000000001b000000040000004000000000000050340000069c0000000900000001000000040000000c0000002b000000010000000300000000000032fc00000d280000000000000000000000040000000000000026000000040000004000000000000056d0000000b40000000900000003000000040000000c000000310000000800000003000000000000402400000000000000000000000000000004000000000000003600000001000000320000000000004024000000b9000000000000000000000001000000010000004a000000010000000200000000000040de000000d50000000000000000000000020000000000000045000000040000004000000000000057840000021c0000000900000007000000040000000c00000001000000020000000000000000000041b4000008300000000a0000004f000000040000001000000009000000030000000000000000000049e40000064e0000000000000000000000010000000000000011000000030000000000000000000059a00000005200000000000000000000000100000000", - "sha256": "5b43ff757c7726bce8a182ad1b2e8a4d752ff4a2eb969c50f1b5335b6438d11a", + "bytes": 37900, + "code": "7f454c46010201000000000000000000000100040000000100000000000000000000922c000000260034000000000028000c000b2f021039100b14cfa742227946c82456d3fc000950481211c480a340e5a8828012811239100b145e808113c0100b145e207946c82456d1fc0009b332241fa350a379100f85984ef940027e002f027233202f0008206f000cb28067187420b480674a7231b280674e7432a749b4806706241f4e7593c9a341b288672c4a886702a54143f19a0074fdd28943f90000000022711c0022095381b48165d42f48000c2f400008241f4ed1428160d6a349a341b28866c860f2a549a341b28866be60e84feffc40720f48d77cfc206f03c871902f40004eb2806406740f2f42004e7010206f03c877a800012f430046b083640672102f410046700b206f03c875a800022f420042b0826406720b2f410042a940206f03c875a800032f420052b0826404a96f0052206f03c8707e73a800042f41003eb0816406727e2f41003e707f206f03c875a800052f420056b0826406727f2f410056700c206f03c875a800062f42003ab0826406720c2f41003a7218206f03c81028000875a800072c421f40005bb28264043c7c0018206f03c843eefff42c2f03cc102800092f49004a4a0067107240b2866500046c7180b08665000440206f03c4200f246f03c40680000003c0224a116f03cf010041ef02c0264850c1421113410003134100021341000126d9b08b66ea222f03d4283c9e3779b92e2f004e760b4282b981e7af760f43ef00c04bef01c02a09200142404840b380223c7feb352d4c0108002200e6a9b380223c846ca68b4c010800260042434843b183a740c08277c34a8067000088d6872a83264520022f480032222bfffc41ef03c049f01c00b6acfe00640a26815380598b4a8066e447f70c00260206849e3779b9206f00325283588d5885274200c0b6866764222f03d42403760fb981200142404840b380223c7feb352d4c0108002200e6a9b380223c846ca68b4c010800260042434843b183a740c08277c34a806600ff7c2a834a826600ff78428047f70c00260206849e3779b95283588d5885274200c0b686669c2a6f00527a1847f9000000007e64387c000c79f3da00266f004a70f42a6f004a99ce9aaf004297ef003adbef003a42af003642af00322f4800522f42002e2205740cd2804c4210060d04672cb08b6c00022e220cd2804a816d000216be816f0002182f400036740c52802e012205d2804c4210060d0466d45280720db28066be302f0048206f0052242f002ec0c35080e888671671c049f10c00201947f70c007001174002c0b9c966f0720c7c0c202f00425e804c41000573fc00fe92af0056286f004a22422a6f004a4287700c90af00422f450046c2ef03d2dbef003ad0854c4600057dfc00fe99ef003a2f4d004a242f003226434c461001eaa42a6f004e2f4a00522f6f03d40032a340c0841f41003d2f40004e2c0752874a10670000da223c85ebca6b7a0f4c071800262f0032283c7feb352db7810a81b5297a4d200142404840b3804c0408002200eaa9b380223c846ca68b4c010800220042414841b1814a82670001662001e0884c4200044df74c00282e005c0684fffffff4700fc081b08d642c7030c0814a8066084aaf004e6600016c202f00420801000667060680fffffff4b08c6d08b0af004a6e02280076182001e6a8a743c9fc00052a004c435000068400000040114400015480c0ef0040e48811400002a740c0864a80670000de0281003000004a81670000d2102f003d114000035888bc896600ff18246f0052260b4aaf03cc675871af005b783fb880650000be2a2f03cc206f03c8266f03c44c4500021828000a71c5222f03cc538543f30c009282242f03cc2c0152814c4260004a0467062c059c8020064c43000647ef03c041f36c0024e8ff00b5c966da4cd77cfca3404fef03c04e754481be816e00fdec52806000fdc2b08d6e18222f0032204041e8000c4df71c0052812f4100322d48005c220cd2804a816d1abe816f00fdd22f4000362e015280720db2806600fd886000fdc6448160e2102f03d3114000036000ff2e282f00366000feac2a2f03cc703f206f03c8266f03c44c450002222f03cc71c51828000a5385928243f30c00242f03cc6000ff40202f00466000fe94206f03c42c00246f03c4200f224a0680000003c0116f03cf010041ef02c026486000fbbe71807c40b0866400fb9660d04fefffe048d73c3c4ab900000000670e202f0024b0b900000000670000da41f900000000226f002493c81031880010c0b1fc0000000066f24bf900000000428243f90000000049f90000000045f900000000223c00000000265d91c810338800670c158088005288ab43b68866eed1ca4218b28866fa201c26004243484378182a00e8ad2800e08c13400003ab4012851344000213430001b082656a203c00000000781826002a0042434843e8ad2800e08c1340003358891345002c1344002e52825c8a5c81700c1343002db082668877fc5555202f0024283c5555555523c400000000a3790000000023c30000000023c000000000203c000000004cd73c3c4fef00204e75203c00000000781826002a0042434843e8ad2800e08c1340003358891345002c1344002e52825c8a5c81700c1343002db0826600ff1e60924fefffe0222f002848d77c1c226f00244a816708a341c2af002c528141f1180123c10000000028084ab900000000660ab1f9000000006700011c41f90000000093c81031880010c0b1fc0000000066f243f90000000091c845f900000000101152894a00670a14c05288ab40b08866eed1fc000000004218b1fc0000000066f6340141f900000000c4fc000d2242d3fc0000000010d9b1fc0000000066f630014df90000000043f900000000223c0000000047f900000000c0fc00062a40dbfc00000000719d244191c85d8a28730c0010348800670c158088005288ab40b08866eed1ca4218b28866fa7440201e72182600e2ab2200e0891340000358891343fffc1341fffe72671342002c24007004424248421341002e22085c811340002d70a41340002f1342fffdbdfc00000000669273fc5555243c5555555523c20000000042b90000000023c10000000023c400000000203c000000004cd77c1c4fef00204e754fefffd448d74c044242203946c82456227c20300c0c2f4800102040d1fc0008ed8042001239100b14cf3f420028243c0b0b00012f420020a7421f40002a302f00322f490024c28275fc18b2c0fc001e4c021800d1c173b0083e53814a81670001f64def001793c922090681000001e9d280a542b489641e1cb0180052897209b289671e22090681000001e9528ed280a542b48965e245f1083f52891cf0a80060c6102f0017720fa942c2807180e88830401f410020b4806500017e3008122f001874101f400023701fc0813040b4806500013c3408102f0019ea891f420021a342c282740fc4801f41002a12022042740bb488650001027180e8881f410022720c3040b280650000d6122f001a340871811f420026747eb480650000b0102f001b1f4100244a006d00008c122f001c1f40002574187181b480656871af001d1f410027723fb2806546122f001ee188758120427440b4886528100147ef00203f400028206f0010200820d320ef002430ef00284cd74c0410af002a4fef002c4e75724047ef002010013f40002860d4122f001e703fe188758120427440b48864b860de721871af001d1f410027723fb280649660da707f122f001c74181f4000257181b4806400ff7460d8727e102f001b1f4100244a006c00ff5260d8307c000c122f001a340871811f420026747eb4806400ff2a60d4720b7180e88830401f410022720cb2806400ff0060d0307c0010102f0019ea8934081f420021a342c282740fc4801f41002a12022042740bb4886400fec460c0307c0004122f0018741030081f400023701fc0813040b4806400fe8260b847ef002093c9244b22090681000001e94df1083fd280a542b489651a528914f0e80022090681000001e94df1083fd280a542b48964e614b018005289ad41b2896700fecc528a60c0518f2f0a2f02740f206f0018203946c824561239100b14cfb488655ea742c282242f001406800008ed80eb8a224275fc18b243e903e24c021800d081d3c0700cb088672a700db08867000088a941b288663273a9000243f90000000071b18800b28064022001241f245f508f4e7573917413c2fcaaabe4a960dc241f4280245f508f4e75227946c82456a7421039100b14cf222f0014d3fc0008ed80e989c08275fc18b2244145ea183e4c0208007416d3c071b1a800b4806720ad40b0886764241f43f90000000071b18800245f508f4e7573a900016000ff7e203946c8245606800008ed801439100b14cf2f40000c43f90000000071b188002240d3c1a741100275fc18b243e91832c0814c020800d0af000c1231080006810000004073816000ff34202f00145280241f245f508f4e754fefffe848d70c1c242f0020246f001c77b9100b14cc2f022f034ebafeb2508f2200a940b0826760780cb88267000150a540b082673aa743b68267000110700bb08267000124760ab6826754780eb882670001847010b082665841f900000000101814c066fa4cd70c1c4fef00184e75740c4c42100041f90000000020700c00101814c066da60de2f4a001c4cd70c1c2f4100202279400d3f104fef00184ed14a81662441f900000000101814c066b060b451824a82661020010680fffffff44a806d0000fe2200224aa34842807663b681644e7864760a20014c440000068000000030128020014c43000043f2880124004c4320042004068000000030158088005488740a4c42100042030680000000301280158388004cd70c1c4fef00184e757409b48164dc2040760a20014c43000043f2880124004c432004200406800000003015808800548860b8ab444c44100041f90000000020700c00101814c06600fefe6000ff004a81674441f900000000101814c06600fee86000feea2439400d3f08a5672f032f41001c4ebafd402f4a0024222f001c22424c0418004cef0c1c0008d2802f4100284fef00204ed141f900000000101814c06600fea46000fea6740ca548224a948112fc002d2202a3406000fefa4a816700feca203c1002c9809081e588224020514a886600fe72224aa34842806000fed6203900000000ad4141f9000000004c01080071b008002f4000086000fdea203900000000ad414c0108002040d1fc0000000071902f4000086000fdcc203900000000ad414c0108002040d1fc0000000071902f4000086000fdae203900000000ad414c0108002040d1fc0000000071902f4000086000fd90203900000000ad414c0108002040d1fc0000000071902f4000086000fd72203900000000ad414c0108002040d1fc0000000071902f4000086000fd544feffff048d70c0c207946c82456a743222f00142401eb8a226f0018d1fc0008ed8047ef001f2441d5fc8000666e43e903e21039100b14cfd3c275fc18b2c0834c020800d1c0119398001039100b14cfc0834c0208002040d1fc100a4ece11939800101275b9800000027180b480670a4cd70c0c4fef00104e752041d1fc80006676101075b9800000037180b48066e070444c010800206f0018d1fc46c76dc0119308004cd70c0c4fef00104e752239460d1684a9402f0a2f02b081654c4ab9460d173a66444ab9460d1694663c202f0018068000000c1171c0206f001441f00a001028000175902242744db489661a4aaf001067147180246f000c224020122440b3ea0008670a1010241f4280245f4e75a94284aa000c030267ee241f245f4e754feffff42f0e2f0271b9100b14cc2c6f00242f0041ef000d4ebaf846588fad40b08e675cab42200eb48e6402538071b7080920402f2f00302f2f003070fec0af003043f90000000073b1e8002f002001b1c164022008c0fc007f4c4100002f002f2f00302f2f00302f2f00304eb9400479b44fef001c241f2c5f4fef000c4e751039100b14cc227946c82456a7421239100b14cfd3fc0008ed807180c282c0fc001e204071fc18b241e801f14c001800d3c110318800727fc28020416000ff76518f2f02740b202f00182200206f00105c81226f00142f6f002000042f6f00240008b4816406241f508f4e752f6f000800242f6f000400202f41001c2f4000182f4900142f480010241f508f6000fef2598f2f02740b202f0014222f000c206f0010226f001c2f6f00200004b4806406241f588f4e752f6f000400202f49001c2f4000182f4000142f4800102f41000c241f588f6000feaa4fefffe448d7401c242f002441ef001171b9100b14cc2f004ebaf6ee588fad40b082676cab40b082653c71b728112202a3435581b6816500009255824a826700012aab434c43000141f900000000226f002020701c00101812c066fa4cd7401c4fef001c4e7571b72810780bb882660001124a80670000e6226f002041f900000000101812c067d4101812c066f460cc1039100b14cc227946c82456a7421239100b14cf77fc18b2d3fc0008ed80787f7180c282c0fc001e20404c03180041e801f1d3c110318800c0847663b68064587864760a2200a54e4c441001206f0020a74906810000003010c122004c43100124014c43200422040681000000301081206f0020d1ce740a4c42000142030681000000301081206f0020118398004cd7401c4fef001c4e75206f0020a34942817409b48064d02c49760a224122004c431001548924014c43200422040681000000301081206f0020d1ce60aa226f002041f9000000006000ff1a740c4c42000141f900000000226f002020701c006000fed6780ab88266144a806600ff3e226f002041f9000000006000fee851824a826600ff2822000681fffffff44a816d0e20017663b6806500ff186000ff6c206f0020740c94802002a54910fc002da3417409b4806400ff306000ff5c700a2f4000086000fe1c70082f4000086000fe12ad6f00086000fe0a71b9100b14cc4feffff441ef00012f004ebaf4fe588f4a2f000b671641f900000000226f0010101812c066fa4fef000c4e75226f001041f90000000060e84feffff42f0271b9100b14cc41ef0005ab422f004ebaf4bc71af000c588f41f9000000004c420001226f001420701c00101812c066fa241f4fef000c4e754feffff42f02740c71b9100b14cc41ef00052f004ebaf47e71af000b588f41f9000000004c420001226f001420701c00101812c066fa241f4fef000c4e754fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf43c71af0025588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf36c71af0023588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf29c71af0022588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf1cc71af0021588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf0fc71af001e588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf02c71af001d588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffd4700c48d7043c282f0034242f0030262f0038b084670001aea541b2846700026c7a0dba84670001c8a940b084670001d8207946c82456a7411039100b14cf2a02d1fc0008ed80e98dc08173fc18b222457a1645e9183e2f4a00184c010800d1c071b0a800ba80670001b641f900000000428143e91832700d2f4800202f49001cb081650000907a0bba81657ea940b08167782f01247c100b14cf2f022f41001c4ebaf16ea745207946c82456d1fc0008ed801f520033222f001c2240246f002843e9ffc02f49002c71b21800508f45ef0027226f001cd3c0102f002bc0857bfc18b24c050800a745d1c0119298001039100b14cfc0857bfc18b24c0508002040d1fc100a4ece119298005281700db0816400ff747a10ba816600ff78207946c82456a7411039100b14cf7bfc18b2d1fc0008ed80226f00180683ffffffc0246f002075b24800c081222f00184c050800a745d1c070161180180073fc18b21039100b14cfc0857a164c010800a7412040d1fc100a4ece118598007bfc18b2226f001cd3c2207946c82456d1fc0008ed801039100b14cfc0814c050800d1c0118398001039100b14cfc0814c0508002040d1fc100a4ece118398004cd7043c4fef002c4e75a5672f024ebaf0462f42003842af003c720c4c013800d6802f4300404cef043c00084fef00346000f4042f4300382f4200304cd7043ca36f00344fef002c6000f3ec2f4300382f4200304cd7043ca56f00344fef002c6000f3d441f900000000a7412f48002043e918320683ffffffc0207946c82456d1fc0008ed802f49001c7bfc18b21039100b14cf246f0020226f001c75b24800d3c2c0814c050800d1c0118398001039100b14cfc0814c0508002040d1fc100a4ece118398004cd7043c4fef002c4e75227946c82456a7411039100b14cf2a02d3fc0008ed80eb8dc08173fc18b220457a1341e803e24c0108007209d3c071b18800c0fcaaabeaa8b28064027009c0fc000c20404870380042a72f024ebaf3184fef000c6000fd504e56ff6c48d73cfc1039100b14d0223946c824560681c00000000c8107efffff6200045caf41b2ae0008650004527380740fb4816500044848807dfc08b0223946c824562041282e00081639100b14cfc0fc8ed84c06480041e848d02244d3c01d43ffc32d49ffb44bf188004aae000c6700042c2040227c00008e55d1c14a30980067000406162d0028428245faeea07783ad47be826602af422f022f2e00084e92508fab41b282640004461d8028cc5282780cb88266daad672f2e00084e92508f2d40ffb84aae0010670a52807c7fcc802d46ffb8203946c8245620431239100b14cf53887e3fbe8865000392a742c2822640d7fc0008ed80202e000879fc18b2eb884c0418000680000003e2d7c1d7c04a2b00016d00036671ab00017c7fbc806500035a2f2effb82f0078132f03486effcd4879000000004ebae3544878000f2f2e00084e924878000e2f2e00082d40ffa44e92161373934fef0024204d2d40ffac3401200e0680ffffffd891c02d48ffc8226effc8204077832d4eff9cc4fcaaabe8aac5fc000c9282738196812d43ffa81231880010c1b1eeff9c66f4222effb82c3c9e3779b952814c016800223c85ebca6b7e1e2d41ffa0222effa442829eaeffac286effb4d9fc1001b24e43f900000000d281266effb4d7fc1001aa502d46ffbc45ed08312d47ffc441ed005052812d41ffb0af46cc822602e68b4be8ffe0a3442d4dff98af4d9bc3dbc02d4dff947395eca1c2844a116700042679a90001ab470684ffffffc04c4748042a2effa8da844a856d000430787fb8856c027a7f2a6eff9879857f95be8467102a6eff981a851745fffe4a116700029c182900037fa8ffe14be8ffe12d4dff987b84ba87670002d82a6eff981a841744ffff4a11660002c879a8ffe24be8ffe22d4dff980c84000000ff6700028850c4a3452a6eff98edad1a8416844a11670002782a6eff94181588852a6eff941a8418114a816600027c4a04670002aa4aaeffa4670003aa282effa07c0f222effbc2e3c2c1b3c6db9812801ecac7c0cb9814c0718002e2effb02801ecacb9814c471004220492aeffa4ef89028100001f804aaeffac670ca744c8824a84670482aeffc42801e08c2a4a7fa57d84bc8767041a8418847d927981b8866706148119410001428192832801d8802a442c05122d000f46869bcd9bc32e0d2a44de80c2861b41000f2a47122d0027c2861b4100271211670002024bf9000000001b8128003a7c00179bc3dbc01215c2861a81223c85ebca6b52825889548a548cd3aeffa047eb002041e80020263c00000000b3c36600fe46247c1001aa1d95c0d5eeffb4222effc820405381101875b018007780b48367081180180015808800b1eeff9c66e64aae0010660001c4102effc3a744a342207946c824562202d1fc000950481610c084e1a986811083263c46c7d2e41039100b145e828013c1100b145e207946c82456d1fc0009b332a350a379100f85984eb940027e002c2e00082806edaa41f9000000009688468243f0380010111218c082e9a980811280b1fc0000000066e8206e0008486800084eb94009da204cee3cfcff6c588fa3404e5e4e754cee3cfcff6c42804e5e4e7571fc8e53428245faea9c1630080077836000fbf643ed0018204d52884a28ffff66d2b1c966f441ed002043ed002852884a28ffff66beb1c966f441ed003043ed0830759052880c82000000ff66a6b1c966f02040227c00008e55d1c14a309800679e6000fb981d8028cd52826000fb9a79a8ffe14be8ffe12d4dff980c84000000ff6700fd7a50c42a6eff981a841744ffff4a116700fd68602aa345edad2a6eff942c05468618152a6eff94c8861a8418114a816700fd884a046600fd8842016000fdda182900027ba8ffe24be8ffe22d4dff987f84ba876600fd3c2a6eff94a345edad181588856000fd464be8ffe37395528d0c81000000ff6600009cbbc866ee42014bf9000000001b8128003a7c00172c0546869bc3dbc01215c2866000fde22f2effb8ad672f2e00084ebaf762a744a3424fef000c102effc3207946c824562202d1fc000950481610c084e1a986811083263c46c7d2e41039100b145e828013c1100b145e207946c82456d1fc0009b332a350a379100f85984eb940027e002c2e00082806edaa41f900000000968846826000fe2a72014bf9000000001b8128004a116600ff663a7c00179bc3dbc0121582856000fd4a2a6eff9879950c84000000ff6700fea850c52a6eff981a851745fffe4a116600fbfc6000fe9242052a6eff987f957985be846600fbd86000fbe442816000fc8e1039100b14cca367a36771802f004ebaf96c4fef000c4a806716203c00000000487800202f004eb94005a2b8508f4e75203c00000000487800202f004eb94005a2b8508f4e754feffff02f02226f001cab421239100b14cc202f00182f6f0020000cb48965244a806708a340c0af00245280ad424c020800740f2040d1fc0000000071b09800b4806408241f4fef00104e7573812f4100102f002f012f40000c4ebae8082240d0af0014508f206f00044a806d5a223c0000000073b01800b0816c022200b28967c22f012f082f2f00182f4800102f4900144ebaf5bc42a7a3672f2f00244ebaf8964fef0018206f00044a8066962f6f000800202f48001c2f6f00100018241f4fef00106000f58a428160b24feffff048d7041c207946c82456a742262f00142203eb8979fc18b2d1fc0008ed801039100b14cf224143e903e2c0824c040800d1c075b09800204348680001ad672f034ebaf53e4fef000c7077b08265482202780c4c44100045faeb1c94802f0242a72f034e924fef000ca742487800402f022f034e9252824fef000cad40b08266ea42a742a72f034ebaf7de4cef041c000c4fef001c4e75746c2f0242a72f0345faead4a7424e924fef000c60be4aaf000866024e756000ff46202f0004727f5280c0814e752f032f02206f0010a942226f000c102800037380b481640270041210e988760f7581b6826402720f808112801028000a6702700112280001eb8876107581b682640272108081740c13400001102800067380b4816402700c12280002e988760b7581b6826402720b8081747e13400002102800047380b4816402707e13400003102800056a02707f134000047618102800077380b6816402701813400005743f102800087380b4816402703f134000067640102800097380b68164027040727fc2af00141340000713410008241f261f4e754fefffd848d75c1c2f2f00342f2f003449ef00272f0c4ebaff16362f003a9dce4fef000cc6fc001e141ca540b08e64000086267c100b14cfa7441013227946c82456d3fc0008ed80121345ee01e9528ed5c3c084c28479fc18b24c0408004c0418002040d1fc100a4ece7009d3c11382a8001182a800b08e66ae1013227946c82456a7421213d3fc0008ed80c082c2824c0408004c04180078022040d1fc100a4eced3c11384383e1184383e4cd75c1c4fef00284e75267c100b14cfa7441013227946c82456d3fc0008ed80121345ee003f528ed5c3c084c28479fc18b24c0408004c0418002040d1fc100a4ece7009d3c11382a8001182a800b08e6600ff2a6000ff782f02720f206f0010a942226f00081010c08112807190e8881200b4806402720413410003721f741010280001c0811200b4806402721013410001a341740f71a80001ea88c0811340000a10280002c082740b1200b4806402720b13410002740c71a80002e8881200b4806402720c13410006747e102800037380b4816402707e13400004102800046a02707f134000057418102800057380b4816402701813400007743f102800067380b4816402703f134000087440102800077380b4816402704013400009727f10280008206f000c241fc28020814e75598f2f0a2f02202f0010222f0014206f00184a80672c4a81672845e8ffff743fb48a651e747fb4af001c65162f4800182f4100142f400010241f245f588f6000d944241f4280245f588f4e75222f00044a81675a71fc0919b0af000864502001204106800000004052884a28ffff663eb08866f42041200141e8004806800000005052884a28ffff6624b08866f4204106810000085941e80059719052880c80000000ff6608b28866f0a3404e7542804e754fefffd848d73cfc262f002c4a8367000168202f00300c80000009196300015a4aaf003467000152206f0034723f18280100200453807180b2806500013c4aaf003866122f2f00302f034ebaff4e508f4a806700011a7984246f00344281204a1010a3457580ba826500010eb284650001144a0066000102528158887040b08166de264322432843428547eb005943e9007949ec089aaf41c2852805e68caf48a34291c4d1c37190e2a0c0824a1267000132142a000116824a1267000120142a00021742000d4a126700010c142a00031742000fa342e3aa12104a12670000ee828210814a8066044a12673e420042143a7c000f42819284d2839bc4307c004f194000012002468091c41e353800ce801b8738002a411e2d001fce801b47001f12303800c08111803800204b4281101846804a0056c0710044808280b1c966ee307c001791c4d1c310104a1266784a816774848010825285588a47eb0020548c43e900207040b0856600ff2ca3404cd73cfc4fef00284e754cd73cfc42804fef00284e754a006700fef0102800017a787580598071805982ba8065dcab454c4528004a8066d275a800027a7eba8265be4a2800036db8528158887040b0816600fea06000febe4682c48060882e024687c2876000ff0e50c26000fef650c26000fee250c26000fed02f02202f000caf41206f0008b280651c73b00822a342b4816512721e74534c01080041f0083c7190b4806706241f42804e7571a800017232b28066f071a8000253804a80671410280002a541241fb3804a0057c0710044804e75241fa3404e754fefffc4203946c824560680c000000048d7440c0c8007efffff630c42804cd7440c4fef003c4e75207946c82456a7411039100b14cf75fc18b22f2f0040d1fc0008ed80c0814c020800487008004ebaff50508f4a8067c61039100b14d0720f77802f430020b28365b24880243946c8245641f90000000032002f4200241639100b14cf302f0042c2fc8ed81f43002fc0fc091ad081d4802c429dc82f40001c1030e80010c0b1fc0000000066f24aaf00446700024c71fc8e55206f0024d1c14a300800670002621039000000007180743f22005381b4816500ff422f2f004041ef00352f4000144ebadda0588f223946c8245606810008ed801639100b14cf342f0042202f00103243c4fc001e2042a74241e801f12609c68275fc18b24c023800d28312301800767fc6812f4300284aaf0048670c2203747f5281c4812f420028223946c8245606810008ed801639100b14cf342f00423243c4fc00182042a74241e801232609c68275fc18b24c023800d283767f73b01800b6816500fe9e2f2f00282f012f00486f003d4879000000004ebad4f62f2f00584879000000004878091a4879000000004ebafc0c4fef00244a806700fe68226f0024b3f946c824566600fe5873b9100b14d0b2af00206600fe4a73af002f75b9100b14cfb4816600fe3a226f001c93fc0000000041f9000000002f49002045f0e800121875922f4a00147781b682670e1481226f002045e8ffff13928800b1fc0000000066d82f2f0028486f00352f2f00482f40001c4ebaf8f8a742a34e260e122f003b227946c82456d3fc00095048c2822f410038242f003812114fef000ce5ab828312811239100b145e8283260e13c1100b145e207946c82456d1fc0009b332a350a379100f85984eb940027e002c7c46c7d48c222f0040202f001043f900000000e3ab2f43001846831f43001741e9ffe0528873a8ffff0c81000000ff6678b1c966ee91c81216162f0017240843e90020c28382821cc1bdfc46c7d4cc66ce2f2f00402f4000144eb94009da20588fa37946c7c72c4cd7440c202f00104fef003c4e754878091a4879000000002f4100184ebafa42508f222f00104a806600fd9a4cd7440c4fef003c4e7571fc8e53103008006000fd9c142f001b304260864e56ffe041eeffea2f0a2f0273b9100b14cc2f012d41ffe04ebadb34322effe2588f207946c82456d1fc0008ed803d6efff2fffd1d6efff4ffff2d6effeefff92d6effeafff5c2fc001e1039100b14cf2241a74143e901f1c08173fc18b24c010800d1c012309800707fc280ab407581b0ae0008657a43eeffead3ee0008206e000c7391d1c14a886d000082246e0008203c0000000071b20800b1c06c022008b0816740128020022f00486effea2f2effe041faf73a2d48ffe44e9042a7a3672f2effe04ebafbfe4fef0018206effe44a806744a1674eb94004d948a37946c7c72c588f242effd8246effdc4e5e4e75ad40b0ae00086742222e0008206e000c43f618e97391d1c14a886c804a8167d442001280200260902f02486efff52f2effe04e904fef000ca1674eb94004d948a37946c7c72c588f60aa202e000cd0824a806d3c727fb2806c02707fb08267942f00486effea2f2effe041faf6922d48ffe44e9042a7a3672f2effe04ebafb564fef0018206effe44a806600ff5860984a016700ff6042802f00486effea2f2effe041faf65a2d48ffe44e9042a7a3672f2effe04ebafb1e4fef0018206effe44a806600ff206000ff60203946c824560680c00000002f020c8007efffff62084a398000001567064280241f4e751239100b14cc207946c82456a7421039100b14cfd1fc0008ed807381c0822f0173fc18b24c010800487008004ebafa58508f4a8067c42039000000004a8066ba4a3946c7d8d866b44ab9460d173a66ac4ab9460d169457c0241f710044804e754fefff78428148d75cfc242f008c284245ef00289dce28024283264a06840000003c49ec002271b41800a346bc80650c41f648007e537190be80674252814dee001e47eb000cbdfc000000f066d82f02206f009442854e90588f91c80b0366000086528541e8001e45ea000cb1fc000000f066e84cd75cfc4fef00884e7571a800017c32bc8066b471a8000253804a80670a71a8000255804a8066a0a340e3a891c8868043f6883cab47be88642c2c08ad474c47600043f60800700c43e901ecd3c21791880042115288b0886700ff6e43f6883cab47be8865d4d3c2179188004211528860be428147f02800ab44b881651449f21800ab442242d3c11194983c5281b88164ec2c01ad474c47600449f21800528143f34800780c135401ecb88166ca528541e8001e45ea000cb1fc000000f06600ff286000ff3c487a256e2f2f00084ebafebc508f4e75203946c824560680c00000002f020c8007efffff62084a39800000156706241f42804e751239100b14cc207946c82456a7421039100b14cfd1fc0008ed807381c0822f0173fc18b24c010800487008004ebaf88a508f241f4e75203900000000b0b946c82456670442804e751039100b14cfa741c081b0b90000000066ea71b9100b14ccb0b90000000066dc6000ff724fefffec70312f0a2f02226f0020a342206f0024b08956c173014481b4886700008ea340e3a82439000000002f420014c4804a82665e4a886632a340244174fd45f21a00d08a45f90000000020320c0022005381b48165322f4900202f480024241f2240245f4fef00144ed12441a54045f21a0074fdd08a45f90000000020320c0022005381b48164ce241f245f4fef00144e754a8866f24680c0af0014241f245f23c0000000004fef00144e752f4100102f4800082f49000c4ebafeb4222f0010206f0008226f000c4a806700008a103946100b1d08000005667c703eb089677c7431b48966702f4100102f4800082f49000c4ebafcac222f0010206f0008226f000c4a806750a34081b9000000001039100b14cca367a36771802f004ebaf78c4fef000c4a80677048780020203c000000002f004eb94005a2b8a1674eb94004d948a37946c7c72c4fef000c241f245f4fef00144e7542806000fee04a3946c7d8d866f24ab90000000057c0a54183b900000000a1677100448023c0000000004eb94004d948588f241fa37946c7c72c245f4fef00144e7548780020203c000000002f004eb94005a2b8a1674eb94004d948a37946c7c72c4fef000c608e203900000000b0b946c8245667024e751039100b14cfa741c081b0b90000000066ec71b9100b14ccb0b90000000066de4ebafd7e4a8067d6a37900000000a379000000004eba224ca1674eb94004d948a37946c7c72c588f4e75203900000000b0b946c8245667024e751039100b14cfa741c081b0b90000000066ec71b9100b14ccb0b90000000066de4ebafd244a8067d642b900000000a379000000004eba21f2a1674eb94004d948a37946c7c72c588f4e75203946c824560680c00000002f020c8007efffff6232203946c82456a7421239100b14cf06800008ed80206f000c41e8ffdec28275fc18b24c021800af42d08122089280b4816408202f0008241f4e75a342b4af000865f02f012f004ebaf57a508f4a8067e2ab6f0008202f0008241f4e752f032f024ab90000000067084ebafcd64a806672203946c824560680c00000000c8007efffff6236223946c82456a7431039100b14cf06810008ed803040202f00100680ffffffde2408c48377fc18b24c032800d2829081af42b480640a202f000c241f261f4e75a343b6af000c65ee2f002f014ebaf4f0508f4a8067e0241fab40261f4e75203946c82456a7421239100b14cf77fc18b220790000000006800008ed8041e80022c2824c031800d081d088b0af00106600ff5c241f203900000000261f4e754fefffc4203946c824560680c000000048d74c0c0c8007efffff62000166af40b0af00446500015c223946c82456206f004091c12c48ddfcfff712802f41002473fc18b2200e4c41000220424a8266000132bdfc000062c762000128222f0044a342246f004043f218227391b48164000178a36f0020222f0044701e4c0018004aaf004866624ab900000000670001062f4100142f4800184ebafb84222f0014206f00184a80670000ec203946c8245606800008ed801439100b14cf3242a7422609c68275fc18b24c023800d083b0af0040660000c0262f0044b6b900000000660000b2a56f00482f2f00442f2f00442f41001c2f4800204ebaf3a6508f222f0014206f00184a80670000e8226f0040203c1001614e90af002441f1183c43f118422209227c100162fe93ef00241190080045e801b0139288005288b28866eea340b0af0048662c73fc18b2200e207c46c8245623d000000000a379000000004c410000222f004423c10000000023c0000000004cd74c0c202f00204fef003c4e754cd74c0ca36f0020202f00204fef003c4e752f2f00442f2f00442f41001c4ebaf2fe508f222f00144a806700ff5e4203206f0040203c1001614e226f004090af00241183183e1183183d1183183c41f1183c43f118422209227c100162fe93ef00246000ff4877912f4300206000fe86226f0044743248690001487900000000200f06800000003b2f002f4000282f410020246f004c2f48002445f2183c2f4a00344ebaed3214bc0053226f004c222f0020244145ea003f1382183d74021382183e224143e901e9202f00284fef000c2f490028206f00182f4a002c226f0028a542d3c8b488641826405288246f0040740915939800b4886700fe90528060dc246f00402640226f002cd3c85288159b9800200b60c6518f2039460e5e302f0b2f0a4a80671047f900000000b7f9460e5e2c670a4280245f265f508f4e75204041e800242f48000c2f082f40000c4eb94003567c226f000c588f4280246900282f1ba16745eaffe92f0aab672f2f001c2f3c400ba8762f4000204eb940012bd84fef0018202f0008b0b9460e5e4067165f8aa341b2806640245fa37946c7c72c265f508f4e75226f000c2051a167486a00054868fffb486affffa7672f092f4000204eb9400122544fef00185f8aa341202f0008b28067c02f1ba1672f0aab67a3402f2f001c2f3c400ba8762f4000204eb940012bd84fef0018202f0008b0b9460e5e40668a609e4ebaf8384a80670001004ab9460e5e30660000f64ab9460e70e0660000ec207c46c82456a74123d0000000001039100b14cfc28023c10000000071b9100b14cca567ad672f3c460e5e3823c00000000042b90000000042b9000000004eb94007ec604fef000c207946c82456a7411039100b14cf227900000000d1fc0008ed80c08173fc18b24c010800d1c071b098222f002f3c460e5e384eb94007edb041f90000000023c8460e5e28203c0000000023c0460e5e2c42b9460e5e342f3c4006d754a36742a7a167487800404878006e4eb94005829c4fef002023c0460e5e304a80672442a74879000000002f004eb9400570b82f3c400ce0c44eb9400314944fef00106000fe084e754ab9460e5e30670e203c00000000b0b9460e5e2c67024e754eb94006d75442b9000000004eba1bec4ef94007893c598f4ab9460e5e30670e203c00000000b0b9460e5e2c6704588f4e754ebaf73e4a8067f42239460e5e40a340b08165e82e814eb94006d7544ebaf7224a8067d823d700000000a379000000004eba1b96a1674eb94004d948a37946c7c72c588f588f4e754feffff4222f0010206f00144ab9460e70e0677e4ab90000000066122f4800142f4100104fef000c4ef94007893c2f4100042e884ebaf6c2222f000420574a8067da4ab9460e70e067d22039000000002f4000084eb9400789e442b9000000004ebafe024ab9460e5e306726203c00000000b0b9460e5e2c66182f2f00082f3c460e5e384eb94007edb04fef00146000fce24fef000c4e75518f222f000c206f00104ab9460e70e067124ab9460e739a660aab40b0b9460e738e67102f4800102f41000c508f4ef94007909c2f4100042e884ebaf5ca222f000420574a8067dc4eb9400789e4508f6000fd7a598f4eb940031f282e804ebaf5a64a80672c4ab90000000066244a3946c7d8d8661c4ab9460d173a66144ab9460d1694660c2f174ebacaa02f400004588f2017588f4e75598f2f02203946c824560680c0000000222f000c0c8007efffff62084a39800000156708241f2001588f4e751039100b14cc207946c82456d1fc0008ed8075801039100b14cf2242a7422f09c08275fc18b24c020800487008002f41000c4ebaedea508f222f00044a8067b84ab90000000066b02f41000c241f588f6000ca144feffff4ab402f02222f0014206f0018b0816408241f4fef000c4e75203946c824560680c00000000c8007efffff62e44a398000001566dc1439100b14cc227946c82456d3fc0008ed801039100b14cf75822f42000ca742c08275fc18b22f2f000c4c020800487108002f4100102f48000c4ebaed56508f222f00084a8067944ab900000000668c4a3946c7d8d866844ab9460d173a6600ff7c4ab9460d16946600ff724ab9000000006600ff682f6f000400182f410014241f4fef000c6000f0a62f02ab40b0af00086406241f42804e75203946c824560680c00000000c8007efffff62e64a398000001566de1239100b14cc207946c82456a7421039100b14cfd1fc0008ed807381c0822f0173fc18b24c010800487008004ebaecae508f4a8067a84ab90000000066a02f2f000c206f000c486800064ebaf02c508f241fa3404e754e56fff0223c000000002f02243c0000000020394004e1ec2d41fff0b4b900000000670c202e0008242effec4e5e4e754ab98000001267ec207c46c8245622100681c00000000c8107efffff62d6227c100b14ccaf427391b48165c812112050d1fc0008ed800c800000000057c075811239100b14cf71002242a7422f094480c28275fc18b24c021800487018002f00486efff04ebad2064fef00104a8067842240206900144a886700ff7a2239000000002039460d1684b1fc00000000661e2f012f002f2e00084e904fef000c242effec2d400008202e00084e5e4e752f012f002f2e00084e904fef000c242effec2d400008202e00084e5e4e7522794004e1ec2039800000122f024a806770203946c824560680c00000000c8007efffff625a207c100b14ccaf417190b280654c1010207946c82456a7421239100b14cfd1fc0008ed807180c28275fc18b2068000000c114c021800744dd1c141f00a00102800017390b4816612b3fc00000000660a71807256b280670810104280241f4e75a342b5b900000000a1674eb94004d948588f241fa37946c7c72ca3404e75af40b0af0004650e203c00000000b0b94004e1ec67024e754ab9400bc6c066f642af00044ef9400322284feffff42f0a4eba17c620394004e1ec2079400bc6c00c800000000066044a886608245f4fef000c4e754ab98000001267f0203946c824560680c00000000c8007efffff62dc71b9100b14ccaf41b28065d02268002841e800242f49000c42a72f48000c4869fff648780032a567a7672f084eb940012254487900000000a167246f002c45eaffec2f0aab672f2f00302f3c400ba8764eb940012bd84fef00302039000000004a806734246f000c45eaffe4487900000000a1672f0aab672f2f00182f3c400ba8764eb940012bd84fef0018203900000000a341b280662aa167486a000648780032486affffa767518a2f2f001c2f40001c4eb9400122544fef00184aaf000467aa245fa37946c7c72c4fef000c4e754e56ffb0703348d7040c226e000cb0ae0008670001a67220b2ae0008670002247431b4ae0008670002227632b6ae00086700022022394004e1eca34041f9000000002d48fff0b089662a0c810000000057c020790000000074102d42ffc671004480b1fc000000006720b1fc000000006700008a2f092f2e00084ebabfa0508f4cee040cffb04e5e4e750c810000000066d84ab98000001267d0223946c824560681c00000000c8107efffff62bc73b9100b14ccaf43b68165b07231b2ae00086700025c7233b2ae0008670002147420b4ae00086694262effc687b900000000b0b9000000006306a379000000004ebafdfa4cee040cffb04e5e4e754ab9800000126700ff70207c46c8245622100681c00000000c8107efffff6200ff58247c100b14ccaf427392b4816500ff481d52ffca2050a742d1fc0008ed801239100b14cf77aeffca2f0377fc18b2c2824c031800487018002f00486efff02d49ffc24ebace5a4fef0010226effc24a806700ff047231b2ae0008670000e27032b0ae00086600fef04ab9000000006700fee6222effc6a16742b90000000083b9000000004eb94004d9484cee040cffb0a37946c7c72c588f4e5e4e75a36effc6a340b0896730203900000000222effc6c2804a81665020394004e1ec223c000000002f092f2e00082d41fff04ebabe30508f6000fe8e22394004e1ec243c000000002079000000002d42fff00c810000000057c071004480b1fc000000006600fe4c6000fe684a896600fe58222effc64681c2804cee040cffb023c1000000004e5e4e75a56effc66000ff76a96effc66000ff6e76082d43ffc66000ff642440206a001c4a886700fe0e222effc683b9000000002039460d1684b1fc00000000660000861039100b14cca367a36771802f004ebad96e4fef000c4a80672e48780020203c000000002f004eb94005a2b8508fa1674eb94004d948a37946c7c72c588f4cee040cffb04e5e4e7548780020203c000000002f004eb94005a2b8508f60d0222effc620390000000083b9000000004a806700fdfa538023c0000000004ebafbea6000fdee2f004e90588fa1674eb94004d948a37946c7c72c588f60a2a367487800312d40ffc24ebabcf2508f24390000000073b9100b14cc202effc22d42ffc64a8267000362b08265000364206efff02d48ffbe4a886700045c242800082d42ffc6224143e90c112409d482207946c82456d1fc0008ed801639100b14cf2d42ffcea742c68275fc18b24c023800d1c3d1eeffce1628000175901d43ffca764db682660002b84a80670002b271aeffca226efff0b0a90008670003ba10104aaeffbe670002a02041d1fc8000666e101075b9800000027180b480670002de34012601203c00000000eb8b41f9000000002d48ffe042aeffdcc4fc004422430483000000002d43ffec2042243cb93897029489d1fc46c76dec2d42ffe8227946c82456247c100b14cf1d52ffcda7432440d3fc0008ed801d5affdb142effcd200a246effecd5c02d4affd6c48377fc18b24c032800d3c2142effdb1382a800247c100b14cf16123243a7432409c48377fc18b24c032800262effd62242d3fc100a4ece142effdb13823800a743227946c82456d3fc0008ed801d52ffd9246effe02d49ffe452aeffe01d5affca142effd9246effe8d5c82d4affd2c48377fc18b24c0328002242142effcad3eeffe41382a8001639100b14cf3243a7432409c48377fc18b24c032800262effd22242d3fc100a4ece142effca138238004aaeffdc6706116effdbffe010eeffca0c80000000006600ff082001e988224006800000184243e918322d40ffca207946c82456a7431039100b14cf75fc18b2d1fc0008ed80c08342034c020800a742d1c01183980077fc18b21039100b14cfc0824c0308002040d1fc100a4ece4200118098005289b3eeffca66b24aaeffbe6700019c207946c82456a7421039100b14cf327c004d77fc18b2d1fc0008ed80d1eeffcec08234094c030800a7431182080075fc18b2206effce1039100b14cfc08336094c020800d1c0d1fc100a4ece10834aaeffbe670000c6207946c82456a7421039100b14cf2601d1fc000905a3d68343eeffc9247c100a66f1c08275fc18b2d1c3d5c377fc18b24c020800a742119108001039100b14cfc0824c030800159108002d41ffc24ebab9a8222effc24aaeffbe6700faba226effbe206900104a886700faacb1fc000000006600015a2f014ebadd44588f4ebaf8926000fa964aaeffbe6600fd64207946c82456a7421039100b14cf77fc18b2d1fc0008ed80d1eeffcec082744d4c03080071b00800b4806700fd364ebaf8546000fa5871fc00ff2d40ffc66000ff3242aeffbe6000fcb642aeffbe42aeffc66000fcaa2041d1fc80006676101016398000000330432601eb8b2408b580340141f9000000002d48ffe022430483000000002d43ffec4a0057c0c4fc00442042243cb938970294897100d1fc46c76dec2d42ffe844802d40ffdc203c000000006000fd04207946c82456a7421039100b14cf327cffff77fc18b2d1fc0008ed80d1eeffcec08234094c030800a7431182080075fc18b2206effce1039100b14cfc08336094c020800d1c0d1fc100a4ece10834aaeffbe6600fe686000ff28b3eeffbe6700f972206900104a886700fc42b1fc000000006700fc3842a72f012d41ffc24e90508f222effc26000fc24a3672f014e90508f4ebaf73a6000f93e42aeffc66000fba84e56fff0223c000000002f0220394004e1ecab422d41fff0b4ae0008650e43f900000000b3f9000000006708242effec4e5e4e754ab98000001267f0207c46c8245622100681c00000000c8107efffff62da227c100b14ccaf427391b48165cc12112050d1fc0008ed800c800000000057c075811239100b14cf71002242a7422f094480c28275fc18b24c021800487018002f00486efff04ebac7644fef00104a8067882240206900184a886700ff7e2239000000002039460d1684b1fc00000000662a2f012f2e000c2f2e00082f004e904fef0010a1674eb94004d948a37946c7c72c588f242effec4e5e4e752f012f2e000c2f2e00082f004e904fef0010a1674eb94004d948a37946c7c72c588f60d44e56ffd4227c46c8245648d71c0c24794004e1ec203c00000000761c26512d40fff0b5fc0000000057c01239800000037100448030412239000000002408e7aab580240bb580b5fc00000000660002940a8000000000b2806700008223c00000000020110680c00000000c8007efffff626a2851a74375fc18b21039100b14cfd9fc0008ed80347c03f0267c46c76dce223c80006676c0834c020800d9c041ec18232d48ffe8206effe82248764d101075a1b68266107180206efff0b0a800086700019c101154aeffe8528147eb004445ea00200c818000667e66ca4ab98000001267000208207c46c8245620100680c00000000c8007efffff620001f073b9100b14cc2010af421639100b14cf3043b481650001f42608a742c68275fc18b206800008ed804c023800204345f008004ab9400bc6c0660002ca2f012f0aa367486efff02d41ffec42b9000000004ebac59c4fef0010222effecb2b9000000006700035c42b90000000023c1000000004a80670001b045f900000000267900000000b7ca660002224a93670000c84ab900000000660000beb7fc0000000057c02f0b2200448128414eb94003146c42b9000000002079460d165c588fb7fc00000000670001c24a88670001944a906600018e41f9000000002d48ffe845f900000000206effe852aeffe8719891c8c0fc00182240d3fc46c7d8de203188000c80000000006704258088005888700cb08866e845ea000cb5fc0000000066c442932f0b4eb940031494b7fc0000000057c023cb00000000588f4480340c71807382b2806710a1674eb94004d948a37946c7c72c588f4cee1c0cffd44e5e4e754a34a8006700fe62207946c82456a7421039100b14cf77fc18b2d1fc0008ed80c0824c030800d1c042001180a8001039100b14cfc08242024c0308002040d1fc100a4ece1182a80020411028fff875b9800000027180b480670000ac2d41ffec4ebab440222effec528154aeffe847eb004445ea00200c818000667e6600fdca6000fdfcb280670623c0000000004ab900000000670000f873b9100b14cc203946c824561039100b14cf42b900000000b2b9000000006700012e42b90000000023c1000000002039000000004a806700ff264ab9000000006600ff1c0c800000000057c12f00240144824eb94003146c42b9000000002079460d165c2842588f42006000fed8101075b9800000037180b4806600ff4842132d41ffec4ebab384222effec6000ff424ab9400bc6a466d041f90000000047f9000000002d48ffe845f9000000006000fe3c4ab9000000006600fea44a8b660001402079460d165cb5fc00000000670000e64a886700fe884a906600fe8299cc264a41f9000000002d48ffe845f9000000006000fdf84cee1c0cffd442b90000000042b9000000004e5e4e752679000000004a8b67602f012f0aa367486efff02d41ffec4ebac2d04fef0010222effecb2b900000000672042b90000000023c10000000045f9000000006000fd3a42b9000000006000fed84a80670aa543b6b9460d168467de42b90000000045f9000000006000fd122041744d41e80c1143f28a00a37900000000102900017791b483660e7180206efff0b0a80008674a10112d41ffec23cb000000004ebaf178222effec6000ff624ab9400bc6a46600fda099cc264a6000ff1c4a806782a540b0b9460d16846700fcaa42b90000000045f9000000006000fca0a34b2d41ffec23cb000000004ebaf12e222effec6000ff18b7fc0000000057c02f0b260044834eb94003146c42b9000000002079460d165c2843588fb5fc000000006700fe64264a4a8a6600fc9c42006000fd0a4fefffc048d74c7c4ebafac44ab90000000067104ab9460e70e06600047042b9000000004ab900000000660002c6203946c824560680c00000000c8007efffff63000108a3412039800065b8b2806700040e23c000000000263946c82456428273b9100b14cf2f41002879b9100b14cc247900000000203900000000b6b900000000670002944a8a6700035e4a80660003bc2a2f002842b90000000023c30000000023c50000000023c4000000002079460d165c4a82670000884a88670000824a90667c223c00000000207c46c7dd7643f9000000002010b0816704238088005888b1fc46c7dd8266ec207c46c7deae43f9000000002010b0816704238088005888b1fc46c7deba66ec4ebadfee23c0000000004a806700039241f90000000042902f084eb940031494a167a379000000004eb94004d948a37946c7c72c508f4cd74c7c4fef00404e75247946c82456a7451039100b14cf7dfc18b2d5fc0008ed809dce428247fada3cc0854c060800d5c02f0e2f0a4e93508f4a806708a340220ee3a88480528e7a08ba8e66e42039800065b8a345ba80670001ea23c000000000263946c824561a39100b14cf1f45002f7d8579b9100b14cc2f4600283c7c01f1428047eafe4d0102670a73b3e800a345ba81675452804dee001e7208b28066e6af45ba84650001f64a324822660001ee203c400d301c23c0400d5f4c4a826700fe6e4ab98000001257c224790000000020390000000075024482b6b9000000006600fe62600000f02f0041ef00392f4000242f4100284ebab854207946c82456d1fc0008ed801a39100b14cf3245a7452c09cc857bfc18b24c056800d1c61c30e80030467c7f2a08ca86a7462e85486f0039202f00282f002f40002c4ebad4ae1a2f003b227946c82456d3fc00095048ca862f45003c1a11222f00302c2f003c4fef000ceda930452a088a8112851c39100b145e30462a08828513c1100b145e207946c82456d1fc0009b332a350a379100f85984eb940027e004dee001e202f002072085280b2806600fedc6000fef24ebae02e4a80670001a64ab9460e5e306600fd2a4ab9460e70e06600fd204ebae77c6000fd182c2f0028bcb9000000006600fd62b8b9000000006600fd584a8a670001a04a806700fd7447f9000000004a82670a4ab900000000670001a24ab9000000006600fde82f0b4eb94003146c42b90000000023c30000000023c40000000043ef002c588f23d1000000006000fd2cbab9000000006700fe104a826700017297cb4dfad86c42a77c0842a72f0b4e96528b4fef000cbc8b66eca37900000000263946c824561039100b14cf3c7c01f147eafe4d1f40002f7380428079b9100b14cc2f4100286000fdec203c400d31ae6000fe124a806740203c000000004ab9000000006600fd462f004eb94003146c42b90000000042b90000000023c30000000041ef002c588f23c40000000023d0000000006000fc84222f002842b90000000023c30000000023c10000000023c4000000006000fc64203c000000004ab9000000006600fce6609ea346bcb9000000006700fbf0a37900000000263946c82456428273b9100b14cf2f41002879b9100b14cc6000fbe64ebade944a806600fb9042b9000000006000fb8642b9000000006000fb8641f90000000042902f084eb940031494a167a379000000004eb94004d948a37946c7c72c508f6000fc6e4a806700fbd647f9000000004a826700fe6c4ab9000000006600fe624ebadc08b5c06600fe584cd74c7c4fef00404e75a37900000000263946c824561a39100b14cf1f45002f7d8579b9100b14cc2f4600286000fc96202f00040c800000000567044efa038c41fa023020084e75400b3eac400b3e98400b7c67400b5413400b7a63000000004fefffec48ef030200082e802f4800044ebae0604cef030200084fef00144e754fefffe048ef0307000c2409d48006820008ed802e822f41000474000c8400000005660274012f4200084ebae15e0c8400000005660228004cef0307000c4fef00204efa031248794005a61c600648794005a8562239460d5c304fefffe048ef030d000c2609d68006830008ed802e832f42000476000c8100000005660276012f43000826014ebae1020c83000000056702200322004cef030d000c4fef00204e7516102f0071036100ff362600201f79034879400bb7044ef9400585e67110610000582f004879460e73864ef940078890610000124ef94003d722610000084ef94004c3746100fef841fafedc22300c004e7571104fef00186100fee44ef94003c986711061000012b48066064ef9400786ce4ef9400786fc4fefffec48ef030200082e802f4800044ebadf984cef030200084fef00144e752f082f01207946c8245673b9100b14cfc2fc18b2d1c173b9100b14ccd1fc0008eda271b01800221f205f4e750c820000000566344fefffe448ef0303000c2e8b2f4300044ebae7a22f4000084cef0303000c4aaf00084fef001c67064ef94003a6246100ff9c24004efa01be0c8600000005662a4fefffec48ef030300042eaf005c4ebae6222f40005c4cef030300044fef00142f006100ff682c00201f4efa01964eb94005213c4eb94007e9404ebaf89c4ef940052228564543544f5200004878ffff4878ffff4ebae5984ef94004e4d04feffff048d703034ebadb384a80670c4cd703034fef00104efae2ee4cd703034fef00102f0a4ab9460e70e04ef9400791ec4feffff048d703034ebae1da4a80670a4cd703034fef00104e754cd703034fef00104fefffe848d73c0c4ef94006d78c7c010c800000000566224feffff048d703034ebadacc4a80670a4cd703034fef0010600c4cd703034fef0010bc8065064ef940077b624ef940077b704efada924fefffa048d77cfc4ef9400023204eb9400339704a80671e4feffff048d703032f024ebae872588f4cd703034fef00104ef940083b7e4ef940083b062f2e00084878ffff4eb940031ee04feffff448d703022f004ebae6a0588f4cd703024fef000c4ef94004e1f44feffff048d703034ebae7804a804cd703034fef0010660c2279400cfeda4ef9400322ec4e7500000000000000004ef9400365500000000000004ef9400334de0000000000004ef94007982200000000000000004ef94003a53600000000000000004ef94003cda000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffff0000000000000000000000000000000000000000ffffffffffffffff31000000000000000000000000000000000000000000000000003e00000000000000000000000000000000000000000000000000ff00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000002000000000000000000000000000000000000000000030000000000000000000000000000000000000000000400000000000000000000000000000000000000000005000000000000000000000000000000000000000000ff0000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffff0000000000000000000000000000000000000000ffffffffffffffff330000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000003100000000000000000000000000000000000000000000000000ff0000000000000000000000000000000000000000000000000031000000000000000000000000000000000000000000000000003200000000000000000000000000000000000000000000000000ff00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000002000000000000000000000000000000000000000000030000000000000000000000000000000000000000000400000000000000000000000000000000000000000005000000000000000000000000000000000000000000ff000000000000000000000000000000000000000000564543004f464600465744000052455600564543544f522047454e455241544544004e4f204348414e474500ab204d414348494e453a564543544f5220bb00564543544f52004300432300440044230045004600462300470047230041004123004200545950450044454e5300524f4f54005343414c00474154450041434e540053454544005350414e004f46535400524f540052505400444952004f43540056454c0050524f420048554d4e00303031205354415449430030303220464c455800434852004d494e004d414a00444f520050454e540000000000000000000000000000000000000000000000000000564543544f5220535243000000564543544f5220414d50203100564543544f5220414d502032000b0b00010030010c0c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000033203132000007000000400000050006000000020000000000000056000000010000000000000000000000000000000000000000000102030c060d050407080a090b0e0f1010000102030405060708090a0b00000d0e0f100b047e7f7f0c183f4001097f1517000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000fff05ad0ab506ad04a900000000000000000000000000000000000000000f100b047e7f7f0c183f40010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b0b000120300c0c00000000000000000000000000000000000000000000000100000000000000000400fff10000000000000000000000000300000100000000000000000000000003000003000000000000000000000000030000050000000a000000000000004c02000001000000130000004c00000074020000010000001e00000054000000300100000500000027000000c00000055e020000010000003e0000016a0000000a01000007000000450000061e0000013e0200000100000054000000200000000401000003000000630000001c0000000401000003000000730000002400000192010000030000007c000000800000003001000007000000860000117000000048020000010000009700001120000000500200000100000000000000000000000003000006000000a80000075c0000016402000001000000b90000008c0000000401000005000000c3000000000000000401000003000000d3000000180000002701000007000000dc000000000000001801000007000000e60000011e0000004401000007000000f1000000ec00000012010000070000028c000008c00000029e02000001000000fd00000b5e00000132020000010000010a0000010e0000001001000007000001130000003f00000010010000070000011b000000fe00000010010000070000012500000c90000001fa02000001000001310000005000000030010000070000013900000e8a0000001e020000010000014700000ea80000001e020000010000015500000ec60000001e020000010000016300000ee40000001e020000010000017100000f020000001e020000010000017f00000f200000001e020000010000018d00000f3e000000ae020000010000019800000fec0000007402000001000001a500001060000000c002000001000001c2000011b8000001dc02000001000001d1000000500000003001000007000001d9000013940000000a02000001000001e30000139e0000000a02000001000001ec000013a80000000802000001000001f5000013b00000003e0200000100000168000013ee0000003e020000010000015a0000142c0000003e02000001000001ff0000146a000000d002000001000002080000153a000000d002000001000001840000160a000000d00200000100000176000016da000000d0020000010000014c000017aa000000d0020000010000013e0000187a000000d002000001000002110000194a000002e6020000010000022200001c300000068402000001000005a6000001b600000101010000030000023000000000000000400100000500000239000022b4000000460200000100000249000022fa000000cc020000010000025a000023c6000000b00200000100000274000024760000000c02000001000002870000256000000104020000010000029500002a360000033c02000001000002a4000002b70000091a01000003000002ac00002d72000001ba02000001000002bb00002f2c0000008402000001000002ca00000bf60000000401000003000002d4000031540000003602000001000002e1000000180000000401000003000002eb000000140000000401000003000002f50000001000000004010000030000037300000bd200000004010000030000002100000bda0000001801000003000003000000334a0000005a020000010000030a0000000400000004010000030000031600000008000000040100000300000322000033a40000005a020000010000032e0000000c00000004010000030000033b00000162000000080100000700000347000000b00000000801000007000003520000008400000004010000050000035c0000004c0000000401000005000003660000004400000004010000050000037000000050000000040100000500000378000000c2000000060100000700000384000000bc0000000601000007000003970000008800000004010000050000039f000000400000000401000005000003a9000000480000000401000005000003b2000000b80000000401000007000003ba00000bd60000000401000003000003c900000bf200000004010000030000035500000c060000000401000003000003d300000c020000000401000003000003de00000bfe0000000401000003000003e900000bfa000000040100000300000000000000000000000003000007000003f546c82456000000000000fff1000003fe0008ed80000000000000fff100000407000056f60000000000000001000004160000559e00000000000000010000041e0000538c00000000000000010000042a0000570200000000000000010000043900005400000000000000000100000447000054c600000000000000010000045b00005492000000000000000100000468000054e60000000000000001000004750000570e0000000000000001000004840000571c0000000000000001000004ee00000c4400000000000000030000049300000c9200000000000000030000049b000055d40000000000000001000004a7000056040000000000000001000004b3000056460000000000000001000004c00000563e0000000000000001000004d00000564a0000000000000001000004dc000056500000000000000001000004e900000d640000000000000003000004f600000dcc00000000000000030000050300000e1a0000000000000003000005100000019400000030110000070000052500000174000000141100000700000538000001880000000c110000070000054b000024820000000c120000010000055c0000248e000000d2120000010000056800002664000000d812000001000005760000273c0000004c120000010000058600002788000000661200000100000599000027ee000001e812000001000005ad000029d60000006012000001000005c100002fb00000013a12000001000005d6000030ea0000001012000001000005e70000565a0000000010000001000005f9000030fa0000005a12000001000006050000318a000001c0120000010000060c000055dc00000000100000010000061f000033fe00000072120000010000062700003470000000c6120000010000063700003536000002981200000100000641000001c40000000b1100000700000651000037ce000000f21200000100000665000038c00000010a1200000100000679000039ca0000002e120000010000068d000039f80000006412000001000006a200003a5c0000009812000001000006af00003af40000005412000001000006bd00003b480000004412000001000006ca00003b8c0000008012000001000006d800003c0c000000c2120000010000076900000c0c0000000010000003000006e000003cce0000008212000001000006ee00003d50000000fc12000001000006f6000000c800000024110000070000070200000d480000000010000003000007100000569600000000100000010000071d00003e4c000000a4120000010000072a00003ef00000002a120000010000073700003f1a00000116120000010000074a000056e800000000100000010000075d00004030000007be120000010000076400000d2c000000001000000300000772000047ee00000112120000010000077a0000490000000532120000010000078200004e320000052a120000010000078d00000c2800000000100000030000079b0000535c0000000010000001000007ab000053740000000010000001000007b8000053ac0000000010000001000007c7000053f20000000010000001000007d5000053fa0000000010000001000007e40000547e0000000010000001000007ee000054880000000010000001000007f80000544e0000000010000001000008060000546a000000001000000100000816000054a0000000001000000100000823000054b000000000100000010000083200005512000000001000000100000841000055520000000010000001000008500000558800000000100000010000085d000055a6000000001000000100000869000055b8000000001000000100000876000055ea0000000010000001000008830000561a0000000010000001000008910000565600000000100000010000089d000056680000000010000001000008a9000056c20000000010000001000008b7000056e8000000001000000100766563746f722e63006d675f6469727479006d675f666f7277617264006d675f736176656400766563746f725f67656e65726174652e706172742e30007363616c65730067656e657261746f725f70616765007372635f706167655f7265616479007372635f706167655f736f75726365007372635f7061676500666f726d6174732e370067656e657261746f725f776964676574007365636f6e646172795f77696467657400766563746f725f6d6964695f70616765006d6964695f76696577006d6964695f706167655f6275696c74007469746c65732e3200666f726d6174732e31006d6964695f6e616d6573006d6964695f6c61796f7574006d6964695f636f6e74726f6c006d6964695f6d61780066697273742e33006d6964695f62797465006d6964695f666f726d617400726f6f74732e30006d6964695f666f726d61745f30006d6964695f666f726d61745f31006d6964695f666f726d61745f32006d6964695f666f726d61745f33006d6964695f666f726d61745f34006d6964695f666f726d61745f35006d6964695f7061676531006d675f706167655f7669657700647261775f67656e657261746f725f7769646765742e706172742e3000666f726d61745f636f6e74726f6c00726f6f74732e3600666f726d61745f313000666f726d61745f3800666f726d61745f3600666f726d61745f313100666f726d61745f3900666f726d61745f37006d6964695f7365745f636f6e74726f6c006d6964695f67656e6572617465006c6f636b65642e3400766563746f725f6d6964695f79657300766563746f725f6d6964695f6b6e6f6200766563746f725f6d6964695f61737369676e2e706172742e3000766563746f725f6d6964695f61737369676e00736176655f73657474696e67730067656e65726174655f747261636b0073746167696e67006368616e67655f636f6e74726f6c0067656e657261746f725f7669657700656469745f7669657700706f6f6c5f636f6e7465787400706f6f6c5f62616e6b00706f6f6c5f7061727400706f6f6c5f747261636b00706f6f6c5f666c657800706f6f6c5f62726f77736500706f6f6c5f64697265637400706f6f6c5f73746174696300706f6f6c5f70656e64696e6700706f6f6c5f6c6162656c730068616e646c6572732e38006d675f616374697665006d675f7365636f6e64006d675f637572736f72006d675f6d696e65006d675f6172705f70616765006d675f6172705f73657475705f736c6f7473006d675f7365656e006d675f6f70656e6564006d675f73686f776e006d675f6b657973006c6173745f7472616e73706f7274006c617965725f67656e0073686f776e5f62616e6b0073686f776e5f706172740073686f776e5f747261636b0042414e4b5f50545200504152545f4f46460073745f6e616d655f7265706c61790073745f6e616d650073745f726f775f747970650073745f6d61696e5f7265706c61790073745f7372635f636f6d6d6f6e0073745f63686f6f7365725f726f775f747970650073745f6e616d655f7069636b0073745f706f6f6c5f6b696e640073745f656469745f7265706c61790073745f647261775f7265706c61790073745f656e6373002e706f6f6c5f73746f636b002e6c6973745f73746f636b002e7469746c655f73746f636b002e7469746c655f756e7369676e6564002e7469746c655f706f6f6c002e7469746c655f706c61696e006d675f6c6973745f6b657973006d675f706167655f6b657973006d675f706167655f656e637300766563746f725f636f6e74726f6c5f6e616d657300766563746f725f7363616c655f6e616d657300766563746f725f636f6e74726f6c5f6d617800766563746f725f6e6578745f7365656400766563746f725f7061636b00766563746f725f756e7061636b00766563746f725f67656e657261746500766563746f725f747261636b5f656d70747900766563746f725f77726974655f70687261736500766563746f725f7369676e65645f747261636b00766563746f725f76616c69646174655f706172740073745f76616c69646174655f706172740073745f73746f636b5f76616c69646174650073745f73656c65637465640073745f6b65790073745f73746f636b5f706f6f6c5f6f70656e0073745f747970650073745f63686f6f7365725f747970650073745f61737369676e00766563746f725f64656661756c74730073745f706f6f6c5f63686f6963655f647261770073745f706f6f6c5f63686f6963655f6f70656e0073745f706f6f6c5f63686f6963655f6c6566740073745f706f6f6c5f63686f6963655f72696768740073745f706f6f6c5f6c6566740073745f706f6f6c5f72696768740073745f647261775f706167650073745f73657475705f706167650073745f6b6e6f620073745f73657475705f6b6e6f62006d675f7061676500766563746f725f6d696469006d675f706167655f6c61796572006d675f706167655f73697465006d675f6172705f7365747570006d675f747261636b5f746170006d675f6e6f74655f73657475705f64726177006d675f73746f636b5f6e6f74655f64726177006d675f6b6579006d675f6c6973745f6c61796572006d675f6b6e6f62006d675f7469636b0073745f75695f7469636b0073745f656469745f6c617965720073745f6d616368696e655f6e616d650073745f7372635f6e616d65730073745f6d61696e5f636f6d6d69740073745f7372635f636f6d6d69740073745f7372635f636f6d6d6974320073745f6e616d655f610073745f6e616d655f620073745f73657475705f6f70656e0073745f63686f6f7365725f6f70656e0073745f73657475705f726f770073745f63686f6f7365725f726f770073745f73657475705f65646974360073745f73657475705f64726177360073745f7469636b5f686f6f6b0073745f7372635f647261770073745f706f6f6c5f6f70656e0073745f6c6973745f647261770073745f706f6f6c5f7469746c650073745f76616c6964617465006d675f7461705f73697465006d675f73657475705f73697465006d6f647765726b5f73746f636b5f34303033363534385f380000000634000003010000001c0000065000000301000001b6000006720000030100000040000006bc0000020100001170000006fe00000301000001b20000070400000301000000200000070a00000301000001ae00000710000003010000001c0000071600000301000000240000072600000201000011200000077e000004010000008c0000078e0000030100000000000007a600000301000001b6000007ce0000030100000028000007d6000003010000002e000007ec0000620100000018000007f4000003010000003a0000080a00000301000000400000081c00006201000000ec0000088800006201000000180000089a00000301000001b2000008a00000030100000020000008a600000301000001ae000008ac0000030100000000000008b2000003010000002400000eb800006201000000ed00000ed600006201000000ee00000ef400006201000000ef00000f1200006201000000f000000f3000006201000000f100001fda00000301000002b60000208c0000040100000040000022d00000110100000011000022e600001101000000220000233200006201000000ec0000236a000062010000010e00002ade0000030100000bd100002c2000000301effea16a00002c500000030100000bd100002e0400006201000001880000317200000301000000140000318000000301000000100000322e0000030100000bd2000032960000030100000bd2000032ba0000110100000011000032fc0000030100000bd2000033080000030100000bf60000332a00001101000000220000336600000301000000140000337400000301000000100000338400000301000000040000338a0000030100000008000033c00000030100000014000033ce0000030100000010000033de0000030100000004000033e400000301000000080000361200000301000000100000368c000003010000001800003692000003010000000c000036a00000030100000010000036a60000030100000014000038e80000030100000018000038f600000301000000140000390c000003010000001000003912000003010000000800003918000003010000000c0000396c0000620100000162000039d40000620100000162000039ea000003010000000800003a04000062010000016200003a3a000003010000000400003a40000003010000000800003ab8000003010000000800003aca000062010000016200003d5600006201000000c800003d5e0000030100000d4800003d6e000004010000008400003db8000002010000569600003e0a000002010000075c00003ebc000002010000569600003ed6000004010000004c00003efa000002010000569600003f3200000201000056960000407c0000020100005696000040940000030100000d2c0000409c0000030100000d48000040bc00000201000056960000410c00000401000000500000411200000401000000440000411a0000040100000044000041c8000004010000004c000041ce00000401000000500000420c00006201000000c80000422c00006201000000c80000423c0000020100005696000042480000030100000d2c0000426a00000401000000500000429e0000040100000050000042aa00000201000022b4000042d200001101000000110000430000001101000000220000431c00000401000000500000432a00000401000000440000441600006201000000c20000443200006201fffffcd50000454000006201000000c80000467600000201000024760000471600006201fffffcd50000474400006201000000c2000047ba0000020100002476000047f400006201000000c80000481400000401000000840000485a0000020100005696000048ac00000201000022fa0000491600006201000000c80000492400000201000056960000494800000201000056960000495200006201000000c80000495e000004010000008800004a4a000004010000004000004a5c000004010000004800004a66000004010000004c00004a6c000004010000004800004a9a0000030100000d4800004ab0000004010000008400004abe0000030100000d2c00004b00000002010000403000004b18000004010000008400004b2a0000030100000d4800004b32000004010000008400004be8000004010000008800004c0a000004010000004000004c10000004010000004800004c1a000004010000004c00004c20000004010000004800004c3c0000030100000d4800004c50000004010000008400004cc00000030100000d2c00004cf4000004010000004000004cfa000004010000004c00004d28000004010000004800004d30000004010000004c00004d36000004010000004800004d46000004010000004c00004d5e000004010000004c00004d7a000004010000004000004d9c000004010000004400004dd0000004010000004c00004de6000004010000004400004df80000030100000d4800004e0c000004010000008400004e1c0000030100000d2c00004e52000003010000000800004e860000030100000bd600004eb00000030100000c0200004eca0000030100000bf600004ed00000030100000c0200004ed60000030100000bfe00004edc0000030100000bfa00004ef8000002010000318a00004f420000030100000bf200004f600000030100000c0600004fd00000030100000bd6000050500000030100000c02000051500000030100000bfe0000515a0000030100000bfa000051960000030100000c060000519c0000030100000c02000051a20000030100000bfa000051ae0000030100000bfe000051b80000030100000bd6000051e20000030100000bd6000052200000030100000c28000052380000030100000c060000523e0000030100000bf6000052440000030100000c02000052500000030100000bfa000052560000030100000bfe000052640000030100000bf60000526a0000030100000c02000052700000030100000bfe000052760000030100000bfa000052800000030100000c0c000052940000030100000bd60000529e0000030100000bd6000052ca0000030100000008000052d4000003010000000c000052f00000030100000c06000053380000030100000bd600005388000002010000559e0000008c0000040100000054000002ee000062010000016a0000062800000301000000200000063e00000301000000240000065800006201000001940000066000000301000000ee0000066600006201000000800000066c000003010000003a000007860000030100000020000007980000030100000024000007ae0000110100000000000007b60000030100000028000007e0000003010000002d000007fe00006201000000000000080400000301000000ee00000810000062010000011e00000bb6000062010000010e00000c22000062010000003f00000c5000006201000000fe00000cec000011010000000c00000d08000062010000005000000d36000011010000000400000de4000062010000017400000dfe000011010000000d00000e42000011010000000800000e8c000004010000008c00000e9400006201000000ec00000eaa000004010000008c00000ec8000004010000008c00000ee6000004010000008c00000f04000004010000008c00000f22000004010000008c000010a4000062010000018800001202000062010000017400001236000011010000000d0000131a00001101000000080000132a00006201000000500000134c0000110100000004000013ce000011010000000d000013e800001101000000080000140e00006201000001740000144c0000620100000050000019ba00006201000000fe00001b6e00006201000000fe00001d6600000301000001b600001e0200000301000001b600001fa80000040100000000000020720000040100000000000021c0000004010000000000002246000004010000000000002256000004010000000000002aaa00000301000002b700002b00000003010000030700002bc400000301000001b600002bd200000301000001b600002bdc00000301000002b700002c2600000301000002b700002cd0000003010000033000002d3c00000301000002b700002f880000030100000bf6000031560000030100000018000031b20000030100000bd2000031d20000030100000bda000032040000030100000bda000032f20000030100000bf60000334c0000030100000018000033a600000301000000180000347600000301000000080000350a00000301000000100000352e0000030100000004000035be00000301000000080000373400006201000001c4000037e000006201000001620000393600000301000000100000396000006201000000b0000039a8000011010000002c00003a72000003010000000800003aa8000003010000000400003b5c0000030100000bf600003bfa0000030100000bf600003c8e0000030100000bf600003cb20000030100000c0c00003d320000030100000bf600003dfe000004010000004c00003f94000011010000000400003fbc000004010000004400003fce000011010000003f00003fee00000401000000440000406e00006201000000c8000040840000040100000084000041b8000004010000004c000041f600000401000000500000423200000401000000840000431600000401000000440000436000000401000000440000441e00006201000000bc0000470a00006201000000bc0000480e0000030100000d48000048a0000004010000004c00004938000004010000008800004a780000030100000d4800004a7e000004010000008400004a90000004010000005000004ad400006201000000b800004ade000004010000005400004bee000004010000008400004c26000004010000008400004c32000004010000005000004c9000006201000000b800004c960000030100000d2c00004ca0000004010000005400004caa000004010000005000004cda00006201000000b800004ce4000004010000005400004d04000004010000004000004d3c0000030100000d2c00004d640000030100000d2c00004dd60000030100000d4800004e40000003010000000800004e58000003010000000c00004ea40000030100000bf200004eaa0000030100000c0600004f0400000301b9382e6400004f2400000301b9382d3800004f4e0000030100000c0c000050400000030100000bf2000050460000030100000c06000051700000030100000c0c0000517a0000030100000c0c000051840000030100000bd2000052260000030100000bd2000052860000030100000bd2000052de0000030100000c280000530e0000030100000c280000531a0000030100000c2800000c100000030100000c4400000c140000030100000c9200000c2c0000030100000c4400000c46000002010000318a00000c4a000002010000318a00000c4e000002010000318a00000c60000002010000318a00000c64000002010000318a00000c68000002010000318a00000c940000020100003c0c00000caa0000020100003c0c00000cc00000020100003c0c00000cd60000020100003c0c00000cec0000020100003c0c00000d020000020100003c0c00000d300000030100000d6400000d4c0000030100000dcc00000d500000030100000e1a00000d66000002010000403000000d6a000002010000403000000d6e000002010000403000000d80000002010000403000000d84000002010000403000000d88000002010000403000000d9a000002010000403000000d9e000002010000403000000da2000002010000403000000dce000002010000403000000dd2000002010000403000000dd6000002010000403000000de8000002010000403000000dec000002010000403000000df0000002010000403000000e1c00000201000047ee00000e3200000201000047ee00000e4800000201000047ee00000e5e00000201000047ee00000e7400000201000047ee00000e8a00000201000047ee000000000000020100000e8a000000040000020100000ea8000000080000020100000ec60000000c0000020100000ee4000000100000020100000f02000000140000020100000f2000000050000011010000004600000054000011010000004800000058000011010000004b0000005c000011010000004d0000006000001101000000500000006400001101000000520000006800001101000000540000006c000011010000005700000070000011010000005900000074000011010000005c00000078000011010000005e0000007c000011010000006100000080000002010000187a0000008400000201000017aa00000088000002010000142c0000008c00000201000013ee0000009000000201000016da00000094000002010000160a0000009800000201000013a80000009c000002010000153a000000a0000002010000139e000000a4000002010000146a000000a80000020100001394000000ac00000201000013b0000000b000000201000033a4000000b4000002010000334a000000cc000011010000003f000000d80000020100002476000000dc000002010000075c000000e000000201000022fa000000e400000201000022b40000011e000011010000006300000122000011010000006800000126000011010000006d0000012a00001101000000720000012e000011010000007700000132000011010000007c0000013600001101000000810000013a00001101000000860000013e000011010000008b0000014200001101000000900000014600001101000000940000014a00001101000000980000014e000011010000009c0000015200001101000000a00000015600001101000000a40000015a00001101000000a90000015e000011010000000c0000016200001101000000ae0000016600001101000000b90000017400001101000000c20000017800001101000000c60000017c00001101000000ca0000018000001101000000ce0000018400001101000000d20000019400001101000000630000019800001101000000680000019c000011010000006d000001a00000110100000072000001a40000110100000077000001a8000011010000007c000001ac0000110100000081000001b00000110100000086000001b4000011010000008b000001b80000110100000090000001bc0000110100000094000001c00000110100000098002e73796d746162002e737472746162002e7368737472746162002e72656c612e74657874002e72656c612e64617461002e627373002e726f646174612e737472312e31002e72656c612e726f646174610000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000010000000600000000000000340000572a000000000000000000000004000000000000001b00000004000000400000000000007d5c00000f3c0000000900000001000000040000000c0000002b0000000100000003000000000000576000000eb4000000000000000000000004000000000000002600000004000000400000000000008c98000001d40000000900000003000000040000000c000000310000000800000003000000000000661400000090000000000000000000000004000000000000003600000001000000320000000000006614000000d7000000000000000000000001000000010000004a000000010000000200000000000066ec000001cf000000000000000000000002000000000000004500000004000000400000000000008e6c0000036c0000000900000007000000040000000c00000001000000020000000000000000000068bc00000bd00000000a0000007a0000000400000010000000090000000300000000000000000000748c000008d00000000000000000000000010000000000000011000000030000000000000000000091d80000005200000000000000000000000100000000", + "sha256": "2901acaf1d196aab5f411b6acd06ce63787c1c010154fd8ddb11ec4a5510c69c", "stockCopies": [ { "section": 1, - "offset": 12948, + "offset": 22262, "source": 1073951960, "bytes": 6, "sha256": "d6c9f1f60272197a17511f496fc19dd21ddd7df5f1f1ec0cab7a16cad60b0609" }, { "section": 1, - "offset": 12960, + "offset": 22274, "source": 1074239516, "bytes": 6, "sha256": "89c50ac3ca041fdf5647ec5ee2c3580f9a67dd79f0b5cc15ceadda4b9e9bede0" }, { "section": 1, - "offset": 12972, + "offset": 22286, "source": 1073980718, "bytes": 8, "sha256": "cae34bf50383462ed4f92d8044e3021247edb8bf69c17a9c7ead62f6edf79510" }, { "section": 1, - "offset": 12986, + "offset": 22300, "source": 1073991064, "bytes": 8, "sha256": "ed71ef874312890edc87cef7e19cd8c0f8ac4ac9b90182c2364f78d3a4567f45" + }, + { + "section": 1, + "offset": 22248, + "source": 1073964360, + "bytes": 8, + "sha256": "e7935464f6aea76650f55814efc9b45785485164937f3bd5ed6f2a4d384b8d4b" } ], "placement": "linked", @@ -3383,6 +3390,50 @@ "kind": "jmp", "writeLength": 8, "note": "VECTOR native selection/editor access" + }, + { + "address": 1074281212, + "guardLength": 10, + "guardSha256": "d611d680ad5031e96fe61f954ea40fd87a76bbc961c6d2deefdfc55935dd9f1e", + "unit": "vector", + "symbol": "mg_tap_site", + "target": null, + "kind": "jmp", + "writeLength": 10, + "note": "Double-tap TRACK in MIDI mode opens MIDI NOTE SETUP, with the generator list" + }, + { + "address": 1074061802, + "guardLength": 10, + "guardSha256": "b40743bf9a64ff977ac996a4a3c34f6582d8fcda08b78cf52fdf634c94c54959", + "unit": "vector", + "symbol": "mg_page_site", + "target": null, + "kind": "jmp", + "writeLength": 10, + "note": "VECTOR controls on a VECTOR MIDI track's ARP page" + }, + { + "address": 1073947264, + "guardLength": 8, + "guardSha256": "de77e904028311689866c543af3ce42a7fcfa1e3fdc531807fc98eaf0689d1cf", + "unit": "vector", + "symbol": "mg_setup_site", + "target": null, + "kind": "jmp", + "writeLength": 8, + "note": "FUNC+AMP turns a VECTOR MIDI track's ARP page to its second page" + }, + { + "address": 1073964360, + "guardLength": 8, + "guardSha256": "e7935464f6aea76650f55814efc9b45785485164937f3bd5ed6f2a4d384b8d4b", + "unit": "vector", + "symbol": "mg_note_setup_draw", + "target": null, + "kind": "jmp", + "writeLength": 8, + "note": "MIDI NOTE SETUP lists the MIDI generators in its left half" } ], "refs": [ diff --git a/src/engine/assets/resident-dsp.json b/src/engine/assets/resident-dsp.json index 174ba15b1..22f05696a 100644 --- a/src/engine/assets/resident-dsp.json +++ b/src/engine/assets/resident-dsp.json @@ -335,7 +335,7 @@ ] } ], - "sourceCommit": "f7fbcc8a655ca63d8c01898a242f771291a41c3e", + "sourceCommit": "9be221aabc43919ab1165cad9df7c1415b96f2f7", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -358,7 +358,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.2.0-experimental", - "vector": "0.2.5-experimental", + "vector": "0.3.0-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.2-experimental", "recorder-loop-fix": "0.1.0-experimental", diff --git a/src/engine/assets/rom-packages.json b/src/engine/assets/rom-packages.json index 5499cf25b..0d8093a0f 100644 --- a/src/engine/assets/rom-packages.json +++ b/src/engine/assets/rom-packages.json @@ -494,7 +494,7 @@ "sha256": "fdba0ffd31b7932ceb1ded3bde9a976b6f148ae96fc73a4efc4fedf6fb692341" } ], - "sourceCommit": "f7fbcc8a655ca63d8c01898a242f771291a41c3e", + "sourceCommit": "9be221aabc43919ab1165cad9df7c1415b96f2f7", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -517,7 +517,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.2.0-experimental", - "vector": "0.2.5-experimental", + "vector": "0.3.0-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.2-experimental", "recorder-loop-fix": "0.1.0-experimental", diff --git a/src/engine/assets/usb-audio-packages.json b/src/engine/assets/usb-audio-packages.json index 1921b380f..5456c8a31 100644 --- a/src/engine/assets/usb-audio-packages.json +++ b/src/engine/assets/usb-audio-packages.json @@ -553,7 +553,7 @@ } ] }, - "sourceCommit": "f7fbcc8a655ca63d8c01898a242f771291a41c3e", + "sourceCommit": "9be221aabc43919ab1165cad9df7c1415b96f2f7", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -576,7 +576,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.2.0-experimental", - "vector": "0.2.5-experimental", + "vector": "0.3.0-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.2-experimental", "recorder-loop-fix": "0.1.0-experimental", diff --git a/src/engine/assets/utility-packages.json b/src/engine/assets/utility-packages.json index ce3c42a8e..c70a89005 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": "f7fbcc8a655ca63d8c01898a242f771291a41c3e", + "sourceCommit": "9be221aabc43919ab1165cad9df7c1415b96f2f7", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -26,7 +26,7 @@ "previewvol": "0.1.2-experimental", "cc-map": "0.1.2-experimental", "sidechain-compressor": "0.2.0-experimental", - "vector": "0.2.5-experimental", + "vector": "0.3.0-experimental", "playmodes": "0.2.0-experimental", "mute-modes": "0.2.2-experimental", "recorder-loop-fix": "0.1.0-experimental", From 8ae180d7d3bbff1baf8e613f605678408bae7ae5 Mon Sep 17 00:00:00 2001 From: repeat98 Date: Sun, 8 Nov 2026 13:16:44 +0100 Subject: [PATCH 22/33] VECTOR 0.3.0: USB package with the MIDI generator; machine and standalone recipes re-pinned Co-Authored-By: Claude Opus 5.5 --- .../vector/0.3.0-experimental.mwrm | Bin 0 -> 29486 bytes .../module-adapters/machine-ports.json | 3 +- .../module-adapters/machine-recipes.json | 74 +- .../module-adapters/standalone-recipes.json | 1108 ++++++++--------- .../assets/octatrack-module-packages.json | 12 +- 5 files changed, 612 insertions(+), 585 deletions(-) create mode 100644 public/octatrack-modules/vector/0.3.0-experimental.mwrm diff --git a/public/octatrack-modules/vector/0.3.0-experimental.mwrm b/public/octatrack-modules/vector/0.3.0-experimental.mwrm new file mode 100644 index 0000000000000000000000000000000000000000..101694d34dacbad1938e572cd35ae8dc1c8ec2a9 GIT binary patch literal 29486 zcmeHw4^&fEw)aj57$8bOim9b~CuW#D1_@Herw-NR1~8^ErO_%dPRlr$XrHx!py)7~ z1hi-!|JCvNI-Pm8Xz@=g)LKV*K3_z~TA$_S^4t&^_H!5o-})%N4ef&z5WVS+&Q+$`X$k{9DP|b>7&Q_w)v)< zFxg0BGLsr@j*7nGll5b`o%=xXjrH=??&8)buXUKq<7}s@JA@Y^4wNlNedkthNmNCg zNhD{fmP==EAce_Fc}+DXQRP~bh4M;cxx8`%DN##o@}oQ!<>E$js5}DYE|jY_zCbQ6 zE1frU1F2AFWRnlI=kZnP{7~&k)Se(=nUC@brJ7KA6v{_P=+MIYJKBt5ZS4c<&MMI1tnXww+7+sUIXH*Z}yg;dkayiNSg^z9Sk4ET)l5=8{` z_V^bf{-7YsHDw^hmcK`g?`xq5fD)ic`LO9F_Z7V<;)F5#H~%_pMsP5#8sWmCNf)aAd)PFzNVYwC&7}K6i+u!V@l9&|VIB(%gcCY*5=+8BjqKv9# z3ZNUAu9|{h6fF3jNP+DOJta(?A!1hCPTx1D!cD>I)Ec`V-&LZwXFomraKD-gDbCf6 zhK3cMoL4fenly7hJ3}cikiGOKp4tE9@GFfZ{_`~&@ex35q@jRJjLQWHrt2dsG{?LS zQ5)4;^(e9Xo+o9}Zr=-})IsltR%l$_bcH@LT-SZV;<13{HM8bj$S%SL0hAw2fy{j_}=}8xnsj} zai~}?uH2;;dJ-)*%iBJ?-$M$wpg3RW5J@%ma|apIX;M@zY|YKmxPY(e7bR(>837;k zL2Yj&r<)Yhd7NqmMR}s4yj-to$@A)_MzYUP8flhJP+Z#3V12)XB2&p>&8MhZm>+X| z4k^Za1J}rWu`b?BO6cQ4NgK~8eUw3D_hCH8v?h8SPa_KIb}fQ#=nUX}O02yx;*h7H ztdV|HHEM@<3eoOV%r>5rDVR@=T!_&~F=fAlMjjfs!1|enR{9ONPE)vi4zZZ*Do<2e z<2GyINM5(hf$G6)zgYLAsyv1~>bvliVs##)rF2x$%7sYC1iIlkfxT2sVv9#1g^(~Tw? zT1=g9GVP_KdQ#7Hm;H{%FmAz0Khw|Dqm3Dy&O@73sJ$R{h*3(2yzsnVrV>sv-Tzoak5zS*3xpl=TBnw1ny{wdE1z!YCvrAwhy$u@P>e5_zm z-&{&V-E^0K(&9^fU{WSgt?E`gJ>*s)?NrU#{`pTdHt_v7* zQLzK#e)1X#&Pu5#;T!ct!2!i9nR}4C5vx-&a|ybsuD7%_Qku(WxvoyCMwIh2iglq_@hUam4XC$3#_K;mSHHr}-eD@06U0Q@sIG5^5*q7qTZQYd=PeJe{L z;hDCtgL>;ltn5@!tNl=VI?H`4LopWk3Z~04lI0><$i;yUib^$qg!+XAWxqC9Rvh^8 zV&hB=X|sArOztrxu?n*=pd6C8uvt&%7qPS;18cCOuO--7?&&L1nt@7HqG%JbDy8ey zlYFQ%xO5#pO?}1Soqv~TbFZ8U`50u`w6JW%ofyd^<`ZNCX%%J5vVkS&{ySkiI4(%DzuuM<`S5%yEa9Vg`n~c|z>tTh13s>+^q~(k z`Y>u0qoMty%w)vMr4`h|ap4*nGOm%)0e)*6DHXFL%~@G)=6YHM*DOB4SV~8A<0;uu ze6C#Av!{~P#b-+AGc6T5riN)LpGFBq^iHRstN3&VR%+C|Yh0+CT705Bwu_tK z0X#kmQt=Vg*UG%hQhy!yN~m*RaR4<{zzptZs6j;+|MApcyn{#d^81D-!jc^ed4^=$ z-?b>Qy%j#HtPkB!N-iZzI`NhTIzgR>T#JhXPc1XWn3NT9;Gj;{Pgxhi-)9;iS*+8E zu)@&NPZsM%)$i8pp%#Ebv8Cy8F?CmPl;h5_f@c&`wI23krY@_=Es(TW>zT zr@^9C%45=H27KJZkw(aKh?nVvS9oBW>QD$Ne|IP%x?-G~P3cD~b=#^R0?hFLMVA79l+s#9C4h3zk3 zTR8D^tu8U(zU@E{&|aOhvO)vDj`&%@E};}Qj-Q_?J_nB}nQLL47W8w>y+>)K`bX_P zw?V?RPO8~dyzMDJ{7PkMX3P4v$C>2_aJ$d}HiAk}$xnDS9A8%v!!(Hz;o1+?)KL$Lqqq4=&I)D;=YN5vc*o`(M~*zU z!t-5Yqs~rno&BU7X&i4#~FL3<}I;%y)V9fh8Geuzb+r zCHD-T+wv?t-Xg6xH9RMd2I5~{LvndQD&g^IW1NSj@`TErP#V~K%*q&Ofd+in!Y8pD zWt_9LTIqQNKX;!m&5`&c^`7_M^T4cT%?Y*956|nJRJ+m4HmS)s#bMu>*Sp^ccMg9i zt#W5$ChAz{H1TBtSgb@#dkkSOs;FG97c0hYTjcH!&t2AA`?+F1z>-8A(vDa)jJoCYt*guN>Db~b;JSFj9LW~pb=W>M&~ zZE1;eoVV<^>S)1iGEoLYX=k93G9;UFbLQKv1e2h6dk-w08Y}gD?2k|quFK!foo3aX zZQxI`VPM*`_|`ZpCB7aC+d$d+%J#3!+v4XHUoe-!?pj(E*Bzvz<9pbXEuY`w6)c!1 zvtYrM6|u}2J%K0MNj^O|V|sxEL<2AyQe!qEs=@Xb_iBvq1yYf~^9Q=CgLje0-U!!# zmft80<4c6DAWlG9;7gYAVI2gf0vQwI7!$%_mT>^5hMxn^Ch+y5?Ub4AqyhYlm-&nB zeeF^5uQ?ko`YmCP{v_9?I?t@RT@@d#B*vQn)R@flPLo7TG8U&#<8P+dB zvW{l9j>*nSwAEI{?!f+9ks$4|E^*DU-AD*{PDm|o79V;LpJ#)wGOw%VcXQhjp(EzD z%;`WaY^1lOfNi9n);nRb6yS=`Fh*JZhc^yd{q=2OA0FrV07 zRmFfWiP+ClaAa2twt%hDiaiH$Gr3e9x=MHpx&_=ZvYdHVLFx*Y_s!0NWp)$AdXi+hfEKMRM|lSD zy=woMD~0yB=zw_w`cm zVk2pf9)56d#mm2bJfBU+cn1B?8PAPZF&_Q@obg;ggz!n)ZY&*_!($&M5?JF7e4FCE}yllyvuLJGnWthRv+){=W3gM9G|~? ztc**h06plUYOqcQK!H%X)kXmyDAI*{Dou*_>WKLf@{t$JO=4~|Si1UKu!b0)L~BdW z(S=(07#C>9iqNy9tG%>Rs5sh(cm{SqN@sI>9->6UumWV4YaEJUbkd6xB(vk1Dx1`( zmsLzRRVW#TS{V+=9II3ow=bs8+Ip6+?=C+f%dEk|(qg&EqwYyBdwe_+nM&pdkBND5 zyahYxZ!n6G$J?b@vLE(INVA08xqU6Ih%|tY<bqez8U{+e(L# z*udQQOvh_Dc3Sz)3Bl=z2zN*n9??rNwsl~4nN*V+EnByc8mCpRncj*x zoaB+pX7m2ML)|3T7c4j%P$x-IgFwg9(~c+`JVM(Mea`W~qt@Ww!DE8kp158|_AR9G zkSa|u>#K>DK7DkLJ!1`_Br0hz8AX5Y?W=2N*Ss})x8JR76rth3>Rg$>Y_kQYYNX10 z)N4HC@^hrXedaAs_~~GCa0f7JJuxnC_54HL!Fjcqh#Jq=*Zr_M8gXzfX$iDZ*X0nH1IYcfrStC^Dr7cbKTEuPMSd zBlvsU9Kj;D!Y3ShRcIz8ZYheN&H~)1V55dp`=`YSqkNw!PL;YmbLyQsy8& zw0X32?h|l~wy9FngB#A&+7~=es*I}nI~Gh=&Yhn+Be-VHg89GPUF*^Eb^itZa)X`R zUiqr-A1Gq}hTzBO=VR{WXSK~QqWrW}ueM)KFldi=lk&iv4Z#bjbAjt<_+%)ET6OvR z>T|i~r*HMIO_C^5R^fh??xDH`{N2A+7mo-IDXVdoL&{C|Ex~mjir8dK53a3_1Alg< zXQw@q{rpa!QPK8hwPvS}PsGyGgH3#oyU|+gK~|#GwM95@qJdsuc+;b4$T{G**Lqa` zEx~<8#rY+v_WA37Uc2i>j|x53{(R*e-;RZzs6^kxIFl89D{G93)85paw8(_P6qmQ~ zSHJ(&-t^w7Ip@4B3m>siT%9k+aK{6X+$;kW4`@MbI^x)oxoO)5VPkLUPkQtDq4b*#~leWsN%UAba(5lpGRY7j?MXHn1`Jk@_)xA zVJqOKuR4Hdr5MSj^M5&K!R}g=orVl9A`65%mP%{Sp?Xifr_9Sc&@ZR+xDcO6;?tpt zO|Y#3%6FP0U*ExT8L4#7y`|W{wVRZ@zHSyJyMG9cbW$Wnvu)871MsPFTHZ(om-j7E zijT*!#~_`GHLXFEyabsk=o!(tnS7oLC&{G1eqG~iZdL2eh;=9CFT+k>g_v*=pRX0p zoryWu>94B%%|81ApQ13yR0r9cbz>T~RZtq?Vy3`nzO^Ow1 zNhkMQOn+Mpo^0i@!1GL&<=P;om?%*n@yQ}yuRt-P{jx`)w{Q$H;OCS4qk&3{La<`4 zDWD~Yum5c%^RaX`qDD5ovP#3z5)h&Mq;8fr^i1pZ zRcLUosKE26P-_k9DA7JPR3{d7=An)fbyT4`d>?`P$mf)$^Kq@3rNdpXnO;Qjm8CkA zL{^MKi8@q&6iT9InNboQs$)jf5Hd%3FPw5hH&T%61j(GXotl&knPxGJflqCMh6Iy_ znrOtY4>SMvBMOOV0#bwvh5B3IXTWVRZEJOB0 z!d`4?^zl7?{TnDA(6rROCEUJ2Oz11)2>4qh$#bhJWw;$$)eajO4{(4^&|`E~emxB| z>Ko9&Cw1`rO^{fZRMlE-0MaX4-ddNyb4XdP0=FW{2UcjoO9h_ErCQEkLR>7aYy&B- z)CKs&I0iM80e?kos7@^EC=riB9#xl7yM7gN;apeLyVO@GM7hKg^M%<{a?_1{GQsm32fvj2swsNxq;E zEbL{HIka|-#2Noh!6GQIzT2cH`JpEU`3Xm~)P;D8lM$?J+&1V|OasDTUU{ zG-phk`jtjY%K~HMr6rBFdU3_RqkGGiUsxOP+Y^90GclDEN%FOTYh^!?dP`3D2?Q0948>>KcdVRYF0 z$cw`$)iPi(4aD_m8kmqV47<;G?=TXc5aA=`dF?bIP)0dkzZV|DRp98y6l&3*y9)BE zsP$_7t_1~)+3y;^1S1kK&IMTY((28~AnB0j6JLp5`5HMJ)Y%SQQp~NY^cI4HDs5Jdld2pW-}X&CqpxG+)Tg0m7ipU@>(wSDrQDaspwPT5Z7Xf$5l|NT@WdL6jKShKP6 z%I9LCT_~SJmGI+`_qzYilZf&!aIqmQVV@AB>QVGPCxY%kE`;oaqlTPQ7%?`&1k{rPIrXU^shmIZq=)HxNas^Oh4 zIZp=rf`XZRCU<0OBMG>(&uk=9C71kR8+J&YBTzT_ICg|T8T&GPo=Km{5`do~pt*v4UqnGH*b2eq2NZ1&eA_$06F8GlVmpT2uQ*E6yY?d@Y+J#{MF(>c6_tIFixd&OhySWVNbAv#NU*@Jxb&VEU_xOz9jo_U}X9RBs zgM()TuLi%w=at~!TA+Pl&#nQ!o#MJ2Ih3P?35b@I;v{pkxzg9P1reFK$S}Tg{3=$l z8KjxH0`s8mc_P07J1+K-3vZTfRnyyn={R9U?9iNm^C^f9Jz*zt-g5i%EJPzNI+sg6 zDoUKqUwr{i=!6-;i_ou}*F1az`=L$dRlzbChOR&Oh@ikD>eJ=kt+#ZSWeTQyVMk9O zOAEafFE=UC-`}`DCr(&Mb1%-~O^Cy2j`-nIXP3|4>YWa64LKjHdeV7o$$fO@chd>m zTu{8muJBN>SoGf2Zv1`iIPMi1AKD49w#7Z|o=GWNy~%3(a4*qAo+xD9!0QX`CuHjv z%Dj>N@R`1V-=yGZCd){+ez#qc^@Bylyvc<2G~0*gy?6Swdt2y){!RIWeqz8dkk=x~ z{#J=T_>~=)GfRvjBDKa}A2uq*niRW~C!0N{jr3*PbX1>*h?K^1%SQ9Yl`Y@x^@uLt z*sC-E>y?JH?x-E}lzr}1;sWRLf@LcX#74N`g}N5Nj~I}9g)}^yQL7c+A+Kh2@>)@y zxy$R`*0ol|@YT~;HQa0K&41po;=n?$^;TW>=Fz+BO48EQZ;f`0E+*?OHI-_hrESMs z`mLxVG2T_jxlO?t;kr{!bU!KHE&4{c8) zUtqDD7ERbQQ<3A_#(7{%nZE|sls;HT68CwLee?`+X^`1%uvFa1z0seJEanVRcao5) zq0qX+ydNi8tR0@GjeQg^%S5`XOGh>>@>Ew0K_*G*-7P!byr*S; zz1asIx%)^w>#^7Wd?9*f+@-vqm-qYOz5d;{g6nmULG;2$Iv<)>H#ppU2^w=*WTjhxFNFDZMh>8X$83syn zklNqx1v^4s@MOFT(P&1S9PEK6$)f=8%q#Y!+5XrO{5*j(=nT9H2z`*pguGsUheeUe z7J2e}Xl=xNK)eq7Dzo*5PCs)6_)ChadOi`tlhOg4tHfTVdvb`6q=*7e&NYH3@>MNr zg?FSxZDHOr|Kx1VO!%xl{mUaYpwo!+_t1(NZ$^Hf;wR4KjmSv4uFJMw*NOUQJz~$3J70ze8oyjkxvh#O_7Gil*p*(b zXAariX)+&#YL@??Bj|a&G!JZ?;l-on{O=+M&(5NJ_!`|vz~g}I2T={1Y@5A;cO$SL3(+d4BGWdF6zp9WWe9Q5 z6`~(PzmWY5{tJ+pgY9hY4P7?;<1APmDehyk!JR75|7TtQw3I+x?!lCxZvVn)rh;|E-I z5B&=9yx8LXPc4JI`#h6jiZ#Vxa;=856F;1nreSb87D0BSXeLvq}5 zr#WImHLxKU2(_kRM321Y$-NT1Y>L^;QORUewmEjgEYuZHSMmMRpjijn)mY{FJY)7G zJ-Zlh=y}~(VPxAW_rn;4r(W~eo})i4FoM?C&Vg*&o^*w1x+w2_+-IeAC6s9^$D8GOQt5}E zic+(NiYT!yIOs5dT4cYS6SQMAMQG$7(|y!<(KVp216&>e#RzPsO>2N{+0` zd4|Q*{)R~j2{s~zifmf;yB|RHr4ZHUzS&N#ZG+@NYzWb~mPaGJKpLE(L?LG+jXi&k zk70M;E}i(`{b~bt)}C5nxLNga8+Q2Z+jiodv%;g{d;&vyu#L|$?VRJC;0akOJ@Oq{ z@}Z21lUPIX4n(8KUci(C3GqU{ENhP2PS`XtP$@@B{!m7GN$NSsZ01-S`)9UN9Z7rK zc4zZ3VmkpI*CKa&8fGK!z2@qNgPv^g2)W_B*XuROJ%Bwo6X=uo;7sLU%sQr+sr|2? z;%y0xRN(z^0=ztU>JQ+5ksy!BQnnoNNrzS&vaKO+Qyw4Z4D&d6jn%~SXe!1Y-4o7A zpSc`ys)Tny@q|t8m@;qq1gso5U66O+_2RqC=j^aW>h|YZK9X;ynj%@r37eV_wfMM= zt)zXYId*@*eM@X46=r;d9;-4kW@DVq{Z7ad6y|UZne&J<*SXcw{s40$B*XRxjP|U& z${;VsJLQOeD)L`jktdEl6Hd&a|F&ttTi9J>uJ>S7WZS0DkC$vc>?v0GG_1gFp%pm8 z1Z}$OkENFdE@z>p1~o5AEzim8C-hTyUkfy!mL;vzsnVJp#eK_b@>7e^g7emsWh$UA zI(V5X&!+H-F56D%cT?$OIC0eI5lNCFJEVA{T;RMP#8nO0v-D9XH3YN-##XYkX(IqM4j_2!2%vbo2kGg^fh5QCl)@pe_HG50&pecg) z9P%Ecd!8cusm0lRn0+EGGJjeiTMDYebkl{>Oy)NtwC!w#rr~|j&P&MZ*#DY`*TZSq zyrZ3FhWrqTlc^5J=b60g}>Ih%KuS^O1T%ZkftOp(Nt!HhNzh}%+ zBa?|sN(^SUw00`hf`TI!K?JHeR@-PpPs)gYz4xc z=$2+z?LFPKi;r->5`VJf-dP5BZjX~91gsBVUBPOPT_s1%?!{gFdc6l&hai&+a@^I1 zHGw&uC2OIO9&BM9=XWq7CgY@?B1(iA!FJ4t-8^R1Bm+(vxd!hHH1US$6aJp-yL|qD z=Z71_?$d^&dyifX9!|oUQsr`F&>fsLc02Zy${kF%a%&lM4Vu*6w2^0LL^DpWwgh+M z$=c9cL^DEf5y@{Ek@8%YB1IwjQt6+(B+XYN=sPcN37*AyM~>dAsv&yX0*SQ=q9J?d zuzyyrT67eV^XJ<@S*u=(d&+sI(EZ;xSPf>`BY3nZ_)%hd@b^NDVMeg+gTP>W@MQN6 z{&)+XeZ*(ja@(YYOe@+(ch|rSJ;`q}^V?B!-C=~cuB84#J-C7&0{3~$qKmFA!Sm?x zAZl`1>jwwW-?46NdJ#_!9={sA$bHJ3eL#=Ldh~d(uYVZw5`$+wQSmc^9|g~AuLckD zYEYO3Z$vF9F5}%cUaxc_XLv#f4u)2?Pz;0DGuaLVYQzZkgkTq>%v81ovd4t{j0knt zxxPs8UgXm*dIvqZx5|=Jyc%9F|ebvUn9qWmG; z!*)RXcfO99)FNZQ-3%Sv4ZlOndVc%Ow_)K8vk>(t;@Hd|N5Y?N{$gb@-CoW0ae`8E zH#PT;uVO5ZkKYl*DJI<+iq_-Nx}dCsg5W#bl1vep;PG$gZve_VHg&%_m&86wM20m* z@ySaD^}AmAefdI3*L&(XpMJ95ck6l?b!&T$7rmX8XA7)?>TaqttAoLNDgUODfgPQS z(HNltn6+P)hk4i`$~^Q?$1r#je16p8TncgIprzHxBXpc zEBh%4lFsmImtm3Usxqkmy6Ii7A@*IbTnBb{Rg7d2;E&>TZBPK5tPc}9LH)tL$ow6L})R@s-srYx0KEdz6ndzqHQyu*6XTDE4zfj|e| z=ERDGGq!UAa;MpTn}>Q--$f2A@>KBFy}Ol9zF3~qD%|_Tmrb!!&#S`p4Ej%gQm`z? zo24o9&h$gl_vxSGYO*GHf_)u()&_z%Gx=`I&}|iDdw(>*mVQH*B^8xDR{_rI5-eI{ z@QWVr0~5W;Tz58a8^OGG`B($)kw4uz2&>cq3ZrCAl(<^~K7SFCyA*eq^-z{ySZ0d! zo-&jCp$hgWf+=AM1(TU~kPy5lgCfU&zkG}$Vu=KQ@bq18D#I%l`^vPxGmmM9eG?_E zTIW6@%Z{U#o~hju1Pf|Sj&4zQfCS0K8?8qitC8qn$gmqRJ`d$jvoRt)Oyaz z1WUzOORFZ{dSfw3`-=?iKagVfifuLSK0Ri%T^rB*ku(h+=k=-(mk{sA+*^nB zaV?J!d`m`ueq;~I{b7ac(PJ&vfwlEd+=VGUgh?0HW>ahm<;|6yj*98-OiBZu#4~gaTc$8?xdGt z75+F&&?5gqHAu1tZ*z&?&9RyH&TZ+gb?)_hYn^L$V=n&byfl(@o+%M4Sp(fRak;dw zN2K;O56j#wg4vb)it8QNEz9@6GK395E>`G6*_Lm~p19Qpr^93?rO?hO@ zu2x*fucuw<9IH@zVrIV6N@(lzjCXlCQ=l9XdH1Ep+-A<_yJgR`=`r)J3fbn~8IYN| z_p=V>YiF^%&P;6SDXB_jj$f7*W+c2bYM0*rAC3rvfo1D#-obMi=RWW>vBJpoW#%^I zrbQnLy;nAsj_yxJK37Iw_54)z!G#TZ=?jomG#qCIc+n1+(wxmFUg>{NM$y5A_=U9W z{_%(^W~7-Y8{E}=x-la+RlV4kuppWF@JvQts@lKc@8uRT573uTu67|0663%*eJ9@L zIWMq;6>lIaDV;dn;n=Qp;&3Oy+5FcTJWJ5CaTn|42+Y^4Jb7KZ>VulCp_NBk^W0)cvn8FzulJ=DEE{x`v7@g6&D$YBYM?W+qtX}{k};2nX}&gOIYML4`M;AdKja!^(!UD^0bnvW%aZ$5&K87!Tz z4oK1|ku-d|L{kYgU^23_ZoeDARYCX6?Mc~#=NYiBh9;?a&7??=%6U6tiRHF3L%_KW zN*?g{G-vj=*{($>NuBORtWX8Lb2+4YNHbA7T{(~Ey%4{TKH-h>^DIi|Y&um1NpDz0 zx|J3Di&u!8eViXIG2)k8xD9X!pd!IG#~k@aa&Z)YZGH zVXgrt)htA&K`b!O;@{O&r(pkf{-y>o0gOs1MBpubshxzqGD&NqvWTBhaA*n%1Ls7b zkJ#UGbTx9pr84bL@WVTZPtU=5%R)Y5sauYc1dhF)(&I{vE7jhLpHSx)mfM|Y^%)vM z{t=%S=}>l&>%G5F!jgdBKZ#-t3lB@5$W^+RbAMXglXE!pRPw$lz@L%VIoHT|5Hpcnc%~x!E73LVGn1Tm!4tdHcfo@HI|^B`d`| zTG7_s;^RYTf!~)2wZO@`e1#hLJ*I3vor^lPq*@{Cu3O*T^33j@EsMK)Mc$btkDpEE zzJ6BfynUt?t=95ywW5Ru@fmW&@KUrM5XQ#unzoh{U_A`c@ugY)!+EH!{$UjF^`!Bl z)qwM8aT8-z!um8{S}Cf@VXe2`DM9r?&IHn#?66PnI5s1u=Y>z;FbKP6w* z1-{NY*LB@%jb6Sc;wS5e_PqQ3TIo(PE>oez$?O{3*~8C?egHeke_6BSZ|5-id)R)W z5tE6A!y-Q2DVLeH%isL@!<9tYC&E(3H$9n`M|l%-$dx;R8cm}Ik%cUSXnbLQF7}DeapZdP$?-JK zYH`qLAS8>`iQ8OY9+z)%qVI9zQ3a4co^r;x=t=8%pmpHA&?iN*Jw4V*85u)_apNuH z$5?ThDdahF3&?77(bzFg8f&pr4u1JKKNnbu`YZ-)0DuR5E)vCoZ*fA1+;J`|s)TMV zWAlX}J#R9Jf4Yw{6dDb4N&cJoI{5wT5B^-@R2#1i#JQLJj-{P`N) zD6=AZ{zLtM@e9BmPzvk?=&k@GErjEaKK2k{T$!mVSzI) z82MJryHRhcHsWp~;75RG0Y3$JdiMNHdu1W;FD&v9zy14`1K)DsTMm57fp0nREeF2k zz_%RumIL2%;Qwb1xV?zw9S(B-VHZ))JB-mZ)0aw`x z_ZD)P=l)V`vK~+x@xW5m14|5`7rlT-4LoY#Q3H=U8Bhm!1+W%?_UbnQTZv+UL!$?PE)ClE zhHms83b+UWo<1UA31AffF^WDr00#i*v(F^}`inzfahMBnz!R52q+N%=Dwv%BJbn8E zQUMMCXzkmIxJMrV?jLR@dSnLCqi&)Bs6TK6;0*K){1DLRcLIoU{d^J^+vna0AK#TL9q0@OH%SK;H;6AP-Olz_Ss% z0Y?zOn+&^x@n^3B>>zr47+?~h1W*A$y^$&a=o;AqI7>7N^+%!Js8;|e8-+29x`}y* z`er`>V>IKL`E>xETR@{l2M_?jXE_W&8%qa~h-YFZ0Qf`^-~^Nc)&ZITr-`glfMkFk zkO9CLb8w$y0H9qi#+6r%Sp^zLqkOa-5CGi9Z#^Ue`U8pqZveIujX|9;seq9H^f#se zfbrV%0h0lcmAxD=4^RtO4Ok1<4%i1c1Gq@^1n7EV001;S0Xm+z3IHD*pu>>_z<3=g zfHVM}%9F0szfp2@nHF2Mh&d1JHJ?0{}Y5J_qmuUI&~6 zoCUN2IuZ8;Kb?9&9suKVJ_A?+*aSdd&h3CB0JL+Wo$~_Glj!eB4FGa@asps70J3}% zV?-R4@{0iI_bG-MfLg#(z#0JXJ_Wo_0q;{SfJ1;=M6N8r2!I3N0)Q45+Pgrzs|o<# zx`4;E7_bWP3IKE0wH0s7lgwXhkm8vyjS1s)tB(bNLK3_vXa{FvGV*pG9f z{V^1yi2094YCnH*eM8B}`IoL2o!URJ|KjBGoyHi?1nt$O@9w?h{1T@V&CW7s87a-0 zkBur)DgHF-Cu>w2O&^&jK0J8eu5+V(O`}mR!10XuV3$2{KT5s`GtSJy!AU< z=Z+uxr@#Kkrusg6PH%|3eWlO8f;)oQtZXl$IOuoUA3pl@wHx-8fBNh{zD#W2Q+3_C zuGzJ3{}-wG(`Ib`!Ub{@|M%;Dugx48H-Kq)HZS(qc|ZAR!34|oKcD)~vOlE#Q_PIT zr^eSkZ_NJJ{@Jd7!3sCYto-g|{y&emYF<)&|H}T8!=L`%3B~>^yT3Yj#BtJk)c)0H z6RMK8ZNb=vFU5IWC*zGCzV4v1X;^dl)%PdAUHy+oH2pp`#H!bsHG7Yg9r$E79JNtf z%~4Mnd2A=E@A%K$S+nWH@AD2tPmk@Fx%{;QqbJaH)z4Ai{_|}_^&vy z>nH#E(-)O3iwd_{qyO@Gz&`lb|2|}>d$nfI?d3y{7+KrK)tO_e4zS!-ub#Fr$!_@a z;E!4z2fcF@&-s7x`mVi6KdX7iE Z=Dj!eyH&2k`LFG~{!fo5woYC0zW~A-!C3$R literal 0 HcmV?d00001 diff --git a/sdk/machines/octatrack/module-adapters/machine-ports.json b/sdk/machines/octatrack/module-adapters/machine-ports.json index dcad16af7..a24279dd7 100644 --- a/sdk/machines/octatrack/module-adapters/machine-ports.json +++ b/sdk/machines/octatrack/module-adapters/machine-ports.json @@ -218,7 +218,8 @@ "st_name_replay", "st_main_replay", "st_edit_replay", - "st_draw_replay" + "st_draw_replay", + "mg_stock_note_draw" ], "why": "VECTOR's st_* chooser hooks and their stock replays are unreachable in the package; its registry functions are the descriptor's, and its SRC SETUP page 2 (st_setup_page, st_setup_knob, which its card build's st_setup_draw6 and st_setup_edit6 call) the SETUP_PAGE record's" }, diff --git a/sdk/machines/octatrack/module-adapters/machine-recipes.json b/sdk/machines/octatrack/module-adapters/machine-recipes.json index 2585e28c6..4043942a2 100644 --- a/sdk/machines/octatrack/module-adapters/machine-recipes.json +++ b/sdk/machines/octatrack/module-adapters/machine-recipes.json @@ -6,7 +6,7 @@ "schema": 1, "imageSha256": "642d27796f5ee0100eed8477266a7aff77d8614b40da50b554218170a19d49c5", "sources": { - "sdk/machines/octatrack/module-adapters/machine-ports.json": "eefb1c8b6586d6b43d204235d376ee7a2b9902601254a2447257e96f38cad725", + "sdk/machines/octatrack/module-adapters/machine-ports.json": "0f5e610128904a6f5ca7db664b8447e6c363e9b713af55123b559a357fc93aee", "sdk/machines/octatrack/module-adapters/machine_ports.py": "bbb91f0c54c27043b54a9156cad01053531f2ef78fb13cc73e2b45f7fc7e8d6f", "sdk/octabam/modules/poly8/manifest.py": "f8759dbcbb246b247c195e61f0c0464fd0cdc0dd40b68dd8f74c03b46c584afc", "sdk/octabam/modules/poly8/polyphony.s": "c86a3a783c46ecdbb3b44341098f0c094c65b9a8d11716835c2d28c2d2d6ecee", @@ -57,7 +57,7 @@ "schema": 1, "imageSha256": "13047ca2595493c2389ad2265f39f8c04287f5c9021991197a5fded08faf75d0", "sources": { - "sdk/machines/octatrack/module-adapters/machine-ports.json": "eefb1c8b6586d6b43d204235d376ee7a2b9902601254a2447257e96f38cad725", + "sdk/machines/octatrack/module-adapters/machine-ports.json": "0f5e610128904a6f5ca7db664b8447e6c363e9b713af55123b559a357fc93aee", "sdk/machines/octatrack/module-adapters/machine_ports.py": "bbb91f0c54c27043b54a9156cad01053531f2ef78fb13cc73e2b45f7fc7e8d6f", "sdk/machines/octatrack/module-adapters/quantizer_runtime.py": "61425221199f37adf4be1e8b9c5bb1346067c8f56540a9a15047b400ed84a1aa", "sdk/octabam/modules/quantizer/manifest.py": "e0841437a471b000b448ce8417c8fd25cba1cf155aec488d08d2888f4c249394", @@ -121,7 +121,7 @@ "imageSha256": "11afe489011aa243c5bc579a824635f7d1334b17f0a21d554d897ceec3d3fb1a", "sources": { "sdk/machines/octatrack/module-adapters/fm_runtime.py": "ecf39c395bd8231d1dda340e1c6bc26e8473ba548cfa422f9a4ae4ff2bd6807e", - "sdk/machines/octatrack/module-adapters/machine-ports.json": "eefb1c8b6586d6b43d204235d376ee7a2b9902601254a2447257e96f38cad725", + "sdk/machines/octatrack/module-adapters/machine-ports.json": "0f5e610128904a6f5ca7db664b8447e6c363e9b713af55123b559a357fc93aee", "sdk/machines/octatrack/module-adapters/machine_ports.py": "bbb91f0c54c27043b54a9156cad01053531f2ef78fb13cc73e2b45f7fc7e8d6f", "sdk/octabam/modules/synth/machine.s": "de9d849bf0b6e5d5ad747df32ae5806e7f9516674a14ac74b1c15d73d30d280a", "sdk/octabam/modules/synth/manifest.py": "7854330aca001d2841de2fb384f0ca8adb7497db49dacc56da2815c1f444c0e6", @@ -408,67 +408,95 @@ }, "vector": { "schema": 1, - "imageSha256": "70187665697dd57baefc9b65480a564e7514c75bdbce9c3c6f5519d2953684ab", + "imageSha256": "f9c9af6ea8b5a8a714427d5f9313b2ca7b096c6403dea29ae868f156b826e2ae", "sources": { - "sdk/machines/octatrack/module-adapters/machine-ports.json": "eefb1c8b6586d6b43d204235d376ee7a2b9902601254a2447257e96f38cad725", + "sdk/machines/octatrack/module-adapters/machine-ports.json": "0f5e610128904a6f5ca7db664b8447e6c363e9b713af55123b559a357fc93aee", "sdk/machines/octatrack/module-adapters/machine_ports.py": "bbb91f0c54c27043b54a9156cad01053531f2ef78fb13cc73e2b45f7fc7e8d6f", - "sdk/machines/octatrack/module-adapters/vector_runtime.py": "799ca5fa3a3991dda266041eb7588775cc6dda3e71241a1df8784e781e34b45f", - "sdk/octabam/modules/vector/control.s": "1939a627870464126d138522173d0465d1abc790cdb4ad4bc29a15501484faf5", - "sdk/octabam/modules/vector/manifest.py": "4d921f24256038797a99671534885b0bb9a27eaa79261b11136cf0a95a75af21", + "sdk/machines/octatrack/module-adapters/vector_runtime.py": "536d1253991dfa246ca1f40543bc9dd19ab32bff6d074037fc6469615bf5cb40", + "sdk/octabam/modules/vector/control.s": "c95c74baa5e5d79d1c3edf0148b2c4a84daf4e5d61c1bff5eb3934626fd0a9be", + "sdk/octabam/modules/vector/manifest.py": "b9dec167f8bd4f1b691069cc89834f6c2a6717b874eb28629ef5c8c026d3d976", "sdk/runtime/loader/build.py": "5131901224dcd037c07f0233cadabd67eec2a952878bef5a92274dd3d6236c7d" }, "copies": [ { - "offset": 3410, + "offset": 34, + "length": 20, + "address": 1073802002, + "sha256": "4c14741dff5ce18a933b30875f7e3a0ac8d633db0096af8f7a7a31a88e1313b0", + "purpose": "vector: authored bytes coinciding with stock (strict scan), reconstructed from the identical bytes of the user's OS; review" + }, + { + "offset": 2230, + "length": 13, + "address": 1073808978, + "sha256": "b8d6267fd976a1257142c8ba1ef20d072cc8a79fa80af4e402ec2cf85ce747b6", + "purpose": "vector: authored bytes coinciding with stock (strict scan), reconstructed from the identical bytes of the user's OS; review" + }, + { + "offset": 5156, "length": 14, "address": 1074149512, "sha256": "079db88a4b98775059e3e9b221b27a5436dfe7bfaaa30ec1d8a805faea0e9fd6", "purpose": "vector: authored bytes coinciding with stock (strict scan), reconstructed from the identical bytes of the user's OS; review" }, { - "offset": 5602, + "offset": 8256, + "length": 15, + "address": 1073934426, + "sha256": "532ccfdbeda1f24a92dff3bff914f0c178f143a4ba52c4c6f82a50696eabf852", + "purpose": "vector: authored bytes coinciding with stock (strict scan), reconstructed from the identical bytes of the user's OS; review" + }, + { + "offset": 8724, + "length": 15, + "address": 1073934426, + "sha256": "532ccfdbeda1f24a92dff3bff914f0c178f143a4ba52c4c6f82a50696eabf852", + "purpose": "vector: authored bytes coinciding with stock (strict scan), reconstructed from the identical bytes of the user's OS; review" + }, + { + "offset": 10220, "length": 14, "address": 1074073374, "sha256": "5f460b9d4661db855641f1e3d7cb71cf2c6b0a6e8ad754886d283c9f1a3c5299", "purpose": "vector: authored bytes coinciding with stock (strict scan), reconstructed from the identical bytes of the user's OS; review" }, { - "offset": 7166, + "offset": 11868, "length": 12, "address": 1073882466, "sha256": "f6838b012beac6d6395527d401c6eabefbded04cd643d14afbf356781cb4aeb6", "purpose": "vector: authored bytes coinciding with stock (strict scan), reconstructed from the identical bytes of the user's OS; review" }, { - "offset": 10032, + "offset": 14734, "length": 14, "address": 1074237950, "sha256": "0939a4ca02b038ba72eec962b17c37d00c17ed240b08a4400cc3d071c8ebbe31", "purpose": "vector: authored bytes coinciding with stock (strict scan), reconstructed from the identical bytes of the user's OS; review" }, { - "offset": 11262, - "length": 14, - "address": 1074235542, - "sha256": "4be6e9d8ab86bfb63e91b242f2d2824f061a003fabd5eeea29fc4f33af158a54", + "offset": 16306, + "length": 15, + "address": 1074154280, + "sha256": "d67cfd82dafd98aad4cd46cc096c0b173290a1c84756fd7d881da9c25492bb2c", "purpose": "vector: authored bytes coinciding with stock (strict scan), reconstructed from the identical bytes of the user's OS; review" }, { - "offset": 11484, - "length": 20, - "address": 1073802002, - "sha256": "4c14741dff5ce18a933b30875f7e3a0ac8d633db0096af8f7a7a31a88e1313b0", + "offset": 16356, + "length": 16, + "address": 1074178428, + "sha256": "44d6e7638702c28959b44309e5f7c04a2d9dbd313666960cc1fa9036d028678c", "purpose": "vector: authored bytes coinciding with stock (strict scan), reconstructed from the identical bytes of the user's OS; review" }, { - "offset": 12200, + "offset": 21384, "length": 20, "address": 1074428104, "sha256": "96966986164a24f9ca5be84cca807a016a828da2bcc3167b831be52acad2a9a7", "purpose": "vector: authored bytes coinciding with stock (strict scan), reconstructed from the identical bytes of the user's OS; review" }, { - "offset": 12574, + "offset": 21758, "length": 12, "address": 1074100132, "sha256": "fa4871f504c0f71c15f06b76536f127ec74d257852ce50a1b9f16b3d14e8688c", @@ -483,7 +511,7 @@ "sources": { "sdk/machines/octatrack/module-adapters/analog_bd_runtime.py": "b9c0e0f96632a0d0ab5283387edaae1b604e4e82e27e26b3fdc1666867d31daf", "sdk/machines/octatrack/module-adapters/analog_bd_write_lease.py": "3e6a3766f32176e9be69627ef2b71272970f2d02a2088e77673946b640d365c7", - "sdk/machines/octatrack/module-adapters/machine-ports.json": "eefb1c8b6586d6b43d204235d376ee7a2b9902601254a2447257e96f38cad725", + "sdk/machines/octatrack/module-adapters/machine-ports.json": "0f5e610128904a6f5ca7db664b8447e6c363e9b713af55123b559a357fc93aee", "sdk/machines/octatrack/module-adapters/machine_ports.py": "bbb91f0c54c27043b54a9156cad01053531f2ef78fb13cc73e2b45f7fc7e8d6f", "sdk/machines/octatrack/module-adapters/stock_hook_write_lease.h": "ab14679a5faae84ef47d1ca37e46b3171da45252d12310e0b4458228be8334be", "sdk/octabam/modules/analog-bassdrum/control.s": "463dacf528e4996c7f21e97533391583329a2e3aabda95c87b7cd020dee7adb6", diff --git a/sdk/machines/octatrack/module-adapters/standalone-recipes.json b/sdk/machines/octatrack/module-adapters/standalone-recipes.json index d7ae0e1a5..b3d40eed1 100644 --- a/sdk/machines/octatrack/module-adapters/standalone-recipes.json +++ b/sdk/machines/octatrack/module-adapters/standalone-recipes.json @@ -1,563 +1,563 @@ { - "schema": 1, - "ports": { - "playmodes": { - "schema": 1, - "imageSha256": "8791721bb6f20898600bba88e600ad8710531c2a35db41a8299516dbc99f63b4", - "sources": { - "sdk/octabam/modules/playmodes/hooks.s": "55899e51737e76e9da1886353cc2330beb0f5b499e96c70fdd621172337332a3", - "sdk/octabam/modules/playmodes/manifest.py": "d1fc7d07762faa32c9fdc782b1b4fdcc527d2d2aba4530df69f013a0a4c4a4b8", - "sdk/octabam/modules/playmodes/generate.py": "b4d9cb0b38d5a946c53e4ccbf629c0cf16f59047f6a95360464acb89d6bf52a5", - "sdk/octabam/modules/playmodes/playmodes.s": "34a2464faadfd583c4fd9c773cfefd6e77c8125c291016a9b90942a2bb91f001", - "sdk/octabam/modules/playmodes/test_playmode.c": "25857c24842be4797e6a3b584c991a04329691591baf3f70a2944f69012187b4", - "sdk/octabam/modules/playmodes/test_adapter.c": "6765da074aa8f293081a3b2c824f81a589a7d4629e4c682c646ceb66a0804eb9", - "sdk/octabam/modules/playmodes/octamod.module.json": "2b8bb40bd95b908e4ca3a5d02fa642a33e2e7ccab71173cb54ba316dbc896e0e", - "sdk/octabam/modules/playmodes/playmode.c": "3c414a2eb48d3c198c369ee8924ed6608a0b55cf4fa03f57e424184f8485968e", - "sdk/octabam/modules/playmodes/verify.py": "377cc8d573ac98b1d9ec430b05f9d488bc8a37b8841cf6d9fbb64badafbf15ca", - "sdk/octabam/modules/playmodes/adapter.c": "b8786b2bfbfa9ed8f8b87ba0bdd98fbf4ed6cc0f16da8811e5cdfa3aa442fe9f", - "sdk/octabam/modules/playmodes/playmode.h": "1ba24397d193a3ca0ad4ed43652d19eef6ad7b0049bc26eb1265a21c69950ccc", - "sdk/octabam/modules/playmodes/evidence/performance.json": "8ecca1d6a7b6bebf49d306768f1d2e145e18d46bcfb8ae5044f47eb87030d1bd", - "sdk/octabam/modules/playmodes/media/capture.json": "98be9c2b0fe1e899be7d8c76d2e384e75d0cba9324975aee74c93f1675fc8eff", - "sdk/octabam/tools/remix/platform_build.py": "e72b7a29b45851addecf135ad520db98b66f5e10c5cd354adf37fb52d6c2e42f", - "sdk/octabam/tools/remix/machine_composition.py": "6be0efdccc78a4fd1fafdba0cf39fcdb9cf510e72bd26aa22e7cdfe06d857783", - "sdk/octabam/tools/remix/stock_guard.py": "b05e115afaa11d1507273bdcd26e05c25e7a6424d3e0fb4eb21d797194e508b3", - "sdk/octabam/tools/remix/index.py": "29a0090afb78aa6f5142aa1e862c8563badeb9ff0c78c03a458d5b2ad6e6104c", - "sdk/octabam/tools/remix/registry.py": "f3b2fbfb90b97db33e360603ccf3eb0a703913dddaad78c681b9676287ee23e5", - "sdk/octabam/tools/remix/keep.py": "18e1f485900768bd896507da4f6669199bc52466e7af7a1102d7d9a2bc03d305", - "sdk/octabam/tools/remix/geom.py": "6bf3e107cd45c1213f0c071ae65c2ab0b9037241b0d2b974813757f0e08d2997", - "sdk/octabam/tools/remix/ledger.py": "73407d159a965671da2255aef5864bd0c745dfa2a600575918f48c40fc170f83", - "sdk/octabam/tools/remix/__init__.py": "c925cdb1d084a4e2bd02f8f13e87204bff38ff4c40087ec86a8f2fe1395f83f9", - "sdk/octabam/tools/remix/rig.py": "975ee01f9e925c0170602db2e9bd0427bc9e3fc5a5b2d85a8829a701b2d20691", - "sdk/octabam/tools/remix/stock.py": "11a41e3176719776712e4aa719bdeab6a319bd04186aa9b954063392d8be919f", - "sdk/octabam/tools/remix/audition.py": "98cae0606138b98878d9d1b18fd4ecd541e99332beeec0c7b4c7b0fb5b6dfd43", - "sdk/octabam/tools/remix/runtime_build.py": "27d2d73d56716f7088f174364f057e0c041f29741885d7cfbb7d91e49cc8b6ba", - "sdk/octabam/tools/remix/selftest.py": "78f46022e4537eccf204e2bc3a3fdb683fd86c6cf0ee87f78ae5fe804cb17853", - "sdk/octabam/tools/remix/dsp_ranges.py": "085aca1208a672c91e8db2ea620a5a17eaa2b577f16f074ecb89fdf2bc23c300", - "sdk/octabam/tools/remix/detour_guard.py": "0235a68c70127e72815be0ef65e3dbba7655b46fb027b77cf3b82a6f7111145c", - "sdk/octabam/tools/remix/app.py": "33b2bf8374192241c9e2cdb0667d9ac52c66cde6be0cb9afd3e0b96c78e51fd1", - "sdk/octabam/tools/remix/grains.py": "d7e39aac08497b56679d68155f234b374d08b326356bc5e4ccd3030128a246a2", - "sdk/octabam/tools/remix/stock_copies.py": "c593de7f68d5df584eefcbd75a120bb1d72258646d3444a5a8db7e81a290e4b4", - "sdk/octabam/tools/remix/state.py": "acad0b6cac5c852acf7c5efefd59180457213a03ff707f219b34cebd2289042b", - "sdk/octabam/tools/remix/arena.py": "41c84bd9ab84873bf5f17adb42c4d895b679e0890fb79d120e61906b2f793d65", - "sdk/octabam/tools/remix/compile_cache.py": "74d7d08cdbad8ebf6e56d8be7041c9603197b6f7b089962d8fccd880bb592504", - "sdk/octabam/tools/remix/schema.py": "6843e02b1baf24572d77f9ecc9cac4c51644b48ca949d6eee6524408741b0fb3", - "sdk/runtime/loader/build.py": "5131901224dcd037c07f0233cadabd67eec2a952878bef5a92274dd3d6236c7d", - "sdk/machines/octatrack/module-adapters/standalone_runtime.py": "b2841ad6c500e3f4731221267d86d032c92dacfa604ce9e9ab85f36cb6489af3", - "sdk/machines/octatrack/module-adapters/stock_recipe.py": "662b79d9dc612845cf85e5051fa2d711cad4f98244194357fdaaabca092d5ca5", - "upstream/elekloader/link.py": "2d950474a5bd9d54e62747bfe7f9be30a37a7857df24cd9594e2198b912204f7", - "upstream/elekloader/dsp.py": "9486d64eecee023670b716f6ae854996da02ee7c1a0efd5361cd963c756dbc69", - "upstream/elekloader/patch.py": "13cc7457aa9a9e6d8f40cd5add4d40b69a3fcedd2cc5f3d65fd1b9841cc8bd9f", - "upstream/elekloader/elemod.py": "a14188eff1975df98660fa2c4efc310a9d8bc24fa042cd796e0ac680453df9cd", - "upstream/elekloader/mkmod.py": "716d1c6ded9c254b4e9081b0c4b3ec4ccfb7a9095b7978b253abcce921452718", - "upstream/elekloader/__init__.py": "0fa4969f9803f886b7ce0d82d151037670981f155f89328635e30ba77b99579d", - "upstream/elekloader/syx.py": "af8ccc0949b82135d9c591e0f983b50966c629037105305021b316f224e51deb", - "upstream/elekloader/formats.py": "4300d7f6b8692d80e68072e37af15c7706c7ef4b2b5ece646c552bc87e61ab29", - "upstream/elekloader/gui.py": "c4e5727bdc47da37baf6eb57126715e4fe5ae4e20c447f72ac2912fc51d3b543", - "upstream/elekloader/__main__.py": "726cc8870ca878c56aedd9519aad980a91fba0d889e55ed8fb5b5321a009f2a1", - "upstream/elekloader/elek.py": "5012a2a9edd4ce1a03062d333da36b47f72f241e4a26ce04885a905043e3080f", - "upstream/elekloader/lint.py": "468fc0cfd177b7646a0a4dc24f633775a8bc9a350f8c6bf0af8b29c12c762674", - "upstream/elekloader/isa/__init__.py": "df27c3c73735bf160a930231d5c138d848653d0820e870bb7544223afa3c6b7f", - "upstream/elekloader/isa/coldfire.py": "7936cd81549113d32781e5ae96f91e35c62d756ebfc509655cfa06dd00fa58df", - "upstream/elekloader/codec/transport.py": "b8ac543de1ff1e8c94c268256cc02ec02203145d4f5a1b4d87d50a4a34156d77", - "upstream/elekloader/codec/__init__.py": "df27c3c73735bf160a930231d5c138d848653d0820e870bb7544223afa3c6b7f", - "upstream/elekloader/codec/aplib.py": "26c86226e4ae07597012a869f97f90fd9506aed401a823506e6f8b8fc13456a1", - "upstream/elekloader/codec/elz.py": "bace6db7e69acc766c16cc0b4bc0ed9b33e53b91bfbc56e2c650b9c6417d65ec", - "upstream/elekloader/sdk/build.py": "81b6e5426a74f51d529a2c05207502bb25207b037b0e32329cdc1c70ca61c505", - "upstream/elekloader/sdk/octabam.py": "18cafc9e8d91917017a78330c22c3f51a2e0529abea7c292ffe8a364273802b4", - "upstream/elekloader/sdk/__init__.py": "365832fc180371d7cd356994a0e3bbd6892ac7de6b1c1f1c0b337a947c3fd148", - "upstream/elekloader/sdk/elf.py": "0b897766f03ffe8e15eaadc25935822b95f7a78fea65a1de132267680148f766", - "upstream/elekloader/devices/digitakt_mk2.py": "e074140afb03958610c9d018064ba0b840db6ec0e4974b67b87627445f3f40b5", - "upstream/elekloader/devices/digitone_mk1.py": "8f86b2384f2aae8b34fcee6036c3c347bf77c2d55dc24677649baa09a2e4adc0", - "upstream/elekloader/devices/__init__.py": "724ebe0ecf4d9447a5d66bba3c10b168f5abe5d2d8296b4447d3562b66141bec", - "upstream/elekloader/devices/octatrack.py": "110dbea9e71046994d4ae1f05638dbf6f8ab72388dca5ffc590e5e978ea38975", - "upstream/elekloader/devices/digitakt_mk1.py": "2126ee25bb30f98246a03e93e1766376ec975de751cf2c9b8e24f987e77fc022" - }, - "copies": [ - { - "offset": 3198, - "length": 15, - "address": 1073909732, - "sha256": "6f0382a91ff044f6a464025c1d7f03bad8b822cb49dbce8cda3ab60535f848c7", - "purpose": "Authored pm_per_track instruction span; reconstructed identically from guarded stock coincidence", - "authored": { - "source": "sdk/octabam/modules/playmodes/playmodes.s", - "lines": [ - 1271, - 1281 - ], - "symbol": "pm_per_track", - "method": "native-unit" - } - }, - { - "offset": 3530, - "length": 14, - "address": 1073882006, - "sha256": "eb5a0a000b0368e2a23847c4251da29f3f28ada9b50cf71ca177e11ae65d2aaf", - "purpose": "Authored pm_track_length instruction span; reconstructed identically from guarded stock coincidence", - "authored": { - "source": "sdk/octabam/modules/playmodes/playmodes.s", - "lines": [ - 1393, - 1402 - ], - "symbol": "pm_track_length", - "method": "native-unit" - } - }, - { - "offset": 6008, - "length": 13, - "address": 1073972194, - "sha256": "db509240d0b12958fad1adbe414340a8580949e5116ed3ceecac4e3b5cc6c005", - "purpose": "Authored pm_key_updown instruction span; reconstructed identically from guarded stock coincidence", - "authored": { - "source": "sdk/octabam/modules/playmodes/playmodes.s", - "lines": [ - 2226, - 2234 - ], - "symbol": "pm_key_updown", - "method": "native-unit" - } - }, - { - "offset": 7138, - "length": 12, - "address": 1074056994, - "sha256": "1c5975330c0ddc7a32f1d70c5735118826981c8a68a7bf3397c92d094e0e5385", - "purpose": "Authored pm_key_entry instruction span; reconstructed identically from guarded stock coincidence", - "authored": { - "source": "sdk/octabam/modules/playmodes/playmodes.s", - "lines": [ - 2712, - 2714 - ], - "symbol": "pm_key_entry", - "method": "native-unit" - } - }, - { - "offset": 7605, - "length": 13, - "address": 1074305305, - "sha256": "55eada7b38d544499ed47966c271580737bf1f50409d06e8c38d4289f836929f", - "purpose": "Authored pm_proj_write instruction span; reconstructed identically from guarded stock coincidence", - "authored": { - "source": "sdk/octabam/modules/playmodes/playmodes.s", - "lines": [ - 2950, - 2953 - ], - "symbol": "pm_proj_write", - "method": "native-unit" - } - } + "schema": 1, + "ports": { + "playmodes": { + "schema": 1, + "imageSha256": "8791721bb6f20898600bba88e600ad8710531c2a35db41a8299516dbc99f63b4", + "sources": { + "sdk/octabam/modules/playmodes/hooks.s": "55899e51737e76e9da1886353cc2330beb0f5b499e96c70fdd621172337332a3", + "sdk/octabam/modules/playmodes/manifest.py": "d1fc7d07762faa32c9fdc782b1b4fdcc527d2d2aba4530df69f013a0a4c4a4b8", + "sdk/octabam/modules/playmodes/generate.py": "b4d9cb0b38d5a946c53e4ccbf629c0cf16f59047f6a95360464acb89d6bf52a5", + "sdk/octabam/modules/playmodes/playmodes.s": "34a2464faadfd583c4fd9c773cfefd6e77c8125c291016a9b90942a2bb91f001", + "sdk/octabam/modules/playmodes/test_playmode.c": "25857c24842be4797e6a3b584c991a04329691591baf3f70a2944f69012187b4", + "sdk/octabam/modules/playmodes/test_adapter.c": "6765da074aa8f293081a3b2c824f81a589a7d4629e4c682c646ceb66a0804eb9", + "sdk/octabam/modules/playmodes/octamod.module.json": "2b8bb40bd95b908e4ca3a5d02fa642a33e2e7ccab71173cb54ba316dbc896e0e", + "sdk/octabam/modules/playmodes/playmode.c": "3c414a2eb48d3c198c369ee8924ed6608a0b55cf4fa03f57e424184f8485968e", + "sdk/octabam/modules/playmodes/verify.py": "377cc8d573ac98b1d9ec430b05f9d488bc8a37b8841cf6d9fbb64badafbf15ca", + "sdk/octabam/modules/playmodes/adapter.c": "b8786b2bfbfa9ed8f8b87ba0bdd98fbf4ed6cc0f16da8811e5cdfa3aa442fe9f", + "sdk/octabam/modules/playmodes/playmode.h": "1ba24397d193a3ca0ad4ed43652d19eef6ad7b0049bc26eb1265a21c69950ccc", + "sdk/octabam/modules/playmodes/evidence/performance.json": "8ecca1d6a7b6bebf49d306768f1d2e145e18d46bcfb8ae5044f47eb87030d1bd", + "sdk/octabam/modules/playmodes/media/capture.json": "98be9c2b0fe1e899be7d8c76d2e384e75d0cba9324975aee74c93f1675fc8eff", + "sdk/octabam/tools/remix/platform_build.py": "e72b7a29b45851addecf135ad520db98b66f5e10c5cd354adf37fb52d6c2e42f", + "sdk/octabam/tools/remix/machine_composition.py": "6be0efdccc78a4fd1fafdba0cf39fcdb9cf510e72bd26aa22e7cdfe06d857783", + "sdk/octabam/tools/remix/stock_guard.py": "b05e115afaa11d1507273bdcd26e05c25e7a6424d3e0fb4eb21d797194e508b3", + "sdk/octabam/tools/remix/index.py": "29a0090afb78aa6f5142aa1e862c8563badeb9ff0c78c03a458d5b2ad6e6104c", + "sdk/octabam/tools/remix/registry.py": "f3b2fbfb90b97db33e360603ccf3eb0a703913dddaad78c681b9676287ee23e5", + "sdk/octabam/tools/remix/keep.py": "18e1f485900768bd896507da4f6669199bc52466e7af7a1102d7d9a2bc03d305", + "sdk/octabam/tools/remix/geom.py": "6bf3e107cd45c1213f0c071ae65c2ab0b9037241b0d2b974813757f0e08d2997", + "sdk/octabam/tools/remix/ledger.py": "73407d159a965671da2255aef5864bd0c745dfa2a600575918f48c40fc170f83", + "sdk/octabam/tools/remix/__init__.py": "c925cdb1d084a4e2bd02f8f13e87204bff38ff4c40087ec86a8f2fe1395f83f9", + "sdk/octabam/tools/remix/rig.py": "975ee01f9e925c0170602db2e9bd0427bc9e3fc5a5b2d85a8829a701b2d20691", + "sdk/octabam/tools/remix/stock.py": "11a41e3176719776712e4aa719bdeab6a319bd04186aa9b954063392d8be919f", + "sdk/octabam/tools/remix/audition.py": "98cae0606138b98878d9d1b18fd4ecd541e99332beeec0c7b4c7b0fb5b6dfd43", + "sdk/octabam/tools/remix/runtime_build.py": "27d2d73d56716f7088f174364f057e0c041f29741885d7cfbb7d91e49cc8b6ba", + "sdk/octabam/tools/remix/selftest.py": "78f46022e4537eccf204e2bc3a3fdb683fd86c6cf0ee87f78ae5fe804cb17853", + "sdk/octabam/tools/remix/dsp_ranges.py": "085aca1208a672c91e8db2ea620a5a17eaa2b577f16f074ecb89fdf2bc23c300", + "sdk/octabam/tools/remix/detour_guard.py": "0235a68c70127e72815be0ef65e3dbba7655b46fb027b77cf3b82a6f7111145c", + "sdk/octabam/tools/remix/app.py": "33b2bf8374192241c9e2cdb0667d9ac52c66cde6be0cb9afd3e0b96c78e51fd1", + "sdk/octabam/tools/remix/grains.py": "d7e39aac08497b56679d68155f234b374d08b326356bc5e4ccd3030128a246a2", + "sdk/octabam/tools/remix/stock_copies.py": "c593de7f68d5df584eefcbd75a120bb1d72258646d3444a5a8db7e81a290e4b4", + "sdk/octabam/tools/remix/state.py": "acad0b6cac5c852acf7c5efefd59180457213a03ff707f219b34cebd2289042b", + "sdk/octabam/tools/remix/arena.py": "41c84bd9ab84873bf5f17adb42c4d895b679e0890fb79d120e61906b2f793d65", + "sdk/octabam/tools/remix/compile_cache.py": "74d7d08cdbad8ebf6e56d8be7041c9603197b6f7b089962d8fccd880bb592504", + "sdk/octabam/tools/remix/schema.py": "6843e02b1baf24572d77f9ecc9cac4c51644b48ca949d6eee6524408741b0fb3", + "sdk/runtime/loader/build.py": "5131901224dcd037c07f0233cadabd67eec2a952878bef5a92274dd3d6236c7d", + "sdk/machines/octatrack/module-adapters/standalone_runtime.py": "b2841ad6c500e3f4731221267d86d032c92dacfa604ce9e9ab85f36cb6489af3", + "sdk/machines/octatrack/module-adapters/stock_recipe.py": "662b79d9dc612845cf85e5051fa2d711cad4f98244194357fdaaabca092d5ca5", + "upstream/elekloader/link.py": "2d950474a5bd9d54e62747bfe7f9be30a37a7857df24cd9594e2198b912204f7", + "upstream/elekloader/dsp.py": "9486d64eecee023670b716f6ae854996da02ee7c1a0efd5361cd963c756dbc69", + "upstream/elekloader/patch.py": "13cc7457aa9a9e6d8f40cd5add4d40b69a3fcedd2cc5f3d65fd1b9841cc8bd9f", + "upstream/elekloader/elemod.py": "a14188eff1975df98660fa2c4efc310a9d8bc24fa042cd796e0ac680453df9cd", + "upstream/elekloader/mkmod.py": "716d1c6ded9c254b4e9081b0c4b3ec4ccfb7a9095b7978b253abcce921452718", + "upstream/elekloader/__init__.py": "0fa4969f9803f886b7ce0d82d151037670981f155f89328635e30ba77b99579d", + "upstream/elekloader/syx.py": "af8ccc0949b82135d9c591e0f983b50966c629037105305021b316f224e51deb", + "upstream/elekloader/formats.py": "4300d7f6b8692d80e68072e37af15c7706c7ef4b2b5ece646c552bc87e61ab29", + "upstream/elekloader/gui.py": "c4e5727bdc47da37baf6eb57126715e4fe5ae4e20c447f72ac2912fc51d3b543", + "upstream/elekloader/__main__.py": "726cc8870ca878c56aedd9519aad980a91fba0d889e55ed8fb5b5321a009f2a1", + "upstream/elekloader/elek.py": "5012a2a9edd4ce1a03062d333da36b47f72f241e4a26ce04885a905043e3080f", + "upstream/elekloader/lint.py": "468fc0cfd177b7646a0a4dc24f633775a8bc9a350f8c6bf0af8b29c12c762674", + "upstream/elekloader/isa/__init__.py": "df27c3c73735bf160a930231d5c138d848653d0820e870bb7544223afa3c6b7f", + "upstream/elekloader/isa/coldfire.py": "7936cd81549113d32781e5ae96f91e35c62d756ebfc509655cfa06dd00fa58df", + "upstream/elekloader/codec/transport.py": "b8ac543de1ff1e8c94c268256cc02ec02203145d4f5a1b4d87d50a4a34156d77", + "upstream/elekloader/codec/__init__.py": "df27c3c73735bf160a930231d5c138d848653d0820e870bb7544223afa3c6b7f", + "upstream/elekloader/codec/aplib.py": "26c86226e4ae07597012a869f97f90fd9506aed401a823506e6f8b8fc13456a1", + "upstream/elekloader/codec/elz.py": "bace6db7e69acc766c16cc0b4bc0ed9b33e53b91bfbc56e2c650b9c6417d65ec", + "upstream/elekloader/sdk/build.py": "81b6e5426a74f51d529a2c05207502bb25207b037b0e32329cdc1c70ca61c505", + "upstream/elekloader/sdk/octabam.py": "18cafc9e8d91917017a78330c22c3f51a2e0529abea7c292ffe8a364273802b4", + "upstream/elekloader/sdk/__init__.py": "365832fc180371d7cd356994a0e3bbd6892ac7de6b1c1f1c0b337a947c3fd148", + "upstream/elekloader/sdk/elf.py": "0b897766f03ffe8e15eaadc25935822b95f7a78fea65a1de132267680148f766", + "upstream/elekloader/devices/digitakt_mk2.py": "e074140afb03958610c9d018064ba0b840db6ec0e4974b67b87627445f3f40b5", + "upstream/elekloader/devices/digitone_mk1.py": "8f86b2384f2aae8b34fcee6036c3c347bf77c2d55dc24677649baa09a2e4adc0", + "upstream/elekloader/devices/__init__.py": "724ebe0ecf4d9447a5d66bba3c10b168f5abe5d2d8296b4447d3562b66141bec", + "upstream/elekloader/devices/octatrack.py": "110dbea9e71046994d4ae1f05638dbf6f8ab72388dca5ffc590e5e978ea38975", + "upstream/elekloader/devices/digitakt_mk1.py": "2126ee25bb30f98246a03e93e1766376ec975de751cf2c9b8e24f987e77fc022" + }, + "copies": [ + { + "offset": 3198, + "length": 15, + "address": 1073909732, + "sha256": "6f0382a91ff044f6a464025c1d7f03bad8b822cb49dbce8cda3ab60535f848c7", + "purpose": "Authored pm_per_track instruction span; reconstructed identically from guarded stock coincidence", + "authored": { + "source": "sdk/octabam/modules/playmodes/playmodes.s", + "lines": [ + 1271, + 1281 ], - "fills": [] + "symbol": "pm_per_track", + "method": "native-unit" + } }, - "tapeecho": { - "schema": 1, - "imageSha256": "def1bc39f8bc9e998cf49b7df6ab36725f42f460b1e73c079238ebc4c25caded", - "sources": { - "sdk/octabam/modules/tapeecho/cpu_hooks.s": "d1d959af91fbd0759191c5e244b4396613d18c057c8e65281d76cb67beb73e34", - "sdk/octabam/modules/tapeecho/cpu.c": "bbb50e96305a64f99d72045defa40d09ab3e8fc910e717d8122dd1f070de35a7", - "sdk/octabam/modules/tapeecho/time_fmt.s": "f50337532bbd802f67bb3c93d975405c2e386ec2a75bf525a814b9f9756f9d15", - "sdk/octabam/modules/tapeecho/cpu_tables.h": "1d2e3e062651f021ca94fd19339dde824bcf49c4d867da790c20957dd24db9b2", - "sdk/octabam/modules/tapeecho/manifest.py": "8444fc496776df2c719401f6967aba44a5922e15f0906268286663d012dd94b8", - "sdk/octabam/modules/tapeecho/octamod.module.json": "9784954380cba4ec5d5f9440eb188dd65ff885d09192ed534a117a1a5f761d58", - "sdk/octabam/modules/tapeecho/cpu_kernels.s": "1cb1d400cbf0f0b7a75dc0ea13f6afc70b56221f2d45f424f7f58fa79ce6347f", - "sdk/octabam/modules/tapeecho/cpu.s": "783901f817efc5496c9b6178367459cfae1fe036adfd2a5be3a89d62e37906b6", - "sdk/octabam/modules/tapeecho/cpu_passthrough.asm": "68ef0beaa213de43e116d2feb367b437ef8c73c7f7b1c07328fde2d72edb3fdc", - "sdk/octabam/modules/tapeecho/cpu.h": "d07d496a62b95f23f8c2cbd893a0125e8a67071e83bf2c642e14251e48e69ff3", - "sdk/octabam/modules/tapeecho/generate_tables.py": "3461b659e2f22d7da776eb87755610094a4a3e72609c875e82902a8da9a8a69c", - "sdk/octabam/modules/tapeecho/generate_cpu.py": "09477f59af29dc6b68458454f818ec999339f4f4eefadb979cc13236ce431353", - "sdk/octabam/modules/tapeecho/media/capture.json": "8e0627d47f074322917978cd4abf505d82d9b53ece8e8c2b1ad280b69cd2902b", - "sdk/octabam/tools/remix/platform_build.py": "e72b7a29b45851addecf135ad520db98b66f5e10c5cd354adf37fb52d6c2e42f", - "sdk/octabam/tools/remix/machine_composition.py": "6be0efdccc78a4fd1fafdba0cf39fcdb9cf510e72bd26aa22e7cdfe06d857783", - "sdk/octabam/tools/remix/stock_guard.py": "b05e115afaa11d1507273bdcd26e05c25e7a6424d3e0fb4eb21d797194e508b3", - "sdk/octabam/tools/remix/index.py": "29a0090afb78aa6f5142aa1e862c8563badeb9ff0c78c03a458d5b2ad6e6104c", - "sdk/octabam/tools/remix/registry.py": "f3b2fbfb90b97db33e360603ccf3eb0a703913dddaad78c681b9676287ee23e5", - "sdk/octabam/tools/remix/keep.py": "18e1f485900768bd896507da4f6669199bc52466e7af7a1102d7d9a2bc03d305", - "sdk/octabam/tools/remix/geom.py": "6bf3e107cd45c1213f0c071ae65c2ab0b9037241b0d2b974813757f0e08d2997", - "sdk/octabam/tools/remix/ledger.py": "73407d159a965671da2255aef5864bd0c745dfa2a600575918f48c40fc170f83", - "sdk/octabam/tools/remix/__init__.py": "c925cdb1d084a4e2bd02f8f13e87204bff38ff4c40087ec86a8f2fe1395f83f9", - "sdk/octabam/tools/remix/rig.py": "975ee01f9e925c0170602db2e9bd0427bc9e3fc5a5b2d85a8829a701b2d20691", - "sdk/octabam/tools/remix/stock.py": "11a41e3176719776712e4aa719bdeab6a319bd04186aa9b954063392d8be919f", - "sdk/octabam/tools/remix/audition.py": "98cae0606138b98878d9d1b18fd4ecd541e99332beeec0c7b4c7b0fb5b6dfd43", - "sdk/octabam/tools/remix/runtime_build.py": "27d2d73d56716f7088f174364f057e0c041f29741885d7cfbb7d91e49cc8b6ba", - "sdk/octabam/tools/remix/selftest.py": "78f46022e4537eccf204e2bc3a3fdb683fd86c6cf0ee87f78ae5fe804cb17853", - "sdk/octabam/tools/remix/dsp_ranges.py": "085aca1208a672c91e8db2ea620a5a17eaa2b577f16f074ecb89fdf2bc23c300", - "sdk/octabam/tools/remix/detour_guard.py": "0235a68c70127e72815be0ef65e3dbba7655b46fb027b77cf3b82a6f7111145c", - "sdk/octabam/tools/remix/app.py": "33b2bf8374192241c9e2cdb0667d9ac52c66cde6be0cb9afd3e0b96c78e51fd1", - "sdk/octabam/tools/remix/grains.py": "d7e39aac08497b56679d68155f234b374d08b326356bc5e4ccd3030128a246a2", - "sdk/octabam/tools/remix/stock_copies.py": "c593de7f68d5df584eefcbd75a120bb1d72258646d3444a5a8db7e81a290e4b4", - "sdk/octabam/tools/remix/state.py": "acad0b6cac5c852acf7c5efefd59180457213a03ff707f219b34cebd2289042b", - "sdk/octabam/tools/remix/arena.py": "41c84bd9ab84873bf5f17adb42c4d895b679e0890fb79d120e61906b2f793d65", - "sdk/octabam/tools/remix/compile_cache.py": "74d7d08cdbad8ebf6e56d8be7041c9603197b6f7b089962d8fccd880bb592504", - "sdk/octabam/tools/remix/schema.py": "6843e02b1baf24572d77f9ecc9cac4c51644b48ca949d6eee6524408741b0fb3", - "sdk/runtime/loader/build.py": "5131901224dcd037c07f0233cadabd67eec2a952878bef5a92274dd3d6236c7d", - "sdk/machines/octatrack/module-adapters/standalone_runtime.py": "3a7559a330ae4f031c7c47b7cb67f679cd7fb4e4f2aa69f2e3971940be4c46ae", - "sdk/machines/octatrack/module-adapters/stock_recipe.py": "662b79d9dc612845cf85e5051fa2d711cad4f98244194357fdaaabca092d5ca5", - "scripts/octatrack-module-page.mjs": "8faa5b3822f2de023a8cad593d863bea36ed9bbd4c6d3c48b77c02d5844b672c", - "src/engine/menu-formatters.ts": "c90fa33acb37429e8f9d1f17adc569931467f686990f07ab34e3a1130468a48f", - "src/engine/rom-package.ts": "08a8a7329e11f431561546c09379b92ebca26903bd9c4d7cd81e95ad675dc060", - "src/engine/coldfire-elf.ts": "319ca0d835d1b0c602c8f4b06990016d0ebfe246cedbfc596cea3cc7adfe3cd2", - "src/engine/module-build.ts": "dcd8397b8cecf6fab61debd9aa2f86f612da0ca6ccf363c79d56033bc170b993", - "src/catalog/modules.ts": "e268c6d42e4d5093ab943aed5cf2263a72e6d5e1a7ac0e72efc8a7ec6c62b89b", - "src/engine/assets/dsp-packages.json": "39c8b95b6c8909841038fe7e79929dd83e2014d203746284f344815dadbf798e", - "src/engine/assets/descriptor-recipes.json": "6ac6d53faa5e784efbbfca7024d84f4c44bdb2285fc9a61f2af16910671555ba", - "src/engine/assets/menu-recipes.json": "43d552429e5b8f20c785ab40e0d0218105ac0b55099aa405283870ab287a90de", - "src/engine/assets/rom-packages.json": "c0bd9cbf1d626de22b1996b9676c7640ca7c31932a26a1e554ec308882e93b51", - "upstream/elekloader/link.py": "5d31157ccbe62807ff9f05fd47e1e55b54be0475ab53565e6607a56566603ba8", - "upstream/elekloader/dsp.py": "9486d64eecee023670b716f6ae854996da02ee7c1a0efd5361cd963c756dbc69", - "upstream/elekloader/patch.py": "77c0a74bf4b0ff8c5525d4c4b1bc42af765314a4601c0510577817a7487d8666", - "upstream/elekloader/store.py": "1f20970b0da2a89a64847c337045f4d33b43038d670cf542f4ad03c01ada296d", - "upstream/elekloader/elemod.py": "7536f9bee1e16876662bee03b1d80f81ca705e36b12b9f8ae060e1f8ae873228", - "upstream/elekloader/mkmod.py": "716d1c6ded9c254b4e9081b0c4b3ec4ccfb7a9095b7978b253abcce921452718", - "upstream/elekloader/__init__.py": "eb28d2a32bf87b72fe4f792e55ce37f50c23042f573cf75275f6983731ed8779", - "upstream/elekloader/syx.py": "0ef9a2154ab2c100ab1cd7d09b48923916aa663c722418b8f6f4d500a56084f6", - "upstream/elekloader/formats.py": "715b0ca1c6bb96e41ab73338a6e625f33949d95599f58d94cd37e86ad0544b4e", - "upstream/elekloader/gui.py": "0d9b289bf72e6b7b23280fe099a92ee80c7007ca484a72fadc37147a4f9e8056", - "upstream/elekloader/__main__.py": "726cc8870ca878c56aedd9519aad980a91fba0d889e55ed8fb5b5321a009f2a1", - "upstream/elekloader/elek.py": "5012a2a9edd4ce1a03062d333da36b47f72f241e4a26ce04885a905043e3080f", - "upstream/elekloader/lint.py": "8eeb918e9c2d0d8a20ffa26df326834ddff2676090624a587c1902d3dee76e9c", - "upstream/elekloader/sdk/build.py": "a602ea4c24d80a653c2c6f6786399016503a5294674d942e97e7895983108592", - "upstream/elekloader/sdk/coresites.py": "27c1c90ca6a96e0b7b9e9eaeae2e5709a991967eaf7db5199af955e9fe0e8589", - "upstream/elekloader/sdk/bounties.py": "55170aa1cf763e3dd1d5cef7b86ccbf12e6ec4beebb7f709ac42469f9f8020cd", - "upstream/elekloader/sdk/octabam.py": "26103cf846bc7a3d038ae5f213bef614b35144293539e3721e31affc0e4eda7a", - "upstream/elekloader/sdk/__init__.py": "365832fc180371d7cd356994a0e3bbd6892ac7de6b1c1f1c0b337a947c3fd148", - "upstream/elekloader/sdk/elf.py": "0b897766f03ffe8e15eaadc25935822b95f7a78fea65a1de132267680148f766", - "upstream/elekloader/devices/digitakt_mk2.py": "e074140afb03958610c9d018064ba0b840db6ec0e4974b67b87627445f3f40b5", - "upstream/elekloader/devices/digitone_mk1.py": "ddd084da185af114eeda708634a56e6601bf1d365c43d750a69b5c959d1c1900", - "upstream/elekloader/devices/__init__.py": "8b350354c5b1e1e2ffc0bb4f3a446b9267d29c807163a84da9312aa31a888208", - "upstream/elekloader/devices/model_samples.py": "2d441ab41233a228cf98894bede7e745d48eb56d85ff3d4fabe5a3045ff61e47", - "upstream/elekloader/devices/analog_rytm_mk2.py": "07cae57bf241981c9aee8f1953ac69f0f24b9bfd9764910fc85fbc8c761a953b", - "upstream/elekloader/devices/model_cycles.py": "cfa5b27f1075669589f892f65c1bb55433a6cf12477076f4612b6531fdf37cb7", - "upstream/elekloader/devices/analog_four_mk2.py": "60effb1531138bceafc93d5a99fb574da51c381c39679c2b5b9f229070761102", - "upstream/elekloader/devices/octatrack.py": "6d062387e822a88f9629ba88667f031c5a933098d206377d2b18190ff87e346b", - "upstream/elekloader/devices/digitakt_mk1.py": "ce3df4e8b65f4d8c2265a2c0fb224ab28640b139ffcf8c98731b9561b0aae07b", - "sdk/firmware_codec/__init__.py": "0864c063d8c45793479098c425dbd4ec34b7d14acf781c1eaa8f65805e5016ca", - "sdk/firmware_codec/aplib.py": "b1c6473b3bc81cfa4301f599693e7959c78fa0b033ba8c3d31f560fcc41e4d2a", - "sdk/firmware_codec/coldfire.py": "c3b3736273ced01afd89cd75dd7ba78f6a3b0e0800971173bbc16e89bf1f56be", - "sdk/firmware_codec/elz.py": "417eb28fbadcfdfb4f4efa56a7c88d7f4d248953f668fb308f56796acb37049f", - "sdk/firmware_codec/transport.py": "30f1b71c28cf4c57fdbe38c0e535465cc2f29503ef348888a68940f93f070ae5" - }, - "copies": [ - { - "offset": 676, - "length": 16, - "address": 1073984446, - "sha256": "2208dade979a9235783eacb36cdde6fac1f68a1c1e97629678e6ef71eaa7643b", - "purpose": "Authored free instruction span; reconstructed identically from guarded stock coincidence", - "authored": { - "source": "sdk/octabam/modules/tapeecho/time_fmt.s", - "lines": [ - 46, - 49 - ], - "symbol": "free", - "method": "native-formatter" - } - }, - { - "offset": 3076, - "length": 18, - "address": 1073753950, - "sha256": "1e998d15e30ac012a8b3cd88d4588e8f85d7921a2850b0551b2259a84752a995", - "purpose": "Authored render_head instruction span; reconstructed identically from guarded stock coincidence", - "authored": { - "source": "sdk/octabam/modules/tapeecho/cpu.s", - "lines": [ - 915, - 919 - ], - "symbol": "render_head", - "method": "native-unit" - } - }, - { - "offset": 3100, - "length": 26, - "address": 1074366192, - "sha256": "90dc32b1ff6203f13faaba47d8a89d606c770746e69ea8010df241e1241fd9c5", - "purpose": "Authored render_head instruction span; reconstructed identically from guarded stock coincidence", - "authored": { - "source": "sdk/octabam/modules/tapeecho/cpu.s", - "lines": [ - 921, - 927 - ], - "symbol": "render_head", - "method": "native-unit" - } - }, - { - "offset": 3462, - "length": 19, - "address": 1074375602, - "sha256": "3fd2ea50644e110d89a47a30180101283abeae689e44d39c646c941fea217965", - "purpose": "Authored te_target instruction span; reconstructed identically from guarded stock coincidence", - "authored": { - "source": "sdk/octabam/modules/tapeecho/cpu.s", - "lines": [ - 1055, - 1060 - ], - "symbol": "te_target", - "method": "native-unit" - } - }, - { - "offset": 7462, - "length": 13, - "address": 1073973354, - "sha256": "2393ebbe40716982dc0fc11a30e3e53f13d60755b68dc8f156a4cf02ec77c2f2", - "purpose": "Authored te_filter_block instruction span; reconstructed identically from guarded stock coincidence", - "authored": { - "source": "sdk/octabam/modules/tapeecho/cpu.s", - "lines": [ - 27285, - 27332 - ], - "symbol": "te_filter_block", - "method": "native-unit" - } - }, - { - "offset": 8940, - "length": 8, - "address": 1073897668, - "sha256": "8937904adb028ee826e1da6e9593b99222dd3fb141bbaa852b54ef596f94054f", - "purpose": "Authored te_tape_block instruction span; reconstructed identically from guarded stock coincidence", - "authored": { - "source": "sdk/octabam/modules/tapeecho/cpu.s", - "lines": [ - 27523, - 27524 - ], - "symbol": "te_tape_block", - "method": "native-unit" - } - }, - { - "offset": 8948, - "length": 16, - "address": 1073745896, - "sha256": "324b9e08fe60e608cbdebbbd690d3efdac6a0fc7a2ec6b9756fc1f64e1ef5281", - "purpose": "Authored te_read_linear instruction span; reconstructed identically from guarded stock coincidence", - "authored": { - "source": "sdk/octabam/modules/tapeecho/cpu.s", - "lines": [ - 27525, - 27545 - ], - "symbol": "te_read_linear", - "method": "native-unit" - } - } + { + "offset": 3530, + "length": 14, + "address": 1073882006, + "sha256": "eb5a0a000b0368e2a23847c4251da29f3f28ada9b50cf71ca177e11ae65d2aaf", + "purpose": "Authored pm_track_length instruction span; reconstructed identically from guarded stock coincidence", + "authored": { + "source": "sdk/octabam/modules/playmodes/playmodes.s", + "lines": [ + 1393, + 1402 ], - "fills": [] + "symbol": "pm_track_length", + "method": "native-unit" + } }, - "euclid": { - "schema": 1, - "imageSha256": "5fc73790f3419521044aa8dab4bf08e44436a9d89797cf157777923cbf7e442b", - "sources": { - "sdk/octabam/modules/euclid/control.s": "5a7881df366f6c7ec83c9b1a7cfe8825aedbe8af933ecf155c156223c744c263", - "sdk/octabam/modules/euclid/control.h": "3b46d1ec81f83942c0303bbb146cbd3509cabd7e030c4ed1d6ff7304181bb7b2", - "sdk/octabam/modules/euclid/hooks.s": "597006c7fd73fc9956170f284deb47a2ddd13c8f20e7a9669ef51fa469f767d1", - "sdk/octabam/modules/euclid/manifest.py": "e43eac70260eda028417be31773b2cd3abf4bf60698ca5968704de3774d1f31a", - "sdk/octabam/modules/euclid/octamod.module.json": "fec0b22a202a1e4a7f51d1fcab5e056841a603d3ffe49a00156cb19d36357eac", - "sdk/octabam/modules/euclid/control.c": "bb49a94ac7d63eb9d33258c995026d6ad8ac1843dbe8be1c2f944a6a38bd8333", - "sdk/octabam/modules/euclid/generate_control.py": "64e711025c513d5c3c933dbecf73a95e1193bb9a7ab31a11ad28906246dbf6fd", - "sdk/octabam/modules/euclid/filter.asm": "b0fef9bfb99aabc67de2bd452feba6ae045603340b7d56405140d2afc3a0f35e", - "sdk/octabam/modules/euclid/media/audio-preview.json": "566a6c339eaffab1936a40826ef2a9fdb552c519b635d1bfacec955a8b817b00", - "sdk/octabam/modules/euclid/media/capture.json": "787927d11f68c1e148032d2098e1ce9486cae7d2bc293595cc2308d105c5dd75", - "sdk/octabam/tools/remix/platform_build.py": "e72b7a29b45851addecf135ad520db98b66f5e10c5cd354adf37fb52d6c2e42f", - "sdk/octabam/tools/remix/machine_composition.py": "6be0efdccc78a4fd1fafdba0cf39fcdb9cf510e72bd26aa22e7cdfe06d857783", - "sdk/octabam/tools/remix/stock_guard.py": "b05e115afaa11d1507273bdcd26e05c25e7a6424d3e0fb4eb21d797194e508b3", - "sdk/octabam/tools/remix/index.py": "29a0090afb78aa6f5142aa1e862c8563badeb9ff0c78c03a458d5b2ad6e6104c", - "sdk/octabam/tools/remix/registry.py": "f3b2fbfb90b97db33e360603ccf3eb0a703913dddaad78c681b9676287ee23e5", - "sdk/octabam/tools/remix/keep.py": "18e1f485900768bd896507da4f6669199bc52466e7af7a1102d7d9a2bc03d305", - "sdk/octabam/tools/remix/geom.py": "6bf3e107cd45c1213f0c071ae65c2ab0b9037241b0d2b974813757f0e08d2997", - "sdk/octabam/tools/remix/ledger.py": "73407d159a965671da2255aef5864bd0c745dfa2a600575918f48c40fc170f83", - "sdk/octabam/tools/remix/__init__.py": "c925cdb1d084a4e2bd02f8f13e87204bff38ff4c40087ec86a8f2fe1395f83f9", - "sdk/octabam/tools/remix/rig.py": "975ee01f9e925c0170602db2e9bd0427bc9e3fc5a5b2d85a8829a701b2d20691", - "sdk/octabam/tools/remix/stock.py": "11a41e3176719776712e4aa719bdeab6a319bd04186aa9b954063392d8be919f", - "sdk/octabam/tools/remix/audition.py": "98cae0606138b98878d9d1b18fd4ecd541e99332beeec0c7b4c7b0fb5b6dfd43", - "sdk/octabam/tools/remix/runtime_build.py": "27d2d73d56716f7088f174364f057e0c041f29741885d7cfbb7d91e49cc8b6ba", - "sdk/octabam/tools/remix/selftest.py": "78f46022e4537eccf204e2bc3a3fdb683fd86c6cf0ee87f78ae5fe804cb17853", - "sdk/octabam/tools/remix/dsp_ranges.py": "085aca1208a672c91e8db2ea620a5a17eaa2b577f16f074ecb89fdf2bc23c300", - "sdk/octabam/tools/remix/detour_guard.py": "0235a68c70127e72815be0ef65e3dbba7655b46fb027b77cf3b82a6f7111145c", - "sdk/octabam/tools/remix/app.py": "33b2bf8374192241c9e2cdb0667d9ac52c66cde6be0cb9afd3e0b96c78e51fd1", - "sdk/octabam/tools/remix/grains.py": "d7e39aac08497b56679d68155f234b374d08b326356bc5e4ccd3030128a246a2", - "sdk/octabam/tools/remix/stock_copies.py": "c593de7f68d5df584eefcbd75a120bb1d72258646d3444a5a8db7e81a290e4b4", - "sdk/octabam/tools/remix/state.py": "acad0b6cac5c852acf7c5efefd59180457213a03ff707f219b34cebd2289042b", - "sdk/octabam/tools/remix/arena.py": "41c84bd9ab84873bf5f17adb42c4d895b679e0890fb79d120e61906b2f793d65", - "sdk/octabam/tools/remix/compile_cache.py": "74d7d08cdbad8ebf6e56d8be7041c9603197b6f7b089962d8fccd880bb592504", - "sdk/octabam/tools/remix/schema.py": "6843e02b1baf24572d77f9ecc9cac4c51644b48ca949d6eee6524408741b0fb3", - "sdk/runtime/loader/build.py": "5131901224dcd037c07f0233cadabd67eec2a952878bef5a92274dd3d6236c7d", - "sdk/machines/octatrack/module-adapters/standalone_runtime.py": "3a7559a330ae4f031c7c47b7cb67f679cd7fb4e4f2aa69f2e3971940be4c46ae", - "sdk/machines/octatrack/module-adapters/stock_recipe.py": "662b79d9dc612845cf85e5051fa2d711cad4f98244194357fdaaabca092d5ca5", - "scripts/octatrack-module-page.mjs": "8faa5b3822f2de023a8cad593d863bea36ed9bbd4c6d3c48b77c02d5844b672c", - "src/engine/menu-formatters.ts": "c90fa33acb37429e8f9d1f17adc569931467f686990f07ab34e3a1130468a48f", - "src/engine/rom-package.ts": "08a8a7329e11f431561546c09379b92ebca26903bd9c4d7cd81e95ad675dc060", - "src/engine/coldfire-elf.ts": "319ca0d835d1b0c602c8f4b06990016d0ebfe246cedbfc596cea3cc7adfe3cd2", - "src/engine/module-build.ts": "dcd8397b8cecf6fab61debd9aa2f86f612da0ca6ccf363c79d56033bc170b993", - "src/catalog/modules.ts": "e268c6d42e4d5093ab943aed5cf2263a72e6d5e1a7ac0e72efc8a7ec6c62b89b", - "src/engine/assets/dsp-packages.json": "39c8b95b6c8909841038fe7e79929dd83e2014d203746284f344815dadbf798e", - "src/engine/assets/descriptor-recipes.json": "6ac6d53faa5e784efbbfca7024d84f4c44bdb2285fc9a61f2af16910671555ba", - "src/engine/assets/menu-recipes.json": "43d552429e5b8f20c785ab40e0d0218105ac0b55099aa405283870ab287a90de", - "src/engine/assets/rom-packages.json": "c0bd9cbf1d626de22b1996b9676c7640ca7c31932a26a1e554ec308882e93b51", - "upstream/elekloader/link.py": "5d31157ccbe62807ff9f05fd47e1e55b54be0475ab53565e6607a56566603ba8", - "upstream/elekloader/dsp.py": "9486d64eecee023670b716f6ae854996da02ee7c1a0efd5361cd963c756dbc69", - "upstream/elekloader/patch.py": "77c0a74bf4b0ff8c5525d4c4b1bc42af765314a4601c0510577817a7487d8666", - "upstream/elekloader/store.py": "1f20970b0da2a89a64847c337045f4d33b43038d670cf542f4ad03c01ada296d", - "upstream/elekloader/elemod.py": "7536f9bee1e16876662bee03b1d80f81ca705e36b12b9f8ae060e1f8ae873228", - "upstream/elekloader/mkmod.py": "716d1c6ded9c254b4e9081b0c4b3ec4ccfb7a9095b7978b253abcce921452718", - "upstream/elekloader/__init__.py": "eb28d2a32bf87b72fe4f792e55ce37f50c23042f573cf75275f6983731ed8779", - "upstream/elekloader/syx.py": "0ef9a2154ab2c100ab1cd7d09b48923916aa663c722418b8f6f4d500a56084f6", - "upstream/elekloader/formats.py": "715b0ca1c6bb96e41ab73338a6e625f33949d95599f58d94cd37e86ad0544b4e", - "upstream/elekloader/gui.py": "0d9b289bf72e6b7b23280fe099a92ee80c7007ca484a72fadc37147a4f9e8056", - "upstream/elekloader/__main__.py": "726cc8870ca878c56aedd9519aad980a91fba0d889e55ed8fb5b5321a009f2a1", - "upstream/elekloader/elek.py": "5012a2a9edd4ce1a03062d333da36b47f72f241e4a26ce04885a905043e3080f", - "upstream/elekloader/lint.py": "8eeb918e9c2d0d8a20ffa26df326834ddff2676090624a587c1902d3dee76e9c", - "upstream/elekloader/sdk/build.py": "a602ea4c24d80a653c2c6f6786399016503a5294674d942e97e7895983108592", - "upstream/elekloader/sdk/coresites.py": "27c1c90ca6a96e0b7b9e9eaeae2e5709a991967eaf7db5199af955e9fe0e8589", - "upstream/elekloader/sdk/bounties.py": "55170aa1cf763e3dd1d5cef7b86ccbf12e6ec4beebb7f709ac42469f9f8020cd", - "upstream/elekloader/sdk/octabam.py": "26103cf846bc7a3d038ae5f213bef614b35144293539e3721e31affc0e4eda7a", - "upstream/elekloader/sdk/__init__.py": "365832fc180371d7cd356994a0e3bbd6892ac7de6b1c1f1c0b337a947c3fd148", - "upstream/elekloader/sdk/elf.py": "0b897766f03ffe8e15eaadc25935822b95f7a78fea65a1de132267680148f766", - "upstream/elekloader/devices/digitakt_mk2.py": "e074140afb03958610c9d018064ba0b840db6ec0e4974b67b87627445f3f40b5", - "upstream/elekloader/devices/digitone_mk1.py": "ddd084da185af114eeda708634a56e6601bf1d365c43d750a69b5c959d1c1900", - "upstream/elekloader/devices/__init__.py": "8b350354c5b1e1e2ffc0bb4f3a446b9267d29c807163a84da9312aa31a888208", - "upstream/elekloader/devices/model_samples.py": "2d441ab41233a228cf98894bede7e745d48eb56d85ff3d4fabe5a3045ff61e47", - "upstream/elekloader/devices/analog_rytm_mk2.py": "07cae57bf241981c9aee8f1953ac69f0f24b9bfd9764910fc85fbc8c761a953b", - "upstream/elekloader/devices/model_cycles.py": "cfa5b27f1075669589f892f65c1bb55433a6cf12477076f4612b6531fdf37cb7", - "upstream/elekloader/devices/analog_four_mk2.py": "60effb1531138bceafc93d5a99fb574da51c381c39679c2b5b9f229070761102", - "upstream/elekloader/devices/octatrack.py": "6d062387e822a88f9629ba88667f031c5a933098d206377d2b18190ff87e346b", - "upstream/elekloader/devices/digitakt_mk1.py": "ce3df4e8b65f4d8c2265a2c0fb224ab28640b139ffcf8c98731b9561b0aae07b", - "sdk/firmware_codec/__init__.py": "0864c063d8c45793479098c425dbd4ec34b7d14acf781c1eaa8f65805e5016ca", - "sdk/firmware_codec/aplib.py": "b1c6473b3bc81cfa4301f599693e7959c78fa0b033ba8c3d31f560fcc41e4d2a", - "sdk/firmware_codec/coldfire.py": "c3b3736273ced01afd89cd75dd7ba78f6a3b0e0800971173bbc16e89bf1f56be", - "sdk/firmware_codec/elz.py": "417eb28fbadcfdfb4f4efa56a7c88d7f4d248953f668fb308f56796acb37049f", - "sdk/firmware_codec/transport.py": "30f1b71c28cf4c57fdbe38c0e535465cc2f29503ef348888a68940f93f070ae5" - }, - "copies": [ - { - "offset": 994, - "length": 19, - "address": 1074538000, - "sha256": "d79549e480eda591c8bac253ca51f45f0e46adc1a974a11f3adb6f1058e35401", - "purpose": "Independently authored select-offset table emitted by strings(labels); not an inherited stock DSP table. Labels and emitter are exact source inputs.", - "authored": { - "source": "src/engine/menu-formatters.ts", - "lines": [ - 15, - 23 - ], - "symbol": "strings(labels): select-offset table", - "method": "authored-emitter" - } - }, - { - "offset": 1040, - "length": 17, - "address": 1074538052, - "sha256": "7ea3e88a66234442987a9d7c00de9cab4f5b489a50479af84d3885801cc658b1", - "purpose": "Independently authored select-offset table emitted by strings(labels); not an inherited stock DSP table. Labels and emitter are exact source inputs.", - "authored": { - "source": "src/engine/menu-formatters.ts", - "lines": [ - 15, - 23 - ], - "symbol": "strings(labels): select-offset table", - "method": "authored-emitter" - } - }, - { - "offset": 1764, - "length": 17, - "address": 1074538068, - "sha256": "c9fcad68135e071d2f2c2951f1549b882182e14996c0a40b446c76dad30be07b", - "purpose": "Independently authored select-offset table emitted by strings(labels); not an inherited stock DSP table. Labels and emitter are exact source inputs.", - "authored": { - "source": "src/engine/menu-formatters.ts", - "lines": [ - 15, - 23 - ], - "symbol": "strings(labels): select-offset table", - "method": "authored-emitter" - } - }, - { - "offset": 2847, - "length": 15, - "address": 1073823235, - "sha256": "e55084d95cae82126a193bb40a29bf95ccea984da71239f0921d8aa462575562", - "purpose": "Authored eu_pulse instruction span; reconstructed identically from guarded stock coincidence", - "authored": { - "source": "sdk/octabam/modules/euclid/control.s", - "lines": [ - 102, - 108 - ], - "symbol": "eu_pulse", - "method": "native-unit" - } - }, - { - "offset": 2862, - "length": 3, - "address": 1073904372, - "sha256": "4922ffe36e9e6bbf37fa5b0cede482d9d358e9298688f88d3b254e5abe701a60", - "purpose": "Authored eu_process instruction span; reconstructed identically from guarded stock coincidence", - "authored": { - "source": "sdk/octabam/modules/euclid/control.s", - "lines": [ - 114, - 114 - ], - "symbol": "eu_process", - "method": "native-unit" - } - }, - { - "offset": 2865, - "length": 5, - "address": 1073919575, - "sha256": "9cb0f53f6c3b6e0e99c6c40d3cc83e87812a0a09c922b793da49eb0da7b9ca0d", - "purpose": "Authored eu_process instruction span; reconstructed identically from guarded stock coincidence", - "authored": { - "source": "sdk/octabam/modules/euclid/control.s", - "lines": [ - 114, - 115 - ], - "symbol": "eu_process", - "method": "native-unit" - } - }, - { - "offset": 5164, - "length": 18, - "address": 1074195396, - "sha256": "bf3b0da00e1f3fe9aff66ca39625cb7e811d034b6d64f60c698215414126d8ed", - "purpose": "Authored eu_publish_frame instruction span; reconstructed identically from guarded stock coincidence", - "authored": { - "source": "sdk/octabam/modules/euclid/control.s", - "lines": [ - 939, - 951 - ], - "symbol": "eu_publish_frame", - "method": "native-unit" - } - } + { + "offset": 6008, + "length": 13, + "address": 1073972194, + "sha256": "db509240d0b12958fad1adbe414340a8580949e5116ed3ceecac4e3b5cc6c005", + "purpose": "Authored pm_key_updown instruction span; reconstructed identically from guarded stock coincidence", + "authored": { + "source": "sdk/octabam/modules/playmodes/playmodes.s", + "lines": [ + 2226, + 2234 ], - "fills": [] + "symbol": "pm_key_updown", + "method": "native-unit" + } + }, + { + "offset": 7138, + "length": 12, + "address": 1074056994, + "sha256": "1c5975330c0ddc7a32f1d70c5735118826981c8a68a7bf3397c92d094e0e5385", + "purpose": "Authored pm_key_entry instruction span; reconstructed identically from guarded stock coincidence", + "authored": { + "source": "sdk/octabam/modules/playmodes/playmodes.s", + "lines": [ + 2712, + 2714 + ], + "symbol": "pm_key_entry", + "method": "native-unit" + } + }, + { + "offset": 7605, + "length": 13, + "address": 1074305305, + "sha256": "55eada7b38d544499ed47966c271580737bf1f50409d06e8c38d4289f836929f", + "purpose": "Authored pm_proj_write instruction span; reconstructed identically from guarded stock coincidence", + "authored": { + "source": "sdk/octabam/modules/playmodes/playmodes.s", + "lines": [ + 2950, + 2953 + ], + "symbol": "pm_proj_write", + "method": "native-unit" + } + } + ], + "fills": [] + }, + "tapeecho": { + "schema": 1, + "imageSha256": "def1bc39f8bc9e998cf49b7df6ab36725f42f460b1e73c079238ebc4c25caded", + "sources": { + "sdk/octabam/modules/tapeecho/cpu_hooks.s": "d1d959af91fbd0759191c5e244b4396613d18c057c8e65281d76cb67beb73e34", + "sdk/octabam/modules/tapeecho/cpu.c": "bbb50e96305a64f99d72045defa40d09ab3e8fc910e717d8122dd1f070de35a7", + "sdk/octabam/modules/tapeecho/time_fmt.s": "f50337532bbd802f67bb3c93d975405c2e386ec2a75bf525a814b9f9756f9d15", + "sdk/octabam/modules/tapeecho/cpu_tables.h": "1d2e3e062651f021ca94fd19339dde824bcf49c4d867da790c20957dd24db9b2", + "sdk/octabam/modules/tapeecho/manifest.py": "8444fc496776df2c719401f6967aba44a5922e15f0906268286663d012dd94b8", + "sdk/octabam/modules/tapeecho/octamod.module.json": "9784954380cba4ec5d5f9440eb188dd65ff885d09192ed534a117a1a5f761d58", + "sdk/octabam/modules/tapeecho/cpu_kernels.s": "1cb1d400cbf0f0b7a75dc0ea13f6afc70b56221f2d45f424f7f58fa79ce6347f", + "sdk/octabam/modules/tapeecho/cpu.s": "783901f817efc5496c9b6178367459cfae1fe036adfd2a5be3a89d62e37906b6", + "sdk/octabam/modules/tapeecho/cpu_passthrough.asm": "68ef0beaa213de43e116d2feb367b437ef8c73c7f7b1c07328fde2d72edb3fdc", + "sdk/octabam/modules/tapeecho/cpu.h": "d07d496a62b95f23f8c2cbd893a0125e8a67071e83bf2c642e14251e48e69ff3", + "sdk/octabam/modules/tapeecho/generate_tables.py": "3461b659e2f22d7da776eb87755610094a4a3e72609c875e82902a8da9a8a69c", + "sdk/octabam/modules/tapeecho/generate_cpu.py": "09477f59af29dc6b68458454f818ec999339f4f4eefadb979cc13236ce431353", + "sdk/octabam/modules/tapeecho/media/capture.json": "8e0627d47f074322917978cd4abf505d82d9b53ece8e8c2b1ad280b69cd2902b", + "sdk/octabam/tools/remix/platform_build.py": "e72b7a29b45851addecf135ad520db98b66f5e10c5cd354adf37fb52d6c2e42f", + "sdk/octabam/tools/remix/machine_composition.py": "6be0efdccc78a4fd1fafdba0cf39fcdb9cf510e72bd26aa22e7cdfe06d857783", + "sdk/octabam/tools/remix/stock_guard.py": "b05e115afaa11d1507273bdcd26e05c25e7a6424d3e0fb4eb21d797194e508b3", + "sdk/octabam/tools/remix/index.py": "29a0090afb78aa6f5142aa1e862c8563badeb9ff0c78c03a458d5b2ad6e6104c", + "sdk/octabam/tools/remix/registry.py": "f3b2fbfb90b97db33e360603ccf3eb0a703913dddaad78c681b9676287ee23e5", + "sdk/octabam/tools/remix/keep.py": "18e1f485900768bd896507da4f6669199bc52466e7af7a1102d7d9a2bc03d305", + "sdk/octabam/tools/remix/geom.py": "6bf3e107cd45c1213f0c071ae65c2ab0b9037241b0d2b974813757f0e08d2997", + "sdk/octabam/tools/remix/ledger.py": "73407d159a965671da2255aef5864bd0c745dfa2a600575918f48c40fc170f83", + "sdk/octabam/tools/remix/__init__.py": "c925cdb1d084a4e2bd02f8f13e87204bff38ff4c40087ec86a8f2fe1395f83f9", + "sdk/octabam/tools/remix/rig.py": "975ee01f9e925c0170602db2e9bd0427bc9e3fc5a5b2d85a8829a701b2d20691", + "sdk/octabam/tools/remix/stock.py": "11a41e3176719776712e4aa719bdeab6a319bd04186aa9b954063392d8be919f", + "sdk/octabam/tools/remix/audition.py": "98cae0606138b98878d9d1b18fd4ecd541e99332beeec0c7b4c7b0fb5b6dfd43", + "sdk/octabam/tools/remix/runtime_build.py": "27d2d73d56716f7088f174364f057e0c041f29741885d7cfbb7d91e49cc8b6ba", + "sdk/octabam/tools/remix/selftest.py": "78f46022e4537eccf204e2bc3a3fdb683fd86c6cf0ee87f78ae5fe804cb17853", + "sdk/octabam/tools/remix/dsp_ranges.py": "085aca1208a672c91e8db2ea620a5a17eaa2b577f16f074ecb89fdf2bc23c300", + "sdk/octabam/tools/remix/detour_guard.py": "0235a68c70127e72815be0ef65e3dbba7655b46fb027b77cf3b82a6f7111145c", + "sdk/octabam/tools/remix/app.py": "33b2bf8374192241c9e2cdb0667d9ac52c66cde6be0cb9afd3e0b96c78e51fd1", + "sdk/octabam/tools/remix/grains.py": "d7e39aac08497b56679d68155f234b374d08b326356bc5e4ccd3030128a246a2", + "sdk/octabam/tools/remix/stock_copies.py": "c593de7f68d5df584eefcbd75a120bb1d72258646d3444a5a8db7e81a290e4b4", + "sdk/octabam/tools/remix/state.py": "acad0b6cac5c852acf7c5efefd59180457213a03ff707f219b34cebd2289042b", + "sdk/octabam/tools/remix/arena.py": "41c84bd9ab84873bf5f17adb42c4d895b679e0890fb79d120e61906b2f793d65", + "sdk/octabam/tools/remix/compile_cache.py": "74d7d08cdbad8ebf6e56d8be7041c9603197b6f7b089962d8fccd880bb592504", + "sdk/octabam/tools/remix/schema.py": "6843e02b1baf24572d77f9ecc9cac4c51644b48ca949d6eee6524408741b0fb3", + "sdk/runtime/loader/build.py": "5131901224dcd037c07f0233cadabd67eec2a952878bef5a92274dd3d6236c7d", + "sdk/machines/octatrack/module-adapters/standalone_runtime.py": "3a7559a330ae4f031c7c47b7cb67f679cd7fb4e4f2aa69f2e3971940be4c46ae", + "sdk/machines/octatrack/module-adapters/stock_recipe.py": "662b79d9dc612845cf85e5051fa2d711cad4f98244194357fdaaabca092d5ca5", + "scripts/octatrack-module-page.mjs": "8faa5b3822f2de023a8cad593d863bea36ed9bbd4c6d3c48b77c02d5844b672c", + "src/engine/menu-formatters.ts": "c90fa33acb37429e8f9d1f17adc569931467f686990f07ab34e3a1130468a48f", + "src/engine/rom-package.ts": "08a8a7329e11f431561546c09379b92ebca26903bd9c4d7cd81e95ad675dc060", + "src/engine/coldfire-elf.ts": "319ca0d835d1b0c602c8f4b06990016d0ebfe246cedbfc596cea3cc7adfe3cd2", + "src/engine/module-build.ts": "dcd8397b8cecf6fab61debd9aa2f86f612da0ca6ccf363c79d56033bc170b993", + "src/catalog/modules.ts": "e268c6d42e4d5093ab943aed5cf2263a72e6d5e1a7ac0e72efc8a7ec6c62b89b", + "src/engine/assets/dsp-packages.json": "ed3c404f0ce44d3f365372be141693aa02f3a5a8b8719bf8d0dfed7a3cb0854b", + "src/engine/assets/descriptor-recipes.json": "74e5a09804aa0db962eba734bc6027001d4665784abdf49719a02faca4587ac4", + "src/engine/assets/menu-recipes.json": "6e0907831de45c1e807308a88067178168893b1e5c62bbe39e760e3b1f01eb5e", + "src/engine/assets/rom-packages.json": "0348ff37184ce84851d42ea6c87535e1a997c6774498f4e93dfb497c0c8dbb85", + "upstream/elekloader/link.py": "5d31157ccbe62807ff9f05fd47e1e55b54be0475ab53565e6607a56566603ba8", + "upstream/elekloader/dsp.py": "9486d64eecee023670b716f6ae854996da02ee7c1a0efd5361cd963c756dbc69", + "upstream/elekloader/patch.py": "77c0a74bf4b0ff8c5525d4c4b1bc42af765314a4601c0510577817a7487d8666", + "upstream/elekloader/store.py": "1f20970b0da2a89a64847c337045f4d33b43038d670cf542f4ad03c01ada296d", + "upstream/elekloader/elemod.py": "7536f9bee1e16876662bee03b1d80f81ca705e36b12b9f8ae060e1f8ae873228", + "upstream/elekloader/mkmod.py": "716d1c6ded9c254b4e9081b0c4b3ec4ccfb7a9095b7978b253abcce921452718", + "upstream/elekloader/__init__.py": "eb28d2a32bf87b72fe4f792e55ce37f50c23042f573cf75275f6983731ed8779", + "upstream/elekloader/syx.py": "0ef9a2154ab2c100ab1cd7d09b48923916aa663c722418b8f6f4d500a56084f6", + "upstream/elekloader/formats.py": "715b0ca1c6bb96e41ab73338a6e625f33949d95599f58d94cd37e86ad0544b4e", + "upstream/elekloader/gui.py": "0d9b289bf72e6b7b23280fe099a92ee80c7007ca484a72fadc37147a4f9e8056", + "upstream/elekloader/__main__.py": "726cc8870ca878c56aedd9519aad980a91fba0d889e55ed8fb5b5321a009f2a1", + "upstream/elekloader/elek.py": "5012a2a9edd4ce1a03062d333da36b47f72f241e4a26ce04885a905043e3080f", + "upstream/elekloader/lint.py": "8eeb918e9c2d0d8a20ffa26df326834ddff2676090624a587c1902d3dee76e9c", + "upstream/elekloader/sdk/build.py": "a602ea4c24d80a653c2c6f6786399016503a5294674d942e97e7895983108592", + "upstream/elekloader/sdk/coresites.py": "27c1c90ca6a96e0b7b9e9eaeae2e5709a991967eaf7db5199af955e9fe0e8589", + "upstream/elekloader/sdk/bounties.py": "55170aa1cf763e3dd1d5cef7b86ccbf12e6ec4beebb7f709ac42469f9f8020cd", + "upstream/elekloader/sdk/octabam.py": "26103cf846bc7a3d038ae5f213bef614b35144293539e3721e31affc0e4eda7a", + "upstream/elekloader/sdk/__init__.py": "365832fc180371d7cd356994a0e3bbd6892ac7de6b1c1f1c0b337a947c3fd148", + "upstream/elekloader/sdk/elf.py": "0b897766f03ffe8e15eaadc25935822b95f7a78fea65a1de132267680148f766", + "upstream/elekloader/devices/digitakt_mk2.py": "e074140afb03958610c9d018064ba0b840db6ec0e4974b67b87627445f3f40b5", + "upstream/elekloader/devices/digitone_mk1.py": "ddd084da185af114eeda708634a56e6601bf1d365c43d750a69b5c959d1c1900", + "upstream/elekloader/devices/__init__.py": "8b350354c5b1e1e2ffc0bb4f3a446b9267d29c807163a84da9312aa31a888208", + "upstream/elekloader/devices/model_samples.py": "2d441ab41233a228cf98894bede7e745d48eb56d85ff3d4fabe5a3045ff61e47", + "upstream/elekloader/devices/analog_rytm_mk2.py": "07cae57bf241981c9aee8f1953ac69f0f24b9bfd9764910fc85fbc8c761a953b", + "upstream/elekloader/devices/model_cycles.py": "cfa5b27f1075669589f892f65c1bb55433a6cf12477076f4612b6531fdf37cb7", + "upstream/elekloader/devices/analog_four_mk2.py": "60effb1531138bceafc93d5a99fb574da51c381c39679c2b5b9f229070761102", + "upstream/elekloader/devices/octatrack.py": "6d062387e822a88f9629ba88667f031c5a933098d206377d2b18190ff87e346b", + "upstream/elekloader/devices/digitakt_mk1.py": "ce3df4e8b65f4d8c2265a2c0fb224ab28640b139ffcf8c98731b9561b0aae07b", + "sdk/firmware_codec/__init__.py": "0864c063d8c45793479098c425dbd4ec34b7d14acf781c1eaa8f65805e5016ca", + "sdk/firmware_codec/aplib.py": "b1c6473b3bc81cfa4301f599693e7959c78fa0b033ba8c3d31f560fcc41e4d2a", + "sdk/firmware_codec/coldfire.py": "c3b3736273ced01afd89cd75dd7ba78f6a3b0e0800971173bbc16e89bf1f56be", + "sdk/firmware_codec/elz.py": "417eb28fbadcfdfb4f4efa56a7c88d7f4d248953f668fb308f56796acb37049f", + "sdk/firmware_codec/transport.py": "30f1b71c28cf4c57fdbe38c0e535465cc2f29503ef348888a68940f93f070ae5" + }, + "copies": [ + { + "offset": 676, + "length": 16, + "address": 1073984446, + "sha256": "2208dade979a9235783eacb36cdde6fac1f68a1c1e97629678e6ef71eaa7643b", + "purpose": "Authored free instruction span; reconstructed identically from guarded stock coincidence", + "authored": { + "source": "sdk/octabam/modules/tapeecho/time_fmt.s", + "lines": [ + 46, + 49 + ], + "symbol": "free", + "method": "native-formatter" + } + }, + { + "offset": 3076, + "length": 18, + "address": 1073753950, + "sha256": "1e998d15e30ac012a8b3cd88d4588e8f85d7921a2850b0551b2259a84752a995", + "purpose": "Authored render_head instruction span; reconstructed identically from guarded stock coincidence", + "authored": { + "source": "sdk/octabam/modules/tapeecho/cpu.s", + "lines": [ + 915, + 919 + ], + "symbol": "render_head", + "method": "native-unit" + } + }, + { + "offset": 3100, + "length": 26, + "address": 1074366192, + "sha256": "90dc32b1ff6203f13faaba47d8a89d606c770746e69ea8010df241e1241fd9c5", + "purpose": "Authored render_head instruction span; reconstructed identically from guarded stock coincidence", + "authored": { + "source": "sdk/octabam/modules/tapeecho/cpu.s", + "lines": [ + 921, + 927 + ], + "symbol": "render_head", + "method": "native-unit" + } + }, + { + "offset": 3462, + "length": 19, + "address": 1074375602, + "sha256": "3fd2ea50644e110d89a47a30180101283abeae689e44d39c646c941fea217965", + "purpose": "Authored te_target instruction span; reconstructed identically from guarded stock coincidence", + "authored": { + "source": "sdk/octabam/modules/tapeecho/cpu.s", + "lines": [ + 1055, + 1060 + ], + "symbol": "te_target", + "method": "native-unit" + } + }, + { + "offset": 7462, + "length": 13, + "address": 1073973354, + "sha256": "2393ebbe40716982dc0fc11a30e3e53f13d60755b68dc8f156a4cf02ec77c2f2", + "purpose": "Authored te_filter_block instruction span; reconstructed identically from guarded stock coincidence", + "authored": { + "source": "sdk/octabam/modules/tapeecho/cpu.s", + "lines": [ + 27285, + 27332 + ], + "symbol": "te_filter_block", + "method": "native-unit" + } + }, + { + "offset": 8940, + "length": 8, + "address": 1073897668, + "sha256": "8937904adb028ee826e1da6e9593b99222dd3fb141bbaa852b54ef596f94054f", + "purpose": "Authored te_tape_block instruction span; reconstructed identically from guarded stock coincidence", + "authored": { + "source": "sdk/octabam/modules/tapeecho/cpu.s", + "lines": [ + 27523, + 27524 + ], + "symbol": "te_tape_block", + "method": "native-unit" + } + }, + { + "offset": 8948, + "length": 16, + "address": 1073745896, + "sha256": "324b9e08fe60e608cbdebbbd690d3efdac6a0fc7a2ec6b9756fc1f64e1ef5281", + "purpose": "Authored te_read_linear instruction span; reconstructed identically from guarded stock coincidence", + "authored": { + "source": "sdk/octabam/modules/tapeecho/cpu.s", + "lines": [ + 27525, + 27545 + ], + "symbol": "te_read_linear", + "method": "native-unit" + } + } + ], + "fills": [] + }, + "euclid": { + "schema": 1, + "imageSha256": "5fc73790f3419521044aa8dab4bf08e44436a9d89797cf157777923cbf7e442b", + "sources": { + "sdk/octabam/modules/euclid/control.s": "5a7881df366f6c7ec83c9b1a7cfe8825aedbe8af933ecf155c156223c744c263", + "sdk/octabam/modules/euclid/control.h": "3b46d1ec81f83942c0303bbb146cbd3509cabd7e030c4ed1d6ff7304181bb7b2", + "sdk/octabam/modules/euclid/hooks.s": "597006c7fd73fc9956170f284deb47a2ddd13c8f20e7a9669ef51fa469f767d1", + "sdk/octabam/modules/euclid/manifest.py": "e43eac70260eda028417be31773b2cd3abf4bf60698ca5968704de3774d1f31a", + "sdk/octabam/modules/euclid/octamod.module.json": "fec0b22a202a1e4a7f51d1fcab5e056841a603d3ffe49a00156cb19d36357eac", + "sdk/octabam/modules/euclid/control.c": "bb49a94ac7d63eb9d33258c995026d6ad8ac1843dbe8be1c2f944a6a38bd8333", + "sdk/octabam/modules/euclid/generate_control.py": "64e711025c513d5c3c933dbecf73a95e1193bb9a7ab31a11ad28906246dbf6fd", + "sdk/octabam/modules/euclid/filter.asm": "b0fef9bfb99aabc67de2bd452feba6ae045603340b7d56405140d2afc3a0f35e", + "sdk/octabam/modules/euclid/media/audio-preview.json": "566a6c339eaffab1936a40826ef2a9fdb552c519b635d1bfacec955a8b817b00", + "sdk/octabam/modules/euclid/media/capture.json": "787927d11f68c1e148032d2098e1ce9486cae7d2bc293595cc2308d105c5dd75", + "sdk/octabam/tools/remix/platform_build.py": "e72b7a29b45851addecf135ad520db98b66f5e10c5cd354adf37fb52d6c2e42f", + "sdk/octabam/tools/remix/machine_composition.py": "6be0efdccc78a4fd1fafdba0cf39fcdb9cf510e72bd26aa22e7cdfe06d857783", + "sdk/octabam/tools/remix/stock_guard.py": "b05e115afaa11d1507273bdcd26e05c25e7a6424d3e0fb4eb21d797194e508b3", + "sdk/octabam/tools/remix/index.py": "29a0090afb78aa6f5142aa1e862c8563badeb9ff0c78c03a458d5b2ad6e6104c", + "sdk/octabam/tools/remix/registry.py": "f3b2fbfb90b97db33e360603ccf3eb0a703913dddaad78c681b9676287ee23e5", + "sdk/octabam/tools/remix/keep.py": "18e1f485900768bd896507da4f6669199bc52466e7af7a1102d7d9a2bc03d305", + "sdk/octabam/tools/remix/geom.py": "6bf3e107cd45c1213f0c071ae65c2ab0b9037241b0d2b974813757f0e08d2997", + "sdk/octabam/tools/remix/ledger.py": "73407d159a965671da2255aef5864bd0c745dfa2a600575918f48c40fc170f83", + "sdk/octabam/tools/remix/__init__.py": "c925cdb1d084a4e2bd02f8f13e87204bff38ff4c40087ec86a8f2fe1395f83f9", + "sdk/octabam/tools/remix/rig.py": "975ee01f9e925c0170602db2e9bd0427bc9e3fc5a5b2d85a8829a701b2d20691", + "sdk/octabam/tools/remix/stock.py": "11a41e3176719776712e4aa719bdeab6a319bd04186aa9b954063392d8be919f", + "sdk/octabam/tools/remix/audition.py": "98cae0606138b98878d9d1b18fd4ecd541e99332beeec0c7b4c7b0fb5b6dfd43", + "sdk/octabam/tools/remix/runtime_build.py": "27d2d73d56716f7088f174364f057e0c041f29741885d7cfbb7d91e49cc8b6ba", + "sdk/octabam/tools/remix/selftest.py": "78f46022e4537eccf204e2bc3a3fdb683fd86c6cf0ee87f78ae5fe804cb17853", + "sdk/octabam/tools/remix/dsp_ranges.py": "085aca1208a672c91e8db2ea620a5a17eaa2b577f16f074ecb89fdf2bc23c300", + "sdk/octabam/tools/remix/detour_guard.py": "0235a68c70127e72815be0ef65e3dbba7655b46fb027b77cf3b82a6f7111145c", + "sdk/octabam/tools/remix/app.py": "33b2bf8374192241c9e2cdb0667d9ac52c66cde6be0cb9afd3e0b96c78e51fd1", + "sdk/octabam/tools/remix/grains.py": "d7e39aac08497b56679d68155f234b374d08b326356bc5e4ccd3030128a246a2", + "sdk/octabam/tools/remix/stock_copies.py": "c593de7f68d5df584eefcbd75a120bb1d72258646d3444a5a8db7e81a290e4b4", + "sdk/octabam/tools/remix/state.py": "acad0b6cac5c852acf7c5efefd59180457213a03ff707f219b34cebd2289042b", + "sdk/octabam/tools/remix/arena.py": "41c84bd9ab84873bf5f17adb42c4d895b679e0890fb79d120e61906b2f793d65", + "sdk/octabam/tools/remix/compile_cache.py": "74d7d08cdbad8ebf6e56d8be7041c9603197b6f7b089962d8fccd880bb592504", + "sdk/octabam/tools/remix/schema.py": "6843e02b1baf24572d77f9ecc9cac4c51644b48ca949d6eee6524408741b0fb3", + "sdk/runtime/loader/build.py": "5131901224dcd037c07f0233cadabd67eec2a952878bef5a92274dd3d6236c7d", + "sdk/machines/octatrack/module-adapters/standalone_runtime.py": "3a7559a330ae4f031c7c47b7cb67f679cd7fb4e4f2aa69f2e3971940be4c46ae", + "sdk/machines/octatrack/module-adapters/stock_recipe.py": "662b79d9dc612845cf85e5051fa2d711cad4f98244194357fdaaabca092d5ca5", + "scripts/octatrack-module-page.mjs": "8faa5b3822f2de023a8cad593d863bea36ed9bbd4c6d3c48b77c02d5844b672c", + "src/engine/menu-formatters.ts": "c90fa33acb37429e8f9d1f17adc569931467f686990f07ab34e3a1130468a48f", + "src/engine/rom-package.ts": "08a8a7329e11f431561546c09379b92ebca26903bd9c4d7cd81e95ad675dc060", + "src/engine/coldfire-elf.ts": "319ca0d835d1b0c602c8f4b06990016d0ebfe246cedbfc596cea3cc7adfe3cd2", + "src/engine/module-build.ts": "dcd8397b8cecf6fab61debd9aa2f86f612da0ca6ccf363c79d56033bc170b993", + "src/catalog/modules.ts": "e268c6d42e4d5093ab943aed5cf2263a72e6d5e1a7ac0e72efc8a7ec6c62b89b", + "src/engine/assets/dsp-packages.json": "ed3c404f0ce44d3f365372be141693aa02f3a5a8b8719bf8d0dfed7a3cb0854b", + "src/engine/assets/descriptor-recipes.json": "74e5a09804aa0db962eba734bc6027001d4665784abdf49719a02faca4587ac4", + "src/engine/assets/menu-recipes.json": "6e0907831de45c1e807308a88067178168893b1e5c62bbe39e760e3b1f01eb5e", + "src/engine/assets/rom-packages.json": "0348ff37184ce84851d42ea6c87535e1a997c6774498f4e93dfb497c0c8dbb85", + "upstream/elekloader/link.py": "5d31157ccbe62807ff9f05fd47e1e55b54be0475ab53565e6607a56566603ba8", + "upstream/elekloader/dsp.py": "9486d64eecee023670b716f6ae854996da02ee7c1a0efd5361cd963c756dbc69", + "upstream/elekloader/patch.py": "77c0a74bf4b0ff8c5525d4c4b1bc42af765314a4601c0510577817a7487d8666", + "upstream/elekloader/store.py": "1f20970b0da2a89a64847c337045f4d33b43038d670cf542f4ad03c01ada296d", + "upstream/elekloader/elemod.py": "7536f9bee1e16876662bee03b1d80f81ca705e36b12b9f8ae060e1f8ae873228", + "upstream/elekloader/mkmod.py": "716d1c6ded9c254b4e9081b0c4b3ec4ccfb7a9095b7978b253abcce921452718", + "upstream/elekloader/__init__.py": "eb28d2a32bf87b72fe4f792e55ce37f50c23042f573cf75275f6983731ed8779", + "upstream/elekloader/syx.py": "0ef9a2154ab2c100ab1cd7d09b48923916aa663c722418b8f6f4d500a56084f6", + "upstream/elekloader/formats.py": "715b0ca1c6bb96e41ab73338a6e625f33949d95599f58d94cd37e86ad0544b4e", + "upstream/elekloader/gui.py": "0d9b289bf72e6b7b23280fe099a92ee80c7007ca484a72fadc37147a4f9e8056", + "upstream/elekloader/__main__.py": "726cc8870ca878c56aedd9519aad980a91fba0d889e55ed8fb5b5321a009f2a1", + "upstream/elekloader/elek.py": "5012a2a9edd4ce1a03062d333da36b47f72f241e4a26ce04885a905043e3080f", + "upstream/elekloader/lint.py": "8eeb918e9c2d0d8a20ffa26df326834ddff2676090624a587c1902d3dee76e9c", + "upstream/elekloader/sdk/build.py": "a602ea4c24d80a653c2c6f6786399016503a5294674d942e97e7895983108592", + "upstream/elekloader/sdk/coresites.py": "27c1c90ca6a96e0b7b9e9eaeae2e5709a991967eaf7db5199af955e9fe0e8589", + "upstream/elekloader/sdk/bounties.py": "55170aa1cf763e3dd1d5cef7b86ccbf12e6ec4beebb7f709ac42469f9f8020cd", + "upstream/elekloader/sdk/octabam.py": "26103cf846bc7a3d038ae5f213bef614b35144293539e3721e31affc0e4eda7a", + "upstream/elekloader/sdk/__init__.py": "365832fc180371d7cd356994a0e3bbd6892ac7de6b1c1f1c0b337a947c3fd148", + "upstream/elekloader/sdk/elf.py": "0b897766f03ffe8e15eaadc25935822b95f7a78fea65a1de132267680148f766", + "upstream/elekloader/devices/digitakt_mk2.py": "e074140afb03958610c9d018064ba0b840db6ec0e4974b67b87627445f3f40b5", + "upstream/elekloader/devices/digitone_mk1.py": "ddd084da185af114eeda708634a56e6601bf1d365c43d750a69b5c959d1c1900", + "upstream/elekloader/devices/__init__.py": "8b350354c5b1e1e2ffc0bb4f3a446b9267d29c807163a84da9312aa31a888208", + "upstream/elekloader/devices/model_samples.py": "2d441ab41233a228cf98894bede7e745d48eb56d85ff3d4fabe5a3045ff61e47", + "upstream/elekloader/devices/analog_rytm_mk2.py": "07cae57bf241981c9aee8f1953ac69f0f24b9bfd9764910fc85fbc8c761a953b", + "upstream/elekloader/devices/model_cycles.py": "cfa5b27f1075669589f892f65c1bb55433a6cf12477076f4612b6531fdf37cb7", + "upstream/elekloader/devices/analog_four_mk2.py": "60effb1531138bceafc93d5a99fb574da51c381c39679c2b5b9f229070761102", + "upstream/elekloader/devices/octatrack.py": "6d062387e822a88f9629ba88667f031c5a933098d206377d2b18190ff87e346b", + "upstream/elekloader/devices/digitakt_mk1.py": "ce3df4e8b65f4d8c2265a2c0fb224ab28640b139ffcf8c98731b9561b0aae07b", + "sdk/firmware_codec/__init__.py": "0864c063d8c45793479098c425dbd4ec34b7d14acf781c1eaa8f65805e5016ca", + "sdk/firmware_codec/aplib.py": "b1c6473b3bc81cfa4301f599693e7959c78fa0b033ba8c3d31f560fcc41e4d2a", + "sdk/firmware_codec/coldfire.py": "c3b3736273ced01afd89cd75dd7ba78f6a3b0e0800971173bbc16e89bf1f56be", + "sdk/firmware_codec/elz.py": "417eb28fbadcfdfb4f4efa56a7c88d7f4d248953f668fb308f56796acb37049f", + "sdk/firmware_codec/transport.py": "30f1b71c28cf4c57fdbe38c0e535465cc2f29503ef348888a68940f93f070ae5" + }, + "copies": [ + { + "offset": 994, + "length": 19, + "address": 1074538000, + "sha256": "d79549e480eda591c8bac253ca51f45f0e46adc1a974a11f3adb6f1058e35401", + "purpose": "Independently authored select-offset table emitted by strings(labels); not an inherited stock DSP table. Labels and emitter are exact source inputs.", + "authored": { + "source": "src/engine/menu-formatters.ts", + "lines": [ + 15, + 23 + ], + "symbol": "strings(labels): select-offset table", + "method": "authored-emitter" + } + }, + { + "offset": 1040, + "length": 17, + "address": 1074538052, + "sha256": "7ea3e88a66234442987a9d7c00de9cab4f5b489a50479af84d3885801cc658b1", + "purpose": "Independently authored select-offset table emitted by strings(labels); not an inherited stock DSP table. Labels and emitter are exact source inputs.", + "authored": { + "source": "src/engine/menu-formatters.ts", + "lines": [ + 15, + 23 + ], + "symbol": "strings(labels): select-offset table", + "method": "authored-emitter" + } + }, + { + "offset": 1764, + "length": 17, + "address": 1074538068, + "sha256": "c9fcad68135e071d2f2c2951f1549b882182e14996c0a40b446c76dad30be07b", + "purpose": "Independently authored select-offset table emitted by strings(labels); not an inherited stock DSP table. Labels and emitter are exact source inputs.", + "authored": { + "source": "src/engine/menu-formatters.ts", + "lines": [ + 15, + 23 + ], + "symbol": "strings(labels): select-offset table", + "method": "authored-emitter" + } + }, + { + "offset": 2847, + "length": 15, + "address": 1073823235, + "sha256": "e55084d95cae82126a193bb40a29bf95ccea984da71239f0921d8aa462575562", + "purpose": "Authored eu_pulse instruction span; reconstructed identically from guarded stock coincidence", + "authored": { + "source": "sdk/octabam/modules/euclid/control.s", + "lines": [ + 102, + 108 + ], + "symbol": "eu_pulse", + "method": "native-unit" + } + }, + { + "offset": 2862, + "length": 3, + "address": 1073904372, + "sha256": "4922ffe36e9e6bbf37fa5b0cede482d9d358e9298688f88d3b254e5abe701a60", + "purpose": "Authored eu_process instruction span; reconstructed identically from guarded stock coincidence", + "authored": { + "source": "sdk/octabam/modules/euclid/control.s", + "lines": [ + 114, + 114 + ], + "symbol": "eu_process", + "method": "native-unit" + } + }, + { + "offset": 2865, + "length": 5, + "address": 1073919575, + "sha256": "9cb0f53f6c3b6e0e99c6c40d3cc83e87812a0a09c922b793da49eb0da7b9ca0d", + "purpose": "Authored eu_process instruction span; reconstructed identically from guarded stock coincidence", + "authored": { + "source": "sdk/octabam/modules/euclid/control.s", + "lines": [ + 114, + 115 + ], + "symbol": "eu_process", + "method": "native-unit" + } + }, + { + "offset": 5164, + "length": 18, + "address": 1074195396, + "sha256": "bf3b0da00e1f3fe9aff66ca39625cb7e811d034b6d64f60c698215414126d8ed", + "purpose": "Authored eu_publish_frame instruction span; reconstructed identically from guarded stock coincidence", + "authored": { + "source": "sdk/octabam/modules/euclid/control.s", + "lines": [ + 939, + 951 + ], + "symbol": "eu_publish_frame", + "method": "native-unit" + } } + ], + "fills": [] } + } } diff --git a/src/engine/assets/octatrack-module-packages.json b/src/engine/assets/octatrack-module-packages.json index b156250f5..f17c54f58 100644 --- a/src/engine/assets/octatrack-module-packages.json +++ b/src/engine/assets/octatrack-module-packages.json @@ -191,16 +191,14 @@ "abi": 8, "features": 131, "sites": 2, - "copies": 8, + "copies": 12, "fills": 0, - "version": "0.2.5-experimental", + "version": "0.3.0-experimental", "name": "VECTOR", "module": "b0d51c58", - "bytes": 18354, - "sha256": "45c962ca3a202ac697e3d33d97e4b3b94052706a390189e5baf923fa829de577", - "path": "octatrack-modules/vector/0.2.5-experimental.mwrm", - "lagsBehind": "0.2.6-experimental", - "lagReason": "0.2.6 changes only the card build: st_setup_page no longer tests for row 5, which VECTOR's USB adapter already dropped (#972, #1119); the package's control unit source is byte-identical to 0.2.5's" + "bytes": 29486, + "sha256": "4fc33aef2606bcc8c0801365fd123f5a31b9ac46b0b3dfbc774a10a8d59812d3", + "path": "octatrack-modules/vector/0.3.0-experimental.mwrm" }, { "id": "synth", From 63a3dd2e7bee7557f5f7d81266d3d13191c053d8 Mon Sep 17 00:00:00 2001 From: repeat98 Date: Sun, 8 Nov 2026 13:21:57 +0100 Subject: [PATCH 23/33] VECTOR 0.3.0: firmware-free tests rerun, source fingerprint, resource figures, evidence bindings Co-Authored-By: Claude Opus 5.5 --- sdk/octabam/modules/vector/TESTING.md | 2 +- .../modules/vector/media/core-tests.json | 10 +++++----- sdk/octabam/modules/vector/octamod.module.json | 18 +++++++++--------- src/catalog/vector.test.ts | 9 ++++++--- 4 files changed, 21 insertions(+), 18 deletions(-) diff --git a/sdk/octabam/modules/vector/TESTING.md b/sdk/octabam/modules/vector/TESTING.md index 6b8f0d50b..60e8e96a0 100644 --- a/sdk/octabam/modules/vector/TESTING.md +++ b/sdk/octabam/modules/vector/TESTING.md @@ -1,6 +1,6 @@ # VECTOR tests and measurements -## 0.2.6: SRC SETUP page 2 on VECTOR's own row (card builds, #1119) +## SRC SETUP page 2 on VECTOR's own row (card builds, #1119; prepared as 0.2.6, released in 0.3.0) Report #1119 (also #842/#843): on a card build with POLY8, a double tap on SRC on a VECTOR track showed the stock Flex/Static setup (TSTR AUTO) instead of SEED/SPAN. Beside POLY8, VECTOR is machine row 6 or 7; POLY8's shared SRC SETUP hooks replace VECTOR's and never asked VECTOR, and `st_setup_page` itself also wanted SRC SETUP's cursor (0x460d5c30) on row 5. 0.2.6 drops that test: its callers already ask on VECTOR's row (row 5 in `hooks.s` alone, the base's row over USB, POLY8's row with POLY8 0.3.3). The USB adapter dropped the same test since 0.2.5, so `vector_runtime.py` no longer rewrites it; the package's control unit source is byte-identical to 0.2.5's and the 0.2.5 USB package stays published (`lagsBehind`). The 0.2.5 hardware report above that run covers those bytes. diff --git a/sdk/octabam/modules/vector/media/core-tests.json b/sdk/octabam/modules/vector/media/core-tests.json index af935cd8a..cc5c48311 100644 --- a/sdk/octabam/modules/vector/media/core-tests.json +++ b/sdk/octabam/modules/vector/media/core-tests.json @@ -1,9 +1,9 @@ { "schemaVersion": 1, - "moduleVersion": "0.2.4-experimental", - "testedOn": "2026-10-06", + "moduleVersion": "0.3.0-experimental", + "testedOn": "2026-11-08", "compiler": "cc (Ubuntu 13.3.0-6ubuntu2~24.04.1) 13.3.0", - "toolchainImage": "sha256:244853509446c2f2bb0b9032b6160b1dbffc911ab5a66a9139eadfbd0930f457", + "toolchainImage": "sha256:283235500ccd14b48d0a0fdbf4ac8556a37c63332bda02f9c838736d098617f2", "isolation": "Network-disabled read-only Docker root, all capabilities dropped, private executable tmpfs. Firmware-free C core only.", "command": "cc -std=c11 -Wall -Wextra -Werror -fsanitize=address,undefined engine.c test_engine.c -o /tmp/riff-tests && /tmp/riff-tests", "cases": 244800, @@ -28,7 +28,7 @@ "seed wrap at 127" ], "sources": { - "engine.c": "508448ef3897450877b2aa66de0f9305d6d8e950747774289aeeb7f09793a302", + "engine.c": "18c57b2f40371b8e36e4bbac6d181ad5cc0a33c2961758da11166c6123e5623a", "engine.h": "7191686c8fc62869a37aa27717c1d92460eea3c77debf154a482df1b913469b2", "test_engine.c": "e05151ec4e184c4f2a6ae133296a2a37f6917a45585dcf114eddf6025d269a3d", "persistence.c": "e2233df8fcef4eee4eabaced214e76e5b88f5844e03962a5900266a8fdc9ecfc", @@ -37,7 +37,7 @@ "verify_native.py": "e329133cf080bdd47a4ab7a5e4658e1455a2629c88ed731555e430e6f16b0ec0" }, "limitations": "Synthetic host buffers; not hardware or native timing, audio or persistence qualification.", - "sourceSha256": "1255e99133cbd8d6d2587c95f93462ea80fccbd169462a2acb02aedbd346cbd3", + "sourceSha256": "d7e4896f42468fff30308d7cded104ac0f9803fb3e7279cbab61f65d617c9312", "partValidation": { "instanceMasks": 256, "sanitizers": "ASan/UBSan", diff --git a/sdk/octabam/modules/vector/octamod.module.json b/sdk/octabam/modules/vector/octamod.module.json index 807a2fae4..3251e771e 100644 --- a/sdk/octabam/modules/vector/octamod.module.json +++ b/sdk/octabam/modules/vector/octamod.module.json @@ -174,7 +174,7 @@ "value": 10586112, "unit": "bytes", "method": "static", - "conditions": "Tested reported profile: repitch, vector, playmodes, mute-modes and recorder-loop-fix with stock FX2, original 1.40C. Shared arena 10,586,112 bytes includes 10,487,808 module arena plus 98,304 logger reserve, counted once. Linked runtime 90,780 bytes and packed staging fit within it. VECTOR allocated sections: 13,000 text, 398 rodata and 3,368 data bytes; no BSS or new heap. Complete flash append is 18153 bytes. Maximum observed native commit stack 1,048; Part validation 252; fixed added UI stack bound 1,216. Borrowed stock window, lock indexes and 8-track bank/SRAM capacities are retained. Hardware canaries are unmeasured.", + "conditions": "Tested reported profile: repitch, vector, playmodes, mute-modes and recorder-loop-fix with stock FX2, original 1.40C. Shared arena 10,586,112 bytes includes 10,487,808 module arena plus 98,304 logger reserve, counted once. Linked runtime 90,780 bytes and packed staging fit within it. VECTOR allocated sections (0.3.0, the MIDI generator and on a card the base's generator registry): 22,314 text, 678 rodata, 3,764 data and 144 BSS bytes; no new heap. Complete flash append: 18,153 bytes measured for 0.2.4's profile, counted here as 28,143, that plus the 9,990 allocated bytes 0.3.0 adds (an upper bound; packing makes it smaller). On MIDI tracks VECTOR reuses stock storage only: the tracks' pattern records, 16 arp note bytes and the arp step mask per Part. Maximum observed native commit stack 1,048; Part validation 252; fixed added UI stack bound 1,216. Borrowed stock window, lock indexes and 8-track bank/SRAM capacities are retained. Hardware canaries are unmeasured.", "source": "TESTING.md" }, "processing": { @@ -224,7 +224,7 @@ "evidenceRevision": "645d73da3872ce9111f3e3172114fb33a3660b9f", "qualification": { "moduleVersion": "0.3.0-experimental", - "sourceSha256": "27eca33a8d42bc0b5c56010864915454684d8d61df1a074403a66dda1e3d9a42", + "sourceSha256": "d7e4896f42468fff30308d7cded104ac0f9803fb3e7279cbab61f65d617c9312", "imageSha256": "a753ddf67b0fe64e3742b4c89ecf141071eb30757b170173215e92b1b4794d24", "cycles": [ { @@ -239,8 +239,8 @@ "parameterExtremes": "Firmware-free sanitizer matrix covers all roots/scales/pitch windows and all secondary-control domains. Native instruction probe: 3,840 length/type/scale/seed cases and eight full native commit calls; static loop ceilings cover 64 steps and 2,016 rank shifts. Part-validation probe covers all 256 instance masks; maximum 64,241 executed instructions including the real stock validator, with 252 observed stack bytes. Added adapter has bounded 8-track/12-byte save and restore loops; no per-sample work.", "parameterModulation": "Generator controls are request parameters, not LFO/p-lock/scene destinations. UI knob changes and YES synchronously publish stock trigs and locks; ordinary sample playback modulation remains native.", "modeSwitching": "Current exact-image emulator: all twelve SRC edits, native sample editor, both backing-pool menus, advancing PLAY, native Part save/reload, panel-driven project save/reload, fresh saved-card project load and battery-RAM-only restart. Physical reboot/audio remain untested.", - "maxLoad": "Eight signed audio tracks may auto-fill on one PLAY edge. Conditional UI budget allows one such burst per second at 264 MHz; no audio-thread work is added. Stock rendering/scheduling uses the explicit reserve. Mixed-module audio stress is not measured.", - "inputConditions": "Original integer generator is input-independent. Density up to 64 notes/track; native lock rebuild scans every audio/MIDI lane. Audio sample/FX costs remain stock and are outside the added UI-work bound; hardware audio continuity is untested." + "maxLoad": "Eight signed audio tracks may auto-fill on one PLAY edge. Conditional UI budget allows one such burst per second at 264 MHz; no audio-thread work is added. Stock rendering/scheduling uses the explicit reserve. Mixed-module audio stress is not measured. On a MIDI track one control turn rewrites one phrase on the UI task (no PLAY-edge filling); 0.66 ms was the longest of 40 turns at 64 steps on the owner's MKII.", + "inputConditions": "Original integer generator is input-independent. Density up to 64 notes/track; from 0.3.0 a commit sets only its own track's bit of stock's lock index instead of stock's rebuild of every lane, so the bound over-counts it. Audio sample/FX costs remain stock and are outside the added UI-work bound; hardware audio continuity is untested." }, "report": "evidence/software.json" } @@ -258,9 +258,9 @@ { "name": "Complete tested-profile flash append: bootstrap and packed runtime", "space": "cpu-flash", - "words": 18153, + "words": 28143, "wordBits": 8, - "bytes": 18153, + "bytes": 28143, "scope": "shared" }, { @@ -305,10 +305,10 @@ } ], "perInstanceBytes": 74656, - "sharedBytes": 10607741, + "sharedBytes": 10617731, "maxInstances": 8, - "totalBytes": 11204989, - "conditions": "Tested reported profile: repitch, vector, playmodes, mute-modes and recorder-loop-fix with stock FX2, original 1.40C. Shared arena 10,586,112 bytes includes 10,487,808 module arena plus 98,304 logger reserve, counted once. Linked runtime 90,780 bytes and packed staging fit within it. VECTOR allocated sections: 13,000 text, 398 rodata and 3,368 data bytes; no BSS or new heap. Complete flash append is 18153 bytes. Maximum observed native commit stack 1,048; Part validation 252; fixed added UI stack bound 1,216. Borrowed stock window, lock indexes and 8-track bank/SRAM capacities are retained. Hardware canaries are unmeasured.", + "totalBytes": 11214979, + "conditions": "Tested reported profile: repitch, vector, playmodes, mute-modes and recorder-loop-fix with stock FX2, original 1.40C. Shared arena 10,586,112 bytes includes 10,487,808 module arena plus 98,304 logger reserve, counted once. Linked runtime 90,780 bytes and packed staging fit within it. VECTOR allocated sections (0.3.0, the MIDI generator and on a card the base's generator registry): 22,314 text, 678 rodata, 3,764 data and 144 BSS bytes; no new heap. Complete flash append: 18,153 bytes measured for 0.2.4's profile, counted here as 28,143, that plus the 9,990 allocated bytes 0.3.0 adds (an upper bound; packing makes it smaller). On MIDI tracks VECTOR reuses stock storage only: the tracks' pattern records, 16 arp note bytes and the arp step mask per Part. Maximum observed native commit stack 1,048; Part validation 252; fixed added UI stack bound 1,216. Borrowed stock window, lock indexes and 8-track bank/SRAM capacities are retained. Hardware canaries are unmeasured.", "report": "evidence/software.json" }, "hardware": { diff --git a/src/catalog/vector.test.ts b/src/catalog/vector.test.ts index e68c40e93..7516da28a 100644 --- a/src/catalog/vector.test.ts +++ b/src/catalog/vector.test.ts @@ -19,9 +19,11 @@ const folder = resolve('sdk/octabam/modules/vector') // 0.2.4's emulator and behaviour records stand for its card build; the UI captures are labelled 0.2.5 for publication. const CARD_EVIDENCE = '0.2.4-experimental' // The owner accepted 0.2.4's card evidence for 0.2.6 (6 Nov 2026): 0.2.6 only drops st_setup_page's row-5 test (#1119), in -// control.s and native.c, so the captures stay bound to 0.2.4's native source by name. +// control.s and native.c, so the captures stay bound to 0.2.4's native source by name. 0.3.0 (which carries 0.2.6) adds the +// MIDI generator (midi.c, not a capture input; its card detours in manifest.py and prepare.py) and cheaper commits (engine.c, +// native.c) that give the same phrases; the audio-track screens the captures show are unchanged. const CARD_EVIDENCE_SOURCE = '1255e99133cbd8d6d2587c95f93462ea80fccbd169462a2acb02aedbd346cbd3' -const CHANGED_SINCE_CARD_EVIDENCE = ['native.c', 'control.s'] +const CHANGED_SINCE_CARD_EVIDENCE = ['engine.c', 'native.c', 'prepare.py', 'manifest.py', 'control.s'] const sha = (bytes: Buffer) => createHash('sha256').update(bytes).digest('hex') describe('VECTOR release', () => { @@ -91,7 +93,8 @@ describe('VECTOR release', () => { }) it('binds the recorded firmware-free tests without running native code in application checks', async () => { - expect(coreTests.moduleVersion).toBe(CARD_EVIDENCE) + expect(coreTests.moduleVersion).toBe(draft.version) + expect(coreTests.sourceSha256).toBe(draft.tests.qualification.sourceSha256) for (const [path, hash] of Object.entries(coreTests.sources)) { expect(sha(await readFile(resolve(folder, path)))).toBe(hash) } From 112976632cd8c4f9db1b9caf53c69ee25e222a5e Mon Sep 17 00:00:00 2001 From: repeat98 Date: Sun, 8 Nov 2026 13:23:02 +0100 Subject: [PATCH 24/33] VECTOR 0.3.0: catalogue regenerated, Analog BD proofs re-exported (unchanged), 0.2.5 package removed Co-Authored-By: Claude Opus 5.5 --- .../vector/0.2.5-experimental.mwrm | Bin 18354 -> 0 bytes src/catalog/module-documents.json | 54 +++++++++--------- .../assets/analog-bd-composition-proofs.json | 2 +- 3 files changed, 28 insertions(+), 28 deletions(-) delete mode 100644 public/octatrack-modules/vector/0.2.5-experimental.mwrm diff --git a/public/octatrack-modules/vector/0.2.5-experimental.mwrm b/public/octatrack-modules/vector/0.2.5-experimental.mwrm deleted file mode 100644 index 8a674e559a94b65e94842cc522a57f6bf42011e6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 18354 zcmeHve|%F_w(m-shO`Y3N`;8EJ*Kh7TAETi3~)Pea?+L%Ltp}8@$oP+C1Dh$Eh!c* zk0#-V0l84XkB>VuI%>rtsI9dkbQmTeAFN&;Q;-3MVYm##cnfv_8AQd}yze?E{ej}W zpLu`0&*#k}pU+D6*?aA^*IsMwwbx$zv{N4TOd%cNV>`>=_#6Y=4Ny1zF1?H^ZvMIdg7&GGV`m*Fii(`Oi3*ST2MJa(H*vY$Pjt%m6-p;f3(35> z%`hrLhUnW}L}MQJU44*SmPuhdet+=FWPVC5;qObPB79%V{_h*x45K6D*WVG0kSDUk zzBA&xbmSw+*c|cQ5Yn?rvODZG#vJN+(?Vz04HYS2hnTu*XfdgW+DX+Ep7*!_O35$Q z7_%uy#_q)&UAAUu3FQJe&l8@#c6O*jk3J)t!oJAUT@O9PbFdUWgiqE1aO^QNkOIVoDURh@qX+m?b zTpJi{m1shRfoq@MMk=eF#y71f*H#&(qZHQ zXd9C$(xc57Jz(S~ZiS}DSgZ-hfR$vw5W8lbOdcos4OL?E%6X*8s|+^ruMW6}CS6vy zO}U)VHe_MK2^Co#koYwbF4I>D#cv%;t!YXmR9E#)qeVe zk$--(}G5TmPWKX3;9OV6ygJR{fzt;rJWdJw$WKToHck$tNz&p226R!YI|qwaepe_-@7 z6-^6vMEt`lqxP$M5=Jm~g=&bXZhQAb-<2x;Vm)ltIVb3{k$O=Vb#H1UcP)OQ2TzT@ zLSNTNPUz;5{g)F?Sy0y=cG*eonq*MrFC*jT%T%!OGC8+2(wKVjFWWM0H0$@MlNu>6 zcd~T~d90;09yaODS%{T_TIWzdsftZSt3Lhc328;HmGY!jyn+io71#2h1D9$(nPGF* z2Wd?8XWOY@8I}KL_42{VtKYqU=@gSzvN>$O4&}-kbZL#0tGe_SKg$}DpQTbq={u`2 zZh?uG>5oQSrG^26)&88O^$SQf!=yPHbcUWJRna^97Lsa0HhF?3+cLe0dN6&*J;ADh z%|Txj+!bWQ9-XWF!vyWwh^vHD_Ak;Y`+h3du7In&Rxvobx~Y*Sl;>9DM^{7F$p;`m zXV^!oIV@M5mb8AYHpsY5>z~x_jy|c*rV3+&WYV5}{evz_bV&x%u7Lj)hr{R02ts3y z^O51OUSVJ~3=1PVsa{R_M9$SHA2L{J7FrX^p8eHj8t?HokZ>_Z@3i?&x!_^y#i^)uR~Lug+4mH6AM^yh)cuR5bx#>ezL-tf zqG#2lPf368gH#@uvXN!n-E6XDQ`JCE5Hh9i1?aP_IOIKVuqOP0XX2$;A#+u>8YK9roP1aUJdt^S zxVp>O9POeEm)b~2_AP4CO_&~XhG5gzr(CAtn?E!qX+uP+3rB-nrIt128R<<%@~o*! zYF^{d=xOt;S6b(tEBQ<}(X%G~$~N*Igl30V4SrqPAFRZR%@?tjgcj&hwLD*!Y9(X9 z08X+hGNYk;Z|>wQ%dL7^0_8GnjY zhcJeSF)RkvB#nX68PA|%Oz$zKQZccQ zPWdkHnJQ!dk;AMi$jsR3n3KVJtfdgYJSuy+^FX!D2W2YWO-1^SHZ zc7$h5+LaFaZcF(mX|hecX@gBr_aV<(Z&a~KZ4jXWS=IXBfXlJiTqk^=sj8?!5|*&V zDpqQcZ8R#|p-Zi!dg(~CvS|x!(X)mvk20V!U1eQhdP~qhNYA#I>)T__l!ET+O2h$y zf|j7K110tJAiPU5mmWgNcg&nwFS@I-POe!8S=E)hu@(;HBJQ%1?J^B?w|4C<+wi8? zwBA2^ha?PYSzitcmG9}21kq}xe1?kdXd~sz-n?Sb+Z|*jLG|{&a$aOpenK6&j$a=XTK9 z4!NFpoDkC?PBY{=M3JwR+^t{xWVwd@3wDTzIg2XavkWn*>+KJPc80JvH$4<~hT&gw zcG$7=s^oZhHh2((igYphV2_l{2(llzPw%eekya*u1? zL${Li(~zqo>zdj=X}c1P#L`wI9bLKjCp&}XWi{oClTEbM?J72?AQhouvTS|%hJ7Y- z*$pbQ%4HWcCQZCH#5hL|2a>V3sHBAcwL?~Hp}rX~Uj1Y#6i9+}+jA#l6q`bE#+qBx z^ltB+V?HckL_p7D$a6l|BPVF!cug|ok_Jns*o595g=p#cF(iyyi;1)$-l-8E3=&j4 z&v_Ixg60C|DxiNZD5$qiHgwU*dYjB2#dyTo70Iw19Vn$&=;Ec+H(^_-NmlgCs|s3I zvA(}rT(-e!r4;`#MK9pRpy*Lq0sJht)T+ ze>yWzzSUu(hRKLzRDt9phwH(=qTlooG>2M?$|Z>j7Aw|HT=RE_9Q18lxVz5|%&2MQJ^wiK`8iBv{q(@rKtWcv3xb4+)Ec zh!fNmnpDGu$l}4(p`GD!b=BZtC^d-IWWTyXm1-f?r;){mc$*;@3h0qTQlVWN@2v-p z8vRq^I4Qtc4jeUbG;th$PQY{Gq9!pg5jDCv{zTMh7mKJ# zisOigei|ta^#g|5NN3K>&XnW0la3R!(-CJCGEBZq_gVGs*4VHyRvQ1pVfOI{5ly9~ zZ$(U3PP96E8J~U{iVZ`R=u3$NQiqmYQeE(@|K0o1mHSsNL4@Ga=*Xop5}%t4$?n4y zNgwYU8s0`j08Q(CZ}s#?^fpwX5e@GT_w=e!_w+-rm18Fi0l2^?__4UFzn=%1_;>KY zkw3+1tk77mR&@qL6xyq->xiThVheSZ2GUBX$_yAFOBLFbS_5iT*xv_pw0toV4MDES zz)(lSfs{B-3UJieR}nk+Qq!YO8(0p^9@}BfYVfRyYc?^!noW%Bku^I&)@+Zpux51u z)-1FyTc3!Uq^erfAm7EYB%)kcD`L`Q*ema+R_yx=$%t4l7pG85Nk=RenAoy*UPhp{ zrIFI-4MQwzL>!uixCAk+`B9EWKRv|f0WQ0%K|zC_k5qOg-HA+wu6&xH5^UNa0tnF) zaav+A--M=!@0wr}RJIOs$Su?2EoP;KcV^uzw9cxm^F;LAH|EnJ%X)=R6cRu8`#4u1 znw<~s^BFVg&YzI#5oaS6qSk}C6jn_%T2v%xaJoRo0B6`Dw2t+q!iw{)39w-Iv<)2F zszxkXX$HO&5}XD@eMxn&H4N-QoF`PJISDba+7l{^RESL>-O$3T;|>bj8mP-~>7KPWS~uT^ihYAmayP>2UC_ zXU0;FEn_5QqCAN*Q}f4CG&CeQmV^hTkil3QbkfXdB^3w5!M8v3T>_2a%%K6}`D&oA zz{;Q@>{(T|7V{Bitiy~1%ySi@*xY&%S>-NeJ#k42DrIC*srw3SNwu`5Iyei`ofU2k z&O5!M#8qM;aDSBZ!AqAzihG@~;wN|YN{_l3w{Ym?EBTc!wg@7fz&}PW*h~HF*t9(~szang^yRvKjLy%1Rk$uj5 z9kiiNGmHb}UsVPJ6HPQdgmEc0o;gLlJ&ISXyY;V*LMusS8~Wz}lvD8mJ_}n(Z;~32 z`{6m-FW^j!yi}m}$iCG4Ep#A+43-6>7yI=lb)eQ0QffeP!Y%0;Z=#jeLu(Q83(Q;h zi{Q;-#VN+Ikj6Qd@I8#X^*@%Qc82ogs7V^Zr5`?le1RUiF!M_7o{wEM{hhBki-8Pa z*&@y@v^O`B5l_xVjdWi%*Zj66gy-?V6+Z4Vs2-cL88z9;%@Ifx?N3qC0$*?zex88_M+W_CI=kw?{9etJy8<~z&6M5;I zi|(1Rv$jjIi|p-XnH{pKM%rR$-L0P%6y(Lu-E0*g=2^{z(Q=T$9*3<=sg9XUh`;Q?*i_yGwRyD@^ zT&9jw9qGSK)4N^BBYiuv=T8<@)iwtgAhK!-`=9I2=k>GS=JV@U`}l+(E%R=1s{9o5 zO2M1@ZTn8Y1vm8*;2FLBeN=BgPv;zm4et)W7JDxuG}*om#XXgzXh`u;i$c+`Rn?;- z#Z%pQP4-j=1b7T_JFKSFIj;1BlP7&G&fTR0hmZHY!N0?vdpK&&|%D~>D z|20+N ze!VZ(_)@+2=WQF?RtN3ZBSkwV?TwV@=IY*@`EMGHQ%4+tL2ZG3N&2dJ21@)rY7Wk&*>IiCI%Xj7CdZ9p1@x6y{I0VFtW^<-V zG;=;S&3(jd+bS}C;G6IEC_l^*rHoe%>Q_sH$p5BsT~?IGR$Aci44|q5b(}xCTj2F@ zD@{7^4(|tU*BZu^8dC1Y3kZq6Wfc>e*7%nNMzyT*RovXO>y2;qoK`P}cJny0%nsH2 z>;08jtM1k>PGMxGUE!!fo)lhdbP?)zi;1u7y4hDSUf&!fzRx-vUsqT8eFSm)!_lp_ z74j%A`*~f-Guy8CurlaS@nbzw=pAp$_mAgYf0NeLx6pa#O*%j0ZvAFCW^-JAi(r@h zy~o{ZIC=A2IGX=Ipv*h;aS1al?4!K=R+QOBzjZ@Vpsb9ZJUz|^xJQF-^|p@K86_s+ z7@|>X51DkE_)Mb{u&&th5fwIKx4FX6guC_gHrczK+X1`i!QeBw{7%RoKUQMbarnHd z{wpzlOEShZjyY?vD=PNf{H=DcRgd)9azDcZC8SYj)v<(jS^0O$!Le>`J`NL z-`Pm|d6#fEp#mopWKPbSGk1vGdh-mKj<5u>I-txI{?CN7Ei&Zoq4o&QPX_E9v(1^Z z9(Kjg;qcjgvcnyuKF&F*e2pUd6yv-yTbTu9CvM!A>-b|=?2A;6Ma{em2!r@`UXbK_ z{4#w}A#!~wVa4W*|N3%hHC)>;cJT-4!NDev5LM`a0 zgTCNy{o6G;!s#2K!vs!+B1CrXx<=fBd}b`Ne`b_SNv356)!gpQh!%&`>8PYb)x>d} zCxR2?rFxc-!S z^yd|Px)eUy7sciv)7;A?^UItLSz(+2_z|G!R$Rj;JD%Q%H*B!?cdtgT;y{7pr=;RY zxbO{OFl>eBpI~3O`GkA~Xw1caw&bd@2(fG-qWoam9-5AxF3d$R+pwoj92z$MD4@po z1QSPX7r?)T{T2Ku-?SRhGZ#H9TcwZNS|a5}+`mWI76M6kY(~6}eW1GzH}t2uE?Wd< z?#FGO$Q?i5LPCo7;Ey*z--G7lTT`sbn7LunSK!t8-dCv0^(S+7Ap22y?-OC;W^k*w z^4*3Wo-bkMGEl?)1F(LI8Qt}=zvN=9$i~+!+8%ojN&_$ahRg;8k~uTAn@j+E5~ z`W89Pc4kFU&Xt(gLdaBmVn)4RYIqqNX8#Yy6lBbN%*`w{u+5ErSlN9lcA=mC>;cwU z+H=4(z&>^EYGwZZLCQF?UUL1|hk%DslzF*ZlWW{xi38RY&DwBFd=2k6*lQ9JZMuex9KaQFE~z1*Evc;Or6 zZL2SBW%y=6K|hjxji*XGtKU_vx*}-L1z@VNQ^_Fr4MZx6(cS zItp{ZNIkns&nW}Dte|3CB|1{mbpv1M_YAxf5UqS%k;%QyUT7F6NUOIKdA zs-eL~u$Z0%aMQlO$)q{G+WPj zg?s#Q3-eLJUd3kRdhnm1H7^O$yj@sbYyFg9nRMfiN3%XcY`XRqJmX!SvCC+}3x`W? zbOz$SC>|NH_puI&`=S+m`j=0Zn`CZt`rAibC%})csJF8w*kiTPPL9@FJ?n99%&5>I z*Z-oDl|V#=?2!7@&Es)Ks&_P*hBM!2@{zh(C=v(er)NdQfseZS`!b@ZmA6jBYxqXh@ep+ewo%7;V zXzL(k)$WDG^Ul=z`zuN;$MJ;1rL5)O+B;S6@ci&LRV~MLJ(;w;Fmg%vS_ipXKY5Mq ze3+aG#9owclCw#$W@M96hveHE>>P3aWm`Cy8oGIQ$`eNWP7cYlUX~|yyWyeVXof|I z&9K~5jyTiqU_pT#9l@p7rVfYSxG+b%+kWrN{oG#`P%cRM95J<_Lhg zbCfYyuirpIkm+e;7|(*55q>lsezY9D@g_ELwUB`KQsjOz_3B}G6|gelF^Y}J zCLwc40>(&rPlMe&an&c4hR2A?kO5qR-F`Li@R2&yq@t8?!i16zCC&SR$Ef>D+l}ti zrhGji`^C|U5q0Mo@59wHl~lZWr)3JO56j=klzm5X`u>u`T2}R!_kQ-M`xKum`>av;TDvgJ*|k+;xtS~r7q`7 z%yk0bqx>{&P`Q)w1WqDfg~BU=_pl%GFJm_EZcW3nB^0-@AZ zQbu-%ho($+(-fPNit(31(@NYkXvVB*B~)DEo=%>rQ)ke0yUj(DFeusVXq{ey(Wg(d zxxw4?89)I{n?c2s<-ao;9f33+2Yd*467UcJavNO%SOkD~8C?Td3iuyHL$(naP7)1# z1dxuhj%e^$BK>iqL6DXno^Rk5{O$)ps`ns{5U!$cEnw~7SmK+>?`q%FypE^Mfd2{j zIpCLo`oV@2&GOn>y>X(5)ioL;jeZl*40sQ)2e1!t5b$pRAWc zsxk}upbulh_qN3PkZw`BzvbJNoIdz&EsmzQs7<(KEsmwPz)iem?e}t*4D?|D0e~6P zcz^_O0Nj8XfENL00iOUm0XWSO;k= ~*mJiTMWX4(EJRX2K zn9;`!Uhj<%W!C{-1VD$`z{`#T&LAhC1Ec|_0hR$a0l?pV=KvkZ8;k&;4KFT{r3$)& ztnPmW`GPTkM*ydY9#8{7;{o74fco5F0Pvn`28;z@p1F``?i`|#z#EwXz??=F0btW3 zX9FOIk@Eoo0C*VrA^?1hYy)%xpsPISIS(}QS^%v8%pva}06gTK2V5eu5&+{`a{&1O zjDd_DSv>&swT1zEU?wL4m|wva0BDa!ztNc6XdOTg0H31;0BDUq2lxbV5r8p9UjEG4AV4YrGAM*R3NrvEKsEq873Kj70FYDRc)$dJ1SkbK0d4@~QRoGf z1Lgx30G0uQfR%s%?i@El+Z;1__G0IveJAuD?T&;~dQ0G}fGw1H0>=4CSi(g6;@ z96$iD7J&Y?oyemdOr~U2@^9{1`NcC^8_Flte)8EPCk|$gSest8+mh^`X}Glh-S@w7 zBX>XQl)KVhNorC5CnT6Os(+vO*cQ#})<1|3-#PNYk4`u)KE3v|XV2ty9f{^>+O8pY z!lp0=R+2~5j*SpxHQH?Elqi$^szsznrZv&&nNz^^0&E9BtNzG#Ei(3mZD#dDDwO(R$aHKzIQG` zf7e$$t9sz#!Q3k;KjXPpJ{g;w;yqS{kNGl=`C;V1Sk2(|8+Cnq;ao)q;4A9 zT6O8exopQFb_T5cv`C+(66EYk3)~%>{in5?|0(~ON0*OJZaY5u5A=NF zhNVkKZCgKdXcH`Po0weF#<EJ4UH-w8duu$0r@g%UvnPI()-iwG{|5J6 B^U(kR diff --git a/src/catalog/module-documents.json b/src/catalog/module-documents.json index 780d8a885..d15288dcb 100644 --- a/src/catalog/module-documents.json +++ b/src/catalog/module-documents.json @@ -6207,7 +6207,7 @@ "id": "vector", "key": "VECTOR", "name": "VECTOR", - "version": "0.2.6-experimental", + "version": "0.3.0-experimental", "category": "machines", "source": { "repository": "https://github.com/repeat98/modwerk", @@ -6215,7 +6215,7 @@ "path": "sdk/octabam/modules/vector" }, "access": { - "location": "Audio track machine chooser: VECTOR, then the native-sized Static/Flex backing-pool modal. SRC main holds live phrase controls; SRC SETUP holds secondary controls. Double-tap TRACK reopens pool choice; push LEVEL toggles ordinary sample editing.", + "location": "MIDI tracks: MIDI NOTE SETUP's generator list, then the SRC and AMP pages and FUNC+AMP. Audio tracks: machine chooser VECTOR, then the Static/Flex pool modal; SRC holds phrase controls, SRC SETUP the rest. Double-tap TRACK reopens pool choice; push LEVEL for sample editing.", "steps": [ "Select an audio track. Open SRC page 2 (double-tap SRC), choose VECTOR and press YES. In the backing-pool modal, highlight STATIC or FLEX with UP/DOWN or LEVEL, then press RIGHT to enter that pool. YES also opens the highlighted pool; YES on a loaded sample slot assigns that pool and sample to VECTOR. Use the corresponding stock sample-slot and file-loading tools to load a tuned sample; NO returns from the sample browser.", "Double-tap the assigned TRACK to reopen the pool modal. LEFT returns to the machine list; RIGHT on VECTOR opens the modal. RIGHT in the pool modal opens the highlighted Static/Flex sample list. In a sample-slot list, LEFT returns to pool choice and RIGHT opens the stock file browser. Horizontal arrows navigate menus without changing the assigned pool; YES on a sample slot commits the pool and sample.", @@ -6385,7 +6385,8 @@ "Shares machine chooser hooks with Analog BD and FM Synth; the configurator and native builder reject those combinations.", "Sample must be tuned to the stated C reference. Generated pitch is limited to the native ±12-semitone range.", "Parameter edits and YES publish during playback. Custom Undo and bar-quantized replacement are not implemented.", - "Uses native pattern/track length, speed and swing. RPT sets a motif length within that track; no independent clock, swing or MIDI output.", + "Uses native pattern/track length, speed and swing. RPT sets a motif length within that track; no independent clock or swing. On a MIDI track it writes trigs and NOTE/VEL/LEN locks that the stock MIDI sequencer sends; it emits no MIDI itself.", + "MIDI tracks (0.3.0): chosen in MIDI NOTE SETUP's list; its controls take the SRC page and the AMP page (FUNC+AMP its second), LFO, FX1 and FX2 stay stock's, and the track's arpeggiator stays off. OCT, VEL and GATE are the track's NOTE, VEL and LEN; choosing VECTOR turns NOT2-4 off. Over USB it needs a base with MIDI generators. Tested on the owner's MKII over USB only; a card build on hardware, power cycles, project save/reload, scenes and LFOs on a VECTOR MIDI track remain untested.", "SRC generation knobs are request parameters, not p-lock/LFO/scene destinations. The normal EDIT view retains native playback controls.", "Generation owns note trigs, PTCH/HOLD/VOL locks and note timing/conditions. Every changed generator parameter or YES replaces those across the current track; other locks, recorder events and swing are preserved.", "The DRAM loader reserves 1,707 audio pages (10,487,808 bytes) shared across DRAM modules.", @@ -6403,7 +6404,7 @@ "value": 10586112, "unit": "bytes", "method": "static", - "conditions": "Tested reported profile: repitch, vector, playmodes, mute-modes and recorder-loop-fix with stock FX2, original 1.40C. Shared arena 10,586,112 bytes includes 10,487,808 module arena plus 98,304 logger reserve, counted once. Linked runtime 90,780 bytes and packed staging fit within it. VECTOR allocated sections: 13,000 text, 398 rodata and 3,368 data bytes; no BSS or new heap. Complete flash append is 18153 bytes. Maximum observed native commit stack 1,048; Part validation 252; fixed added UI stack bound 1,216. Borrowed stock window, lock indexes and 8-track bank/SRAM capacities are retained. Hardware canaries are unmeasured.", + "conditions": "Tested reported profile: repitch, vector, playmodes, mute-modes and recorder-loop-fix with stock FX2, original 1.40C. Shared arena 10,586,112 bytes includes 10,487,808 module arena plus 98,304 logger reserve, counted once. Linked runtime 90,780 bytes and packed staging fit within it. VECTOR allocated sections (0.3.0, the MIDI generator and on a card the base's generator registry): 22,314 text, 678 rodata, 3,764 data and 144 BSS bytes; no new heap. Complete flash append: 18,153 bytes measured for 0.2.4's profile, counted here as 28,143, that plus the 9,990 allocated bytes 0.3.0 adds (an upper bound; packing makes it smaller). On MIDI tracks VECTOR reuses stock storage only: the tracks' pattern records, 16 arp note bytes and the arp step mask per Part. Maximum observed native commit stack 1,048; Part validation 252; fixed added UI stack bound 1,216. Borrowed stock window, lock indexes and 8-track bank/SRAM capacities are retained. Hardware canaries are unmeasured.", "source": "TESTING.md" }, "processing": { @@ -6439,18 +6440,17 @@ }, "tests": { "report": "TESTING.md", - "summary": "Firmware-free generator/writer and all 256 VECTOR-instance masks pass ASan/UBSan; authored assembly reproduces. Exact-image ColdFire emulator tests reproduce the previous reset/stuck transport and pass two-instance Part/project save-reload, saved-card fresh load and battery-only restart. Twelve SRC controls, ordinary stock validation, both pool menus and advancing transport are checked. Physical reboot/audio remain untested under the exact-version owner exception.", + "summary": "0.3.0 adds VECTOR as a MIDI generator for the MIDI tracks and makes edits cheaper: a 64-step rewrite took 0.5 ms on the owner's MKII (3.9 ms before), with audio frames and MIDI timing steady. The list, the SRC, AMP and FUNC+AMP pages, generation, PROB and HUMN against recorded MIDI, grid-recording locks, removal and reinstall ran on the owner's MKII over USB with development bases (21 and 24 October 2026); the card build was checked by octabam's native builder only. Current-build hardware, chip cycles and complete memory bounds are not measured, under the owner's approval for this exact source.", "hardwareStatus": "reported", "evidenceRevision": "645d73da3872ce9111f3e3172114fb33a3660b9f", "gates": [ "Firmware-free sanitizer generator, writer and packed-settings checks", + "Hoisted scale lookup identical to 0.2.4 over 18,144,000 parameter sets", "Authored C/hooks to assembly reproducibility without firmware", - "Current native SRC and sample-pool emulator behavior walks", - "ColdFire instruction/stack probe and conditional resource accounting", + "Base MIDI generator registry host test (sdk/tests test_midi_generators.c)", + "Owner's MKII over USB: list, SRC/AMP pages, generation, MIDI output, PROB and HUMN timing, grid-recording locks, removal, MODE guard, edit cost", "Browser/native build parity and matching composition rejection", - "Signed Part validator preservation for all 256 track masks", - "Two-instance native Part/project save-reload, saved-card fresh load and battery-RAM-only restart", - "Exact-version owner exception; physical reboot/audio unverified" + "Owner-approved update for this exact source; current-build hardware, chip cycles and memory bounds unmeasured" ], "qualification": { "documentation": { @@ -6477,8 +6477,8 @@ ], "screenshotStyle": "black-and-white" }, - "moduleVersion": "0.2.6-experimental", - "sourceSha256": "27eca33a8d42bc0b5c56010864915454684d8d61df1a074403a66dda1e3d9a42", + "moduleVersion": "0.3.0-experimental", + "sourceSha256": "d7e4896f42468fff30308d7cded104ac0f9803fb3e7279cbab61f65d617c9312", "imageSha256": "a753ddf67b0fe64e3742b4c89ecf141071eb30757b170173215e92b1b4794d24", "cycles": [ { @@ -6493,8 +6493,8 @@ "parameterExtremes": "Firmware-free sanitizer matrix covers all roots/scales/pitch windows and all secondary-control domains. Native instruction probe: 3,840 length/type/scale/seed cases and eight full native commit calls; static loop ceilings cover 64 steps and 2,016 rank shifts. Part-validation probe covers all 256 instance masks; maximum 64,241 executed instructions including the real stock validator, with 252 observed stack bytes. Added adapter has bounded 8-track/12-byte save and restore loops; no per-sample work.", "parameterModulation": "Generator controls are request parameters, not LFO/p-lock/scene destinations. UI knob changes and YES synchronously publish stock trigs and locks; ordinary sample playback modulation remains native.", "modeSwitching": "Current exact-image emulator: all twelve SRC edits, native sample editor, both backing-pool menus, advancing PLAY, native Part save/reload, panel-driven project save/reload, fresh saved-card project load and battery-RAM-only restart. Physical reboot/audio remain untested.", - "maxLoad": "Eight signed audio tracks may auto-fill on one PLAY edge. Conditional UI budget allows one such burst per second at 264 MHz; no audio-thread work is added. Stock rendering/scheduling uses the explicit reserve. Mixed-module audio stress is not measured.", - "inputConditions": "Original integer generator is input-independent. Density up to 64 notes/track; native lock rebuild scans every audio/MIDI lane. Audio sample/FX costs remain stock and are outside the added UI-work bound; hardware audio continuity is untested." + "maxLoad": "Eight signed audio tracks may auto-fill on one PLAY edge. Conditional UI budget allows one such burst per second at 264 MHz; no audio-thread work is added. Stock rendering/scheduling uses the explicit reserve. Mixed-module audio stress is not measured. On a MIDI track one control turn rewrites one phrase on the UI task (no PLAY-edge filling); 0.66 ms was the longest of 40 turns at 64 steps on the owner's MKII.", + "inputConditions": "Original integer generator is input-independent. Density up to 64 notes/track; from 0.3.0 a commit sets only its own track's bit of stock's lock index instead of stock's rebuild of every lane, so the bound over-counts it. Audio sample/FX costs remain stock and are outside the added UI-work bound; hardware audio continuity is untested." }, "report": "evidence/software.json" } @@ -6512,9 +6512,9 @@ { "name": "Complete tested-profile flash append: bootstrap and packed runtime", "space": "cpu-flash", - "words": 18153, + "words": 28143, "wordBits": 8, - "bytes": 18153, + "bytes": 28143, "scope": "shared" }, { @@ -6559,10 +6559,10 @@ } ], "perInstanceBytes": 74656, - "sharedBytes": 10607741, + "sharedBytes": 10617731, "maxInstances": 8, - "totalBytes": 11204989, - "conditions": "Tested reported profile: repitch, vector, playmodes, mute-modes and recorder-loop-fix with stock FX2, original 1.40C. Shared arena 10,586,112 bytes includes 10,487,808 module arena plus 98,304 logger reserve, counted once. Linked runtime 90,780 bytes and packed staging fit within it. VECTOR allocated sections: 13,000 text, 398 rodata and 3,368 data bytes; no BSS or new heap. Complete flash append is 18153 bytes. Maximum observed native commit stack 1,048; Part validation 252; fixed added UI stack bound 1,216. Borrowed stock window, lock indexes and 8-track bank/SRAM capacities are retained. Hardware canaries are unmeasured.", + "totalBytes": 11214979, + "conditions": "Tested reported profile: repitch, vector, playmodes, mute-modes and recorder-loop-fix with stock FX2, original 1.40C. Shared arena 10,586,112 bytes includes 10,487,808 module arena plus 98,304 logger reserve, counted once. Linked runtime 90,780 bytes and packed staging fit within it. VECTOR allocated sections (0.3.0, the MIDI generator and on a card the base's generator registry): 22,314 text, 678 rodata, 3,764 data and 144 BSS bytes; no new heap. Complete flash append: 18,153 bytes measured for 0.2.4's profile, counted here as 28,143, that plus the 9,990 allocated bytes 0.3.0 adds (an upper bound; packing makes it smaller). On MIDI tracks VECTOR reuses stock storage only: the tracks' pattern records, 16 arp note bytes and the arp step mask per Part. Maximum observed native commit stack 1,048; Part validation 252; fixed added UI stack bound 1,216. Borrowed stock window, lock indexes and 8-track bank/SRAM capacities are retained. Hardware canaries are unmeasured.", "report": "evidence/software.json" }, "hardware": { @@ -6602,7 +6602,7 @@ "page": "SRC SETUP machine chooser", "shows": "location", "firmware": "1.40C", - "moduleVersion": "0.2.6-experimental", + "moduleVersion": "0.3.0-experimental", "imageSha256": "cabcc2967a23a0ef719a38de444aec1b68662c12bb9057093d475b89424d0026", "setup": "Native ColdFire port, MKII panel mapping; original 1.40C, reported five-module composition, disposable RIG card, T1/T5 Flex with distinct VECTOR settings, Part ONE, A01, 120 BPM. Actual LCD plane plus visible stock windows rendered at 6x nearest-neighbor in monochrome. Stand-in DSP; no physical hardware or audio qualification." } @@ -6619,7 +6619,7 @@ "page": "SRC generator", "shows": "controls", "firmware": "1.40C", - "moduleVersion": "0.2.6-experimental", + "moduleVersion": "0.3.0-experimental", "imageSha256": "cabcc2967a23a0ef719a38de444aec1b68662c12bb9057093d475b89424d0026", "setup": "Native ColdFire port, MKII panel mapping; original 1.40C, reported five-module composition, disposable RIG card, T1/T5 Flex with distinct VECTOR settings, Part ONE, A01, 120 BPM. Actual LCD plane plus visible stock windows rendered at 6x nearest-neighbor in monochrome. Stand-in DSP; no physical hardware or audio qualification." } @@ -6636,7 +6636,7 @@ "page": "SRC after Generate", "shows": "controls", "firmware": "1.40C", - "moduleVersion": "0.2.6-experimental", + "moduleVersion": "0.3.0-experimental", "imageSha256": "cabcc2967a23a0ef719a38de444aec1b68662c12bb9057093d475b89424d0026", "setup": "Native ColdFire port, MKII panel mapping; original 1.40C, reported five-module composition, disposable RIG card, T1/T5 Flex with distinct VECTOR settings, Part ONE, A01, 120 BPM. Actual LCD plane plus visible stock windows rendered at 6x nearest-neighbor in monochrome. Stand-in DSP; no physical hardware or audio qualification." } @@ -6653,7 +6653,7 @@ "page": "SRC sample editor", "shows": "controls", "firmware": "1.40C", - "moduleVersion": "0.2.6-experimental", + "moduleVersion": "0.3.0-experimental", "imageSha256": "cabcc2967a23a0ef719a38de444aec1b68662c12bb9057093d475b89424d0026", "setup": "Native ColdFire port, MKII panel mapping; original 1.40C, reported five-module composition, disposable RIG card, T1/T5 Flex with distinct VECTOR settings, Part ONE, A01, 120 BPM. Actual LCD plane plus visible stock windows rendered at 6x nearest-neighbor in monochrome. Stand-in DSP; no physical hardware or audio qualification." } @@ -6670,7 +6670,7 @@ "page": "SRC SETUP", "shows": "controls", "firmware": "1.40C", - "moduleVersion": "0.2.6-experimental", + "moduleVersion": "0.3.0-experimental", "imageSha256": "cabcc2967a23a0ef719a38de444aec1b68662c12bb9057093d475b89424d0026", "setup": "Native ColdFire port, MKII panel mapping; original 1.40C, reported five-module composition, disposable RIG card, T1/T5 Flex with distinct VECTOR settings, Part ONE, A01, 120 BPM. Actual LCD plane plus visible stock windows rendered at 6x nearest-neighbor in monochrome. Stand-in DSP; no physical hardware or audio qualification." } @@ -6687,7 +6687,7 @@ "page": "Backing-pool choice", "shows": "controls", "firmware": "1.40C", - "moduleVersion": "0.2.6-experimental", + "moduleVersion": "0.3.0-experimental", "imageSha256": "cabcc2967a23a0ef719a38de444aec1b68662c12bb9057093d475b89424d0026", "setup": "Native ColdFire port, MKII panel mapping; original 1.40C, reported five-module composition, disposable RIG card, T1/T5 Flex with distinct VECTOR settings, Part ONE, A01, 120 BPM. Actual LCD plane plus visible stock windows rendered at 6x nearest-neighbor in monochrome. Stand-in DSP; no physical hardware or audio qualification." } @@ -6704,7 +6704,7 @@ "page": "Static sample pool", "shows": "controls", "firmware": "1.40C", - "moduleVersion": "0.2.6-experimental", + "moduleVersion": "0.3.0-experimental", "imageSha256": "cabcc2967a23a0ef719a38de444aec1b68662c12bb9057093d475b89424d0026", "setup": "Native ColdFire port, MKII panel mapping; original 1.40C, reported five-module composition, disposable RIG card, T1/T5 Flex with distinct VECTOR settings, Part ONE, A01, 120 BPM. Actual LCD plane plus visible stock windows rendered at 6x nearest-neighbor in monochrome. Stand-in DSP; no physical hardware or audio qualification." } @@ -6721,7 +6721,7 @@ "page": "Flex sample pool", "shows": "controls", "firmware": "1.40C", - "moduleVersion": "0.2.6-experimental", + "moduleVersion": "0.3.0-experimental", "imageSha256": "cabcc2967a23a0ef719a38de444aec1b68662c12bb9057093d475b89424d0026", "setup": "Native ColdFire port, MKII panel mapping; original 1.40C, reported five-module composition, disposable RIG card, T1/T5 Flex with distinct VECTOR settings, Part ONE, A01, 120 BPM. Actual LCD plane plus visible stock windows rendered at 6x nearest-neighbor in monochrome. Stand-in DSP; no physical hardware or audio qualification." } diff --git a/src/engine/assets/analog-bd-composition-proofs.json b/src/engine/assets/analog-bd-composition-proofs.json index a86493a9d..fe82aa67d 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": "9a824ef6dc7299be4b7acc29278cac52bdbf0f252018bcedc3c552da572e1610", + "moduleSourceTreeSha256": "cc211a576fc3c4bb79b33d69b31782f1d290a7a43cddb66a1ebe8a88a92c51f3", "packing": null, "proofs": [ { From 93417cf43904075e3a9fb503a3202c0455595b71 Mon Sep 17 00:00:00 2001 From: repeat98 Date: Sun, 8 Nov 2026 13:25:39 +0100 Subject: [PATCH 25/33] VECTOR 0.3.0: native comparison (76 matching images, 110 matching refusals, 0 mismatches) Co-Authored-By: Claude Opus 5.5 --- sdk/native-comparisons/vector.json | 3547 +++++++++++++++++++++------- 1 file changed, 2636 insertions(+), 911 deletions(-) diff --git a/sdk/native-comparisons/vector.json b/sdk/native-comparisons/vector.json index 5fb16411d..f5a9deed0 100644 --- a/sdk/native-comparisons/vector.json +++ b/sdk/native-comparisons/vector.json @@ -1,8 +1,8 @@ { "schemaVersion": 1, "moduleId": "vector", - "moduleVersion": "0.2.6-experimental", - "moduleSourceSha256": "27eca33a8d42bc0b5c56010864915454684d8d61df1a074403a66dda1e3d9a42", + "moduleVersion": "0.3.0-experimental", + "moduleSourceSha256": "d7e4896f42468fff30308d7cded104ac0f9803fb3e7279cbab61f65d617c9312", "revision": "b8deefc88b2c3e5f3c6158e364eb741df1924e1d", "originalOsSha256": "164f31224bf61181e3f50e7dec40df9afcae5b16dbf6e4c0d0cc5e986af0a84e", "pool": [ @@ -34,14 +34,20 @@ "direct-jump-kyoti", "dejavu", "arp-key-locks", - "beat-slicer" + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "summary": { - "selections": 162, - "built": 54, + "selections": 186, + "built": 76, "identicalOutright": 0, - "identicalOutsidePlatformWrites": 54, - "refused": 108, + "identicalOutsidePlatformWrites": 76, + "refused": 110, "mismatches": 0 }, "selections": [ @@ -81,9 +87,9 @@ ] }, "native": { - "bytes": 1121067, - "osSha256": "c3d36297974621086c554585e822b13958cf59a5aa017e10a278ec37e455ecc9", - "maskedOsSha256": "fa2b6d59ad779563aa77690ccf43d56378ba80742ca1d3b16aca63763d8d5958" + "bytes": 1126984, + "osSha256": "df103a96522184c807f6df8ff0f78f9992a4d55d1a45c9f2b95a2fd1558a4234", + "maskedOsSha256": "ea57ac476a858272f1692e4ec893c1a2ba678c55aeb770645f3e076ba5b9d509" }, "result": "masked" }, @@ -108,9 +114,9 @@ "fx2": [] }, "native": { - "bytes": 1121067, - "osSha256": "3ae7b28075e0eee4bdb0e2ce6de91ce0882e3bb68392d2fa7e88185ec6685ed0", - "maskedOsSha256": "58fc4fce2912a0c852109b0950c0b10fb4d10b5c79de2c1ea43619a46d0c6b10" + "bytes": 1126984, + "osSha256": "3ce69d42fe169b12ed73f548bcfe41ff9c10fc6ea17a03f279fcaac72a67d36a", + "maskedOsSha256": "5c289c8bfa92b1d922a6b19ba8cfe12fad4e91a8bc86e161761132a8d7aa5b93" }, "result": "masked" }, @@ -151,9 +157,9 @@ ] }, "native": { - "bytes": 1121067, - "osSha256": "9b12e69e1eb8b7c12a09f9a4e282fdb8eb378098f128a3b020e8051e6c8fc906", - "maskedOsSha256": "9b64aff5ac39777ef583f646655be8e88024a60c230f20521f32e09e5c3f8499" + "bytes": 1126984, + "osSha256": "1bc9dffa0ba563e9da5603ed7c1b64363cf9e6374dca0131f66bd5398026be59", + "maskedOsSha256": "ed566c13a19cf2e6cd94e3cc93767d1a362a710a398ee85d2d34d06cf91adb53" }, "result": "masked" }, @@ -181,9 +187,9 @@ ] }, "native": { - "bytes": 1121067, - "osSha256": "f95394815364b93b6a34892640d1e3d4a4f7a24b9b230e8a5e621d0cc8e89802", - "maskedOsSha256": "a7429deb8e0126cc35feb518220207a01f05362c79b3ea8d1c9f3052c2f77929" + "bytes": 1126984, + "osSha256": "6354cefc316b5ecd77e1e8122fcda6bc9f09a11569505da15cf5fe1c67fd4c54", + "maskedOsSha256": "6b1b83a0f7066228a973a3b7e36106665b96de668be07969e0bf5ed63612700c" }, "result": "masked" }, @@ -224,9 +230,9 @@ ] }, "native": { - "bytes": 1223304, - "osSha256": "5613e610c2a8ee2dd91efbc3361f737ba7d470f800abe5c708114ab390753d17", - "maskedOsSha256": "1483ab1ccbb936d2a4a059f007c0ae2d71d6ffed51d89a7159fb9e228c5fab07" + "bytes": 1229220, + "osSha256": "b8d8f81bde20adcbc86b856b13e6a9829de36cbce3d91ba3a4016698641907e3", + "maskedOsSha256": "00472ab2105e1015615230d0b591cb5a03a6b0599f8ca8e5ee560196554123b3" }, "result": "masked" }, @@ -254,9 +260,9 @@ ] }, "native": { - "bytes": 1223304, - "osSha256": "ef4734fc9a4417c5d59c30cb3623bb31ef3241136c9ecdad46436fd9e21ee3b7", - "maskedOsSha256": "802b0b18bc226f6664e65ec6a83f50f90ac4d105fee29996fc1f0fe2523e356a" + "bytes": 1229220, + "osSha256": "5edda5057109d8eeb3c7b9e6b09cf51e2c7ed5bb574d3abf71f9c3736e57925b", + "maskedOsSha256": "a89a559565a42fe31c5ab1cd70e1684431adbf59594115b0f7c34d40c18dc5cf" }, "result": "masked" }, @@ -298,9 +304,9 @@ ] }, "native": { - "bytes": 1123156, - "osSha256": "b245428770c8c2f3e2ac05c8897f205d1ea4e98025973221493bac49cc47abd1", - "maskedOsSha256": "7154affc7e732351a235633f7f2709e4482875afbece76cec7570c795ae18a29" + "bytes": 1129093, + "osSha256": "9e88b73fd944f46db0ebd1879c5772b2ed49d6360a1e934a2405458bc8e9beb2", + "maskedOsSha256": "86b1a0d9fc254a9d668537fea34ac63cf3eb6abe45d9d81db8aa1a508a7ff799" }, "result": "masked" }, @@ -329,9 +335,9 @@ ] }, "native": { - "bytes": 1123156, - "osSha256": "c6df191749b132e36e4231c8532471feab824cb6edb20f51cce30158dcb9db7c", - "maskedOsSha256": "a2d0a7cdbe01183023511a2e1490c4f6add7b418670a5dc453b92521ed983f13" + "bytes": 1129093, + "osSha256": "91706b209fc299c15225dc61241662bee53a0d1b178df626f60a4d9e9e550c5a", + "maskedOsSha256": "f1f4a8d2bea0e88b20fcef1c6a450fd8c60d8d2298f6473eeb6ae79949b7a681" }, "result": "masked" }, @@ -372,9 +378,9 @@ ] }, "native": { - "bytes": 1121067, - "osSha256": "4e656106422243d366604964304f459aa06cc9edf43e4e785c197aae6626d486", - "maskedOsSha256": "b7853b768d03ac949fd3bd5b4c4190e67720875029ae91920614e523862a959e" + "bytes": 1126984, + "osSha256": "af5d3797d217e342efad274db0c7d2fce4cd7f7ed73b8acbbf6f494aa37eb3af", + "maskedOsSha256": "4005d63b2191e9635ed7aebe94c461284bebec28068bb2c3285ccc7007b30d2e" }, "result": "masked" }, @@ -400,9 +406,9 @@ "fx2": [] }, "native": { - "bytes": 1121067, - "osSha256": "3284bf5dbe902ce67dca6f739b79a4c0721afaede15138b872f7123634a21139", - "maskedOsSha256": "8ab2c80ce2bb842c5842a81549a5903fb23d2cd01e1b7cf9e5fdd5038e5d9e82" + "bytes": 1126984, + "osSha256": "3899af2827c40b846536feb13d9c2387655e783cc9dd552668e609a60f5fd81b", + "maskedOsSha256": "cbda215b17b6a0fd01225edc89ffdd1358f47bd8bcf220dcb4ce62d233e74ae3" }, "result": "masked" }, @@ -444,9 +450,9 @@ ] }, "native": { - "bytes": 1121067, - "osSha256": "839e6b1f96fefb9730b54ee4964d80515733729ff1323938b6569aa91c599847", - "maskedOsSha256": "6286425cd0016fa66dd89671a3767173153f0a5c10fa0905e272c6d82f4a79ae" + "bytes": 1126984, + "osSha256": "60f394ba68af812c23f594b8a5d7ae3fca6999e61d7e96037ac1f4c5b1c67732", + "maskedOsSha256": "e2831629bb2790f7b3d53bb7d93abfae6f69c8923361dbef8634fb7cb36a4b52" }, "result": "masked" }, @@ -475,9 +481,9 @@ ] }, "native": { - "bytes": 1121067, - "osSha256": "e155961c881698a0ea13cc9f71fefc0b23545e1265d6dfb689e5433ee38a6843", - "maskedOsSha256": "c85dde736d7516b1fcd9aafe17e4c08a964c625ff834f359c8292659f1171f19" + "bytes": 1126984, + "osSha256": "b14f3ba0a489ff61c7ec67a67fba68416f4d25858ad6a47b3286717c6d87e146", + "maskedOsSha256": "d9dd59d50facd57dbefa470c0ca92acb9cb055027359055d4d63b80f52f03dce" }, "result": "masked" }, @@ -518,9 +524,9 @@ ] }, "native": { - "bytes": 1121067, - "osSha256": "ae5bedda685386ce47d84a4c46d30a845ba29554d6037010b9c09caed0225a90", - "maskedOsSha256": "3cc48c8359d11fff632561ee0fa7765b3771c62f9fd5a1db074c649d99486819" + "bytes": 1126984, + "osSha256": "cb0b6f849eb15d3b745d182e82f267e613ab20beea5cbb0519f961341f14ae1b", + "maskedOsSha256": "cb1a5e4038f92179da9f4cd4ef00fe9a8a43631b932619affe39f6b162db9474" }, "result": "masked" }, @@ -548,9 +554,9 @@ ] }, "native": { - "bytes": 1121067, - "osSha256": "23fdcd850f080ef34c317ab551b96717b0ac84e72dd4de4c229b1f6d539d24d6", - "maskedOsSha256": "d4cf2f1cacfe88cd68ce0de3c5bcab4e5fec24b36fe4668144f571f44b647c82" + "bytes": 1126984, + "osSha256": "05b2efa38f6537f5b437f08568217292d89b5e1f198c92dfc929ed376d2a1dc4", + "maskedOsSha256": "1e6e1ea4299c34401f7a9595739b39c55c0865ceef967f2d04b84c7a274c4556" }, "result": "masked" }, @@ -590,9 +596,9 @@ ] }, "native": { - "bytes": 1121067, - "osSha256": "20f71db85a5880da55edeb938a2f186571b228c7a11656a3b14b16311b09f44a", - "maskedOsSha256": "f450a373262f456f64fbd168c6a6abf0a2a6d0c268c0073773c60f27e4dde8c9" + "bytes": 1126984, + "osSha256": "1a1015bcc409d5d2c3fdc58235a440db0fa3cac3da0b2826cda3ac9a38c3b88c", + "maskedOsSha256": "da4434f752e3d6e2e1133e364d0041355804209e57063d43c18973c5894965de" }, "result": "masked" }, @@ -620,9 +626,9 @@ ] }, "native": { - "bytes": 1121067, - "osSha256": "42ac32b745676d2e90e152452871da9b3ef1c75554c9ec38f3660450119e237a", - "maskedOsSha256": "3be49c642f96b6ecae1e6ecdc1966b06ada809ecedf098de91dd03e84fbed36f" + "bytes": 1126984, + "osSha256": "2c77bd6c77528ebfa0c6d0487dadcc6e7c423d590169a4338b72becb33c6a8b4", + "maskedOsSha256": "b8b0059f294e4cbcc6a8cb432c696c8c6e72720999726412933a9ff3cae86517" }, "result": "masked" }, @@ -662,9 +668,9 @@ ] }, "native": { - "bytes": 1121094, - "osSha256": "c0a654f07ff0775969fc318a2a29c81a1ed3503d4a7938f8bb8af7d96b741f37", - "maskedOsSha256": "3604a2a3ab9c9004aca27f7aee80ec30b1e214ec1a213de6febfa92143df0fde" + "bytes": 1127012, + "osSha256": "ac5f95c2c1cd5c3e3a9b561adea4b19b87c563978436b1eb3fbb97e0c9e28c4d", + "maskedOsSha256": "5c285126e0defd5a47ffa5a6e705b6f9b5e1d4bd2815e1a0319803d75a2fe42b" }, "result": "masked" }, @@ -692,9 +698,9 @@ ] }, "native": { - "bytes": 1121094, - "osSha256": "46d9f78929305dd95092544ce661398597db78460efce98c01aa12ad1a6d3039", - "maskedOsSha256": "40b08f3d941622bae75de412346465c177abde1b406d29632c8e5c269cbb19d9" + "bytes": 1127012, + "osSha256": "4942ab1dbe1798ed63248a4f4dbf2193fd5e99df43374965146141eace1f2125", + "maskedOsSha256": "bfb2bf80282fbb1f80f01b27089beb4f8c8c7a5b11ccfe7e5613737f66ecd06a" }, "result": "masked" }, @@ -734,9 +740,9 @@ ] }, "native": { - "bytes": 1121067, - "osSha256": "91fb06dc60c9f18f4e4b13738fb8c94c48347d44199447d424efd8293f0df57d", - "maskedOsSha256": "ae25fb14da025ee6d6dbd6438dc3eda85a777dfa530e0c0c1a2743ac1c16d31f" + "bytes": 1126984, + "osSha256": "e7d399c53b3d55ae84b0c055c80b6277022676dc36004c639b7449606920ae53", + "maskedOsSha256": "618375830639c2ffa926cc9a282dae96b2f000110d2b49b7b6d08f72dcded710" }, "result": "masked" }, @@ -764,9 +770,9 @@ ] }, "native": { - "bytes": 1121067, - "osSha256": "36bc017dd9cad50aeba286762f424ff08acf374f753b7d7287eca42307832619", - "maskedOsSha256": "08c889a768e7bde165f673de3bced168643b415e62444786d67e230f35e72db3" + "bytes": 1126984, + "osSha256": "aed22a05c7641fc54fed3920d54efc7ccde5970ce29f21ad697138cc90598eeb", + "maskedOsSha256": "b8e383fc88b9b22c1b40e1fba385aa66d430a6e5fd4f9601c960ece5b77ca3da" }, "result": "masked" }, @@ -808,9 +814,9 @@ ] }, "native": { - "bytes": 1121067, - "osSha256": "96e30b065e5bac010a15be8dd524b1eea161e76c69b476136112937a090094de", - "maskedOsSha256": "dcb5e0a1ec7683706a53f8d5dd6d485960b5d2ecc3c0e0b3e6c958974aead8dd" + "bytes": 1126984, + "osSha256": "454274be4c6d5973f2305857704d13ca2bee6d72c4e4351f875fc7433e207b5d", + "maskedOsSha256": "3156e69ef02108f2aa859737c3d25d0bd12c2c8e360b0562833ffdbd09881836" }, "result": "masked" }, @@ -839,9 +845,9 @@ ] }, "native": { - "bytes": 1121067, - "osSha256": "730ee8522c914b7c9d754b6dcffc02207eee1b6e066642d7a4ce98534a34e4c8", - "maskedOsSha256": "94f3fd420bcd30cc84fee7e5fa0791c470cdc4115b9d90fbe1e15597156ec82f" + "bytes": 1126984, + "osSha256": "c77baf76c69244fe74113dd883f85843fefc645358a61079ac7b68f8cacb19ea", + "maskedOsSha256": "1037afe245afe88a90fa2110c6143d3411ca1f96f49dc73e9c85eedf76a664aa" }, "result": "masked" }, @@ -948,9 +954,9 @@ ] }, "native": { - "bytes": 1123760, - "osSha256": "05cd02e2fc6cbfe928d3fe81570a00fefaf5cb0096f4508cd690db91cb238e7b", - "maskedOsSha256": "df5cf853664a9a0da0787b898c243029bf9efa966f899c56e08f6f09f9d08f0e" + "bytes": 1129731, + "osSha256": "968e6b67743c5c0820bd6aeaa6d33e70a4f4f05194179260b4b2802df4117be9", + "maskedOsSha256": "b797c1013d52417263f3aab918c71f92e7593c072be406d9e3dc5aaedd279cf1" }, "result": "masked" }, @@ -976,9 +982,9 @@ "fx2": [] }, "native": { - "bytes": 1123760, - "osSha256": "287857a4b8964c4b9b6109a490fd6b2f4d752fd262a8b514f02e5f6e3b6e4f85", - "maskedOsSha256": "cebce07989bbf30622320039d7572c399d6cd01e7d5d97f847a51ce7ba58149c" + "bytes": 1129731, + "osSha256": "ddb721a348698cad4955830c97765f88dbab4494fcef8d56fe11def2fd2895a2", + "maskedOsSha256": "0d1a9f940deaee78215469219738aa2ff80a67d0f4f427c80681dac37d9cf7b8" }, "result": "masked" }, @@ -1019,9 +1025,9 @@ ] }, "native": { - "bytes": 1123261, - "osSha256": "851a138c38786ac66456d7bde06b2073fc1e678ecdf5144af2f93668422bc8c2", - "maskedOsSha256": "240f76e05c7789c38d5e18566b5579b33ac740ae450f32a27c2188b6bdc94da5" + "bytes": 1130290, + "osSha256": "6df867ebf98339233634b46974fd88e1aeb246f34c6308b7541dc06ea094bfb4", + "maskedOsSha256": "25e99d06a18a569c1872fb104c26135502c35372d3d517e063591c84e302f331" }, "result": "masked" }, @@ -1047,9 +1053,9 @@ "fx2": [] }, "native": { - "bytes": 1123261, - "osSha256": "ec94b0f8a9fd498038132b788a9cdf5ad619687262881e546e9bb45dfbe568a0", - "maskedOsSha256": "36e05863a742eaf061469bc5a5f9cc05566ebf54c925d54d4029a3b276fed943" + "bytes": 1130290, + "osSha256": "c341835d8ab2e0c7932ef62d2c3cb5212dc30c6f25024e3bc25b8d04b763fe6d", + "maskedOsSha256": "2b5dc65cb128bce7d4c9445df3063ee92812b55ac2b15bfe0d3e6018e1ad552b" }, "result": "masked" }, @@ -1157,9 +1163,9 @@ ] }, "native": { - "bytes": 1121067, - "osSha256": "ae065d24925cc470fe1f84b9080dfed505a8234570270e7bb6fc931dbc4fad72", - "maskedOsSha256": "c6b753f2c6b495bde238313142523a74dbb760c0f42b8af800941b1da47f55e7" + "bytes": 1126984, + "osSha256": "80a29d1e9f2bd711669186c4665d3cf18a3cbb393d485db3453d03af8c58a019", + "maskedOsSha256": "f4ae5b1adf730d53243c254bb7c8f405e373a08f818f52bdbec4c3ee18f6c8b1" }, "result": "masked" }, @@ -1185,9 +1191,9 @@ "fx2": [] }, "native": { - "bytes": 1121067, - "osSha256": "40b2eb21e9704bb2016ad16bbef5fac092288855a8ab850f413a5d3212252685", - "maskedOsSha256": "c20114ea5d3fcde8cf5712cc166ecbcd2592b4e3ed603c43253b344d0e60095b" + "bytes": 1126984, + "osSha256": "09e187f34b50faaf57d436442dd872120be5dc1a7efc3cb2a962a6a6abdac940", + "maskedOsSha256": "294bc8a0b479f1c05f767cb0bbc97b5cb1354fdfaaff2b7e8194f9ba39e304b2" }, "result": "masked" }, @@ -1228,9 +1234,9 @@ ] }, "native": { - "bytes": 1121067, - "osSha256": "76300000e32b963b9444ba4ba800e0bafbd57473d3a8085fceed4286fb69b56b", - "maskedOsSha256": "904b6313c1e6f599b0abcd0356dfac6392cecd60be6f5b82334d7872f7d0969f" + "bytes": 1126984, + "osSha256": "e6366e318e40f2dff8f96b676973b965e1c47a770134467ffa1544d01bfeddf8", + "maskedOsSha256": "5c3a4f2cb967d7c60a893781b39c1cf45defa3abfc8f2053d3a07ff32872d7d3" }, "result": "masked" }, @@ -1256,9 +1262,9 @@ "fx2": [] }, "native": { - "bytes": 1121067, - "osSha256": "c60ee044f6817f4b6b58c70f0824f035ee31fdb406c5fbe533e99ab2544d9bed", - "maskedOsSha256": "9117d1ff815d7169c56c4d038cfc2309cfc9d4d9086e00d5274606e6443afdfb" + "bytes": 1126984, + "osSha256": "6b3178216fa81baef04657cbef48f5f201131d91e71c57ef03109d578a3cda98", + "maskedOsSha256": "687180b9f3a66d6c98cc225f13da061e8b4e3072c41a91463746f3d3bf4a3c0f" }, "result": "masked" }, @@ -1298,9 +1304,9 @@ ] }, "native": { - "bytes": 1121067, - "osSha256": "42d33a8d6369a5add6791fc18d2efea848ce52ce241eb60479c11813de6b1686", - "maskedOsSha256": "e3a4f45ea8426542ed09a87812b03e184b2a633d76b664c9fd83dd083cf1ca39" + "bytes": 1126984, + "osSha256": "f1977ea2332b74185c647af8a20d4dbf9abb77385a2fe2a5d1196dd4aa3f9dda", + "maskedOsSha256": "035539346f5b9e635a0161fffcc6417b80c71dbdc3322665bed1caa5720673d6" }, "result": "masked" }, @@ -1328,9 +1334,9 @@ ] }, "native": { - "bytes": 1121067, - "osSha256": "e5d899c6385e6362dd4ac05680012a3ac751c6edde7bbc218cb861eecb3116bc", - "maskedOsSha256": "f3e800f05d7bfd082b126d9e4b68b17f53b9da94552799341eb6cd658b2d50c4" + "bytes": 1126984, + "osSha256": "59e35854082e59d469d63ccf6e20bb7420314475d1ff610b037089cf886675f3", + "maskedOsSha256": "1e913af7f643e8347887f498622e583c22b21c19cc57062c824df3fbc9ce19e3" }, "result": "masked" }, @@ -1371,9 +1377,9 @@ ] }, "native": { - "bytes": 1126805, - "osSha256": "2463c0ee97fb07be53d8234fa93b5145ae61f3ad703654f8542ee93002117e21", - "maskedOsSha256": "fe07f4cb649ae180d118094628a4c0d43881e68eb0c2536f4c2ac5369c835cfc" + "bytes": 1132757, + "osSha256": "21f683241505f2bd25a097de51a7792aee86f158a1b911333bbc82aa5a73aef0", + "maskedOsSha256": "1533551fe60ec05f8c25a115e71c018b603dd34e82d644827e20186b5046c818" }, "result": "masked" }, @@ -1399,9 +1405,9 @@ "fx2": [] }, "native": { - "bytes": 1126805, - "osSha256": "ead33f11310d4af745809eb2cc3084d997dbe8e6202901d8e3ab950be977b36f", - "maskedOsSha256": "176aba6b1069be0e16ee797403b0078af44773b8e9a21b16782610eb2f169996" + "bytes": 1132757, + "osSha256": "659149ab54b9454d1f4aa25169f029bebe9a9184b782cf77c66cf40457be5a91", + "maskedOsSha256": "a02de5d385e6119d291d2d2e5214c9a8a8cdb5841232588fec0d7a80328fa5f8" }, "result": "masked" }, @@ -1442,9 +1448,9 @@ ] }, "native": { - "bytes": 1121067, - "osSha256": "852206c8cbc06628d3e4b8b1993cfb1f7575975f13d53b196da2cdb9d87db08c", - "maskedOsSha256": "92672f6ae14f4ec6e1ee58df35ec251cd46c6c76c4730e7075a74ef220866131" + "bytes": 1126984, + "osSha256": "26a2764fea81060f257e2f9cc7c6b5a9b28af18bec3570155a87204088bd5989", + "maskedOsSha256": "02e18f88b132ee9ffb331e832e4aa6a8a2f69f802ae88600e2b376770a5e3748" }, "result": "masked" }, @@ -1470,9 +1476,9 @@ "fx2": [] }, "native": { - "bytes": 1121067, - "osSha256": "257ce900fc6c4da90ad1b9c7e55e5001301716d728d1d3649e6166b0ab7cf81b", - "maskedOsSha256": "496a683c130e23806e4df596e7dd2e40c82a2f2d344774653b823c489cda661a" + "bytes": 1126984, + "osSha256": "6adb9040386c83247986b473920fb443b61993e64008dd07a074ffd49245ee0d", + "maskedOsSha256": "f30ab3822971a4ca288cf2d71cd754b4ea8b9180095207dac046ae67a527e8a5" }, "result": "masked" }, @@ -1513,9 +1519,9 @@ ] }, "native": { - "bytes": 1121067, - "osSha256": "6e4596bf18984f1732809752c5ffee3d821d68986502336ac874a75dfb37c8e1", - "maskedOsSha256": "26c51e896e0baa88a60deb0fb171f246da2456a8cc4e2b0851f0951954169d7c", + "bytes": 1126984, + "osSha256": "07b71c6660bb3c08d02018cfedb061537520eb8da04e58323b7f077b5d7217a9", + "maskedOsSha256": "9e1795ff680d4d4d854a0f2803e8ca0577db3952eb1dc8b61e80586d47e4fd8c", "platformArena": true }, "result": "masked" @@ -1542,9 +1548,9 @@ "fx2": [] }, "native": { - "bytes": 1121067, - "osSha256": "730732059209d54214b8d1874d3c507fd88165a800a0ddbef490c3803e9b0f7c", - "maskedOsSha256": "af28ab89ffedac76aedfac801b99fab9eaf1e814f2b0746f15ad4a5cc171afba", + "bytes": 1126984, + "osSha256": "8c2ef43a413fa19f52a10a63e3f2fab551829a32a24ce58e935b524c3e93f733", + "maskedOsSha256": "9ca1874cb37a988db129b12b2f8949e2ed74a2db8aee25389ddfa40d047b64d1", "platformArena": true }, "result": "masked" @@ -1586,9 +1592,9 @@ ] }, "native": { - "bytes": 1134062, - "osSha256": "35dd8d08079f123d29f9290652e7864f724acf17b99e3f1dad347e3a1c7fc37f", - "maskedOsSha256": "3f041a65f88e63df12a2799ce2b8fdc1bce1501caed1f329f6ec16333ef98f29" + "bytes": 1140071, + "osSha256": "ad21d536bcc6058b24c1ccbcaa87a69c575f015063bd0af53a355613f8077272", + "maskedOsSha256": "a33a6d785574a520b2bde7b5666c04e210faa281aa087a686441cb74782d468b" }, "result": "masked" }, @@ -1614,9 +1620,9 @@ "fx2": [] }, "native": { - "bytes": 1134062, - "osSha256": "6edeb28c95aa76a6ec0f8137c99198e4bfe6688a9289d6e867bf04f5a6067f15", - "maskedOsSha256": "d9cb89cd1d21d165ebda1ae51723fad2b30a7aa2501777278f19bdb5a92482b4" + "bytes": 1140071, + "osSha256": "3ec7c9955d04d2133ab758dc2b1048203eda05b68bba0fcb7271b4003fab0c81", + "maskedOsSha256": "55df5a77e46186dc5943a04cc7dcb52ebad30b4ec02098079786f82f655cf3f7" }, "result": "masked" }, @@ -1656,9 +1662,9 @@ ] }, "native": { - "bytes": 1122257, - "osSha256": "95dc290f21a25bb589cc9762366df9b8f3eeda13614035eec5dbb16ce1b1b611", - "maskedOsSha256": "88f09aac65a798c54a24e3f40d180bba1f8e1327e07b50614a877d5f660581b1" + "bytes": 1128160, + "osSha256": "ae2f57615d5acbfd047010ee48ff6ff3435da5538c09ca68c19e8ff9509946b4", + "maskedOsSha256": "018d178e330af71fc6974af3b765b196d8a51cb6d0b7157c41bdf6ead3bdfc43" }, "result": "masked" }, @@ -1684,9 +1690,9 @@ "fx2": [] }, "native": { - "bytes": 1122257, - "osSha256": "2563abdfc81ac65cf246ebbacc830425e7969434a086ccd16538899cbdf4bc26", - "maskedOsSha256": "b7dba4ba91044f2ba228b02f7130d6c9ab20f9fa49736c1323e0166a40b8b3d8" + "bytes": 1128160, + "osSha256": "35b3e4c92a59691e542be0ce02b654bb97395fd0c1ad7f25026b2f343ac6a0c4", + "maskedOsSha256": "18e9c585bd2285f100814730c58c60350a262d8ffd9eb679cc22975b713e6920" }, "result": "masked" }, @@ -1727,9 +1733,9 @@ ] }, "native": { - "bytes": 1121067, - "osSha256": "bcc97b072585385f7881f4d7e67d23e9e22b2f1d1f538902ab12acd3d196256c", - "maskedOsSha256": "5b594476f2a64ed3db6617b2e0b706e39e12e29bf81d2f2a0e570f90fb7135c7" + "bytes": 1126984, + "osSha256": "fe36e558d1c17b762adaf2a0460a00842553a06b285fdd446c78e47d098a194e", + "maskedOsSha256": "7e297d27f3b283c7933dc3dd383c60d07e32f6b388a4aab1f0672812ca1dca82" }, "result": "masked" }, @@ -1755,9 +1761,9 @@ "fx2": [] }, "native": { - "bytes": 1121067, - "osSha256": "54cbdb6f3d265bd1240719bc0e013044e81bff3124adf2af713a3394df25c425", - "maskedOsSha256": "17a7cc045f1e7b3c7a93ee7cc4c27ecf6ff0ad6fd272b18614da3f6ee0c7fe71" + "bytes": 1126984, + "osSha256": "1498e7325baee65c4f908430f87a0c1202c679e7beec49a5d9bae6dc10885dca", + "maskedOsSha256": "f516598f6f7a8ad9c4ffe9e55b93aead4eb475f482116abbd32fdb4f6260e1bf" }, "result": "masked" }, @@ -1798,9 +1804,9 @@ ] }, "native": { - "bytes": 1122298, - "osSha256": "4ff6e57f325e078111d9881df62b49eed78163e466797ce9548c8d835513ada6", - "maskedOsSha256": "2ddc935070690a4e8ec6000932bf5e1f0de71125e63f3e0338cae0b860d7c4d4" + "bytes": 1128209, + "osSha256": "0629c00d587ec1c01b83be9a15d9311eec3e15d873611ead3a29b3131062d32a", + "maskedOsSha256": "0519ad95b4da39fdc7aa6e16610cf8941d9119ffa47782a3bc10246a478324f3" }, "result": "masked" }, @@ -1826,9 +1832,9 @@ "fx2": [] }, "native": { - "bytes": 1122298, - "osSha256": "25cda2ef6f5c1fa3803df8210482324d4cbd1a66d98094daf9c4e48706ec810a", - "maskedOsSha256": "2219e34affd09e67f44b6c33dcf19bb88f491df7a7d8a1b8a2efc027376bf05d" + "bytes": 1128209, + "osSha256": "182bc0b22f7673c11eb1885413a2174bb9a6fda47288f7445964aa40569049d6", + "maskedOsSha256": "8e72865b0f56e33cdede5f767da7c431fc8f91f3904cdbdca82a0c19627949ee" }, "result": "masked" }, @@ -1869,9 +1875,9 @@ ] }, "native": { - "bytes": 1122450, - "osSha256": "b1198833e94b27cc6066abc7acb589b4c6886a3dc0d0305713b14fd63cc552ac", - "maskedOsSha256": "da83bb95834992ed62473523aad3fc0726246f108e7fe81f1519e4907fb43354" + "bytes": 1128358, + "osSha256": "58c8fe20defc2caf9cc07c1e43ee07df75d139720caea97edc9a9bf641878791", + "maskedOsSha256": "3401fc0ea410cb90731ac57a9a50fdaaaa49ac271b3539424eae95b1bde88963" }, "result": "masked" }, @@ -1897,9 +1903,9 @@ "fx2": [] }, "native": { - "bytes": 1122450, - "osSha256": "5bd111b2b40bf1999ff6768cbe97ed5ef2975d2234c3cb6e204d9dc04c94b343", - "maskedOsSha256": "ef95136e2e0f4714686ab3d3e7f0c21b958e83ba604f2743ab9eb94b9190b819" + "bytes": 1128358, + "osSha256": "6f89bba5395a2cc2b869bb495a2155c5b355adfc99e0db1d23bad389942798c8", + "maskedOsSha256": "6a941422ec73a6a7cf1c226f5e59cbd43091c67bfa1100a9c12bd0a316c5f3a6" }, "result": "masked" }, @@ -1940,9 +1946,9 @@ ] }, "native": { - "bytes": 1122675, - "osSha256": "599076160193c775cdd13520fa5636f57a6af459d6d9c1890f03a0e6ae18501c", - "maskedOsSha256": "fe814f72fd1b09cb3e0e4228288c172518073a65ac60ab7fff6770732e6f5df0" + "bytes": 1128586, + "osSha256": "f844174db8ad59302e98bcd688e4071c45487e781e7042576728edeefe7fc130", + "maskedOsSha256": "5345cf8b27fe9e3a414c01e52f39990cd80065598fc1d365f1dd7c251b80a38b" }, "result": "masked" }, @@ -1968,9 +1974,9 @@ "fx2": [] }, "native": { - "bytes": 1122675, - "osSha256": "9537d4e09de53de25323471a3bc1fb3877df62d6625ad01817c8e6d2c2e41999", - "maskedOsSha256": "f3416a63f9912c48b98c31dbb04bbfe5623eccd812c17d82a02011955f4d0fa1" + "bytes": 1128586, + "osSha256": "887dd280bf792aff524a382b652dcba11d2ab83518c3b544d537da72ae7cc013", + "maskedOsSha256": "c457f7afe958f451a1df5458d70c99ca8d0c109735bbc4799ab91ea948b85775" }, "result": "masked" }, @@ -2011,9 +2017,9 @@ ] }, "native": { - "bytes": 1123981, - "osSha256": "aadfd69bf9dcc4e4913036a2e4923c048d02c17e335da6b32fa03ba5db46da56", - "maskedOsSha256": "f11c04acf63b9c2360df9eba53485237834a7de3e8ec7e3e4a928e28de0f5336" + "bytes": 1129889, + "osSha256": "c003148b4c90b46ec1be4d92785e0a1e8c14266cb9093b40f2b9258398d5103b", + "maskedOsSha256": "1a61470354dc75aff159f0788c78dc3b6e9f0c62453db6645da3489a3b6677cf" }, "result": "masked" }, @@ -2039,9 +2045,123 @@ "fx2": [] }, "native": { - "bytes": 1123981, - "osSha256": "526ee8a03a8158bf21f88644a2ec984885105b994cdb84ebca876f6e3cdfdf64", - "maskedOsSha256": "05cca2da6511c91237ca62627e0196f4eab3ffd5f1f3f10abc62d3802c078e59" + "bytes": 1129889, + "osSha256": "ea12fc6b408e2f640ccdd33ee3c9409a10fd0f947c4b1665fed812424887b20d", + "maskedOsSha256": "9c9be92b223bc9f9dd96c864c2d1c9e7a063c94db1661d405ae789e8180a4a00" + }, + "result": "masked" + }, + { + "moduleIds": [ + "vector", + "temp-save" + ], + "keepStockFx2": true, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI" + ], + "fx2": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI", + "DELAY", + "PLATE REV", + "SPRING REV", + "DARK REV" + ] + }, + "native": { + "bytes": 1127564, + "osSha256": "17730810f170952b725061170b52cd5b1c5ffc22e8d1c8b26437900c7a90229e", + "maskedOsSha256": "8805e6e8068c4b74b835bd10cb7125e90c8b7db71814a248f3529880a9e987fb" + }, + "result": "masked" + }, + { + "moduleIds": [ + "vector", + "temp-save" + ], + "keepStockFx2": false, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI" + ], + "fx2": [] + }, + "native": { + "bytes": 1127564, + "osSha256": "d2cb3523405404130360c71dc5467198934653524a2c26be81c0e8905647a398", + "maskedOsSha256": "76e6ee8e1b0492fa951a685645980fe23c618e3ede2a55e76efe5c91ee2c0183" + }, + "result": "masked" + }, + { + "moduleIds": [ + "vector", + "beat-slicer" + ], + "keepStockFx2": true, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI" + ], + "fx2": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI", + "DELAY", + "PLATE REV", + "SPRING REV", + "DARK REV" + ] + }, + "native": { + "bytes": 1126984, + "osSha256": "df103a96522184c807f6df8ff0f78f9992a4d55d1a45c9f2b95a2fd1558a4234", + "maskedOsSha256": "ea57ac476a858272f1692e4ec893c1a2ba678c55aeb770645f3e076ba5b9d509" }, "result": "masked" }, @@ -2050,6 +2170,1022 @@ "vector", "beat-slicer" ], + "keepStockFx2": false, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI" + ], + "fx2": [] + }, + "native": { + "bytes": 1126984, + "osSha256": "3ce69d42fe169b12ed73f548bcfe41ff9c10fc6ea17a03f279fcaac72a67d36a", + "maskedOsSha256": "5c289c8bfa92b1d922a6b19ba8cfe12fad4e91a8bc86e161761132a8d7aa5b93" + }, + "result": "masked" + }, + { + "moduleIds": [ + "vector", + "tuner" + ], + "keepStockFx2": true, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI" + ], + "fx2": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI", + "DELAY", + "PLATE REV", + "SPRING REV", + "DARK REV" + ] + }, + "native": { + "bytes": 1128953, + "osSha256": "d8fb3ca6b7681b1ae3db31e119dd9675289fc2b718f6456a1bc7887e1a269c00", + "maskedOsSha256": "2d5f8389d6276024a10df1b50a6f091d198f28cbcef30ad5b0dd6241bee76d3d" + }, + "result": "masked" + }, + { + "moduleIds": [ + "vector", + "tuner" + ], + "keepStockFx2": false, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI" + ], + "fx2": [] + }, + "native": { + "bytes": 1128953, + "osSha256": "3b8587ce74148e9d501951dcfa06c147d0d4d7d74da5132738b02caec1df4cdd", + "maskedOsSha256": "159eb4a0f3bbee07830eb060364ac5ae8cb79ff07d05e9d9296679bf426a2cd8" + }, + "result": "masked" + }, + { + "moduleIds": [ + "vector", + "slow-lfo" + ], + "keepStockFx2": true, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI" + ], + "fx2": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI", + "DELAY", + "PLATE REV", + "SPRING REV", + "DARK REV" + ] + }, + "native": { + "bytes": 1127098, + "osSha256": "6b70f0f896c653e0e32e66d30d94d0dd8552c880fe5e81353b9c08d99733c578", + "maskedOsSha256": "c5867771b85663939cb86ee4e336ab3888f9090fdc3db05d515a78e03d5f1d0d" + }, + "result": "masked" + }, + { + "moduleIds": [ + "vector", + "slow-lfo" + ], + "keepStockFx2": false, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI" + ], + "fx2": [] + }, + "native": { + "bytes": 1127098, + "osSha256": "5061c9935980114a4f881f11fce19d64dddd3aa6e48c1fc58aeaeb0e789bb371", + "maskedOsSha256": "64b9801021952a865949fc31b30ddb6fd4cc84e4e7d9fd48c421131372e78f4f" + }, + "result": "masked" + }, + { + "moduleIds": [ + "vector", + "bar-led" + ], + "keepStockFx2": true, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI" + ], + "fx2": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI", + "DELAY", + "PLATE REV", + "SPRING REV", + "DARK REV" + ] + }, + "native": { + "bytes": 1127040, + "osSha256": "ff62fe2c5cc423cce62169791e0023147b8298235ac52504ada9418055934089", + "maskedOsSha256": "91539cabac875bfbb2c4348d823be58d0b769fb8fb6b1e1facb25f0e8376e807" + }, + "result": "masked" + }, + { + "moduleIds": [ + "vector", + "bar-led" + ], + "keepStockFx2": false, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI" + ], + "fx2": [] + }, + "native": { + "bytes": 1127040, + "osSha256": "c8d95cf2f2080d8b4e31a4e428004a834f77d7feb4064cdd01dea72f0e53c154", + "maskedOsSha256": "6aa3327884240828ceef780bab8b36c63be5500e6f43f01bffc2708f6ec1dbc9" + }, + "result": "masked" + }, + { + "moduleIds": [ + "vector", + "stem-rec" + ], + "keepStockFx2": true, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI" + ], + "fx2": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI", + "DELAY", + "PLATE REV", + "SPRING REV", + "DARK REV" + ] + }, + "native": { + "bytes": 1135346, + "osSha256": "200ffc6f3d044558a7d090d0cf1d5a16349a7085add5287ad8103bc37b875a8c", + "maskedOsSha256": "db1e1583262d0339cb778fa4f318d80023272c6ec61eb0b61b354e08764f7546" + }, + "result": "masked" + }, + { + "moduleIds": [ + "vector", + "stem-rec" + ], + "keepStockFx2": false, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI" + ], + "fx2": [] + }, + "native": { + "bytes": 1135346, + "osSha256": "ab5956661f7f03f61e7cc71c5a344cc3d237cba29249638e033cb0bc10594606", + "maskedOsSha256": "98a486337a6b3a459990eb6f11f352f93ec9f3151bad401aa2466f776dde2289" + }, + "result": "masked" + }, + { + "moduleIds": [ + "vector", + "tiempos" + ], + "keepStockFx2": true, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI" + ], + "fx2": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI", + "DELAY", + "PLATE REV", + "SPRING REV", + "DARK REV" + ] + }, + "native": { + "bytes": 1126984, + "osSha256": "df103a96522184c807f6df8ff0f78f9992a4d55d1a45c9f2b95a2fd1558a4234", + "maskedOsSha256": "ea57ac476a858272f1692e4ec893c1a2ba678c55aeb770645f3e076ba5b9d509" + }, + "result": "masked" + }, + { + "moduleIds": [ + "vector", + "tiempos" + ], + "keepStockFx2": false, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "COMPRESSOR", + "LO-FI" + ], + "fx2": [] + }, + "native": { + "bytes": 1126984, + "osSha256": "3ce69d42fe169b12ed73f548bcfe41ff9c10fc6ea17a03f279fcaac72a67d36a", + "maskedOsSha256": "5c289c8bfa92b1d922a6b19ba8cfe12fad4e91a8bc86e161761132a8d7aa5b93" + }, + "result": "masked" + }, + { + "moduleIds": [ + "miniverb", + "tapeecho", + "euclid", + "repitch", + "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", + "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" + ], + "keepStockFx2": true, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID", + "TAPEHEAD", + "RING_SC" + ], + "fx2": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "DELAY", + "MINIVERB", + "TAPE ECHO", + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC" + ] + }, + "native": { + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" + }, + "result": "refused" + }, + { + "moduleIds": [ + "miniverb", + "tapeecho", + "euclid", + "repitch", + "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", + "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" + ], + "keepStockFx2": false, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID", + "TAPEHEAD", + "RING_SC" + ], + "fx2": [ + "MINIVERB", + "TAPE ECHO", + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC", + "SIDECHAIN_COMPRESSOR" + ] + }, + "native": { + "refused": "SYNTH MACHINE fm_qzc at 0x400d7b80 not free" + }, + "result": "refused" + }, + { + "moduleIds": [ + "tapeecho", + "euclid", + "repitch", + "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", + "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" + ], + "keepStockFx2": true, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID", + "TAPEHEAD", + "RING_SC" + ], + "fx2": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "DELAY", + "TAPE ECHO", + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC" + ] + }, + "native": { + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7a00 not free" + }, + "result": "refused" + }, + { + "moduleIds": [ + "tapeecho", + "euclid", + "repitch", + "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", + "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" + ], + "keepStockFx2": false, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID", + "TAPEHEAD", + "RING_SC" + ], + "fx2": [ + "TAPE ECHO", + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC", + "SIDECHAIN_COMPRESSOR" + ] + }, + "native": { + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" + }, + "result": "refused" + }, + { + "moduleIds": [ + "miniverb", + "euclid", + "repitch", + "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", + "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" + ], + "keepStockFx2": true, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID", + "TAPEHEAD", + "RING_SC" + ], + "fx2": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "DELAY", + "MINIVERB", + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC" + ] + }, + "native": { + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7a00 not free" + }, + "result": "refused" + }, + { + "moduleIds": [ + "miniverb", + "euclid", + "repitch", + "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", + "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" + ], + "keepStockFx2": false, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID", + "TAPEHEAD", + "RING_SC" + ], + "fx2": [ + "MINIVERB", + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC", + "SIDECHAIN_COMPRESSOR" + ] + }, + "native": { + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" + }, + "result": "refused" + }, + { + "moduleIds": [ + "miniverb", + "tapeecho", + "repitch", + "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", + "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" + ], + "keepStockFx2": true, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "TAPEHEAD", + "RING_SC" + ], + "fx2": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "DELAY", + "MINIVERB", + "TAPE ECHO", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC" + ] + }, + "native": { + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7a00 not free" + }, + "result": "refused" + }, + { + "moduleIds": [ + "miniverb", + "tapeecho", + "repitch", + "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", + "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" + ], + "keepStockFx2": false, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "TAPEHEAD", + "RING_SC" + ], + "fx2": [ + "MINIVERB", + "TAPE ECHO", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC", + "SIDECHAIN_COMPRESSOR" + ] + }, + "native": { + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" + }, + "result": "refused" + }, + { + "moduleIds": [ + "miniverb", + "tapeecho", + "euclid", + "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", + "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", + "previewvol", + "cc-map", + "sidechain-compressor", + "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" + ], "keepStockFx2": true, "menu": { "fx1": [ @@ -2061,8 +3197,11 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", - "LO-FI" + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID", + "TAPEHEAD", + "RING_SC" ], "fx2": [ "FILTER", @@ -2073,25 +3212,60 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "PLATE REV", - "SPRING REV", - "DARK REV" + "MINIVERB", + "TAPE ECHO", + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC" ] }, "native": { - "bytes": 1121067, - "osSha256": "c3d36297974621086c554585e822b13958cf59a5aa017e10a278ec37e455ecc9", - "maskedOsSha256": "fa2b6d59ad779563aa77690ccf43d56378ba80742ca1d3b16aca63763d8d5958" + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" }, - "result": "masked" + "result": "refused" }, { "moduleIds": [ + "miniverb", + "tapeecho", + "euclid", + "tapehead", + "airwindows-chorus", + "everb", + "bbd", + "lofi2", + "ring-sc", + "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", + "previewvol", + "cc-map", + "sidechain-compressor", "vector", - "beat-slicer" + "playmodes", + "mute-modes", + "recorder-loop-fix", + "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": false, "menu": { @@ -2104,17 +3278,29 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", - "LO-FI" + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "EUCLID", + "TAPEHEAD", + "RING_SC" ], - "fx2": [] + "fx2": [ + "MINIVERB", + "TAPE ECHO", + "EUCLID", + "TAPEHEAD", + "AIR CHORUS", + "EVERB", + "BBD", + "LOFI2", + "RING_SC", + "SIDECHAIN_COMPRESSOR" + ] }, "native": { - "bytes": 1121067, - "osSha256": "3ae7b28075e0eee4bdb0e2ce6de91ce0882e3bb68392d2fa7e88185ec6685ed0", - "maskedOsSha256": "58fc4fce2912a0c852109b0950c0b10fb4d10b5c79de2c1ea43619a46d0c6b10" + "refused": "SYNTH MACHINE fm_qzc at 0x400d7b80 not free" }, - "result": "masked" + "result": "refused" }, { "moduleIds": [ @@ -2122,7 +3308,6 @@ "tapeecho", "euclid", "repitch", - "tapehead", "airwindows-chorus", "everb", "bbd", @@ -2145,7 +3330,13 @@ "direct-jump-kyoti", "dejavu", "arp-key-locks", - "beat-slicer" + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": true, "menu": { @@ -2161,7 +3352,6 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD", "RING_SC" ], "fx2": [ @@ -2179,7 +3369,6 @@ "MINIVERB", "TAPE ECHO", "EUCLID", - "TAPEHEAD", "AIR CHORUS", "EVERB", "BBD", @@ -2188,7 +3377,7 @@ ] }, "native": { - "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7a00 not free" }, "result": "refused" }, @@ -2198,7 +3387,6 @@ "tapeecho", "euclid", "repitch", - "tapehead", "airwindows-chorus", "everb", "bbd", @@ -2221,7 +3409,13 @@ "direct-jump-kyoti", "dejavu", "arp-key-locks", - "beat-slicer" + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": false, "menu": { @@ -2237,14 +3431,12 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD", "RING_SC" ], "fx2": [ "MINIVERB", "TAPE ECHO", "EUCLID", - "TAPEHEAD", "AIR CHORUS", "EVERB", "BBD", @@ -2254,17 +3446,17 @@ ] }, "native": { - "refused": "SYNTH MACHINE fm_qzc at 0x400d7b80 not free" + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" }, "result": "refused" }, { "moduleIds": [ + "miniverb", "tapeecho", "euclid", "repitch", "tapehead", - "airwindows-chorus", "everb", "bbd", "lofi2", @@ -2286,7 +3478,13 @@ "direct-jump-kyoti", "dejavu", "arp-key-locks", - "beat-slicer" + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": true, "menu": { @@ -2317,10 +3515,10 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", + "MINIVERB", "TAPE ECHO", "EUCLID", "TAPEHEAD", - "AIR CHORUS", "EVERB", "BBD", "LOFI2", @@ -2334,11 +3532,11 @@ }, { "moduleIds": [ + "miniverb", "tapeecho", "euclid", "repitch", "tapehead", - "airwindows-chorus", "everb", "bbd", "lofi2", @@ -2360,7 +3558,13 @@ "direct-jump-kyoti", "dejavu", "arp-key-locks", - "beat-slicer" + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": false, "menu": { @@ -2380,10 +3584,10 @@ "RING_SC" ], "fx2": [ + "MINIVERB", "TAPE ECHO", "EUCLID", "TAPEHEAD", - "AIR CHORUS", "EVERB", "BBD", "LOFI2", @@ -2399,11 +3603,11 @@ { "moduleIds": [ "miniverb", + "tapeecho", "euclid", "repitch", "tapehead", "airwindows-chorus", - "everb", "bbd", "lofi2", "ring-sc", @@ -2424,7 +3628,13 @@ "direct-jump-kyoti", "dejavu", "arp-key-locks", - "beat-slicer" + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": true, "menu": { @@ -2456,10 +3666,10 @@ "LO-FI", "DELAY", "MINIVERB", + "TAPE ECHO", "EUCLID", "TAPEHEAD", "AIR CHORUS", - "EVERB", "BBD", "LOFI2", "RING_SC" @@ -2473,11 +3683,11 @@ { "moduleIds": [ "miniverb", + "tapeecho", "euclid", "repitch", "tapehead", "airwindows-chorus", - "everb", "bbd", "lofi2", "ring-sc", @@ -2498,7 +3708,13 @@ "direct-jump-kyoti", "dejavu", "arp-key-locks", - "beat-slicer" + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": false, "menu": { @@ -2519,10 +3735,10 @@ ], "fx2": [ "MINIVERB", + "TAPE ECHO", "EUCLID", "TAPEHEAD", "AIR CHORUS", - "EVERB", "BBD", "LOFI2", "RING_SC", @@ -2538,11 +3754,11 @@ "moduleIds": [ "miniverb", "tapeecho", + "euclid", "repitch", "tapehead", "airwindows-chorus", "everb", - "bbd", "lofi2", "ring-sc", "usb-audio-out-tracks-main-cue", @@ -2562,7 +3778,13 @@ "direct-jump-kyoti", "dejavu", "arp-key-locks", - "beat-slicer" + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": true, "menu": { @@ -2577,6 +3799,7 @@ "COMB FILTER", "SIDECHAIN_COMPRESSOR", "LO-FI", + "EUCLID", "TAPEHEAD", "RING_SC" ], @@ -2594,10 +3817,10 @@ "DELAY", "MINIVERB", "TAPE ECHO", + "EUCLID", "TAPEHEAD", "AIR CHORUS", "EVERB", - "BBD", "LOFI2", "RING_SC" ] @@ -2611,11 +3834,11 @@ "moduleIds": [ "miniverb", "tapeecho", + "euclid", "repitch", "tapehead", "airwindows-chorus", "everb", - "bbd", "lofi2", "ring-sc", "usb-audio-out-tracks-main-cue", @@ -2635,7 +3858,13 @@ "direct-jump-kyoti", "dejavu", "arp-key-locks", - "beat-slicer" + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": false, "menu": { @@ -2650,16 +3879,17 @@ "COMB FILTER", "SIDECHAIN_COMPRESSOR", "LO-FI", + "EUCLID", "TAPEHEAD", "RING_SC" ], "fx2": [ "MINIVERB", "TAPE ECHO", + "EUCLID", "TAPEHEAD", "AIR CHORUS", "EVERB", - "BBD", "LOFI2", "RING_SC", "SIDECHAIN_COMPRESSOR" @@ -2675,11 +3905,11 @@ "miniverb", "tapeecho", "euclid", + "repitch", "tapehead", "airwindows-chorus", "everb", "bbd", - "lofi2", "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", @@ -2698,7 +3928,13 @@ "direct-jump-kyoti", "dejavu", "arp-key-locks", - "beat-slicer" + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": true, "menu": { @@ -2736,12 +3972,11 @@ "AIR CHORUS", "EVERB", "BBD", - "LOFI2", "RING_SC" ] }, "native": { - "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7a00 not free" }, "result": "refused" }, @@ -2750,11 +3985,11 @@ "miniverb", "tapeecho", "euclid", + "repitch", "tapehead", "airwindows-chorus", "everb", "bbd", - "lofi2", "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", @@ -2773,7 +4008,13 @@ "direct-jump-kyoti", "dejavu", "arp-key-locks", - "beat-slicer" + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": false, "menu": { @@ -2800,13 +4041,12 @@ "AIR CHORUS", "EVERB", "BBD", - "LOFI2", "RING_SC", "SIDECHAIN_COMPRESSOR" ] }, "native": { - "refused": "SYNTH MACHINE fm_qzc at 0x400d7b80 not free" + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" }, "result": "refused" }, @@ -2816,11 +4056,11 @@ "tapeecho", "euclid", "repitch", + "tapehead", "airwindows-chorus", "everb", "bbd", "lofi2", - "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -2838,7 +4078,13 @@ "direct-jump-kyoti", "dejavu", "arp-key-locks", - "beat-slicer" + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": true, "menu": { @@ -2854,7 +4100,7 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "RING_SC" + "TAPEHEAD" ], "fx2": [ "FILTER", @@ -2871,11 +4117,11 @@ "MINIVERB", "TAPE ECHO", "EUCLID", + "TAPEHEAD", "AIR CHORUS", "EVERB", "BBD", - "LOFI2", - "RING_SC" + "LOFI2" ] }, "native": { @@ -2889,11 +4135,11 @@ "tapeecho", "euclid", "repitch", + "tapehead", "airwindows-chorus", "everb", "bbd", "lofi2", - "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", @@ -2911,7 +4157,13 @@ "direct-jump-kyoti", "dejavu", "arp-key-locks", - "beat-slicer" + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": false, "menu": { @@ -2927,17 +4179,17 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "RING_SC" + "TAPEHEAD" ], "fx2": [ "MINIVERB", "TAPE ECHO", "EUCLID", + "TAPEHEAD", "AIR CHORUS", "EVERB", "BBD", "LOFI2", - "RING_SC", "SIDECHAIN_COMPRESSOR" ] }, @@ -2953,11 +4205,11 @@ "euclid", "repitch", "tapehead", + "airwindows-chorus", "everb", "bbd", "lofi2", "ring-sc", - "usb-audio-out-tracks-main-cue", "quantizer", "synth", "previewvol", @@ -2974,7 +4226,13 @@ "direct-jump-kyoti", "dejavu", "arp-key-locks", - "beat-slicer" + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": true, "menu": { @@ -3009,6 +4267,7 @@ "TAPE ECHO", "EUCLID", "TAPEHEAD", + "AIR CHORUS", "EVERB", "BBD", "LOFI2", @@ -3016,7 +4275,7 @@ ] }, "native": { - "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7a00 not free" + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" }, "result": "refused" }, @@ -3027,11 +4286,11 @@ "euclid", "repitch", "tapehead", + "airwindows-chorus", "everb", "bbd", "lofi2", "ring-sc", - "usb-audio-out-tracks-main-cue", "quantizer", "synth", "previewvol", @@ -3048,7 +4307,13 @@ "direct-jump-kyoti", "dejavu", "arp-key-locks", - "beat-slicer" + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": false, "menu": { @@ -3072,6 +4337,7 @@ "TAPE ECHO", "EUCLID", "TAPEHEAD", + "AIR CHORUS", "EVERB", "BBD", "LOFI2", @@ -3080,7 +4346,7 @@ ] }, "native": { - "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" + "refused": "SYNTH MACHINE fm_qzc at 0x400d7b80 not free" }, "result": "refused" }, @@ -3092,11 +4358,11 @@ "repitch", "tapehead", "airwindows-chorus", + "everb", "bbd", "lofi2", "ring-sc", "usb-audio-out-tracks-main-cue", - "quantizer", "synth", "previewvol", "cc-map", @@ -3112,7 +4378,13 @@ "direct-jump-kyoti", "dejavu", "arp-key-locks", - "beat-slicer" + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": true, "menu": { @@ -3148,13 +4420,14 @@ "EUCLID", "TAPEHEAD", "AIR CHORUS", + "EVERB", "BBD", "LOFI2", "RING_SC" ] }, "native": { - "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7a00 not free" + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" }, "result": "refused" }, @@ -3166,11 +4439,11 @@ "repitch", "tapehead", "airwindows-chorus", + "everb", "bbd", "lofi2", "ring-sc", "usb-audio-out-tracks-main-cue", - "quantizer", "synth", "previewvol", "cc-map", @@ -3186,7 +4459,13 @@ "direct-jump-kyoti", "dejavu", "arp-key-locks", - "beat-slicer" + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": false, "menu": { @@ -3211,6 +4490,7 @@ "EUCLID", "TAPEHEAD", "AIR CHORUS", + "EVERB", "BBD", "LOFI2", "RING_SC", @@ -3218,7 +4498,7 @@ ] }, "native": { - "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" + "refused": "SYNTH MACHINE fm_qzc at 0x400d7b80 not free" }, "result": "refused" }, @@ -3231,11 +4511,11 @@ "tapehead", "airwindows-chorus", "everb", + "bbd", "lofi2", "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", - "synth", "previewvol", "cc-map", "sidechain-compressor", @@ -3250,7 +4530,13 @@ "direct-jump-kyoti", "dejavu", "arp-key-locks", - "beat-slicer" + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": true, "menu": { @@ -3287,12 +4573,13 @@ "TAPEHEAD", "AIR CHORUS", "EVERB", + "BBD", "LOFI2", "RING_SC" ] }, "native": { - "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7a00 not free" + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" }, "result": "refused" }, @@ -3305,11 +4592,11 @@ "tapehead", "airwindows-chorus", "everb", + "bbd", "lofi2", "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", - "synth", "previewvol", "cc-map", "sidechain-compressor", @@ -3324,7 +4611,13 @@ "direct-jump-kyoti", "dejavu", "arp-key-locks", - "beat-slicer" + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": false, "menu": { @@ -3350,13 +4643,14 @@ "TAPEHEAD", "AIR CHORUS", "EVERB", + "BBD", "LOFI2", "RING_SC", "SIDECHAIN_COMPRESSOR" ] }, "native": { - "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" + "refused": "SCALE QUANTIZER qzc at 0x400d7b80 not free" }, "result": "refused" }, @@ -3370,11 +4664,11 @@ "airwindows-chorus", "everb", "bbd", + "lofi2", "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", - "previewvol", "cc-map", "sidechain-compressor", "vector", @@ -3388,7 +4682,13 @@ "direct-jump-kyoti", "dejavu", "arp-key-locks", - "beat-slicer" + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": true, "menu": { @@ -3426,11 +4726,12 @@ "AIR CHORUS", "EVERB", "BBD", + "LOFI2", "RING_SC" ] }, "native": { - "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7a00 not free" + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" }, "result": "refused" }, @@ -3444,11 +4745,11 @@ "airwindows-chorus", "everb", "bbd", + "lofi2", "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", - "previewvol", "cc-map", "sidechain-compressor", "vector", @@ -3462,7 +4763,13 @@ "direct-jump-kyoti", "dejavu", "arp-key-locks", - "beat-slicer" + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": false, "menu": { @@ -3489,12 +4796,13 @@ "AIR CHORUS", "EVERB", "BBD", + "LOFI2", "RING_SC", "SIDECHAIN_COMPRESSOR" ] }, "native": { - "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" + "refused": "SYNTH MACHINE fm_qzc at 0x400d7b80 not free" }, "result": "refused" }, @@ -3509,11 +4817,11 @@ "everb", "bbd", "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", "previewvol", - "cc-map", "sidechain-compressor", "vector", "playmodes", @@ -3526,7 +4834,13 @@ "direct-jump-kyoti", "dejavu", "arp-key-locks", - "beat-slicer" + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": true, "menu": { @@ -3542,7 +4856,8 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "FILTER", @@ -3563,11 +4878,12 @@ "AIR CHORUS", "EVERB", "BBD", - "LOFI2" + "LOFI2", + "RING_SC" ] }, "native": { - "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7a00 not free" + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" }, "result": "refused" }, @@ -3582,11 +4898,11 @@ "everb", "bbd", "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", "previewvol", - "cc-map", "sidechain-compressor", "vector", "playmodes", @@ -3599,7 +4915,13 @@ "direct-jump-kyoti", "dejavu", "arp-key-locks", - "beat-slicer" + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": false, "menu": { @@ -3615,7 +4937,8 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "MINIVERB", @@ -3626,11 +4949,12 @@ "EVERB", "BBD", "LOFI2", + "RING_SC", "SIDECHAIN_COMPRESSOR" ] }, "native": { - "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" + "refused": "SYNTH MACHINE fm_qzc at 0x400d7b80 not free" }, "result": "refused" }, @@ -3646,11 +4970,11 @@ "bbd", "lofi2", "ring-sc", + "usb-audio-out-tracks-main-cue", "quantizer", "synth", "previewvol", "cc-map", - "sidechain-compressor", "vector", "playmodes", "mute-modes", @@ -3662,7 +4986,13 @@ "direct-jump-kyoti", "dejavu", "arp-key-locks", - "beat-slicer" + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": true, "menu": { @@ -3675,7 +5005,7 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", "EUCLID", "TAPEHEAD", @@ -3690,7 +5020,7 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", "DELAY", "MINIVERB", @@ -3705,7 +5035,7 @@ ] }, "native": { - "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" + "refused": "MUTE_MODES mm_menu at 0x400d7b80 not free" }, "result": "refused" }, @@ -3721,11 +5051,11 @@ "bbd", "lofi2", "ring-sc", + "usb-audio-out-tracks-main-cue", "quantizer", "synth", "previewvol", "cc-map", - "sidechain-compressor", "vector", "playmodes", "mute-modes", @@ -3737,7 +5067,13 @@ "direct-jump-kyoti", "dejavu", "arp-key-locks", - "beat-slicer" + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": false, "menu": { @@ -3750,7 +5086,7 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", "EUCLID", "TAPEHEAD", @@ -3765,12 +5101,11 @@ "EVERB", "BBD", "LOFI2", - "RING_SC", - "SIDECHAIN_COMPRESSOR" + "RING_SC" ] }, "native": { - "refused": "SYNTH MACHINE fm_qzc at 0x400d7b80 not free" + "refused": "MUTE_MODES mm_menu at 0x400d7b80 not free" }, "result": "refused" }, @@ -3787,12 +5122,12 @@ "lofi2", "ring-sc", "usb-audio-out-tracks-main-cue", + "quantizer", "synth", "previewvol", "cc-map", "sidechain-compressor", "vector", - "playmodes", "mute-modes", "recorder-loop-fix", "poly8", @@ -3802,7 +5137,13 @@ "direct-jump-kyoti", "dejavu", "arp-key-locks", - "beat-slicer" + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": true, "menu": { @@ -3862,12 +5203,12 @@ "lofi2", "ring-sc", "usb-audio-out-tracks-main-cue", + "quantizer", "synth", "previewvol", "cc-map", "sidechain-compressor", "vector", - "playmodes", "mute-modes", "recorder-loop-fix", "poly8", @@ -3877,7 +5218,13 @@ "direct-jump-kyoti", "dejavu", "arp-key-locks", - "beat-slicer" + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": false, "menu": { @@ -3928,12 +5275,12 @@ "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", + "synth", "previewvol", "cc-map", "sidechain-compressor", "vector", "playmodes", - "mute-modes", "recorder-loop-fix", "poly8", "output-matrix", @@ -3942,7 +5289,13 @@ "direct-jump-kyoti", "dejavu", "arp-key-locks", - "beat-slicer" + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": true, "menu": { @@ -4003,12 +5356,12 @@ "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", + "synth", "previewvol", "cc-map", "sidechain-compressor", "vector", "playmodes", - "mute-modes", "recorder-loop-fix", "poly8", "output-matrix", @@ -4017,7 +5370,13 @@ "direct-jump-kyoti", "dejavu", "arp-key-locks", - "beat-slicer" + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": false, "menu": { @@ -4050,7 +5409,7 @@ ] }, "native": { - "refused": "SCALE QUANTIZER qzc at 0x400d7b80 not free" + "refused": "SYNTH MACHINE fm_qzc at 0x400d7b80 not free" }, "result": "refused" }, @@ -4069,12 +5428,12 @@ "usb-audio-out-tracks-main-cue", "quantizer", "synth", + "previewvol", "cc-map", "sidechain-compressor", "vector", "playmodes", "mute-modes", - "recorder-loop-fix", "poly8", "output-matrix", "quantize-live-rec-toggle", @@ -4082,7 +5441,13 @@ "direct-jump-kyoti", "dejavu", "arp-key-locks", - "beat-slicer" + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": true, "menu": { @@ -4144,12 +5509,12 @@ "usb-audio-out-tracks-main-cue", "quantizer", "synth", + "previewvol", "cc-map", "sidechain-compressor", "vector", "playmodes", "mute-modes", - "recorder-loop-fix", "poly8", "output-matrix", "quantize-live-rec-toggle", @@ -4157,7 +5522,13 @@ "direct-jump-kyoti", "dejavu", "arp-key-locks", - "beat-slicer" + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": false, "menu": { @@ -4210,19 +5581,25 @@ "quantizer", "synth", "previewvol", + "cc-map", "sidechain-compressor", "vector", "playmodes", "mute-modes", "recorder-loop-fix", - "poly8", "output-matrix", "quantize-live-rec-toggle", "apply-scene", "direct-jump-kyoti", "dejavu", "arp-key-locks", - "beat-slicer" + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": true, "menu": { @@ -4265,7 +5642,7 @@ ] }, "native": { - "refused": "SIDECHAIN_COMPRESSOR sc_cf 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 -> 8 rows (SCALE, ROOT, GLIDE, TRACK, FOLLOW (2.22); 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" }, @@ -4285,19 +5662,25 @@ "quantizer", "synth", "previewvol", + "cc-map", "sidechain-compressor", "vector", "playmodes", "mute-modes", "recorder-loop-fix", - "poly8", "output-matrix", "quantize-live-rec-toggle", "apply-scene", "direct-jump-kyoti", "dejavu", "arp-key-locks", - "beat-slicer" + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": false, "menu": { @@ -4330,7 +5713,7 @@ ] }, "native": { - "refused": "SYNTH MACHINE fm_qzc 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 -> 8 rows (SCALE, ROOT, GLIDE, TRACK, FOLLOW (2.22); 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" }, @@ -4351,18 +5734,24 @@ "synth", "previewvol", "cc-map", + "sidechain-compressor", "vector", "playmodes", "mute-modes", "recorder-loop-fix", "poly8", - "output-matrix", "quantize-live-rec-toggle", "apply-scene", "direct-jump-kyoti", "dejavu", "arp-key-locks", - "beat-slicer" + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": true, "menu": { @@ -4375,7 +5764,7 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", "TAPEHEAD", @@ -4390,7 +5779,7 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", "MINIVERB", @@ -4405,7 +5794,7 @@ ] }, "native": { - "refused": "MUTE_MODES mm_menu at 0x400d7b80 not free" + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" }, "result": "refused" }, @@ -4426,18 +5815,24 @@ "synth", "previewvol", "cc-map", + "sidechain-compressor", "vector", "playmodes", "mute-modes", "recorder-loop-fix", "poly8", - "output-matrix", "quantize-live-rec-toggle", "apply-scene", "direct-jump-kyoti", "dejavu", "arp-key-locks", - "beat-slicer" + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": false, "menu": { @@ -4450,7 +5845,7 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", "TAPEHEAD", @@ -4465,11 +5860,12 @@ "EVERB", "BBD", "LOFI2", - "RING_SC" + "RING_SC", + "SIDECHAIN_COMPRESSOR" ] }, "native": { - "refused": "MUTE_MODES mm_menu at 0x400d7b80 not free" + "refused": "SYNTH MACHINE fm_qzc at 0x400d7b80 not free" }, "result": "refused" }, @@ -4492,16 +5888,22 @@ "cc-map", "sidechain-compressor", "vector", + "playmodes", "mute-modes", "recorder-loop-fix", "poly8", "output-matrix", - "quantize-live-rec-toggle", "apply-scene", "direct-jump-kyoti", "dejavu", "arp-key-locks", - "beat-slicer" + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": true, "menu": { @@ -4567,16 +5969,22 @@ "cc-map", "sidechain-compressor", "vector", + "playmodes", "mute-modes", "recorder-loop-fix", "poly8", "output-matrix", - "quantize-live-rec-toggle", "apply-scene", "direct-jump-kyoti", "dejavu", "arp-key-locks", - "beat-slicer" + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": false, "menu": { @@ -4633,15 +6041,21 @@ "sidechain-compressor", "vector", "playmodes", + "mute-modes", "recorder-loop-fix", "poly8", "output-matrix", "quantize-live-rec-toggle", - "apply-scene", "direct-jump-kyoti", "dejavu", "arp-key-locks", - "beat-slicer" + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": true, "menu": { @@ -4708,15 +6122,21 @@ "sidechain-compressor", "vector", "playmodes", + "mute-modes", "recorder-loop-fix", "poly8", "output-matrix", "quantize-live-rec-toggle", - "apply-scene", "direct-jump-kyoti", "dejavu", "arp-key-locks", - "beat-slicer" + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": false, "menu": { @@ -4774,14 +6194,20 @@ "vector", "playmodes", "mute-modes", + "recorder-loop-fix", "poly8", "output-matrix", "quantize-live-rec-toggle", "apply-scene", - "direct-jump-kyoti", "dejavu", "arp-key-locks", - "beat-slicer" + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": true, "menu": { @@ -4849,14 +6275,20 @@ "vector", "playmodes", "mute-modes", + "recorder-loop-fix", "poly8", "output-matrix", "quantize-live-rec-toggle", "apply-scene", - "direct-jump-kyoti", "dejavu", "arp-key-locks", - "beat-slicer" + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": false, "menu": { @@ -4915,13 +6347,19 @@ "playmodes", "mute-modes", "recorder-loop-fix", + "poly8", "output-matrix", "quantize-live-rec-toggle", "apply-scene", "direct-jump-kyoti", - "dejavu", "arp-key-locks", - "beat-slicer" + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": true, "menu": { @@ -4964,7 +6402,7 @@ ] }, "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 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" + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" }, "result": "refused" }, @@ -4990,13 +6428,19 @@ "playmodes", "mute-modes", "recorder-loop-fix", + "poly8", "output-matrix", "quantize-live-rec-toggle", "apply-scene", "direct-jump-kyoti", - "dejavu", "arp-key-locks", - "beat-slicer" + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": false, "menu": { @@ -5029,7 +6473,7 @@ ] }, "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 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" + "refused": "SYNTH MACHINE fm_qzc at 0x400d7b80 not free" }, "result": "refused" }, @@ -5056,12 +6500,18 @@ "mute-modes", "recorder-loop-fix", "poly8", + "output-matrix", "quantize-live-rec-toggle", "apply-scene", "direct-jump-kyoti", "dejavu", - "arp-key-locks", - "beat-slicer" + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": true, "menu": { @@ -5131,12 +6581,18 @@ "mute-modes", "recorder-loop-fix", "poly8", + "output-matrix", "quantize-live-rec-toggle", "apply-scene", "direct-jump-kyoti", "dejavu", - "arp-key-locks", - "beat-slicer" + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": false, "menu": { @@ -5197,11 +6653,17 @@ "recorder-loop-fix", "poly8", "output-matrix", + "quantize-live-rec-toggle", "apply-scene", "direct-jump-kyoti", "dejavu", "arp-key-locks", - "beat-slicer" + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": true, "menu": { @@ -5272,11 +6734,17 @@ "recorder-loop-fix", "poly8", "output-matrix", + "quantize-live-rec-toggle", "apply-scene", "direct-jump-kyoti", "dejavu", "arp-key-locks", - "beat-slicer" + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": false, "menu": { @@ -5338,10 +6806,16 @@ "poly8", "output-matrix", "quantize-live-rec-toggle", + "apply-scene", "direct-jump-kyoti", "dejavu", "arp-key-locks", - "beat-slicer" + "temp-save", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": true, "menu": { @@ -5413,10 +6887,16 @@ "poly8", "output-matrix", "quantize-live-rec-toggle", + "apply-scene", "direct-jump-kyoti", "dejavu", "arp-key-locks", - "beat-slicer" + "temp-save", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": false, "menu": { @@ -5479,9 +6959,15 @@ "output-matrix", "quantize-live-rec-toggle", "apply-scene", + "direct-jump-kyoti", "dejavu", "arp-key-locks", - "beat-slicer" + "temp-save", + "beat-slicer", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": true, "menu": { @@ -5554,9 +7040,15 @@ "output-matrix", "quantize-live-rec-toggle", "apply-scene", + "direct-jump-kyoti", "dejavu", "arp-key-locks", - "beat-slicer" + "temp-save", + "beat-slicer", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": false, "menu": { @@ -5620,8 +7112,14 @@ "quantize-live-rec-toggle", "apply-scene", "direct-jump-kyoti", + "dejavu", "arp-key-locks", - "beat-slicer" + "temp-save", + "beat-slicer", + "tuner", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": true, "menu": { @@ -5695,8 +7193,14 @@ "quantize-live-rec-toggle", "apply-scene", "direct-jump-kyoti", + "dejavu", "arp-key-locks", - "beat-slicer" + "temp-save", + "beat-slicer", + "tuner", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": false, "menu": { @@ -5761,7 +7265,13 @@ "apply-scene", "direct-jump-kyoti", "dejavu", - "beat-slicer" + "arp-key-locks", + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "stem-rec", + "tiempos" ], "keepStockFx2": true, "menu": { @@ -5836,7 +7346,13 @@ "apply-scene", "direct-jump-kyoti", "dejavu", - "beat-slicer" + "arp-key-locks", + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "stem-rec", + "tiempos" ], "keepStockFx2": false, "menu": { @@ -5901,7 +7417,13 @@ "apply-scene", "direct-jump-kyoti", "dejavu", - "arp-key-locks" + "arp-key-locks", + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "tiempos" ], "keepStockFx2": true, "menu": { @@ -5976,7 +7498,13 @@ "apply-scene", "direct-jump-kyoti", "dejavu", - "arp-key-locks" + "arp-key-locks", + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "tiempos" ], "keepStockFx2": false, "menu": { @@ -6019,8 +7547,10 @@ "tapeecho", "euclid", "repitch", + "tapehead", "airwindows-chorus", "everb", + "bbd", "lofi2", "ring-sc", "usb-audio-out-tracks-main-cue", @@ -6028,15 +7558,24 @@ "synth", "previewvol", "cc-map", + "sidechain-compressor", "vector", "playmodes", + "mute-modes", "recorder-loop-fix", "poly8", "output-matrix", + "quantize-live-rec-toggle", "apply-scene", "direct-jump-kyoti", + "dejavu", "arp-key-locks", - "beat-slicer" + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec" ], "keepStockFx2": true, "menu": { @@ -6049,9 +7588,10 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", + "TAPEHEAD", "RING_SC" ], "fx2": [ @@ -6063,20 +7603,22 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", "MINIVERB", "TAPE ECHO", "EUCLID", + "TAPEHEAD", "AIR CHORUS", "EVERB", + "BBD", "LOFI2", "RING_SC" ] }, "native": { - "refused": "CC->FX2/FX1 page-2 cave + dispatch repoint: 724 B fits neither the clone window (from 0x400d7900) nor the overflow run" + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" }, "result": "refused" }, @@ -6086,8 +7628,10 @@ "tapeecho", "euclid", "repitch", + "tapehead", "airwindows-chorus", "everb", + "bbd", "lofi2", "ring-sc", "usb-audio-out-tracks-main-cue", @@ -6095,15 +7639,24 @@ "synth", "previewvol", "cc-map", + "sidechain-compressor", "vector", "playmodes", + "mute-modes", "recorder-loop-fix", "poly8", "output-matrix", + "quantize-live-rec-toggle", "apply-scene", "direct-jump-kyoti", + "dejavu", "arp-key-locks", - "beat-slicer" + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec" ], "keepStockFx2": false, "menu": { @@ -6116,43 +7669,38 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", "EUCLID", + "TAPEHEAD", "RING_SC" ], "fx2": [ "MINIVERB", "TAPE ECHO", "EUCLID", + "TAPEHEAD", "AIR CHORUS", "EVERB", + "BBD", "LOFI2", - "RING_SC" + "RING_SC", + "SIDECHAIN_COMPRESSOR" ] }, "native": { - "refused": "CC->FX2/FX1 page-2 cave + dispatch repoint: 724 B fits neither the clone window (from 0x400d7900) nor the overflow run" + "refused": "SYNTH MACHINE fm_qzc at 0x400d7b80 not free" }, "result": "refused" }, { "moduleIds": [ - "miniverb", "repitch", - "tapehead", - "airwindows-chorus", - "lofi2", - "usb-audio-out-tracks-main-cue", - "previewvol", - "cc-map", - "sidechain-compressor", + "ring-sc", + "quantizer", "vector", - "mute-modes", - "poly8", - "apply-scene", - "dejavu", - "arp-key-locks" + "recorder-loop-fix", + "apply-scene" ], "keepStockFx2": true, "menu": { @@ -6165,9 +7713,9 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", - "TAPEHEAD" + "RING_SC" ], "fx2": [ "FILTER", @@ -6178,37 +7726,30 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", "DELAY", - "MINIVERB", - "TAPEHEAD", - "AIR CHORUS", - "LOFI2" + "PLATE REV", + "DARK REV", + "RING_SC" ] }, "native": { - "refused": "MUTE_MODES table PERSONALIZE setters at 0x400d7b80 not free" + "bytes": 1131520, + "osSha256": "3a53eb4ff0a725062140dd5cf5f40434401b2df787fc22d0f7cb565fa6d7e003", + "maskedOsSha256": "b958d95ae05191b4eb2ec4dd83eb835d3a0a7572ff802488bbfc3b4537481a68", + "platformArena": true }, - "result": "refused" + "result": "masked" }, { "moduleIds": [ - "miniverb", "repitch", - "tapehead", - "airwindows-chorus", - "lofi2", - "usb-audio-out-tracks-main-cue", - "previewvol", - "cc-map", - "sidechain-compressor", - "vector", - "mute-modes", - "poly8", - "apply-scene", - "dejavu", - "arp-key-locks" + "ring-sc", + "quantizer", + "vector", + "recorder-loop-fix", + "apply-scene" ], "keepStockFx2": false, "menu": { @@ -6221,42 +7762,44 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", - "TAPEHEAD" + "RING_SC" ], "fx2": [ - "MINIVERB", - "TAPEHEAD", - "AIR CHORUS", - "LOFI2", - "SIDECHAIN_COMPRESSOR" + "RING_SC" ] }, "native": { - "refused": "DEJAVU table LFO WAVE labels + DJV at 0x400d7c00 not free" + "bytes": 1131520, + "osSha256": "a811fd69bddcea6f67a362519f49140bd66de2ecd373ae9e4ddc080aa5038002", + "maskedOsSha256": "f3de8a098324188d6ae8de1deee47e3026541f690b0567ecd31cd8ed6f6bc11c", + "platformArena": true }, - "result": "refused" + "result": "masked" }, { "moduleIds": [ "miniverb", - "tapeecho", + "euclid", "repitch", "tapehead", + "airwindows-chorus", "bbd", - "lofi2", "ring-sc", "usb-audio-out-tracks-main-cue", - "cc-map", - "sidechain-compressor", + "quantizer", "vector", "playmodes", "mute-modes", - "output-matrix", - "quantize-live-rec-toggle", + "recorder-loop-fix", + "poly8", "direct-jump-kyoti", - "beat-slicer" + "temp-save", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": true, "menu": { @@ -6269,8 +7812,9 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", + "EUCLID", "TAPEHEAD", "RING_SC" ], @@ -6283,41 +7827,44 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", "DELAY", "MINIVERB", - "TAPE ECHO", + "EUCLID", "TAPEHEAD", + "AIR CHORUS", "BBD", - "LOFI2", "RING_SC" ] }, "native": { - "refused": "SIDECHAIN_COMPRESSOR sc_ui at 0x400d7980 not free" + "refused": "hold cave (crossfade guard): 118 B fits neither the clone window (from 0x400d7b80) nor the overflow run" }, "result": "refused" }, { "moduleIds": [ "miniverb", - "tapeecho", + "euclid", "repitch", "tapehead", + "airwindows-chorus", "bbd", - "lofi2", "ring-sc", "usb-audio-out-tracks-main-cue", - "cc-map", - "sidechain-compressor", + "quantizer", "vector", "playmodes", "mute-modes", - "output-matrix", - "quantize-live-rec-toggle", + "recorder-loop-fix", + "poly8", "direct-jump-kyoti", - "beat-slicer" + "temp-save", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": false, "menu": { @@ -6330,46 +7877,49 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", + "EUCLID", "TAPEHEAD", "RING_SC" ], "fx2": [ "MINIVERB", - "TAPE ECHO", + "EUCLID", "TAPEHEAD", + "AIR CHORUS", "BBD", - "LOFI2", - "RING_SC", - "SIDECHAIN_COMPRESSOR" + "RING_SC" ] }, "native": { - "refused": "SIDECHAIN_COMPRESSOR sc_ui at 0x400d7c00 not free" + "refused": "SCALE QUANTIZER table SEQUENCER getters at 0x400d7c80 not free" }, "result": "refused" }, { "moduleIds": [ "miniverb", - "euclid", - "repitch", + "tapeecho", "tapehead", - "airwindows-chorus", - "everb", "bbd", - "lofi2", - "synth", - "previewvol", + "ring-sc", + "usb-audio-out-tracks-main-cue", "cc-map", "sidechain-compressor", "vector", - "recorder-loop-fix", + "playmodes", + "mute-modes", "output-matrix", "quantize-live-rec-toggle", - "apply-scene", - "dejavu" + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "temp-save", + "beat-slicer", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": true, "menu": { @@ -6384,8 +7934,8 @@ "COMB FILTER", "SIDECHAIN_COMPRESSOR", "LO-FI", - "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "FILTER", @@ -6400,39 +7950,40 @@ "LO-FI", "DELAY", "MINIVERB", - "EUCLID", + "TAPE ECHO", "TAPEHEAD", - "AIR CHORUS", - "EVERB", "BBD", - "LOFI2" + "RING_SC" ] }, "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": "MUTE_MODES mm_softmute at 0x400d7a80 not free" }, "result": "refused" }, { "moduleIds": [ "miniverb", - "euclid", - "repitch", + "tapeecho", "tapehead", - "airwindows-chorus", - "everb", "bbd", - "lofi2", - "synth", - "previewvol", + "ring-sc", + "usb-audio-out-tracks-main-cue", "cc-map", "sidechain-compressor", "vector", - "recorder-loop-fix", + "playmodes", + "mute-modes", "output-matrix", "quantize-live-rec-toggle", - "apply-scene", - "dejavu" + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "temp-save", + "beat-slicer", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": false, "menu": { @@ -6447,38 +7998,32 @@ "COMB FILTER", "SIDECHAIN_COMPRESSOR", "LO-FI", - "EUCLID", - "TAPEHEAD" + "TAPEHEAD", + "RING_SC" ], "fx2": [ "MINIVERB", - "EUCLID", + "TAPE ECHO", "TAPEHEAD", - "AIR CHORUS", - "EVERB", "BBD", - "LOFI2", + "RING_SC", "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": "MUTE_MODES mm_softmute at 0x400d7a80 not free" }, "result": "refused" }, { "moduleIds": [ - "tapeecho", - "repitch", - "tapehead", - "everb", "bbd", - "cc-map", + "ring-sc", "vector", - "playmodes", - "recorder-loop-fix", + "mute-modes", "poly8", "quantize-live-rec-toggle", + "apply-scene", "beat-slicer" ], "keepStockFx2": true, @@ -6494,7 +8039,7 @@ "COMB FILTER", "COMPRESSOR", "LO-FI", - "TAPEHEAD" + "RING_SC" ], "fx2": [ "FILTER", @@ -6508,30 +8053,27 @@ "COMPRESSOR", "LO-FI", "DELAY", - "TAPE ECHO", - "TAPEHEAD", - "EVERB", - "BBD" + "PLATE REV", + "BBD", + "RING_SC" ] }, "native": { - "refused": "payload A: EVERB overruns the region (3141 > 2724 words)" + "bytes": 1141914, + "osSha256": "748b1dd50a67a8df6c293c95f1d61b8ed6f1592af1f6a3f4fd184456d4c308f8", + "maskedOsSha256": "6756605474efbdb137adaa58c4b8bf1fd9b62a82a8a089c0f9a91b5767312cd0" }, - "result": "refused" + "result": "masked" }, { "moduleIds": [ - "tapeecho", - "repitch", - "tapehead", - "everb", "bbd", - "cc-map", + "ring-sc", "vector", - "playmodes", - "recorder-loop-fix", + "mute-modes", "poly8", "quantize-live-rec-toggle", + "apply-scene", "beat-slicer" ], "keepStockFx2": false, @@ -6547,40 +8089,53 @@ "COMB FILTER", "COMPRESSOR", "LO-FI", - "TAPEHEAD" + "RING_SC" ], "fx2": [ - "TAPE ECHO", - "TAPEHEAD", - "EVERB", - "BBD" + "BBD", + "RING_SC" ] }, "native": { - "refused": "payload A: EVERB overruns the region (3141 > 2724 words)" + "bytes": 1141914, + "osSha256": "f73e71b50ecc7d57fbc6051e52695b4e33e431ad6301b38f92ba011382d4ccf8", + "maskedOsSha256": "b5194f5057e7ec9b380a165e418b96d3c82809d03fd518eb7fb5313f4e8f522e" }, - "result": "refused" + "result": "masked" }, { "moduleIds": [ "miniverb", + "euclid", "repitch", + "tapehead", "airwindows-chorus", "everb", "bbd", + "lofi2", "ring-sc", + "usb-audio-out-tracks-main-cue", + "quantizer", "synth", "previewvol", "cc-map", + "sidechain-compressor", "vector", - "playmodes", "mute-modes", + "recorder-loop-fix", "poly8", "output-matrix", "quantize-live-rec-toggle", + "apply-scene", "direct-jump-kyoti", "arp-key-locks", - "beat-slicer" + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": true, "menu": { @@ -6593,8 +8148,10 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", + "EUCLID", + "TAPEHEAD", "RING_SC" ], "fx2": [ @@ -6606,41 +8163,57 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", "MINIVERB", + "EUCLID", + "TAPEHEAD", "AIR CHORUS", "EVERB", "BBD", + "LOFI2", "RING_SC" ] }, "native": { - "refused": "MUTE_MODES table PERSONALIZE labels at 0x400d7b80 not free" + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7a00 not free" }, "result": "refused" }, { "moduleIds": [ "miniverb", + "euclid", "repitch", + "tapehead", "airwindows-chorus", "everb", "bbd", + "lofi2", "ring-sc", + "usb-audio-out-tracks-main-cue", + "quantizer", "synth", "previewvol", "cc-map", + "sidechain-compressor", "vector", - "playmodes", "mute-modes", + "recorder-loop-fix", "poly8", "output-matrix", "quantize-live-rec-toggle", + "apply-scene", "direct-jump-kyoti", "arp-key-locks", - "beat-slicer" + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": false, "menu": { @@ -6653,35 +8226,39 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", + "EUCLID", + "TAPEHEAD", "RING_SC" ], "fx2": [ "MINIVERB", + "EUCLID", + "TAPEHEAD", "AIR CHORUS", "EVERB", "BBD", - "RING_SC" + "LOFI2", + "RING_SC", + "SIDECHAIN_COMPRESSOR" ] }, "native": { - "refused": "MUTE_MODES table PERSONALIZE getters at 0x400d7c00 not free" + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" }, "result": "refused" }, { "moduleIds": [ - "miniverb", - "repitch", - "tapehead", "airwindows-chorus", - "bbd", - "quantizer", - "synth", + "everb", + "ring-sc", "vector", - "playmodes", - "poly8" + "output-matrix", + "dejavu", + "beat-slicer", + "stem-rec" ], "keepStockFx2": true, "menu": { @@ -6696,7 +8273,7 @@ "COMB FILTER", "COMPRESSOR", "LO-FI", - "TAPEHEAD" + "RING_SC" ], "fx2": [ "FILTER", @@ -6710,29 +8287,26 @@ "COMPRESSOR", "LO-FI", "DELAY", - "MINIVERB", - "TAPEHEAD", "AIR CHORUS", - "BBD" + "EVERB", + "RING_SC" ] }, "native": { - "refused": "payload A: AIR CHORUS overruns the region (2867 > 2724 words)" + "refused": "payload A: OUTPUT MATRIX overruns the region (3068 > 2724 words)" }, "result": "refused" }, { "moduleIds": [ - "miniverb", - "repitch", - "tapehead", "airwindows-chorus", - "bbd", - "quantizer", - "synth", + "everb", + "ring-sc", "vector", - "playmodes", - "poly8" + "output-matrix", + "dejavu", + "beat-slicer", + "stem-rec" ], "keepStockFx2": false, "menu": { @@ -6747,39 +8321,26 @@ "COMB FILTER", "COMPRESSOR", "LO-FI", - "TAPEHEAD" + "RING_SC" ], "fx2": [ - "MINIVERB", - "TAPEHEAD", "AIR CHORUS", - "BBD" + "EVERB", + "RING_SC" ] }, "native": { - "refused": "payload A: AIR CHORUS overruns the region (2867 > 2724 words)" + "refused": "payload A: OUTPUT MATRIX overruns the region (3068 > 2724 words)" }, "result": "refused" }, { "moduleIds": [ - "miniverb", "euclid", - "airwindows-chorus", - "everb", - "bbd", - "usb-audio-out-tracks-main-cue", + "repitch", "quantizer", - "vector", - "playmodes", - "recorder-loop-fix", - "poly8", - "output-matrix", - "quantize-live-rec-toggle", - "apply-scene", - "direct-jump-kyoti", - "dejavu", - "arp-key-locks" + "vector", + "slow-lfo" ], "keepStockFx2": true, "menu": { @@ -6808,37 +8369,25 @@ "COMPRESSOR", "LO-FI", "DELAY", - "MINIVERB", - "EUCLID", - "AIR CHORUS", - "EVERB", - "BBD" + "PLATE REV", + "DARK REV", + "EUCLID" ] }, "native": { - "refused": "DEJAVU table LFO WAVE labels + DJV at 0x400d7c00 not free" + "bytes": 1132535, + "osSha256": "4dd3f240a0a1281d3d2948347af1cfcbd71aa180c201c9d147594e3d74238b25", + "maskedOsSha256": "8de2cd7b023396eae49b2be6b5cf5cac33cdf5e31f07f3121f32384609b208e3" }, - "result": "refused" + "result": "masked" }, { "moduleIds": [ - "miniverb", "euclid", - "airwindows-chorus", - "everb", - "bbd", - "usb-audio-out-tracks-main-cue", + "repitch", "quantizer", "vector", - "playmodes", - "recorder-loop-fix", - "poly8", - "output-matrix", - "quantize-live-rec-toggle", - "apply-scene", - "direct-jump-kyoti", - "dejavu", - "arp-key-locks" + "slow-lfo" ], "keepStockFx2": false, "menu": { @@ -6856,32 +8405,48 @@ "EUCLID" ], "fx2": [ - "MINIVERB", - "EUCLID", - "AIR CHORUS", - "EVERB", - "BBD" + "EUCLID" ] }, "native": { - "refused": "DEJAVU table LFO WAVE labels + DJV at 0x400d7c00 not free" + "bytes": 1132535, + "osSha256": "e2ed63c298fb6bd374abe24c1079d02990995df092568593779dd9ca67b677f7", + "maskedOsSha256": "6e1dea0db3fa89d755e78f0809d9318b5f43564ca495b1d2e9646a07ae2da8d2" }, - "result": "refused" + "result": "masked" }, { "moduleIds": [ "miniverb", + "tapeecho", "euclid", + "repitch", + "tapehead", + "everb", "bbd", "lofi2", - "usb-audio-out-tracks-main-cue", + "ring-sc", "quantizer", - "previewvol", + "synth", "cc-map", + "sidechain-compressor", "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", "poly8", "output-matrix", - "direct-jump-kyoti" + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "arp-key-locks", + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": true, "menu": { @@ -6894,9 +8459,11 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", - "EUCLID" + "EUCLID", + "TAPEHEAD", + "RING_SC" ], "fx2": [ "FILTER", @@ -6907,34 +8474,56 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", "MINIVERB", + "TAPE ECHO", "EUCLID", + "TAPEHEAD", + "EVERB", "BBD", - "LOFI2" + "LOFI2", + "RING_SC" ] }, "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)" + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7a00 not free" }, "result": "refused" }, { "moduleIds": [ "miniverb", + "tapeecho", "euclid", + "repitch", + "tapehead", + "everb", "bbd", "lofi2", - "usb-audio-out-tracks-main-cue", + "ring-sc", "quantizer", - "previewvol", + "synth", "cc-map", + "sidechain-compressor", "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", "poly8", "output-matrix", - "direct-jump-kyoti" + "quantize-live-rec-toggle", + "apply-scene", + "direct-jump-kyoti", + "arp-key-locks", + "temp-save", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": false, "menu": { @@ -6947,41 +8536,48 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "COMPRESSOR", + "SIDECHAIN_COMPRESSOR", "LO-FI", - "EUCLID" + "EUCLID", + "TAPEHEAD", + "RING_SC" ], "fx2": [ "MINIVERB", + "TAPE ECHO", "EUCLID", + "TAPEHEAD", + "EVERB", "BBD", - "LOFI2" + "LOFI2", + "RING_SC", + "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)" + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b00 not free" }, "result": "refused" }, { "moduleIds": [ "miniverb", - "tapehead", - "airwindows-chorus", + "euclid", "bbd", + "lofi2", "ring-sc", - "usb-audio-out-tracks-main-cue", "quantizer", - "cc-map", "vector", "playmodes", "mute-modes", - "poly8", "output-matrix", "apply-scene", "direct-jump-kyoti", - "dejavu", - "beat-slicer" + "temp-save", + "tuner", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": true, "menu": { @@ -6996,7 +8592,7 @@ "COMB FILTER", "COMPRESSOR", "LO-FI", - "TAPEHEAD", + "EUCLID", "RING_SC" ], "fx2": [ @@ -7012,36 +8608,36 @@ "LO-FI", "DELAY", "MINIVERB", - "TAPEHEAD", - "AIR CHORUS", + "EUCLID", "BBD", + "LOFI2", "RING_SC" ] }, "native": { - "refused": "DEJAVU table LFO WAVE labels + DJV at 0x400d7b80 not free" + "refused": "MUTE_MODES table PERSONALIZE getters at 0x400d7b80 not free" }, "result": "refused" }, { "moduleIds": [ "miniverb", - "tapehead", - "airwindows-chorus", + "euclid", "bbd", + "lofi2", "ring-sc", - "usb-audio-out-tracks-main-cue", "quantizer", - "cc-map", "vector", "playmodes", "mute-modes", - "poly8", "output-matrix", "apply-scene", "direct-jump-kyoti", - "dejavu", - "beat-slicer" + "temp-save", + "tuner", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": false, "menu": { @@ -7056,48 +8652,36 @@ "COMB FILTER", "COMPRESSOR", "LO-FI", - "TAPEHEAD", + "EUCLID", "RING_SC" ], "fx2": [ "MINIVERB", - "TAPEHEAD", - "AIR CHORUS", + "EUCLID", "BBD", + "LOFI2", "RING_SC" ] }, "native": { - "refused": "DEJAVU table LFO WAVE icons + DJV at 0x400d7c00 not free" + "refused": "MUTE_MODES table PERSONALIZE setters at 0x400d7c00 not free" }, "result": "refused" }, { "moduleIds": [ - "miniverb", - "tapeecho", - "euclid", "repitch", - "tapehead", + "airwindows-chorus", "everb", - "lofi2", "ring-sc", "usb-audio-out-tracks-main-cue", - "quantizer", "synth", + "previewvol", "cc-map", - "sidechain-compressor", "vector", - "playmodes", - "mute-modes", "recorder-loop-fix", - "poly8", - "output-matrix", - "quantize-live-rec-toggle", "apply-scene", - "dejavu", - "arp-key-locks", - "beat-slicer" + "tuner" ], "keepStockFx2": true, "menu": { @@ -7110,10 +8694,8 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", - "EUCLID", - "TAPEHEAD", "RING_SC" ], "fx2": [ @@ -7125,49 +8707,33 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", "DELAY", - "MINIVERB", - "TAPE ECHO", - "EUCLID", - "TAPEHEAD", + "AIR CHORUS", "EVERB", - "LOFI2", "RING_SC" ] }, "native": { - "refused": "SIDECHAIN_COMPRESSOR sc_ui at 0x400d7b80 not free" + "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" }, { "moduleIds": [ - "miniverb", - "tapeecho", - "euclid", "repitch", - "tapehead", + "airwindows-chorus", "everb", - "lofi2", "ring-sc", "usb-audio-out-tracks-main-cue", - "quantizer", "synth", + "previewvol", "cc-map", - "sidechain-compressor", "vector", - "playmodes", - "mute-modes", "recorder-loop-fix", - "poly8", - "output-matrix", - "quantize-live-rec-toggle", "apply-scene", - "dejavu", - "arp-key-locks", - "beat-slicer" + "tuner" ], "keepStockFx2": false, "menu": { @@ -7180,43 +8746,49 @@ "CHORUS", "SPATIALIZER", "COMB FILTER", - "SIDECHAIN_COMPRESSOR", + "COMPRESSOR", "LO-FI", - "EUCLID", - "TAPEHEAD", "RING_SC" ], "fx2": [ - "MINIVERB", - "TAPE ECHO", - "EUCLID", - "TAPEHEAD", + "AIR CHORUS", "EVERB", - "LOFI2", - "RING_SC", - "SIDECHAIN_COMPRESSOR" + "RING_SC" ] }, "native": { - "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7980 not free" + "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" }, { "moduleIds": [ - "miniverb", "tapeecho", + "euclid", + "repitch", + "tapehead", "airwindows-chorus", "everb", - "bbd", - "usb-audio-out-tracks-main-cue", + "lofi2", + "quantizer", + "synth", "previewvol", - "cc-map", "sidechain-compressor", "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "poly8", "output-matrix", "apply-scene", - "direct-jump-kyoti" + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "beat-slicer", + "tuner", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": true, "menu": { @@ -7230,7 +8802,9 @@ "SPATIALIZER", "COMB FILTER", "SIDECHAIN_COMPRESSOR", - "LO-FI" + "LO-FI", + "EUCLID", + "TAPEHEAD" ], "fx2": [ "FILTER", @@ -7244,33 +8818,47 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "MINIVERB", "TAPE ECHO", + "EUCLID", + "TAPEHEAD", "AIR CHORUS", "EVERB", - "BBD" + "LOFI2" ] }, "native": { - "refused": "payload A: EVERB overruns the region (4052 > 2724 words)" + "refused": "SIDECHAIN_COMPRESSOR sc_ui at 0x400d7980 not free" }, "result": "refused" }, { "moduleIds": [ - "miniverb", "tapeecho", + "euclid", + "repitch", + "tapehead", "airwindows-chorus", "everb", - "bbd", - "usb-audio-out-tracks-main-cue", + "lofi2", + "quantizer", + "synth", "previewvol", - "cc-map", "sidechain-compressor", "vector", + "playmodes", + "mute-modes", + "recorder-loop-fix", + "poly8", "output-matrix", "apply-scene", - "direct-jump-kyoti" + "direct-jump-kyoti", + "dejavu", + "arp-key-locks", + "beat-slicer", + "tuner", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": false, "menu": { @@ -7284,32 +8872,31 @@ "SPATIALIZER", "COMB FILTER", "SIDECHAIN_COMPRESSOR", - "LO-FI" + "LO-FI", + "EUCLID", + "TAPEHEAD" ], "fx2": [ - "MINIVERB", "TAPE ECHO", + "EUCLID", + "TAPEHEAD", "AIR CHORUS", "EVERB", - "BBD", + "LOFI2", "SIDECHAIN_COMPRESSOR" ] }, "native": { - "refused": "payload A: EVERB overruns the region (4052 > 2724 words)" + "refused": "SIDECHAIN_COMPRESSOR sc_ui at 0x400d7b00 not free" }, "result": "refused" }, { "moduleIds": [ - "tapeecho", "ring-sc", "synth", "vector", - "mute-modes", - "output-matrix", - "apply-scene", - "direct-jump-kyoti" + "slow-lfo" ], "keepStockFx2": true, "menu": { @@ -7338,8 +8925,8 @@ "COMPRESSOR", "LO-FI", "DELAY", + "PLATE REV", "DARK REV", - "TAPE ECHO", "RING_SC" ] }, @@ -7350,14 +8937,10 @@ }, { "moduleIds": [ - "tapeecho", "ring-sc", "synth", "vector", - "mute-modes", - "output-matrix", - "apply-scene", - "direct-jump-kyoti" + "slow-lfo" ], "keepStockFx2": false, "menu": { @@ -7375,7 +8958,6 @@ "RING_SC" ], "fx2": [ - "TAPE ECHO", "RING_SC" ] }, @@ -7387,9 +8969,12 @@ { "moduleIds": [ "miniverb", + "tapeecho", "euclid", + "repitch", "everb", "bbd", + "ring-sc", "quantizer", "previewvol", "sidechain-compressor", @@ -7399,11 +8984,14 @@ "recorder-loop-fix", "poly8", "output-matrix", + "quantize-live-rec-toggle", "apply-scene", "direct-jump-kyoti", - "dejavu", "arp-key-locks", - "beat-slicer" + "beat-slicer", + "tuner", + "slow-lfo", + "stem-rec" ], "keepStockFx2": true, "menu": { @@ -7418,7 +9006,8 @@ "COMB FILTER", "SIDECHAIN_COMPRESSOR", "LO-FI", - "EUCLID" + "EUCLID", + "RING_SC" ], "fx2": [ "FILTER", @@ -7433,22 +9022,27 @@ "LO-FI", "DELAY", "MINIVERB", + "TAPE ECHO", "EUCLID", "EVERB", - "BBD" + "BBD", + "RING_SC" ] }, "native": { - "refused": "seek-bind counter cave: 16 B fits neither the clone window (from 0x400d7c00) nor the overflow run" + "refused": "SIDECHAIN_COMPRESSOR sc_ui at 0x400d7980 not free" }, "result": "refused" }, { "moduleIds": [ "miniverb", + "tapeecho", "euclid", + "repitch", "everb", "bbd", + "ring-sc", "quantizer", "previewvol", "sidechain-compressor", @@ -7458,11 +9052,14 @@ "recorder-loop-fix", "poly8", "output-matrix", + "quantize-live-rec-toggle", "apply-scene", "direct-jump-kyoti", - "dejavu", "arp-key-locks", - "beat-slicer" + "beat-slicer", + "tuner", + "slow-lfo", + "stem-rec" ], "keepStockFx2": false, "menu": { @@ -7477,40 +9074,38 @@ "COMB FILTER", "SIDECHAIN_COMPRESSOR", "LO-FI", - "EUCLID" + "EUCLID", + "RING_SC" ], "fx2": [ "MINIVERB", + "TAPE ECHO", "EUCLID", "EVERB", "BBD", + "RING_SC", "SIDECHAIN_COMPRESSOR" ] }, "native": { - "refused": "spacing cave: 286 B fits neither the clone window (from 0x400d7c80) nor the overflow run" + "refused": "SIDECHAIN_COMPRESSOR sc_ui at 0x400d7b00 not free" }, "result": "refused" }, { "moduleIds": [ - "miniverb", - "tapeecho", - "euclid", - "everb", - "quantizer", + "repitch", + "lofi2", + "ring-sc", "synth", "cc-map", "sidechain-compressor", "vector", "mute-modes", - "poly8", + "recorder-loop-fix", "output-matrix", - "quantize-live-rec-toggle", - "apply-scene", - "direct-jump-kyoti", - "dejavu", - "beat-slicer" + "arp-key-locks", + "stem-rec" ], "keepStockFx2": true, "menu": { @@ -7525,7 +9120,7 @@ "COMB FILTER", "SIDECHAIN_COMPRESSOR", "LO-FI", - "EUCLID" + "RING_SC" ], "fx2": [ "FILTER", @@ -7539,36 +9134,29 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "MINIVERB", - "TAPE ECHO", - "EUCLID", - "EVERB" + "LOFI2", + "RING_SC" ] }, "native": { - "refused": "QUANTIZE_LIVE_REC_TOGGLE qlr at 0x400d7b00 not free" + "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" }, { "moduleIds": [ - "miniverb", - "tapeecho", - "euclid", - "everb", - "quantizer", + "repitch", + "lofi2", + "ring-sc", "synth", "cc-map", "sidechain-compressor", "vector", "mute-modes", - "poly8", + "recorder-loop-fix", "output-matrix", - "quantize-live-rec-toggle", - "apply-scene", - "direct-jump-kyoti", - "dejavu", - "beat-slicer" + "arp-key-locks", + "stem-rec" ], "keepStockFx2": false, "menu": { @@ -7583,18 +9171,16 @@ "COMB FILTER", "SIDECHAIN_COMPRESSOR", "LO-FI", - "EUCLID" + "RING_SC" ], "fx2": [ - "MINIVERB", - "TAPE ECHO", - "EUCLID", - "EVERB", + "LOFI2", + "RING_SC", "SIDECHAIN_COMPRESSOR" ] }, "native": { - "refused": "Tape TIME formatter: 244 B fits neither the clone window (from 0x400d7c00) 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" }, @@ -7613,7 +9199,6 @@ "quantizer", "synth", "previewvol", - "cc-map", "sidechain-compressor", "vector", "playmodes", @@ -7621,11 +9206,17 @@ "recorder-loop-fix", "poly8", "output-matrix", + "quantize-live-rec-toggle", "apply-scene", "direct-jump-kyoti", "dejavu", "arp-key-locks", - "beat-slicer" + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": true, "menu": { @@ -7686,7 +9277,6 @@ "quantizer", "synth", "previewvol", - "cc-map", "sidechain-compressor", "vector", "playmodes", @@ -7694,11 +9284,17 @@ "recorder-loop-fix", "poly8", "output-matrix", + "quantize-live-rec-toggle", "apply-scene", "direct-jump-kyoti", "dejavu", "arp-key-locks", - "beat-slicer" + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": false, "menu": { @@ -7736,23 +9332,19 @@ }, { "moduleIds": [ - "miniverb", - "tapeecho", - "airwindows-chorus", - "everb", + "euclid", "bbd", - "ring-sc", + "lofi2", + "usb-audio-out-tracks-main-cue", "quantizer", - "cc-map", + "previewvol", "sidechain-compressor", "vector", - "playmodes", "mute-modes", - "poly8", "output-matrix", "quantize-live-rec-toggle", - "apply-scene", - "beat-slicer" + "arp-key-locks", + "tuner" ], "keepStockFx2": true, "menu": { @@ -7767,7 +9359,7 @@ "COMB FILTER", "SIDECHAIN_COMPRESSOR", "LO-FI", - "RING_SC" + "EUCLID" ], "fx2": [ "FILTER", @@ -7781,38 +9373,31 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "MINIVERB", - "TAPE ECHO", - "AIR CHORUS", - "EVERB", + "EUCLID", "BBD", - "RING_SC" + "LOFI2" ] }, "native": { - "refused": "SIDECHAIN_COMPRESSOR sc_ui at 0x400d7980 not free" + "refused": "MUTE_MODES mm_softmute at 0x400d7900 not free" }, "result": "refused" }, { "moduleIds": [ - "miniverb", - "tapeecho", - "airwindows-chorus", - "everb", + "euclid", "bbd", - "ring-sc", + "lofi2", + "usb-audio-out-tracks-main-cue", "quantizer", - "cc-map", + "previewvol", "sidechain-compressor", "vector", - "playmodes", "mute-modes", - "poly8", "output-matrix", "quantize-live-rec-toggle", - "apply-scene", - "beat-slicer" + "arp-key-locks", + "tuner" ], "keepStockFx2": false, "menu": { @@ -7827,47 +9412,108 @@ "COMB FILTER", "SIDECHAIN_COMPRESSOR", "LO-FI", - "RING_SC" + "EUCLID" ], "fx2": [ - "MINIVERB", - "TAPE ECHO", - "AIR CHORUS", - "EVERB", + "EUCLID", "BBD", - "RING_SC", + "LOFI2", "SIDECHAIN_COMPRESSOR" ] }, "native": { - "refused": "SIDECHAIN_COMPRESSOR sc_ui at 0x400d7a80 not free" + "refused": "MUTE_MODES mm_softmute at 0x400d7900 not free" }, "result": "refused" }, { "moduleIds": [ - "tapeecho", - "repitch", - "airwindows-chorus", "bbd", - "ring-sc", - "quantizer", - "synth", - "previewvol", - "cc-map", + "usb-audio-out-tracks-main-cue", + "sidechain-compressor", + "vector", + "slow-lfo" + ], + "keepStockFx2": true, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI" + ], + "fx2": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI", + "DELAY", + "PLATE REV", + "BBD" + ] + }, + "native": { + "bytes": 1129867, + "osSha256": "b05498c7f610bf1b5c019647bc178370d007a7fdc2faec1e62c0c855e4bcfddc", + "maskedOsSha256": "e0ba96934cc2ab20be3f847fb6d31f496c655a0117bc217fffa6b0289814ffca" + }, + "result": "masked" + }, + { + "moduleIds": [ + "bbd", + "usb-audio-out-tracks-main-cue", + "sidechain-compressor", + "vector", + "slow-lfo" + ], + "keepStockFx2": false, + "menu": { + "fx1": [ + "FILTER", + "EQUALIZER", + "DJ EQ", + "PHASER", + "FLANGER", + "CHORUS", + "SPATIALIZER", + "COMB FILTER", + "SIDECHAIN_COMPRESSOR", + "LO-FI" + ], + "fx2": [ + "BBD", + "SIDECHAIN_COMPRESSOR" + ] + }, + "native": { + "bytes": 1129867, + "osSha256": "b10f8b9a0ecb4326260e54e6f0d6f4f97e0cdbf4dc3aa27a9727c4cee9f2c231", + "maskedOsSha256": "f4b22f4a0bf1cd0f59d6b83ba52904fffee964d360b65abc216d12c034cb6705" + }, + "result": "masked" + }, + { + "moduleIds": [ + "repitch", + "usb-audio-out-tracks-main-cue", "sidechain-compressor", "vector", - "playmodes", - "mute-modes", - "recorder-loop-fix", - "poly8", - "output-matrix", "quantize-live-rec-toggle", - "apply-scene", "direct-jump-kyoti", - "dejavu", - "arp-key-locks", - "beat-slicer" + "bar-led" ], "keepStockFx2": true, "menu": { @@ -7881,8 +9527,7 @@ "SPATIALIZER", "COMB FILTER", "SIDECHAIN_COMPRESSOR", - "LO-FI", - "RING_SC" + "LO-FI" ], "fx2": [ "FILTER", @@ -7896,41 +9541,26 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "TAPE ECHO", - "AIR CHORUS", - "BBD", - "RING_SC" + "PLATE REV", + "DARK REV" ] }, "native": { - "refused": "QUANTIZE_LIVE_REC_TOGGLE qlr at 0x400d7b80 not free" + "bytes": 1131151, + "osSha256": "36619fa423fd6302013a33547b7dd5a998073ffc5e22accd8a1848d9e83a5aa9", + "maskedOsSha256": "50052a72a1b5e5f236ae39538c58f6c2b10cd2ec06a87063000a1db996dea37b" }, - "result": "refused" + "result": "masked" }, { "moduleIds": [ - "tapeecho", "repitch", - "airwindows-chorus", - "bbd", - "ring-sc", - "quantizer", - "synth", - "previewvol", - "cc-map", + "usb-audio-out-tracks-main-cue", "sidechain-compressor", "vector", - "playmodes", - "mute-modes", - "recorder-loop-fix", - "poly8", - "output-matrix", "quantize-live-rec-toggle", - "apply-scene", "direct-jump-kyoti", - "dejavu", - "arp-key-locks", - "beat-slicer" + "bar-led" ], "keepStockFx2": false, "menu": { @@ -7944,39 +9574,50 @@ "SPATIALIZER", "COMB FILTER", "SIDECHAIN_COMPRESSOR", - "LO-FI", - "RING_SC" + "LO-FI" ], "fx2": [ - "TAPE ECHO", - "AIR CHORUS", - "BBD", - "RING_SC", "SIDECHAIN_COMPRESSOR" ] }, "native": { - "refused": "QUANTIZE_LIVE_REC_TOGGLE qlr at 0x400d7b80 not free" + "bytes": 1131151, + "osSha256": "6119741f511bf11ac16a145e2b8eaca63d1745dbad39dfcc22626531a8719153", + "maskedOsSha256": "46e09d54d25b8a30af96db115ed680a9669cb4bb6048fcd1036d34ea417e5383" }, - "result": "refused" + "result": "masked" }, { "moduleIds": [ - "tapeecho", + "miniverb", "euclid", "repitch", + "tapehead", "airwindows-chorus", + "everb", + "bbd", "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", + "quantizer", "synth", "previewvol", - "cc-map", "sidechain-compressor", "vector", + "playmodes", "mute-modes", "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", "direct-jump-kyoti", - "beat-slicer" + "dejavu", + "arp-key-locks", + "temp-save", + "beat-slicer", + "slow-lfo", + "bar-led", + "stem-rec" ], "keepStockFx2": true, "menu": { @@ -7991,7 +9632,9 @@ "COMB FILTER", "SIDECHAIN_COMPRESSOR", "LO-FI", - "EUCLID" + "EUCLID", + "TAPEHEAD", + "RING_SC" ], "fx2": [ "FILTER", @@ -8005,34 +9648,52 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", - "TAPE ECHO", + "MINIVERB", "EUCLID", + "TAPEHEAD", "AIR CHORUS", - "LOFI2" + "EVERB", + "BBD", + "LOFI2", + "RING_SC" ] }, "native": { - "refused": "Tape TIME formatter: 244 B fits neither the clone window (from 0x400d7b80) nor the overflow run" + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7a00 not free" }, "result": "refused" }, { "moduleIds": [ - "tapeecho", + "miniverb", "euclid", "repitch", + "tapehead", "airwindows-chorus", + "everb", + "bbd", "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", + "quantizer", "synth", "previewvol", - "cc-map", "sidechain-compressor", "vector", + "playmodes", "mute-modes", "poly8", + "output-matrix", + "quantize-live-rec-toggle", + "apply-scene", "direct-jump-kyoti", - "beat-slicer" + "dejavu", + "arp-key-locks", + "temp-save", + "beat-slicer", + "slow-lfo", + "bar-led", + "stem-rec" ], "keepStockFx2": false, "menu": { @@ -8047,34 +9708,46 @@ "COMB FILTER", "SIDECHAIN_COMPRESSOR", "LO-FI", - "EUCLID" + "EUCLID", + "TAPEHEAD", + "RING_SC" ], "fx2": [ - "TAPE ECHO", + "MINIVERB", "EUCLID", + "TAPEHEAD", "AIR CHORUS", + "EVERB", + "BBD", "LOFI2", + "RING_SC", "SIDECHAIN_COMPRESSOR" ] }, "native": { - "refused": "Tape TIME formatter: 244 B fits neither the clone window (from 0x400d7b80) nor the overflow run" + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" }, "result": "refused" }, { "moduleIds": [ - "tapeecho", + "miniverb", "airwindows-chorus", "everb", "bbd", - "usb-audio-out-tracks-main-cue", + "lofi2", "quantizer", + "synth", "vector", + "mute-modes", "recorder-loop-fix", "poly8", - "arp-key-locks", - "beat-slicer" + "output-matrix", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "tiempos" ], "keepStockFx2": true, "menu": { @@ -8102,30 +9775,37 @@ "COMPRESSOR", "LO-FI", "DELAY", - "TAPE ECHO", + "MINIVERB", "AIR CHORUS", "EVERB", - "BBD" + "BBD", + "LOFI2" ] }, "native": { - "refused": "payload A: EVERB overruns the region (3514 > 2724 words)" + "refused": "MUTE_MODES table PERSONALIZE labels at 0x400d7c00 not free" }, "result": "refused" }, { "moduleIds": [ - "tapeecho", + "miniverb", "airwindows-chorus", "everb", "bbd", - "usb-audio-out-tracks-main-cue", + "lofi2", "quantizer", + "synth", "vector", + "mute-modes", "recorder-loop-fix", "poly8", - "arp-key-locks", - "beat-slicer" + "output-matrix", + "beat-slicer", + "tuner", + "slow-lfo", + "bar-led", + "tiempos" ], "keepStockFx2": false, "menu": { @@ -8142,14 +9822,15 @@ "LO-FI" ], "fx2": [ - "TAPE ECHO", + "MINIVERB", "AIR CHORUS", "EVERB", - "BBD" + "BBD", + "LOFI2" ] }, "native": { - "refused": "payload A: EVERB overruns the region (3514 > 2724 words)" + "refused": "MUTE_MODES table PERSONALIZE labels at 0x400d7c00 not free" }, "result": "refused" }, @@ -8157,20 +9838,21 @@ "moduleIds": [ "miniverb", "tapeecho", - "tapehead", + "airwindows-chorus", "everb", + "bbd", "lofi2", + "usb-audio-out-tracks-main-cue", + "previewvol", "sidechain-compressor", "vector", - "playmodes", "recorder-loop-fix", "poly8", - "output-matrix", - "quantize-live-rec-toggle", "apply-scene", - "direct-jump-kyoti", + "dejavu", "arp-key-locks", - "beat-slicer" + "temp-save", + "tiempos" ], "keepStockFx2": true, "menu": { @@ -8184,8 +9866,7 @@ "SPATIALIZER", "COMB FILTER", "SIDECHAIN_COMPRESSOR", - "LO-FI", - "TAPEHEAD" + "LO-FI" ], "fx2": [ "FILTER", @@ -8201,13 +9882,14 @@ "DELAY", "MINIVERB", "TAPE ECHO", - "TAPEHEAD", + "AIR CHORUS", "EVERB", + "BBD", "LOFI2" ] }, "native": { - "refused": "payload A: LOFI2 does not fit any harvested run -- 157 words are free across 1 separate runs but the largest single opening has only 157; harvest an effect BETWEEN two runs to join them into one" + "refused": "SIDECHAIN_COMPRESSOR sc_ui at 0x400d7980 not free" }, "result": "refused" }, @@ -8215,20 +9897,21 @@ "moduleIds": [ "miniverb", "tapeecho", - "tapehead", + "airwindows-chorus", "everb", + "bbd", "lofi2", + "usb-audio-out-tracks-main-cue", + "previewvol", "sidechain-compressor", "vector", - "playmodes", "recorder-loop-fix", "poly8", - "output-matrix", - "quantize-live-rec-toggle", "apply-scene", - "direct-jump-kyoti", + "dejavu", "arp-key-locks", - "beat-slicer" + "temp-save", + "tiempos" ], "keepStockFx2": false, "menu": { @@ -8242,20 +9925,20 @@ "SPATIALIZER", "COMB FILTER", "SIDECHAIN_COMPRESSOR", - "LO-FI", - "TAPEHEAD" + "LO-FI" ], "fx2": [ "MINIVERB", "TAPE ECHO", - "TAPEHEAD", + "AIR CHORUS", "EVERB", + "BBD", "LOFI2", "SIDECHAIN_COMPRESSOR" ] }, "native": { - "refused": "payload A: LOFI2 does not fit any harvested run -- 157 words are free across 1 separate runs but the largest single opening has only 157; harvest an effect BETWEEN two runs to join them into one" + "refused": "SIDECHAIN_COMPRESSOR sc_ui at 0x400d7a00 not free" }, "result": "refused" }, @@ -8263,24 +9946,30 @@ "moduleIds": [ "miniverb", "tapeecho", + "euclid", "repitch", + "tapehead", "airwindows-chorus", + "everb", "bbd", "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", - "quantizer", "synth", "previewvol", + "cc-map", "sidechain-compressor", "vector", "playmodes", - "mute-modes", + "recorder-loop-fix", "poly8", "apply-scene", "direct-jump-kyoti", "dejavu", "arp-key-locks", - "beat-slicer" + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": true, "menu": { @@ -8294,7 +9983,10 @@ "SPATIALIZER", "COMB FILTER", "SIDECHAIN_COMPRESSOR", - "LO-FI" + "LO-FI", + "EUCLID", + "TAPEHEAD", + "RING_SC" ], "fx2": [ "FILTER", @@ -8310,13 +10002,17 @@ "DELAY", "MINIVERB", "TAPE ECHO", + "EUCLID", + "TAPEHEAD", "AIR CHORUS", + "EVERB", "BBD", - "LOFI2" + "LOFI2", + "RING_SC" ] }, "native": { - "refused": "MUTE_MODES mm_menu at 0x400d7c00 not free" + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" }, "result": "refused" }, @@ -8324,24 +10020,30 @@ "moduleIds": [ "miniverb", "tapeecho", + "euclid", "repitch", + "tapehead", "airwindows-chorus", + "everb", "bbd", "lofi2", + "ring-sc", "usb-audio-out-tracks-main-cue", - "quantizer", "synth", "previewvol", + "cc-map", "sidechain-compressor", "vector", "playmodes", - "mute-modes", + "recorder-loop-fix", "poly8", "apply-scene", "direct-jump-kyoti", "dejavu", "arp-key-locks", - "beat-slicer" + "bar-led", + "stem-rec", + "tiempos" ], "keepStockFx2": false, "menu": { @@ -8355,38 +10057,60 @@ "SPATIALIZER", "COMB FILTER", "SIDECHAIN_COMPRESSOR", - "LO-FI" + "LO-FI", + "EUCLID", + "TAPEHEAD", + "RING_SC" ], "fx2": [ "MINIVERB", "TAPE ECHO", + "EUCLID", + "TAPEHEAD", "AIR CHORUS", + "EVERB", "BBD", "LOFI2", + "RING_SC", "SIDECHAIN_COMPRESSOR" ] }, "native": { - "refused": "MUTE_MODES mm_menu at 0x400d7c00 not free" + "refused": "SYNTH MACHINE fm_qzc at 0x400d7b80 not free" }, "result": "refused" }, { "moduleIds": [ + "miniverb", "tapeecho", + "euclid", "tapehead", + "airwindows-chorus", + "everb", "bbd", - "ring-sc", + "lofi2", "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", + "previewvol", + "cc-map", "sidechain-compressor", "vector", - "playmodes", "mute-modes", + "recorder-loop-fix", "poly8", + "output-matrix", "quantize-live-rec-toggle", "apply-scene", + "direct-jump-kyoti", + "dejavu", "arp-key-locks", - "beat-slicer" + "temp-save", + "beat-slicer", + "tuner", + "stem-rec", + "tiempos" ], "keepStockFx2": true, "menu": { @@ -8401,8 +10125,8 @@ "COMB FILTER", "SIDECHAIN_COMPRESSOR", "LO-FI", - "TAPEHEAD", - "RING_SC" + "EUCLID", + "TAPEHEAD" ], "fx2": [ "FILTER", @@ -8416,33 +10140,52 @@ "SIDECHAIN_COMPRESSOR", "LO-FI", "DELAY", + "MINIVERB", "TAPE ECHO", + "EUCLID", "TAPEHEAD", + "AIR CHORUS", + "EVERB", "BBD", - "RING_SC" + "LOFI2" ] }, "native": { - "refused": "MUTE_MODES table PERSONALIZE getters at 0x400d7b80 not free" + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7a00 not free" }, "result": "refused" }, { "moduleIds": [ + "miniverb", "tapeecho", + "euclid", "tapehead", + "airwindows-chorus", + "everb", "bbd", - "ring-sc", + "lofi2", "usb-audio-out-tracks-main-cue", + "quantizer", + "synth", + "previewvol", + "cc-map", "sidechain-compressor", "vector", - "playmodes", "mute-modes", + "recorder-loop-fix", "poly8", + "output-matrix", "quantize-live-rec-toggle", "apply-scene", + "direct-jump-kyoti", + "dejavu", "arp-key-locks", - "beat-slicer" + "temp-save", + "beat-slicer", + "tuner", + "stem-rec", + "tiempos" ], "keepStockFx2": false, "menu": { @@ -8457,48 +10200,48 @@ "COMB FILTER", "SIDECHAIN_COMPRESSOR", "LO-FI", - "TAPEHEAD", - "RING_SC" + "EUCLID", + "TAPEHEAD" ], "fx2": [ + "MINIVERB", "TAPE ECHO", + "EUCLID", "TAPEHEAD", + "AIR CHORUS", + "EVERB", "BBD", - "RING_SC", + "LOFI2", "SIDECHAIN_COMPRESSOR" ] }, "native": { - "refused": "MUTE_MODES table PERSONALIZE labels at 0x400d7c00 not free" + "refused": "SIDECHAIN_COMPRESSOR sc_cf at 0x400d7b80 not free" }, "result": "refused" }, { "moduleIds": [ "miniverb", - "tapeecho", - "euclid", - "repitch", - "tapehead", - "airwindows-chorus", - "everb", "bbd", "lofi2", "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", - "cc-map", + "previewvol", "vector", "playmodes", - "mute-modes", "recorder-loop-fix", "poly8", - "output-matrix", "quantize-live-rec-toggle", + "apply-scene", "dejavu", - "arp-key-locks", - "beat-slicer" + "temp-save", + "beat-slicer", + "slow-lfo", + "bar-led", + "stem-rec" ], "keepStockFx2": true, "menu": { @@ -8513,8 +10256,6 @@ "COMB FILTER", "COMPRESSOR", "LO-FI", - "EUCLID", - "TAPEHEAD", "RING_SC" ], "fx2": [ @@ -8530,47 +10271,38 @@ "LO-FI", "DELAY", "MINIVERB", - "TAPE ECHO", - "EUCLID", - "TAPEHEAD", - "AIR CHORUS", - "EVERB", "BBD", "LOFI2", "RING_SC" ] }, "native": { - "refused": "MUTE_MODES mm_menu at 0x400d7b00 not free" + "refused": "DEJAVU table LFO WAVE icons + DJV at 0x400d7b80 not free" }, "result": "refused" }, { "moduleIds": [ "miniverb", - "tapeecho", - "euclid", - "repitch", - "tapehead", - "airwindows-chorus", - "everb", "bbd", "lofi2", "ring-sc", "usb-audio-out-tracks-main-cue", "quantizer", "synth", - "cc-map", + "previewvol", "vector", "playmodes", - "mute-modes", "recorder-loop-fix", "poly8", - "output-matrix", "quantize-live-rec-toggle", + "apply-scene", "dejavu", - "arp-key-locks", - "beat-slicer" + "temp-save", + "beat-slicer", + "slow-lfo", + "bar-led", + "stem-rec" ], "keepStockFx2": false, "menu": { @@ -8585,24 +10317,17 @@ "COMB FILTER", "COMPRESSOR", "LO-FI", - "EUCLID", - "TAPEHEAD", "RING_SC" ], "fx2": [ "MINIVERB", - "TAPE ECHO", - "EUCLID", - "TAPEHEAD", - "AIR CHORUS", - "EVERB", "BBD", "LOFI2", "RING_SC" ] }, "native": { - "refused": "MUTE_MODES mm_menu at 0x400d7b00 not free" + "refused": "label formatters do not fit: BBD slot 6 needs 54 B; the clone window ends at 0x400d7c3c and the overflow run at 0x400d2ce0 (next free 0x400d2ce0)" }, "result": "refused" } From ebceb74f8ad1676bd8cb934b875d6f064ea2ab48 Mon Sep 17 00:00:00 2001 From: repeat98 Date: Sun, 8 Nov 2026 13:36:24 +0100 Subject: [PATCH 26/33] VECTOR 0.3.0: no .bss on a card (zero statics in .data), the hook registry row moves to its own PR, composition count 100 A card unit's .bss is never loaded or zeroed, so the MIDI generator registry's statics would start as whatever the boot left. Co-Authored-By: Claude Opus 5.5 --- sdk/machines/octatrack/HOOKS.md | 5 +- sdk/machines/octatrack/events.json | 14 +--- .../module-adapters/machine-ports.json | 2 +- .../machine_composition_tests.py | 2 +- .../module-adapters/vector_runtime.py | 2 +- sdk/octabam/modules/vector/control.s | 70 +++++++++++++------ .../modules/vector/media/core-tests.json | 2 +- .../modules/vector/octamod.module.json | 14 ++-- sdk/octabam/modules/vector/prepare.py | 8 ++- 9 files changed, 73 insertions(+), 46 deletions(-) diff --git a/sdk/machines/octatrack/HOOKS.md b/sdk/machines/octatrack/HOOKS.md index ee227f1f7..c28baa7a2 100644 --- a/sdk/machines/octatrack/HOOKS.md +++ b/sdk/machines/octatrack/HOOKS.md @@ -50,7 +50,7 @@ next base build, which renames them; the base loads them by those paths. | `ot_machines` | table | none | the machine chooser, SRC SETUP, the page resolver, the Part validator, the UI tick, pool navigation and the FLEX renderer ask the contributed machines, in row order: chooser rows 5 on | `80-byte record` | Contribute one struct modwerk_machine (every field but abi, sig and label optional, 0). A Part keeps its signature when the machine is absent and reads as stock. Leaving a PROTECT machine that has no assign of its own puts stock's FLEX defaults back in both Part copies before the signature goes. A priced machine (source_kind) is charged on its track's core before the track becomes it, and every owned track at each UI tick; a track the core cannot carry renders stock's silent source. Removal is refused while a Part, a UI root or a paused task still holds the machine. A SETUP_PAGE machine contributes a struct modwerk_machine_setup (88 bytes): while SRC SETUP's cursor is on its row and the current track is its own, the drawer shows the page its page function returns and encoders A-F go to its knob function before stock edits the backing pool's setup; a base without the flag ignores it and reads 80 bytes, so the machine keeps stock's setup there. A NATIVE_FLEX machine must contribute START and its own render callback. It keeps its native FLEX voice active while the base clears its retrig count; refused STARTs, unpaid owners and missing machines still stop it. Translate and restore custom controls around native START and render calls. Use a matching base: older bases ignore this flag and stop the voice. | lower first, then module id: the chooser's row order. 10 POLY8, 20 Analog BD, 30 VECTOR, 40 FM Synth (the order of POLY8's shared controller); others 50-90. | the UI task and the audio render (render only): short, no firmware call that can block | | `ot_sequencer_rows` | table | none | PROJECT > CONTROL > SEQUENCER lists stock's three rows, then one per contributed label | `4-byte record` | Contribute one struct modwerk_sequencer_rows: its rows, in order. The window shows stock's three rows and up to eight more; a row with a label an earlier row has is not shown; the getter and setter follow stock's rows' convention (CHAIN AFTER's 0x400659ec). | lower first, then module id: the rows' order. 40 FM Synth's bundled quantizer, 50 Scale Quantizer. | the UI task | | `ev_tail_kill` | call | 0x40004d0c | STOP's tail kill (STOP, STOP, STOP) holds a track: each frame, for each held track, before stock tests the track's FX2 against its three reverbs and clears theirs | `void f(uint8_t *record, unsigned track)` | A notification: every handler runs, then stock's own test. record is the track's 64-byte frame record its DSP instances read (32 halfwords): the halfword at +56 is the FX2 id stock tests, the byte at +53 FX2 SETUP's slot 11, which stock zeroes for its reverbs while the kill holds. A handler may zero its own effect's bytes there the same way (check +56 first). d2-d7/a2-a6 are the builder's and must be kept. | lower first, then module id; 10-90. | the frame interrupt: short, no firmware call that can block | -| `ot_midi_generators` | table | none | MIDI NOTE SETUP (double-tap SRC, or double-tap TRACK in MIDI mode) lists OFF and the contributed generators in its empty left half; a MIDI track running one shows that generator's pages on the MIDI pages it takes (always ARP; FUNC+AMP: the ARP page's second) | `36-byte record` | Contribute one struct modwerk_midi_generator (every field but abi, label and id optional, 0). Choosing it puts 'M' and its id in the track's arp step mask (Part 0x1822 + 2 t, high byte first), which stock's validator never reads and only ARP SETUP edits; stock's default there is ffff. On every change of generator the base first puts the track's arpeggiator back to stock's defaults (MODE OFF, every note 0), then calls the old generator's assign(t, 0) and the new one's assign(t, 1). While a generator runs a track it owns that track's 16 arpeggiator note bytes (Part 0x1832 + 16 t, each -64..63, the range stock's validator keeps), so the ARP page is always its own and FUNC+AMP never opens ARP SETUP there. Its pages show while no trig or scene is held (stock's then, so locks stay stock's); the base takes encoders A-F, YES and, on the second ARP page, NO there. Values behind the pages it takes stay stock's and keep their meaning (a NOTE page's NOT2-4 still add chord notes): set or show them itself. Layout A (owner, 24 October 2026): generators take SRC and AMP; FX1 and FX2 are kept for MIDI effects. A track whose id has no installed generator reads as stock. | lower first, then module id: the list's order. 30 VECTOR; others 40-90. | the UI task | +| `ot_midi_generators` | table | none | MIDI NOTE SETUP (double-tap SRC, or double-tap TRACK in MIDI mode) lists OFF and the contributed generators in its empty left half; a MIDI track running one shows that generator's pages on the MIDI pages it takes (always ARP; FUNC+AMP: the ARP page's second) | `36-byte record` | Contribute one struct modwerk_midi_generator (every field but abi, label and id optional, 0). Choosing it puts 'M' and its id in the track's arp step mask (Part 0x1822 + 2 t, high byte first), which stock's validator never reads and only ARP SETUP edits; stock's default there is ffff. On every change of generator the base first puts the track's arpeggiator back to stock's defaults (MODE OFF, every note 0), then calls the old generator's assign(t, 0) and the new one's assign(t, 1). While a generator runs a track it owns that track's 16 arpeggiator note bytes (Part 0x1832 + 16 t, each -64..63, the range stock's validator keeps), so the ARP page is always its own and FUNC+AMP never opens ARP SETUP there. Its pages show while no trig or scene is held (stock's then, so locks stay stock's); the base takes encoders A-F, YES and, on the second ARP page, NO there. Values behind the pages it takes stay stock's and keep their meaning (a NOTE page's NOT2-4 still add chord notes): set or show them itself. Layout A (owner, 24 October 2026): generators take SRC and AMP; FX1 and FX2 are kept for MIDI effects. A track whose id has no installed generator reads as stock. | lower first, then module id: the list's order. 30 for the first generator; others 40-90. | the UI task | | `ev_midi_note_key` | take | 0x4009fb58 | a MIDI track's note, from its trig, chord or arpeggiator, is about to be corrected to the track's KEY (ARP SETUP) and sent (d7 the track) | `struct modwerk_take, jmp entry, claims(d7)` | The taker's entry gets every register and the stack as at the site: d7 the track, a2 the note byte (it may rewrite it, 0-127, or store -1 to drop the note), -64(%fp) stock's KEY root offset. It returns to stock by jumping to 0x4009fb80 to send the note as it is now, or by replaying the stock tail below (stock's KEY correction); it must not jump into the site's bytes. Stock keeps the note it sends for that note's note-off. | 10-29: a machine claiming its own tracks (claims set); 30-49: a machine's bundled feature; 50-69: a standalone feature module. The first record that claims the call takes it. | the MIDI sequencer tick 0x400a1e0c (an interrupt, vector 0x60; octabam docs/firmware/MIDI_SCENES.md section 5), once per note: a few microseconds, no firmware call, nothing that waits or allocates | | `ev_arp_setup_knob` | take | 0x4007a2ec | an encoder turns on MIDI ARP SETUP (FUNC+AMP on a MIDI track), before stock edits LEN, KEY or an arp note | `struct modwerk_take, jmp entry, claims(nothing)` | The taker's entry gets every register and the stack as at the site: (%sp) the return address, 4(%sp) the encoder (2 LEN, 5 KEY, 6 the arp note editor), 8(%sp) the delta. It takes the turn by returning to the caller with rts (stock edits nothing), or hands it to stock by replaying the stock tail below; it must not jump into the site's bytes. A taker that stores into the pattern or the Part writes the bank and its battery-backed copy and sets the edited flags as stock's writers do. | 10-29: a machine claiming its own tracks (claims set); 30-49: a machine's bundled feature; 50-69: a standalone feature module. The first record that claims the call takes it. | the UI task (ARP SETUP's input layer): short, no firmware call that can block | | `ev_arp_setup_text` | take | 0x4007a1ec | MIDI ARP SETUP is about to draw a setup value (d3 the slot: 2 LEN, 5 KEY) | `struct modwerk_take, jmp entry, claims(d3)` | The taker's entry gets every register and the stack as at the site: d3 the slot, d4 the track's value, a3 the slot's descriptor (a3@ the text function f(buffer, value), a3@(48) the drawer or 0 for 0x400479b4), a2 and d2 the place, d6 the surface. It draws the value itself, normally by calling the slot's drawer as stock does with a text function of its own, and goes on at 0x4007a216 with every register but d0-d1/a0-a1 as it found them; or it hands the value to stock by replaying the stock tail below. It must not jump into the site's bytes. | 10-29: a machine claiming its own tracks (claims set); 30-49: a machine's bundled feature; 50-69: a standalone feature module. The first record that claims the call takes it. | the UI task (the drawer): short, no firmware call that can block | @@ -116,7 +116,6 @@ next base build, which renames them; the base loads them by those paths. | `ot_sequencer_rows` | synth | `mw_sequencer_rows` | 40 | SCALE, ROOT, GLIDE rows of FM's bundled quantizer | sdk/octabam/modules/synth/upstream/quantizer/quantizer.s (FM's bundled copy, fm_ units) qz_lbl_*, qz_get*, qz_set* | | `ot_sequencer_rows` | quantizer | `mw_sequencer_rows` | 50 | SCALE, ROOT, GLIDE rows | sdk/octabam/modules/quantizer/upstream/quantizer/quantizer.s qz_lbl_*, qz_get*, qz_set* | | `ev_tail_kill` | bbd | `bbd_tail_kill` | 50 | while the kill holds a track whose FX2 is BBD (id 0x0e), zeroes its slot 11 (+53): BBD plays the input exactly and clears its line until the track's next trig | sdk/octabam/modules/bbd/stopkill.s bbd_kill_hook (the card build's detour at the same site); on the owner's MKII 15 Oct 2026 (dev twin e429b787): slot 11 0 while held, 127 after T1's next trig, the tail cut to -132 dBFS | -| `ot_midi_generators` | vector | `vector_midi` | 30 | VECTOR: id 86 ('V'), on SRC and AMP (FUNC+AMP its second page); NOTE/VEL/LEN locks, trigs, conditions and micro-timing in the MIDI track | sdk/octabam/modules/vector/midi.c vector_midi; runtime.json | ## Reviewed raisers @@ -155,7 +154,7 @@ A raised hook has no stock site: these modules call the base's entry and act on - `ot_machines`: sdk/octabam/modules/poly8/shared-machine.c (MIT, Sam Banks / repeat98) dispatched POLY, AB, VECTOR, FM in this order; the base registry (elekloader/machine_registry.c) is that controller reading this table. - `ot_sequencer_rows`: Both quantizers name the same rows and keep them in the same bytes, so the keyed table shows one set: FM's with FM installed, Scale Quantizer's otherwise. - `ev_tail_kill`: Every handler acts only on a track whose FX2 runs its own effect id, so no order is needed between them. -- `ot_midi_generators`: One generator so far. +- `ot_midi_generators`: No generator in the catalogue yet. - `ev_midi_note_key`: No module subscribes yet. Upstream octabam's MIDI Scales (radiohagen, MIT) patches this site for its extra modes; a Modwerk port, or a module that locks KEY per step, takes it here instead. - `ev_arp_setup_knob`: No module subscribes yet. A module that locks KEY per step claims only encoder 5 while a trig is held, and leaves every other turn to stock. Upstream octabam's MIDI Scales patches KEY's branch here (0x4007a3e2) for its extra modes; a port would take this event instead. - `ev_arp_setup_text`: No module subscribes yet. A module that shows a held trig's KEY lock claims slot 5 only while a trig is held, and leaves every other draw to stock. Upstream octabam's MIDI Scales replaces KEY's text function (0x400d40c6) for its extra modes; a port would take this event instead. diff --git a/sdk/machines/octatrack/events.json b/sdk/machines/octatrack/events.json index 222225389..2659e167d 100644 --- a/sdk/machines/octatrack/events.json +++ b/sdk/machines/octatrack/events.json @@ -1680,17 +1680,9 @@ "when": "MIDI NOTE SETUP (double-tap SRC, or double-tap TRACK in MIDI mode) lists OFF and the contributed generators in its empty left half; a MIDI track running one shows that generator's pages on the MIDI pages it takes (always ARP; FUNC+AMP: the ARP page's second)", "context": "the UI task", "contract": "Contribute one struct modwerk_midi_generator (every field but abi, label and id optional, 0). Choosing it puts 'M' and its id in the track's arp step mask (Part 0x1822 + 2 t, high byte first), which stock's validator never reads and only ARP SETUP edits; stock's default there is ffff. On every change of generator the base first puts the track's arpeggiator back to stock's defaults (MODE OFF, every note 0), then calls the old generator's assign(t, 0) and the new one's assign(t, 1). While a generator runs a track it owns that track's 16 arpeggiator note bytes (Part 0x1832 + 16 t, each -64..63, the range stock's validator keeps), so the ARP page is always its own and FUNC+AMP never opens ARP SETUP there. Its pages show while no trig or scene is held (stock's then, so locks stay stock's); the base takes encoders A-F, YES and, on the second ARP page, NO there. Values behind the pages it takes stay stock's and keep their meaning (a NOTE page's NOT2-4 still add chord notes): set or show them itself. Layout A (owner, 24 October 2026): generators take SRC and AMP; FX1 and FX2 are kept for MIDI effects. A track whose id has no installed generator reads as stock.", - "order": "lower first, then module id: the list's order. 30 VECTOR; others 40-90.", - "subscribers": [ - { - "module": "vector", - "fn": "vector_midi", - "order": 30, - "does": "VECTOR: id 86 ('V'), on SRC and AMP (FUNC+AMP its second page); NOTE/VEL/LEN locks, trigs, conditions and micro-timing in the MIDI track", - "evidence": "sdk/octabam/modules/vector/midi.c vector_midi; runtime.json" - } - ], - "orderEvidence": "One generator so far.", + "order": "lower first, then module id: the list's order. 30 for the first generator; others 40-90.", + "subscribers": [], + "orderEvidence": "No generator in the catalogue yet.", "sites": [ { "site": "0x40083afc", diff --git a/sdk/machines/octatrack/module-adapters/machine-ports.json b/sdk/machines/octatrack/module-adapters/machine-ports.json index a24279dd7..f22097d97 100644 --- a/sdk/machines/octatrack/module-adapters/machine-ports.json +++ b/sdk/machines/octatrack/module-adapters/machine-ports.json @@ -151,7 +151,7 @@ }, "vector": { "sources": { - "sdk/octabam/modules/vector/control.s": "c95c74baa5e5d79d1c3edf0148b2c4a84daf4e5d61c1bff5eb3934626fd0a9be", + "sdk/octabam/modules/vector/control.s": "3e9cefa630c8425af9b2ea48cf4ce88bb9a48fa18bb1876cd1447dc12d0212b9", "sdk/octabam/modules/vector/manifest.py": "b9dec167f8bd4f1b691069cc89834f6c2a6717b874eb28629ef5c8c026d3d976" }, "contribute": [ diff --git a/sdk/machines/octatrack/module-adapters/machine_composition_tests.py b/sdk/machines/octatrack/module-adapters/machine_composition_tests.py index 91caf30bc..d5ea444ba 100644 --- a/sdk/machines/octatrack/module-adapters/machine_composition_tests.py +++ b/sdk/machines/octatrack/module-adapters/machine_composition_tests.py @@ -159,7 +159,7 @@ def test_pair_has_one_owner_without_hidden_poly_or_unrelated_dedup(self): claims += [(r.addr, r.addr + 4, m.name) for r in m.symbol_refs] claims += [(p.addr, p.addr + len(p.write), m.name) for p in m.pokes] claims += [(addr, addr + 4, m.name) for table in m.tables for addr, _ in table.refs] - self.assertEqual(len(claims), 96) + self.assertEqual(len(claims), 100) # VECTOR 0.3.0 adds its four MIDI generator detours for previous, current in zip(sorted(claims), sorted(claims)[1:]): self.assertLessEqual(previous[1], current[0], (previous, current)) self.assertEqual(sum(r.symbol == 'mr_pb_table' for r in bridge.symbol_refs), 5) diff --git a/sdk/machines/octatrack/module-adapters/vector_runtime.py b/sdk/machines/octatrack/module-adapters/vector_runtime.py index 054fb9d7c..4b5953ba4 100644 --- a/sdk/machines/octatrack/module-adapters/vector_runtime.py +++ b/sdk/machines/octatrack/module-adapters/vector_runtime.py @@ -4,7 +4,7 @@ import hashlib from pathlib import Path -CONTROL_SHA256 = 'c95c74baa5e5d79d1c3edf0148b2c4a84daf4e5d61c1bff5eb3934626fd0a9be' +CONTROL_SHA256 = '3e9cefa630c8425af9b2ea48cf4ce88bb9a48fa18bb1876cd1447dc12d0212b9' ARITHMETIC = ( ('\tsub.l #staging-268525901,%a1', '\tadd.l #268525901,%a1\n\tsub.l #staging,%a1'), ('\tlea saved-1187503478,%a1', '\tlea saved,%a1\n\tsub.l #1187503478,%a1'), diff --git a/sdk/octabam/modules/vector/control.s b/sdk/octabam/modules/vector/control.s index af4e6b77e..8980faa68 100644 --- a/sdk/octabam/modules/vector/control.s +++ b/sdk/octabam/modules/vector/control.s @@ -7385,8 +7385,11 @@ titles.2: .size first.3, 16 first.3: .base64 "CwsAAQAwAQwMAAAAAAAAAA==" - .local locked.4 - .comm locked.4,64,1 + .pushsection .data + .balign 1 +locked.4: + .zero 64 + .popsection .section .rodata.str1.1 .LC9: .string "C" @@ -7456,22 +7459,46 @@ handlers.8: .size mg_keys, 4 mg_keys: .ascii "3 12" - .local mg_opened - .comm mg_opened,4,2 - .local mg_cursor - .comm mg_cursor,4,2 - .local mg_shown - .comm mg_shown,4,2 - .local mg_second - .comm mg_second,4,2 - .local mg_mine - .comm mg_mine,4,2 - .local mg_saved - .comm mg_saved,48,2 - .local mg_active - .comm mg_active,4,2 - .local mg_seen - .comm mg_seen,4,2 + .pushsection .data + .balign 2 +mg_opened: + .zero 4 + .popsection + .pushsection .data + .balign 2 +mg_cursor: + .zero 4 + .popsection + .pushsection .data + .balign 2 +mg_shown: + .zero 4 + .popsection + .pushsection .data + .balign 2 +mg_second: + .zero 4 + .popsection + .pushsection .data + .balign 2 +mg_mine: + .zero 4 + .popsection + .pushsection .data + .balign 2 +mg_saved: + .zero 48 + .popsection + .pushsection .data + .balign 2 +mg_active: + .zero 4 + .popsection + .pushsection .data + .balign 2 +mg_seen: + .zero 4 + .popsection .type mg_arp_setup_slots, @object .size mg_arp_setup_slots, 6 mg_arp_setup_slots: @@ -7495,8 +7522,11 @@ vector_midi: .long vector_midi_knob .long vector_midi_yes .long 0 - .local midi_view - .comm midi_view,4,2 + .pushsection .data + .balign 2 +midi_view: + .zero 4 + .popsection .data .align 2 .type midi_page_built, @object diff --git a/sdk/octabam/modules/vector/media/core-tests.json b/sdk/octabam/modules/vector/media/core-tests.json index cc5c48311..fcaf622fc 100644 --- a/sdk/octabam/modules/vector/media/core-tests.json +++ b/sdk/octabam/modules/vector/media/core-tests.json @@ -37,7 +37,7 @@ "verify_native.py": "e329133cf080bdd47a4ab7a5e4658e1455a2629c88ed731555e430e6f16b0ec0" }, "limitations": "Synthetic host buffers; not hardware or native timing, audio or persistence qualification.", - "sourceSha256": "d7e4896f42468fff30308d7cded104ac0f9803fb3e7279cbab61f65d617c9312", + "sourceSha256": "50a4f243d3ed16872173a2a742a345916aec60e316cd477d86ef3727a2ed85ce", "partValidation": { "instanceMasks": 256, "sanitizers": "ASan/UBSan", diff --git a/sdk/octabam/modules/vector/octamod.module.json b/sdk/octabam/modules/vector/octamod.module.json index 3251e771e..743ff5138 100644 --- a/sdk/octabam/modules/vector/octamod.module.json +++ b/sdk/octabam/modules/vector/octamod.module.json @@ -174,7 +174,7 @@ "value": 10586112, "unit": "bytes", "method": "static", - "conditions": "Tested reported profile: repitch, vector, playmodes, mute-modes and recorder-loop-fix with stock FX2, original 1.40C. Shared arena 10,586,112 bytes includes 10,487,808 module arena plus 98,304 logger reserve, counted once. Linked runtime 90,780 bytes and packed staging fit within it. VECTOR allocated sections (0.3.0, the MIDI generator and on a card the base's generator registry): 22,314 text, 678 rodata, 3,764 data and 144 BSS bytes; no new heap. Complete flash append: 18,153 bytes measured for 0.2.4's profile, counted here as 28,143, that plus the 9,990 allocated bytes 0.3.0 adds (an upper bound; packing makes it smaller). On MIDI tracks VECTOR reuses stock storage only: the tracks' pattern records, 16 arp note bytes and the arp step mask per Part. Maximum observed native commit stack 1,048; Part validation 252; fixed added UI stack bound 1,216. Borrowed stock window, lock indexes and 8-track bank/SRAM capacities are retained. Hardware canaries are unmeasured.", + "conditions": "Tested reported profile: repitch, vector, playmodes, mute-modes and recorder-loop-fix with stock FX2, original 1.40C. Shared arena 10,586,112 bytes includes 10,487,808 module arena plus 98,304 logger reserve, counted once. Linked runtime 90,780 bytes and packed staging fit within it. VECTOR allocated sections (0.3.0, the MIDI generator and on a card the base's generator registry): 22,314 text, 678 rodata and 3,908 data bytes; no BSS (a card never zeroes it, so prepare.py keeps zero statics in .data) or new heap. Complete flash append: 18,153 bytes measured for 0.2.4's profile, counted here as 28,287, that plus the 10,134 allocated bytes 0.3.0 adds (an upper bound; packing makes it smaller). On MIDI tracks VECTOR reuses stock storage only: the tracks' pattern records, 16 arp note bytes and the arp step mask per Part. Maximum observed native commit stack 1,048; Part validation 252; fixed added UI stack bound 1,216. Borrowed stock window, lock indexes and 8-track bank/SRAM capacities are retained. Hardware canaries are unmeasured.", "source": "TESTING.md" }, "processing": { @@ -224,7 +224,7 @@ "evidenceRevision": "645d73da3872ce9111f3e3172114fb33a3660b9f", "qualification": { "moduleVersion": "0.3.0-experimental", - "sourceSha256": "d7e4896f42468fff30308d7cded104ac0f9803fb3e7279cbab61f65d617c9312", + "sourceSha256": "50a4f243d3ed16872173a2a742a345916aec60e316cd477d86ef3727a2ed85ce", "imageSha256": "a753ddf67b0fe64e3742b4c89ecf141071eb30757b170173215e92b1b4794d24", "cycles": [ { @@ -258,9 +258,9 @@ { "name": "Complete tested-profile flash append: bootstrap and packed runtime", "space": "cpu-flash", - "words": 28143, + "words": 28287, "wordBits": 8, - "bytes": 28143, + "bytes": 28287, "scope": "shared" }, { @@ -305,10 +305,10 @@ } ], "perInstanceBytes": 74656, - "sharedBytes": 10617731, + "sharedBytes": 10617875, "maxInstances": 8, - "totalBytes": 11214979, - "conditions": "Tested reported profile: repitch, vector, playmodes, mute-modes and recorder-loop-fix with stock FX2, original 1.40C. Shared arena 10,586,112 bytes includes 10,487,808 module arena plus 98,304 logger reserve, counted once. Linked runtime 90,780 bytes and packed staging fit within it. VECTOR allocated sections (0.3.0, the MIDI generator and on a card the base's generator registry): 22,314 text, 678 rodata, 3,764 data and 144 BSS bytes; no new heap. Complete flash append: 18,153 bytes measured for 0.2.4's profile, counted here as 28,143, that plus the 9,990 allocated bytes 0.3.0 adds (an upper bound; packing makes it smaller). On MIDI tracks VECTOR reuses stock storage only: the tracks' pattern records, 16 arp note bytes and the arp step mask per Part. Maximum observed native commit stack 1,048; Part validation 252; fixed added UI stack bound 1,216. Borrowed stock window, lock indexes and 8-track bank/SRAM capacities are retained. Hardware canaries are unmeasured.", + "totalBytes": 11215123, + "conditions": "Tested reported profile: repitch, vector, playmodes, mute-modes and recorder-loop-fix with stock FX2, original 1.40C. Shared arena 10,586,112 bytes includes 10,487,808 module arena plus 98,304 logger reserve, counted once. Linked runtime 90,780 bytes and packed staging fit within it. VECTOR allocated sections (0.3.0, the MIDI generator and on a card the base's generator registry): 22,314 text, 678 rodata and 3,908 data bytes; no BSS (a card never zeroes it, so prepare.py keeps zero statics in .data) or new heap. Complete flash append: 18,153 bytes measured for 0.2.4's profile, counted here as 28,287, that plus the 10,134 allocated bytes 0.3.0 adds (an upper bound; packing makes it smaller). On MIDI tracks VECTOR reuses stock storage only: the tracks' pattern records, 16 arp note bytes and the arp step mask per Part. Maximum observed native commit stack 1,048; Part validation 252; fixed added UI stack bound 1,216. Borrowed stock window, lock indexes and 8-track bank/SRAM capacities are retained. Hardware canaries are unmeasured.", "report": "evidence/software.json" }, "hardware": { diff --git a/sdk/octabam/modules/vector/prepare.py b/sdk/octabam/modules/vector/prepare.py index 8e9571f9a..80f22decb 100644 --- a/sdk/octabam/modules/vector/prepare.py +++ b/sdk/octabam/modules/vector/prepare.py @@ -4,6 +4,7 @@ """ from pathlib import Path import argparse +import re import subprocess import tempfile @@ -34,7 +35,12 @@ def main(): assembly=work/'vector.s' include=[x for d in (here,octatrack/'elekloader',octatrack/'include') for x in ('-I',str(d))] subprocess.run(['m68k-elf-gcc',*FLAGS,*include,'-S',str(unity),'-o',str(assembly)],check=True) - text=(assembly.read_text()+'\n#APP\n'+(here/'hooks.s').read_text()+'\n'+ + # A card unit's .bss is never loaded or zeroed (tools/remix/platform_build.py), and -fno-zero-initialized-in-bss + # leaves statics without an initialiser in .comm: put them in .data as zeros, and keep the unit free of .bss. + compiled=re.sub(r'\t\.local\t(\S+)\n\t\.comm\t\1,(\d+),(\d+)\n', + r'\t.pushsection .data\n\t.balign \3\n\1:\n\t.zero \2\n\t.popsection\n',assembly.read_text()) + if re.search(r'\.(?:l?comm|bss)\b',compiled): raise SystemExit('VECTOR must not have .bss: a card never zeroes it.') + text=(compiled+'\n#APP\n'+(here/'hooks.s').read_text()+'\n'+ (octatrack/'elekloader/midi_generators.s').read_text()+'\n.text\n.balign 2\n') # The shared native/browser linkers restore these from verified local OS. for name,address,length in REPLAYS: From 3f4b3d56285d1d4111062fc35a5bed2a9203b923 Mon Sep 17 00:00:00 2001 From: repeat98 Date: Sun, 8 Nov 2026 13:37:47 +0100 Subject: [PATCH 27/33] VECTOR 0.3.0: TESTING notes the card .bss fix Co-Authored-By: Claude Opus 5.5 --- sdk/octabam/modules/vector/TESTING.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/sdk/octabam/modules/vector/TESTING.md b/sdk/octabam/modules/vector/TESTING.md index 60e8e96a0..95a290e3a 100644 --- a/sdk/octabam/modules/vector/TESTING.md +++ b/sdk/octabam/modules/vector/TESTING.md @@ -120,6 +120,8 @@ A temporary probe (not shipped) split the 1.3 ms build by stage: copying the rec The hoisted scale lookup in `engine.c` gives the same phrases as 0.2.4 over 18,144,000 parameter sets (a throwaway host comparison of both engines), and `test_engine.c` passes. `sdk/tests/test_machine_events.py` checks the base's registry on the host (`test_midi_generators.c`), the package glue and the port's sources. +Card builds and .bss, 8 November 2026 (found by `machine_composition_tests`, not on a unit): the base's generator registry, which a card build links into VECTOR, has statics without an initialiser, and the compiler put them (144 bytes) in .bss. A card unit's .bss is never loaded or zeroed (`tools/remix/platform_build.py`), so on a card `mg_active` and the list's cursor would have started as whatever the boot left. `prepare.py` now puts them in .data as zeros and stops if any .bss is left; the code is unchanged (22,314 text bytes), .data grows by 144. Over USB the package was not affected (the loader zeroes a package's .bss, `sdk/runtime/loader/loader.c`), so the October unit runs stand. + Not tested: a card build on the unit (layout A included); a physical power cycle with a VECTOR MIDI track (RAM boots kept it: the battery-backed bank restore and the Part validator pass); a project save and reload; scenes and LFOs on a VECTOR MIDI track; MKI. Two RAM boots of development twins out of about fifteen did not come back on USB (one stall record: frames stopped 41 s after a boot with no module installed); a power cycle recovered both, and the next boot of the same image worked. It matches the RAM-boot trap of 19 October 2026 and was not reproduced. ## Owner exception and remaining limits From 1e2e8f50c693bd736a82b26f0f825e3b0ac6a67e Mon Sep 17 00:00:00 2001 From: repeat98 Date: Sun, 8 Nov 2026 13:44:51 +0100 Subject: [PATCH 28/33] VECTOR 0.3.0: rebuilt for the card .bss fix (packages, recipes, proofs unchanged, native comparison 186/0, USB package b66a440e) Co-Authored-By: Claude Opus 5.5 --- .../vector/0.3.0-experimental.mwrm | Bin 29486 -> 29630 bytes .../module-adapters/machine-recipes.json | 16 +- .../module-adapters/standalone-recipes.json | 16 +- sdk/native-comparisons/vector.json | 154 +++++++++--------- src/catalog/module-documents.json | 14 +- .../assets/analog-bd-composition-proofs.json | 2 +- 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 | 28 ++-- .../assets/octatrack-module-packages.json | 4 +- src/engine/assets/platform-writes.json | 2 +- src/engine/assets/requested-packages.json | 10 +- 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 +- 19 files changed, 132 insertions(+), 132 deletions(-) diff --git a/public/octatrack-modules/vector/0.3.0-experimental.mwrm b/public/octatrack-modules/vector/0.3.0-experimental.mwrm index 101694d34dacbad1938e572cd35ae8dc1c8ec2a9..2973e061bbec31255a98f96b6f22094fb565a76e 100644 GIT binary patch delta 2512 zcmaJ@eN0nV6u<9*Qjx)fbquj;ZISo^6e}{o>iRW?1quTK_^5TeK2Y42nf%VZ-h1vj zzw_}Qs`B_gkIHiqRrUI+8(qTF#YQmsP?mwgEFV$-~;MZcBc!USGTBm zLyJ4xWtqr8Ty#vF-}T4m(uXk;jkVtESgoh}9!+D6tXPF+*Viz#L|>=nf5U=i1RjMW(W^&)`s*at~$0siR07j;J7)x z7>>u%>z0pD^MO1QLK+>il6K&SXa^5_>t8dm8%MZIi1&vsiCzuMOwWoJMV%o#vND6J z4pGm8R0i;a%oSifBFhVo{8kTJC z_8TzBceZMo0CsO}fW2bd`WUBDooNjHbv)S=oalgb@_uaHc9iAacyQa#WV!JA2+K?O zm@$cvzHPJCz^kms*sg30&`8kva z%{(cl#pk7C)->SgO}AbMRXCMi=s$?&e$HVMM(y?%mhZ-qwgj@I+3pwd_4dwhTMGU} z9MBrSO6W9-D8wPtqh)C%_L<9MXgHOLb;REFJ^`^B8;0@LONY-90im1MrSVwsiIfUFGrppG=GtD-SfS9A?v)GZ4oD&?Qv&e%xax+xCU+6Yt-BKuCh_YF> zR_51!MPgDRYXwk*?O6Wz0$s)Ca)gf&DWGbmemUhk~D}@@H9(4B~F2E_*u&}A0)C-yeFSO z(~D7?_T`(#BBCu14yWY;b<$6`2=~L~w(AVQMkCMIfuM|@0Din;H z&#-Q3BC;O(kMJ$!O<&UT;fHqZvO$rv`LZMT3=1e!9`J)S`T$NTNM_owqhLkmO_FF~ z;F=HQ9TBl@w!_d()iy~$A${w0Xf26C=pw&m!X53mAp5lN^C0x#s|D*|zzr3w0m&9> zSKTDV3OPm^MF^NZI`TM;@11kMO1s zs(KL@3IhuxH_2A0MQy)qYq}O@t1CQq^Hx~H5HKDFOo46;AQli0NCKn+(g0O}TEG!N8{jLz9RPHmGY+5v z=mF_~EI=Nh5KsbuvEzIXunTY;&&JFh3s!_Qbe~^^(uO(+ zDpXu*O%zpu=0<4BvWkSHYSSblb=nS8RWwTz)MZ<`MNx~UsGBO5Mkr-eikby*&$$nh ztgVLhoqK)nx#xW6=ibN1{}#^73WnO|`dXqR@E4s2F?`nG7erM~Mugw3sfj3hvyBvv zPY}`)RtTB#+<{q}<#|%brVZN%h+*pNA|b5{bfE@!h}7?ev32XyAj5ON!nH1o3uG^o zG6oA;Z;kc9kBIe;pmftZ1@o{Ox7*lk2JKUOH|zWps6aE%;#rqM1e50T$Ntby^XMDX z+()}1r~WlRQ8II<>IdF+j}OpWp98O!b}1kEwLC{}I|Xh>y|75uS){+iYB*u|lJ9oW z+jgP$4#_6r4vqc_FbfO>}K!Y1mvr$d7g-_jWtA-Q+^Hq!(KkSlPzIFeLxB@wgyH=UKPe zE=CsEN%M#)IzKW{-S3?*Cx#qj{#5@r@5Em*#xWYzo{T*1;QGUsgi%v$BgRlViJ} zX9JE+LLPe?=6P(!u?1GrcPJn`cCwN5q z5S@F_CcPe8;nFV$-A;7-cX-#t%Z92Fu zmlc%t!1AH823WpP*0a8moA(7ggjj4u#&&24@D2_odw=N>w>KIpAl|>8kMpgN#`J`8 zTCusR^?S;>YJhu|x%9DH6&t{KR%H?#O;y%qtTM{mwH;P`yLRTdv2B7A?u^&I)=shm zyT$|ubGUvF@`{UrY~O7ad~9HMAIx=CTa8M>T;Wdt=Uj;=HGdA$sm7RGbwE^I>}u6D z98Nv?wWvDTLAM=;3+_V&YAj|bkx~~i>)1m|R59~0!8$#A4XPW9s5*cB5as~R%zKXH zt8h1$XDy|vi$@jYrn<0ps+%2`ibNPLOO^R*46M#)y+TOS$>yp1*4aj{8Fk!V2M#fB zSDxzBjzf9K(tjIx@m1$R*$EtzW%8+Xosvl20S7U5(>I7=bUi&Hs@+WQFT}y=zge%^ zgOi_*)O||~Kx^(jq*Jbtw1`Fz%c7Q}ePJ9Q4JA?3gZ4iBj1tk}XYjmDK0P>K3m=fUtUW;c7OMIytXjYZkxtem58lx8^ zW?KuzOUpf^S!(y-yujIns_ zBSMso)LJa63{Tegfm^1m)K!g<#v`~VxSuD_&Sq*YjgV#Yg9LeYqj0oRTSccpH}iz| zg9%7vLb zzytS>x+g%2A?v16ELPeS9C{vnni@^)N~j@c#qWMm?$>-X z=QAm_l9HvyKcL4lnE8>5Fp74U=u_OTzhBA37^n|+j`5iuG;gf*Aa4dLt+3@hz2B1J z@R0R$I8zDL+Bk`)jqFJM7GQI+es^E{JuB5VazCe3dN6X2W`$d{UeRnVcEKC@zxjdN zx0)ZQV-tQtsc+T(;%wWSW7QvV{|dSLFP;~yLOwg(@QY`l4exgID*156^Vt5=JOab? zFMVS@)t4?6hlaq*Ud+$kX`Y{U$PZcW;2zuAa>E9}m^3vm8y})@ap+&zxRNK*cyd}1 z1yLDgm!s>~z<)*2rsQ1oQbu0@bV7hApdauXz#!lVU=(m1fU(a4u*-~q&44OE2Vem3 zI^Y=KEx<{@M*#T5DUdnk8ej%+9b9Gt^Z>9CEd+p_f@m>J!hpSi1mG}W9B?ri*w-ok E0DFZ##sB~S diff --git a/sdk/machines/octatrack/module-adapters/machine-recipes.json b/sdk/machines/octatrack/module-adapters/machine-recipes.json index 4043942a2..abc218602 100644 --- a/sdk/machines/octatrack/module-adapters/machine-recipes.json +++ b/sdk/machines/octatrack/module-adapters/machine-recipes.json @@ -6,7 +6,7 @@ "schema": 1, "imageSha256": "642d27796f5ee0100eed8477266a7aff77d8614b40da50b554218170a19d49c5", "sources": { - "sdk/machines/octatrack/module-adapters/machine-ports.json": "0f5e610128904a6f5ca7db664b8447e6c363e9b713af55123b559a357fc93aee", + "sdk/machines/octatrack/module-adapters/machine-ports.json": "de7281e4351f57ee6700477d123de9d6bf435cd239b527fd9ab699444d36a836", "sdk/machines/octatrack/module-adapters/machine_ports.py": "bbb91f0c54c27043b54a9156cad01053531f2ef78fb13cc73e2b45f7fc7e8d6f", "sdk/octabam/modules/poly8/manifest.py": "f8759dbcbb246b247c195e61f0c0464fd0cdc0dd40b68dd8f74c03b46c584afc", "sdk/octabam/modules/poly8/polyphony.s": "c86a3a783c46ecdbb3b44341098f0c094c65b9a8d11716835c2d28c2d2d6ecee", @@ -57,7 +57,7 @@ "schema": 1, "imageSha256": "13047ca2595493c2389ad2265f39f8c04287f5c9021991197a5fded08faf75d0", "sources": { - "sdk/machines/octatrack/module-adapters/machine-ports.json": "0f5e610128904a6f5ca7db664b8447e6c363e9b713af55123b559a357fc93aee", + "sdk/machines/octatrack/module-adapters/machine-ports.json": "de7281e4351f57ee6700477d123de9d6bf435cd239b527fd9ab699444d36a836", "sdk/machines/octatrack/module-adapters/machine_ports.py": "bbb91f0c54c27043b54a9156cad01053531f2ef78fb13cc73e2b45f7fc7e8d6f", "sdk/machines/octatrack/module-adapters/quantizer_runtime.py": "61425221199f37adf4be1e8b9c5bb1346067c8f56540a9a15047b400ed84a1aa", "sdk/octabam/modules/quantizer/manifest.py": "e0841437a471b000b448ce8417c8fd25cba1cf155aec488d08d2888f4c249394", @@ -121,7 +121,7 @@ "imageSha256": "11afe489011aa243c5bc579a824635f7d1334b17f0a21d554d897ceec3d3fb1a", "sources": { "sdk/machines/octatrack/module-adapters/fm_runtime.py": "ecf39c395bd8231d1dda340e1c6bc26e8473ba548cfa422f9a4ae4ff2bd6807e", - "sdk/machines/octatrack/module-adapters/machine-ports.json": "0f5e610128904a6f5ca7db664b8447e6c363e9b713af55123b559a357fc93aee", + "sdk/machines/octatrack/module-adapters/machine-ports.json": "de7281e4351f57ee6700477d123de9d6bf435cd239b527fd9ab699444d36a836", "sdk/machines/octatrack/module-adapters/machine_ports.py": "bbb91f0c54c27043b54a9156cad01053531f2ef78fb13cc73e2b45f7fc7e8d6f", "sdk/octabam/modules/synth/machine.s": "de9d849bf0b6e5d5ad747df32ae5806e7f9516674a14ac74b1c15d73d30d280a", "sdk/octabam/modules/synth/manifest.py": "7854330aca001d2841de2fb384f0ca8adb7497db49dacc56da2815c1f444c0e6", @@ -408,12 +408,12 @@ }, "vector": { "schema": 1, - "imageSha256": "f9c9af6ea8b5a8a714427d5f9313b2ca7b096c6403dea29ae868f156b826e2ae", + "imageSha256": "a4ce6437962f4fb327c80d8a8580457145fd60d6d34f7de276fd4ce806e8ab2e", "sources": { - "sdk/machines/octatrack/module-adapters/machine-ports.json": "0f5e610128904a6f5ca7db664b8447e6c363e9b713af55123b559a357fc93aee", + "sdk/machines/octatrack/module-adapters/machine-ports.json": "de7281e4351f57ee6700477d123de9d6bf435cd239b527fd9ab699444d36a836", "sdk/machines/octatrack/module-adapters/machine_ports.py": "bbb91f0c54c27043b54a9156cad01053531f2ef78fb13cc73e2b45f7fc7e8d6f", - "sdk/machines/octatrack/module-adapters/vector_runtime.py": "536d1253991dfa246ca1f40543bc9dd19ab32bff6d074037fc6469615bf5cb40", - "sdk/octabam/modules/vector/control.s": "c95c74baa5e5d79d1c3edf0148b2c4a84daf4e5d61c1bff5eb3934626fd0a9be", + "sdk/machines/octatrack/module-adapters/vector_runtime.py": "6803c8d2d8f2eff007bb0dd9c2f47cab1a565429fc054cb7e127fedea6c5179e", + "sdk/octabam/modules/vector/control.s": "3e9cefa630c8425af9b2ea48cf4ce88bb9a48fa18bb1876cd1447dc12d0212b9", "sdk/octabam/modules/vector/manifest.py": "b9dec167f8bd4f1b691069cc89834f6c2a6717b874eb28629ef5c8c026d3d976", "sdk/runtime/loader/build.py": "5131901224dcd037c07f0233cadabd67eec2a952878bef5a92274dd3d6236c7d" }, @@ -511,7 +511,7 @@ "sources": { "sdk/machines/octatrack/module-adapters/analog_bd_runtime.py": "b9c0e0f96632a0d0ab5283387edaae1b604e4e82e27e26b3fdc1666867d31daf", "sdk/machines/octatrack/module-adapters/analog_bd_write_lease.py": "3e6a3766f32176e9be69627ef2b71272970f2d02a2088e77673946b640d365c7", - "sdk/machines/octatrack/module-adapters/machine-ports.json": "0f5e610128904a6f5ca7db664b8447e6c363e9b713af55123b559a357fc93aee", + "sdk/machines/octatrack/module-adapters/machine-ports.json": "de7281e4351f57ee6700477d123de9d6bf435cd239b527fd9ab699444d36a836", "sdk/machines/octatrack/module-adapters/machine_ports.py": "bbb91f0c54c27043b54a9156cad01053531f2ef78fb13cc73e2b45f7fc7e8d6f", "sdk/machines/octatrack/module-adapters/stock_hook_write_lease.h": "ab14679a5faae84ef47d1ca37e46b3171da45252d12310e0b4458228be8334be", "sdk/octabam/modules/analog-bassdrum/control.s": "463dacf528e4996c7f21e97533391583329a2e3aabda95c87b7cd020dee7adb6", diff --git a/sdk/machines/octatrack/module-adapters/standalone-recipes.json b/sdk/machines/octatrack/module-adapters/standalone-recipes.json index b3d40eed1..b050c33bb 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": "dcd8397b8cecf6fab61debd9aa2f86f612da0ca6ccf363c79d56033bc170b993", "src/catalog/modules.ts": "e268c6d42e4d5093ab943aed5cf2263a72e6d5e1a7ac0e72efc8a7ec6c62b89b", - "src/engine/assets/dsp-packages.json": "ed3c404f0ce44d3f365372be141693aa02f3a5a8b8719bf8d0dfed7a3cb0854b", - "src/engine/assets/descriptor-recipes.json": "74e5a09804aa0db962eba734bc6027001d4665784abdf49719a02faca4587ac4", - "src/engine/assets/menu-recipes.json": "6e0907831de45c1e807308a88067178168893b1e5c62bbe39e760e3b1f01eb5e", - "src/engine/assets/rom-packages.json": "0348ff37184ce84851d42ea6c87535e1a997c6774498f4e93dfb497c0c8dbb85", + "src/engine/assets/dsp-packages.json": "fbb081f22daac5ebe9abcaf9baa554223914d3a6d88fdd7acbe7726a20ac0461", + "src/engine/assets/descriptor-recipes.json": "a2f3e102c03e408c159feeab544843859053fb851ac7793bede109d689b10234", + "src/engine/assets/menu-recipes.json": "7d7fce2e704137ee72538a18cd000c97ce3a754b8c6a2da55730f533609f87a3", + "src/engine/assets/rom-packages.json": "fc70e6199425a2509e5639d30cdadb31c83930afc58a06e003eeedabbd35b818", "upstream/elekloader/link.py": "5d31157ccbe62807ff9f05fd47e1e55b54be0475ab53565e6607a56566603ba8", "upstream/elekloader/dsp.py": "9486d64eecee023670b716f6ae854996da02ee7c1a0efd5361cd963c756dbc69", "upstream/elekloader/patch.py": "77c0a74bf4b0ff8c5525d4c4b1bc42af765314a4601c0510577817a7487d8666", @@ -405,10 +405,10 @@ "src/engine/coldfire-elf.ts": "319ca0d835d1b0c602c8f4b06990016d0ebfe246cedbfc596cea3cc7adfe3cd2", "src/engine/module-build.ts": "dcd8397b8cecf6fab61debd9aa2f86f612da0ca6ccf363c79d56033bc170b993", "src/catalog/modules.ts": "e268c6d42e4d5093ab943aed5cf2263a72e6d5e1a7ac0e72efc8a7ec6c62b89b", - "src/engine/assets/dsp-packages.json": "ed3c404f0ce44d3f365372be141693aa02f3a5a8b8719bf8d0dfed7a3cb0854b", - "src/engine/assets/descriptor-recipes.json": "74e5a09804aa0db962eba734bc6027001d4665784abdf49719a02faca4587ac4", - "src/engine/assets/menu-recipes.json": "6e0907831de45c1e807308a88067178168893b1e5c62bbe39e760e3b1f01eb5e", - "src/engine/assets/rom-packages.json": "0348ff37184ce84851d42ea6c87535e1a997c6774498f4e93dfb497c0c8dbb85", + "src/engine/assets/dsp-packages.json": "fbb081f22daac5ebe9abcaf9baa554223914d3a6d88fdd7acbe7726a20ac0461", + "src/engine/assets/descriptor-recipes.json": "a2f3e102c03e408c159feeab544843859053fb851ac7793bede109d689b10234", + "src/engine/assets/menu-recipes.json": "7d7fce2e704137ee72538a18cd000c97ce3a754b8c6a2da55730f533609f87a3", + "src/engine/assets/rom-packages.json": "fc70e6199425a2509e5639d30cdadb31c83930afc58a06e003eeedabbd35b818", "upstream/elekloader/link.py": "5d31157ccbe62807ff9f05fd47e1e55b54be0475ab53565e6607a56566603ba8", "upstream/elekloader/dsp.py": "9486d64eecee023670b716f6ae854996da02ee7c1a0efd5361cd963c756dbc69", "upstream/elekloader/patch.py": "77c0a74bf4b0ff8c5525d4c4b1bc42af765314a4601c0510577817a7487d8666", diff --git a/sdk/native-comparisons/vector.json b/sdk/native-comparisons/vector.json index f5a9deed0..7df11cfbc 100644 --- a/sdk/native-comparisons/vector.json +++ b/sdk/native-comparisons/vector.json @@ -2,7 +2,7 @@ "schemaVersion": 1, "moduleId": "vector", "moduleVersion": "0.3.0-experimental", - "moduleSourceSha256": "d7e4896f42468fff30308d7cded104ac0f9803fb3e7279cbab61f65d617c9312", + "moduleSourceSha256": "50a4f243d3ed16872173a2a742a345916aec60e316cd477d86ef3727a2ed85ce", "revision": "b8deefc88b2c3e5f3c6158e364eb741df1924e1d", "originalOsSha256": "164f31224bf61181e3f50e7dec40df9afcae5b16dbf6e4c0d0cc5e986af0a84e", "pool": [ @@ -87,7 +87,7 @@ ] }, "native": { - "bytes": 1126984, + "bytes": 1126982, "osSha256": "df103a96522184c807f6df8ff0f78f9992a4d55d1a45c9f2b95a2fd1558a4234", "maskedOsSha256": "ea57ac476a858272f1692e4ec893c1a2ba678c55aeb770645f3e076ba5b9d509" }, @@ -114,7 +114,7 @@ "fx2": [] }, "native": { - "bytes": 1126984, + "bytes": 1126982, "osSha256": "3ce69d42fe169b12ed73f548bcfe41ff9c10fc6ea17a03f279fcaac72a67d36a", "maskedOsSha256": "5c289c8bfa92b1d922a6b19ba8cfe12fad4e91a8bc86e161761132a8d7aa5b93" }, @@ -157,7 +157,7 @@ ] }, "native": { - "bytes": 1126984, + "bytes": 1126982, "osSha256": "1bc9dffa0ba563e9da5603ed7c1b64363cf9e6374dca0131f66bd5398026be59", "maskedOsSha256": "ed566c13a19cf2e6cd94e3cc93767d1a362a710a398ee85d2d34d06cf91adb53" }, @@ -187,7 +187,7 @@ ] }, "native": { - "bytes": 1126984, + "bytes": 1126982, "osSha256": "6354cefc316b5ecd77e1e8122fcda6bc9f09a11569505da15cf5fe1c67fd4c54", "maskedOsSha256": "6b1b83a0f7066228a973a3b7e36106665b96de668be07969e0bf5ed63612700c" }, @@ -230,7 +230,7 @@ ] }, "native": { - "bytes": 1229220, + "bytes": 1229225, "osSha256": "b8d8f81bde20adcbc86b856b13e6a9829de36cbce3d91ba3a4016698641907e3", "maskedOsSha256": "00472ab2105e1015615230d0b591cb5a03a6b0599f8ca8e5ee560196554123b3" }, @@ -260,7 +260,7 @@ ] }, "native": { - "bytes": 1229220, + "bytes": 1229225, "osSha256": "5edda5057109d8eeb3c7b9e6b09cf51e2c7ed5bb574d3abf71f9c3736e57925b", "maskedOsSha256": "a89a559565a42fe31c5ab1cd70e1684431adbf59594115b0f7c34d40c18dc5cf" }, @@ -304,7 +304,7 @@ ] }, "native": { - "bytes": 1129093, + "bytes": 1129094, "osSha256": "9e88b73fd944f46db0ebd1879c5772b2ed49d6360a1e934a2405458bc8e9beb2", "maskedOsSha256": "86b1a0d9fc254a9d668537fea34ac63cf3eb6abe45d9d81db8aa1a508a7ff799" }, @@ -335,7 +335,7 @@ ] }, "native": { - "bytes": 1129093, + "bytes": 1129094, "osSha256": "91706b209fc299c15225dc61241662bee53a0d1b178df626f60a4d9e9e550c5a", "maskedOsSha256": "f1f4a8d2bea0e88b20fcef1c6a450fd8c60d8d2298f6473eeb6ae79949b7a681" }, @@ -378,7 +378,7 @@ ] }, "native": { - "bytes": 1126984, + "bytes": 1126982, "osSha256": "af5d3797d217e342efad274db0c7d2fce4cd7f7ed73b8acbbf6f494aa37eb3af", "maskedOsSha256": "4005d63b2191e9635ed7aebe94c461284bebec28068bb2c3285ccc7007b30d2e" }, @@ -406,7 +406,7 @@ "fx2": [] }, "native": { - "bytes": 1126984, + "bytes": 1126982, "osSha256": "3899af2827c40b846536feb13d9c2387655e783cc9dd552668e609a60f5fd81b", "maskedOsSha256": "cbda215b17b6a0fd01225edc89ffdd1358f47bd8bcf220dcb4ce62d233e74ae3" }, @@ -450,7 +450,7 @@ ] }, "native": { - "bytes": 1126984, + "bytes": 1126982, "osSha256": "60f394ba68af812c23f594b8a5d7ae3fca6999e61d7e96037ac1f4c5b1c67732", "maskedOsSha256": "e2831629bb2790f7b3d53bb7d93abfae6f69c8923361dbef8634fb7cb36a4b52" }, @@ -481,7 +481,7 @@ ] }, "native": { - "bytes": 1126984, + "bytes": 1126982, "osSha256": "b14f3ba0a489ff61c7ec67a67fba68416f4d25858ad6a47b3286717c6d87e146", "maskedOsSha256": "d9dd59d50facd57dbefa470c0ca92acb9cb055027359055d4d63b80f52f03dce" }, @@ -524,7 +524,7 @@ ] }, "native": { - "bytes": 1126984, + "bytes": 1126982, "osSha256": "cb0b6f849eb15d3b745d182e82f267e613ab20beea5cbb0519f961341f14ae1b", "maskedOsSha256": "cb1a5e4038f92179da9f4cd4ef00fe9a8a43631b932619affe39f6b162db9474" }, @@ -554,7 +554,7 @@ ] }, "native": { - "bytes": 1126984, + "bytes": 1126982, "osSha256": "05b2efa38f6537f5b437f08568217292d89b5e1f198c92dfc929ed376d2a1dc4", "maskedOsSha256": "1e6e1ea4299c34401f7a9595739b39c55c0865ceef967f2d04b84c7a274c4556" }, @@ -596,7 +596,7 @@ ] }, "native": { - "bytes": 1126984, + "bytes": 1126982, "osSha256": "1a1015bcc409d5d2c3fdc58235a440db0fa3cac3da0b2826cda3ac9a38c3b88c", "maskedOsSha256": "da4434f752e3d6e2e1133e364d0041355804209e57063d43c18973c5894965de" }, @@ -626,7 +626,7 @@ ] }, "native": { - "bytes": 1126984, + "bytes": 1126982, "osSha256": "2c77bd6c77528ebfa0c6d0487dadcc6e7c423d590169a4338b72becb33c6a8b4", "maskedOsSha256": "b8b0059f294e4cbcc6a8cb432c696c8c6e72720999726412933a9ff3cae86517" }, @@ -668,7 +668,7 @@ ] }, "native": { - "bytes": 1127012, + "bytes": 1126998, "osSha256": "ac5f95c2c1cd5c3e3a9b561adea4b19b87c563978436b1eb3fbb97e0c9e28c4d", "maskedOsSha256": "5c285126e0defd5a47ffa5a6e705b6f9b5e1d4bd2815e1a0319803d75a2fe42b" }, @@ -698,7 +698,7 @@ ] }, "native": { - "bytes": 1127012, + "bytes": 1126998, "osSha256": "4942ab1dbe1798ed63248a4f4dbf2193fd5e99df43374965146141eace1f2125", "maskedOsSha256": "bfb2bf80282fbb1f80f01b27089beb4f8c8c7a5b11ccfe7e5613737f66ecd06a" }, @@ -740,7 +740,7 @@ ] }, "native": { - "bytes": 1126984, + "bytes": 1126982, "osSha256": "e7d399c53b3d55ae84b0c055c80b6277022676dc36004c639b7449606920ae53", "maskedOsSha256": "618375830639c2ffa926cc9a282dae96b2f000110d2b49b7b6d08f72dcded710" }, @@ -770,7 +770,7 @@ ] }, "native": { - "bytes": 1126984, + "bytes": 1126982, "osSha256": "aed22a05c7641fc54fed3920d54efc7ccde5970ce29f21ad697138cc90598eeb", "maskedOsSha256": "b8e383fc88b9b22c1b40e1fba385aa66d430a6e5fd4f9601c960ece5b77ca3da" }, @@ -814,7 +814,7 @@ ] }, "native": { - "bytes": 1126984, + "bytes": 1126982, "osSha256": "454274be4c6d5973f2305857704d13ca2bee6d72c4e4351f875fc7433e207b5d", "maskedOsSha256": "3156e69ef02108f2aa859737c3d25d0bd12c2c8e360b0562833ffdbd09881836" }, @@ -845,7 +845,7 @@ ] }, "native": { - "bytes": 1126984, + "bytes": 1126982, "osSha256": "c77baf76c69244fe74113dd883f85843fefc645358a61079ac7b68f8cacb19ea", "maskedOsSha256": "1037afe245afe88a90fa2110c6143d3411ca1f96f49dc73e9c85eedf76a664aa" }, @@ -954,7 +954,7 @@ ] }, "native": { - "bytes": 1129731, + "bytes": 1129720, "osSha256": "968e6b67743c5c0820bd6aeaa6d33e70a4f4f05194179260b4b2802df4117be9", "maskedOsSha256": "b797c1013d52417263f3aab918c71f92e7593c072be406d9e3dc5aaedd279cf1" }, @@ -982,7 +982,7 @@ "fx2": [] }, "native": { - "bytes": 1129731, + "bytes": 1129720, "osSha256": "ddb721a348698cad4955830c97765f88dbab4494fcef8d56fe11def2fd2895a2", "maskedOsSha256": "0d1a9f940deaee78215469219738aa2ff80a67d0f4f427c80681dac37d9cf7b8" }, @@ -1025,7 +1025,7 @@ ] }, "native": { - "bytes": 1130290, + "bytes": 1130271, "osSha256": "6df867ebf98339233634b46974fd88e1aeb246f34c6308b7541dc06ea094bfb4", "maskedOsSha256": "25e99d06a18a569c1872fb104c26135502c35372d3d517e063591c84e302f331" }, @@ -1053,7 +1053,7 @@ "fx2": [] }, "native": { - "bytes": 1130290, + "bytes": 1130271, "osSha256": "c341835d8ab2e0c7932ef62d2c3cb5212dc30c6f25024e3bc25b8d04b763fe6d", "maskedOsSha256": "2b5dc65cb128bce7d4c9445df3063ee92812b55ac2b15bfe0d3e6018e1ad552b" }, @@ -1163,7 +1163,7 @@ ] }, "native": { - "bytes": 1126984, + "bytes": 1126982, "osSha256": "80a29d1e9f2bd711669186c4665d3cf18a3cbb393d485db3453d03af8c58a019", "maskedOsSha256": "f4ae5b1adf730d53243c254bb7c8f405e373a08f818f52bdbec4c3ee18f6c8b1" }, @@ -1191,7 +1191,7 @@ "fx2": [] }, "native": { - "bytes": 1126984, + "bytes": 1126982, "osSha256": "09e187f34b50faaf57d436442dd872120be5dc1a7efc3cb2a962a6a6abdac940", "maskedOsSha256": "294bc8a0b479f1c05f767cb0bbc97b5cb1354fdfaaff2b7e8194f9ba39e304b2" }, @@ -1234,7 +1234,7 @@ ] }, "native": { - "bytes": 1126984, + "bytes": 1126982, "osSha256": "e6366e318e40f2dff8f96b676973b965e1c47a770134467ffa1544d01bfeddf8", "maskedOsSha256": "5c3a4f2cb967d7c60a893781b39c1cf45defa3abfc8f2053d3a07ff32872d7d3" }, @@ -1262,7 +1262,7 @@ "fx2": [] }, "native": { - "bytes": 1126984, + "bytes": 1126982, "osSha256": "6b3178216fa81baef04657cbef48f5f201131d91e71c57ef03109d578a3cda98", "maskedOsSha256": "687180b9f3a66d6c98cc225f13da061e8b4e3072c41a91463746f3d3bf4a3c0f" }, @@ -1304,7 +1304,7 @@ ] }, "native": { - "bytes": 1126984, + "bytes": 1126982, "osSha256": "f1977ea2332b74185c647af8a20d4dbf9abb77385a2fe2a5d1196dd4aa3f9dda", "maskedOsSha256": "035539346f5b9e635a0161fffcc6417b80c71dbdc3322665bed1caa5720673d6" }, @@ -1334,7 +1334,7 @@ ] }, "native": { - "bytes": 1126984, + "bytes": 1126982, "osSha256": "59e35854082e59d469d63ccf6e20bb7420314475d1ff610b037089cf886675f3", "maskedOsSha256": "1e913af7f643e8347887f498622e583c22b21c19cc57062c824df3fbc9ce19e3" }, @@ -1377,7 +1377,7 @@ ] }, "native": { - "bytes": 1132757, + "bytes": 1132753, "osSha256": "21f683241505f2bd25a097de51a7792aee86f158a1b911333bbc82aa5a73aef0", "maskedOsSha256": "1533551fe60ec05f8c25a115e71c018b603dd34e82d644827e20186b5046c818" }, @@ -1405,7 +1405,7 @@ "fx2": [] }, "native": { - "bytes": 1132757, + "bytes": 1132753, "osSha256": "659149ab54b9454d1f4aa25169f029bebe9a9184b782cf77c66cf40457be5a91", "maskedOsSha256": "a02de5d385e6119d291d2d2e5214c9a8a8cdb5841232588fec0d7a80328fa5f8" }, @@ -1448,7 +1448,7 @@ ] }, "native": { - "bytes": 1126984, + "bytes": 1126982, "osSha256": "26a2764fea81060f257e2f9cc7c6b5a9b28af18bec3570155a87204088bd5989", "maskedOsSha256": "02e18f88b132ee9ffb331e832e4aa6a8a2f69f802ae88600e2b376770a5e3748" }, @@ -1476,7 +1476,7 @@ "fx2": [] }, "native": { - "bytes": 1126984, + "bytes": 1126982, "osSha256": "6adb9040386c83247986b473920fb443b61993e64008dd07a074ffd49245ee0d", "maskedOsSha256": "f30ab3822971a4ca288cf2d71cd754b4ea8b9180095207dac046ae67a527e8a5" }, @@ -1519,7 +1519,7 @@ ] }, "native": { - "bytes": 1126984, + "bytes": 1126982, "osSha256": "07b71c6660bb3c08d02018cfedb061537520eb8da04e58323b7f077b5d7217a9", "maskedOsSha256": "9e1795ff680d4d4d854a0f2803e8ca0577db3952eb1dc8b61e80586d47e4fd8c", "platformArena": true @@ -1548,7 +1548,7 @@ "fx2": [] }, "native": { - "bytes": 1126984, + "bytes": 1126982, "osSha256": "8c2ef43a413fa19f52a10a63e3f2fab551829a32a24ce58e935b524c3e93f733", "maskedOsSha256": "9ca1874cb37a988db129b12b2f8949e2ed74a2db8aee25389ddfa40d047b64d1", "platformArena": true @@ -1592,7 +1592,7 @@ ] }, "native": { - "bytes": 1140071, + "bytes": 1140052, "osSha256": "ad21d536bcc6058b24c1ccbcaa87a69c575f015063bd0af53a355613f8077272", "maskedOsSha256": "a33a6d785574a520b2bde7b5666c04e210faa281aa087a686441cb74782d468b" }, @@ -1620,7 +1620,7 @@ "fx2": [] }, "native": { - "bytes": 1140071, + "bytes": 1140052, "osSha256": "3ec7c9955d04d2133ab758dc2b1048203eda05b68bba0fcb7271b4003fab0c81", "maskedOsSha256": "55df5a77e46186dc5943a04cc7dcb52ebad30b4ec02098079786f82f655cf3f7" }, @@ -1662,7 +1662,7 @@ ] }, "native": { - "bytes": 1128160, + "bytes": 1128157, "osSha256": "ae2f57615d5acbfd047010ee48ff6ff3435da5538c09ca68c19e8ff9509946b4", "maskedOsSha256": "018d178e330af71fc6974af3b765b196d8a51cb6d0b7157c41bdf6ead3bdfc43" }, @@ -1690,7 +1690,7 @@ "fx2": [] }, "native": { - "bytes": 1128160, + "bytes": 1128157, "osSha256": "35b3e4c92a59691e542be0ce02b654bb97395fd0c1ad7f25026b2f343ac6a0c4", "maskedOsSha256": "18e9c585bd2285f100814730c58c60350a262d8ffd9eb679cc22975b713e6920" }, @@ -1733,7 +1733,7 @@ ] }, "native": { - "bytes": 1126984, + "bytes": 1126982, "osSha256": "fe36e558d1c17b762adaf2a0460a00842553a06b285fdd446c78e47d098a194e", "maskedOsSha256": "7e297d27f3b283c7933dc3dd383c60d07e32f6b388a4aab1f0672812ca1dca82" }, @@ -1761,7 +1761,7 @@ "fx2": [] }, "native": { - "bytes": 1126984, + "bytes": 1126982, "osSha256": "1498e7325baee65c4f908430f87a0c1202c679e7beec49a5d9bae6dc10885dca", "maskedOsSha256": "f516598f6f7a8ad9c4ffe9e55b93aead4eb475f482116abbd32fdb4f6260e1bf" }, @@ -1804,7 +1804,7 @@ ] }, "native": { - "bytes": 1128209, + "bytes": 1128201, "osSha256": "0629c00d587ec1c01b83be9a15d9311eec3e15d873611ead3a29b3131062d32a", "maskedOsSha256": "0519ad95b4da39fdc7aa6e16610cf8941d9119ffa47782a3bc10246a478324f3" }, @@ -1832,7 +1832,7 @@ "fx2": [] }, "native": { - "bytes": 1128209, + "bytes": 1128201, "osSha256": "182bc0b22f7673c11eb1885413a2174bb9a6fda47288f7445964aa40569049d6", "maskedOsSha256": "8e72865b0f56e33cdede5f767da7c431fc8f91f3904cdbdca82a0c19627949ee" }, @@ -1875,7 +1875,7 @@ ] }, "native": { - "bytes": 1128358, + "bytes": 1128346, "osSha256": "58c8fe20defc2caf9cc07c1e43ee07df75d139720caea97edc9a9bf641878791", "maskedOsSha256": "3401fc0ea410cb90731ac57a9a50fdaaaa49ac271b3539424eae95b1bde88963" }, @@ -1903,7 +1903,7 @@ "fx2": [] }, "native": { - "bytes": 1128358, + "bytes": 1128346, "osSha256": "6f89bba5395a2cc2b869bb495a2155c5b355adfc99e0db1d23bad389942798c8", "maskedOsSha256": "6a941422ec73a6a7cf1c226f5e59cbd43091c67bfa1100a9c12bd0a316c5f3a6" }, @@ -1946,7 +1946,7 @@ ] }, "native": { - "bytes": 1128586, + "bytes": 1128581, "osSha256": "f844174db8ad59302e98bcd688e4071c45487e781e7042576728edeefe7fc130", "maskedOsSha256": "5345cf8b27fe9e3a414c01e52f39990cd80065598fc1d365f1dd7c251b80a38b" }, @@ -1974,7 +1974,7 @@ "fx2": [] }, "native": { - "bytes": 1128586, + "bytes": 1128581, "osSha256": "887dd280bf792aff524a382b652dcba11d2ab83518c3b544d537da72ae7cc013", "maskedOsSha256": "c457f7afe958f451a1df5458d70c99ca8d0c109735bbc4799ab91ea948b85775" }, @@ -2017,7 +2017,7 @@ ] }, "native": { - "bytes": 1129889, + "bytes": 1129887, "osSha256": "c003148b4c90b46ec1be4d92785e0a1e8c14266cb9093b40f2b9258398d5103b", "maskedOsSha256": "1a61470354dc75aff159f0788c78dc3b6e9f0c62453db6645da3489a3b6677cf" }, @@ -2045,7 +2045,7 @@ "fx2": [] }, "native": { - "bytes": 1129889, + "bytes": 1129887, "osSha256": "ea12fc6b408e2f640ccdd33ee3c9409a10fd0f947c4b1665fed812424887b20d", "maskedOsSha256": "9c9be92b223bc9f9dd96c864c2d1c9e7a063c94db1661d405ae789e8180a4a00" }, @@ -2088,7 +2088,7 @@ ] }, "native": { - "bytes": 1127564, + "bytes": 1127555, "osSha256": "17730810f170952b725061170b52cd5b1c5ffc22e8d1c8b26437900c7a90229e", "maskedOsSha256": "8805e6e8068c4b74b835bd10cb7125e90c8b7db71814a248f3529880a9e987fb" }, @@ -2116,7 +2116,7 @@ "fx2": [] }, "native": { - "bytes": 1127564, + "bytes": 1127555, "osSha256": "d2cb3523405404130360c71dc5467198934653524a2c26be81c0e8905647a398", "maskedOsSha256": "76e6ee8e1b0492fa951a685645980fe23c618e3ede2a55e76efe5c91ee2c0183" }, @@ -2159,7 +2159,7 @@ ] }, "native": { - "bytes": 1126984, + "bytes": 1126982, "osSha256": "df103a96522184c807f6df8ff0f78f9992a4d55d1a45c9f2b95a2fd1558a4234", "maskedOsSha256": "ea57ac476a858272f1692e4ec893c1a2ba678c55aeb770645f3e076ba5b9d509" }, @@ -2187,7 +2187,7 @@ "fx2": [] }, "native": { - "bytes": 1126984, + "bytes": 1126982, "osSha256": "3ce69d42fe169b12ed73f548bcfe41ff9c10fc6ea17a03f279fcaac72a67d36a", "maskedOsSha256": "5c289c8bfa92b1d922a6b19ba8cfe12fad4e91a8bc86e161761132a8d7aa5b93" }, @@ -2230,7 +2230,7 @@ ] }, "native": { - "bytes": 1128953, + "bytes": 1128944, "osSha256": "d8fb3ca6b7681b1ae3db31e119dd9675289fc2b718f6456a1bc7887e1a269c00", "maskedOsSha256": "2d5f8389d6276024a10df1b50a6f091d198f28cbcef30ad5b0dd6241bee76d3d" }, @@ -2258,7 +2258,7 @@ "fx2": [] }, "native": { - "bytes": 1128953, + "bytes": 1128944, "osSha256": "3b8587ce74148e9d501951dcfa06c147d0d4d7d74da5132738b02caec1df4cdd", "maskedOsSha256": "159eb4a0f3bbee07830eb060364ac5ae8cb79ff07d05e9d9296679bf426a2cd8" }, @@ -2301,7 +2301,7 @@ ] }, "native": { - "bytes": 1127098, + "bytes": 1127109, "osSha256": "6b70f0f896c653e0e32e66d30d94d0dd8552c880fe5e81353b9c08d99733c578", "maskedOsSha256": "c5867771b85663939cb86ee4e336ab3888f9090fdc3db05d515a78e03d5f1d0d" }, @@ -2329,7 +2329,7 @@ "fx2": [] }, "native": { - "bytes": 1127098, + "bytes": 1127109, "osSha256": "5061c9935980114a4f881f11fce19d64dddd3aa6e48c1fc58aeaeb0e789bb371", "maskedOsSha256": "64b9801021952a865949fc31b30ddb6fd4cc84e4e7d9fd48c421131372e78f4f" }, @@ -2372,7 +2372,7 @@ ] }, "native": { - "bytes": 1127040, + "bytes": 1127020, "osSha256": "ff62fe2c5cc423cce62169791e0023147b8298235ac52504ada9418055934089", "maskedOsSha256": "91539cabac875bfbb2c4348d823be58d0b769fb8fb6b1e1facb25f0e8376e807" }, @@ -2400,7 +2400,7 @@ "fx2": [] }, "native": { - "bytes": 1127040, + "bytes": 1127020, "osSha256": "c8d95cf2f2080d8b4e31a4e428004a834f77d7feb4064cdd01dea72f0e53c154", "maskedOsSha256": "6aa3327884240828ceef780bab8b36c63be5500e6f43f01bffc2708f6ec1dbc9" }, @@ -2443,7 +2443,7 @@ ] }, "native": { - "bytes": 1135346, + "bytes": 1135348, "osSha256": "200ffc6f3d044558a7d090d0cf1d5a16349a7085add5287ad8103bc37b875a8c", "maskedOsSha256": "db1e1583262d0339cb778fa4f318d80023272c6ec61eb0b61b354e08764f7546" }, @@ -2471,7 +2471,7 @@ "fx2": [] }, "native": { - "bytes": 1135346, + "bytes": 1135348, "osSha256": "ab5956661f7f03f61e7cc71c5a344cc3d237cba29249638e033cb0bc10594606", "maskedOsSha256": "98a486337a6b3a459990eb6f11f352f93ec9f3151bad401aa2466f776dde2289" }, @@ -2514,7 +2514,7 @@ ] }, "native": { - "bytes": 1126984, + "bytes": 1126982, "osSha256": "df103a96522184c807f6df8ff0f78f9992a4d55d1a45c9f2b95a2fd1558a4234", "maskedOsSha256": "ea57ac476a858272f1692e4ec893c1a2ba678c55aeb770645f3e076ba5b9d509" }, @@ -2542,7 +2542,7 @@ "fx2": [] }, "native": { - "bytes": 1126984, + "bytes": 1126982, "osSha256": "3ce69d42fe169b12ed73f548bcfe41ff9c10fc6ea17a03f279fcaac72a67d36a", "maskedOsSha256": "5c289c8bfa92b1d922a6b19ba8cfe12fad4e91a8bc86e161761132a8d7aa5b93" }, @@ -7735,7 +7735,7 @@ ] }, "native": { - "bytes": 1131520, + "bytes": 1131503, "osSha256": "3a53eb4ff0a725062140dd5cf5f40434401b2df787fc22d0f7cb565fa6d7e003", "maskedOsSha256": "b958d95ae05191b4eb2ec4dd83eb835d3a0a7572ff802488bbfc3b4537481a68", "platformArena": true @@ -7771,7 +7771,7 @@ ] }, "native": { - "bytes": 1131520, + "bytes": 1131503, "osSha256": "a811fd69bddcea6f67a362519f49140bd66de2ecd373ae9e4ddc080aa5038002", "maskedOsSha256": "f3de8a098324188d6ae8de1deee47e3026541f690b0567ecd31cd8ed6f6bc11c", "platformArena": true @@ -8059,7 +8059,7 @@ ] }, "native": { - "bytes": 1141914, + "bytes": 1141896, "osSha256": "748b1dd50a67a8df6c293c95f1d61b8ed6f1592af1f6a3f4fd184456d4c308f8", "maskedOsSha256": "6756605474efbdb137adaa58c4b8bf1fd9b62a82a8a089c0f9a91b5767312cd0" }, @@ -8097,7 +8097,7 @@ ] }, "native": { - "bytes": 1141914, + "bytes": 1141896, "osSha256": "f73e71b50ecc7d57fbc6051e52695b4e33e431ad6301b38f92ba011382d4ccf8", "maskedOsSha256": "b5194f5057e7ec9b380a165e418b96d3c82809d03fd518eb7fb5313f4e8f522e" }, @@ -8375,7 +8375,7 @@ ] }, "native": { - "bytes": 1132535, + "bytes": 1132532, "osSha256": "4dd3f240a0a1281d3d2948347af1cfcbd71aa180c201c9d147594e3d74238b25", "maskedOsSha256": "8de2cd7b023396eae49b2be6b5cf5cac33cdf5e31f07f3121f32384609b208e3" }, @@ -8409,7 +8409,7 @@ ] }, "native": { - "bytes": 1132535, + "bytes": 1132532, "osSha256": "e2ed63c298fb6bd374abe24c1079d02990995df092568593779dd9ca67b677f7", "maskedOsSha256": "6e1dea0db3fa89d755e78f0809d9318b5f43564ca495b1d2e9646a07ae2da8d2" }, @@ -9465,7 +9465,7 @@ ] }, "native": { - "bytes": 1129867, + "bytes": 1129855, "osSha256": "b05498c7f610bf1b5c019647bc178370d007a7fdc2faec1e62c0c855e4bcfddc", "maskedOsSha256": "e0ba96934cc2ab20be3f847fb6d31f496c655a0117bc217fffa6b0289814ffca" }, @@ -9499,7 +9499,7 @@ ] }, "native": { - "bytes": 1129867, + "bytes": 1129855, "osSha256": "b10f8b9a0ecb4326260e54e6f0d6f4f97e0cdbf4dc3aa27a9727c4cee9f2c231", "maskedOsSha256": "f4b22f4a0bf1cd0f59d6b83ba52904fffee964d360b65abc216d12c034cb6705" }, @@ -9546,7 +9546,7 @@ ] }, "native": { - "bytes": 1131151, + "bytes": 1131138, "osSha256": "36619fa423fd6302013a33547b7dd5a998073ffc5e22accd8a1848d9e83a5aa9", "maskedOsSha256": "50052a72a1b5e5f236ae39538c58f6c2b10cd2ec06a87063000a1db996dea37b" }, @@ -9581,7 +9581,7 @@ ] }, "native": { - "bytes": 1131151, + "bytes": 1131138, "osSha256": "6119741f511bf11ac16a145e2b8eaca63d1745dbad39dfcc22626531a8719153", "maskedOsSha256": "46e09d54d25b8a30af96db115ed680a9669cb4bb6048fcd1036d34ea417e5383" }, diff --git a/src/catalog/module-documents.json b/src/catalog/module-documents.json index d15288dcb..c8a55068a 100644 --- a/src/catalog/module-documents.json +++ b/src/catalog/module-documents.json @@ -6404,7 +6404,7 @@ "value": 10586112, "unit": "bytes", "method": "static", - "conditions": "Tested reported profile: repitch, vector, playmodes, mute-modes and recorder-loop-fix with stock FX2, original 1.40C. Shared arena 10,586,112 bytes includes 10,487,808 module arena plus 98,304 logger reserve, counted once. Linked runtime 90,780 bytes and packed staging fit within it. VECTOR allocated sections (0.3.0, the MIDI generator and on a card the base's generator registry): 22,314 text, 678 rodata, 3,764 data and 144 BSS bytes; no new heap. Complete flash append: 18,153 bytes measured for 0.2.4's profile, counted here as 28,143, that plus the 9,990 allocated bytes 0.3.0 adds (an upper bound; packing makes it smaller). On MIDI tracks VECTOR reuses stock storage only: the tracks' pattern records, 16 arp note bytes and the arp step mask per Part. Maximum observed native commit stack 1,048; Part validation 252; fixed added UI stack bound 1,216. Borrowed stock window, lock indexes and 8-track bank/SRAM capacities are retained. Hardware canaries are unmeasured.", + "conditions": "Tested reported profile: repitch, vector, playmodes, mute-modes and recorder-loop-fix with stock FX2, original 1.40C. Shared arena 10,586,112 bytes includes 10,487,808 module arena plus 98,304 logger reserve, counted once. Linked runtime 90,780 bytes and packed staging fit within it. VECTOR allocated sections (0.3.0, the MIDI generator and on a card the base's generator registry): 22,314 text, 678 rodata and 3,908 data bytes; no BSS (a card never zeroes it, so prepare.py keeps zero statics in .data) or new heap. Complete flash append: 18,153 bytes measured for 0.2.4's profile, counted here as 28,287, that plus the 10,134 allocated bytes 0.3.0 adds (an upper bound; packing makes it smaller). On MIDI tracks VECTOR reuses stock storage only: the tracks' pattern records, 16 arp note bytes and the arp step mask per Part. Maximum observed native commit stack 1,048; Part validation 252; fixed added UI stack bound 1,216. Borrowed stock window, lock indexes and 8-track bank/SRAM capacities are retained. Hardware canaries are unmeasured.", "source": "TESTING.md" }, "processing": { @@ -6478,7 +6478,7 @@ "screenshotStyle": "black-and-white" }, "moduleVersion": "0.3.0-experimental", - "sourceSha256": "d7e4896f42468fff30308d7cded104ac0f9803fb3e7279cbab61f65d617c9312", + "sourceSha256": "50a4f243d3ed16872173a2a742a345916aec60e316cd477d86ef3727a2ed85ce", "imageSha256": "a753ddf67b0fe64e3742b4c89ecf141071eb30757b170173215e92b1b4794d24", "cycles": [ { @@ -6512,9 +6512,9 @@ { "name": "Complete tested-profile flash append: bootstrap and packed runtime", "space": "cpu-flash", - "words": 28143, + "words": 28287, "wordBits": 8, - "bytes": 28143, + "bytes": 28287, "scope": "shared" }, { @@ -6559,10 +6559,10 @@ } ], "perInstanceBytes": 74656, - "sharedBytes": 10617731, + "sharedBytes": 10617875, "maxInstances": 8, - "totalBytes": 11214979, - "conditions": "Tested reported profile: repitch, vector, playmodes, mute-modes and recorder-loop-fix with stock FX2, original 1.40C. Shared arena 10,586,112 bytes includes 10,487,808 module arena plus 98,304 logger reserve, counted once. Linked runtime 90,780 bytes and packed staging fit within it. VECTOR allocated sections (0.3.0, the MIDI generator and on a card the base's generator registry): 22,314 text, 678 rodata, 3,764 data and 144 BSS bytes; no new heap. Complete flash append: 18,153 bytes measured for 0.2.4's profile, counted here as 28,143, that plus the 9,990 allocated bytes 0.3.0 adds (an upper bound; packing makes it smaller). On MIDI tracks VECTOR reuses stock storage only: the tracks' pattern records, 16 arp note bytes and the arp step mask per Part. Maximum observed native commit stack 1,048; Part validation 252; fixed added UI stack bound 1,216. Borrowed stock window, lock indexes and 8-track bank/SRAM capacities are retained. Hardware canaries are unmeasured.", + "totalBytes": 11215123, + "conditions": "Tested reported profile: repitch, vector, playmodes, mute-modes and recorder-loop-fix with stock FX2, original 1.40C. Shared arena 10,586,112 bytes includes 10,487,808 module arena plus 98,304 logger reserve, counted once. Linked runtime 90,780 bytes and packed staging fit within it. VECTOR allocated sections (0.3.0, the MIDI generator and on a card the base's generator registry): 22,314 text, 678 rodata and 3,908 data bytes; no BSS (a card never zeroes it, so prepare.py keeps zero statics in .data) or new heap. Complete flash append: 18,153 bytes measured for 0.2.4's profile, counted here as 28,287, that plus the 10,134 allocated bytes 0.3.0 adds (an upper bound; packing makes it smaller). On MIDI tracks VECTOR reuses stock storage only: the tracks' pattern records, 16 arp note bytes and the arp step mask per Part. Maximum observed native commit stack 1,048; Part validation 252; fixed added UI stack bound 1,216. Borrowed stock window, lock indexes and 8-track bank/SRAM capacities are retained. Hardware canaries are unmeasured.", "report": "evidence/software.json" }, "hardware": { diff --git a/src/engine/assets/analog-bd-composition-proofs.json b/src/engine/assets/analog-bd-composition-proofs.json index fe82aa67d..50cb80476 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": "cc211a576fc3c4bb79b33d69b31782f1d290a7a43cddb66a1ebe8a88a92c51f3", + "moduleSourceTreeSha256": "118443c7c977793053dadbb80dc8a32bd02dc2cc5d491e6e7b60dc5486d51bd8", "packing": null, "proofs": [ { diff --git a/src/engine/assets/bootstrap-package.json b/src/engine/assets/bootstrap-package.json index 58e09733f..442be70ee 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": "9be221aabc43919ab1165cad9df7c1415b96f2f7", + "sourceCommit": "ebceb74f8ad1676bd8cb934b875d6f064ea2ab48", "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 4d351119e..ceff6ba75 100644 --- a/src/engine/assets/coldfire-packages.json +++ b/src/engine/assets/coldfire-packages.json @@ -208,7 +208,7 @@ "sha256": "ccffbf72d45358bde585760b9230c668bf38ebf412ab23efc73732cf96024dca" } ], - "sourceCommit": "9be221aabc43919ab1165cad9df7c1415b96f2f7", + "sourceCommit": "ebceb74f8ad1676bd8cb934b875d6f064ea2ab48", "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 c09fcae03..7ffa69335 100644 --- a/src/engine/assets/descriptor-recipes.json +++ b/src/engine/assets/descriptor-recipes.json @@ -4439,7 +4439,7 @@ ] } ], - "sourceCommit": "9be221aabc43919ab1165cad9df7c1415b96f2f7", + "sourceCommit": "ebceb74f8ad1676bd8cb934b875d6f064ea2ab48", "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 be12b3141..300abdac4 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": "9be221aabc43919ab1165cad9df7c1415b96f2f7", + "sourceCommit": "ebceb74f8ad1676bd8cb934b875d6f064ea2ab48", "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 aa5789e3e..e910ec387 100644 --- a/src/engine/assets/menu-recipes.json +++ b/src/engine/assets/menu-recipes.json @@ -1425,7 +1425,7 @@ "caveLimit": 1074625596 } ], - "sourceCommit": "9be221aabc43919ab1165cad9df7c1415b96f2f7", + "sourceCommit": "ebceb74f8ad1676bd8cb934b875d6f064ea2ab48", "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 d553a03ab..59442e50c 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": "9be221aabc43919ab1165cad9df7c1415b96f2f7", + "sourceCommit": "ebceb74f8ad1676bd8cb934b875d6f064ea2ab48", "nativeRevision": "b8deefc88b2c3e5f3c6158e364eb741df1924e1d", - "sourceTreeSha256": "cc211a576fc3c4bb79b33d69b31782f1d290a7a43cddb66a1ebe8a88a92c51f3", + "sourceTreeSha256": "118443c7c977793053dadbb80dc8a32bd02dc2cc5d491e6e7b60dc5486d51bd8", "compilerSha256": "4c7b4a227737ef0686e3eafd320c7f7271003f9a19d02d72dbbe3b36aa10f702", "moduleVersions": { "spectrum": "0.1.1-experimental", @@ -47,47 +47,47 @@ "files": { "dsp-packages.json": { "bytes": 92040, - "sha256": "ed3c404f0ce44d3f365372be141693aa02f3a5a8b8719bf8d0dfed7a3cb0854b" + "sha256": "fbb081f22daac5ebe9abcaf9baa554223914d3a6d88fdd7acbe7726a20ac0461" }, "resident-dsp.json": { "bytes": 25445, - "sha256": "f1e20d16a2ce794ebf719c327034a0eb5b8ce1283205b4d46a53d54700af2e6b" + "sha256": "ae948a89aa96a66839b9197159a82a4de10303cd6629a1069039771ee16eddc9" }, "coldfire-packages.json": { "bytes": 354338, - "sha256": "1658c4bb35b94e2d729db15de2b7c081748bd1cb57fcfe4601d6a0fc9718b686" + "sha256": "f6019e4016f10e81000f8936f90b029b8752f7da034e7124b9385e4e393b6fc5" }, "rom-packages.json": { "bytes": 33596, - "sha256": "0348ff37184ce84851d42ea6c87535e1a997c6774498f4e93dfb497c0c8dbb85" + "sha256": "fc70e6199425a2509e5639d30cdadb31c83930afc58a06e003eeedabbd35b818" }, "bootstrap-package.json": { "bytes": 4179, - "sha256": "4a9e903e50f7d14fc1646f6cd2adca74878608d97b6b8394728099233197cd09" + "sha256": "3f993278837602045b107ccb3fea3bdb17f82e900a88d55d43f386aea73c2d90" }, "menu-recipes.json": { "bytes": 37838, - "sha256": "6e0907831de45c1e807308a88067178168893b1e5c62bbe39e760e3b1f01eb5e" + "sha256": "7d7fce2e704137ee72538a18cd000c97ce3a754b8c6a2da55730f533609f87a3" }, "descriptor-recipes.json": { "bytes": 85463, - "sha256": "74e5a09804aa0db962eba734bc6027001d4665784abdf49719a02faca4587ac4" + "sha256": "a2f3e102c03e408c159feeab544843859053fb851ac7793bede109d689b10234" }, "platform-writes.json": { "bytes": 17922, - "sha256": "0c83b24de54708275ca00e89a57615f868ae7eedf1e27b0879c96c14e49b7b5d" + "sha256": "9e112312d1e8da41d40ee2535b676be6991181755d080fe3e190de1da014efb2" }, "requested-packages.json": { - "bytes": 1355618, - "sha256": "d434d65f3f212584e2d197b6c251071e76b36f232d484009e7856fae6eec0ba2" + "bytes": 1355906, + "sha256": "398d22e60e1738f5bad471dc732c991faf46f5d51b25cf93076e8498ee743150" }, "utility-packages.json": { "bytes": 13307, - "sha256": "3c4f46981442ea9941a2a4d5eae9c30929e61e3186a87aa133488a139cc0eeff" + "sha256": "e9d1088b8bc8d4b99b119e538d516b9b1d798ebdba1d24d6a101af0210e83a0d" }, "usb-audio-packages.json": { "bytes": 737949, - "sha256": "ced501a0999c1393e9bb086993d82f916bbfd24ebe89603d26acafdc600b2be8" + "sha256": "e121d3f84e069866dc947a6ac95fb6a09f4813d43662aab5b3a7fba99b123c1a" } }, "approval": null, diff --git a/src/engine/assets/octatrack-module-packages.json b/src/engine/assets/octatrack-module-packages.json index f17c54f58..94e279168 100644 --- a/src/engine/assets/octatrack-module-packages.json +++ b/src/engine/assets/octatrack-module-packages.json @@ -196,8 +196,8 @@ "version": "0.3.0-experimental", "name": "VECTOR", "module": "b0d51c58", - "bytes": 29486, - "sha256": "4fc33aef2606bcc8c0801365fd123f5a31b9ac46b0b3dfbc774a10a8d59812d3", + "bytes": 29630, + "sha256": "b66a440e6969ed9c5a863245956ebbaa7d81f96993f8837c53a5a7428b6a7a31", "path": "octatrack-modules/vector/0.3.0-experimental.mwrm" }, { diff --git a/src/engine/assets/platform-writes.json b/src/engine/assets/platform-writes.json index 1fe554055..a5e9cf95c 100644 --- a/src/engine/assets/platform-writes.json +++ b/src/engine/assets/platform-writes.json @@ -526,7 +526,7 @@ "sha256": "09effec7437266b693e358d43f0ba0f3de2b0b35fe4d81e7b76ba90cf388bde8" } ], - "sourceCommit": "9be221aabc43919ab1165cad9df7c1415b96f2f7", + "sourceCommit": "ebceb74f8ad1676bd8cb934b875d6f064ea2ab48", "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 a0cdf212f..b55f3177c 100644 --- a/src/engine/assets/requested-packages.json +++ b/src/engine/assets/requested-packages.json @@ -1,7 +1,7 @@ { "schema": 1, "revision": "b8deefc88b2c3e5f3c6158e364eb741df1924e1d", - "sourceCommit": "9be221aabc43919ab1165cad9df7c1415b96f2f7", + "sourceCommit": "ebceb74f8ad1676bd8cb934b875d6f064ea2ab48", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -455,12 +455,12 @@ "caveAddress": null, "source": "modules/vector/control.s", "sources": { - "modules/vector/control.s": "c95c74baa5e5d79d1c3edf0148b2c4a84daf4e5d61c1bff5eb3934626fd0a9be", + "modules/vector/control.s": "3e9cefa630c8425af9b2ea48cf4ce88bb9a48fa18bb1876cd1447dc12d0212b9", "modules/vector/manifest.py": "b9dec167f8bd4f1b691069cc89834f6c2a6717b874eb28629ef5c8c026d3d976" }, - "bytes": 37900, - "code": "7f454c46010201000000000000000000000100040000000100000000000000000000922c000000260034000000000028000c000b2f021039100b14cfa742227946c82456d3fc000950481211c480a340e5a8828012811239100b145e808113c0100b145e207946c82456d1fc0009b332241fa350a379100f85984ef940027e002f027233202f0008206f000cb28067187420b480674a7231b280674e7432a749b4806706241f4e7593c9a341b288672c4a886702a54143f19a0074fdd28943f90000000022711c0022095381b48165d42f48000c2f400008241f4ed1428160d6a349a341b28866c860f2a549a341b28866be60e84feffc40720f48d77cfc206f03c871902f40004eb2806406740f2f42004e7010206f03c877a800012f430046b083640672102f410046700b206f03c875a800022f420042b0826406720b2f410042a940206f03c875a800032f420052b0826404a96f0052206f03c8707e73a800042f41003eb0816406727e2f41003e707f206f03c875a800052f420056b0826406727f2f410056700c206f03c875a800062f42003ab0826406720c2f41003a7218206f03c81028000875a800072c421f40005bb28264043c7c0018206f03c843eefff42c2f03cc102800092f49004a4a0067107240b2866500046c7180b08665000440206f03c4200f246f03c40680000003c0224a116f03cf010041ef02c0264850c1421113410003134100021341000126d9b08b66ea222f03d4283c9e3779b92e2f004e760b4282b981e7af760f43ef00c04bef01c02a09200142404840b380223c7feb352d4c0108002200e6a9b380223c846ca68b4c010800260042434843b183a740c08277c34a8067000088d6872a83264520022f480032222bfffc41ef03c049f01c00b6acfe00640a26815380598b4a8066e447f70c00260206849e3779b9206f00325283588d5885274200c0b6866764222f03d42403760fb981200142404840b380223c7feb352d4c0108002200e6a9b380223c846ca68b4c010800260042434843b183a740c08277c34a806600ff7c2a834a826600ff78428047f70c00260206849e3779b95283588d5885274200c0b686669c2a6f00527a1847f9000000007e64387c000c79f3da00266f004a70f42a6f004a99ce9aaf004297ef003adbef003a42af003642af00322f4800522f42002e2205740cd2804c4210060d04672cb08b6c00022e220cd2804a816d000216be816f0002182f400036740c52802e012205d2804c4210060d0466d45280720db28066be302f0048206f0052242f002ec0c35080e888671671c049f10c00201947f70c007001174002c0b9c966f0720c7c0c202f00425e804c41000573fc00fe92af0056286f004a22422a6f004a4287700c90af00422f450046c2ef03d2dbef003ad0854c4600057dfc00fe99ef003a2f4d004a242f003226434c461001eaa42a6f004e2f4a00522f6f03d40032a340c0841f41003d2f40004e2c0752874a10670000da223c85ebca6b7a0f4c071800262f0032283c7feb352db7810a81b5297a4d200142404840b3804c0408002200eaa9b380223c846ca68b4c010800220042414841b1814a82670001662001e0884c4200044df74c00282e005c0684fffffff4700fc081b08d642c7030c0814a8066084aaf004e6600016c202f00420801000667060680fffffff4b08c6d08b0af004a6e02280076182001e6a8a743c9fc00052a004c435000068400000040114400015480c0ef0040e48811400002a740c0864a80670000de0281003000004a81670000d2102f003d114000035888bc896600ff18246f0052260b4aaf03cc675871af005b783fb880650000be2a2f03cc206f03c8266f03c44c4500021828000a71c5222f03cc538543f30c009282242f03cc2c0152814c4260004a0467062c059c8020064c43000647ef03c041f36c0024e8ff00b5c966da4cd77cfca3404fef03c04e754481be816e00fdec52806000fdc2b08d6e18222f0032204041e8000c4df71c0052812f4100322d48005c220cd2804a816d1abe816f00fdd22f4000362e015280720db2806600fd886000fdc6448160e2102f03d3114000036000ff2e282f00366000feac2a2f03cc703f206f03c8266f03c44c450002222f03cc71c51828000a5385928243f30c00242f03cc6000ff40202f00466000fe94206f03c42c00246f03c4200f224a0680000003c0116f03cf010041ef02c026486000fbbe71807c40b0866400fb9660d04fefffe048d73c3c4ab900000000670e202f0024b0b900000000670000da41f900000000226f002493c81031880010c0b1fc0000000066f24bf900000000428243f90000000049f90000000045f900000000223c00000000265d91c810338800670c158088005288ab43b68866eed1ca4218b28866fa201c26004243484378182a00e8ad2800e08c13400003ab4012851344000213430001b082656a203c00000000781826002a0042434843e8ad2800e08c1340003358891345002c1344002e52825c8a5c81700c1343002db082668877fc5555202f0024283c5555555523c400000000a3790000000023c30000000023c000000000203c000000004cd73c3c4fef00204e75203c00000000781826002a0042434843e8ad2800e08c1340003358891345002c1344002e52825c8a5c81700c1343002db0826600ff1e60924fefffe0222f002848d77c1c226f00244a816708a341c2af002c528141f1180123c10000000028084ab900000000660ab1f9000000006700011c41f90000000093c81031880010c0b1fc0000000066f243f90000000091c845f900000000101152894a00670a14c05288ab40b08866eed1fc000000004218b1fc0000000066f6340141f900000000c4fc000d2242d3fc0000000010d9b1fc0000000066f630014df90000000043f900000000223c0000000047f900000000c0fc00062a40dbfc00000000719d244191c85d8a28730c0010348800670c158088005288ab40b08866eed1ca4218b28866fa7440201e72182600e2ab2200e0891340000358891343fffc1341fffe72671342002c24007004424248421341002e22085c811340002d70a41340002f1342fffdbdfc00000000669273fc5555243c5555555523c20000000042b90000000023c10000000023c400000000203c000000004cd77c1c4fef00204e754fefffd448d74c044242203946c82456227c20300c0c2f4800102040d1fc0008ed8042001239100b14cf3f420028243c0b0b00012f420020a7421f40002a302f00322f490024c28275fc18b2c0fc001e4c021800d1c173b0083e53814a81670001f64def001793c922090681000001e9d280a542b489641e1cb0180052897209b289671e22090681000001e9528ed280a542b48965e245f1083f52891cf0a80060c6102f0017720fa942c2807180e88830401f410020b4806500017e3008122f001874101f400023701fc0813040b4806500013c3408102f0019ea891f420021a342c282740fc4801f41002a12022042740bb488650001027180e8881f410022720c3040b280650000d6122f001a340871811f420026747eb480650000b0102f001b1f4100244a006d00008c122f001c1f40002574187181b480656871af001d1f410027723fb2806546122f001ee188758120427440b4886528100147ef00203f400028206f0010200820d320ef002430ef00284cd74c0410af002a4fef002c4e75724047ef002010013f40002860d4122f001e703fe188758120427440b48864b860de721871af001d1f410027723fb280649660da707f122f001c74181f4000257181b4806400ff7460d8727e102f001b1f4100244a006c00ff5260d8307c000c122f001a340871811f420026747eb4806400ff2a60d4720b7180e88830401f410022720cb2806400ff0060d0307c0010102f0019ea8934081f420021a342c282740fc4801f41002a12022042740bb4886400fec460c0307c0004122f0018741030081f400023701fc0813040b4806400fe8260b847ef002093c9244b22090681000001e94df1083fd280a542b489651a528914f0e80022090681000001e94df1083fd280a542b48964e614b018005289ad41b2896700fecc528a60c0518f2f0a2f02740f206f0018203946c824561239100b14cfb488655ea742c282242f001406800008ed80eb8a224275fc18b243e903e24c021800d081d3c0700cb088672a700db08867000088a941b288663273a9000243f90000000071b18800b28064022001241f245f508f4e7573917413c2fcaaabe4a960dc241f4280245f508f4e75227946c82456a7421039100b14cf222f0014d3fc0008ed80e989c08275fc18b2244145ea183e4c0208007416d3c071b1a800b4806720ad40b0886764241f43f90000000071b18800245f508f4e7573a900016000ff7e203946c8245606800008ed801439100b14cf2f40000c43f90000000071b188002240d3c1a741100275fc18b243e91832c0814c020800d0af000c1231080006810000004073816000ff34202f00145280241f245f508f4e754fefffe848d70c1c242f0020246f001c77b9100b14cc2f022f034ebafeb2508f2200a940b0826760780cb88267000150a540b082673aa743b68267000110700bb08267000124760ab6826754780eb882670001847010b082665841f900000000101814c066fa4cd70c1c4fef00184e75740c4c42100041f90000000020700c00101814c066da60de2f4a001c4cd70c1c2f4100202279400d3f104fef00184ed14a81662441f900000000101814c066b060b451824a82661020010680fffffff44a806d0000fe2200224aa34842807663b681644e7864760a20014c440000068000000030128020014c43000043f2880124004c4320042004068000000030158088005488740a4c42100042030680000000301280158388004cd70c1c4fef00184e757409b48164dc2040760a20014c43000043f2880124004c432004200406800000003015808800548860b8ab444c44100041f90000000020700c00101814c06600fefe6000ff004a81674441f900000000101814c06600fee86000feea2439400d3f08a5672f032f41001c4ebafd402f4a0024222f001c22424c0418004cef0c1c0008d2802f4100284fef00204ed141f900000000101814c06600fea46000fea6740ca548224a948112fc002d2202a3406000fefa4a816700feca203c1002c9809081e588224020514a886600fe72224aa34842806000fed6203900000000ad4141f9000000004c01080071b008002f4000086000fdea203900000000ad414c0108002040d1fc0000000071902f4000086000fdcc203900000000ad414c0108002040d1fc0000000071902f4000086000fdae203900000000ad414c0108002040d1fc0000000071902f4000086000fd90203900000000ad414c0108002040d1fc0000000071902f4000086000fd72203900000000ad414c0108002040d1fc0000000071902f4000086000fd544feffff048d70c0c207946c82456a743222f00142401eb8a226f0018d1fc0008ed8047ef001f2441d5fc8000666e43e903e21039100b14cfd3c275fc18b2c0834c020800d1c0119398001039100b14cfc0834c0208002040d1fc100a4ece11939800101275b9800000027180b480670a4cd70c0c4fef00104e752041d1fc80006676101075b9800000037180b48066e070444c010800206f0018d1fc46c76dc0119308004cd70c0c4fef00104e752239460d1684a9402f0a2f02b081654c4ab9460d173a66444ab9460d1694663c202f0018068000000c1171c0206f001441f00a001028000175902242744db489661a4aaf001067147180246f000c224020122440b3ea0008670a1010241f4280245f4e75a94284aa000c030267ee241f245f4e754feffff42f0e2f0271b9100b14cc2c6f00242f0041ef000d4ebaf846588fad40b08e675cab42200eb48e6402538071b7080920402f2f00302f2f003070fec0af003043f90000000073b1e8002f002001b1c164022008c0fc007f4c4100002f002f2f00302f2f00302f2f00304eb9400479b44fef001c241f2c5f4fef000c4e751039100b14cc227946c82456a7421239100b14cfd3fc0008ed807180c282c0fc001e204071fc18b241e801f14c001800d3c110318800727fc28020416000ff76518f2f02740b202f00182200206f00105c81226f00142f6f002000042f6f00240008b4816406241f508f4e752f6f000800242f6f000400202f41001c2f4000182f4900142f480010241f508f6000fef2598f2f02740b202f0014222f000c206f0010226f001c2f6f00200004b4806406241f588f4e752f6f000400202f49001c2f4000182f4000142f4800102f41000c241f588f6000feaa4fefffe448d7401c242f002441ef001171b9100b14cc2f004ebaf6ee588fad40b082676cab40b082653c71b728112202a3435581b6816500009255824a826700012aab434c43000141f900000000226f002020701c00101812c066fa4cd7401c4fef001c4e7571b72810780bb882660001124a80670000e6226f002041f900000000101812c067d4101812c066f460cc1039100b14cc227946c82456a7421239100b14cf77fc18b2d3fc0008ed80787f7180c282c0fc001e20404c03180041e801f1d3c110318800c0847663b68064587864760a2200a54e4c441001206f0020a74906810000003010c122004c43100124014c43200422040681000000301081206f0020d1ce740a4c42000142030681000000301081206f0020118398004cd7401c4fef001c4e75206f0020a34942817409b48064d02c49760a224122004c431001548924014c43200422040681000000301081206f0020d1ce60aa226f002041f9000000006000ff1a740c4c42000141f900000000226f002020701c006000fed6780ab88266144a806600ff3e226f002041f9000000006000fee851824a826600ff2822000681fffffff44a816d0e20017663b6806500ff186000ff6c206f0020740c94802002a54910fc002da3417409b4806400ff306000ff5c700a2f4000086000fe1c70082f4000086000fe12ad6f00086000fe0a71b9100b14cc4feffff441ef00012f004ebaf4fe588f4a2f000b671641f900000000226f0010101812c066fa4fef000c4e75226f001041f90000000060e84feffff42f0271b9100b14cc41ef0005ab422f004ebaf4bc71af000c588f41f9000000004c420001226f001420701c00101812c066fa241f4fef000c4e754feffff42f02740c71b9100b14cc41ef00052f004ebaf47e71af000b588f41f9000000004c420001226f001420701c00101812c066fa241f4fef000c4e754fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf43c71af0025588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf36c71af0023588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf29c71af0022588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf1cc71af0021588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf0fc71af001e588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf02c71af001d588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffd4700c48d7043c282f0034242f0030262f0038b084670001aea541b2846700026c7a0dba84670001c8a940b084670001d8207946c82456a7411039100b14cf2a02d1fc0008ed80e98dc08173fc18b222457a1645e9183e2f4a00184c010800d1c071b0a800ba80670001b641f900000000428143e91832700d2f4800202f49001cb081650000907a0bba81657ea940b08167782f01247c100b14cf2f022f41001c4ebaf16ea745207946c82456d1fc0008ed801f520033222f001c2240246f002843e9ffc02f49002c71b21800508f45ef0027226f001cd3c0102f002bc0857bfc18b24c050800a745d1c0119298001039100b14cfc0857bfc18b24c0508002040d1fc100a4ece119298005281700db0816400ff747a10ba816600ff78207946c82456a7411039100b14cf7bfc18b2d1fc0008ed80226f00180683ffffffc0246f002075b24800c081222f00184c050800a745d1c070161180180073fc18b21039100b14cfc0857a164c010800a7412040d1fc100a4ece118598007bfc18b2226f001cd3c2207946c82456d1fc0008ed801039100b14cfc0814c050800d1c0118398001039100b14cfc0814c0508002040d1fc100a4ece118398004cd7043c4fef002c4e75a5672f024ebaf0462f42003842af003c720c4c013800d6802f4300404cef043c00084fef00346000f4042f4300382f4200304cd7043ca36f00344fef002c6000f3ec2f4300382f4200304cd7043ca56f00344fef002c6000f3d441f900000000a7412f48002043e918320683ffffffc0207946c82456d1fc0008ed802f49001c7bfc18b21039100b14cf246f0020226f001c75b24800d3c2c0814c050800d1c0118398001039100b14cfc0814c0508002040d1fc100a4ece118398004cd7043c4fef002c4e75227946c82456a7411039100b14cf2a02d3fc0008ed80eb8dc08173fc18b220457a1341e803e24c0108007209d3c071b18800c0fcaaabeaa8b28064027009c0fc000c20404870380042a72f024ebaf3184fef000c6000fd504e56ff6c48d73cfc1039100b14d0223946c824560681c00000000c8107efffff6200045caf41b2ae0008650004527380740fb4816500044848807dfc08b0223946c824562041282e00081639100b14cfc0fc8ed84c06480041e848d02244d3c01d43ffc32d49ffb44bf188004aae000c6700042c2040227c00008e55d1c14a30980067000406162d0028428245faeea07783ad47be826602af422f022f2e00084e92508fab41b282640004461d8028cc5282780cb88266daad672f2e00084e92508f2d40ffb84aae0010670a52807c7fcc802d46ffb8203946c8245620431239100b14cf53887e3fbe8865000392a742c2822640d7fc0008ed80202e000879fc18b2eb884c0418000680000003e2d7c1d7c04a2b00016d00036671ab00017c7fbc806500035a2f2effb82f0078132f03486effcd4879000000004ebae3544878000f2f2e00084e924878000e2f2e00082d40ffa44e92161373934fef0024204d2d40ffac3401200e0680ffffffd891c02d48ffc8226effc8204077832d4eff9cc4fcaaabe8aac5fc000c9282738196812d43ffa81231880010c1b1eeff9c66f4222effb82c3c9e3779b952814c016800223c85ebca6b7e1e2d41ffa0222effa442829eaeffac286effb4d9fc1001b24e43f900000000d281266effb4d7fc1001aa502d46ffbc45ed08312d47ffc441ed005052812d41ffb0af46cc822602e68b4be8ffe0a3442d4dff98af4d9bc3dbc02d4dff947395eca1c2844a116700042679a90001ab470684ffffffc04c4748042a2effa8da844a856d000430787fb8856c027a7f2a6eff9879857f95be8467102a6eff981a851745fffe4a116700029c182900037fa8ffe14be8ffe12d4dff987b84ba87670002d82a6eff981a841744ffff4a11660002c879a8ffe24be8ffe22d4dff980c84000000ff6700028850c4a3452a6eff98edad1a8416844a11670002782a6eff94181588852a6eff941a8418114a816600027c4a04670002aa4aaeffa4670003aa282effa07c0f222effbc2e3c2c1b3c6db9812801ecac7c0cb9814c0718002e2effb02801ecacb9814c471004220492aeffa4ef89028100001f804aaeffac670ca744c8824a84670482aeffc42801e08c2a4a7fa57d84bc8767041a8418847d927981b8866706148119410001428192832801d8802a442c05122d000f46869bcd9bc32e0d2a44de80c2861b41000f2a47122d0027c2861b4100271211670002024bf9000000001b8128003a7c00179bc3dbc01215c2861a81223c85ebca6b52825889548a548cd3aeffa047eb002041e80020263c00000000b3c36600fe46247c1001aa1d95c0d5eeffb4222effc820405381101875b018007780b48367081180180015808800b1eeff9c66e64aae0010660001c4102effc3a744a342207946c824562202d1fc000950481610c084e1a986811083263c46c7d2e41039100b145e828013c1100b145e207946c82456d1fc0009b332a350a379100f85984eb940027e002c2e00082806edaa41f9000000009688468243f0380010111218c082e9a980811280b1fc0000000066e8206e0008486800084eb94009da204cee3cfcff6c588fa3404e5e4e754cee3cfcff6c42804e5e4e7571fc8e53428245faea9c1630080077836000fbf643ed0018204d52884a28ffff66d2b1c966f441ed002043ed002852884a28ffff66beb1c966f441ed003043ed0830759052880c82000000ff66a6b1c966f02040227c00008e55d1c14a309800679e6000fb981d8028cd52826000fb9a79a8ffe14be8ffe12d4dff980c84000000ff6700fd7a50c42a6eff981a841744ffff4a116700fd68602aa345edad2a6eff942c05468618152a6eff94c8861a8418114a816700fd884a046600fd8842016000fdda182900027ba8ffe24be8ffe22d4dff987f84ba876600fd3c2a6eff94a345edad181588856000fd464be8ffe37395528d0c81000000ff6600009cbbc866ee42014bf9000000001b8128003a7c00172c0546869bc3dbc01215c2866000fde22f2effb8ad672f2e00084ebaf762a744a3424fef000c102effc3207946c824562202d1fc000950481610c084e1a986811083263c46c7d2e41039100b145e828013c1100b145e207946c82456d1fc0009b332a350a379100f85984eb940027e002c2e00082806edaa41f900000000968846826000fe2a72014bf9000000001b8128004a116600ff663a7c00179bc3dbc0121582856000fd4a2a6eff9879950c84000000ff6700fea850c52a6eff981a851745fffe4a116600fbfc6000fe9242052a6eff987f957985be846600fbd86000fbe442816000fc8e1039100b14cca367a36771802f004ebaf96c4fef000c4a806716203c00000000487800202f004eb94005a2b8508f4e75203c00000000487800202f004eb94005a2b8508f4e754feffff02f02226f001cab421239100b14cc202f00182f6f0020000cb48965244a806708a340c0af00245280ad424c020800740f2040d1fc0000000071b09800b4806408241f4fef00104e7573812f4100102f002f012f40000c4ebae8082240d0af0014508f206f00044a806d5a223c0000000073b01800b0816c022200b28967c22f012f082f2f00182f4800102f4900144ebaf5bc42a7a3672f2f00244ebaf8964fef0018206f00044a8066962f6f000800202f48001c2f6f00100018241f4fef00106000f58a428160b24feffff048d7041c207946c82456a742262f00142203eb8979fc18b2d1fc0008ed801039100b14cf224143e903e2c0824c040800d1c075b09800204348680001ad672f034ebaf53e4fef000c7077b08265482202780c4c44100045faeb1c94802f0242a72f034e924fef000ca742487800402f022f034e9252824fef000cad40b08266ea42a742a72f034ebaf7de4cef041c000c4fef001c4e75746c2f0242a72f0345faead4a7424e924fef000c60be4aaf000866024e756000ff46202f0004727f5280c0814e752f032f02206f0010a942226f000c102800037380b481640270041210e988760f7581b6826402720f808112801028000a6702700112280001eb8876107581b682640272108081740c13400001102800067380b4816402700c12280002e988760b7581b6826402720b8081747e13400002102800047380b4816402707e13400003102800056a02707f134000047618102800077380b6816402701813400005743f102800087380b4816402703f134000067640102800097380b68164027040727fc2af00141340000713410008241f261f4e754fefffd848d75c1c2f2f00342f2f003449ef00272f0c4ebaff16362f003a9dce4fef000cc6fc001e141ca540b08e64000086267c100b14cfa7441013227946c82456d3fc0008ed80121345ee01e9528ed5c3c084c28479fc18b24c0408004c0418002040d1fc100a4ece7009d3c11382a8001182a800b08e66ae1013227946c82456a7421213d3fc0008ed80c082c2824c0408004c04180078022040d1fc100a4eced3c11384383e1184383e4cd75c1c4fef00284e75267c100b14cfa7441013227946c82456d3fc0008ed80121345ee003f528ed5c3c084c28479fc18b24c0408004c0418002040d1fc100a4ece7009d3c11382a8001182a800b08e6600ff2a6000ff782f02720f206f0010a942226f00081010c08112807190e8881200b4806402720413410003721f741010280001c0811200b4806402721013410001a341740f71a80001ea88c0811340000a10280002c082740b1200b4806402720b13410002740c71a80002e8881200b4806402720c13410006747e102800037380b4816402707e13400004102800046a02707f134000057418102800057380b4816402701813400007743f102800067380b4816402703f134000087440102800077380b4816402704013400009727f10280008206f000c241fc28020814e75598f2f0a2f02202f0010222f0014206f00184a80672c4a81672845e8ffff743fb48a651e747fb4af001c65162f4800182f4100142f400010241f245f588f6000d944241f4280245f588f4e75222f00044a81675a71fc0919b0af000864502001204106800000004052884a28ffff663eb08866f42041200141e8004806800000005052884a28ffff6624b08866f4204106810000085941e80059719052880c80000000ff6608b28866f0a3404e7542804e754fefffd848d73cfc262f002c4a8367000168202f00300c80000009196300015a4aaf003467000152206f0034723f18280100200453807180b2806500013c4aaf003866122f2f00302f034ebaff4e508f4a806700011a7984246f00344281204a1010a3457580ba826500010eb284650001144a0066000102528158887040b08166de264322432843428547eb005943e9007949ec089aaf41c2852805e68caf48a34291c4d1c37190e2a0c0824a1267000132142a000116824a1267000120142a00021742000d4a126700010c142a00031742000fa342e3aa12104a12670000ee828210814a8066044a12673e420042143a7c000f42819284d2839bc4307c004f194000012002468091c41e353800ce801b8738002a411e2d001fce801b47001f12303800c08111803800204b4281101846804a0056c0710044808280b1c966ee307c001791c4d1c310104a1266784a816774848010825285588a47eb0020548c43e900207040b0856600ff2ca3404cd73cfc4fef00284e754cd73cfc42804fef00284e754a006700fef0102800017a787580598071805982ba8065dcab454c4528004a8066d275a800027a7eba8265be4a2800036db8528158887040b0816600fea06000febe4682c48060882e024687c2876000ff0e50c26000fef650c26000fee250c26000fed02f02202f000caf41206f0008b280651c73b00822a342b4816512721e74534c01080041f0083c7190b4806706241f42804e7571a800017232b28066f071a8000253804a80671410280002a541241fb3804a0057c0710044804e75241fa3404e754fefffc4203946c824560680c000000048d7440c0c8007efffff630c42804cd7440c4fef003c4e75207946c82456a7411039100b14cf75fc18b22f2f0040d1fc0008ed80c0814c020800487008004ebaff50508f4a8067c61039100b14d0720f77802f430020b28365b24880243946c8245641f90000000032002f4200241639100b14cf302f0042c2fc8ed81f43002fc0fc091ad081d4802c429dc82f40001c1030e80010c0b1fc0000000066f24aaf00446700024c71fc8e55206f0024d1c14a300800670002621039000000007180743f22005381b4816500ff422f2f004041ef00352f4000144ebadda0588f223946c8245606810008ed801639100b14cf342f0042202f00103243c4fc001e2042a74241e801f12609c68275fc18b24c023800d28312301800767fc6812f4300284aaf0048670c2203747f5281c4812f420028223946c8245606810008ed801639100b14cf342f00423243c4fc00182042a74241e801232609c68275fc18b24c023800d283767f73b01800b6816500fe9e2f2f00282f012f00486f003d4879000000004ebad4f62f2f00584879000000004878091a4879000000004ebafc0c4fef00244a806700fe68226f0024b3f946c824566600fe5873b9100b14d0b2af00206600fe4a73af002f75b9100b14cfb4816600fe3a226f001c93fc0000000041f9000000002f49002045f0e800121875922f4a00147781b682670e1481226f002045e8ffff13928800b1fc0000000066d82f2f0028486f00352f2f00482f40001c4ebaf8f8a742a34e260e122f003b227946c82456d3fc00095048c2822f410038242f003812114fef000ce5ab828312811239100b145e8283260e13c1100b145e207946c82456d1fc0009b332a350a379100f85984eb940027e002c7c46c7d48c222f0040202f001043f900000000e3ab2f43001846831f43001741e9ffe0528873a8ffff0c81000000ff6678b1c966ee91c81216162f0017240843e90020c28382821cc1bdfc46c7d4cc66ce2f2f00402f4000144eb94009da20588fa37946c7c72c4cd7440c202f00104fef003c4e754878091a4879000000002f4100184ebafa42508f222f00104a806600fd9a4cd7440c4fef003c4e7571fc8e53103008006000fd9c142f001b304260864e56ffe041eeffea2f0a2f0273b9100b14cc2f012d41ffe04ebadb34322effe2588f207946c82456d1fc0008ed803d6efff2fffd1d6efff4ffff2d6effeefff92d6effeafff5c2fc001e1039100b14cf2241a74143e901f1c08173fc18b24c010800d1c012309800707fc280ab407581b0ae0008657a43eeffead3ee0008206e000c7391d1c14a886d000082246e0008203c0000000071b20800b1c06c022008b0816740128020022f00486effea2f2effe041faf73a2d48ffe44e9042a7a3672f2effe04ebafbfe4fef0018206effe44a806744a1674eb94004d948a37946c7c72c588f242effd8246effdc4e5e4e75ad40b0ae00086742222e0008206e000c43f618e97391d1c14a886c804a8167d442001280200260902f02486efff52f2effe04e904fef000ca1674eb94004d948a37946c7c72c588f60aa202e000cd0824a806d3c727fb2806c02707fb08267942f00486effea2f2effe041faf6922d48ffe44e9042a7a3672f2effe04ebafb564fef0018206effe44a806600ff5860984a016700ff6042802f00486effea2f2effe041faf65a2d48ffe44e9042a7a3672f2effe04ebafb1e4fef0018206effe44a806600ff206000ff60203946c824560680c00000002f020c8007efffff62084a398000001567064280241f4e751239100b14cc207946c82456a7421039100b14cfd1fc0008ed807381c0822f0173fc18b24c010800487008004ebafa58508f4a8067c42039000000004a8066ba4a3946c7d8d866b44ab9460d173a66ac4ab9460d169457c0241f710044804e754fefff78428148d75cfc242f008c284245ef00289dce28024283264a06840000003c49ec002271b41800a346bc80650c41f648007e537190be80674252814dee001e47eb000cbdfc000000f066d82f02206f009442854e90588f91c80b0366000086528541e8001e45ea000cb1fc000000f066e84cd75cfc4fef00884e7571a800017c32bc8066b471a8000253804a80670a71a8000255804a8066a0a340e3a891c8868043f6883cab47be88642c2c08ad474c47600043f60800700c43e901ecd3c21791880042115288b0886700ff6e43f6883cab47be8865d4d3c2179188004211528860be428147f02800ab44b881651449f21800ab442242d3c11194983c5281b88164ec2c01ad474c47600449f21800528143f34800780c135401ecb88166ca528541e8001e45ea000cb1fc000000f06600ff286000ff3c487a256e2f2f00084ebafebc508f4e75203946c824560680c00000002f020c8007efffff62084a39800000156706241f42804e751239100b14cc207946c82456a7421039100b14cfd1fc0008ed807381c0822f0173fc18b24c010800487008004ebaf88a508f241f4e75203900000000b0b946c82456670442804e751039100b14cfa741c081b0b90000000066ea71b9100b14ccb0b90000000066dc6000ff724fefffec70312f0a2f02226f0020a342206f0024b08956c173014481b4886700008ea340e3a82439000000002f420014c4804a82665e4a886632a340244174fd45f21a00d08a45f90000000020320c0022005381b48165322f4900202f480024241f2240245f4fef00144ed12441a54045f21a0074fdd08a45f90000000020320c0022005381b48164ce241f245f4fef00144e754a8866f24680c0af0014241f245f23c0000000004fef00144e752f4100102f4800082f49000c4ebafeb4222f0010206f0008226f000c4a806700008a103946100b1d08000005667c703eb089677c7431b48966702f4100102f4800082f49000c4ebafcac222f0010206f0008226f000c4a806750a34081b9000000001039100b14cca367a36771802f004ebaf78c4fef000c4a80677048780020203c000000002f004eb94005a2b8a1674eb94004d948a37946c7c72c4fef000c241f245f4fef00144e7542806000fee04a3946c7d8d866f24ab90000000057c0a54183b900000000a1677100448023c0000000004eb94004d948588f241fa37946c7c72c245f4fef00144e7548780020203c000000002f004eb94005a2b8a1674eb94004d948a37946c7c72c4fef000c608e203900000000b0b946c8245667024e751039100b14cfa741c081b0b90000000066ec71b9100b14ccb0b90000000066de4ebafd7e4a8067d6a37900000000a379000000004eba224ca1674eb94004d948a37946c7c72c588f4e75203900000000b0b946c8245667024e751039100b14cfa741c081b0b90000000066ec71b9100b14ccb0b90000000066de4ebafd244a8067d642b900000000a379000000004eba21f2a1674eb94004d948a37946c7c72c588f4e75203946c824560680c00000002f020c8007efffff6232203946c82456a7421239100b14cf06800008ed80206f000c41e8ffdec28275fc18b24c021800af42d08122089280b4816408202f0008241f4e75a342b4af000865f02f012f004ebaf57a508f4a8067e2ab6f0008202f0008241f4e752f032f024ab90000000067084ebafcd64a806672203946c824560680c00000000c8007efffff6236223946c82456a7431039100b14cf06810008ed803040202f00100680ffffffde2408c48377fc18b24c032800d2829081af42b480640a202f000c241f261f4e75a343b6af000c65ee2f002f014ebaf4f0508f4a8067e0241fab40261f4e75203946c82456a7421239100b14cf77fc18b220790000000006800008ed8041e80022c2824c031800d081d088b0af00106600ff5c241f203900000000261f4e754fefffc4203946c824560680c000000048d74c0c0c8007efffff62000166af40b0af00446500015c223946c82456206f004091c12c48ddfcfff712802f41002473fc18b2200e4c41000220424a8266000132bdfc000062c762000128222f0044a342246f004043f218227391b48164000178a36f0020222f0044701e4c0018004aaf004866624ab900000000670001062f4100142f4800184ebafb84222f0014206f00184a80670000ec203946c8245606800008ed801439100b14cf3242a7422609c68275fc18b24c023800d083b0af0040660000c0262f0044b6b900000000660000b2a56f00482f2f00442f2f00442f41001c2f4800204ebaf3a6508f222f0014206f00184a80670000e8226f0040203c1001614e90af002441f1183c43f118422209227c100162fe93ef00241190080045e801b0139288005288b28866eea340b0af0048662c73fc18b2200e207c46c8245623d000000000a379000000004c410000222f004423c10000000023c0000000004cd74c0c202f00204fef003c4e754cd74c0ca36f0020202f00204fef003c4e752f2f00442f2f00442f41001c4ebaf2fe508f222f00144a806700ff5e4203206f0040203c1001614e226f004090af00241183183e1183183d1183183c41f1183c43f118422209227c100162fe93ef00246000ff4877912f4300206000fe86226f0044743248690001487900000000200f06800000003b2f002f4000282f410020246f004c2f48002445f2183c2f4a00344ebaed3214bc0053226f004c222f0020244145ea003f1382183d74021382183e224143e901e9202f00284fef000c2f490028206f00182f4a002c226f0028a542d3c8b488641826405288246f0040740915939800b4886700fe90528060dc246f00402640226f002cd3c85288159b9800200b60c6518f2039460e5e302f0b2f0a4a80671047f900000000b7f9460e5e2c670a4280245f265f508f4e75204041e800242f48000c2f082f40000c4eb94003567c226f000c588f4280246900282f1ba16745eaffe92f0aab672f2f001c2f3c400ba8762f4000204eb940012bd84fef0018202f0008b0b9460e5e4067165f8aa341b2806640245fa37946c7c72c265f508f4e75226f000c2051a167486a00054868fffb486affffa7672f092f4000204eb9400122544fef00185f8aa341202f0008b28067c02f1ba1672f0aab67a3402f2f001c2f3c400ba8762f4000204eb940012bd84fef0018202f0008b0b9460e5e40668a609e4ebaf8384a80670001004ab9460e5e30660000f64ab9460e70e0660000ec207c46c82456a74123d0000000001039100b14cfc28023c10000000071b9100b14cca567ad672f3c460e5e3823c00000000042b90000000042b9000000004eb94007ec604fef000c207946c82456a7411039100b14cf227900000000d1fc0008ed80c08173fc18b24c010800d1c071b098222f002f3c460e5e384eb94007edb041f90000000023c8460e5e28203c0000000023c0460e5e2c42b9460e5e342f3c4006d754a36742a7a167487800404878006e4eb94005829c4fef002023c0460e5e304a80672442a74879000000002f004eb9400570b82f3c400ce0c44eb9400314944fef00106000fe084e754ab9460e5e30670e203c00000000b0b9460e5e2c67024e754eb94006d75442b9000000004eba1bec4ef94007893c598f4ab9460e5e30670e203c00000000b0b9460e5e2c6704588f4e754ebaf73e4a8067f42239460e5e40a340b08165e82e814eb94006d7544ebaf7224a8067d823d700000000a379000000004eba1b96a1674eb94004d948a37946c7c72c588f588f4e754feffff4222f0010206f00144ab9460e70e0677e4ab90000000066122f4800142f4100104fef000c4ef94007893c2f4100042e884ebaf6c2222f000420574a8067da4ab9460e70e067d22039000000002f4000084eb9400789e442b9000000004ebafe024ab9460e5e306726203c00000000b0b9460e5e2c66182f2f00082f3c460e5e384eb94007edb04fef00146000fce24fef000c4e75518f222f000c206f00104ab9460e70e067124ab9460e739a660aab40b0b9460e738e67102f4800102f41000c508f4ef94007909c2f4100042e884ebaf5ca222f000420574a8067dc4eb9400789e4508f6000fd7a598f4eb940031f282e804ebaf5a64a80672c4ab90000000066244a3946c7d8d8661c4ab9460d173a66144ab9460d1694660c2f174ebacaa02f400004588f2017588f4e75598f2f02203946c824560680c0000000222f000c0c8007efffff62084a39800000156708241f2001588f4e751039100b14cc207946c82456d1fc0008ed8075801039100b14cf2242a7422f09c08275fc18b24c020800487008002f41000c4ebaedea508f222f00044a8067b84ab90000000066b02f41000c241f588f6000ca144feffff4ab402f02222f0014206f0018b0816408241f4fef000c4e75203946c824560680c00000000c8007efffff62e44a398000001566dc1439100b14cc227946c82456d3fc0008ed801039100b14cf75822f42000ca742c08275fc18b22f2f000c4c020800487108002f4100102f48000c4ebaed56508f222f00084a8067944ab900000000668c4a3946c7d8d866844ab9460d173a6600ff7c4ab9460d16946600ff724ab9000000006600ff682f6f000400182f410014241f4fef000c6000f0a62f02ab40b0af00086406241f42804e75203946c824560680c00000000c8007efffff62e64a398000001566de1239100b14cc207946c82456a7421039100b14cfd1fc0008ed807381c0822f0173fc18b24c010800487008004ebaecae508f4a8067a84ab90000000066a02f2f000c206f000c486800064ebaf02c508f241fa3404e754e56fff0223c000000002f02243c0000000020394004e1ec2d41fff0b4b900000000670c202e0008242effec4e5e4e754ab98000001267ec207c46c8245622100681c00000000c8107efffff62d6227c100b14ccaf427391b48165c812112050d1fc0008ed800c800000000057c075811239100b14cf71002242a7422f094480c28275fc18b24c021800487018002f00486efff04ebad2064fef00104a8067842240206900144a886700ff7a2239000000002039460d1684b1fc00000000661e2f012f002f2e00084e904fef000c242effec2d400008202e00084e5e4e752f012f002f2e00084e904fef000c242effec2d400008202e00084e5e4e7522794004e1ec2039800000122f024a806770203946c824560680c00000000c8007efffff625a207c100b14ccaf417190b280654c1010207946c82456a7421239100b14cfd1fc0008ed807180c28275fc18b2068000000c114c021800744dd1c141f00a00102800017390b4816612b3fc00000000660a71807256b280670810104280241f4e75a342b5b900000000a1674eb94004d948588f241fa37946c7c72ca3404e75af40b0af0004650e203c00000000b0b94004e1ec67024e754ab9400bc6c066f642af00044ef9400322284feffff42f0a4eba17c620394004e1ec2079400bc6c00c800000000066044a886608245f4fef000c4e754ab98000001267f0203946c824560680c00000000c8007efffff62dc71b9100b14ccaf41b28065d02268002841e800242f49000c42a72f48000c4869fff648780032a567a7672f084eb940012254487900000000a167246f002c45eaffec2f0aab672f2f00302f3c400ba8764eb940012bd84fef00302039000000004a806734246f000c45eaffe4487900000000a1672f0aab672f2f00182f3c400ba8764eb940012bd84fef0018203900000000a341b280662aa167486a000648780032486affffa767518a2f2f001c2f40001c4eb9400122544fef00184aaf000467aa245fa37946c7c72c4fef000c4e754e56ffb0703348d7040c226e000cb0ae0008670001a67220b2ae0008670002247431b4ae0008670002227632b6ae00086700022022394004e1eca34041f9000000002d48fff0b089662a0c810000000057c020790000000074102d42ffc671004480b1fc000000006720b1fc000000006700008a2f092f2e00084ebabfa0508f4cee040cffb04e5e4e750c810000000066d84ab98000001267d0223946c824560681c00000000c8107efffff62bc73b9100b14ccaf43b68165b07231b2ae00086700025c7233b2ae0008670002147420b4ae00086694262effc687b900000000b0b9000000006306a379000000004ebafdfa4cee040cffb04e5e4e754ab9800000126700ff70207c46c8245622100681c00000000c8107efffff6200ff58247c100b14ccaf427392b4816500ff481d52ffca2050a742d1fc0008ed801239100b14cf77aeffca2f0377fc18b2c2824c031800487018002f00486efff02d49ffc24ebace5a4fef0010226effc24a806700ff047231b2ae0008670000e27032b0ae00086600fef04ab9000000006700fee6222effc6a16742b90000000083b9000000004eb94004d9484cee040cffb0a37946c7c72c588f4e5e4e75a36effc6a340b0896730203900000000222effc6c2804a81665020394004e1ec223c000000002f092f2e00082d41fff04ebabe30508f6000fe8e22394004e1ec243c000000002079000000002d42fff00c810000000057c071004480b1fc000000006600fe4c6000fe684a896600fe58222effc64681c2804cee040cffb023c1000000004e5e4e75a56effc66000ff76a96effc66000ff6e76082d43ffc66000ff642440206a001c4a886700fe0e222effc683b9000000002039460d1684b1fc00000000660000861039100b14cca367a36771802f004ebad96e4fef000c4a80672e48780020203c000000002f004eb94005a2b8508fa1674eb94004d948a37946c7c72c588f4cee040cffb04e5e4e7548780020203c000000002f004eb94005a2b8508f60d0222effc620390000000083b9000000004a806700fdfa538023c0000000004ebafbea6000fdee2f004e90588fa1674eb94004d948a37946c7c72c588f60a2a367487800312d40ffc24ebabcf2508f24390000000073b9100b14cc202effc22d42ffc64a8267000362b08265000364206efff02d48ffbe4a886700045c242800082d42ffc6224143e90c112409d482207946c82456d1fc0008ed801639100b14cf2d42ffcea742c68275fc18b24c023800d1c3d1eeffce1628000175901d43ffca764db682660002b84a80670002b271aeffca226efff0b0a90008670003ba10104aaeffbe670002a02041d1fc8000666e101075b9800000027180b480670002de34012601203c00000000eb8b41f9000000002d48ffe042aeffdcc4fc004422430483000000002d43ffec2042243cb93897029489d1fc46c76dec2d42ffe8227946c82456247c100b14cf1d52ffcda7432440d3fc0008ed801d5affdb142effcd200a246effecd5c02d4affd6c48377fc18b24c032800d3c2142effdb1382a800247c100b14cf16123243a7432409c48377fc18b24c032800262effd62242d3fc100a4ece142effdb13823800a743227946c82456d3fc0008ed801d52ffd9246effe02d49ffe452aeffe01d5affca142effd9246effe8d5c82d4affd2c48377fc18b24c0328002242142effcad3eeffe41382a8001639100b14cf3243a7432409c48377fc18b24c032800262effd22242d3fc100a4ece142effca138238004aaeffdc6706116effdbffe010eeffca0c80000000006600ff082001e988224006800000184243e918322d40ffca207946c82456a7431039100b14cf75fc18b2d1fc0008ed80c08342034c020800a742d1c01183980077fc18b21039100b14cfc0824c0308002040d1fc100a4ece4200118098005289b3eeffca66b24aaeffbe6700019c207946c82456a7421039100b14cf327c004d77fc18b2d1fc0008ed80d1eeffcec08234094c030800a7431182080075fc18b2206effce1039100b14cfc08336094c020800d1c0d1fc100a4ece10834aaeffbe670000c6207946c82456a7421039100b14cf2601d1fc000905a3d68343eeffc9247c100a66f1c08275fc18b2d1c3d5c377fc18b24c020800a742119108001039100b14cfc0824c030800159108002d41ffc24ebab9a8222effc24aaeffbe6700faba226effbe206900104a886700faacb1fc000000006600015a2f014ebadd44588f4ebaf8926000fa964aaeffbe6600fd64207946c82456a7421039100b14cf77fc18b2d1fc0008ed80d1eeffcec082744d4c03080071b00800b4806700fd364ebaf8546000fa5871fc00ff2d40ffc66000ff3242aeffbe6000fcb642aeffbe42aeffc66000fcaa2041d1fc80006676101016398000000330432601eb8b2408b580340141f9000000002d48ffe022430483000000002d43ffec4a0057c0c4fc00442042243cb938970294897100d1fc46c76dec2d42ffe844802d40ffdc203c000000006000fd04207946c82456a7421039100b14cf327cffff77fc18b2d1fc0008ed80d1eeffcec08234094c030800a7431182080075fc18b2206effce1039100b14cfc08336094c020800d1c0d1fc100a4ece10834aaeffbe6600fe686000ff28b3eeffbe6700f972206900104a886700fc42b1fc000000006700fc3842a72f012d41ffc24e90508f222effc26000fc24a3672f014e90508f4ebaf73a6000f93e42aeffc66000fba84e56fff0223c000000002f0220394004e1ecab422d41fff0b4ae0008650e43f900000000b3f9000000006708242effec4e5e4e754ab98000001267f0207c46c8245622100681c00000000c8107efffff62da227c100b14ccaf427391b48165cc12112050d1fc0008ed800c800000000057c075811239100b14cf71002242a7422f094480c28275fc18b24c021800487018002f00486efff04ebac7644fef00104a8067882240206900184a886700ff7e2239000000002039460d1684b1fc00000000662a2f012f2e000c2f2e00082f004e904fef0010a1674eb94004d948a37946c7c72c588f242effec4e5e4e752f012f2e000c2f2e00082f004e904fef0010a1674eb94004d948a37946c7c72c588f60d44e56ffd4227c46c8245648d71c0c24794004e1ec203c00000000761c26512d40fff0b5fc0000000057c01239800000037100448030412239000000002408e7aab580240bb580b5fc00000000660002940a8000000000b2806700008223c00000000020110680c00000000c8007efffff626a2851a74375fc18b21039100b14cfd9fc0008ed80347c03f0267c46c76dce223c80006676c0834c020800d9c041ec18232d48ffe8206effe82248764d101075a1b68266107180206efff0b0a800086700019c101154aeffe8528147eb004445ea00200c818000667e66ca4ab98000001267000208207c46c8245620100680c00000000c8007efffff620001f073b9100b14cc2010af421639100b14cf3043b481650001f42608a742c68275fc18b206800008ed804c023800204345f008004ab9400bc6c0660002ca2f012f0aa367486efff02d41ffec42b9000000004ebac59c4fef0010222effecb2b9000000006700035c42b90000000023c1000000004a80670001b045f900000000267900000000b7ca660002224a93670000c84ab900000000660000beb7fc0000000057c02f0b2200448128414eb94003146c42b9000000002079460d165c588fb7fc00000000670001c24a88670001944a906600018e41f9000000002d48ffe845f900000000206effe852aeffe8719891c8c0fc00182240d3fc46c7d8de203188000c80000000006704258088005888700cb08866e845ea000cb5fc0000000066c442932f0b4eb940031494b7fc0000000057c023cb00000000588f4480340c71807382b2806710a1674eb94004d948a37946c7c72c588f4cee1c0cffd44e5e4e754a34a8006700fe62207946c82456a7421039100b14cf77fc18b2d1fc0008ed80c0824c030800d1c042001180a8001039100b14cfc08242024c0308002040d1fc100a4ece1182a80020411028fff875b9800000027180b480670000ac2d41ffec4ebab440222effec528154aeffe847eb004445ea00200c818000667e6600fdca6000fdfcb280670623c0000000004ab900000000670000f873b9100b14cc203946c824561039100b14cf42b900000000b2b9000000006700012e42b90000000023c1000000002039000000004a806700ff264ab9000000006600ff1c0c800000000057c12f00240144824eb94003146c42b9000000002079460d165c2842588f42006000fed8101075b9800000037180b4806600ff4842132d41ffec4ebab384222effec6000ff424ab9400bc6a466d041f90000000047f9000000002d48ffe845f9000000006000fe3c4ab9000000006600fea44a8b660001402079460d165cb5fc00000000670000e64a886700fe884a906600fe8299cc264a41f9000000002d48ffe845f9000000006000fdf84cee1c0cffd442b90000000042b9000000004e5e4e752679000000004a8b67602f012f0aa367486efff02d41ffec4ebac2d04fef0010222effecb2b900000000672042b90000000023c10000000045f9000000006000fd3a42b9000000006000fed84a80670aa543b6b9460d168467de42b90000000045f9000000006000fd122041744d41e80c1143f28a00a37900000000102900017791b483660e7180206efff0b0a80008674a10112d41ffec23cb000000004ebaf178222effec6000ff624ab9400bc6a46600fda099cc264a6000ff1c4a806782a540b0b9460d16846700fcaa42b90000000045f9000000006000fca0a34b2d41ffec23cb000000004ebaf12e222effec6000ff18b7fc0000000057c02f0b260044834eb94003146c42b9000000002079460d165c2843588fb5fc000000006700fe64264a4a8a6600fc9c42006000fd0a4fefffc048d74c7c4ebafac44ab90000000067104ab9460e70e06600047042b9000000004ab900000000660002c6203946c824560680c00000000c8007efffff63000108a3412039800065b8b2806700040e23c000000000263946c82456428273b9100b14cf2f41002879b9100b14cc247900000000203900000000b6b900000000670002944a8a6700035e4a80660003bc2a2f002842b90000000023c30000000023c50000000023c4000000002079460d165c4a82670000884a88670000824a90667c223c00000000207c46c7dd7643f9000000002010b0816704238088005888b1fc46c7dd8266ec207c46c7deae43f9000000002010b0816704238088005888b1fc46c7deba66ec4ebadfee23c0000000004a806700039241f90000000042902f084eb940031494a167a379000000004eb94004d948a37946c7c72c508f4cd74c7c4fef00404e75247946c82456a7451039100b14cf7dfc18b2d5fc0008ed809dce428247fada3cc0854c060800d5c02f0e2f0a4e93508f4a806708a340220ee3a88480528e7a08ba8e66e42039800065b8a345ba80670001ea23c000000000263946c824561a39100b14cf1f45002f7d8579b9100b14cc2f4600283c7c01f1428047eafe4d0102670a73b3e800a345ba81675452804dee001e7208b28066e6af45ba84650001f64a324822660001ee203c400d301c23c0400d5f4c4a826700fe6e4ab98000001257c224790000000020390000000075024482b6b9000000006600fe62600000f02f0041ef00392f4000242f4100284ebab854207946c82456d1fc0008ed801a39100b14cf3245a7452c09cc857bfc18b24c056800d1c61c30e80030467c7f2a08ca86a7462e85486f0039202f00282f002f40002c4ebad4ae1a2f003b227946c82456d3fc00095048ca862f45003c1a11222f00302c2f003c4fef000ceda930452a088a8112851c39100b145e30462a08828513c1100b145e207946c82456d1fc0009b332a350a379100f85984eb940027e004dee001e202f002072085280b2806600fedc6000fef24ebae02e4a80670001a64ab9460e5e306600fd2a4ab9460e70e06600fd204ebae77c6000fd182c2f0028bcb9000000006600fd62b8b9000000006600fd584a8a670001a04a806700fd7447f9000000004a82670a4ab900000000670001a24ab9000000006600fde82f0b4eb94003146c42b90000000023c30000000023c40000000043ef002c588f23d1000000006000fd2cbab9000000006700fe104a826700017297cb4dfad86c42a77c0842a72f0b4e96528b4fef000cbc8b66eca37900000000263946c824561039100b14cf3c7c01f147eafe4d1f40002f7380428079b9100b14cc2f4100286000fdec203c400d31ae6000fe124a806740203c000000004ab9000000006600fd462f004eb94003146c42b90000000042b90000000023c30000000041ef002c588f23c40000000023d0000000006000fc84222f002842b90000000023c30000000023c10000000023c4000000006000fc64203c000000004ab9000000006600fce6609ea346bcb9000000006700fbf0a37900000000263946c82456428273b9100b14cf2f41002879b9100b14cc6000fbe64ebade944a806600fb9042b9000000006000fb8642b9000000006000fb8641f90000000042902f084eb940031494a167a379000000004eb94004d948a37946c7c72c508f6000fc6e4a806700fbd647f9000000004a826700fe6c4ab9000000006600fe624ebadc08b5c06600fe584cd74c7c4fef00404e75a37900000000263946c824561a39100b14cf1f45002f7d8579b9100b14cc2f4600286000fc96202f00040c800000000567044efa038c41fa023020084e75400b3eac400b3e98400b7c67400b5413400b7a63000000004fefffec48ef030200082e802f4800044ebae0604cef030200084fef00144e754fefffe048ef0307000c2409d48006820008ed802e822f41000474000c8400000005660274012f4200084ebae15e0c8400000005660228004cef0307000c4fef00204efa031248794005a61c600648794005a8562239460d5c304fefffe048ef030d000c2609d68006830008ed802e832f42000476000c8100000005660276012f43000826014ebae1020c83000000056702200322004cef030d000c4fef00204e7516102f0071036100ff362600201f79034879400bb7044ef9400585e67110610000582f004879460e73864ef940078890610000124ef94003d722610000084ef94004c3746100fef841fafedc22300c004e7571104fef00186100fee44ef94003c986711061000012b48066064ef9400786ce4ef9400786fc4fefffec48ef030200082e802f4800044ebadf984cef030200084fef00144e752f082f01207946c8245673b9100b14cfc2fc18b2d1c173b9100b14ccd1fc0008eda271b01800221f205f4e750c820000000566344fefffe448ef0303000c2e8b2f4300044ebae7a22f4000084cef0303000c4aaf00084fef001c67064ef94003a6246100ff9c24004efa01be0c8600000005662a4fefffec48ef030300042eaf005c4ebae6222f40005c4cef030300044fef00142f006100ff682c00201f4efa01964eb94005213c4eb94007e9404ebaf89c4ef940052228564543544f5200004878ffff4878ffff4ebae5984ef94004e4d04feffff048d703034ebadb384a80670c4cd703034fef00104efae2ee4cd703034fef00102f0a4ab9460e70e04ef9400791ec4feffff048d703034ebae1da4a80670a4cd703034fef00104e754cd703034fef00104fefffe848d73c0c4ef94006d78c7c010c800000000566224feffff048d703034ebadacc4a80670a4cd703034fef0010600c4cd703034fef0010bc8065064ef940077b624ef940077b704efada924fefffa048d77cfc4ef9400023204eb9400339704a80671e4feffff048d703032f024ebae872588f4cd703034fef00104ef940083b7e4ef940083b062f2e00084878ffff4eb940031ee04feffff448d703022f004ebae6a0588f4cd703024fef000c4ef94004e1f44feffff048d703034ebae7804a804cd703034fef0010660c2279400cfeda4ef9400322ec4e7500000000000000004ef9400365500000000000004ef9400334de0000000000004ef94007982200000000000000004ef94003a53600000000000000004ef94003cda000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffff0000000000000000000000000000000000000000ffffffffffffffff31000000000000000000000000000000000000000000000000003e00000000000000000000000000000000000000000000000000ff00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000002000000000000000000000000000000000000000000030000000000000000000000000000000000000000000400000000000000000000000000000000000000000005000000000000000000000000000000000000000000ff0000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffff0000000000000000000000000000000000000000ffffffffffffffff330000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000003100000000000000000000000000000000000000000000000000ff0000000000000000000000000000000000000000000000000031000000000000000000000000000000000000000000000000003200000000000000000000000000000000000000000000000000ff00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000002000000000000000000000000000000000000000000030000000000000000000000000000000000000000000400000000000000000000000000000000000000000005000000000000000000000000000000000000000000ff000000000000000000000000000000000000000000564543004f464600465744000052455600564543544f522047454e455241544544004e4f204348414e474500ab204d414348494e453a564543544f5220bb00564543544f52004300432300440044230045004600462300470047230041004123004200545950450044454e5300524f4f54005343414c00474154450041434e540053454544005350414e004f46535400524f540052505400444952004f43540056454c0050524f420048554d4e00303031205354415449430030303220464c455800434852004d494e004d414a00444f520050454e540000000000000000000000000000000000000000000000000000564543544f5220535243000000564543544f5220414d50203100564543544f5220414d502032000b0b00010030010c0c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000033203132000007000000400000050006000000020000000000000056000000010000000000000000000000000000000000000000000102030c060d050407080a090b0e0f1010000102030405060708090a0b00000d0e0f100b047e7f7f0c183f4001097f1517000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000fff05ad0ab506ad04a900000000000000000000000000000000000000000f100b047e7f7f0c183f40010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b0b000120300c0c00000000000000000000000000000000000000000000000100000000000000000400fff10000000000000000000000000300000100000000000000000000000003000003000000000000000000000000030000050000000a000000000000004c02000001000000130000004c00000074020000010000001e00000054000000300100000500000027000000c00000055e020000010000003e0000016a0000000a01000007000000450000061e0000013e0200000100000054000000200000000401000003000000630000001c0000000401000003000000730000002400000192010000030000007c000000800000003001000007000000860000117000000048020000010000009700001120000000500200000100000000000000000000000003000006000000a80000075c0000016402000001000000b90000008c0000000401000005000000c3000000000000000401000003000000d3000000180000002701000007000000dc000000000000001801000007000000e60000011e0000004401000007000000f1000000ec00000012010000070000028c000008c00000029e02000001000000fd00000b5e00000132020000010000010a0000010e0000001001000007000001130000003f00000010010000070000011b000000fe00000010010000070000012500000c90000001fa02000001000001310000005000000030010000070000013900000e8a0000001e020000010000014700000ea80000001e020000010000015500000ec60000001e020000010000016300000ee40000001e020000010000017100000f020000001e020000010000017f00000f200000001e020000010000018d00000f3e000000ae020000010000019800000fec0000007402000001000001a500001060000000c002000001000001c2000011b8000001dc02000001000001d1000000500000003001000007000001d9000013940000000a02000001000001e30000139e0000000a02000001000001ec000013a80000000802000001000001f5000013b00000003e0200000100000168000013ee0000003e020000010000015a0000142c0000003e02000001000001ff0000146a000000d002000001000002080000153a000000d002000001000001840000160a000000d00200000100000176000016da000000d0020000010000014c000017aa000000d0020000010000013e0000187a000000d002000001000002110000194a000002e6020000010000022200001c300000068402000001000005a6000001b600000101010000030000023000000000000000400100000500000239000022b4000000460200000100000249000022fa000000cc020000010000025a000023c6000000b00200000100000274000024760000000c02000001000002870000256000000104020000010000029500002a360000033c02000001000002a4000002b70000091a01000003000002ac00002d72000001ba02000001000002bb00002f2c0000008402000001000002ca00000bf60000000401000003000002d4000031540000003602000001000002e1000000180000000401000003000002eb000000140000000401000003000002f50000001000000004010000030000037300000bd200000004010000030000002100000bda0000001801000003000003000000334a0000005a020000010000030a0000000400000004010000030000031600000008000000040100000300000322000033a40000005a020000010000032e0000000c00000004010000030000033b00000162000000080100000700000347000000b00000000801000007000003520000008400000004010000050000035c0000004c0000000401000005000003660000004400000004010000050000037000000050000000040100000500000378000000c2000000060100000700000384000000bc0000000601000007000003970000008800000004010000050000039f000000400000000401000005000003a9000000480000000401000005000003b2000000b80000000401000007000003ba00000bd60000000401000003000003c900000bf200000004010000030000035500000c060000000401000003000003d300000c020000000401000003000003de00000bfe0000000401000003000003e900000bfa000000040100000300000000000000000000000003000007000003f546c82456000000000000fff1000003fe0008ed80000000000000fff100000407000056f60000000000000001000004160000559e00000000000000010000041e0000538c00000000000000010000042a0000570200000000000000010000043900005400000000000000000100000447000054c600000000000000010000045b00005492000000000000000100000468000054e60000000000000001000004750000570e0000000000000001000004840000571c0000000000000001000004ee00000c4400000000000000030000049300000c9200000000000000030000049b000055d40000000000000001000004a7000056040000000000000001000004b3000056460000000000000001000004c00000563e0000000000000001000004d00000564a0000000000000001000004dc000056500000000000000001000004e900000d640000000000000003000004f600000dcc00000000000000030000050300000e1a0000000000000003000005100000019400000030110000070000052500000174000000141100000700000538000001880000000c110000070000054b000024820000000c120000010000055c0000248e000000d2120000010000056800002664000000d812000001000005760000273c0000004c120000010000058600002788000000661200000100000599000027ee000001e812000001000005ad000029d60000006012000001000005c100002fb00000013a12000001000005d6000030ea0000001012000001000005e70000565a0000000010000001000005f9000030fa0000005a12000001000006050000318a000001c0120000010000060c000055dc00000000100000010000061f000033fe00000072120000010000062700003470000000c6120000010000063700003536000002981200000100000641000001c40000000b1100000700000651000037ce000000f21200000100000665000038c00000010a1200000100000679000039ca0000002e120000010000068d000039f80000006412000001000006a200003a5c0000009812000001000006af00003af40000005412000001000006bd00003b480000004412000001000006ca00003b8c0000008012000001000006d800003c0c000000c2120000010000076900000c0c0000000010000003000006e000003cce0000008212000001000006ee00003d50000000fc12000001000006f6000000c800000024110000070000070200000d480000000010000003000007100000569600000000100000010000071d00003e4c000000a4120000010000072a00003ef00000002a120000010000073700003f1a00000116120000010000074a000056e800000000100000010000075d00004030000007be120000010000076400000d2c000000001000000300000772000047ee00000112120000010000077a0000490000000532120000010000078200004e320000052a120000010000078d00000c2800000000100000030000079b0000535c0000000010000001000007ab000053740000000010000001000007b8000053ac0000000010000001000007c7000053f20000000010000001000007d5000053fa0000000010000001000007e40000547e0000000010000001000007ee000054880000000010000001000007f80000544e0000000010000001000008060000546a000000001000000100000816000054a0000000001000000100000823000054b000000000100000010000083200005512000000001000000100000841000055520000000010000001000008500000558800000000100000010000085d000055a6000000001000000100000869000055b8000000001000000100000876000055ea0000000010000001000008830000561a0000000010000001000008910000565600000000100000010000089d000056680000000010000001000008a9000056c20000000010000001000008b7000056e8000000001000000100766563746f722e63006d675f6469727479006d675f666f7277617264006d675f736176656400766563746f725f67656e65726174652e706172742e30007363616c65730067656e657261746f725f70616765007372635f706167655f7265616479007372635f706167655f736f75726365007372635f7061676500666f726d6174732e370067656e657261746f725f776964676574007365636f6e646172795f77696467657400766563746f725f6d6964695f70616765006d6964695f76696577006d6964695f706167655f6275696c74007469746c65732e3200666f726d6174732e31006d6964695f6e616d6573006d6964695f6c61796f7574006d6964695f636f6e74726f6c006d6964695f6d61780066697273742e33006d6964695f62797465006d6964695f666f726d617400726f6f74732e30006d6964695f666f726d61745f30006d6964695f666f726d61745f31006d6964695f666f726d61745f32006d6964695f666f726d61745f33006d6964695f666f726d61745f34006d6964695f666f726d61745f35006d6964695f7061676531006d675f706167655f7669657700647261775f67656e657261746f725f7769646765742e706172742e3000666f726d61745f636f6e74726f6c00726f6f74732e3600666f726d61745f313000666f726d61745f3800666f726d61745f3600666f726d61745f313100666f726d61745f3900666f726d61745f37006d6964695f7365745f636f6e74726f6c006d6964695f67656e6572617465006c6f636b65642e3400766563746f725f6d6964695f79657300766563746f725f6d6964695f6b6e6f6200766563746f725f6d6964695f61737369676e2e706172742e3000766563746f725f6d6964695f61737369676e00736176655f73657474696e67730067656e65726174655f747261636b0073746167696e67006368616e67655f636f6e74726f6c0067656e657261746f725f7669657700656469745f7669657700706f6f6c5f636f6e7465787400706f6f6c5f62616e6b00706f6f6c5f7061727400706f6f6c5f747261636b00706f6f6c5f666c657800706f6f6c5f62726f77736500706f6f6c5f64697265637400706f6f6c5f73746174696300706f6f6c5f70656e64696e6700706f6f6c5f6c6162656c730068616e646c6572732e38006d675f616374697665006d675f7365636f6e64006d675f637572736f72006d675f6d696e65006d675f6172705f70616765006d675f6172705f73657475705f736c6f7473006d675f7365656e006d675f6f70656e6564006d675f73686f776e006d675f6b657973006c6173745f7472616e73706f7274006c617965725f67656e0073686f776e5f62616e6b0073686f776e5f706172740073686f776e5f747261636b0042414e4b5f50545200504152545f4f46460073745f6e616d655f7265706c61790073745f6e616d650073745f726f775f747970650073745f6d61696e5f7265706c61790073745f7372635f636f6d6d6f6e0073745f63686f6f7365725f726f775f747970650073745f6e616d655f7069636b0073745f706f6f6c5f6b696e640073745f656469745f7265706c61790073745f647261775f7265706c61790073745f656e6373002e706f6f6c5f73746f636b002e6c6973745f73746f636b002e7469746c655f73746f636b002e7469746c655f756e7369676e6564002e7469746c655f706f6f6c002e7469746c655f706c61696e006d675f6c6973745f6b657973006d675f706167655f6b657973006d675f706167655f656e637300766563746f725f636f6e74726f6c5f6e616d657300766563746f725f7363616c655f6e616d657300766563746f725f636f6e74726f6c5f6d617800766563746f725f6e6578745f7365656400766563746f725f7061636b00766563746f725f756e7061636b00766563746f725f67656e657261746500766563746f725f747261636b5f656d70747900766563746f725f77726974655f70687261736500766563746f725f7369676e65645f747261636b00766563746f725f76616c69646174655f706172740073745f76616c69646174655f706172740073745f73746f636b5f76616c69646174650073745f73656c65637465640073745f6b65790073745f73746f636b5f706f6f6c5f6f70656e0073745f747970650073745f63686f6f7365725f747970650073745f61737369676e00766563746f725f64656661756c74730073745f706f6f6c5f63686f6963655f647261770073745f706f6f6c5f63686f6963655f6f70656e0073745f706f6f6c5f63686f6963655f6c6566740073745f706f6f6c5f63686f6963655f72696768740073745f706f6f6c5f6c6566740073745f706f6f6c5f72696768740073745f647261775f706167650073745f73657475705f706167650073745f6b6e6f620073745f73657475705f6b6e6f62006d675f7061676500766563746f725f6d696469006d675f706167655f6c61796572006d675f706167655f73697465006d675f6172705f7365747570006d675f747261636b5f746170006d675f6e6f74655f73657475705f64726177006d675f73746f636b5f6e6f74655f64726177006d675f6b6579006d675f6c6973745f6c61796572006d675f6b6e6f62006d675f7469636b0073745f75695f7469636b0073745f656469745f6c617965720073745f6d616368696e655f6e616d650073745f7372635f6e616d65730073745f6d61696e5f636f6d6d69740073745f7372635f636f6d6d69740073745f7372635f636f6d6d6974320073745f6e616d655f610073745f6e616d655f620073745f73657475705f6f70656e0073745f63686f6f7365725f6f70656e0073745f73657475705f726f770073745f63686f6f7365725f726f770073745f73657475705f65646974360073745f73657475705f64726177360073745f7469636b5f686f6f6b0073745f7372635f647261770073745f706f6f6c5f6f70656e0073745f6c6973745f647261770073745f706f6f6c5f7469746c650073745f76616c6964617465006d675f7461705f73697465006d675f73657475705f73697465006d6f647765726b5f73746f636b5f34303033363534385f380000000634000003010000001c0000065000000301000001b6000006720000030100000040000006bc0000020100001170000006fe00000301000001b20000070400000301000000200000070a00000301000001ae00000710000003010000001c0000071600000301000000240000072600000201000011200000077e000004010000008c0000078e0000030100000000000007a600000301000001b6000007ce0000030100000028000007d6000003010000002e000007ec0000620100000018000007f4000003010000003a0000080a00000301000000400000081c00006201000000ec0000088800006201000000180000089a00000301000001b2000008a00000030100000020000008a600000301000001ae000008ac0000030100000000000008b2000003010000002400000eb800006201000000ed00000ed600006201000000ee00000ef400006201000000ef00000f1200006201000000f000000f3000006201000000f100001fda00000301000002b60000208c0000040100000040000022d00000110100000011000022e600001101000000220000233200006201000000ec0000236a000062010000010e00002ade0000030100000bd100002c2000000301effea16a00002c500000030100000bd100002e0400006201000001880000317200000301000000140000318000000301000000100000322e0000030100000bd2000032960000030100000bd2000032ba0000110100000011000032fc0000030100000bd2000033080000030100000bf60000332a00001101000000220000336600000301000000140000337400000301000000100000338400000301000000040000338a0000030100000008000033c00000030100000014000033ce0000030100000010000033de0000030100000004000033e400000301000000080000361200000301000000100000368c000003010000001800003692000003010000000c000036a00000030100000010000036a60000030100000014000038e80000030100000018000038f600000301000000140000390c000003010000001000003912000003010000000800003918000003010000000c0000396c0000620100000162000039d40000620100000162000039ea000003010000000800003a04000062010000016200003a3a000003010000000400003a40000003010000000800003ab8000003010000000800003aca000062010000016200003d5600006201000000c800003d5e0000030100000d4800003d6e000004010000008400003db8000002010000569600003e0a000002010000075c00003ebc000002010000569600003ed6000004010000004c00003efa000002010000569600003f3200000201000056960000407c0000020100005696000040940000030100000d2c0000409c0000030100000d48000040bc00000201000056960000410c00000401000000500000411200000401000000440000411a0000040100000044000041c8000004010000004c000041ce00000401000000500000420c00006201000000c80000422c00006201000000c80000423c0000020100005696000042480000030100000d2c0000426a00000401000000500000429e0000040100000050000042aa00000201000022b4000042d200001101000000110000430000001101000000220000431c00000401000000500000432a00000401000000440000441600006201000000c20000443200006201fffffcd50000454000006201000000c80000467600000201000024760000471600006201fffffcd50000474400006201000000c2000047ba0000020100002476000047f400006201000000c80000481400000401000000840000485a0000020100005696000048ac00000201000022fa0000491600006201000000c80000492400000201000056960000494800000201000056960000495200006201000000c80000495e000004010000008800004a4a000004010000004000004a5c000004010000004800004a66000004010000004c00004a6c000004010000004800004a9a0000030100000d4800004ab0000004010000008400004abe0000030100000d2c00004b00000002010000403000004b18000004010000008400004b2a0000030100000d4800004b32000004010000008400004be8000004010000008800004c0a000004010000004000004c10000004010000004800004c1a000004010000004c00004c20000004010000004800004c3c0000030100000d4800004c50000004010000008400004cc00000030100000d2c00004cf4000004010000004000004cfa000004010000004c00004d28000004010000004800004d30000004010000004c00004d36000004010000004800004d46000004010000004c00004d5e000004010000004c00004d7a000004010000004000004d9c000004010000004400004dd0000004010000004c00004de6000004010000004400004df80000030100000d4800004e0c000004010000008400004e1c0000030100000d2c00004e52000003010000000800004e860000030100000bd600004eb00000030100000c0200004eca0000030100000bf600004ed00000030100000c0200004ed60000030100000bfe00004edc0000030100000bfa00004ef8000002010000318a00004f420000030100000bf200004f600000030100000c0600004fd00000030100000bd6000050500000030100000c02000051500000030100000bfe0000515a0000030100000bfa000051960000030100000c060000519c0000030100000c02000051a20000030100000bfa000051ae0000030100000bfe000051b80000030100000bd6000051e20000030100000bd6000052200000030100000c28000052380000030100000c060000523e0000030100000bf6000052440000030100000c02000052500000030100000bfa000052560000030100000bfe000052640000030100000bf60000526a0000030100000c02000052700000030100000bfe000052760000030100000bfa000052800000030100000c0c000052940000030100000bd60000529e0000030100000bd6000052ca0000030100000008000052d4000003010000000c000052f00000030100000c06000053380000030100000bd600005388000002010000559e0000008c0000040100000054000002ee000062010000016a0000062800000301000000200000063e00000301000000240000065800006201000001940000066000000301000000ee0000066600006201000000800000066c000003010000003a000007860000030100000020000007980000030100000024000007ae0000110100000000000007b60000030100000028000007e0000003010000002d000007fe00006201000000000000080400000301000000ee00000810000062010000011e00000bb6000062010000010e00000c22000062010000003f00000c5000006201000000fe00000cec000011010000000c00000d08000062010000005000000d36000011010000000400000de4000062010000017400000dfe000011010000000d00000e42000011010000000800000e8c000004010000008c00000e9400006201000000ec00000eaa000004010000008c00000ec8000004010000008c00000ee6000004010000008c00000f04000004010000008c00000f22000004010000008c000010a4000062010000018800001202000062010000017400001236000011010000000d0000131a00001101000000080000132a00006201000000500000134c0000110100000004000013ce000011010000000d000013e800001101000000080000140e00006201000001740000144c0000620100000050000019ba00006201000000fe00001b6e00006201000000fe00001d6600000301000001b600001e0200000301000001b600001fa80000040100000000000020720000040100000000000021c0000004010000000000002246000004010000000000002256000004010000000000002aaa00000301000002b700002b00000003010000030700002bc400000301000001b600002bd200000301000001b600002bdc00000301000002b700002c2600000301000002b700002cd0000003010000033000002d3c00000301000002b700002f880000030100000bf6000031560000030100000018000031b20000030100000bd2000031d20000030100000bda000032040000030100000bda000032f20000030100000bf60000334c0000030100000018000033a600000301000000180000347600000301000000080000350a00000301000000100000352e0000030100000004000035be00000301000000080000373400006201000001c4000037e000006201000001620000393600000301000000100000396000006201000000b0000039a8000011010000002c00003a72000003010000000800003aa8000003010000000400003b5c0000030100000bf600003bfa0000030100000bf600003c8e0000030100000bf600003cb20000030100000c0c00003d320000030100000bf600003dfe000004010000004c00003f94000011010000000400003fbc000004010000004400003fce000011010000003f00003fee00000401000000440000406e00006201000000c8000040840000040100000084000041b8000004010000004c000041f600000401000000500000423200000401000000840000431600000401000000440000436000000401000000440000441e00006201000000bc0000470a00006201000000bc0000480e0000030100000d48000048a0000004010000004c00004938000004010000008800004a780000030100000d4800004a7e000004010000008400004a90000004010000005000004ad400006201000000b800004ade000004010000005400004bee000004010000008400004c26000004010000008400004c32000004010000005000004c9000006201000000b800004c960000030100000d2c00004ca0000004010000005400004caa000004010000005000004cda00006201000000b800004ce4000004010000005400004d04000004010000004000004d3c0000030100000d2c00004d640000030100000d2c00004dd60000030100000d4800004e40000003010000000800004e58000003010000000c00004ea40000030100000bf200004eaa0000030100000c0600004f0400000301b9382e6400004f2400000301b9382d3800004f4e0000030100000c0c000050400000030100000bf2000050460000030100000c06000051700000030100000c0c0000517a0000030100000c0c000051840000030100000bd2000052260000030100000bd2000052860000030100000bd2000052de0000030100000c280000530e0000030100000c280000531a0000030100000c2800000c100000030100000c4400000c140000030100000c9200000c2c0000030100000c4400000c46000002010000318a00000c4a000002010000318a00000c4e000002010000318a00000c60000002010000318a00000c64000002010000318a00000c68000002010000318a00000c940000020100003c0c00000caa0000020100003c0c00000cc00000020100003c0c00000cd60000020100003c0c00000cec0000020100003c0c00000d020000020100003c0c00000d300000030100000d6400000d4c0000030100000dcc00000d500000030100000e1a00000d66000002010000403000000d6a000002010000403000000d6e000002010000403000000d80000002010000403000000d84000002010000403000000d88000002010000403000000d9a000002010000403000000d9e000002010000403000000da2000002010000403000000dce000002010000403000000dd2000002010000403000000dd6000002010000403000000de8000002010000403000000dec000002010000403000000df0000002010000403000000e1c00000201000047ee00000e3200000201000047ee00000e4800000201000047ee00000e5e00000201000047ee00000e7400000201000047ee00000e8a00000201000047ee000000000000020100000e8a000000040000020100000ea8000000080000020100000ec60000000c0000020100000ee4000000100000020100000f02000000140000020100000f2000000050000011010000004600000054000011010000004800000058000011010000004b0000005c000011010000004d0000006000001101000000500000006400001101000000520000006800001101000000540000006c000011010000005700000070000011010000005900000074000011010000005c00000078000011010000005e0000007c000011010000006100000080000002010000187a0000008400000201000017aa00000088000002010000142c0000008c00000201000013ee0000009000000201000016da00000094000002010000160a0000009800000201000013a80000009c000002010000153a000000a0000002010000139e000000a4000002010000146a000000a80000020100001394000000ac00000201000013b0000000b000000201000033a4000000b4000002010000334a000000cc000011010000003f000000d80000020100002476000000dc000002010000075c000000e000000201000022fa000000e400000201000022b40000011e000011010000006300000122000011010000006800000126000011010000006d0000012a00001101000000720000012e000011010000007700000132000011010000007c0000013600001101000000810000013a00001101000000860000013e000011010000008b0000014200001101000000900000014600001101000000940000014a00001101000000980000014e000011010000009c0000015200001101000000a00000015600001101000000a40000015a00001101000000a90000015e000011010000000c0000016200001101000000ae0000016600001101000000b90000017400001101000000c20000017800001101000000c60000017c00001101000000ca0000018000001101000000ce0000018400001101000000d20000019400001101000000630000019800001101000000680000019c000011010000006d000001a00000110100000072000001a40000110100000077000001a8000011010000007c000001ac0000110100000081000001b00000110100000086000001b4000011010000008b000001b80000110100000090000001bc0000110100000094000001c00000110100000098002e73796d746162002e737472746162002e7368737472746162002e72656c612e74657874002e72656c612e64617461002e627373002e726f646174612e737472312e31002e72656c612e726f646174610000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000010000000600000000000000340000572a000000000000000000000004000000000000001b00000004000000400000000000007d5c00000f3c0000000900000001000000040000000c0000002b0000000100000003000000000000576000000eb4000000000000000000000004000000000000002600000004000000400000000000008c98000001d40000000900000003000000040000000c000000310000000800000003000000000000661400000090000000000000000000000004000000000000003600000001000000320000000000006614000000d7000000000000000000000001000000010000004a000000010000000200000000000066ec000001cf000000000000000000000002000000000000004500000004000000400000000000008e6c0000036c0000000900000007000000040000000c00000001000000020000000000000000000068bc00000bd00000000a0000007a0000000400000010000000090000000300000000000000000000748c000008d00000000000000000000000010000000000000011000000030000000000000000000091d80000005200000000000000000000000100000000", - "sha256": "2901acaf1d196aab5f411b6acd06ce63787c1c010154fd8ddb11ec4a5510c69c", + "bytes": 38044, + "code": "7f454c4601020100000000000000000000010004000000010000000000000000000092bc000000260034000000000028000c000b2f021039100b14cfa742227946c82456d3fc000950481211c480a340e5a8828012811239100b145e808113c0100b145e207946c82456d1fc0009b332241fa350a379100f85984ef940027e002f027233202f0008206f000cb28067187420b480674a7231b280674e7432a749b4806706241f4e7593c9a341b288672c4a886702a54143f19a0074fdd28943f90000000022711c0022095381b48165d42f48000c2f400008241f4ed1428160d6a349a341b28866c860f2a549a341b28866be60e84feffc40720f48d77cfc206f03c871902f40004eb2806406740f2f42004e7010206f03c877a800012f430046b083640672102f410046700b206f03c875a800022f420042b0826406720b2f410042a940206f03c875a800032f420052b0826404a96f0052206f03c8707e73a800042f41003eb0816406727e2f41003e707f206f03c875a800052f420056b0826406727f2f410056700c206f03c875a800062f42003ab0826406720c2f41003a7218206f03c81028000875a800072c421f40005bb28264043c7c0018206f03c843eefff42c2f03cc102800092f49004a4a0067107240b2866500046c7180b08665000440206f03c4200f246f03c40680000003c0224a116f03cf010041ef02c0264850c1421113410003134100021341000126d9b08b66ea222f03d4283c9e3779b92e2f004e760b4282b981e7af760f43ef00c04bef01c02a09200142404840b380223c7feb352d4c0108002200e6a9b380223c846ca68b4c010800260042434843b183a740c08277c34a8067000088d6872a83264520022f480032222bfffc41ef03c049f01c00b6acfe00640a26815380598b4a8066e447f70c00260206849e3779b9206f00325283588d5885274200c0b6866764222f03d42403760fb981200142404840b380223c7feb352d4c0108002200e6a9b380223c846ca68b4c010800260042434843b183a740c08277c34a806600ff7c2a834a826600ff78428047f70c00260206849e3779b95283588d5885274200c0b686669c2a6f00527a1847f9000000007e64387c000c79f3da00266f004a70f42a6f004a99ce9aaf004297ef003adbef003a42af003642af00322f4800522f42002e2205740cd2804c4210060d04672cb08b6c00022e220cd2804a816d000216be816f0002182f400036740c52802e012205d2804c4210060d0466d45280720db28066be302f0048206f0052242f002ec0c35080e888671671c049f10c00201947f70c007001174002c0b9c966f0720c7c0c202f00425e804c41000573fc00fe92af0056286f004a22422a6f004a4287700c90af00422f450046c2ef03d2dbef003ad0854c4600057dfc00fe99ef003a2f4d004a242f003226434c461001eaa42a6f004e2f4a00522f6f03d40032a340c0841f41003d2f40004e2c0752874a10670000da223c85ebca6b7a0f4c071800262f0032283c7feb352db7810a81b5297a4d200142404840b3804c0408002200eaa9b380223c846ca68b4c010800220042414841b1814a82670001662001e0884c4200044df74c00282e005c0684fffffff4700fc081b08d642c7030c0814a8066084aaf004e6600016c202f00420801000667060680fffffff4b08c6d08b0af004a6e02280076182001e6a8a743c9fc00052a004c435000068400000040114400015480c0ef0040e48811400002a740c0864a80670000de0281003000004a81670000d2102f003d114000035888bc896600ff18246f0052260b4aaf03cc675871af005b783fb880650000be2a2f03cc206f03c8266f03c44c4500021828000a71c5222f03cc538543f30c009282242f03cc2c0152814c4260004a0467062c059c8020064c43000647ef03c041f36c0024e8ff00b5c966da4cd77cfca3404fef03c04e754481be816e00fdec52806000fdc2b08d6e18222f0032204041e8000c4df71c0052812f4100322d48005c220cd2804a816d1abe816f00fdd22f4000362e015280720db2806600fd886000fdc6448160e2102f03d3114000036000ff2e282f00366000feac2a2f03cc703f206f03c8266f03c44c450002222f03cc71c51828000a5385928243f30c00242f03cc6000ff40202f00466000fe94206f03c42c00246f03c4200f224a0680000003c0116f03cf010041ef02c026486000fbbe71807c40b0866400fb9660d04fefffe048d73c3c4ab900000000670e202f0024b0b900000000670000da41f900000000226f002493c81031880010c0b1fc0000000066f24bf900000000428243f90000000049f90000000045f900000000223c00000000265d91c810338800670c158088005288ab43b68866eed1ca4218b28866fa201c26004243484378182a00e8ad2800e08c13400003ab4012851344000213430001b082656a203c00000000781826002a0042434843e8ad2800e08c1340003358891345002c1344002e52825c8a5c81700c1343002db082668877fc5555202f0024283c5555555523c400000000a3790000000023c30000000023c000000000203c000000004cd73c3c4fef00204e75203c00000000781826002a0042434843e8ad2800e08c1340003358891345002c1344002e52825c8a5c81700c1343002db0826600ff1e60924fefffe0222f002848d77c1c226f00244a816708a341c2af002c528141f1180123c10000000028084ab900000000660ab1f9000000006700011c41f90000000093c81031880010c0b1fc0000000066f243f90000000091c845f900000000101152894a00670a14c05288ab40b08866eed1fc000000004218b1fc0000000066f6340141f900000000c4fc000d2242d3fc0000000010d9b1fc0000000066f630014df90000000043f900000000223c0000000047f900000000c0fc00062a40dbfc00000000719d244191c85d8a28730c0010348800670c158088005288ab40b08866eed1ca4218b28866fa7440201e72182600e2ab2200e0891340000358891343fffc1341fffe72671342002c24007004424248421341002e22085c811340002d70a41340002f1342fffdbdfc00000000669273fc5555243c5555555523c20000000042b90000000023c10000000023c400000000203c000000004cd77c1c4fef00204e754fefffd448d74c044242203946c82456227c20300c0c2f4800102040d1fc0008ed8042001239100b14cf3f420028243c0b0b00012f420020a7421f40002a302f00322f490024c28275fc18b2c0fc001e4c021800d1c173b0083e53814a81670001f64def001793c922090681000001e9d280a542b489641e1cb0180052897209b289671e22090681000001e9528ed280a542b48965e245f1083f52891cf0a80060c6102f0017720fa942c2807180e88830401f410020b4806500017e3008122f001874101f400023701fc0813040b4806500013c3408102f0019ea891f420021a342c282740fc4801f41002a12022042740bb488650001027180e8881f410022720c3040b280650000d6122f001a340871811f420026747eb480650000b0102f001b1f4100244a006d00008c122f001c1f40002574187181b480656871af001d1f410027723fb2806546122f001ee188758120427440b4886528100147ef00203f400028206f0010200820d320ef002430ef00284cd74c0410af002a4fef002c4e75724047ef002010013f40002860d4122f001e703fe188758120427440b48864b860de721871af001d1f410027723fb280649660da707f122f001c74181f4000257181b4806400ff7460d8727e102f001b1f4100244a006c00ff5260d8307c000c122f001a340871811f420026747eb4806400ff2a60d4720b7180e88830401f410022720cb2806400ff0060d0307c0010102f0019ea8934081f420021a342c282740fc4801f41002a12022042740bb4886400fec460c0307c0004122f0018741030081f400023701fc0813040b4806400fe8260b847ef002093c9244b22090681000001e94df1083fd280a542b489651a528914f0e80022090681000001e94df1083fd280a542b48964e614b018005289ad41b2896700fecc528a60c0518f2f0a2f02740f206f0018203946c824561239100b14cfb488655ea742c282242f001406800008ed80eb8a224275fc18b243e903e24c021800d081d3c0700cb088672a700db08867000088a941b288663273a9000243f90000000071b18800b28064022001241f245f508f4e7573917413c2fcaaabe4a960dc241f4280245f508f4e75227946c82456a7421039100b14cf222f0014d3fc0008ed80e989c08275fc18b2244145ea183e4c0208007416d3c071b1a800b4806720ad40b0886764241f43f90000000071b18800245f508f4e7573a900016000ff7e203946c8245606800008ed801439100b14cf2f40000c43f90000000071b188002240d3c1a741100275fc18b243e91832c0814c020800d0af000c1231080006810000004073816000ff34202f00145280241f245f508f4e754fefffe848d70c1c242f0020246f001c77b9100b14cc2f022f034ebafeb2508f2200a940b0826760780cb88267000150a540b082673aa743b68267000110700bb08267000124760ab6826754780eb882670001847010b082665841f900000000101814c066fa4cd70c1c4fef00184e75740c4c42100041f90000000020700c00101814c066da60de2f4a001c4cd70c1c2f4100202279400d3f104fef00184ed14a81662441f900000000101814c066b060b451824a82661020010680fffffff44a806d0000fe2200224aa34842807663b681644e7864760a20014c440000068000000030128020014c43000043f2880124004c4320042004068000000030158088005488740a4c42100042030680000000301280158388004cd70c1c4fef00184e757409b48164dc2040760a20014c43000043f2880124004c432004200406800000003015808800548860b8ab444c44100041f90000000020700c00101814c06600fefe6000ff004a81674441f900000000101814c06600fee86000feea2439400d3f08a5672f032f41001c4ebafd402f4a0024222f001c22424c0418004cef0c1c0008d2802f4100284fef00204ed141f900000000101814c06600fea46000fea6740ca548224a948112fc002d2202a3406000fefa4a816700feca203c1002c9809081e588224020514a886600fe72224aa34842806000fed6203900000000ad4141f9000000004c01080071b008002f4000086000fdea203900000000ad414c0108002040d1fc0000000071902f4000086000fdcc203900000000ad414c0108002040d1fc0000000071902f4000086000fdae203900000000ad414c0108002040d1fc0000000071902f4000086000fd90203900000000ad414c0108002040d1fc0000000071902f4000086000fd72203900000000ad414c0108002040d1fc0000000071902f4000086000fd544feffff048d70c0c207946c82456a743222f00142401eb8a226f0018d1fc0008ed8047ef001f2441d5fc8000666e43e903e21039100b14cfd3c275fc18b2c0834c020800d1c0119398001039100b14cfc0834c0208002040d1fc100a4ece11939800101275b9800000027180b480670a4cd70c0c4fef00104e752041d1fc80006676101075b9800000037180b48066e070444c010800206f0018d1fc46c76dc0119308004cd70c0c4fef00104e752239460d1684a9402f0a2f02b081654c4ab9460d173a66444ab9460d1694663c202f0018068000000c1171c0206f001441f00a001028000175902242744db489661a4aaf001067147180246f000c224020122440b3ea0008670a1010241f4280245f4e75a94284aa000c030267ee241f245f4e754feffff42f0e2f0271b9100b14cc2c6f00242f0041ef000d4ebaf846588fad40b08e675cab42200eb48e6402538071b7080920402f2f00302f2f003070fec0af003043f90000000073b1e8002f002001b1c164022008c0fc007f4c4100002f002f2f00302f2f00302f2f00304eb9400479b44fef001c241f2c5f4fef000c4e751039100b14cc227946c82456a7421239100b14cfd3fc0008ed807180c282c0fc001e204071fc18b241e801f14c001800d3c110318800727fc28020416000ff76518f2f02740b202f00182200206f00105c81226f00142f6f002000042f6f00240008b4816406241f508f4e752f6f000800242f6f000400202f41001c2f4000182f4900142f480010241f508f6000fef2598f2f02740b202f0014222f000c206f0010226f001c2f6f00200004b4806406241f588f4e752f6f000400202f49001c2f4000182f4000142f4800102f41000c241f588f6000feaa4fefffe448d7401c242f002441ef001171b9100b14cc2f004ebaf6ee588fad40b082676cab40b082653c71b728112202a3435581b6816500009255824a826700012aab434c43000141f900000000226f002020701c00101812c066fa4cd7401c4fef001c4e7571b72810780bb882660001124a80670000e6226f002041f900000000101812c067d4101812c066f460cc1039100b14cc227946c82456a7421239100b14cf77fc18b2d3fc0008ed80787f7180c282c0fc001e20404c03180041e801f1d3c110318800c0847663b68064587864760a2200a54e4c441001206f0020a74906810000003010c122004c43100124014c43200422040681000000301081206f0020d1ce740a4c42000142030681000000301081206f0020118398004cd7401c4fef001c4e75206f0020a34942817409b48064d02c49760a224122004c431001548924014c43200422040681000000301081206f0020d1ce60aa226f002041f9000000006000ff1a740c4c42000141f900000000226f002020701c006000fed6780ab88266144a806600ff3e226f002041f9000000006000fee851824a826600ff2822000681fffffff44a816d0e20017663b6806500ff186000ff6c206f0020740c94802002a54910fc002da3417409b4806400ff306000ff5c700a2f4000086000fe1c70082f4000086000fe12ad6f00086000fe0a71b9100b14cc4feffff441ef00012f004ebaf4fe588f4a2f000b671641f900000000226f0010101812c066fa4fef000c4e75226f001041f90000000060e84feffff42f0271b9100b14cc41ef0005ab422f004ebaf4bc71af000c588f41f9000000004c420001226f001420701c00101812c066fa241f4fef000c4e754feffff42f02740c71b9100b14cc41ef00052f004ebaf47e71af000b588f41f9000000004c420001226f001420701c00101812c066fa241f4fef000c4e754fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf43c71af0025588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf36c71af0023588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf29c71af0022588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf1cc71af0021588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf0fc71af001e588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf02c71af001d588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffd4700c48d7043c282f0034242f0030262f0038b084670001aea541b2846700026c7a0dba84670001c8a940b084670001d8207946c82456a7411039100b14cf2a02d1fc0008ed80e98dc08173fc18b222457a1645e9183e2f4a00184c010800d1c071b0a800ba80670001b641f900000000428143e91832700d2f4800202f49001cb081650000907a0bba81657ea940b08167782f01247c100b14cf2f022f41001c4ebaf16ea745207946c82456d1fc0008ed801f520033222f001c2240246f002843e9ffc02f49002c71b21800508f45ef0027226f001cd3c0102f002bc0857bfc18b24c050800a745d1c0119298001039100b14cfc0857bfc18b24c0508002040d1fc100a4ece119298005281700db0816400ff747a10ba816600ff78207946c82456a7411039100b14cf7bfc18b2d1fc0008ed80226f00180683ffffffc0246f002075b24800c081222f00184c050800a745d1c070161180180073fc18b21039100b14cfc0857a164c010800a7412040d1fc100a4ece118598007bfc18b2226f001cd3c2207946c82456d1fc0008ed801039100b14cfc0814c050800d1c0118398001039100b14cfc0814c0508002040d1fc100a4ece118398004cd7043c4fef002c4e75a5672f024ebaf0462f42003842af003c720c4c013800d6802f4300404cef043c00084fef00346000f4042f4300382f4200304cd7043ca36f00344fef002c6000f3ec2f4300382f4200304cd7043ca56f00344fef002c6000f3d441f900000000a7412f48002043e918320683ffffffc0207946c82456d1fc0008ed802f49001c7bfc18b21039100b14cf246f0020226f001c75b24800d3c2c0814c050800d1c0118398001039100b14cfc0814c0508002040d1fc100a4ece118398004cd7043c4fef002c4e75227946c82456a7411039100b14cf2a02d3fc0008ed80eb8dc08173fc18b220457a1341e803e24c0108007209d3c071b18800c0fcaaabeaa8b28064027009c0fc000c20404870380042a72f024ebaf3184fef000c6000fd504e56ff6c48d73cfc1039100b14d0223946c824560681c00000000c8107efffff6200045caf41b2ae0008650004527380740fb4816500044848807dfc08b0223946c824562041282e00081639100b14cfc0fc8ed84c06480041e848d02244d3c01d43ffc32d49ffb44bf188004aae000c6700042c2040227c00008e55d1c14a30980067000406162d0028428245faeea07783ad47be826602af422f022f2e00084e92508fab41b282640004461d8028cc5282780cb88266daad672f2e00084e92508f2d40ffb84aae0010670a52807c7fcc802d46ffb8203946c8245620431239100b14cf53887e3fbe8865000392a742c2822640d7fc0008ed80202e000879fc18b2eb884c0418000680000003e2d7c1d7c04a2b00016d00036671ab00017c7fbc806500035a2f2effb82f0078132f03486effcd4879000000004ebae3544878000f2f2e00084e924878000e2f2e00082d40ffa44e92161373934fef0024204d2d40ffac3401200e0680ffffffd891c02d48ffc8226effc8204077832d4eff9cc4fcaaabe8aac5fc000c9282738196812d43ffa81231880010c1b1eeff9c66f4222effb82c3c9e3779b952814c016800223c85ebca6b7e1e2d41ffa0222effa442829eaeffac286effb4d9fc1001b24e43f900000000d281266effb4d7fc1001aa502d46ffbc45ed08312d47ffc441ed005052812d41ffb0af46cc822602e68b4be8ffe0a3442d4dff98af4d9bc3dbc02d4dff947395eca1c2844a116700042679a90001ab470684ffffffc04c4748042a2effa8da844a856d000430787fb8856c027a7f2a6eff9879857f95be8467102a6eff981a851745fffe4a116700029c182900037fa8ffe14be8ffe12d4dff987b84ba87670002d82a6eff981a841744ffff4a11660002c879a8ffe24be8ffe22d4dff980c84000000ff6700028850c4a3452a6eff98edad1a8416844a11670002782a6eff94181588852a6eff941a8418114a816600027c4a04670002aa4aaeffa4670003aa282effa07c0f222effbc2e3c2c1b3c6db9812801ecac7c0cb9814c0718002e2effb02801ecacb9814c471004220492aeffa4ef89028100001f804aaeffac670ca744c8824a84670482aeffc42801e08c2a4a7fa57d84bc8767041a8418847d927981b8866706148119410001428192832801d8802a442c05122d000f46869bcd9bc32e0d2a44de80c2861b41000f2a47122d0027c2861b4100271211670002024bf9000000001b8128003a7c00179bc3dbc01215c2861a81223c85ebca6b52825889548a548cd3aeffa047eb002041e80020263c00000000b3c36600fe46247c1001aa1d95c0d5eeffb4222effc820405381101875b018007780b48367081180180015808800b1eeff9c66e64aae0010660001c4102effc3a744a342207946c824562202d1fc000950481610c084e1a986811083263c46c7d2e41039100b145e828013c1100b145e207946c82456d1fc0009b332a350a379100f85984eb940027e002c2e00082806edaa41f9000000009688468243f0380010111218c082e9a980811280b1fc0000000066e8206e0008486800084eb94009da204cee3cfcff6c588fa3404e5e4e754cee3cfcff6c42804e5e4e7571fc8e53428245faea9c1630080077836000fbf643ed0018204d52884a28ffff66d2b1c966f441ed002043ed002852884a28ffff66beb1c966f441ed003043ed0830759052880c82000000ff66a6b1c966f02040227c00008e55d1c14a309800679e6000fb981d8028cd52826000fb9a79a8ffe14be8ffe12d4dff980c84000000ff6700fd7a50c42a6eff981a841744ffff4a116700fd68602aa345edad2a6eff942c05468618152a6eff94c8861a8418114a816700fd884a046600fd8842016000fdda182900027ba8ffe24be8ffe22d4dff987f84ba876600fd3c2a6eff94a345edad181588856000fd464be8ffe37395528d0c81000000ff6600009cbbc866ee42014bf9000000001b8128003a7c00172c0546869bc3dbc01215c2866000fde22f2effb8ad672f2e00084ebaf762a744a3424fef000c102effc3207946c824562202d1fc000950481610c084e1a986811083263c46c7d2e41039100b145e828013c1100b145e207946c82456d1fc0009b332a350a379100f85984eb940027e002c2e00082806edaa41f900000000968846826000fe2a72014bf9000000001b8128004a116600ff663a7c00179bc3dbc0121582856000fd4a2a6eff9879950c84000000ff6700fea850c52a6eff981a851745fffe4a116600fbfc6000fe9242052a6eff987f957985be846600fbd86000fbe442816000fc8e1039100b14cca367a36771802f004ebaf96c4fef000c4a806716203c00000000487800202f004eb94005a2b8508f4e75203c00000000487800202f004eb94005a2b8508f4e754feffff02f02226f001cab421239100b14cc202f00182f6f0020000cb48965244a806708a340c0af00245280ad424c020800740f2040d1fc0000000071b09800b4806408241f4fef00104e7573812f4100102f002f012f40000c4ebae8082240d0af0014508f206f00044a806d5a223c0000000073b01800b0816c022200b28967c22f012f082f2f00182f4800102f4900144ebaf5bc42a7a3672f2f00244ebaf8964fef0018206f00044a8066962f6f000800202f48001c2f6f00100018241f4fef00106000f58a428160b24feffff048d7041c207946c82456a742262f00142203eb8979fc18b2d1fc0008ed801039100b14cf224143e903e2c0824c040800d1c075b09800204348680001ad672f034ebaf53e4fef000c7077b08265482202780c4c44100045faeb1c94802f0242a72f034e924fef000ca742487800402f022f034e9252824fef000cad40b08266ea42a742a72f034ebaf7de4cef041c000c4fef001c4e75746c2f0242a72f0345faead4a7424e924fef000c60be4aaf000866024e756000ff46202f0004727f5280c0814e752f032f02206f0010a942226f000c102800037380b481640270041210e988760f7581b6826402720f808112801028000a6702700112280001eb8876107581b682640272108081740c13400001102800067380b4816402700c12280002e988760b7581b6826402720b8081747e13400002102800047380b4816402707e13400003102800056a02707f134000047618102800077380b6816402701813400005743f102800087380b4816402703f134000067640102800097380b68164027040727fc2af00141340000713410008241f261f4e754fefffd848d75c1c2f2f00342f2f003449ef00272f0c4ebaff16362f003a9dce4fef000cc6fc001e141ca540b08e64000086267c100b14cfa7441013227946c82456d3fc0008ed80121345ee01e9528ed5c3c084c28479fc18b24c0408004c0418002040d1fc100a4ece7009d3c11382a8001182a800b08e66ae1013227946c82456a7421213d3fc0008ed80c082c2824c0408004c04180078022040d1fc100a4eced3c11384383e1184383e4cd75c1c4fef00284e75267c100b14cfa7441013227946c82456d3fc0008ed80121345ee003f528ed5c3c084c28479fc18b24c0408004c0418002040d1fc100a4ece7009d3c11382a8001182a800b08e6600ff2a6000ff782f02720f206f0010a942226f00081010c08112807190e8881200b4806402720413410003721f741010280001c0811200b4806402721013410001a341740f71a80001ea88c0811340000a10280002c082740b1200b4806402720b13410002740c71a80002e8881200b4806402720c13410006747e102800037380b4816402707e13400004102800046a02707f134000057418102800057380b4816402701813400007743f102800067380b4816402703f134000087440102800077380b4816402704013400009727f10280008206f000c241fc28020814e75598f2f0a2f02202f0010222f0014206f00184a80672c4a81672845e8ffff743fb48a651e747fb4af001c65162f4800182f4100142f400010241f245f588f6000d944241f4280245f588f4e75222f00044a81675a71fc0919b0af000864502001204106800000004052884a28ffff663eb08866f42041200141e8004806800000005052884a28ffff6624b08866f4204106810000085941e80059719052880c80000000ff6608b28866f0a3404e7542804e754fefffd848d73cfc262f002c4a8367000168202f00300c80000009196300015a4aaf003467000152206f0034723f18280100200453807180b2806500013c4aaf003866122f2f00302f034ebaff4e508f4a806700011a7984246f00344281204a1010a3457580ba826500010eb284650001144a0066000102528158887040b08166de264322432843428547eb005943e9007949ec089aaf41c2852805e68caf48a34291c4d1c37190e2a0c0824a1267000132142a000116824a1267000120142a00021742000d4a126700010c142a00031742000fa342e3aa12104a12670000ee828210814a8066044a12673e420042143a7c000f42819284d2839bc4307c004f194000012002468091c41e353800ce801b8738002a411e2d001fce801b47001f12303800c08111803800204b4281101846804a0056c0710044808280b1c966ee307c001791c4d1c310104a1266784a816774848010825285588a47eb0020548c43e900207040b0856600ff2ca3404cd73cfc4fef00284e754cd73cfc42804fef00284e754a006700fef0102800017a787580598071805982ba8065dcab454c4528004a8066d275a800027a7eba8265be4a2800036db8528158887040b0816600fea06000febe4682c48060882e024687c2876000ff0e50c26000fef650c26000fee250c26000fed02f02202f000caf41206f0008b280651c73b00822a342b4816512721e74534c01080041f0083c7190b4806706241f42804e7571a800017232b28066f071a8000253804a80671410280002a541241fb3804a0057c0710044804e75241fa3404e754fefffc4203946c824560680c000000048d7440c0c8007efffff630c42804cd7440c4fef003c4e75207946c82456a7411039100b14cf75fc18b22f2f0040d1fc0008ed80c0814c020800487008004ebaff50508f4a8067c61039100b14d0720f77802f430020b28365b24880243946c8245641f90000000032002f4200241639100b14cf302f0042c2fc8ed81f43002fc0fc091ad081d4802c429dc82f40001c1030e80010c0b1fc0000000066f24aaf00446700024c71fc8e55206f0024d1c14a300800670002621039000000007180743f22005381b4816500ff422f2f004041ef00352f4000144ebadda0588f223946c8245606810008ed801639100b14cf342f0042202f00103243c4fc001e2042a74241e801f12609c68275fc18b24c023800d28312301800767fc6812f4300284aaf0048670c2203747f5281c4812f420028223946c8245606810008ed801639100b14cf342f00423243c4fc00182042a74241e801232609c68275fc18b24c023800d283767f73b01800b6816500fe9e2f2f00282f012f00486f003d4879000000004ebad4f62f2f00584879000000004878091a4879000000004ebafc0c4fef00244a806700fe68226f0024b3f946c824566600fe5873b9100b14d0b2af00206600fe4a73af002f75b9100b14cfb4816600fe3a226f001c93fc0000000041f9000000002f49002045f0e800121875922f4a00147781b682670e1481226f002045e8ffff13928800b1fc0000000066d82f2f0028486f00352f2f00482f40001c4ebaf8f8a742a34e260e122f003b227946c82456d3fc00095048c2822f410038242f003812114fef000ce5ab828312811239100b145e8283260e13c1100b145e207946c82456d1fc0009b332a350a379100f85984eb940027e002c7c46c7d48c222f0040202f001043f900000000e3ab2f43001846831f43001741e9ffe0528873a8ffff0c81000000ff6678b1c966ee91c81216162f0017240843e90020c28382821cc1bdfc46c7d4cc66ce2f2f00402f4000144eb94009da20588fa37946c7c72c4cd7440c202f00104fef003c4e754878091a4879000000002f4100184ebafa42508f222f00104a806600fd9a4cd7440c4fef003c4e7571fc8e53103008006000fd9c142f001b304260864e56ffe041eeffea2f0a2f0273b9100b14cc2f012d41ffe04ebadb34322effe2588f207946c82456d1fc0008ed803d6efff2fffd1d6efff4ffff2d6effeefff92d6effeafff5c2fc001e1039100b14cf2241a74143e901f1c08173fc18b24c010800d1c012309800707fc280ab407581b0ae0008657a43eeffead3ee0008206e000c7391d1c14a886d000082246e0008203c0000000071b20800b1c06c022008b0816740128020022f00486effea2f2effe041faf73a2d48ffe44e9042a7a3672f2effe04ebafbfe4fef0018206effe44a806744a1674eb94004d948a37946c7c72c588f242effd8246effdc4e5e4e75ad40b0ae00086742222e0008206e000c43f618e97391d1c14a886c804a8167d442001280200260902f02486efff52f2effe04e904fef000ca1674eb94004d948a37946c7c72c588f60aa202e000cd0824a806d3c727fb2806c02707fb08267942f00486effea2f2effe041faf6922d48ffe44e9042a7a3672f2effe04ebafb564fef0018206effe44a806600ff5860984a016700ff6042802f00486effea2f2effe041faf65a2d48ffe44e9042a7a3672f2effe04ebafb1e4fef0018206effe44a806600ff206000ff60203946c824560680c00000002f020c8007efffff62084a398000001567064280241f4e751239100b14cc207946c82456a7421039100b14cfd1fc0008ed807381c0822f0173fc18b24c010800487008004ebafa58508f4a8067c42039000000004a8066ba4a3946c7d8d866b44ab9460d173a66ac4ab9460d169457c0241f710044804e754fefff78428148d75cfc242f008c284245ef00289dce28024283264a06840000003c49ec002271b41800a346bc80650c41f648007e537190be80674252814dee001e47eb000cbdfc000000f066d82f02206f009442854e90588f91c80b0366000086528541e8001e45ea000cb1fc000000f066e84cd75cfc4fef00884e7571a800017c32bc8066b471a8000253804a80670a71a8000255804a8066a0a340e3a891c8868043f6883cab47be88642c2c08ad474c47600043f60800700c43e901ecd3c21791880042115288b0886700ff6e43f6883cab47be8865d4d3c2179188004211528860be428147f02800ab44b881651449f21800ab442242d3c11194983c5281b88164ec2c01ad474c47600449f21800528143f34800780c135401ecb88166ca528541e8001e45ea000cb1fc000000f06600ff286000ff3c487a256e2f2f00084ebafebc508f4e75203946c824560680c00000002f020c8007efffff62084a39800000156706241f42804e751239100b14cc207946c82456a7421039100b14cfd1fc0008ed807381c0822f0173fc18b24c010800487008004ebaf88a508f241f4e75203900000000b0b946c82456670442804e751039100b14cfa741c081b0b90000000066ea71b9100b14ccb0b90000000066dc6000ff724fefffec70312f0a2f02226f0020a342206f0024b08956c173014481b4886700008ea340e3a82439000000002f420014c4804a82665e4a886632a340244174fd45f21a00d08a45f90000000020320c0022005381b48165322f4900202f480024241f2240245f4fef00144ed12441a54045f21a0074fdd08a45f90000000020320c0022005381b48164ce241f245f4fef00144e754a8866f24680c0af0014241f245f23c0000000004fef00144e752f4100102f4800082f49000c4ebafeb4222f0010206f0008226f000c4a806700008a103946100b1d08000005667c703eb089677c7431b48966702f4100102f4800082f49000c4ebafcac222f0010206f0008226f000c4a806750a34081b9000000001039100b14cca367a36771802f004ebaf78c4fef000c4a80677048780020203c000000002f004eb94005a2b8a1674eb94004d948a37946c7c72c4fef000c241f245f4fef00144e7542806000fee04a3946c7d8d866f24ab90000000057c0a54183b900000000a1677100448023c0000000004eb94004d948588f241fa37946c7c72c245f4fef00144e7548780020203c000000002f004eb94005a2b8a1674eb94004d948a37946c7c72c4fef000c608e203900000000b0b946c8245667024e751039100b14cfa741c081b0b90000000066ec71b9100b14ccb0b90000000066de4ebafd7e4a8067d6a37900000000a379000000004eba224ca1674eb94004d948a37946c7c72c588f4e75203900000000b0b946c8245667024e751039100b14cfa741c081b0b90000000066ec71b9100b14ccb0b90000000066de4ebafd244a8067d642b900000000a379000000004eba21f2a1674eb94004d948a37946c7c72c588f4e75203946c824560680c00000002f020c8007efffff6232203946c82456a7421239100b14cf06800008ed80206f000c41e8ffdec28275fc18b24c021800af42d08122089280b4816408202f0008241f4e75a342b4af000865f02f012f004ebaf57a508f4a8067e2ab6f0008202f0008241f4e752f032f024ab90000000067084ebafcd64a806672203946c824560680c00000000c8007efffff6236223946c82456a7431039100b14cf06810008ed803040202f00100680ffffffde2408c48377fc18b24c032800d2829081af42b480640a202f000c241f261f4e75a343b6af000c65ee2f002f014ebaf4f0508f4a8067e0241fab40261f4e75203946c82456a7421239100b14cf77fc18b220790000000006800008ed8041e80022c2824c031800d081d088b0af00106600ff5c241f203900000000261f4e754fefffc4203946c824560680c000000048d74c0c0c8007efffff62000166af40b0af00446500015c223946c82456206f004091c12c48ddfcfff712802f41002473fc18b2200e4c41000220424a8266000132bdfc000062c762000128222f0044a342246f004043f218227391b48164000178a36f0020222f0044701e4c0018004aaf004866624ab900000000670001062f4100142f4800184ebafb84222f0014206f00184a80670000ec203946c8245606800008ed801439100b14cf3242a7422609c68275fc18b24c023800d083b0af0040660000c0262f0044b6b900000000660000b2a56f00482f2f00442f2f00442f41001c2f4800204ebaf3a6508f222f0014206f00184a80670000e8226f0040203c1001614e90af002441f1183c43f118422209227c100162fe93ef00241190080045e801b0139288005288b28866eea340b0af0048662c73fc18b2200e207c46c8245623d000000000a379000000004c410000222f004423c10000000023c0000000004cd74c0c202f00204fef003c4e754cd74c0ca36f0020202f00204fef003c4e752f2f00442f2f00442f41001c4ebaf2fe508f222f00144a806700ff5e4203206f0040203c1001614e226f004090af00241183183e1183183d1183183c41f1183c43f118422209227c100162fe93ef00246000ff4877912f4300206000fe86226f0044743248690001487900000000200f06800000003b2f002f4000282f410020246f004c2f48002445f2183c2f4a00344ebaed3214bc0053226f004c222f0020244145ea003f1382183d74021382183e224143e901e9202f00284fef000c2f490028206f00182f4a002c226f0028a542d3c8b488641826405288246f0040740915939800b4886700fe90528060dc246f00402640226f002cd3c85288159b9800200b60c6518f2039460e5e302f0b2f0a4a80671047f900000000b7f9460e5e2c670a4280245f265f508f4e75204041e800242f48000c2f082f40000c4eb94003567c226f000c588f4280246900282f1ba16745eaffe92f0aab672f2f001c2f3c400ba8762f4000204eb940012bd84fef0018202f0008b0b9460e5e4067165f8aa341b2806640245fa37946c7c72c265f508f4e75226f000c2051a167486a00054868fffb486affffa7672f092f4000204eb9400122544fef00185f8aa341202f0008b28067c02f1ba1672f0aab67a3402f2f001c2f3c400ba8762f4000204eb940012bd84fef0018202f0008b0b9460e5e40668a609e4ebaf8384a80670001004ab9460e5e30660000f64ab9460e70e0660000ec207c46c82456a74123d0000000001039100b14cfc28023c10000000071b9100b14cca567ad672f3c460e5e3823c00000000042b90000000042b9000000004eb94007ec604fef000c207946c82456a7411039100b14cf227900000000d1fc0008ed80c08173fc18b24c010800d1c071b098222f002f3c460e5e384eb94007edb041f90000000023c8460e5e28203c0000000023c0460e5e2c42b9460e5e342f3c4006d754a36742a7a167487800404878006e4eb94005829c4fef002023c0460e5e304a80672442a74879000000002f004eb9400570b82f3c400ce0c44eb9400314944fef00106000fe084e754ab9460e5e30670e203c00000000b0b9460e5e2c67024e754eb94006d75442b9000000004eba1bec4ef94007893c598f4ab9460e5e30670e203c00000000b0b9460e5e2c6704588f4e754ebaf73e4a8067f42239460e5e40a340b08165e82e814eb94006d7544ebaf7224a8067d823d700000000a379000000004eba1b96a1674eb94004d948a37946c7c72c588f588f4e754feffff4222f0010206f00144ab9460e70e0677e4ab90000000066122f4800142f4100104fef000c4ef94007893c2f4100042e884ebaf6c2222f000420574a8067da4ab9460e70e067d22039000000002f4000084eb9400789e442b9000000004ebafe024ab9460e5e306726203c00000000b0b9460e5e2c66182f2f00082f3c460e5e384eb94007edb04fef00146000fce24fef000c4e75518f222f000c206f00104ab9460e70e067124ab9460e739a660aab40b0b9460e738e67102f4800102f41000c508f4ef94007909c2f4100042e884ebaf5ca222f000420574a8067dc4eb9400789e4508f6000fd7a598f4eb940031f282e804ebaf5a64a80672c4ab90000000066244a3946c7d8d8661c4ab9460d173a66144ab9460d1694660c2f174ebacaa02f400004588f2017588f4e75598f2f02203946c824560680c0000000222f000c0c8007efffff62084a39800000156708241f2001588f4e751039100b14cc207946c82456d1fc0008ed8075801039100b14cf2242a7422f09c08275fc18b24c020800487008002f41000c4ebaedea508f222f00044a8067b84ab90000000066b02f41000c241f588f6000ca144feffff4ab402f02222f0014206f0018b0816408241f4fef000c4e75203946c824560680c00000000c8007efffff62e44a398000001566dc1439100b14cc227946c82456d3fc0008ed801039100b14cf75822f42000ca742c08275fc18b22f2f000c4c020800487108002f4100102f48000c4ebaed56508f222f00084a8067944ab900000000668c4a3946c7d8d866844ab9460d173a6600ff7c4ab9460d16946600ff724ab9000000006600ff682f6f000400182f410014241f4fef000c6000f0a62f02ab40b0af00086406241f42804e75203946c824560680c00000000c8007efffff62e64a398000001566de1239100b14cc207946c82456a7421039100b14cfd1fc0008ed807381c0822f0173fc18b24c010800487008004ebaecae508f4a8067a84ab90000000066a02f2f000c206f000c486800064ebaf02c508f241fa3404e754e56fff0223c000000002f02243c0000000020394004e1ec2d41fff0b4b900000000670c202e0008242effec4e5e4e754ab98000001267ec207c46c8245622100681c00000000c8107efffff62d6227c100b14ccaf427391b48165c812112050d1fc0008ed800c800000000057c075811239100b14cf71002242a7422f094480c28275fc18b24c021800487018002f00486efff04ebad2064fef00104a8067842240206900144a886700ff7a2239000000002039460d1684b1fc00000000661e2f012f002f2e00084e904fef000c242effec2d400008202e00084e5e4e752f012f002f2e00084e904fef000c242effec2d400008202e00084e5e4e7522794004e1ec2039800000122f024a806770203946c824560680c00000000c8007efffff625a207c100b14ccaf417190b280654c1010207946c82456a7421239100b14cfd1fc0008ed807180c28275fc18b2068000000c114c021800744dd1c141f00a00102800017390b4816612b3fc00000000660a71807256b280670810104280241f4e75a342b5b900000000a1674eb94004d948588f241fa37946c7c72ca3404e75af40b0af0004650e203c00000000b0b94004e1ec67024e754ab9400bc6c066f642af00044ef9400322284feffff42f0a4eba17c620394004e1ec2079400bc6c00c800000000066044a886608245f4fef000c4e754ab98000001267f0203946c824560680c00000000c8007efffff62dc71b9100b14ccaf41b28065d02268002841e800242f49000c42a72f48000c4869fff648780032a567a7672f084eb940012254487900000000a167246f002c45eaffec2f0aab672f2f00302f3c400ba8764eb940012bd84fef00302039000000004a806734246f000c45eaffe4487900000000a1672f0aab672f2f00182f3c400ba8764eb940012bd84fef0018203900000000a341b280662aa167486a000648780032486affffa767518a2f2f001c2f40001c4eb9400122544fef00184aaf000467aa245fa37946c7c72c4fef000c4e754e56ffb0703348d7040c226e000cb0ae0008670001a67220b2ae0008670002247431b4ae0008670002227632b6ae00086700022022394004e1eca34041f9000000002d48fff0b089662a0c810000000057c020790000000074102d42ffc671004480b1fc000000006720b1fc000000006700008a2f092f2e00084ebabfa0508f4cee040cffb04e5e4e750c810000000066d84ab98000001267d0223946c824560681c00000000c8107efffff62bc73b9100b14ccaf43b68165b07231b2ae00086700025c7233b2ae0008670002147420b4ae00086694262effc687b900000000b0b9000000006306a379000000004ebafdfa4cee040cffb04e5e4e754ab9800000126700ff70207c46c8245622100681c00000000c8107efffff6200ff58247c100b14ccaf427392b4816500ff481d52ffca2050a742d1fc0008ed801239100b14cf77aeffca2f0377fc18b2c2824c031800487018002f00486efff02d49ffc24ebace5a4fef0010226effc24a806700ff047231b2ae0008670000e27032b0ae00086600fef04ab9000000006700fee6222effc6a16742b90000000083b9000000004eb94004d9484cee040cffb0a37946c7c72c588f4e5e4e75a36effc6a340b0896730203900000000222effc6c2804a81665020394004e1ec223c000000002f092f2e00082d41fff04ebabe30508f6000fe8e22394004e1ec243c000000002079000000002d42fff00c810000000057c071004480b1fc000000006600fe4c6000fe684a896600fe58222effc64681c2804cee040cffb023c1000000004e5e4e75a56effc66000ff76a96effc66000ff6e76082d43ffc66000ff642440206a001c4a886700fe0e222effc683b9000000002039460d1684b1fc00000000660000861039100b14cca367a36771802f004ebad96e4fef000c4a80672e48780020203c000000002f004eb94005a2b8508fa1674eb94004d948a37946c7c72c588f4cee040cffb04e5e4e7548780020203c000000002f004eb94005a2b8508f60d0222effc620390000000083b9000000004a806700fdfa538023c0000000004ebafbea6000fdee2f004e90588fa1674eb94004d948a37946c7c72c588f60a2a367487800312d40ffc24ebabcf2508f24390000000073b9100b14cc202effc22d42ffc64a8267000362b08265000364206efff02d48ffbe4a886700045c242800082d42ffc6224143e90c112409d482207946c82456d1fc0008ed801639100b14cf2d42ffcea742c68275fc18b24c023800d1c3d1eeffce1628000175901d43ffca764db682660002b84a80670002b271aeffca226efff0b0a90008670003ba10104aaeffbe670002a02041d1fc8000666e101075b9800000027180b480670002de34012601203c00000000eb8b41f9000000002d48ffe042aeffdcc4fc004422430483000000002d43ffec2042243cb93897029489d1fc46c76dec2d42ffe8227946c82456247c100b14cf1d52ffcda7432440d3fc0008ed801d5affdb142effcd200a246effecd5c02d4affd6c48377fc18b24c032800d3c2142effdb1382a800247c100b14cf16123243a7432409c48377fc18b24c032800262effd62242d3fc100a4ece142effdb13823800a743227946c82456d3fc0008ed801d52ffd9246effe02d49ffe452aeffe01d5affca142effd9246effe8d5c82d4affd2c48377fc18b24c0328002242142effcad3eeffe41382a8001639100b14cf3243a7432409c48377fc18b24c032800262effd22242d3fc100a4ece142effca138238004aaeffdc6706116effdbffe010eeffca0c80000000006600ff082001e988224006800000184243e918322d40ffca207946c82456a7431039100b14cf75fc18b2d1fc0008ed80c08342034c020800a742d1c01183980077fc18b21039100b14cfc0824c0308002040d1fc100a4ece4200118098005289b3eeffca66b24aaeffbe6700019c207946c82456a7421039100b14cf327c004d77fc18b2d1fc0008ed80d1eeffcec08234094c030800a7431182080075fc18b2206effce1039100b14cfc08336094c020800d1c0d1fc100a4ece10834aaeffbe670000c6207946c82456a7421039100b14cf2601d1fc000905a3d68343eeffc9247c100a66f1c08275fc18b2d1c3d5c377fc18b24c020800a742119108001039100b14cfc0824c030800159108002d41ffc24ebab9a8222effc24aaeffbe6700faba226effbe206900104a886700faacb1fc000000006600015a2f014ebadd44588f4ebaf8926000fa964aaeffbe6600fd64207946c82456a7421039100b14cf77fc18b2d1fc0008ed80d1eeffcec082744d4c03080071b00800b4806700fd364ebaf8546000fa5871fc00ff2d40ffc66000ff3242aeffbe6000fcb642aeffbe42aeffc66000fcaa2041d1fc80006676101016398000000330432601eb8b2408b580340141f9000000002d48ffe022430483000000002d43ffec4a0057c0c4fc00442042243cb938970294897100d1fc46c76dec2d42ffe844802d40ffdc203c000000006000fd04207946c82456a7421039100b14cf327cffff77fc18b2d1fc0008ed80d1eeffcec08234094c030800a7431182080075fc18b2206effce1039100b14cfc08336094c020800d1c0d1fc100a4ece10834aaeffbe6600fe686000ff28b3eeffbe6700f972206900104a886700fc42b1fc000000006700fc3842a72f012d41ffc24e90508f222effc26000fc24a3672f014e90508f4ebaf73a6000f93e42aeffc66000fba84e56fff0223c000000002f0220394004e1ecab422d41fff0b4ae0008650e43f900000000b3f9000000006708242effec4e5e4e754ab98000001267f0207c46c8245622100681c00000000c8107efffff62da227c100b14ccaf427391b48165cc12112050d1fc0008ed800c800000000057c075811239100b14cf71002242a7422f094480c28275fc18b24c021800487018002f00486efff04ebac7644fef00104a8067882240206900184a886700ff7e2239000000002039460d1684b1fc00000000662a2f012f2e000c2f2e00082f004e904fef0010a1674eb94004d948a37946c7c72c588f242effec4e5e4e752f012f2e000c2f2e00082f004e904fef0010a1674eb94004d948a37946c7c72c588f60d44e56ffd4227c46c8245648d71c0c24794004e1ec203c00000000761c26512d40fff0b5fc0000000057c01239800000037100448030412239000000002408e7aab580240bb580b5fc00000000660002940a8000000000b2806700008223c00000000020110680c00000000c8007efffff626a2851a74375fc18b21039100b14cfd9fc0008ed80347c03f0267c46c76dce223c80006676c0834c020800d9c041ec18232d48ffe8206effe82248764d101075a1b68266107180206efff0b0a800086700019c101154aeffe8528147eb004445ea00200c818000667e66ca4ab98000001267000208207c46c8245620100680c00000000c8007efffff620001f073b9100b14cc2010af421639100b14cf3043b481650001f42608a742c68275fc18b206800008ed804c023800204345f008004ab9400bc6c0660002ca2f012f0aa367486efff02d41ffec42b9000000004ebac59c4fef0010222effecb2b9000000006700035c42b90000000023c1000000004a80670001b045f900000000267900000000b7ca660002224a93670000c84ab900000000660000beb7fc0000000057c02f0b2200448128414eb94003146c42b9000000002079460d165c588fb7fc00000000670001c24a88670001944a906600018e41f9000000002d48ffe845f900000000206effe852aeffe8719891c8c0fc00182240d3fc46c7d8de203188000c80000000006704258088005888700cb08866e845ea000cb5fc0000000066c442932f0b4eb940031494b7fc0000000057c023cb00000000588f4480340c71807382b2806710a1674eb94004d948a37946c7c72c588f4cee1c0cffd44e5e4e754a34a8006700fe62207946c82456a7421039100b14cf77fc18b2d1fc0008ed80c0824c030800d1c042001180a8001039100b14cfc08242024c0308002040d1fc100a4ece1182a80020411028fff875b9800000027180b480670000ac2d41ffec4ebab440222effec528154aeffe847eb004445ea00200c818000667e6600fdca6000fdfcb280670623c0000000004ab900000000670000f873b9100b14cc203946c824561039100b14cf42b900000000b2b9000000006700012e42b90000000023c1000000002039000000004a806700ff264ab9000000006600ff1c0c800000000057c12f00240144824eb94003146c42b9000000002079460d165c2842588f42006000fed8101075b9800000037180b4806600ff4842132d41ffec4ebab384222effec6000ff424ab9400bc6a466d041f90000000047f9000000002d48ffe845f9000000006000fe3c4ab9000000006600fea44a8b660001402079460d165cb5fc00000000670000e64a886700fe884a906600fe8299cc264a41f9000000002d48ffe845f9000000006000fdf84cee1c0cffd442b90000000042b9000000004e5e4e752679000000004a8b67602f012f0aa367486efff02d41ffec4ebac2d04fef0010222effecb2b900000000672042b90000000023c10000000045f9000000006000fd3a42b9000000006000fed84a80670aa543b6b9460d168467de42b90000000045f9000000006000fd122041744d41e80c1143f28a00a37900000000102900017791b483660e7180206efff0b0a80008674a10112d41ffec23cb000000004ebaf178222effec6000ff624ab9400bc6a46600fda099cc264a6000ff1c4a806782a540b0b9460d16846700fcaa42b90000000045f9000000006000fca0a34b2d41ffec23cb000000004ebaf12e222effec6000ff18b7fc0000000057c02f0b260044834eb94003146c42b9000000002079460d165c2843588fb5fc000000006700fe64264a4a8a6600fc9c42006000fd0a4fefffc048d74c7c4ebafac44ab90000000067104ab9460e70e06600047042b9000000004ab900000000660002c6203946c824560680c00000000c8007efffff63000108a3412039800065b8b2806700040e23c000000000263946c82456428273b9100b14cf2f41002879b9100b14cc247900000000203900000000b6b900000000670002944a8a6700035e4a80660003bc2a2f002842b90000000023c30000000023c50000000023c4000000002079460d165c4a82670000884a88670000824a90667c223c00000000207c46c7dd7643f9000000002010b0816704238088005888b1fc46c7dd8266ec207c46c7deae43f9000000002010b0816704238088005888b1fc46c7deba66ec4ebadfee23c0000000004a806700039241f90000000042902f084eb940031494a167a379000000004eb94004d948a37946c7c72c508f4cd74c7c4fef00404e75247946c82456a7451039100b14cf7dfc18b2d5fc0008ed809dce428247fada3cc0854c060800d5c02f0e2f0a4e93508f4a806708a340220ee3a88480528e7a08ba8e66e42039800065b8a345ba80670001ea23c000000000263946c824561a39100b14cf1f45002f7d8579b9100b14cc2f4600283c7c01f1428047eafe4d0102670a73b3e800a345ba81675452804dee001e7208b28066e6af45ba84650001f64a324822660001ee203c400d301c23c0400d5f4c4a826700fe6e4ab98000001257c224790000000020390000000075024482b6b9000000006600fe62600000f02f0041ef00392f4000242f4100284ebab854207946c82456d1fc0008ed801a39100b14cf3245a7452c09cc857bfc18b24c056800d1c61c30e80030467c7f2a08ca86a7462e85486f0039202f00282f002f40002c4ebad4ae1a2f003b227946c82456d3fc00095048ca862f45003c1a11222f00302c2f003c4fef000ceda930452a088a8112851c39100b145e30462a08828513c1100b145e207946c82456d1fc0009b332a350a379100f85984eb940027e004dee001e202f002072085280b2806600fedc6000fef24ebae02e4a80670001a64ab9460e5e306600fd2a4ab9460e70e06600fd204ebae77c6000fd182c2f0028bcb9000000006600fd62b8b9000000006600fd584a8a670001a04a806700fd7447f9000000004a82670a4ab900000000670001a24ab9000000006600fde82f0b4eb94003146c42b90000000023c30000000023c40000000043ef002c588f23d1000000006000fd2cbab9000000006700fe104a826700017297cb4dfad86c42a77c0842a72f0b4e96528b4fef000cbc8b66eca37900000000263946c824561039100b14cf3c7c01f147eafe4d1f40002f7380428079b9100b14cc2f4100286000fdec203c400d31ae6000fe124a806740203c000000004ab9000000006600fd462f004eb94003146c42b90000000042b90000000023c30000000041ef002c588f23c40000000023d0000000006000fc84222f002842b90000000023c30000000023c10000000023c4000000006000fc64203c000000004ab9000000006600fce6609ea346bcb9000000006700fbf0a37900000000263946c82456428273b9100b14cf2f41002879b9100b14cc6000fbe64ebade944a806600fb9042b9000000006000fb8642b9000000006000fb8641f90000000042902f084eb940031494a167a379000000004eb94004d948a37946c7c72c508f6000fc6e4a806700fbd647f9000000004a826700fe6c4ab9000000006600fe624ebadc08b5c06600fe584cd74c7c4fef00404e75a37900000000263946c824561a39100b14cf1f45002f7d8579b9100b14cc2f4600286000fc96202f00040c800000000567044efa038c41fa023020084e75400b3eac400b3e98400b7c67400b5413400b7a63000000004fefffec48ef030200082e802f4800044ebae0604cef030200084fef00144e754fefffe048ef0307000c2409d48006820008ed802e822f41000474000c8400000005660274012f4200084ebae15e0c8400000005660228004cef0307000c4fef00204efa031248794005a61c600648794005a8562239460d5c304fefffe048ef030d000c2609d68006830008ed802e832f42000476000c8100000005660276012f43000826014ebae1020c83000000056702200322004cef030d000c4fef00204e7516102f0071036100ff362600201f79034879400bb7044ef9400585e67110610000582f004879460e73864ef940078890610000124ef94003d722610000084ef94004c3746100fef841fafedc22300c004e7571104fef00186100fee44ef94003c986711061000012b48066064ef9400786ce4ef9400786fc4fefffec48ef030200082e802f4800044ebadf984cef030200084fef00144e752f082f01207946c8245673b9100b14cfc2fc18b2d1c173b9100b14ccd1fc0008eda271b01800221f205f4e750c820000000566344fefffe448ef0303000c2e8b2f4300044ebae7a22f4000084cef0303000c4aaf00084fef001c67064ef94003a6246100ff9c24004efa01be0c8600000005662a4fefffec48ef030300042eaf005c4ebae6222f40005c4cef030300044fef00142f006100ff682c00201f4efa01964eb94005213c4eb94007e9404ebaf89c4ef940052228564543544f5200004878ffff4878ffff4ebae5984ef94004e4d04feffff048d703034ebadb384a80670c4cd703034fef00104efae2ee4cd703034fef00102f0a4ab9460e70e04ef9400791ec4feffff048d703034ebae1da4a80670a4cd703034fef00104e754cd703034fef00104fefffe848d73c0c4ef94006d78c7c010c800000000566224feffff048d703034ebadacc4a80670a4cd703034fef0010600c4cd703034fef0010bc8065064ef940077b624ef940077b704efada924fefffa048d77cfc4ef9400023204eb9400339704a80671e4feffff048d703032f024ebae872588f4cd703034fef00104ef940083b7e4ef940083b062f2e00084878ffff4eb940031ee04feffff448d703022f004ebae6a0588f4cd703024fef000c4ef94004e1f44feffff048d703034ebae7804a804cd703034fef0010660c2279400cfeda4ef9400322ec4e7500000000000000004ef9400365500000000000004ef9400334de0000000000004ef94007982200000000000000004ef94003a53600000000000000004ef94003cda000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffff0000000000000000000000000000000000000000ffffffffffffffff31000000000000000000000000000000000000000000000000003e00000000000000000000000000000000000000000000000000ff00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000002000000000000000000000000000000000000000000030000000000000000000000000000000000000000000400000000000000000000000000000000000000000005000000000000000000000000000000000000000000ff0000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffff0000000000000000000000000000000000000000ffffffffffffffff330000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000003100000000000000000000000000000000000000000000000000ff0000000000000000000000000000000000000000000000000031000000000000000000000000000000000000000000000000003200000000000000000000000000000000000000000000000000ff00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000002000000000000000000000000000000000000000000030000000000000000000000000000000000000000000400000000000000000000000000000000000000000005000000000000000000000000000000000000000000ff000000000000000000000000000000000000000000564543004f464600465744000052455600564543544f522047454e455241544544004e4f204348414e474500ab204d414348494e453a564543544f5220bb00564543544f52004300432300440044230045004600462300470047230041004123004200545950450044454e5300524f4f54005343414c00474154450041434e540053454544005350414e004f46535400524f540052505400444952004f43540056454c0050524f420048554d4e00303031205354415449430030303220464c455800434852004d494e004d414a00444f520050454e540000000000000000000000000000000000000000000000000000564543544f5220535243000000564543544f5220414d50203100564543544f5220414d502032000b0b00010030010c0c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000033203132000007000000400000050006000000020000000000000056000000010000000000000000000000000000000000000000000102030c060d050407080a090b0e0f1010000102030405060708090a0b00000d0e0f100b047e7f7f0c183f4001097f1517000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000fff05ad0ab506ad04a900000000000000000000000000000000000000000f100b047e7f7f0c183f40010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b0b000120300c0c00000000000000000000000000000000000000000000000100000000000000000400fff10000000000000000000000000300000100000000000000000000000003000003000000000000000000000000030000050000000a000000000000004c02000001000000130000004c00000074020000010000001e00000054000000000000000300000027000000c00000055e020000010000003e0000016a0000000a01000007000000450000061e0000013e0200000100000054000000b0000000040100000300000063000000ac000000040100000300000073000000b400000192010000030000007c000000800000003001000007000000860000117000000048020000010000009700001120000000500200000100000000000000000000000003000006000000a80000075c0000016402000001000000b90000008c0000000000000003000000c3000000900000000401000003000000d3000000180000002701000007000000dc000000000000001801000007000000e60000011e0000004401000007000000f1000000ec00000012010000070000028c000008c00000029e02000001000000fd00000b5e00000132020000010000010a0000010e0000001001000007000001130000003f00000010010000070000011b000000fe00000010010000070000012500000c90000001fa02000001000001310000005000000030010000070000013900000e8a0000001e020000010000014700000ea80000001e020000010000015500000ec60000001e020000010000016300000ee40000001e020000010000017100000f020000001e020000010000017f00000f200000001e020000010000018d00000f3e000000ae020000010000019800000fec0000007402000001000001a500001060000000c002000001000001c2000011b8000001dc02000001000001d1000000500000003001000007000001d9000013940000000a02000001000001e30000139e0000000a02000001000001ec000013a80000000802000001000001f5000013b00000003e0200000100000168000013ee0000003e020000010000015a0000142c0000003e02000001000001ff0000146a000000d002000001000002080000153a000000d002000001000001840000160a000000d00200000100000176000016da000000d0020000010000014c000017aa000000d0020000010000013e0000187a000000d002000001000002110000194a000002e6020000010000022200001c300000068402000001000005a60000024600000101010000030000023000000000000000000000000300000239000022b4000000460200000100000249000022fa000000cc020000010000025a000023c6000000b00200000100000274000024760000000c02000001000002870000256000000104020000010000029500002a360000033c02000001000002a4000003470000091a01000003000002ac00002d72000001ba02000001000002bb00002f2c0000008402000001000002ca00000c860000000401000003000002d4000031540000003602000001000002e1000000a80000000401000003000002eb000000a40000000401000003000002f5000000a000000004010000030000037300000c6200000004010000030000002100000c6a0000001801000003000003000000334a0000005a020000010000030a0000009400000004010000030000031600000098000000040100000300000322000033a40000005a020000010000032e0000009c00000004010000030000033b00000162000000080100000700000347000000b00000000801000007000003520000008400000000000000030000035c0000004c0000000000000003000003660000004400000000000000030000037000000050000000000000000300000378000000c2000000060100000700000384000000bc0000000601000007000003970000008800000000000000030000039f000000400000000000000003000003a9000000480000000000000003000003b2000000b80000000401000007000003ba00000c660000000401000003000003c900000c8200000004010000030000035500000c960000000401000003000003d300000c920000000401000003000003de00000c8e0000000401000003000003e900000c8a000000040100000300000000000000000000000003000007000003f546c82456000000000000fff1000003fe0008ed80000000000000fff100000407000056f60000000000000001000004160000559e00000000000000010000041e0000538c00000000000000010000042a0000570200000000000000010000043900005400000000000000000100000447000054c600000000000000010000045b00005492000000000000000100000468000054e60000000000000001000004750000570e0000000000000001000004840000571c0000000000000001000004ee00000cd400000000000000030000049300000d2200000000000000030000049b000055d40000000000000001000004a7000056040000000000000001000004b3000056460000000000000001000004c00000563e0000000000000001000004d00000564a0000000000000001000004dc000056500000000000000001000004e900000df40000000000000003000004f600000e5c00000000000000030000050300000eaa0000000000000003000005100000019400000030110000070000052500000174000000141100000700000538000001880000000c110000070000054b000024820000000c120000010000055c0000248e000000d2120000010000056800002664000000d812000001000005760000273c0000004c120000010000058600002788000000661200000100000599000027ee000001e812000001000005ad000029d60000006012000001000005c100002fb00000013a12000001000005d6000030ea0000001012000001000005e70000565a0000000010000001000005f9000030fa0000005a12000001000006050000318a000001c0120000010000060c000055dc00000000100000010000061f000033fe00000072120000010000062700003470000000c6120000010000063700003536000002981200000100000641000001c40000000b1100000700000651000037ce000000f21200000100000665000038c00000010a1200000100000679000039ca0000002e120000010000068d000039f80000006412000001000006a200003a5c0000009812000001000006af00003af40000005412000001000006bd00003b480000004412000001000006ca00003b8c0000008012000001000006d800003c0c000000c2120000010000076900000c9c0000000010000003000006e000003cce0000008212000001000006ee00003d50000000fc12000001000006f6000000c800000024110000070000070200000dd80000000010000003000007100000569600000000100000010000071d00003e4c000000a4120000010000072a00003ef00000002a120000010000073700003f1a00000116120000010000074a000056e800000000100000010000075d00004030000007be120000010000076400000dbc000000001000000300000772000047ee00000112120000010000077a0000490000000532120000010000078200004e320000052a120000010000078d00000cb800000000100000030000079b0000535c0000000010000001000007ab000053740000000010000001000007b8000053ac0000000010000001000007c7000053f20000000010000001000007d5000053fa0000000010000001000007e40000547e0000000010000001000007ee000054880000000010000001000007f80000544e0000000010000001000008060000546a000000001000000100000816000054a0000000001000000100000823000054b000000000100000010000083200005512000000001000000100000841000055520000000010000001000008500000558800000000100000010000085d000055a6000000001000000100000869000055b8000000001000000100000876000055ea0000000010000001000008830000561a0000000010000001000008910000565600000000100000010000089d000056680000000010000001000008a9000056c20000000010000001000008b7000056e8000000001000000100766563746f722e63006d675f6469727479006d675f666f7277617264006d675f736176656400766563746f725f67656e65726174652e706172742e30007363616c65730067656e657261746f725f70616765007372635f706167655f7265616479007372635f706167655f736f75726365007372635f7061676500666f726d6174732e370067656e657261746f725f776964676574007365636f6e646172795f77696467657400766563746f725f6d6964695f70616765006d6964695f76696577006d6964695f706167655f6275696c74007469746c65732e3200666f726d6174732e31006d6964695f6e616d6573006d6964695f6c61796f7574006d6964695f636f6e74726f6c006d6964695f6d61780066697273742e33006d6964695f62797465006d6964695f666f726d617400726f6f74732e30006d6964695f666f726d61745f30006d6964695f666f726d61745f31006d6964695f666f726d61745f32006d6964695f666f726d61745f33006d6964695f666f726d61745f34006d6964695f666f726d61745f35006d6964695f7061676531006d675f706167655f7669657700647261775f67656e657261746f725f7769646765742e706172742e3000666f726d61745f636f6e74726f6c00726f6f74732e3600666f726d61745f313000666f726d61745f3800666f726d61745f3600666f726d61745f313100666f726d61745f3900666f726d61745f37006d6964695f7365745f636f6e74726f6c006d6964695f67656e6572617465006c6f636b65642e3400766563746f725f6d6964695f79657300766563746f725f6d6964695f6b6e6f6200766563746f725f6d6964695f61737369676e2e706172742e3000766563746f725f6d6964695f61737369676e00736176655f73657474696e67730067656e65726174655f747261636b0073746167696e67006368616e67655f636f6e74726f6c0067656e657261746f725f7669657700656469745f7669657700706f6f6c5f636f6e7465787400706f6f6c5f62616e6b00706f6f6c5f7061727400706f6f6c5f747261636b00706f6f6c5f666c657800706f6f6c5f62726f77736500706f6f6c5f64697265637400706f6f6c5f73746174696300706f6f6c5f70656e64696e6700706f6f6c5f6c6162656c730068616e646c6572732e38006d675f616374697665006d675f7365636f6e64006d675f637572736f72006d675f6d696e65006d675f6172705f70616765006d675f6172705f73657475705f736c6f7473006d675f7365656e006d675f6f70656e6564006d675f73686f776e006d675f6b657973006c6173745f7472616e73706f7274006c617965725f67656e0073686f776e5f62616e6b0073686f776e5f706172740073686f776e5f747261636b0042414e4b5f50545200504152545f4f46460073745f6e616d655f7265706c61790073745f6e616d650073745f726f775f747970650073745f6d61696e5f7265706c61790073745f7372635f636f6d6d6f6e0073745f63686f6f7365725f726f775f747970650073745f6e616d655f7069636b0073745f706f6f6c5f6b696e640073745f656469745f7265706c61790073745f647261775f7265706c61790073745f656e6373002e706f6f6c5f73746f636b002e6c6973745f73746f636b002e7469746c655f73746f636b002e7469746c655f756e7369676e6564002e7469746c655f706f6f6c002e7469746c655f706c61696e006d675f6c6973745f6b657973006d675f706167655f6b657973006d675f706167655f656e637300766563746f725f636f6e74726f6c5f6e616d657300766563746f725f7363616c655f6e616d657300766563746f725f636f6e74726f6c5f6d617800766563746f725f6e6578745f7365656400766563746f725f7061636b00766563746f725f756e7061636b00766563746f725f67656e657261746500766563746f725f747261636b5f656d70747900766563746f725f77726974655f70687261736500766563746f725f7369676e65645f747261636b00766563746f725f76616c69646174655f706172740073745f76616c69646174655f706172740073745f73746f636b5f76616c69646174650073745f73656c65637465640073745f6b65790073745f73746f636b5f706f6f6c5f6f70656e0073745f747970650073745f63686f6f7365725f747970650073745f61737369676e00766563746f725f64656661756c74730073745f706f6f6c5f63686f6963655f647261770073745f706f6f6c5f63686f6963655f6f70656e0073745f706f6f6c5f63686f6963655f6c6566740073745f706f6f6c5f63686f6963655f72696768740073745f706f6f6c5f6c6566740073745f706f6f6c5f72696768740073745f647261775f706167650073745f73657475705f706167650073745f6b6e6f620073745f73657475705f6b6e6f62006d675f7061676500766563746f725f6d696469006d675f706167655f6c61796572006d675f706167655f73697465006d675f6172705f7365747570006d675f747261636b5f746170006d675f6e6f74655f73657475705f64726177006d675f73746f636b5f6e6f74655f64726177006d675f6b6579006d675f6c6973745f6c61796572006d675f6b6e6f62006d675f7469636b0073745f75695f7469636b0073745f656469745f6c617965720073745f6d616368696e655f6e616d650073745f7372635f6e616d65730073745f6d61696e5f636f6d6d69740073745f7372635f636f6d6d69740073745f7372635f636f6d6d6974320073745f6e616d655f610073745f6e616d655f620073745f73657475705f6f70656e0073745f63686f6f7365725f6f70656e0073745f73657475705f726f770073745f63686f6f7365725f726f770073745f73657475705f65646974360073745f73657475705f64726177360073745f7469636b5f686f6f6b0073745f7372635f647261770073745f706f6f6c5f6f70656e0073745f6c6973745f647261770073745f706f6f6c5f7469746c650073745f76616c6964617465006d675f7461705f73697465006d675f73657475705f73697465006d6f647765726b5f73746f636b5f34303033363534385f38000000063400000301000000ac0000065000000301000002460000067200000301000000d0000006bc0000020100001170000006fe00000301000002420000070400000301000000b00000070a000003010000023e0000071000000301000000ac0000071600000301000000b40000072600000201000011200000077e000003010000008c0000078e0000030100000090000007a60000030100000246000007ce00000301000000b8000007d600000301000000be000007ec0000620100000018000007f400000301000000ca0000080a00000301000000d00000081c00006201000000ec0000088800006201000000180000089a0000030100000242000008a000000301000000b0000008a6000003010000023e000008ac0000030100000090000008b200000301000000b400000eb800006201000000ed00000ed600006201000000ee00000ef400006201000000ef00000f1200006201000000f000000f3000006201000000f100001fda00000301000003460000208c0000030100000040000022d00000110100000011000022e600001101000000220000233200006201000000ec0000236a000062010000010e00002ade0000030100000c6100002c2000000301effea1fa00002c500000030100000c6100002e0400006201000001880000317200000301000000a40000318000000301000000a00000322e0000030100000c62000032960000030100000c62000032ba0000110100000011000032fc0000030100000c62000033080000030100000c860000332a00001101000000220000336600000301000000a40000337400000301000000a00000338400000301000000940000338a0000030100000098000033c000000301000000a4000033ce00000301000000a0000033de0000030100000094000033e400000301000000980000361200000301000000a00000368c00000301000000a800003692000003010000009c000036a000000301000000a0000036a600000301000000a4000038e800000301000000a8000038f600000301000000a40000390c00000301000000a000003912000003010000009800003918000003010000009c0000396c0000620100000162000039d40000620100000162000039ea000003010000009800003a04000062010000016200003a3a000003010000009400003a40000003010000009800003ab8000003010000009800003aca000062010000016200003d5600006201000000c800003d5e0000030100000dd800003d6e000003010000008400003db8000002010000569600003e0a000002010000075c00003ebc000002010000569600003ed6000003010000004c00003efa000002010000569600003f3200000201000056960000407c0000020100005696000040940000030100000dbc0000409c0000030100000dd8000040bc00000201000056960000410c00000301000000500000411200000301000000440000411a0000030100000044000041c8000003010000004c000041ce00000301000000500000420c00006201000000c80000422c00006201000000c80000423c0000020100005696000042480000030100000dbc0000426a00000301000000500000429e0000030100000050000042aa00000201000022b4000042d200001101000000110000430000001101000000220000431c00000301000000500000432a00000301000000440000441600006201000000c20000443200006201fffffcd50000454000006201000000c80000467600000201000024760000471600006201fffffcd50000474400006201000000c2000047ba0000020100002476000047f400006201000000c80000481400000301000000840000485a0000020100005696000048ac00000201000022fa0000491600006201000000c80000492400000201000056960000494800000201000056960000495200006201000000c80000495e000003010000008800004a4a000003010000004000004a5c000003010000004800004a66000003010000004c00004a6c000003010000004800004a9a0000030100000dd800004ab0000003010000008400004abe0000030100000dbc00004b00000002010000403000004b18000003010000008400004b2a0000030100000dd800004b32000003010000008400004be8000003010000008800004c0a000003010000004000004c10000003010000004800004c1a000003010000004c00004c20000003010000004800004c3c0000030100000dd800004c50000003010000008400004cc00000030100000dbc00004cf4000003010000004000004cfa000003010000004c00004d28000003010000004800004d30000003010000004c00004d36000003010000004800004d46000003010000004c00004d5e000003010000004c00004d7a000003010000004000004d9c000003010000004400004dd0000003010000004c00004de6000003010000004400004df80000030100000dd800004e0c000003010000008400004e1c0000030100000dbc00004e52000003010000009800004e860000030100000c6600004eb00000030100000c9200004eca0000030100000c8600004ed00000030100000c9200004ed60000030100000c8e00004edc0000030100000c8a00004ef8000002010000318a00004f420000030100000c8200004f600000030100000c9600004fd00000030100000c66000050500000030100000c92000051500000030100000c8e0000515a0000030100000c8a000051960000030100000c960000519c0000030100000c92000051a20000030100000c8a000051ae0000030100000c8e000051b80000030100000c66000051e20000030100000c66000052200000030100000cb8000052380000030100000c960000523e0000030100000c86000052440000030100000c92000052500000030100000c8a000052560000030100000c8e000052640000030100000c860000526a0000030100000c92000052700000030100000c8e000052760000030100000c8a000052800000030100000c9c000052940000030100000c660000529e0000030100000c66000052ca0000030100000098000052d4000003010000009c000052f00000030100000c96000053380000030100000c6600005388000002010000559e0000008c0000030100000054000002ee000062010000016a0000062800000301000000b00000063e00000301000000b400000658000062010000019400000660000003010000017e0000066600006201000000800000066c00000301000000ca0000078600000301000000b00000079800000301000000b4000007ae0000110100000000000007b600000301000000b8000007e000000301000000bd000007fe000062010000000000000804000003010000017e00000810000062010000011e00000bb6000062010000010e00000c22000062010000003f00000c5000006201000000fe00000cec000011010000000c00000d08000062010000005000000d36000011010000000400000de4000062010000017400000dfe000011010000000d00000e42000011010000000800000e8c000003010000008c00000e9400006201000000ec00000eaa000003010000008c00000ec8000003010000008c00000ee6000003010000008c00000f04000003010000008c00000f22000003010000008c000010a4000062010000018800001202000062010000017400001236000011010000000d0000131a00001101000000080000132a00006201000000500000134c0000110100000004000013ce000011010000000d000013e800001101000000080000140e00006201000001740000144c0000620100000050000019ba00006201000000fe00001b6e00006201000000fe00001d66000003010000024600001e02000003010000024600001fa80000030100000000000020720000030100000000000021c0000003010000000000002246000003010000000000002256000003010000000000002aaa000003010000034700002b00000003010000039700002bc4000003010000024600002bd2000003010000024600002bdc000003010000034700002c26000003010000034700002cd000000301000003c000002d3c000003010000034700002f880000030100000c860000315600000301000000a8000031b20000030100000c62000031d20000030100000c6a000032040000030100000c6a000032f20000030100000c860000334c00000301000000a8000033a600000301000000a80000347600000301000000980000350a00000301000000a00000352e0000030100000094000035be00000301000000980000373400006201000001c4000037e000006201000001620000393600000301000000a00000396000006201000000b0000039a8000011010000002c00003a72000003010000009800003aa8000003010000009400003b5c0000030100000c8600003bfa0000030100000c8600003c8e0000030100000c8600003cb20000030100000c9c00003d320000030100000c8600003dfe000003010000004c00003f94000011010000000400003fbc000003010000004400003fce000011010000003f00003fee00000301000000440000406e00006201000000c8000040840000030100000084000041b8000003010000004c000041f600000301000000500000423200000301000000840000431600000301000000440000436000000301000000440000441e00006201000000bc0000470a00006201000000bc0000480e0000030100000dd8000048a0000003010000004c00004938000003010000008800004a780000030100000dd800004a7e000003010000008400004a90000003010000005000004ad400006201000000b800004ade000003010000005400004bee000003010000008400004c26000003010000008400004c32000003010000005000004c9000006201000000b800004c960000030100000dbc00004ca0000003010000005400004caa000003010000005000004cda00006201000000b800004ce4000003010000005400004d04000003010000004000004d3c0000030100000dbc00004d640000030100000dbc00004dd60000030100000dd800004e40000003010000009800004e58000003010000009c00004ea40000030100000c8200004eaa0000030100000c9600004f0400000301b9382ef400004f2400000301b9382dc800004f4e0000030100000c9c000050400000030100000c82000050460000030100000c96000051700000030100000c9c0000517a0000030100000c9c000051840000030100000c62000052260000030100000c62000052860000030100000c62000052de0000030100000cb80000530e0000030100000cb80000531a0000030100000cb800000ca00000030100000cd400000ca40000030100000d2200000cbc0000030100000cd400000cd6000002010000318a00000cda000002010000318a00000cde000002010000318a00000cf0000002010000318a00000cf4000002010000318a00000cf8000002010000318a00000d240000020100003c0c00000d3a0000020100003c0c00000d500000020100003c0c00000d660000020100003c0c00000d7c0000020100003c0c00000d920000020100003c0c00000dc00000030100000df400000ddc0000030100000e5c00000de00000030100000eaa00000df6000002010000403000000dfa000002010000403000000dfe000002010000403000000e10000002010000403000000e14000002010000403000000e18000002010000403000000e2a000002010000403000000e2e000002010000403000000e32000002010000403000000e5e000002010000403000000e62000002010000403000000e66000002010000403000000e78000002010000403000000e7c000002010000403000000e80000002010000403000000eac00000201000047ee00000ec200000201000047ee00000ed800000201000047ee00000eee00000201000047ee00000f0400000201000047ee00000f1a00000201000047ee000000000000020100000e8a000000040000020100000ea8000000080000020100000ec60000000c0000020100000ee4000000100000020100000f02000000140000020100000f2000000050000011010000004600000054000011010000004800000058000011010000004b0000005c000011010000004d0000006000001101000000500000006400001101000000520000006800001101000000540000006c000011010000005700000070000011010000005900000074000011010000005c00000078000011010000005e0000007c000011010000006100000080000002010000187a0000008400000201000017aa00000088000002010000142c0000008c00000201000013ee0000009000000201000016da00000094000002010000160a0000009800000201000013a80000009c000002010000153a000000a0000002010000139e000000a4000002010000146a000000a80000020100001394000000ac00000201000013b0000000b000000201000033a4000000b4000002010000334a000000cc000011010000003f000000d80000020100002476000000dc000002010000075c000000e000000201000022fa000000e400000201000022b40000011e000011010000006300000122000011010000006800000126000011010000006d0000012a00001101000000720000012e000011010000007700000132000011010000007c0000013600001101000000810000013a00001101000000860000013e000011010000008b0000014200001101000000900000014600001101000000940000014a00001101000000980000014e000011010000009c0000015200001101000000a00000015600001101000000a40000015a00001101000000a90000015e000011010000000c0000016200001101000000ae0000016600001101000000b90000017400001101000000c20000017800001101000000c60000017c00001101000000ca0000018000001101000000ce0000018400001101000000d20000019400001101000000630000019800001101000000680000019c000011010000006d000001a00000110100000072000001a40000110100000077000001a8000011010000007c000001ac0000110100000081000001b00000110100000086000001b4000011010000008b000001b80000110100000090000001bc0000110100000094000001c00000110100000098002e73796d746162002e737472746162002e7368737472746162002e72656c612e74657874002e72656c612e64617461002e627373002e726f646174612e737472312e31002e72656c612e726f646174610000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000010000000600000000000000340000572a000000000000000000000004000000000000001b00000004000000400000000000007dec00000f3c0000000900000001000000040000000c0000002b0000000100000003000000000000576000000f44000000000000000000000004000000000000002600000004000000400000000000008d28000001d40000000900000003000000040000000c00000031000000080000000300000000000066a4000000000000000000000000000000040000000000000036000000010000003200000000000066a4000000d7000000000000000000000001000000010000004a0000000100000002000000000000677c000001cf000000000000000000000002000000000000004500000004000000400000000000008efc0000036c0000000900000007000000040000000c000000010000000200000000000000000000694c00000bd00000000a0000007a0000000400000010000000090000000300000000000000000000751c000008d00000000000000000000000010000000000000011000000030000000000000000000092680000005200000000000000000000000100000000", + "sha256": "7651879d9e67d788709b7cd6327a16c581a253ea6d57050d3008ce9c7459b3eb", "stockCopies": [ { "section": 1, diff --git a/src/engine/assets/resident-dsp.json b/src/engine/assets/resident-dsp.json index 22f05696a..6f77348f6 100644 --- a/src/engine/assets/resident-dsp.json +++ b/src/engine/assets/resident-dsp.json @@ -335,7 +335,7 @@ ] } ], - "sourceCommit": "9be221aabc43919ab1165cad9df7c1415b96f2f7", + "sourceCommit": "ebceb74f8ad1676bd8cb934b875d6f064ea2ab48", "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 0d8093a0f..8c39fbedf 100644 --- a/src/engine/assets/rom-packages.json +++ b/src/engine/assets/rom-packages.json @@ -494,7 +494,7 @@ "sha256": "fdba0ffd31b7932ceb1ded3bde9a976b6f148ae96fc73a4efc4fedf6fb692341" } ], - "sourceCommit": "9be221aabc43919ab1165cad9df7c1415b96f2f7", + "sourceCommit": "ebceb74f8ad1676bd8cb934b875d6f064ea2ab48", "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 5456c8a31..0e1023d55 100644 --- a/src/engine/assets/usb-audio-packages.json +++ b/src/engine/assets/usb-audio-packages.json @@ -553,7 +553,7 @@ } ] }, - "sourceCommit": "9be221aabc43919ab1165cad9df7c1415b96f2f7", + "sourceCommit": "ebceb74f8ad1676bd8cb934b875d6f064ea2ab48", "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 c70a89005..810431651 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": "9be221aabc43919ab1165cad9df7c1415b96f2f7", + "sourceCommit": "ebceb74f8ad1676bd8cb934b875d6f064ea2ab48", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", From d66b4ed97926b457549db94e9ee05e919f1e578d Mon Sep 17 00:00:00 2001 From: repeat98 Date: Sun, 8 Nov 2026 14:44:15 +0100 Subject: [PATCH 29/33] VECTOR 0.3.0: emulator results for the MIDI generator (USB package and card image), the .bss note corrected Co-Authored-By: Claude Opus 5.5 --- sdk/octabam/modules/vector/TESTING.md | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/sdk/octabam/modules/vector/TESTING.md b/sdk/octabam/modules/vector/TESTING.md index 95a290e3a..25e45d428 100644 --- a/sdk/octabam/modules/vector/TESTING.md +++ b/sdk/octabam/modules/vector/TESTING.md @@ -120,10 +120,31 @@ A temporary probe (not shipped) split the 1.3 ms build by stage: copying the rec The hoisted scale lookup in `engine.c` gives the same phrases as 0.2.4 over 18,144,000 parameter sets (a throwaway host comparison of both engines), and `test_engine.c` passes. `sdk/tests/test_machine_events.py` checks the base's registry on the host (`test_midi_generators.c`), the package glue and the port's sources. -Card builds and .bss, 8 November 2026 (found by `machine_composition_tests`, not on a unit): the base's generator registry, which a card build links into VECTOR, has statics without an initialiser, and the compiler put them (144 bytes) in .bss. A card unit's .bss is never loaded or zeroed (`tools/remix/platform_build.py`), so on a card `mg_active` and the list's cursor would have started as whatever the boot left. `prepare.py` now puts them in .data as zeros and stops if any .bss is left; the code is unchanged (22,314 text bytes), .data grows by 144. Over USB the package was not affected (the loader zeroes a package's .bss, `sdk/runtime/loader/loader.c`), so the October unit runs stand. +Card builds and .bss, 8 November 2026 (found by `machine_composition_tests`, not on a unit): the base's generator registry, which a card build links into VECTOR, has statics without an initialiser, and the compiler put them (144 bytes) in .bss. octabam's native card builder never loads or zeroes a unit's .bss (`tools/remix/platform_build.py`), so there `mg_active` and the list's cursor would start as whatever the boot left; the site's card builder sizes the runtime past .bss (`src/engine/coldfire-link.ts`), so its images ship those bytes as zeros, and the USB loader zeroes a package's .bss (`sdk/runtime/loader/loader.c`). `prepare.py` now puts them in .data as zeros and stops if any .bss is left, so every path starts them at zero and the two-origin composition proof holds; the code is unchanged (22,314 text bytes), .data grows by 144. Not tested: a card build on the unit (layout A included); a physical power cycle with a VECTOR MIDI track (RAM boots kept it: the battery-backed bank restore and the Part validator pass); a project save and reload; scenes and LFOs on a VECTOR MIDI track; MKI. Two RAM boots of development twins out of about fifteen did not come back on USB (one stall record: frames stopped 41 s after a boot with no module installed); a power cycle recovered both, and the next boot of the same image worked. It matches the RAM-boot trap of 19 October 2026 and was not reproduced. +## MIDI generator in the emulator (8 November 2026) + +Emulator results only, not hardware evidence: `ot_emu` (idle-adapted build, no DSP), MKII panel, a private copy of a Template Live card, VECTOR's exact USB package `b66a440e…` installed over emulated USB on the committed beta base, and a card image of this source composed by the site's builder (`composeSelection`). Steps checked against the Part and pattern bytes and LCD captures; MIDI out taken from a cold boot of the saved project. + +| What | USB package | Card image | +|---|---|---| +| Install, removal, reinstall over USB | passed | n/a | +| Boot with no crash or stall record | passed | passed | +| NOTE SETUP's list by double-tap SRC and double-tap TRACK; YES on VECTOR writes `4d56`, the defaults and NOTE/VEL/LEN 48/100/6 | passed | passed | +| Every encoder on SRC, AMP and FUNC+AMP (OCT moves every lock by 12; PROB conditions only off the beat; HUMN micro-timing; GATE the LEN locks); NO back | passed | passed | +| YES: new seed and phrase; held trig shows stock's NOTE page with the step's locks | passed | passed | +| A second MIDI track keeps its own settings and phrase | passed | passed | +| OFF: arp step mask `ffff`, arp defaults; after removal stock's page | passed | passed | +| Audio track: SRC SETUP page 2 (SEED…DIR) shows and edits | passed | passed | +| MIDI out: 71 note-ons in phrase order, one per 16th; no chord notes | passed | passed | +| MIDI out, PROB 1%: 29 note-ons in 7.6 bars, all on steps 1, 5, 9, 13 | passed | not run | +| MIDI out, HUMN 23: all 78 note-ons at step + k/24 (k -21..+19) within 0.002 step | passed | not run | +| Part switch | not run: needs DSP in the emulator | not run | + +On the base of #1332 (the list's first row ARP, scrolling, room 16) the same USB pass gave 31 passed and the Part switch skipped; ARP from VECTOR gives mask `ffff` and stock's ARPEGGIATOR page with MODE OFF. A card image composed before the .bss fix (`bd2af8c3d`) behaved the same in the emulator, which starts with zeroed memory. Footer: VECTOR's pages still read MIDI NOTE and MIDI ARPEGGIATOR (stock's page names), a known cosmetic gap. + ## Owner exception and remaining limits On 9 October 2026 the owner stated: "Approve release and closure with hardware reboot/audio unverified" after receiving the exact 0.2.4 private image and source patch. `sdk/vector-build-approval.json` binds this separate current-build-hardware exception to the source/image above. `hardwareStatus` stays `untested`; no physical reboot, audible playback, chip timing, maximum audio stress or hardware canary pass is claimed. The 0.2.3 approval remains historical and is not reused. Already reset projects need a known-good backup. The issue closure must name these limits and explain how to reopen. From 2119fd601c09c58977566eebff007062a2a09855 Mon Sep 17 00:00:00 2001 From: repeat98 Date: Sun, 8 Nov 2026 14:46:51 +0100 Subject: [PATCH 30/33] VECTOR 0.3.0: named VECTOR MIDI on the site, its summary names MIDI tracks Co-Authored-By: Claude Opus 5.5 --- sdk/octabam/modules/vector/octamod.module.json | 6 +++--- src/catalog/module-documents.json | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/sdk/octabam/modules/vector/octamod.module.json b/sdk/octabam/modules/vector/octamod.module.json index 743ff5138..fd9f973b8 100644 --- a/sdk/octabam/modules/vector/octamod.module.json +++ b/sdk/octabam/modules/vector/octamod.module.json @@ -2,7 +2,7 @@ "schemaVersion": 2, "id": "vector", "key": "VECTOR", - "name": "VECTOR", + "name": "VECTOR MIDI", "version": "0.3.0-experimental", "category": "machines", "author": { @@ -16,8 +16,8 @@ "nativeManifest": "manifest.py", "presentation": { "label": "GENERATIVE", - "family": "Sample pattern generator", - "summary": "Shape an editable sample phrase directly on both native SRC pages.", + "family": "Sample and MIDI pattern generator", + "summary": "Shape an editable phrase on a sample track's SRC pages, or on a MIDI track's SRC and AMP pages.", "overview": "VECTOR commits real trigs and PTCH/HOLD/VOL locks as its SRC parameters change. The native sequencer plays the result immediately. SRC SETUP holds secondary controls. This update protects packed settings from stock Part validation during startup. Physical hardware remains untested; the owner approved release and issue closure with physical reboot/audio unverified.", "highlights": [ "Immediate sequence changes while playing", diff --git a/src/catalog/module-documents.json b/src/catalog/module-documents.json index c8a55068a..f564a8a91 100644 --- a/src/catalog/module-documents.json +++ b/src/catalog/module-documents.json @@ -6206,7 +6206,7 @@ "schemaVersion": 2, "id": "vector", "key": "VECTOR", - "name": "VECTOR", + "name": "VECTOR MIDI", "version": "0.3.0-experimental", "category": "machines", "source": { @@ -6246,8 +6246,8 @@ "nativeManifest": "manifest.py", "presentation": { "label": "GENERATIVE", - "family": "Sample pattern generator", - "summary": "Shape an editable sample phrase directly on both native SRC pages.", + "family": "Sample and MIDI pattern generator", + "summary": "Shape an editable phrase on a sample track's SRC pages, or on a MIDI track's SRC and AMP pages.", "overview": "VECTOR commits real trigs and PTCH/HOLD/VOL locks as its SRC parameters change. The native sequencer plays the result immediately. SRC SETUP holds secondary controls. This update protects packed settings from stock Part validation during startup. Physical hardware remains untested; the owner approved release and issue closure with physical reboot/audio unverified.", "highlights": [ "Immediate sequence changes while playing", From cd988717aa9d86a86887cd309ce0df8a2aa88511 Mon Sep 17 00:00:00 2001 From: repeat98 Date: Sun, 8 Nov 2026 14:48:49 +0100 Subject: [PATCH 31/33] VECTOR 0.3.0: on main with the MIDI generator list (#1332): control.s, pins and figures Co-Authored-By: Claude Opus 5.5 --- .../module-adapters/machine-ports.json | 2 +- .../module-adapters/vector_runtime.py | 2 +- sdk/octabam/modules/vector/control.s | 1096 +++++++++-------- .../modules/vector/media/core-tests.json | 2 +- .../modules/vector/octamod.module.json | 14 +- 5 files changed, 581 insertions(+), 535 deletions(-) diff --git a/sdk/machines/octatrack/module-adapters/machine-ports.json b/sdk/machines/octatrack/module-adapters/machine-ports.json index f22097d97..a2e08831a 100644 --- a/sdk/machines/octatrack/module-adapters/machine-ports.json +++ b/sdk/machines/octatrack/module-adapters/machine-ports.json @@ -151,7 +151,7 @@ }, "vector": { "sources": { - "sdk/octabam/modules/vector/control.s": "3e9cefa630c8425af9b2ea48cf4ce88bb9a48fa18bb1876cd1447dc12d0212b9", + "sdk/octabam/modules/vector/control.s": "e12b5f82744d14a5511a605fabc5ff0624387084164c59143f9ddccec1f207dd", "sdk/octabam/modules/vector/manifest.py": "b9dec167f8bd4f1b691069cc89834f6c2a6717b874eb28629ef5c8c026d3d976" }, "contribute": [ diff --git a/sdk/machines/octatrack/module-adapters/vector_runtime.py b/sdk/machines/octatrack/module-adapters/vector_runtime.py index 4b5953ba4..8077d6004 100644 --- a/sdk/machines/octatrack/module-adapters/vector_runtime.py +++ b/sdk/machines/octatrack/module-adapters/vector_runtime.py @@ -4,7 +4,7 @@ import hashlib from pathlib import Path -CONTROL_SHA256 = '3e9cefa630c8425af9b2ea48cf4ce88bb9a48fa18bb1876cd1447dc12d0212b9' +CONTROL_SHA256 = 'e12b5f82744d14a5511a605fabc5ff0624387084164c59143f9ddccec1f207dd' ARITHMETIC = ( ('\tsub.l #staging-268525901,%a1', '\tadd.l #268525901,%a1\n\tsub.l #staging,%a1'), ('\tlea saved-1187503478,%a1', '\tlea saved,%a1\n\tsub.l #1187503478,%a1'), diff --git a/sdk/octabam/modules/vector/control.s b/sdk/octabam/modules/vector/control.s index 8980faa68..7470994c3 100644 --- a/sdk/octabam/modules/vector/control.s +++ b/sdk/octabam/modules/vector/control.s @@ -5672,17 +5672,17 @@ st_setup_knob: .globl mg_page .type mg_page, @function mg_page: - link.w %fp,#-16 + link.w %fp,#-64 move.l #vector_midi,%d1 move.l %d2,-(%sp) move.l #mg_page_layer,%d2 move.l 1074061804,%d0 - move.l %d1,-16(%fp) + move.l %d1,-64(%fp) cmp.l mg_active.l,%d2 jeq .L1006 .L992: move.l 8(%fp),%d0 - move.l -20(%fp),%d2 + move.l -68(%fp),%d2 unlk %fp rts .L1006: @@ -5715,7 +5715,7 @@ mg_page: muls.l %d2,%d1 pea (%a0,%d1.l) move.l %d0,-(%sp) - pea -16(%fp) + pea -64(%fp) jsr mg_page_view lea (16,%sp),%sp tst.l %d0 @@ -5733,7 +5733,7 @@ mg_page: move.l 8(%fp),-(%sp) jsr (%a0) lea (12,%sp),%sp - move.l -20(%fp),%d2 + move.l -68(%fp),%d2 move.l %d0,8(%fp) move.l 8(%fp),%d0 unlk %fp @@ -5744,7 +5744,7 @@ mg_page: move.l 8(%fp),-(%sp) jsr (%a0) lea (12,%sp),%sp - move.l -20(%fp),%d2 + move.l -68(%fp),%d2 move.l %d0,8(%fp) move.l 8(%fp),%d0 unlk %fp @@ -5828,26 +5828,28 @@ mg_track_tap: .size mg_track_tap, .-mg_track_tap .section .rodata.str1.1 .LC8: + .string "ARP" +.LC9: .string "VECTOR" .text .align 2 .globl mg_note_setup_draw .type mg_note_setup_draw, @function mg_note_setup_draw: - lea (-12,%sp),%sp - move.l %a2,-(%sp) + lea (-20,%sp),%sp + movem.l #1036,(%sp) jsr mg_stock_note_draw move.l 1074061804,%d0 move.l 1074513600,%a0 cmp.l #mg_page_site,%d0 jne .L1023 tst.l %a0 - jne .L1040 + jne .L1045 .L1023: - move.l (%sp)+,%a2 - lea (12,%sp),%sp + movem.l (%sp),#1036 + lea (20,%sp),%sp rts -.L1040: +.L1045: tst.l -2147483630 jeq .L1023 move.l 1187521622,%d0 @@ -5858,254 +5860,293 @@ mg_note_setup_draw: mov3q.l #7,%d1 cmp.l %d0,%d1 jcs .L1023 - move.l 40(%a0),%a1 - lea (36,%a0),%a0 - move.l %a1,12(%sp) + move.l mg_cursor,%d0 + mov3q.l #1,%d2 + cmp.l %d0,%d2 + jcs .L1025 + move.l mg_top,%d1 + mov3q.l #2,%d3 + addq.l #5,%d1 + cmp.l %d1,%d3 + jcs .L1046 +.L1026: + move.l 40(%a0),%a2 + move.l %a0,%d2 clr.l -(%sp) - move.l %a0,12(%sp) - pea -10(%a1) + add.l #36,%d2 + pea -10(%a2) pea 50.w mov3q.l #2,-(%sp) mov3q.l #3,-(%sp) - move.l %a0,-(%sp) + move.l %d2,-(%sp) + move.l %d0,mg_top jsr 1073816148 - pea .LC1 - mov3q.l #-1,-(%sp) - move.l 44(%sp),%a2 + lea (24,%sp),%sp + mov3q.l #1,%d3 + move.l mg_top,%d0 + cmp.l %d0,%d3 + jcs .L1028 lea (-20,%a2),%a2 - move.l %a2,-(%sp) + move.l %a2,16(%sp) + tst.l %d0 + jne .L1030 + pea .LC8 + mov3q.l #-1,-(%sp) + move.l 24(%sp),-(%sp) mov3q.l #5,-(%sp) - move.l 48(%sp),-(%sp) + move.l %d2,-(%sp) move.l #1074505846,-(%sp) jsr 1073818584 - lea (48,%sp),%sp + lea (24,%sp),%sp move.l mg_cursor,%d0 tst.l %d0 - jeq .L1027 - move.l 12(%sp),%a2 - lea (-28,%a2),%a2 -.L1028: - pea .LC8 + jeq .L1032 +.L1029: + move.l mg_top,%d1 + mov3q.l #1,%d3 + move.l %d1,%d0 + addq.l #5,%d0 + cmp.l %d0,%d3 + jcc .L1028 + mov3q.l #1,%d0 + sub.l %d1,%d0 + lsl.l #3,%d0 + move.l 16(%sp),%a2 + sub.l %d0,%a2 +.L1030: + pea .LC9 mov3q.l #-1,-(%sp) move.l %a2,-(%sp) mov3q.l #5,-(%sp) - move.l 24(%sp),-(%sp) + move.l %d2,-(%sp) move.l #1074505846,-(%sp) jsr 1073818584 lea (24,%sp),%sp move.l mg_cursor,%d0 mov3q.l #1,%d1 cmp.l %d0,%d1 - jne .L1026 -.L1027: + jne .L1028 +.L1032: mov3q.l #-1,-(%sp) pea 6(%a2) pea 50.w pea -1(%a2) mov3q.l #3,-(%sp) - subq.l #8,%a2 - move.l 28(%sp),-(%sp) - move.l %d0,28(%sp) + move.l %d2,-(%sp) + move.l %d0,36(%sp) jsr 1073816148 lea (24,%sp),%sp - tst.l 4(%sp) - jeq .L1028 -.L1026: - move.l (%sp)+,%a2 + tst.l 12(%sp) + jeq .L1029 +.L1028: + movem.l (%sp),#1036 mov3q.l #1,1187497772 - lea (12,%sp),%sp + lea (20,%sp),%sp rts +.L1025: + move.l mg_top,%d0 + mov3q.l #2,%d1 + addq.l #5,%d0 + cmp.l %d0,%d1 + scc %d0 + mov3q.l #1,mg_cursor + mvs.b %d0,%d0 + neg.l %d0 + jra .L1026 +.L1046: + clr.l %d0 + jra .L1026 .size mg_note_setup_draw, .-mg_note_setup_draw .align 2 .globl mg_key .type mg_key, @function mg_key: - link.w %fp,#-80 + link.w %fp,#-128 moveq #51,%d0 movem.l #1036,(%sp) move.l 12(%fp),%a1 cmp.l 8(%fp),%d0 - jeq .L1071 + jeq .L1077 moveq #32,%d1 cmp.l 8(%fp),%d1 - jeq .L1072 + jeq .L1078 moveq #49,%d2 cmp.l 8(%fp),%d2 - jeq .L1073 + jeq .L1079 moveq #50,%d3 cmp.l 8(%fp),%d3 - jeq .L1074 + jeq .L1080 move.l 1074061804,%d1 mov3q.l #1,%d0 lea vector_midi,%a0 - move.l %a0,-16(%fp) + move.l %a0,-64(%fp) cmp.l %a1,%d0 - jne .L1043 + jne .L1049 cmp.l #mg_page_site,%d1 seq %d0 move.l mg_active,%a0 moveq #16,%d2 - move.l %d2,-58(%fp) + move.l %d2,-106(%fp) mvs.b %d0,%d0 neg.l %d0 cmp.l #mg_list_layer,%a0 - jeq .L1122 -.L1048: + jeq .L1128 +.L1054: cmp.l #mg_page_layer,%a0 - jeq .L1123 -.L1043: + jeq .L1129 +.L1049: move.l %a1,-(%sp) move.l 8(%fp),-(%sp) jsr mg_forward addq.l #8,%sp -.L1041: - movem.l -80(%fp),#1036 +.L1047: + movem.l -128(%fp),#1036 unlk %fp rts -.L1122: +.L1128: cmp.l #mg_page_site,%d1 - jne .L1048 + jne .L1054 tst.l -2147483630 - jeq .L1048 + jeq .L1054 move.l 1187521622,%d1 add.l #-1073741824,%d1 cmp.l #133169151,%d1 - jhi .L1048 + jhi .L1054 mvz.b 269161676,%d1 mov3q.l #7,%d3 cmp.l %d1,%d3 - jcs .L1048 + jcs .L1054 moveq #49,%d1 cmp.l 8(%fp),%d1 - jeq .L1124 + jeq .L1130 moveq #51,%d1 cmp.l 8(%fp),%d1 - jeq .L1065 + jeq .L1071 moveq #32,%d2 cmp.l 8(%fp),%d2 - jne .L1048 - move.l -58(%fp),%d3 + jne .L1054 + move.l -106(%fp),%d3 or.l %d3,mg_mine cmp.l mg_cursor.l,%d0 - jls .L1057 + jls .L1063 mov3q.l #1,mg_cursor -.L1057: +.L1063: jsr mg_note_setup_draw -.L1127: - movem.l -80(%fp),#1036 +.L1133: + movem.l -128(%fp),#1036 unlk %fp rts -.L1123: +.L1129: tst.l -2147483630 - jeq .L1043 + jeq .L1049 move.l #1187521622,%a0 move.l (%a0),%d1 add.l #-1073741824,%d1 cmp.l #133169151,%d1 - jhi .L1043 + jhi .L1049 move.l #269161676,%a2 mov3q.l #7,%d2 mvz.b (%a2),%d1 cmp.l %d1,%d2 - jcs .L1043 - move.b (%a2),-54(%fp) + jcs .L1049 + move.b (%a2),-102(%fp) move.l (%a0),%a0 mov3q.l #3,%d2 add.l #585088,%a0 move.b 269161679,%d1 - mvz.b -54(%fp),%d3 + mvz.b -102(%fp),%d3 move.l %d3,-(%sp) mvz.w #6322,%d3 and.l %d2,%d1 muls.l %d3,%d1 pea (%a0,%d1.l) move.l %d0,-(%sp) - pea -16(%fp) - move.l %a1,-62(%fp) + pea -64(%fp) + move.l %a1,-110(%fp) jsr mg_page_view lea (16,%sp),%sp - move.l -62(%fp),%a1 + move.l -110(%fp),%a1 tst.l %d0 - jeq .L1043 + jeq .L1049 moveq #49,%d1 cmp.l 8(%fp),%d1 - jeq .L1125 + jeq .L1131 moveq #50,%d0 cmp.l 8(%fp),%d0 - jne .L1043 + jne .L1049 tst.l mg_second - jeq .L1043 - move.l -58(%fp),%d1 + jeq .L1049 + move.l -106(%fp),%d1 mov3q.l #-1,-(%sp) clr.l mg_second or.l %d1,mg_mine jsr 1074059592 - movem.l -80(%fp),#1036 + movem.l -128(%fp),#1036 mov3q.l #1,1187497772 addq.l #4,%sp unlk %fp rts -.L1071: - mov3q.l #1,-58(%fp) -.L1042: +.L1077: + mov3q.l #1,-106(%fp) +.L1048: mov3q.l #1,%d0 cmp.l %a1,%d0 - jeq .L1045 + jeq .L1051 move.l mg_mine,%d0 - move.l -58(%fp),%d1 + move.l -106(%fp),%d1 and.l %d0,%d1 tst.l %d1 - jne .L1126 + jne .L1132 move.l 1074061804,%d0 move.l #vector_midi,%d1 move.l %a1,-(%sp) move.l 8(%fp),-(%sp) - move.l %d1,-16(%fp) + move.l %d1,-64(%fp) jsr mg_forward addq.l #8,%sp - jra .L1041 -.L1045: + jra .L1047 +.L1051: move.l 1074061804,%d1 move.l #vector_midi,%d2 move.l mg_active,%a0 - move.l %d2,-16(%fp) + move.l %d2,-64(%fp) cmp.l #mg_page_site,%d1 seq %d0 mvs.b %d0,%d0 neg.l %d0 cmp.l #mg_list_layer,%a0 - jne .L1048 - jra .L1122 -.L1126: + jne .L1054 + jra .L1128 +.L1132: tst.l %a1 - jne .L1041 - move.l -58(%fp),%d1 + jne .L1047 + move.l -106(%fp),%d1 not.l %d1 and.l %d0,%d1 - movem.l -80(%fp),#1036 + movem.l -128(%fp),#1036 move.l %d1,mg_mine unlk %fp rts -.L1072: - mov3q.l #2,-58(%fp) - jra .L1042 -.L1073: - mov3q.l #4,-58(%fp) - jra .L1042 -.L1074: +.L1078: + mov3q.l #2,-106(%fp) + jra .L1048 +.L1079: + mov3q.l #4,-106(%fp) + jra .L1048 +.L1080: moveq #8,%d3 - move.l %d3,-58(%fp) - jra .L1042 -.L1125: + move.l %d3,-106(%fp) + jra .L1048 +.L1131: move.l %d0,%a2 move.l 28(%a2),%a0 tst.l %a0 - jeq .L1043 - move.l -58(%fp),%d1 + jeq .L1049 + move.l -106(%fp),%d1 or.l %d1,mg_mine move.l 1175262852,%d0 cmp.l #vector_midi_yes,%a0 - jne .L1068 + jne .L1074 move.b 269161676,%d0 mov3q.l #1,-(%sp) mov3q.l #1,-(%sp) @@ -6114,39 +6155,39 @@ mg_key: jsr midi_generate lea (12,%sp),%sp tst.l %d0 - jeq .L1080 + jeq .L1086 pea 32.w move.l #.LC5,%d0 move.l %d0,-(%sp) jsr 1074111160 addq.l #8,%sp -.L1070: +.L1076: mov3q.l #-1,-(%sp) jsr 1074059592 mov3q.l #1,1187497772 addq.l #4,%sp -.L1128: - movem.l -80(%fp),#1036 +.L1134: + movem.l -128(%fp),#1036 unlk %fp rts -.L1080: +.L1086: pea 32.w move.l #.LC6,%d0 move.l %d0,-(%sp) jsr 1074111160 addq.l #8,%sp - jra .L1070 -.L1065: - move.l -58(%fp),%d1 + jra .L1076 +.L1071: + move.l -106(%fp),%d1 move.l mg_cursor,%d0 or.l %d1,mg_mine tst.l %d0 - jeq .L1057 + jeq .L1063 subq.l #1,%d0 move.l %d0,mg_cursor jsr mg_note_setup_draw - jra .L1127 -.L1068: + jra .L1133 +.L1074: move.l %d0,-(%sp) jsr (%a0) addq.l #4,%sp @@ -6154,28 +6195,28 @@ mg_key: jsr 1074059592 mov3q.l #1,1187497772 addq.l #4,%sp - jra .L1128 -.L1124: + jra .L1134 +.L1130: mov3q.l #1,-(%sp) pea 49.w - move.l %d0,-62(%fp) + move.l %d0,-110(%fp) jsr mg_forward addq.l #8,%sp move.l mg_cursor,%d2 mvz.b 269161676,%d1 - move.l -62(%fp),%d0 - move.l %d2,-58(%fp) + move.l -110(%fp),%d0 + move.l %d2,-106(%fp) tst.l %d2 - jeq .L1075 + jeq .L1081 cmp.l %d2,%d0 - jcs .L1076 - move.l -16(%fp),%a0 - move.l %a0,-66(%fp) + jcs .L1082 + move.l -64(%fp),%a0 + move.l %a0,-114(%fp) tst.l %a0 - jeq .L1077 + jeq .L1083 move.l 8(%a0),%d2 - move.l %d2,-58(%fp) -.L1050: + move.l %d2,-106(%fp) +.L1056: move.l %d1,%a1 lea (3089,%a1),%a1 move.l %a1,%d2 @@ -6183,70 +6224,70 @@ mg_key: move.l 1187521622,%a0 add.l #585088,%a0 move.b 269161679,%d3 - move.l %d2,-50(%fp) + move.l %d2,-98(%fp) mov3q.l #3,%d2 and.l %d2,%d3 mvz.w #6322,%d2 muls.l %d2,%d3 add.l %d3,%a0 - add.l -50(%fp),%a0 + add.l -98(%fp),%a0 move.b 1(%a0),%d3 mvz.b (%a0),%d2 - move.b %d3,-54(%fp) + move.b %d3,-102(%fp) moveq #77,%d3 cmp.l %d2,%d3 - jne .L1052 + jne .L1058 tst.l %d0 - jeq .L1052 - mvz.b -54(%fp),%d0 - move.l -16(%fp),%a1 + jeq .L1058 + mvz.b -102(%fp),%d0 + move.l -64(%fp),%a1 cmp.l 8(%a1),%d0 - jeq .L1053 + jeq .L1059 move.b (%a0),%d0 - tst.l -66(%fp) - jeq .L1054 -.L1055: + tst.l -114(%fp) + jeq .L1060 +.L1061: move.l %d1,%a0 add.l #-2147457426,%a0 move.b (%a0),%d0 mvz.b -2147483646,%d2 mvz.b %d0,%d0 cmp.l %d0,%d2 - jeq .L1129 + jeq .L1135 move.w %d1,%d2 move.l %d1,%d3 move.l #mg_arp_page,%d0 lsl.l #5,%d3 lea mg_arp_setup_slots,%a0 - move.l %a0,-32(%fp) - clr.l -36(%fp) + move.l %a0,-80(%fp) + clr.l -84(%fp) mulu.w #68,%d2 move.l %d3,%a1 sub.l #mg_arp_page-1005,%d3 - move.l %d3,-20(%fp) + move.l %d3,-68(%fp) move.l %d2,%a0 move.l #-1187473662,%d2 sub.l %a1,%d2 add.l #1187474924,%a0 - move.l %d2,-24(%fp) -.L1060: + move.l %d2,-72(%fp) +.L1066: move.l 1187521622,%a1 move.l #269161679,%a2 - move.b (%a2),-51(%fp) + move.b (%a2),-99(%fp) mov3q.l #3,%d3 move.l %d0,%a2 add.l #585088,%a1 - move.b (%a2)+,-37(%fp) - move.b -51(%fp),%d2 + move.b (%a2)+,-85(%fp) + move.b -99(%fp),%d2 move.l %a2,%d0 - move.l -20(%fp),%a2 + move.l -68(%fp),%a2 add.l %d0,%a2 - move.l %a2,-42(%fp) + move.l %a2,-90(%fp) and.l %d3,%d2 mvz.w #6322,%d3 muls.l %d3,%d2 add.l %d2,%a1 - move.b -37(%fp),%d2 + move.b -85(%fp),%d2 move.b %d2,(%a1,%a2.l) move.l #269161679,%a2 move.b (%a2),%d3 @@ -6256,29 +6297,29 @@ mg_key: and.l %d3,%d2 mvz.w #6322,%d3 muls.l %d3,%d2 - move.l -42(%fp),%d3 + move.l -90(%fp),%d3 move.l %d2,%a1 add.l #269110990,%a1 - move.b -37(%fp),%d2 + move.b -85(%fp),%d2 move.b %d2,(%a1,%d3.l) mov3q.l #3,%d3 move.l 1187521622,%a1 add.l #585088,%a1 - move.b (%a2),-39(%fp) - move.l -32(%fp),%a2 - move.l %a1,-28(%fp) - addq.l #1,-32(%fp) - move.b (%a2)+,-54(%fp) - move.b -39(%fp),%d2 - move.l -24(%fp),%a2 + move.b (%a2),-87(%fp) + move.l -80(%fp),%a2 + move.l %a1,-76(%fp) + addq.l #1,-80(%fp) + move.b (%a2)+,-102(%fp) + move.b -87(%fp),%d2 + move.l -72(%fp),%a2 add.l %a0,%a2 - move.l %a2,-46(%fp) + move.l %a2,-94(%fp) and.l %d3,%d2 mvz.w #6322,%d3 muls.l %d3,%d2 move.l %d2,%a1 - move.b -54(%fp),%d2 - add.l -28(%fp),%a1 + move.b -102(%fp),%d2 + add.l -76(%fp),%a1 move.b %d2,(%a1,%a2.l) move.b 269161679,%d3 move.w %d3,%a1 @@ -6287,25 +6328,25 @@ mg_key: and.l %d3,%d2 mvz.w #6322,%d3 muls.l %d3,%d2 - move.l -46(%fp),%d3 + move.l -94(%fp),%d3 move.l %d2,%a1 add.l #269110990,%a1 - move.b -54(%fp),%d2 + move.b -102(%fp),%d2 move.b %d2,(%a1,%d3.l) - tst.l -36(%fp) - jeq .L1059 - move.b -37(%fp),-32(%a0) -.L1059: - move.b -54(%fp),(%a0)+ + tst.l -84(%fp) + jeq .L1065 + move.b -85(%fp),-32(%a0) +.L1065: + move.b -102(%fp),(%a0)+ cmp.l #mg_arp_page+6,%d0 - jne .L1060 + jne .L1066 move.l %d1,%d0 lsl.l #4,%d0 move.l %d0,%a1 add.l #6210,%d0 lea (6194,%a1),%a1 - move.l %d0,-54(%fp) -.L1061: + move.l %d0,-102(%fp) +.L1067: move.l 1187521622,%a0 mov3q.l #3,%d3 move.b 269161679,%d0 @@ -6326,24 +6367,24 @@ mg_key: clr.b %d0 move.b %d0,(%a0,%a1.l) addq.l #1,%a1 - cmp.l -54(%fp),%a1 - jne .L1061 - tst.l -66(%fp) - jeq .L1079 + cmp.l -102(%fp),%a1 + jne .L1067 + tst.l -114(%fp) + jeq .L1085 move.l 1187521622,%a0 mov3q.l #3,%d2 move.b 269161679,%d0 move.w #77,%a1 mvz.w #6322,%d3 add.l #585088,%a0 - add.l -50(%fp),%a0 + add.l -98(%fp),%a0 and.l %d2,%d0 move.w %a1,%d2 muls.l %d3,%d0 mov3q.l #3,%d3 move.b %d2,(%a0,%d0.l) mvz.w #6322,%d2 - move.l -50(%fp),%a0 + move.l -98(%fp),%a0 move.b 269161679,%d0 and.l %d3,%d0 move.w %a1,%d3 @@ -6351,16 +6392,16 @@ mg_key: add.l %d0,%a0 add.l #269110990,%a0 move.b %d3,(%a0) - tst.l -66(%fp) - jeq .L1130 -.L1063: + tst.l -114(%fp) + jeq .L1136 +.L1069: move.l 1187521622,%a0 mov3q.l #3,%d2 move.b 269161679,%d0 move.l %d1,%d3 add.l #591267,%a0 add.l %d3,%d3 - lea (-55,%fp),%a1 + lea (-103,%fp),%a1 move.l #269117169,%a2 and.l %d2,%d0 mvz.w #6322,%d2 @@ -6374,52 +6415,52 @@ mg_key: and.l %d2,%d0 muls.l %d3,%d0 move.b (%a1),(%a2,%d0.l) - move.l %d1,-62(%fp) + move.l %d1,-110(%fp) jsr mg_dirty - move.l -62(%fp),%d1 - tst.l -66(%fp) - jeq .L1057 - move.l -66(%fp),%a1 + move.l -110(%fp),%d1 + tst.l -114(%fp) + jeq .L1063 + move.l -114(%fp),%a1 move.l 16(%a1),%a0 tst.l %a0 - jeq .L1057 + jeq .L1063 cmp.l #vector_midi_assign,%a0 - jne .L1064 + jne .L1070 move.l %d1,-(%sp) jsr (vector_midi_assign.part.0) addq.l #4,%sp jsr mg_note_setup_draw - jra .L1127 -.L1052: - tst.l -66(%fp) - jne .L1055 -.L1054: + jra .L1133 +.L1058: + tst.l -114(%fp) + jne .L1061 +.L1060: move.l 1187521622,%a0 mov3q.l #3,%d2 move.b 269161679,%d0 mvz.w #6322,%d3 add.l #585088,%a0 - add.l -50(%fp),%a0 + add.l -98(%fp),%a0 and.l %d2,%d0 moveq #77,%d2 muls.l %d3,%d0 mvz.b (%a0,%d0.l),%d0 cmp.l %d0,%d2 - jeq .L1055 + jeq .L1061 jsr mg_note_setup_draw - jra .L1127 -.L1130: + jra .L1133 +.L1136: mvz.w #255,%d0 - move.l %d0,-58(%fp) - jra .L1063 -.L1075: - clr.l -66(%fp) - jra .L1050 -.L1076: - clr.l -66(%fp) - clr.l -58(%fp) - jra .L1050 -.L1129: + move.l %d0,-106(%fp) + jra .L1069 +.L1081: + clr.l -114(%fp) + jra .L1056 +.L1082: + clr.l -114(%fp) + clr.l -106(%fp) + jra .L1056 +.L1135: move.l %d1,%a0 add.l #-2147457418,%a0 move.b (%a0),%d0 @@ -6431,10 +6472,10 @@ mg_key: eor.l %d2,%d0 move.w %d1,%d2 lea mg_arp_setup_slots,%a0 - move.l %a0,-32(%fp) + move.l %a0,-80(%fp) move.l %d3,%a1 sub.l #mg_arp_page-1005,%d3 - move.l %d3,-20(%fp) + move.l %d3,-68(%fp) tst.b %d0 seq %d0 mulu.w #68,%d2 @@ -6443,26 +6484,26 @@ mg_key: sub.l %a1,%d2 mvs.b %d0,%d0 add.l #1187474924,%a0 - move.l %d2,-24(%fp) + move.l %d2,-72(%fp) neg.l %d0 - move.l %d0,-36(%fp) + move.l %d0,-84(%fp) move.l #mg_arp_page,%d0 - jra .L1060 -.L1079: + jra .L1066 +.L1085: move.l 1187521622,%a0 mov3q.l #3,%d2 move.b 269161679,%d0 move.w #-1,%a1 mvz.w #6322,%d3 add.l #585088,%a0 - add.l -50(%fp),%a0 + add.l -98(%fp),%a0 and.l %d2,%d0 move.w %a1,%d2 muls.l %d3,%d0 mov3q.l #3,%d3 move.b %d2,(%a0,%d0.l) mvz.w #6322,%d2 - move.l -50(%fp),%a0 + move.l -98(%fp),%a0 move.b 269161679,%d0 and.l %d3,%d0 move.w %a1,%d3 @@ -6470,67 +6511,67 @@ mg_key: add.l %d0,%a0 add.l #269110990,%a0 move.b %d3,(%a0) - tst.l -66(%fp) - jne .L1063 - jra .L1130 -.L1053: - cmp.l -66(%fp),%a1 - jeq .L1057 + tst.l -114(%fp) + jne .L1069 + jra .L1136 +.L1059: + cmp.l -114(%fp),%a1 + jeq .L1063 move.l 16(%a1),%a0 tst.l %a0 - jeq .L1055 + jeq .L1061 cmp.l #vector_midi_assign,%a0 - jeq .L1055 + jeq .L1061 clr.l -(%sp) move.l %d1,-(%sp) - move.l %d1,-62(%fp) + move.l %d1,-110(%fp) jsr (%a0) addq.l #8,%sp - move.l -62(%fp),%d1 - jra .L1055 -.L1064: + move.l -110(%fp),%d1 + jra .L1061 +.L1070: mov3q.l #1,-(%sp) move.l %d1,-(%sp) jsr (%a0) addq.l #8,%sp jsr mg_note_setup_draw - jra .L1127 -.L1077: - clr.l -58(%fp) - jra .L1050 + jra .L1133 +.L1083: + clr.l -106(%fp) + jra .L1056 .size mg_key, .-mg_key .align 2 .globl mg_knob .type mg_knob, @function mg_knob: - link.w %fp,#-16 + link.w %fp,#-64 move.l #vector_midi,%d1 move.l %d2,-(%sp) move.l 1074061804,%d0 mov3q.l #5,%d2 - move.l %d1,-16(%fp) + move.l %d1,-64(%fp) cmp.l 8(%fp),%d2 - jcs .L1131 + jcs .L1137 lea mg_page_layer,%a1 cmp.l mg_active.l,%a1 - jeq .L1146 -.L1131: - move.l -20(%fp),%d2 + jeq .L1152 +.L1137: + move.l -68(%fp),%d2 unlk %fp rts -.L1146: +.L1152: tst.l -2147483630 - jeq .L1131 + jeq .L1137 move.l #1187521622,%a0 move.l (%a0),%d1 add.l #-1073741824,%d1 cmp.l #133169151,%d1 - jhi .L1131 + jhi .L1137 move.l #269161676,%a1 mov3q.l #7,%d2 mvz.b (%a1),%d1 cmp.l %d1,%d2 - jcs .L1131 + jcs .L1137 move.b (%a1),%d1 move.l (%a0),%a0 add.l #585088,%a0 @@ -6548,19 +6589,19 @@ mg_knob: muls.l %d2,%d1 pea (%a0,%d1.l) move.l %d0,-(%sp) - pea -16(%fp) + pea -64(%fp) jsr mg_page_view lea (16,%sp),%sp tst.l %d0 - jeq .L1131 + jeq .L1137 move.l %d0,%a1 move.l 24(%a1),%a0 tst.l %a0 - jeq .L1131 + jeq .L1137 move.l mg_second,%d1 move.l 1175262852,%d0 cmp.l #vector_midi_knob,%a0 - jne .L1133 + jne .L1139 move.l %d1,-(%sp) move.l 12(%fp),-(%sp) move.l 8(%fp),-(%sp) @@ -6571,11 +6612,11 @@ mg_knob: jsr 1074059592 mov3q.l #1,1187497772 addq.l #4,%sp -.L1147: - move.l -20(%fp),%d2 +.L1153: + move.l -68(%fp),%d2 unlk %fp rts -.L1133: +.L1139: move.l %d1,-(%sp) move.l 12(%fp),-(%sp) move.l 8(%fp),-(%sp) @@ -6586,20 +6627,20 @@ mg_knob: jsr 1074059592 mov3q.l #1,1187497772 addq.l #4,%sp - jra .L1147 + jra .L1153 .size mg_knob, .-mg_knob .align 2 .globl mg_tick .type mg_tick, @function mg_tick: - link.w %fp,#-44 + link.w %fp,#-92 move.l #1187521622,%a1 movem.l #7180,(%sp) move.l 1074061804,%a2 move.l #vector_midi,%d0 moveq #28,%d3 move.l (%a1),%a3 - move.l %d0,-16(%fp) + move.l %d0,-64(%fp) cmp.l #mg_page_site,%a2 seq %d0 move.b -2147483645,%d1 @@ -6613,15 +6654,15 @@ mg_tick: move.l %a3,%d2 eor.l %d2,%d0 cmp.l #mg_page_site,%a2 - jne .L1149 + jne .L1155 eor.l #vector_midi,%d0 cmp.l %d0,%d1 - jeq .L1150 + jeq .L1156 move.l %d0,mg_seen move.l (%a1),%d0 add.l #-1073741824,%d0 cmp.l #133169151,%d0 - jhi .L1150 + jhi .L1156 move.l (%a1),%a4 mov3q.l #3,%d3 mvz.w #6322,%d2 @@ -6634,42 +6675,42 @@ mg_tick: muls.l %d2,%d0 add.l %d0,%a4 lea (6179,%a4),%a0 - move.l %a0,-24(%fp) -.L1154: - move.l -24(%fp),%a0 + move.l %a0,-72(%fp) +.L1160: + move.l -72(%fp),%a0 move.l %a0,%a1 moveq #77,%d3 move.b (%a0),%d0 mvz.b -(%a1),%d2 cmp.l %d2,%d3 - jne .L1151 + jne .L1157 mvz.b %d0,%d0 - move.l -16(%fp),%a0 + move.l -64(%fp),%a0 cmp.l 8(%a0),%d0 - jeq .L1152 + jeq .L1158 move.b (%a1),%d0 -.L1151: - addq.l #2,-24(%fp) +.L1157: + addq.l #2,-72(%fp) addq.l #1,%d1 lea (68,%a3),%a3 lea (32,%a2),%a2 cmp.l #-2147457410,%d1 - jne .L1154 -.L1150: + jne .L1160 +.L1156: tst.l -2147483630 - jeq .L1155 + jeq .L1161 move.l #1187521622,%a0 move.l (%a0),%d0 add.l #-1073741824,%d0 cmp.l #133169151,%d0 - jhi .L1155 + jhi .L1161 mvz.b 269161676,%d1 move.l (%a0),%d0 mov3q.l #7,%d2 move.b 269161679,%d3 move.w %d3,%a0 cmp.l %d1,%d2 - jcs .L1159 + jcs .L1165 move.l %a0,%d3 mov3q.l #3,%d2 and.l %d2,%d3 @@ -6679,32 +6720,32 @@ mg_tick: move.l %d3,%a0 lea (%a0,%d0.l),%a2 tst.l 1074513600 - jne .L1160 + jne .L1166 move.l %d1,-(%sp) move.l %a2,-(%sp) mov3q.l #1,-(%sp) - pea -16(%fp) - move.l %d1,-20(%fp) + pea -64(%fp) + move.l %d1,-68(%fp) clr.l mg_opened jsr mg_page_view lea (16,%sp),%sp - move.l -20(%fp),%d1 + move.l -68(%fp),%d1 cmp.l mg_shown.l,%d1 - jeq .L1245 + jeq .L1251 clr.l mg_second move.l %d1,mg_shown tst.l %d0 - jeq .L1168 -.L1174: + jeq .L1174 +.L1180: lea mg_page_layer,%a2 -.L1175: +.L1181: move.l mg_active,%a3 cmp.l %a2,%a3 - jne .L1246 + jne .L1252 tst.l (%a3) - jeq .L1148 + jeq .L1154 tst.l mg_mine - jne .L1148 + jne .L1154 cmp.l #mg_page_layer,%a3 seq %d0 move.l %a3,-(%sp) @@ -6716,36 +6757,36 @@ mg_tick: move.l 1175262812,%a0 addq.l #4,%sp cmp.l #mg_list_layer,%a3 - jeq .L1176 -.L1177: + jeq .L1182 +.L1183: tst.l %a0 - jeq .L1197 + jeq .L1203 tst.l (%a0) - jne .L1197 + jne .L1203 lea mg_keys,%a0 - move.l %a0,-24(%fp) + move.l %a0,-72(%fp) lea mg_saved,%a2 -.L1188: - move.l -24(%fp),%a0 - addq.l #1,-24(%fp) +.L1194: + move.l -72(%fp),%a0 + addq.l #1,-72(%fp) mvz.b (%a0)+,%d0 sub.l %a0,%a0 mulu.w #24,%d0 move.l %d0,%a1 add.l #1187502302,%a1 -.L1187: +.L1193: move.l (%a1,%a0.l),%d0 cmp.l #mg_key,%d0 - jeq .L1186 + jeq .L1192 move.l %d0,(%a2,%a0.l) -.L1186: +.L1192: addq.l #4,%a0 moveq #12,%d0 cmp.l %a0,%d0 - jne .L1187 + jne .L1193 lea (12,%a2),%a2 cmp.l #mg_saved+48,%a2 - jne .L1188 + jne .L1194 clr.l (%a3) move.l %a3,-(%sp) jsr 1073943700 @@ -6754,23 +6795,23 @@ mg_tick: move.l %a3,mg_active addq.l #4,%sp neg.l %d0 -.L1184: +.L1190: move.w %a4,%d2 mvz.b %d0,%d0 mvz.b %d2,%d1 cmp.l %d0,%d1 - jeq .L1148 + jeq .L1154 mov3q.l #-1,-(%sp) jsr 1074059592 mov3q.l #1,1187497772 addq.l #4,%sp -.L1148: - movem.l -44(%fp),#7180 +.L1154: + movem.l -92(%fp),#7180 unlk %fp rts -.L1152: +.L1158: tst.b (%a4,%a2.l) - jeq .L1151 + jeq .L1157 move.l 1187521622,%a0 mov3q.l #3,%d2 move.b 269161679,%d0 @@ -6793,41 +6834,41 @@ mg_tick: mvz.b -2147483646,%d2 mvz.b %d0,%d0 cmp.l %d0,%d2 - jeq .L1247 -.L1153: - move.l %d1,-20(%fp) + jeq .L1253 +.L1159: + move.l %d1,-68(%fp) jsr mg_dirty - move.l -20(%fp),%d1 -.L1249: + move.l -68(%fp),%d1 +.L1255: addq.l #1,%d1 - addq.l #2,-24(%fp) + addq.l #2,-72(%fp) lea (68,%a3),%a3 lea (32,%a2),%a2 cmp.l #-2147457410,%d1 - jne .L1154 - jra .L1150 -.L1149: + jne .L1160 + jra .L1156 +.L1155: cmp.l %d0,%d1 - jeq .L1155 + jeq .L1161 move.l %d0,mg_seen -.L1155: +.L1161: tst.l mg_active - jeq .L1248 + jeq .L1254 mvz.b 269161676,%d1 move.l 1187521622,%d0 move.b 269161679,%d0 -.L1159: +.L1165: clr.l mg_opened cmp.l mg_shown.l,%d1 - jeq .L1167 + jeq .L1173 clr.l mg_second move.l %d1,mg_shown -.L1168: +.L1174: move.l mg_active,%d0 tst.l %d0 - jeq .L1148 + jeq .L1154 tst.l mg_mine - jne .L1148 + jne .L1154 cmp.l #mg_page_layer,%d0 seq %d1 move.l %d0,-(%sp) @@ -6838,87 +6879,87 @@ mg_tick: move.l 1175262812,%a0 move.l %d2,%a4 addq.l #4,%sp -.L1197: +.L1203: clr.b %d0 - jra .L1184 -.L1247: + jra .L1190 +.L1253: move.b (%a0),%d0 mvz.b -2147483645,%d2 mvz.b %d0,%d0 cmp.l %d0,%d2 - jne .L1153 + jne .L1159 clr.b (%a3) - move.l %d1,-20(%fp) + move.l %d1,-68(%fp) jsr mg_dirty - move.l -20(%fp),%d1 - jra .L1249 -.L1176: + move.l -68(%fp),%d1 + jra .L1255 +.L1182: tst.l 1074513572 - jne .L1197 + jne .L1203 lea mg_keys,%a0 lea mg_list_layer,%a3 - move.l %a0,-24(%fp) + move.l %a0,-72(%fp) lea mg_saved,%a2 - jra .L1188 -.L1246: + jra .L1194 +.L1252: tst.l mg_mine - jne .L1148 + jne .L1154 tst.l %a3 - jne .L1179 + jne .L1185 move.l 1175262812,%a0 cmp.l #mg_list_layer,%a2 - jeq .L1180 + jeq .L1186 tst.l %a0 - jeq .L1148 + jeq .L1154 tst.l (%a0) - jne .L1148 + jne .L1154 sub.l %a4,%a4 move.l %a2,%a3 -.L1252: +.L1258: lea mg_keys,%a0 - move.l %a0,-24(%fp) + move.l %a0,-72(%fp) lea mg_saved,%a2 - jra .L1188 -.L1248: - movem.l -44(%fp),#7180 + jra .L1194 +.L1254: + movem.l -92(%fp),#7180 clr.l mg_opened clr.l mg_second unlk %fp rts -.L1160: +.L1166: move.l mg_opened,%a3 tst.l %a3 - jeq .L1250 -.L1163: + jeq .L1256 +.L1169: move.l %d1,-(%sp) move.l %a2,-(%sp) mov3q.l #1,-(%sp) - pea -16(%fp) - move.l %d1,-20(%fp) + pea -64(%fp) + move.l %d1,-68(%fp) jsr mg_page_view lea (16,%sp),%sp - move.l -20(%fp),%d1 + move.l -68(%fp),%d1 cmp.l mg_shown.l,%d1 - jeq .L1251 + jeq .L1257 clr.l mg_second move.l %d1,mg_shown -.L1172: +.L1178: lea mg_list_layer,%a2 - jra .L1175 -.L1167: + jra .L1181 +.L1173: clr.l mg_second - jra .L1168 -.L1251: + jra .L1174 +.L1257: tst.l %d0 - jeq .L1170 + jeq .L1176 mov3q.l #2,%d3 cmp.l 1175262852.l,%d3 - jeq .L1172 -.L1170: + jeq .L1178 +.L1176: clr.l mg_second lea mg_list_layer,%a2 - jra .L1175 -.L1250: + jra .L1181 +.L1256: move.l %d1,%a0 moveq #77,%d2 lea (3089,%a0),%a0 @@ -6927,41 +6968,41 @@ mg_tick: move.b 1(%a1),%d0 mvz.b (%a1),%d3 cmp.l %d3,%d2 - jne .L1165 + jne .L1171 mvz.b %d0,%d0 - move.l -16(%fp),%a0 + move.l -64(%fp),%a0 cmp.l 8(%a0),%d0 - jeq .L1194 + jeq .L1200 move.b (%a1),%d0 -.L1165: - move.l %d1,-20(%fp) +.L1171: + move.l %d1,-68(%fp) move.l %a3,mg_cursor jsr mg_note_setup_draw - move.l -20(%fp),%d1 - jra .L1163 -.L1180: + move.l -68(%fp),%d1 + jra .L1169 +.L1186: tst.l 1074513572 - jne .L1148 + jne .L1154 sub.l %a4,%a4 move.l %a2,%a3 - jra .L1252 -.L1245: + jra .L1258 +.L1251: tst.l %d0 - jeq .L1167 + jeq .L1173 mov3q.l #2,%d0 cmp.l 1175262852.l,%d0 - jeq .L1174 + jeq .L1180 clr.l mg_second lea mg_page_layer,%a2 - jra .L1175 -.L1194: + jra .L1181 +.L1200: mov3q.l #1,%a3 - move.l %d1,-20(%fp) + move.l %d1,-68(%fp) move.l %a3,mg_cursor jsr mg_note_setup_draw - move.l -20(%fp),%d1 - jra .L1163 -.L1179: + move.l -68(%fp),%d1 + jra .L1169 +.L1185: cmp.l #mg_page_layer,%a3 seq %d0 move.l %a3,-(%sp) @@ -6973,12 +7014,12 @@ mg_tick: move.l %d3,%a4 addq.l #4,%sp cmp.l #mg_list_layer,%a2 - jeq .L1176 + jeq .L1182 move.l %a2,%a3 tst.l %a2 - jne .L1177 + jne .L1183 clr.b %d0 - jra .L1184 + jra .L1190 .size mg_tick, .-mg_tick .align 2 .globl st_ui_tick @@ -6988,79 +7029,79 @@ st_ui_tick: movem.l #19580,(%sp) jsr mg_tick tst.l pool_direct - jeq .L1254 + jeq .L1260 tst.l 1175351520 - jne .L1341 + jne .L1347 clr.l pool_direct -.L1254: +.L1260: tst.l pool_pending - jne .L1342 -.L1256: + jne .L1348 +.L1262: move.l 1187521622,%d0 add.l #-1073741824,%d0 cmp.l #133169151,%d0 - jls .L1258 + jls .L1264 mov3q.l #1,%d1 move.l -2147457608,%d0 cmp.l %d0,%d1 - jeq .L1343 + jeq .L1349 move.l %d0,last_transport -.L1338: +.L1344: move.l 1187521622,%d3 clr.l %d2 mvz.b 269161679,%d1 move.l %d1,40(%sp) mvz.b 269161676,%d4 -.L1266: +.L1272: move.l layer_gen,%a2 move.l active,%d0 cmp.l shown_bank.l,%d3 - jeq .L1344 -.L1273: + jeq .L1350 +.L1279: tst.l %a2 - jeq .L1280 + jeq .L1286 tst.l %d0 - jne .L1298 + jne .L1304 move.l 40(%sp),%d5 clr.l edit_view move.l %d3,shown_bank move.l %d5,shown_part move.l %d4,shown_track -.L1275: +.L1281: move.l 1175262812,%a0 tst.l %d2 - jeq .L1253 + jeq .L1259 tst.l %a0 - jeq .L1253 + jeq .L1259 tst.l (%a0) - jne .L1253 + jne .L1259 move.l #st_key,%d1 move.l #1187503478,%a0 lea saved-1187503478,%a1 -.L1287: +.L1293: move.l (%a0),%d0 cmp.l %d1,%d0 - jeq .L1286 + jeq .L1292 move.l %d0,(%a1,%a0.l) -.L1286: +.L1292: addq.l #4,%a0 cmp.l #1187503490,%a0 - jne .L1287 + jne .L1293 move.l #1187503790,%a0 lea saved-1187503778,%a1 -.L1289: +.L1295: move.l (%a0),%d0 cmp.l %d1,%d0 - jeq .L1288 + jeq .L1294 move.l %d0,(%a1,%a0.l) -.L1288: +.L1294: addq.l #4,%a0 cmp.l #1187503802,%a0 - jne .L1289 + jne .L1295 jsr generator_view move.l %d0,layer_gen tst.l %d0 - jeq .L1300 + jeq .L1306 lea st_layer,%a0 clr.l (%a0) move.l %a0,-(%sp) @@ -7070,11 +7111,11 @@ st_ui_tick: jsr 1074059592 mov3q.l #1,1187497772 addq.l #8,%sp -.L1253: +.L1259: movem.l (%sp),#19580 lea (64,%sp),%sp rts -.L1258: +.L1264: move.l 1187521622,%a2 mov3q.l #3,%d5 move.b 269161679,%d0 @@ -7086,27 +7127,27 @@ st_ui_tick: and.l %d5,%d0 muls.l %d6,%d0 add.l %d0,%a2 -.L1262: +.L1268: move.l %a6,-(%sp) move.l %a2,-(%sp) jsr (%a3) addq.l #8,%sp tst.l %d0 - jeq .L1261 + jeq .L1267 mov3q.l #1,%d0 move.l %a6,%d1 lsl.l %d1,%d0 or.l %d0,%d2 -.L1261: +.L1267: addq.l #1,%a6 moveq #8,%d5 cmp.l %a6,%d5 - jne .L1262 + jne .L1268 move.l -2147457608,%d0 mov3q.l #1,%d5 cmp.l %d0,%d5 - jeq .L1345 -.L1267: + jeq .L1351 +.L1273: move.l %d0,last_transport move.l 1187521622,%d3 move.b 269161679,%d5 @@ -7114,34 +7155,34 @@ st_ui_tick: mvz.b %d5,%d6 mvz.b 269161676,%d4 move.l %d6,40(%sp) -.L1293: +.L1299: move.w #497,%a6 clr.l %d0 lea (-435,%a2),%a3 -.L1271: +.L1277: btst %d0,%d2 - jeq .L1270 + jeq .L1276 mvz.b (%a3,%a6.l),%d1 mov3q.l #1,%d5 cmp.l %d1,%d5 - jeq .L1346 -.L1270: + jeq .L1352 +.L1276: addq.l #1,%d0 lea (30,%a6),%a6 moveq #8,%d1 cmp.l %d0,%d1 - jne .L1271 -.L1347: + jne .L1277 +.L1353: mov3q.l #7,%d5 cmp.l %d4,%d5 - jcs .L1294 + jcs .L1300 tst.b 34(%a2,%d4.l) - jne .L1294 + jne .L1300 move.l #1074606108,%d0 -.L1272: +.L1278: move.l %d0,1074618188 tst.l %d2 - jeq .L1266 + jeq .L1272 tst.l -2147483630 seq %d2 move.l layer_gen,%a2 @@ -7149,9 +7190,9 @@ st_ui_tick: mvs.b %d2,%d2 neg.l %d2 cmp.l shown_bank.l,%d3 - jne .L1273 - jra .L1344 -.L1346: + jne .L1279 + jra .L1350 +.L1352: move.l %d0,-(%sp) lea (57,%sp),%a0 move.l %d0,36(%sp) @@ -7208,36 +7249,36 @@ st_ui_tick: moveq #8,%d1 addq.l #1,%d0 cmp.l %d0,%d1 - jne .L1271 - jra .L1347 -.L1342: + jne .L1277 + jra .L1353 +.L1348: jsr pool_context tst.l %d0 - jeq .L1348 + jeq .L1354 tst.l 1175346736 - jne .L1256 + jne .L1262 tst.l 1175351520 - jne .L1256 + jne .L1262 jsr st_pool_choice_open - jra .L1256 -.L1344: + jra .L1262 +.L1350: move.l 40(%sp),%d6 cmp.l shown_part.l,%d6 - jne .L1273 + jne .L1279 cmp.l shown_track.l,%d4 - jne .L1273 + jne .L1279 tst.l %a2 - jeq .L1274 + jeq .L1280 tst.l %d0 - jeq .L1275 + jeq .L1281 lea st_layer,%a3 tst.l %d2 - jeq .L1278 + jeq .L1284 tst.l st_layer - jeq .L1277 -.L1278: + jeq .L1283 +.L1284: tst.l mine - jne .L1253 + jne .L1259 move.l %a3,-(%sp) jsr 1073943660 clr.l active @@ -7246,15 +7287,15 @@ st_ui_tick: lea (44,%sp),%a1 addq.l #4,%sp move.l (%a1),shown_part - jra .L1275 -.L1345: + jra .L1281 +.L1351: cmp.l last_transport.l,%d5 - jeq .L1267 + jeq .L1273 tst.l %d2 - jeq .L1268 + jeq .L1274 sub.l %a3,%a3 lea generate_track,%a6 -.L1269: +.L1275: clr.l -(%sp) moveq #8,%d6 clr.l -(%sp) @@ -7263,7 +7304,7 @@ st_ui_tick: addq.l #1,%a3 lea (12,%sp),%sp cmp.l %a3,%d6 - jne .L1269 + jne .L1275 mov3q.l #1,last_transport move.l 1187521622,%d3 move.b 269161679,%d0 @@ -7274,17 +7315,17 @@ st_ui_tick: clr.l %d0 mvz.b 269161676,%d4 move.l %d1,40(%sp) - jra .L1271 -.L1294: + jra .L1277 +.L1300: move.l #1074606510,%d0 - jra .L1272 -.L1280: + jra .L1278 +.L1286: tst.l %d0 - jeq .L1349 + jeq .L1355 move.l #st_edit_layer,%d0 tst.l mine - jne .L1253 -.L1350: + jne .L1259 +.L1356: move.l %d0,-(%sp) jsr 1073943660 clr.l active @@ -7294,40 +7335,40 @@ st_ui_tick: addq.l #4,%sp move.l %d4,shown_track move.l (%a0),shown_part - jra .L1275 -.L1349: + jra .L1281 +.L1355: move.l 40(%sp),%d1 clr.l edit_view move.l %d3,shown_bank move.l %d1,shown_part move.l %d4,shown_track - jra .L1275 -.L1298: + jra .L1281 +.L1304: move.l #st_layer,%d0 tst.l mine - jne .L1253 - jra .L1350 -.L1343: + jne .L1259 + jra .L1356 +.L1349: mov3q.l #1,%d6 cmp.l last_transport.l,%d6 - jeq .L1338 + jeq .L1344 mov3q.l #1,last_transport move.l 1187521622,%d3 clr.l %d2 mvz.b 269161679,%d1 move.l %d1,40(%sp) mvz.b 269161676,%d4 - jra .L1266 -.L1341: + jra .L1272 +.L1347: jsr pool_context tst.l %d0 - jne .L1254 + jne .L1260 clr.l pool_direct - jra .L1254 -.L1348: + jra .L1260 +.L1354: clr.l pool_pending - jra .L1256 -.L1300: + jra .L1262 +.L1306: lea st_edit_layer,%a0 clr.l (%a0) move.l %a0,-(%sp) @@ -7337,23 +7378,23 @@ st_ui_tick: jsr 1074059592 mov3q.l #1,1187497772 addq.l #8,%sp - jra .L1253 -.L1274: + jra .L1259 +.L1280: tst.l %d0 - jeq .L1275 + jeq .L1281 lea st_edit_layer,%a3 tst.l %d2 - jeq .L1278 + jeq .L1284 tst.l st_edit_layer - jne .L1278 -.L1277: + jne .L1284 +.L1283: jsr generator_view cmp.l %d0,%a2 - jne .L1278 + jne .L1284 movem.l (%sp),#19580 lea (64,%sp),%sp rts -.L1268: +.L1274: mov3q.l #1,last_transport move.l 1187521622,%d3 move.b 269161679,%d5 @@ -7361,7 +7402,7 @@ st_ui_tick: mvz.b %d5,%d6 mvz.b 269161676,%d4 move.l %d6,40(%sp) - jra .L1293 + jra .L1299 .size st_ui_tick, .-st_ui_tick .section .rodata .align 2 @@ -7391,36 +7432,35 @@ locked.4: .zero 64 .popsection .section .rodata.str1.1 -.LC9: - .string "C" .LC10: - .string "C#" + .string "C" .LC11: - .string "D" + .string "C#" .LC12: - .string "D#" + .string "D" .LC13: - .string "E" + .string "D#" .LC14: - .string "F" + .string "E" .LC15: - .string "F#" + .string "F" .LC16: - .string "G" + .string "F#" .LC17: - .string "G#" + .string "G" .LC18: - .string "A" + .string "G#" .LC19: - .string "A#" + .string "A" .LC20: + .string "A#" +.LC21: .string "B" .section .rodata .align 2 .type roots.6, @object .size roots.6, 48 roots.6: - .long .LC9 .long .LC10 .long .LC11 .long .LC12 @@ -7432,6 +7472,7 @@ roots.6: .long .LC18 .long .LC19 .long .LC20 + .long .LC21 .set roots.0,roots.6 .align 2 .type formats.7, @object @@ -7466,6 +7507,11 @@ mg_opened: .popsection .pushsection .data .balign 2 +mg_top: + .zero 4 + .popsection + .pushsection .data + .balign 2 mg_cursor: .zero 4 .popsection @@ -7514,7 +7560,7 @@ mg_arp_page: .size vector_midi, 36 vector_midi: .long 2 - .long .LC8 + .long .LC9 .long 86 .long 1 .long vector_midi_assign @@ -7549,44 +7595,43 @@ midi_byte: midi_max: .base64 "DxALBH5/fwwYP0ABCX8VFw==" .section .rodata.str1.1 -.LC21: - .string "TYPE" .LC22: - .string "DENS" + .string "TYPE" .LC23: - .string "ROOT" + .string "DENS" .LC24: - .string "SCAL" + .string "ROOT" .LC25: - .string "GATE" + .string "SCAL" .LC26: - .string "ACNT" + .string "GATE" .LC27: - .string "SEED" + .string "ACNT" .LC28: - .string "SPAN" + .string "SEED" .LC29: - .string "OFST" + .string "SPAN" .LC30: - .string "ROT" + .string "OFST" .LC31: - .string "RPT" + .string "ROT" .LC32: - .string "DIR" + .string "RPT" .LC33: - .string "OCT" + .string "DIR" .LC34: - .string "VEL" + .string "OCT" .LC35: - .string "PROB" + .string "VEL" .LC36: + .string "PROB" +.LC37: .string "HUMN" .section .rodata .align 2 .type midi_names, @object .size midi_names, 68 midi_names: - .long .LC21 .long .LC22 .long .LC23 .long .LC24 @@ -7602,19 +7647,20 @@ midi_names: .long .LC34 .long .LC35 .long .LC36 + .long .LC37 .long .LC3 .section .rodata.str1.1 -.LC37: - .string "001 STATIC" .LC38: + .string "001 STATIC" +.LC39: .string "002 FLEX" .section .rodata .align 2 .type pool_labels, @object .size pool_labels, 8 pool_labels: - .long .LC37 .long .LC38 + .long .LC39 .data .align 2 .type pool_browse, @object @@ -7725,26 +7771,26 @@ scales: .word 1193 .globl vector_scale_names .section .rodata.str1.1 -.LC39: - .string "CHR" .LC40: - .string "MIN" + .string "CHR" .LC41: - .string "MAJ" + .string "MIN" .LC42: - .string "DOR" + .string "MAJ" .LC43: + .string "DOR" +.LC44: .string "PENT" .section .rodata .align 2 .type vector_scale_names, @object .size vector_scale_names, 20 vector_scale_names: - .long .LC39 .long .LC40 .long .LC41 .long .LC42 .long .LC43 + .long .LC44 .globl vector_control_max .type vector_control_max, @object .size vector_control_max, 12 @@ -7755,7 +7801,6 @@ vector_control_max: .type vector_control_names, @object .size vector_control_names, 48 vector_control_names: - .long .LC21 .long .LC22 .long .LC23 .long .LC24 @@ -7767,6 +7812,7 @@ vector_control_names: .long .LC30 .long .LC31 .long .LC32 + .long .LC33 .globl vector_defaults .type vector_defaults, @object .size vector_defaults, 11 diff --git a/sdk/octabam/modules/vector/media/core-tests.json b/sdk/octabam/modules/vector/media/core-tests.json index fcaf622fc..2bce22c13 100644 --- a/sdk/octabam/modules/vector/media/core-tests.json +++ b/sdk/octabam/modules/vector/media/core-tests.json @@ -37,7 +37,7 @@ "verify_native.py": "e329133cf080bdd47a4ab7a5e4658e1455a2629c88ed731555e430e6f16b0ec0" }, "limitations": "Synthetic host buffers; not hardware or native timing, audio or persistence qualification.", - "sourceSha256": "50a4f243d3ed16872173a2a742a345916aec60e316cd477d86ef3727a2ed85ce", + "sourceSha256": "5c6004d8adedf47888c70cb38ad9f0a2fb2cf6c61f6ac164f507cc77ef142015", "partValidation": { "instanceMasks": 256, "sanitizers": "ASan/UBSan", diff --git a/sdk/octabam/modules/vector/octamod.module.json b/sdk/octabam/modules/vector/octamod.module.json index fd9f973b8..34b42cb11 100644 --- a/sdk/octabam/modules/vector/octamod.module.json +++ b/sdk/octabam/modules/vector/octamod.module.json @@ -174,7 +174,7 @@ "value": 10586112, "unit": "bytes", "method": "static", - "conditions": "Tested reported profile: repitch, vector, playmodes, mute-modes and recorder-loop-fix with stock FX2, original 1.40C. Shared arena 10,586,112 bytes includes 10,487,808 module arena plus 98,304 logger reserve, counted once. Linked runtime 90,780 bytes and packed staging fit within it. VECTOR allocated sections (0.3.0, the MIDI generator and on a card the base's generator registry): 22,314 text, 678 rodata and 3,908 data bytes; no BSS (a card never zeroes it, so prepare.py keeps zero statics in .data) or new heap. Complete flash append: 18,153 bytes measured for 0.2.4's profile, counted here as 28,287, that plus the 10,134 allocated bytes 0.3.0 adds (an upper bound; packing makes it smaller). On MIDI tracks VECTOR reuses stock storage only: the tracks' pattern records, 16 arp note bytes and the arp step mask per Part. Maximum observed native commit stack 1,048; Part validation 252; fixed added UI stack bound 1,216. Borrowed stock window, lock indexes and 8-track bank/SRAM capacities are retained. Hardware canaries are unmeasured.", + "conditions": "Tested reported profile: repitch, vector, playmodes, mute-modes and recorder-loop-fix with stock FX2, original 1.40C. Shared arena 10,586,112 bytes includes 10,487,808 module arena plus 98,304 logger reserve, counted once. Linked runtime 90,780 bytes and packed staging fit within it. VECTOR allocated sections (0.3.0, the MIDI generator and on a card the base's generator registry): 22,422 text, 682 rodata and 3,912 data bytes; no BSS (a card never zeroes it, so prepare.py keeps zero statics in .data) or new heap. Complete flash append: 18,153 bytes measured for 0.2.4's profile, counted here as 28,403, that plus the 10,250 allocated bytes 0.3.0 adds (an upper bound; packing makes it smaller). On MIDI tracks VECTOR reuses stock storage only: the tracks' pattern records, 16 arp note bytes and the arp step mask per Part. Maximum observed native commit stack 1,048; Part validation 252; fixed added UI stack bound 1,216. Borrowed stock window, lock indexes and 8-track bank/SRAM capacities are retained. Hardware canaries are unmeasured.", "source": "TESTING.md" }, "processing": { @@ -224,7 +224,7 @@ "evidenceRevision": "645d73da3872ce9111f3e3172114fb33a3660b9f", "qualification": { "moduleVersion": "0.3.0-experimental", - "sourceSha256": "50a4f243d3ed16872173a2a742a345916aec60e316cd477d86ef3727a2ed85ce", + "sourceSha256": "5c6004d8adedf47888c70cb38ad9f0a2fb2cf6c61f6ac164f507cc77ef142015", "imageSha256": "a753ddf67b0fe64e3742b4c89ecf141071eb30757b170173215e92b1b4794d24", "cycles": [ { @@ -258,9 +258,9 @@ { "name": "Complete tested-profile flash append: bootstrap and packed runtime", "space": "cpu-flash", - "words": 28287, + "words": 28403, "wordBits": 8, - "bytes": 28287, + "bytes": 28403, "scope": "shared" }, { @@ -305,10 +305,10 @@ } ], "perInstanceBytes": 74656, - "sharedBytes": 10617875, + "sharedBytes": 10617991, "maxInstances": 8, - "totalBytes": 11215123, - "conditions": "Tested reported profile: repitch, vector, playmodes, mute-modes and recorder-loop-fix with stock FX2, original 1.40C. Shared arena 10,586,112 bytes includes 10,487,808 module arena plus 98,304 logger reserve, counted once. Linked runtime 90,780 bytes and packed staging fit within it. VECTOR allocated sections (0.3.0, the MIDI generator and on a card the base's generator registry): 22,314 text, 678 rodata and 3,908 data bytes; no BSS (a card never zeroes it, so prepare.py keeps zero statics in .data) or new heap. Complete flash append: 18,153 bytes measured for 0.2.4's profile, counted here as 28,287, that plus the 10,134 allocated bytes 0.3.0 adds (an upper bound; packing makes it smaller). On MIDI tracks VECTOR reuses stock storage only: the tracks' pattern records, 16 arp note bytes and the arp step mask per Part. Maximum observed native commit stack 1,048; Part validation 252; fixed added UI stack bound 1,216. Borrowed stock window, lock indexes and 8-track bank/SRAM capacities are retained. Hardware canaries are unmeasured.", + "totalBytes": 11215239, + "conditions": "Tested reported profile: repitch, vector, playmodes, mute-modes and recorder-loop-fix with stock FX2, original 1.40C. Shared arena 10,586,112 bytes includes 10,487,808 module arena plus 98,304 logger reserve, counted once. Linked runtime 90,780 bytes and packed staging fit within it. VECTOR allocated sections (0.3.0, the MIDI generator and on a card the base's generator registry): 22,422 text, 682 rodata and 3,912 data bytes; no BSS (a card never zeroes it, so prepare.py keeps zero statics in .data) or new heap. Complete flash append: 18,153 bytes measured for 0.2.4's profile, counted here as 28,403, that plus the 10,250 allocated bytes 0.3.0 adds (an upper bound; packing makes it smaller). On MIDI tracks VECTOR reuses stock storage only: the tracks' pattern records, 16 arp note bytes and the arp step mask per Part. Maximum observed native commit stack 1,048; Part validation 252; fixed added UI stack bound 1,216. Borrowed stock window, lock indexes and 8-track bank/SRAM capacities are retained. Hardware canaries are unmeasured.", "report": "evidence/software.json" }, "hardware": { From e56d5dc0593cd4713789bcf5b950938c266baf58 Mon Sep 17 00:00:00 2001 From: repeat98 Date: Sun, 8 Nov 2026 14:59:08 +0100 Subject: [PATCH 32/33] VECTOR 0.3.0: rebuilt on main with the MIDI generator list (package 4d37ad92, native comparison 186/0); the hardware record names the 24 October unit run (owner, 8 November 2026) Co-Authored-By: Claude Opus 5.5 --- .../vector/0.3.0-experimental.mwrm | Bin 29630 -> 29774 bytes .../module-adapters/machine-recipes.json | 30 +- .../module-adapters/standalone-recipes.json | 16 +- sdk/native-comparisons/vector.json | 458 +++++++++--------- sdk/octabam/modules/vector/TESTING.md | 2 + .../modules/vector/octamod.module.json | 27 +- src/catalog/module-documents.json | 41 +- src/catalog/vector.test.ts | 4 +- .../assets/analog-bd-composition-proofs.json | 2 +- 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 | 28 +- .../assets/octatrack-module-packages.json | 6 +- src/engine/assets/platform-writes.json | 2 +- src/engine/assets/requested-packages.json | 20 +- 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 +- 22 files changed, 327 insertions(+), 327 deletions(-) diff --git a/public/octatrack-modules/vector/0.3.0-experimental.mwrm b/public/octatrack-modules/vector/0.3.0-experimental.mwrm index 2973e061bbec31255a98f96b6f22094fb565a76e..be3bad6347b026b121b285b3fafb14de8c13d614 100644 GIT binary patch delta 6941 zcma)=4^&fEp2zQdM2r||q$xug)HFnfDiB0Ufl>@1Vu&Hoi12t}T(;G`$WTYETJ?A& zrrj>uu2QaJTesz?VEsoKDrg~xbu-qnZ0k5`JGFIs9NW`vt;?$G@ldOgx8M67sBN7+ z%Q>I-UhbdY{r$c7J&t_KoxI2y%BnqOL`(3u_&U21!hP_n!92!TR%$PO^~vCb4teBn zGO1~Q^~7f0tLd)g>Udr(={^#b8|CuWNwG!?F?aP5;;oekIal-po)(&ZOU!gYKck80 z!|z52sU7lNn~NTCsV!KHdu>K3t~Ir@+32;V0$c;sHumL*ueGhgb6xWL7;`x}jOSV- z>s?5{8S88G7NlyOeQba)=3O?`DiJP8UGk^Pv1J6^s{_gse*HwxMkkSC3}H{x0c%&2 z@A7G=<@MVVn0nqNzM*VRk@M`a2$^8AeT-J&y8d&ecdc(IlPmjyJVJyoRP9xb=U|DN zo8btFo@V_kCe#ejLG5p*U-z{<7nwibTreMh$wy(yHJhSz@*fndjxohmtGa{ZqN2D< z^d((AU-L_PO_$D{qs9r_c|oH66B7BFH2T?uG+xlt=-7@VvBJ1iNAwAXu#XH6*AbaG zH%NA-wva$i#@cwnK;s^8z)kNIvDTUa7pEo5y0pY%CE7Z2`;svaYonL78?DR*HUF`! zd8GHmeR@B<)7yEU-jD9|Hs90xt5MM>?sPA|r+c*bPY3nOIbK}Yy<%c5?iKV*Tow;Q zq96P!PB6f_#1%T1jVNJ(A8tNqWPV681lXWfLjtq5*I;Hd&l?Khs_vwRo*l!T>)w>u z&EZy<^gYK7(VWTu$_;g&nY^3hI_PTS3^eUGzV^$GZA~S?;;XqtKQS&L9QJx6^+ES#cT1nTO701UX*H>0Xfej~sWAhG*3CUV)}%CF;GEzDvvc z^y3XDloG6fHkJI(})3U_Eu0HgnNxXX{d=P!MQWfD2CHdSxSjTQGsM+FVBQmjTsCrITv1-~aycu_YlQGY#`EoG5NDlWP_TFqsXUrg4bB5ec-GzmG zbv(^1{nf9-?$8-heud}}pBGJ5<6>fPHc3QYYs!P^5o2D-g!mU(&5W(}O}20rVu28M zGiKjH#8fX3P6i*cbJ>l)lEoqcGIlP*KM0drM!0QpRG zfw5O)`RQ|NoPS?*FtF$(OG@#2o2@6Xh>&5$qN}@$#SMoyEFxTt*-uiZ zy6DOB_H>6F?%L>^rrW^WUmZ4LxHo%+KHVm7W0P1y_!}gna!0z5O_p&=Vub!ZqhgEe zvPLHdSW2k#X-iS*lx_dq2N{HIVdC{?qE!X3zid`V)0;(kPi!|l$AWfkOXO{B)~=0Grm}kxHuGq}xxrVVrr=0DDVDK1a)}sYJ_0P@jEDQR^Pt@!(2? z)5YhK)9;_YEVss|5^iPlq+)sdsiofF2t5KD?%GGRkR8(Not^S#dfYy> zvGu=RF8Tqke;uoI**fJ8ywBN9#hMogng1?4*Kf3$3;J?j+$YuET(YNFU13C~N8Sf%T}aa&Pp904HMV0UYwP{X09M#_ zcLkFTJ=;INEcdWg;+4eDDu#aJ?v6>xkayj);`XcugSi9_>5!r)E|Cw&7xb6q?QFBG zY4;IXYvjIbGFhYXJHb}`T|!p6Ro+fBO6HE;?mMWsF;J5Hi`H;3dz>pu3)LqEwS8B-AxHsrf$&7~(_P!jXNDG@Ok((ieWiu_9li>T}437TLjg&faa~tdQ zk=qN6il6t`)YF%FQ7vc|>u_*I8C#IOuJ*7T%W;RkzlhnwvIvo(B&&if8zj|{$YFK| z+h}Oc)QL*0?~O6NI%m>^UV8wuI#`z1w9-V!|7p|&=r`=g3aQ>0fVI+N?C`%9<)L%V4mOGd}pB%OH;JEau^+E*o|JOy*Yhp@Y{ zT{kWd0gPgsNoEl{JG{AO?YH|61LM?mc1s& zsxrNPi~YG-XG{(SEQGWqt#t zSF7%&Y`YR~u;S#p*aw%tDP;{a`n?aKg~>^={($n~MzAFvc@H-Do9NQHhFotpa$-V! zt*}LDY=D5HY;WMUI-7lj+pN^`R@8E@@*SsPilb(FY5&}ZXYP_TQv*#zXj-bn7v06# zmxzv;?#=ccvr)@<>|s%ct?FXc;pC5457oMoxptc7dgg(Ccc}X$;@j`ppqSh0n%wBk zRkX~8zBfiTG37NvO<2_rqqcJy_u8(U64}fHa>}TsauTaLe^d1z@QKXXgNi~8Y}TmR zsWxGYjo=XY43X#y&?n0Dk1@UCm|n<6o3jsZI_SwmLKAb}aPW;2DbAm|5Z{3}T$ht{a=U7eY6UxLSj@yh=gU$ZUe{vUB;_nc{N16W z3w{!Lk5pSqN&E~7k%pkZTW_R)7KK70%ombmO29n!x#-bHvMHh7wi?3}W%5gua zf0S^~zuNPHFZP~fbm}Lv1Z1&eXU+fUm|y5x_w=%enr5iY9c^>(9dq^Qi0=|cBX1d> zLhLWx$N9y=7M3sm271kHO7uD;J$t!cdcj9D>zTq{hvHlp%_vXfrFdFfo|G?Tu}DiL zhtV(Da2V}!ZbBV2;BAjYeK^fRQrS!?hy4dbvL*i!*TQ6c@k{yiU^%|R66qJ^W;<>; ze9rGO>bo{bnq(!3-(@W!AL{IHD_E^cSuC5PT3Gxfm#x{tJ_V4_J0<2Ysf5}qa`?~t z={nq?TvBBcJyqdJ8&z;6Zx5zUNZBRgW!U`0Q(q7a*QWiNZm$CHy;%I#oU-S)9mlw3I4W0;R57kYLnPjMJ| zaisW^T$f5le4%)u_zJ-{Ve)Av9cxVvvDxu>h0(Lu1TDAxwU5efo*kqeo&;vqaZf>` zhm*VV9%304+KKBbC}tis3Oj{|~@YBV6oohr7u!VIPa6pwsU*VV}Va-#BTqYJ9Ivg1^QM{O%JrKR-W)4cWbp0DF4p`g|OZE9A>YGktNK9 zw+0j!`kC3o4T=VSMCxgG=&zd(h4Cb~&brp2?5ubhT|=VaCB)brUp2Y>iahAJ62%j3 zM!@1A8YIj&G*Fq#U-+7aD!p72ji2AfO{Ssw^SD$RTUEgS=U(cnnw>luAEBDBPhtL5 z$JwYTcj(*^XrgoBnU%Nu=2t6dPt_w_9sRT_kMmG{^`l$@&964|-`=2g)iWlg2wO0i z$6y^3_2u=uqP~r$oz;F`(9i^7%0ul$`O7^{NdD7=x zKIemtKmd<{IN${f05Vp11}p*{w71613vQ|vD;fnqTAl^V!Si4pz_*C-5_lOjgWrKS zz*}G^*bVl9PJm5P=mtj~kjK0eb13>94eR*;V4D&C3_b>DAJC82tZ!`8CCsvN_&vJn z)c@DA-4U@kRFZe!;!iJs?GKV-)A0AzoOl!@pid)mMa!{%Fe>{Huyfx~+ts143>gx?m zUaSAn?(+KA`Nn)gW~~MY&#Z&s82AE2U|}>c0V@asgwA>aTn0mg6rsNeiBgmS)&uym z=oLb2(*We!Fwcg-*wANd1#qnmA-078)+p8!(pa2?2RlIEikrY@@FqAzh#kM}Sk#V* zv!PtcMMCDR18ARf7^bHI9|!;#;5b1@X&jggFs5`H*blH^=`nDM5NAI)2|feoNh5Jy z!oyWU=JG%XOdu1KfC>P`=57K|YAzIUiJ%TZ5f{ATdIhwA*8%H?g|4H7ltEsZ7C@o0 zB#;GMpb9|gvIelK5tr>?7uX9hxvUpJ)3Q&&AR+EpU;_>yfO-Izx;KM^0G7Ew1UCpN zj|W(++yn{$=9Ob!xf@`?^3?#LC_f5Lg2oGkRKUuLFgOmd@KcO);3~LDh(`k;*aN{H z2=-)vT<|p50p13^;0S;+9?bVZdC%7X-t|C^XNZt_1VjS^K#1l!5&wCWcvt|I0$4N; z-k1krm2h2k4}iex6W|l@1%SfU5L|r`KyY;g)epe}`ULa|=o8QLS__3HDLj4fxe;e!vogfU3fdOz1oCjZF?~DbobTMQsP6d#&I1@nm#mhkx vAu)?v@z4W4q^@OYd{s*K+GVeC+#oG{ZW?dR#BDlvoz~;W{Cc|Wxzzs!{;AKq delta 6831 zcma)>eOOahp2yFz8q5Jny<$-x!h}Vsi(@i8>=O)HM*|?iLBTmHh~Jz4}*(fnL?jtRkAgANmPd z<`ceIz*>memxJq4e*wOo!TIbyOrM2sH8qdj^YpgbE$9`D`v7CM#s!#E9a`PJ^zK-p z(tR~SWo=*`gz!ILsQa2oxEMv{kJT|Xj-&gpG8OIznuy|ERw9OL1I1Nuo9e2Bp6f8n z{lFZ>%yah%-==Z0oJUvs$ppRm6Fhb9)O^NTmxc-7&fp3kk!Of=wPL+uaXv)5b_e=N zSfc53baXjsQ1$ESJB6B8`k4)c!h=;aB~yz?^cn2^LfPSCK4@5Hz|b!*i`6QvCZWN@&INW{8b z%w=Xf-l44%&Aj6bjeNp_Fuj}2p1PbiPDR$$sff`;RApq~o-PBr(aN6dOe_R0*ShMV z)@wi0>K zFCrah;9c|vwarZAv>*4-Lpd3#A~U?cBnvkTkrJ zUXx4kHZ4t^!3#%dRcb6RoT6vguT%6^DnuWlp|b>bSv^b7JgA;EJ4$GB1Wsn}Xdpy5 za!g!Da=onPgeH1t7NY%rO`47=sz{46Ls4+FBH@nRKd{Z}6>rKF+a`av+x>d?G11;& z3jNGdyCv_#50jkx>>K6e%VH9LR*Zp(kxS&U7(yG<_VVs_YJ0ARci*O+&*?+mZShlU zrfX^R?9Hs@!0cky(mi`~jJr$L-(kxpL~kUytkT@K<@KYJR{ZLpxfwJ({VeZlt-qKa z#-+NuG#QB5e>8dJj-85QC&hO~V^-e8<>~Uk+p5$3P6@1n zU9HrdnaMjoqT4bPQ(dif4QNRcdHY7hAnel;MTFfyxzGN{Gdh!Vx{d^Mh&GLMj!QI9R6N1L>>KYa_$PWpK9};l%`D)Aznws?{yR>E1u*=Fh zdS2+DRdcqnU#huNp6z8TmMhK38*ue#bs476zXg-CrQY|Ddv`!o>r#lykRk=CeePVo z^elaS?k`{Hwfk?7h4+aD`Pr#A=~fY~wMrz?R(%ErRp~PFCQRDNYG&**A=bzli4j8V z)fk~>qLN`f6Kh{?-}uv38aZ!UOzBx6e4TfF>3OfH(rC17o<||BH6TY~2>q_~wAxO9+OCTB`(=;YFs?zR}u%hmm40EW2tb4fA3y6Sa5j zeMwqzTgmb7v(I~9Zqs{6LUuPX7z>EneA;LsYRf9=TgzsWdQv{k$BAR2 z;gw2~H2Ubv0r zL(wy`h`_qqHBxh}scx4zLtaq!vXM<*>vo|?nHNJ-T=tAjZM(lQv1lI_@7MM6bZ1lF zm8Qf7k?HjehwE{Ou&>%Mz+>HoJ10|+x4p@$m?AF~ds&!H!Vv6Fo8D5cYc{EpbL1y0 z4JKVViD5-DIFXH39HN~$y2{TyENhq~DM+=BRj;GYNZ{+3??3Kc z*2aX(QSd4%AeRjEEtZ#WH}drTJ#6^?}NG+QRFZu)$%U@!4^5@rKo?sUA*1bhkQ0v!dtmmXg znmT`4Wy;rkvL7K&2{543d``NJ^H{DvCv*oPOR^E>pw4W_YDj;BKd|e1f8K|`2|{(Z zUN*>3!PfLC#nQ*8a||Y&;4m+zxTVjvDbmNfaKjoY_}4(PRl0d)2b-a`kOcBc6WTt1 z(sza^V<$z@oAaMsa+96^G~xDEr8S+L&QUZB$t;#WgS1Y}>8|2)QYUn@peK9Q{nx9| zaO1HCy%{YnpY%vwbZ*|1c{fH$Zh6v|PT==#F)U(@^tsfj>5*F4s^&@)h@{eSUsdT% zVfYQ(lcL))bxD)Gx@aFW8uAUbB22??yZ^h)GV*9H z(^W>kKZE6PWS3JGgtyJ|4tI{IUY^L#?H+ACzOmaWJKeH^;hkzgQ`wueO)>F{;9Ktn1d=Vq zkr~Kf2wP!hWXr;?7*t=Lz2G&Bzu;B+2!uZnE~g#4AR)fE0BpQMk6Lr4b)yoy^_ESA z8qLOIs36TcFRRVEGpua5H#HF@=cI0`TCkq-+|l8Mkj-$@ zY%z42w~9Ec)~fL?);<3oQL|vU1Hu(EHIA1R9T-+0_YrHM8*Fi0J3VB3>4~7-|6V4h zL$G+e9Dwk`Se5&VY!3;3(rTAelr5I)qyu|Wq;BtMVeWW#o z(<-5?ej8JU8ELjQ;OKEeXp@&HLp~xXK78ypc8;uJxq~OHdr(FuB~HvaY`}!vmG_1! zYc=M$?_aLPTNO#8WehyD^~9(p<=|OSsW`yqo}8)*>mIQTr>XE-QQlXPcDui+yrVoH=@+TX-cXp`t&Yg~X7@}YZ~YaTX9@S) z{qOA%CXSkeR!sz(cXEQT>HN=T7AJbwKE1F?nO&&YqqPfu&?jXmmQlm$HI9!bxjRP3 zU5Qyjj&q+9H@bYGKHA+bYS`I#ZKps&l^5!EIoKWa@WLcsI8J*ON72rOp_xJ>OSEv~ zVgtTgvELlG?nVi$wt58;(voN-3Cv%iiT#m5XpQ?bzFXq(QZ6*p*dn|rouZZ^1G}s# znli1Em7~zeCQV2UOP0`Ku9i=TA=(4SL>3(32CXZa&EHC(-MGLI-J&&-!$xf6bA5^- z^ys1}{*sCM7tQAm*A%a>?9|DHcuG0Z3uGW>*uQ~DyZ_5I$XIw1ti8;vMS%{KTw-_4 zxU({kxT9?RfWW4q(18s+oW(=vK+AFY?g)Bz4^@*~w!)1epP9GW%{li8-p}H$<3|gW z#roOs<2bu$*lB=U|Hem!eH~8o=?WDN$>Z$@i}$c2%;h~oP_$5oZ z2h_KumfKC^OBZto=+@FK{;rl@DxDv<8}EUkU2PcOYxy)J1j-VTM70g~tc2}-UvyHP z;~DN6H9Io6Mq1%`mfJ~BIShRFN_x#PldGYFj>+758twGVb{ryvSi#WeIfRRS(l#kq zd%AK>Zzd#j1tA#-{E|U>$+?_HyE;=G$8iSzFZ`YBX$Ja1ZT;${=hU&H28-WvB@ToP|20DNFKK%40}Kznv1hyps$2wDNgWMe-wqs!K~y$N8DtqwGUPH+#v=t2U*K?;}+vH->w+5ikKEU(0u7aRvS!EF!( zgM`=-QoA1H0eEI#4)%hx0LttaK^wq0JI2|+AY>sFE>r`gVqqy*0g%pxaI&ZbxB(O| zVypp`JMr~8I0PVg5d<%S;6+W~8u*rw;xv#6Y@isxm|_ShE(e24y*SsxFgFZy!!S1tbHgw<40FRUHw<&bFt-6DfF$ffw*lk`53#I8f=M76piP_s z(m)y5glQ)31+Y}S1Ym@SNO&OF1HqnDFdJk78-TZ-5+Hzbum&6k@YVwvp7#LccrF7t z;2Fe!jbP}iL|_7?*w>oFNjMk&r^!3N``te*wy^ffq$%;@>Wwx&A-Eod0n*i)#+Rn?RzzmFBzoq8xsB> D9(wVL diff --git a/sdk/machines/octatrack/module-adapters/machine-recipes.json b/sdk/machines/octatrack/module-adapters/machine-recipes.json index abc218602..7b68a54a8 100644 --- a/sdk/machines/octatrack/module-adapters/machine-recipes.json +++ b/sdk/machines/octatrack/module-adapters/machine-recipes.json @@ -6,7 +6,7 @@ "schema": 1, "imageSha256": "642d27796f5ee0100eed8477266a7aff77d8614b40da50b554218170a19d49c5", "sources": { - "sdk/machines/octatrack/module-adapters/machine-ports.json": "de7281e4351f57ee6700477d123de9d6bf435cd239b527fd9ab699444d36a836", + "sdk/machines/octatrack/module-adapters/machine-ports.json": "fc41b5ec896e452dd1b8d8db4afd04d1acb1f00ffbf331be036786360de71528", "sdk/machines/octatrack/module-adapters/machine_ports.py": "bbb91f0c54c27043b54a9156cad01053531f2ef78fb13cc73e2b45f7fc7e8d6f", "sdk/octabam/modules/poly8/manifest.py": "f8759dbcbb246b247c195e61f0c0464fd0cdc0dd40b68dd8f74c03b46c584afc", "sdk/octabam/modules/poly8/polyphony.s": "c86a3a783c46ecdbb3b44341098f0c094c65b9a8d11716835c2d28c2d2d6ecee", @@ -57,7 +57,7 @@ "schema": 1, "imageSha256": "13047ca2595493c2389ad2265f39f8c04287f5c9021991197a5fded08faf75d0", "sources": { - "sdk/machines/octatrack/module-adapters/machine-ports.json": "de7281e4351f57ee6700477d123de9d6bf435cd239b527fd9ab699444d36a836", + "sdk/machines/octatrack/module-adapters/machine-ports.json": "fc41b5ec896e452dd1b8d8db4afd04d1acb1f00ffbf331be036786360de71528", "sdk/machines/octatrack/module-adapters/machine_ports.py": "bbb91f0c54c27043b54a9156cad01053531f2ef78fb13cc73e2b45f7fc7e8d6f", "sdk/machines/octatrack/module-adapters/quantizer_runtime.py": "61425221199f37adf4be1e8b9c5bb1346067c8f56540a9a15047b400ed84a1aa", "sdk/octabam/modules/quantizer/manifest.py": "e0841437a471b000b448ce8417c8fd25cba1cf155aec488d08d2888f4c249394", @@ -121,7 +121,7 @@ "imageSha256": "11afe489011aa243c5bc579a824635f7d1334b17f0a21d554d897ceec3d3fb1a", "sources": { "sdk/machines/octatrack/module-adapters/fm_runtime.py": "ecf39c395bd8231d1dda340e1c6bc26e8473ba548cfa422f9a4ae4ff2bd6807e", - "sdk/machines/octatrack/module-adapters/machine-ports.json": "de7281e4351f57ee6700477d123de9d6bf435cd239b527fd9ab699444d36a836", + "sdk/machines/octatrack/module-adapters/machine-ports.json": "fc41b5ec896e452dd1b8d8db4afd04d1acb1f00ffbf331be036786360de71528", "sdk/machines/octatrack/module-adapters/machine_ports.py": "bbb91f0c54c27043b54a9156cad01053531f2ef78fb13cc73e2b45f7fc7e8d6f", "sdk/octabam/modules/synth/machine.s": "de9d849bf0b6e5d5ad747df32ae5806e7f9516674a14ac74b1c15d73d30d280a", "sdk/octabam/modules/synth/manifest.py": "7854330aca001d2841de2fb384f0ca8adb7497db49dacc56da2815c1f444c0e6", @@ -408,12 +408,12 @@ }, "vector": { "schema": 1, - "imageSha256": "a4ce6437962f4fb327c80d8a8580457145fd60d6d34f7de276fd4ce806e8ab2e", + "imageSha256": "33c2db1c6fd9e3d28d7bb5aa95119a36c354a5d2f060086927944cd58e42c974", "sources": { - "sdk/machines/octatrack/module-adapters/machine-ports.json": "de7281e4351f57ee6700477d123de9d6bf435cd239b527fd9ab699444d36a836", + "sdk/machines/octatrack/module-adapters/machine-ports.json": "fc41b5ec896e452dd1b8d8db4afd04d1acb1f00ffbf331be036786360de71528", "sdk/machines/octatrack/module-adapters/machine_ports.py": "bbb91f0c54c27043b54a9156cad01053531f2ef78fb13cc73e2b45f7fc7e8d6f", - "sdk/machines/octatrack/module-adapters/vector_runtime.py": "6803c8d2d8f2eff007bb0dd9c2f47cab1a565429fc054cb7e127fedea6c5179e", - "sdk/octabam/modules/vector/control.s": "3e9cefa630c8425af9b2ea48cf4ce88bb9a48fa18bb1876cd1447dc12d0212b9", + "sdk/machines/octatrack/module-adapters/vector_runtime.py": "25212235bdd5871fba2d2587ac215b2546a63bd1317b468c79c1582c27398eac", + "sdk/octabam/modules/vector/control.s": "e12b5f82744d14a5511a605fabc5ff0624387084164c59143f9ddccec1f207dd", "sdk/octabam/modules/vector/manifest.py": "b9dec167f8bd4f1b691069cc89834f6c2a6717b874eb28629ef5c8c026d3d976", "sdk/runtime/loader/build.py": "5131901224dcd037c07f0233cadabd67eec2a952878bef5a92274dd3d6236c7d" }, @@ -475,28 +475,28 @@ "purpose": "vector: authored bytes coinciding with stock (strict scan), reconstructed from the identical bytes of the user's OS; review" }, { - "offset": 16306, - "length": 15, - "address": 1074154280, - "sha256": "d67cfd82dafd98aad4cd46cc096c0b173290a1c84756fd7d881da9c25492bb2c", + "offset": 16364, + "length": 16, + "address": 1074178428, + "sha256": "44d6e7638702c28959b44309e5f7c04a2d9dbd313666960cc1fa9036d028678c", "purpose": "vector: authored bytes coinciding with stock (strict scan), reconstructed from the identical bytes of the user's OS; review" }, { - "offset": 16356, + "offset": 16432, "length": 16, "address": 1074178428, "sha256": "44d6e7638702c28959b44309e5f7c04a2d9dbd313666960cc1fa9036d028678c", "purpose": "vector: authored bytes coinciding with stock (strict scan), reconstructed from the identical bytes of the user's OS; review" }, { - "offset": 21384, + "offset": 21492, "length": 20, "address": 1074428104, "sha256": "96966986164a24f9ca5be84cca807a016a828da2bcc3167b831be52acad2a9a7", "purpose": "vector: authored bytes coinciding with stock (strict scan), reconstructed from the identical bytes of the user's OS; review" }, { - "offset": 21758, + "offset": 21866, "length": 12, "address": 1074100132, "sha256": "fa4871f504c0f71c15f06b76536f127ec74d257852ce50a1b9f16b3d14e8688c", @@ -511,7 +511,7 @@ "sources": { "sdk/machines/octatrack/module-adapters/analog_bd_runtime.py": "b9c0e0f96632a0d0ab5283387edaae1b604e4e82e27e26b3fdc1666867d31daf", "sdk/machines/octatrack/module-adapters/analog_bd_write_lease.py": "3e6a3766f32176e9be69627ef2b71272970f2d02a2088e77673946b640d365c7", - "sdk/machines/octatrack/module-adapters/machine-ports.json": "de7281e4351f57ee6700477d123de9d6bf435cd239b527fd9ab699444d36a836", + "sdk/machines/octatrack/module-adapters/machine-ports.json": "fc41b5ec896e452dd1b8d8db4afd04d1acb1f00ffbf331be036786360de71528", "sdk/machines/octatrack/module-adapters/machine_ports.py": "bbb91f0c54c27043b54a9156cad01053531f2ef78fb13cc73e2b45f7fc7e8d6f", "sdk/machines/octatrack/module-adapters/stock_hook_write_lease.h": "ab14679a5faae84ef47d1ca37e46b3171da45252d12310e0b4458228be8334be", "sdk/octabam/modules/analog-bassdrum/control.s": "463dacf528e4996c7f21e97533391583329a2e3aabda95c87b7cd020dee7adb6", diff --git a/sdk/machines/octatrack/module-adapters/standalone-recipes.json b/sdk/machines/octatrack/module-adapters/standalone-recipes.json index b050c33bb..236a92339 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": "dcd8397b8cecf6fab61debd9aa2f86f612da0ca6ccf363c79d56033bc170b993", "src/catalog/modules.ts": "e268c6d42e4d5093ab943aed5cf2263a72e6d5e1a7ac0e72efc8a7ec6c62b89b", - "src/engine/assets/dsp-packages.json": "fbb081f22daac5ebe9abcaf9baa554223914d3a6d88fdd7acbe7726a20ac0461", - "src/engine/assets/descriptor-recipes.json": "a2f3e102c03e408c159feeab544843859053fb851ac7793bede109d689b10234", - "src/engine/assets/menu-recipes.json": "7d7fce2e704137ee72538a18cd000c97ce3a754b8c6a2da55730f533609f87a3", - "src/engine/assets/rom-packages.json": "fc70e6199425a2509e5639d30cdadb31c83930afc58a06e003eeedabbd35b818", + "src/engine/assets/dsp-packages.json": "5c4079c9c3873bf56978c8ea8b9b0c7ebe834b80f472362ca949867b754820ac", + "src/engine/assets/descriptor-recipes.json": "e5e8ec50ed28f38ae072dba255469d5472934e399bafa8310e9fb56f9011b514", + "src/engine/assets/menu-recipes.json": "32faddf1856f4bec60bcb15b6d5f1fcf75ef70c8b7841ab4c2b78e1a3ab9e74e", + "src/engine/assets/rom-packages.json": "6a3354fac4379a8c2011716b4deb25425257b46e93c871e3a9914fab4cc91cd1", "upstream/elekloader/link.py": "5d31157ccbe62807ff9f05fd47e1e55b54be0475ab53565e6607a56566603ba8", "upstream/elekloader/dsp.py": "9486d64eecee023670b716f6ae854996da02ee7c1a0efd5361cd963c756dbc69", "upstream/elekloader/patch.py": "77c0a74bf4b0ff8c5525d4c4b1bc42af765314a4601c0510577817a7487d8666", @@ -405,10 +405,10 @@ "src/engine/coldfire-elf.ts": "319ca0d835d1b0c602c8f4b06990016d0ebfe246cedbfc596cea3cc7adfe3cd2", "src/engine/module-build.ts": "dcd8397b8cecf6fab61debd9aa2f86f612da0ca6ccf363c79d56033bc170b993", "src/catalog/modules.ts": "e268c6d42e4d5093ab943aed5cf2263a72e6d5e1a7ac0e72efc8a7ec6c62b89b", - "src/engine/assets/dsp-packages.json": "fbb081f22daac5ebe9abcaf9baa554223914d3a6d88fdd7acbe7726a20ac0461", - "src/engine/assets/descriptor-recipes.json": "a2f3e102c03e408c159feeab544843859053fb851ac7793bede109d689b10234", - "src/engine/assets/menu-recipes.json": "7d7fce2e704137ee72538a18cd000c97ce3a754b8c6a2da55730f533609f87a3", - "src/engine/assets/rom-packages.json": "fc70e6199425a2509e5639d30cdadb31c83930afc58a06e003eeedabbd35b818", + "src/engine/assets/dsp-packages.json": "5c4079c9c3873bf56978c8ea8b9b0c7ebe834b80f472362ca949867b754820ac", + "src/engine/assets/descriptor-recipes.json": "e5e8ec50ed28f38ae072dba255469d5472934e399bafa8310e9fb56f9011b514", + "src/engine/assets/menu-recipes.json": "32faddf1856f4bec60bcb15b6d5f1fcf75ef70c8b7841ab4c2b78e1a3ab9e74e", + "src/engine/assets/rom-packages.json": "6a3354fac4379a8c2011716b4deb25425257b46e93c871e3a9914fab4cc91cd1", "upstream/elekloader/link.py": "5d31157ccbe62807ff9f05fd47e1e55b54be0475ab53565e6607a56566603ba8", "upstream/elekloader/dsp.py": "9486d64eecee023670b716f6ae854996da02ee7c1a0efd5361cd963c756dbc69", "upstream/elekloader/patch.py": "77c0a74bf4b0ff8c5525d4c4b1bc42af765314a4601c0510577817a7487d8666", diff --git a/sdk/native-comparisons/vector.json b/sdk/native-comparisons/vector.json index 7df11cfbc..b1f52d419 100644 --- a/sdk/native-comparisons/vector.json +++ b/sdk/native-comparisons/vector.json @@ -2,7 +2,7 @@ "schemaVersion": 1, "moduleId": "vector", "moduleVersion": "0.3.0-experimental", - "moduleSourceSha256": "50a4f243d3ed16872173a2a742a345916aec60e316cd477d86ef3727a2ed85ce", + "moduleSourceSha256": "5c6004d8adedf47888c70cb38ad9f0a2fb2cf6c61f6ac164f507cc77ef142015", "revision": "b8deefc88b2c3e5f3c6158e364eb741df1924e1d", "originalOsSha256": "164f31224bf61181e3f50e7dec40df9afcae5b16dbf6e4c0d0cc5e986af0a84e", "pool": [ @@ -87,9 +87,9 @@ ] }, "native": { - "bytes": 1126982, - "osSha256": "df103a96522184c807f6df8ff0f78f9992a4d55d1a45c9f2b95a2fd1558a4234", - "maskedOsSha256": "ea57ac476a858272f1692e4ec893c1a2ba678c55aeb770645f3e076ba5b9d509" + "bytes": 1127040, + "osSha256": "f9a56afc6ce1aeb513ecda5586af0392de950ec76439d3eba4e103268411a383", + "maskedOsSha256": "f5b2298b0f602f870ef3307927c655343374d2f80ee9e68a5e81e5a122ad9c21" }, "result": "masked" }, @@ -114,9 +114,9 @@ "fx2": [] }, "native": { - "bytes": 1126982, - "osSha256": "3ce69d42fe169b12ed73f548bcfe41ff9c10fc6ea17a03f279fcaac72a67d36a", - "maskedOsSha256": "5c289c8bfa92b1d922a6b19ba8cfe12fad4e91a8bc86e161761132a8d7aa5b93" + "bytes": 1127040, + "osSha256": "527f5bce02f9fd417663939a0e7c06042fb2e519ae8ba96333a9c8315e29a55f", + "maskedOsSha256": "5fa31cb44b07778f9887041de90da6db0defe2bbd81545b3c1bc4725e35223fa" }, "result": "masked" }, @@ -157,9 +157,9 @@ ] }, "native": { - "bytes": 1126982, - "osSha256": "1bc9dffa0ba563e9da5603ed7c1b64363cf9e6374dca0131f66bd5398026be59", - "maskedOsSha256": "ed566c13a19cf2e6cd94e3cc93767d1a362a710a398ee85d2d34d06cf91adb53" + "bytes": 1127040, + "osSha256": "6b4d11a7b8f0bf1428495a73d3ccf882f3f889b0d0efd02c8e5df7fb30ffc7ba", + "maskedOsSha256": "1435daabc23c98b8b591e3ec01da90f3a82375c6fcc78a748a0c824233de6e01" }, "result": "masked" }, @@ -187,9 +187,9 @@ ] }, "native": { - "bytes": 1126982, - "osSha256": "6354cefc316b5ecd77e1e8122fcda6bc9f09a11569505da15cf5fe1c67fd4c54", - "maskedOsSha256": "6b1b83a0f7066228a973a3b7e36106665b96de668be07969e0bf5ed63612700c" + "bytes": 1127040, + "osSha256": "efa368ca865f0d1edd57f165ce9a2a2786c4ae2d2bb4c5b0742577ddddd2bdc7", + "maskedOsSha256": "c019cc6003728c31a515df5bd253336894682a950341c20bdafb4eb2ffa218b9" }, "result": "masked" }, @@ -230,9 +230,9 @@ ] }, "native": { - "bytes": 1229225, - "osSha256": "b8d8f81bde20adcbc86b856b13e6a9829de36cbce3d91ba3a4016698641907e3", - "maskedOsSha256": "00472ab2105e1015615230d0b591cb5a03a6b0599f8ca8e5ee560196554123b3" + "bytes": 1229274, + "osSha256": "7ba60bd653e9ce5fec8125efe3dcbef63ef7fff02fd37809f7f7d58c4df14c52", + "maskedOsSha256": "f2e0b016c52132aade8d0af50bac4f66cbbe369f544de9c0b1822b693af45cf6" }, "result": "masked" }, @@ -260,9 +260,9 @@ ] }, "native": { - "bytes": 1229225, - "osSha256": "5edda5057109d8eeb3c7b9e6b09cf51e2c7ed5bb574d3abf71f9c3736e57925b", - "maskedOsSha256": "a89a559565a42fe31c5ab1cd70e1684431adbf59594115b0f7c34d40c18dc5cf" + "bytes": 1229274, + "osSha256": "4256ac59ddd9e0868a853995a87d751ff1f220130f0badaf8fb63057b3d6ea9a", + "maskedOsSha256": "5699764d233cf05c07a5b15878c18dfbb4cb4a6fed8f5fbd28c6b327f082be61" }, "result": "masked" }, @@ -304,9 +304,9 @@ ] }, "native": { - "bytes": 1129094, - "osSha256": "9e88b73fd944f46db0ebd1879c5772b2ed49d6360a1e934a2405458bc8e9beb2", - "maskedOsSha256": "86b1a0d9fc254a9d668537fea34ac63cf3eb6abe45d9d81db8aa1a508a7ff799" + "bytes": 1129144, + "osSha256": "f1729ad05f66f79f4173315145a5ca3607b3bcbe0098857844e5506f792f2185", + "maskedOsSha256": "058bf393baa5c72f70cb4a6c98633861ddb070edd27323a218f1dcbaa97d2cf6" }, "result": "masked" }, @@ -335,9 +335,9 @@ ] }, "native": { - "bytes": 1129094, - "osSha256": "91706b209fc299c15225dc61241662bee53a0d1b178df626f60a4d9e9e550c5a", - "maskedOsSha256": "f1f4a8d2bea0e88b20fcef1c6a450fd8c60d8d2298f6473eeb6ae79949b7a681" + "bytes": 1129144, + "osSha256": "9adcca8b16993f3a593f74598bc65a9cd31d8a8ea04954b0898d003559181915", + "maskedOsSha256": "38cb0b3d690a6f0662c688f3902c03935ae2259cd0fcc455441e1d9f9e55135e" }, "result": "masked" }, @@ -378,9 +378,9 @@ ] }, "native": { - "bytes": 1126982, - "osSha256": "af5d3797d217e342efad274db0c7d2fce4cd7f7ed73b8acbbf6f494aa37eb3af", - "maskedOsSha256": "4005d63b2191e9635ed7aebe94c461284bebec28068bb2c3285ccc7007b30d2e" + "bytes": 1127040, + "osSha256": "9d9c4fe089e0ca0bbeae3c4cbc36a4b40e639ca84a0aef934b5746216267ed28", + "maskedOsSha256": "90e1583106ff1b2cdf7d716703e4995568f00f0489bbeb943cb365ec5e822d64" }, "result": "masked" }, @@ -406,9 +406,9 @@ "fx2": [] }, "native": { - "bytes": 1126982, - "osSha256": "3899af2827c40b846536feb13d9c2387655e783cc9dd552668e609a60f5fd81b", - "maskedOsSha256": "cbda215b17b6a0fd01225edc89ffdd1358f47bd8bcf220dcb4ce62d233e74ae3" + "bytes": 1127040, + "osSha256": "fd2bf7ce8d7acae0423c09914c0a3251bfda28c8b53dbb062a6c7e1083a262a0", + "maskedOsSha256": "2388992bb7939581f0fb259258faade28eb81c05e0f79144e4f7fadba54eb1fc" }, "result": "masked" }, @@ -450,9 +450,9 @@ ] }, "native": { - "bytes": 1126982, - "osSha256": "60f394ba68af812c23f594b8a5d7ae3fca6999e61d7e96037ac1f4c5b1c67732", - "maskedOsSha256": "e2831629bb2790f7b3d53bb7d93abfae6f69c8923361dbef8634fb7cb36a4b52" + "bytes": 1127040, + "osSha256": "c189ba36f84d12c5ee5e51076023739472e623ab82db18c91813098671c67c65", + "maskedOsSha256": "3fd9b53d7b662ed2de0fb9499d1df4e9cb6fb62a64f99948326990dd6dc683f6" }, "result": "masked" }, @@ -481,9 +481,9 @@ ] }, "native": { - "bytes": 1126982, - "osSha256": "b14f3ba0a489ff61c7ec67a67fba68416f4d25858ad6a47b3286717c6d87e146", - "maskedOsSha256": "d9dd59d50facd57dbefa470c0ca92acb9cb055027359055d4d63b80f52f03dce" + "bytes": 1127040, + "osSha256": "dc24e5704f5561440073ffcda71f7b9ac40d6b7b4ab769acae70ab9329dd5de4", + "maskedOsSha256": "3138a39bfaddb679c903acf58f947ce7c72e1baab00bab81ee13b8d4727e4045" }, "result": "masked" }, @@ -524,9 +524,9 @@ ] }, "native": { - "bytes": 1126982, - "osSha256": "cb0b6f849eb15d3b745d182e82f267e613ab20beea5cbb0519f961341f14ae1b", - "maskedOsSha256": "cb1a5e4038f92179da9f4cd4ef00fe9a8a43631b932619affe39f6b162db9474" + "bytes": 1127040, + "osSha256": "a8945791e12e93d35e58a8699179de7be2493942945a9c2362db5e79596ec595", + "maskedOsSha256": "d417d21e23decad131242048deb57a67b11cc5c82e8c5b1f48da0e0dcc68a8df" }, "result": "masked" }, @@ -554,9 +554,9 @@ ] }, "native": { - "bytes": 1126982, - "osSha256": "05b2efa38f6537f5b437f08568217292d89b5e1f198c92dfc929ed376d2a1dc4", - "maskedOsSha256": "1e6e1ea4299c34401f7a9595739b39c55c0865ceef967f2d04b84c7a274c4556" + "bytes": 1127040, + "osSha256": "52609c684c670f7fae344af282471f1c40a615016a7257d3337e10632fec9ad9", + "maskedOsSha256": "4e92d77959081a885d3c9f198de534335e238767e70bffa624d6984185960238" }, "result": "masked" }, @@ -596,9 +596,9 @@ ] }, "native": { - "bytes": 1126982, - "osSha256": "1a1015bcc409d5d2c3fdc58235a440db0fa3cac3da0b2826cda3ac9a38c3b88c", - "maskedOsSha256": "da4434f752e3d6e2e1133e364d0041355804209e57063d43c18973c5894965de" + "bytes": 1127040, + "osSha256": "b44a0907e938e48e4938123093542e290c4711d81b98b1f3f824246566240203", + "maskedOsSha256": "3c4897bfe9051d40c94a686b6b1c42f1ce7b0242e197b98011990d0d231c8982" }, "result": "masked" }, @@ -626,9 +626,9 @@ ] }, "native": { - "bytes": 1126982, - "osSha256": "2c77bd6c77528ebfa0c6d0487dadcc6e7c423d590169a4338b72becb33c6a8b4", - "maskedOsSha256": "b8b0059f294e4cbcc6a8cb432c696c8c6e72720999726412933a9ff3cae86517" + "bytes": 1127040, + "osSha256": "8eb5aadbb5e05a7d7e12844eec29983ee9f97cc7e27ecb577a5eb7ad354dbcb7", + "maskedOsSha256": "e4f492222cd3ebdb1366137ae22687dafeb2cfea1e36b282e8ce2767dd03cc30" }, "result": "masked" }, @@ -668,9 +668,9 @@ ] }, "native": { - "bytes": 1126998, - "osSha256": "ac5f95c2c1cd5c3e3a9b561adea4b19b87c563978436b1eb3fbb97e0c9e28c4d", - "maskedOsSha256": "5c285126e0defd5a47ffa5a6e705b6f9b5e1d4bd2815e1a0319803d75a2fe42b" + "bytes": 1127061, + "osSha256": "8d5c87bdb5d4f8e8c76168fec6f0005f95e6794bdb948723eab9d8ea4820740e", + "maskedOsSha256": "6ef69e1b1ce637535a04fef62098c3e22f51ef1a55c461eb4966b6679bb82a41" }, "result": "masked" }, @@ -698,9 +698,9 @@ ] }, "native": { - "bytes": 1126998, - "osSha256": "4942ab1dbe1798ed63248a4f4dbf2193fd5e99df43374965146141eace1f2125", - "maskedOsSha256": "bfb2bf80282fbb1f80f01b27089beb4f8c8c7a5b11ccfe7e5613737f66ecd06a" + "bytes": 1127061, + "osSha256": "22c14535ec12b5a5f7dfbbcb0c20b728b6e01b6f375f17379b5ce3688159b0a5", + "maskedOsSha256": "386e54230fc86dc69186d50b8b9ffe8c0a71ff4b61eb249a6ffdc45a1bfecb43" }, "result": "masked" }, @@ -740,9 +740,9 @@ ] }, "native": { - "bytes": 1126982, - "osSha256": "e7d399c53b3d55ae84b0c055c80b6277022676dc36004c639b7449606920ae53", - "maskedOsSha256": "618375830639c2ffa926cc9a282dae96b2f000110d2b49b7b6d08f72dcded710" + "bytes": 1127040, + "osSha256": "2a239d55552849d0d7ae128be8139923be2dba217055a48128e0e46e4af3d973", + "maskedOsSha256": "27e334b481e9d17d69d92733e4981a4cd1ddfa24db559c4874cb4018524251d7" }, "result": "masked" }, @@ -770,9 +770,9 @@ ] }, "native": { - "bytes": 1126982, - "osSha256": "aed22a05c7641fc54fed3920d54efc7ccde5970ce29f21ad697138cc90598eeb", - "maskedOsSha256": "b8e383fc88b9b22c1b40e1fba385aa66d430a6e5fd4f9601c960ece5b77ca3da" + "bytes": 1127040, + "osSha256": "1489ff867dd53f520dc67ebabdd9b3d567b70c4f775a9ae994c8bdc63571a367", + "maskedOsSha256": "e19d01b3d1d01a02ec3b010d822c71c79d4d2d0b6644d07c3682fb55feb4b890" }, "result": "masked" }, @@ -814,9 +814,9 @@ ] }, "native": { - "bytes": 1126982, - "osSha256": "454274be4c6d5973f2305857704d13ca2bee6d72c4e4351f875fc7433e207b5d", - "maskedOsSha256": "3156e69ef02108f2aa859737c3d25d0bd12c2c8e360b0562833ffdbd09881836" + "bytes": 1127040, + "osSha256": "9b0404b5ba11318b354ad4d6b57501375876357aafd6c5faa0ef57f22115aebf", + "maskedOsSha256": "7f528ba85d3ded57e6acdaf60aeeb936474d5f6dfa3ac7845702d93dd6afec54" }, "result": "masked" }, @@ -845,9 +845,9 @@ ] }, "native": { - "bytes": 1126982, - "osSha256": "c77baf76c69244fe74113dd883f85843fefc645358a61079ac7b68f8cacb19ea", - "maskedOsSha256": "1037afe245afe88a90fa2110c6143d3411ca1f96f49dc73e9c85eedf76a664aa" + "bytes": 1127040, + "osSha256": "5599d1ab96a84c84dd7625a8085b2360691bb1d4b767c23bdd10e2c8ce378424", + "maskedOsSha256": "077849b195e96650c3d219643abbb66b5d85fa56ad30626500047526f31a0deb" }, "result": "masked" }, @@ -954,9 +954,9 @@ ] }, "native": { - "bytes": 1129720, - "osSha256": "968e6b67743c5c0820bd6aeaa6d33e70a4f4f05194179260b4b2802df4117be9", - "maskedOsSha256": "b797c1013d52417263f3aab918c71f92e7593c072be406d9e3dc5aaedd279cf1" + "bytes": 1129771, + "osSha256": "d4a5f533a573d1fcd8fdca180ba9082b81104cf01b7b48e5df4031ed7f5151cf", + "maskedOsSha256": "195e72b7290312153fe4cf6ff1576cb6f1a97f59b29a8570801c50e03e4e1c12" }, "result": "masked" }, @@ -982,9 +982,9 @@ "fx2": [] }, "native": { - "bytes": 1129720, - "osSha256": "ddb721a348698cad4955830c97765f88dbab4494fcef8d56fe11def2fd2895a2", - "maskedOsSha256": "0d1a9f940deaee78215469219738aa2ff80a67d0f4f427c80681dac37d9cf7b8" + "bytes": 1129771, + "osSha256": "4f722762b67c9a77c183791a8e4deaffd830de6d4d5e5a91aff8abf2c5bf9241", + "maskedOsSha256": "dbca4406f38ea89d419a6189a25936249042ffaecb0cf83582473573e5a13a48" }, "result": "masked" }, @@ -1025,9 +1025,9 @@ ] }, "native": { - "bytes": 1130271, - "osSha256": "6df867ebf98339233634b46974fd88e1aeb246f34c6308b7541dc06ea094bfb4", - "maskedOsSha256": "25e99d06a18a569c1872fb104c26135502c35372d3d517e063591c84e302f331" + "bytes": 1130367, + "osSha256": "38e7fe08e4e7cee056db6ab4c1ebe9510a1efcf7c39afd4093fc064f4743ac11", + "maskedOsSha256": "a019282da249f6a5a37e84daac362adcd5cae4901c4a2c464ebbb1b663f2652e" }, "result": "masked" }, @@ -1053,9 +1053,9 @@ "fx2": [] }, "native": { - "bytes": 1130271, - "osSha256": "c341835d8ab2e0c7932ef62d2c3cb5212dc30c6f25024e3bc25b8d04b763fe6d", - "maskedOsSha256": "2b5dc65cb128bce7d4c9445df3063ee92812b55ac2b15bfe0d3e6018e1ad552b" + "bytes": 1130367, + "osSha256": "945c66d4b5243d635e8042ac6f4486f57281f50331907cd4e206866549f4d8e6", + "maskedOsSha256": "5ac7d8c874be7c127da3a69a5279dfd735f3778eeaedd534575261ce5a5e0f41" }, "result": "masked" }, @@ -1163,9 +1163,9 @@ ] }, "native": { - "bytes": 1126982, - "osSha256": "80a29d1e9f2bd711669186c4665d3cf18a3cbb393d485db3453d03af8c58a019", - "maskedOsSha256": "f4ae5b1adf730d53243c254bb7c8f405e373a08f818f52bdbec4c3ee18f6c8b1" + "bytes": 1127040, + "osSha256": "2dd5ac79ef57b3ac9aa8ddc11ae4499f4a55c6482ff294b5ce1a8a6b58aa9fef", + "maskedOsSha256": "2dbc2d1798c1fc9fb9befd94de580386e0bc965d06138defde1d385c0d1cb655" }, "result": "masked" }, @@ -1191,9 +1191,9 @@ "fx2": [] }, "native": { - "bytes": 1126982, - "osSha256": "09e187f34b50faaf57d436442dd872120be5dc1a7efc3cb2a962a6a6abdac940", - "maskedOsSha256": "294bc8a0b479f1c05f767cb0bbc97b5cb1354fdfaaff2b7e8194f9ba39e304b2" + "bytes": 1127040, + "osSha256": "a5ecb256d3bbf5c4416ccec41451265e5c24af9439bd95d801a161df71dfec56", + "maskedOsSha256": "057272e2c9006073daba8ba20af1b3c0df05795b36dadaf9f36d6c4183ea6d7e" }, "result": "masked" }, @@ -1234,9 +1234,9 @@ ] }, "native": { - "bytes": 1126982, - "osSha256": "e6366e318e40f2dff8f96b676973b965e1c47a770134467ffa1544d01bfeddf8", - "maskedOsSha256": "5c3a4f2cb967d7c60a893781b39c1cf45defa3abfc8f2053d3a07ff32872d7d3" + "bytes": 1127040, + "osSha256": "f7d05ba9ac94bdd2d5cc4523bb38c91b719e796db4cee229a96eb0d99e63a47d", + "maskedOsSha256": "7ae4775435135e6d38af493ab271c8088a3e62f2a2e0a3fb6071c99e83b8f437" }, "result": "masked" }, @@ -1262,9 +1262,9 @@ "fx2": [] }, "native": { - "bytes": 1126982, - "osSha256": "6b3178216fa81baef04657cbef48f5f201131d91e71c57ef03109d578a3cda98", - "maskedOsSha256": "687180b9f3a66d6c98cc225f13da061e8b4e3072c41a91463746f3d3bf4a3c0f" + "bytes": 1127040, + "osSha256": "ed40dbe68d7440dc50f5b0df1e84bc787f1977edf664166cd50ace21c38d4aa7", + "maskedOsSha256": "c0c72d19bedd209c693b4b928b4af5e5f7e598d5d7840f18a840d21f3dd9707b" }, "result": "masked" }, @@ -1304,9 +1304,9 @@ ] }, "native": { - "bytes": 1126982, - "osSha256": "f1977ea2332b74185c647af8a20d4dbf9abb77385a2fe2a5d1196dd4aa3f9dda", - "maskedOsSha256": "035539346f5b9e635a0161fffcc6417b80c71dbdc3322665bed1caa5720673d6" + "bytes": 1127040, + "osSha256": "c5e8d4dd7bcf0c8a26876d4ee780a5c71eb49644c6aa6a2e4121897097d4c800", + "maskedOsSha256": "8fd7baa1c3e1f599e98dc3e24b4adacd38369159311e9c428ad0dbe47d15696c" }, "result": "masked" }, @@ -1334,9 +1334,9 @@ ] }, "native": { - "bytes": 1126982, - "osSha256": "59e35854082e59d469d63ccf6e20bb7420314475d1ff610b037089cf886675f3", - "maskedOsSha256": "1e913af7f643e8347887f498622e583c22b21c19cc57062c824df3fbc9ce19e3" + "bytes": 1127040, + "osSha256": "942460ce20fa08f89cc576222a5beefdb0433efe0c3d1bbe2390946271511bc4", + "maskedOsSha256": "7dbd86c397abd5d0e2cf14cf0a62ee01a625075ecddbc15531dcfb937b779118" }, "result": "masked" }, @@ -1377,9 +1377,9 @@ ] }, "native": { - "bytes": 1132753, - "osSha256": "21f683241505f2bd25a097de51a7792aee86f158a1b911333bbc82aa5a73aef0", - "maskedOsSha256": "1533551fe60ec05f8c25a115e71c018b603dd34e82d644827e20186b5046c818" + "bytes": 1132802, + "osSha256": "d111b25f263558d729e43affc65f4978718db04fb69d0eb42e61694a2b25f74b", + "maskedOsSha256": "221d22d16beb513f9392794fb81e88c7a63d6b2045ae986edd6efb19d7dbf05f" }, "result": "masked" }, @@ -1405,9 +1405,9 @@ "fx2": [] }, "native": { - "bytes": 1132753, - "osSha256": "659149ab54b9454d1f4aa25169f029bebe9a9184b782cf77c66cf40457be5a91", - "maskedOsSha256": "a02de5d385e6119d291d2d2e5214c9a8a8cdb5841232588fec0d7a80328fa5f8" + "bytes": 1132802, + "osSha256": "7c1488e975c9d776497ea2892af4059ac6a588ffa3f7b04b75aeb539bedb6574", + "maskedOsSha256": "d2ce36b7b73e044858663dfb1ecb0c9d2eab129bac31957849ce7d4f033488c2" }, "result": "masked" }, @@ -1448,9 +1448,9 @@ ] }, "native": { - "bytes": 1126982, - "osSha256": "26a2764fea81060f257e2f9cc7c6b5a9b28af18bec3570155a87204088bd5989", - "maskedOsSha256": "02e18f88b132ee9ffb331e832e4aa6a8a2f69f802ae88600e2b376770a5e3748" + "bytes": 1127040, + "osSha256": "d5f71f4d0a39000bb74dd2584b67669c09be42bdc75f54d1e7820922fec83533", + "maskedOsSha256": "c6095a3b3c09eb2b168298166a4cdaaf714850037f52e66e7430e0de93542f5b" }, "result": "masked" }, @@ -1476,9 +1476,9 @@ "fx2": [] }, "native": { - "bytes": 1126982, - "osSha256": "6adb9040386c83247986b473920fb443b61993e64008dd07a074ffd49245ee0d", - "maskedOsSha256": "f30ab3822971a4ca288cf2d71cd754b4ea8b9180095207dac046ae67a527e8a5" + "bytes": 1127040, + "osSha256": "a473d18c175b55ea10e2d9a71126d3afdada02b257274ec44134040708f29a98", + "maskedOsSha256": "bf9b0a91075e6afeff0abedc61f58fe16dde9458a22e55a90286fde824620e74" }, "result": "masked" }, @@ -1519,9 +1519,9 @@ ] }, "native": { - "bytes": 1126982, - "osSha256": "07b71c6660bb3c08d02018cfedb061537520eb8da04e58323b7f077b5d7217a9", - "maskedOsSha256": "9e1795ff680d4d4d854a0f2803e8ca0577db3952eb1dc8b61e80586d47e4fd8c", + "bytes": 1127040, + "osSha256": "6d9266f5eb450e6cc8bfcd2e03e112e2bbb3095a184f6a523a20e0b6f269d7a9", + "maskedOsSha256": "5193543ebfe2da05f34a75cb0dac729b45b0e9ab0d082144add3a8e8af1f8565", "platformArena": true }, "result": "masked" @@ -1548,9 +1548,9 @@ "fx2": [] }, "native": { - "bytes": 1126982, - "osSha256": "8c2ef43a413fa19f52a10a63e3f2fab551829a32a24ce58e935b524c3e93f733", - "maskedOsSha256": "9ca1874cb37a988db129b12b2f8949e2ed74a2db8aee25389ddfa40d047b64d1", + "bytes": 1127040, + "osSha256": "6161facac2e4d630d503116d4399678e909072140685e1727b345c3f18d36757", + "maskedOsSha256": "411646415bfdfe8fb168ca038d9e7bd0623043fd1da6ffca76b67ca37c1a04dd", "platformArena": true }, "result": "masked" @@ -1592,9 +1592,9 @@ ] }, "native": { - "bytes": 1140052, - "osSha256": "ad21d536bcc6058b24c1ccbcaa87a69c575f015063bd0af53a355613f8077272", - "maskedOsSha256": "a33a6d785574a520b2bde7b5666c04e210faa281aa087a686441cb74782d468b" + "bytes": 1140133, + "osSha256": "ed74883ac481d38ee66342962415043c249d72f9465cbb7c303cec1475897362", + "maskedOsSha256": "99baa0eb2d049e81cb4d894a60c6bb34a0851b3e2d13ab7805a21b57d7627a6d" }, "result": "masked" }, @@ -1620,9 +1620,9 @@ "fx2": [] }, "native": { - "bytes": 1140052, - "osSha256": "3ec7c9955d04d2133ab758dc2b1048203eda05b68bba0fcb7271b4003fab0c81", - "maskedOsSha256": "55df5a77e46186dc5943a04cc7dcb52ebad30b4ec02098079786f82f655cf3f7" + "bytes": 1140133, + "osSha256": "667c563177e01d0be7d346a1003d2fc4f1a5f3fd6501e936227d25586879b13f", + "maskedOsSha256": "fe98e19e5bcfea72c3275c0948391aeb343bef29dc9b5a490127fb84792c0912" }, "result": "masked" }, @@ -1662,9 +1662,9 @@ ] }, "native": { - "bytes": 1128157, - "osSha256": "ae2f57615d5acbfd047010ee48ff6ff3435da5538c09ca68c19e8ff9509946b4", - "maskedOsSha256": "018d178e330af71fc6974af3b765b196d8a51cb6d0b7157c41bdf6ead3bdfc43" + "bytes": 1128223, + "osSha256": "4d5addf8398242af22589f8151e69464b40c73c45aa955f5563ee03a5e6b7857", + "maskedOsSha256": "a9fec7ff98125fc9b5aede2e349191aac1f1ebaf28711fd55bbf3e0844dfaf6f" }, "result": "masked" }, @@ -1690,9 +1690,9 @@ "fx2": [] }, "native": { - "bytes": 1128157, - "osSha256": "35b3e4c92a59691e542be0ce02b654bb97395fd0c1ad7f25026b2f343ac6a0c4", - "maskedOsSha256": "18e9c585bd2285f100814730c58c60350a262d8ffd9eb679cc22975b713e6920" + "bytes": 1128223, + "osSha256": "098cd4d2fcfdfb9b22bd98515c16e83fc9fd3c863d360f964cf32442b3b2cf0a", + "maskedOsSha256": "421abe6e81374f8914157c2ef2e1cfa6ac8463760dde14368c2a52596c23ad06" }, "result": "masked" }, @@ -1733,9 +1733,9 @@ ] }, "native": { - "bytes": 1126982, - "osSha256": "fe36e558d1c17b762adaf2a0460a00842553a06b285fdd446c78e47d098a194e", - "maskedOsSha256": "7e297d27f3b283c7933dc3dd383c60d07e32f6b388a4aab1f0672812ca1dca82" + "bytes": 1127040, + "osSha256": "3c9e87403b02d4f4f8810f1cb488f6707271ce09aac6868a7392deb94e7d90f7", + "maskedOsSha256": "7346423ce81e1b4926376842a4c0186871fd95b55dbfa74b298d39d93666a6f3" }, "result": "masked" }, @@ -1761,9 +1761,9 @@ "fx2": [] }, "native": { - "bytes": 1126982, - "osSha256": "1498e7325baee65c4f908430f87a0c1202c679e7beec49a5d9bae6dc10885dca", - "maskedOsSha256": "f516598f6f7a8ad9c4ffe9e55b93aead4eb475f482116abbd32fdb4f6260e1bf" + "bytes": 1127040, + "osSha256": "172b86c13710c0e74673f6f4efa7f2be1c30b1565830ac4bb4d193418f5b87b1", + "maskedOsSha256": "9ff7dca1ed52c108c78aadfb90799c1dd98d88bd8e8c6f0ea6b26d0c33110f78" }, "result": "masked" }, @@ -1804,9 +1804,9 @@ ] }, "native": { - "bytes": 1128201, - "osSha256": "0629c00d587ec1c01b83be9a15d9311eec3e15d873611ead3a29b3131062d32a", - "maskedOsSha256": "0519ad95b4da39fdc7aa6e16610cf8941d9119ffa47782a3bc10246a478324f3" + "bytes": 1128259, + "osSha256": "2756eda09402c10fa0438de07921be106779d137cba4c28d9200aeb17911d139", + "maskedOsSha256": "a07ab252b826f6a4d2c5454fcc437add42e5a29904a1faee574671e1dcbc2f5c" }, "result": "masked" }, @@ -1832,9 +1832,9 @@ "fx2": [] }, "native": { - "bytes": 1128201, - "osSha256": "182bc0b22f7673c11eb1885413a2174bb9a6fda47288f7445964aa40569049d6", - "maskedOsSha256": "8e72865b0f56e33cdede5f767da7c431fc8f91f3904cdbdca82a0c19627949ee" + "bytes": 1128259, + "osSha256": "5408fd5d29b7fba91250d00d230c1885f8e3d422218998f1c359415b199f467b", + "maskedOsSha256": "7ff7ed75c03d4443b8088e98ab0a25eeda44f8c39a0f4008e11fc63d87168498" }, "result": "masked" }, @@ -1875,9 +1875,9 @@ ] }, "native": { - "bytes": 1128346, - "osSha256": "58c8fe20defc2caf9cc07c1e43ee07df75d139720caea97edc9a9bf641878791", - "maskedOsSha256": "3401fc0ea410cb90731ac57a9a50fdaaaa49ac271b3539424eae95b1bde88963" + "bytes": 1128413, + "osSha256": "52f731938d972f7d9e1492e569e6ceebf9e619a55edd25b1fd9b3192bb1fe6d4", + "maskedOsSha256": "3e409429e4e218f5b473962936d397aef92df7d09d7d1d7997471d20a1f198a7" }, "result": "masked" }, @@ -1903,9 +1903,9 @@ "fx2": [] }, "native": { - "bytes": 1128346, - "osSha256": "6f89bba5395a2cc2b869bb495a2155c5b355adfc99e0db1d23bad389942798c8", - "maskedOsSha256": "6a941422ec73a6a7cf1c226f5e59cbd43091c67bfa1100a9c12bd0a316c5f3a6" + "bytes": 1128413, + "osSha256": "30dbc01bf5b989bb346e5b366618a76eafdd497c59642c4048556862d32e4d34", + "maskedOsSha256": "5487d0d405a5b4b8099cb7f14a46ee2352e597071d1bcabf765f6e1fbcbf7d13" }, "result": "masked" }, @@ -1946,9 +1946,9 @@ ] }, "native": { - "bytes": 1128581, - "osSha256": "f844174db8ad59302e98bcd688e4071c45487e781e7042576728edeefe7fc130", - "maskedOsSha256": "5345cf8b27fe9e3a414c01e52f39990cd80065598fc1d365f1dd7c251b80a38b" + "bytes": 1128634, + "osSha256": "46163cfb5d1a68a38cd2e6b2207bd697866bb85b249077fd12a27f8b0dbde55b", + "maskedOsSha256": "45f73ee34dff046bc0fb318b1b51119b54b65a7d07da8768c575ac4721d702e7" }, "result": "masked" }, @@ -1974,9 +1974,9 @@ "fx2": [] }, "native": { - "bytes": 1128581, - "osSha256": "887dd280bf792aff524a382b652dcba11d2ab83518c3b544d537da72ae7cc013", - "maskedOsSha256": "c457f7afe958f451a1df5458d70c99ca8d0c109735bbc4799ab91ea948b85775" + "bytes": 1128634, + "osSha256": "8256b40b30eb9bb3a6f8f4ab2120f686276bad1610ad7919ed9265b0516851fc", + "maskedOsSha256": "ad7f8ebdb1b512cdaaeeb88592e3c1b121d0ef2367bb9d3fb573185c43c6a91a" }, "result": "masked" }, @@ -2017,9 +2017,9 @@ ] }, "native": { - "bytes": 1129887, - "osSha256": "c003148b4c90b46ec1be4d92785e0a1e8c14266cb9093b40f2b9258398d5103b", - "maskedOsSha256": "1a61470354dc75aff159f0788c78dc3b6e9f0c62453db6645da3489a3b6677cf" + "bytes": 1129930, + "osSha256": "37325661abe54203ecf83b4cee6a62fd3a207925b60b4364688daefc9ef770b6", + "maskedOsSha256": "10fedd7456c0048b8c9c4dae879a4dbf35321dc458da9c49677c1868429622b2" }, "result": "masked" }, @@ -2045,9 +2045,9 @@ "fx2": [] }, "native": { - "bytes": 1129887, - "osSha256": "ea12fc6b408e2f640ccdd33ee3c9409a10fd0f947c4b1665fed812424887b20d", - "maskedOsSha256": "9c9be92b223bc9f9dd96c864c2d1c9e7a063c94db1661d405ae789e8180a4a00" + "bytes": 1129930, + "osSha256": "931150d17d2e4f66b7ff63a70a49dc92bd7abb4e7a011a5092b406b7599a136d", + "maskedOsSha256": "3b038e63ec0dba3d6e89a443b729b39817a152a9f5c1ad5521d54ed0724e485d" }, "result": "masked" }, @@ -2088,9 +2088,9 @@ ] }, "native": { - "bytes": 1127555, - "osSha256": "17730810f170952b725061170b52cd5b1c5ffc22e8d1c8b26437900c7a90229e", - "maskedOsSha256": "8805e6e8068c4b74b835bd10cb7125e90c8b7db71814a248f3529880a9e987fb" + "bytes": 1127599, + "osSha256": "5db89164f08611414372be3981ce67744007ec786f5257290b64a9add43d030c", + "maskedOsSha256": "f2623713527e326dbf0254a1475e5333d7f3fefa2338369f73630bfb5bf1d29c" }, "result": "masked" }, @@ -2116,9 +2116,9 @@ "fx2": [] }, "native": { - "bytes": 1127555, - "osSha256": "d2cb3523405404130360c71dc5467198934653524a2c26be81c0e8905647a398", - "maskedOsSha256": "76e6ee8e1b0492fa951a685645980fe23c618e3ede2a55e76efe5c91ee2c0183" + "bytes": 1127599, + "osSha256": "6bbad701e3d80a426098398014b50c612b4158cd2cb4a3d9cc968ef59611ea79", + "maskedOsSha256": "62185b344ed89f1e86b2e774d2834f68d687c0053d3bfc0b986efa19538866d3" }, "result": "masked" }, @@ -2159,9 +2159,9 @@ ] }, "native": { - "bytes": 1126982, - "osSha256": "df103a96522184c807f6df8ff0f78f9992a4d55d1a45c9f2b95a2fd1558a4234", - "maskedOsSha256": "ea57ac476a858272f1692e4ec893c1a2ba678c55aeb770645f3e076ba5b9d509" + "bytes": 1127040, + "osSha256": "f9a56afc6ce1aeb513ecda5586af0392de950ec76439d3eba4e103268411a383", + "maskedOsSha256": "f5b2298b0f602f870ef3307927c655343374d2f80ee9e68a5e81e5a122ad9c21" }, "result": "masked" }, @@ -2187,9 +2187,9 @@ "fx2": [] }, "native": { - "bytes": 1126982, - "osSha256": "3ce69d42fe169b12ed73f548bcfe41ff9c10fc6ea17a03f279fcaac72a67d36a", - "maskedOsSha256": "5c289c8bfa92b1d922a6b19ba8cfe12fad4e91a8bc86e161761132a8d7aa5b93" + "bytes": 1127040, + "osSha256": "527f5bce02f9fd417663939a0e7c06042fb2e519ae8ba96333a9c8315e29a55f", + "maskedOsSha256": "5fa31cb44b07778f9887041de90da6db0defe2bbd81545b3c1bc4725e35223fa" }, "result": "masked" }, @@ -2230,9 +2230,9 @@ ] }, "native": { - "bytes": 1128944, - "osSha256": "d8fb3ca6b7681b1ae3db31e119dd9675289fc2b718f6456a1bc7887e1a269c00", - "maskedOsSha256": "2d5f8389d6276024a10df1b50a6f091d198f28cbcef30ad5b0dd6241bee76d3d" + "bytes": 1129001, + "osSha256": "528e8aa2857ce73ddc2f6606295e2020dd71785bb5b305e89a9b65df494eed4e", + "maskedOsSha256": "2ae910dda790cf0e14a610f138908449561473b77c452d88ee88ac9e44b4cc63" }, "result": "masked" }, @@ -2258,9 +2258,9 @@ "fx2": [] }, "native": { - "bytes": 1128944, - "osSha256": "3b8587ce74148e9d501951dcfa06c147d0d4d7d74da5132738b02caec1df4cdd", - "maskedOsSha256": "159eb4a0f3bbee07830eb060364ac5ae8cb79ff07d05e9d9296679bf426a2cd8" + "bytes": 1129001, + "osSha256": "59cab3569ab7ee47ce622cc0ac14d6b9742b500bf9d59b6d6f71160d19547f25", + "maskedOsSha256": "12c14e257f6d01a1cc7f93d36d920f841ee00564f16e62497f680a289ea1785c" }, "result": "masked" }, @@ -2301,9 +2301,9 @@ ] }, "native": { - "bytes": 1127109, - "osSha256": "6b70f0f896c653e0e32e66d30d94d0dd8552c880fe5e81353b9c08d99733c578", - "maskedOsSha256": "c5867771b85663939cb86ee4e336ab3888f9090fdc3db05d515a78e03d5f1d0d" + "bytes": 1127148, + "osSha256": "c6475ae3816ee11181784af1d23d550ca596b1dc7436cda418d8e30bdf9c7aa0", + "maskedOsSha256": "0627ef503d1a969525c981441cbfabe8e7faa34c1c84f98d1e40580a9f2cc495" }, "result": "masked" }, @@ -2329,9 +2329,9 @@ "fx2": [] }, "native": { - "bytes": 1127109, - "osSha256": "5061c9935980114a4f881f11fce19d64dddd3aa6e48c1fc58aeaeb0e789bb371", - "maskedOsSha256": "64b9801021952a865949fc31b30ddb6fd4cc84e4e7d9fd48c421131372e78f4f" + "bytes": 1127148, + "osSha256": "67d223b8721e7a071347c5ea3ecb2c4bdd9613b9262738e7e08203524162afce", + "maskedOsSha256": "d8b5c1935218be99fdecc1f57fef61958ad14861d2e45a4350cdebb0cdb7f457" }, "result": "masked" }, @@ -2372,9 +2372,9 @@ ] }, "native": { - "bytes": 1127020, - "osSha256": "ff62fe2c5cc423cce62169791e0023147b8298235ac52504ada9418055934089", - "maskedOsSha256": "91539cabac875bfbb2c4348d823be58d0b769fb8fb6b1e1facb25f0e8376e807" + "bytes": 1127079, + "osSha256": "b9093614b328a06e1b21e06ce0b1d4f6e9fd7114e96263928278d6031bc561e5", + "maskedOsSha256": "69d187dac73a879a8520f604751d0db5cc874bf40cf2124f837221bd1e324c74" }, "result": "masked" }, @@ -2400,9 +2400,9 @@ "fx2": [] }, "native": { - "bytes": 1127020, - "osSha256": "c8d95cf2f2080d8b4e31a4e428004a834f77d7feb4064cdd01dea72f0e53c154", - "maskedOsSha256": "6aa3327884240828ceef780bab8b36c63be5500e6f43f01bffc2708f6ec1dbc9" + "bytes": 1127079, + "osSha256": "12835cb4a11e3573d1e01e764d86b4a1703b18c78d3725b1c80021377e6d9210", + "maskedOsSha256": "9bfe73ea27c644ee25a937259ceb8ab4e6420d828ecacce16090c8581beb97b3" }, "result": "masked" }, @@ -2443,9 +2443,9 @@ ] }, "native": { - "bytes": 1135348, - "osSha256": "200ffc6f3d044558a7d090d0cf1d5a16349a7085add5287ad8103bc37b875a8c", - "maskedOsSha256": "db1e1583262d0339cb778fa4f318d80023272c6ec61eb0b61b354e08764f7546" + "bytes": 1135380, + "osSha256": "de975279520512e8181fe05163323ba6a540641e82773d3a17f85b4aa4e06ef2", + "maskedOsSha256": "31fc192b30005cb3ee8b35219b4c1b5f4b64d590c1cbdce2ad3331a7dddfe9a4" }, "result": "masked" }, @@ -2471,9 +2471,9 @@ "fx2": [] }, "native": { - "bytes": 1135348, - "osSha256": "ab5956661f7f03f61e7cc71c5a344cc3d237cba29249638e033cb0bc10594606", - "maskedOsSha256": "98a486337a6b3a459990eb6f11f352f93ec9f3151bad401aa2466f776dde2289" + "bytes": 1135380, + "osSha256": "db7ecee09eb0450226851ec5de6b65767ea13809116fcc424bb3ab0258b26b4f", + "maskedOsSha256": "74c0a8efbc81b5561b3282a8fd5fe5849f293aaa6b124f68c63381ac8bbbe826" }, "result": "masked" }, @@ -2514,9 +2514,9 @@ ] }, "native": { - "bytes": 1126982, - "osSha256": "df103a96522184c807f6df8ff0f78f9992a4d55d1a45c9f2b95a2fd1558a4234", - "maskedOsSha256": "ea57ac476a858272f1692e4ec893c1a2ba678c55aeb770645f3e076ba5b9d509" + "bytes": 1127040, + "osSha256": "f9a56afc6ce1aeb513ecda5586af0392de950ec76439d3eba4e103268411a383", + "maskedOsSha256": "f5b2298b0f602f870ef3307927c655343374d2f80ee9e68a5e81e5a122ad9c21" }, "result": "masked" }, @@ -2542,9 +2542,9 @@ "fx2": [] }, "native": { - "bytes": 1126982, - "osSha256": "3ce69d42fe169b12ed73f548bcfe41ff9c10fc6ea17a03f279fcaac72a67d36a", - "maskedOsSha256": "5c289c8bfa92b1d922a6b19ba8cfe12fad4e91a8bc86e161761132a8d7aa5b93" + "bytes": 1127040, + "osSha256": "527f5bce02f9fd417663939a0e7c06042fb2e519ae8ba96333a9c8315e29a55f", + "maskedOsSha256": "5fa31cb44b07778f9887041de90da6db0defe2bbd81545b3c1bc4725e35223fa" }, "result": "masked" }, @@ -7735,9 +7735,9 @@ ] }, "native": { - "bytes": 1131503, - "osSha256": "3a53eb4ff0a725062140dd5cf5f40434401b2df787fc22d0f7cb565fa6d7e003", - "maskedOsSha256": "b958d95ae05191b4eb2ec4dd83eb835d3a0a7572ff802488bbfc3b4537481a68", + "bytes": 1131582, + "osSha256": "abcf0515851746e2fad310e3adad043929c5ca4299870f77b2cc0e1d94303522", + "maskedOsSha256": "78aec39547d47c4bf55d112a63a43b0b010fa31a147fc58167d86d857199d197", "platformArena": true }, "result": "masked" @@ -7771,9 +7771,9 @@ ] }, "native": { - "bytes": 1131503, - "osSha256": "a811fd69bddcea6f67a362519f49140bd66de2ecd373ae9e4ddc080aa5038002", - "maskedOsSha256": "f3de8a098324188d6ae8de1deee47e3026541f690b0567ecd31cd8ed6f6bc11c", + "bytes": 1131582, + "osSha256": "08cd84ae272a3434ccc3e8b924addb28b0322a5b82e9be49309efb0392520495", + "maskedOsSha256": "86570d202d6620c5cdeb14813474db4d814c3f73ed1a5578f04392f989091967", "platformArena": true }, "result": "masked" @@ -8059,9 +8059,9 @@ ] }, "native": { - "bytes": 1141896, - "osSha256": "748b1dd50a67a8df6c293c95f1d61b8ed6f1592af1f6a3f4fd184456d4c308f8", - "maskedOsSha256": "6756605474efbdb137adaa58c4b8bf1fd9b62a82a8a089c0f9a91b5767312cd0" + "bytes": 1141967, + "osSha256": "ae18a331d5150fa0f8cb3b240c29cc98c0c8a80d272788667bfc5c162861368e", + "maskedOsSha256": "c553e77fdd4012014acc36059201811d934b611d55614090b7cde5f2bb4b7488" }, "result": "masked" }, @@ -8097,9 +8097,9 @@ ] }, "native": { - "bytes": 1141896, - "osSha256": "f73e71b50ecc7d57fbc6051e52695b4e33e431ad6301b38f92ba011382d4ccf8", - "maskedOsSha256": "b5194f5057e7ec9b380a165e418b96d3c82809d03fd518eb7fb5313f4e8f522e" + "bytes": 1141967, + "osSha256": "9af68b1c795cfccd43c9ea9f5ccb6d496573dec4386b36c5eeaa080de4524afc", + "maskedOsSha256": "b26ee29a4528f82f154bded3abca3161440685494cd7aa73bff9cefac14bef23" }, "result": "masked" }, @@ -8375,9 +8375,9 @@ ] }, "native": { - "bytes": 1132532, - "osSha256": "4dd3f240a0a1281d3d2948347af1cfcbd71aa180c201c9d147594e3d74238b25", - "maskedOsSha256": "8de2cd7b023396eae49b2be6b5cf5cac33cdf5e31f07f3121f32384609b208e3" + "bytes": 1132585, + "osSha256": "dd4aba1ee411fd315532633ce064b20f006df88f649979a5ff605e5f46131b75", + "maskedOsSha256": "bdae27b584e3b385623844047822966914cd63159561ebf1aa9fff5e320f5546" }, "result": "masked" }, @@ -8409,9 +8409,9 @@ ] }, "native": { - "bytes": 1132532, - "osSha256": "e2ed63c298fb6bd374abe24c1079d02990995df092568593779dd9ca67b677f7", - "maskedOsSha256": "6e1dea0db3fa89d755e78f0809d9318b5f43564ca495b1d2e9646a07ae2da8d2" + "bytes": 1132585, + "osSha256": "d9a436f76b2e15cbb67460b13853f7b6019527f278182d141171768b51a637ed", + "maskedOsSha256": "3bfa1d5aae81b5bb63d5a1fa23e3c9500dc24975812609591d364ca356d36227" }, "result": "masked" }, @@ -9465,9 +9465,9 @@ ] }, "native": { - "bytes": 1129855, - "osSha256": "b05498c7f610bf1b5c019647bc178370d007a7fdc2faec1e62c0c855e4bcfddc", - "maskedOsSha256": "e0ba96934cc2ab20be3f847fb6d31f496c655a0117bc217fffa6b0289814ffca" + "bytes": 1129919, + "osSha256": "6279b22306cc7aa877275f9bc53b6729a5cb3e4dc7854dbc6d454cf55a1ebcb6", + "maskedOsSha256": "001a25aadd4249d535ae79b1686644e3c5b0726c1789dd90d8da04a1c7d20bac" }, "result": "masked" }, @@ -9499,9 +9499,9 @@ ] }, "native": { - "bytes": 1129855, - "osSha256": "b10f8b9a0ecb4326260e54e6f0d6f4f97e0cdbf4dc3aa27a9727c4cee9f2c231", - "maskedOsSha256": "f4b22f4a0bf1cd0f59d6b83ba52904fffee964d360b65abc216d12c034cb6705" + "bytes": 1129919, + "osSha256": "2dbdc799418ea255fdf60229488976a4ae0fe771e46ab6d2b9e042cf121f7484", + "maskedOsSha256": "15a9aca1638c1b7a2a263a58cc1a1e3334bd3ca9b8c8ffb8e459501ed3982d4c" }, "result": "masked" }, @@ -9546,9 +9546,9 @@ ] }, "native": { - "bytes": 1131138, - "osSha256": "36619fa423fd6302013a33547b7dd5a998073ffc5e22accd8a1848d9e83a5aa9", - "maskedOsSha256": "50052a72a1b5e5f236ae39538c58f6c2b10cd2ec06a87063000a1db996dea37b" + "bytes": 1131217, + "osSha256": "c37dce33c6388cf60ca70906c64735087596c1c71bc049e4a07ed93c9c453bfc", + "maskedOsSha256": "425f022a53a0bfc8aedb146fc54bd66ca9ab9b249f0f12d4d285a1ef138b3a0b" }, "result": "masked" }, @@ -9581,9 +9581,9 @@ ] }, "native": { - "bytes": 1131138, - "osSha256": "6119741f511bf11ac16a145e2b8eaca63d1745dbad39dfcc22626531a8719153", - "maskedOsSha256": "46e09d54d25b8a30af96db115ed680a9669cb4bb6048fcd1036d34ea417e5383" + "bytes": 1131217, + "osSha256": "dba5c2e5e1590897f1c1bcd3f817341fc670cd7084ed863d8fec977e5a10ee47", + "maskedOsSha256": "4af8e12e9b2fd34776afc442b050342e3daedc983c1ca054dd876eb0a3df6484" }, "result": "masked" }, diff --git a/sdk/octabam/modules/vector/TESTING.md b/sdk/octabam/modules/vector/TESTING.md index 25e45d428..73bfb693d 100644 --- a/sdk/octabam/modules/vector/TESTING.md +++ b/sdk/octabam/modules/vector/TESTING.md @@ -147,6 +147,8 @@ On the base of #1332 (the list's first row ARP, scrolling, room 16) the same USB ## Owner exception and remaining limits +For 0.3.0 the owner chose, on 8 November 2026, to release on the 24 October unit run of the MIDI generator ("MIDI generator on the unit" above: development base 4fd515ff, package 49dc25cc) and the emulator passes above, rather than a run of the released package; the manifest's hardware record names that run and what it does not cover. The paragraphs below are 0.2.4's exception, kept as history. + On 9 October 2026 the owner stated: "Approve release and closure with hardware reboot/audio unverified" after receiving the exact 0.2.4 private image and source patch. `sdk/vector-build-approval.json` binds this separate current-build-hardware exception to the source/image above. `hardwareStatus` stays `untested`; no physical reboot, audible playback, chip timing, maximum audio stress or hardware canary pass is claimed. The 0.2.3 approval remains historical and is not reused. Already reset projects need a known-good backup. The issue closure must name these limits and explain how to reopen. After main advanced to `32e27effdb32d5aaa49ee350daef95bc4c803003` (Analog BD 0.1.4), all non-VECTOR package payloads/recipes remain identical to that base. VECTOR native source is unchanged. The rebuilt reported-profile MAIN is `fc8c24c97ffd5ae7b613c8fcff10caf2f9ce62d03ca4014c2a9c14262f628125`; its common-worker saved update is 466764 bytes, SHA-256 `3e98ee1f5a1a71b674b682bef496b6fbe73e6df8a67d4b049ce07abfb3b7177a`. Both reported/solo images preserve the original failing battery state with advancing PLAY; the reported profile also restores the saved battery state. Global inventory/logger provenance changes the image identity, so this result is recorded separately from the qualified VECT349A01 private image. diff --git a/sdk/octabam/modules/vector/octamod.module.json b/sdk/octabam/modules/vector/octamod.module.json index 34b42cb11..e7c9238fc 100644 --- a/sdk/octabam/modules/vector/octamod.module.json +++ b/sdk/octabam/modules/vector/octamod.module.json @@ -210,22 +210,22 @@ }, "tests": { "report": "TESTING.md", - "summary": "0.3.0 adds VECTOR as a MIDI generator for the MIDI tracks and makes edits cheaper: a 64-step rewrite took 0.5 ms on the owner's MKII (3.9 ms before), with audio frames and MIDI timing steady. The list, the SRC, AMP and FUNC+AMP pages, generation, PROB and HUMN against recorded MIDI, grid-recording locks, removal and reinstall ran on the owner's MKII over USB with development bases (21 and 24 October 2026); the card build was checked by octabam's native builder only. Current-build hardware, chip cycles and complete memory bounds are not measured, under the owner's approval for this exact source.", + "summary": "0.3.0 adds VECTOR as a MIDI generator for the MIDI tracks and makes edits cheaper: a 64-step rewrite took 0.5 ms on the owner's MKII (3.9 ms before), with audio frames and MIDI timing steady. The list, the SRC, AMP and FUNC+AMP pages, generation, PROB and HUMN against recorded MIDI, grid-recording locks, removal and reinstall ran on the owner's MKII over USB on 21 and 24 October 2026 (development bases). The released package, which adds main's changes, the #1119 card fix, the card .bss fix and the ARP list, ran in the emulator only: the USB package and a site-built card image passed every step but the Part switch, which needs DSP there. The owner accepted the 24 October run for this source on 8 November 2026.", "hardwareStatus": "reported", "gates": [ "Firmware-free sanitizer generator, writer and packed-settings checks", "Hoisted scale lookup identical to 0.2.4 over 18,144,000 parameter sets", "Authored C/hooks to assembly reproducibility without firmware", "Base MIDI generator registry host test (sdk/tests test_midi_generators.c)", - "Owner's MKII over USB: list, SRC/AMP pages, generation, MIDI output, PROB and HUMN timing, grid-recording locks, removal, MODE guard, edit cost", - "Browser/native build parity and matching composition rejection", - "Owner-approved update for this exact source; current-build hardware, chip cycles and memory bounds unmeasured" + "Owner's MKII over USB (24 October 2026, an earlier build of 0.3.0): list, SRC/AMP pages, generation, MIDI output, PROB and HUMN timing, grid-recording locks, removal, MODE guard, edit cost", + "Emulator (ot_emu), the released USB package and a site-built card image: list, pages, encoders, MIDI out with PROB and HUMN, removal; no Part switch", + "Browser/native build parity and matching composition rejection" ], - "evidenceRevision": "645d73da3872ce9111f3e3172114fb33a3660b9f", + "evidenceRevision": "3b56452d20c640ab6b8bb323cc5aba5602e95c34", "qualification": { "moduleVersion": "0.3.0-experimental", "sourceSha256": "5c6004d8adedf47888c70cb38ad9f0a2fb2cf6c61f6ac164f507cc77ef142015", - "imageSha256": "a753ddf67b0fe64e3742b4c89ecf141071eb30757b170173215e92b1b4794d24", + "imageSha256": "08240af3b24126a50aa1b617a46c956fe4c5aac5582534039812b5b303bb273a", "cycles": [ { "processor": "coldfire", @@ -315,16 +315,15 @@ "kind": "functional", "status": "reported", "model": "MKII", - "testedOn": "2026-10-27", + "testedOn": "2026-10-24", "tester": "repeat98 (owner's unit, driven over USB by the coordinating session)", - "sourceRevision": "645d73da3872ce9111f3e3172114fb33a3660b9f", - "imageSha256": "a753ddf67b0fe64e3742b4c89ecf141071eb30757b170173215e92b1b4794d24", - "summary": "Over USB on an Octatrack MKII: a RAM-booted development twin of the release base (identity e6e75d75..., MAIN a753ddf6...; the b1b2ca58 build plus --dev) with POLY8 0.3.1, Analog BD 0.1.5 (rebuilt for the twin) and this VECTOR 0.2.5 package (45c962ca...), all accepted. On a STATIC track SRC SETUP's list scrolls to POLY8, ANALOG BD and VECTOR; with the cursor on VECTOR before YES the stock STATIC setup shows, and on ANALOG BD Analog BD's page. YES on VECTOR opens its STATIC/FLEX choice and the main SRC page shows SRC>VECTOR. SRC SETUP then shows VECTOR's page 2 (SEED 1, SPAN 12, OFST 0, ROT 0, RPT OFF, DIR FWD); encoders A-F change SEED, OFST, ROT, RPT and DIR (SPAN already at its maximum) and back, and SPAN moves within its range. Another STATIC track keeps the stock setup.", + "sourceRevision": "3b56452d20c640ab6b8bb323cc5aba5602e95c34", + "imageSha256": "08240af3b24126a50aa1b617a46c956fe4c5aac5582534039812b5b303bb273a", + "summary": "Over USB on an Octatrack MKII: a RAM-booted development twin of the base with the MIDI generator table (identity 4fd515ff210d53db, MAIN 08240af3...), VECTOR 0.3.0 layout A installed with `try` (package 49dc25cc..., 29,478 bytes), a disposable project, MIDI recorded over USB. NOTE SETUP's list by double-tap; YES on VECTOR; SRC TYPE DENS ROOT SCAL OCT SEED, AMP VEL ACNT GATE SPAN OFST RPT, FUNC+AMP ROT DIR PROB HUMN; OCT and ROOT move the phrase's NOTE locks; PROB 1% let none of 46 off-beat notes play; HUMN: all 50 note-ons within 1.0 ms of grid + offset; a held trig shows stock's page and its locks; OFF, removal and reinstall; 0.52 ms mean, 0.69 ms longest a control turn at 64 steps, MIDI timing and audio frames steady.", "limitations": [ - "The base was the development twin of the release base, not the b1b2ca58 build itself, nor the base this release commits.", - "Not tested: the FLEX, THRU and PICKUP setups; a POLY8 or Analog BD track's SRC SETUP; VECTOR 0.2.4 on the new base; whether the SRC main page regenerates the phrase.", - "Not tested: saving and reloading, a power cycle with VECTOR kept, and listening; no chip timing or stress.", - "One MKII; no MKI. The card build was not run on a unit: 0.2.4's card source, and 0.2.6's (st_setup_page without its row-5 test, for POLY8 sets, #1119) only in ot_emu. 0.2.6 keeps publishing this 0.2.5 USB package; its control unit source is byte-identical." + "An earlier build of 0.3.0 on a development base: the released package (4d37ad92..., on main with #1332's list) adds main's changes, the #1119 card fix, the card .bss fix and the ARP list row; those ran in the emulator only. The owner accepted this run for the release on 8 November 2026.", + "Not tested on a unit: a card build, a power cycle with a VECTOR MIDI track, project save and reload, scenes and LFOs on a VECTOR MIDI track, more than one MIDI generator installed.", + "One MKII; no MKI. No chip timing or stress." ], "report": "TESTING.md" }, diff --git a/src/catalog/module-documents.json b/src/catalog/module-documents.json index f564a8a91..9cf29cdd1 100644 --- a/src/catalog/module-documents.json +++ b/src/catalog/module-documents.json @@ -6404,7 +6404,7 @@ "value": 10586112, "unit": "bytes", "method": "static", - "conditions": "Tested reported profile: repitch, vector, playmodes, mute-modes and recorder-loop-fix with stock FX2, original 1.40C. Shared arena 10,586,112 bytes includes 10,487,808 module arena plus 98,304 logger reserve, counted once. Linked runtime 90,780 bytes and packed staging fit within it. VECTOR allocated sections (0.3.0, the MIDI generator and on a card the base's generator registry): 22,314 text, 678 rodata and 3,908 data bytes; no BSS (a card never zeroes it, so prepare.py keeps zero statics in .data) or new heap. Complete flash append: 18,153 bytes measured for 0.2.4's profile, counted here as 28,287, that plus the 10,134 allocated bytes 0.3.0 adds (an upper bound; packing makes it smaller). On MIDI tracks VECTOR reuses stock storage only: the tracks' pattern records, 16 arp note bytes and the arp step mask per Part. Maximum observed native commit stack 1,048; Part validation 252; fixed added UI stack bound 1,216. Borrowed stock window, lock indexes and 8-track bank/SRAM capacities are retained. Hardware canaries are unmeasured.", + "conditions": "Tested reported profile: repitch, vector, playmodes, mute-modes and recorder-loop-fix with stock FX2, original 1.40C. Shared arena 10,586,112 bytes includes 10,487,808 module arena plus 98,304 logger reserve, counted once. Linked runtime 90,780 bytes and packed staging fit within it. VECTOR allocated sections (0.3.0, the MIDI generator and on a card the base's generator registry): 22,422 text, 682 rodata and 3,912 data bytes; no BSS (a card never zeroes it, so prepare.py keeps zero statics in .data) or new heap. Complete flash append: 18,153 bytes measured for 0.2.4's profile, counted here as 28,403, that plus the 10,250 allocated bytes 0.3.0 adds (an upper bound; packing makes it smaller). On MIDI tracks VECTOR reuses stock storage only: the tracks' pattern records, 16 arp note bytes and the arp step mask per Part. Maximum observed native commit stack 1,048; Part validation 252; fixed added UI stack bound 1,216. Borrowed stock window, lock indexes and 8-track bank/SRAM capacities are retained. Hardware canaries are unmeasured.", "source": "TESTING.md" }, "processing": { @@ -6440,17 +6440,17 @@ }, "tests": { "report": "TESTING.md", - "summary": "0.3.0 adds VECTOR as a MIDI generator for the MIDI tracks and makes edits cheaper: a 64-step rewrite took 0.5 ms on the owner's MKII (3.9 ms before), with audio frames and MIDI timing steady. The list, the SRC, AMP and FUNC+AMP pages, generation, PROB and HUMN against recorded MIDI, grid-recording locks, removal and reinstall ran on the owner's MKII over USB with development bases (21 and 24 October 2026); the card build was checked by octabam's native builder only. Current-build hardware, chip cycles and complete memory bounds are not measured, under the owner's approval for this exact source.", + "summary": "0.3.0 adds VECTOR as a MIDI generator for the MIDI tracks and makes edits cheaper: a 64-step rewrite took 0.5 ms on the owner's MKII (3.9 ms before), with audio frames and MIDI timing steady. The list, the SRC, AMP and FUNC+AMP pages, generation, PROB and HUMN against recorded MIDI, grid-recording locks, removal and reinstall ran on the owner's MKII over USB on 21 and 24 October 2026 (development bases). The released package, which adds main's changes, the #1119 card fix, the card .bss fix and the ARP list, ran in the emulator only: the USB package and a site-built card image passed every step but the Part switch, which needs DSP there. The owner accepted the 24 October run for this source on 8 November 2026.", "hardwareStatus": "reported", - "evidenceRevision": "645d73da3872ce9111f3e3172114fb33a3660b9f", + "evidenceRevision": "3b56452d20c640ab6b8bb323cc5aba5602e95c34", "gates": [ "Firmware-free sanitizer generator, writer and packed-settings checks", "Hoisted scale lookup identical to 0.2.4 over 18,144,000 parameter sets", "Authored C/hooks to assembly reproducibility without firmware", "Base MIDI generator registry host test (sdk/tests test_midi_generators.c)", - "Owner's MKII over USB: list, SRC/AMP pages, generation, MIDI output, PROB and HUMN timing, grid-recording locks, removal, MODE guard, edit cost", - "Browser/native build parity and matching composition rejection", - "Owner-approved update for this exact source; current-build hardware, chip cycles and memory bounds unmeasured" + "Owner's MKII over USB (24 October 2026, an earlier build of 0.3.0): list, SRC/AMP pages, generation, MIDI output, PROB and HUMN timing, grid-recording locks, removal, MODE guard, edit cost", + "Emulator (ot_emu), the released USB package and a site-built card image: list, pages, encoders, MIDI out with PROB and HUMN, removal; no Part switch", + "Browser/native build parity and matching composition rejection" ], "qualification": { "documentation": { @@ -6478,8 +6478,8 @@ "screenshotStyle": "black-and-white" }, "moduleVersion": "0.3.0-experimental", - "sourceSha256": "50a4f243d3ed16872173a2a742a345916aec60e316cd477d86ef3727a2ed85ce", - "imageSha256": "a753ddf67b0fe64e3742b4c89ecf141071eb30757b170173215e92b1b4794d24", + "sourceSha256": "5c6004d8adedf47888c70cb38ad9f0a2fb2cf6c61f6ac164f507cc77ef142015", + "imageSha256": "08240af3b24126a50aa1b617a46c956fe4c5aac5582534039812b5b303bb273a", "cycles": [ { "processor": "coldfire", @@ -6512,9 +6512,9 @@ { "name": "Complete tested-profile flash append: bootstrap and packed runtime", "space": "cpu-flash", - "words": 28287, + "words": 28403, "wordBits": 8, - "bytes": 28287, + "bytes": 28403, "scope": "shared" }, { @@ -6559,26 +6559,25 @@ } ], "perInstanceBytes": 74656, - "sharedBytes": 10617875, + "sharedBytes": 10617991, "maxInstances": 8, - "totalBytes": 11215123, - "conditions": "Tested reported profile: repitch, vector, playmodes, mute-modes and recorder-loop-fix with stock FX2, original 1.40C. Shared arena 10,586,112 bytes includes 10,487,808 module arena plus 98,304 logger reserve, counted once. Linked runtime 90,780 bytes and packed staging fit within it. VECTOR allocated sections (0.3.0, the MIDI generator and on a card the base's generator registry): 22,314 text, 678 rodata and 3,908 data bytes; no BSS (a card never zeroes it, so prepare.py keeps zero statics in .data) or new heap. Complete flash append: 18,153 bytes measured for 0.2.4's profile, counted here as 28,287, that plus the 10,134 allocated bytes 0.3.0 adds (an upper bound; packing makes it smaller). On MIDI tracks VECTOR reuses stock storage only: the tracks' pattern records, 16 arp note bytes and the arp step mask per Part. Maximum observed native commit stack 1,048; Part validation 252; fixed added UI stack bound 1,216. Borrowed stock window, lock indexes and 8-track bank/SRAM capacities are retained. Hardware canaries are unmeasured.", + "totalBytes": 11215239, + "conditions": "Tested reported profile: repitch, vector, playmodes, mute-modes and recorder-loop-fix with stock FX2, original 1.40C. Shared arena 10,586,112 bytes includes 10,487,808 module arena plus 98,304 logger reserve, counted once. Linked runtime 90,780 bytes and packed staging fit within it. VECTOR allocated sections (0.3.0, the MIDI generator and on a card the base's generator registry): 22,422 text, 682 rodata and 3,912 data bytes; no BSS (a card never zeroes it, so prepare.py keeps zero statics in .data) or new heap. Complete flash append: 18,153 bytes measured for 0.2.4's profile, counted here as 28,403, that plus the 10,250 allocated bytes 0.3.0 adds (an upper bound; packing makes it smaller). On MIDI tracks VECTOR reuses stock storage only: the tracks' pattern records, 16 arp note bytes and the arp step mask per Part. Maximum observed native commit stack 1,048; Part validation 252; fixed added UI stack bound 1,216. Borrowed stock window, lock indexes and 8-track bank/SRAM capacities are retained. Hardware canaries are unmeasured.", "report": "evidence/software.json" }, "hardware": { "kind": "functional", "status": "reported", "model": "MKII", - "testedOn": "2026-10-27", + "testedOn": "2026-10-24", "tester": "repeat98 (owner's unit, driven over USB by the coordinating session)", - "sourceRevision": "645d73da3872ce9111f3e3172114fb33a3660b9f", - "imageSha256": "a753ddf67b0fe64e3742b4c89ecf141071eb30757b170173215e92b1b4794d24", - "summary": "Over USB on an Octatrack MKII: a RAM-booted development twin of the release base (identity e6e75d75..., MAIN a753ddf6...; the b1b2ca58 build plus --dev) with POLY8 0.3.1, Analog BD 0.1.5 (rebuilt for the twin) and this VECTOR 0.2.5 package (45c962ca...), all accepted. On a STATIC track SRC SETUP's list scrolls to POLY8, ANALOG BD and VECTOR; with the cursor on VECTOR before YES the stock STATIC setup shows, and on ANALOG BD Analog BD's page. YES on VECTOR opens its STATIC/FLEX choice and the main SRC page shows SRC>VECTOR. SRC SETUP then shows VECTOR's page 2 (SEED 1, SPAN 12, OFST 0, ROT 0, RPT OFF, DIR FWD); encoders A-F change SEED, OFST, ROT, RPT and DIR (SPAN already at its maximum) and back, and SPAN moves within its range. Another STATIC track keeps the stock setup.", + "sourceRevision": "3b56452d20c640ab6b8bb323cc5aba5602e95c34", + "imageSha256": "08240af3b24126a50aa1b617a46c956fe4c5aac5582534039812b5b303bb273a", + "summary": "Over USB on an Octatrack MKII: a RAM-booted development twin of the base with the MIDI generator table (identity 4fd515ff210d53db, MAIN 08240af3...), VECTOR 0.3.0 layout A installed with `try` (package 49dc25cc..., 29,478 bytes), a disposable project, MIDI recorded over USB. NOTE SETUP's list by double-tap; YES on VECTOR; SRC TYPE DENS ROOT SCAL OCT SEED, AMP VEL ACNT GATE SPAN OFST RPT, FUNC+AMP ROT DIR PROB HUMN; OCT and ROOT move the phrase's NOTE locks; PROB 1% let none of 46 off-beat notes play; HUMN: all 50 note-ons within 1.0 ms of grid + offset; a held trig shows stock's page and its locks; OFF, removal and reinstall; 0.52 ms mean, 0.69 ms longest a control turn at 64 steps, MIDI timing and audio frames steady.", "limitations": [ - "The base was the development twin of the release base, not the b1b2ca58 build itself, nor the base this release commits.", - "Not tested: the FLEX, THRU and PICKUP setups; a POLY8 or Analog BD track's SRC SETUP; VECTOR 0.2.4 on the new base; whether the SRC main page regenerates the phrase.", - "Not tested: saving and reloading, a power cycle with VECTOR kept, and listening; no chip timing or stress.", - "One MKII; no MKI. The card build was not run on a unit: 0.2.4's card source, and 0.2.6's (st_setup_page without its row-5 test, for POLY8 sets, #1119) only in ot_emu. 0.2.6 keeps publishing this 0.2.5 USB package; its control unit source is byte-identical." + "An earlier build of 0.3.0 on a development base: the released package (4d37ad92..., on main with #1332's list) adds main's changes, the #1119 card fix, the card .bss fix and the ARP list row; those ran in the emulator only. The owner accepted this run for the release on 8 November 2026.", + "Not tested on a unit: a card build, a power cycle with a VECTOR MIDI track, project save and reload, scenes and LFOs on a VECTOR MIDI track, more than one MIDI generator installed.", + "One MKII; no MKI. No chip timing or stress." ], "report": "TESTING.md" } diff --git a/src/catalog/vector.test.ts b/src/catalog/vector.test.ts index 7516da28a..941c64f40 100644 --- a/src/catalog/vector.test.ts +++ b/src/catalog/vector.test.ts @@ -27,10 +27,10 @@ const CHANGED_SINCE_CARD_EVIDENCE = ['engine.c', 'native.c', 'prepare.py', 'mani const sha = (bytes: Buffer) => createHash('sha256').update(bytes).digest('hex') describe('VECTOR release', () => { - it('publishes a reported functional hardware result for 0.2.5', async () => { + it('publishes a reported functional hardware result for 0.3.0', async () => { const document = parseModuleDocument(draft) expect(document.tests.hardwareStatus).toBe('reported') - expect(document.tests.qualification!.hardware).toMatchObject({ kind: 'functional', status: 'reported', model: 'MKII', testedOn: '2026-10-27' }) + expect(document.tests.qualification!.hardware).toMatchObject({ kind: 'functional', status: 'reported', model: 'MKII', testedOn: '2026-10-24' }) expect(() => requireModuleUiForPublication(document)).not.toThrow() expect(() => requireModuleQualificationForPublication(document)).not.toThrow() await expect(requireFolderQualification(folder, document, parseQualificationBaseline(baseline))).resolves.toBe('qualified') diff --git a/src/engine/assets/analog-bd-composition-proofs.json b/src/engine/assets/analog-bd-composition-proofs.json index 50cb80476..df5f9a80c 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": "118443c7c977793053dadbb80dc8a32bd02dc2cc5d491e6e7b60dc5486d51bd8", + "moduleSourceTreeSha256": "0a2ac39eafc8c6cdfcbbe5a6901262fed1dfa59e92118bde8592242755221608", "packing": null, "proofs": [ { diff --git a/src/engine/assets/bootstrap-package.json b/src/engine/assets/bootstrap-package.json index 442be70ee..b22634626 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": "ebceb74f8ad1676bd8cb934b875d6f064ea2ab48", + "sourceCommit": "cd988717aa9d86a86887cd309ce0df8a2aa88511", "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 ceff6ba75..c124dc06b 100644 --- a/src/engine/assets/coldfire-packages.json +++ b/src/engine/assets/coldfire-packages.json @@ -208,7 +208,7 @@ "sha256": "ccffbf72d45358bde585760b9230c668bf38ebf412ab23efc73732cf96024dca" } ], - "sourceCommit": "ebceb74f8ad1676bd8cb934b875d6f064ea2ab48", + "sourceCommit": "cd988717aa9d86a86887cd309ce0df8a2aa88511", "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 7ffa69335..fc24972cb 100644 --- a/src/engine/assets/descriptor-recipes.json +++ b/src/engine/assets/descriptor-recipes.json @@ -4439,7 +4439,7 @@ ] } ], - "sourceCommit": "ebceb74f8ad1676bd8cb934b875d6f064ea2ab48", + "sourceCommit": "cd988717aa9d86a86887cd309ce0df8a2aa88511", "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 300abdac4..425f2e4fb 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": "ebceb74f8ad1676bd8cb934b875d6f064ea2ab48", + "sourceCommit": "cd988717aa9d86a86887cd309ce0df8a2aa88511", "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 e910ec387..8e7855da5 100644 --- a/src/engine/assets/menu-recipes.json +++ b/src/engine/assets/menu-recipes.json @@ -1425,7 +1425,7 @@ "caveLimit": 1074625596 } ], - "sourceCommit": "ebceb74f8ad1676bd8cb934b875d6f064ea2ab48", + "sourceCommit": "cd988717aa9d86a86887cd309ce0df8a2aa88511", "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 59442e50c..c868e3c94 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": "ebceb74f8ad1676bd8cb934b875d6f064ea2ab48", + "sourceCommit": "cd988717aa9d86a86887cd309ce0df8a2aa88511", "nativeRevision": "b8deefc88b2c3e5f3c6158e364eb741df1924e1d", - "sourceTreeSha256": "118443c7c977793053dadbb80dc8a32bd02dc2cc5d491e6e7b60dc5486d51bd8", + "sourceTreeSha256": "0a2ac39eafc8c6cdfcbbe5a6901262fed1dfa59e92118bde8592242755221608", "compilerSha256": "4c7b4a227737ef0686e3eafd320c7f7271003f9a19d02d72dbbe3b36aa10f702", "moduleVersions": { "spectrum": "0.1.1-experimental", @@ -47,47 +47,47 @@ "files": { "dsp-packages.json": { "bytes": 92040, - "sha256": "fbb081f22daac5ebe9abcaf9baa554223914d3a6d88fdd7acbe7726a20ac0461" + "sha256": "5c4079c9c3873bf56978c8ea8b9b0c7ebe834b80f472362ca949867b754820ac" }, "resident-dsp.json": { "bytes": 25445, - "sha256": "ae948a89aa96a66839b9197159a82a4de10303cd6629a1069039771ee16eddc9" + "sha256": "22494e0eadf67dafac3becd6f5160dd2cc66e4e7a4b4e1ba9454f42ce4d4aca5" }, "coldfire-packages.json": { "bytes": 354338, - "sha256": "f6019e4016f10e81000f8936f90b029b8752f7da034e7124b9385e4e393b6fc5" + "sha256": "e6356967329ed7b4b5b5f540681d6c088481ab13e5b68186a0d2caec539a1654" }, "rom-packages.json": { "bytes": 33596, - "sha256": "fc70e6199425a2509e5639d30cdadb31c83930afc58a06e003eeedabbd35b818" + "sha256": "6a3354fac4379a8c2011716b4deb25425257b46e93c871e3a9914fab4cc91cd1" }, "bootstrap-package.json": { "bytes": 4179, - "sha256": "3f993278837602045b107ccb3fea3bdb17f82e900a88d55d43f386aea73c2d90" + "sha256": "7b954cd8cfd0905d2afd9b75c9a5d11cce84bdda0c645e496632fa00896fa721" }, "menu-recipes.json": { "bytes": 37838, - "sha256": "7d7fce2e704137ee72538a18cd000c97ce3a754b8c6a2da55730f533609f87a3" + "sha256": "32faddf1856f4bec60bcb15b6d5f1fcf75ef70c8b7841ab4c2b78e1a3ab9e74e" }, "descriptor-recipes.json": { "bytes": 85463, - "sha256": "a2f3e102c03e408c159feeab544843859053fb851ac7793bede109d689b10234" + "sha256": "e5e8ec50ed28f38ae072dba255469d5472934e399bafa8310e9fb56f9011b514" }, "platform-writes.json": { "bytes": 17922, - "sha256": "9e112312d1e8da41d40ee2535b676be6991181755d080fe3e190de1da014efb2" + "sha256": "70c6a982b1501ae105daeb45f076a311e58a3f410e7d794f6b61a7ee6389de00" }, "requested-packages.json": { - "bytes": 1355906, - "sha256": "398d22e60e1738f5bad471dc732c991faf46f5d51b25cf93076e8498ee743150" + "bytes": 1356354, + "sha256": "8a488707396b0dcf2697df31c7370f7cb95c82331c97b6caf11b38d4fe14dcd7" }, "utility-packages.json": { "bytes": 13307, - "sha256": "e9d1088b8bc8d4b99b119e538d516b9b1d798ebdba1d24d6a101af0210e83a0d" + "sha256": "739c6fd47af1a93499738128ea0db2d1ef040002efe6bfd8f387823aa17b7ce3" }, "usb-audio-packages.json": { "bytes": 737949, - "sha256": "e121d3f84e069866dc947a6ac95fb6a09f4813d43662aab5b3a7fba99b123c1a" + "sha256": "e3596d82e5c4d4b80c9bfe1d1d8ef1fd6a7eea1199df13603bec7cbff899c21e" } }, "approval": null, diff --git a/src/engine/assets/octatrack-module-packages.json b/src/engine/assets/octatrack-module-packages.json index 032b6dfb9..88ec2aab7 100644 --- a/src/engine/assets/octatrack-module-packages.json +++ b/src/engine/assets/octatrack-module-packages.json @@ -194,10 +194,10 @@ "copies": 12, "fills": 0, "version": "0.3.0-experimental", - "name": "VECTOR", + "name": "VECTOR MIDI", "module": "b0d51c58", - "bytes": 29630, - "sha256": "b66a440e6969ed9c5a863245956ebbaa7d81f96993f8837c53a5a7428b6a7a31", + "bytes": 29774, + "sha256": "4d37ad9225f813f68c3e3ad0da42b1bd4c4cf883def911f785e92b700190a36d", "path": "octatrack-modules/vector/0.3.0-experimental.mwrm" }, { diff --git a/src/engine/assets/platform-writes.json b/src/engine/assets/platform-writes.json index a5e9cf95c..58b41ab8a 100644 --- a/src/engine/assets/platform-writes.json +++ b/src/engine/assets/platform-writes.json @@ -526,7 +526,7 @@ "sha256": "09effec7437266b693e358d43f0ba0f3de2b0b35fe4d81e7b76ba90cf388bde8" } ], - "sourceCommit": "ebceb74f8ad1676bd8cb934b875d6f064ea2ab48", + "sourceCommit": "cd988717aa9d86a86887cd309ce0df8a2aa88511", "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 b55f3177c..48ab90337 100644 --- a/src/engine/assets/requested-packages.json +++ b/src/engine/assets/requested-packages.json @@ -1,7 +1,7 @@ { "schema": 1, "revision": "b8deefc88b2c3e5f3c6158e364eb741df1924e1d", - "sourceCommit": "ebceb74f8ad1676bd8cb934b875d6f064ea2ab48", + "sourceCommit": "cd988717aa9d86a86887cd309ce0df8a2aa88511", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", @@ -455,44 +455,44 @@ "caveAddress": null, "source": "modules/vector/control.s", "sources": { - "modules/vector/control.s": "3e9cefa630c8425af9b2ea48cf4ce88bb9a48fa18bb1876cd1447dc12d0212b9", + "modules/vector/control.s": "e12b5f82744d14a5511a605fabc5ff0624387084164c59143f9ddccec1f207dd", "modules/vector/manifest.py": "b9dec167f8bd4f1b691069cc89834f6c2a6717b874eb28629ef5c8c026d3d976" }, - "bytes": 38044, - "code": "7f454c4601020100000000000000000000010004000000010000000000000000000092bc000000260034000000000028000c000b2f021039100b14cfa742227946c82456d3fc000950481211c480a340e5a8828012811239100b145e808113c0100b145e207946c82456d1fc0009b332241fa350a379100f85984ef940027e002f027233202f0008206f000cb28067187420b480674a7231b280674e7432a749b4806706241f4e7593c9a341b288672c4a886702a54143f19a0074fdd28943f90000000022711c0022095381b48165d42f48000c2f400008241f4ed1428160d6a349a341b28866c860f2a549a341b28866be60e84feffc40720f48d77cfc206f03c871902f40004eb2806406740f2f42004e7010206f03c877a800012f430046b083640672102f410046700b206f03c875a800022f420042b0826406720b2f410042a940206f03c875a800032f420052b0826404a96f0052206f03c8707e73a800042f41003eb0816406727e2f41003e707f206f03c875a800052f420056b0826406727f2f410056700c206f03c875a800062f42003ab0826406720c2f41003a7218206f03c81028000875a800072c421f40005bb28264043c7c0018206f03c843eefff42c2f03cc102800092f49004a4a0067107240b2866500046c7180b08665000440206f03c4200f246f03c40680000003c0224a116f03cf010041ef02c0264850c1421113410003134100021341000126d9b08b66ea222f03d4283c9e3779b92e2f004e760b4282b981e7af760f43ef00c04bef01c02a09200142404840b380223c7feb352d4c0108002200e6a9b380223c846ca68b4c010800260042434843b183a740c08277c34a8067000088d6872a83264520022f480032222bfffc41ef03c049f01c00b6acfe00640a26815380598b4a8066e447f70c00260206849e3779b9206f00325283588d5885274200c0b6866764222f03d42403760fb981200142404840b380223c7feb352d4c0108002200e6a9b380223c846ca68b4c010800260042434843b183a740c08277c34a806600ff7c2a834a826600ff78428047f70c00260206849e3779b95283588d5885274200c0b686669c2a6f00527a1847f9000000007e64387c000c79f3da00266f004a70f42a6f004a99ce9aaf004297ef003adbef003a42af003642af00322f4800522f42002e2205740cd2804c4210060d04672cb08b6c00022e220cd2804a816d000216be816f0002182f400036740c52802e012205d2804c4210060d0466d45280720db28066be302f0048206f0052242f002ec0c35080e888671671c049f10c00201947f70c007001174002c0b9c966f0720c7c0c202f00425e804c41000573fc00fe92af0056286f004a22422a6f004a4287700c90af00422f450046c2ef03d2dbef003ad0854c4600057dfc00fe99ef003a2f4d004a242f003226434c461001eaa42a6f004e2f4a00522f6f03d40032a340c0841f41003d2f40004e2c0752874a10670000da223c85ebca6b7a0f4c071800262f0032283c7feb352db7810a81b5297a4d200142404840b3804c0408002200eaa9b380223c846ca68b4c010800220042414841b1814a82670001662001e0884c4200044df74c00282e005c0684fffffff4700fc081b08d642c7030c0814a8066084aaf004e6600016c202f00420801000667060680fffffff4b08c6d08b0af004a6e02280076182001e6a8a743c9fc00052a004c435000068400000040114400015480c0ef0040e48811400002a740c0864a80670000de0281003000004a81670000d2102f003d114000035888bc896600ff18246f0052260b4aaf03cc675871af005b783fb880650000be2a2f03cc206f03c8266f03c44c4500021828000a71c5222f03cc538543f30c009282242f03cc2c0152814c4260004a0467062c059c8020064c43000647ef03c041f36c0024e8ff00b5c966da4cd77cfca3404fef03c04e754481be816e00fdec52806000fdc2b08d6e18222f0032204041e8000c4df71c0052812f4100322d48005c220cd2804a816d1abe816f00fdd22f4000362e015280720db2806600fd886000fdc6448160e2102f03d3114000036000ff2e282f00366000feac2a2f03cc703f206f03c8266f03c44c450002222f03cc71c51828000a5385928243f30c00242f03cc6000ff40202f00466000fe94206f03c42c00246f03c4200f224a0680000003c0116f03cf010041ef02c026486000fbbe71807c40b0866400fb9660d04fefffe048d73c3c4ab900000000670e202f0024b0b900000000670000da41f900000000226f002493c81031880010c0b1fc0000000066f24bf900000000428243f90000000049f90000000045f900000000223c00000000265d91c810338800670c158088005288ab43b68866eed1ca4218b28866fa201c26004243484378182a00e8ad2800e08c13400003ab4012851344000213430001b082656a203c00000000781826002a0042434843e8ad2800e08c1340003358891345002c1344002e52825c8a5c81700c1343002db082668877fc5555202f0024283c5555555523c400000000a3790000000023c30000000023c000000000203c000000004cd73c3c4fef00204e75203c00000000781826002a0042434843e8ad2800e08c1340003358891345002c1344002e52825c8a5c81700c1343002db0826600ff1e60924fefffe0222f002848d77c1c226f00244a816708a341c2af002c528141f1180123c10000000028084ab900000000660ab1f9000000006700011c41f90000000093c81031880010c0b1fc0000000066f243f90000000091c845f900000000101152894a00670a14c05288ab40b08866eed1fc000000004218b1fc0000000066f6340141f900000000c4fc000d2242d3fc0000000010d9b1fc0000000066f630014df90000000043f900000000223c0000000047f900000000c0fc00062a40dbfc00000000719d244191c85d8a28730c0010348800670c158088005288ab40b08866eed1ca4218b28866fa7440201e72182600e2ab2200e0891340000358891343fffc1341fffe72671342002c24007004424248421341002e22085c811340002d70a41340002f1342fffdbdfc00000000669273fc5555243c5555555523c20000000042b90000000023c10000000023c400000000203c000000004cd77c1c4fef00204e754fefffd448d74c044242203946c82456227c20300c0c2f4800102040d1fc0008ed8042001239100b14cf3f420028243c0b0b00012f420020a7421f40002a302f00322f490024c28275fc18b2c0fc001e4c021800d1c173b0083e53814a81670001f64def001793c922090681000001e9d280a542b489641e1cb0180052897209b289671e22090681000001e9528ed280a542b48965e245f1083f52891cf0a80060c6102f0017720fa942c2807180e88830401f410020b4806500017e3008122f001874101f400023701fc0813040b4806500013c3408102f0019ea891f420021a342c282740fc4801f41002a12022042740bb488650001027180e8881f410022720c3040b280650000d6122f001a340871811f420026747eb480650000b0102f001b1f4100244a006d00008c122f001c1f40002574187181b480656871af001d1f410027723fb2806546122f001ee188758120427440b4886528100147ef00203f400028206f0010200820d320ef002430ef00284cd74c0410af002a4fef002c4e75724047ef002010013f40002860d4122f001e703fe188758120427440b48864b860de721871af001d1f410027723fb280649660da707f122f001c74181f4000257181b4806400ff7460d8727e102f001b1f4100244a006c00ff5260d8307c000c122f001a340871811f420026747eb4806400ff2a60d4720b7180e88830401f410022720cb2806400ff0060d0307c0010102f0019ea8934081f420021a342c282740fc4801f41002a12022042740bb4886400fec460c0307c0004122f0018741030081f400023701fc0813040b4806400fe8260b847ef002093c9244b22090681000001e94df1083fd280a542b489651a528914f0e80022090681000001e94df1083fd280a542b48964e614b018005289ad41b2896700fecc528a60c0518f2f0a2f02740f206f0018203946c824561239100b14cfb488655ea742c282242f001406800008ed80eb8a224275fc18b243e903e24c021800d081d3c0700cb088672a700db08867000088a941b288663273a9000243f90000000071b18800b28064022001241f245f508f4e7573917413c2fcaaabe4a960dc241f4280245f508f4e75227946c82456a7421039100b14cf222f0014d3fc0008ed80e989c08275fc18b2244145ea183e4c0208007416d3c071b1a800b4806720ad40b0886764241f43f90000000071b18800245f508f4e7573a900016000ff7e203946c8245606800008ed801439100b14cf2f40000c43f90000000071b188002240d3c1a741100275fc18b243e91832c0814c020800d0af000c1231080006810000004073816000ff34202f00145280241f245f508f4e754fefffe848d70c1c242f0020246f001c77b9100b14cc2f022f034ebafeb2508f2200a940b0826760780cb88267000150a540b082673aa743b68267000110700bb08267000124760ab6826754780eb882670001847010b082665841f900000000101814c066fa4cd70c1c4fef00184e75740c4c42100041f90000000020700c00101814c066da60de2f4a001c4cd70c1c2f4100202279400d3f104fef00184ed14a81662441f900000000101814c066b060b451824a82661020010680fffffff44a806d0000fe2200224aa34842807663b681644e7864760a20014c440000068000000030128020014c43000043f2880124004c4320042004068000000030158088005488740a4c42100042030680000000301280158388004cd70c1c4fef00184e757409b48164dc2040760a20014c43000043f2880124004c432004200406800000003015808800548860b8ab444c44100041f90000000020700c00101814c06600fefe6000ff004a81674441f900000000101814c06600fee86000feea2439400d3f08a5672f032f41001c4ebafd402f4a0024222f001c22424c0418004cef0c1c0008d2802f4100284fef00204ed141f900000000101814c06600fea46000fea6740ca548224a948112fc002d2202a3406000fefa4a816700feca203c1002c9809081e588224020514a886600fe72224aa34842806000fed6203900000000ad4141f9000000004c01080071b008002f4000086000fdea203900000000ad414c0108002040d1fc0000000071902f4000086000fdcc203900000000ad414c0108002040d1fc0000000071902f4000086000fdae203900000000ad414c0108002040d1fc0000000071902f4000086000fd90203900000000ad414c0108002040d1fc0000000071902f4000086000fd72203900000000ad414c0108002040d1fc0000000071902f4000086000fd544feffff048d70c0c207946c82456a743222f00142401eb8a226f0018d1fc0008ed8047ef001f2441d5fc8000666e43e903e21039100b14cfd3c275fc18b2c0834c020800d1c0119398001039100b14cfc0834c0208002040d1fc100a4ece11939800101275b9800000027180b480670a4cd70c0c4fef00104e752041d1fc80006676101075b9800000037180b48066e070444c010800206f0018d1fc46c76dc0119308004cd70c0c4fef00104e752239460d1684a9402f0a2f02b081654c4ab9460d173a66444ab9460d1694663c202f0018068000000c1171c0206f001441f00a001028000175902242744db489661a4aaf001067147180246f000c224020122440b3ea0008670a1010241f4280245f4e75a94284aa000c030267ee241f245f4e754feffff42f0e2f0271b9100b14cc2c6f00242f0041ef000d4ebaf846588fad40b08e675cab42200eb48e6402538071b7080920402f2f00302f2f003070fec0af003043f90000000073b1e8002f002001b1c164022008c0fc007f4c4100002f002f2f00302f2f00302f2f00304eb9400479b44fef001c241f2c5f4fef000c4e751039100b14cc227946c82456a7421239100b14cfd3fc0008ed807180c282c0fc001e204071fc18b241e801f14c001800d3c110318800727fc28020416000ff76518f2f02740b202f00182200206f00105c81226f00142f6f002000042f6f00240008b4816406241f508f4e752f6f000800242f6f000400202f41001c2f4000182f4900142f480010241f508f6000fef2598f2f02740b202f0014222f000c206f0010226f001c2f6f00200004b4806406241f588f4e752f6f000400202f49001c2f4000182f4000142f4800102f41000c241f588f6000feaa4fefffe448d7401c242f002441ef001171b9100b14cc2f004ebaf6ee588fad40b082676cab40b082653c71b728112202a3435581b6816500009255824a826700012aab434c43000141f900000000226f002020701c00101812c066fa4cd7401c4fef001c4e7571b72810780bb882660001124a80670000e6226f002041f900000000101812c067d4101812c066f460cc1039100b14cc227946c82456a7421239100b14cf77fc18b2d3fc0008ed80787f7180c282c0fc001e20404c03180041e801f1d3c110318800c0847663b68064587864760a2200a54e4c441001206f0020a74906810000003010c122004c43100124014c43200422040681000000301081206f0020d1ce740a4c42000142030681000000301081206f0020118398004cd7401c4fef001c4e75206f0020a34942817409b48064d02c49760a224122004c431001548924014c43200422040681000000301081206f0020d1ce60aa226f002041f9000000006000ff1a740c4c42000141f900000000226f002020701c006000fed6780ab88266144a806600ff3e226f002041f9000000006000fee851824a826600ff2822000681fffffff44a816d0e20017663b6806500ff186000ff6c206f0020740c94802002a54910fc002da3417409b4806400ff306000ff5c700a2f4000086000fe1c70082f4000086000fe12ad6f00086000fe0a71b9100b14cc4feffff441ef00012f004ebaf4fe588f4a2f000b671641f900000000226f0010101812c066fa4fef000c4e75226f001041f90000000060e84feffff42f0271b9100b14cc41ef0005ab422f004ebaf4bc71af000c588f41f9000000004c420001226f001420701c00101812c066fa241f4fef000c4e754feffff42f02740c71b9100b14cc41ef00052f004ebaf47e71af000b588f41f9000000004c420001226f001420701c00101812c066fa241f4fef000c4e754fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf43c71af0025588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf36c71af0023588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf29c71af0022588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf1cc71af0021588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf0fc71af001e588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf02c71af001d588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffd4700c48d7043c282f0034242f0030262f0038b084670001aea541b2846700026c7a0dba84670001c8a940b084670001d8207946c82456a7411039100b14cf2a02d1fc0008ed80e98dc08173fc18b222457a1645e9183e2f4a00184c010800d1c071b0a800ba80670001b641f900000000428143e91832700d2f4800202f49001cb081650000907a0bba81657ea940b08167782f01247c100b14cf2f022f41001c4ebaf16ea745207946c82456d1fc0008ed801f520033222f001c2240246f002843e9ffc02f49002c71b21800508f45ef0027226f001cd3c0102f002bc0857bfc18b24c050800a745d1c0119298001039100b14cfc0857bfc18b24c0508002040d1fc100a4ece119298005281700db0816400ff747a10ba816600ff78207946c82456a7411039100b14cf7bfc18b2d1fc0008ed80226f00180683ffffffc0246f002075b24800c081222f00184c050800a745d1c070161180180073fc18b21039100b14cfc0857a164c010800a7412040d1fc100a4ece118598007bfc18b2226f001cd3c2207946c82456d1fc0008ed801039100b14cfc0814c050800d1c0118398001039100b14cfc0814c0508002040d1fc100a4ece118398004cd7043c4fef002c4e75a5672f024ebaf0462f42003842af003c720c4c013800d6802f4300404cef043c00084fef00346000f4042f4300382f4200304cd7043ca36f00344fef002c6000f3ec2f4300382f4200304cd7043ca56f00344fef002c6000f3d441f900000000a7412f48002043e918320683ffffffc0207946c82456d1fc0008ed802f49001c7bfc18b21039100b14cf246f0020226f001c75b24800d3c2c0814c050800d1c0118398001039100b14cfc0814c0508002040d1fc100a4ece118398004cd7043c4fef002c4e75227946c82456a7411039100b14cf2a02d3fc0008ed80eb8dc08173fc18b220457a1341e803e24c0108007209d3c071b18800c0fcaaabeaa8b28064027009c0fc000c20404870380042a72f024ebaf3184fef000c6000fd504e56ff6c48d73cfc1039100b14d0223946c824560681c00000000c8107efffff6200045caf41b2ae0008650004527380740fb4816500044848807dfc08b0223946c824562041282e00081639100b14cfc0fc8ed84c06480041e848d02244d3c01d43ffc32d49ffb44bf188004aae000c6700042c2040227c00008e55d1c14a30980067000406162d0028428245faeea07783ad47be826602af422f022f2e00084e92508fab41b282640004461d8028cc5282780cb88266daad672f2e00084e92508f2d40ffb84aae0010670a52807c7fcc802d46ffb8203946c8245620431239100b14cf53887e3fbe8865000392a742c2822640d7fc0008ed80202e000879fc18b2eb884c0418000680000003e2d7c1d7c04a2b00016d00036671ab00017c7fbc806500035a2f2effb82f0078132f03486effcd4879000000004ebae3544878000f2f2e00084e924878000e2f2e00082d40ffa44e92161373934fef0024204d2d40ffac3401200e0680ffffffd891c02d48ffc8226effc8204077832d4eff9cc4fcaaabe8aac5fc000c9282738196812d43ffa81231880010c1b1eeff9c66f4222effb82c3c9e3779b952814c016800223c85ebca6b7e1e2d41ffa0222effa442829eaeffac286effb4d9fc1001b24e43f900000000d281266effb4d7fc1001aa502d46ffbc45ed08312d47ffc441ed005052812d41ffb0af46cc822602e68b4be8ffe0a3442d4dff98af4d9bc3dbc02d4dff947395eca1c2844a116700042679a90001ab470684ffffffc04c4748042a2effa8da844a856d000430787fb8856c027a7f2a6eff9879857f95be8467102a6eff981a851745fffe4a116700029c182900037fa8ffe14be8ffe12d4dff987b84ba87670002d82a6eff981a841744ffff4a11660002c879a8ffe24be8ffe22d4dff980c84000000ff6700028850c4a3452a6eff98edad1a8416844a11670002782a6eff94181588852a6eff941a8418114a816600027c4a04670002aa4aaeffa4670003aa282effa07c0f222effbc2e3c2c1b3c6db9812801ecac7c0cb9814c0718002e2effb02801ecacb9814c471004220492aeffa4ef89028100001f804aaeffac670ca744c8824a84670482aeffc42801e08c2a4a7fa57d84bc8767041a8418847d927981b8866706148119410001428192832801d8802a442c05122d000f46869bcd9bc32e0d2a44de80c2861b41000f2a47122d0027c2861b4100271211670002024bf9000000001b8128003a7c00179bc3dbc01215c2861a81223c85ebca6b52825889548a548cd3aeffa047eb002041e80020263c00000000b3c36600fe46247c1001aa1d95c0d5eeffb4222effc820405381101875b018007780b48367081180180015808800b1eeff9c66e64aae0010660001c4102effc3a744a342207946c824562202d1fc000950481610c084e1a986811083263c46c7d2e41039100b145e828013c1100b145e207946c82456d1fc0009b332a350a379100f85984eb940027e002c2e00082806edaa41f9000000009688468243f0380010111218c082e9a980811280b1fc0000000066e8206e0008486800084eb94009da204cee3cfcff6c588fa3404e5e4e754cee3cfcff6c42804e5e4e7571fc8e53428245faea9c1630080077836000fbf643ed0018204d52884a28ffff66d2b1c966f441ed002043ed002852884a28ffff66beb1c966f441ed003043ed0830759052880c82000000ff66a6b1c966f02040227c00008e55d1c14a309800679e6000fb981d8028cd52826000fb9a79a8ffe14be8ffe12d4dff980c84000000ff6700fd7a50c42a6eff981a841744ffff4a116700fd68602aa345edad2a6eff942c05468618152a6eff94c8861a8418114a816700fd884a046600fd8842016000fdda182900027ba8ffe24be8ffe22d4dff987f84ba876600fd3c2a6eff94a345edad181588856000fd464be8ffe37395528d0c81000000ff6600009cbbc866ee42014bf9000000001b8128003a7c00172c0546869bc3dbc01215c2866000fde22f2effb8ad672f2e00084ebaf762a744a3424fef000c102effc3207946c824562202d1fc000950481610c084e1a986811083263c46c7d2e41039100b145e828013c1100b145e207946c82456d1fc0009b332a350a379100f85984eb940027e002c2e00082806edaa41f900000000968846826000fe2a72014bf9000000001b8128004a116600ff663a7c00179bc3dbc0121582856000fd4a2a6eff9879950c84000000ff6700fea850c52a6eff981a851745fffe4a116600fbfc6000fe9242052a6eff987f957985be846600fbd86000fbe442816000fc8e1039100b14cca367a36771802f004ebaf96c4fef000c4a806716203c00000000487800202f004eb94005a2b8508f4e75203c00000000487800202f004eb94005a2b8508f4e754feffff02f02226f001cab421239100b14cc202f00182f6f0020000cb48965244a806708a340c0af00245280ad424c020800740f2040d1fc0000000071b09800b4806408241f4fef00104e7573812f4100102f002f012f40000c4ebae8082240d0af0014508f206f00044a806d5a223c0000000073b01800b0816c022200b28967c22f012f082f2f00182f4800102f4900144ebaf5bc42a7a3672f2f00244ebaf8964fef0018206f00044a8066962f6f000800202f48001c2f6f00100018241f4fef00106000f58a428160b24feffff048d7041c207946c82456a742262f00142203eb8979fc18b2d1fc0008ed801039100b14cf224143e903e2c0824c040800d1c075b09800204348680001ad672f034ebaf53e4fef000c7077b08265482202780c4c44100045faeb1c94802f0242a72f034e924fef000ca742487800402f022f034e9252824fef000cad40b08266ea42a742a72f034ebaf7de4cef041c000c4fef001c4e75746c2f0242a72f0345faead4a7424e924fef000c60be4aaf000866024e756000ff46202f0004727f5280c0814e752f032f02206f0010a942226f000c102800037380b481640270041210e988760f7581b6826402720f808112801028000a6702700112280001eb8876107581b682640272108081740c13400001102800067380b4816402700c12280002e988760b7581b6826402720b8081747e13400002102800047380b4816402707e13400003102800056a02707f134000047618102800077380b6816402701813400005743f102800087380b4816402703f134000067640102800097380b68164027040727fc2af00141340000713410008241f261f4e754fefffd848d75c1c2f2f00342f2f003449ef00272f0c4ebaff16362f003a9dce4fef000cc6fc001e141ca540b08e64000086267c100b14cfa7441013227946c82456d3fc0008ed80121345ee01e9528ed5c3c084c28479fc18b24c0408004c0418002040d1fc100a4ece7009d3c11382a8001182a800b08e66ae1013227946c82456a7421213d3fc0008ed80c082c2824c0408004c04180078022040d1fc100a4eced3c11384383e1184383e4cd75c1c4fef00284e75267c100b14cfa7441013227946c82456d3fc0008ed80121345ee003f528ed5c3c084c28479fc18b24c0408004c0418002040d1fc100a4ece7009d3c11382a8001182a800b08e6600ff2a6000ff782f02720f206f0010a942226f00081010c08112807190e8881200b4806402720413410003721f741010280001c0811200b4806402721013410001a341740f71a80001ea88c0811340000a10280002c082740b1200b4806402720b13410002740c71a80002e8881200b4806402720c13410006747e102800037380b4816402707e13400004102800046a02707f134000057418102800057380b4816402701813400007743f102800067380b4816402703f134000087440102800077380b4816402704013400009727f10280008206f000c241fc28020814e75598f2f0a2f02202f0010222f0014206f00184a80672c4a81672845e8ffff743fb48a651e747fb4af001c65162f4800182f4100142f400010241f245f588f6000d944241f4280245f588f4e75222f00044a81675a71fc0919b0af000864502001204106800000004052884a28ffff663eb08866f42041200141e8004806800000005052884a28ffff6624b08866f4204106810000085941e80059719052880c80000000ff6608b28866f0a3404e7542804e754fefffd848d73cfc262f002c4a8367000168202f00300c80000009196300015a4aaf003467000152206f0034723f18280100200453807180b2806500013c4aaf003866122f2f00302f034ebaff4e508f4a806700011a7984246f00344281204a1010a3457580ba826500010eb284650001144a0066000102528158887040b08166de264322432843428547eb005943e9007949ec089aaf41c2852805e68caf48a34291c4d1c37190e2a0c0824a1267000132142a000116824a1267000120142a00021742000d4a126700010c142a00031742000fa342e3aa12104a12670000ee828210814a8066044a12673e420042143a7c000f42819284d2839bc4307c004f194000012002468091c41e353800ce801b8738002a411e2d001fce801b47001f12303800c08111803800204b4281101846804a0056c0710044808280b1c966ee307c001791c4d1c310104a1266784a816774848010825285588a47eb0020548c43e900207040b0856600ff2ca3404cd73cfc4fef00284e754cd73cfc42804fef00284e754a006700fef0102800017a787580598071805982ba8065dcab454c4528004a8066d275a800027a7eba8265be4a2800036db8528158887040b0816600fea06000febe4682c48060882e024687c2876000ff0e50c26000fef650c26000fee250c26000fed02f02202f000caf41206f0008b280651c73b00822a342b4816512721e74534c01080041f0083c7190b4806706241f42804e7571a800017232b28066f071a8000253804a80671410280002a541241fb3804a0057c0710044804e75241fa3404e754fefffc4203946c824560680c000000048d7440c0c8007efffff630c42804cd7440c4fef003c4e75207946c82456a7411039100b14cf75fc18b22f2f0040d1fc0008ed80c0814c020800487008004ebaff50508f4a8067c61039100b14d0720f77802f430020b28365b24880243946c8245641f90000000032002f4200241639100b14cf302f0042c2fc8ed81f43002fc0fc091ad081d4802c429dc82f40001c1030e80010c0b1fc0000000066f24aaf00446700024c71fc8e55206f0024d1c14a300800670002621039000000007180743f22005381b4816500ff422f2f004041ef00352f4000144ebadda0588f223946c8245606810008ed801639100b14cf342f0042202f00103243c4fc001e2042a74241e801f12609c68275fc18b24c023800d28312301800767fc6812f4300284aaf0048670c2203747f5281c4812f420028223946c8245606810008ed801639100b14cf342f00423243c4fc00182042a74241e801232609c68275fc18b24c023800d283767f73b01800b6816500fe9e2f2f00282f012f00486f003d4879000000004ebad4f62f2f00584879000000004878091a4879000000004ebafc0c4fef00244a806700fe68226f0024b3f946c824566600fe5873b9100b14d0b2af00206600fe4a73af002f75b9100b14cfb4816600fe3a226f001c93fc0000000041f9000000002f49002045f0e800121875922f4a00147781b682670e1481226f002045e8ffff13928800b1fc0000000066d82f2f0028486f00352f2f00482f40001c4ebaf8f8a742a34e260e122f003b227946c82456d3fc00095048c2822f410038242f003812114fef000ce5ab828312811239100b145e8283260e13c1100b145e207946c82456d1fc0009b332a350a379100f85984eb940027e002c7c46c7d48c222f0040202f001043f900000000e3ab2f43001846831f43001741e9ffe0528873a8ffff0c81000000ff6678b1c966ee91c81216162f0017240843e90020c28382821cc1bdfc46c7d4cc66ce2f2f00402f4000144eb94009da20588fa37946c7c72c4cd7440c202f00104fef003c4e754878091a4879000000002f4100184ebafa42508f222f00104a806600fd9a4cd7440c4fef003c4e7571fc8e53103008006000fd9c142f001b304260864e56ffe041eeffea2f0a2f0273b9100b14cc2f012d41ffe04ebadb34322effe2588f207946c82456d1fc0008ed803d6efff2fffd1d6efff4ffff2d6effeefff92d6effeafff5c2fc001e1039100b14cf2241a74143e901f1c08173fc18b24c010800d1c012309800707fc280ab407581b0ae0008657a43eeffead3ee0008206e000c7391d1c14a886d000082246e0008203c0000000071b20800b1c06c022008b0816740128020022f00486effea2f2effe041faf73a2d48ffe44e9042a7a3672f2effe04ebafbfe4fef0018206effe44a806744a1674eb94004d948a37946c7c72c588f242effd8246effdc4e5e4e75ad40b0ae00086742222e0008206e000c43f618e97391d1c14a886c804a8167d442001280200260902f02486efff52f2effe04e904fef000ca1674eb94004d948a37946c7c72c588f60aa202e000cd0824a806d3c727fb2806c02707fb08267942f00486effea2f2effe041faf6922d48ffe44e9042a7a3672f2effe04ebafb564fef0018206effe44a806600ff5860984a016700ff6042802f00486effea2f2effe041faf65a2d48ffe44e9042a7a3672f2effe04ebafb1e4fef0018206effe44a806600ff206000ff60203946c824560680c00000002f020c8007efffff62084a398000001567064280241f4e751239100b14cc207946c82456a7421039100b14cfd1fc0008ed807381c0822f0173fc18b24c010800487008004ebafa58508f4a8067c42039000000004a8066ba4a3946c7d8d866b44ab9460d173a66ac4ab9460d169457c0241f710044804e754fefff78428148d75cfc242f008c284245ef00289dce28024283264a06840000003c49ec002271b41800a346bc80650c41f648007e537190be80674252814dee001e47eb000cbdfc000000f066d82f02206f009442854e90588f91c80b0366000086528541e8001e45ea000cb1fc000000f066e84cd75cfc4fef00884e7571a800017c32bc8066b471a8000253804a80670a71a8000255804a8066a0a340e3a891c8868043f6883cab47be88642c2c08ad474c47600043f60800700c43e901ecd3c21791880042115288b0886700ff6e43f6883cab47be8865d4d3c2179188004211528860be428147f02800ab44b881651449f21800ab442242d3c11194983c5281b88164ec2c01ad474c47600449f21800528143f34800780c135401ecb88166ca528541e8001e45ea000cb1fc000000f06600ff286000ff3c487a256e2f2f00084ebafebc508f4e75203946c824560680c00000002f020c8007efffff62084a39800000156706241f42804e751239100b14cc207946c82456a7421039100b14cfd1fc0008ed807381c0822f0173fc18b24c010800487008004ebaf88a508f241f4e75203900000000b0b946c82456670442804e751039100b14cfa741c081b0b90000000066ea71b9100b14ccb0b90000000066dc6000ff724fefffec70312f0a2f02226f0020a342206f0024b08956c173014481b4886700008ea340e3a82439000000002f420014c4804a82665e4a886632a340244174fd45f21a00d08a45f90000000020320c0022005381b48165322f4900202f480024241f2240245f4fef00144ed12441a54045f21a0074fdd08a45f90000000020320c0022005381b48164ce241f245f4fef00144e754a8866f24680c0af0014241f245f23c0000000004fef00144e752f4100102f4800082f49000c4ebafeb4222f0010206f0008226f000c4a806700008a103946100b1d08000005667c703eb089677c7431b48966702f4100102f4800082f49000c4ebafcac222f0010206f0008226f000c4a806750a34081b9000000001039100b14cca367a36771802f004ebaf78c4fef000c4a80677048780020203c000000002f004eb94005a2b8a1674eb94004d948a37946c7c72c4fef000c241f245f4fef00144e7542806000fee04a3946c7d8d866f24ab90000000057c0a54183b900000000a1677100448023c0000000004eb94004d948588f241fa37946c7c72c245f4fef00144e7548780020203c000000002f004eb94005a2b8a1674eb94004d948a37946c7c72c4fef000c608e203900000000b0b946c8245667024e751039100b14cfa741c081b0b90000000066ec71b9100b14ccb0b90000000066de4ebafd7e4a8067d6a37900000000a379000000004eba224ca1674eb94004d948a37946c7c72c588f4e75203900000000b0b946c8245667024e751039100b14cfa741c081b0b90000000066ec71b9100b14ccb0b90000000066de4ebafd244a8067d642b900000000a379000000004eba21f2a1674eb94004d948a37946c7c72c588f4e75203946c824560680c00000002f020c8007efffff6232203946c82456a7421239100b14cf06800008ed80206f000c41e8ffdec28275fc18b24c021800af42d08122089280b4816408202f0008241f4e75a342b4af000865f02f012f004ebaf57a508f4a8067e2ab6f0008202f0008241f4e752f032f024ab90000000067084ebafcd64a806672203946c824560680c00000000c8007efffff6236223946c82456a7431039100b14cf06810008ed803040202f00100680ffffffde2408c48377fc18b24c032800d2829081af42b480640a202f000c241f261f4e75a343b6af000c65ee2f002f014ebaf4f0508f4a8067e0241fab40261f4e75203946c82456a7421239100b14cf77fc18b220790000000006800008ed8041e80022c2824c031800d081d088b0af00106600ff5c241f203900000000261f4e754fefffc4203946c824560680c000000048d74c0c0c8007efffff62000166af40b0af00446500015c223946c82456206f004091c12c48ddfcfff712802f41002473fc18b2200e4c41000220424a8266000132bdfc000062c762000128222f0044a342246f004043f218227391b48164000178a36f0020222f0044701e4c0018004aaf004866624ab900000000670001062f4100142f4800184ebafb84222f0014206f00184a80670000ec203946c8245606800008ed801439100b14cf3242a7422609c68275fc18b24c023800d083b0af0040660000c0262f0044b6b900000000660000b2a56f00482f2f00442f2f00442f41001c2f4800204ebaf3a6508f222f0014206f00184a80670000e8226f0040203c1001614e90af002441f1183c43f118422209227c100162fe93ef00241190080045e801b0139288005288b28866eea340b0af0048662c73fc18b2200e207c46c8245623d000000000a379000000004c410000222f004423c10000000023c0000000004cd74c0c202f00204fef003c4e754cd74c0ca36f0020202f00204fef003c4e752f2f00442f2f00442f41001c4ebaf2fe508f222f00144a806700ff5e4203206f0040203c1001614e226f004090af00241183183e1183183d1183183c41f1183c43f118422209227c100162fe93ef00246000ff4877912f4300206000fe86226f0044743248690001487900000000200f06800000003b2f002f4000282f410020246f004c2f48002445f2183c2f4a00344ebaed3214bc0053226f004c222f0020244145ea003f1382183d74021382183e224143e901e9202f00284fef000c2f490028206f00182f4a002c226f0028a542d3c8b488641826405288246f0040740915939800b4886700fe90528060dc246f00402640226f002cd3c85288159b9800200b60c6518f2039460e5e302f0b2f0a4a80671047f900000000b7f9460e5e2c670a4280245f265f508f4e75204041e800242f48000c2f082f40000c4eb94003567c226f000c588f4280246900282f1ba16745eaffe92f0aab672f2f001c2f3c400ba8762f4000204eb940012bd84fef0018202f0008b0b9460e5e4067165f8aa341b2806640245fa37946c7c72c265f508f4e75226f000c2051a167486a00054868fffb486affffa7672f092f4000204eb9400122544fef00185f8aa341202f0008b28067c02f1ba1672f0aab67a3402f2f001c2f3c400ba8762f4000204eb940012bd84fef0018202f0008b0b9460e5e40668a609e4ebaf8384a80670001004ab9460e5e30660000f64ab9460e70e0660000ec207c46c82456a74123d0000000001039100b14cfc28023c10000000071b9100b14cca567ad672f3c460e5e3823c00000000042b90000000042b9000000004eb94007ec604fef000c207946c82456a7411039100b14cf227900000000d1fc0008ed80c08173fc18b24c010800d1c071b098222f002f3c460e5e384eb94007edb041f90000000023c8460e5e28203c0000000023c0460e5e2c42b9460e5e342f3c4006d754a36742a7a167487800404878006e4eb94005829c4fef002023c0460e5e304a80672442a74879000000002f004eb9400570b82f3c400ce0c44eb9400314944fef00106000fe084e754ab9460e5e30670e203c00000000b0b9460e5e2c67024e754eb94006d75442b9000000004eba1bec4ef94007893c598f4ab9460e5e30670e203c00000000b0b9460e5e2c6704588f4e754ebaf73e4a8067f42239460e5e40a340b08165e82e814eb94006d7544ebaf7224a8067d823d700000000a379000000004eba1b96a1674eb94004d948a37946c7c72c588f588f4e754feffff4222f0010206f00144ab9460e70e0677e4ab90000000066122f4800142f4100104fef000c4ef94007893c2f4100042e884ebaf6c2222f000420574a8067da4ab9460e70e067d22039000000002f4000084eb9400789e442b9000000004ebafe024ab9460e5e306726203c00000000b0b9460e5e2c66182f2f00082f3c460e5e384eb94007edb04fef00146000fce24fef000c4e75518f222f000c206f00104ab9460e70e067124ab9460e739a660aab40b0b9460e738e67102f4800102f41000c508f4ef94007909c2f4100042e884ebaf5ca222f000420574a8067dc4eb9400789e4508f6000fd7a598f4eb940031f282e804ebaf5a64a80672c4ab90000000066244a3946c7d8d8661c4ab9460d173a66144ab9460d1694660c2f174ebacaa02f400004588f2017588f4e75598f2f02203946c824560680c0000000222f000c0c8007efffff62084a39800000156708241f2001588f4e751039100b14cc207946c82456d1fc0008ed8075801039100b14cf2242a7422f09c08275fc18b24c020800487008002f41000c4ebaedea508f222f00044a8067b84ab90000000066b02f41000c241f588f6000ca144feffff4ab402f02222f0014206f0018b0816408241f4fef000c4e75203946c824560680c00000000c8007efffff62e44a398000001566dc1439100b14cc227946c82456d3fc0008ed801039100b14cf75822f42000ca742c08275fc18b22f2f000c4c020800487108002f4100102f48000c4ebaed56508f222f00084a8067944ab900000000668c4a3946c7d8d866844ab9460d173a6600ff7c4ab9460d16946600ff724ab9000000006600ff682f6f000400182f410014241f4fef000c6000f0a62f02ab40b0af00086406241f42804e75203946c824560680c00000000c8007efffff62e64a398000001566de1239100b14cc207946c82456a7421039100b14cfd1fc0008ed807381c0822f0173fc18b24c010800487008004ebaecae508f4a8067a84ab90000000066a02f2f000c206f000c486800064ebaf02c508f241fa3404e754e56fff0223c000000002f02243c0000000020394004e1ec2d41fff0b4b900000000670c202e0008242effec4e5e4e754ab98000001267ec207c46c8245622100681c00000000c8107efffff62d6227c100b14ccaf427391b48165c812112050d1fc0008ed800c800000000057c075811239100b14cf71002242a7422f094480c28275fc18b24c021800487018002f00486efff04ebad2064fef00104a8067842240206900144a886700ff7a2239000000002039460d1684b1fc00000000661e2f012f002f2e00084e904fef000c242effec2d400008202e00084e5e4e752f012f002f2e00084e904fef000c242effec2d400008202e00084e5e4e7522794004e1ec2039800000122f024a806770203946c824560680c00000000c8007efffff625a207c100b14ccaf417190b280654c1010207946c82456a7421239100b14cfd1fc0008ed807180c28275fc18b2068000000c114c021800744dd1c141f00a00102800017390b4816612b3fc00000000660a71807256b280670810104280241f4e75a342b5b900000000a1674eb94004d948588f241fa37946c7c72ca3404e75af40b0af0004650e203c00000000b0b94004e1ec67024e754ab9400bc6c066f642af00044ef9400322284feffff42f0a4eba17c620394004e1ec2079400bc6c00c800000000066044a886608245f4fef000c4e754ab98000001267f0203946c824560680c00000000c8007efffff62dc71b9100b14ccaf41b28065d02268002841e800242f49000c42a72f48000c4869fff648780032a567a7672f084eb940012254487900000000a167246f002c45eaffec2f0aab672f2f00302f3c400ba8764eb940012bd84fef00302039000000004a806734246f000c45eaffe4487900000000a1672f0aab672f2f00182f3c400ba8764eb940012bd84fef0018203900000000a341b280662aa167486a000648780032486affffa767518a2f2f001c2f40001c4eb9400122544fef00184aaf000467aa245fa37946c7c72c4fef000c4e754e56ffb0703348d7040c226e000cb0ae0008670001a67220b2ae0008670002247431b4ae0008670002227632b6ae00086700022022394004e1eca34041f9000000002d48fff0b089662a0c810000000057c020790000000074102d42ffc671004480b1fc000000006720b1fc000000006700008a2f092f2e00084ebabfa0508f4cee040cffb04e5e4e750c810000000066d84ab98000001267d0223946c824560681c00000000c8107efffff62bc73b9100b14ccaf43b68165b07231b2ae00086700025c7233b2ae0008670002147420b4ae00086694262effc687b900000000b0b9000000006306a379000000004ebafdfa4cee040cffb04e5e4e754ab9800000126700ff70207c46c8245622100681c00000000c8107efffff6200ff58247c100b14ccaf427392b4816500ff481d52ffca2050a742d1fc0008ed801239100b14cf77aeffca2f0377fc18b2c2824c031800487018002f00486efff02d49ffc24ebace5a4fef0010226effc24a806700ff047231b2ae0008670000e27032b0ae00086600fef04ab9000000006700fee6222effc6a16742b90000000083b9000000004eb94004d9484cee040cffb0a37946c7c72c588f4e5e4e75a36effc6a340b0896730203900000000222effc6c2804a81665020394004e1ec223c000000002f092f2e00082d41fff04ebabe30508f6000fe8e22394004e1ec243c000000002079000000002d42fff00c810000000057c071004480b1fc000000006600fe4c6000fe684a896600fe58222effc64681c2804cee040cffb023c1000000004e5e4e75a56effc66000ff76a96effc66000ff6e76082d43ffc66000ff642440206a001c4a886700fe0e222effc683b9000000002039460d1684b1fc00000000660000861039100b14cca367a36771802f004ebad96e4fef000c4a80672e48780020203c000000002f004eb94005a2b8508fa1674eb94004d948a37946c7c72c588f4cee040cffb04e5e4e7548780020203c000000002f004eb94005a2b8508f60d0222effc620390000000083b9000000004a806700fdfa538023c0000000004ebafbea6000fdee2f004e90588fa1674eb94004d948a37946c7c72c588f60a2a367487800312d40ffc24ebabcf2508f24390000000073b9100b14cc202effc22d42ffc64a8267000362b08265000364206efff02d48ffbe4a886700045c242800082d42ffc6224143e90c112409d482207946c82456d1fc0008ed801639100b14cf2d42ffcea742c68275fc18b24c023800d1c3d1eeffce1628000175901d43ffca764db682660002b84a80670002b271aeffca226efff0b0a90008670003ba10104aaeffbe670002a02041d1fc8000666e101075b9800000027180b480670002de34012601203c00000000eb8b41f9000000002d48ffe042aeffdcc4fc004422430483000000002d43ffec2042243cb93897029489d1fc46c76dec2d42ffe8227946c82456247c100b14cf1d52ffcda7432440d3fc0008ed801d5affdb142effcd200a246effecd5c02d4affd6c48377fc18b24c032800d3c2142effdb1382a800247c100b14cf16123243a7432409c48377fc18b24c032800262effd62242d3fc100a4ece142effdb13823800a743227946c82456d3fc0008ed801d52ffd9246effe02d49ffe452aeffe01d5affca142effd9246effe8d5c82d4affd2c48377fc18b24c0328002242142effcad3eeffe41382a8001639100b14cf3243a7432409c48377fc18b24c032800262effd22242d3fc100a4ece142effca138238004aaeffdc6706116effdbffe010eeffca0c80000000006600ff082001e988224006800000184243e918322d40ffca207946c82456a7431039100b14cf75fc18b2d1fc0008ed80c08342034c020800a742d1c01183980077fc18b21039100b14cfc0824c0308002040d1fc100a4ece4200118098005289b3eeffca66b24aaeffbe6700019c207946c82456a7421039100b14cf327c004d77fc18b2d1fc0008ed80d1eeffcec08234094c030800a7431182080075fc18b2206effce1039100b14cfc08336094c020800d1c0d1fc100a4ece10834aaeffbe670000c6207946c82456a7421039100b14cf2601d1fc000905a3d68343eeffc9247c100a66f1c08275fc18b2d1c3d5c377fc18b24c020800a742119108001039100b14cfc0824c030800159108002d41ffc24ebab9a8222effc24aaeffbe6700faba226effbe206900104a886700faacb1fc000000006600015a2f014ebadd44588f4ebaf8926000fa964aaeffbe6600fd64207946c82456a7421039100b14cf77fc18b2d1fc0008ed80d1eeffcec082744d4c03080071b00800b4806700fd364ebaf8546000fa5871fc00ff2d40ffc66000ff3242aeffbe6000fcb642aeffbe42aeffc66000fcaa2041d1fc80006676101016398000000330432601eb8b2408b580340141f9000000002d48ffe022430483000000002d43ffec4a0057c0c4fc00442042243cb938970294897100d1fc46c76dec2d42ffe844802d40ffdc203c000000006000fd04207946c82456a7421039100b14cf327cffff77fc18b2d1fc0008ed80d1eeffcec08234094c030800a7431182080075fc18b2206effce1039100b14cfc08336094c020800d1c0d1fc100a4ece10834aaeffbe6600fe686000ff28b3eeffbe6700f972206900104a886700fc42b1fc000000006700fc3842a72f012d41ffc24e90508f222effc26000fc24a3672f014e90508f4ebaf73a6000f93e42aeffc66000fba84e56fff0223c000000002f0220394004e1ecab422d41fff0b4ae0008650e43f900000000b3f9000000006708242effec4e5e4e754ab98000001267f0207c46c8245622100681c00000000c8107efffff62da227c100b14ccaf427391b48165cc12112050d1fc0008ed800c800000000057c075811239100b14cf71002242a7422f094480c28275fc18b24c021800487018002f00486efff04ebac7644fef00104a8067882240206900184a886700ff7e2239000000002039460d1684b1fc00000000662a2f012f2e000c2f2e00082f004e904fef0010a1674eb94004d948a37946c7c72c588f242effec4e5e4e752f012f2e000c2f2e00082f004e904fef0010a1674eb94004d948a37946c7c72c588f60d44e56ffd4227c46c8245648d71c0c24794004e1ec203c00000000761c26512d40fff0b5fc0000000057c01239800000037100448030412239000000002408e7aab580240bb580b5fc00000000660002940a8000000000b2806700008223c00000000020110680c00000000c8007efffff626a2851a74375fc18b21039100b14cfd9fc0008ed80347c03f0267c46c76dce223c80006676c0834c020800d9c041ec18232d48ffe8206effe82248764d101075a1b68266107180206efff0b0a800086700019c101154aeffe8528147eb004445ea00200c818000667e66ca4ab98000001267000208207c46c8245620100680c00000000c8007efffff620001f073b9100b14cc2010af421639100b14cf3043b481650001f42608a742c68275fc18b206800008ed804c023800204345f008004ab9400bc6c0660002ca2f012f0aa367486efff02d41ffec42b9000000004ebac59c4fef0010222effecb2b9000000006700035c42b90000000023c1000000004a80670001b045f900000000267900000000b7ca660002224a93670000c84ab900000000660000beb7fc0000000057c02f0b2200448128414eb94003146c42b9000000002079460d165c588fb7fc00000000670001c24a88670001944a906600018e41f9000000002d48ffe845f900000000206effe852aeffe8719891c8c0fc00182240d3fc46c7d8de203188000c80000000006704258088005888700cb08866e845ea000cb5fc0000000066c442932f0b4eb940031494b7fc0000000057c023cb00000000588f4480340c71807382b2806710a1674eb94004d948a37946c7c72c588f4cee1c0cffd44e5e4e754a34a8006700fe62207946c82456a7421039100b14cf77fc18b2d1fc0008ed80c0824c030800d1c042001180a8001039100b14cfc08242024c0308002040d1fc100a4ece1182a80020411028fff875b9800000027180b480670000ac2d41ffec4ebab440222effec528154aeffe847eb004445ea00200c818000667e6600fdca6000fdfcb280670623c0000000004ab900000000670000f873b9100b14cc203946c824561039100b14cf42b900000000b2b9000000006700012e42b90000000023c1000000002039000000004a806700ff264ab9000000006600ff1c0c800000000057c12f00240144824eb94003146c42b9000000002079460d165c2842588f42006000fed8101075b9800000037180b4806600ff4842132d41ffec4ebab384222effec6000ff424ab9400bc6a466d041f90000000047f9000000002d48ffe845f9000000006000fe3c4ab9000000006600fea44a8b660001402079460d165cb5fc00000000670000e64a886700fe884a906600fe8299cc264a41f9000000002d48ffe845f9000000006000fdf84cee1c0cffd442b90000000042b9000000004e5e4e752679000000004a8b67602f012f0aa367486efff02d41ffec4ebac2d04fef0010222effecb2b900000000672042b90000000023c10000000045f9000000006000fd3a42b9000000006000fed84a80670aa543b6b9460d168467de42b90000000045f9000000006000fd122041744d41e80c1143f28a00a37900000000102900017791b483660e7180206efff0b0a80008674a10112d41ffec23cb000000004ebaf178222effec6000ff624ab9400bc6a46600fda099cc264a6000ff1c4a806782a540b0b9460d16846700fcaa42b90000000045f9000000006000fca0a34b2d41ffec23cb000000004ebaf12e222effec6000ff18b7fc0000000057c02f0b260044834eb94003146c42b9000000002079460d165c2843588fb5fc000000006700fe64264a4a8a6600fc9c42006000fd0a4fefffc048d74c7c4ebafac44ab90000000067104ab9460e70e06600047042b9000000004ab900000000660002c6203946c824560680c00000000c8007efffff63000108a3412039800065b8b2806700040e23c000000000263946c82456428273b9100b14cf2f41002879b9100b14cc247900000000203900000000b6b900000000670002944a8a6700035e4a80660003bc2a2f002842b90000000023c30000000023c50000000023c4000000002079460d165c4a82670000884a88670000824a90667c223c00000000207c46c7dd7643f9000000002010b0816704238088005888b1fc46c7dd8266ec207c46c7deae43f9000000002010b0816704238088005888b1fc46c7deba66ec4ebadfee23c0000000004a806700039241f90000000042902f084eb940031494a167a379000000004eb94004d948a37946c7c72c508f4cd74c7c4fef00404e75247946c82456a7451039100b14cf7dfc18b2d5fc0008ed809dce428247fada3cc0854c060800d5c02f0e2f0a4e93508f4a806708a340220ee3a88480528e7a08ba8e66e42039800065b8a345ba80670001ea23c000000000263946c824561a39100b14cf1f45002f7d8579b9100b14cc2f4600283c7c01f1428047eafe4d0102670a73b3e800a345ba81675452804dee001e7208b28066e6af45ba84650001f64a324822660001ee203c400d301c23c0400d5f4c4a826700fe6e4ab98000001257c224790000000020390000000075024482b6b9000000006600fe62600000f02f0041ef00392f4000242f4100284ebab854207946c82456d1fc0008ed801a39100b14cf3245a7452c09cc857bfc18b24c056800d1c61c30e80030467c7f2a08ca86a7462e85486f0039202f00282f002f40002c4ebad4ae1a2f003b227946c82456d3fc00095048ca862f45003c1a11222f00302c2f003c4fef000ceda930452a088a8112851c39100b145e30462a08828513c1100b145e207946c82456d1fc0009b332a350a379100f85984eb940027e004dee001e202f002072085280b2806600fedc6000fef24ebae02e4a80670001a64ab9460e5e306600fd2a4ab9460e70e06600fd204ebae77c6000fd182c2f0028bcb9000000006600fd62b8b9000000006600fd584a8a670001a04a806700fd7447f9000000004a82670a4ab900000000670001a24ab9000000006600fde82f0b4eb94003146c42b90000000023c30000000023c40000000043ef002c588f23d1000000006000fd2cbab9000000006700fe104a826700017297cb4dfad86c42a77c0842a72f0b4e96528b4fef000cbc8b66eca37900000000263946c824561039100b14cf3c7c01f147eafe4d1f40002f7380428079b9100b14cc2f4100286000fdec203c400d31ae6000fe124a806740203c000000004ab9000000006600fd462f004eb94003146c42b90000000042b90000000023c30000000041ef002c588f23c40000000023d0000000006000fc84222f002842b90000000023c30000000023c10000000023c4000000006000fc64203c000000004ab9000000006600fce6609ea346bcb9000000006700fbf0a37900000000263946c82456428273b9100b14cf2f41002879b9100b14cc6000fbe64ebade944a806600fb9042b9000000006000fb8642b9000000006000fb8641f90000000042902f084eb940031494a167a379000000004eb94004d948a37946c7c72c508f6000fc6e4a806700fbd647f9000000004a826700fe6c4ab9000000006600fe624ebadc08b5c06600fe584cd74c7c4fef00404e75a37900000000263946c824561a39100b14cf1f45002f7d8579b9100b14cc2f4600286000fc96202f00040c800000000567044efa038c41fa023020084e75400b3eac400b3e98400b7c67400b5413400b7a63000000004fefffec48ef030200082e802f4800044ebae0604cef030200084fef00144e754fefffe048ef0307000c2409d48006820008ed802e822f41000474000c8400000005660274012f4200084ebae15e0c8400000005660228004cef0307000c4fef00204efa031248794005a61c600648794005a8562239460d5c304fefffe048ef030d000c2609d68006830008ed802e832f42000476000c8100000005660276012f43000826014ebae1020c83000000056702200322004cef030d000c4fef00204e7516102f0071036100ff362600201f79034879400bb7044ef9400585e67110610000582f004879460e73864ef940078890610000124ef94003d722610000084ef94004c3746100fef841fafedc22300c004e7571104fef00186100fee44ef94003c986711061000012b48066064ef9400786ce4ef9400786fc4fefffec48ef030200082e802f4800044ebadf984cef030200084fef00144e752f082f01207946c8245673b9100b14cfc2fc18b2d1c173b9100b14ccd1fc0008eda271b01800221f205f4e750c820000000566344fefffe448ef0303000c2e8b2f4300044ebae7a22f4000084cef0303000c4aaf00084fef001c67064ef94003a6246100ff9c24004efa01be0c8600000005662a4fefffec48ef030300042eaf005c4ebae6222f40005c4cef030300044fef00142f006100ff682c00201f4efa01964eb94005213c4eb94007e9404ebaf89c4ef940052228564543544f5200004878ffff4878ffff4ebae5984ef94004e4d04feffff048d703034ebadb384a80670c4cd703034fef00104efae2ee4cd703034fef00102f0a4ab9460e70e04ef9400791ec4feffff048d703034ebae1da4a80670a4cd703034fef00104e754cd703034fef00104fefffe848d73c0c4ef94006d78c7c010c800000000566224feffff048d703034ebadacc4a80670a4cd703034fef0010600c4cd703034fef0010bc8065064ef940077b624ef940077b704efada924fefffa048d77cfc4ef9400023204eb9400339704a80671e4feffff048d703032f024ebae872588f4cd703034fef00104ef940083b7e4ef940083b062f2e00084878ffff4eb940031ee04feffff448d703022f004ebae6a0588f4cd703024fef000c4ef94004e1f44feffff048d703034ebae7804a804cd703034fef0010660c2279400cfeda4ef9400322ec4e7500000000000000004ef9400365500000000000004ef9400334de0000000000004ef94007982200000000000000004ef94003a53600000000000000004ef94003cda000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffff0000000000000000000000000000000000000000ffffffffffffffff31000000000000000000000000000000000000000000000000003e00000000000000000000000000000000000000000000000000ff00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000002000000000000000000000000000000000000000000030000000000000000000000000000000000000000000400000000000000000000000000000000000000000005000000000000000000000000000000000000000000ff0000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffff0000000000000000000000000000000000000000ffffffffffffffff330000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000003100000000000000000000000000000000000000000000000000ff0000000000000000000000000000000000000000000000000031000000000000000000000000000000000000000000000000003200000000000000000000000000000000000000000000000000ff00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000002000000000000000000000000000000000000000000030000000000000000000000000000000000000000000400000000000000000000000000000000000000000005000000000000000000000000000000000000000000ff000000000000000000000000000000000000000000564543004f464600465744000052455600564543544f522047454e455241544544004e4f204348414e474500ab204d414348494e453a564543544f5220bb00564543544f52004300432300440044230045004600462300470047230041004123004200545950450044454e5300524f4f54005343414c00474154450041434e540053454544005350414e004f46535400524f540052505400444952004f43540056454c0050524f420048554d4e00303031205354415449430030303220464c455800434852004d494e004d414a00444f520050454e540000000000000000000000000000000000000000000000000000564543544f5220535243000000564543544f5220414d50203100564543544f5220414d502032000b0b00010030010c0c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000033203132000007000000400000050006000000020000000000000056000000010000000000000000000000000000000000000000000102030c060d050407080a090b0e0f1010000102030405060708090a0b00000d0e0f100b047e7f7f0c183f4001097f1517000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000fff05ad0ab506ad04a900000000000000000000000000000000000000000f100b047e7f7f0c183f40010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b0b000120300c0c00000000000000000000000000000000000000000000000100000000000000000400fff10000000000000000000000000300000100000000000000000000000003000003000000000000000000000000030000050000000a000000000000004c02000001000000130000004c00000074020000010000001e00000054000000000000000300000027000000c00000055e020000010000003e0000016a0000000a01000007000000450000061e0000013e0200000100000054000000b0000000040100000300000063000000ac000000040100000300000073000000b400000192010000030000007c000000800000003001000007000000860000117000000048020000010000009700001120000000500200000100000000000000000000000003000006000000a80000075c0000016402000001000000b90000008c0000000000000003000000c3000000900000000401000003000000d3000000180000002701000007000000dc000000000000001801000007000000e60000011e0000004401000007000000f1000000ec00000012010000070000028c000008c00000029e02000001000000fd00000b5e00000132020000010000010a0000010e0000001001000007000001130000003f00000010010000070000011b000000fe00000010010000070000012500000c90000001fa02000001000001310000005000000030010000070000013900000e8a0000001e020000010000014700000ea80000001e020000010000015500000ec60000001e020000010000016300000ee40000001e020000010000017100000f020000001e020000010000017f00000f200000001e020000010000018d00000f3e000000ae020000010000019800000fec0000007402000001000001a500001060000000c002000001000001c2000011b8000001dc02000001000001d1000000500000003001000007000001d9000013940000000a02000001000001e30000139e0000000a02000001000001ec000013a80000000802000001000001f5000013b00000003e0200000100000168000013ee0000003e020000010000015a0000142c0000003e02000001000001ff0000146a000000d002000001000002080000153a000000d002000001000001840000160a000000d00200000100000176000016da000000d0020000010000014c000017aa000000d0020000010000013e0000187a000000d002000001000002110000194a000002e6020000010000022200001c300000068402000001000005a60000024600000101010000030000023000000000000000000000000300000239000022b4000000460200000100000249000022fa000000cc020000010000025a000023c6000000b00200000100000274000024760000000c02000001000002870000256000000104020000010000029500002a360000033c02000001000002a4000003470000091a01000003000002ac00002d72000001ba02000001000002bb00002f2c0000008402000001000002ca00000c860000000401000003000002d4000031540000003602000001000002e1000000a80000000401000003000002eb000000a40000000401000003000002f5000000a000000004010000030000037300000c6200000004010000030000002100000c6a0000001801000003000003000000334a0000005a020000010000030a0000009400000004010000030000031600000098000000040100000300000322000033a40000005a020000010000032e0000009c00000004010000030000033b00000162000000080100000700000347000000b00000000801000007000003520000008400000000000000030000035c0000004c0000000000000003000003660000004400000000000000030000037000000050000000000000000300000378000000c2000000060100000700000384000000bc0000000601000007000003970000008800000000000000030000039f000000400000000000000003000003a9000000480000000000000003000003b2000000b80000000401000007000003ba00000c660000000401000003000003c900000c8200000004010000030000035500000c960000000401000003000003d300000c920000000401000003000003de00000c8e0000000401000003000003e900000c8a000000040100000300000000000000000000000003000007000003f546c82456000000000000fff1000003fe0008ed80000000000000fff100000407000056f60000000000000001000004160000559e00000000000000010000041e0000538c00000000000000010000042a0000570200000000000000010000043900005400000000000000000100000447000054c600000000000000010000045b00005492000000000000000100000468000054e60000000000000001000004750000570e0000000000000001000004840000571c0000000000000001000004ee00000cd400000000000000030000049300000d2200000000000000030000049b000055d40000000000000001000004a7000056040000000000000001000004b3000056460000000000000001000004c00000563e0000000000000001000004d00000564a0000000000000001000004dc000056500000000000000001000004e900000df40000000000000003000004f600000e5c00000000000000030000050300000eaa0000000000000003000005100000019400000030110000070000052500000174000000141100000700000538000001880000000c110000070000054b000024820000000c120000010000055c0000248e000000d2120000010000056800002664000000d812000001000005760000273c0000004c120000010000058600002788000000661200000100000599000027ee000001e812000001000005ad000029d60000006012000001000005c100002fb00000013a12000001000005d6000030ea0000001012000001000005e70000565a0000000010000001000005f9000030fa0000005a12000001000006050000318a000001c0120000010000060c000055dc00000000100000010000061f000033fe00000072120000010000062700003470000000c6120000010000063700003536000002981200000100000641000001c40000000b1100000700000651000037ce000000f21200000100000665000038c00000010a1200000100000679000039ca0000002e120000010000068d000039f80000006412000001000006a200003a5c0000009812000001000006af00003af40000005412000001000006bd00003b480000004412000001000006ca00003b8c0000008012000001000006d800003c0c000000c2120000010000076900000c9c0000000010000003000006e000003cce0000008212000001000006ee00003d50000000fc12000001000006f6000000c800000024110000070000070200000dd80000000010000003000007100000569600000000100000010000071d00003e4c000000a4120000010000072a00003ef00000002a120000010000073700003f1a00000116120000010000074a000056e800000000100000010000075d00004030000007be120000010000076400000dbc000000001000000300000772000047ee00000112120000010000077a0000490000000532120000010000078200004e320000052a120000010000078d00000cb800000000100000030000079b0000535c0000000010000001000007ab000053740000000010000001000007b8000053ac0000000010000001000007c7000053f20000000010000001000007d5000053fa0000000010000001000007e40000547e0000000010000001000007ee000054880000000010000001000007f80000544e0000000010000001000008060000546a000000001000000100000816000054a0000000001000000100000823000054b000000000100000010000083200005512000000001000000100000841000055520000000010000001000008500000558800000000100000010000085d000055a6000000001000000100000869000055b8000000001000000100000876000055ea0000000010000001000008830000561a0000000010000001000008910000565600000000100000010000089d000056680000000010000001000008a9000056c20000000010000001000008b7000056e8000000001000000100766563746f722e63006d675f6469727479006d675f666f7277617264006d675f736176656400766563746f725f67656e65726174652e706172742e30007363616c65730067656e657261746f725f70616765007372635f706167655f7265616479007372635f706167655f736f75726365007372635f7061676500666f726d6174732e370067656e657261746f725f776964676574007365636f6e646172795f77696467657400766563746f725f6d6964695f70616765006d6964695f76696577006d6964695f706167655f6275696c74007469746c65732e3200666f726d6174732e31006d6964695f6e616d6573006d6964695f6c61796f7574006d6964695f636f6e74726f6c006d6964695f6d61780066697273742e33006d6964695f62797465006d6964695f666f726d617400726f6f74732e30006d6964695f666f726d61745f30006d6964695f666f726d61745f31006d6964695f666f726d61745f32006d6964695f666f726d61745f33006d6964695f666f726d61745f34006d6964695f666f726d61745f35006d6964695f7061676531006d675f706167655f7669657700647261775f67656e657261746f725f7769646765742e706172742e3000666f726d61745f636f6e74726f6c00726f6f74732e3600666f726d61745f313000666f726d61745f3800666f726d61745f3600666f726d61745f313100666f726d61745f3900666f726d61745f37006d6964695f7365745f636f6e74726f6c006d6964695f67656e6572617465006c6f636b65642e3400766563746f725f6d6964695f79657300766563746f725f6d6964695f6b6e6f6200766563746f725f6d6964695f61737369676e2e706172742e3000766563746f725f6d6964695f61737369676e00736176655f73657474696e67730067656e65726174655f747261636b0073746167696e67006368616e67655f636f6e74726f6c0067656e657261746f725f7669657700656469745f7669657700706f6f6c5f636f6e7465787400706f6f6c5f62616e6b00706f6f6c5f7061727400706f6f6c5f747261636b00706f6f6c5f666c657800706f6f6c5f62726f77736500706f6f6c5f64697265637400706f6f6c5f73746174696300706f6f6c5f70656e64696e6700706f6f6c5f6c6162656c730068616e646c6572732e38006d675f616374697665006d675f7365636f6e64006d675f637572736f72006d675f6d696e65006d675f6172705f70616765006d675f6172705f73657475705f736c6f7473006d675f7365656e006d675f6f70656e6564006d675f73686f776e006d675f6b657973006c6173745f7472616e73706f7274006c617965725f67656e0073686f776e5f62616e6b0073686f776e5f706172740073686f776e5f747261636b0042414e4b5f50545200504152545f4f46460073745f6e616d655f7265706c61790073745f6e616d650073745f726f775f747970650073745f6d61696e5f7265706c61790073745f7372635f636f6d6d6f6e0073745f63686f6f7365725f726f775f747970650073745f6e616d655f7069636b0073745f706f6f6c5f6b696e640073745f656469745f7265706c61790073745f647261775f7265706c61790073745f656e6373002e706f6f6c5f73746f636b002e6c6973745f73746f636b002e7469746c655f73746f636b002e7469746c655f756e7369676e6564002e7469746c655f706f6f6c002e7469746c655f706c61696e006d675f6c6973745f6b657973006d675f706167655f6b657973006d675f706167655f656e637300766563746f725f636f6e74726f6c5f6e616d657300766563746f725f7363616c655f6e616d657300766563746f725f636f6e74726f6c5f6d617800766563746f725f6e6578745f7365656400766563746f725f7061636b00766563746f725f756e7061636b00766563746f725f67656e657261746500766563746f725f747261636b5f656d70747900766563746f725f77726974655f70687261736500766563746f725f7369676e65645f747261636b00766563746f725f76616c69646174655f706172740073745f76616c69646174655f706172740073745f73746f636b5f76616c69646174650073745f73656c65637465640073745f6b65790073745f73746f636b5f706f6f6c5f6f70656e0073745f747970650073745f63686f6f7365725f747970650073745f61737369676e00766563746f725f64656661756c74730073745f706f6f6c5f63686f6963655f647261770073745f706f6f6c5f63686f6963655f6f70656e0073745f706f6f6c5f63686f6963655f6c6566740073745f706f6f6c5f63686f6963655f72696768740073745f706f6f6c5f6c6566740073745f706f6f6c5f72696768740073745f647261775f706167650073745f73657475705f706167650073745f6b6e6f620073745f73657475705f6b6e6f62006d675f7061676500766563746f725f6d696469006d675f706167655f6c61796572006d675f706167655f73697465006d675f6172705f7365747570006d675f747261636b5f746170006d675f6e6f74655f73657475705f64726177006d675f73746f636b5f6e6f74655f64726177006d675f6b6579006d675f6c6973745f6c61796572006d675f6b6e6f62006d675f7469636b0073745f75695f7469636b0073745f656469745f6c617965720073745f6d616368696e655f6e616d650073745f7372635f6e616d65730073745f6d61696e5f636f6d6d69740073745f7372635f636f6d6d69740073745f7372635f636f6d6d6974320073745f6e616d655f610073745f6e616d655f620073745f73657475705f6f70656e0073745f63686f6f7365725f6f70656e0073745f73657475705f726f770073745f63686f6f7365725f726f770073745f73657475705f65646974360073745f73657475705f64726177360073745f7469636b5f686f6f6b0073745f7372635f647261770073745f706f6f6c5f6f70656e0073745f6c6973745f647261770073745f706f6f6c5f7469746c650073745f76616c6964617465006d675f7461705f73697465006d675f73657475705f73697465006d6f647765726b5f73746f636b5f34303033363534385f38000000063400000301000000ac0000065000000301000002460000067200000301000000d0000006bc0000020100001170000006fe00000301000002420000070400000301000000b00000070a000003010000023e0000071000000301000000ac0000071600000301000000b40000072600000201000011200000077e000003010000008c0000078e0000030100000090000007a60000030100000246000007ce00000301000000b8000007d600000301000000be000007ec0000620100000018000007f400000301000000ca0000080a00000301000000d00000081c00006201000000ec0000088800006201000000180000089a0000030100000242000008a000000301000000b0000008a6000003010000023e000008ac0000030100000090000008b200000301000000b400000eb800006201000000ed00000ed600006201000000ee00000ef400006201000000ef00000f1200006201000000f000000f3000006201000000f100001fda00000301000003460000208c0000030100000040000022d00000110100000011000022e600001101000000220000233200006201000000ec0000236a000062010000010e00002ade0000030100000c6100002c2000000301effea1fa00002c500000030100000c6100002e0400006201000001880000317200000301000000a40000318000000301000000a00000322e0000030100000c62000032960000030100000c62000032ba0000110100000011000032fc0000030100000c62000033080000030100000c860000332a00001101000000220000336600000301000000a40000337400000301000000a00000338400000301000000940000338a0000030100000098000033c000000301000000a4000033ce00000301000000a0000033de0000030100000094000033e400000301000000980000361200000301000000a00000368c00000301000000a800003692000003010000009c000036a000000301000000a0000036a600000301000000a4000038e800000301000000a8000038f600000301000000a40000390c00000301000000a000003912000003010000009800003918000003010000009c0000396c0000620100000162000039d40000620100000162000039ea000003010000009800003a04000062010000016200003a3a000003010000009400003a40000003010000009800003ab8000003010000009800003aca000062010000016200003d5600006201000000c800003d5e0000030100000dd800003d6e000003010000008400003db8000002010000569600003e0a000002010000075c00003ebc000002010000569600003ed6000003010000004c00003efa000002010000569600003f3200000201000056960000407c0000020100005696000040940000030100000dbc0000409c0000030100000dd8000040bc00000201000056960000410c00000301000000500000411200000301000000440000411a0000030100000044000041c8000003010000004c000041ce00000301000000500000420c00006201000000c80000422c00006201000000c80000423c0000020100005696000042480000030100000dbc0000426a00000301000000500000429e0000030100000050000042aa00000201000022b4000042d200001101000000110000430000001101000000220000431c00000301000000500000432a00000301000000440000441600006201000000c20000443200006201fffffcd50000454000006201000000c80000467600000201000024760000471600006201fffffcd50000474400006201000000c2000047ba0000020100002476000047f400006201000000c80000481400000301000000840000485a0000020100005696000048ac00000201000022fa0000491600006201000000c80000492400000201000056960000494800000201000056960000495200006201000000c80000495e000003010000008800004a4a000003010000004000004a5c000003010000004800004a66000003010000004c00004a6c000003010000004800004a9a0000030100000dd800004ab0000003010000008400004abe0000030100000dbc00004b00000002010000403000004b18000003010000008400004b2a0000030100000dd800004b32000003010000008400004be8000003010000008800004c0a000003010000004000004c10000003010000004800004c1a000003010000004c00004c20000003010000004800004c3c0000030100000dd800004c50000003010000008400004cc00000030100000dbc00004cf4000003010000004000004cfa000003010000004c00004d28000003010000004800004d30000003010000004c00004d36000003010000004800004d46000003010000004c00004d5e000003010000004c00004d7a000003010000004000004d9c000003010000004400004dd0000003010000004c00004de6000003010000004400004df80000030100000dd800004e0c000003010000008400004e1c0000030100000dbc00004e52000003010000009800004e860000030100000c6600004eb00000030100000c9200004eca0000030100000c8600004ed00000030100000c9200004ed60000030100000c8e00004edc0000030100000c8a00004ef8000002010000318a00004f420000030100000c8200004f600000030100000c9600004fd00000030100000c66000050500000030100000c92000051500000030100000c8e0000515a0000030100000c8a000051960000030100000c960000519c0000030100000c92000051a20000030100000c8a000051ae0000030100000c8e000051b80000030100000c66000051e20000030100000c66000052200000030100000cb8000052380000030100000c960000523e0000030100000c86000052440000030100000c92000052500000030100000c8a000052560000030100000c8e000052640000030100000c860000526a0000030100000c92000052700000030100000c8e000052760000030100000c8a000052800000030100000c9c000052940000030100000c660000529e0000030100000c66000052ca0000030100000098000052d4000003010000009c000052f00000030100000c96000053380000030100000c6600005388000002010000559e0000008c0000030100000054000002ee000062010000016a0000062800000301000000b00000063e00000301000000b400000658000062010000019400000660000003010000017e0000066600006201000000800000066c00000301000000ca0000078600000301000000b00000079800000301000000b4000007ae0000110100000000000007b600000301000000b8000007e000000301000000bd000007fe000062010000000000000804000003010000017e00000810000062010000011e00000bb6000062010000010e00000c22000062010000003f00000c5000006201000000fe00000cec000011010000000c00000d08000062010000005000000d36000011010000000400000de4000062010000017400000dfe000011010000000d00000e42000011010000000800000e8c000003010000008c00000e9400006201000000ec00000eaa000003010000008c00000ec8000003010000008c00000ee6000003010000008c00000f04000003010000008c00000f22000003010000008c000010a4000062010000018800001202000062010000017400001236000011010000000d0000131a00001101000000080000132a00006201000000500000134c0000110100000004000013ce000011010000000d000013e800001101000000080000140e00006201000001740000144c0000620100000050000019ba00006201000000fe00001b6e00006201000000fe00001d66000003010000024600001e02000003010000024600001fa80000030100000000000020720000030100000000000021c0000003010000000000002246000003010000000000002256000003010000000000002aaa000003010000034700002b00000003010000039700002bc4000003010000024600002bd2000003010000024600002bdc000003010000034700002c26000003010000034700002cd000000301000003c000002d3c000003010000034700002f880000030100000c860000315600000301000000a8000031b20000030100000c62000031d20000030100000c6a000032040000030100000c6a000032f20000030100000c860000334c00000301000000a8000033a600000301000000a80000347600000301000000980000350a00000301000000a00000352e0000030100000094000035be00000301000000980000373400006201000001c4000037e000006201000001620000393600000301000000a00000396000006201000000b0000039a8000011010000002c00003a72000003010000009800003aa8000003010000009400003b5c0000030100000c8600003bfa0000030100000c8600003c8e0000030100000c8600003cb20000030100000c9c00003d320000030100000c8600003dfe000003010000004c00003f94000011010000000400003fbc000003010000004400003fce000011010000003f00003fee00000301000000440000406e00006201000000c8000040840000030100000084000041b8000003010000004c000041f600000301000000500000423200000301000000840000431600000301000000440000436000000301000000440000441e00006201000000bc0000470a00006201000000bc0000480e0000030100000dd8000048a0000003010000004c00004938000003010000008800004a780000030100000dd800004a7e000003010000008400004a90000003010000005000004ad400006201000000b800004ade000003010000005400004bee000003010000008400004c26000003010000008400004c32000003010000005000004c9000006201000000b800004c960000030100000dbc00004ca0000003010000005400004caa000003010000005000004cda00006201000000b800004ce4000003010000005400004d04000003010000004000004d3c0000030100000dbc00004d640000030100000dbc00004dd60000030100000dd800004e40000003010000009800004e58000003010000009c00004ea40000030100000c8200004eaa0000030100000c9600004f0400000301b9382ef400004f2400000301b9382dc800004f4e0000030100000c9c000050400000030100000c82000050460000030100000c96000051700000030100000c9c0000517a0000030100000c9c000051840000030100000c62000052260000030100000c62000052860000030100000c62000052de0000030100000cb80000530e0000030100000cb80000531a0000030100000cb800000ca00000030100000cd400000ca40000030100000d2200000cbc0000030100000cd400000cd6000002010000318a00000cda000002010000318a00000cde000002010000318a00000cf0000002010000318a00000cf4000002010000318a00000cf8000002010000318a00000d240000020100003c0c00000d3a0000020100003c0c00000d500000020100003c0c00000d660000020100003c0c00000d7c0000020100003c0c00000d920000020100003c0c00000dc00000030100000df400000ddc0000030100000e5c00000de00000030100000eaa00000df6000002010000403000000dfa000002010000403000000dfe000002010000403000000e10000002010000403000000e14000002010000403000000e18000002010000403000000e2a000002010000403000000e2e000002010000403000000e32000002010000403000000e5e000002010000403000000e62000002010000403000000e66000002010000403000000e78000002010000403000000e7c000002010000403000000e80000002010000403000000eac00000201000047ee00000ec200000201000047ee00000ed800000201000047ee00000eee00000201000047ee00000f0400000201000047ee00000f1a00000201000047ee000000000000020100000e8a000000040000020100000ea8000000080000020100000ec60000000c0000020100000ee4000000100000020100000f02000000140000020100000f2000000050000011010000004600000054000011010000004800000058000011010000004b0000005c000011010000004d0000006000001101000000500000006400001101000000520000006800001101000000540000006c000011010000005700000070000011010000005900000074000011010000005c00000078000011010000005e0000007c000011010000006100000080000002010000187a0000008400000201000017aa00000088000002010000142c0000008c00000201000013ee0000009000000201000016da00000094000002010000160a0000009800000201000013a80000009c000002010000153a000000a0000002010000139e000000a4000002010000146a000000a80000020100001394000000ac00000201000013b0000000b000000201000033a4000000b4000002010000334a000000cc000011010000003f000000d80000020100002476000000dc000002010000075c000000e000000201000022fa000000e400000201000022b40000011e000011010000006300000122000011010000006800000126000011010000006d0000012a00001101000000720000012e000011010000007700000132000011010000007c0000013600001101000000810000013a00001101000000860000013e000011010000008b0000014200001101000000900000014600001101000000940000014a00001101000000980000014e000011010000009c0000015200001101000000a00000015600001101000000a40000015a00001101000000a90000015e000011010000000c0000016200001101000000ae0000016600001101000000b90000017400001101000000c20000017800001101000000c60000017c00001101000000ca0000018000001101000000ce0000018400001101000000d20000019400001101000000630000019800001101000000680000019c000011010000006d000001a00000110100000072000001a40000110100000077000001a8000011010000007c000001ac0000110100000081000001b00000110100000086000001b4000011010000008b000001b80000110100000090000001bc0000110100000094000001c00000110100000098002e73796d746162002e737472746162002e7368737472746162002e72656c612e74657874002e72656c612e64617461002e627373002e726f646174612e737472312e31002e72656c612e726f646174610000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000010000000600000000000000340000572a000000000000000000000004000000000000001b00000004000000400000000000007dec00000f3c0000000900000001000000040000000c0000002b0000000100000003000000000000576000000f44000000000000000000000004000000000000002600000004000000400000000000008d28000001d40000000900000003000000040000000c00000031000000080000000300000000000066a4000000000000000000000000000000040000000000000036000000010000003200000000000066a4000000d7000000000000000000000001000000010000004a0000000100000002000000000000677c000001cf000000000000000000000002000000000000004500000004000000400000000000008efc0000036c0000000900000007000000040000000c000000010000000200000000000000000000694c00000bd00000000a0000007a0000000400000010000000090000000300000000000000000000751c000008d00000000000000000000000010000000000000011000000030000000000000000000092680000005200000000000000000000000100000000", - "sha256": "7651879d9e67d788709b7cd6327a16c581a253ea6d57050d3008ce9c7459b3eb", + "bytes": 38268, + "code": "7f454c46010201000000000000000000000100040000000100000000000000000000939c000000260034000000000028000c000b2f021039100b14cfa742227946c82456d3fc000950481211c480a340e5a8828012811239100b145e808113c0100b145e207946c82456d1fc0009b332241fa350a379100f85984ef940027e002f027233202f0008206f000cb28067187420b480674a7231b280674e7432a749b4806706241f4e7593c9a341b288672c4a886702a54143f19a0074fdd28943f90000000022711c0022095381b48165d42f48000c2f400008241f4ed1428160d6a349a341b28866c860f2a549a341b28866be60e84feffc40720f48d77cfc206f03c871902f40004eb2806406740f2f42004e7010206f03c877a800012f430046b083640672102f410046700b206f03c875a800022f420042b0826406720b2f410042a940206f03c875a800032f420052b0826404a96f0052206f03c8707e73a800042f41003eb0816406727e2f41003e707f206f03c875a800052f420056b0826406727f2f410056700c206f03c875a800062f42003ab0826406720c2f41003a7218206f03c81028000875a800072c421f40005bb28264043c7c0018206f03c843eefff42c2f03cc102800092f49004a4a0067107240b2866500046c7180b08665000440206f03c4200f246f03c40680000003c0224a116f03cf010041ef02c0264850c1421113410003134100021341000126d9b08b66ea222f03d4283c9e3779b92e2f004e760b4282b981e7af760f43ef00c04bef01c02a09200142404840b380223c7feb352d4c0108002200e6a9b380223c846ca68b4c010800260042434843b183a740c08277c34a8067000088d6872a83264520022f480032222bfffc41ef03c049f01c00b6acfe00640a26815380598b4a8066e447f70c00260206849e3779b9206f00325283588d5885274200c0b6866764222f03d42403760fb981200142404840b380223c7feb352d4c0108002200e6a9b380223c846ca68b4c010800260042434843b183a740c08277c34a806600ff7c2a834a826600ff78428047f70c00260206849e3779b95283588d5885274200c0b686669c2a6f00527a1847f9000000007e64387c000c79f3da00266f004a70f42a6f004a99ce9aaf004297ef003adbef003a42af003642af00322f4800522f42002e2205740cd2804c4210060d04672cb08b6c00022e220cd2804a816d000216be816f0002182f400036740c52802e012205d2804c4210060d0466d45280720db28066be302f0048206f0052242f002ec0c35080e888671671c049f10c00201947f70c007001174002c0b9c966f0720c7c0c202f00425e804c41000573fc00fe92af0056286f004a22422a6f004a4287700c90af00422f450046c2ef03d2dbef003ad0854c4600057dfc00fe99ef003a2f4d004a242f003226434c461001eaa42a6f004e2f4a00522f6f03d40032a340c0841f41003d2f40004e2c0752874a10670000da223c85ebca6b7a0f4c071800262f0032283c7feb352db7810a81b5297a4d200142404840b3804c0408002200eaa9b380223c846ca68b4c010800220042414841b1814a82670001662001e0884c4200044df74c00282e005c0684fffffff4700fc081b08d642c7030c0814a8066084aaf004e6600016c202f00420801000667060680fffffff4b08c6d08b0af004a6e02280076182001e6a8a743c9fc00052a004c435000068400000040114400015480c0ef0040e48811400002a740c0864a80670000de0281003000004a81670000d2102f003d114000035888bc896600ff18246f0052260b4aaf03cc675871af005b783fb880650000be2a2f03cc206f03c8266f03c44c4500021828000a71c5222f03cc538543f30c009282242f03cc2c0152814c4260004a0467062c059c8020064c43000647ef03c041f36c0024e8ff00b5c966da4cd77cfca3404fef03c04e754481be816e00fdec52806000fdc2b08d6e18222f0032204041e8000c4df71c0052812f4100322d48005c220cd2804a816d1abe816f00fdd22f4000362e015280720db2806600fd886000fdc6448160e2102f03d3114000036000ff2e282f00366000feac2a2f03cc703f206f03c8266f03c44c450002222f03cc71c51828000a5385928243f30c00242f03cc6000ff40202f00466000fe94206f03c42c00246f03c4200f224a0680000003c0116f03cf010041ef02c026486000fbbe71807c40b0866400fb9660d04fefffe048d73c3c4ab900000000670e202f0024b0b900000000670000da41f900000000226f002493c81031880010c0b1fc0000000066f24bf900000000428243f90000000049f90000000045f900000000223c00000000265d91c810338800670c158088005288ab43b68866eed1ca4218b28866fa201c26004243484378182a00e8ad2800e08c13400003ab4012851344000213430001b082656a203c00000000781826002a0042434843e8ad2800e08c1340003358891345002c1344002e52825c8a5c81700c1343002db082668877fc5555202f0024283c5555555523c400000000a3790000000023c30000000023c000000000203c000000004cd73c3c4fef00204e75203c00000000781826002a0042434843e8ad2800e08c1340003358891345002c1344002e52825c8a5c81700c1343002db0826600ff1e60924fefffe0222f002848d77c1c226f00244a816708a341c2af002c528141f1180123c10000000028084ab900000000660ab1f9000000006700011c41f90000000093c81031880010c0b1fc0000000066f243f90000000091c845f900000000101152894a00670a14c05288ab40b08866eed1fc000000004218b1fc0000000066f6340141f900000000c4fc000d2242d3fc0000000010d9b1fc0000000066f630014df90000000043f900000000223c0000000047f900000000c0fc00062a40dbfc00000000719d244191c85d8a28730c0010348800670c158088005288ab40b08866eed1ca4218b28866fa7440201e72182600e2ab2200e0891340000358891343fffc1341fffe72671342002c24007004424248421341002e22085c811340002d70a41340002f1342fffdbdfc00000000669273fc5555243c5555555523c20000000042b90000000023c10000000023c400000000203c000000004cd77c1c4fef00204e754fefffd448d74c044242203946c82456227c20300c0c2f4800102040d1fc0008ed8042001239100b14cf3f420028243c0b0b00012f420020a7421f40002a302f00322f490024c28275fc18b2c0fc001e4c021800d1c173b0083e53814a81670001f64def001793c922090681000001e9d280a542b489641e1cb0180052897209b289671e22090681000001e9528ed280a542b48965e245f1083f52891cf0a80060c6102f0017720fa942c2807180e88830401f410020b4806500017e3008122f001874101f400023701fc0813040b4806500013c3408102f0019ea891f420021a342c282740fc4801f41002a12022042740bb488650001027180e8881f410022720c3040b280650000d6122f001a340871811f420026747eb480650000b0102f001b1f4100244a006d00008c122f001c1f40002574187181b480656871af001d1f410027723fb2806546122f001ee188758120427440b4886528100147ef00203f400028206f0010200820d320ef002430ef00284cd74c0410af002a4fef002c4e75724047ef002010013f40002860d4122f001e703fe188758120427440b48864b860de721871af001d1f410027723fb280649660da707f122f001c74181f4000257181b4806400ff7460d8727e102f001b1f4100244a006c00ff5260d8307c000c122f001a340871811f420026747eb4806400ff2a60d4720b7180e88830401f410022720cb2806400ff0060d0307c0010102f0019ea8934081f420021a342c282740fc4801f41002a12022042740bb4886400fec460c0307c0004122f0018741030081f400023701fc0813040b4806400fe8260b847ef002093c9244b22090681000001e94df1083fd280a542b489651a528914f0e80022090681000001e94df1083fd280a542b48964e614b018005289ad41b2896700fecc528a60c0518f2f0a2f02740f206f0018203946c824561239100b14cfb488655ea742c282242f001406800008ed80eb8a224275fc18b243e903e24c021800d081d3c0700cb088672a700db08867000088a941b288663273a9000243f90000000071b18800b28064022001241f245f508f4e7573917413c2fcaaabe4a960dc241f4280245f508f4e75227946c82456a7421039100b14cf222f0014d3fc0008ed80e989c08275fc18b2244145ea183e4c0208007416d3c071b1a800b4806720ad40b0886764241f43f90000000071b18800245f508f4e7573a900016000ff7e203946c8245606800008ed801439100b14cf2f40000c43f90000000071b188002240d3c1a741100275fc18b243e91832c0814c020800d0af000c1231080006810000004073816000ff34202f00145280241f245f508f4e754fefffe848d70c1c242f0020246f001c77b9100b14cc2f022f034ebafeb2508f2200a940b0826760780cb88267000150a540b082673aa743b68267000110700bb08267000124760ab6826754780eb882670001847010b082665841f900000000101814c066fa4cd70c1c4fef00184e75740c4c42100041f90000000020700c00101814c066da60de2f4a001c4cd70c1c2f4100202279400d3f104fef00184ed14a81662441f900000000101814c066b060b451824a82661020010680fffffff44a806d0000fe2200224aa34842807663b681644e7864760a20014c440000068000000030128020014c43000043f2880124004c4320042004068000000030158088005488740a4c42100042030680000000301280158388004cd70c1c4fef00184e757409b48164dc2040760a20014c43000043f2880124004c432004200406800000003015808800548860b8ab444c44100041f90000000020700c00101814c06600fefe6000ff004a81674441f900000000101814c06600fee86000feea2439400d3f08a5672f032f41001c4ebafd402f4a0024222f001c22424c0418004cef0c1c0008d2802f4100284fef00204ed141f900000000101814c06600fea46000fea6740ca548224a948112fc002d2202a3406000fefa4a816700feca203c1002c9809081e588224020514a886600fe72224aa34842806000fed6203900000000ad4141f9000000004c01080071b008002f4000086000fdea203900000000ad414c0108002040d1fc0000000071902f4000086000fdcc203900000000ad414c0108002040d1fc0000000071902f4000086000fdae203900000000ad414c0108002040d1fc0000000071902f4000086000fd90203900000000ad414c0108002040d1fc0000000071902f4000086000fd72203900000000ad414c0108002040d1fc0000000071902f4000086000fd544feffff048d70c0c207946c82456a743222f00142401eb8a226f0018d1fc0008ed8047ef001f2441d5fc8000666e43e903e21039100b14cfd3c275fc18b2c0834c020800d1c0119398001039100b14cfc0834c0208002040d1fc100a4ece11939800101275b9800000027180b480670a4cd70c0c4fef00104e752041d1fc80006676101075b9800000037180b48066e070444c010800206f0018d1fc46c76dc0119308004cd70c0c4fef00104e752239460d1684a9402f0a2f02b081654c4ab9460d173a66444ab9460d1694663c202f0018068000000c1171c0206f001441f00a001028000175902242744db489661a4aaf001067147180246f000c224020122440b3ea0008670a1010241f4280245f4e75a94284aa000c030267ee241f245f4e754feffff42f0e2f0271b9100b14cc2c6f00242f0041ef000d4ebaf846588fad40b08e675cab42200eb48e6402538071b7080920402f2f00302f2f003070fec0af003043f90000000073b1e8002f002001b1c164022008c0fc007f4c4100002f002f2f00302f2f00302f2f00304eb9400479b44fef001c241f2c5f4fef000c4e751039100b14cc227946c82456a7421239100b14cfd3fc0008ed807180c282c0fc001e204071fc18b241e801f14c001800d3c110318800727fc28020416000ff76518f2f02740b202f00182200206f00105c81226f00142f6f002000042f6f00240008b4816406241f508f4e752f6f000800242f6f000400202f41001c2f4000182f4900142f480010241f508f6000fef2598f2f02740b202f0014222f000c206f0010226f001c2f6f00200004b4806406241f588f4e752f6f000400202f49001c2f4000182f4000142f4800102f41000c241f588f6000feaa4fefffe448d7401c242f002441ef001171b9100b14cc2f004ebaf6ee588fad40b082676cab40b082653c71b728112202a3435581b6816500009255824a826700012aab434c43000141f900000000226f002020701c00101812c066fa4cd7401c4fef001c4e7571b72810780bb882660001124a80670000e6226f002041f900000000101812c067d4101812c066f460cc1039100b14cc227946c82456a7421239100b14cf77fc18b2d3fc0008ed80787f7180c282c0fc001e20404c03180041e801f1d3c110318800c0847663b68064587864760a2200a54e4c441001206f0020a74906810000003010c122004c43100124014c43200422040681000000301081206f0020d1ce740a4c42000142030681000000301081206f0020118398004cd7401c4fef001c4e75206f0020a34942817409b48064d02c49760a224122004c431001548924014c43200422040681000000301081206f0020d1ce60aa226f002041f9000000006000ff1a740c4c42000141f900000000226f002020701c006000fed6780ab88266144a806600ff3e226f002041f9000000006000fee851824a826600ff2822000681fffffff44a816d0e20017663b6806500ff186000ff6c206f0020740c94802002a54910fc002da3417409b4806400ff306000ff5c700a2f4000086000fe1c70082f4000086000fe12ad6f00086000fe0a71b9100b14cc4feffff441ef00012f004ebaf4fe588f4a2f000b671641f900000000226f0010101812c066fa4fef000c4e75226f001041f90000000060e84feffff42f0271b9100b14cc41ef0005ab422f004ebaf4bc71af000c588f41f9000000004c420001226f001420701c00101812c066fa241f4fef000c4e754feffff42f02740c71b9100b14cc41ef00052f004ebaf47e71af000b588f41f9000000004c420001226f001420701c00101812c066fa241f4fef000c4e754fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf43c71af0025588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf36c71af0023588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf29c71af0022588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf1cc71af0021588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf0fc71af001e588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffdc48d7401c2c6f002841ef001971b9100b14cc2f004ebaf02c71af001d588f7263b28064567464a5482200a7494c421001740ad1cea36f00100681000000301c8122004c42100128014c424003282f001022030681000000301d814800740a4c420001420306810000003010811d8398004cd7401c4fef00244e757809b8806522740aa3494c4200014203204e06810000003010811d8398004cd7401c4fef00244e75740aa3482200a5494c42100142af0010d1ce28014c424003282f001022030681000000301d81480060904fefffd4700c48d7043c282f0034242f0030262f0038b084670001aea541b2846700026c7a0dba84670001c8a940b084670001d8207946c82456a7411039100b14cf2a02d1fc0008ed80e98dc08173fc18b222457a1645e9183e2f4a00184c010800d1c071b0a800ba80670001b641f900000000428143e91832700d2f4800202f49001cb081650000907a0bba81657ea940b08167782f01247c100b14cf2f022f41001c4ebaf16ea745207946c82456d1fc0008ed801f520033222f001c2240246f002843e9ffc02f49002c71b21800508f45ef0027226f001cd3c0102f002bc0857bfc18b24c050800a745d1c0119298001039100b14cfc0857bfc18b24c0508002040d1fc100a4ece119298005281700db0816400ff747a10ba816600ff78207946c82456a7411039100b14cf7bfc18b2d1fc0008ed80226f00180683ffffffc0246f002075b24800c081222f00184c050800a745d1c070161180180073fc18b21039100b14cfc0857a164c010800a7412040d1fc100a4ece118598007bfc18b2226f001cd3c2207946c82456d1fc0008ed801039100b14cfc0814c050800d1c0118398001039100b14cfc0814c0508002040d1fc100a4ece118398004cd7043c4fef002c4e75a5672f024ebaf0462f42003842af003c720c4c013800d6802f4300404cef043c00084fef00346000f4042f4300382f4200304cd7043ca36f00344fef002c6000f3ec2f4300382f4200304cd7043ca56f00344fef002c6000f3d441f900000000a7412f48002043e918320683ffffffc0207946c82456d1fc0008ed802f49001c7bfc18b21039100b14cf246f0020226f001c75b24800d3c2c0814c050800d1c0118398001039100b14cfc0814c0508002040d1fc100a4ece118398004cd7043c4fef002c4e75227946c82456a7411039100b14cf2a02d3fc0008ed80eb8dc08173fc18b220457a1341e803e24c0108007209d3c071b18800c0fcaaabeaa8b28064027009c0fc000c20404870380042a72f024ebaf3184fef000c6000fd504e56ff6c48d73cfc1039100b14d0223946c824560681c00000000c8107efffff6200045caf41b2ae0008650004527380740fb4816500044848807dfc08b0223946c824562041282e00081639100b14cfc0fc8ed84c06480041e848d02244d3c01d43ffc32d49ffb44bf188004aae000c6700042c2040227c00008e55d1c14a30980067000406162d0028428245faeea07783ad47be826602af422f022f2e00084e92508fab41b282640004461d8028cc5282780cb88266daad672f2e00084e92508f2d40ffb84aae0010670a52807c7fcc802d46ffb8203946c8245620431239100b14cf53887e3fbe8865000392a742c2822640d7fc0008ed80202e000879fc18b2eb884c0418000680000003e2d7c1d7c04a2b00016d00036671ab00017c7fbc806500035a2f2effb82f0078132f03486effcd4879000000004ebae3544878000f2f2e00084e924878000e2f2e00082d40ffa44e92161373934fef0024204d2d40ffac3401200e0680ffffffd891c02d48ffc8226effc8204077832d4eff9cc4fcaaabe8aac5fc000c9282738196812d43ffa81231880010c1b1eeff9c66f4222effb82c3c9e3779b952814c016800223c85ebca6b7e1e2d41ffa0222effa442829eaeffac286effb4d9fc1001b24e43f900000000d281266effb4d7fc1001aa502d46ffbc45ed08312d47ffc441ed005052812d41ffb0af46cc822602e68b4be8ffe0a3442d4dff98af4d9bc3dbc02d4dff947395eca1c2844a116700042679a90001ab470684ffffffc04c4748042a2effa8da844a856d000430787fb8856c027a7f2a6eff9879857f95be8467102a6eff981a851745fffe4a116700029c182900037fa8ffe14be8ffe12d4dff987b84ba87670002d82a6eff981a841744ffff4a11660002c879a8ffe24be8ffe22d4dff980c84000000ff6700028850c4a3452a6eff98edad1a8416844a11670002782a6eff94181588852a6eff941a8418114a816600027c4a04670002aa4aaeffa4670003aa282effa07c0f222effbc2e3c2c1b3c6db9812801ecac7c0cb9814c0718002e2effb02801ecacb9814c471004220492aeffa4ef89028100001f804aaeffac670ca744c8824a84670482aeffc42801e08c2a4a7fa57d84bc8767041a8418847d927981b8866706148119410001428192832801d8802a442c05122d000f46869bcd9bc32e0d2a44de80c2861b41000f2a47122d0027c2861b4100271211670002024bf9000000001b8128003a7c00179bc3dbc01215c2861a81223c85ebca6b52825889548a548cd3aeffa047eb002041e80020263c00000000b3c36600fe46247c1001aa1d95c0d5eeffb4222effc820405381101875b018007780b48367081180180015808800b1eeff9c66e64aae0010660001c4102effc3a744a342207946c824562202d1fc000950481610c084e1a986811083263c46c7d2e41039100b145e828013c1100b145e207946c82456d1fc0009b332a350a379100f85984eb940027e002c2e00082806edaa41f9000000009688468243f0380010111218c082e9a980811280b1fc0000000066e8206e0008486800084eb94009da204cee3cfcff6c588fa3404e5e4e754cee3cfcff6c42804e5e4e7571fc8e53428245faea9c1630080077836000fbf643ed0018204d52884a28ffff66d2b1c966f441ed002043ed002852884a28ffff66beb1c966f441ed003043ed0830759052880c82000000ff66a6b1c966f02040227c00008e55d1c14a309800679e6000fb981d8028cd52826000fb9a79a8ffe14be8ffe12d4dff980c84000000ff6700fd7a50c42a6eff981a841744ffff4a116700fd68602aa345edad2a6eff942c05468618152a6eff94c8861a8418114a816700fd884a046600fd8842016000fdda182900027ba8ffe24be8ffe22d4dff987f84ba876600fd3c2a6eff94a345edad181588856000fd464be8ffe37395528d0c81000000ff6600009cbbc866ee42014bf9000000001b8128003a7c00172c0546869bc3dbc01215c2866000fde22f2effb8ad672f2e00084ebaf762a744a3424fef000c102effc3207946c824562202d1fc000950481610c084e1a986811083263c46c7d2e41039100b145e828013c1100b145e207946c82456d1fc0009b332a350a379100f85984eb940027e002c2e00082806edaa41f900000000968846826000fe2a72014bf9000000001b8128004a116600ff663a7c00179bc3dbc0121582856000fd4a2a6eff9879950c84000000ff6700fea850c52a6eff981a851745fffe4a116600fbfc6000fe9242052a6eff987f957985be846600fbd86000fbe442816000fc8e1039100b14cca367a36771802f004ebaf96c4fef000c4a806716203c00000000487800202f004eb94005a2b8508f4e75203c00000000487800202f004eb94005a2b8508f4e754feffff02f02226f001cab421239100b14cc202f00182f6f0020000cb48965244a806708a340c0af00245280ad424c020800740f2040d1fc0000000071b09800b4806408241f4fef00104e7573812f4100102f002f012f40000c4ebae8082240d0af0014508f206f00044a806d5a223c0000000073b01800b0816c022200b28967c22f012f082f2f00182f4800102f4900144ebaf5bc42a7a3672f2f00244ebaf8964fef0018206f00044a8066962f6f000800202f48001c2f6f00100018241f4fef00106000f58a428160b24feffff048d7041c207946c82456a742262f00142203eb8979fc18b2d1fc0008ed801039100b14cf224143e903e2c0824c040800d1c075b09800204348680001ad672f034ebaf53e4fef000c7077b08265482202780c4c44100045faeb1c94802f0242a72f034e924fef000ca742487800402f022f034e9252824fef000cad40b08266ea42a742a72f034ebaf7de4cef041c000c4fef001c4e75746c2f0242a72f0345faead4a7424e924fef000c60be4aaf000866024e756000ff46202f0004727f5280c0814e752f032f02206f0010a942226f000c102800037380b481640270041210e988760f7581b6826402720f808112801028000a6702700112280001eb8876107581b682640272108081740c13400001102800067380b4816402700c12280002e988760b7581b6826402720b8081747e13400002102800047380b4816402707e13400003102800056a02707f134000047618102800077380b6816402701813400005743f102800087380b4816402703f134000067640102800097380b68164027040727fc2af00141340000713410008241f261f4e754fefffd848d75c1c2f2f00342f2f003449ef00272f0c4ebaff16362f003a9dce4fef000cc6fc001e141ca540b08e64000086267c100b14cfa7441013227946c82456d3fc0008ed80121345ee01e9528ed5c3c084c28479fc18b24c0408004c0418002040d1fc100a4ece7009d3c11382a8001182a800b08e66ae1013227946c82456a7421213d3fc0008ed80c082c2824c0408004c04180078022040d1fc100a4eced3c11384383e1184383e4cd75c1c4fef00284e75267c100b14cfa7441013227946c82456d3fc0008ed80121345ee003f528ed5c3c084c28479fc18b24c0408004c0418002040d1fc100a4ece7009d3c11382a8001182a800b08e6600ff2a6000ff782f02720f206f0010a942226f00081010c08112807190e8881200b4806402720413410003721f741010280001c0811200b4806402721013410001a341740f71a80001ea88c0811340000a10280002c082740b1200b4806402720b13410002740c71a80002e8881200b4806402720c13410006747e102800037380b4816402707e13400004102800046a02707f134000057418102800057380b4816402701813400007743f102800067380b4816402703f134000087440102800077380b4816402704013400009727f10280008206f000c241fc28020814e75598f2f0a2f02202f0010222f0014206f00184a80672c4a81672845e8ffff743fb48a651e747fb4af001c65162f4800182f4100142f400010241f245f588f6000d944241f4280245f588f4e75222f00044a81675a71fc0919b0af000864502001204106800000004052884a28ffff663eb08866f42041200141e8004806800000005052884a28ffff6624b08866f4204106810000085941e80059719052880c80000000ff6608b28866f0a3404e7542804e754fefffd848d73cfc262f002c4a8367000168202f00300c80000009196300015a4aaf003467000152206f0034723f18280100200453807180b2806500013c4aaf003866122f2f00302f034ebaff4e508f4a806700011a7984246f00344281204a1010a3457580ba826500010eb284650001144a0066000102528158887040b08166de264322432843428547eb005943e9007949ec089aaf41c2852805e68caf48a34291c4d1c37190e2a0c0824a1267000132142a000116824a1267000120142a00021742000d4a126700010c142a00031742000fa342e3aa12104a12670000ee828210814a8066044a12673e420042143a7c000f42819284d2839bc4307c004f194000012002468091c41e353800ce801b8738002a411e2d001fce801b47001f12303800c08111803800204b4281101846804a0056c0710044808280b1c966ee307c001791c4d1c310104a1266784a816774848010825285588a47eb0020548c43e900207040b0856600ff2ca3404cd73cfc4fef00284e754cd73cfc42804fef00284e754a006700fef0102800017a787580598071805982ba8065dcab454c4528004a8066d275a800027a7eba8265be4a2800036db8528158887040b0816600fea06000febe4682c48060882e024687c2876000ff0e50c26000fef650c26000fee250c26000fed02f02202f000caf41206f0008b280651c73b00822a342b4816512721e74534c01080041f0083c7190b4806706241f42804e7571a800017232b28066f071a8000253804a80671410280002a541241fb3804a0057c0710044804e75241fa3404e754fefffc4203946c824560680c000000048d7440c0c8007efffff630c42804cd7440c4fef003c4e75207946c82456a7411039100b14cf75fc18b22f2f0040d1fc0008ed80c0814c020800487008004ebaff50508f4a8067c61039100b14d0720f77802f430020b28365b24880243946c8245641f90000000032002f4200241639100b14cf302f0042c2fc8ed81f43002fc0fc091ad081d4802c429dc82f40001c1030e80010c0b1fc0000000066f24aaf00446700024c71fc8e55206f0024d1c14a300800670002621039000000007180743f22005381b4816500ff422f2f004041ef00352f4000144ebadda0588f223946c8245606810008ed801639100b14cf342f0042202f00103243c4fc001e2042a74241e801f12609c68275fc18b24c023800d28312301800767fc6812f4300284aaf0048670c2203747f5281c4812f420028223946c8245606810008ed801639100b14cf342f00423243c4fc00182042a74241e801232609c68275fc18b24c023800d283767f73b01800b6816500fe9e2f2f00282f012f00486f003d4879000000004ebad4f62f2f00584879000000004878091a4879000000004ebafc0c4fef00244a806700fe68226f0024b3f946c824566600fe5873b9100b14d0b2af00206600fe4a73af002f75b9100b14cfb4816600fe3a226f001c93fc0000000041f9000000002f49002045f0e800121875922f4a00147781b682670e1481226f002045e8ffff13928800b1fc0000000066d82f2f0028486f00352f2f00482f40001c4ebaf8f8a742a34e260e122f003b227946c82456d3fc00095048c2822f410038242f003812114fef000ce5ab828312811239100b145e8283260e13c1100b145e207946c82456d1fc0009b332a350a379100f85984eb940027e002c7c46c7d48c222f0040202f001043f900000000e3ab2f43001846831f43001741e9ffe0528873a8ffff0c81000000ff6678b1c966ee91c81216162f0017240843e90020c28382821cc1bdfc46c7d4cc66ce2f2f00402f4000144eb94009da20588fa37946c7c72c4cd7440c202f00104fef003c4e754878091a4879000000002f4100184ebafa42508f222f00104a806600fd9a4cd7440c4fef003c4e7571fc8e53103008006000fd9c142f001b304260864e56ffe041eeffea2f0a2f0273b9100b14cc2f012d41ffe04ebadb34322effe2588f207946c82456d1fc0008ed803d6efff2fffd1d6efff4ffff2d6effeefff92d6effeafff5c2fc001e1039100b14cf2241a74143e901f1c08173fc18b24c010800d1c012309800707fc280ab407581b0ae0008657a43eeffead3ee0008206e000c7391d1c14a886d000082246e0008203c0000000071b20800b1c06c022008b0816740128020022f00486effea2f2effe041faf73a2d48ffe44e9042a7a3672f2effe04ebafbfe4fef0018206effe44a806744a1674eb94004d948a37946c7c72c588f242effd8246effdc4e5e4e75ad40b0ae00086742222e0008206e000c43f618e97391d1c14a886c804a8167d442001280200260902f02486efff52f2effe04e904fef000ca1674eb94004d948a37946c7c72c588f60aa202e000cd0824a806d3c727fb2806c02707fb08267942f00486effea2f2effe041faf6922d48ffe44e9042a7a3672f2effe04ebafb564fef0018206effe44a806600ff5860984a016700ff6042802f00486effea2f2effe041faf65a2d48ffe44e9042a7a3672f2effe04ebafb1e4fef0018206effe44a806600ff206000ff60203946c824560680c00000002f020c8007efffff62084a398000001567064280241f4e751239100b14cc207946c82456a7421039100b14cfd1fc0008ed807381c0822f0173fc18b24c010800487008004ebafa58508f4a8067c42039000000004a8066ba4a3946c7d8d866b44ab9460d173a66ac4ab9460d169457c0241f710044804e754fefff78428148d75cfc242f008c284245ef00289dce28024283264a06840000003c49ec002271b41800a346bc80650c41f648007e537190be80674252814dee001e47eb000cbdfc000000f066d82f02206f009442854e90588f91c80b0366000086528541e8001e45ea000cb1fc000000f066e84cd75cfc4fef00884e7571a800017c32bc8066b471a8000253804a80670a71a8000255804a8066a0a340e3a891c8868043f6883cab47be88642c2c08ad474c47600043f60800700c43e901ecd3c21791880042115288b0886700ff6e43f6883cab47be8865d4d3c2179188004211528860be428147f02800ab44b881651449f21800ab442242d3c11194983c5281b88164ec2c01ad474c47600449f21800528143f34800780c135401ecb88166ca528541e8001e45ea000cb1fc000000f06600ff286000ff3c487a25da2f2f00084ebafebc508f4e75203946c824560680c00000002f020c8007efffff62084a39800000156706241f42804e751239100b14cc207946c82456a7421039100b14cfd1fc0008ed807381c0822f0173fc18b24c010800487008004ebaf88a508f241f4e75203900000000b0b946c82456670442804e751039100b14cfa741c081b0b90000000066ea71b9100b14ccb0b90000000066dc6000ff724fefffec70312f0a2f02226f0020a342206f0024b08956c173014481b4886700008ea340e3a82439000000002f420014c4804a82665e4a886632a340244174fd45f21a00d08a45f90000000020320c0022005381b48165322f4900202f480024241f2240245f4fef00144ed12441a54045f21a0074fdd08a45f90000000020320c0022005381b48164ce241f245f4fef00144e754a8866f24680c0af0014241f245f23c0000000004fef00144e752f4100102f4800082f49000c4ebafeb4222f0010206f0008226f000c4a806700008a103946100b1d08000005667c703eb089677c7431b48966702f4100102f4800082f49000c4ebafcac222f0010206f0008226f000c4a806750a34081b9000000001039100b14cca367a36771802f004ebaf78c4fef000c4a80677048780020203c000000002f004eb94005a2b8a1674eb94004d948a37946c7c72c4fef000c241f245f4fef00144e7542806000fee04a3946c7d8d866f24ab90000000057c0a54183b900000000a1677100448023c0000000004eb94004d948588f241fa37946c7c72c245f4fef00144e7548780020203c000000002f004eb94005a2b8a1674eb94004d948a37946c7c72c4fef000c608e203900000000b0b946c8245667024e751039100b14cfa741c081b0b90000000066ec71b9100b14ccb0b90000000066de4ebafd7e4a8067d6a37900000000a379000000004eba22b8a1674eb94004d948a37946c7c72c588f4e75203900000000b0b946c8245667024e751039100b14cfa741c081b0b90000000066ec71b9100b14ccb0b90000000066de4ebafd244a8067d642b900000000a379000000004eba225ea1674eb94004d948a37946c7c72c588f4e75203946c824560680c00000002f020c8007efffff6232203946c82456a7421239100b14cf06800008ed80206f000c41e8ffdec28275fc18b24c021800af42d08122089280b4816408202f0008241f4e75a342b4af000865f02f012f004ebaf57a508f4a8067e2ab6f0008202f0008241f4e752f032f024ab90000000067084ebafcd64a806672203946c824560680c00000000c8007efffff6236223946c82456a7431039100b14cf06810008ed803040202f00100680ffffffde2408c48377fc18b24c032800d2829081af42b480640a202f000c241f261f4e75a343b6af000c65ee2f002f014ebaf4f0508f4a8067e0241fab40261f4e75203946c82456a7421239100b14cf77fc18b220790000000006800008ed8041e80022c2824c031800d081d088b0af00106600ff5c241f203900000000261f4e754fefffc4203946c824560680c000000048d74c0c0c8007efffff62000166af40b0af00446500015c223946c82456206f004091c12c48ddfcfff712802f41002473fc18b2200e4c41000220424a8266000132bdfc000062c762000128222f0044a342246f004043f218227391b48164000178a36f0020222f0044701e4c0018004aaf004866624ab900000000670001062f4100142f4800184ebafb84222f0014206f00184a80670000ec203946c8245606800008ed801439100b14cf3242a7422609c68275fc18b24c023800d083b0af0040660000c0262f0044b6b900000000660000b2a56f00482f2f00442f2f00442f41001c2f4800204ebaf3a6508f222f0014206f00184a80670000e8226f0040203c1001614e90af002441f1183c43f118422209227c100162fe93ef00241190080045e801b0139288005288b28866eea340b0af0048662c73fc18b2200e207c46c8245623d000000000a379000000004c410000222f004423c10000000023c0000000004cd74c0c202f00204fef003c4e754cd74c0ca36f0020202f00204fef003c4e752f2f00442f2f00442f41001c4ebaf2fe508f222f00144a806700ff5e4203206f0040203c1001614e226f004090af00241183183e1183183d1183183c41f1183c43f118422209227c100162fe93ef00246000ff4877912f4300206000fe86226f0044743248690001487900000000200f06800000003b2f002f4000282f410020246f004c2f48002445f2183c2f4a00344ebaed3214bc0053226f004c222f0020244145ea003f1382183d74021382183e224143e901e9202f00284fef000c2f490028206f00182f4a002c226f0028a542d3c8b488641826405288246f0040740915939800b4886700fe90528060dc246f00402640226f002cd3c85288159b9800200b60c6518f2039460e5e302f0b2f0a4a80671047f900000000b7f9460e5e2c670a4280245f265f508f4e75204041e800242f48000c2f082f40000c4eb94003567c226f000c588f4280246900282f1ba16745eaffe92f0aab672f2f001c2f3c400ba8762f4000204eb940012bd84fef0018202f0008b0b9460e5e4067165f8aa341b2806640245fa37946c7c72c265f508f4e75226f000c2051a167486a00054868fffb486affffa7672f092f4000204eb9400122544fef00185f8aa341202f0008b28067c02f1ba1672f0aab67a3402f2f001c2f3c400ba8762f4000204eb940012bd84fef0018202f0008b0b9460e5e40668a609e4ebaf8384a80670001004ab9460e5e30660000f64ab9460e70e0660000ec207c46c82456a74123d0000000001039100b14cfc28023c10000000071b9100b14cca567ad672f3c460e5e3823c00000000042b90000000042b9000000004eb94007ec604fef000c207946c82456a7411039100b14cf227900000000d1fc0008ed80c08173fc18b24c010800d1c071b098222f002f3c460e5e384eb94007edb041f90000000023c8460e5e28203c0000000023c0460e5e2c42b9460e5e342f3c4006d754a36742a7a167487800404878006e4eb94005829c4fef002023c0460e5e304a80672442a74879000000002f004eb9400570b82f3c400ce0c44eb9400314944fef00106000fe084e754ab9460e5e30670e203c00000000b0b9460e5e2c67024e754eb94006d75442b9000000004eba1c584ef94007893c598f4ab9460e5e30670e203c00000000b0b9460e5e2c6704588f4e754ebaf73e4a8067f42239460e5e40a340b08165e82e814eb94006d7544ebaf7224a8067d823d700000000a379000000004eba1c02a1674eb94004d948a37946c7c72c588f588f4e754feffff4222f0010206f00144ab9460e70e0677e4ab90000000066122f4800142f4100104fef000c4ef94007893c2f4100042e884ebaf6c2222f000420574a8067da4ab9460e70e067d22039000000002f4000084eb9400789e442b9000000004ebafe024ab9460e5e306726203c00000000b0b9460e5e2c66182f2f00082f3c460e5e384eb94007edb04fef00146000fce24fef000c4e75518f222f000c206f00104ab9460e70e067124ab9460e739a660aab40b0b9460e738e67102f4800102f41000c508f4ef94007909c2f4100042e884ebaf5ca222f000420574a8067dc4eb9400789e4508f6000fd7a598f4eb940031f282e804ebaf5a64a80672c4ab90000000066244a3946c7d8d8661c4ab9460d173a66144ab9460d1694660c2f174ebacaa02f400004588f2017588f4e75598f2f02203946c824560680c0000000222f000c0c8007efffff62084a39800000156708241f2001588f4e751039100b14cc207946c82456d1fc0008ed8075801039100b14cf2242a7422f09c08275fc18b24c020800487008002f41000c4ebaedea508f222f00044a8067b84ab90000000066b02f41000c241f588f6000ca144feffff4ab402f02222f0014206f0018b0816408241f4fef000c4e75203946c824560680c00000000c8007efffff62e44a398000001566dc1439100b14cc227946c82456d3fc0008ed801039100b14cf75822f42000ca742c08275fc18b22f2f000c4c020800487108002f4100102f48000c4ebaed56508f222f00084a8067944ab900000000668c4a3946c7d8d866844ab9460d173a6600ff7c4ab9460d16946600ff724ab9000000006600ff682f6f000400182f410014241f4fef000c6000f0a62f02ab40b0af00086406241f42804e75203946c824560680c00000000c8007efffff62e64a398000001566de1239100b14cc207946c82456a7421039100b14cfd1fc0008ed807381c0822f0173fc18b24c010800487008004ebaecae508f4a8067a84ab90000000066a02f2f000c206f000c486800064ebaf02c508f241fa3404e754e56ffc0223c000000002f02243c0000000020394004e1ec2d41ffc0b4b900000000670c202e0008242effbc4e5e4e754ab98000001267ec207c46c8245622100681c00000000c8107efffff62d6227c100b14ccaf427391b48165c812112050d1fc0008ed800c800000000057c075811239100b14cf71002242a7422f094480c28275fc18b24c021800487018002f00486effc04ebad2064fef00104a8067842240206900144a886700ff7a2239000000002039460d1684b1fc00000000661e2f012f002f2e00084e904fef000c242effbc2d400008202e00084e5e4e752f012f002f2e00084e904fef000c242effbc2d400008202e00084e5e4e7522794004e1ec2039800000122f024a806770203946c824560680c00000000c8007efffff625a207c100b14ccaf417190b280654c1010207946c82456a7421239100b14cfd1fc0008ed807180c28275fc18b2068000000c114c021800744dd1c141f00a00102800017390b4816612b3fc00000000660a71807256b280670810104280241f4e75a342b5b900000000a1674eb94004d948588f241fa37946c7c72ca3404e75af40b0af0004650e203c00000000b0b94004e1ec67024e754ab9400bc6c066f642af00044ef9400322284fefffec48d7040c4eba183020394004e1ec2079400bc6c00c800000000066044a88660a4cd7040c4fef00144e754ab98000001267ee203946c824560680c00000000c8007efffff62da71b9100b14ccaf41b28065ce203900000000a342b480650000fe223900000000a5435a81b6816500010a24680028240842a7068200000024486afff648780032a567a7672f0223c0000000004eb9400122544fef0018a343203900000000b680650000a445eaffec2f4a00104a806646487900000000a1672f2f0018ab672f022f3c400ba8764eb940012bd84fef00182039000000004a806746223900000000a34320015a80b680645ca3409081e788246f001095c0487900000000a1672f0aab672f022f3c400ba8764eb940012bd84fef0018203900000000a341b2806626a167486a000648780032486affffa7672f022f4000244eb9400122544fef00184aaf000c67944cd7040ca37946c7c72c4fef00144e75203900000000a5415a80b28054c0a37900000000710044806000fefa42806000fef44e56ff80703348d7040c226e000cb0ae0008670001a67220b2ae0008670002247431b4ae0008670002227632b6ae00086700022022394004e1eca34041f9000000002d48ffc0b089662a0c810000000057c020790000000074102d42ff9671004480b1fc000000006720b1fc000000006700008a2f092f2e00084ebabf34508f4cee040cff804e5e4e750c810000000066d84ab98000001267d0223946c824560681c00000000c8107efffff62bc73b9100b14ccaf43b68165b07231b2ae00086700025c7233b2ae0008670002147420b4ae00086694262eff9687b900000000b0b9000000006306a379000000004ebafd8e4cee040cff804e5e4e754ab9800000126700ff70207c46c8245622100681c00000000c8107efffff6200ff58247c100b14ccaf427392b4816500ff481d52ff9a2050a742d1fc0008ed801239100b14cf77aeff9a2f0377fc18b2c2824c031800487018002f00486effc02d49ff924ebacdee4fef0010226eff924a806700ff047231b2ae0008670000e27032b0ae00086600fef04ab9000000006700fee6222eff96a16742b90000000083b9000000004eb94004d9484cee040cff80a37946c7c72c588f4e5e4e75a36eff96a340b0896730203900000000222eff96c2804a81665020394004e1ec223c000000002f092f2e00082d41ffc04ebabdc4508f6000fe8e22394004e1ec243c000000002079000000002d42ffc00c810000000057c071004480b1fc000000006600fe4c6000fe684a896600fe58222eff964681c2804cee040cff8023c1000000004e5e4e75a56eff966000ff76a96eff966000ff6e76082d43ff966000ff642440206a001c4a886700fe0e222eff9683b9000000002039460d1684b1fc00000000660000861039100b14cca367a36771802f004ebad9024fef000c4a80672e48780020203c000000002f004eb94005a2b8508fa1674eb94004d948a37946c7c72c588f4cee040cff804e5e4e7548780020203c000000002f004eb94005a2b8508f60d0222eff9620390000000083b9000000004a806700fdfa538023c0000000004ebafb7e6000fdee2f004e90588fa1674eb94004d948a37946c7c72c588f60a2a367487800312d40ff924ebabc86508f24390000000073b9100b14cc202eff922d42ff964a8267000362b08265000364206effc02d48ff8e4a886700045c242800082d42ff96224143e90c112409d482207946c82456d1fc0008ed801639100b14cf2d42ff9ea742c68275fc18b24c023800d1c3d1eeff9e1628000175901d43ff9a764db682660002b84a80670002b271aeff9a226effc0b0a90008670003ba10104aaeff8e670002a02041d1fc8000666e101075b9800000027180b480670002de34012601203c00000000eb8b41f9000000002d48ffb042aeffacc4fc004422430483000000002d43ffbc2042243cb93897029489d1fc46c76dec2d42ffb8227946c82456247c100b14cf1d52ff9da7432440d3fc0008ed801d5affab142eff9d200a246effbcd5c02d4affa6c48377fc18b24c032800d3c2142effab1382a800247c100b14cf16123243a7432409c48377fc18b24c032800262effa62242d3fc100a4ece142effab13823800a743227946c82456d3fc0008ed801d52ffa9246effb02d49ffb452aeffb01d5aff9a142effa9246effb8d5c82d4affa2c48377fc18b24c0328002242142eff9ad3eeffb41382a8001639100b14cf3243a7432409c48377fc18b24c032800262effa22242d3fc100a4ece142eff9a138238004aaeffac6706116effabffe010eeff9a0c80000000006600ff082001e988224006800000184243e918322d40ff9a207946c82456a7431039100b14cf75fc18b2d1fc0008ed80c08342034c020800a742d1c01183980077fc18b21039100b14cfc0824c0308002040d1fc100a4ece4200118098005289b3eeff9a66b24aaeff8e6700019c207946c82456a7421039100b14cf327c004d77fc18b2d1fc0008ed80d1eeff9ec08234094c030800a7431182080075fc18b2206eff9e1039100b14cfc08336094c020800d1c0d1fc100a4ece10834aaeff8e670000c6207946c82456a7421039100b14cf2601d1fc000905a3d68343eeff99247c100a66f1c08275fc18b2d1c3d5c377fc18b24c020800a742119108001039100b14cfc0824c030800159108002d41ff924ebab93c222eff924aaeff8e6700faba226eff8e206900104a886700faacb1fc000000006600015a2f014ebadcd8588f4ebaf8266000fa964aaeff8e6600fd64207946c82456a7421039100b14cf77fc18b2d1fc0008ed80d1eeff9ec082744d4c03080071b00800b4806700fd364ebaf7e86000fa5871fc00ff2d40ff966000ff3242aeff8e6000fcb642aeff8e42aeff966000fcaa2041d1fc80006676101016398000000330432601eb8b2408b580340141f9000000002d48ffb022430483000000002d43ffbc4a0057c0c4fc00442042243cb938970294897100d1fc46c76dec2d42ffb844802d40ffac203c000000006000fd04207946c82456a7421039100b14cf327cffff77fc18b2d1fc0008ed80d1eeff9ec08234094c030800a7431182080075fc18b2206eff9e1039100b14cfc08336094c020800d1c0d1fc100a4ece10834aaeff8e6600fe686000ff28b3eeff8e6700f972206900104a886700fc42b1fc000000006700fc3842a72f012d41ff924e90508f222eff926000fc24a3672f014e90508f4ebaf6ce6000f93e42aeff966000fba84e56ffc0223c000000002f0220394004e1ecab422d41ffc0b4ae0008650e43f900000000b3f9000000006708242effbc4e5e4e754ab98000001267f0207c46c8245622100681c00000000c8107efffff62da227c100b14ccaf427391b48165cc12112050d1fc0008ed800c800000000057c075811239100b14cf71002242a7422f094480c28275fc18b24c021800487018002f00486effc04ebac6f84fef00104a8067882240206900184a886700ff7e2239000000002039460d1684b1fc00000000662a2f012f2e000c2f2e00082f004e904fef0010a1674eb94004d948a37946c7c72c588f242effbc4e5e4e752f012f2e000c2f2e00082f004e904fef0010a1674eb94004d948a37946c7c72c588f60d44e56ffa4227c46c8245648d71c0c24794004e1ec203c00000000761c26512d40ffc0b5fc0000000057c01239800000037100448030412239000000002408e7aab580240bb580b5fc00000000660002940a8000000000b2806700008223c00000000020110680c00000000c8007efffff626a2851a74375fc18b21039100b14cfd9fc0008ed80347c03f0267c46c76dce223c80006676c0834c020800d9c041ec18232d48ffb8206effb82248764d101075a1b68266107180206effc0b0a800086700019c101154aeffb8528147eb004445ea00200c818000667e66ca4ab98000001267000208207c46c8245620100680c00000000c8007efffff620001f073b9100b14cc2010af421639100b14cf3043b481650001f42608a742c68275fc18b206800008ed804c023800204345f008004ab9400bc6c0660002ca2f012f0aa367486effc02d41ffbc42b9000000004ebac5304fef0010222effbcb2b9000000006700035c42b90000000023c1000000004a80670001b045f900000000267900000000b7ca660002224a93670000c84ab900000000660000beb7fc0000000057c02f0b2200448128414eb94003146c42b9000000002079460d165c588fb7fc00000000670001c24a88670001944a906600018e41f9000000002d48ffb845f900000000206effb852aeffb8719891c8c0fc00182240d3fc46c7d8de203188000c80000000006704258088005888700cb08866e845ea000cb5fc0000000066c442932f0b4eb940031494b7fc0000000057c023cb00000000588f4480340c71807382b2806710a1674eb94004d948a37946c7c72c588f4cee1c0cffa44e5e4e754a34a8006700fe62207946c82456a7421039100b14cf77fc18b2d1fc0008ed80c0824c030800d1c042001180a8001039100b14cfc08242024c0308002040d1fc100a4ece1182a80020411028fff875b9800000027180b480670000ac2d41ffbc4ebab3d4222effbc528154aeffb847eb004445ea00200c818000667e6600fdca6000fdfcb280670623c0000000004ab900000000670000f873b9100b14cc203946c824561039100b14cf42b900000000b2b9000000006700012e42b90000000023c1000000002039000000004a806700ff264ab9000000006600ff1c0c800000000057c12f00240144824eb94003146c42b9000000002079460d165c2842588f42006000fed8101075b9800000037180b4806600ff4842132d41ffbc4ebab318222effbc6000ff424ab9400bc6a466d041f90000000047f9000000002d48ffb845f9000000006000fe3c4ab9000000006600fea44a8b660001402079460d165cb5fc00000000670000e64a886700fe884a906600fe8299cc264a41f9000000002d48ffb845f9000000006000fdf84cee1c0cffa442b90000000042b9000000004e5e4e752679000000004a8b67602f012f0aa367486effc02d41ffbc4ebac2644fef0010222effbcb2b900000000672042b90000000023c10000000045f9000000006000fd3a42b9000000006000fed84a80670aa543b6b9460d168467de42b90000000045f9000000006000fd122041744d41e80c1143f28a00a37900000000102900017791b483660e7180206effc0b0a80008674a10112d41ffbc23cb000000004ebaf10c222effbc6000ff624ab9400bc6a46600fda099cc264a6000ff1c4a806782a540b0b9460d16846700fcaa42b90000000045f9000000006000fca0a34b2d41ffbc23cb000000004ebaf0c2222effbc6000ff18b7fc0000000057c02f0b260044834eb94003146c42b9000000002079460d165c2843588fb5fc000000006700fe64264a4a8a6600fc9c42006000fd0a4fefffc048d74c7c4ebafac44ab90000000067104ab9460e70e06600047042b9000000004ab900000000660002c6203946c824560680c00000000c8007efffff63000108a3412039800065b8b2806700040e23c000000000263946c82456428273b9100b14cf2f41002879b9100b14cc247900000000203900000000b6b900000000670002944a8a6700035e4a80660003bc2a2f002842b90000000023c30000000023c50000000023c4000000002079460d165c4a82670000884a88670000824a90667c223c00000000207c46c7dd7643f9000000002010b0816704238088005888b1fc46c7dd8266ec207c46c7deae43f9000000002010b0816704238088005888b1fc46c7deba66ec4ebadf8223c0000000004a806700039241f90000000042902f084eb940031494a167a379000000004eb94004d948a37946c7c72c508f4cd74c7c4fef00404e75247946c82456a7451039100b14cf7dfc18b2d5fc0008ed809dce428247fad9d0c0854c060800d5c02f0e2f0a4e93508f4a806708a340220ee3a88480528e7a08ba8e66e42039800065b8a345ba80670001ea23c000000000263946c824561a39100b14cf1f45002f7d8579b9100b14cc2f4600283c7c01f1428047eafe4d0102670a73b3e800a345ba81675452804dee001e7208b28066e6af45ba84650001f64a324822660001ee203c400d301c23c0400d5f4c4a826700fe6e4ab98000001257c224790000000020390000000075024482b6b9000000006600fe62600000f02f0041ef00392f4000242f4100284ebab7e8207946c82456d1fc0008ed801a39100b14cf3245a7452c09cc857bfc18b24c056800d1c61c30e80030467c7f2a08ca86a7462e85486f0039202f00282f002f40002c4ebad4421a2f003b227946c82456d3fc00095048ca862f45003c1a11222f00302c2f003c4fef000ceda930452a088a8112851c39100b145e30462a08828513c1100b145e207946c82456d1fc0009b332a350a379100f85984eb940027e004dee001e202f002072085280b2806600fedc6000fef24ebadfc24a80670001a64ab9460e5e306600fd2a4ab9460e70e06600fd204ebae7106000fd182c2f0028bcb9000000006600fd62b8b9000000006600fd584a8a670001a04a806700fd7447f9000000004a82670a4ab900000000670001a24ab9000000006600fde82f0b4eb94003146c42b90000000023c30000000023c40000000043ef002c588f23d1000000006000fd2cbab9000000006700fe104a826700017297cb4dfad80042a77c0842a72f0b4e96528b4fef000cbc8b66eca37900000000263946c824561039100b14cf3c7c01f147eafe4d1f40002f7380428079b9100b14cc2f4100286000fdec203c400d31ae6000fe124a806740203c000000004ab9000000006600fd462f004eb94003146c42b90000000042b90000000023c30000000041ef002c588f23c40000000023d0000000006000fc84222f002842b90000000023c30000000023c10000000023c4000000006000fc64203c000000004ab9000000006600fce6609ea346bcb9000000006700fbf0a37900000000263946c82456428273b9100b14cf2f41002879b9100b14cc6000fbe64ebade284a806600fb9042b9000000006000fb8642b9000000006000fb8641f90000000042902f084eb940031494a167a379000000004eb94004d948a37946c7c72c508f6000fc6e4a806700fbd647f9000000004a826700fe6c4ab9000000006600fe624ebadb9cb5c06600fe584cd74c7c4fef00404e75a37900000000263946c824561a39100b14cf1f45002f7d8579b9100b14cc2f4600286000fc96202f00040c800000000567044efa038c41fa023020084e75400b3eac400b3e98400b7c67400b5413400b7a63000000004fefffec48ef030200082e802f4800044ebadff44cef030200084fef00144e754fefffe048ef0307000c2409d48006820008ed802e822f41000474000c8400000005660274012f4200084ebae0f20c8400000005660228004cef0307000c4fef00204efa031248794005a61c600648794005a8562239460d5c304fefffe048ef030d000c2609d68006830008ed802e832f42000476000c8100000005660276012f43000826014ebae0960c83000000056702200322004cef030d000c4fef00204e7516102f0071036100ff362600201f79034879400bb7044ef9400585e67110610000582f004879460e73864ef940078890610000124ef94003d722610000084ef94004c3746100fef841fafedc22300c004e7571104fef00186100fee44ef94003c986711061000012b48066064ef9400786ce4ef9400786fc4fefffec48ef030200082e802f4800044ebadf2c4cef030200084fef00144e752f082f01207946c8245673b9100b14cfc2fc18b2d1c173b9100b14ccd1fc0008eda271b01800221f205f4e750c820000000566344fefffe448ef0303000c2e8b2f4300044ebae7362f4000084cef0303000c4aaf00084fef001c67064ef94003a6246100ff9c24004efa01be0c8600000005662a4fefffec48ef030300042eaf005c4ebae5b62f40005c4cef030300044fef00142f006100ff682c00201f4efa01964eb94005213c4eb94007e9404ebaf89c4ef940052228564543544f5200004878ffff4878ffff4ebae52c4ef94004e4d04feffff048d703034ebadacc4a80670c4cd703034fef00104efae2824cd703034fef00102f0a4ab9460e70e04ef9400791ec4feffff048d703034ebae16e4a80670a4cd703034fef00104e754cd703034fef00104fefffe848d73c0c4ef94006d78c7c010c800000000566224feffff048d703034ebada604a80670a4cd703034fef0010600c4cd703034fef0010bc8065064ef940077b624ef940077b704efada264fefffa048d77cfc4ef9400023204eb9400339704a80671e4feffff048d703032f024ebae806588f4cd703034fef00104ef940083b7e4ef940083b062f2e00084878ffff4eb940031ee04feffff448d703022f004ebae634588f4cd703024fef000c4ef94004e1f44feffff048d703034ebae7144a804cd703034fef0010660c2279400cfeda4ef9400322ec4e7500000000000000004ef9400365500000000000004ef9400334de0000000000004ef94007982200000000000000004ef94003a53600000000000000004ef94003cda00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffff0000000000000000000000000000000000000000ffffffffffffffff31000000000000000000000000000000000000000000000000003e00000000000000000000000000000000000000000000000000ff00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000002000000000000000000000000000000000000000000030000000000000000000000000000000000000000000400000000000000000000000000000000000000000005000000000000000000000000000000000000000000ff0000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffff0000000000000000000000000000000000000000ffffffffffffffff330000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000003100000000000000000000000000000000000000000000000000ff0000000000000000000000000000000000000000000000000031000000000000000000000000000000000000000000000000003200000000000000000000000000000000000000000000000000ff00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000002000000000000000000000000000000000000000000030000000000000000000000000000000000000000000400000000000000000000000000000000000000000005000000000000000000000000000000000000000000ff000000000000000000000000000000000000000000564543004f464600465744000052455600564543544f522047454e455241544544004e4f204348414e474500ab204d414348494e453a564543544f5220bb0041525000564543544f52004300432300440044230045004600462300470047230041004123004200545950450044454e5300524f4f54005343414c00474154450041434e540053454544005350414e004f46535400524f540052505400444952004f43540056454c0050524f420048554d4e00303031205354415449430030303220464c455800434852004d494e004d414a00444f520050454e540000000000000000000000000000000000000000000000000000564543544f5220535243000000564543544f5220414d50203100564543544f5220414d502032000b0b00010030010c0c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000033203132000007000000400000050006000000020000000000000056000000010000000000000000000000000000000000000000000102030c060d050407080a090b0e0f1010000102030405060708090a0b00000d0e0f100b047e7f7f0c183f4001097f1517000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000fff05ad0ab506ad04a900000000000000000000000000000000000000000f100b047e7f7f0c183f40010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b0b000120300c0c00000000000000000000000000000000000000000000000100000000000000000400fff10000000000000000000000000300000100000000000000000000000003000003000000000000000000000000030000050000000a000000000000004c02000001000000130000004c00000074020000010000001e00000058000000000000000300000027000000c00000055e020000010000003e0000016a0000000a01000007000000450000061e0000013e0200000100000054000000b4000000040100000300000063000000b0000000040100000300000073000000b800000192010000030000007c000000800000003001000007000000860000117000000048020000010000009700001120000000500200000100000000000000000000000003000006000000a80000075c0000016402000001000000b9000000900000000000000003000000c3000000940000000401000003000000d3000000180000002701000007000000dc000000000000001801000007000000e60000011e0000004401000007000000f1000000ec00000012010000070000028c000008c00000029e02000001000000fd00000b5e00000132020000010000010a0000010e0000001001000007000001130000003f00000010010000070000011b000000fe00000010010000070000012500000c90000001fa02000001000001310000005000000030010000070000013900000e8a0000001e020000010000014700000ea80000001e020000010000015500000ec60000001e020000010000016300000ee40000001e020000010000017100000f020000001e020000010000017f00000f200000001e020000010000018d00000f3e000000ae020000010000019800000fec0000007402000001000001a500001060000000c002000001000001c2000011b8000001dc02000001000001d1000000500000003001000007000001d9000013940000000a02000001000001e30000139e0000000a02000001000001ec000013a80000000802000001000001f5000013b00000003e0200000100000168000013ee0000003e020000010000015a0000142c0000003e02000001000001ff0000146a000000d002000001000002080000153a000000d002000001000001840000160a000000d00200000100000176000016da000000d0020000010000014c000017aa000000d0020000010000013e0000187a000000d002000001000002110000194a000002e6020000010000022200001c300000068402000001000005ad0000024a00000101010000030000023000000000000000000000000300000239000022b4000000460200000100000249000022fa000000cc020000010000025a000023c6000000b00200000100000274000024760000000c02000001000002870000256000000104020000010000029500002a360000033c02000001000002a40000034b0000091a01000003000002ac00002d72000001ba02000001000002bb00002f2c0000008402000001000002ca00000c8a0000000401000003000002d4000031540000003602000001000002e1000000ac0000000401000003000002eb000000a80000000401000003000002f5000000a400000004010000030000037a00000c6600000004010000030000002100000c6e0000001801000003000003000000334a0000005a020000010000030a000000980000000401000003000003160000009c000000040100000300000322000033a40000005a020000010000032e000000a000000004010000030000033b00000162000000080100000700000347000000b00000000801000007000003520000008800000000000000030000035c0000005000000000000000030000036600000048000000000000000300000370000000440000000000000003000003770000005400000000000000030000037f000000c200000006010000070000038b000000bc00000006010000070000039e0000008c0000000000000003000003a6000000400000000000000003000003b00000004c0000000000000003000003b9000000b80000000401000007000003c100000c6a0000000401000003000003d000000c8600000004010000030000035500000c9a0000000401000003000003da00000c960000000401000003000003e500000c920000000401000003000003f000000c8e000000040100000300000000000000000000000003000007000003fc46c82456000000000000fff1000004050008ed80000000000000fff10000040e0000576200000000000000010000041d0000560a000000000000000100000425000053f80000000000000001000004310000576e0000000000000001000004400000546c00000000000000010000044e00005532000000000000000100000462000054fe00000000000000010000046f0000555200000000000000010000047c0000577a00000000000000010000048b000057880000000000000001000004f500000cd800000000000000030000049a00000d260000000000000003000004a2000056400000000000000001000004ae000056700000000000000001000004ba000056b20000000000000001000004c7000056aa0000000000000001000004d7000056b60000000000000001000004e3000056bc0000000000000001000004f000000df80000000000000003000004fd00000e6000000000000000030000050a00000eae0000000000000003000005170000019400000030110000070000052c0000017400000014110000070000053f000001880000000c1100000700000552000024820000000c12000001000005630000248e000000d2120000010000056f00002664000000d8120000010000057d0000273c0000004c120000010000058d000027880000006612000001000005a0000027ee000001e812000001000005b4000029d60000006012000001000005c800002fb00000013a12000001000005dd000030ea0000001012000001000005ee000056c6000000001000000100000600000030fa0000005a120000010000060c0000318a000001c0120000010000061300005648000000001000000100000626000033fe00000072120000010000062e00003470000000c6120000010000063e00003536000002981200000100000648000001c40000000b1100000700000658000037ce000000f2120000010000066c000038c00000010a1200000100000680000039ca0000002e1200000100000694000039f80000006412000001000006a900003a5c0000009812000001000006b600003af40000005412000001000006c400003b480000004412000001000006d100003b8c0000008012000001000006df00003c0c000000c2120000010000077000000ca00000000010000003000006e700003cce0000008212000001000006f500003d50000000fc12000001000006fd000000c800000024110000070000070900000ddc0000000010000003000007170000570200000000100000010000072400003e4c000000a4120000010000073100003ef00000002a120000010000073e00003f1a000001821200000100000751000057540000000010000001000007640000409c000007be120000010000076b00000dc00000000010000003000007790000485a0000011212000001000007810000496c00000532120000010000078900004e9e0000052a120000010000079400000cbc0000000010000003000007a2000053c80000000010000001000007b2000053e00000000010000001000007bf000054180000000010000001000007ce0000545e0000000010000001000007dc000054660000000010000001000007eb000054ea0000000010000001000007f5000054f40000000010000001000007ff000054ba00000000100000010000080d000054d600000000100000010000081d0000550c00000000100000010000082a0000551c0000000010000001000008390000557e000000001000000100000848000055be000000001000000100000857000055f4000000001000000100000864000056120000000010000001000008700000562400000000100000010000087d0000565600000000100000010000088a00005686000000001000000100000898000056c20000000010000001000008a4000056d40000000010000001000008b00000572e0000000010000001000008be00005754000000001000000100766563746f722e63006d675f6469727479006d675f666f7277617264006d675f736176656400766563746f725f67656e65726174652e706172742e30007363616c65730067656e657261746f725f70616765007372635f706167655f7265616479007372635f706167655f736f75726365007372635f7061676500666f726d6174732e370067656e657261746f725f776964676574007365636f6e646172795f77696467657400766563746f725f6d6964695f70616765006d6964695f76696577006d6964695f706167655f6275696c74007469746c65732e3200666f726d6174732e31006d6964695f6e616d6573006d6964695f6c61796f7574006d6964695f636f6e74726f6c006d6964695f6d61780066697273742e33006d6964695f62797465006d6964695f666f726d617400726f6f74732e30006d6964695f666f726d61745f30006d6964695f666f726d61745f31006d6964695f666f726d61745f32006d6964695f666f726d61745f33006d6964695f666f726d61745f34006d6964695f666f726d61745f35006d6964695f7061676531006d675f706167655f7669657700647261775f67656e657261746f725f7769646765742e706172742e3000666f726d61745f636f6e74726f6c00726f6f74732e3600666f726d61745f313000666f726d61745f3800666f726d61745f3600666f726d61745f313100666f726d61745f3900666f726d61745f37006d6964695f7365745f636f6e74726f6c006d6964695f67656e6572617465006c6f636b65642e3400766563746f725f6d6964695f79657300766563746f725f6d6964695f6b6e6f6200766563746f725f6d6964695f61737369676e2e706172742e3000766563746f725f6d6964695f61737369676e00736176655f73657474696e67730067656e65726174655f747261636b0073746167696e67006368616e67655f636f6e74726f6c0067656e657261746f725f7669657700656469745f7669657700706f6f6c5f636f6e7465787400706f6f6c5f62616e6b00706f6f6c5f7061727400706f6f6c5f747261636b00706f6f6c5f666c657800706f6f6c5f62726f77736500706f6f6c5f64697265637400706f6f6c5f73746174696300706f6f6c5f70656e64696e6700706f6f6c5f6c6162656c730068616e646c6572732e38006d675f616374697665006d675f7365636f6e64006d675f637572736f72006d675f746f70006d675f6d696e65006d675f6172705f70616765006d675f6172705f73657475705f736c6f7473006d675f7365656e006d675f6f70656e6564006d675f73686f776e006d675f6b657973006c6173745f7472616e73706f7274006c617965725f67656e0073686f776e5f62616e6b0073686f776e5f706172740073686f776e5f747261636b0042414e4b5f50545200504152545f4f46460073745f6e616d655f7265706c61790073745f6e616d650073745f726f775f747970650073745f6d61696e5f7265706c61790073745f7372635f636f6d6d6f6e0073745f63686f6f7365725f726f775f747970650073745f6e616d655f7069636b0073745f706f6f6c5f6b696e640073745f656469745f7265706c61790073745f647261775f7265706c61790073745f656e6373002e706f6f6c5f73746f636b002e6c6973745f73746f636b002e7469746c655f73746f636b002e7469746c655f756e7369676e6564002e7469746c655f706f6f6c002e7469746c655f706c61696e006d675f6c6973745f6b657973006d675f706167655f6b657973006d675f706167655f656e637300766563746f725f636f6e74726f6c5f6e616d657300766563746f725f7363616c655f6e616d657300766563746f725f636f6e74726f6c5f6d617800766563746f725f6e6578745f7365656400766563746f725f7061636b00766563746f725f756e7061636b00766563746f725f67656e657261746500766563746f725f747261636b5f656d70747900766563746f725f77726974655f70687261736500766563746f725f7369676e65645f747261636b00766563746f725f76616c69646174655f706172740073745f76616c69646174655f706172740073745f73746f636b5f76616c69646174650073745f73656c65637465640073745f6b65790073745f73746f636b5f706f6f6c5f6f70656e0073745f747970650073745f63686f6f7365725f747970650073745f61737369676e00766563746f725f64656661756c74730073745f706f6f6c5f63686f6963655f647261770073745f706f6f6c5f63686f6963655f6f70656e0073745f706f6f6c5f63686f6963655f6c6566740073745f706f6f6c5f63686f6963655f72696768740073745f706f6f6c5f6c6566740073745f706f6f6c5f72696768740073745f647261775f706167650073745f73657475705f706167650073745f6b6e6f620073745f73657475705f6b6e6f62006d675f7061676500766563746f725f6d696469006d675f706167655f6c61796572006d675f706167655f73697465006d675f6172705f7365747570006d675f747261636b5f746170006d675f6e6f74655f73657475705f64726177006d675f73746f636b5f6e6f74655f64726177006d675f6b6579006d675f6c6973745f6c61796572006d675f6b6e6f62006d675f7469636b0073745f75695f7469636b0073745f656469745f6c617965720073745f6d616368696e655f6e616d650073745f7372635f6e616d65730073745f6d61696e5f636f6d6d69740073745f7372635f636f6d6d69740073745f7372635f636f6d6d6974320073745f6e616d655f610073745f6e616d655f620073745f73657475705f6f70656e0073745f63686f6f7365725f6f70656e0073745f73657475705f726f770073745f63686f6f7365725f726f770073745f73657475705f65646974360073745f73657475705f64726177360073745f7469636b5f686f6f6b0073745f7372635f647261770073745f706f6f6c5f6f70656e0073745f6c6973745f647261770073745f706f6f6c5f7469746c650073745f76616c6964617465006d675f7461705f73697465006d675f73657475705f73697465006d6f647765726b5f73746f636b5f34303033363534385f3800000000063400000301000000b000000650000003010000024a0000067200000301000000d4000006bc0000020100001170000006fe00000301000002460000070400000301000000b40000070a00000301000002420000071000000301000000b00000071600000301000000b80000072600000201000011200000077e00000301000000900000078e0000030100000094000007a6000003010000024a000007ce00000301000000bc000007d600000301000000c2000007ec0000630100000018000007f400000301000000ce0000080a00000301000000d40000081c00006301000000ec0000088800006301000000180000089a0000030100000246000008a000000301000000b4000008a60000030100000242000008ac0000030100000094000008b200000301000000b800000eb800006301000000ed00000ed600006301000000ee00000ef400006301000000ef00000f1200006301000000f000000f3000006301000000f100001fda000003010000034a0000208c0000030100000040000022d00000110100000011000022e600001101000000220000233200006301000000ec0000236a000063010000010e00002ade0000030100000c6500002c2000000301effea1fe00002c500000030100000c6500002e0400006301000001880000317200000301000000a80000318000000301000000a40000322e0000030100000c66000032960000030100000c66000032ba0000110100000011000032fc0000030100000c66000033080000030100000c8a0000332a00001101000000220000336600000301000000a80000337400000301000000a40000338400000301000000980000338a000003010000009c000033c000000301000000a8000033ce00000301000000a4000033de0000030100000098000033e4000003010000009c0000361200000301000000a40000368c00000301000000ac0000369200000301000000a0000036a000000301000000a4000036a600000301000000a8000038e800000301000000ac000038f600000301000000a80000390c00000301000000a400003912000003010000009c0000391800000301000000a00000396c0000630100000162000039d40000630100000162000039ea000003010000009c00003a04000063010000016200003a3a000003010000009800003a40000003010000009c00003ab8000003010000009c00003aca000063010000016200003d5600006301000000c800003d5e0000030100000ddc00003d6e000003010000008800003db8000002010000570200003e0a000002010000075c00003ebc000002010000570200003ed6000003010000005000003efa000002010000570200003f34000002010000570200003fac00000301000000440000408a0000030100000048000040e80000020100005702000041000000030100000dc0000041080000030100000ddc0000412800000201000057020000417800000301000000540000417e00000301000000480000418600000301000000480000423400000301000000500000423a00000301000000540000427800006301000000c80000429800006301000000c8000042a80000020100005702000042b40000030100000dc0000042d600000301000000540000430a00000301000000540000431600000201000022b40000433e00001101000000110000436c00001101000000220000438800000301000000540000439600000301000000480000448200006301000000c20000449e00006301fffffcd5000045ac00006301000000c8000046e200000201000024760000478200006301fffffcd5000047b000006301000000c20000482600000201000024760000486000006301000000c8000048800000030100000088000048c600000201000057020000491800000201000022fa0000498200006301000000c8000049900000020100005702000049b40000020100005702000049be00006301000000c8000049ca000003010000008c00004ab6000003010000004000004ac8000003010000004c00004ad2000003010000005000004ad8000003010000004c00004b060000030100000ddc00004b1c000003010000008800004b2a0000030100000dc000004b6c000002010000409c00004b84000003010000008800004b960000030100000ddc00004b9e000003010000008800004c54000003010000008c00004c76000003010000004000004c7c000003010000004c00004c86000003010000005000004c8c000003010000004c00004ca80000030100000ddc00004cbc000003010000008800004d2c0000030100000dc000004d60000003010000004000004d66000003010000005000004d94000003010000004c00004d9c000003010000005000004da2000003010000004c00004db2000003010000005000004dca000003010000005000004de6000003010000004000004e08000003010000004800004e3c000003010000005000004e52000003010000004800004e640000030100000ddc00004e78000003010000008800004e880000030100000dc000004ebe000003010000009c00004ef20000030100000c6a00004f1c0000030100000c9600004f360000030100000c8a00004f3c0000030100000c9600004f420000030100000c9200004f480000030100000c8e00004f64000002010000318a00004fae0000030100000c8600004fcc0000030100000c9a0000503c0000030100000c6a000050bc0000030100000c96000051bc0000030100000c92000051c60000030100000c8e000052020000030100000c9a000052080000030100000c960000520e0000030100000c8e0000521a0000030100000c92000052240000030100000c6a0000524e0000030100000c6a0000528c0000030100000cbc000052a40000030100000c9a000052aa0000030100000c8a000052b00000030100000c96000052bc0000030100000c8e000052c20000030100000c92000052d00000030100000c8a000052d60000030100000c96000052dc0000030100000c92000052e20000030100000c8e000052ec0000030100000ca0000053000000030100000c6a0000530a0000030100000c6a00005336000003010000009c0000534000000301000000a00000535c0000030100000c9a000053a40000030100000c6a000053f4000002010000560a0000008c0000030100000058000002ee000063010000016a0000062800000301000000b40000063e00000301000000b80000065800006301000001940000066000000301000001820000066600006301000000800000066c00000301000000ce0000078600000301000000b40000079800000301000000b8000007ae0000110100000000000007b600000301000000bc000007e000000301000000c1000007fe000063010000000000000804000003010000018200000810000063010000011e00000bb6000063010000010e00000c22000063010000003f00000c5000006301000000fe00000cec000011010000000c00000d08000063010000005000000d36000011010000000400000de4000063010000017400000dfe000011010000000d00000e42000011010000000800000e8c000003010000009000000e9400006301000000ec00000eaa000003010000009000000ec8000003010000009000000ee6000003010000009000000f04000003010000009000000f220000030100000090000010a4000063010000018800001202000063010000017400001236000011010000000d0000131a00001101000000080000132a00006301000000500000134c0000110100000004000013ce000011010000000d000013e800001101000000080000140e00006301000001740000144c0000630100000050000019ba00006301000000fe00001b6e00006301000000fe00001d66000003010000024a00001e02000003010000024a00001fa80000030100000000000020720000030100000000000021c0000003010000000000002246000003010000000000002256000003010000000000002aaa000003010000034b00002b00000003010000039b00002bc4000003010000024a00002bd2000003010000024a00002bdc000003010000034b00002c26000003010000034b00002cd000000301000003c400002d3c000003010000034b00002f880000030100000c8a0000315600000301000000ac000031b20000030100000c66000031d20000030100000c6e000032040000030100000c6e000032f20000030100000c8a0000334c00000301000000ac000033a600000301000000ac00003476000003010000009c0000350a00000301000000a40000352e0000030100000098000035be000003010000009c0000373400006301000001c4000037e000006301000001620000393600000301000000a40000396000006301000000b0000039a8000011010000002c00003a72000003010000009c00003aa8000003010000009800003b5c0000030100000c8a00003bfa0000030100000c8a00003c8e0000030100000c8a00003cb20000030100000ca000003d320000030100000c8a00003dfe000003010000005000003f72000003010000004800003f80000003010000004400003fbe000003010000004400003fd6000011010000003f00003ff600000301000000480000400000000301000000440000401c00001101000000430000403a00000301000000480000407c0000030100000044000040da00006301000000c8000040f000000301000000880000422400000301000000500000426200000301000000540000429e0000030100000088000043820000030100000048000043cc00000301000000480000448a00006301000000bc0000477600006301000000bc0000487a0000030100000ddc0000490c0000030100000050000049a4000003010000008c00004ae40000030100000ddc00004aea000003010000008800004afc000003010000005400004b4000006301000000b800004b4a000003010000005800004c5a000003010000008800004c92000003010000008800004c9e000003010000005400004cfc00006301000000b800004d020000030100000dc000004d0c000003010000005800004d16000003010000005400004d4600006301000000b800004d50000003010000005800004d70000003010000004000004da80000030100000dc000004dd00000030100000dc000004e420000030100000ddc00004eac000003010000009c00004ec400000301000000a000004f100000030100000c8600004f160000030100000c9a00004f7000000301b9382ef800004f9000000301b9382dcc00004fba0000030100000ca0000050ac0000030100000c86000050b20000030100000c9a000051dc0000030100000ca0000051e60000030100000ca0000051f00000030100000c66000052920000030100000c66000052f20000030100000c660000534a0000030100000cbc0000537a0000030100000cbc000053860000030100000cbc00000ca40000030100000cd800000ca80000030100000d2600000cc00000030100000cd800000cda000002010000318a00000cde000002010000318a00000ce2000002010000318a00000cf4000002010000318a00000cf8000002010000318a00000cfc000002010000318a00000d280000020100003c0c00000d3e0000020100003c0c00000d540000020100003c0c00000d6a0000020100003c0c00000d800000020100003c0c00000d960000020100003c0c00000dc40000030100000df800000de00000030100000e6000000de40000030100000eae00000dfa000002010000409c00000dfe000002010000409c00000e02000002010000409c00000e14000002010000409c00000e18000002010000409c00000e1c000002010000409c00000e2e000002010000409c00000e32000002010000409c00000e36000002010000409c00000e62000002010000409c00000e66000002010000409c00000e6a000002010000409c00000e7c000002010000409c00000e80000002010000409c00000e84000002010000409c00000eb0000002010000485a00000ec6000002010000485a00000edc000002010000485a00000ef2000002010000485a00000f08000002010000485a00000f1e000002010000485a000000000000020100000e8a000000040000020100000ea8000000080000020100000ec60000000c0000020100000ee4000000100000020100000f02000000140000020100000f2000000050000011010000004a00000054000011010000004c00000058000011010000004f0000005c00001101000000510000006000001101000000540000006400001101000000560000006800001101000000580000006c000011010000005b00000070000011010000005d0000007400001101000000600000007800001101000000620000007c000011010000006500000080000002010000187a0000008400000201000017aa00000088000002010000142c0000008c00000201000013ee0000009000000201000016da00000094000002010000160a0000009800000201000013a80000009c000002010000153a000000a0000002010000139e000000a4000002010000146a000000a80000020100001394000000ac00000201000013b0000000b000000201000033a4000000b4000002010000334a000000cc0000110100000043000000d80000020100002476000000dc000002010000075c000000e000000201000022fa000000e400000201000022b40000011e000011010000006700000122000011010000006c0000012600001101000000710000012a00001101000000760000012e000011010000007b0000013200001101000000800000013600001101000000850000013a000011010000008a0000013e000011010000008f0000014200001101000000940000014600001101000000980000014a000011010000009c0000014e00001101000000a00000015200001101000000a40000015600001101000000a80000015a00001101000000ad0000015e000011010000000c0000016200001101000000b20000016600001101000000bd0000017400001101000000c60000017800001101000000ca0000017c00001101000000ce0000018000001101000000d20000018400001101000000d600000194000011010000006700000198000011010000006c0000019c0000110100000071000001a00000110100000076000001a4000011010000007b000001a80000110100000080000001ac0000110100000085000001b0000011010000008a000001b4000011010000008f000001b80000110100000094000001bc0000110100000098000001c0000011010000009c002e73796d746162002e737472746162002e7368737472746162002e72656c612e74657874002e72656c612e64617461002e627373002e726f646174612e737472312e31002e72656c612e726f6461746100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000100000006000000000000003400005796000000000000000000000004000000000000001b00000004000000400000000000007e7800000f900000000900000001000000040000000c0000002b000000010000000300000000000057cc00000f48000000000000000000000004000000000000002600000004000000400000000000008e08000001d40000000900000003000000040000000c000000310000000800000003000000000000671400000000000000000000000000000004000000000000003600000001000000320000000000006714000000db000000000000000000000001000000010000004a000000010000000200000000000067f0000001cf000000000000000000000002000000000000004500000004000000400000000000008fdc0000036c0000000900000007000000040000000c00000001000000020000000000000000000069c000000be00000000a0000007b000000040000001000000009000000030000000000000000000075a0000008d70000000000000000000000010000000000000011000000030000000000000000000093480000005200000000000000000000000100000000", + "sha256": "e79fcc82ce60afbc23c8f7fd39725721cf6d531801f3a422b8638843c70f7f07", "stockCopies": [ { "section": 1, - "offset": 22262, + "offset": 22370, "source": 1073951960, "bytes": 6, "sha256": "d6c9f1f60272197a17511f496fc19dd21ddd7df5f1f1ec0cab7a16cad60b0609" }, { "section": 1, - "offset": 22274, + "offset": 22382, "source": 1074239516, "bytes": 6, "sha256": "89c50ac3ca041fdf5647ec5ee2c3580f9a67dd79f0b5cc15ceadda4b9e9bede0" }, { "section": 1, - "offset": 22286, + "offset": 22394, "source": 1073980718, "bytes": 8, "sha256": "cae34bf50383462ed4f92d8044e3021247edb8bf69c17a9c7ead62f6edf79510" }, { "section": 1, - "offset": 22300, + "offset": 22408, "source": 1073991064, "bytes": 8, "sha256": "ed71ef874312890edc87cef7e19cd8c0f8ac4ac9b90182c2364f78d3a4567f45" }, { "section": 1, - "offset": 22248, + "offset": 22356, "source": 1073964360, "bytes": 8, "sha256": "e7935464f6aea76650f55814efc9b45785485164937f3bd5ed6f2a4d384b8d4b" diff --git a/src/engine/assets/resident-dsp.json b/src/engine/assets/resident-dsp.json index 6f77348f6..a028a47f4 100644 --- a/src/engine/assets/resident-dsp.json +++ b/src/engine/assets/resident-dsp.json @@ -335,7 +335,7 @@ ] } ], - "sourceCommit": "ebceb74f8ad1676bd8cb934b875d6f064ea2ab48", + "sourceCommit": "cd988717aa9d86a86887cd309ce0df8a2aa88511", "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 8c39fbedf..f2717af4d 100644 --- a/src/engine/assets/rom-packages.json +++ b/src/engine/assets/rom-packages.json @@ -494,7 +494,7 @@ "sha256": "fdba0ffd31b7932ceb1ded3bde9a976b6f148ae96fc73a4efc4fedf6fb692341" } ], - "sourceCommit": "ebceb74f8ad1676bd8cb934b875d6f064ea2ab48", + "sourceCommit": "cd988717aa9d86a86887cd309ce0df8a2aa88511", "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 0e1023d55..7877c6d6f 100644 --- a/src/engine/assets/usb-audio-packages.json +++ b/src/engine/assets/usb-audio-packages.json @@ -553,7 +553,7 @@ } ] }, - "sourceCommit": "ebceb74f8ad1676bd8cb934b875d6f064ea2ab48", + "sourceCommit": "cd988717aa9d86a86887cd309ce0df8a2aa88511", "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 810431651..6c2dec8c1 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": "ebceb74f8ad1676bd8cb934b875d6f064ea2ab48", + "sourceCommit": "cd988717aa9d86a86887cd309ce0df8a2aa88511", "moduleVersions": { "spectrum": "0.1.1-experimental", "modulation": "0.1.1-experimental", From 973f94865d88e270ffcc6668289c2e32b38e07c8 Mon Sep 17 00:00:00 2001 From: repeat98 Date: Sun, 8 Nov 2026 19:08:12 +0100 Subject: [PATCH 33/33] VECTOR 0.3.0: the release announcement test names VECTOR MIDI Co-Authored-By: Claude Opus 5.5 --- src/community/module-update-notifications.test.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/community/module-update-notifications.test.ts b/src/community/module-update-notifications.test.ts index 76e800c63..d356c8659 100644 --- a/src/community/module-update-notifications.test.ts +++ b/src/community/module-update-notifications.test.ts @@ -490,7 +490,7 @@ describe('new module release announcements', () => { expect(items).toHaveLength(2) expect(items.map(item => item.kind)).toEqual(['announcement', 'announcement']) expect(notificationLines(items)).toEqual(expect.arrayContaining([ - expect.objectContaining({ text: 'VECTOR is now available', href: '#module/vector' }), + expect.objectContaining({ text: 'VECTOR MIDI is now available', href: '#module/vector' }), expect.objectContaining({ text: 'FM Synth is now available', href: '#module/fm-synth' }), ])) expect(await f.items(one.session)).toEqual([])