Gooday Gaming Guests - The Earliest Gaming Systems Boot Up Processes
Episode Date: December 23, 2024Intellivison and Magnavox Odyssey ...
Transcript
Discussion (0)
Alright so today I decided to do some more early gaming systems the boot
process just kind of hitting all the different ones on the early early so
we're gonna start out with Intellivision came out in 1979 from Mattel it was it
doesn't have any BIOS it relies entirely on cartridge ROM and onboard firmware to handle functionality. I believe the original Intellivision has the cartridges, the big brown one all right so when it powers on the intellivision is powered on
by a gi cp 1610 cpu cpu starts reading the ex-rom a built-in firmware that resides on the console
so the ex-rom execution is what it's called uh it is 4 kilobytes of firmware that serves as an intelligence built-in operating system.
Its primary function is hardware initialization.
It initializes a CPU hardware subsystem including graphics, sound processor, input handling.
It sets up routines to run inputs from the
consoles unique 16 direction control with numeric keys graphics and sounds it
initializes the STIC standard television interface chip which handles video output and then it prepares the AY38914
sound chip for audio playback. Alright so cartridge ROM execution after
initializing the EX ROM begins to execute the code. The cartridge contains
the game's program code and additional data. Game code interacts with the EX ROM. Access hardware function for drawing sprites, playing sounds. I found out later on we'll talk about what sprites are because I kind of understood what that meant but now I understand it. Perform game-specific logic in rendering. Roles of the EX ROM during gameplay Unlike more advanced systems, the EX ROM
is not bypassed after initialization. Instead, it remains active throughout gameplay. Provides set of routines. Graphics, sounds, input data, collision detection, a feature built in that
simplifies programming tasks for developers. The EX ROM officially serves as a game development
library allowing developers to focus on game logic without worrying about low-level
hardware control. No BIOS or security measures in these so there's no lockout
or anything. Special notes an additional ROM chip some cartridges had an extra
ROM chip. Functionality and memory add-on modules can work with atom arms like the Intel
a voice module which provides voice synthesis synthesizer summary of boot
process powers on to the CPU executes the EX ROM the X ROM initializes game
executes in television boot process reflects the simplicity of early consoles.
Alright, so then we went to, let's see, that was 1979.
Intellivision 2, which is the smaller version, and it was released in 1982.
Course defective. Let's see how it changed.
Here's an overview of the Intellivision 2 boot process.
Alright so when Intellivision 2 is powered on
uses the same GICP1610 CPU
uses the same kind of EX ROM built in firmware
uh... initializes the CPU same kind of EX ROM built-in firmware
initializes the CPU the STIC the standard television interface chip and the ay38914 sound chip so everything's basically the same
graphical setup game once initialized room excuse game code this is any game
rendering key changes in the Intellivision 2.
The boot process is largely unchanged.
Power supply, that's right.
The Intellivision 2 has a 16 point something,
16.5 volt power adapter.
Induced different power supply design,
made it cheaper to manufacture.
Some old third party games,
especially Coleco,
were incompatible with Intellivision 2 due to the suitable hardware differences. Detachable
controllers, so you could take the controllers off. A lockout chip for cartridge validation. Added a simple lockout mechanism to enforce compatibility with licensed games.
If unlicensed games wouldn't, it would fail to boot.
Special features on the Intellivision 2.
Improved manufacturing design.
Low cost.
Game compatibility.
So all the games experiencing compatibility issues
due to changes in the hardware,
so you couldn't play some of the older ones.
Summary boot process was the same,
boot on, CPU, EX ROM,
and then initializes, the EX ROM does,
game execution, and it has a lockout.
So the Intellivu Television tube boot process mirrors the original but
with mining differences including the lockout mechanism and detachable
controllers all right so we want to keep on that theme so I went to Magnavox
Odyssey 101 which is basically like Pong it's the basic of the basic
that was in 1972
so first home game
console
has an incredibly simple boot process
compared to
even the other ones
so let's see the boot process
of an Odyssey 101
I actually have one, it's orange
power on initially, console is powered on, electricity flows Let's see the boot process of an Odyssey 101. I actually have one, it's orange.
Power on initialized console is powered on.
Electricity flows through the analog circuits.
The system internal logic gate built from discrete components activate preparing the
console to generate video output.
There is no BIOS or software initiated since the system is entirely hardware based the Odyssey used card well one I have doesn't use card games
but says the Odyssey used game cards that do not contain game data but
instead use act as physical jumpers or wireless to wire selectors weird instead
of a game modifies the flow
of current through the system circuit.
Insert your game card, determining how the
console internal
components behave.
This creates different types of screen
visuals, such as moving dots or lines.
So this is almost like
looking at a CPU
at its core, which I'm
trying to learn about. I learned about
turning places today. Turning
problems or something
on Steam.
Exactly what I'm looking for.
This is like basic 1's and 0's coming out.
It's black and white.
It uses a TV
RF modulator.
The console
has the overlays for the TV screen. That's pretty
interesting. You put an overlay on your TV screen to play the game because then the dots
would show up in different positions. Pretty interesting back then, huh? Players used wired
controls to manipulate on-screen elements. They were just basic dots.
I have a couple of dedicated,
early dedicated Pong
systems too.
The Odyssey uses
transparent plastic overlays
that are physically attached to the TV.
That's absolutely interesting.
These overlays add color and visuals.
Play to follow rules outlined in the
manual. Moving dots. Because all you had was really dots. And as we've decided the dots were just manipulation of electricity with zeros and ones. Special features of the Odyssey boot process, no digital logic. Unlike later systems, the Odyssey had no CPU, RAM, or ROM.
All behavior to turn is by analog circuits and the physical layout of the game cards.
That's really cool, actually.
Lack of software or complex initialization means the system is ready to play as soon as you power it on and
a game card is inserted.
So it's powered on by the analog circuits, game card selected, you put a game card in
and it changes the frequency I guess of the circuit, video signal generation generated
out to the TV, player input, wired controller, overlay and rules. The MagnaBox Odyssey 101
operated more like an interactive electronic toy than a modern console. If you ever had
one of those little handheld games, I grew up with those, those little football games
and stuff. They were just little bleeps, basically the same thing. It's like a process and it makes the boot process incredibly simple.
That may be the first thing I try to learn how to troubleshoot or understand.
It'll go all the way to Odyssey 101.
So then I said, okay, let's go to Magnavox Odyssey 2.
That's the big gray one.
Huge. Released in 1978. Okay, let's go to Magnavox Odyssey 2. That's the big gray one. It's huge.
Released in 1978.
Represented a significant evolution from the original Odyssey.
Incorporating a microprocessor and software-based game execution.
Unlike the predecessor, the Odyssey had a more structured boot process.
So now we're on a little had a more structured boot process. So the Odyssey is powered by an Intel 848 microcontroller.
An 8-bit CPU with integrated RAM and ROM begins to execute instructions stored in its internal
ROM.
The ROM contains the system's startup routines which handle hardware initialization and execution.
So I have a bunch of these television 2s.
And some of them work, I think.
I got a cool collection of games, too.
I just call them bleep games.
The internal ROM of the 8048 microcontroller
initializes the following components.
CPU and memory, one kilobyte of RAM is set up
to store game, temporary game variables.
There is a video display generator VDP the Intel 8244 slash 8245
VDP is configured to generate the consoles graphical outputs. The VDP
produces text sprites there's that word sprites we're going to talk about that
in a minute and basic uh graphical elements displayed
on the screen uh audio generation the built-in sound generator on the vdp appears for output
simple sound effects and tunes uh cartridge rom detection the odyssey uses plug-in cartridges
uh when the cartridge is plugged in there's a memory mapping going on.
Cartridge ROM is mapped.
Execution handoff.
The microcontroller transfers control to the game code.
Game execution initializes game specific assessments.
Configures the VDP to render sprites. There it is again.
Pre-resound routines. Then it handles the inputs. The Odyssey 2 has a big membrane on
the front of it. It's almost like a keyboard. The's just so the game pulls odyssey so the hardware membrane keyboard
and controllers joystick controllers players actions are related into mechanics and visual
updates uh game run logic the game enters its main execution loop handling input, updating graphics, and rendering sound.
Okay, so the unique features of the Odyssey 2 boot process.
Text and graphics.
Support both alphametric text and base graphics.
A lot more dynamic visual compared to the other era.
Instant on execution.
Like most systems of the time, the Odyssey had no operating system.
All BIOS beyond the simple routines of the 8048 microcontroller ROM.
Console was ready to play as soon as you turn it on.
Keyboard functionality included a full alphabetical keyboard which is initialized.
The keyboard enables game players, mechanics, word based applications.
Region free operation, it had no region lock.
Game driven functionality, all games are on ROM.
So everything is cartridge driven. And then it showed the
difference between the 1972 Odyssey and then the 1978 Odyssey 2. Processor there was none,
analog circuitry. And then the Odyssey 2 was the Intel 8048 microcontroller.
Graphics simple dots and lines on the original Odyssey. Text sprites, is that word again?
In graphics. Audio none on 1972 and then Odyssey was basic sound effects. Boot process complexity.
1972 was entirely hardware-based.
And then Odyssey 2 in 1978 was also software-based.
So the summary of the boot process of the Odyssey 2
was the Intel 8048 ROM, initializing hardware cartridge detection.
The boot process reflects the shift of analog hardware
to digital computing in home computers.
Okay, so those are the four systems I picked for today,
but I wanted to do one more thing here.
Hold on a second. Yeah, we got time. four systems I picked for today but I want to do one more thing here.
Hold on a second.
Yeah, we got time.
We got about 20 minutes in here.
Alright, so I said what are sprites?
So here we go.
We'll learn about sprites.
So that's S-P-R-I-T-E-S, sprites.
Are two dimensional images or animations used in video games and graphical applications
to represent objects and characters.
So there wasn't, back then, there was no,
you didn't have like a person,
you just had a bunch of things blobbed together
to look like a person, kind of.
They are fundamental concepts in computer graphics,
especially in retro gaming and 2d development
let's see independent objects sprites are typically separate from the game's
background and are rendered on top of it that's interesting so it's not they represent a dynamic entities such as
characters enemies items projectiles or effects manipulation sprites can be
moved scaled rotated and animated independently of the background
develops developers control their position size and orientation through code
I just want to learn I'm gonna learn a little early code stuff just for fun sprites are layered
on the screen to create depth for example a character strike sprite might be drawn on top
of the background and exploding sprite might be layered over both so I
can use that little extra dimension sprites often include transparent areas
defined by an alpha channel or a specific color key to allow other graphics to show through so this transparent areas
a sprite rendering in games hardware sprites many older games consoles and
like NES Super Nintendo Super Sega Genesis Genesis you know I think we'll
do Genesis next for Buddha and our case system included dedicated
sprite hardware this hardware allows sprites to draw and
manipulate efficiently without taxing the main CPU
So it was doing it independently in modern game system sprites are typically managed in software using a graphic
API I example
open GL DirectX or game engine so don't want to see when a game engine is yet
but we'll get that someday they are drawn by combining textures with
geometry often as rectangular quads.
Uses of sprites in gaming
Characters
Represent playable characters or NPCs
Animation using a series of sprite frames frames, walking, jumping, animation, objects.
Represent collectibles, weapons, items, and environmental effects.
Use of an on-screen user interface UI components like health bars, score counters, and menus.
Effects. and menus. Effects used for visual effects such as explosions, magic spells, and weather effects like snow or rain. How sprites are stored. Sprite sheets, instead of spreadsheets
are sprite sheets. Interesting. Are often stored in sprite sheets which are large images containing multiple sprites
arranged in a grid or pattern sprite sheets reduce memory usage and improve
performance by minimizing need for multi text uploads so back then really was
really about trying that some systems or engines store sprites as individual image files such as.png or.bmp.
History of sprites.
Early days.
Sprites first appeared in arcade machines and early consoles like Atari 2600 and Intellivision, which we've been covering, which has been fun.
Early hardware used bitmap graphics to display sprites, often the strict limit of size and
number of sprites on screen.
Modern era.
In 2D and some 3D graphics, sprites are still widely used, though they are now often combined with advanced techniques
like particle effects and shaders.
Examples of sprites in gaming
Mario in Super Mario is a sprite represented by a player character. Enemies like Space Invaders
is classic arcade game
are sprites moving in patterns.
Projectiles such as
bullets, fire, balls
in a shooter game often are represented
by sprites. Sprites vs. Tile
Sprites, dynamic objects
characters, enemies
items, tiles
static background elements that make up
the game environment
walls, floors
platforms
Modern environment walls floors platforms modern evolution while the term is
sprite oriented in the 2d game the concept persists in 3d gaming with
different terminology for example billboards flat textures allows facing the camera
used for things like trees and 3d graphics particles some small sprites
used in particle systems for effects like fire smoke
or sparks
in essence sprites are the building block
of visual interactivity in 2d games
bringing characters and objects to life on screen
cool yes that was a fun one I wanted to do try to stick with the early early stuff
and next thing I'll do I'll do Sega next
first generation the 1601s
and the 1631s and Genesis 3
so I'll figure out another one. Alright so that's my little
system for the day. All the early early stuff.
1980, well I said it was 1972, 1978
1982. A little even before Atari.
Alright so that's my thing for today and we'll pick something for tomorrow.
I'll talk to you guys later. Alright bye.