]>
git.gir.st - Chiptunes.git/blob - foo.c
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
14 u8 t
; //implicitly cleared by mov t,n
15 u8 x
; //implicitly cleared by mov x,s
16 u8 _
; //implicitly cleared by mov tmp,*
17 #define Mh x //mod3 vars
19 //http://homepage.divms.uiowa.edu/~jones/bcd/mod.shtml
25 ADC (Mh
, zero
, carry
) //Mh only holds the carry bit
52 // tempvars: `x` and `_`
63 /*MOV X_hi==x, data_hi
68 t
= (((i1
&0x1f)<<8|i0
)*t
)>>8; //TODO
69 RET
//TODO: replace CALL/RET with IJMP?
73 u8 n
; //implicitly cleared by mov n,i2
74 u8 s
; //implicitly cleared by mov s,i3
75 u8 acc
;//implicitly cleared by mov acc,t
76 //TODO: clear i0, i1, i2, i3, zero registers
226 putchar(acc
<<4); //TODO
229 ADC (i2
, zero
, !i0
&&!i1
)
230 ADC (i3
, zero
, !i0
&&!i1
&&!i2
)