summaryrefslogtreecommitdiff
path: root/data/maps
diff options
context:
space:
mode:
Diffstat (limited to 'data/maps')
-rw-r--r--data/maps/badge_maps.asm18
-rw-r--r--data/maps/dungeon_maps.asm19
-rwxr-xr-xdata/maps/force_bike_surf.asm24
-rwxr-xr-xdata/maps/hide_show_data.asm4
-rwxr-xr-xdata/maps/names.asm159
-rw-r--r--data/maps/rest_house_maps.asm2
-rwxr-xr-xdata/maps/special_warps.asm182
-rwxr-xr-xdata/maps/sprite_sets.asm24
-rwxr-xr-xdata/maps/town_map_entries.asm212
9 files changed, 288 insertions, 356 deletions
diff --git a/data/maps/badge_maps.asm b/data/maps/badge_maps.asm
index 81d95757..6b68be02 100644
--- a/data/maps/badge_maps.asm
+++ b/data/maps/badge_maps.asm
@@ -1,10 +1,10 @@
MapBadgeFlags:
- db PEWTER_GYM, %00000001
- db CERULEAN_GYM, %00000010
- db VERMILION_GYM,%00000100
- db CELADON_GYM, %00001000
- db FUCHSIA_GYM, %00010000
- db SAFFRON_GYM, %00100000
- db CINNABAR_GYM, %01000000
- db VIRIDIAN_GYM, %10000000
- db $ff
+ db PEWTER_GYM, 1 << BIT_BOULDERBADGE
+ db CERULEAN_GYM, 1 << BIT_CASCADEBADGE
+ db VERMILION_GYM, 1 << BIT_THUNDERBADGE
+ db CELADON_GYM, 1 << BIT_RAINBOWBADGE
+ db FUCHSIA_GYM, 1 << BIT_SOULBADGE
+ db SAFFRON_GYM, 1 << BIT_MARSHBADGE
+ db CINNABAR_GYM, 1 << BIT_VOLCANOBADGE
+ db VIRIDIAN_GYM, 1 << BIT_EARTHBADGE
+ db -1 ; end
diff --git a/data/maps/dungeon_maps.asm b/data/maps/dungeon_maps.asm
index 118cf46b..bec97b48 100644
--- a/data/maps/dungeon_maps.asm
+++ b/data/maps/dungeon_maps.asm
@@ -5,25 +5,18 @@ DungeonMaps1:
db ROCK_TUNNEL_1F
db SEAFOAM_ISLANDS_1F
db ROCK_TUNNEL_B1F
- db $FF
+ db -1 ; end
; GetBattleTransitionID_IsDungeonMap checks if wCurMap
; is in between or equal to each pair of maps
DungeonMaps2:
; all MT_MOON maps
- db MT_MOON_1F
- db MT_MOON_B2F
-
+ db MT_MOON_1F, MT_MOON_B2F
; all SS_ANNE maps, VICTORY_ROAD_1F, LANCES_ROOM, and HALL_OF_FAME
- db SS_ANNE_1F
- db HALL_OF_FAME
-
+ db SS_ANNE_1F, HALL_OF_FAME
; all POKEMON_TOWER maps and Lavender Town buildings
- db LAVENDER_POKECENTER
- db LAVENDER_CUBONE_HOUSE
-
+ db LAVENDER_POKECENTER, LAVENDER_CUBONE_HOUSE
; SILPH_CO_[2-8]F, POKEMON_MANSION[2F-B1F], SAFARI_ZONE, and
; CERULEAN_CAVE maps, except for SILPH_CO_1F
- db SILPH_CO_2F
- db CERULEAN_CAVE_1F
- db $FF
+ db SILPH_CO_2F, CERULEAN_CAVE_1F
+ db -1 ; end
diff --git a/data/maps/force_bike_surf.asm b/data/maps/force_bike_surf.asm
index fb352aa9..7f65333d 100755
--- a/data/maps/force_bike_surf.asm
+++ b/data/maps/force_bike_surf.asm
@@ -1,11 +1,15 @@
+force_bike_surf: MACRO
+ db \1, \3, \2
+ENDM
+
ForcedBikeOrSurfMaps:
-; map id, y, x
- db ROUTE_16,$0A,$11
- db ROUTE_16,$0B,$11
- db ROUTE_18,$08,$21
- db ROUTE_18,$09,$21
- db SEAFOAM_ISLANDS_B3F,$07,$12
- db SEAFOAM_ISLANDS_B3F,$07,$13
- db SEAFOAM_ISLANDS_B4F,$0E,$04
- db SEAFOAM_ISLANDS_B4F,$0E,$05
- db $FF ;end
+; map id, x, y
+ force_bike_surf ROUTE_16, 17, 10
+ force_bike_surf ROUTE_16, 17, 11
+ force_bike_surf ROUTE_18, 33, 8
+ force_bike_surf ROUTE_18, 33, 9
+ force_bike_surf SEAFOAM_ISLANDS_B3F, 18, 7
+ force_bike_surf SEAFOAM_ISLANDS_B3F, 19, 7
+ force_bike_surf SEAFOAM_ISLANDS_B4F, 4, 14
+ force_bike_surf SEAFOAM_ISLANDS_B4F, 5, 14
+ db -1 ; end
diff --git a/data/maps/hide_show_data.asm b/data/maps/hide_show_data.asm
index 4203e90a..f7276b8d 100755
--- a/data/maps/hide_show_data.asm
+++ b/data/maps/hide_show_data.asm
@@ -29,7 +29,7 @@ MapHSPointers:
dw NoHS
dw NoHS
dw Route15HS
- dw Rout16eHS
+ dw Route16HS
dw NoHS
dw NoHS
dw NoHS
@@ -302,7 +302,7 @@ Route12HS:
db ROUTE_12, $0A, SHOW
Route15HS:
db ROUTE_15, $0B, SHOW
-Rout16eHS:
+Route16HS:
db ROUTE_16, $07, SHOW
Route22HS:
db ROUTE_22, $01, HIDE
diff --git a/data/maps/names.asm b/data/maps/names.asm
index 493f3936..6bdb66d5 100755
--- a/data/maps/names.asm
+++ b/data/maps/names.asm
@@ -1,107 +1,54 @@
MapNames:
-PalletTownName:
- db "PALLET TOWN@"
-ViridianCityName:
- db "VIRIDIAN CITY@"
-PewterCityName:
- db "PEWTER CITY@"
-CeruleanCityName:
- db "CERULEAN CITY@"
-LavenderTownName:
- db "LAVENDER TOWN@"
-VermilionCityName:
- db "VERMILION CITY@"
-CeladonCityName:
- db "CELADON CITY@"
-FuchsiaCityName:
- db "FUCHSIA CITY@"
-CinnabarIslandName:
- db "CINNABAR ISLAND@"
-IndigoPlateauName:
- db "INDIGO PLATEAU@"
-SaffronCityName:
- db "SAFFRON CITY@"
-Route1Name:
- db "ROUTE 1@"
-Route2Name:
- db "ROUTE 2@"
-Route3Name:
- db "ROUTE 3@"
-Route4Name:
- db "ROUTE 4@"
-Route5Name:
- db "ROUTE 5@"
-Route6Name:
- db "ROUTE 6@"
-Route7Name:
- db "ROUTE 7@"
-Route8Name:
- db "ROUTE 8@"
-Route9Name:
- db "ROUTE 9@"
-Route10Name:
- db "ROUTE 10@"
-Route11Name:
- db "ROUTE 11@"
-Route12Name:
- db "ROUTE 12@"
-Route13Name:
- db "ROUTE 13@"
-Route14Name:
- db "ROUTE 14@"
-Route15Name:
- db "ROUTE 15@"
-Route16Name:
- db "ROUTE 16@"
-Route17Name:
- db "ROUTE 17@"
-Route18Name:
- db "ROUTE 18@"
-Route19Name:
- db "SEA ROUTE 19@"
-Route20Name:
- db "SEA ROUTE 20@"
-Route21Name:
- db "SEA ROUTE 21@"
-Route22Name:
- db "ROUTE 22@"
-Route23Name:
- db "ROUTE 23@"
-Route24Name:
- db "ROUTE 24@"
-Route25Name:
- db "ROUTE 25@"
-ViridianForestName:
- db "VIRIDIAN FOREST@"
-MountMoonName:
- db "MT.MOON@"
-RockTunnelName:
- db "ROCK TUNNEL@"
-SeaCottageName:
- db "SEA COTTAGE@"
-SSAnneName:
- db "S.S.ANNE@"
-PokemonLeagueName:
- db "#MON LEAGUE@"
-UndergroundPathName:
- db "UNDERGROUND PATH@"
-PokemonTowerName:
- db "#MON TOWER@"
-SeafoamIslandsName:
- db "SEAFOAM ISLANDS@"
-VictoryRoadName:
- db "VICTORY ROAD@"
-DiglettsCaveName:
- db "DIGLETT's CAVE@"
-RocketHQName:
- db "ROCKET HQ@"
-SilphCoName:
- db "SILPH CO.@"
-PokemonMansionName:
- db "<PKMN> MANSION@"
-SafariZoneName:
- db "SAFARI ZONE@"
-CeruleanCaveName:
- db "CERULEAN CAVE@"
-PowerPlantName:
- db "POWER PLANT@"
+PalletTownName: db "PALLET TOWN@"
+ViridianCityName: db "VIRIDIAN CITY@"
+PewterCityName: db "PEWTER CITY@"
+CeruleanCityName: db "CERULEAN CITY@"
+LavenderTownName: db "LAVENDER TOWN@"
+VermilionCityName: db "VERMILION CITY@"
+CeladonCityName: db "CELADON CITY@"
+FuchsiaCityName: db "FUCHSIA CITY@"
+CinnabarIslandName: db "CINNABAR ISLAND@"
+IndigoPlateauName: db "INDIGO PLATEAU@"
+SaffronCityName: db "SAFFRON CITY@"
+Route1Name: db "ROUTE 1@"
+Route2Name: db "ROUTE 2@"
+Route3Name: db "ROUTE 3@"
+Route4Name: db "ROUTE 4@"
+Route5Name: db "ROUTE 5@"
+Route6Name: db "ROUTE 6@"
+Route7Name: db "ROUTE 7@"
+Route8Name: db "ROUTE 8@"
+Route9Name: db "ROUTE 9@"
+Route10Name: db "ROUTE 10@"
+Route11Name: db "ROUTE 11@"
+Route12Name: db "ROUTE 12@"
+Route13Name: db "ROUTE 13@"
+Route14Name: db "ROUTE 14@"
+Route15Name: db "ROUTE 15@"
+Route16Name: db "ROUTE 16@"
+Route17Name: db "ROUTE 17@"
+Route18Name: db "ROUTE 18@"
+Route19Name: db "SEA ROUTE 19@"
+Route20Name: db "SEA ROUTE 20@"
+Route21Name: db "SEA ROUTE 21@"
+Route22Name: db "ROUTE 22@"
+Route23Name: db "ROUTE 23@"
+Route24Name: db "ROUTE 24@"
+Route25Name: db "ROUTE 25@"
+ViridianForestName: db "VIRIDIAN FOREST@"
+MountMoonName: db "MT.MOON@"
+RockTunnelName: db "ROCK TUNNEL@"
+SeaCottageName: db "SEA COTTAGE@"
+SSAnneName: db "S.S.ANNE@"
+PokemonLeagueName: db "#MON LEAGUE@"
+UndergroundPathName: db "UNDERGROUND PATH@"
+PokemonTowerName: db "#MON TOWER@"
+SeafoamIslandsName: db "SEAFOAM ISLANDS@"
+VictoryRoadName: db "VICTORY ROAD@"
+DiglettsCaveName: db "DIGLETT's CAVE@"
+RocketHQName: db "ROCKET HQ@"
+SilphCoName: db "SILPH CO.@"
+PokemonMansionName: db "<PKMN> MANSION@"
+SafariZoneName: db "SAFARI ZONE@"
+CeruleanCaveName: db "CERULEAN CAVE@"
+PowerPlantName: db "POWER PLANT@"
diff --git a/data/maps/rest_house_maps.asm b/data/maps/rest_house_maps.asm
index 2feb89d3..88f0845a 100644
--- a/data/maps/rest_house_maps.asm
+++ b/data/maps/rest_house_maps.asm
@@ -2,4 +2,4 @@ SafariZoneRestHouses:
db SAFARI_ZONE_WEST_REST_HOUSE
db SAFARI_ZONE_EAST_REST_HOUSE
db SAFARI_ZONE_NORTH_REST_HOUSE
- db -1
+ db -1 ; end
diff --git a/data/maps/special_warps.asm b/data/maps/special_warps.asm
index 6b536b67..80f88cc4 100755
--- a/data/maps/special_warps.asm
+++ b/data/maps/special_warps.asm
@@ -2,118 +2,90 @@
; 00: target map ID
; 01: which dungeon warp in the source map was used
DungeonWarpList:
- db SEAFOAM_ISLANDS_B1F,$01
- db SEAFOAM_ISLANDS_B1F,$02
- db SEAFOAM_ISLANDS_B2F,$01
- db SEAFOAM_ISLANDS_B2F,$02
- db SEAFOAM_ISLANDS_B3F,$01
- db SEAFOAM_ISLANDS_B3F,$02
- db SEAFOAM_ISLANDS_B4F,$01
- db SEAFOAM_ISLANDS_B4F,$02
- db VICTORY_ROAD_2F,$02
- db POKEMON_MANSION_1F,$01
- db POKEMON_MANSION_1F,$02
- db POKEMON_MANSION_2F,$03
- db $FF
+ db SEAFOAM_ISLANDS_B1F, 1
+ db SEAFOAM_ISLANDS_B1F, 2
+ db SEAFOAM_ISLANDS_B2F, 1
+ db SEAFOAM_ISLANDS_B2F, 2
+ db SEAFOAM_ISLANDS_B3F, 1
+ db SEAFOAM_ISLANDS_B3F, 2
+ db SEAFOAM_ISLANDS_B4F, 1
+ db SEAFOAM_ISLANDS_B4F, 2
+ db VICTORY_ROAD_2F, 2
+ db POKEMON_MANSION_1F, 1
+ db POKEMON_MANSION_1F, 2
+ db POKEMON_MANSION_2F, 3
+ db -1 ; end
+
+
+fly_warp: MACRO
+ event_displacement \1_WIDTH, \2, \3
+ db ((\3) & $01) ;sub-block Y
+ db ((\2) & $01) ;sub-block X
+ENDM
DungeonWarpData:
- FLYWARP_DATA SEAFOAM_ISLANDS_B1F_WIDTH,7,18
- FLYWARP_DATA SEAFOAM_ISLANDS_B1F_WIDTH,7,23
- FLYWARP_DATA SEAFOAM_ISLANDS_B2F_WIDTH,7,19
- FLYWARP_DATA SEAFOAM_ISLANDS_B2F_WIDTH,7,22
- FLYWARP_DATA SEAFOAM_ISLANDS_B3F_WIDTH,7,18
- FLYWARP_DATA SEAFOAM_ISLANDS_B3F_WIDTH,7,19
- FLYWARP_DATA SEAFOAM_ISLANDS_B4F_WIDTH,14,4
- FLYWARP_DATA SEAFOAM_ISLANDS_B4F_WIDTH,14,5
- FLYWARP_DATA VICTORY_ROAD_2F_WIDTH,16,22
- FLYWARP_DATA POKEMON_MANSION_1F_WIDTH,14,16
- FLYWARP_DATA POKEMON_MANSION_1F_WIDTH,14,16
- FLYWARP_DATA POKEMON_MANSION_2F_WIDTH,14,18
+ fly_warp SEAFOAM_ISLANDS_B1F, 18, 7
+ fly_warp SEAFOAM_ISLANDS_B1F, 23, 7
+ fly_warp SEAFOAM_ISLANDS_B2F, 19, 7
+ fly_warp SEAFOAM_ISLANDS_B2F, 22, 7
+ fly_warp SEAFOAM_ISLANDS_B3F, 18, 7
+ fly_warp SEAFOAM_ISLANDS_B3F, 19, 7
+ fly_warp SEAFOAM_ISLANDS_B4F, 4, 14
+ fly_warp SEAFOAM_ISLANDS_B4F, 5, 14
+ fly_warp VICTORY_ROAD_2F, 22, 16
+ fly_warp POKEMON_MANSION_1F, 16, 14
+ fly_warp POKEMON_MANSION_1F, 16, 14
+ fly_warp POKEMON_MANSION_2F, 18, 14
-;Format:
-; db Map_id
-; FLYWARP_DATA [Map Width][Y-pos][X-pos]
-; db Tileset_id
-FirstMapSpec:
- db REDS_HOUSE_2F
- FLYWARP_DATA REDS_HOUSE_2F_WIDTH,6,3
- db REDS_HOUSE_2
-TradeCenterSpec1:
- db TRADE_CENTER
- FLYWARP_DATA TRADE_CENTER_WIDTH,4,3
- db CLUB
+special_warp_spec: MACRO
+ db \1
+ fly_warp \1, \2, \3
+ db \4
+ENDM
-TradeCenterSpec2:
- db TRADE_CENTER
- FLYWARP_DATA TRADE_CENTER_WIDTH,4,6
- db CLUB
+FirstMapSpec:
+ special_warp_spec REDS_HOUSE_2F, 3, 6, REDS_HOUSE_2
+TradeCenterSpec1:
+ special_warp_spec TRADE_CENTER, 3, 4, CLUB
+TradeCenterSpec2:
+ special_warp_spec TRADE_CENTER, 6, 4, CLUB
+ColosseumSpec1:
+ special_warp_spec COLOSSEUM, 3, 4, CLUB
+ColosseumSpec2:
+ special_warp_spec COLOSSEUM, 6, 4, CLUB
-ColosseumSpec1:
- db COLOSSEUM
- FLYWARP_DATA COLOSSEUM_WIDTH,4,3
- db CLUB
-ColosseumSpec2:
- db COLOSSEUM
- FLYWARP_DATA COLOSSEUM_WIDTH,4,6
- db CLUB
+fly_warp_spec: MACRO
+ db \1, 0
+ dw \2
+ENDM
FlyWarpDataPtr:
- db PALLET_TOWN, 0
- dw PalletTownFlyWarp
- db VIRIDIAN_CITY, 0
- dw ViridianCityFlyWarp
- db PEWTER_CITY, 0
- dw PewterCityFlyWarp
- db CERULEAN_CITY, 0
- dw CeruleanCityFlyWarp
- db LAVENDER_TOWN, 0
- dw LavenderTownFlyWarp
- db VERMILION_CITY, 0
- dw VermilionCityFlyWarp
- db CELADON_CITY, 0
- dw CeladonCityFlyWarp
- db FUCHSIA_CITY, 0
- dw FuchsiaCityFlyWarp
- db CINNABAR_ISLAND, 0
- dw CinnabarIslandFlyWarp
- db INDIGO_PLATEAU, 0
- dw IndigoPlateauFlyWarp
- db SAFFRON_CITY, 0
- dw SaffronCityFlyWarp
- db ROUTE_4, 0
- dw Route4FlyWarp
- db ROUTE_10, 0
- dw Route10FlyWarp
+ fly_warp_spec PALLET_TOWN, .PalletTown
+ fly_warp_spec VIRIDIAN_CITY, .ViridianCity
+ fly_warp_spec PEWTER_CITY, .PewterCity
+ fly_warp_spec CERULEAN_CITY, .CeruleanCity
+ fly_warp_spec LAVENDER_TOWN, .LavenderTown
+ fly_warp_spec VERMILION_CITY, .VermilionCity
+ fly_warp_spec CELADON_CITY, .CeladonCity
+ fly_warp_spec FUCHSIA_CITY, .FuchsiaCity
+ fly_warp_spec CINNABAR_ISLAND, .CinnabarIsland
+ fly_warp_spec INDIGO_PLATEAU, .IndigoPlateau
+ fly_warp_spec SAFFRON_CITY, .SaffronCity
+ fly_warp_spec ROUTE_4, .Route4
+ fly_warp_spec ROUTE_10, .Route10
-; Original Format:
-; [Event Displacement][Y-block][X-block][Y-sub_block][X-sub_block]
-; Macro Format:
-; FLYWARP_DATA [Map Width][Y-pos][X-pos]
-PalletTownFlyWarp:
- FLYWARP_DATA PALLET_TOWN_WIDTH, 6, 5
-ViridianCityFlyWarp:
- FLYWARP_DATA VIRIDIAN_CITY_WIDTH, 26, 23
-PewterCityFlyWarp:
- FLYWARP_DATA PEWTER_CITY_WIDTH, 26, 13
-CeruleanCityFlyWarp:
- FLYWARP_DATA CERULEAN_CITY_WIDTH, 18, 19
-LavenderTownFlyWarp:
- FLYWARP_DATA LAVENDER_TOWN_WIDTH, 6, 3
-VermilionCityFlyWarp:
- FLYWARP_DATA VERMILION_CITY_WIDTH, 4, 11
-CeladonCityFlyWarp:
- FLYWARP_DATA CELADON_CITY_WIDTH, 10, 41
-FuchsiaCityFlyWarp:
- FLYWARP_DATA FUCHSIA_CITY_WIDTH, 28, 19
-CinnabarIslandFlyWarp:
- FLYWARP_DATA CINNABAR_ISLAND_WIDTH, 12, 11
-IndigoPlateauFlyWarp:
- FLYWARP_DATA INDIGO_PLATEAU_WIDTH, 6, 9
-SaffronCityFlyWarp:
- FLYWARP_DATA SAFFRON_CITY_WIDTH, 30, 9
-Route4FlyWarp:
- FLYWARP_DATA ROUTE_4_WIDTH, 6, 11
-Route10FlyWarp:
- FLYWARP_DATA ROUTE_10_WIDTH, 20, 11
+.PalletTown: fly_warp PALLET_TOWN, 5, 6
+.ViridianCity: fly_warp VIRIDIAN_CITY, 23, 26
+.PewterCity: fly_warp PEWTER_CITY, 13, 26
+.CeruleanCity: fly_warp CERULEAN_CITY, 19, 18
+.LavenderTown: fly_warp LAVENDER_TOWN, 3, 6
+.VermilionCity: fly_warp VERMILION_CITY, 11, 4
+.CeladonCity: fly_warp CELADON_CITY, 41, 10
+.FuchsiaCity: fly_warp FUCHSIA_CITY, 19, 28
+.CinnabarIsland: fly_warp CINNABAR_ISLAND, 11, 12
+.IndigoPlateau: fly_warp INDIGO_PLATEAU, 9, 6
+.SaffronCity: fly_warp SAFFRON_CITY, 9, 30
+.Route4: fly_warp ROUTE_4, 11, 6
+.Route10: fly_warp ROUTE_10, 11, 20
diff --git a/data/maps/sprite_sets.asm b/data/maps/sprite_sets.asm
index faba21b5..ee6ddef0 100755
--- a/data/maps/sprite_sets.asm
+++ b/data/maps/sprite_sets.asm
@@ -45,18 +45,18 @@ MapSpriteSets:
; 02: sprite set ID if in the West or North side
; 03: sprite set ID if in the East or South side
SplitMapSpriteSets:
- db $02,$25,$02,$01 ; $f1
- db $02,$32,$02,$03 ; $f2
- db $01,$39,$04,$08 ; $f3
- db $02,$15,$03,$08 ; $f4
- db $01,$08,$0A,$08 ; $f5
- db $01,$18,$09,$05 ; $f6
- db $01,$22,$09,$0A ; $f7
- db $01,$35,$01,$0A ; $f8
- db $02,$21,$02,$07 ; $f9
- db $02,$02,$07,$04 ; $fa
- db $01,$11,$05,$07 ; $fb
- db $01,$03,$07,$03 ; $fc
+ db $02, $25, $02, $01 ; $f1
+ db $02, $32, $02, $03 ; $f2
+ db $01, $39, $04, $08 ; $f3
+ db $02, $15, $03, $08 ; $f4
+ db $01, $08, $0A, $08 ; $f5
+ db $01, $18, $09, $05 ; $f6
+ db $01, $22, $09, $0A ; $f7
+ db $01, $35, $01, $0A ; $f8
+ db $02, $21, $02, $07 ; $f9
+ db $02, $02, $07, $04 ; $fa
+ db $01, $11, $05, $07 ; $fb
+ db $01, $03, $07, $03 ; $fc
SpriteSets:
; sprite set $01
diff --git a/data/maps/town_map_entries.asm b/data/maps/town_map_entries.asm
index 63ebd51b..b06714d6 100755
--- a/data/maps/town_map_entries.asm
+++ b/data/maps/town_map_entries.asm
@@ -1,101 +1,117 @@
+external_map: MACRO
+ dn \1, \2
+ dw \3
+ENDM
+
+; the appearance of towns and routes in the town map
ExternalMapEntries:
- EMAP $2,$B,PalletTownName
- EMAP $2,$8,ViridianCityName
- EMAP $2,$3,PewterCityName
- EMAP $A,$2,CeruleanCityName
- EMAP $E,$5,LavenderTownName
- EMAP $A,$9,VermilionCityName
- EMAP $7,$5,CeladonCityName
- EMAP $8,$D,FuchsiaCityName
- EMAP $2,$F,CinnabarIslandName
- EMAP $0,$2,IndigoPlateauName
- EMAP $A,$5,SaffronCityName
- EMAP $0,$0,PalletTownName ; unused
- EMAP $2,$A,Route1Name
- EMAP $2,$6,Route2Name
- EMAP $4,$3,Route3Name
- EMAP $8,$2,Route4Name
- EMAP $A,$3,Route5Name
- EMAP $A,$8,Route6Name
- EMAP $8,$5,Route7Name
- EMAP $D,$5,Route8Name
- EMAP $D,$2,Route9Name
- EMAP $E,$4,Route10Name
- EMAP $C,$9,Route11Name
- EMAP $E,$9,Route12Name
- EMAP $D,$B,Route13Name
- EMAP $B,$C,Route14Name
- EMAP $A,$D,Route15Name
- EMAP $5,$5,Route16Name
- EMAP $4,$8,Route17Name
- EMAP $6,$D,Route18Name
- EMAP $6,$F,Route19Name
- EMAP $4,$F,Route20Name
- EMAP $2,$D,Route21Name
- EMAP $0,$8,Route22Name
- EMAP $0,$6,Route23Name
- EMAP $A,$1,Route24Name
- EMAP $B,$0,Route25Name
+; x, y, name
+ external_map 11, 2, PalletTownName
+ external_map 8, 2, ViridianCityName
+ external_map 3, 2, PewterCityName
+ external_map 2, 10, CeruleanCityName
+ external_map 5, 14, LavenderTownName
+ external_map 9, 10, VermilionCityName
+ external_map 5, 7, CeladonCityName
+ external_map 13, 8, FuchsiaCityName
+ external_map 15, 2, CinnabarIslandName
+ external_map 2, 0, IndigoPlateauName
+ external_map 5, 10, SaffronCityName
+ external_map 0, 0, PalletTownName ; unused
+ external_map 10, 2, Route1Name
+ external_map 6, 2, Route2Name
+ external_map 3, 4, Route3Name
+ external_map 2, 8, Route4Name
+ external_map 3, 10, Route5Name
+ external_map 8, 10, Route6Name
+ external_map 5, 8, Route7Name
+ external_map 5, 13, Route8Name
+ external_map 2, 13, Route9Name
+ external_map 4, 14, Route10Name
+ external_map 9, 12, Route11Name
+ external_map 9, 14, Route12Name
+ external_map 11, 13, Route13Name
+ external_map 12, 11, Route14Name
+ external_map 13, 10, Route15Name
+ external_map 5, 5, Route16Name
+ external_map 8, 4, Route17Name
+ external_map 13, 6, Route18Name
+ external_map 15, 6, Route19Name
+ external_map 15, 4, Route20Name
+ external_map 13, 2, Route21Name
+ external_map 8, 0, Route22Name
+ external_map 6, 0, Route23Name
+ external_map 1, 10, Route24Name
+ external_map 0, 11, Route25Name
+
+
+internal_map: MACRO
+ db \1 + 1
+ dn \2, \3
+ dw \4
+ENDM
+; the appearance of buildings and dungeons in the town map
InternalMapEntries:
- IMAP OAKS_LAB, $2,$B,PalletTownName
- IMAP VIRIDIAN_GYM, $2,$8,ViridianCityName
- IMAP VIRIDIAN_FOREST_SOUTH_GATE, $2,$6,Route2Name
- IMAP VIRIDIAN_FOREST, $2,$4,ViridianForestName
- IMAP PEWTER_POKECENTER, $2,$3,PewterCityName
- IMAP MT_MOON_B2F, $6,$2,MountMoonName
- IMAP CERULEAN_MART, $A,$2,CeruleanCityName
- IMAP MT_MOON_POKECENTER, $5,$2,Route4Name
- IMAP CERULEAN_TRASHED_HOUSE_COPY, $A,$2,CeruleanCityName
- IMAP DAYCARE, $A,$4,Route5Name
- IMAP UNDERGROUND_PATH_ROUTE_6_COPY, $A,$6,Route6Name
- IMAP UNDERGROUND_PATH_ROUTE_7_COPY, $9,$5,Route7Name
- IMAP UNDERGROUND_PATH_ROUTE_8, $B,$5,Route8Name
- IMAP ROCK_TUNNEL_1F, $E,$3,RockTunnelName
- IMAP POWER_PLANT, $F,$4,PowerPlantName
- IMAP ROUTE_11_GATE_2F, $D,$9,Route11Name
- IMAP ROUTE_12_GATE_1F, $E,$7,Route12Name
- IMAP BILLS_HOUSE, $C,$0,SeaCottageName
- IMAP VERMILION_DOCK, $A,$9,VermilionCityName
- IMAP SS_ANNE_B1F_ROOMS, $9,$A,SSAnneName
- IMAP VICTORY_ROAD_1F, $0,$4,VictoryRoadName
- IMAP HALL_OF_FAME, $0,$2,PokemonLeagueName
- IMAP UNDERGROUND_PATH_NORTH_SOUTH, $A,$5,UndergroundPathName
- IMAP CHAMPIONS_ROOM, $0,$2,PokemonLeagueName
- IMAP UNDERGROUND_PATH_WEST_EAST, $A,$5,UndergroundPathName
- IMAP CELADON_HOTEL, $7,$5,CeladonCityName
- IMAP LAVENDER_POKECENTER, $E,$5,LavenderTownName
- IMAP POKEMON_TOWER_7F, $F,$5,PokemonTowerName
- IMAP LAVENDER_CUBONE_HOUSE, $E,$5,LavenderTownName
- IMAP WARDENS_HOUSE, $8,$D,FuchsiaCityName
- IMAP SAFARI_ZONE_GATE, $8,$C,SafariZoneName
- IMAP FUCHSIA_MEETING_ROOM, $8,$D,FuchsiaCityName
- IMAP SEAFOAM_ISLANDS_B4F, $5,$F,SeafoamIslandsName
- IMAP VERMILION_OLD_ROD_HOUSE, $A,$9,VermilionCityName
- IMAP FUCHSIA_GOOD_ROD_HOUSE, $8,$D,FuchsiaCityName
- IMAP POKEMON_MANSION_1F, $2,$F,PokemonMansionName
- IMAP CINNABAR_MART_COPY, $2,$F,CinnabarIslandName
- IMAP INDIGO_PLATEAU_LOBBY, $0,$2,IndigoPlateauName
- IMAP MR_PSYCHICS_HOUSE, $A,$5,SaffronCityName
- IMAP ROUTE_15_GATE_2F, $9,$D,Route15Name
- IMAP ROUTE_16_FLY_HOUSE, $4,$5,Route16Name
- IMAP ROUTE_12_SUPER_ROD_HOUSE, $E,$A,Route12Name
- IMAP ROUTE_18_GATE_2F, $7,$D,Route18Name
- IMAP SEAFOAM_ISLANDS_1F, $5,$F,SeafoamIslandsName
- IMAP ROUTE_22_GATE, $0,$7,Route22Name
- IMAP VICTORY_ROAD_2F, $0,$4,VictoryRoadName
- IMAP ROUTE_12_GATE_2F, $E,$7,Route12Name
- IMAP VERMILION_TRADE_HOUSE, $A,$9,VermilionCityName
- IMAP DIGLETTS_CAVE, $3,$4,DiglettsCaveName
- IMAP VICTORY_ROAD_3F, $0,$4,VictoryRoadName
- IMAP UNUSED_MAP_CE, $7,$5,RocketHQName
- IMAP SILPH_CO_8F, $A,$5,SilphCoName
- IMAP POKEMON_MANSION_B1F, $2,$F,PokemonMansionName
- IMAP SAFARI_ZONE_NORTH_REST_HOUSE, $8,$C,SafariZoneName
- IMAP CERULEAN_CAVE_1F, $9,$1,CeruleanCaveName
- IMAP NAME_RATERS_HOUSE, $E,$5,LavenderTownName
- IMAP CERULEAN_BADGE_HOUSE, $A,$2,CeruleanCityName
- IMAP ROCK_TUNNEL_B1F, $E,$3,RockTunnelName
- IMAP SILPH_CO_ELEVATOR, $A,$5,SilphCoName
- IMAP AGATHAS_ROOM, $0,$2,PokemonLeagueName
- db $FF
+; maximum map id subject to this rule, x, y, name
+ internal_map OAKS_LAB, 11, 2, PalletTownName
+ internal_map VIRIDIAN_GYM, 8, 2, ViridianCityName
+ internal_map VIRIDIAN_FOREST_SOUTH_GATE, 6, 2, Route2Name
+ internal_map VIRIDIAN_FOREST, 4, 2, ViridianForestName
+ internal_map PEWTER_POKECENTER, 3, 2, PewterCityName
+ internal_map MT_MOON_B2F, 2, 6, MountMoonName
+ internal_map CERULEAN_MART, 2, 10, CeruleanCityName
+ internal_map MT_MOON_POKECENTER, 2, 5, Route4Name
+ internal_map CERULEAN_TRASHED_HOUSE_COPY, 2, 10, CeruleanCityName
+ internal_map DAYCARE, 4, 10, Route5Name
+ internal_map UNDERGROUND_PATH_ROUTE_6_COPY, 6, 10, Route6Name
+ internal_map UNDERGROUND_PATH_ROUTE_7_COPY, 5, 9, Route7Name
+ internal_map UNDERGROUND_PATH_ROUTE_8, 5, 11, Route8Name
+ internal_map ROCK_TUNNEL_1F, 3, 14, RockTunnelName
+ internal_map POWER_PLANT, 4, 15, PowerPlantName
+ internal_map ROUTE_11_GATE_2F, 9, 13, Route11Name
+ internal_map ROUTE_12_GATE_1F, 7, 14, Route12Name
+ internal_map BILLS_HOUSE, 0, 12, SeaCottageName
+ internal_map VERMILION_DOCK, 9, 10, VermilionCityName
+ internal_map SS_ANNE_B1F_ROOMS, 10, 9, SSAnneName
+ internal_map VICTORY_ROAD_1F, 4, 0, VictoryRoadName
+ internal_map HALL_OF_FAME, 2, 0, PokemonLeagueName
+ internal_map UNDERGROUND_PATH_NORTH_SOUTH, 5, 10, UndergroundPathName
+ internal_map CHAMPIONS_ROOM, 2, 0, PokemonLeagueName
+ internal_map UNDERGROUND_PATH_WEST_EAST, 5, 10, UndergroundPathName
+ internal_map CELADON_HOTEL, 5, 7, CeladonCityName
+ internal_map LAVENDER_POKECENTER, 5, 14, LavenderTownName
+ internal_map POKEMON_TOWER_7F, 5, 15, PokemonTowerName
+ internal_map LAVENDER_CUBONE_HOUSE, 5, 14, LavenderTownName
+ internal_map WARDENS_HOUSE, 13, 8, FuchsiaCityName
+ internal_map SAFARI_ZONE_GATE, 12, 8, SafariZoneName
+ internal_map FUCHSIA_MEETING_ROOM, 13, 8, FuchsiaCityName
+ internal_map SEAFOAM_ISLANDS_B4F, 15, 5, SeafoamIslandsName
+ internal_map VERMILION_OLD_ROD_HOUSE, 9, 10, VermilionCityName
+ internal_map FUCHSIA_GOOD_ROD_HOUSE, 13, 8, FuchsiaCityName
+ internal_map POKEMON_MANSION_1F, 15, 2, PokemonMansionName
+ internal_map CINNABAR_MART_COPY, 15, 2, CinnabarIslandName
+ internal_map INDIGO_PLATEAU_LOBBY, 2, 0, IndigoPlateauName
+ internal_map MR_PSYCHICS_HOUSE, 5, 10, SaffronCityName
+ internal_map ROUTE_15_GATE_2F, 13, 9, Route15Name
+ internal_map ROUTE_16_FLY_HOUSE, 5, 4, Route16Name
+ internal_map ROUTE_12_SUPER_ROD_HOUSE, 10, 14, Route12Name
+ internal_map ROUTE_18_GATE_2F, 13, 7, Route18Name
+ internal_map SEAFOAM_ISLANDS_1F, 15, 5, SeafoamIslandsName
+ internal_map ROUTE_22_GATE, 7, 0, Route22Name
+ internal_map VICTORY_ROAD_2F, 4, 0, VictoryRoadName
+ internal_map ROUTE_12_GATE_2F, 7, 14, Route12Name
+ internal_map VERMILION_TRADE_HOUSE, 9, 10, VermilionCityName
+ internal_map DIGLETTS_CAVE, 4, 3, DiglettsCaveName
+ internal_map VICTORY_ROAD_3F, 4, 0, VictoryRoadName
+ internal_map UNUSED_MAP_CE, 5, 7, RocketHQName
+ internal_map SILPH_CO_8F, 5, 10, SilphCoName
+ internal_map POKEMON_MANSION_B1F, 15, 2, PokemonMansionName
+ internal_map SAFARI_ZONE_NORTH_REST_HOUSE, 12, 8, SafariZoneName
+ internal_map CERULEAN_CAVE_1F, 1, 9, CeruleanCaveName
+ internal_map NAME_RATERS_HOUSE, 5, 14, LavenderTownName
+ internal_map CERULEAN_BADGE_HOUSE, 2, 10, CeruleanCityName
+ internal_map ROCK_TUNNEL_B1F, 3, 14, RockTunnelName
+ internal_map SILPH_CO_ELEVATOR, 5, 10, SilphCoName
+ internal_map AGATHAS_ROOM, 2, 0, PokemonLeagueName
+ db -1 ; end