tr1p1ea wrote:
ahh ok, i think xLIB must be setting the wrong mode upon return, that will have to be updated.
How about if the programmer uses xLIBCSetup after drawing the rectangle to fix the LCD modes? ASM_SetRes_FullMode:
ld hl,$10B8
ld a,$03
call setLCDRegister ; entry mode: rgb & increment
::DCS
:"000CCCC0000000000000CCCC00000000000000CC00000000000003CC300000000003333333300000333FFF3FFFF30000EEFFF3FFFFFF3000EEFEF3FFAAAF3000EEEFF3FFAAAF3000EEFEF3FFFFFF3000EEEEFF3FFFF30000EEFF3333333330003E33EE3EE3EE330003DD33E3EE3E3E3003DD30E3EE3E3E300033003333333330"
:If 80>det([[20:Then
:Disp "NEED DOORS CSE!
:Return
:End
:Lbl S
:DelVar ZDelVar θDelVar MDelVar J{26,10→dim([A]
:Fill(0,[A]
:For(I,1,10
:2→[A](1,I
:Ans→[A](2,I
:1→[A](26,I
:Ans→[A](25,I
:End
:For(I,1,26
:1→[A](I,1
:1→[A](I,10
:End
:For(C,1,10
:For(R,1,26
:det(12,255,255,(65*([A](R,C)=0))+(24*([A](R,C)=1))+(256*([A](R,C)=2)),(5*([A](R,C)=0))+(256*([A](R,C)=2
:Output(C,R,"
:End
:End
:det(12,255,255,24,0
:For(I,2,9
:Output(I,1,I-1
:End
:det(12,0,0,65,5
:14→X:5→Y:Ans→T:14→S
:Output(5,14,"i
:Lbl A
:If M=216(J+1):Then
:J+1→J
:det(12,255,255,24,0
:For(I,1,26
:Output(J+1,I,"
:Output(10-J,I,"
:End
:If Y=10-J or Y=1+J:Then
:Output(1,1,"YOU DIED IN A WATERY GRAVE.
:If J=4:Output(2,1,"BUT WON!
:End
:det(12,0,0,65,5
:End
:M+1→M
:getKey→K
:If K=25 and Y>2+J:Y-1→Y
:If K=34 and Y<9-J:Y+1→Y
:If K=45:Goto θ
:If T≠Y:Then
:Output(T,S,"
:Y→T
:Output(Y,14,"i
:End
:If θ<1:Then
:randInt(2+J,9-J→θ
:If randInt(0,1:Then
:randInt(2+J,9-J→V
:End
:det(12,96,248,24,0
:Output(θ,1,θ-1
:If V>1
:Output(V,1,V-1
:det(12,0,0,65,5
:End
:If θ>0:Z+1→Z
:If Z=9-J:Then
:For(I,3,24
:det(12,0,0,0,0
:Output(θ,I,"
:If V>1
:Output(V,I,"
:End
:det(12,0,0,65,5
:For(I,3,24
:Output(θ,I,"
:If V>1
:Output(V,I,"
:End
:det(12,255,255,24,0
:For(I,2+J,9-J
:Output(I,1,I-1
:End
:det(12,0,0,65,5
:If Y=θ or Y=V:Then
:det(12,255,255,24,0
:Output(1,1,"YOU LOSE!
:Output(1,11,"SCORE:
:Output(1,17,int(M/(9-J
:Goto θ
:End
:DelVar ZDelVar θDelVar V
:End
:Goto A
:Lbl θ
:Pause
:ClrHome
:DelVar [A]
:det(12,300
Advertisement