X-Git-Url: https://git.gir.st/Chiptunes.git/blobdiff_plain/7874ed03c7243e1b828cc32c66a47d8618ff7584..e389879f63ee13e638364da4a624a1b3d137f8a5:/foo.c diff --git a/foo.c b/foo.c index f3bbac5..6c1e738 100644 --- a/foo.c +++ b/foo.c @@ -36,12 +36,26 @@ int main(void) { u8 acc; //TODO: clear all vars/registers for (;;) { - acc = 0; MOV (n, i2) LSL (n) LSL (n) - n = (n | i1>>6); - s = (i3<<7 | i2>>1); + #define tmp acc + MOV (tmp, i1) + SWAP (tmp) + ANDI (tmp, 0x0f) + LSR (tmp) + LSR (tmp) + OR (n, tmp) + #undef tmp + MOV (s, i3) + ROR (s) + ROR (s) + ANDI (s, 0x80) + #define tmp acc + MOV (tmp, i2) + LSR (tmp) + OR (s, tmp) + #undef tmp //voice 1: LDI (x, 1)