Welcome, Guest!

Here are some links you may find helpful

OG Xbox Boot Animation Easter Egg Hunt

GoTeamScotch

Registered
Registered
Joined
Jun 4, 2019
Messages
42
Reaction score
42
Points
18
AG User Name
GoTeamScotch
AG Join Date
Jul 14, 2016
I recently found out from a reddit thread that Seamus Blackley, the "father of the Xbox", posted 2 years ago in 2017 that there's an undiscovered easter egg in the Xbox's startup animation that apparently has gone undiscovered to this day. I asked him for some clarification via Twitter last week and apparently, it's still undiscovered.

There's been some threads here and there over the years about it, but I'm not sure if it's something where coders have looked into it. Plenty of folks around here have the XDK and know how to use it around. And many hands make light work. ;)

https://twitter.com/SeamusBlackley/status/1182105796676653056

twitter.jpg

And he's staying tight-lipped about it. Probably trying to encourage folks to get creative with it.

twitter2.jpg

There's been some conversation about this topic on Reddit too.

I wholly realize that it's 2019 and over the past 2 decades, countless talented people have been through the source code and have torn it apart six ways from Sunday. But it's also possible that the easter egg was coded in a way that obfuscates it. So, unless you're specifically looking for it, perhaps it could go overlooked. Also, the animation is spread out over 130 files, some of those files contain thousands of lines of code.

This puzzle fascinated me and after some quick searching around, I found the code for the startup animation sequence and started combing through it for a good 2 hours one night. Other than learning a new appreciation for just how complicated the startup animation is, I didn't really get anywhere. The animation is interesting because it's 100% rendered on-the-fly. The scene, the blobs, even the audio... everything is generated, not pre-rendered, during each startup. It's something I knew just from using hacked bioses for ages and customizing those, but I guess it never hit me how complex it all was and how much work went into designing it.

The first thing that stood out to me (and u/RenderedKnave) was that the code had references to two main "hidden" (disabled) features:
1) The ability to control the animation with a controller. You can pause/loop the animation, control the blob's intensity, control the camera (pan, tilt, etc), and more.
2) There are "shields" that were going to be apart of the animation that were taken out at some point. These are basically added geometry to the scene that looks like shields that cover and rotate around the green "blob" in the middle during the animation.

At first I thought #1 was the easter egg so I went on a tangent trying to figure out how to trigger the controller inputs to be processed. Long story short...
If FINAL_BUILD is defined, controller inputs are NOT processed. In other words, it was put in during development so that they (Pipeworks) could plan out the camera movements without just hard-coding it all. From what I can tell, there's no way to avoid FINAL_BUILD getting defined in the retail kernel. I'm pretty sure the definition is just a line somewhere that is commented or uncommented out as needed.

Code:
A: fog enable/disable
b: shadows enable/disable
x: blob intensity control enable/disable
y: animation speed
white: camera controller - button pressed (?)
black: camera under control enable/disable
Left thumb: "position lookat mode" enable/disable
Left trigger: blob intensity / decrease
Right trigger: blob intensity / increase

And item #2 (shields) was probably just something they were planning on adding and decided not to. The shields get rendered if _SHIELD is defined. I can't find where _SHIELD is defined though.

Beyond that, my next guess is that the design of the animation includes something hidden in plain sight. Like the design was inspired by something else, or contains a nod to something. Like the number of blobs represents the number of people in the core Xbox development group, or something like that.

Anyways, I just wanted to see if anyone else is interested in tackling this problem or if there's already a thread somewhere that I've totally missed that already made more progress than I have here. If not, then perhaps someone with enough interest and a debug could do some poking around.
 

Xe

Donator
Donator
Registered
Joined
Sep 3, 2018
Messages
47
Reaction score
118
Points
33
AG Join Date
Mar 23, 2012
hi there, this might not be of much contribution but the earlier DVT3 development hardware boot anim still had the shields, albeit no sound and a green MS logo. if you pick through youtube you can see a video of that, really cool stuff.

 
Last edited:

GoTeamScotch

Registered
Registered
Joined
Jun 4, 2019
Messages
42
Reaction score
42
Points
18
AG User Name
GoTeamScotch
AG Join Date
Jul 14, 2016
hi there, this might not be of much contribution but the earlier DVT3 development hardware boot anim still had the shields, albeit no sound and a green MS logo. if you pick through youtube you can see a video of that, really cool stuff.
Indeed. I tried linking to some pictures of what the shields look like in my post but couldn't find the images again after stumbling across them last week. There's also the "fireworks" style animation that I think predates the flubber sequence (including shields). You can see the fireworks intro in this video:

Update: I asked Seamus if it's "hidden in plain sight" like a reference or nod that is clearly visible but not meaningful unless you know what you're looking at. He said no. "It's obvious".
 
