]>
git.gir.st - Chiptunes.git/blob - foo.c
0cd4bedbfd884cce991840a9a04b8605bc398e7e
3 typedef unsigned char u8
;
6 0x84, 0x9d, 0xb0, 0x69, 0x9d, 0x84, 0x69, 0x58,
7 0x75, 0x8c, 0xb0, 0x69, 0x8c, 0x75, 0x69, 0x58
9 u8 zero
; //zero register
18 #define Mh o //mod3 vars
20 void mod3(void) { //avail: t, o _
21 //http://homepage.divms.uiowa.edu/~jones/bcd/mod.shtml
25 ADC (Mh
, zero
, carry
) //Mh only holds the carry bit
32 ADD (Ml
, tmp
) //discard tmp
36 Ml
= (tmp
) + (Ml
& 0x3);
37 Ml
= (Ml
>> 2) + (Ml
& 0x3);
38 if (Ml
> 2) Ml
= Ml
- 3;
53 /*MOV X_hi==_, data_hi
58 t
= (((i1
&0x1f)<<8|i0
)*t
)>>8; //TODO
59 t
>>= o
; //NOTE: o == {1, 2, 4}
69 //TODO: clear all vars/registers
171 putchar(acc
<<4); //TODO
174 ADC (i2
, zero
, !i0
&&!i1
)
175 ADC (i3
, zero
, !i0
&&!i1
&&!i2
)