Difference between revisions of "Disney's Chip 'n Dale: Rescue Rangers:ROM map"

From Data Crystal
Jump to navigation Jump to search
 
(8 intermediate revisions by the same user not shown)
Line 4: Line 4:
 
Cycles through & executes the action script for each non-player object.
 
Cycles through & executes the action script for each non-player object.
  
8000: LDX #$02
+
Function calls:
8002: STX $4D    ; Set current object to <b>02</b> (skipping over Chip/Dale)
+
* [[#Function_06:808E|06:808E]]
 +
* [[#Function_06:8E15|06:8E15]]
 +
* [[#Function_07:F92B|07:F92B]]
  
8004: LDA $04D0,X
+
===Function 06:8F38===
8007: BPL $8082  ; Skip slot if unoccupied (if status flag <b>80</b> is not set)
+
Action Script <b>02</b> - Robot Dog
  
8009: LDY $04E0,X ;
+
Function calls:
800C: LDA $80A7,Y
+
* [[#Function_07:F000|07:F000]]
800F: STA $00
+
* [[#Function_07:F066|07:F066]]
8011: LDA $810C,Y
+
* [[#Function_07:F0FB|07:F0FB]]
8014: STA $01    ; Retrieve address of object's action script from pointer table
+
* [[#Function_07:F328|07:F328]]
8016: LDA #$80
+
* [[#Function_07:F379|07:F379]]
8018: PHA
 
8019: LDA #$1E
 
801B: PHA        ; Set return address
 
801C: JMP ($00)  ; Execute action script
 
801F: LDA $0570,X
 
8022: AND #$40   
 
8024: BEQ $8029  ; Skip ahead if object can't be damaged
 
  
8026: JSR $8E15  ; Check for collision damage against enemy
+
==Page 07==
 +
===Function 07:F379===
 +
<b>playAudio(A)</b>
  
8029: LDA $04D0,X
+
Plays audio ID in Accumulator.
802C: AND #$40
 
802E: BEQ $8082  ; Skip ahead if object doesn't cause damage
 
 
 
8030: JSR $F92B  ; Check for collision damage against players
 
8033: BCS $8082
 
 
 
8035: LDA $5E,Y
 
8038: BNE $8082
 
 
 
803A: LDA $54,Y
 
803D: CMP #$03
 
803F: BCS $8082
 
 
 
8041: LDA $0420,Y
 
8044: BEQ $804D
 
 
 
8046: LDA #$09
 
8048: STA $54,Y
 
804B: BNE $8082
 
 
 
804D: JSR $808E
 
8050: LDA $56,Y
 
8053: BPL $8082
 
 
 
8055: AND #$0F
 
8057: PHA
 
8058: LDA #$00
 
805A: STA $56,Y
 
805D: PLA
 
805E: TAY
 
805F: LDA #$80
 
8061: STA $04D0,Y
 
8064: LDA #$3E
 
8066: STA $04E0,Y
 
8069: LDA #$00
 
806B: STA $0410,Y
 
806E: STA $0430,Y
 
8071: LDA $0420,Y
 
8074: CMP #$22
 
8076: BEQ $8082
 
 
 
8078: CMP #$23
 
807A: BEQ $8082
 
 
 
807C: SEC
 
807D: SBC #$09
 
807F: STA $0420,Y
 
 
 
8082: INC $4D
 
8084: LDX $4D
 
8086: CPX #$10
 
8088: BEQ $808D
 
 
 
808A: JMP $8004
 
 
 
808D: RTS        ; Exit function
 

Latest revision as of 19:38, 31 May 2019

PRG

Page 06

Function 06:8000

Cycles through & executes the action script for each non-player object.

Function calls:

Function 06:8F38

Action Script 02 - Robot Dog

Function calls:

Page 07

Function 07:F379

playAudio(A)

Plays audio ID in Accumulator.