2022-02-22 20:07:19 +00:00
|
|
|
%import textio
|
2022-05-07 15:06:40 +00:00
|
|
|
%import math
|
2022-05-13 21:10:13 +00:00
|
|
|
%import string
|
2022-05-11 13:26:54 +00:00
|
|
|
%import floats
|
2022-04-03 15:07:26 +00:00
|
|
|
%zeropage dontuse
|
|
|
|
|
2022-03-13 11:52:12 +00:00
|
|
|
|
2022-03-24 23:17:41 +00:00
|
|
|
; NOTE: meant to test to virtual machine output target (use -target vitual)
|
|
|
|
|
2021-10-30 13:15:11 +00:00
|
|
|
main {
|
2022-05-11 13:50:51 +00:00
|
|
|
ubyte value = 42
|
|
|
|
|
|
|
|
sub inline_candidate() -> ubyte {
|
|
|
|
return math.sin8u(value)
|
|
|
|
}
|
|
|
|
|
|
|
|
sub add(ubyte first, ubyte second) -> ubyte {
|
|
|
|
return first + second
|
|
|
|
}
|
|
|
|
|
|
|
|
sub mul(ubyte first, ubyte second) -> ubyte {
|
|
|
|
return first * second
|
|
|
|
}
|
2022-05-05 19:24:44 +00:00
|
|
|
|
2022-05-09 13:42:58 +00:00
|
|
|
sub start() {
|
2022-05-11 13:50:51 +00:00
|
|
|
|
|
|
|
ubyte @shared value = inline_candidate()
|
2022-05-11 15:07:21 +00:00
|
|
|
|
2022-05-13 21:10:13 +00:00
|
|
|
str name = "irmen123ABC"
|
2022-05-15 14:10:58 +00:00
|
|
|
str other = "zrmen123zzz"
|
|
|
|
|
|
|
|
txt.print(name)
|
|
|
|
txt.nl()
|
|
|
|
name=other
|
|
|
|
txt.print(name)
|
|
|
|
txt.nl()
|
|
|
|
txt.nl()
|
2022-05-13 21:10:13 +00:00
|
|
|
|
|
|
|
txt.print_ub(string.upper(name))
|
|
|
|
txt.print(name)
|
|
|
|
txt.nl()
|
|
|
|
txt.print_ub(string.lower(name))
|
|
|
|
txt.print(name)
|
|
|
|
txt.nl()
|
|
|
|
|
|
|
|
uword otheraddr = &other
|
|
|
|
txt.print_ub(name!=other)
|
|
|
|
txt.spc()
|
|
|
|
txt.print_ub(name==other)
|
|
|
|
txt.nl()
|
|
|
|
txt.print_ub(name>other)
|
|
|
|
txt.spc()
|
|
|
|
txt.print_ub(name>=other)
|
|
|
|
txt.nl()
|
|
|
|
txt.print_ub(name<other)
|
|
|
|
txt.spc()
|
|
|
|
txt.print_ub(name<=other)
|
|
|
|
txt.nl()
|
|
|
|
txt.nl()
|
|
|
|
other[0]='i'
|
|
|
|
txt.print_ub(name!=other)
|
|
|
|
txt.spc()
|
|
|
|
txt.print_ub(name==other)
|
|
|
|
txt.nl()
|
|
|
|
txt.print_ub(name>other)
|
|
|
|
txt.spc()
|
|
|
|
txt.print_ub(name>=other)
|
|
|
|
txt.nl()
|
|
|
|
txt.print_ub(name<other)
|
|
|
|
txt.spc()
|
|
|
|
txt.print_ub(name<=other)
|
|
|
|
txt.nl()
|
2022-05-11 21:00:15 +00:00
|
|
|
|
2022-05-11 15:07:21 +00:00
|
|
|
|
2022-05-11 13:13:44 +00:00
|
|
|
; txt.print_ub(inline_candidate())
|
|
|
|
; txt.nl()
|
|
|
|
|
|
|
|
; ubyte value = add(3,4) |> add(10) |> mul(2) |> math.sin8u()
|
2022-05-08 11:21:34 +00:00
|
|
|
; txt.print_ub(value)
|
|
|
|
; txt.nl()
|
|
|
|
; uword wvalue = add(3,4) |> add($30) |> mkword($ea)
|
|
|
|
; txt.print_uwhex(wvalue, true)
|
|
|
|
; txt.nl()
|
2022-05-07 15:06:40 +00:00
|
|
|
|
2022-05-05 20:30:52 +00:00
|
|
|
; expected output: aaabbb aaa bbb
|
2022-04-23 00:15:51 +00:00
|
|
|
|
|
|
|
; float f1 = 1.555
|
|
|
|
; floats.print_f(floats.sin(f1))
|
|
|
|
; txt.nl()
|
|
|
|
; floats.print_f(floats.cos(f1))
|
|
|
|
; txt.nl()
|
|
|
|
; floats.print_f(floats.tan(f1))
|
|
|
|
; txt.nl()
|
|
|
|
; floats.print_f(floats.atan(f1))
|
|
|
|
; txt.nl()
|
|
|
|
; floats.print_f(floats.ln(f1))
|
|
|
|
; txt.nl()
|
|
|
|
; floats.print_f(floats.log2(f1))
|
|
|
|
; txt.nl()
|
|
|
|
; floats.print_f(floats.sqrt(f1))
|
|
|
|
; txt.nl()
|
|
|
|
; floats.print_f(floats.rad(f1))
|
|
|
|
; txt.nl()
|
|
|
|
; floats.print_f(floats.deg(f1))
|
|
|
|
; txt.nl()
|
|
|
|
; floats.print_f(floats.round(f1))
|
|
|
|
; txt.nl()
|
|
|
|
; floats.print_f(floats.floor(f1))
|
|
|
|
; txt.nl()
|
|
|
|
; floats.print_f(floats.ceil(f1))
|
|
|
|
; txt.nl()
|
|
|
|
; floats.print_f(floats.rndf())
|
|
|
|
; txt.nl()
|
2022-04-21 22:45:54 +00:00
|
|
|
; "sin", "cos", "tan", "atan",
|
|
|
|
; "ln", "log2", "sqrt", "rad",
|
|
|
|
; "deg", "round", "floor", "ceil", "rndf"
|
2022-04-10 20:31:37 +00:00
|
|
|
|
2022-04-24 22:10:12 +00:00
|
|
|
; a "pixelshader":
|
2022-05-02 18:16:45 +00:00
|
|
|
; sys.gfx_enable(0) ; enable lo res screen
|
|
|
|
; ubyte shifter
|
|
|
|
;
|
|
|
|
; repeat {
|
|
|
|
; uword xx
|
|
|
|
; uword yy = 0
|
|
|
|
; repeat 240 {
|
|
|
|
; xx = 0
|
|
|
|
; repeat 320 {
|
|
|
|
; sys.gfx_plot(xx, yy, xx*yy + shifter as ubyte)
|
|
|
|
; xx++
|
|
|
|
; }
|
|
|
|
; yy++
|
|
|
|
; }
|
|
|
|
; shifter+=4
|
|
|
|
; }
|
2022-03-04 21:26:46 +00:00
|
|
|
}
|
2022-02-17 23:40:31 +00:00
|
|
|
}
|