5 ms·
How does Sonic and Knuckles' “Lock-On Technology” work? (2016)
- Villodre 3y agoI remember that, in order to play S3&K in emulation, you just had to concatenate both games in a COPY S3.BIN + S&K.BIN way (if you used DOS) so I mostly knew the answer already. But man, that answer in the Stack site was excellent. Informative, long but concise, and very fun to read.
- LeoPanthera 3y agoMany modern Genesis emulators have the ability to select a second ROM to "connect" to S&K, allowing you to connect arbitrary carts, if you want to.
- Dylan16807 3y ago> If it detects Sonic the Hedgehog 2, a signal is generated on the ROM's D0 line, setting the Q bit of the 74HC74. This is missing some important information. One input to the flip flop is D0 on the ROM, yes, but it only sets when there is a clock signal. Otherwise there would be some very interesting coding constraints. The clock of the flip flop is connected to cartridge pin B31. Here's the best explanation I can find of that pin: '/TIME' is the schematic label given to pin B31 on the cartridge slot. It is essentially a chip enable for the I/O port range $A130Fx, and is used for programming on-cart memory mappers. The only games I know of that use it are Beyond Oasis, Phantasy Star 4 (both for switching between ROM and SRAM at $200000-3FFFFF) and Super Street Fighter 2 (for a full-blown ROM banking chip). I don't know why it's called '/TIME'; perhaps they expected to connect an RTC chip to it. So if you write to certain addresses, the genesis will flicker that pin, which is great for controlling an extra chip like this. (I mean, it's meant to control an extra chip, but it seems like the plan is a significantly smarter one than a flip flop.)
- Eduard 3y agoGreat info; go ahead and add it as an answer / comment / edit to that Stackexchange page.
- Dylan16807 3y agoWell I'm not going to make my own answer to correct a couple sentences of someone else's answer, and I don't have enough points to comment or edit.
- matheusmoreira 3y agoHi, I'm the original author of that stack exchange answer. I'd be more than happy to add your information with full attribution. Thanks for your explanation. I'm a programmer but don't have a strong electronics background. Clock signals, those chip enable signals and how they interact were difficult for me, especially at the time I wrote that. Edit: I just added a full citation for your comment. Thanks again!
- Dylan16807 3y agoI don't feel like credit is necessary here but great, glad the info's improved.
- mdale 3y agoGreat write up. I recall the excitement of the combined effect / bonus games.
- dclowd9901 3y agoI never had a genesis but I recall thinking how cool this was at the time. Kind of magic, really (granted I didn’t know much about computers in those days, but I knew it must’ve been hard to alter an already shipped game). Turns out it has a pretty simple and clever solution. Kind of lost that with post production shipped patches.
- gjsman-1000 3y agoSometimes, I wonder if there would be a niche market for an indie-focused video game console with the following constraints - I’m just thinking out load: - 1080p maximum video output, meaning lower production and GPU costs - Absolutely no internet or wireless connectivity. Wired controllers. - Due to no wireless connectivity, all games produced are final from the beginning. Like the good old days. - Switch-like cartridges, but with weaker DRM that maybe permits just using standard SD cards. Thus console has no need to have an expensive built-in disc reader and only requires minimal internal flash. - Due to the niche market, the console manufacturer doesn’t charge a 30% cut, and handles all manufacturing in-house, so nobody needs to worry about financing a production run. I think with proper marketing, and a good enough system for quickly porting games (maybe it’s just Proton under the hood?), you could find an audience in collectors… and prisons where the lack of connectivity is a feature.
- jonhohle 3y agoI’m not sure if it fits your use case but the Evercade VS is essentially this. Evercade carts are SD flash mapped to a Game Boy pin out (the first 8 pins are the same as an SD card). It’s both easy to read carts as well as get a flash cart for running arbitrary ARM code. Blaze changed the way the Evercade EXP reads carts, however, and it seems like the console no longer reads carts, or at least doesn’t after the first time.
- wolrah 3y agoYou've basically described a worse Steam Deck, and would likely have a hard time beating the price of a Steam Deck by enough to be worth the sacrifices. Particularly intentionally making it unable to patch games. It's not like cartridge or pre-internet era disc games were bug free, just in that era you were stuck with whatever bugs the game shipped with forever. Games popular enough to get additional production runs were often patched, but those who bought an early version didn't get whatever changes the new one brought unless they went out and purchased a new one. Games that didn't sell well enough, perhaps at least in part because of the bugs they shipped with (E.T.? Superman 64?) never got patched. The best case scenario back then was something like Morrowind on Xbox, where the game was popular enough to warrant the expansions being ported over from PC and released as a compilation with an updated version of the base game that included a workaround for the game-breaking issue experienced on the original release. We still had to buy the patch, but at least it came along with a lot of new content so it didn't feel like rebuying the same game.
- userbinator 3y agoWhen the cartridge connector is just the CPU bus, you can put whatever devices you want into the address space. I'm not familiar with newer consoles, but I believe cartridge-based ones now don't do that anymore, instead treating it as a mass storage device interface.
- grishka 3y agoYes. I read somewhere that modern CPUs run so fast that various forms of interference become a problem if you just let the memory bus stick out as a slot to plug things into. Switch cartridges definitely use some kind of serial interface judging by the number of pins.
- deleted 3y ago[deleted]
- LeoPanthera 3y agoSwitch carts use an 8-bit SPI interface.
- danparsonson 3y agoWell that's great - now I've got the music stuck in my head again! Seriously though, great post! As a teenager with some knowledge of programming I always wondered what black magic enabled them to graft a new character into an old game (Sonic 2) - it never occurred to me that they'd just shipped a new version of the game code.
- intellix 3y agoDid any other game ever do this on any other console?
- rahkiin 3y agoThis is basically any DLC, right? Extra code is loaded.
- LocalH 3y agoDLC doesn't usually introduce new code to a game, that tends to be reserved for full-on title updates. DLC is more like if Sonic and Knuckles could also support special "new level" cartridges, that didn't do anything on their own, but when inserted on top of S&K provided new levels for the player, but didn't themselves contain any program code.
- doophus 3y agoEvery game I've worked on (360-era) with DLC has needed supporting code to be distributed in an update first. Everyone gets the update, then the DLC is either just an unlock for what's already there (but hidden), or contains some supporting data.
- LocalH 3y agoRight, but that's not absolutely universal. Harmonix does pretty well continuing to release DLC without needing an additional title update in some time now. My point was more that the DLC packages themselves don't often, if ever, come with actual code included, and this is usually for platform security reasons (Sony and Microsoft are both quite controlling about how executable data is managed and how it is stored). Perhaps maybe some scripts for the internal engine, depending on the game.
- NovaDudely 3y agoNot that I am aware of. There was talk about this being a potential thing on N64 with Banjo and Tooie but it never came to be.
- tndata 3y agoCool blog post, it brings back memories! I wrote a blog post for some time ago titled "How I built my own Sega Mega Drive hardware dev kit from scratch" https://nestenius.se/2022/01/18/how-i-built-my-own-sega-mega-drive-hardware-dev-kit-from-scratch/ https://nestenius.se/2022/01/18/how-i-built-my-own-sega-mega...
- qingcharles 3y agoThat's awesome.
- aerio 3y agoThis is super interesting. I had Sonic 3 (and 1 and 2) on the Sega Mega Drive, but it didn't come with these combining cartridges.
- atdrummond 3y agoSonic and Knuckles has the Lock-in Slot. You were one game away.
- aerio 3y agoAwww, man!
- deleted 3y ago[deleted]
- matheusmoreira 3y agoHey, I wrote that answer seven years ago! I tried my best to understand and describe the circuits but I'm not particularly knowledgeable about electronics so I'm not sure if it's 100% correct. Never thought it would make it to HN. In the comments I wrote: > I wish a professional would comment on my analysis of the circuit; if there are errors, I would like to fix them and learn more. Perhaps today is the day!
- cushychicken 3y agoVery quick read suggests you got the gist of it. (Professional EE with decade of embedded system HW and SW design experience here.)