Under the microscope: Knockout Kings & HBO Boxing (PlayStation)
Nude Lara Croft, eat your heart out.
Intro
Despite the rumors to the contrary, there is no “nude Lara Croft” cheat code in Tomb Raider. There is, however, a “naked card girl” Easter egg in the 1998 PlayStation game Knockout Kings that has gone unreported until now:

I started looking into this game after I found the Osama Bin Laden Easter egg in E.T. Interplanetary Mission. The developers behind that game also hid some things in their later 101 Dalmatians and Dora the Explorer games, so I decided to check out their earlier work as well.
Here is what I found:
A “show credits” cheat code for Knockout Kings. Nice, but not super exciting.
The “naked card girl” Easter egg for Knockout Kings. Don't tell the ESRB!
A cheat code to unlock a boatload of hidden fighters in HBO Boxing.
Details are below…
Knockout Kings
This is the first game in the Knockout Kings series. It was published in 1998 by Electronic Arts. A few cheat codes are already known for it — GameFAQs lists three as of this writing.
In an exchange about E.T. Interplanetary Mission, one of its developers, Mark “Beno” Bell, told me to take a closer look at Knockout Kings. I did, and found this Easter egg:
Turn on the PlayStation.
Hold L1+L2 on Controller 1 and R1+R2 on Controller 2 as the opening movie ends (don’t skip it).
The credits movie will play. It shows the game debuting at a boxing match and the team working on the motion capture:
That’s mildly interesting, but it pales in comparison to this game’s other Easter egg.
First, start the game with no memory cards inserted. Go to Career and select Create New. Design a boxer to your liking — the parameters you choose don’t matter. When prompted to Keep this boxer, answer Yes and then choose a save slot. You’ll get an error message.
While the error is being displayed, hold down L1 until the border around the message turns yellow (this takes about 30 seconds):
Keep holding L1 while pressing Start to dismiss the error.
Answer Yes when prompted again, but this time choose Don’t save instead of choosing a save slot. Pick an opponent from the rankings list, watch the training sequence and wait for the bout to begin.
As it starts, you’ll see that the card girl is missing her clothing texture! From most angles it’s a Barbie/Ken level of nudity, but there are some questionable pixels if you look closely enough.
Technical details: For the card girl Easter egg, the function at 80020b84
checks for input while the “No memory card” message is being displayed. Its logic is something like:
Check for L1, R1, L2, R2, or X being held.
While they’re being held, increment the counter at
800af19e
.If that counter’s value exceeds 900 when Start is pressed, set the value at
800af1a0
to 1.
The value at 800af1a0
is read by the function at 8004dc4c
, which picks a hair color, skin tone, and clothing style for the card girl.
I figured this out by backing into it.
Normally, the card girl’s outfit and hair color are chosen randomly. I took memory snapshots (using the RALibretro Memory Inspector) while she was on the screen and looked for addresses with consistent values while a particular outfit was active.
Following references to those addresses with Ghidra led me to the function that selects the values. I fiddled with all of the values it uses and found that the one at
800af1a0
turns the clothing on and off.Tracing writes to that address in Ghidra led me to the
80020b84
function, which implements the “count how long L1 is being held” logic.Finally, I set a breakpoint for that function to see which game screen uses it. After fiddling around in the menus for a while, the breakpoint triggered and I had the whole sequence.
For the credits movie, I noticed a suspicious section of code in the game’s primary loop. The function is at 8001cb10
, and its logic is straightforward once labels are added:
if (
(held_button_p1 == (L1 | L2)) and # L1=0x0400, L2=0x0100
(held_button_p2 == (R1 | R2)) # R1=0x0800, R2=0x0200
):
play_movie(5) # Movie index 5 is the credits movie
HBO Boxing
HBO Boxing is another boxing game for PlayStation. This one was published by Acclaim in 2000. GameFAQs mentions that you can “unlock new boxers” by winning in the game’s career mode, but I found a cheat code shortcut.
Enter this sequence at the title screen:
L2, L1, R2, R1
Lots of new boxers will become available to choose on the fighter select screen. Some of them are from the development staff. “Tweak” Mayers is credited as the lead for tools and for audio; “Eggman” Link is credited as “Senior Programmer;” “Beno” Bell is credited as “Lead Programmer;” and Ben Padget is credited as a “Tools Programmer.”
Here’s Link versus Mayers in Chicago:
Six of the extra boxers are on the female side. It's unclear whether these are based on real boxers, friends of the developers, or fictional characters:
Here’s the full list of unlocked fighters. It matches this one compiled by an Action Replay hacker:
Technical details: The title screen’s input handling function is at 801ed440
. It’s got logic that looks like this:
if (cheat_counter == 0) and (pressed_button == L2_BUTTON):
cheat_counter = 1
if (
((cheat_counter == 1) and (pressed_button == L1_BUTTON)) or
((cheat_counter == 2) and (pressed_button == R2_BUTTON))
):
play_sfx(0x1f, 0, 0)
elif ((cheat_counter == 3) and (pressed_button == R1_BUTTON)):
play_sfx(0x20, 0, 0)
unlock_everything()
The function I’m calling unlock_everything
sets all of the bits from 80078b74
to 80078b83
.
Outro
For many more articles on retro game reverse engineering, see my archive here at Substack. I publish new ones every week — you can get them as they come out by subscribing:
Many thanks to Mark “Beno” Bell for putting me on the trail of these long-hidden secrets. Thanks also to Lee and Michael for reviewing the content here and for paying very close attention to the details.
