Amiga Blitz2 has 2 methods for graphics displays - One is AMIGA mode (default) and the other BLITZ mode.
In AMIGA mode you set up a display via system-friendly screen and window commands.
Example 1 - plotting to a window
; Window Plot
WBStartup :NoCli :DEFTYPE .w
FindScreen 0
Window 0,356,50,200,100,$1008|$2|$4|$1,"Plot Demo",1,2
Repeat
WPlot Rnd(WindowWidth-40)+10,Rnd(WindowHeight-24)+16,Rnd(4)
ev.l=Event
If ev.l=$2 Then InnerCls
Until ev=$200
End
BLITZ mode kicks out the intution (and Workbench) and takes you into the Amigas hardware territory.
Example2 - Starfield 3D
DEFTYPE .w
#w=320 :#h=256
NPrint "Blitz Starfield 3D.." :VWait 50
BLITZ
BitMap 0,#w,#h,2
BitMap 1,#w,#h,2
Slice 0,44,2 :Use Palette 0
RGB 0,0,0,0 :RGB 1,$4,$4,$5 :RGB 2,$7,$8,$7 :RGB 3,$f,$f,$f
Use BitMap 0 :db=0
Show 0
cx=#w/2 :cy=#h/2 :stars=114
Dim x3d(stars), y3d(stars)
Dim z3d(stars), xs3d(stars), ys3d(stars)
Repeat
Use BitMap db :Cls 0
For d = 1 To stars
z3d(d) = z3d(d) - 2: If z3d(d) < 1 Then Gosub newstar
t = x3d(d) * 32: xs3d(d) = t / (z3d(d)) + cx
t = y3d(d) * 32: ys3d(d) = t / (12 + z3d(d)) + cy
If xs3d(d) < 0 OR xs3d(d) > #w Then Gosub newstar
If ys3d(d) < 0 OR ys3d(d) > #h Then Gosub newstar
If z3d(d) < 255 Then sc = 1
If z3d(d) < 140 Then sc = 2
If z3d(d) < 60 Then sc = 3
Plot xs3d(d), ys3d(d), sc
Next d
;MOVE# 2,$dff180
VWait :Show db :db=1-db
Until Joyb(0)=1
VWait :End
newstar:
z3d(d) = 150 + (Rnd(100))
x3d(d) = Int(Rnd(2000)) - 1000
y3d(d) = Int(Rnd(2000)) - 1000
ReturnI can pass you more info on the Slice/Bitmap/Screen/Window commands if thats ok with BRL.