removed aliasing in rect and saw oscilators

This commit is contained in:
2022-03-19 14:53:21 +01:00
parent 0ade24ebf6
commit 0f82e6e711
5 changed files with 59 additions and 12 deletions

View File

@@ -1,3 +1,5 @@
import "env.memory" memory(4);
fn melody(ch: i32, t: i32, T: i32) {
let lazy riff_pos = abs(((T&31) - 16) as f32) as i32;
let lazy shift = ((1-((T>>5)&3))%2-1) * 2;
@@ -7,7 +9,7 @@ fn melody(ch: i32, t: i32, T: i32) {
let inline riff_note = 5514 >> (riff_pos % note_count * 4) & 15;
let inline melody_note = shift + octave - riff_note;
ch?1 = riff_pos * 10 + 4;
ch?1 = riff_pos * 10 + 63;
ch?3 = melody_note + 64;
let inline arp_note = shift + ((0x85>>((t/2)%3*4)) & 15) - 1;
@@ -36,12 +38,12 @@ export fn upd() {
data 80 {
i8(
0, 64, 0, 128, 0, 0x90,
0, 64, 0, 128, 0, 0x4c,
0, 80, 0, 128, 0, 0x90,
0, 80, 0, 128, 0, 0x4c,
5, 128, 0, 128, 0, 0x4c,
5, 128, 0, 128, 0, 0x4c,
0xf8, 0x85,
0x81, 0x81, 0, 105, 0, 80
0x81, 0x81, 0, 110, 0, 80
)
}