%output prg %launcher basic %import c64lib ~ not_main $d000 { const float len1 = 111 ;len([1,2,3]) const float round1 = 111 ;len([1,2,3]) const float sin1 = 111 ;len([1,2,3]) float cos1 = 111 ;len([1,2,3]) } ~ main $c003 { word lsb1 = lsb($ea31) word msb1 = msb($ea31) byte lsb2 = lsb($ea31) byte msb2 = msb($ea31) word lsb3 = lsb($ea) word msb3 = msb($ea) const word len1 = len([1,2,3,wa1, wa2, ws1, all1]) const word wa1 = ceil(abs(-999.22)) const byte wa2 = abs(-99) const float wa3 = abs(-1.23456) const float wa4 = abs(-133) const float avg1 = avg([-1.23456, 99999]) const float sum1 = sum([-1.23456, 99999]) const word ws1 = floor(sum([1,2,3,4.9])) const word ws2 = ceil(avg([1,2,3,4.9])) const word ws3 = round(sum([1,2,3,4.9])) const word any1 = any([0,0,0,0,0,22,0,0]) const word any2 = any([2+sin(2.0), 2]) const word all1 = all([0,0,0,0,0,22,0,0]) const word all2 = all([0.0]) const word all3 = all([wa1, wa2, ws1, all1]) const word max1 = max([-1,-2,3,99+22]) const word min1 = min([1,2,3,99+22]) word dinges = round(not_main.len1) A = X>2 X = Y>Y byte myByteChar = "A" word myWordChar = "B" word[1000] ascending = 10 to 1009 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(-20000) 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.1)) 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 goto 64738 ; A++ derp++ cc2-- goto mega if_eq goto mega if_eq { A=99 } else { A=100 } %breakpoint byte equalQQ = 4==4 const byte equalQQ2 = (4+hopla)>0 sin(1) ; @todo error statement has no effect (returnvalue of builtin function not used) P_carry(1) P_irqd(0) equalQQ = foo(33) equalQQ = main.foo(33) XY = hopla*2+hopla1 byte equalWW = 4==4 const byte equalWW2 = (4+hopla)>0 if (1==1) goto cool 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(12) X=lsl(Y) P_carry(0) P_carry(1) P_carry(1-1) P_irqd(0) P_irqd(1) } else X=33 X= extra233.thingy() if(6>36) { A=99 } else { X=33 } main.foo(1,2,3) sub start () -> () { word dinges = 0 word blerp1 =99 dinges=blerp1 A=blerp1 return } mega: X += 1 cool: Y=2 sub foo () -> () { byte blerp = 3 A=99 ; return 33 return ultrafoo() X =33 mega: cool: sub ultrafoo() -> () { X= extra233.thingy() ;return 33 return goto main.mega } } some_label_def: A=44 ;return 1+999 return %breakpoint %asminclude "derp", hopsa %asmbinary "derp", 0, 200 } %import imported %import imported %import imported2 %import imported2