Galaga

From NES Hacker Wiki
Revision as of 15:01, 18 April 2016 by TheAlmightyGuru (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Galaga is a fixed-screen space shooter based off the arcade game. Your ship remains on the bottom of the screen while enemy ships fly around the screen dropping bombs on you and trying to smash into you. Every four stages is a challenge stage where you can't get hit, but you can rack up points to earn a free guy.

Easy Cheats

Icon Addr Val Cmp Description
Icon-Lives.png CD4C 09 03 Start With 9 Lives
Icon-Lives.png CD4C 63 03 Start With 99 Lives
Icon-Lives-Infinite.png 0487 09 - Infinite Lives
Icon-Invincible.png E87D 60 A6 Invincible
Icon-Powerup.png E089 24 D0 Have Double
Icon-Challenge.png CD4C 01 03 Start With 1 Life
Icon-Challenge.png 0487 00 - Start With 1 Life, No 1-Ups
How do I use these?

North America

Galaga.png

Memory Addresses

0048 - Program Counter x1
0049 - Program Counter x 256

00B0 - Bullet Flag
00E0 - Score: 9xxxxxx
00E1 - Score: x9xxxxx
00E2 - Score: xx9xxxx
00E3 - Score: xxx9xxx
00E4 - Score: xxxx9xx
00E5 - Score: xxxxx9x
00E6 - Score: xxxxxx9
00F8 - High Score: 9xxxxxx
00F9 - High Score: x9xxxxx
00FA - High Score: xx9xxxx
00FB - High Score: xxx9xxx
00FC - High Score: xxxx9xx
00FD - High Score: xxxxx9x
00FE - High Score: xxxxxx9

0203 - Player X Position

02E0 - Bullet 1 Flag
02E1 - Bullet 1 Y Pos
02E2 - Bullet 1 X Pos

02E8 - Bullet 2 Flag
02E9 - Bullet 2 Y Pos
02EA - Bullet 2 X Pos

Ships For Waiting Player
0300-0309 - Enemies In Place Flag - Row 1
030F - Offset Row 1
0310-0319 - Enemies In Place Flag - Row 2
031F - Offset Row 2
0320-0329 - Enemies In Place Flag - Row 3
032F - Offset Row 3
0330-0339 - Enemies In Place Flag - Row 4
033F - Offset Row 4
0340-0349 - Enemies In Place Flag - Row 5
034F - Offset Row 5

Ships For Current Player
0400-0409 - Enemies In Place Flag - Row 1
040F - Offset Row 1
0410-0419 - Enemies In Place Flag - Row 2
041F - Offset Row 2
0420-0429 - Enemies In Place Flag - Row 3
042F - Offset Row 3
0430-0439 - Enemies In Place Flag - Row 4
043F - Offset Row 4
0440-0449 - Enemies In Place Flag - Row 5
044F - Offset Row 5

0482 - Display Stage ?
0483 - Stage ?
0485 - Display Lives
0487 - Current Player Lives


Code

Next Stage

ROM Address: 4DBB
CDAB:AE 83 04  LDX $0483	; Load [Current Stage]
CDAE:E8        INX		; Increment the stage
CDAF:D0 02     BNE $CDB3	; If we've made it to stage 256
CDB1:A2 FC     LDX #$FC	; Go to stage 252
CDB3:8E 83 04  STX $0483	; Store the new (Current Stage)
CDB6:60        RTS		;	

Decrease Lives

CB99:AE 87 04  LDX $0487       ; Load Lives into X
CB9C:86 06     STX $0006       ; Store X into $0006
CB9E:CA        DEX             ; Decrement X
CB9F:8E 87 04  STX $0487       ; Store X into Lives.

Starting Lives

CD4B:A9 03     LDA #$03        ; Load A with $03
CD4D:8D 88 04  STA $0488       ; 
CD50:8D 87 04  STA $0487       ; Store A into Current Player's Lives
CD53:8D 85 04  STA $0485       ; 


Text

Galaga has a limited character set that is missing the less-used letters like Q and X. The game itself has very little text.

00=0
01=1
02=2
03=3
04=4
05=5
06=6
07=7
08=8
09=9
0A=A
0B=B
0C=C
0D=D
0E=E
0F=F
10=G
11=H
12=I
15=L
16=M
17=N
18=O
19=P
1B=R
1C=S
1D=T
1E=U
1F=V
22=Y
24= 
25=%
26=-
27=—
28=.
29=©
2A=!


Japan

Galaga (J).png


Famicom Disk System

Galaga (FDS).png