summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIIMarckus <iimarckus@gmail.com>2016-04-11 02:48:14 -0600
committerIIMarckus <iimarckus@gmail.com>2016-04-11 02:48:14 -0600
commitfd3e4fb9100c02b6ac105c5c4eb5da4fdf0b3f93 (patch)
tree7c4e718760ca7858f260d83aa2fc9c53bb0bbf0f
parent7e59faa22a44202f7f72ca5b18c00d73acafea76 (diff)
Add an ASM file for Stadium GS.
-rw-r--r--stadiumgs/constants/move_constants.s251
-rw-r--r--stadiumgs/constants/pokemon_constants.s251
-rw-r--r--stadiumgs/constants/type_constants.s18
-rw-r--r--stadiumgs/main.s568
4 files changed, 1088 insertions, 0 deletions
diff --git a/stadiumgs/constants/move_constants.s b/stadiumgs/constants/move_constants.s
new file mode 100644
index 0000000..2b6d2ce
--- /dev/null
+++ b/stadiumgs/constants/move_constants.s
@@ -0,0 +1,251 @@
+POUND EQU 0x01
+KARATE_CHOP EQU 0x02
+DOUBLESLAP EQU 0x03
+COMET_PUNCH EQU 0x04
+MEGA_PUNCH EQU 0x05
+PAY_DAY EQU 0x06
+FIRE_PUNCH EQU 0x07
+ICE_PUNCH EQU 0x08
+THUNDERPUNCH EQU 0x09
+SCRATCH EQU 0x0A
+VICEGRIP EQU 0x0B
+GUILLOTINE EQU 0x0C
+RAZOR_WIND EQU 0x0D
+SWORDS_DANCE EQU 0x0E
+CUT EQU 0x0F
+GUST EQU 0x10
+WING_ATTACK EQU 0x11
+WHIRLWIND EQU 0x12
+FLY EQU 0x13
+BIND EQU 0x14
+SLAM EQU 0x15
+VINE_WHIP EQU 0x16
+STOMP EQU 0x17
+DOUBLE_KICK EQU 0x18
+MEGA_KICK EQU 0x19
+JUMP_KICK EQU 0x1A
+ROLLING_KICK EQU 0x1B
+SAND_ATTACK EQU 0x1C
+HEADBUTT EQU 0x1D
+HORN_ATTACK EQU 0x1E
+FURY_ATTACK EQU 0x1F
+HORN_DRILL EQU 0x20
+TACKLE EQU 0x21
+BODY_SLAM EQU 0x22
+WRAP EQU 0x23
+TAKE_DOWN EQU 0x24
+THRASH EQU 0x25
+DOUBLE_EDGE EQU 0x26
+TAIL_WHIP EQU 0x27
+POISON_STING EQU 0x28
+TWINEEDLE EQU 0x29
+PIN_MISSILE EQU 0x2A
+LEER EQU 0x2B
+BITE EQU 0x2C
+GROWL EQU 0x2D
+ROAR EQU 0x2E
+SING EQU 0x2F
+SUPERSONIC EQU 0x30
+SONICBOOM EQU 0x31
+DISABLE EQU 0x32
+ACID EQU 0x33
+EMBER EQU 0x34
+FLAMETHROWER EQU 0x35
+MIST EQU 0x36
+WATER_GUN EQU 0x37
+HYDRO_PUMP EQU 0x38
+SURF EQU 0x39
+ICE_BEAM EQU 0x3A
+BLIZZARD EQU 0x3B
+PSYBEAM EQU 0x3C
+BUBBLEBEAM EQU 0x3D
+AURORA_BEAM EQU 0x3E
+HYPER_BEAM EQU 0x3F
+PECK EQU 0x40
+DRILL_PECK EQU 0x41
+SUBMISSION EQU 0x42
+LOW_KICK EQU 0x43
+COUNTER EQU 0x44
+SEISMIC_TOSS EQU 0x45
+STRENGTH EQU 0x46
+ABSORB EQU 0x47
+MEGA_DRAIN EQU 0x48
+LEECH_SEED EQU 0x49
+GROWTH EQU 0x4A
+RAZOR_LEAF EQU 0x4B
+SOLARBEAM EQU 0x4C
+POISONPOWDER EQU 0x4D
+STUN_SPORE EQU 0x4E
+SLEEP_POWDER EQU 0x4F
+PETAL_DANCE EQU 0x50
+STRING_SHOT EQU 0x51
+DRAGON_RAGE EQU 0x52
+FIRE_SPIN EQU 0x53
+THUNDERSHOCK EQU 0x54
+THUNDERBOLT EQU 0x55
+THUNDER_WAVE EQU 0x56
+THUNDER EQU 0x57
+ROCK_THROW EQU 0x58
+EARTHQUAKE EQU 0x59
+FISSURE EQU 0x5A
+DIG EQU 0x5B
+TOXIC EQU 0x5C
+CONFUSION EQU 0x5D
+PSYCHIC_M EQU 0x5E
+HYPNOSIS EQU 0x5F
+MEDITATE EQU 0x60
+AGILITY EQU 0x61
+QUICK_ATTACK EQU 0x62
+RAGE EQU 0x63
+TELEPORT EQU 0x64
+NIGHT_SHADE EQU 0x65
+MIMIC EQU 0x66
+SCREECH EQU 0x67
+DOUBLE_TEAM EQU 0x68
+RECOVER EQU 0x69
+HARDEN EQU 0x6A
+MINIMIZE EQU 0x6B
+SMOKESCREEN EQU 0x6C
+CONFUSE_RAY EQU 0x6D
+WITHDRAW EQU 0x6E
+DEFENSE_CURL EQU 0x6F
+BARRIER EQU 0x70
+LIGHT_SCREEN EQU 0x71
+HAZE EQU 0x72
+REFLECT EQU 0x73
+FOCUS_ENERGY EQU 0x74
+BIDE EQU 0x75
+METRONOME EQU 0x76
+MIRROR_MOVE EQU 0x77
+SELFDESTRUCT EQU 0x78
+EGG_BOMB EQU 0x79
+LICK EQU 0x7A
+SMOG EQU 0x7B
+SLUDGE EQU 0x7C
+BONE_CLUB EQU 0x7D
+FIRE_BLAST EQU 0x7E
+WATERFALL EQU 0x7F
+CLAMP EQU 0x80
+SWIFT EQU 0x81
+SKULL_BASH EQU 0x82
+SPIKE_CANNON EQU 0x83
+CONSTRICT EQU 0x84
+AMNESIA EQU 0x85
+KINESIS EQU 0x86
+SOFTBOILED EQU 0x87
+HI_JUMP_KICK EQU 0x88
+GLARE EQU 0x89
+DREAM_EATER EQU 0x8A
+POISON_GAS EQU 0x8B
+BARRAGE EQU 0x8C
+LEECH_LIFE EQU 0x8D
+LOVELY_KISS EQU 0x8E
+SKY_ATTACK EQU 0x8F
+TRANSFORM EQU 0x90
+BUBBLE EQU 0x91
+DIZZY_PUNCH EQU 0x92
+SPORE EQU 0x93
+FLASH EQU 0x94
+PSYWAVE EQU 0x95
+SPLASH EQU 0x96
+ACID_ARMOR EQU 0x97
+CRABHAMMER EQU 0x98
+EXPLOSION EQU 0x99
+FURY_SWIPES EQU 0x9A
+BONEMERANG EQU 0x9B
+REST EQU 0x9C
+ROCK_SLIDE EQU 0x9D
+HYPER_FANG EQU 0x9E
+SHARPEN EQU 0x9F
+CONVERSION EQU 0xA0
+TRI_ATTACK EQU 0xA1
+SUPER_FANG EQU 0xA2
+SLASH EQU 0xA3
+SUBSTITUTE EQU 0xA4
+STRUGGLE EQU 0xA5
+SKETCH EQU 0xA6
+TRIPLE_KICK EQU 0xA7
+THIEF EQU 0xA8
+SPIDER_WEB EQU 0xA9
+MIND_READER EQU 0xAA
+NIGHTMARE EQU 0xAB
+FLAME_WHEEL EQU 0xAC
+SNORE EQU 0xAD
+CURSE EQU 0xAE
+FLAIL EQU 0xAF
+CONVERSION2 EQU 0xB0
+AEROBLAST EQU 0xB1
+COTTON_SPORE EQU 0xB2
+REVERSAL EQU 0xB3
+SPITE EQU 0xB4
+POWDER_SNOW EQU 0xB5
+PROTECT EQU 0xB6
+MACH_PUNCH EQU 0xB7
+SCARY_FACE EQU 0xB8
+FAINT_ATTACK EQU 0xB9
+SWEET_KISS EQU 0xBA
+BELLY_DRUM EQU 0xBB
+SLUDGE_BOMB EQU 0xBC
+MUD_SLAP EQU 0xBD
+OCTAZOOKA EQU 0xBE
+SPIKES EQU 0xBF
+ZAP_CANNON EQU 0xC0
+FORESIGHT EQU 0xC1
+DESTINY_BOND EQU 0xC2
+PERISH_SONG EQU 0xC3
+ICY_WIND EQU 0xC4
+DETECT EQU 0xC5
+BONE_RUSH EQU 0xC6
+LOCK_ON EQU 0xC7
+OUTRAGE EQU 0xC8
+SANDSTORM EQU 0xC9
+GIGA_DRAIN EQU 0xCA
+ENDURE EQU 0xCB
+CHARM EQU 0xCC
+ROLLOUT EQU 0xCD
+FALSE_SWIPE EQU 0xCE
+SWAGGER EQU 0xCF
+MILK_DRINK EQU 0xD0
+SPARK EQU 0xD1
+FURY_CUTTER EQU 0xD2
+STEEL_WING EQU 0xD3
+MEAN_LOOK EQU 0xD4
+ATTRACT EQU 0xD5
+SLEEP_TALK EQU 0xD6
+HEAL_BELL EQU 0xD7
+RETURN EQU 0xD8
+PRESENT EQU 0xD9
+FRUSTRATION EQU 0xDA
+SAFEGUARD EQU 0xDB
+PAIN_SPLIT EQU 0xDC
+SACRED_FIRE EQU 0xDD
+MAGNITUDE EQU 0xDE
+DYNAMICPUNCH EQU 0xDF
+MEGAHORN EQU 0xE0
+DRAGONBREATH EQU 0xE1
+BATON_PASS EQU 0xE2
+ENCORE EQU 0xE3
+PURSUIT EQU 0xE4
+RAPID_SPIN EQU 0xE5
+SWEET_SCENT EQU 0xE6
+IRON_TAIL EQU 0xE7
+METAL_CLAW EQU 0xE8
+VITAL_THROW EQU 0xE9
+MORNING_SUN EQU 0xEA
+SYNTHESIS EQU 0xEB
+MOONLIGHT EQU 0xEC
+HIDDEN_POWER EQU 0xED
+CROSS_CHOP EQU 0xEE
+TWISTER EQU 0xEF
+RAIN_DANCE EQU 0xF0
+SUNNY_DAY EQU 0xF1
+CRUNCH EQU 0xF2
+MIRROR_COAT EQU 0xF3
+PSYCH_UP EQU 0xF4
+EXTREMESPEED EQU 0xF5
+ANCIENTPOWER EQU 0xF6
+SHADOW_BALL EQU 0xF7
+FUTURE_SIGHT EQU 0xF8
+ROCK_SMASH EQU 0xF9
+WHIRLPOOL EQU 0xFA
+BEAT_UP EQU 0xFB
diff --git a/stadiumgs/constants/pokemon_constants.s b/stadiumgs/constants/pokemon_constants.s
new file mode 100644
index 0000000..8f0900c
--- /dev/null
+++ b/stadiumgs/constants/pokemon_constants.s
@@ -0,0 +1,251 @@
+BULBASAUR EQU 1
+IVYSAUR EQU 2
+VENUSAUR EQU 3
+CHARMANDER EQU 4
+CHARMELEON EQU 5
+CHARIZARD EQU 6
+SQUIRTLE EQU 7
+WARTORTLE EQU 8
+BLASTOISE EQU 9
+CATERPIE EQU 10
+METAPOD EQU 11
+BUTTERFREE EQU 12
+WEEDLE EQU 13
+KAKUNA EQU 14
+BEEDRILL EQU 15
+PIDGEY EQU 16
+PIDGEOTTO EQU 17
+PIDGEOT EQU 18
+RATTATA EQU 19
+RATICATE EQU 20
+SPEAROW EQU 21
+FEAROW EQU 22
+EKANS EQU 23
+ARBOK EQU 24
+PIKACHU EQU 25
+RAICHU EQU 26
+SANDSHREW EQU 27
+SANDSLASH EQU 28
+NIDORAN_F EQU 29
+NIDORINA EQU 30
+NIDOQUEEN EQU 31
+NIDORAN_M EQU 32
+NIDORINO EQU 33
+NIDOKING EQU 34
+CLEFAIRY EQU 35
+CLEFABLE EQU 36
+VULPIX EQU 37
+NINETALES EQU 38
+JIGGLYPUFF EQU 39
+WIGGLYTUFF EQU 40
+ZUBAT EQU 41
+GOLBAT EQU 42
+ODDISH EQU 43
+GLOOM EQU 44
+VILEPLUME EQU 45
+PARAS EQU 46
+PARASECT EQU 47
+VENONAT EQU 48
+VENOMOTH EQU 49
+DIGLETT EQU 50
+DUGTRIO EQU 51
+MEOWTH EQU 52
+PERSIAN EQU 53
+PSYDUCK EQU 54
+GOLDUCK EQU 55
+MANKEY EQU 56
+PRIMEAPE EQU 57
+GROWLITHE EQU 58
+ARCANINE EQU 59
+POLIWAG EQU 60
+POLIWHIRL EQU 61
+POLIWRATH EQU 62
+ABRA EQU 63
+KADABRA EQU 64
+ALAKAZAM EQU 65
+MACHOP EQU 66
+MACHOKE EQU 67
+MACHAMP EQU 68
+BELLSPROUT EQU 69
+WEEPINBELL EQU 70
+VICTREEBEL EQU 71
+TENTACOOL EQU 72
+TENTACRUEL EQU 73
+GEODUDE EQU 74
+GRAVELER EQU 75
+GOLEM EQU 76
+PONYTA EQU 77
+RAPIDASH EQU 78
+SLOWPOKE EQU 79
+SLOWBRO EQU 80
+MAGNEMITE EQU 81
+MAGNETON EQU 82
+FARFETCH_D EQU 83
+DODUO EQU 84
+DODRIO EQU 85
+SEEL EQU 86
+DEWGONG EQU 87
+GRIMER EQU 88
+MUK EQU 89
+SHELLDER EQU 90
+CLOYSTER EQU 91
+GASTLY EQU 92
+HAUNTER EQU 93
+GENGAR EQU 94
+ONIX EQU 95
+DROWZEE EQU 96
+HYPNO EQU 97
+KRABBY EQU 98
+KINGLER EQU 99
+VOLTORB EQU 100
+ELECTRODE EQU 101
+EXEGGCUTE EQU 102
+EXEGGUTOR EQU 103
+CUBONE EQU 104
+MAROWAK EQU 105
+HITMONLEE EQU 106
+HITMONCHAN EQU 107
+LICKITUNG EQU 108
+KOFFING EQU 109
+WEEZING EQU 110
+RHYHORN EQU 111
+RHYDON EQU 112
+CHANSEY EQU 113
+TANGELA EQU 114
+KANGASKHAN EQU 115
+HORSEA EQU 116
+SEADRA EQU 117
+GOLDEEN EQU 118
+SEAKING EQU 119
+STARYU EQU 120
+STARMIE EQU 121
+MR__MIME EQU 122
+SCYTHER EQU 123
+JYNX EQU 124
+ELECTABUZZ EQU 125
+MAGMAR EQU 126
+PINSIR EQU 127
+TAUROS EQU 128
+MAGIKARP EQU 129
+GYARADOS EQU 130
+LAPRAS EQU 131
+DITTO EQU 132
+EEVEE EQU 133
+VAPOREON EQU 134
+JOLTEON EQU 135
+FLAREON EQU 136
+PORYGON EQU 137
+OMANYTE EQU 138
+OMASTAR EQU 139
+KABUTO EQU 140
+KABUTOPS EQU 141
+AERODACTYL EQU 142
+SNORLAX EQU 143
+ARTICUNO EQU 144
+ZAPDOS EQU 145
+MOLTRES EQU 146
+DRATINI EQU 147
+DRAGONAIR EQU 148
+DRAGONITE EQU 149
+MEWTWO EQU 150
+MEW EQU 151
+CHIKORITA EQU 152
+BAYLEEF EQU 153
+MEGANIUM EQU 154
+CYNDAQUIL EQU 155
+QUILAVA EQU 156
+TYPHLOSION EQU 157
+TOTODILE EQU 158
+CROCONAW EQU 159
+FERALIGATR EQU 160
+SENTRET EQU 161
+FURRET EQU 162
+HOOTHOOT EQU 163
+NOCTOWL EQU 164
+LEDYBA EQU 165
+LEDIAN EQU 166
+SPINARAK EQU 167
+ARIADOS EQU 168
+CROBAT EQU 169
+CHINCHOU EQU 170
+LANTURN EQU 171
+PICHU EQU 172
+CLEFFA EQU 173
+IGGLYBUFF EQU 174
+TOGEPI EQU 175
+TOGETIC EQU 176
+NATU EQU 177
+XATU EQU 178
+MAREEP EQU 179
+FLAAFFY EQU 180
+AMPHAROS EQU 181
+BELLOSSOM EQU 182
+MARILL EQU 183
+AZUMARILL EQU 184
+SUDOWOODO EQU 185
+POLITOED EQU 186
+HOPPIP EQU 187
+SKIPLOOM EQU 188
+JUMPLUFF EQU 189
+AIPOM EQU 190
+SUNKERN EQU 191
+SUNFLORA EQU 192
+YANMA EQU 193
+WOOPER EQU 194
+QUAGSIRE EQU 195
+ESPEON EQU 196
+UMBREON EQU 197
+MURKROW EQU 198
+SLOWKING EQU 199
+MISDREAVUS EQU 200
+UNOWN EQU 201
+WOBBUFFET EQU 202
+GIRAFARIG EQU 203
+PINECO EQU 204
+FORRETRESS EQU 205
+DUNSPARCE EQU 206
+GLIGAR EQU 207
+STEELIX EQU 208
+SNUBBULL EQU 209
+GRANBULL EQU 210
+QWILFISH EQU 211
+SCIZOR EQU 212
+SHUCKLE EQU 213
+HERACROSS EQU 214
+SNEASEL EQU 215
+TEDDIURSA EQU 216
+URSARING EQU 217
+SLUGMA EQU 218
+MAGCARGO EQU 219
+SWINUB EQU 220
+PILOSWINE EQU 221
+CORSOLA EQU 222
+REMORAID EQU 223
+OCTILLERY EQU 224
+DELIBIRD EQU 225
+MANTINE EQU 226
+SKARMORY EQU 227
+HOUNDOUR EQU 228
+HOUNDOOM EQU 229
+KINGDRA EQU 230
+PHANPY EQU 231
+DONPHAN EQU 232
+PORYGON2 EQU 233
+STANTLER EQU 234
+SMEARGLE EQU 235
+TYROGUE EQU 236
+HITMONTOP EQU 237
+SMOOCHUM EQU 238
+ELEKID EQU 239
+MAGBY EQU 240
+MILTANK EQU 241
+BLISSEY EQU 242
+RAIKOU EQU 243
+ENTEI EQU 244
+SUICUNE EQU 245
+LARVITAR EQU 246
+PUPITAR EQU 247
+TYRANITAR EQU 248
+LUGIA EQU 249
+HO_OH EQU 250
+CELEBI EQU 251
diff --git a/stadiumgs/constants/type_constants.s b/stadiumgs/constants/type_constants.s
new file mode 100644
index 0000000..d5fed69
--- /dev/null
+++ b/stadiumgs/constants/type_constants.s
@@ -0,0 +1,18 @@
+NORMAL EQU 0x00
+FIGHTING EQU 0x01
+FLYING EQU 0x02
+POISON EQU 0x03
+GROUND EQU 0x04
+ROCK EQU 0x05
+BUG EQU 0x07
+GHOST EQU 0x08
+STEEL EQU 0x09
+
+FIRE EQU 0x14
+WATER EQU 0x15
+GRASS EQU 0x16
+ELECTRIC EQU 0x17
+PSYCHIC EQU 0x18
+ICE EQU 0x19
+DRAGON EQU 0x1A
+DARK EQU 0x1B
diff --git a/stadiumgs/main.s b/stadiumgs/main.s
new file mode 100644
index 0000000..854b8ac
--- /dev/null
+++ b/stadiumgs/main.s
@@ -0,0 +1,568 @@
+.create "pokestadiumgs.n64",0
+.n64
+.include "constants/type_constants.s"
+.include "constants/move_constants.s"
+.incbin "baseromgs.n64",0,0x98a14
+
+TMHMMoves:
+ .db DYNAMICPUNCH
+ .db HEADBUTT
+ .db CURSE
+ .db ROLLOUT
+ .db ROAR
+ .db TOXIC
+ .db ZAP_CANNON
+ .db ROCK_SMASH
+ .db PSYCH_UP
+ .db HIDDEN_POWER
+ .db SUNNY_DAY
+ .db SWEET_SCENT
+ .db SNORE
+ .db BLIZZARD
+ .db HYPER_BEAM
+ .db ICY_WIND
+ .db PROTECT
+ .db RAIN_DANCE
+ .db GIGA_DRAIN
+ .db ENDURE
+ .db FRUSTRATION
+ .db SOLARBEAM
+ .db IRON_TAIL
+ .db DRAGONBREATH
+ .db THUNDER
+ .db EARTHQUAKE
+ .db RETURN
+ .db DIG
+ .db PSYCHIC_M
+ .db SHADOW_BALL
+ .db MUD_SLAP
+ .db DOUBLE_TEAM
+ .db ICE_PUNCH
+ .db SWAGGER
+ .db SLEEP_TALK
+ .db SLUDGE_BOMB
+ .db SANDSTORM
+ .db FIRE_BLAST
+ .db SWIFT
+ .db DEFENSE_CURL
+ .db THUNDERPUNCH
+ .db DREAM_EATER
+ .db DETECT
+ .db REST
+ .db ATTRACT
+ .db THIEF
+ .db STEEL_WING
+ .db FIRE_PUNCH
+ .db FURY_CUTTER
+ .db NIGHTMARE
+ .db CUT
+ .db FLY
+ .db SURF
+ .db STRENGTH
+ .db FLASH
+ .db WHIRLPOOL
+ .db WATERFALL
+ .align
+
+.incbin "baseromgs.n64",0x98a50,0x98a90-0x98a50
+
+SUPER_EFFECTIVE EQU 20
+NOT_VERY_EFFECTIVE EQU 05
+NO_EFFECT EQU 00
+
+TypeMatchup:
+ .db NORMAL, ROCK, NOT_VERY_EFFECTIVE
+ .db NORMAL, STEEL, NOT_VERY_EFFECTIVE
+ .db FIRE, FIRE, NOT_VERY_EFFECTIVE
+ .db FIRE, WATER, NOT_VERY_EFFECTIVE
+ .db FIRE, GRASS, SUPER_EFFECTIVE
+ .db FIRE, ICE, SUPER_EFFECTIVE
+ .db FIRE, BUG, SUPER_EFFECTIVE
+ .db FIRE, ROCK, NOT_VERY_EFFECTIVE
+ .db FIRE, DRAGON, NOT_VERY_EFFECTIVE
+ .db FIRE, STEEL, SUPER_EFFECTIVE
+ .db WATER, FIRE, SUPER_EFFECTIVE
+ .db WATER, WATER, NOT_VERY_EFFECTIVE
+ .db WATER, GRASS, NOT_VERY_EFFECTIVE
+ .db WATER, GROUND, SUPER_EFFECTIVE
+ .db WATER, ROCK, SUPER_EFFECTIVE
+ .db WATER, DRAGON, NOT_VERY_EFFECTIVE
+ .db ELECTRIC, WATER, SUPER_EFFECTIVE
+ .db ELECTRIC, ELECTRIC, NOT_VERY_EFFECTIVE
+ .db ELECTRIC, GRASS, NOT_VERY_EFFECTIVE
+ .db ELECTRIC, GROUND, NO_EFFECT
+ .db ELECTRIC, FLYING, SUPER_EFFECTIVE
+ .db ELECTRIC, DRAGON, NOT_VERY_EFFECTIVE
+ .db GRASS, FIRE, NOT_VERY_EFFECTIVE
+ .db GRASS, WATER, SUPER_EFFECTIVE
+ .db GRASS, GRASS, NOT_VERY_EFFECTIVE
+ .db GRASS, POISON, NOT_VERY_EFFECTIVE
+ .db GRASS, GROUND, SUPER_EFFECTIVE
+ .db GRASS, FLYING, NOT_VERY_EFFECTIVE
+ .db GRASS, BUG, NOT_VERY_EFFECTIVE
+ .db GRASS, ROCK, SUPER_EFFECTIVE
+ .db GRASS, DRAGON, NOT_VERY_EFFECTIVE
+ .db GRASS, STEEL, NOT_VERY_EFFECTIVE
+ .db ICE, WATER, NOT_VERY_EFFECTIVE
+ .db ICE, GRASS, SUPER_EFFECTIVE
+ .db ICE, ICE, NOT_VERY_EFFECTIVE
+ .db ICE, GROUND, SUPER_EFFECTIVE
+ .db ICE, FLYING, SUPER_EFFECTIVE
+ .db ICE, DRAGON, SUPER_EFFECTIVE
+ .db ICE, STEEL, NOT_VERY_EFFECTIVE
+ .db ICE, FIRE, NOT_VERY_EFFECTIVE
+ .db FIGHTING, NORMAL, SUPER_EFFECTIVE
+ .db FIGHTING, ICE, SUPER_EFFECTIVE
+ .db FIGHTING, POISON, NOT_VERY_EFFECTIVE
+ .db FIGHTING, FLYING, NOT_VERY_EFFECTIVE
+ .db FIGHTING, PSYCHIC, NOT_VERY_EFFECTIVE
+ .db FIGHTING, BUG, NOT_VERY_EFFECTIVE
+ .db FIGHTING, ROCK, SUPER_EFFECTIVE
+ .db FIGHTING, DARK, SUPER_EFFECTIVE
+ .db FIGHTING, STEEL, SUPER_EFFECTIVE
+ .db POISON, GRASS, SUPER_EFFECTIVE
+ .db POISON, POISON, NOT_VERY_EFFECTIVE
+ .db POISON, GROUND, NOT_VERY_EFFECTIVE
+ .db POISON, ROCK, NOT_VERY_EFFECTIVE
+ .db POISON, GHOST, NOT_VERY_EFFECTIVE
+ .db POISON, STEEL, NO_EFFECT
+ .db GROUND, FIRE, SUPER_EFFECTIVE
+ .db GROUND, ELECTRIC, SUPER_EFFECTIVE
+ .db GROUND, GRASS, NOT_VERY_EFFECTIVE
+ .db GROUND, POISON, SUPER_EFFECTIVE
+ .db GROUND, FLYING, NO_EFFECT
+ .db GROUND, BUG, NOT_VERY_EFFECTIVE
+ .db GROUND, ROCK, SUPER_EFFECTIVE
+ .db GROUND, STEEL, SUPER_EFFECTIVE
+ .db FLYING, ELECTRIC, NOT_VERY_EFFECTIVE
+ .db FLYING, GRASS, SUPER_EFFECTIVE
+ .db FLYING, FIGHTING, SUPER_EFFECTIVE
+ .db FLYING, BUG, SUPER_EFFECTIVE
+ .db FLYING, ROCK, NOT_VERY_EFFECTIVE
+ .db FLYING, STEEL, NOT_VERY_EFFECTIVE
+ .db PSYCHIC, FIGHTING, SUPER_EFFECTIVE
+ .db PSYCHIC, POISON, SUPER_EFFECTIVE
+ .db PSYCHIC, PSYCHIC, NOT_VERY_EFFECTIVE
+ .db PSYCHIC, DARK, NO_EFFECT
+ .db PSYCHIC, STEEL, NOT_VERY_EFFECTIVE
+ .db BUG, FIRE, NOT_VERY_EFFECTIVE
+ .db BUG, GRASS, SUPER_EFFECTIVE
+ .db BUG, FIGHTING, NOT_VERY_EFFECTIVE
+ .db BUG, POISON, NOT_VERY_EFFECTIVE
+ .db BUG, FLYING, NOT_VERY_EFFECTIVE
+ .db BUG, PSYCHIC, SUPER_EFFECTIVE
+ .db BUG, GHOST, NOT_VERY_EFFECTIVE
+ .db BUG, DARK, SUPER_EFFECTIVE
+ .db BUG, STEEL, NOT_VERY_EFFECTIVE
+ .db ROCK, FIRE, SUPER_EFFECTIVE
+ .db ROCK, ICE, SUPER_EFFECTIVE
+ .db ROCK, FIGHTING, NOT_VERY_EFFECTIVE
+ .db ROCK, GROUND, NOT_VERY_EFFECTIVE
+ .db ROCK, FLYING, SUPER_EFFECTIVE
+ .db ROCK, BUG, SUPER_EFFECTIVE
+ .db ROCK, STEEL, NOT_VERY_EFFECTIVE
+ .db GHOST, NORMAL, NO_EFFECT
+ .db GHOST, PSYCHIC, SUPER_EFFECTIVE
+ .db GHOST, DARK, NOT_VERY_EFFECTIVE
+ .db GHOST, STEEL, NOT_VERY_EFFECTIVE
+ .db GHOST, GHOST, SUPER_EFFECTIVE
+ .db DRAGON, DRAGON, SUPER_EFFECTIVE
+ .db DRAGON, STEEL, NOT_VERY_EFFECTIVE
+ .db DARK, FIGHTING, NOT_VERY_EFFECTIVE
+ .db DARK, PSYCHIC, SUPER_EFFECTIVE
+ .db DARK, GHOST, SUPER_EFFECTIVE
+ .db DARK, DARK, NOT_VERY_EFFECTIVE
+ .db DARK, STEEL, NOT_VERY_EFFECTIVE
+ .db STEEL, FIRE, NOT_VERY_EFFECTIVE
+ .db STEEL, WATER, NOT_VERY_EFFECTIVE
+ .db STEEL, ELECTRIC, NOT_VERY_EFFECTIVE
+ .db STEEL, ICE, SUPER_EFFECTIVE
+ .db STEEL, ROCK, SUPER_EFFECTIVE
+ .db STEEL, STEEL, NOT_VERY_EFFECTIVE
+ .db -1
+ .align
+
+.incbin "baseromgs.n64",0x98bd8,0x98ef0-0x98bd8
+
+Types98EF0: ; XXX what is this?
+ .db 0x32, NORMAL
+ .db 0x33, FIGHTING
+ .db 0x34, FLYING
+ .db 0x35, POISON
+ .db 0x36, GROUND
+ .db 0x37, ROCK
+ .db 0x38, BUG
+ .db 0x39, GHOST
+ .db 0x3A, FIRE
+ .db 0x3B, WATER
+ .db 0x3C, GRASS
+ .db 0x3D, ELECTRIC
+ .db 0x3E, PSYCHIC
+ .db 0x3F, ICE
+ .db 0x40, DRAGON
+ .db 0x41, DARK
+ .db 0x42, STEEL
+ .db -1
+ .align 16
+
+BaseStats:
+; 22 bytes
+; new pokédex position
+; base hp, attack, defense, speed, special attack, special defense
+; type1, type2
+; gender ratio
+; ???, ???
+; growth rate
+; egg groups
+; TM/HMs (not including move tutor)
+.incbin "baseromgs.n64",0x98f20,0x9a4b2-0x98f20
+
+.incbin "baseromgs.n64",0x9a4b2,0x23a5000-0x9a4b2
+
+Unknown0x23A5000:
+
+.incbin "baseromgs.n64",0x23a5000,0x23a554c-0x23a5000
+
+GameBoyHeaders:
+; game id
+; ROM title
+; region
+; revision
+; checksum
+; unknown1, pointer (to what?), unknown2
+
+JAPAN EQU 0
+NON_JAPAN EQU 1
+
+POKEMON_RED EQU 1
+POKEMON_GREEN EQU 2
+POKEMON_BLUE EQU 3
+POKEMON_YELLOW EQU 4
+POKEMON_GOLD EQU 5
+POKEMON_SILVER EQU 6
+POKEMON_CRYSTAL EQU 7
+
+; no-intro: Pocket Monsters - Crystal Version (Japan)
+ .db POKEMON_CRYSTAL
+ .db "PM_CRYSTAL",0,"BXTJ"
+ .db JAPAN
+ .db 0
+ .dh 0x9a40
+ .dw 0x0d400000, UnknownGameBoy0x23a594c - Unknown0x23A5000, 0x000b0000
+
+; no-intro: Pocket Monsters Gin (Japan) (Rev A)
+ .db POKEMON_SILVER
+ .db "POKEMON_SLVAAXJ"
+ .db JAPAN
+ .db 1
+ .dh 0x1d34
+ .dw 0x00520840, UnknownGameBoy0x23a5d6c - Unknown0x23A5000, 0x000b0000
+
+; no-intro: Pocket Monsters Gin (Japan)
+ .db POKEMON_SILVER
+ .db "POKEMON_SLVAAXJ"
+ .db JAPAN
+ .db 0
+ .dh 0x7691
+ .dw 0x00520840, UnknownGameBoy0x23a618c - Unknown0x23A5000, 0x000b0000
+
+; no-intro: Pocket Monsters Kin (Japan)
+ .db POKEMON_GOLD
+ .db "POKEMON_GLDAAUJ"
+ .db JAPAN
+ .db 0
+ .dh 0x8a70
+ .dw 0x00520840, UnknownGameBoy0x23a65ac - Unknown0x23A5000, 0x000b0000
+
+; no-intro: Pocket Monsters Kin (Japan) (Rev A)
+ .db POKEMON_GOLD
+ .db "POKEMON_GLDAAUJ"
+ .db JAPAN
+ .db 1
+ .dh 0x8460
+ .dw 0x00520840, UnknownGameBoy0x23a69cc - Unknown0x23A5000, 0x000b0000
+
+; no-intro: Pocket Monsters - Pikachu (Japan) (Rev D)
+ .db POKEMON_YELLOW
+ .db "POKEMON YELLOW",0
+ .db JAPAN
+ .db 3
+ .dh 0xd984
+ .dw 0x00000000, UnknownGameBoy0x23a6dec - Unknown0x23A5000, 0x00160000
+
+; no-intro: Pocket Monsters - Pikachu (Japan) (Rev C)
+ .db POKEMON_YELLOW
+ .db "POKEMON YELLOW",0
+ .db JAPAN
+ .db 2
+ .dh 0xedd9
+ .dw 0x52fd2599, UnknownGameBoy0x23a720c - Unknown0x23A5000, 0x00160000
+
+; no-intro: Pocket Monsters - Pikachu (Japan) (Rev B)
+ .db POKEMON_YELLOW
+ .db "POKEMON YELLOW",0
+ .db JAPAN
+ .db 1
+ .dh 0x8858
+ .dw 0x5afd2d99, UnknownGameBoy0x23a762c - Unknown0x23A5000, 0x00160000
+
+; no-intro: Pocket Monsters - Pikachu (Japan) (Rev 0A)
+ .db POKEMON_YELLOW
+ .db "POKEMON YELLOW",0
+ .db JAPAN
+ .db 0
+ .dh 0x9c29
+ .dw 0xcef7dddb, UnknownGameBoy0x23a7a4c - Unknown0x23A5000, 0x00160000
+
+; no-intro: Pocket Monsters - Ao (Japan)
+ .db POKEMON_BLUE
+ .db "POKEMON BLUE",0,0,0
+ .db JAPAN
+ .db 0
+ .dh 0xdc36
+ .dw 0x00000000, UnknownGameBoy0x23a7e6c - Unknown0x23A5000, 0x00150000
+
+; no-intro: Pocket Monsters - Aka (Japan) (Rev A)
+ .db POKEMON_RED
+ .db "POKEMON RED",0,0,0,0
+ .db JAPAN
+ .db 1
+ .dh 0xb866
+ .dw 0x00000000, UnknownGameBoy0x23a828c - Unknown0x23A5000, 0x00150000
+
+; no-intro: Pocket Monsters - Midori (Japan) (Rev A)
+ .db POKEMON_GREEN
+ .db "POKEMON GREEN",0,0
+ .db JAPAN
+ .db 1
+ .dh 0xf547
+ .dw 0x00000000, UnknownGameBoy0x23a86ac - Unknown0x23A5000, 0x00160000
+
+; no-intro: Pocket Monsters - Midori (Japan)
+ .db POKEMON_GREEN
+ .db "POKEMON GREEN",0,0
+ .db JAPAN
+ .db 0
+ .dh 0xddd5
+ .dw 0x00000000, UnknownGameBoy0x23a8acc - Unknown0x23A5000, 0x00160000
+
+; no-intro: Pocket Monsters - Aka (Japan)
+ .db POKEMON_RED
+ .db "POKEMON RED",0,0,0,0
+ .db JAPAN
+ .db 0
+ .dh 0xa2c1
+ .dw 0x00000000, UnknownGameBoy0x23a8eec - Unknown0x23A5000, 0x00150000
+
+; not in no-intro
+ .db POKEMON_CRYSTAL
+ .db "PM_CRYSTAL",0,"base"
+ .db NON_JAPAN
+ .db 0
+ .dh 0x5e1c
+ .dw 0x000c0000, UnknownGameBoy0x23a930c - Unknown0x23A5000, 0x000b0000
+
+; no-intro: Pokemon - Gold Version (USA, Europe)
+ .db POKEMON_GOLD
+ .db "POKEMON_GLDAAUE"
+ .db NON_JAPAN
+ .db 0
+ .dh 0x682d
+ .dw 0x00000000, UnknownGameBoy0x23a972c - Unknown0x23A5000, 0x000b0000
+
+; no-intro: Pokemon - Silver Version (USA, Europe)
+ .db POKEMON_SILVER
+ .db "POKEMON_SLVAAXE"
+ .db NON_JAPAN
+ .db 0
+ .dh 0x0dae
+ .dw 0x00000000, UnknownGameBoy0x23a9b4c - Unknown0x23A5000, 0x000b0000
+
+; no-intro: Pokemon - Yellow Version - Special Pikachu Edition (USA, Europe)
+ .db POKEMON_YELLOW
+ .db "POKEMON YELLOW",0
+ .db NON_JAPAN
+ .db 0
+ .dh 0x047c
+ .dw 0x8f918492, UnknownGameBoy0x23a9f6c - Unknown0x23A5000, 0x00180000
+
+; no-intro: Pokemon - Red Version (USA, Europe)
+ .db POKEMON_RED
+ .db "POKEMON RED",0,0,0,0
+ .db NON_JAPAN
+ .db 0
+ .dh 0x91e6
+ .dw 0x807faba8, UnknownGameBoy0x23aa38c - Unknown0x23A5000, 0x00170000
+
+; no-intro: Pokemon - Blue Version (USA, Europe)
+ .db POKEMON_BLUE
+ .db "POKEMON BLUE",0,0,0
+ .db NON_JAPAN
+ .db 0
+ .dh 0x9d0a
+ .dw 0x807faba8, UnknownGameBoy0x23aa7ac - Unknown0x23A5000, 0x00170000
+
+; no-intro: Pokemon - Version Jaune - Edition Speciale Pikachu (France)
+ .db POKEMON_YELLOW
+ .db "POKEMON YELAPSF"
+ .db NON_JAPAN
+ .db 0
+ .dh 0xb7c1
+ .dw 0x8f83869c, UnknownGameBoy0x23aabcc - Unknown0x23A5000, 0x00180000
+
+; no-intro: Pokemon - Version Rouge (France)
+ .db POKEMON_RED
+ .db "POKEMON RED",0,0,0,0
+ .db NON_JAPAN
+ .db 0
+ .dh 0x7afc
+ .dw 0x94ad7fda, UnknownGameBoy0x23aafec - Unknown0x23A5000, 0x00170000
+
+; no-intro: Pokemon - Version Bleue (France)
+ .db POKEMON_BLUE
+ .db "POKEMON BLUE",0,0,0
+ .db NON_JAPAN
+ .db 0
+ .dh 0x56a4
+ .dw 0x94ad7fda, UnknownGameBoy0x23ab40c - Unknown0x23A5000, 0x00170000
+
+; no-intro: Pokemon - Gelbe Edition - Special Pikachu Edition (Germany)
+ .db POKEMON_YELLOW
+ .db "POKEMON YELAPSD"
+ .db NON_JAPAN
+ .db 0
+ .dh 0x66fb
+ .dw 0x8f91c092, UnknownGameBoy0x23ab82c - Unknown0x23A5000, 0x00180000
+
+; no-intro: Pokemon - Rote Edition (Germany)
+ .db POKEMON_RED
+ .db "POKEMON RED",0,0,0,0
+ .db NON_JAPAN
+ .db 0
+ .dh 0x5cdc
+ .dw 0x88a2a77f, UnknownGameBoy0x23abc4c - Unknown0x23A5000, 0x00170000
+
+; no-intro: Pokemon - Blaue Edition (Germany)
+ .db POKEMON_BLUE
+ .db "POKEMON BLUE",0,0,0
+ .db NON_JAPAN
+ .db 0
+ .dh 0x2ebc
+ .dw 0x88a2a77f, UnknownGameBoy0x23ac06c - Unknown0x23A5000, 0x00170000
+
+; no-intro: Pokemon - Versione Gialla - Speciale Edizione Pikachu (Italy)
+ .db POKEMON_YELLOW
+ .db "POKEMON YELAPSI"
+ .db NON_JAPAN
+ .db 0
+ .dh 0x4e8f
+ .dw 0x8f918492, UnknownGameBoy0x23ac48c - Unknown0x23A5000, 0x00180000
+
+; no-intro: Pokemon - Versione Rossa (Italy)
+ .db POKEMON_RED
+ .db "POKEMON RED",0,0,0,0
+ .db NON_JAPAN
+ .db 0
+ .dh 0x89d2
+ .dw 0x95aea6ab, UnknownGameBoy0x23ac8ac - Unknown0x23A5000, 0x00170000
+
+; no-intro: Pokemon - Versione Blu (Italy)
+ .db POKEMON_BLUE
+ .db "POKEMON BLUE",0,0,0
+ .db NON_JAPAN
+ .db 0
+ .dh 0x5e9c
+ .dw 0x95aea6ab, UnknownGameBoy0x23acccc - Unknown0x23A5000, 0x00170000
+
+; no-intro: Pokemon - Edicion Amarilla - Edicion Especial Pikachu (Spain)
+ .db POKEMON_YELLOW
+ .db "POKEMON YELAPSS"
+ .db NON_JAPAN
+ .db 0
+ .dh 0x5637
+ .dw 0x8f918492, UnknownGameBoy0x23ad0ec - Unknown0x23A5000, 0x00180000
+
+; no-intro: Pokemon - Edicion Roja (Spain)
+ .db POKEMON_RED
+ .db "POKEMON RED",0,0,0,0
+ .db NON_JAPAN
+ .db 0
+ .dh 0x384a
+ .dw 0xe593a47f, UnknownGameBoy0x23ad50c - Unknown0x23A5000, 0x00170000
+
+; no-intro: Pokemon - Edicion Azul (Spain)
+ .db POKEMON_BLUE
+ .db "POKEMON BLUE",0,0,0
+ .db NON_JAPAN
+ .db 0
+ .dh 0x14d7
+ .dw 0xe593a47f, UnknownGameBoy0x23ad92c - Unknown0x23A5000, 0x00170000
+
+UnknownGameBoy0x23a594c: ; Crystal Japan rev 0
+.incbin "gameboy/00.bin"
+UnknownGameBoy0x23a5d6c: ; Silver Japan rev 1
+.incbin "gameboy/01.bin"
+UnknownGameBoy0x23a618c: ; Silver Japan rev 0
+.incbin "gameboy/02.bin"
+UnknownGameBoy0x23a65ac: ; Gold Japan rev 0
+.incbin "gameboy/03.bin"
+UnknownGameBoy0x23a69cc: ; Gold Japan rev 1
+.incbin "gameboy/04.bin"
+UnknownGameBoy0x23a6dec: ; Yellow Japan rev 3
+.incbin "gameboy/05.bin"
+UnknownGameBoy0x23a720c: ; Yellow Japan rev 2
+.incbin "gameboy/06.bin"
+UnknownGameBoy0x23a762c: ; Yellow Japan rev 1
+.incbin "gameboy/07.bin"
+UnknownGameBoy0x23a7a4c: ; Yellow Japan rev 0
+.incbin "gameboy/08.bin"
+UnknownGameBoy0x23a7e6c: ; Blue Japan rev 0
+.incbin "gameboy/09.bin"
+UnknownGameBoy0x23a828c: ; Red Japan rev 1
+.incbin "gameboy/0a.bin"
+UnknownGameBoy0x23a86ac: ; Green Japan rev 1
+.incbin "gameboy/0b.bin"
+UnknownGameBoy0x23a8acc: ; Green Japan rev 0
+.incbin "gameboy/0c.bin"
+UnknownGameBoy0x23a8eec: ; Red Japan rev 0
+.incbin "gameboy/0d.bin"
+UnknownGameBoy0x23a930c: ; Crystal USA
+.incbin "gameboy/0e.bin"
+UnknownGameBoy0x23a972c: ; Gold USA
+.incbin "gameboy/0f.bin"
+UnknownGameBoy0x23a9b4c: ; Silver USA
+.incbin "gameboy/10.bin"
+UnknownGameBoy0x23a9f6c: ; Yellow USA
+.incbin "gameboy/11.bin"
+UnknownGameBoy0x23aa38c: ; Red USA
+.incbin "gameboy/12.bin"
+UnknownGameBoy0x23aa7ac: ; Blue USA
+.incbin "gameboy/13.bin"
+UnknownGameBoy0x23aabcc: ; Yellow France
+.incbin "gameboy/14.bin"
+UnknownGameBoy0x23aafec: ; Red France
+.incbin "gameboy/15.bin"
+UnknownGameBoy0x23ab40c: ; Blue France
+.incbin "gameboy/16.bin"
+UnknownGameBoy0x23ab82c: ; Yellow Germany
+.incbin "gameboy/17.bin"
+UnknownGameBoy0x23abc4c: ; Red Germany
+.incbin "gameboy/18.bin"
+UnknownGameBoy0x23ac06c: ; Blue Germany
+.incbin "gameboy/19.bin"
+UnknownGameBoy0x23ac48c: ; Yellow Italy
+.incbin "gameboy/1a.bin"
+UnknownGameBoy0x23ac8ac: ; Red Italy
+.incbin "gameboy/1b.bin"
+UnknownGameBoy0x23acccc: ; Blue Italy
+.incbin "gameboy/1c.bin"
+UnknownGameBoy0x23ad0ec: ; Yellow Spain
+.incbin "gameboy/1d.bin"
+UnknownGameBoy0x23ad50c: ; Red Spain
+.incbin "gameboy/1e.bin"
+UnknownGameBoy0x23ad92c: ; Blue Spain
+.incbin "gameboy/1f.bin"
+
+.incbin "baseromgs.n64",0x23add4c
+
+.close