%output prg %launcher basic %import c64lib ~ main $c003 { A = X>2 X = Y>Y word[1000] ascending = 10 to 1009 word[100] ascending2 = "a" to "z" str ascending3 = "a" to "z" str ascending5 = "z" to "z" const byte cc = 4 + (2==9) byte cc2 = 4 - (2==10) memory byte derp = max($ffdd) memory byte derpA = abs(-2.5-0.5) memory byte derpB = max(1, 2.2, 4.4, 100) memory byte cderp = min($ffdd)+ (1/1) memory byte cderpA = min($ffdd, 10, 20, 30) memory byte cderpB = min(1, 2.2, 4.4, 100) memory byte derp2 = 2+$ffdd+round(10*sin(3)) const byte hopla=55-33 const byte hopla3=100+(-hopla) const byte hopla4 = 100-hopla const byte hopla1=main.hopla const float blerp1 = zwop / 2.22 const float zwop = -1.7014118345e+38 const float zwop2 = -1.7014118345e+38 const float blerp2 = zwop / 2.22 const byte equal = 4==4 const byte equal2 = (4+hopla)>0 if_eq goto mega if_eq { A=99 } else { A=100 } %breakpoint byte equalQQ = 4==4 const byte equalQQ2 = (4+hopla)>0 _P_carry(1) _P_irqd(0) equalQQ = foo(33) equalQQ = main.foo(33) XY = hopla*2+hopla1 A = "derp" * %000100 byte equalWW = 4==4 const byte equalWW2 = (4+hopla)>0 if (1==1) goto hopla if (1==2) return 44 if (2==2) A=4 if (3==3) X=5 else A=99 if (5==5) { A=99 %breakpoint } if(6==6) { A=sin(X) X=max(1,2,Y) X=min(1,2,Y) X=_lsl(1) X=_lsl(Y) _P_carry(0) _P_carry(Y) ; TODO error _P_carry(9.99) ; TODO error _P_irqd(0) _P_irqd(Y) ; TODO error _P_irqd(9.99) ; TODO error } else X=33 if(6>36) { A=99 } else { X=33 } main.foo(1,2,3) mega: X += 1 cool: Y=2 sub foo () -> () { byte blerp = 3 A=99 return 33 X =33 mega: cool: } some_label_def: A=44 return 1+999 %breakpoint %asminclude "derp", hopsa %asmbinary "derp", 0, 200 } %option enable_floats %option enable_floats %option enable_floats %import imported %import imported %import imported2 %import imported2