Routes 26 and 27 with their houses, Tohjo Falls, the Victory Road gate,
Victory Road, Route 23, Indigo Plateau, the Elite Four's rooms, Lance's
room and the Hall of Fame are open.
- halloffame (game/scripts/league.ts): the music fades as SAVING RECORD
shows, the win and the team (without Eggs) are recorded, each Pokémon's
back picture passes and its front picture slides in for its "New Hall of
Famer!" page and cry, then the player's card with the play time and
Professor Oak's rating; the play time stops meanwhile. The world then
continues at New Bark as Continue does after the cartridge's reset.
- credits and the credits after the Hall of Fame (CreditsMachine): the
ROM's script, strings, banner Pokémon and THE END, frame by frame as
VBlank_Credits presents them, with the frames each command group runs
over measured on the cartridge. B shortens credits seen before.
- wait, appear/disappear of the player, and rival names in battle texts
(PlaceEnemysName prints wRivalName alone: "???" before he is named).
- The tile-screen renderer wraps hSCX/hSCY at 256 pixels and gives rows
their own hSCX.
- Reference: the credits match the cartridge on every frame (BG map,
banner tiles, CRAM palettes, LY overrides, parser), with and without B;
the ceremony's pages match for every species and the player's card for
Chris and Kris.
- Playthrough: five stages from Tin Tower to the Hall of Fame (HM07 from
Ice Path, Tohjo Falls' waterfall, Victory Road's ladders, the Elite Four
and Lance); the driver follows warps within a map and fights carefully
from here.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Day-Care and breeding: deposits, withdrawal pricing and growth,
compatibility, egg species, DVs and moves, DayCareStep, egg
collection and the Odd Egg, compared with the cartridge's routines.
- CountStep: walking happiness, DoEggStep, DayCareStep and DoBikeStep
in the original's order; HatchEggs with the ROM's hatch animation,
compared frame by frame with the original.
- MAIL: all ten stationery types and the Portrait MAIL picture,
compared with the cartridge's tilemaps, graphics and palettes.
- Printing: Bill's PC boxes, Pokedex PRNT, MAIL and the Photo Studio
take the original's absent-printer path.
- Hall of Fame records (saved apart from the League flag, ready for the
League to call) and the Hall of Fame PC, compared with the cartridge's
_HallOfFamePC on 255 pages.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The sound engine (audio/engine.asm, home/audio.asm) is ported on a byte
copy of its audio WRAM and a sound register model. A reference test runs
the cartridge's routines beside it and matches the WRAM and registers
after every UpdateSound for all songs, effects and cries, fades, the
danger tone and effect priority. apu.ts synthesizes the four channels in
an AudioWorklet; its output matches the reference emulator's APU by
spectrum. The world runs the engine twice per tick; Play or the first
press unlocks sound, pausing suspends it, Settings sets the volume.
Wired in: map music by map setup and special map music, script audio
commands, text fanfares, WaitSFX and cries that hold the script frozen
(the last page stays shown), battle music, cries, fainting, victory,
capture and the low HP tone, Pokémon Center healing, evolution, the
intro, the Pokédex's cries, PCs, marts, healing items, talk and menu
clicks, bumps, ledges, warps, boulders, the Bicycle and Surf.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Enable Route 31 and its gate, Dark Cave's Violet entrance, Violet City with its buildings and Sprout Tower. Port the script commands they use: gettrainername, askforphonenumber (with AddPhoneNumber's room for Mom and Elm; addcellnum now reports failure as the original does), checkpokemail, loadmenu/_2dmenu/closewindow, giveegg and trade (NPCTrade, with wTradeFlags saved).
Eggs keep their species with an egg flag, as wPartySpecies does. The pack's TM/HM counts receive, check and toss TMs and HMs, which are named TM01-HM07.
The playthrough continues through Route 31 (with Mom's call), Violet City and Sprout Tower to Elder Li's Flash.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Giving MAIL opens the mail entry: two lines of up to sixteen characters,
kept with the player's name and ID, the holder's species and the MAIL.
The party submenu's MAIL reads the letter or takes it, either to the PC's
MAILBOX (ten at most) or into the pack without its message. The player's
PC lists the MAILBOX by author to read, put in the pack or attach, and
Bill's PC keeps a Pokémon holding MAIL out of the boxes. Saves keep each
holder's MAIL and the MAILBOX.
The letter shows its message and author natively; the stationery's
graphics are not drawn yet.
Closes#27
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Field moves chosen in the party menu run their original checks and the
ROM's from-menu scripts (Cut, Surf, Strength, Flash, Whirlpool, Waterfall,
Sweet Scent), and Softboiled and Milk Drink share HP. SEL registers a key
item that Select then uses, replacing the Key Items shortcut, and Bill's
PC moves Pokémon between the party and every box.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Run every non-ball item effect usable in battle from the ROM's
ItemEffects: Full Restore, revives, bitter medicine, Bitter Berry, Ethers
and Elixers, X items, X Accuracy, Guard Spec, Dire Hit and Poké Doll.
- Read happiness changes from HappinessChanges, including the larger
level-up gain where a Pokémon was caught.
- Model hBattleTurn at the battle menu, including the trainer AI's writes,
and drop the status-heal refusal.
- Port the stats screen for battles and Bill's PC.
- Compare the send-out and withdraw texts, RestoreHealth, RestorePP,
ChangeHappiness and CalcPlayerStats with the original routines.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Read TileCollisionStdScripts from the ROM so the Pokémon Center PC runs
PokemonCenterPC: Bill's PC (deposit, withdraw, release, change and name
boxes), the player's item storage (withdraw, deposit, toss, mail box) and
Oak's Pokédex rating. The house PC now opens the full player's PC menu.
A catch with a full party goes to the current box through SendMonIntoBox;
a full box keeps the ball, and filling it queues Bill's call as a memory
script after the battle. Saves gain boxes, box names and PC items,
migrated by absence.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>