Slight graphic glitches when switching screens.

This commit is contained in:
Pecusx
2022-07-15 10:18:57 +02:00
parent b12ad5efed
commit 12150a47c1
4 changed files with 24 additions and 19 deletions
+4 -4
View File
@@ -1648,12 +1648,12 @@ EndPut4x4
.endp .endp
.proc SetMainScreen .proc SetMainScreen
mva #0 dmactl ; mva #0 dmactls
VDLI DLIinterruptGraph ; jsr SetDLI for graphics (game) screen VDLI DLIinterruptGraph ; jsr SetDLI for graphics (game) screen
mwa #dl dlptrs ; issue #72 (glitches when switches) mwa #dl dlptrs ; issue #72 (glitches when switches)
lda dmactls lda #%00111110
and #$fc ; and #$fc
ora #$02 ; 2=normal, 3 = wide screen width ; ora #$02 ; 2=normal, 3 = wide screen width
sta dmactls sta dmactls
rts rts
.endp .endp
+7 -5
View File
@@ -144,7 +144,7 @@ MainGameLoop
jsr CallPurchaseForEveryTank jsr CallPurchaseForEveryTank
; issue #72 (glitches when switches) ; issue #72 (glitches when switches)
mva #0 dmactl mva #0 dmactls
jsr GetRandomWind jsr GetRandomWind
@@ -245,9 +245,11 @@ skipzeroing
inc CurrentRoundNr inc CurrentRoundNr
lda #$0 lda #$0
sta dmactl ; issue #72 sta dmactls ; issue #72
jsr RmtSongSelect jsr RmtSongSelect
mva #sfx_silencer sfx_effect mva #sfx_silencer sfx_effect
jsr PMoutofscreen
jmp MainGameLoop jmp MainGameLoop
@@ -918,9 +920,9 @@ SetunPlots
;setting up P/M graphics ;setting up P/M graphics
lda #>pmgraph lda #>pmgraph
sta pmbase sta pmbase
lda dmactls ; lda dmactls
ora #$38 ; Players and Missiles single lined ; ora #$38 ; Players and Missiles single lined
sta dmactls ; sta dmactls
lda #$03 ; P/M on lda #$03 ; P/M on
sta pmcntl sta pmcntl
lda #$00 lda #$00
BIN
View File
Binary file not shown.
+13 -10
View File
@@ -17,9 +17,10 @@
; - and I am sure maxwind, gravity, no_of_rounds in a game, speed of shell flight ; - and I am sure maxwind, gravity, no_of_rounds in a game, speed of shell flight
mwa #OptionsDL dlptrs mwa #OptionsDL dlptrs
lda dmactls ; lda dmactls
and #$fc ; and #$fc
ora #$02 ; normal screen width ; ora #$02 ; normal screen width
lda #%00110010 ; normal screen width, DL on, P/M off
sta dmactls sta dmactls
VDLI DLIinterruptText.DLIinterruptNone ; jsr SetDLI for text screen without DLIs VDLI DLIinterruptText.DLIinterruptNone ; jsr SetDLI for text screen without DLIs
@@ -241,13 +242,14 @@ AfterManualPurchase
; Rest of the data is taken from appropriate tables ; Rest of the data is taken from appropriate tables
; and during the purchase these tables are modified. ; and during the purchase these tables are modified.
mva #0 dmactl ; mva #0 dmactl
VDLI DLIinterruptText ; jsr SetDLI for text (purchase) screen VDLI DLIinterruptText ; jsr SetDLI for text (purchase) screen
jsr PMoutofScreen jsr PMoutofScreen
mwa #PurchaseDL dlptrs mwa #PurchaseDL dlptrs
lda dmactls ; lda dmactls
and #$fc ; and #$fc
ora #$02 ; normal screen width ; ora #$02 ; normal screen width
lda #%00110010 ; normal screen width, DL on, P/M off
sta dmactls sta dmactls
mwa #ListOfWeapons WeaponsListDL ;switch to the list of offensive weapons mwa #ListOfWeapons WeaponsListDL ;switch to the list of offensive weapons
@@ -969,9 +971,10 @@ NoArrowDown
.proc EnterPlayerNames .proc EnterPlayerNames
;entering names of players ;entering names of players
mwa #NameDL dlptrs mwa #NameDL dlptrs
lda dmactls ; lda dmactls
and #$fc ; and #$fc
ora #$01 ; narrow screen (32 chars) ; ora #$01 ; narrow screen (32 chars)
lda #%00110001 ; narrow screen width, DL on, P/M off
sta dmactls sta dmactls
VDLI DLIinterruptText ; jsr SetDLI for text (names) screen VDLI DLIinterruptText ; jsr SetDLI for text (names) screen