TSB 2027 BASE [STANDARD] — Update #4: Rise of the Phoenix (TSB Style)

TSB 2027 BASE [STANDARD] — Update #4

Whew. It’s been a minute. Again.

Last update, the base was at build 21. I wrote Update #4 at build 111 and never posted it. The base went on to build 123. Then I stopped and started over, on purpose. This one covers all of it.

Quick wins since Update #3:

  • The first line, v1, finished at build 123: a 14-team playoff, the 2-point try, NFL overtime, the special-teams rules, gold goal posts, lpotter’s helmets and SheepdogXIX’s end zones.
  • A new line, v2, built from the 1991 game itself on the MMC5 chip. 59 builds so far.
  • The 2026 season in v2: names, colours, rosters and the real schedule.
  • A yellow line to gain, like on TV.
  • A freeze in v2, caught in testing and fixed before it reached anyone.
  • Room for 89 more faces.

Where v1 ended

v1 was built on cx_rom’s 32-team base. By build 123 it had:

  • A real 14-team playoff. Seven seeds a conference, a bye for the 1 seed, and the higher seed hosts.
  • The 2-point conversion, the extra point from the 15, and no pointless try at 0:00 of the 4th.
  • Today’s NFL overtime, in played games and simmed games.
  • The special-teams rules: touchbacks are your choice, fair catches, the punt rules, the kneel.
  • Missed field goals spotted where the kick was, never inside the 20.
  • Gold goal posts in every shot.
  • lpotter’s helmets, large and mini, for all 32 teams.
  • SheepdogXIX’s end zones for all 32 teams, in each team’s colours.
  • Milestone cutscenes, a redrawn playoff bracket, and a long list of old bugs fixed. Two freezes among them.

Every one of those builds was tested and passed. v1 is frozen now. Nothing is lost. Its records say what every byte does and why, and that’s what v2 is rebuilt from.

Why start over

v1 was built the only way it could be: by patching bytes into the holes of a ROM that was already full. Every new feature needed a landing spot and a spare corner to hide its code in. The four new teams’ data sat wherever it fit. It worked. But every build made the next one harder, and the end zones showed me where that road ends.

So v2 starts from the 1991 game itself.

  • The source. bruddog’s disassembly of the 1991 game assembles back into the exact 1991 ROM, byte for byte. v2 edits that source and assembles it. A hack that needed a code cave in v1 is ordinary code in v2, in the place it belongs.
  • The chip. v2 runs on MMC5 instead of MMC3. That means colour per tile instead of per 16×16 block, and room. The ROM is 1 MB. The target is emulators and flash carts like the EverDrive, not original cartridges.
  • One script. One script builds every v2 build, starting from the 1991 ROM. Anyone with bruddog’s public disassembly and their own copy of the 1991 game can rebuild it exactly. No ROMs get posted, ever.
  • The rule. v1’s features come over by what they do, not byte for byte. Each one gets rebuilt in v2’s own code and tested again.

The first v2 build is the 1991 game, rebuilt from source, identical to the cartridge. The second is the same game on the new chip. From there it’s one change at a time.

v2 so far

The platform. The 1991 game, byte for byte. Then MMC5. Then the bigger ROM, the reset hang fixed, and room made in the fixed bank.

32 teams. The community’s team order. The save keeps a season record for every club.

All 32 teams, with lpotter's mini helmets.
All 32 teams, with lpotter’s mini helmets.

The 2026 season. The 2026 names, colours and rosters from my TSB 2026 release. One less running back and one more receiver on every roster. The real 2026 schedule: 18 weeks, 17 games, a bye.

The playoffs. 14 teams, with NFL reseeding.

The helmets. lpotter’s, large and mini, all 32 teams. One small change with his art: the Bears’ large helmet no longer uses the one NES colour that some TVs and capture cards choke on.

lpotter's large helmets on the matchup screen.
lpotter’s large helmets on the matchup screen.

The field lines. The line of scrimmage is blue and the line to gain is yellow, like on TV. The yellow line sits behind the shield and stays up until the play fades out. The 1991 blue trim on the 20s and the 50 is green now, so blue means one thing only. To free a palette for the yellow line, the crowd strip got flattened.

1st and 10: the blue line of scrimmage, the yellow line to gain.
1st and 10: the blue line of scrimmage, the yellow line to gain.

