PicoMiteVGA DEMO


Author Message
stanleyella

Guru

Joined: 25/06/2022
Location: United Kingdom
Posts: 2782
Posted: 10:07pm 20 Apr 2025      

'map switching demo
Dim integer cmap(13)

'Clear the screen
MODE 2
Map reset
CLS rgb(black)

'Set up colours in the array
cmap(1)=RGB(white)
cmap(2)=RGB(black)
cmap(3)=RGB(black)
cmap(4)=RGB(black)
cmap(5)=RGB(black)
cmap(6)=RGB(black)

cmap(7)=RGB(white)
cmap(8)=RGB(black)
cmap(9)=RGB(black)
cmap(10)=RGB(black)
cmap(11)=RGB(black)
cmap(12)=RGB(black)

' Do an initial update of the Colour map to set up our colours
domap

hline=76:hy=1:mch=1
line 0,75,319,75,,RGB(white)

do'draw horizontal lines
 line 0,hline,319,hline,,map(mch)
 inc mch:if mch=7 then mch=1
 hline=hline+hy:hy=hy+0.6
loop until hline>240

xb=-149:xt=10:mch=7
do'draw vertical lines
 line xb,239,xt,75,,map(mch)
 inc mch:if mch=13 then mch=7
 xb=xb+8:xt=xt+4
loop until xb>=479

'
lr=0
do
cmap(0)=cmap(6)
 For i=5 To 0 Step -1' move horizontal lines
   cmap(i+1)=cmap(i)
 Next

 if lr<40 then
 cmap(6)=cmap(12)
 For i=11 To 6 Step -1' move vertical lines
   cmap(i+1)=cmap(i)
 Next
 else
 cmap(12)=cmap(7)
 For i=7 To 12' move vertical lines
   cmap(i)=cmap(i+1)
 Next
 end if
 inc lr:if lr>80 then lr=0

 domap
 pause 100
loop

end

Sub domap
Local integer i
Map (0)=RGB(black)
For i=1 To 12
  Map (i)=cmap(i)
Next
Map set
End Sub