Difference between revisions of "Bionic Commando"

From NES Hacker Wiki
Jump to: navigation, search
(End of Area Code)
Line 550: Line 550:
  
 
====End of Area Code====
 
====End of Area Code====
Y is a parameter offset for which item to give.
 
 
 
  B134 - C6 6B    - DEC $006B  - Decrease 006B (Delay for reading the end screen dialog)
 
  B134 - C6 6B    - DEC $006B  - Decrease 006B (Delay for reading the end screen dialog)
 
  B136 - D0 36    - BNE $B16E  -  
 
  B136 - D0 36    - BNE $B16E  -  
Line 582: Line 580:
 
  18 - Gamma Communicator Flag
 
  18 - Gamma Communicator Flag
 
  19 - Delta Communicator Flag
 
  19 - Delta Communicator Flag
B154 - A9 0A    - LDA #$0A  - Load 10 bullets.
+
B154 - A9 0A    - LDA #$0A  - Load 10 bullets.
B156 - 85 26    - STA $0026 - Store the 10 bullets
+
B156 - 85 26    - STA $0026 - Store the 10 bullets
B158 - 20 BA D7 - JSR $D7BA - Call acquire bullets routine.
+
B158 - 20 BA D7 - JSR $D7BA - Call acquire bullets routine.
  
 
====End of Area Inventory Items Table====
 
====End of Area Inventory Items Table====

Revision as of 00:18, 16 March 2010

Bionic Commando is a platform game where you play the role of Rad in his battle against the BADDS to rescue Super Joe and stop their evil empire from taking over the world. Rather than allow the player to jump, all vertical movements must be made using your trusty bionic arm. This creates a difficult learning curve, but once arm manipulation is learned, the game becomes relatively easy. Each area ends with a boss battle to win a new power up item.

North America

Bionic Commando.png

Memory Addresses

000A - Accumulator Register

000F - Gets set to 0A when an action is performed
0019 - The column of the highlighting box at equipment screen
001A - The row of the highlighting box at equipment screen
001D - Flag for which direction ego is facing (00 - left, 01 - right)

004A - Player Lives
004D - Area (Is updated on map screen as helicopter moves) 
0054-0055 - The location as the title logo is drawn on the screen

0057 - The game over screen timeout

005F - Changes with ego position or enemy position if one if on the screen (probably a temp variable)

0061 - Ego X position on screen
0062 - Ego Y position on screen

006A-006B - Delay after title screen finishes drawing to start intro or demo.

0080 - The cursor toggle (0-Comm / 1-Wire, 0-Desc / 1-Tran)

0082 - Flag during intro story. 08 - Clear text. 09 - Writing text. 0A - Waiting after text. 0B - Fade out.

0085 - Toggles from 1 to 0 as text is being written to the screen during intro

0087-0088 - Delay counters for writing text and clearing text during intro story

00C0-00EF - Loaded palette colors.

A Button
| B Button
| | Start
| | | Select
| | | | Up
| | | | | Down
| | | | | | Left
| | | | | | | Right
| | | | | | | |
0:0:0:0:0:0:0:0

00F8 - Controller 1 Press (0 - Idle, 1 - Right, 2 - left, 4 - Down, 8 - Up, 10 - Start, 20 - Select, 40 - B, 80 - A)
00FA - Controller 1 Down  (0 - Idle, 1 - Right, 2 - left, 4 - Down, 8 - Up, 10 - Start, 20 - Select, 40 - B, 80 - A)

0106 - Destination area part 1 in map mode
0107 - Destination area part 2 in map mode

0150-01F0 - Sound data being processed
01FC-01FF - Stack

H Mirror
| V Mirror
| | Priority
| | | ??? Palette
0:0:0:000 00 ------- Effects Byte

00 - Object Y Position
01 - Object #
02 - Object Flags
03 - Object X Position

