2021-05-30 13:30:34 +00:00
|
|
|
%import textio
|
2021-06-02 23:42:11 +00:00
|
|
|
%zeropage dontuse
|
2021-05-29 13:25:17 +00:00
|
|
|
|
2021-06-01 20:21:50 +00:00
|
|
|
main {
|
2021-05-15 22:14:57 +00:00
|
|
|
sub start() {
|
2021-06-12 13:48:04 +00:00
|
|
|
irq.irq()
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2021-05-15 22:14:57 +00:00
|
|
|
|
2021-06-12 13:48:04 +00:00
|
|
|
; TODO FIX SCOPE ERRORS (caused by sub with same name as block)
|
|
|
|
|
|
|
|
irq {
|
|
|
|
ubyte[32] pixels
|
|
|
|
|
|
|
|
sub irq() {
|
|
|
|
ubyte xx
|
|
|
|
; if xx > 4 {
|
|
|
|
; xx++
|
|
|
|
; } else {
|
|
|
|
xx = pixels[2] ; OK
|
|
|
|
calc(pixels[2]) ; FAIL on 'calc'
|
|
|
|
calc2(pixels) ; FAIL on 'pixels' and 'calc2'
|
|
|
|
; }
|
2021-05-29 22:25:47 +00:00
|
|
|
}
|
|
|
|
|
2021-06-12 13:48:04 +00:00
|
|
|
sub calc2(uword adr) {
|
|
|
|
adr++
|
|
|
|
}
|
2021-05-29 22:25:47 +00:00
|
|
|
|
2021-06-12 13:48:04 +00:00
|
|
|
sub calc(ubyte aa) {
|
|
|
|
aa++
|
2021-05-15 22:14:57 +00:00
|
|
|
}
|
2021-05-12 22:35:22 +00:00
|
|
|
}
|
2021-06-12 13:48:04 +00:00
|
|
|
|
|
|
|
|
|
|
|
;main {
|
|
|
|
;
|
|
|
|
;label:
|
|
|
|
; sub start() {
|
|
|
|
;
|
|
|
|
; sub2(&label)
|
|
|
|
; sub2(&label_local)
|
|
|
|
; sub2(&main.sub2.label_in_sub2)
|
|
|
|
; uword xx = &label_local
|
|
|
|
; txt.print_uwhex(xx, true)
|
|
|
|
; txt.nl()
|
|
|
|
; xx = &label
|
|
|
|
; txt.print_uwhex(xx, true)
|
|
|
|
; txt.nl()
|
|
|
|
; xx = &main.label
|
|
|
|
; txt.print_uwhex(xx, true)
|
|
|
|
; txt.nl()
|
|
|
|
; xx = &main.sub2.label_in_sub2
|
|
|
|
; txt.print_uwhex(xx, true)
|
|
|
|
; txt.nl()
|
|
|
|
; xx = main.sub2.sub2var
|
|
|
|
; txt.print_uwhex(xx, true)
|
|
|
|
; txt.nl()
|
|
|
|
; xx = &main.start.label_local
|
|
|
|
; txt.print_uwhex(xx, true)
|
|
|
|
; txt.nl()
|
|
|
|
;
|
|
|
|
;label_local:
|
|
|
|
; return
|
|
|
|
; }
|
|
|
|
;
|
|
|
|
; sub sub2(uword ad) {
|
|
|
|
; uword sub2var = 42
|
|
|
|
;
|
|
|
|
; txt.print_uwhex(ad,true)
|
|
|
|
; txt.nl()
|
|
|
|
;label_in_sub2:
|
|
|
|
; txt.nl()
|
|
|
|
; }
|
|
|
|
;}
|