diff options
author | PikalaxALT <PikalaxALT@gmail.com> | 2015-11-10 11:05:26 -0500 |
---|---|---|
committer | PikalaxALT <PikalaxALT@gmail.com> | 2015-11-10 11:05:26 -0500 |
commit | ba05bfeafec51b183986ecaacd22c718ec21f56a (patch) | |
tree | 671cb0eda5320b23602bca33e8ff0e8a49c2e37e /engine | |
parent | d8cd991b35d45ef75b06a89b0626381132b34806 (diff) |
Move some gfx files around, also clock reset fn
Diffstat (limited to 'engine')
-rwxr-xr-x | engine/clock_reset.asm | 251 | ||||
-rw-r--r-- | engine/events.asm | 4 | ||||
-rw-r--r-- | engine/landmarks.asm | 68 |
3 files changed, 287 insertions, 36 deletions
diff --git a/engine/clock_reset.asm b/engine/clock_reset.asm new file mode 100755 index 000000000..eedcae836 --- /dev/null +++ b/engine/clock_reset.asm @@ -0,0 +1,251 @@ + +ResetClock_GetWraparoundTime: ; 20000 (8:4000) + push hl + dec a + ld e, a + ld d, 0 + ld hl, .WrapAroundTimes +rept 4 + add hl, de +endr + ld e, [hl] + inc hl + ld d, [hl] + inc hl + ld b, [hl] + inc hl + ld c, [hl] + pop hl + ret +; 20015 (8:4015) + +.WrapAroundTimes: ; 20015 + dw Buffer4 + db 7, 4 + + dw Buffer5 + db 24, 12 + + dw Buffer6 + db 60, 15 +; 20021 + +RestartClock: ; 20021 (8:4021) +; If we're here, we had an RTC overflow. + ld hl, .Text_ClockTimeMayBeWrong + call PrintText + ld hl, Options + ld a, [hl] + push af + set NO_TEXT_SCROLL, [hl] + call LoadPartyMenuDataHeader + call ClearTileMap + ld hl, .Text_SetWithControlPad + call PrintText + call .SetClock + call ExitMenu + pop bc + ld hl, Options + ld [hl], b + ld c, a + ret +; 20047 (8:4047) + +.Text_ClockTimeMayBeWrong: ; 0x20047 + ; The clock's time may be wrong. Please reset the time. + text_jump UnknownText_0x1c40e6 + db "@" +; 0x2004c + +.Text_SetWithControlPad: ; 0x2004c + ; Set with the Control Pad. Confirm: A Button Cancel: B Button + text_jump UnknownText_0x1c411c + db "@" +; 0x20051 + +.SetClock: ; 20051 (8:4051) + ld a, 1 + ld [Buffer1], a ; which digit + ld [Buffer2], a ; wd1eb (aliases: MovementType) + ld a, 8 + ld [Buffer3], a + call UpdateTime + call GetWeekday + ld [Buffer4], a + ld a, [hHours] ; $ff00+$94 + ld [Buffer5], a + ld a, [hMinutes] ; $ff00+$96 + ld [Buffer6], a + +.loop + call .joy_loop + jr nc, .loop + and a + ret nz + call .PrintTime + ld hl, .Text_IsThisOK + call PrintText + call YesNoBox + jr c, .cancel + ld a, [Buffer4] + ld [StringBuffer2], a + ld a, [Buffer5] + ld [StringBuffer2 + 1], a + ld a, [Buffer6] + ld [StringBuffer2 + 2], a + xor a + ld [StringBuffer2 + 3], a + call Function677 + call .PrintTime + ld hl, .Text_ClockReset + call PrintText + call Functiona80 + xor a + ret + +.cancel + ld a, $1 + ret +; 200b0 (8:40b0) + +.Text_IsThisOK: ; 0x200b0 + ; Is this OK? + text_jump UnknownText_0x1c415b + db "@" +; 0x200b5 + +.Text_ClockReset: ; 0x200b5 + ; The clock has been reset. + text_jump UnknownText_0x1c4168 + db "@" +; 0x200ba + +.joy_loop + call Function354b + ld c, a + push af + call .PrintTime + pop af + bit 0, a + jr nz, .press_A + bit 1, a + jr nz, .press_B + bit 6, a + jr nz, .pressed_up + bit 7, a + jr nz, .pressed_down + bit 5, a + jr nz, .pressed_left + bit 4, a + jr nz, .pressed_right + jr .joy_loop + +.press_A + ld a, $0 + scf + ret + +.press_B + ld a, $1 + scf + ret + +.pressed_up + ld a, [Buffer1] ; wd1ea (aliases: MagikarpLength) + call ResetClock_GetWraparoundTime + ld a, [de] + inc a + ld [de], a + cp b + jr c, .done_scroll + ld a, $0 + ld [de], a + jr .done_scroll + +.pressed_down + ld a, [Buffer1] ; wd1ea (aliases: MagikarpLength) + call ResetClock_GetWraparoundTime + ld a, [de] + dec a + ld [de], a + cp -1 + jr nz, .done_scroll + ld a, b + dec a + ld [de], a + jr .done_scroll + +.pressed_left + ld hl, Buffer1 ; wd1ea (aliases: MagikarpLength) + dec [hl] + jr nz, .done_scroll + ld [hl], $3 + jr .done_scroll + +.pressed_right + ld hl, Buffer1 ; wd1ea (aliases: MagikarpLength) + inc [hl] + ld a, [hl] + cp $4 + jr c, .done_scroll + ld [hl], $1 + +.done_scroll + xor a + ret + +.PrintTime: ; 2011f (8:411f) + hlcoord 0, 5 + ld b, 5 + ld c, 18 + call TextBox + decoord 1, 8 + ld a, [Buffer4] + ld b, a + callba PrintDayOfWeek + ld a, [Buffer5] + ld b, a + ld a, [Buffer6] + ld c, a + decoord 11, 8 + callba PrintHoursMins + ld a, [Buffer2] ; wd1eb (aliases: MovementType) + lb de, " ", " " + call .PlaceChars + ld a, [Buffer1] ; wd1ea (aliases: MagikarpLength) + lb de, "▲", "▼" + call .PlaceChars + ld a, [Buffer1] ; wd1ea (aliases: MagikarpLength) + ld [Buffer2], a ; wd1eb (aliases: MovementType) + ret +; 20160 (8:4160) + +.unreferenced: ; 20160 + ld a, [Buffer3] + ld b, a + call GetTileCoord + ret +; 20168 + +.PlaceChars: ; 20168 (8:4168) + push de + call ResetClock_GetWraparoundTime + ld a, [Buffer3] + dec a + ld b, a + call GetTileCoord + pop de + ld [hl], d + ld bc, 2 * SCREEN_WIDTH + add hl, bc + ld [hl], e + ret +; 2017c (8:417c) + +String_2017c: ; 2017c + db "じ@" ; HR +; 2017e + +String_2017e: ; 2017e + db "ふん@" ; MIN +; 20181 diff --git a/engine/events.asm b/engine/events.asm index 2cc307031..344063aab 100644 --- a/engine/events.asm +++ b/engine/events.asm @@ -247,7 +247,7 @@ Function967d1: ; 967d1 Function967e1: ; 967e1 callba RefreshMapAppearDisappear callba Functiond4d2 - callba Functionb8098 + callba PlaceMapNameSign ret ; 967f4 @@ -328,7 +328,7 @@ PlayerEvents: ; 9681f jr z, .ok2 xor a - ld [wc2da], a + ld [wLandmarkSignTimer], a .ok2 scf diff --git a/engine/landmarks.asm b/engine/landmarks.asm index e9b1c3668..8fb7035f2 100644 --- a/engine/landmarks.asm +++ b/engine/landmarks.asm @@ -154,52 +154,52 @@ ENDM landmark 148, 132, FastShipName -NewBarkTownName: db "NEW BARK", $1f, "TOWN@" -CherrygroveCityName: db "CHERRYGROVE", $1f, "CITY@" +NewBarkTownName: db "NEW BARK¯TOWN@" +CherrygroveCityName: db "CHERRYGROVE¯CITY@" VioletCityName: db "VIOLET CITY@" AzaleaTownName: db "AZALEA TOWN@" -GoldenrodCityName: db "GOLDENROD", $1f, "CITY@" -EcruteakCityName: db "ECRUTEAK", $1f, "CITY@" -OlivineCityName: db "OLIVINE", $1f, "CITY@" -CianwoodCityName: db "CIANWOOD", $1f, "CITY@" -MahoganyTownName: db "MAHOGANY", $1f, "TOWN@" -BlackthornCityName: db "BLACKTHORN", $1f, "CITY@" -LakeOfRageName: db "LAKE OF", $1f, "RAGE@" +GoldenrodCityName: db "GOLDENROD¯CITY@" +EcruteakCityName: db "ECRUTEAK¯CITY@" +OlivineCityName: db "OLIVINE¯CITY@" +CianwoodCityName: db "CIANWOOD¯CITY@" +MahoganyTownName: db "MAHOGANY¯TOWN@" +BlackthornCityName: db "BLACKTHORN¯CITY@" +LakeOfRageName: db "LAKE OF¯RAGE@" SilverCaveName: db "SILVER CAVE@" -SproutTowerName: db "SPROUT", $1f, "TOWER@" -RuinsOfAlphName: db "RUINS", $1f, "OF ALPH@" +SproutTowerName: db "SPROUT¯TOWER@" +RuinsOfAlphName: db "RUINS¯OF ALPH@" UnionCaveName: db "UNION CAVE@" -SlowpokeWellName: db "SLOWPOKE", $1f, "WELL@" +SlowpokeWellName: db "SLOWPOKE¯WELL@" RadioTowerName: db "RADIO TOWER@" PowerPlantName: db "POWER PLANT@" -NationalParkName: db "NATIONAL", $1f, "PARK@" +NationalParkName: db "NATIONAL¯PARK@" TinTowerName: db "TIN TOWER@" LighthouseName: db "LIGHTHOUSE@" -WhirlIslandsName: db "WHIRL", $1f, "ISLANDS@" +WhirlIslandsName: db "WHIRL¯ISLANDS@" MtMortarName: db "MT.MORTAR@" -DragonsDenName: db "DRAGON'S", $1f, "DEN@" +DragonsDenName: db "DRAGON'S¯DEN@" IcePathName: db "ICE PATH@" NotApplicableName: db "N/A@" PalletTownName: db "PALLET TOWN@" -ViridianCityName: db "VIRIDIAN", $1f, "CITY@" +ViridianCityName: db "VIRIDIAN¯CITY@" PewterCityName: db "PEWTER CITY@" -CeruleanCityName: db "CERULEAN", $1f, "CITY@" -LavenderTownName: db "LAVENDER", $1f, "TOWN@" -VermilionCityName: db "VERMILION", $1f, "CITY@" -CeladonCityName: db "CELADON", $1f, "CITY@" -SaffronCityName: db "SAFFRON", $1f, "CITY@" -FuchsiaCityName: db "FUCHSIA", $1f, "CITY@" -CinnabarIslandName: db "CINNABAR", $1f, "ISLAND@" -IndigoPlateauName: db "INDIGO", $1f, "PLATEAU@" -VictoryRoadName: db "VICTORY", $1f, "ROAD@" +CeruleanCityName: db "CERULEAN¯CITY@" +LavenderTownName: db "LAVENDER¯TOWN@" +VermilionCityName: db "VERMILION¯CITY@" +CeladonCityName: db "CELADON¯CITY@" +SaffronCityName: db "SAFFRON¯CITY@" +FuchsiaCityName: db "FUCHSIA¯CITY@" +CinnabarIslandName: db "CINNABAR¯ISLAND@" +IndigoPlateauName: db "INDIGO¯PLATEAU@" +VictoryRoadName: db "VICTORY¯ROAD@" MtMoonName: db "MT.MOON@" RockTunnelName: db "ROCK TUNNEL@" -LavRadioTowerName: db "LAV", $1f, "RADIO TOWER@" +LavRadioTowerName: db "LAV¯RADIO TOWER@" SilphCoName: db "SILPH CO.@" SafariZoneName: db "SAFARI ZONE@" -SeafoamIslandsName: db "SEAFOAM", $1f, "ISLANDS@" -PokemonMansionName: db "#MON", $1f, "MANSION@" -CeruleanCaveNane: db "CERULEAN", $1f, "CAVE@" +SeafoamIslandsName: db "SEAFOAM¯ISLANDS@" +PokemonMansionName: db "#MON¯MANSION@" +CeruleanCaveNane: db "CERULEAN¯CAVE@" Route1Name: db "ROUTE 1@" Route2Name: db "ROUTE 2@" Route3Name: db "ROUTE 3@" @@ -247,14 +247,14 @@ Route44Name: db "ROUTE 44@" Route45Name: db "ROUTE 45@" Route46Name: db "ROUTE 46@" DarkCaveName: db "DARK CAVE@" -IlexForestName: db "ILEX", $1f, "FOREST@" -BurnedTowerName: db "BURNED", $1f, "TOWER@" +IlexForestName: db "ILEX¯FOREST@" +BurnedTowerName: db "BURNED¯TOWER@" FastShipName: db "FAST SHIP@" -ViridianForestName: db "VIRIDIAN", $1f, "FOREST@" -DiglettsCaveName: db "DIGLETT'S", $1f, "CAVE@" +ViridianForestName: db "VIRIDIAN¯FOREST@" +DiglettsCaveName: db "DIGLETT'S¯CAVE@" TohjoFallsName: db "TOHJO FALLS@" UndergroundName: db "UNDERGROUND@" -BattleTowerName: db "BATTLE", $1f, "TOWER@" +BattleTowerName: db "BATTLE¯TOWER@" SpecialMapName: db "SPECIAL@" |