Merge pull request #206 from PikalaxALT/region_map

Region map
This commit is contained in:
PikalaxALT 2020-01-08 19:35:48 -05:00 committed by GitHub
commit 7e2330e7fd
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
26 changed files with 9150 additions and 18845 deletions

View File

@ -1,4 +1,6 @@
.include "constants/gba_constants.inc"
.include "constants/misc_constants.inc"
.include "constants/version.inc"
.syntax unified
@ -8,8 +10,8 @@
.arm
Start: @ 8000000
b Init
_start: @ 8000000
b start_vector
.include "asm/rom_header.inc"
@ -32,33 +34,33 @@ GPIOPortReadEnable: @ 80000C8
@ 80000D0
@ TODO: figure out what this data is
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
@ 8000100
.global CartIdent
CartIdent:
.4byte GAME_VERSION
.4byte GAME_LANGUAGE
.game_name:
.ifdef FIRERED
.4byte 4
.4byte 2
.ascii "pokemon red version"
.space 13
.else
.ifdef LEAFGREEN
.4byte 5
.4byte 2
.ascii "pokemon green version"
.space 11
.endif
.endif
.space .game_name+0x20-.
.4byte gMonFrontPicTable
.4byte gMonBackPicTable
.4byte gMonPaletteTable
@ -118,32 +120,32 @@ GPIOPortReadEnable: @ 80000C8
.arm
.align 2, 0
.global Init
Init:
.global start_vector
start_vector:
mov r0, PSR_IRQ_MODE
msr cpsr_cf, r0
ldr sp, sp_irq
mov r0, PSR_SYS_MODE
msr cpsr_cf, r0
ldr sp, sp_sys
ldr sp, sp_usr
ldr r1, =INTR_VECTOR
adr r0, IntrMain
adr r0, intr_main
str r0, [r1]
ldr r1, =AgbMain
mov lr, pc
bx r1
b Init
b start_vector
.align 2, 0
sp_sys: .word IWRAM_END - 0x1C0
sp_usr: .word IWRAM_END - 0x1C0
sp_irq: .word IWRAM_END - 0x60
.pool
.arm
.align 2, 0
.global IntrMain
IntrMain:
.global intr_main
intr_main:
mov r3, REG_BASE
add r3, r3, 0x200
ldr r2, [r3, OFFSET_REG_IE - 0x200]
@ -155,50 +157,51 @@ IntrMain:
and r1, r2, r2, lsr 16
mov r12, 0
ands r0, r1, INTR_FLAG_VCOUNT
bne IntrMain_FoundIntr
bne jump_intr
add r12, r12, 0x4
mov r0, 0x1
strh r0, [r3, OFFSET_REG_IME - 0x200]
ands r0, r1, INTR_FLAG_SERIAL
bne IntrMain_FoundIntr
bne jump_intr
add r12, r12, 0x4
ands r0, r1, INTR_FLAG_TIMER3
bne IntrMain_FoundIntr
bne jump_intr
add r12, r12, 0x4
ands r0, r1, INTR_FLAG_HBLANK
bne IntrMain_FoundIntr
bne jump_intr
add r12, r12, 0x4
ands r0, r1, INTR_FLAG_VBLANK
bne IntrMain_FoundIntr
bne jump_intr
add r12, r12, 0x4
ands r0, r1, INTR_FLAG_TIMER0
bne IntrMain_FoundIntr
bne jump_intr
add r12, r12, 0x4
ands r0, r1, INTR_FLAG_TIMER1
bne IntrMain_FoundIntr
bne jump_intr
add r12, r12, 0x4
ands r0, r1, INTR_FLAG_TIMER2
bne IntrMain_FoundIntr
bne jump_intr
add r12, r12, 0x4
ands r0, r1, INTR_FLAG_DMA0
bne IntrMain_FoundIntr
bne jump_intr
add r12, r12, 0x4
ands r0, r1, INTR_FLAG_DMA1
bne IntrMain_FoundIntr
bne jump_intr
add r12, r12, 0x4
ands r0, r1, INTR_FLAG_DMA2
bne IntrMain_FoundIntr
bne jump_intr
add r12, r12, 0x4
ands r0, r1, INTR_FLAG_DMA3
bne IntrMain_FoundIntr
bne jump_intr
add r12, r12, 0x4
ands r0, r1, INTR_FLAG_KEYPAD
bne IntrMain_FoundIntr
bne jump_intr
add r12, r12, 0x4
ands r0, r1, INTR_FLAG_GAMEPAK
strbne r0, [r3, OFFSET_REG_SOUNDCNT_X - 0x200]
bne . @ spin
IntrMain_FoundIntr:
loop:
bne loop @ spin
jump_intr:
strh r0, [r3, OFFSET_REG_IF - 0x200]
bic r2, r2, r0
ldr r0, =gRfuState
@ -218,9 +221,9 @@ IntrMain_FoundIntr:
add r1, r1, r12
ldr r0, [r1]
stmdb sp!, {lr}
adr lr, IntrMain_RetAddr
adr lr, intr_return
bx r0
IntrMain_RetAddr:
intr_return:
ldmia sp!, {lr}
mrs r3, cpsr
bic r3, r3, PSR_I_BIT | PSR_F_BIT | PSR_MODE_MASK

File diff suppressed because it is too large Load Diff

View File

@ -16,7 +16,7 @@ Init:
msr cpsr_cf, r0
ldr sp, sp_sys
ldr r1, =INTR_VECTOR
ldr r0, =IntrMain
ldr r0, =intr_main
str r0, [r1]
ldr r1, =AgbMain + 1
mov lr, pc
@ -32,8 +32,8 @@ sp_irq: .word IWRAM_END - 0x60
.arm
.align 2, 0
.global IntrMain
IntrMain: @ 0x2010048
.global intr_main
intr_main: @ 0x2010048
mov ip, REG_BASE
add r3, ip, OFFSET_REG_IE
ldr r2, [r3]
@ -79,4 +79,4 @@ _020100DC:
ldr r0, [r1]
bx r0
.pool
.size IntrMain, .-IntrMain
.size intr_main, .-intr_main

View File

