prog8/examples/test.p8

45 lines
983 B
Plaintext
Raw Normal View History

main {
2022-08-21 17:57:52 +00:00
uword global1 = 1234
2022-08-07 11:45:03 +00:00
sub start() {
2022-08-21 17:01:53 +00:00
; TODO should generate address
uword @shared slab1 = memory("slab 1", 2000, 0)
uword @shared slab2 = memory("slab 1", 2000, 0)
uword @shared slab3 = memory("other # slab", 2000, 64)
2022-08-25 20:38:53 +00:00
&uword mapped = $c000
uword @shared zz = slab1+slab2+slab3
uword @shared qq = zz
uword @shared qq2 = &zz
qq=4242 ; TODO should generate symbol not allocated address
2022-08-25 20:38:53 +00:00
mapped = 42 ; TODO wrong VMASM code generated... should generate mapped memory address
2022-08-21 17:57:52 +00:00
qq=global1
qq=other.global2
2022-08-27 11:22:38 +00:00
nested()
main.start.nested.nested2()
2022-08-25 20:38:53 +00:00
; TODO flatten nested subroutines in codegen
sub nested() {
qq++
2022-08-27 11:22:38 +00:00
txt.print("zzz")
nested2()
sub nested2() {
txt.print("zzz2")
qq++
}
2022-08-25 20:38:53 +00:00
}
}
}
2022-08-21 17:57:52 +00:00
other {
uword global2 = 9999
}