mirror of
https://github.com/Pecusx/scorch_src.git
synced 2026-05-21 06:39:40 +02:00
Initial support for multiple joysticks (A800 only)
This commit is contained in:
+11
-11
@@ -105,16 +105,16 @@ L100 dta d"IT WASN'T JUST A JOB IT WAS AN ADVENTURE!"
|
|||||||
L101 dta d"I DIDN'T LIKE VIOLENCE ANYWAY!"
|
L101 dta d"I DIDN'T LIKE VIOLENCE ANYWAY!"
|
||||||
L102 dta d"I THOUGHT YOU LIKED ME?"
|
L102 dta d"I THOUGHT YOU LIKED ME?"
|
||||||
L103 dta d"CTO XYEB"
|
L103 dta d"CTO XYEB"
|
||||||
L104 dta d"I THINK THIS GUY'S A LITTLE CRAZY."
|
L104 ;dta d"I THINK THIS GUY'S A LITTLE CRAZY."
|
||||||
L105 dta d"SOMEHOW I DON'T FEEL LIKE KILLING ANYMORE."
|
L105 ;dta d"SOMEHOW I DON'T FEEL LIKE KILLING ANYMORE."
|
||||||
L106 dta d"HEY! KILLIN' AIN'T COOL."
|
L106 ;dta d"HEY! KILLIN' AIN'T COOL."
|
||||||
L107 dta d"GEE... THANKS."
|
L107 ;dta d"GEE... THANKS."
|
||||||
L108 dta d"I'VE FALLEN AND I CAN'T GET UP!"
|
L108 ;dta d"I'VE FALLEN AND I CAN'T GET UP!"
|
||||||
L109 dta d"911?"
|
L109 ;dta d"911?"
|
||||||
L110 dta d"OH NO! HERE I BLOW AGAIN!"
|
L110 ;dta d"OH NO! HERE I BLOW AGAIN!"
|
||||||
L111 dta d"I'LL BE BACK..."
|
L111 ;dta d"I'LL BE BACK..."
|
||||||
L112 dta d"HEY - I'VE GOT LAWYERS."
|
L112 ;dta d"HEY - I'VE GOT LAWYERS."
|
||||||
L113 dta d"TIME TO CALL 1-900-SUE-TANK."
|
L113 ;dta d"TIME TO CALL 1-900-SUE-TANK."
|
||||||
LEND
|
LEND
|
||||||
OffensiveTextTableL
|
OffensiveTextTableL
|
||||||
dta <L0,<L1,<L2,<L3,<L4,<L5,<L6,<L7,<L8,<L9,<L10,<L11,<L12,<L13,<L14,<L15,<L16,<L17,<L18,<L19,<L20,<L21,<L22,<L23,<L24,<L25,<L26,<L27,<L28,<L29,<L30,<L31,<L32,<L33,<L34,<L35,<L36,<L37,<L38,<L39,<L40,<L41,<L42,<L43,<L44,<L45,<L46,<L47,<L48,<L49,<L50,<L51,<L52
|
dta <L0,<L1,<L2,<L3,<L4,<L5,<L6,<L7,<L8,<L9,<L10,<L11,<L12,<L13,<L14,<L15,<L16,<L17,<L18,<L19,<L20,<L21,<L22,<L23,<L24,<L25,<L26,<L27,<L28,<L29,<L30,<L31,<L32,<L33,<L34,<L35,<L36,<L37,<L38,<L39,<L40,<L41,<L42,<L43,<L44,<L45,<L46,<L47,<L48,<L49,<L50,<L51,<L52
|
||||||
@@ -125,7 +125,7 @@ OffensiveTextTableH
|
|||||||
dta >L53,>L54,>L55,>L56,>L57,>L58,>L59,>L60,>L61,>L62,>L63,>L64,>L65,>L66,>L67,>L68,>L69,>L70,>L71,>L72,>L73,>L74,>L75,>L76,>L77,>L78,>L79,>L80,>L81,>L82,>L83,>L84,>L85,>L86,>L87,>L88,>L89,>L90,>L91,>L92,>L93,>L94,>L95,>L96,>L97,>L98,>L99,>L100,>L101,>L102,>L103,>L104,>L105,>L106,>L107,>L108,>L109,>L110,>L111,>L112,>L113
|
dta >L53,>L54,>L55,>L56,>L57,>L58,>L59,>L60,>L61,>L62,>L63,>L64,>L65,>L66,>L67,>L68,>L69,>L70,>L71,>L72,>L73,>L74,>L75,>L76,>L77,>L78,>L79,>L80,>L81,>L82,>L83,>L84,>L85,>L86,>L87,>L88,>L89,>L90,>L91,>L92,>L93,>L94,>L95,>L96,>L97,>L98,>L99,>L100,>L101,>L102,>L103,>L104,>L105,>L106,>L107,>L108,>L109,>L110,>L111,>L112,>L113
|
||||||
dta >LEND
|
dta >LEND
|
||||||
NumberOfOffensiveTexts=54
|
NumberOfOffensiveTexts=54
|
||||||
NumberOfDeffensiveTexts=60
|
NumberOfDeffensiveTexts=50 ;60 (sorry - memory)
|
||||||
.endp
|
.endp
|
||||||
hoverFull dta d"MY HOVERCRAFT IS FULL OF EELS!", $ff
|
hoverFull dta d"MY HOVERCRAFT IS FULL OF EELS!", $ff
|
||||||
hoverFullEnd
|
hoverFullEnd
|
||||||
|
|||||||
+12
-8
@@ -573,24 +573,28 @@ keycodes ;tables for converting KeyCode to Screen Code (38 -1 characters)
|
|||||||
.by $3f,$15,$12,$3a,$2a,$38,$3d,$39
|
.by $3f,$15,$12,$3a,$2a,$38,$3d,$39
|
||||||
.by $0d,$01,$05,$00,$25,$23,$08,$0a
|
.by $0d,$01,$05,$00,$25,$23,$08,$0a
|
||||||
.by $2f,$28,$3e,$2d,$0b,$10,$2e,$16
|
.by $2f,$28,$3e,$2d,$0b,$10,$2e,$16
|
||||||
.by $2b,$17,$1f,$1e,$1a,$18,$1d,$1b
|
.by $2b,$17
|
||||||
.by $33,$35,$30,$32,$22,$21 ;,$0e <-- hyphen removed from the table, sorry hyphen lovers
|
.by $32,$1f,$1e,$1a,$18,$1d,$1b
|
||||||
|
.by $33,$35,$30,$22,$21 ;,$0e <-- hyphen removed from the table, sorry hyphen lovers
|
||||||
keycodesEnd
|
keycodesEnd
|
||||||
scrcodes
|
scrcodes
|
||||||
dta d"abcdefgh"
|
dta d"abcdefgh"
|
||||||
dta d"ijklmnop"
|
dta d"ijklmnop"
|
||||||
dta d"qrstuvwx"
|
dta d"qrstuvwx"
|
||||||
dta d"yz123456"
|
dta d"yz"
|
||||||
dta d"7890. " ; "-"
|
zero
|
||||||
|
digits ; decimal constans
|
||||||
|
dta d"0123456"
|
||||||
|
dta d"789. " ; "-"
|
||||||
|
;-------decimal constans
|
||||||
|
;zero
|
||||||
|
;digits dta d"0123456789"
|
||||||
|
|
||||||
;-----------------------------------
|
;-----------------------------------
|
||||||
gameOverSpritesTop
|
gameOverSpritesTop
|
||||||
; end of the Gover sprites by number of players
|
; end of the Gover sprites by number of players
|
||||||
; 1 2 3 4 5 6
|
; 1 2 3 4 5 6
|
||||||
.by 130+7,130+7,136+7,142+7,148+7,154+7
|
.by 130+7,130+7,136+7,142+7,148+7,154+7
|
||||||
;-------decimal constans
|
|
||||||
zero
|
|
||||||
digits dta d"0123456789"
|
|
||||||
|
|
||||||
;------credits
|
;------credits
|
||||||
CreditsStart
|
CreditsStart
|
||||||
dta d" "*
|
dta d" "*
|
||||||
|
|||||||
+10
-6
@@ -32,16 +32,20 @@ NameScreen3
|
|||||||
dta d" Human/Atari (difficulty level) "
|
dta d" Human/Atari (difficulty level) "
|
||||||
NameScreen5
|
NameScreen5
|
||||||
.IF TARGET = 800
|
.IF TARGET = 800
|
||||||
dta d" "
|
dta d" "
|
||||||
dta d"TAB"*
|
dta d"TAB"*
|
||||||
dta d" - Player/Difficulty level "
|
dta d" - Port nr "
|
||||||
|
dta d"Joy"*
|
||||||
|
dta d" - Difficulty "
|
||||||
dta d" "
|
dta d" "
|
||||||
dta d"Return"*
|
dta d"Return"*
|
||||||
dta d" - Proceed "
|
dta d" - Proceed "
|
||||||
.ELIF TARGET = 5200
|
.ELIF TARGET = 5200
|
||||||
dta d" "
|
dta d" "
|
||||||
dta d"Joy"*
|
dta d"(5)"*
|
||||||
dta d" - Player/Difficulty level "
|
dta d" - Port nr "
|
||||||
|
dta d"Joy"*
|
||||||
|
dta d" - Difficulty "
|
||||||
dta d" "
|
dta d" "
|
||||||
dta d"FIRE"*
|
dta d"FIRE"*
|
||||||
dta d" - Proceed "
|
dta d" - Proceed "
|
||||||
|
|||||||
+17
-5
@@ -26,8 +26,9 @@
|
|||||||
;---------------------------------------------------
|
;---------------------------------------------------
|
||||||
icl 'definitions.asm'
|
icl 'definitions.asm'
|
||||||
;---------------------------------------------------
|
;---------------------------------------------------
|
||||||
FirstZpageVariable = $61
|
FirstZpageVariable = $60
|
||||||
.zpvar DliColorBack .byte = FirstZpageVariable
|
.zpvar DliColorBack .byte = FirstZpageVariable
|
||||||
|
.zpvar JoystickNumber .byte
|
||||||
.zpvar xdraw .word ;= $64 ;variable X for plot
|
.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)
|
.zpvar ydraw .word ;variable Y for plot (like in Atari Basic - Y=0 in upper right corner of the screen)
|
||||||
.zpvar xbyte .word
|
.zpvar xbyte .word
|
||||||
@@ -269,12 +270,15 @@ FirstSTART
|
|||||||
; 5 values in RMT file
|
; 5 values in RMT file
|
||||||
; not elegant :(
|
; not elegant :(
|
||||||
mva #$06 MODUL-6+$967 ; $07 > $06
|
mva #$06 MODUL-6+$967 ; $07 > $06
|
||||||
|
;mva #$06 MODUL-6+$bc3 ; $07 > $06
|
||||||
|
;mva #$06 MODUL-6+$e69 ; $08 > $06
|
||||||
|
;mva #$06 MODUL-6+$ebc ; $08 > $06
|
||||||
|
sta MODUL-6+$bc3 ; $07 > $06
|
||||||
|
sta MODUL-6+$e69 ; $08 > $06
|
||||||
|
sta MODUL-6+$ebc ; $08 > $06
|
||||||
mva #$10 MODUL-6+$a69 ; $12 > $10
|
mva #$10 MODUL-6+$a69 ; $12 > $10
|
||||||
mva #$06 MODUL-6+$bc3 ; $07 > $06
|
|
||||||
mva #$04 MODUL-6+$bf8 ; $05 > $04
|
mva #$04 MODUL-6+$bf8 ; $05 > $04
|
||||||
mva #$08 MODUL-6+$e3d ; $0a > $08
|
mva #$08 MODUL-6+$e3d ; $0a > $08
|
||||||
mva #$06 MODUL-6+$e69 ; $08 > $06
|
|
||||||
mva #$06 MODUL-6+$ebc ; $08 > $06
|
|
||||||
NoRMT_PALchange
|
NoRMT_PALchange
|
||||||
.ELSE
|
.ELSE
|
||||||
mva #$7f SkStatSimulator
|
mva #$7f SkStatSimulator
|
||||||
@@ -671,7 +675,8 @@ RoboTanks
|
|||||||
jmp AfterManualShooting
|
jmp AfterManualShooting
|
||||||
|
|
||||||
ManualShooting
|
ManualShooting
|
||||||
|
lda JoyNumber,x
|
||||||
|
sta JoystickNumber ; set joystick port for player
|
||||||
jsr WaitForKeyRelease
|
jsr WaitForKeyRelease
|
||||||
jsr BeforeFire
|
jsr BeforeFire
|
||||||
lda escFlag
|
lda escFlag
|
||||||
@@ -1095,6 +1100,7 @@ deletePtr = temp
|
|||||||
; clean variables
|
; clean variables
|
||||||
lda #0
|
lda #0
|
||||||
sta escFlag
|
sta escFlag
|
||||||
|
sta JoystickNumber
|
||||||
tay
|
tay
|
||||||
mwa #variablesStart deletePtr
|
mwa #variablesStart deletePtr
|
||||||
@ tya
|
@ tya
|
||||||
@@ -1346,6 +1352,12 @@ nextlinedisplay
|
|||||||
; bne EndOfCreditsVBI
|
; bne EndOfCreditsVBI
|
||||||
mwa #Credits DLCreditsAddr
|
mwa #Credits DLCreditsAddr
|
||||||
EndOfCreditsVBI
|
EndOfCreditsVBI
|
||||||
|
; support for joysticks :)
|
||||||
|
ldx JoystickNumber
|
||||||
|
lda STICK0,x
|
||||||
|
sta STICK0
|
||||||
|
lda STRIG0,x
|
||||||
|
sta STRIG0
|
||||||
.IF TARGET = 5200
|
.IF TARGET = 5200
|
||||||
lda SkStatSimulator
|
lda SkStatSimulator
|
||||||
bmi @+
|
bmi @+
|
||||||
|
|||||||
BIN
Binary file not shown.
BIN
Binary file not shown.
@@ -242,6 +242,8 @@ invertme
|
|||||||
jsr PurchaseAI ; remember to make ActivateAI :) !!!
|
jsr PurchaseAI ; remember to make ActivateAI :) !!!
|
||||||
jmp AfterManualPurchase
|
jmp AfterManualPurchase
|
||||||
ManualPurchase
|
ManualPurchase
|
||||||
|
lda JoyNumber,x
|
||||||
|
sta JoystickNumber ; set joystick port for player
|
||||||
mva #0 isInventory
|
mva #0 isInventory
|
||||||
jsr Purchase ; purchase weapons
|
jsr Purchase ; purchase weapons
|
||||||
bit escFlag
|
bit escFlag
|
||||||
@@ -1224,6 +1226,9 @@ FirstChar
|
|||||||
ChangeOfJoyUp
|
ChangeOfJoyUp
|
||||||
ldx TankNr
|
ldx TankNr
|
||||||
inc JoyNumber,x
|
inc JoyNumber,x
|
||||||
|
lda JoyNumber,x
|
||||||
|
and #%00000011 ; max 4 joysticks
|
||||||
|
sta JoyNumber,x
|
||||||
jmp CheckKeys
|
jmp CheckKeys
|
||||||
ChangeOfLevelUp ; change difficulty level of computer opponent
|
ChangeOfLevelUp ; change difficulty level of computer opponent
|
||||||
inc:lda DifficultyLevel
|
inc:lda DifficultyLevel
|
||||||
@@ -2087,6 +2092,7 @@ FinishResultDisplay
|
|||||||
mva #0 COLOR1
|
mva #0 COLOR1
|
||||||
sta COLBAKS ; set color of background
|
sta COLBAKS ; set color of background
|
||||||
sta CreditsVScrol
|
sta CreditsVScrol
|
||||||
|
sta JoystickNumber ; set joystick port for player
|
||||||
mva #TextForegroundColor COLOR2
|
mva #TextForegroundColor COLOR2
|
||||||
SetDLI DLIinterruptGameOver ; jsr SetDLI for Game Over screen
|
SetDLI DLIinterruptGameOver ; jsr SetDLI for Game Over screen
|
||||||
; make text and color lines for each tank
|
; make text and color lines for each tank
|
||||||
|
|||||||
Reference in New Issue
Block a user