0200-02FF - Objects on screen (Note, changing these objects only works for one cycle before they're reset)
0300-03FF - Screen background tiles and palette?

0400-043F - PPU Memory used to animate the background. (Enemy doors, text, fire, etc.)

0440 - Map Helicopter - Process Flag (00 - Ignore, 01 - Active, +80 - Hidden)
0441 - Map Truck 1 - Process Flag
0442 - Map Truck 2 - Process Flag
0443 - Map Truck 3 - Process Flag
0444 - Map Truck 4 - Process Flag
0445 - Map Truck 5 - Process Flag

0449 - Map Helicopter Frame
044A - Map Truck 1 - Pattern (01) The patterns predict how the trucks turn when they reach each area.
044B - Map Truck 2 - Pattern (03)
044C - Map Truck 3 - Pattern (04)
044D - Map Truck 4 - Pattern (05)
044E - Map Truck 5 - Pattern (07)

0450 - Cover up object for secret passage between areas 15 and 18
0451 - Cover up object for secret passage between areas 14 and 17
0452 - Map Helicopter - X
0453 - Map Truck 1 - X
0454 - Map Truck 2 - X
0455 - Map Truck 3 - X
0456 - Map Truck 4 - X
0457 - Map Truck 5 - X

045C - Map Truck 1 - Unknown Counter
045D - Map Truck 2 - Unknown Counter
045E - Map Truck 3 - Unknown Counter
045F - Map Truck 4 - Unknown Counter
0460 - Map Truck 5 - Unknown Counter

0464 - Map Helicopter - Y
0465 - Map Truck 1 - Y
0466 - Map Truck 2 - Y
0467 - Map Truck 3 - Y
0468 - Map Truck 4 - Y
0469 - Map Truck 5 - Y

046D - Map Helicopter Propeller toggle (00 - Spin 1, C0 - Spin 2)
046E - Map Truck 1 - Unknown Counter
046F - Map Truck 2 - Unknown Counter
0470 - Map Truck 3 - Unknown Counter
0471 - Map Truck 4 - Unknown Counter
0472 - Map Truck 5 - Unknown Counter

0476 - Map Helicopter - Graphic offset
0477 - Map Truck 1 - Graphic offset
0478 - Map Truck 2 - Graphic offset
0479 - Map Truck 3 - Graphic offset
047A - Map Truck 4 - Graphic offset
047B - Map Truck 5 - Graphic offset

047F - Map Helicopter - Direction (0 - Right, 1 - Down+Right, 2 - Down, 3 - Down+Left, 4 - Left, 5-Up+Left, 6 - Up, 7 - Up+Right)
0480 - Map Truck 1 - Direction
0481 - Map Truck 2 - Direction
0482 - Map Truck 3 - Direction
0483 - Map Truck 4 - Direction
0484 - Map Truck 5 - Direction

0488 - Map Loop (0 - Reset, 1 - Idle, 2 - Moving)
0489 - Map Truck 1 - Status for next direction (1 - Idle, 2 - Switch to next direction)
048A - Map Truck 2 - Status for next direction
048B - Map Truck 3 - Status for next direction
048C - Map Truck 4 - Status for next direction
048D - Map Truck 5 - Status for next direction

0491 - Map Status (00 - Descend Screen, 01 - Please Instruct Us / Moving, 02 - Descend/Transfer, 03 - Choose Destination)
049A - Map Helicopter Transfer index (2, 4, 6, 8, A) - Also countdown after collision with truck.

04A3 - The number of the truck that you last hit (1-5 trucks, 7 - Passage 18-15 8 - Passage 14-17)
04A4 - Map Truck 1 - Hidden Timeout (Set to FF when you defeat a truck. When it becomes 0, truck flag is ANDed with 80)
04A5 - Map Truck 2 - Hidden Timeout 
04A6 - Map Truck 3 - Hidden Timeout 
04A7 - Map Truck 4 - Hidden Timeout 
04A8 - Map Truck 5 - Hidden Timeout 

04AD - Map Truck 1 - Next index direction
04AE - Map Truck 2 - Next index direction
04AF - Map Truck 3 - Next index direction
04B0 - Map Truck 4 - Next index direction
04B1 - Map Truck 5 - Next index direction

04B5 - Map Helicopter - Area
04B6 - Map Truck 1 - Area
04B7 - Map Truck 2 - Area
04B8 - Map Truck 3 - Area
04B9 - Map Truck 4 - Area
04BA - Map Truck 5 - Area

04BE - The number of the door that you last exited. Used for where to return you when you die.
04BF - Door locked flag (only gets checked when an area is initialized) Only one door can be locked per map.

04C1 - Flare used flag
04C2 - Medicine used flag

04CA - Selected Gun (0 - Rifle, 1 - Launcher, 2 - Wide, 3 - Machine, 4 - 3 Way)
04CB - Rifle Flag
04CC - Rocket Launcher Flag
04CD - Wide Cannon Flag
04CE - Machinegun Flag
04CF - 3-Way Flag
04D0 - Unused Gun Flag 
04D1 - Selected Armor (0 - Pendant, 1 - Helmet, 2 - BPV)
04D2 - Pendant Flag
04D3 - Helmet Flag
04D4 - Bulletproof Vest Flag
04D5 - Unused Armor Flag 1
04D6 - Unused Armor Flag 2
04D7 - Unused Armor Flag 3
04D8 - Selected Item (0 - Flares, 1 - Medicine, etc.)
04D9 - Flare Bomb Flag
04DA - Medicine Flag
04DB - Permit Flag
04DC - Steel Boots Flag
04DD - Rapid Fire Device Flag
04DE - Unused Item Flag
04DF - Selected Communicator (0 - Alpha, 1 - Beta, 2 - Gamma, 3 - Delta)
04E0 - Alpha Communicator Flag
04E1 - Beta Communicator Flag
04E2 - Gamma Communicator Flag
04E3 - Delta Communicator Flag
04E4 - Unused Communicator Flag 1
04E5 - Unused Communicator Flag 2
04E6 - The highlighted position in the item selection screen
04E7 - Bullet Canisters Collected Place holder 3
04E8 - Bullet Canisters Collected Place holder 2
04E9 - Bullet Canisters Collected Place holder 1 (Moves when >9)
04EA - Player Hit Points
04EB - Beat Area 1 Flag
04EC - Beat Area 2 Flag
04ED - Beat Area 3 Flag
04EE - Beat Area 4 Flag
04EF - Beat Area 5 Flag
04F0 - Beat Area 6 Flag
04F1 - Beat Area 7 Flag
04F2 - Beat Area 8 Flag
04F3 - Beat Area 9 Flag
04F4 - Beat Area 10 Flag
04F5 - Beat Area 11 Flag
04F6 - Beat Area 12 Flag (Unused?)
04F7 - Underground passage's found flag

04FA - Eagle Badges

0537 - Bullet 1 is active flag
0538 - Bullet 2 is active flag
0539 - Bullet 3 is active flag
053A - POW is active flag
053B - Arm Flag (0 - None, 1 - Out, 80 - ?)
053C - Enemy Bullet 1 Active Flag
053D - Enemy Bullet 2 Active Flag
053E - Enemy 1 Active Flag (Main System Bullet counts as enemy)
053F - Enemy 2 Active Flag
0540 - Enemy 3 Active Flag
0541 - Object 1 Active Flag
0542 - Object 2 Active Flag
0543 - Object 3 Active Flag
0544 - Object 4 Active Flag
0545 - Object 5 Active Flag
0546 - Object 6 Active Flag
0547 - Object 7 Active Flag
0548 - Object 8 Active Flag

055D - Ego Bullet 1 flag. (00 - Moving or hit wall, 01 - Off Screen right, FF - Off screen left)
055E - Ego Bullet 2 flag. (00 - Moving or hit wall, 01 - Off Screen right, FF - Off screen left)
055F - Ego Bullet 3 flag. (00 - Moving or hit wall, 01 - Off Screen right, FF - Off screen left)

0562 - Enemy bullet 1 flag (00 - Moving or hit wall, 01 - Off Screen right, FF - Off screen left)
0563 - Enemy bullet 2 flag (00 - Moving or hit wall, 01 - Off Screen right, FF - Off screen left)
0564 - Enemy 1 flag opposite?
0565 - Enemy 2 flag opposite?
0566 - Enemy 3 flag opposite?
0567 - Object 1 X Screen offset (How many screens away this object is from ego)
0568 - Object 2 X Screen offset (How many screens away this object is from ego)
0569 - Object 3 X Screen offset (How many screens away this object is from ego)
056A - Object 4 X Screen offset (How many screens away this object is from ego)
056B - Object 5 X Screen offset (How many screens away this object is from ego)
056C - Object 6 X Screen offset (How many screens away this object is from ego)
056D - Object 7 X Screen offset (How many screens away this object is from ego)
056E - Object 8 X Screen offset (How many screens away this object is from ego)
056F - Ego X position
0570 - Bullet 1 X position
0571 - Bullet 2 X position
0572 - Bullet 3 X position
0573 - POW X Position
0574 - Arm X position
0575 - Enemy Bullet 1 X position
0576 - Enemy Bullet 2 X position
0577 - Enemy 1 X Position (Main system bullet counts as enemy)
0578 - Enemy 2 X position
0579 - Enemy 3 X position
057A - Object 1 X position
057B - Object 2 X position
057C - Object 3 X position
057D - Object 4 X position
057E - Object 5 X position
057F - Object 6 X position
0580 - Object 7 X position
0581 - Object 8 X position
0582 - Highlighting box X position in prep screen.
0583 - Increments by 20 when ego attempts to alter X position.

058B - Increments by 20 when enemy attempts to alter X position.
058C - Increments by 20 when enemy attempts to alter X position.
058D - Increments by 20 when enemy attempts to alter X position.

058F - Enemy Cycle by 20

05A1 - Object 1 Y Screen offset (How many screens away this object is from ego)
05A2 - Object 2 Y Screen offset (How many screens away this object is from ego)
05A3 - Object 3 Y Screen offset (How many screens away this object is from ego)
05A4 - Object 4 Y Screen offset (How many screens away this object is from ego)
05A5 - Object 5 Y Screen offset (How many screens away this object is from ego)
05A6 - Object 6 Y Screen offset (How many screens away this object is from ego)
05A7 - Object 7 Y Screen offset (How many screens away this object is from ego)
05A8 - Object 8 Y Screen offset (How many screens away this object is from ego)
05A9 - Ego Y position
05AA - Bullet 1 Y Position
05AB - Bullet 2 Y Position
05AC - Bullet 3 Y Position
05AD - POW Y Position
05AE - Arm Y Position
05AF - Enemy Bullet 1 Y position
05B0 - Enemy Bullet 2 Y position
05B1 - Enemy 1 Y Position (Main system bullet counts as enemy)
05B2 - Enemy 2 Y Position
05B3 - Enemy 3 Y Position
05B4 - Object 1 Y position
05B5 - Object 2 Y position
05B6 - Object 3 Y position
05B7 - Object 4 Y position
05B8 - Object 5 Y position
05B9 - Object 6 Y position
05BA - Object 7 Y position
05BB - Object 8 Y position
05BC - Highlighting box Y position in prep screen.
05BD - Increments by 20 when ego attempts to alter Y position.

05C5 - Increments by 20 when enemy attempts to alter X position.
05C6 - Increments by 20 when enemy attempts to alter X position.
05C7 - Increments by 20 when enemy attempts to alter X position.

05D0 - Ego Frame (26 - Idle, 4B - Walking, 71 - Duck/Arm Angle, FD - Arm Up, 
05DA - Enemy 1 state
05DB - Enemy 1 Graphic pointer
05DD - Enemy 1 Frame
05DE - Main System Explosion Frame
05DF - Enemy 2 state
05E0 - Enemy 3 state
05E9 - Ego Swing Frame
05EF - Enemy 1 Graphic pointer 2

05F8 - Ego Frame (00 - Idle, 48 - connected up, 60 - connected angle 2A, 5?, 8? - Walking)

0604 - Enemy Animation Frame
060A - Ego State
	00 - Idle
	01 - Walking
	02 - Ducking
	03 - Arm attached Directly Up
	04 - Arm attached angle
	05 - Falling
	06 - Parachuting
	08 - Arm attached duck/walk
	0A - Injured
	10 - Dead
	11 - Passing through a door)
060C - Ego Frame number (2-6 walking, A - Idle, 1 - duck, more)

0611 - Arm swinging
0620 - Flag for direction Ego is facing (0 - Right, 1 - Left)

0625 - Ego position on swing and swing failure values (1-7)

062C - Flag for direction Enemy 1 is facing
0633 - Flag for direction Ego is facing (0 - Right, 1 - Left)
0634 - Flag for direction bullet 1 is moving (0 - Right, 1 - Left)
0635 - Flag for direction bullet 1 is moving (0 - Right, 1 - Left)
0636 - Flag for direction bullet 1 is moving (0 - Right, 1 - Left)

063E - Flag for direction Enemy 1 is facing

0642 - Outside neutral zone flag

0648 - Bullet 1 active Flag (Flare counts as a bullet)
0649 - Bullet 1 active Flag
064A - Bullet 1 active Flag
064B - POW active flag

064C - Arm State (0 - none, 1 - out, 2 - connected)
0647 - Enemy 1 X position

0652 - Darkness status (0 - Light, 1 - Pitch Black, 2 - Eyes Adjusted)
0654 - Gets set from 1 to 0 when you pickup the delta comm

065A - Ego State
	00 - Idle
	01 - Walking
	02 - Ducking
	03 - Arm attached Directly Up
	04 - Arm attached angle
	05 - Falling at an angle
	07 - Falling straight down
	0A - Recoiling from damage
	10 - Dead

0665 - Enemy 1 State (0 - Idle, Walking, 2/3 - Jumping down, etc.) Changes per enemy
0666 - Enemy 2 State (0 - Idle, Walking, 2/3 - Jumping down, etc.)

0680 - Delay from death to reset.
0681 - Bullet 1 duration
0682 - Bullet 1 duration
0683 - Bullet 1 duration
0684 - POW duration x256

068B - The timeout for resetting the palette to semi dark in area 4.

0697 - POW duration x1

069E - Effect darkness timeouts

06A7 - Bullet 1 state
	00 - none
	02 - Hit something/Timed Out
	08 - remove
	0A - in flight
	+10 - if bullet is a 2x2 sprite like rocket launcher or 3-way.
06A8 - Bullet 1 state
06A9 - Bullet 1 state

06AB - Flag for arm attached (00 - not attached, F7 - attached)
06AC - Enemy Bullet 1 effects
06AD - Enemy Bullet 2 effects
06AE - Object 1 effects (Add 10 for shimmering, 20 for behind background, 40 for flashing)
06AF - Object 2 effects
06B0 - Object 3 effects
06B1 - Object 4 effects
06B2 - Object 5 effects
06B3 - Object 6 effects
06B4 - Object 7 effects
06B5 - Object 8 effects

06BA - Effects ego collisions

06BF - Arm distance from ego

06D2 - Arm throw state (3 - Up, 6 - Up angle, 4 - Straight, 5 - Ducking)

06D7 - Slow accumulator

0711 - Object 1 bouncing flag
0712 - Object 2 bouncing flag
0713 - Object 3 bouncing flag
0714 - Object 4 bouncing flag

0719 - Ego Y velocity

0724 - Object 1 Y velocity
0725 - Object 2 Y velocity

072C - Increments by 10 as ego flies through the air.

0737 - Object 1 counter
0738 - Object 2 counter
0739 - Object 3 counter
073A - Object 4 counter

073F - Unknown Ego status (00 - Init, Move - A0, 20 - Falling)

074A - Enemy jumping status (BD - Normal, 28 - Jumping)

075D - Object 1 incrementer (for soldiers it counts down from 8. When 0 is reached, they jump)
075E - Object 2 incrementer (Bullet canisters count up by 10 each time they bounce)
075F - Object 3 incrementer
0760 - Object 4 incrementer

0779 - Ego hit points
077A - Ego bullet's damage value 1
077B - Ego bullet's damage value 2
077C - Ego bullet's damage value 3

0783 - Enemy 1 HP   When killed = FF until bullet goes away. Includes bosses and main systems.
0784 - Enemy 2 HP
0785 - Enemy 3 HP
0786 - Enemy 4 HP
0787 - Enemy 5 HP
0788 - Enemy 6 HP
0789 - Enemy 7 HP
078A - Enemy 8 HP
078B - Enemy 9 HP
078C - Enemy 10 HP

0791 - Arm value of some sort

0796 - Enemy invincibility time

07AA - Bullet canister 1 timeout and hop count
07AB - Bullet canister 2 timeout and hop count
07AC - Bullet canister 3 timeout and hop count

07E3 - Flag for ego falling (0 - falling, 1 - on ground or arm attached)
07E6 - Ego State
	00 - Not on screen
	01 - Walking
	02 - Ducking
	03 - Arm Up
	04 - Arm walking
	05 - Arm ducking
	06 - Arm Angle
	09 - Climbing
	0A - Parachuting
	0B - Falling
	0C - Swinging 1
	0D - Swinging 2
	0E - Swinging 3
	10 - Idle
	11 - Injured
	12 - Dead)