Last edited:
  • Like
Reactions: Xe

reknave

Registered
Registered
Joined
Oct 15, 2019
Messages
8
Reaction score
8
Points
3
OP of the original reddit thread here. Thank you for posting this. Unfortunately due to the nature of my research there isn't much I can do over at r/OriginalXbox, so hopefully we'll have better chances of uncovering this over here.

Over the weekend, I experimented with converting the vertex coordinates within the geometry files for the boot animation, and while I didn't find much that made sense, one of those files looks suspiciously close to the animation of the "shields." Hard to see in the screenshots but have the .obj file if necessary.

re the "fireworks" sequence: I highly doubt it's even present at all within these files. "ani2" (the folder within the source where boot anim files are located) suggests that this is a second, revised version; it's likely the original sequence wasn't even outsourced, just something slapped together. Plus, it looks like a raster image to me - everything in the "current" boot animation is specifically rendered as a 3D object, even the Xbox "slash" itself. The only things within the boot sequence that aren't made in real-time are the Microsoft logo, TM marks above the Xbox logos and the three samples for the boot sound.

For now, I'm looking into converting more of these vertex lists into usable formats. Might be useful to take a look at the scene in a separate 3D viewer.
 

Attachments

  • Screenshot (21).png
    Screenshot (21).png
    30.7 KB · Views: 0
  • Screenshot (22).png
    Screenshot (22).png
    25.8 KB · Views: 0

reknave

Registered
Registered
Joined
Oct 15, 2019
Messages
8
Reaction score
8
Points
3
Update on the model extraction project: was not very helpful. Found the coordinates that tell where each scene model should go, along with animation frames, but the models themselves are based on DirectX primitives and are made up in real-time (surprise!)
Found some other neat things, though - the vertices that make up the Xbox slash logo, for one. There's also a file, ani.bin, but it's compiled so there's no real way of looking at what it actually does. It's likely it makes up the original "fireworks" animation.

I presume the next step now is to dig into the code line-by-line. That, or try out every button combination possible while rebooting the console like a maniac.
 

Attachments

  • Screenshot (23).png
    Screenshot (23).png
    193.9 KB · Views: 0
  • Screenshot (24).png
    Screenshot (24).png
    188 KB · Views: 0

GoTeamScotch

Registered
Registered
Joined
Jun 4, 2019
Messages
42
Reaction score
42
Points
18
AG User Name
GoTeamScotch
AG Join Date
Jul 14, 2016
I presume the next step now is to dig into the code line-by-line.
I spent quite a while scouring any files I thought were relevant line by line. But there's a lot to sift through and I didn't look at every file so it's possible there's still something left to discover. I wasn't doing it very scientifically though. When I take another whack at this again, I'll take better notes so that certain files can be explained and excluded from investigation. If you want, I can share a google doc so that we can collaborate on notes about what files are responsible for what, which may help filter down the list of files to go through.

try out every button combination possible while rebooting the console like a maniac.
I don't think that will help because controller inputs aren't being processed at all unless FINAL_BUILD is *not* defined. It's not just that the Xbox knows you're pressing buttons and is waiting for the right inputs but the problem is that it isn't loading the libraries which handle controller ports at all during startup. From what it looks like, it doesn't even know you're pressing buttons. I still haven't figuring out what causes FINAL_BUILD to be defined, but I would guess that it's just something is manually un-commented out during the final compilation or that it's some kind of global variable that's defined in the build environment as needed.

One thing that popped into my head was that the Xbox can read video (and presumably other) settings during bootup. For example, it apparently detects whether widescreen is enabled or not. That option is stored on the EEPROM if I'm not mistaken. Perhaps if the user changes a setting in the Dashboard to just the right value then maybe that triggers something to happen. For example, changing the system clock to September 14th 2025 causes "Happy Birthday" to appear in reference to one of the developer's birthday or something like that. It could be a combination of settings, so maybe it's something that only appears in certain regions too. Obviously, if this is the case then figuring it out by trial and error isn't really an option because that would take way too long to do by hand. It's either going to be done by scouring through the code line by line or by figuring out some clue that cracks this open.
 

reknave

Registered
Registered
Joined
Oct 15, 2019
Messages
8
Reaction score
8
Points
3
I hadn't thought of that, actually. That's pretty genius.
Unlikely, though, since I think that at this point one of us would've noticed a text string sticking out like that.

