From 7f85a7ed6a32f8b7e7a62da8baee49426420d785 Mon Sep 17 00:00:00 2001 From: Pecusx Date: Mon, 22 Aug 2022 19:27:02 +0200 Subject: [PATCH 1/5] Walls added! #50 And Battery activation fix :) --- constants.asm | 2 +- definitions.asm | 2 +- display.asm | 1 + scorch.asm | 22 +++++++++++++++++++-- scorch.xex | Bin 50651 -> 50858 bytes textproc.asm | 4 +++- variables.asm | 5 +++-- weapons.asm | 50 +++++++++++++++++++++++++++++++++++++++++++++++- 8 files changed, 78 insertions(+), 8 deletions(-) diff --git a/constants.asm b/constants.asm index f6455cb..351fa01 100644 --- a/constants.asm +++ b/constants.asm @@ -4,7 +4,7 @@ ; initial values for some variables initialvaluesStart -I_OptionsTable .by 0,1,2,2,0,1,3,2 +I_OptionsTable .by 0,1,2,2,0,1,3,2,0 I_RoundsInTheGame .by 10 ;how many rounds in the current game I_seppukuVal .by 75 I_mountainDeltaH .by 3 diff --git a/definitions.asm b/definitions.asm index 2508f10..6c8b761 100644 --- a/definitions.asm +++ b/definitions.asm @@ -17,7 +17,7 @@ display = $1010 ;screen takes $2K due to clearing routine margin = 40 ;mountain drawing Y variable margin MaxPlayers = 6 -maxOptions = 8 ;number of all options +maxOptions = 9 ;number of all options PMOffsetX = $2C ; P/M to graphics offset PMOffsetY = $23 ; P/M to graphics offset napalmRadius = 10 diff --git a/display.asm b/display.asm index 5fe33e8..735cf65 100644 --- a/display.asm +++ b/display.asm @@ -17,6 +17,7 @@ OptionsHere dta d"Missiles : slug slow norm fast hare " dta d"Seppuku : nevr rare norm oftn alws " dta d"Mountains: NL BE CZ CH NP " + dta d"Walls : none wrap bump boxy rand " OptionsScreenEnd ;----------------------------------------------- ListOfWeapons diff --git a/scorch.asm b/scorch.asm index 86927a5..089eb80 100644 --- a/scorch.asm +++ b/scorch.asm @@ -219,7 +219,7 @@ FirstSTART START ; Startup sequence jsr Initialize - + ;jsr GameOverScreen ; only for test !!! lda #song_main_menu @@ -242,6 +242,7 @@ START ; for the round #1 shooting sequence is random MainGameLoop + jsr SetWallsType ; first set default barrel lengths (fix for Long Schlong activation :) ) ; we must do it before purchase/activate ldx #(MaxPlayers-1) @@ -1508,7 +1509,24 @@ nextishigher rts .endp - +;-------------------------------------------------- +.proc SetWallsType +;-------------------------------------------------- + mva #0 WallsType + lda OptionsTable+8 + cmp #4 + beq SetRandomWalls + lsr + ror WallsType + lsr + ror WallsType + rts +SetRandomWalls + lda random + and #%11000000 + sta WallsType + rts +.endp ;-------------------------------------------------- .proc GetKey ; waits for pressing a key and returns pressed value in A ; when [ESC] is pressed, escFlag is set to 1 diff --git a/scorch.xex b/scorch.xex index 4f3a1900f0dedd6813a9f137903d875f10b43b34..7d77acd791e9bace04327d0f2aa6f424981aed60 100644 GIT binary patch delta 16562 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 J|6I`he*hv5N!b7Z delta 16589 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 Ose9D()~t6|#r_`;<@5~z diff --git a/textproc.asm b/textproc.asm index 816d289..f80b616 100644 --- a/textproc.asm +++ b/textproc.asm @@ -204,7 +204,7 @@ OptionSetLoop ; next option adw temp #40 ;jump to next line inc:lda temp2 - cmp #maxoptions ;number of options + cmp #maxOptions ;number of options bne OptionsSetMainLoop ;inversing the first few chars of the selected line (OptionsY) @@ -853,7 +853,9 @@ invSelectDef ; if activate battery, we do it differently mva #sfx_battery sfx_effect mva #99 Energy,x + phy jsr MaxForceCalculate + ply jmp DecreaseDefensive ; bypass activation NotBattery cmp #ind_Long_Barrel____ diff --git a/variables.asm b/variables.asm index 5ed36e3..59ef84c 100644 --- a/variables.asm +++ b/variables.asm @@ -29,7 +29,7 @@ skilltable ; computer controlled players' skills (1-8), 0 - human (no cleaning ;---------------------------------------------------- variablesToInitialize ;Options DO NOT ZERO ON RESTART GAME - ticket #27 -OptionsTable .by 0,1,2,2,0,1,3,2 +OptionsTable .by 0,1,2,2,0,1,3,2,0 RoundsInTheGame .by 10 ;how many rounds in the current game seppukuVal .by 75 mountainDeltaH .by 3 @@ -138,7 +138,8 @@ MaxWind .ds 1 ; WindOrientation .DS 1 ;(0-right,1-left) ;---------------------------------------------------- ;Counter .DS 1 ;temporary Counter for outside loops -;HitFlag .DS 1 ;$ff when missile hit ground, $00 when no hit, $01-$06 tank index+1 when hit tank +;HitFlag .DS 1 ;$ff when missile hit ground, $00 when no hit, $01-$06 tank index+1 when hit tank +WallsType .ds 1 ; bits 6 and 7: 00 - none, 01 - bump, 10 - wrap, 11 - boxy ;---------------------------------------------------- xtankstableL ;X positions of tanks (lower left point) .DS [MaxPlayers] diff --git a/weapons.asm b/weapons.asm index faa1b4b..7042470 100644 --- a/weapons.asm +++ b/weapons.asm @@ -1798,6 +1798,12 @@ NoWind mwa ytraj+1 ybyte jsr draw ;key + bit LaserFlag + bmi LaserNoWalls + ; Check for walls + jsr MakeWalls + ; +LaserNoWalls mwa xtraj+1 XtrajOld+1 mwa ytraj+1 YtrajOld+1 @@ -2333,7 +2339,49 @@ MIRValreadyAll ;jsr drawtanks rts .endp - +; ------------------------------------------------- +.proc MakeWalls +; ------------------------------------------------- + bit WallsType ; ; bits 6 and 7: 00 - none, 01 - bump, 10 - wrap, 11 - boxy + bpl WrapAndNone + bvc MakeBump + ; top bounce + bit ytraj+2 + bpl NoOnTop + sec + .rept 4 + lda #$00 + sbc vy+# + sta vy+# + .endr +NoOnTop +MakeBump + cpw xtraj+1 #screenwidth + bcc OnScreen + ; inverse vx (bouncing wall) + sec + .rept 4 + lda #$00 + sbc vx+# + sta vx+# + .endr + rts +WrapAndNone + bvc NoWall + cpw xtraj+1 #screenwidth + bcc OnScreen + ; (wrapping wall) + bit xtraj+2 + bmi LeftWrap +RightWrap + sbw xtraj+1 #screenwidth + rts +LeftWrap + adw xtraj+1 #screenwidth +OnScreen +NoWall + rts +.endp ; ------------------------------------------------- .proc WhiteFlag ; ------------------------------------------------- From 8052add0ab2277304c0944dcfc5e3aab688ad94a Mon Sep 17 00:00:00 2001 From: Pecusx Date: Mon, 22 Aug 2022 19:48:46 +0200 Subject: [PATCH 2/5] Veeeeeery long tank names fix --- scorch.xex | Bin 50858 -> 50859 bytes textproc.asm | 1 + 2 files changed, 1 insertion(+) diff --git a/scorch.xex b/scorch.xex index 7d77acd791e9bace04327d0f2aa6f424981aed60..5c625afd067e5848ea0ad446c45765cf8b464648 100644 GIT binary patch delta 12646 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 delta 12591 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 kiCMW%+7`dM<(u>A#zlq4x&;S4c diff --git a/textproc.asm b/textproc.asm index f80b616..07b5289 100644 --- a/textproc.asm +++ b/textproc.asm @@ -1107,6 +1107,7 @@ LastNameChar lda #$80 ; place cursor on the end sta NameAdr,y + dey sty PositionInName From 662bc1304ae73992abd284262b8bdbc83e2ec47b Mon Sep 17 00:00:00 2001 From: Pecusx Date: Mon, 22 Aug 2022 20:25:41 +0200 Subject: [PATCH 3/5] v 1.11 Manuals update --- MANUAL_EN.md | 9 ++++++++- MANUAL_PL.md | 7 +++++++ scorch.asm | 2 +- scorch.xex | Bin 50859 -> 50859 bytes 4 files changed, 16 insertions(+), 2 deletions(-) diff --git a/MANUAL_EN.md b/MANUAL_EN.md index 9afad72..b0dfaf9 100644 --- a/MANUAL_EN.md +++ b/MANUAL_EN.md @@ -12,8 +12,15 @@ On the first screen, you can configure gameplay options: * number of rounds in a game * missile speed (does not affect the flight path - only changes the apparent missile speed - does not change anything in the gameplay itself) * frequency of suicides :) - if for a number of turns the game has not recorded hits (tanks are constantly shooting inaccurately), after one of such misses a tank commits suicide - here you determine how long they can "shooting for the stars" :) - if only people play the optimal setting is "norm", in the case of computer-controlled players ... you choose. - * The height (and undulation) of the mountains from almost flat (NL - Kingdom of the Netherlands), to soaring and high (NP - Federal Democratic Republic of Nepal) +* The height (and undulation) of the mountains from almost flat (NL - Kingdom of the Netherlands), to soaring and high (NP - Federal Democratic Republic of Nepal) +* the way the walls (edges of the screen) work: + 1. none - projectiles that flew off the screen do not return + 2. wrap - the screen "wraps" and projectiles that flew to the right appear on the left side (and vice versa) + 3. bump - the right and left walls deflect projectiles that want to fly through them + 4. boxy - just like bump, except that the "ceiling" also reflects projectiles + 5. rand - at the beginning of each round, one of the above 4 ways the walls work is drawn. +Translated with www.DeepL.com/Translator (free version) Select options with cursor keys or joystick. The [RETURN] key or Joystick button moves to the next screen. diff --git a/MANUAL_PL.md b/MANUAL_PL.md index 3af3685..c0c6e81 100644 --- a/MANUAL_PL.md +++ b/MANUAL_PL.md @@ -12,6 +12,13 @@ Na pierwszym ekranie możemy skonfigurować opcje rozgrywwki: * szybkość lotu pocisków (nie ma wpływu na tor lotu - zmienia jedynie widoczną prędkość rysowania - nie zmienia nic w samej rozgrywce) * częstotliwość samobójstw :) - jeśli przez ileś tur gra nie odnotowała trafień (czołgi ciągle strzelają niecelnie) jeden z takich pudłujących czołgów popełnia samobójstwo - tu określamy jak długo mogą “strzelać w próżnię” :) - jeśli grają tylko ludzie optymalne ustawienie to “norm”, w przypadku graczy sterowanych przez komputer… wedle uznania. * wysokość (i pofałdowanie) gór od prawie płaskich (NL - Królestwo Niderlandów), do strzelistych i wysokich (NP - Federalna Demokratyczna Republika Nepalu) +* sposób działania ścian (krawędzi ekranu): + 1. none - pociski, które wyleciały poza ekran nie wracają + 2. wrap - ekran "zawija się" i pociski, które wyleciały w prawo pojawiają się z lewej strony (i odwrotnie) + 3. bump - prawa i lewa ściana odbijają pociski, które chcą przez nie przelecieć + 4. boxy - tak jak bump, tyle że "sufit" także odbija pociski + 5. rand - na początku każdej rundy losowany jest jeden z 4 powyższych sposobów działania ścian + Wybór opcji klawiszami kursora lub joystickiem. diff --git a/scorch.asm b/scorch.asm index 089eb80..341379a 100644 --- a/scorch.asm +++ b/scorch.asm @@ -36,7 +36,7 @@ ;we decided it must go in 'English' to let other people work on it .macro build - dta d"1.10" ; number of this build (3 bytes) + dta d"1.11" ; number of this build (3 bytes) .endm icl 'definitions.asm' diff --git a/scorch.xex b/scorch.xex index 5c625afd067e5848ea0ad446c45765cf8b464648..bb5c044e753c3b478b89085ad6eb0284dde9f1b7 100644 GIT binary patch delta 16 YcmZ48%e=amdBY1oM#0T5{SK7_06vBXk^lez delta 16 YcmZ48%e=amdBY1oMuE*Q{SK7_06u^RkpKVy From 90eff39dda2f6d8a059553c95566ecb5cc0f37eb Mon Sep 17 00:00:00 2001 From: Pecusx Date: Mon, 22 Aug 2022 20:30:24 +0200 Subject: [PATCH 4/5] Manuals update --- MANUAL_EN.md | 6 +++--- MANUAL_PL.md | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/MANUAL_EN.md b/MANUAL_EN.md index b0dfaf9..0cdc748 100644 --- a/MANUAL_EN.md +++ b/MANUAL_EN.md @@ -133,16 +133,16 @@ And here are the `ExplosionRadius` values for each weapon: | Baby Missile | 11 | | Missile | 17 | | Baby Nuke | 25 | -| Nuke | 31 | +| Nuke | 30 | | LeapFrog| 17 15 13 | | Funky Bomb | 21 11 (* 5) | | MIRV | 17 (* 5) | -| Death's Head | 31 (* 5) | +| Death's Head | 30 (* 5) | | Napalm | x 40 (this weapon is different and the distance from the center is not determined, simply any tank within range of the flames loses 40 units of energy - the ExplosionRadius variable is not used) | | Hot Napalm | x 80 (the same principle as in Napalm) | | Baby Roller | 11 | | Roller | 21 | -| Heavy Roller | 31 | +| Heavy Roller | 30 | | Riot Charge | 31 | | Riot Blast | 0 (in reality - 61 but with these weapons it is not taken into account when counting energy loss only the width of the ground to fall) | | Riot Bomb | 17 | diff --git a/MANUAL_PL.md b/MANUAL_PL.md index c0c6e81..dbcb154 100644 --- a/MANUAL_PL.md +++ b/MANUAL_PL.md @@ -129,16 +129,16 @@ A oto wartości promienia rażenia (ExplosionRadius) dla poszczególnych broni: | Baby Missile | 11 | | Missile | 17 | | Baby Nuke | 25 | -| Nuke | 31 | +| Nuke | 30 | | LeapFrog| 17 15 13 | | Funky Bomb | 21 11 (* 5) | | MIRV | 17 (* 5) | -| Death's Head | 31 (* 5) | +| Death's Head | 30 (* 5) | | Napalm | x 40 (ta broń jest inna i nie jest wyznaczana odległość od centrum, po prostu każdy czołg znajdujący się w zasięgu płomieni traci 40 jednostek energii - zmienna ExplosionRadius nie jest używana) | | Hot Napalm | x 80 (zasada taka jak w Napalm) | | Baby Roller | 11 | | Roller | 21 | -| Heavy Roller | 31 | +| Heavy Roller | 30 | | Riot Charge | 31 | | Riot Blast | 0 (tak na prawdę - 61 ale przy tych broniach nie jest brana pod uwagę przy liczeniu ubytku energii tylko szerokości gruntu do opadnięcia) | | Riot Bomb | 17 | From 42187910681125c515262290534c4c0195012331 Mon Sep 17 00:00:00 2001 From: pkali Date: Mon, 22 Aug 2022 15:05:21 -0400 Subject: [PATCH 5/5] readme updt --- README.md | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/README.md b/README.md index 754558f..06eabac 100644 --- a/README.md +++ b/README.md @@ -48,6 +48,17 @@ With the advent of [fujinet](https://fujinet.online/) we are thinking about maki ## Changes: +###### Version 1.11 +2022-08-22 + +A release lollapalooza. + +The silliness indicator crashed. What are we doing? + +Changes: +* A very silly buffer overflow bug fixed - it allowed for infinite (well... to the point) lengths of tank names, or rather for overwriting code with arbitrary values. +* Gamefield walls added https://github.com/pkali/scorch_src/issues/50. Choosing a different wall effect from the main options menu allows for a sophisticated tactics change. + ###### Version 1.10 2022-08-21