07E7 - Same as above.

07EB - Hyper Bazooka flag

Map Notes

Power Technical Requirements
8  - Must beat areas 1-6 and have gamma communicator
10 - Must beat area 7 and have delta communicator
12 - ?

                        +--+     +--+
                        |10|=====|12|
+--+  +--+  +--+  +--+  +--+     +--+
|13|  |04|==|15|  |07|   || \\    ||
+--+  +--+  +--+  +--+   ||   \\  ||
 || //    \\ ||    || \\ ||    \\ ||
+--+  +--+  +--+  +--+  +--+     +--+
|01|  |16|==|05|  |18|  |08|     |11|
+--+  +--+  +--+  +--+  +--+     +--+
 ||    || // ||       // || \\
 ||   +--+   ||     //  +--+  +--+
 ||   |02|   ||    //   |09|  |19|
 ||   +--+   ||   //    +--+  +--+
 ||    ||    || //       ||
+--+  +--+  +--+  +--+  +--+
|00|  |03|==|06|==|14|  |17|
+--+  +--+  +--+  +--+  +--+

Truck and Helicopter X,Y position for each area
Area  X, Y
00 - 28, 98
01 - 28, 58
02 - 48, 78
03 - 48, 98
04 - 48, 38
05 - 68, 58
06 - 68, 98
07 - 88, 38
08 - A8, 58
09 - A8, 78
10 - A8, 28
11 - D8, 58
12 - D8, 28
13 - 28, 38
14 - 88, 98
15 - 68, 38
16 - 48, 58
17 - A8, 98
18 - 88, 58
19 - C8, 78

