Seedbox v0.1 + firmware, generic kit/synth, ROOT/SCALE pages
Some checks failed
check / check (push) Has been cancelled
Some checks failed
check / check (push) Has been cancelled
First commit of the repo. Contents beyond the v0.1 simulator and layout: - Full Pico 2 W firmware (firmware/app, drivers, engine port, host test). - BANK page and 404 mode A/B removed; learned pads play exactly what was learned. - 404/MiniFreak renamed to KIT/SYNTH throughout (jacks, code, sim, docs, layout labels; wiring rebuilt). - ROLL returns to page select after a re-roll; a freshly learned track turns on. - LCD contrast 66. - ROOT and SCALE pages: 21 scales, AUTO = the seed picks; global and sticky. Intended music change: the scale table grew from 8 to 21 and AUTO picks from all of them, so every seed's scale changed. Vectors regenerated with npm run vectors, plus new key-override cases. Flash record is now version 2. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
506
test/vectors/primitives.json
Normal file
506
test/vectors/primitives.json
Normal file
@@ -0,0 +1,506 @@
|
||||
{
|
||||
"note": "mix(a,b) hash, xorshift32 Rng (next, below(n), chance(p)) and genome(seed). genome keys are the JS field names.",
|
||||
"mix": [
|
||||
{
|
||||
"a": "0x00000000",
|
||||
"b": 0,
|
||||
"out": "0x6D2B79F5"
|
||||
},
|
||||
{
|
||||
"a": "0x00000001",
|
||||
"b": 0,
|
||||
"out": "0x514E28B7"
|
||||
},
|
||||
{
|
||||
"a": "0x00000000",
|
||||
"b": 1,
|
||||
"out": "0x11FD02EB"
|
||||
},
|
||||
{
|
||||
"a": "0x5EEDB0C5",
|
||||
"b": 4606284,
|
||||
"out": "0x5E77CB5F"
|
||||
},
|
||||
{
|
||||
"a": "0xFFFFFFFF",
|
||||
"b": -1,
|
||||
"out": "0xB19FEA7C"
|
||||
},
|
||||
{
|
||||
"a": "0xDEADBEEF",
|
||||
"b": -1,
|
||||
"out": "0x95CB1F45"
|
||||
},
|
||||
{
|
||||
"a": "0x00003039",
|
||||
"b": 20060,
|
||||
"out": "0x34949A58"
|
||||
}
|
||||
],
|
||||
"rng": [
|
||||
{
|
||||
"seed": "0x00000000",
|
||||
"next": [
|
||||
"0x40AEC71F",
|
||||
"0x91E00C19",
|
||||
"0x9C0FE128",
|
||||
"0x6570F69D",
|
||||
"0x0FCE02CC",
|
||||
"0x3D6B45E7",
|
||||
"0xEF266E8C",
|
||||
"0x7C080117",
|
||||
"0xF9713F42",
|
||||
"0x0DBB11CE",
|
||||
"0x9FDE27EF",
|
||||
"0x3F5EA5BE",
|
||||
"0x96CB190A",
|
||||
"0x48AE5C1F",
|
||||
"0xE6924CA9",
|
||||
"0x4FE05E6A"
|
||||
],
|
||||
"below_1_to_16": [
|
||||
0,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
0,
|
||||
1,
|
||||
6,
|
||||
3,
|
||||
8,
|
||||
0,
|
||||
6,
|
||||
2,
|
||||
7,
|
||||
3,
|
||||
13,
|
||||
4
|
||||
],
|
||||
"chance_i_times_4096": [
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
1,
|
||||
1,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
0,
|
||||
1
|
||||
]
|
||||
},
|
||||
{
|
||||
"seed": "0x00000001",
|
||||
"next": [
|
||||
"0x00042021",
|
||||
"0x04080601",
|
||||
"0x9DCCA8C5",
|
||||
"0x1255994F",
|
||||
"0x8EF917D1",
|
||||
"0x2C6F5BD0",
|
||||
"0x25B2331A",
|
||||
"0x19F91CB2",
|
||||
"0x77877125",
|
||||
"0xADD02374",
|
||||
"0x9E6002CB",
|
||||
"0x591C9737",
|
||||
"0xB4B84B8A",
|
||||
"0x04E3F8AE",
|
||||
"0x0536AFF5",
|
||||
"0xC9C495B1"
|
||||
],
|
||||
"below_1_to_16": [
|
||||
0,
|
||||
0,
|
||||
1,
|
||||
0,
|
||||
2,
|
||||
1,
|
||||
1,
|
||||
0,
|
||||
4,
|
||||
6,
|
||||
6,
|
||||
4,
|
||||
9,
|
||||
0,
|
||||
0,
|
||||
12
|
||||
],
|
||||
"chance_i_times_4096": [
|
||||
0,
|
||||
1,
|
||||
0,
|
||||
1,
|
||||
0,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
0,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
1
|
||||
]
|
||||
},
|
||||
{
|
||||
"seed": "0x5EEDB0C5",
|
||||
"next": [
|
||||
"0xF659F35F",
|
||||
"0xCE7C9F86",
|
||||
"0xEC025940",
|
||||
"0x426B5075",
|
||||
"0x24D96CA7",
|
||||
"0x20FC8821",
|
||||
"0x8EE6EB7D",
|
||||
"0x22A53599",
|
||||
"0x06DCA5D2",
|
||||
"0xDEB330C1",
|
||||
"0xADC2DE14",
|
||||
"0x36048794",
|
||||
"0x783CC90F",
|
||||
"0xC2B669A1",
|
||||
"0xFFCB8260",
|
||||
"0x7F7F71C3"
|
||||
],
|
||||
"below_1_to_16": [
|
||||
0,
|
||||
1,
|
||||
2,
|
||||
1,
|
||||
0,
|
||||
0,
|
||||
3,
|
||||
1,
|
||||
0,
|
||||
8,
|
||||
7,
|
||||
2,
|
||||
6,
|
||||
10,
|
||||
14,
|
||||
7
|
||||
],
|
||||
"chance_i_times_4096": [
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
1,
|
||||
1,
|
||||
0,
|
||||
1,
|
||||
1,
|
||||
0,
|
||||
0,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
0,
|
||||
1
|
||||
]
|
||||
},
|
||||
{
|
||||
"seed": "0xDEADBEEF",
|
||||
"next": [
|
||||
"0x477D20B7",
|
||||
"0x8E1D9142",
|
||||
"0xBA8C2458",
|
||||
"0xFEE0503B",
|
||||
"0x680E0348",
|
||||
"0xA48DB81B",
|
||||
"0x6254EA5C",
|
||||
"0x1CFDAFB3",
|
||||
"0x8878FDF6",
|
||||
"0x6F08B4B5",
|
||||
"0x4A5B273A",
|
||||
"0xF9327CE4",
|
||||
"0x637A51D3",
|
||||
"0x01448B13",
|
||||
"0x94F2C300",
|
||||
"0x5EC60C69"
|
||||
],
|
||||
"below_1_to_16": [
|
||||
0,
|
||||
1,
|
||||
2,
|
||||
3,
|
||||
2,
|
||||
3,
|
||||
2,
|
||||
0,
|
||||
4,
|
||||
4,
|
||||
3,
|
||||
11,
|
||||
5,
|
||||
0,
|
||||
8,
|
||||
5
|
||||
],
|
||||
"chance_i_times_4096": [
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
1,
|
||||
0,
|
||||
1,
|
||||
1,
|
||||
0,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
1
|
||||
]
|
||||
}
|
||||
],
|
||||
"genomes": [
|
||||
{
|
||||
"seed": "0x5EEDB0C5",
|
||||
"genome": {
|
||||
"steps": 14,
|
||||
"form": [
|
||||
0,
|
||||
1,
|
||||
0,
|
||||
1
|
||||
],
|
||||
"formName": "ABAB",
|
||||
"scale": 18,
|
||||
"root": 6,
|
||||
"dens": [
|
||||
81,
|
||||
37
|
||||
],
|
||||
"fillP": 47,
|
||||
"monoLen": 1,
|
||||
"monoRange": 2,
|
||||
"rot": 0,
|
||||
"hocket": 85,
|
||||
"bassDeg": 2,
|
||||
"prog": [
|
||||
0,
|
||||
3,
|
||||
0,
|
||||
4
|
||||
],
|
||||
"swing": 35,
|
||||
"arc": 1,
|
||||
"motifLen": 5,
|
||||
"accentCycle": 3,
|
||||
"layback": 0,
|
||||
"frame": 2,
|
||||
"freeK": 3,
|
||||
"freeRot": 5
|
||||
}
|
||||
},
|
||||
{
|
||||
"seed": "0x00000001",
|
||||
"genome": {
|
||||
"steps": 16,
|
||||
"form": [
|
||||
0,
|
||||
0,
|
||||
1,
|
||||
0
|
||||
],
|
||||
"formName": "AABA",
|
||||
"scale": 16,
|
||||
"root": 2,
|
||||
"dens": [
|
||||
80,
|
||||
95
|
||||
],
|
||||
"fillP": 110,
|
||||
"monoLen": 1,
|
||||
"monoRange": 2,
|
||||
"rot": 0,
|
||||
"hocket": 90,
|
||||
"bassDeg": 3,
|
||||
"prog": [
|
||||
0,
|
||||
5,
|
||||
0,
|
||||
5
|
||||
],
|
||||
"swing": 21,
|
||||
"arc": 1,
|
||||
"motifLen": 3,
|
||||
"accentCycle": 3,
|
||||
"layback": 0,
|
||||
"frame": 0,
|
||||
"freeK": 2,
|
||||
"freeRot": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"seed": "0xDEADBEEF",
|
||||
"genome": {
|
||||
"steps": 12,
|
||||
"form": [
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
],
|
||||
"formName": "AAAA",
|
||||
"scale": 10,
|
||||
"root": 0,
|
||||
"dens": [
|
||||
91,
|
||||
66
|
||||
],
|
||||
"fillP": 40,
|
||||
"monoLen": 0,
|
||||
"monoRange": 2,
|
||||
"rot": 1,
|
||||
"hocket": 170,
|
||||
"bassDeg": 4,
|
||||
"prog": [
|
||||
0,
|
||||
1,
|
||||
0,
|
||||
6
|
||||
],
|
||||
"swing": 50,
|
||||
"arc": 2,
|
||||
"motifLen": 4,
|
||||
"accentCycle": 5,
|
||||
"layback": 0,
|
||||
"frame": 7,
|
||||
"freeK": 4,
|
||||
"freeRot": 3
|
||||
}
|
||||
},
|
||||
{
|
||||
"seed": "0x12345678",
|
||||
"genome": {
|
||||
"steps": 16,
|
||||
"form": [
|
||||
0,
|
||||
1,
|
||||
0,
|
||||
1
|
||||
],
|
||||
"formName": "ABAB",
|
||||
"scale": 0,
|
||||
"root": 5,
|
||||
"dens": [
|
||||
50,
|
||||
83
|
||||
],
|
||||
"fillP": 111,
|
||||
"monoLen": 1,
|
||||
"monoRange": 1,
|
||||
"rot": 2,
|
||||
"hocket": 170,
|
||||
"bassDeg": 3,
|
||||
"prog": [
|
||||
0,
|
||||
0,
|
||||
5,
|
||||
4
|
||||
],
|
||||
"swing": 0,
|
||||
"arc": 1,
|
||||
"motifLen": 5,
|
||||
"accentCycle": 3,
|
||||
"layback": 0,
|
||||
"frame": 1,
|
||||
"freeK": 3,
|
||||
"freeRot": 9
|
||||
}
|
||||
},
|
||||
{
|
||||
"seed": "0xC0FFEE00",
|
||||
"genome": {
|
||||
"steps": 16,
|
||||
"form": [
|
||||
0,
|
||||
0,
|
||||
1,
|
||||
0
|
||||
],
|
||||
"formName": "AABA",
|
||||
"scale": 19,
|
||||
"root": 0,
|
||||
"dens": [
|
||||
42,
|
||||
74
|
||||
],
|
||||
"fillP": 78,
|
||||
"monoLen": 1,
|
||||
"monoRange": 2,
|
||||
"rot": 2,
|
||||
"hocket": 210,
|
||||
"bassDeg": 2,
|
||||
"prog": [
|
||||
0,
|
||||
0,
|
||||
3,
|
||||
3
|
||||
],
|
||||
"swing": 21,
|
||||
"arc": 1,
|
||||
"motifLen": 3,
|
||||
"accentCycle": 5,
|
||||
"layback": 0,
|
||||
"frame": 3,
|
||||
"freeK": 3,
|
||||
"freeRot": 12
|
||||
}
|
||||
},
|
||||
{
|
||||
"seed": "0x0BADF00D",
|
||||
"genome": {
|
||||
"steps": 16,
|
||||
"form": [
|
||||
0,
|
||||
0,
|
||||
1,
|
||||
0
|
||||
],
|
||||
"formName": "AABA",
|
||||
"scale": 9,
|
||||
"root": 6,
|
||||
"dens": [
|
||||
46,
|
||||
85
|
||||
],
|
||||
"fillP": 92,
|
||||
"monoLen": 1,
|
||||
"monoRange": 1,
|
||||
"rot": 1,
|
||||
"hocket": 90,
|
||||
"bassDeg": 2,
|
||||
"prog": [
|
||||
0,
|
||||
3,
|
||||
0,
|
||||
4
|
||||
],
|
||||
"swing": 35,
|
||||
"arc": 2,
|
||||
"motifLen": 3,
|
||||
"accentCycle": 3,
|
||||
"layback": 0,
|
||||
"frame": 3,
|
||||
"freeK": 2,
|
||||
"freeRot": 9
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
Reference in New Issue
Block a user