@ -17,7 +17,7 @@ u32 gGameVersion;
EWRAM_DATA u8 gSharedMem[0x8000] = {};
void IntrMain(void);
void intr_main(void);
void ReadKeys(void);
void dummy_intr_0(void);
void dummy_intr_1(void);
@ -62,7 +62,7 @@ void AgbMain(void)
{
RegisterRamReset(0x1E);
DmaCopy32(3, gIntrFuncPointers, gIntrTable, sizeof gIntrFuncPointers);
DmaCopy32(3, IntrMain, gIntrVector, sizeof(gIntrVector));
DmaCopy32(3, intr_main, gIntrVector, sizeof(gIntrVector));
INTR_VECTOR = gIntrVector;
REG_IE = INTR_FLAG_VBLANK;
if (*RomHeaderMagic == 0x96 && *(u32 *)RomHeaderGameCode == *(u32 *)gBerryFixGameCode)

View File

@ -0,0 +1,10 @@
gCanvasColumnStart
gCanvasPixels
gCanvasRowEnd
gCanvasHeight
gCanvasColumnEnd
gCanvasRowStart
gCanvasMonPersonality
gCanvasWidth
gCanvasPalette
gCanvasPaletteStart

View File

@ -1,91 +1,5 @@
.ifdef SAPPHIRE
.equiv GAME_VERSION, 1
.ifdef FIRERED
.equiv GAME_VERSION, 4
.else
.equiv GAME_VERSION, 2
.endif
.ifdef SAPPHIRE
.set BGM_EVIL_TEAM, BGM_AQA_0
.set BGM_GOOD_TEAM, BGM_MGM0
.else
.set BGM_EVIL_TEAM, BGM_MGM0
.set BGM_GOOD_TEAM, BGM_AQA_0
.endc
.ifdef SAPPHIRE
.set ITEM_RED_OR_BLUE_ORB, ITEM_BLUE_ORB
.else
.set ITEM_RED_OR_BLUE_ORB, ITEM_RED_ORB
.endif
.ifdef SAPPHIRE
.set SPECIES_GROUDON_OR_KYOGRE, SPECIES_KYOGRE
.else
.set SPECIES_GROUDON_OR_KYOGRE, SPECIES_GROUDON
.endif
.ifdef SAPPHIRE
.set SPECIES_LATIAS_OR_LATIOS, SPECIES_LATIOS
.else
.set SPECIES_LATIAS_OR_LATIOS, SPECIES_LATIAS
.endif
.ifdef SAPPHIRE
.set OPPONENT_PETALBURG_WOODS_GRUNT, OPPONENT_GRUNT_9
.set OPPONENT_RUSTURF_TUNNEL_GRUNT, OPPONENT_GRUNT_15
.set OPPONENT_MUSEUM_2F_GRUNT_1, OPPONENT_GRUNT_19
.set OPPONENT_MUSEUM_2F_GRUNT_2, OPPONENT_GRUNT_20
.set OPPONENT_514, OPPONENT_HECTOR_1
.set OPPONENT_MT_CHIMNEY_GRUNT_1, OPPONENT_MATT_2
.set OPPONENT_MT_CHIMNEY_GRUNT_2, OPPONENT_GRUNT_13
.set OPPONENT_HIDEOUT_1F_GRUNT, OPPONENT_GRUNT_1
.set OPPONENT_HIDEOUT_B1F_GRUNT_1, OPPONENT_GRUNT_2
.set OPPONENT_HIDEOUT_B1F_GRUNT_2, OPPONENT_GRUNT_3
.set OPPONENT_HIDEOUT_B1F_GRUNT_3, OPPONENT_GRUNT_26
.set OPPONENT_HIDEOUT_B2F_GRUNT_1, OPPONENT_MATT_1
.set OPPONENT_HIDEOUT_B2F_GRUNT_2, OPPONENT_GRUNT_4
.set OPPONENT_HIDEOUT_B2F_GRUNT_3, OPPONENT_GRUNT_27
.set OPPONENT_SEAFLOOR_CAVERN_GRUNT_1, OPPONENT_GRUNT_5
.set OPPONENT_SEAFLOOR_CAVERN_GRUNT_2, OPPONENT_GRUNT_6
.set OPPONENT_SEAFLOOR_CAVERN_GRUNT_3, OPPONENT_SHELLY_2
.set OPPONENT_SEAFLOOR_CAVERN_GRUNT_4, OPPONENT_GRUNT_7
.set OPPONENT_SEAFLOOR_CAVERN_GRUNT_5, OPPONENT_ARCHIE_2
.set OPPONENT_MT_CHIMNEY_GRUNT_3, OPPONENT_ARCHIE_3
.set OPPONENT_MT_PYRE_SUMMIT_GRUNT_1, OPPONENT_GRUNT_22
.set OPPONENT_MT_PYRE_SUMMIT_GRUNT_2, OPPONENT_GRUNT_23
.set OPPONENT_MT_PYRE_SUMMIT_GRUNT_3, OPPONENT_GRUNT_24
.set OPPONENT_WEATHER_INSTITUTE_GRUNT_1, OPPONENT_GRUNT_16
.set OPPONENT_WEATHER_INSTITUTE_GRUNT_2, OPPONENT_GRUNT_25
.set OPPONENT_WEATHER_INSTITUTE_GRUNT_3, OPPONENT_GRUNT_17
.set OPPONENT_WEATHER_INSTITUTE_GRUNT_4, OPPONENT_GRUNT_18
.set OPPONENT_WEATHER_INSTITUTE_GRUNT_5, OPPONENT_SHELLY_1
.else
.set OPPONENT_PETALBURG_WOODS_GRUNT, OPPONENT_GRUNT_36
.set OPPONENT_RUSTURF_TUNNEL_GRUNT, OPPONENT_GRUNT_42
.set OPPONENT_MUSEUM_2F_GRUNT_1, OPPONENT_GRUNT_46
.set OPPONENT_MUSEUM_2F_GRUNT_2, OPPONENT_GRUNT_47
.set OPPONENT_514, OPPONENT_HECTOR_2
.set OPPONENT_MT_CHIMNEY_GRUNT_1, OPPONENT_TABITHA_2
.set OPPONENT_MT_CHIMNEY_GRUNT_2, OPPONENT_GRUNT_40
.set OPPONENT_HIDEOUT_1F_GRUNT, OPPONENT_GRUNT_28
.set OPPONENT_HIDEOUT_B1F_GRUNT_1, OPPONENT_GRUNT_29
.set OPPONENT_HIDEOUT_B1F_GRUNT_2, OPPONENT_GRUNT_30
.set OPPONENT_HIDEOUT_B1F_GRUNT_3, OPPONENT_GRUNT_53
.set OPPONENT_HIDEOUT_B2F_GRUNT_1, OPPONENT_TABITHA_1
.set OPPONENT_HIDEOUT_B2F_GRUNT_2, OPPONENT_GRUNT_31
.set OPPONENT_HIDEOUT_B2F_GRUNT_3, OPPONENT_GRUNT_54
.set OPPONENT_SEAFLOOR_CAVERN_GRUNT_1, OPPONENT_GRUNT_32
.set OPPONENT_SEAFLOOR_CAVERN_GRUNT_2, OPPONENT_GRUNT_33
.set OPPONENT_SEAFLOOR_CAVERN_GRUNT_3, OPPONENT_COURTNEY_2
.set OPPONENT_SEAFLOOR_CAVERN_GRUNT_4, OPPONENT_GRUNT_34
.set OPPONENT_SEAFLOOR_CAVERN_GRUNT_5, OPPONENT_MAXIE_2
.set OPPONENT_MT_CHIMNEY_GRUNT_3, OPPONENT_MAXIE_3
.set OPPONENT_MT_PYRE_SUMMIT_GRUNT_1, OPPONENT_GRUNT_49
.set OPPONENT_MT_PYRE_SUMMIT_GRUNT_2, OPPONENT_GRUNT_50
.set OPPONENT_MT_PYRE_SUMMIT_GRUNT_3, OPPONENT_GRUNT_51
.set OPPONENT_WEATHER_INSTITUTE_GRUNT_1, OPPONENT_GRUNT_43
.set OPPONENT_WEATHER_INSTITUTE_GRUNT_2, OPPONENT_GRUNT_52
.set OPPONENT_WEATHER_INSTITUTE_GRUNT_3, OPPONENT_GRUNT_44
.set OPPONENT_WEATHER_INSTITUTE_GRUNT_4, OPPONENT_GRUNT_45
.set OPPONENT_WEATHER_INSTITUTE_GRUNT_5, OPPONENT_COURTNEY_1
.equiv GAME_VERSION, 5
.endif

File diff suppressed because it is too large Load Diff

View File

@ -2524,161 +2524,142 @@ gUnknown_8418E77:: @ 8418E77
gUnknown_8418E8A:: @ 8418E8A
.string "$"
gUnknown_8418E8B:: @ 8418E8B
gText_RegionMap_Space:: @ 8418E8B
.string " $"
gUnknown_8418E8D:: @ 8418E8D
gText_RegionMap_AButtonGuide:: @ 8418E8D
.string "{A_BUTTON}GUIDE$"
gUnknown_8418E95:: @ 8418E95
gText_RegionMap_AButtonCancel:: @ 8418E95
.string "{A_BUTTON}CANCEL$"
gUnknown_8418E9E:: @ 8418E9E
gText_RegionMap_AButtonCancel2:: @ 8418E9E
.string "{A_BUTTON}CANCEL$"
gUnknown_8418EA7:: @ 8418EA7
gText_RegionMap_AButtonSwitch:: @ 8418EA7
.string "{A_BUTTON}SWITCH$"
gUnknown_8418EB0:: @ 8418EB0
gText_RegionMap_AButtonOK:: @ 8418EB0
.string "{A_BUTTON}OK$"
gUnknown_8418EB5:: @ 8418EB5
gText_RegionMap_DPadMove:: @ 8418EB5
.string "{DPAD_ANY}MOVE$"
gUnknown_8418EBC:: @ 8418EBC
gText_RegionMap_UpDownPick:: @ 8418EBC
.string "{DPAD_UPDOWN}PICK$"
gUnknown_8418EC3:: @ 8418EC3
gText_RegionMap_NoData:: @ 8418EC3
.string "No data$"
gUnknown_8418ECB:: @ 8418ECB
@ Viridian Forest
gText_RegionMap_AreaDesc_ViridianForest::
.string "A deep and sprawling forest that\n"
.string "extends around VIRIDIAN CITY.\n"
.string "A natural maze, many people\n"
.string "become lost inside.$"
gUnknown_8418F3A:: @ 8418F3A
@ Mt. Moon
gText_RegionMap_AreaDesc_MtMoon::
.string "A mystical mountain that is known\n"
.string "for its frequent meteor falls.\n"
.string "The shards of stars that fall\n"
.string "here are known as MOON STONES.$"
gUnknown_8418FB8:: @ 8418FB8
@ Diglett's Cave
gText_RegionMap_AreaDesc_DiglettsCave::
.string "A seemingly plain tunnel that was\n"
.string "dug by wild DIGLETT.\n"
.string "It is famous for connecting\n"
.string "ROUTES 2 and 11.$"
gUnknown_841901C:: @ 841901C
@ Victory Road
gText_RegionMap_AreaDesc_VictoryRoad::
.string "A tunnel situated on ROUTE 23.\n"
.string "It earned its name because it\n"
.string "must be traveled by all TRAINERS\n"
.string "aiming for the top.$"
gUnknown_841908E:: @ 841908E
@ Pokémon Mansion
gText_RegionMap_AreaDesc_PokemonMansion::
.string "A decrepit, burned-down mansion\n"
.string "on CINNABAR ISLAND.\n"
.string "It got its name because a famous\n"
.string "POKéMON researcher lived there.$"
gUnknown_8419103:: @ 8419103
@ Safari Zone
gText_RegionMap_AreaDesc_SafariZone::
.string "An amusement park outside FUCHSIA\n"
.string "CITY where many rare POKéMON can\n"
.string "be observed in the wild.\n"
.string "Catch them in a popular game!$"
gUnknown_841917D:: @ 841917D
@ Rock Tunnel
gText_RegionMap_AreaDesc_RockTunnel::
.string "A naturally formed underground\n"
.string "tunnel. Because it has not been\n"
.string "developed, it is inky dark inside.\n"
.string "A light is needed to get through.$"
gUnknown_8419201:: @ 8419201
@ Seafoam Islands
gText_RegionMap_AreaDesc_SeafoamIslands::
.string "A pair of islands that is situated\n"
.string "on ROUTE 20.\n"
.string "The two islands are shaped the\n"
.string "same, as if they were twins.$"
gUnknown_841926D:: @ 841926D
@ Pokémon Tower
gText_RegionMap_AreaDesc_PokemonTower::
.string "A tower that houses the graves of\n"
.string "countless POKéMON.\n"
.string "Many people visit it daily to pay\n"
.string "their respects to the fallen.$"
gUnknown_84192E2:: @ 84192E2
@ Cerulean Cave
gText_RegionMap_AreaDesc_CeruleanCave::
.string "A mysterious cave that is filled\n"
.string "with terribly tough POKéMON.\n"
.string "It is so dangerous, the POKéMON\n"
.string "LEAGUE is in charge of it.$"
gUnknown_841935B:: @ 841935B
@ Power Plant
gText_RegionMap_AreaDesc_PowerPlant::
.string "A power plant that was abandoned\n"
.string "years ago, though some of the\n"
.string "machines still work. It is infested\n"
.string "with electric POKéMON.$"
gUnknown_84193D5:: @ 84193D5
@ Mt. Ember
gText_RegionMap_AreaDesc_MtEmber::
.string "Supposedly an inactive volcano.\n"
.string "However, there are persistent\n"
.string "reports that the peak blazes\n"
.string "with fire at night.$"
gUnknown_8419444:: @ 8419444
@ Berry Forest
gText_RegionMap_AreaDesc_BerryForest::
.string "A forest on a small islet off the\n"
.string "coast of THREE ISLAND. BERRIES\n"
.string "grow wildly in profusion, quickly\n"
.string "replenishing those that fall off.$"
gUnknown_84194C9:: @ 84194C9
@ Icefall Cave
gText_RegionMap_AreaDesc_IcefallCave::
.string "A cave which is covered by water\n"
.string "and ice on FOUR ISLAND.\n"
.string "It seems like the end of the cave\n"
.string "is connected to the ocean.$"
gUnknown_841953F:: @ 841953F
@ Lost Cave
gText_RegionMap_AreaDesc_LostCave::
.string "A bewildering cave off the coast\n"
.string "of RESORT GORGEOUS.\n"
.string "Some curious thrill seekers have\n"
.string "never emerged from it.$"
gUnknown_84195AC:: @ 84195AC
@ Tanoby Ruins
gText_RegionMap_AreaDesc_TanobyRuins::
.string "An ancient ruin that is rumored to\n"
.string "be home to a peculiar POKéMON.\n"
.string "However, so far, the POKéMON\n"
.string "remains an unconfirmed rumor.$"
gUnknown_8419629:: @ 8419629
@ Altering Cave
gText_RegionMap_AreaDesc_AlteringCave::
.string "This island has been known by this\n"
.string "name since the distant past.\n"
.string "No one today knows where it got\n"
.string "this name, however.$"
gUnknown_841969D:: @ 841969D
@ Pattern Bush
gText_RegionMap_AreaDesc_PatternBush::
.string "A lush and bush-like area. \n"
.string "In it are patterns where no grass\n"
.string "grows. Some study it in the belief\n"
.string "that a secret is concealed.$"
gUnknown_841971A:: @ 841971A
@ Dotted Hole
gText_RegionMap_AreaDesc_DottedHole::
.string "A mysterious, just-discovered\n"
.string "ruin from an ancient time.\n"
.string "It got its name from the six dots\n"

View File

@ -1,327 +0,0 @@
gMapSecName_PalletTown::
.string "PALLET TOWN$"
gMapSecName_ViridianCity::
.string "VIRIDIAN CITY$"
gMapSecName_PewterCity::
.string "PEWTER CITY$"
gMapSecName_CeruleanCity::
.string "CERULEAN CITY$"
gMapSecName_LavenderTown::
.string "LAVENDER TOWN$"
gMapSecName_VermilionCity::
.string "VERMILION CITY$"
gMapSecName_CeladonCity::
.string "CELADON CITY$"
gMapSecName_FuchsiaCity::
.string "FUCHSIA CITY$"
gMapSecName_CinnabarIsland::
.string "CINNABAR ISLAND$"
gMapSecName_IndigoPlateau::
.string "INDIGO PLATEAU$"
gMapSecName_SaffronCity::
.string "SAFFRON CITY$"
gMapSecName_Route4::
.string "ROUTE 4$"
gMapSecName_Route10::
.string "ROUTE 10$"
gMapSecName_Route1::
.string "ROUTE 1$"
gMapSecName_Route2::
.string "ROUTE 2$"
gMapSecName_Route3::
.string "ROUTE 3$"
gMapSecName_Route4_2::
.string "ROUTE 4$"
gMapSecName_Route5::
.string "ROUTE 5$"
gMapSecName_Route6::
.string "ROUTE 6$"
gMapSecName_Route7::
.string "ROUTE 7$"
gMapSecName_Route8::
.string "ROUTE 8$"
gMapSecName_Route9::
.string "ROUTE 9$"
gMapSecName_Route10_2::
.string "ROUTE 10$"
gMapSecName_Route11::
.string "ROUTE 11$"
gMapSecName_Route12::
.string "ROUTE 12$"
gMapSecName_Route13::
.string "ROUTE 13$"
gMapSecName_Route14::
.string "ROUTE 14$"
gMapSecName_Route15::
.string "ROUTE 15$"
gMapSecName_Route16::
.string "ROUTE 16$"
gMapSecName_Route17::
.string "ROUTE 17$"
gMapSecName_Route18::
.string "ROUTE 18$"
gMapSecName_Route19::
.string "ROUTE 19$"
gMapSecName_Route20::
.string "ROUTE 20$"
gMapSecName_Route21::
.string "ROUTE 21$"
gMapSecName_Route22::
.string "ROUTE 22$"
gMapSecName_Route23::
.string "ROUTE 23$"
gMapSecName_Route24::
.string "ROUTE 24$"
gMapSecName_Route25::
.string "ROUTE 25$"
gMapSecName_ViridianForest::
.string "VIRIDIAN FOREST$"
gMapSecName_MtMoon::
.string "MT. MOON$"
gMapSecName_SSAnne::
.string "S.S. ANNE$"
gMapSecName_UndergroundPath::
.string "UNDERGROUND PATH$"
gMapSecName_UndergroundPath_2::
.string "UNDERGROUND PATH$"
gMapSecName_DiglettsCave::
.string "DIGLETT'S CAVE$"
gMapSecName_VictoryRoad::
.string "VICTORY ROAD$"
gMapSecName_RocketHideout::
.string "ROCKET HIDEOUT$"
gMapSecName_SilphCo::
.string "SILPH CO.$"
gMapSecName_PokemonMansion::
.string "POKéMON MANSION$"
gMapSecName_SafariZone::
.string "SAFARI ZONE$"
gMapSecName_PokemonLeague::
.string "POKéMON LEAGUE$"
gMapSecName_RockTunnel::
.string "ROCK TUNNEL$"
gMapSecName_SeafoamIslands::
.string "SEAFOAM ISLANDS$"
gMapSecName_PokemonTower::
.string "POKéMON TOWER$"
gMapSecName_CeruleanCave::
.string "CERULEAN CAVE$"
gMapSecName_PowerPlant::
.string "POWER PLANT$"
gMapSecName_OneIsland::
.string "ONE ISLAND$"
gMapSecName_TwoIsland::
.string "TWO ISLAND$"
gMapSecName_ThreeIsland::
.string "THREE ISLAND$"
gMapSecName_FourIsland::
.string "FOUR ISLAND$"
gMapSecName_FiveIsland::
.string "FIVE ISLAND$"
gMapSecName_SevenIsland::
.string "SEVEN ISLAND$"
gMapSecName_SixIsland::
.string "SIX ISLAND$"
gMapSecName_KindleRoad::
.string "KINDLE ROAD$"
gMapSecName_TreasureBeach::
.string "TREASURE BEACH$"
gMapSecName_CapeBrink::
.string "CAPE BRINK$"
gMapSecName_BondBridge::
.string "BOND BRIDGE$"
gMapSecName_ThreeIslePort::
.string "THREE ISLE PORT$"
gMapSecName_SeviiIsle6::
.string "SEVII ISLE 6$"
gMapSecName_SeviiIsle7::
.string "SEVII ISLE 7$"
gMapSecName_SeviiIsle8::
.string "SEVII ISLE 8$"
gMapSecName_SeviiIsle9::
.string "SEVII ISLE 9$"
gMapSecName_ResortGorgeous::
.string "RESORT GORGEOUS$"
gMapSecName_WaterLabyrinth::
.string "WATER LABYRINTH$"
gMapSecName_FiveIsleMeadow::
.string "FIVE ISLE MEADOW$"
gMapSecName_MemorialPillar::
.string "MEMORIAL PILLAR$"
gMapSecName_OutcastIsland::
.string "OUTCAST ISLAND$"
gMapSecName_GreenPath::
.string "GREEN PATH$"
gMapSecName_WaterPath::
.string "WATER PATH$"
gMapSecName_RuinValley::
.string "RUIN VALLEY$"
gMapSecName_TrainerTower::
.string "TRAINER TOWER$"
gMapSecName_CanyonEntrance::
.string "CANYON ENTRANCE$"
gMapSecName_SevaultCanyon::
.string "SEVAULT CANYON$"
gMapSecName_TanobyRuins::
.string "TANOBY RUINS$"
gMapSecName_SeviiIsle22::
.string "SEVII ISLE 22$"
gMapSecName_SeviiIsle23::
.string "SEVII ISLE 23$"
gMapSecName_SeviiIsle24::
.string "SEVII ISLE 24$"
gMapSecName_NavelRock::
.string "NAVEL ROCK$"
gMapSecName_MtEmber::
.string "MT. EMBER$"
gMapSecName_BerryForest::
.string "BERRY FOREST$"
gMapSecName_IcefallCave::
.string "ICEFALL CAVE$"
gMapSecName_RocketWarehouse::
.string "ROCKET WAREHOUSE$"
gMapSecName_TrainerTower_2::
.string "TRAINER TOWER$"
gMapSecName_DottedHole::
.string "DOTTED HOLE$"
gMapSecName_LostCave::
.string "LOST CAVE$"
gMapSecName_PatternBush::
.string "PATTERN BUSH$"
gMapSecName_AlteringCave::
.string "ALTERING CAVE$"
gMapSecName_TanobyChambers::
.string "TANOBY CHAMBERS$"
gMapSecName_ThreeIslePath::
.string "THREE ISLE PATH$"
gMapSecName_TanobyKey::
.string "TANOBY KEY$"
gMapSecName_BirthIsland::
.string "BIRTH ISLAND$"
gMapSecName_MoneanChamber::
.string "MONEAN CHAMBER$"
gMapSecName_LiptooChamber::
.string "LIPTOO CHAMBER$"
gMapSecName_WeepthChamber::
.string "WEEPTH CHAMBER$"
gMapSecName_DilfordChamber::
.string "DILFORD CHAMBER$"
gMapSecName_ScufibChamber::
.string "SCUFIB CHAMBER$"
gMapSecName_RixyChamber::
.string "RIXY CHAMBER$"
gMapSecName_ViapoisChamber::
.string "VIAPOIS CHAMBER$"
gMapSecName_EmberSpa::
.string "EMBER SPA$"
gMapSecName_CeladonDept::
.string "CELADON DEPT.$"

View File

@ -89,6 +89,9 @@
#define MAPSEC_SKY_PILLAR 0x55
#define MAPSEC_SECRET_BASE 0x56
#define MAPSEC_DYNAMIC 0x57
#define MAPSECS_KANTO 0x58
#define MAPSEC_PALLET_TOWN 0x58
#define MAPSEC_VIRIDIAN_CITY 0x59
#define MAPSEC_PEWTER_CITY 0x5A
@ -144,6 +147,9 @@
#define MAPSEC_POKEMON_TOWER 0x8C
#define MAPSEC_CERULEAN_CAVE 0x8D
#define MAPSEC_POWER_PLANT 0x8E
#define MAPSECS_SEVII_123 0x8F
#define MAPSEC_ONE_ISLAND 0x8F
#define MAPSEC_TWO_ISLAND 0x90
#define MAPSEC_THREE_ISLAND 0x91

View File

@ -23,5 +23,6 @@ void sub_80853CC(u8 a0);
void sub_8083598(u8 a0);
void sub_8083A5C(struct Sprite * sprite, u8 spriteId);
u8 sub_8083970(u16 species, s16 x, s16 y, bool8 unused);
void sub_80842C8(void);
#endif //GUARD_FIELD_EFFECTS_H

View File

@ -0,0 +1,53 @@
#ifndef GUARD_IMAGE_PROCESSING_EFFECTS_H
#define GUARD_IMAGE_PROCESSING_EFFECTS_H
enum
{
IMAGE_EFFECT_POINTILLISM = 2,
IMAGE_EFFECT_GRAYSCALE_LIGHT = 6,
IMAGE_EFFECT_BLUR = 8,
IMAGE_EFFECT_OUTLINE_COLORED = 9,
IMAGE_EFFECT_INVERT_BLACK_WHITE = 10,
IMAGE_EFFECT_THICK_BLACK_WHITE = 11,
IMAGE_EFFECT_SHIMMER = 13,
IMAGE_EFFECT_OUTLINE = 30,
IMAGE_EFFECT_INVERT = 31,
IMAGE_EFFECT_BLUR_RIGHT = 32,
IMAGE_EFFECT_BLUR_DOWN = 33,
IMAGE_EFFECT_CHARCOAL = 36,
};
enum
{
QUANTIZE_EFFECT_STANDARD,
QUANTIZE_EFFECT_STANDARD_LIMITED_COLORS,
QUANTIZE_EFFECT_PRIMARY_COLORS,
QUANTIZE_EFFECT_GRAYSCALE,
QUANTIZE_EFFECT_GRAYSCALE_SMALL,
QUANTIZE_EFFECT_BLACK_WHITE,
};
struct ImageProcessingContext
{
u8 effect;
void *canvasPixels;
u16 *canvasPalette;
u8 fillerC[0x4];
void *dest;
u16 quantizeEffect;
u16 var_16;
u8 paletteStart;
u8 columnStart;
u8 rowStart;
u8 columnEnd;
u8 rowEnd;
u8 canvasWidth;
u8 canvasHeight;
u8 personality;
};
void ApplyImageProcessingEffects(struct ImageProcessingContext *);
void ApplyImageProcessingQuantization(struct ImageProcessingContext *);
void ConvertImageProcessingToGBA(struct ImageProcessingContext *);
#endif

View File

@ -49,5 +49,6 @@ void sub_80F85BC(u16 a0);
u16 sub_80F856C(u8 id);
bool8 sub_80F8110(u8 mapsec, bool8 forceFirstTime);
bool32 sub_80F83B0(void);
const struct MapPreviewScreen * GetDungeonMapPreviewScreenInfo(u8 mapsec);
#endif //GUARD_MAP_PREVIEW_SCREEN_H

View File

@ -149,5 +149,6 @@ void sub_8055778(int);
void sub_8055738(u8 loc);
void sub_8056078(void *, void *);
void sub_805546C(u8 a0);
#endif //GUARD_OVERWORLD_H

View File

@ -24,77 +24,25 @@ enum {
MAPSECTYPE_CITY_CANTFLY,
};
struct RegionMap {
/*0x000*/ u16 mapSecId;
/*0x002*/ u8 iconDrawType;
/*0x003*/ u8 posWithinMapSec;
/*0x004*/ u8 mapSecName[0x14];
/*0x018*/ u8 (*inputCallback)(void);
/*0x01c*/ struct Sprite *cursorSprite;
/*0x020*/ struct Sprite *playerIconSprite;
/*0x024*/ s32 bg2x;
/*0x028*/ s32 bg2y;
/*0x02c*/ u32 bg2pa;
/*0x034*/ u32 bg2pc;
/*0x030*/ u32 bg2pb;
/*0x038*/ u32 bg2pd;
/*0x03c*/ s32 unk_03c;
/*0x040*/ s32 unk_040;
/*0x044*/ s32 unk_044;
/*0x048*/ s32 unk_048;
/*0x04c*/ s32 unk_04c;
/*0x050*/ s32 unk_050;
/*0x054*/ u16 cursorPosX;
/*0x056*/ u16 cursorPosY;
/*0x058*/ u16 cursorTileTag;
/*0x05a*/ u16 cursorPaletteTag;
/*0x05c*/ s16 scrollX;
/*0x05e*/ s16 scrollY;
/*0x060*/ s16 unk_060;
/*0x062*/ s16 unk_062;
/*0x064*/ u16 zoomedCursorPosX;
/*0x066*/ u16 zoomedCursorPosY;
/*0x068*/ s16 zoomedCursorDeltaY;
/*0x06a*/ s16 zoomedCursorDeltaX;
/*0x06c*/ u16 zoomedCursorMovementFrameCounter;
/*0x06e*/ u16 unk_06e;
/*0x070*/ u16 playerIconTileTag;
/*0x072*/ u16 playerIconPaletteTag;
/*0x074*/ u16 playerIconSpritePosX;
/*0x076*/ u16 playerIconSpritePosY;
/*0x078*/ bool8 zoomed;
/*0x079*/ u8 initStep;
/*0x07a*/ s8 cursorMovementFrameCounter;
/*0x07b*/ s8 cursorDeltaX;
/*0x07c*/ s8 cursorDeltaY;
/*0x07d*/ bool8 needUpdateVideoRegs;
/*0x07e*/ bool8 blinkPlayerIcon;
/*0x07f*/ bool8 playerIsInCave;
/*0x080*/ u8 bgNum;
/*0x081*/ u8 charBaseIdx;
/*0x082*/ u8 mapBaseIdx;
/*0x083*/ bool8 bgManaged;
/*0x084*/ u8 filler_084[0x100];
/*0x184*/ u8 cursorSmallImage[0x100];
/*0x284*/ u8 cursorLargeImage[0x600];
}; // size = 0x884
enum {
MAPPERM_0,
MAPPERM_1,
MAPPERM_2,
MAPPERM_3
};
enum {
REGIONMAP_KANTO,
REGIONMAP_SEVII123,
REGIONMAP_SEVII45,
REGIONMAP_SEVII67
};
// Exported RAM declarations
// Exported ROM declarations
void sub_8122CF8(struct RegionMap *regionMap, struct BgTemplate *template, bool8 zoomed);
bool8 sub_8122DB0(void);
void UpdateRegionMapVideoRegs(void);
void InitRegionMap(struct RegionMap *regionMap, u8 argument);
u8 sub_81230AC(void);
bool8 sub_8123514(void);
void FreeRegionMapIconResources(void);
u16 GetRegionMapSectionIdAt(u16 x, u16 y);
void CreateRegionMapPlayerIcon(u16 x, u16 y);
void CreateRegionMapCursor(u16 tileTag, u16 paletteTag);
u8 *GetMapName(u8 *, u16, u16);
bool32 sub_8124668(u8 mapSecId);
void GetMapNameGeneric(u8 *, u8);
u8 *GetMapName(u8 *dest, u16 mapsec, u16 fill);
u8 *GetMapNameGeneric(u8 *dest, u16 mapsec);
void sub_80BFF50(u8 a0, void (*a1)(void));
void MCB2_FlyMap(void);

View File

@ -1003,4 +1003,34 @@ extern const u8 gText_UnionRoomTradesBattles[];
extern const u8 gText_LinkBattles[];
extern const u8 gText_LinkCableBattles[];
// region_map
extern const u8 gText_RegionMap_DPadMove[];
extern const u8 gText_RegionMap_Space[];
extern const u8 gText_RegionMap_AButtonGuide[];
extern const u8 gText_RegionMap_AButtonCancel[];
extern const u8 gText_RegionMap_AButtonCancel2[];
extern const u8 gText_RegionMap_AButtonSwitch[];
extern const u8 gText_RegionMap_AButtonOK[];
extern const u8 gText_RegionMap_UpDownPick[];
extern const u8 gText_RegionMap_NoData[];
extern const u8 gText_RegionMap_AreaDesc_ViridianForest[];
extern const u8 gText_RegionMap_AreaDesc_MtMoon[];
extern const u8 gText_RegionMap_AreaDesc_DiglettsCave[];
extern const u8 gText_RegionMap_AreaDesc_VictoryRoad[];
extern const u8 gText_RegionMap_AreaDesc_PokemonMansion[];
extern const u8 gText_RegionMap_AreaDesc_SafariZone[];
extern const u8 gText_RegionMap_AreaDesc_RockTunnel[];
extern const u8 gText_RegionMap_AreaDesc_SeafoamIslands[];
extern const u8 gText_RegionMap_AreaDesc_PokemonTower[];
extern const u8 gText_RegionMap_AreaDesc_CeruleanCave[];
extern const u8 gText_RegionMap_AreaDesc_PowerPlant[];
extern const u8 gText_RegionMap_AreaDesc_MtEmber[];
extern const u8 gText_RegionMap_AreaDesc_BerryForest[];
extern const u8 gText_RegionMap_AreaDesc_IcefallCave[];
extern const u8 gText_RegionMap_AreaDesc_LostCave[];
extern const u8 gText_RegionMap_AreaDesc_TanobyRuins[];
extern const u8 gText_RegionMap_AreaDesc_AlteringCave[];
extern const u8 gText_RegionMap_AreaDesc_PatternBush[];
extern const u8 gText_RegionMap_AreaDesc_DottedHole[];
#endif //GUARD_STRINGS_H

View File

@ -1,5 +1,3 @@
ENTRY(Start)
gNumMusicPlayers = 4;
gMaxLines = 0;
@ -182,7 +180,8 @@ SECTIONS {
src/menu_helpers.o(.text);
asm/script_pokemon_util_80BF8FC.o(.text);
src/heal_location.o(.text);
asm/region_map.o(.text);
src/region_map.o(.text);
src/image_processing_effects.o(.text);
src/battle_ai_script_commands.o(.text);
src/fldeff_rocksmash.o(.text);
src/fldeff_dig.o(.text);
@ -479,7 +478,8 @@ SECTIONS {
src/mon_markings.o(.rodata);
src/mail.o(.rodata);
src/heal_location.o(.rodata);
data/region_map.o(.rodata);
src/region_map.o(.rodata);
src/image_processing_effects.o(.rodata);
src/battle_ai_script_commands.o(.rodata);
data/fldeff_flash.o(.rodata);
src/field_specials.o(.rodata);

View File

@ -0,0 +1,109 @@
const u8 gMapSecName_PalletTown[] = _("PALLET TOWN");
const u8 gMapSecName_ViridianCity[] = _("VIRIDIAN CITY");
const u8 gMapSecName_PewterCity[] = _("PEWTER CITY");
const u8 gMapSecName_CeruleanCity[] = _("CERULEAN CITY");
const u8 gMapSecName_LavenderTown[] = _("LAVENDER TOWN");
const u8 gMapSecName_VermilionCity[] = _("VERMILION CITY");
const u8 gMapSecName_CeladonCity[] = _("CELADON CITY");
const u8 gMapSecName_FuchsiaCity[] = _("FUCHSIA CITY");
const u8 gMapSecName_CinnabarIsland[] = _("CINNABAR ISLAND");
const u8 gMapSecName_IndigoPlateau[] = _("INDIGO PLATEAU");
const u8 gMapSecName_SaffronCity[] = _("SAFFRON CITY");
const u8 gMapSecName_Route4[] = _("ROUTE 4");
const u8 gMapSecName_Route10[] = _("ROUTE 10");
const u8 gMapSecName_Route1[] = _("ROUTE 1");
const u8 gMapSecName_Route2[] = _("ROUTE 2");
const u8 gMapSecName_Route3[] = _("ROUTE 3");
const u8 gMapSecName_Route4_2[] = _("ROUTE 4");
const u8 gMapSecName_Route5[] = _("ROUTE 5");
const u8 gMapSecName_Route6[] = _("ROUTE 6");
const u8 gMapSecName_Route7[] = _("ROUTE 7");
const u8 gMapSecName_Route8[] = _("ROUTE 8");
const u8 gMapSecName_Route9[] = _("ROUTE 9");
const u8 gMapSecName_Route10_2[] = _("ROUTE 10");
const u8 gMapSecName_Route11[] = _("ROUTE 11");
const u8 gMapSecName_Route12[] = _("ROUTE 12");
const u8 gMapSecName_Route13[] = _("ROUTE 13");
const u8 gMapSecName_Route14[] = _("ROUTE 14");
const u8 gMapSecName_Route15[] = _("ROUTE 15");
const u8 gMapSecName_Route16[] = _("ROUTE 16");
const u8 gMapSecName_Route17[] = _("ROUTE 17");
const u8 gMapSecName_Route18[] = _("ROUTE 18");
const u8 gMapSecName_Route19[] = _("ROUTE 19");
const u8 gMapSecName_Route20[] = _("ROUTE 20");
const u8 gMapSecName_Route21[] = _("ROUTE 21");
const u8 gMapSecName_Route22[] = _("ROUTE 22");
const u8 gMapSecName_Route23[] = _("ROUTE 23");
const u8 gMapSecName_Route24[] = _("ROUTE 24");
const u8 gMapSecName_Route25[] = _("ROUTE 25");
const u8 gMapSecName_ViridianForest[] = _("VIRIDIAN FOREST");
const u8 gMapSecName_MtMoon[] = _("MT. MOON");
const u8 gMapSecName_SSAnne[] = _("S.S. ANNE");
const u8 gMapSecName_UndergroundPath[] = _("UNDERGROUND PATH");
const u8 gMapSecName_UndergroundPath_2[] = _("UNDERGROUND PATH");
const u8 gMapSecName_DiglettsCave[] = _("DIGLETT'S CAVE");
const u8 gMapSecName_VictoryRoad[] = _("VICTORY ROAD");
const u8 gMapSecName_RocketHideout[] = _("ROCKET HIDEOUT");
const u8 gMapSecName_SilphCo[] = _("SILPH CO.");
const u8 gMapSecName_PokemonMansion[] = _("POKéMON MANSION");
const u8 gMapSecName_SafariZone[] = _("SAFARI ZONE");
const u8 gMapSecName_PokemonLeague[] = _("POKéMON LEAGUE");
const u8 gMapSecName_RockTunnel[] = _("ROCK TUNNEL");
const u8 gMapSecName_SeafoamIslands[] = _("SEAFOAM ISLANDS");
const u8 gMapSecName_PokemonTower[] = _("POKéMON TOWER");
const u8 gMapSecName_CeruleanCave[] = _("CERULEAN CAVE");
const u8 gMapSecName_PowerPlant[] = _("POWER PLANT");
const u8 gMapSecName_OneIsland[] = _("ONE ISLAND");
const u8 gMapSecName_TwoIsland[] = _("TWO ISLAND");
const u8 gMapSecName_ThreeIsland[] = _("THREE ISLAND");
const u8 gMapSecName_FourIsland[] = _("FOUR ISLAND");
const u8 gMapSecName_FiveIsland[] = _("FIVE ISLAND");
const u8 gMapSecName_SevenIsland[] = _("SEVEN ISLAND");
const u8 gMapSecName_SixIsland[] = _("SIX ISLAND");
const u8 gMapSecName_KindleRoad[] = _("KINDLE ROAD");
const u8 gMapSecName_TreasureBeach[] = _("TREASURE BEACH");
const u8 gMapSecName_CapeBrink[] = _("CAPE BRINK");
const u8 gMapSecName_BondBridge[] = _("BOND BRIDGE");
const u8 gMapSecName_ThreeIslePort[] = _("THREE ISLE PORT");
const u8 gMapSecName_SeviiIsle6[] = _("SEVII ISLE 6");
const u8 gMapSecName_SeviiIsle7[] = _("SEVII ISLE 7");
const u8 gMapSecName_SeviiIsle8[] = _("SEVII ISLE 8");
const u8 gMapSecName_SeviiIsle9[] = _("SEVII ISLE 9");
const u8 gMapSecName_ResortGorgeous[] = _("RESORT GORGEOUS");
const u8 gMapSecName_WaterLabyrinth[] = _("WATER LABYRINTH");
const u8 gMapSecName_FiveIsleMeadow[] = _("FIVE ISLE MEADOW");
const u8 gMapSecName_MemorialPillar[] = _("MEMORIAL PILLAR");
const u8 gMapSecName_OutcastIsland[] = _("OUTCAST ISLAND");
const u8 gMapSecName_GreenPath[] = _("GREEN PATH");
const u8 gMapSecName_WaterPath[] = _("WATER PATH");
const u8 gMapSecName_RuinValley[] = _("RUIN VALLEY");
const u8 gMapSecName_TrainerTower[] = _("TRAINER TOWER");
const u8 gMapSecName_CanyonEntrance[] = _("CANYON ENTRANCE");
const u8 gMapSecName_SevaultCanyon[] = _("SEVAULT CANYON");
const u8 gMapSecName_TanobyRuins[] = _("TANOBY RUINS");
const u8 gMapSecName_SeviiIsle22[] = _("SEVII ISLE 22");
const u8 gMapSecName_SeviiIsle23[] = _("SEVII ISLE 23");
const u8 gMapSecName_SeviiIsle24[] = _("SEVII ISLE 24");
const u8 gMapSecName_NavelRock[] = _("NAVEL ROCK");
const u8 gMapSecName_MtEmber[] = _("MT. EMBER");
const u8 gMapSecName_BerryForest[] = _("BERRY FOREST");
const u8 gMapSecName_IcefallCave[] = _("ICEFALL CAVE");
const u8 gMapSecName_RocketWarehouse[] = _("ROCKET WAREHOUSE");
const u8 gMapSecName_TrainerTower_2[] = _("TRAINER TOWER");
const u8 gMapSecName_DottedHole[] = _("DOTTED HOLE");
const u8 gMapSecName_LostCave[] = _("LOST CAVE");
const u8 gMapSecName_PatternBush[] = _("PATTERN BUSH");
const u8 gMapSecName_AlteringCave[] = _("ALTERING CAVE");
const u8 gMapSecName_TanobyChambers[] = _("TANOBY CHAMBERS");
const u8 gMapSecName_ThreeIslePath[] = _("THREE ISLE PATH");
const u8 gMapSecName_TanobyKey[] = _("TANOBY KEY");
const u8 gMapSecName_BirthIsland[] = _("BIRTH ISLAND");
const u8 gMapSecName_MoneanChamber[] = _("MONEAN CHAMBER");
const u8 gMapSecName_LiptooChamber[] = _("LIPTOO CHAMBER");
const u8 gMapSecName_WeepthChamber[] = _("WEEPTH CHAMBER");
const u8 gMapSecName_DilfordChamber[] = _("DILFORD CHAMBER");
const u8 gMapSecName_ScufibChamber[] = _("SCUFIB CHAMBER");
const u8 gMapSecName_RixyChamber[] = _("RIXY CHAMBER");
const u8 gMapSecName_ViapoisChamber[] = _("VIAPOIS CHAMBER");
const u8 gMapSecName_EmberSpa[] = _("EMBER SPA");
const u8 gMapSecName_CeladonDept[] = _("CELADON DEPT.");

File diff suppressed because it is too large Load Diff

View File

@ -36,7 +36,7 @@ extern bool32 sub_80F5118(void);
extern struct SoundInfo gSoundInfo;
extern u32 gFlashMemoryPresent;
extern u32 IntrMain[];
extern u32 intr_main[];
extern u8 gHeap[];
extern struct SaveBlock1 gSaveBlock1;
extern struct SaveBlock2 gSaveBlock2;
@ -313,7 +313,7 @@ void InitIntrHandlers(void)
for (i = 0; i < INTR_COUNT; i++)
gIntrTable[i] = gIntrTableTemplate[i];
DmaCopy32(3, IntrMain, IntrMain_Buffer, sizeof(IntrMain_Buffer));
DmaCopy32(3, intr_main, IntrMain_Buffer, sizeof(IntrMain_Buffer));
INTR_VECTOR = IntrMain_Buffer;

View File

@ -552,7 +552,7 @@ static void sub_80F83D0(u8 taskId)
}
}
const struct MapPreviewScreen * sub_80F8544(u8 mapsec)
const struct MapPreviewScreen * GetDungeonMapPreviewScreenInfo(u8 mapsec)
{
u8 idx;

View File

@ -4201,7 +4201,7 @@ static void sub_8124BB0(struct Pokemon *mon, u8 fieldMove)
Free(ptr);
}
void sub_8124C1C(const u8 *healLocCtrlData) // TODO: confirm the type of data chunk at 0x83F2EE0
void sub_8124C1C(const u8 *healLocCtrlData)
{
const struct MapHeader *mapHeader;
struct FieldMoveWarpParams *ptr2;

View File

@ -3119,7 +3119,7 @@ static const u16 *sub_8113FBC(const u16 *a0)
StringCopy(gStringVar1, ItemId_GetName(r5[0]));
if (r5[0] == ITEM_ESCAPE_ROPE)
{
GetMapNameGeneric(gStringVar2, r5[2]);
GetMapNameGeneric(gStringVar2, (u8)r5[2]);
StringExpandPlaceholders(gStringVar4, gUnknown_841AFA6);
}
else if (r5[1] != 0xFFFF)
@ -4373,7 +4373,7 @@ static u16 *sub_81157DC(u16 *a0, const u16 *a1)
static const u16 *sub_8115800(const u16 *a0)
{
const u16 *r4 = sub_8113E88(42, a0);
GetMapNameGeneric(gStringVar1, r4[0]);
GetMapNameGeneric(gStringVar1, (u8)r4[0]);
StringExpandPlaceholders(gStringVar4, gUnknown_841B064);
return r4 + 1;
}

4399
src/region_map.c Normal file

File diff suppressed because it is too large Load Diff

View File

@ -61,37 +61,8 @@ gUnknown_3005078: @ 3005078
@ what is this?
.space 0x20
gUnknown_3005330: @ 3005330
.space 0x4
gUnknown_3005334: @ 3005334
.space 0x4
gUnknown_3005338: @ 3005338
.space 0x4
gUnknown_300533C: @ 300533C
.space 0x4
gUnknown_3005340: @ 3005340
.space 0x4
gUnknown_3005344: @ 3005344
.space 0x4
gUnknown_3005348: @ 3005348
.space 0x4
gUnknown_300534C: @ 300534C
.space 0x4
gUnknown_3005350: @ 3005350
.space 0x4
gUnknown_3005354: @ 3005354
.space 0xC
.align 2
.include "image_processing_effects.o"
.align 2
.include "field_specials.o"
.align 2

View File

@ -267,35 +267,10 @@ gUnknown_203998C: @ 203998C
.include "src/mail.o"
.align 2
.include "src/menu_helpers.o"
.align 2
.include "src/region_map.o"
.align 2
gUnknown_20399D4: @ 20399D4
.space 0x4
gUnknown_20399D8: @ 20399D8
.space 0x4
gUnknown_20399DC: @ 20399DC
.space 0x4
gUnknown_20399E0: @ 20399E0
.space 0x4
gUnknown_20399E4: @ 20399E4
.space 0x4
gUnknown_20399E8: @ 20399E8
.space 0x4
gUnknown_20399EC: @ 20399EC
.space 0x4
gUnknown_20399F0: @ 20399F0
.space 0xC
gUnknown_20399FC: @ 20399FC
.space 0x4
gAIScriptPtr: @ 2039A00
.space 0x4