Truck Patterns (beginning with their initial position)
Truck 1 - 4,5,15,4,1,4...
Truck 2 - 3,6,5,2,16,5,6,3...
Truck 3 - 7,8,10,8,19,8,6,8,7...
Truck 4 - 8,19,8,7,18,7,8...
Truck 5 - 10,12,11,10...


Code

End of Area Code

B134 - C6 6B    - DEC $006B   - Decrease 006B (Delay for reading the end screen dialog)
B136 - D0 36    - BNE $B16E   - 
B138 - C6 6A    - DEC $006A   - Decrease 006B (Delay for reading the end screen dialog)
B13A - 10 32    - BPL $B16E   -
B13C - A4 4D    - LDY $004D   - Load Y with the {Area #}
B13E - A9 01    - LDA #$01    - Set A to TRUE
B140 - 99 EA 04 - STA $04EA,Y - Set the area flag completed for the area we're in
B143 - B9 6E B1 - LDA $B16E,Y - Load the inventory item for this area into Y
B146 - A8       - TAY         - 
B147 - D0 06    - BNE $B14F   - 
B149 - 20 C3 D7 - JSR $D7C3   - 
B14F - A9 01    - LDA #$01    - Set A to TRUE
B151 - 99 CA 04 - STA $04CA,Y - Set the inventory flag specified by Y to TRUE
	01 - Rifle Flag
	02 - Rocket Launcher Flag
	03 - Wide Cannon Flag
	04 - Machinegun Flag
	05 - 3-Way Flag
	08 - Pendant Flag
	09 - Helmet Flag
	0A - Bulletproof Vest Flag
	0F - Flare Bomb Flag
	10 - Medicine Flag
	11 - Permit Flag
	12 - Steel Boots Flag
	13 - Rapid Fire Device Flag
	16 - Alpha Communicator Flag
	17 - Beta Communicator Flag
	18 - Gamma Communicator Flag
	19 - Delta Communicator Flag
B154 - A9 0A    - LDA #$0A  - Load 10 bullets.
B156 - 85 26    - STA $0026 - Store the 10 bullets
B158 - 20 BA D7 - JSR $D7BA - Call acquire bullets routine.

End of Area Inventory Items Table

Memory Address: B16F
ROM Address: 2B17F
10 - Area 01 - Medicine
08 - Area 02 - Pendant
13 - Area 03 - Rapid Fire Device
03 - Area 04 - Wide Cannon
02 - Area 05 - Rocket Launcher
11 - Area 06 - Permit
00 - Area 07 - Nothing
12 - Area 08 - Steel Boots
05 - Area 09 - 3-Way
00 - Area 10 - Nothing (1up)
0A - Area 11 - Bullet Proof Vest
00 - Area 12 - Nothing


Unknown Routines

9749 - B085 - B9AD - C000 - Beginning of code D6A0 - D6C1 - D6C7 - Load the graphic from register Y and A D6CD - D6EB - D6F1 - D754 - Play sound from register Y D75D - D760 - D778 - Gets called at game init D79C - D7BA - D7BD - Gets called at game init E8DF - Check for level up? EA8F - F04F -

FEE2 matches ROM location 3FEF2 (start of truck movement values)

FFFA - Non-Maskable Interrupt (NMI) Address (2 bytes) FFFC - Reset Vector (2 bytes) FFFE - IRQ/BRK Vector (2 bytes)


Text

Bionic Commando has a very strange table. The letters are jumbled up in a bizarre offset, most likely due to poor translation (which the game's text also suffers from). There are two files, one for the title screen the other for the game.

Title

20= 
C2='
C4=©
C5=1
C6=9
C7=8
C9=C
CA=A
CC=C
CD=O
CE=M
CF=T
D1=S
D2=R
D3=N
D4=I
D5=U
D6=E
D7=G
D8=V
D9=B
DA=P
DB=H
DC=.,
DD=.
DE=D
DF=L
E0=Y
E1=F
E2=X
E3=!
E4=@
E5=/

Game

00= 
01=F
02=0
03=G
04=1
05=H
06=2
07=I
08=3
09=J
0A=4
0B=K
0C=5
0D=L
0E=6
0F=M
10=7
11=N
12=8
13=O
14=9
15=P
16=A
17=Q
18=B
19=R
1A=C
1B=S
1C=D
1D=T
1E=E
1F=U
20=V
21=+
22=W
23=Δ
24=X
26=Y
28=Z
2A=,
2C='
2E=*
30=.
32=?
34=!
36=α
38=β
3A=γ
3C=d
3E=δ


Japan

Hitler no Fukkatsu - Top Secret.png

The Original Japanese version of the game is called ヒットラーの復活 トップシークレット (Hitler no Fukkatsu: Top Secret)​ translated: Top Secret: The Resurrection of Hitler. In the game, you blast away at Nazis and there are swastikas all over the place.


Eupore

Bionic Commando (E).png

The European version of Bionic Commando is nearly identical to the North American version. No attempt was even made to re-synch the audio for the slower PAL frame rate.

Text

The text tables are identical to the North American release.