X-Git-Url: https://git.gir.st/Chiptunes-pms150c.git/blobdiff_plain/cf8f745337833c44b78b38de669317ece5d7e9d1..92a5178e715d8b79f0b5e7fe9d7904d99254dff4:/bsv.c diff --git a/bsv.c b/bsv.c index c7533ef..411bede 100644 --- a/bsv.c +++ b/bsv.c @@ -55,9 +55,8 @@ void g(void){ /*T0SN FLAG.Z (0x00.0)*/ if(3&i2) {// skip if !(3&i0) SET1 (notes_ix, 3) } // ix += 8 <=> ix |= 8 IDXM (acc, notes+notes_ix) - u8 result = ((i1<<8|i0)*acc)>>8; // keep hi byte - //^TODO! https://git.gir.st/Chiptunes.git/blob/d397f89:/foo.c#l83 - //final: https://git.gir.st/Chiptunes.git/blob/f8e0502:/foo.S#l113 + + //unrolled: https://git.gir.st/Chiptunes.git/blob/f8e0502:/foo.S#l113 u8 a2 = 0; // can probably be overloaded onto mul3lo/hi u8 a1 = 0; // -"- u8 t = acc; // note input (as returned by idxm) @@ -72,7 +71,7 @@ void g(void){ skip: SR (a2) SRC (a1) } - acc = a1; + MOV (acc, a1) } void main(void){ CLEAR (i0)