Imma destroy my copy of LEGO Star Wars if you don’t change the video to remove the edited stats Also, you edited the wrong number. It’s supposed to be 0.000000000000000000000000000001, you can’t just flip the numbers.
@@rastas_4221 Yeah, it relied on the fact that early N64 models kept some of the RAM information after the console was turned off for few seconds before it was gone (which could make it available via a simple cartridge swap), but later models didn't do this so they had to scrap it as if they'd complete it, it would work on some N64s but not the others.
Pretty much. The data in the 512KB is a patch that adds Knuckles as a playable character in Sonic 2, which is effectively the base ROM. Some further messing about could allow one to "patch" Genesis games to make our memes come true. Could you imagine a "Sonic the Hedgehog 2 & Knuckles Featuring Dante from the Devil May Cry Series and a New Funky Mode"? If I were to design a retro-styled game console to last the ageS, I would encourage such silly crossover shenanigans.
@@powerhouseofthecell9758 I'd have to double check, but I think there is some different level data to account for Knuckles lower jump height and some other minor changes, though it's still using all the assets off the Sonic 2 cart.
I'd wager that the lock-on tech was planned all along, but that they originally didn't have a game in mind to show it off to devs. Then the Sonic 3 situation happened, and gave them a perfect first-party opportunity to show off the tech.
This is basically what I think happened. Sonic 3 was originally meant to showcase the VSP chip but those plans changed. Once Sonic 3 hit scheduling issues, I'm sure some exec was happy to use the game(s) as a guinea pig for some experimental new technology.
According to Roger Hector, vice president and general manager of STI, the lock-on technology was conceived two and a half years before the release of Sonic & Knuckles, between the releases of Sonic the Hedgehog and Sonic the Hedgehog 2
Yeah the full thing wouldve been released in Japan called Sonic 3 "Limited Edition" as the whole thing in one huge cartridge but Pirates were exporting Sonic 3 (first half it wasn't out in Japan at the time) to Japan so they canned it and Lock on I guess
@@ShadowEl I believe you mean the SVP chip that was used for Virtua Racing and would have been a pretty handy thing for SEGA to put more resources and time into instead of what we got... and no I'm not referring to S3 and Lock On. More time to refine costs and use it more effectively to make quality genesis games over what was their attempt to make fancy full 3D games in a $100 cart.
I have to wonder if originally, lock-on tech was meant for Sonic 2. Much of the content and ideas used in Sonic 3 & Knuckles were actually scrapped ideas that weren't ready for Sonic 2. It's possible the idea was to "finish Sonic 2" at a later time using Lock-on, but instead Sonic 3 was created and the lock-on tech saved.
Back then, I went freakin nuts when my friend came over with S&K and locked it on with my Sonic 3. I was blown away by how the game continued after the Launch Base Zone. It made me realize that I'm playing a complete S3 game. It was a challenge finding 14 chaos emeralds for Hyper Sonic.
It's really amazing to see how developers back then had to come up with creative and genius solutions to a problem. nowadays they ship a broken games and just patch it later
@Duck Or maybe their R&D was never for consumer success, but rather a necessary first step for future advancements in multithreading, multi-core processing, new application design approaches, and in a roundabout way, virtualization. Our current technology ecosystem rests on these pillars, and not just in the entertainment space. Incredible minds behind the scenes 👌
I guess, but these days what we often get is a released Beta version as full, and the paying customer being made to be their third round of testers until they patch the game into actual playability.
I love how he does everything in this video _except_ explain how Lock-On actually works at the hardware level, which is ironic because staring at the circuit diagram for a while, it's really quite simple. So simple, in fact, that it would probably have been faster to explain it outright than to handwave it by saying there's "some sort of pulse" that tells the cartridge which ROM chip to turn on. There's 256 bytes of address space in the SEGA Genesis memory map reserved for cartridge peripherals, much like the Super Nintendo's B bus. Pin 31 on the cartridge turns on whenever this address range is being read from or written to. Some chips on the cartridge detect this signal and look at the data being written. If it's a 0, the cartridge selects Sonic & Knuckles. If it's a 1, it selects the patched version of Sonic 2.
A little more extra infos on how Sonic & Knuckles accesses the Sonic 3 Data. Sonic & Knuckles's sprites are in the S&K Rom, along with the music for every zones from Sonic 3 & S&K. Stage layout for the S3 levels is also stored in S&K meaning level design was tweaked and updated. Object code (obstacles, player characters etc) for every S3 & S&K zone is also included in S&K proper So that leave us with Tails' Sprites and the zone artworks and other sprites for the S3 side of the game needing to be read from Sonic 3's ROM. How do we do it? Simple, Remember how S&K's ROM is mapped from $0 to $1FFFFF? The Sonic 3 Rom follows right after and its header is then looked up at $200100. The same logic applies for every call made to the Sonic 3 rom. Once the game detects it has a valid Sonic 3 Rom inserted, it will begin looking for data past $200000 for the Sonic 3 stuff. Basically all the devs had to do is add $200000 to every call for a pointer in the Sonic 3 ROM and everything worked as is, the only required thing was to have all the code for everything including updated Sonic 3 code stored inside Sonic & Knuckles and almost everything worked as is (although the game code is mainly ran from S&K's rom, some code is actually executed from the Sonic 3 ROM in specific cases) Hope this was clear enough. Cheers
Did they do that for Sonic 2 as well? They could have but it sounds like they just included a full ROM from this video. This makes sense since they would otherwise have to support three different versions of Sonic 2. It also means if you owned S&K but not Sonic 2, technically you actually owned a copy of Knuckles in Sonic 2, Sega just locked it down until you plugged a Sonic 2 cart in. Would this also mean you could yank the Sonic 2 cart once the game started up? That clearly wouldn't work for Sonic 3 though.
@@TheMAZZTer They do a similar yet different thing for Sonic 2. Basically they map the patch ROM above Sonic 2's ROM in memory, but said ROM only contains the game's code and color palette data and probably a few new sprites for the special stages and the title screen (Knuckles' sprites seem to be read from Sonic & Knuckles). New level layout data is also stored in that patch rom. Basically that small ROM alone isn't enough to run the game, your Sonic 2 cart ain't just a "key" it's mandatory to have the cart in to actually run anything, yanking the cart out once the game is running would only result in a crash.
Yeah i was thinking this just now. It would be too hard to patch a the sonic 3 code on the fly so S&K must contain all its own code and just use S3 assets, but you make it sound almost like it even has its own copies of half the assets.
@@mspeter97 To me you did. Obviously you didn't actually say that or anything that means that, but the number of different things you said were store in S&K made it sound that way. Everything except for tails and zone graphics from sonic 3 are stored in S&K is what I understand you to have said. Of course those graphics will take up a lot of space but in a sentence that as one element doesn't sound any more significant than the rest of them.
I would love to see how some of the weird effects in Gunstar Heroes happen; Treasure does some serious wizardry to pull off effects the genesis shouldn't be able to do.
It's sad, as a kid I thought of all the possibilities, all kinds of crossovers they could do with "lock-on". But no, it was just so they could do Sonic 3: Episode 1 and Sonic 3: Episode 2.
I think one of the plans for the lock-on chip is for their SVP games. For example, you remember the $100 Virtua Racing. In theory they could make it a lockon game and then if they release a new 3D game (Say a port of Virtua Fighter.) they can use the lockon to make a $40 version and only require the lockon via Virtua Racing for it to work.
@@StriderVM That plan eventually morphed into the 32X, its cost at launch was $150 USD, or $50 more than the Virtua Racing cart. Virtua Racing Deluxe was a huge improvement on the SVP Genesis version. Other Sega arcade titles that were SVP candidates made their appearance on the 32X like Virtua Fighter, and Star Wars Arcade.
@@StriderVM We are wary now in large part because of Sega. What in hindsight seemed like an obvious decision, was uncharted territory back then. Before the 90s no console maker really dabbled in costly add ons. Japan had some add ons that never left their market; like the Famicom(NES) floppy disk drive, and the Sega MK3 (Master System) audio expansion, but nothing like these. The Mega/Sega CD was a literal response to the PC Engine CD Rom which came out before it, it launched at $300 USD. The 32X was made because SoJ was worried the Atari would take market share 2 years before the Saturn would reach the U.S. In 94 a Genesis and 32X was $250 ($99+$150) same as the Jaguar. The problem was these expensive peripherals split up the user base. The Genesis had 4 separate software lines: -Base Genesis (largest user base) -Sega CD (next largest) -32X (smaller than the first two) -32X CD (smallest base) That order reflected the priority for developers as well, the Genesis receiving the most support, the newest titles and the most third party games, the 32X-CD getting the least support, and hardly any 3rd party games. Soon after the Saturn arrived and took priority over the Genesis. The lesson was costly; expensive add ons splinter your user base, the consumers and developers do not like this. Sega finally learned this lesson with the Dreamcast, every console sold including the modem, the developers didn't have to chance it when adding online to their games. Sorry for the long post.
"...footage from a 1984 TV commercial for Sonic & Knuckes"? They started developing it 10 years in advance and 5 years b4 launching the MegaDrive?! That's wot I call planning ahead!
Sonic is so fast, he ran around the planet, eastward, and reversed time. This information is accurate, as you generally run from left to right in Sonic CD, which is known for its time travel.
I remember showing Sonic 3 locked on Sonic & Knuckles to a friend back when it came out, and he thought it was pretty neat yet he wasn't that impressed. More like he thought it just made sense. Then I switched Sonic 3 for Sonic 2, and when he saw Knuckles pop up at the title screen his mind fucking exploded! Watching him freak out and wondering how it was possible was sooooooo satisfying! XD
I don't know, when I saw tech like this it just began to further cement my feelings that Sega was on the decline. It reminded me of the 32X and Sega CD, just more of these gimmicky add-on utilities instead of full featured standalone technology
I'll also point out that several Electronic Arts games, if plugged into the Sonic and Knuckles cartridge, would load the EA game instead. I noticed those cartridges had lightning bolt symbols on the side. Virtual Pinball plugged into Sonic & Knuckles loaded Virtual Pinball instead, not S&K or a Special Stage. However, Lotus Turbo Challenge would load a Special Stage.
Those are likely either due to the 4mb issue which caused the cart to not detect a header, OR they used a different header altogether which would understandably do the same thing.
@@flabort if I remember correctly I believe it's because the EA games lack a proper header. EA actually reverse engineered the sega lock out system sot hey're technically unlicensed. It's why the carts are a different shape
@RageMage 117 Pretty sure the Ugandan Knuckles Clan and the Knuckles & Knuckles Clan are two different clans, they even have different national anthems.
If it executes code from the plugged-in cartridge, it will most likely hang/crash. If it only uses graphics and maybe map data (this is most likely), some graphics will be replaced by random noise (like MissingNo), and/or the level will consist of random tiles (like pokemon glitch city). If you are "lucky" you may see distorted fragments of inserted game graphics randomly. Or it just crashes/freezes if metadata is too corrupted to even load.
Jack White This is what I suspect, although I’d still expect S&K to use executable code from S3 for level specific stuff and even then there’s the question of how any data is interpreted. Still, I’m curious to see similar to ‘corruption’ videos you see on RUclips. Only reason I didn’t try was because my desktop is disconnected right now.
@@tech34756 It could possibly read data in a very specific format, like prefixing it with a magic number like "PK" zip header, or simply calculating data sizes depending on the data i.e. { uint16_enum_t data_type; int32_t offset; int32_t size; } and then check that 0 < type < 4 && 0 < offset < 4M && 0 < size < 4M and so on, and if it does not match - hang or crash or try reading past address space and then crash or similar - at least that what I would have done if reading from a questionable external source. And there is simply a possibility that it tries to read past the end of actual data of your cartridge (which would have wrapped on the real cartridge if high ROM bits are missing, but not on the emulator) Oh and verify that the ROM file itself does not have some kind of checksum or header - check emulator log if it has one. Does S&K load correctly if legit S3 ROM is concatenated that way?
WOW. This is not only the "deepest" explanations of lock on technology but also one of the easiest to understand thanks to all the additional diagrams. Subscribed !!
Aww, I miss "Is That You or Are You You" as the background. Anyway, thanks for the video. I didn't realize that a lot of extra effort was needed for Sonic 2 to work properly this way.
"was it worth it?" ... Sonic 3 + Knuckles was absolutely my favorite and the most formative gaming experience of my childhood, even if it was somehow not "worth it" by some other measure, to me, it always will have been worth it.
I had always wondered about how the technology worked because it seemed like an engineering nightmare to get right. Combining Sonic 3 and Knuckles together is logical because they’re both running the same code and essentially play on top of eachother, but how it worked with Sonic 2 always had me stumped. I never realized it was a separate ROM chip that it switched to when the game was inserted. I also have a lot of memories of trying to “trick” my Genesis as a kid by inserting different games into the Knuckles cartridge. I thought for sure that one would match up and let me see some really weird glitches. (Glitching Sonic 3 with the debug mode was always a lot of fun to me for some reason)
Can't get enough of this channel. I immediately bought 'Leander' (sadly, my only TT game ever) upon release after seeing it previewed on a Saturday morning TV show.... LTUS was the code for the final level. Absolute genius of a coder and deserved all the success that followed.
In that time, a friend of mine had US Sonic 3, and his neighbor, also my friend, a JP Mega Drive, and the US game is region locked and do not work in consoles of different regions. A third friend of mine got an US Sonic & Knuckles, and I borrow it to play at my friend's JP Mega Drive, and the game do not have region lock. Now the interesting thing: Sonic & Knuckles will ignore Sonic 3's region check and let the combined cartridges runs in any Sega Genesis / Mega Drive console. So, my friend with the JP Mega Drive could play the US Sonic 3 combined with Sonic & Knuckles.
There's actually a reason for this! Sonic 3 was just a standard cart, so it could be region locked like any other and be under normal circumstances. However, when it came time to make the Lock-On cart, rather than make a different version for all the Megadrive software regions, they decided to only make one kind to keep manufacturing costs down. The only regional differences are the sticker on the front and the packaging. As for why Sonic 3 runs regardless of region while locked-on, S&K only checks the serial number of the S3 ROM in order to validate it. The serial number is the same across all regions. Not to mention, no game code actually executes from the S3 cart in this configuration. It simply serves as an asset resource for Tails and the Sonic 3 level art and also a source of SRAM.
@@gold_lightning The SRAM of Sonic 3 isn't used in S3&K, it has its own SRAM that is locked away in S&K mode. Upon detecting an S3 cartridge for the first time, it copies over the saves to its own SRAM, updating it to the S3&K format. If you delete saves in S3&K, it won't delete them in the original cartridge, and if you restart the game (probably only via power cycle, not sure), the saves will reappear, but only at the point where you left off in the S3 only game. EDIT: Also, technically S3 and S&K use FeRAM/FRAM chips (sorta like small flash memory), not SRAM+battery.
@@Consolethinks Incorrect. The Sonic 3 cart was actually future proofed specifically for this. It has 14 save slots. 6 are reserved for Sonic 3 and 8 for S3&K. If S3&K is booted with the last 8 slots blank, but with something in the first 6, it will copy the first 6 over to the S3&K portion so the Sonic 3 save is untouched, but you can continue the adventure in S3&K. There is no sram hardware on the S&K cart at all. The Sonic 3 cart handles all of it.
I vaguely recall hearing that some basic planning for lock-on technology was in the works as far back as Sonic 2- which is why S&K was compatible with it- they had some idea of releasing some sort of connector device that'd enable you to add new features to sonic 2, and put in basic coding that'd enable it, and started working on the tech- when they realized that Sonic 3 was way too massive to be put on one 4 MB cart, they decided to use the the tech they'd been working on since Sonic 2 to make Sonic and Knuckles and enable it to work with Sonic 3 and Sonic 2. Damn if I know where i read this, though, some gaming magazine in the 90s.
Those commented assemblies certainly bring back memories. General Motors used a variant of the 68000 used in the Genesis, namely the 68332 that used the CPU32 instruction set (very similar to the instruction set in the 68000, but with things like TBLU and such for embedded control systems) in their early 96-03 VPW PCMs. Did a shitton of programming and hacking with those. Really liked working with the CPU32 instruction set.
They originally planned Sonic 3 & Knuckles as one game, but they had a close deadline due to a McDonalds licensing deal, so they split it into Sonic 3 part 1 and 2, with Sonic 3 Complete being the "deluxe" release containing both titles. Part 2 became Sonic & Knuckles with the lock-on gimmick, and Sonic 3 Complete was then deemed unnecessary and axed. There are prototypes for S3C that exist, one of them has the ending theme being a medley of Sonic 3 tunes, similar to the S&K medley in that game.
This is an example of one thing that i always assumed was simple. I never really properly thought about the complexity of this before. Good video as always. And you used different music! I love the thing you do with cutting the front cover in half and squeezing it! Always makes me laugh/smile!
When my bros and I got S&K, we first plugged Sonic 2 in it. Eventually, we got tired of it, because we knew Sonic 2 pretty well. After a while, we ended up realizing we could just play S&K if we put no cart in it. (-‸ლ)
Would love to see some NiGHTS into dreams content. Interested in how the A-Life system worked along with the dynamic changing music. Also just the basic flight sim and how they achieved such beautiful movement.
I remember the sprite glitch in the commercial back in the day. As a kid, I took it as a sign there was so much in the game that the game was running out of memory. This logic was based on playing Sonic 2 in debug mode and adding so many items on screen that the game would be slow and glitch out like in the commercial.
Unlocking the special stage with any cartridge was a nice touch, it made me feel like I found the holy Grail when I was a kid. Like...OMG SPECIAL STAGES
I can remember buying S&K brand new not long after release. I used my birthday money. It was £39.99 from the "Our Price" record shop in the bridges shopping centre in Sunderland.
I like the concept but it seemed flawed since you still really need to know 68K ASM, etc. I think if he continues the series there needs to be a basic introduction.
Now that I know how it works, it really makes me wonder what kind of weirdness you could get by modifying other games into being accepted by the sonic and knuckles rom
As a kid, I attended an exposition of the game at Universal Studios ahead of its release. I was already psyched as hell on the base game, but totally freaked when I saw Knuckles flying around in Sonic 2. Even after seeing the secret sauce behind it, it's still so cool to me.
"As the special stage is launched, it checks if the game is Sonic 1" it actually does that check immediately. This is belied by the fact that only Sonic 1 produces the "no way" screen in color. Everything else produces it in greyscale.
One other thing I seem to have picked up along the way. One of the reasons they may not have included a similar mode for Sonic 1 is to do with Sonic's colour pallete in those games. Supposedly they re-used the Sonic blue for other elements in the game, which would make pallete swaps for the "super" versions of each character implausible (who wants to patch that kind of game logic?) which is where the blue spheres concept came from. I have no sources on this one but if someone has access to the relevant software it would be quite easy to verify?
@@bangerbangerbro I may have mis-remembered parts of the story but whether it's a palette for Knuckles or Super Sonic, I remember reading this was part of why they didn't do something similar for Sonic 1. Of course, there may have been other considerations; the game engine by this point was probably radically different from the original in sonic 1, and maybe the level design would never have catered for it anyways. Also you're going to be increasing cost to add *another* ROM on the S&K board if you do it this way.
@@darren8453 I'm just trying to say the main thing you would be doing is adding knuckles, which would of course cause the same problems. Super forms you might try but I wouldn't think you would bother. Knuckles I suppose you might be able to do with other reds in a level but it is a mega drive so I think the sprite layer has its own palette so there would probably be a narrower band of colours, only those used by badniks and a few other things. Also makes me wonder if some badniks used different palettes to the others and are just placed so that they don't meet?
As a kid, I somehow missed the fact that S3&K was both games combined. I thought it just let you play as Knuckles in Sonic 3, which admittedly was still a high selling point for me.
This explains a lot. I hadn't ever looked into this and thought the port acted as a pass-through, with Sonic 2/3 getting patched via injection rather than how it actually worked, a pre-patched rom on the cartridge. It also explains why Sonic 1 didn't get the same treatment, or why it only does the sphere game when you plug anything else in.
Fundamentally different technologies, actually. Your SD card is built on flash RAM which uses things such as quantum tunneling to hold a charge for a 1 or no charge for a 0. These are mask ROMs, which is literally just burning away physical connections between transistors to form a 0.
Holy crap THANK YOU. I asked for this topic so I'm extra excited. My parrot loves your videos so I'm gonna sit down with her and give it a watch right now!
Mr Computer I thought it was the music she liked but nope we figured out it's his voice. She looks like she's under a love spell as soon as he begins speaking. Fluffed up and content until the video ends. She's sat through the entire playlist before!
1984 TV commercial?! Sonic moves so fast he travels back in time, does he turn brown again if this happens? 🤔 Great stuff, I really enjoy what you're putting out 👍
@@DoctorWhom i remember the days before the replace video feature the channel was brimming with life All was peaceful.. Until the replace video attacked
0:54 “Part of me wonders if this was actually the plan from the beginning” The Nov 3 1993 Prototype of Sonic 3 says otherwise, it shows that the had some work done on the second half.
I remember experimenting with a friend’s cartridge. I had Sonic 3 and he had Sonic and Knuckles. Playing Sonic 2 with Knuckles was mind blowing to my childhood self. Thanks for the video. It’s fascinating stuff. Absolutely fascinating.
The whole Lock-on cartridge idea is legitimately one of the coolest things in the hardware area of the gaming industry. Imagine the possibilities with other games of that era, and the era of early 3D games like the Saturn and N64!
I was hoping to hear something about how the "Sonic 3" levels are slightly different in Sonic 3 and Knuckles compared to Sonic 3. Like for Sonic 2 they just made a duplicate ROM with all the edits, but for Sonic 3 and Knuckles they are... loading Sonic 3 data with different layouts and bosses and other tweaks? How much extra Sonic 3 data is in S&K?
Essentially, it just uses Sonic 3 as an art asset bank. All of the code (including all object and level layouts) is running from the S&K side of things, but art is loaded from the Sonic 3 side when applicable. That said, as far as extra data goes, all of Sonic's sprite work exists twice in the combined ROM because he's playable in each game independently.
@@gold_lightning Indeed but they just opt to use the version of the sprites present in the S&K side of things to make things easier. The only playable character in S3&K that actually requires loading data from the S3 cart is Tails as he only has his standing still sprite in S&K. Multiplayer mode also reads sprite data from S3 and that's about it
to be honest, the S&K cart was a pretty good bargain, i mean its playable on its own, combinable with S3 for a full game (and allows K in S3 and T in S&K), combinable to allow K in S2 (which in itself adds replay value to an existing game) and finally bonus 3d games galore. Perhaps in hindsight, maybe adding knux to S2 with all the S2 stuff plus maybe adding some cut levels would have been a nice bonus.
I knew of most of this from the olden days of Genesis emulation wherein I used the DOS prompt's "binary copy" command to manually join S&K to Sonic 3 and another file which was just S&K to the S&K "patch rom" to Sonic 2. I had assumed the Sonic 2 "Patch Rom" was just the changed data for Sonic 2 patched in in real time at boot like a Game Genie would. I had no idea they just went whole hog and stuffed a fully functional "Knuckles in Sonic 2" ROM in there, negating any need for the original Sonic 2 cart at all. That means you didn't really need Sonic 2 to play it, they just forced you to buy it as an "unlock key". Interesting stuff! It's hard to be mad considering just how long ago this was, but it's a curious fact anyway.
Actually you would need the Sonic 2 ROM anyways, the "Knuckles in Sonic 2" ROM actually only contains palette data, sprites, stage layout, and all of the game's code. The rest of the game, the music and the actual artworks for the stages is still inside the Sonic 2 cartridge. Booting only the patch rom alone would lead you to a simple black screen
God I love the stuff like this that Sega did back in the day. They were absolutely insane with innovation. I wish I could have properly lived through the time when Sega was on their game
Read Fred Bronze's "Sonic 3 Unlocked" blog. It goes in depth on how Sonic 3 and Sonic and Knuckles were programmed, including several entries on the actual software side of how the lock-on support was used. In standalone Sonic & Knuckles, a global flag is set indicating to the S&K ROM that it's a standalone S&K cartridge, and this flag is thus used throughout the logic of the ROM to prevent cases where it would reach into the Sonic 3 ROM for assets: Tails, certain cutscenes, etc. It also obviously prevented the ROM from starting in Sonic 3 & Knuckles mode which VERY HEAVILY draws data and even some logic from the Sonic 3 ROM. In S3K, this flag is left unset, which allows the S&K ROM to enable its entire feature set and use both its own assets and assets from the S3 ROM. Right from the start this will result in the S3 address space being reached into by the ROM. There are some assets from S3 that are duplicated in S&K, however, due to how they hardcoded addresses in their data structures, such as pattern load cues (A lot of level graphics data has to come from the S&K ROM instead, but layout data can come from one ROM, the other, or even BOTH ROMs.) Most of the actual engine logic comes from the S&K ROM largely due again to addressing complications. The Genesis/Mega Drive doesn't have an MMU, so the S&K ROM can't just simply map the S3 ROM by way of virtual addresses, which would have allowed Sonic 3 addresses to still map to addresses as if they were Sonic 3 standalone when S&K would have needed. This ALONE is probably the biggest reason why Lock-On Technology wasn't used beyond this one game, as they probably had to manually recode assets they had to reuse to account for the change in address space. S&K also uses S3's SRAM entirely and doesn't have any battery backup of its own. Knux in Sonic 2 relies on some assets from the S&K ROM, most the assets just come from the Sonic 2 ROM, and the patch ROM provides not only Knuckles graphics and animation, but more than likely is the actual copy of Sonic 2 that runs when locked on, as opposed to the version of the engine on the Sonic 2 ROM. This is due largely to the fact Knuckles does not work in any way like a player character programmed into the S2 ROM. But most graphics and layout data and possibly some enemy programming comes from the S2 ROM, with the S2Patch ROM changing some layout data on the fly.
The closing comments on how genius the splitting of the games was "They could ship Sonic 3 on time as a 2 megabyte cartridge AND have a whole new game to sell 8 months later" that really made me smile!
I actually found a way to generate a special stage from games that were greater than 2MB. You had to start it up with a game that produces a No Way screen locked-on, enter the special stage, pause and swap cartridges without turning off the power (or wobbling it too much causing a crash). Then unpause and hit a red sphere; you'd return to the Blue Spheres title with the special stage generated by what it THINKS is the cartridge serial number - but is in fact some random bit of code in the 2nd half of the ROM!
"Sorry for all the hexadecimal stuff..." Really? We all love hexadecimal! I use UTC hextime for the time of day... in little endian! More hexadecimal stuff!
I had to learn HEX addition and subtraction in my mainframe programming class last year so we could read crash reports and trace core dumps. "Don't forget to carry the 15!"
The Lock-On tech was originally planned to be a stand-alone cartridge using the same chip found in 'Virtua Racing' (The SVP Chip) to enhance games plugged into it. Ultimately it was abandoned in favor of the 32X and Virtua Racing was released with the chip integrated, for a whopping $100. It was then adapted to the Sonic 3 project, which was too big and behind schedule, leading to the game being split into two (Sonic 3 and Sonic and Knuckles).
Extra points if you spot the "deliberate" Bonus Content error
1984 haha let me be the ninth comment to point that out
lmao i did notice it. ill delete my other comment that pointed it out. since it was "deliberate" and all :D
1984, my birth year but not when S&K was released!
Imma destroy my copy of LEGO Star Wars if you don’t change the video to remove the edited stats
Also, you edited the wrong number. It’s supposed to be 0.000000000000000000000000000001, you can’t just flip the numbers.
Don’t worry, the Ministry of Truth will make it so that S&K was always announced in 1984.
"For the FIRST time... and *only* time..."
Lmao yeah that was a short lived gimmick but was an amazing early 90's solution to DLC
Its Dlc Plus the full game I guess, but the Dlc is the second half
I guess Knukcles in Sonic 2 is the Dlc/Expansion Pass then
just image 5 dlc or 20 costume add ons haha
@@rastas_4221 Yeah, it relied on the fact that early N64 models kept some of the RAM information after the console was turned off for few seconds before it was gone (which could make it available via a simple cartridge swap), but later models didn't do this so they had to scrap it as if they'd complete it, it would work on some N64s but not the others.
It kinda made me wish that it was something more common.
As a 90s kid, this channel feels like the kid's uncle who "worked at Sega" is finally giving us all the secrets and I fucking love it.
Knuckles in Sonic 2 is basically a romhack released officially in 1994.
Pretty much. The data in the 512KB is a patch that adds Knuckles as a playable character in Sonic 2, which is effectively the base ROM. Some further messing about could allow one to "patch" Genesis games to make our memes come true. Could you imagine a
"Sonic the Hedgehog 2 & Knuckles Featuring Dante from the Devil May Cry Series and a New Funky Mode"?
If I were to design a retro-styled game console to last the ageS, I would encourage such silly crossover shenanigans.
@@powerhouseofthecell9758 I'd have to double check, but I think there is some different level data to account for Knuckles lower jump height and some other minor changes, though it's still using all the assets off the Sonic 2 cart.
@@powerhouseofthecell9758 256KB, not 512.
@@powerhouseofthecell9758 to be this good takes AGES
@@alextirrellRI The only level changes are added secret monitors to account for his climbing. There are no changes to the level layouts otherwise
I'd wager that the lock-on tech was planned all along, but that they originally didn't have a game in mind to show it off to devs. Then the Sonic 3 situation happened, and gave them a perfect first-party opportunity to show off the tech.
This is basically what I think happened. Sonic 3 was originally meant to showcase the VSP chip but those plans changed. Once Sonic 3 hit scheduling issues, I'm sure some exec was happy to use the game(s) as a guinea pig for some experimental new technology.
According to Roger Hector, vice president and general manager of STI, the lock-on technology was conceived two and a half years before the release of Sonic & Knuckles, between the releases of Sonic the Hedgehog and Sonic the Hedgehog 2
Yeah the full thing wouldve been released in Japan called Sonic 3 "Limited Edition" as the whole thing in one huge cartridge but Pirates were exporting Sonic 3 (first half it wasn't out in Japan at the time) to Japan so they canned it and Lock on I guess
@@ShadowEl I believe you mean the SVP chip that was used for Virtua Racing and would have been a pretty handy thing for SEGA to put more resources and time into instead of what we got... and no I'm not referring to S3 and Lock On. More time to refine costs and use it more effectively to make quality genesis games over what was their attempt to make fancy full 3D games in a $100 cart.
I have to wonder if originally, lock-on tech was meant for Sonic 2. Much of the content and ideas used in Sonic 3 & Knuckles were actually scrapped ideas that weren't ready for Sonic 2. It's possible the idea was to "finish Sonic 2" at a later time using Lock-on, but instead Sonic 3 was created and the lock-on tech saved.
Back then, I went freakin nuts when my friend came over with S&K and locked it on with my Sonic 3. I was blown away by how the game continued after the Launch Base Zone. It made me realize that I'm playing a complete S3 game. It was a challenge finding 14 chaos emeralds for Hyper Sonic.
Hyper Tails was worth the wait!
@@chrisdavis2161 There was no Hyper Tails in the original release
@@DE23it was a hyper form in everything but name
"This is footage from a 1984 TV commercial for Sonic & Knuckles"
Whoa, looks like this stuff was planned from much earlier than I thought!
Never never never apologize for hexadecimal.
Fuck yeah I love hexagons they’re the bee shape
Coding Secrets & Knuckles
Knuckles the Echidna in Coding Secrets
@@esspeecy don't you mean "Knuckles the echidna in Game Hut?" 😁
@@melficexd umm this is the Coding Secrets channel.
Featuring Dante from the Devil May Cry™ Series
And Funky Mode
It's really amazing to see how developers back then had to come up with creative and genius solutions to a problem. nowadays they ship a broken games and just patch it later
Funny how limited development time and memory limitations lead to an interesting piece of gaming technology. Great stuff
@Duck Or maybe their R&D was never for consumer success, but rather a necessary first step for future advancements in multithreading, multi-core processing, new application design approaches, and in a roundabout way, virtualization. Our current technology ecosystem rests on these pillars, and not just in the entertainment space. Incredible minds behind the scenes 👌
Limitations breed innovative thinking. Agreed awesome stuff!
thank you mariya
I guess, but these days what we often get is a released Beta version as full, and the paying customer being made to be their third round of testers until they patch the game into actual playability.
This used to be next level amazement, awesome to see how it was pulled off
Nothing special, you just used your fingers to pull it off.
*Visual disappointment*
Well, Sega's slogan back then WAS "Welcome to the next level", so I guess that would make sense.
I love how he does everything in this video _except_ explain how Lock-On actually works at the hardware level, which is ironic because staring at the circuit diagram for a while, it's really quite simple. So simple, in fact, that it would probably have been faster to explain it outright than to handwave it by saying there's "some sort of pulse" that tells the cartridge which ROM chip to turn on.
There's 256 bytes of address space in the SEGA Genesis memory map reserved for cartridge peripherals, much like the Super Nintendo's B bus. Pin 31 on the cartridge turns on whenever this address range is being read from or written to. Some chips on the cartridge detect this signal and look at the data being written. If it's a 0, the cartridge selects Sonic & Knuckles. If it's a 1, it selects the patched version of Sonic 2.
Yeah was hoping that it was going to be explained on the hardware level. Still impressed though. Wonder if Nintendo ever attempted this?
Which number(s) is/are used for Blue Spheres?
Damn, A boolean switch. Nice job Sega
@@just_gill6113 "Very clever." -- Coding Secrets 2020
@@Shazman30
Maybe kind of, Rare Ware tried something with Banjo Kazooie and Banjo Tooie. But I can't explain it.
A little more extra infos on how Sonic & Knuckles accesses the Sonic 3 Data.
Sonic & Knuckles's sprites are in the S&K Rom, along with the music for every zones from Sonic 3 & S&K. Stage layout for the S3 levels is also stored in S&K meaning level design was tweaked and updated. Object code (obstacles, player characters etc) for every S3 & S&K zone is also included in S&K proper
So that leave us with Tails' Sprites and the zone artworks and other sprites for the S3 side of the game needing to be read from Sonic 3's ROM. How do we do it?
Simple, Remember how S&K's ROM is mapped from $0 to $1FFFFF? The Sonic 3 Rom follows right after and its header is then looked up at $200100.
The same logic applies for every call made to the Sonic 3 rom. Once the game detects it has a valid Sonic 3 Rom inserted, it will begin looking for data past $200000 for the Sonic 3 stuff.
Basically all the devs had to do is add $200000 to every call for a pointer in the Sonic 3 ROM and everything worked as is, the only required thing was to have all the code for everything including updated Sonic 3 code stored inside Sonic & Knuckles and almost everything worked as is (although the game code is mainly ran from S&K's rom, some code is actually executed from the Sonic 3 ROM in specific cases)
Hope this was clear enough.
Cheers
Did they do that for Sonic 2 as well? They could have but it sounds like they just included a full ROM from this video. This makes sense since they would otherwise have to support three different versions of Sonic 2. It also means if you owned S&K but not Sonic 2, technically you actually owned a copy of Knuckles in Sonic 2, Sega just locked it down until you plugged a Sonic 2 cart in.
Would this also mean you could yank the Sonic 2 cart once the game started up? That clearly wouldn't work for Sonic 3 though.
@@TheMAZZTer They do a similar yet different thing for Sonic 2.
Basically they map the patch ROM above Sonic 2's ROM in memory, but said ROM only contains the game's code and color palette data and probably a few new sprites for the special stages and the title screen (Knuckles' sprites seem to be read from Sonic & Knuckles). New level layout data is also stored in that patch rom.
Basically that small ROM alone isn't enough to run the game, your Sonic 2 cart ain't just a "key" it's mandatory to have the cart in to actually run anything, yanking the cart out once the game is running would only result in a crash.
Yeah i was thinking this just now. It would be too hard to patch a the sonic 3 code on the fly so S&K must contain all its own code and just use S3 assets, but you make it sound almost like it even has its own copies of half the assets.
@@bangerbangerbro Well...no, I didn't.
@@mspeter97 To me you did. Obviously you didn't actually say that or anything that means that, but the number of different things you said were store in S&K made it sound that way. Everything except for tails and zone graphics from sonic 3 are stored in S&K is what I understand you to have said. Of course those graphics will take up a lot of space but in a sentence that as one element doesn't sound any more significant than the rest of them.
I would love to see how some of the weird effects in Gunstar Heroes happen; Treasure does some serious wizardry to pull off effects the genesis shouldn't be able to do.
I second this
exactly like the teleportation in black’s stage
Or Alien Soldier
Adventures of Batman and Robin
@@_pulstar That's just changing the horizontal scroll for each scanline, so it's actually literally something the genesis was made to do.
It's strange to be able to say, genuinely, "I've been waiting for this my whole life."
Ive been waiting for 2000 years
@@johnhogbin4579 you've been waiting since 20 A.D.?
@@toopienator you get a like for using AD not CE
It's sad, as a kid I thought of all the possibilities, all kinds of crossovers they could do with "lock-on".
But no, it was just so they could do Sonic 3: Episode 1 and Sonic 3: Episode 2.
Streets of Rage, Golden Axe, Revenge of Shinobi, all of these were candidates.
I think one of the plans for the lock-on chip is for their SVP games.
For example, you remember the $100 Virtua Racing. In theory they could make it a lockon game and then if they release a new 3D game (Say a port of Virtua Fighter.) they can use the lockon to make a $40 version and only require the lockon via Virtua Racing for it to work.
@@StriderVM That plan eventually morphed into the 32X, its cost at launch was $150 USD, or $50 more than the Virtua Racing cart. Virtua Racing Deluxe was a huge improvement on the SVP Genesis version. Other Sega arcade titles that were SVP candidates made their appearance on the 32X like Virtua Fighter, and Star Wars Arcade.
@@lazarushernandez5827 Yeah. Sounds reasonable. Too bad it so happens people don't really like addons to existing hardware.
@@StriderVM We are wary now in large part because of Sega. What in hindsight seemed like an obvious decision, was uncharted territory back then. Before the 90s no console maker really dabbled in costly add ons. Japan had some add ons that never left their market; like the Famicom(NES) floppy disk drive, and the Sega MK3 (Master System) audio expansion, but nothing like these.
The Mega/Sega CD was a literal response to the PC Engine CD Rom which came out before it, it launched at $300 USD. The 32X was made because SoJ was worried the Atari would take market share 2 years before the Saturn would reach the U.S. In 94 a Genesis and 32X was $250 ($99+$150) same as the Jaguar.
The problem was these expensive peripherals split up the user base.
The Genesis had 4 separate software lines:
-Base Genesis (largest user base)
-Sega CD (next largest)
-32X (smaller than the first two)
-32X CD (smallest base)
That order reflected the priority for developers as well, the Genesis receiving the most support, the newest titles and the most third party games, the 32X-CD getting the least support, and hardly any 3rd party games.
Soon after the Saturn arrived and took priority over the Genesis.
The lesson was costly; expensive add ons splinter your user base, the consumers and developers do not like this.
Sega finally learned this lesson with the Dreamcast, every console sold including the modem, the developers didn't have to chance it when adding online to their games.
Sorry for the long post.
"...footage from a 1984 TV commercial for Sonic & Knuckes"? They started developing it 10 years in advance and 5 years b4 launching the MegaDrive?! That's wot I call planning ahead!
That's Blast Processing for you!
They showed the commercial despite nobody knew who Sonic is. Must be mindblowing in the era of 8-bit games
Sonic is so fast, he ran around the planet, eastward, and reversed time. This information is accurate, as you generally run from left to right in Sonic CD, which is known for its time travel.
I noticed that, too.
That was actually a mistake, it was shown in 1994.
I will never not be in awe at how they fit so much into these games. 2MB?! I can't get a spreadsheet with just some data and analysis under 2MB!
"1984 commercial?!" ;)
I spotted it on my own too.
I've lived a lie
@@Shadow-xb2ce me too
Came here for this comment
I had to think about it for a second. 2020 has been rough on my brain
I remember showing Sonic 3 locked on Sonic & Knuckles to a friend back when it came out, and he thought it was pretty neat yet he wasn't that impressed. More like he thought it just made sense. Then I switched Sonic 3 for Sonic 2, and when he saw Knuckles pop up at the title screen his mind fucking exploded! Watching him freak out and wondering how it was possible was sooooooo satisfying! XD
I don't know, when I saw tech like this it just began to further cement my feelings that Sega was on the decline. It reminded me of the 32X and Sega CD, just more of these gimmicky add-on utilities instead of full featured standalone technology
I'll also point out that several Electronic Arts games, if plugged into the Sonic and Knuckles cartridge, would load the EA game instead. I noticed those cartridges had lightning bolt symbols on the side. Virtual Pinball plugged into Sonic & Knuckles loaded Virtual Pinball instead, not S&K or a Special Stage. However, Lotus Turbo Challenge would load a Special Stage.
Those are likely either due to the 4mb issue which caused the cart to not detect a header, OR they used a different header altogether which would understandably do the same thing.
@@flabort if I remember correctly I believe it's because the EA games lack a proper header. EA actually reverse engineered the sega lock out system sot hey're technically unlicensed. It's why the carts are a different shape
I wonder if Accolade games would do this too.
@@minemariosonic Good to know they've been dodgy since the beginning.
@@minemariosonic You are right.
And thus the & KNUCKLES meme was born.
@RageMage 117 Featuring Knuckles from the Sonic the Hedgehog series
no
@RageMage 117 Pretty sure the Ugandan Knuckles Clan and the Knuckles & Knuckles Clan are two different clans, they even have different national anthems.
& Bass
*spontaneously combusts*
Now I’m curious as to what kind of disaster could be created by editing the headers of other games to that of Sonic 3 and maybe 2.
If it executes code from the plugged-in cartridge, it will most likely hang/crash.
If it only uses graphics and maybe map data (this is most likely), some graphics will be replaced by random noise (like MissingNo), and/or the level will consist of random tiles (like pokemon glitch city).
If you are "lucky" you may see distorted fragments of inserted game graphics randomly.
Or it just crashes/freezes if metadata is too corrupted to even load.
You can use an emulator + hex editor to simulate this scenario. Just write other game ROM after the end of S&K ROM.
Jack White This is what I suspect, although I’d still expect S&K to use executable code from S3 for level specific stuff and even then there’s the question of how any data is interpreted. Still, I’m curious to see similar to ‘corruption’ videos you see on RUclips.
Only reason I didn’t try was because my desktop is disconnected right now.
@@jwhite5008 Sadly, it just lead to a black screen, unless there's some kind of checksum involved which I doubt. So no nightmare fuel.
@@tech34756 It could possibly read data in a very specific format, like prefixing it with a magic number like "PK" zip header, or simply calculating data sizes depending on the data i.e. { uint16_enum_t data_type; int32_t offset; int32_t size; } and then check that 0 < type < 4 && 0 < offset < 4M && 0 < size < 4M and so on, and if it does not match - hang or crash or try reading past address space and then crash or similar - at least that what I would have done if reading from a questionable external source.
And there is simply a possibility that it tries to read past the end of actual data of your cartridge (which would have wrapped on the real cartridge if high ROM bits are missing, but not on the emulator)
Oh and verify that the ROM file itself does not have some kind of checksum or header - check emulator log if it has one. Does S&K load correctly if legit S3 ROM is concatenated that way?
Everybody gangsta until GameHut stops using his theme song
WOW. This is not only the "deepest" explanations of lock on technology but also one of the easiest to understand thanks to all the additional diagrams. Subscribed !!
For the nostalgic: The old music was "Is that you or are you you?" by Chris Zabriskie.
Aww, I miss "Is That You or Are You You" as the background.
Anyway, thanks for the video. I didn't realize that a lot of extra effort was needed for Sonic 2 to work properly this way.
"was it worth it?" ... Sonic 3 + Knuckles was absolutely my favorite and the most formative gaming experience of my childhood, even if it was somehow not "worth it" by some other measure, to me, it always will have been worth it.
Tbh I'm still amazed how they pulled it off to this day
I had always wondered about how the technology worked because it seemed like an engineering nightmare to get right. Combining Sonic 3 and Knuckles together is logical because they’re both running the same code and essentially play on top of eachother, but how it worked with Sonic 2 always had me stumped. I never realized it was a separate ROM chip that it switched to when the game was inserted.
I also have a lot of memories of trying to “trick” my Genesis as a kid by inserting different games into the Knuckles cartridge. I thought for sure that one would match up and let me see some really weird glitches. (Glitching Sonic 3 with the debug mode was always a lot of fun to me for some reason)
That's a good way to get all your Not-Sonic 3 save files wiped - a nasty S&K bug.
Thanks for covering this, Was super excited to see it after mentioning it in the comments on the last video!
I had always wondered why they didn't do Knuckles in Sonic 1 also, and now I get it. It was actually a separate chip!
Can't get enough of this channel. I immediately bought 'Leander' (sadly, my only TT game ever) upon release after seeing it previewed on a Saturday morning TV show.... LTUS was the code for the final level. Absolute genius of a coder and deserved all the success that followed.
In that time, a friend of mine had US Sonic 3, and his neighbor, also my friend, a JP Mega Drive, and the US game is region locked and do not work in consoles of different regions.
A third friend of mine got an US Sonic & Knuckles, and I borrow it to play at my friend's JP Mega Drive, and the game do not have region lock.
Now the interesting thing: Sonic & Knuckles will ignore Sonic 3's region check and let the combined cartridges runs in any Sega Genesis / Mega Drive console. So, my friend with the JP Mega Drive could play the US Sonic 3 combined with Sonic & Knuckles.
There's actually a reason for this! Sonic 3 was just a standard cart, so it could be region locked like any other and be under normal circumstances. However, when it came time to make the Lock-On cart, rather than make a different version for all the Megadrive software regions, they decided to only make one kind to keep manufacturing costs down. The only regional differences are the sticker on the front and the packaging.
As for why Sonic 3 runs regardless of region while locked-on, S&K only checks the serial number of the S3 ROM in order to validate it. The serial number is the same across all regions. Not to mention, no game code actually executes from the S3 cart in this configuration. It simply serves as an asset resource for Tails and the Sonic 3 level art and also a source of SRAM.
@@gold_lightning The SRAM of Sonic 3 isn't used in S3&K, it has its own SRAM that is locked away in S&K mode. Upon detecting an S3 cartridge for the first time, it copies over the saves to its own SRAM, updating it to the S3&K format. If you delete saves in S3&K, it won't delete them in the original cartridge, and if you restart the game (probably only via power cycle, not sure), the saves will reappear, but only at the point where you left off in the S3 only game.
EDIT: Also, technically S3 and S&K use FeRAM/FRAM chips (sorta like small flash memory), not SRAM+battery.
@@Consolethinks Incorrect. The Sonic 3 cart was actually future proofed specifically for this. It has 14 save slots. 6 are reserved for Sonic 3 and 8 for S3&K. If S3&K is booted with the last 8 slots blank, but with something in the first 6, it will copy the first 6 over to the S3&K portion so the Sonic 3 save is untouched, but you can continue the adventure in S3&K. There is no sram hardware on the S&K cart at all. The Sonic 3 cart handles all of it.
I vaguely recall hearing that some basic planning for lock-on technology was in the works as far back as Sonic 2- which is why S&K was compatible with it- they had some idea of releasing some sort of connector device that'd enable you to add new features to sonic 2, and put in basic coding that'd enable it, and started working on the tech- when they realized that Sonic 3 was way too massive to be put on one 4 MB cart, they decided to use the the tech they'd been working on since Sonic 2 to make Sonic and Knuckles and enable it to work with Sonic 3 and Sonic 2. Damn if I know where i read this, though, some gaming magazine in the 90s.
M8
You typed 1984 at 7:21
I think you meant 1994. Now we know you've been reading Orwell lately.
My favorite game ever as a child. Awesome to see how it was done!
This was the coolest thing back in the 90s ngl. Glad they made the decision to do this
Those commented assemblies certainly bring back memories. General Motors used a variant of the 68000 used in the Genesis, namely the 68332 that used the CPU32 instruction set (very similar to the instruction set in the 68000, but with things like TBLU and such for embedded control systems) in their early 96-03 VPW PCMs. Did a shitton of programming and hacking with those. Really liked working with the CPU32 instruction set.
They originally planned Sonic 3 & Knuckles as one game, but they had a close deadline due to a McDonalds licensing deal, so they split it into Sonic 3 part 1 and 2, with Sonic 3 Complete being the "deluxe" release containing both titles. Part 2 became Sonic & Knuckles with the lock-on gimmick, and Sonic 3 Complete was then deemed unnecessary and axed. There are prototypes for S3C that exist, one of them has the ending theme being a medley of Sonic 3 tunes, similar to the S&K medley in that game.
This is an example of one thing that i always assumed was simple. I never really properly thought about the complexity of this before. Good video as always. And you used different music! I love the thing you do with cutting the front cover in half and squeezing it! Always makes me laugh/smile!
I remember seeing the adverts and thinking I'd be able to plug in any game and play through it as Sonic. Bless my 7 year old mind.
Same here. When I rented S&K, the only Sonic games I had were Sonic 1 and Spinball. It was a bummer but I still had a blast with S&K.
When my bros and I got S&K, we first plugged Sonic 2 in it. Eventually, we got tired of it, because we knew Sonic 2 pretty well. After a while, we ended up realizing we could just play S&K if we put no cart in it. (-‸ლ)
Thanks for changing the opening music. This one is much better and chill.
Another Intro music?
Bruno E A Stranger Thing
7:20 'This is footage from a *1984* TV commerical for Sonic and Knuckles'
Would love to see some NiGHTS into dreams content. Interested in how the A-Life system worked along with the dynamic changing music. Also just the basic flight sim and how they achieved such beautiful movement.
I remember the sprite glitch in the commercial back in the day. As a kid, I took it as a sign there was so much in the game that the game was running out of memory. This logic was based on playing Sonic 2 in debug mode and adding so many items on screen that the game would be slow and glitch out like in the commercial.
Unlocking the special stage with any cartridge was a nice touch, it made me feel like I found the holy Grail when I was a kid. Like...OMG SPECIAL STAGES
I can remember buying S&K brand new not long after release. I used my birthday money. It was £39.99 from the "Our Price" record shop in the bridges shopping centre in Sunderland.
This is actually sick I never knew this was such a big deal. Epic explanation The best aiding visuals too! Keep it up
could you continue with "code your own sonic"? I want to add dynamic music and coliders to the stages
I want to add Pokemon.
I did enjoy that series, although it seems more like a GameHut topic than Coding Secrets.
@@InsaneFirebat I don't care which channel it appears on as long as it does.
I like the concept but it seemed flawed since you still really need to know 68K ASM, etc. I think if he continues the series there needs to be a basic introduction.
@@InsaneFirebat I know, but this is his last video
"You got some of this wrong..."no chance. You my friend are incredibly well versed on the subject of retro gaming.
Now that I know how it works, it really makes me wonder what kind of weirdness you could get by modifying other games into being accepted by the sonic and knuckles rom
As a kid, I attended an exposition of the game at Universal Studios ahead of its release. I was already psyched as hell on the base game, but totally freaked when I saw Knuckles flying around in Sonic 2. Even after seeing the secret sauce behind it, it's still so cool to me.
"As the special stage is launched, it checks if the game is Sonic 1" it actually does that check immediately. This is belied by the fact that only Sonic 1 produces the "no way" screen in color. Everything else produces it in greyscale.
Great video yet again. But we are missing the hypnotic music of Chris Zabriskie 😀
Nooooo, where's that great intro music!?
Thank you for this new background music. The old one was ear-piercingly loud and high.
One other thing I seem to have picked up along the way. One of the reasons they may not have included a similar mode for Sonic 1 is to do with Sonic's colour pallete in those games. Supposedly they re-used the Sonic blue for other elements in the game, which would make pallete swaps for the "super" versions of each character implausible (who wants to patch that kind of game logic?) which is where the blue spheres concept came from.
I have no sources on this one but if someone has access to the relevant software it would be quite easy to verify?
You mean putting Knuckles in? You're thinking of a gamehut video about getting super sonic info sonic 3D.
@@bangerbangerbro it definitely predates gamehut in my head. But knuckles is just as good an example.
@@darren8453 No i mean in your original comment you mean knuckles not super variants.
@@bangerbangerbro I may have mis-remembered parts of the story but whether it's a palette for Knuckles or Super Sonic, I remember reading this was part of why they didn't do something similar for Sonic 1.
Of course, there may have been other considerations; the game engine by this point was probably radically different from the original in sonic 1, and maybe the level design would never have catered for it anyways. Also you're going to be increasing cost to add *another* ROM on the S&K board if you do it this way.
@@darren8453 I'm just trying to say the main thing you would be doing is adding knuckles, which would of course cause the same problems. Super forms you might try but I wouldn't think you would bother. Knuckles I suppose you might be able to do with other reds in a level but it is a mega drive so I think the sprite layer has its own palette so there would probably be a narrower band of colours, only those used by badniks and a few other things. Also makes me wonder if some badniks used different palettes to the others and are just placed so that they don't meet?
As a kid, I somehow missed the fact that S3&K was both games combined. I thought it just let you play as Knuckles in Sonic 3, which admittedly was still a high selling point for me.
Please bring back the ˋoldˋ background music :(
This explains a lot. I hadn't ever looked into this and thought the port acted as a pass-through, with Sonic 2/3 getting patched via injection rather than how it actually worked, a pre-patched rom on the cartridge. It also explains why Sonic 1 didn't get the same treatment, or why it only does the sphere game when you plug anything else in.
It's funny hearing that 4mb carts took a huge amount of money back then. Just... considering my SD Card has 32GB, wow
Fundamentally different technologies, actually.
Your SD card is built on flash RAM which uses things such as quantum tunneling to hold a charge for a 1 or no charge for a 0.
These are mask ROMs, which is literally just burning away physical connections between transistors to form a 0.
For perspective, the entire Genesis library fits into about 1GB
@@YaroKasear I know, but it still proves how far we've come
7:33 The music makes it seem like it's some kind of history shattering discovery. 🤣
Holy crap THANK YOU. I asked for this topic so I'm extra excited. My parrot loves your videos so I'm gonna sit down with her and give it a watch right now!
Mr Computer I thought it was the music she liked but nope we figured out it's his voice. She looks like she's under a love spell as soon as he begins speaking. Fluffed up and content until the video ends. She's sat through the entire playlist before!
1984 TV commercial?! Sonic moves so fast he travels back in time, does he turn brown again if this happens? 🤔
Great stuff, I really enjoy what you're putting out 👍
This video was explained perfectly.... Until you mentioned a '1984 commercial' at the end!
Too bad he's not like CGPGrey, that weird channel that only has one video on it that keeps getting revised.
@@DoctorWhom i remember the days before the replace video feature the channel was brimming with life
All was peaceful.. Until the replace video attacked
0:54
“Part of me wonders if this was actually the plan from the beginning”
The Nov 3 1993 Prototype of Sonic 3 says otherwise, it shows that the had some work done on the second half.
Can you show us how the bonus stage on Sonic Spinball was made?
I remember experimenting with a friend’s cartridge. I had Sonic 3 and he had Sonic and Knuckles. Playing Sonic 2 with Knuckles was mind blowing to my childhood self.
Thanks for the video. It’s fascinating stuff. Absolutely fascinating.
I had Sonic Classics growing up and it frustrated me that I could not play as Knuckles in Sonic 2 with it. Now I finally understand why!
Same here! Only it was called Sonic Compilation over in the PAL regions~ Pretty much the exact same game though!
Love the new music! The old one became a staple to your channel, but this new one does it justice!
Nice work. I noticed you had changed the intro music :( the precious one was already a trademark from you.
The whole Lock-on cartridge idea is legitimately one of the coolest things in the hardware area of the gaming industry. Imagine the possibilities with other games of that era, and the era of early 3D games like the Saturn and N64!
Wow, the way the Sonic & Knuckles lock-on cartridge works is extremely interesting
& Knuckles
05:42 Sonic Classics ROM data: "So, how did you know it wasn't the real one?"
Sonic and Knuckles cartridge: "Because you just told me, fox boy!"
Is it just me, or does it seem the speech of this video was a little faster than usual?
it's definitely faster than normal
@@aevus sonic does that to ppl
Yes, and I think he talks too timid and whispering.... It´s irritating at times
The first ever game software update/DLC
I was hoping to hear something about how the "Sonic 3" levels are slightly different in Sonic 3 and Knuckles compared to Sonic 3. Like for Sonic 2 they just made a duplicate ROM with all the edits, but for Sonic 3 and Knuckles they are... loading Sonic 3 data with different layouts and bosses and other tweaks? How much extra Sonic 3 data is in S&K?
Yeah I was also really hoping to hear how Sonic And Knuckles interprets the different coding architecture of Sonic 3.
IIRC, S&K's code patches the layouts of S3's levels as they're loaded, but I'm far from an expert on the subject.
Essentially, it just uses Sonic 3 as an art asset bank. All of the code (including all object and level layouts) is running from the S&K side of things, but art is loaded from the Sonic 3 side when applicable. That said, as far as extra data goes, all of Sonic's sprite work exists twice in the combined ROM because he's playable in each game independently.
For S2 they DIDN'T make a duplicate ROM with the edits. They just made a patch for the S2 ROM which contains just the edits..
@@gold_lightning Indeed but they just opt to use the version of the sprites present in the S&K side of things to make things easier. The only playable character in S3&K that actually requires loading data from the S3 cart is Tails as he only has his standing still sprite in S&K. Multiplayer mode also reads sprite data from S3 and that's about it
Nice explaining of the hardware & software secrets.
Keep going! Nice stuff!
7:20 , typo , you accidentally typed 1984
Great video btw
to be honest, the S&K cart was a pretty good bargain, i mean its playable on its own, combinable with S3 for a full game (and allows K in S3 and T in S&K), combinable to allow K in S2 (which in itself adds replay value to an existing game) and finally bonus 3d games galore. Perhaps in hindsight, maybe adding knux to S2 with all the S2 stuff plus maybe adding some cut levels would have been a nice bonus.
I knew of most of this from the olden days of Genesis emulation wherein I used the DOS prompt's "binary copy" command to manually join S&K to Sonic 3 and another file which was just S&K to the S&K "patch rom" to Sonic 2. I had assumed the Sonic 2 "Patch Rom" was just the changed data for Sonic 2 patched in in real time at boot like a Game Genie would. I had no idea they just went whole hog and stuffed a fully functional "Knuckles in Sonic 2" ROM in there, negating any need for the original Sonic 2 cart at all. That means you didn't really need Sonic 2 to play it, they just forced you to buy it as an "unlock key".
Interesting stuff! It's hard to be mad considering just how long ago this was, but it's a curious fact anyway.
Actually you would need the Sonic 2 ROM anyways, the "Knuckles in Sonic 2" ROM actually only contains palette data, sprites, stage layout, and all of the game's code. The rest of the game, the music and the actual artworks for the stages is still inside the Sonic 2 cartridge. Booting only the patch rom alone would lead you to a simple black screen
@@mspeter97 Ooooh so closer to what I originally thought it was then! I retract everything.
God I love the stuff like this that Sega did back in the day. They were absolutely insane with innovation. I wish I could have properly lived through the time when Sega was on their game
So no data from the actual sonic 2 cart was used? Did it only use sonic 2 as a way to access the patched rom?
I wonder too
No, it used all the assets from the sonic 2 Rom but needed the 256MB patch for the new Knuckles animations etc.
@@CodingSecrets I think you meant 256KB or it would have been very expensive cartridge at the time
@@CodingSecrets 256mb hey? hmmm
Read Fred Bronze's "Sonic 3 Unlocked" blog. It goes in depth on how Sonic 3 and Sonic and Knuckles were programmed, including several entries on the actual software side of how the lock-on support was used.
In standalone Sonic & Knuckles, a global flag is set indicating to the S&K ROM that it's a standalone S&K cartridge, and this flag is thus used throughout the logic of the ROM to prevent cases where it would reach into the Sonic 3 ROM for assets: Tails, certain cutscenes, etc. It also obviously prevented the ROM from starting in Sonic 3 & Knuckles mode which VERY HEAVILY draws data and even some logic from the Sonic 3 ROM.
In S3K, this flag is left unset, which allows the S&K ROM to enable its entire feature set and use both its own assets and assets from the S3 ROM. Right from the start this will result in the S3 address space being reached into by the ROM. There are some assets from S3 that are duplicated in S&K, however, due to how they hardcoded addresses in their data structures, such as pattern load cues (A lot of level graphics data has to come from the S&K ROM instead, but layout data can come from one ROM, the other, or even BOTH ROMs.) Most of the actual engine logic comes from the S&K ROM largely due again to addressing complications. The Genesis/Mega Drive doesn't have an MMU, so the S&K ROM can't just simply map the S3 ROM by way of virtual addresses, which would have allowed Sonic 3 addresses to still map to addresses as if they were Sonic 3 standalone when S&K would have needed. This ALONE is probably the biggest reason why Lock-On Technology wasn't used beyond this one game, as they probably had to manually recode assets they had to reuse to account for the change in address space. S&K also uses S3's SRAM entirely and doesn't have any battery backup of its own.
Knux in Sonic 2 relies on some assets from the S&K ROM, most the assets just come from the Sonic 2 ROM, and the patch ROM provides not only Knuckles graphics and animation, but more than likely is the actual copy of Sonic 2 that runs when locked on, as opposed to the version of the engine on the Sonic 2 ROM. This is due largely to the fact Knuckles does not work in any way like a player character programmed into the S2 ROM. But most graphics and layout data and possibly some enemy programming comes from the S2 ROM, with the S2Patch ROM changing some layout data on the fly.
The closing comments on how genius the splitting of the games was "They could ship Sonic 3 on time as a 2 megabyte cartridge AND have a whole new game to sell 8 months later" that really made me smile!
And Knuckles
I'm more bothered they spoiled Doomsday Zone in the commercial rather than having a sprite error.
I don't know jack about coding but your videos are so interesting, thanks for making them
Ah yes, good ol' RUclips comments. That gave me a good chortle. I know the feeling!
oh look its the Sack
I have been waiting for someone to explain this monstrous first party game genie like cart for literally decades, thanks.
7:22 hold on what
I actually found a way to generate a special stage from games that were greater than 2MB. You had to start it up with a game that produces a No Way screen locked-on, enter the special stage, pause and swap cartridges without turning off the power (or wobbling it too much causing a crash). Then unpause and hit a red sphere; you'd return to the Blue Spheres title with the special stage generated by what it THINKS is the cartridge serial number - but is in fact some random bit of code in the 2nd half of the ROM!
"Sorry for all the hexadecimal stuff..." Really? We all love hexadecimal! I use UTC hextime for the time of day... in little endian! More hexadecimal stuff!
I had to learn HEX addition and subtraction in my mainframe programming class last year so we could read crash reports and trace core dumps. "Don't forget to carry the 15!"
a commercial from 1984? a whole 10 years ahead of its time
And knuckles
And knuckles
And knuckles
It's a meme in the Sonic fandom.
@@lucam.3111 please remove this comment or change it to say "And knuckles" Please don't break the chain!
The Lock-On tech was originally planned to be a stand-alone cartridge using the same chip found in 'Virtua Racing' (The SVP Chip) to enhance games plugged into it. Ultimately it was abandoned in favor of the 32X and Virtua Racing was released with the chip integrated, for a whopping $100. It was then adapted to the Sonic 3 project, which was too big and behind schedule, leading to the game being split into two (Sonic 3 and Sonic and Knuckles).
Playing sonic 3 & knuckles on my mega drive
See this
Nice
Wow, sonic and knuckles in 1984, Marty and the Doc have been working hard, what a blast! (Hehe check the date on the caption about the commercial).