Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ audio-free; everything that list excludes lives in `packages/player/`, which has
clamping, no defaults, no range checks. Those are host policy and the hosts genuinely differ.
- Format helpers (`formatTplBeat`, `formatTplFloat`)
- Scale root/mode vocabulary
- Bar selectors + Euclidean step fill
- Bar selectors + Euclidean step fill + wavetables (`wave`, including the `harmonics` fill)
- Empty registries: generator id aliases, param key aliases, macros, gen_block dialects, body-line
dialects, host top-level statements
- Highlight classification (`classifyLine` / keyword sets)
Expand Down
1 change: 1 addition & 0 deletions conformance/001-comments-and-sharps.expected.json
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,7 @@
"scaleMode": "minor",
"deckMix": null,
"directives": [],
"waves": [],
"hostStatements": {},
"errors": []
},
Expand Down
1 change: 1 addition & 0 deletions conformance/002-track-header.expected.json
Original file line number Diff line number Diff line change
Expand Up @@ -153,6 +153,7 @@
"scaleMode": null,
"deckMix": null,
"directives": [],
"waves": [],
"hostStatements": {},
"errors": []
},
Expand Down
1 change: 1 addition & 0 deletions conformance/003-steps-and-locks.expected.json
Original file line number Diff line number Diff line change
Expand Up @@ -211,6 +211,7 @@
"scaleMode": null,
"deckMix": null,
"directives": [],
"waves": [],
"hostStatements": {},
"errors": []
},
Expand Down
1 change: 1 addition & 0 deletions conformance/004-notes.expected.json
Original file line number Diff line number Diff line change
Expand Up @@ -123,6 +123,7 @@
"scaleMode": null,
"deckMix": null,
"directives": [],
"waves": [],
"hostStatements": {},
"errors": []
},
Expand Down
1 change: 1 addition & 0 deletions conformance/005-mix-fx-voice-deck.expected.json
Original file line number Diff line number Diff line change
Expand Up @@ -133,6 +133,7 @@
"scaleMode": null,
"deckMix": null,
"directives": [],
"waves": [],
"hostStatements": {},
"errors": []
},
Expand Down
1 change: 1 addition & 0 deletions conformance/006-globals.expected.json
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,7 @@
}
},
"directives": [],
"waves": [],
"hostStatements": {},
"errors": []
},
Expand Down
1 change: 1 addition & 0 deletions conformance/007-session-song-follow.expected.json
Original file line number Diff line number Diff line change
Expand Up @@ -148,6 +148,7 @@
"scaleMode": null,
"deckMix": null,
"directives": [],
"waves": [],
"hostStatements": {},
"errors": []
},
Expand Down
1 change: 1 addition & 0 deletions conformance/008-macros-genblock.expected.json
Original file line number Diff line number Diff line change
Expand Up @@ -90,6 +90,7 @@
"scaleMode": null,
"deckMix": null,
"directives": [],
"waves": [],
"hostStatements": {},
"errors": []
},
Expand Down
1 change: 1 addition & 0 deletions conformance/009-directives.expected.json
Original file line number Diff line number Diff line change
Expand Up @@ -83,6 +83,7 @@
]
}
],
"waves": [],
"hostStatements": {},
"errors": []
},
Expand Down
1 change: 1 addition & 0 deletions conformance/010-errors.expected.json
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,7 @@
"scaleMode": null,
"deckMix": null,
"directives": [],
"waves": [],
"hostStatements": {},
"errors": [
{
Expand Down
1 change: 1 addition & 0 deletions conformance/011-golden.expected.json
Original file line number Diff line number Diff line change
Expand Up @@ -369,6 +369,7 @@
]
}
],
"waves": [],
"hostStatements": {},
"errors": []
},
Expand Down
1 change: 1 addition & 0 deletions conformance/012-gba-subset.expected.json
Original file line number Diff line number Diff line change
Expand Up @@ -208,6 +208,7 @@
"scaleMode": null,
"deckMix": null,
"directives": [],
"waves": [],
"hostStatements": {},
"errors": []
},
Expand Down
21 changes: 21 additions & 0 deletions conformance/013-wave.deck
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# Named PSG wavetables, both spellings. `organ_hex` and `organ_harm` MUST resolve to identical
# `levels` — that equality is the point of the case: the generative form is sugar over the literal
# one, never a second sound. `harmonics` is kept alongside so an emitter can write it back.
#
# One wave track only: the LR35902 has a single wave channel, and the GBA profile lists this case as
# mustAccept, so it has to stay inside that subset.
deck 1
bpm 110

wave organ_hex 8beffecbbbbaa9888776554444310014
wave organ_harm harmonics 1 0.5 0.33 0.2
wave pure harmonics 1
wave odd harmonics 1 0 0.4 0 0.2

track Bass id bass gen gameBoyDmg
gen type wave wave_shape organ_harm vol 15
note 36 0 2 v 110

track Lead id lead gen gameBoyDmg
gen type pulse duty 25 vol 12
note 60 0 1 v 100
Loading
Loading