prog8/examples/test.p8

83 lines
1.7 KiB
Plaintext
Raw Normal View History

%import textio
2022-03-13 11:52:12 +00:00
; NOTE: meant to test to virtual machine output target (use -target vitual)
2021-10-30 13:15:11 +00:00
main {
sub start() {
2022-03-28 23:16:26 +00:00
txt.clear_screen()
txt.print("Welcome to a prog8 pixel shader :-)\n")
uword ww = 0
ubyte bc
uword wc
for bc in "irmen" {
txt.chrout(bc)
ww++
}
txt.print_uw(ww) ; 5
2022-03-27 23:49:43 +00:00
txt.nl()
2022-03-28 23:16:26 +00:00
for bc in [10,11,12] {
txt.print_ub(bc)
txt.spc()
ww++
}
txt.print_uw(ww) ; 8
2022-03-27 23:49:43 +00:00
txt.nl()
2022-03-30 19:44:48 +00:00
txt.nl()
2022-03-27 22:18:56 +00:00
2022-03-30 19:44:48 +00:00
for wc in [4097,8193,16385] {
2022-03-28 23:16:26 +00:00
txt.print_uw(wc)
txt.spc()
ww++
}
txt.print_uw(ww) ; 11
txt.nl()
2022-03-27 19:59:46 +00:00
2022-03-30 19:44:48 +00:00
for bc in 10 to 20 step 3 {
; 10,13,16,19
txt.print_ub(bc)
txt.spc()
ww++
}
txt.print_uw(ww) ; 15
txt.nl()
for bc in 30 to 10 step -4 {
; 30,26,22,18,14,10,6,2
txt.print_ub(bc)
txt.spc()
ww++
}
txt.print_uw(ww) ; 23
txt.nl()
2022-03-28 23:16:26 +00:00
sys.exit(99)
2022-03-27 19:59:46 +00:00
2022-03-27 12:23:01 +00:00
2022-03-28 21:49:44 +00:00
; the "pixelshader":
2022-03-27 23:49:43 +00:00
; syscall1(8, 0) ; enable lo res creen
; ubyte shifter
;
; shifter >>= 1
;
; repeat {
; uword xx
; uword yy = 0
; repeat 240 {
; xx = 0
; repeat 320 {
; syscall3(10, xx, yy, xx*yy + shifter) ; plot pixel
; xx++
; }
; yy++
; }
; shifter+=4
;
; txt.print_ub(shifter)
; txt.nl()
; }
2022-03-04 21:26:46 +00:00
}
2022-02-17 23:40:31 +00:00
}