Another thing I noticed is that there might be some source files missing. Now normally this isn't much of a bad thing, but the files missing seem to have something to do with geometry assets. They aren't mentioned in xbs_app, which seems like the main file for the sequence, but are mentioned in one of the renderer files (didn't take notes... stupid me.) Hopefully they're just hidden in the dumpster fire that is the ntos folder.
 

Esppiral

Registered
Registered
Joined
Jun 29, 2019
Messages
10
Reaction score
13
Points
3
AG User Name
Esppiral
AG Join Date
October3, 21012
Maybe there is some windows sound "hidden" the last notes sound like windows startup- log off sounds to me.
 

tjd2

Registered
Registered
Joined
Jan 8, 2020
Messages
51
Reaction score
21
Points
8
Location
Czech Republic
Have you tried somehow injecting the ani.bin into the BIOS image?
I really like that "fireworks" boot anim.
 

reknave

Registered
Registered
Joined
Oct 15, 2019
Messages
8
Reaction score
8
Points
3
Have you tried somehow injecting the ani.bin into the BIOS image?
I really like that "fireworks" boot anim.
That would be nice, but I'm not sure as to how we'd do that. Can't compile this source into a functional BIOS since there are some key portions missing (on purpose?) Maybe an emulator has a feature like that? I know one of them has the ability to extract the sound files embedded into the BIOS (thunderclap, glockenspiel, bubbles from startup sound)
 

gladiator5

Registered
Registered
Joined
Jun 5, 2019
Messages
8
Reaction score
2
Points
3
AG User Name
gladiator5
AG Join Date
Jun 25, 2012
The hint about the microsofts happy birthday..
how about release dates of certain items? 360? og xbox launch?
eastern? :p
 

trojanvirusmusic

Registered
Registered
Joined
Mar 21, 2020
Messages
1
Reaction score
4
Points
3
I can't help but wonder...

Almost no attention has been put on the fact that Seamus Blackley specifically said "It's obvious".
Looking through the animation procedural files, in my opinion, is not "obvious"!

If no one can see anything obvious in the video, then what's left?
THE AUDIO.

No one here has spoken much about the audio.
I did a little digging. Found a guy called Brian Schmidt. He designed the xbox sound.
Here's his take on how he actually created the audio we all came to love: https://www.gamasutra.com/blogs/Bri...ning_the_Boot_Sound_for_the_Original_Xbox.php

I didn't see much of interest but I did notice the Glockenspiel part. The notes in the very short melody toward the end of the animation audio sounded familiar but I can't figure it out. Take note, i'm refering to the much higher pitched melody at the 5 second mark in this video:

I'm starting to think it's a recreation, (albeit a transposed version), of these Windows 3.1 chimes:


Thoughts?
 

v3ck1n

Registered
Registered
Joined
Mar 22, 2020
Messages
16
Reaction score
8
Points
3
In Seamus Blackley's original tweet he said Microsoft "couldn't find the video", could it have anything to do with the error of not having an AV cable plugged in the back? Im going to go start the system and then plug in the cable and see if messing with the controller does anything

edit: nothing happened, couldn't seem to be able to control the scene in any way
second edit: is the final build flag OFF in degub/dvk units? Would anyone be able to try controlling it on a dev kit?
 
Last edited:

Xboxeasteregg

Registered
Registered
Joined
Apr 21, 2020
Messages
1
Reaction score
0
Points
1
AG User Name
Xboxeastereggog
AG Join Date
4/20/20
Might be a complete shot in the dark but if there was a way that the xbox could detect inputs during startup do you think it could be something as simple as like the konami code? I feel if we were meant to find an easter egg during the startup they wouldnt go theoigh this much effort to hide it especially with them telling us theres an unfound easter egg
 

reknave

Registered
Registered
Joined
Oct 15, 2019
Messages
8
Reaction score
8
Points
3
I think this hunt might just be back on. The new lot of files has some absolutely golden pieces of information, even some particularly interesting files such as original models and textures for the dash. I think there's a very good chance of uncovering this easter egg now.
 

GoTeamScotch

Registered
Registered
Joined
Jun 4, 2019
Messages
42
Reaction score
42
Points
18
AG User Name
GoTeamScotch
AG Join Date
Jul 14, 2016
Wild timing. Today is the first time in a while I've thought to pick this topic back up and I see reknave replied within the last 10 minutes. Lol

Wanted to jot some ideas down. Feel free to comment.

The Easter egg is either there already and we just aren't spotting it (then again is that really "obvious") or it has to be triggered. I like trojanvirusmusic's line of thinking, but I'm not so sure that's it. The melody sounds too different to be an intentional callback to the classic chimes. I could be wrong.

So it's either something there currently and we just have yet to spot it, or it's something that has to be triggered.

If it is something that becomes obvious once triggered, things that could trigger it could be
- The presence of certain USB devices plugged in. Gamepads. iR receiver. USB devices plugged into gamepads such as memory units.
- Memory units with specific files on them. Or even USB drives with specific files on them.
- the voice chat accessory being inserted - and perhaps the mute button as a separate input button?
- keyboard being present, and certain key(s) being pressed
- other usb devices typically associated with PCs: floppy drive, etc

Someone messaged me on reddit suggesting to try spelling out the word "xbox" with 4 controllers plugged in, pressing X on #1, B on #2, white/black on #3, and X on #4. Nothing happened, as I assumed, but it's a creative idea.
 

reknave

Registered
Registered
Joined
Oct 15, 2019
Messages
8
Reaction score
8
Points
3
Major update. Out of curiosity, I decided to go figure out how the <<EggsBox>> easter egg worked, as we already know how that one is accessed and what it does. Hopefully, figuring out how it worked would shed some light on how the Xbox team would've gone about hiding another egg in the BIOS.

To recap: creating a new soundtrack via the Dashboard with the name "<<Eggsßox>>" triggers a credits sequence for the Xbox development team to show up.

The Dashboard, including the main menu, soundtrack player/CD ripper, and settings menu, is made up of C++ files in a folder named "xapp". People have found that the file "settings_adoc.xip" within the console's C drive is, in fact, an XBE file, and that this is what is loaded when the Eggsßox egg is triggered.

Within xapp, there are a few files of interest: config.cpp, which controls what each menu item does, and how it behaves; and MusicCollection.cpp, which handles CD ripping, encoding and saving.

How it works: when a new soundtrack is made and named, MusicCollection calculates a hash sum of the entered name based on some internal encryption method. The program compares this sum to a predefined one, written in MusicCollection, and if it matches, then it checks if settings_adoc.xip exists and runs it.

Enter the issue: hiding the Easter egg! It's unclear whether MS was already cracking down on hidden/undocumented features at this point in time, but QA testing procedures specifically mention checking for them as part of routine testing, so this would have to be well hidden. Naturally, neither of the portions of both the soundtrack code nor config have comments detailing what settings_adoc is/does, but the code for the credits themselves would be pretty conspicuous, as they're stored in plaintext within the XBE. However, there are no mentions of settings_adoc whatsoever outside of those two files.

So, I put the .xip through XBEExplorer, which revealed a couple of things. One, that the debug .exe file was named coda.exe, and was located in a few different places depending on Dashboard revision. Two, that it was always compiled shortly before the main xboxdash.xbe file itself, suggesting that either it was done separately or was a separate source and not just a component of the dashboard.

The obvious: adoc is coda backwards. Coda, in 3944, was located in /private/test/directx/d3d/samples/coda/, along with other DirectX samples that wouldn't be included along with the retail dashboard, so nobody would think to check in there for any hidden features. In 4920, it was still located amongst DirectX demos, but now it was in /bunny/, a demo that renders, well, a bunny. The 3944 version was compiled 2001-08-29, while xboxdash.xbe was compiled 2001-10-25. The 4920 version was compiled three days before the dash, on 2002-08-13.

But what abut config.cpp? Well, it has a function that specifies what to do after exiting settings_adoc. This function is named "CODA".

All that said, this raises some new questions regarding the BIOS egg. What if it's just a reference in the code, and the Easter egg itself isn't included within the code for the kernel? What if it's cleverly named like coda/adoc and has just been hiding in plain sight this whole time? Still many things to check out, but I feel like figuring out how the credits sequence worked might have been a step in an ambiguously right direction.

edit- worth mentioning that a coda essentially is an ending, effectively making them end credits for the Xbox
 
Last edited:

Virtua Hunter

Registered
Registered
Joined
Jun 23, 2019
Messages
34
Reaction score
4
Points
8
just discovered this thread, but wait, the intro logo is rendered in real time?
 

cta

Registered
Registered
Joined
Jun 7, 2019
Messages
169
Reaction score
80
Points
28
Yes it is. I would've thought that much would be common knowledge, since there's BIOSes that let you recolor/change things around, which would not be possible if it were a prerendered video.
 

Virtua Hunter

Registered
Registered
Joined
Jun 23, 2019
Messages
34
Reaction score
4
Points
8
Yes it is. I would've thought that much would be common knowledge, since there's BIOSes that let you recolor/change things around, which would not be possible if it were a prerendered video.

I never modded (at least for now) the original Xbox, didn't knew there were also intro recolor.
But judging by the high quality of intro's graphics and the instant loading, I guessed it was just a pre-rendered video, I thought it was too complex especially at the time to be realtime...

The dashboard is even more impressive after knowing that even intro is all real time :D

EDIT: I Just watched some videos of modded dashboards, there are even some with different camera angles, nice.
 
Last edited:
shape1
shape2
shape3
shape4
shape5
shape6
Top