Difference between revisions of "Super C"
From NES Hacker Wiki
(→Easy Cheats: Fixed Weapon values to 0x81 thru 0x86, all were set at 0x82) |
|||
Line 10: | Line 10: | ||
{{Cheat|Invincible|00D5|FF|-|P2 Invincible}} | {{Cheat|Invincible|00D5|FF|-|P2 Invincible}} | ||
{{Cheat|Weapon|00B8|82|-|P1 Has Spray}} | {{Cheat|Weapon|00B8|82|-|P1 Has Spray}} | ||
− | {{Cheat|Weapon|00B8| | + | {{Cheat|Weapon|00B8|84|-|P1 Has Flame Thrower}} |
− | {{Cheat|Weapon|00B8| | + | {{Cheat|Weapon|00B8|81|-|P1 Has Machine Gun}} |
− | {{Cheat|Weapon|00B8| | + | {{Cheat|Weapon|00B8|83|-|P1 Has Laser}} |
− | {{Cheat|Weapon|00B8| | + | {{Cheat|Weapon|00B8|85|-|P1 Has Charged Flame Thrower (Not normally possible)}} |
− | {{Cheat|Weapon|00B8| | + | {{Cheat|Weapon|00B8|86|-|P1 Has Flame Thrower Explosion (Not normally possible)}} |
{{Cheat|Weapon|00B9|82|-|P2 Has Spray}} | {{Cheat|Weapon|00B9|82|-|P2 Has Spray}} | ||
− | {{Cheat|Weapon|00B9| | + | {{Cheat|Weapon|00B9|84|-|P2 Has Flame Thrower}} |
− | {{Cheat|Weapon|00B9| | + | {{Cheat|Weapon|00B9|81|-|P2 Has Machine Gun}} |
− | {{Cheat|Weapon|00B9| | + | {{Cheat|Weapon|00B9|83|-|P2 Has Laser}} |
− | {{Cheat|Weapon|00B9| | + | {{Cheat|Weapon|00B9|85|-|P2 Has Charged Flame Thrower (Not normally possible)}} |
− | {{Cheat|Weapon|00B9| | + | {{Cheat|Weapon|00B9|86|-|P2 Has Flame Thrower Explosion (Not normally possible)}} |
{{Cheat|Continue|0059|0A|-|Infinite Continues}} | {{Cheat|Continue|0059|0A|-|Infinite Continues}} | ||
{{Cheat|Challenge|E5A3|00|02|Start With 1 Life (Both players)}} | {{Cheat|Challenge|E5A3|00|02|Start With 1 Life (Both players)}} |
Revision as of 06:34, 8 April 2017
Super C is the sequel to Contra. Like its predecessor, it is a run-and-gun where you blast away an endless supply of alien soldiers through 8 areas. The perspective switches in a couple levels from the typical side-view platformer to the top-down 8-directional runner. At the end of each area is a boss to fight. Some areas also have mini bosses.
Contents
Easy Cheats
Icon | Addr | Val | Cmp | Description |
---|---|---|---|---|
![]() |
E5A3 | 08 | 02 | Start With 9 Lives (Both players) |
![]() |
E5A3 | 62 | 02 | Start With 99 Lives (Both players) |
![]() |
0053 | 0A | - | P1 Infinite Lives |
![]() |
0054 | 0A | - | P2 Infinite Lives |
![]() |
00D4 | FF | - | P1 Invincible |
![]() |
00D5 | FF | - | P2 Invincible |
![]() |
00B8 | 82 | - | P1 Has Spray |
![]() |
00B8 | 84 | - | P1 Has Flame Thrower |
![]() |
00B8 | 81 | - | P1 Has Machine Gun |
![]() |
00B8 | 83 | - | P1 Has Laser |
![]() |
00B8 | 85 | - | P1 Has Charged Flame Thrower (Not normally possible) |
![]() |
00B8 | 86 | - | P1 Has Flame Thrower Explosion (Not normally possible) |
![]() |
00B9 | 82 | - | P2 Has Spray |
![]() |
00B9 | 84 | - | P2 Has Flame Thrower |
![]() |
00B9 | 81 | - | P2 Has Machine Gun |
![]() |
00B9 | 83 | - | P2 Has Laser |
![]() |
00B9 | 85 | - | P2 Has Charged Flame Thrower (Not normally possible) |
![]() |
00B9 | 86 | - | P2 Has Flame Thrower Explosion (Not normally possible) |
![]() |
0059 | 0A | - | Infinite Continues |
![]() |
E5A3 | 00 | 02 | Start With 1 Life (Both players) |
![]() |
0053 | 00 | - | P1 Start With 1 Life, No 1-Ups |
![]() |
0054 | 00 | - | P2 Start With 1 Life, No 1-Ups |
![]() |
0059 | 00 | - | No Continues |
![]() |
00B8 | 00 | - | P1 No Special Guns |
![]() |
00B9 | 00 | - | P2 No Special Guns |
![]() |
00D4 | 00 | - | P1 No Invincibility |
![]() |
00D5 | 00 | - | P2 No Invincibility |
How do I use these? |
North America
Memory Addresses
0022 - Number of players 0050 - Area 0053 - P1 Lives / Selected Item in Sound Test 0054 - P2 Lives / Top Item in Sound Test 0059 - Continues 005B - Program loop counter ? 00A0 - P1 Status 00 - Game Over 01 - Loading / High Score 02 - Active / Area Ending / Game End 03 - Hit 04 - Dying 05 - Dead 06 - Start of Game 07 - Falling out of helicopter 08 - End of Area 00A1 - P2 Status 00A8 - P1 Y Delta 00AC - P1 Direction Flag 00 - Not Moving 01 - Moving Right FF - Moving Left 00B8 - P1 Weapon 00 - Regular 01 - Machine Gun 02 - Spray 03 - Laser 04 - Flame Thrower 05 - Charged Flame Thrower 06 - Charged Flame Thrower Explosion +80 - Rapid Fire 00B9 - P2 Weapon 00BA - P1 Direction 00 - Up 01 - Up-Right 02 - Right 03 - Down-Right 05 - Down 09 - Down-Left 0A - Left 0B - Up-Left 00C4 - P1 Invincibility Timeout 00C5 - P2 Invincibility Timeout 00D4 - P1 Invincibility Timeout From Power Up 00D5 - P2 Invincibility Timeout From Power Up 00F3 - P1 Joystick Poll 00F4 - P2 Joystick Poll 00F7 - P1 Joystick Poll 00F8 - P2 Joystick Poll 0100-010B - Stack 0110-01EF - Sound Memory 01F0-01FF - Stack 2nd Half 0200-02FF - Screen Memory 0303-0338 - Palette 03E0-03FF - Palette 0400-04FF - Name Table 0508-0515 - Enemy Graphic Lookup 0518 - P1 Sprite Frame 0519 - P2 Sprite Frame 0522-052F - Enemy Y 0532 - P1 Y 0533 - P2 Y 053C-0549 - Enemy X 054C - P1 X 054D - P2 X 0556-0563 - Enemy Palette 0566 - P1 Palette 0567 - P2 Palette Note: Players share some of the same memory when the spray gun is used. 0568-0577 - P1/P2 Bullets Graphic Lookup (See Graphic Lookup Table) 0578-0587 - P1/P2 Bullets Y 0588-0597 - P1/P2 Bullets X 0598-05A7 - P1/P2 Bullets Unknown Variable 05A8-05B7 - P1/P2 Bullets Flag 05B8-05C7 - P1/P2 Bullets Unknown Variable 05C8-05D7 - P1/P2 Bullets Unknown Variable 05D8-05E7 - P1/P2 Bullets Unknown Variable (only used on spray and machine gun) 0608-0617 - P1/P2 Bullets Direction flag? 0618-0627 - P1/P2 Bullets X Delta 0628-0637 - P1/P2 Bullets Counter 0638-0647 - P1/P2 Bullets Unknown Variable 0648-0657 - P1/P2 Bullets Direction When Fired 00 - Right 01 - Down-Right 02 - Down 03 - Down-Left 04 - Left 05 - Up-Left 06 - Up 07 - Up-Right 0658-0667 - P1/P2 Bullets Y Delta 0668-0675 - Enemy Statuses 0676-0683 - Enemy HP 0684-0691 - Enemy Unknown flag, changes while dying 0692-069F - Enemy Unknown flag, changes while dying 06A0-06AD - Enemy Unknown flag, changes while dying 06AE-06BB - Enemy Y Delta 06BC-06C9 - Enemy Unknown flag 06CA-06D7 - Enemy Unknown flag 06D8-06E5 - Enemy Type (See Table) 06E6-06F3 - Enemy Death Delay (how long they will recoil before exploding) 07E0 - High Score: xxxx990 07E1 - High Score: xx99xx0 07E2 - High Score: 99xxxx0 07E3 - P1 Score: xxxx990 07E4 - P1 Score: xx99xx0 07E5 - P1 Score: 99xxxx0 07E6 - P2 Score: xxxx990 07E7 - P2 Score: xx99xx0 07E8 - P2 Score: 99xxxx0 07EC - Flag for Right, Left, Up, Down, A, B cheat code
Graphic Lookup
00 - No Graphic 01 - No Graphic 02 - Small Explosion 03 - Flame Thrower Bullet 04 - Bullet Hitting Wall 05 - Regular Bullet 06 - Spray Bullet 07 - Item Container 08 - Item Container - M 09 - Item Container - S 0A - Item Container - L 0B - Item Container - F 0C - Item Container - R 0D - Item Container - B 0E - Item Container - Bomb 0F - Large Explosion 1 10 - Large Explosion 2 11 - Large Explosion 3 12 - Sphere Explosion 13 - Sphere Explosion Dissipating 1 14 - Sphere Explosion Dissipating 2 14 - Sphere Explosion Dissipating 2 15 - Laser Bullet Vertical 16 - Laser Bullet Horizontal 17 - Laser Bullet Diagonal Right 18 - Laser Bullet Diagonal Left 19 - Machine Gun Bullet 1A - Charged Machine Bun Bullet 1B - Enemy Soldier Running 1 1C - Enemy Soldier Running 2 1D - Enemy Soldier Running 3 1E - Enemy Soldier Running 4 1F - Enemy Soldier Running 5 20 - Enemy Soldier Jumping 21 - Enemy Soldier Shooting 22 - Glitch 23 - Sniper Shooting Up 24 - Sniper Shooting Straight 25 - Sniper Shooting Down 26 - Prone Shooter 27 - Grenade Thrower 1 28 - Grenade Thrower 2 29 - Grenade 1 2A - Grenade 2 2B - Grenade 3 2C - Grenade 4 2E - Grenade 5 2F - Grenade 6 30 - Grenade 7 31 - Glitch ...
Enemy Types
00 - Power Up 01 - Power Up Container 02 - Wall Turret Bullet (Area 1) / Helicopter Bullet (Area 1) / Wall Turret Bullet (Area 3) 03 - Soldier (Area 1, 3, 4, 7, 8) / Shooting Soldier (Area 1, 3, 4) 04 - Wall Power Up (Area 5) 05 - Grenade Hurler (Area 1) 06 - Grenade (Area 1) 07 - Prone Shooter (Area 1, 3) 08 - Unused 09 - Sniper (Area 1, 3, 4, 5) 0A - 4-Way Turret (Area 4) / Wall Turret (Area 5) 0B - Ground Turret (Area 5) 0C - Explosion 0D - Wall (Area 2, 6) 0E - Enemy Bullet 0F - Grenade Thrower Behind Wall (Area 1) 10 - Soldier Spawn Point (Area 1, 3) 11 - Unused 12 - Unused 13 - Unused 14 - Unused 15 - Unused 16 - Unused 17 - Unused 18 - Unused 19 - Unused 1A - Unused 1B - Unused 1C - Unused 1D - Unused 1E - Unused 1F - Unused 20 - Wall Turret (Area 1) 21 - Helicopter (Area 1) 22 - Helicopter Turret (Area 1) 23 - Helicopter Target (Area 1) 24 - Crab (Area 6) 25 - Tracked Turret (Area 4) 26 - Tree Sniper (Area 3) 27 - Ground Turret (Area 3) 28 - Mortar Cannon (Area 3) 29 - Mortar Ball (Area 3) 2A - Fetus Bubbles (Area 8) 2B - Eye Snake (Area 8) 2C - ? 2D - Collapsing Ceiling (Area 4) 2E - Large Tank (Area 2) 2F - Boulder (Area 5) 30 - Large Tank Bullet (Area 2) 31 - Seeking Bubbles (Area 4) 32 - Robot Turret (Area 5) 33 - Robot Turret Bullet (Area 5) 34 - Flying Soldier (Area 5) 35 - Spider (Area 5) 36 - Tank Taser (Area 2) 37 - Blue Spiders (Area 8) 38 - Unused 39 - Moving Floor (Area 4) 3A - Babalu Bullet (Area 3) 3B - Spitter (Area 7) 3C - Spitter Bullet (Area 7) 3D - Face Hugger Plant (Area 7) 3E - Face Hugger (Area 7) 3F - ? 40 - Bird Soldier (Area 4) 41 - Bird Soldier Door (Area 4) 42 - ? 43 - Laser Turret (Area 4) 44 - ? 45 - Wall Mouth (Area 8) 46 - Wall Mouth Spider (Area 8) 47 - Head Turret (Area 8) 48 - Head Turret Bullet (Area 8) 49 - Crushing Ceiling (Area 8) 4A - Unused 4B - Wall Boss (Area 3) 4C - Unused 4D - Unused 4E - Babalu (Area 3) 4F - Unused 50 - Wall Turret (Area 3) 51 - Skull Boss (Area 7) 52 - Fire Ring Producer (Area 7) 53 - Slime Producer (Area 7) 54 - Fire Ring (Area 7) 55 - Skull Boss Spiders (Area 7) 56 - Slime (Area 7) 57 - Unused 58 - Soldier Door (Area 5) 59 - Skeleton Hover Boss (Area 5) 5A - Skull (Area 5) 5B - Rotating Turret (Area 2) 5C - Sniper (Area 2) 5D - Giant Mouth (Area 6) 5E - ? (Area 6) 5F - Spinning Heads (Area 6) 60 - Spineys (Area 6) 61 - Spineys from Boss (Area 6) 62 - ? 63 - Soldier/Shooting Soldier (Area 2) 64 - Baby Boss (Area 6) 65 - Daddy Boss 66 - Snake (Area 6) 67 - Unused 68 - Daddy Boss Bullets (Area 6) 69 - Tank Gunner Boss (Area 2) 6A - Tank Gunner (Area 2) 6B - Bubble (Area 4) 6C - Bubble Vent (Area 4) 6D - Final Boss (Area 8) 6E - Crumbling Rock (Area 8) 70 - Baby Boss ? (Area 6) 71 - Daddy Boss ? (Area 6) 72 - Unused 73 - Unused 74 - Unused 75 - Unused 76 - Unused 77 - Unused 78 - Unused 79 - Unused 7A - Unused 7B - Unused 7C - Unused 7D - Unused 7E - Unused 7F - Nothing
Code
Start of Game
ROM Address: 1E592 E582:A9 00 LDA #$00 ; Load Area: $00 E584:85 50 STA $0050 ; Set Area ($0050) E586:A9 00 LDA #$00 E588:85 A0 STA $00A0 E58C:A9 02 LDA #$02 ; Load Continues: $02 E58E:85 59 STA $0059 ; Set Continues ($0059) E590:A5 22 LDA $0022 ; Load the number of players ($0022) E592:85 20 STA $0020 E594:A6 20 LDX $0020 ; Set X to the number of players E596:A9 01 LDA #$01 E598:95 A0 STA $A0,X ; Clear Player Status E59A:A9 00 LDA #$00 E59C:95 CA STA $CA,X E59E:95 C4 STA $C4,X ; Clear Invincibility Time Power Up E5A0:95 B8 STA $B8,X ; Clear Weapon E5A2:A9 02 LDA #$02 ; Load Starting Lives: $02 E5A4:AC EC 07 LDY $07EC E5A7:F0 02 BEQ $E5AB E5A9:A9 09 LDA #$09 ; If cheat code is set, Load Starting Lives: $09 E5AB:95 53 STA $53,X ; Set Starting Lives E5AD:A9 30 LDA #$30 E5AF:95 55 STA $55,X ; ? ($0055) is set to $30 E5B1:A9 00 LDA #$00 E5B3:95 57 STA $57,X E5B5:CA DEX E5B6:10 DE BPL $E596 ; Loop X (number of players) E5B8:A9 00 LDA #$00 E5BA:A0 05 LDY #$05 E5BC:99 E3 07 STA $07E3,Y ; Clear player scores (07E3-07E8) E5BF:88 DEY E5C0:10 FA BPL $E5BC E5C2:60 RTS
Lose a Life
ROM Address: 594 8584:D6 53 DEC $53,X ; Decrease lives (X is player, 0 - P1, 1 - P2) 8586:F6 A0 INC $A0,X ; Increase the player's status 8588:60 RTS
Jump Height
ROM Address: 739 8729:B9 50 88 LDA $8850,Y ; Load from $8850, which is $FB (Note: Anything less than $FA causes problems) 872C:95 A8 STA $A8,X ; Store the value into the player's Y Delta value
Invincibility Timeout
ROM Address: 4C7 84B7:B5 C4 LDA $C4,X ; Load current invincibility timeout (X is player, 0 - P1, 1 - P2) 84B9:F0 02 BEQ $84BD ; If invincibility timeout has reached zero, skip ahead 84BB:D6 C4 DEC $C4,X ; Decrease invincibility timeout 84BD:B5 D4 LDA $D4,X ; Load current invincibility power up 84BF:F0 08 BEQ $84C9 ; If invincibility power up has reached zero, skip ahead 84C1:A5 5B LDA $005B 84C3:29 03 AND #$03 ; AND program counter so we only decrease invincibility power up every 4 loops 84C5:D0 02 BNE $84C9 84C7:D6 D4 DEC $D4,X ; Decrease invincibility power up timeout 84C9:60 RTS
Reset an Enemy
ROM Address: 1F761 F751:A9 00 LDA #$00 ; X is the memory offset for the enemy 00-0D. F753:9D 68 06 STA $0668,X ; Status F756:9D 76 06 STA $0676,X ; Hit Points F759:9D 1E 07 STA $071E,X ; ? F75C:9D 08 05 STA $0508,X ; Graphic Lookup F75F:9D 56 05 STA $0556,X ; Palette F762:9D 8E 07 STA $078E,X ; ? F765:9D 9C 07 STA $079C,X ; ? F768:9D 22 05 STA $0522,X ; Y Position F76B:9D 84 06 STA $0684,X ; ? F76E:9D 92 06 STA $0692,X ; ? F771:9D A0 06 STA $06A0,X ; ? F774:9D BC 06 STA $06BC,X ; ? F777:9D AE 06 STA $06AE,X ; Y Delta F77A:9D CA 06 STA $06CA,X ; ? F77D:9D E6 06 STA $06E6,X ; Enemy Explode Delay F780:9D F4 06 STA $06F4,X ; ? F783:9D 10 07 STA $0710,X ; ? F786:9D 02 07 STA $0702,X ; ? F789:9D 2C 07 STA $072C,X ; ? F78C:9D 48 07 STA $0748,X ; ? F78F:9D 56 07 STA $0756,X ; ? F792:9D 64 07 STA $0764,X ; ? F795:9D 72 07 STA $0772,X ; ? F798:9D 80 07 STA $0780,X ; ? F79B:60 RTS
Text
The common NES zero-based table where numbers start at 0 and letters start at A. There are a couple of symbols at the end.
00= 01=0 02=1 03=2 04=3 05=4 06=5 07=6 08=7 09=8 0A=9 0B=A 0C=B 0D=C 0E=D 0F=E 10=F 11=G 12=H 13=I 14=J 15=K 16=L 17=M 18=N 19=O 1A=P 1B=Q 1C=R 1D=S 1E=T 1F=U 20=V 21=W 22=X 23=Y 24=Z 25=· 26=. 27=© CA=,
Japan
The Japanese title is Super Gryzor.