smalls and #13

This commit is contained in:
2022-05-22 21:23:56 -04:00
parent fd1a61c1f9
commit 2d8c71e9ff
5 changed files with 45 additions and 25 deletions
+14 -13
View File
@@ -8,14 +8,15 @@ by Tomasz 'Pecus' Pecko and Pawel 'pirx' Kalinowski
Warsaw, Miami 2000, 2001, 2002, 2003, 2009, 2012, 2013, 2022 Warsaw, Miami 2000, 2001, 2002, 2003, 2009, 2012, 2013, 2022
Contributors: Contributors:
Kaz - splash screen, ideas - Kaz - splash screen, ideas
Adam - font, ideas - Miker (@mikerro) - game sfx, ideas, QA
Emkay - splash screen music - Adam (@6502adam) - font, ideas, QA
Miker - game sfx, ideas - Bocianu (@bocianu) - important ideas, FujiNet implementation, QA
Bocianu - important ideas, FujiNet implementation - Emkay - splash screen music
QA: Probabilitydragon, KrzysRog, Beeblebrox, EnderDude, lopezpb, Dracon, brad-colbert
You can contact us at pecus@poczta.fm or pirx@5oft.pl You can contact us at pecus@poczta.fm or pirx@5oft.pl
home page of this project is https://github.com/pkali/scorch_src
This source code was originally compiled under [OMC65 crossassembler](https://github.com/pkali/omc65) and on 2012-06-21 translated to [mads](https://github.com/tebe6502/Mad-Assembler). This source code was originally compiled under [OMC65 crossassembler](https://github.com/pkali/omc65) and on 2012-06-21 translated to [mads](https://github.com/tebe6502/Mad-Assembler).
@@ -31,12 +32,12 @@ Game source code is split into 5+4 parts:
- display.asm - display lists and text screen definitions - display.asm - display lists and text screen definitions
- ai.asm - artificial stupidity of computer opponents - ai.asm - artificial stupidity of computer opponents
- weapons.asm - general arsenal of tankies - weapons.asm - general arsenal of tankies
- definitions.asm - label definitions, moved to make it work better with Altirra debug. - definitions.asm - label definitions, moved to make it work better with Altirra debug (it doesn't).
We were trying to use as much macros and pseudo-ops as possible. We were trying to use macros, pseudo-ops and simple graphics primitives as much as possible.
They are defined in atari.hea and macro.hea files together with many atari constants. This way it should be relatively easy to port this code to e.g. C64 This way it should be relatively easy to port this code to e.g. C64
After those N years of working on this piece of code we are sure it would be much wiser to write it in C, Action! or MadPascal but on the other hand it is so much fun to type 150 chars where all you want to have y=ax+b :) After those N years of working on this piece of code we are sure it would be much wiser to write it in C, Action! or MadPascal but on the other hand it is so much fun to type 150 chars where all you want to have y=a*x+b :)
Originally most variables were in Polish, comments were sparse, but we wanted to release this piece of code to public. Originally most variables were in Polish, comments were sparse, but we wanted to release this piece of code to public.
Because of being always short of time/energy (to finish the game) we decided it must go in 'English' to let other people work on it. Because of being always short of time/energy (to finish the game) we decided it must go in 'English' to let other people work on it.
@@ -58,7 +59,7 @@ Other unlisted minor bugs and typos fixed.
###### Build 139 ###### Build 139
2022-05-09 2022-05-09
The post midnight release with great, heavy new features: The post midnight release with great, heavy new features:
- https://github.com/pkali/scorch_src/issues/48, https://github.com/pkali/scorch_src/issues/10 - thanks to Miker we have a bunch of fresh sound effects. Not everything is perfectly implemented, but the game definitely got nicer! Thank you again Miker! - https://github.com/pkali/scorch_src/issues/48, https://github.com/pkali/scorch_src/issues/10 - thanks to @mikerro we have a bunch of fresh sound effects. Not everything is perfectly implemented, but the game definitely got nicer! Thank you again Miker!
- https://github.com/pkali/scorch_src/issues/42 New weapon - Liquid Dirt by Pecus. Try it from directly from the weapon store! - https://github.com/pkali/scorch_src/issues/42 New weapon - Liquid Dirt by Pecus. Try it from directly from the weapon store!
- (fix) https://github.com/pkali/scorch_src/issues/53 - non-existing weapons are not displayed. This makes the defense menu empty when you are poor, but it is still better than the old way with "$0" prices - (fix) https://github.com/pkali/scorch_src/issues/53 - non-existing weapons are not displayed. This makes the defense menu empty when you are poor, but it is still better than the old way with "$0" prices
- (fix) https://github.com/pkali/scorch_src/issues/49 - seppuku should always kill now - (fix) https://github.com/pkali/scorch_src/issues/49 - seppuku should always kill now
@@ -100,7 +101,7 @@ Other small fixes:
2022-04-10 2022-04-10
- https://github.com/pkali/scorch_src/issues/34 - plot pointer visible only when missile is out of the screen - https://github.com/pkali/scorch_src/issues/34 - plot pointer visible only when missile is out of the screen
- https://github.com/pkali/scorch_src/issues/33 - Poor AIs do not purchase non-working weapons - https://github.com/pkali/scorch_src/issues/33 - Poor AIs do not purchase non-working weapons
- https://github.com/pkali/scorch_src/issues/32 - Basic is turned off right on the beginning of loading. Dracon reported problems with running the game in Altirra, this was the best idea I had about it. Maybe next will be removing from zero page LZSS routine by @dmsc - https://github.com/pkali/scorch_src/issues/32 - Basic is turned off right on the beginning of loading. Dracon reported problems with running the game in Altirra, this was the best idea I had about it. Maybe next will be removing LZSS routine by @dmsc from zero page
- https://github.com/pkali/scorch_src/issues/31 - STA WSYNC removed from missile flight delay - https://github.com/pkali/scorch_src/issues/31 - STA WSYNC removed from missile flight delay
- https://github.com/pkali/scorch_src/issues/30 - player level remembered between rounds, thx @KrzysRog - https://github.com/pkali/scorch_src/issues/30 - player level remembered between rounds, thx @KrzysRog
- https://github.com/pkali/scorch_src/issues/5 - funkybomb smoke stays on the edges of the screen - https://github.com/pkali/scorch_src/issues/5 - funkybomb smoke stays on the edges of the screen
@@ -111,7 +112,7 @@ Other small fixes:
- enhancement: https://github.com/pkali/scorch_src/issues/15 Add player colors to purchase screen. Still room to improvement! - enhancement: https://github.com/pkali/scorch_src/issues/15 Add player colors to purchase screen. Still room to improvement!
- enhancement: https://github.com/pkali/scorch_src/issues/22 Redesign information panel (top 2 lines of the game screen). Now game might make some sense for a newcomer :) - enhancement: https://github.com/pkali/scorch_src/issues/22 Redesign information panel (top 2 lines of the game screen). Now game might make some sense for a newcomer :)
- change: https://github.com/pkali/scorch_src/issues/28 remove white lines around out-of-the-screen point tracker. Now it is visible and looks better! - change: https://github.com/pkali/scorch_src/issues/28 remove white lines around out-of-the-screen point tracker. Now it is visible and looks better!
- enhancement: https://github.com/pkali/scorch_src/issues/25 Missiles are too fast. Thanks @bocianu and @miker for the hint. Speed of the shell is configurable now, 5 speeds available. - enhancement: https://github.com/pkali/scorch_src/issues/25 Missiles are too fast. Thanks @bocianu and @mikerro for the hint. Speed of the shell is configurable now, 5 speeds available.
- enhancement: https://github.com/pkali/scorch_src/issues/27 Remember game settings between games. - enhancement: https://github.com/pkali/scorch_src/issues/27 Remember game settings between games.
- enhancement: https://github.com/pkali/scorch_src/issues/24 Remember player names between games. Thanks @bocianu - enhancement: https://github.com/pkali/scorch_src/issues/24 Remember player names between games. Thanks @bocianu
+23 -3
View File
@@ -45,11 +45,16 @@ regX .ds 1
regY .ds 1 regY .ds 1
; --- MAIN PROGRAM ; --- MAIN PROGRAM
org $2000 org $2000
ant dta $F0 ant dta $80
dta $42,a(scr),$02,$02,$02,$02,$02,$02,$02,$02,$02,$82,$02,$02,$02,$02,$82 dta $42,a(scr),$02,$02,$02,$02,$02,$02,$02,$02,$02,$82,$02,$02,$02,$02,$82
dta $02,$02,$02,$82,$82,$82,$02,$82,$02,$02,$02,$82,$70 dta $02,$02,$02,$82,$82,$82,$02,$82,$02,$02,$02,$82
dta $42,a(verline)
dta $41,a(ant) dta $41,a(ant)
verline
:37 dta d" "
build
scr ins "HIMARS14.scr" scr ins "HIMARS14.scr"
.ds 2*40 .ds 2*40
@@ -202,6 +207,19 @@ main
lda:cmp:req $14 ;wait 1 frame lda:cmp:req $14 ;wait 1 frame
; copy system font to $a000
ldx #0
@ lda $e000,x
sta $a000,x
;lda $e100,x ; i need digits only :]
;sta $a100,x
;lda $e200,x
;sta $a200,x
;lda $e300,x
;sta $a300,x
inx
bne @-
sei ;stop IRQ interrupts sei ;stop IRQ interrupts
mva #$00 nmien ;stop NMI interrupts mva #$00 nmien ;stop NMI interrupts
sta dmactl sta dmactl
@@ -344,8 +362,10 @@ dli7
dli11 dli11
sta regA sta regA
lda #$01 lda #>$a000 ; system font
sta wsync ;line=232 sta wsync ;line=232
sta chbase
lda #$01
sta gtictl sta gtictl
lda regA lda regA
+1
View File
@@ -234,6 +234,7 @@ skipzeroing
inc CurrentRoundNr inc CurrentRoundNr
mva #0 dmactl ; issue #72 mva #0 dmactl ; issue #72
mva #sfx_silencer sfx_effect
jmp MainGameLoop jmp MainGameLoop
BIN
View File
Binary file not shown.
+7 -9
View File
@@ -247,12 +247,9 @@ AfterManualPurchase
; there is a tank (player) number in tanknr ; there is a tank (player) number in tanknr
; we are displaying name of the player ; we are displaying name of the player
tay ; 0 to y
tay ; from 0 to y
lda tanknr lda tanknr
asl :3 asl ; 8 chars per name
asl
asl ; 8 chars per name
tax tax
NextChar03 NextChar03
lda tanksnames,x lda tanksnames,x
@@ -562,16 +559,17 @@ ChoosingItemForPurchase
cmp #$2c ; Tab cmp #$2c ; Tab
jeq ListChange jeq ListChange
cmp #$0c ; Return cmp #$0c ; Return
beq EndOfPurchase sne:rts
cmp #$e cmp #$e
beq PurchaseKeyUp beq PurchaseKeyUp
cmp #$f cmp #$f
beq PurchaseKeyDown beq PurchaseKeyDown
cmp #$21 ; Space cmp #$21 ; Space
jeq PurchaseWeaponNow
cmp #$07 ; cursor right
jeq PurchaseWeaponNow
bne ChoosingItemForPurchase bne ChoosingItemForPurchase
jmp PurchaseWeaponNow
EndOfPurchase
rts
PurchaseKeyUp PurchaseKeyUp
lda WhichList lda WhichList
beq GoUp1 beq GoUp1