Mountains avialiable in shadows of GREY.

This commit is contained in:
Pecusx
2022-11-30 18:40:06 +01:00
parent 05f3f32f00
commit 38ba45001a
9 changed files with 40 additions and 20 deletions
+2
View File
@@ -24,6 +24,8 @@ On the first screen, you can configure gameplay options:
Select options with cursor keys or a joystick.
The [TAB] key, and on the Atari 5200 console the [5] controller key change the color of the mountains.
The [RETURN] key or a joystick button moves to the next screen.
## 2. Entering the name of players and selecting the level of computer-controlled players
+2
View File
@@ -23,6 +23,8 @@ Na pierwszym ekranie możemy skonfigurować opcje rozgrywki:
Wybór opcji klawiszami kursora lub joystickiem.
Klawisz [TAB], a na konsoli Atari 5200 klawisz [5] kontrolera zmieniają kolor gór.
Klawisz [RETURN] lub przycisk Joysticka przechodzi do następnego ekranu.
## 2. Wprowadzanie nazwy graczy i wybór poziomu graczy sterowanych przez komputer
+3
View File
@@ -59,6 +59,9 @@ areYouSureText
lineClear
dta d" "
TankColoursTable .BYTE $58,$2a,$96,$ca,$7a,$ed
;TankStatusColoursTable .BYTE $54,$24,$92,$c4,$74,$e4 ; standard order
TankStatusColoursTable .BYTE $74,$c4,$24,$e4,$54,$94 ; Adam's order
;-----------
pmtableL ; addressess of the P/M memory for 6 tanks
.by <(pmgraph+$400)
+2 -5
View File
@@ -2,17 +2,14 @@
.IF *>0 ;this is a trick that prevents compiling this file alone
TankColoursTable .BYTE $58,$2a,$96,$ca,$7a,$ed
;TankStatusColoursTable .BYTE $54,$24,$92,$c4,$74,$e4 ; standard order
;TanksPMOrder .BYTE 4,3,1,5,0,2 ; 0-3 = P0-P3 , 4 = M0+M1 , 5 = M2+M3
TankStatusColoursTable .BYTE $74,$c4,$24,$e4,$54,$94 ; Adam's order
TanksPMOrder .BYTE 4,3,1,5,0,2 ; 0-3 = P0-P3 , 4 = M0+M1 , 5 = M2+M3
dliColorsBack
:10 .by $02,$00
dliColorsFore
.by $0a ; one mountains color
; .by $0e,$0c,$0c,$0b,$0b,$0a,$0a,$09,$09,$08 ; mountains colors array
; .by $08,$08,$07,$07,$07,$06,$06,$06,$06,$05
.by $0e,$0c,$0c,$0b,$0b,$0a,$0a,$09,$09,$08 ; mountains colors array
.by $08,$08,$07,$07,$07,$06,$06,$06,$06,$05
CashOptionL ;(one zero less than on the screen)
.by 0,<200,<800,<1200,<2000
CashOptionH
+17 -11
View File
@@ -26,8 +26,9 @@
;---------------------------------------------------
icl 'definitions.asm'
;---------------------------------------------------
FirstZpageVariable = $61
FirstZpageVariable = $60
.zpvar DliColorBack .byte = FirstZpageVariable
.zpvar Gradient .byte
.zpvar JoystickNumber .byte
.zpvar xdraw .word ;= $64 ;variable X for plot
.zpvar ydraw .word ;variable Y for plot (like in Atari Basic - Y=0 in upper right corner of the screen)
@@ -1180,16 +1181,18 @@ MakeTanksVisible
phy
ldy dliCounter
lda dliColorsBack,y
nop
nop
nop
.IF TARGET = 800
nop ; necessary on 800 because DLIs take less time, jitter visible without it
nop
.ENDIF
bit Gradient
bmi GoGradient
ldy #$ff
GoGradient
iny
; .IF TARGET = 800
; nop ; necessary on 800 because DLIs take less time, jitter visible without it
; nop
; .ENDIF
sta COLPF1
; lda dliColorsFore,y ; mountains colors array
lda dliColorsFore ; one mauntain color
lda dliColorsFore,y ; mountains colors array
; lda dliColorsFore ; one mauntain color
sta COLPF2
inc dliCounter
;ldy dliY
@@ -1226,8 +1229,11 @@ MakeTanksVisible
; lda dliColorsBack
lda #0
sta COLPF1
lda dliColorsFore+1
bit Gradient
bmi @+
lda dliColorsFore
sta COLPF2
@ sta COLPF2
pla
rti
.endp
BIN
View File
Binary file not shown.
BIN
View File
Binary file not shown.
+7
View File
@@ -110,7 +110,14 @@ OptionsNoRight
cmp #@kbcode._ret ; $c ;Return key
bne OptionsNoReturn
jmp OptionsFinished
OptionsNoReturn
cmp #@kbcode._tab ; Tab key
bne OptionsNoTab
lda Gradient
eor #$80
sta Gradient
OptionsNoTab
jmp OptionsMainLoop
OptionsFinished
+7 -4
View File
@@ -102,11 +102,13 @@ CheckNextTankBFG
mva #17 ExplosionRadius
jsr xmissile
; soil must fall down now! there is no other way...
jsr SecondRepeat
/* ; soil must fall down now! there is no other way...
; hide tanks or they fall down with soil
jsr SoilDown2
; it looks like force is divided by 4 here BUT"
; it looks like force is divided by 4 here BUT"
; in Flight routine force is multiplied by 2 and left
; so, we have Force divided by 2 here (not accurately)
lsr Force+1
@@ -123,8 +125,9 @@ CheckNextTankBFG
mva #15 ExplosionRadius
jsr CalculateExplosionRange0
mva #sfx_baby_missile sfx_effect
jsr xmissile.NoRangeCalc
jsr xmissile.NoRangeCalc */
SecondRepeat
; soil must fall down now! there is no other way...
; hide tanks or they fall down with soil
jsr SoilDown2
@@ -142,7 +145,7 @@ CheckNextTankBFG
jsr Flight
lda HitFlag
beq EndOfLeapping
mva #13 ExplosionRadius
mva #14 ExplosionRadius
jsr CalculateExplosionRange0
mva #sfx_baby_missile sfx_effect
jmp xmissile.NoRangeCalc