O146 sub (raster scanning) (O145 call [pic] [x] [y] [w] [h] [x-gap] [y-gap] [overscan]) ( 1 2 3 4 5 6 7 8 ) #13=[#5 / #7] (rows) (gross hack to pass several params to M144) M144 P[#1] M145 P[#2] Q[#3] M145 P[#4] Q[#5] M145 P[#6] Q[#7] (loop to produce raster scans) #20=0 G0 Y[#2-#8] X[#3] O101 while [#20 lt #13] (move to next line) G0 X[#3-#20*#7] (forward scan) G1 Y[#2+#4+#8] #20=[#20+1] O102 if [#20 lt #13] (move to next line) G0 X[#3-#20*#7] (backward scan) G1 Y[#2-#8] #20=[#20+1] O102 endif O101 endwhile O146 endsub M2