The play.

  • The in-game playbook works the way people know it. PUNT, FG AND XP and PLAYBOOK are on the menu, and the playbook list works like the TSB 2026 release’s.
  • The 2-point try plays the way it does in the TSB 2026 release. The extra point is from the 15. No pointless try at 0:00 of the 4th quarter.
  • The home team wears home, and the road team wears the opposite. Dallas wears white at home.
The play-call screen.
The play-call screen.
The in-game menu: PUNT, FG AND XP, and PLAYBOOK.
The in-game menu: PUNT, FG AND XP, and PLAYBOOK.

v1’s features, coming over. This is the stretch we’re in now.

  • Milestone cutscenes. 100 yards rushing, 150 receiving or 300 passing gets a cutscene with the player’s name on it.
  • NFL overtime, played and simulated, with the overtime scores on the board.
  • Simmed punt returns use the punt returner.
  • In simmed games, passes spread across the receivers in line with their ratings.
  • The Super Bowl halftime is one of the regular shows, not the Mighty Bombjack one.
  • Missed field goals. The defense takes over at the spot of the kick, 7 yards behind the line, never inside its own 20. Played and simmed.
  • The special-teams set. Catch a kickoff in your end zone and press B for a touchback at the 35. Catch a punt there and press B for a touchback at the 20. Press B on a punt in the field for a fair catch. Run it out and come back in, and it’s a safety. The clock waits until the ball is fielded, long punts come down no more than 8 yards deep, the computer takes its own touchbacks, and a returner who kneels stays down.
A milestone cutscene.
A milestone cutscene.

The guards. The 1991 random crash from Update #3 is guarded in v2 too. So is a music fault that could hang the game.

A freeze, caught in testing

After the milestone cutscenes went in, a COM vs COM test showed a black screen after a touchdown and the try. We ran 60 whole COM games, and 7 stopped. That’s about 1 game in 8.

The cause: the new milestone code wrote to memory just below the stack, where an interrupt could land on top of it and wipe out a return address. The fix keeps it clear of the stack. The same 60 games on the fix: zero faults.

It never shipped to anyone. That’s what the testing is for.

More faces

There aren’t enough faces in this game, especially for players with dreadlocks. v2 now has room for 89 more face numbers. For now they’re copies of the faces we have. The new art comes later.

How it’s tested

Same as always. One change per build. Each build gets a check before it’s built, a record of exactly what changed, an IPS patch, an independent review, and my gate: a COM vs COM game, usually with a Lua script that makes the thing happen often enough to watch, fast-forwarded. Two v2 builds got thrown out along the way. Nothing counts until I’ve seen it.

Who’s “we”?

Me and Claude, Anthropic’s AI. I make the calls and do all the live testing. Claude does the byte-level work, and every build gets an independent review before it comes to me.

What’s next

  • The rest of v1’s features, in this order: gold goal posts, SheepdogXIX’s end zones, the cinemas and champions, the intro and menus, and the schedule screen. The playoff bracket screen turned out to be in v2 already. With colour per tile, some of these can come out better than v1 could do them.
  • After that: the 2026 kickoff rules with the new kickoff formation, midfield logos if all 32 fit, defensive packages, a bigger playbook and the bench.
  • The release: IPS patches, the ROM layout written down, and the tools to edit it.

Credit where it’s due

  • lpotter: every helmet, large and mini, and his permission for the whole community to use them.
  • @SheepdogXIX (War6): the end-zone art for all 32 teams, with permission. Also for catching Las Vegas playing Arizona twice, which led to an audit of all 272 games.
  • bruddog: the disassembly v2 is built from. None of this exists without it.
  • cx_rom: the 32-team base v1 was built on, and the expansion approach.
  • Suede Wade and “Jorgasms”: the 2-point patch’s design. Suede Wade also reported the garbled roster title after a Super Bowl win.
  • T-Borg: his base, which made the low save area safe and carried the in-game playbook. That hack’s author is unknown. If it’s you, tell me.
  • Knobbe: for catching the standings header that never reached week 18.
  • COA Elway: for his COM season crash report, and for proving a 14-team playoff bracket could be done.
  • Lhopital: the simmed pass-target table.
  • BAD-AL: TSB Tool.
  • jstout: whose work keeps turning up underneath everything.

Where things stand

  • v1: frozen at build 123. Every build tested and passed.
  • v2: build 58. Every build to it tested and passed.
  • Next: gold goal posts, being reworked after my last test, then SheepdogXIX’s end zones.

More when there’s more.