View Full Version : Mega Drive / Genesis Overclocking!
Epicenter
02-01-2004, 04:02 AM
Here are the first 5 demonstration videos from my Mega Drive / Genesis overclocking project. They show the 68000 pushed from 7.6 to 13.4 MHz. I tried for the highest possible framerate, so the file sizes may be a tiny bit large. So, I also made some lower-quality but equal-in-framerate versions. You can get them all on the page below. They are MPEG-4 encoded. The clockrate of the system at any given time is shown in the lower-right hand corner, hope it is not too hard to read.
http://www.epicgaming.net/hardware/md_oc/
More to come, including a photographic 'how-to' procedure guide. I'll also be pushing it to 14, 16, and maybe 21 MHz soon. Enjoy. :)
I don't suppose this warrants a Sticky though, huh?
Jasoco
02-01-2004, 05:26 AM
Question.
What purpose has this thing you are doing? And why did I just word it like that?
Anyway. Does it do anything to game play? What is its purpose?
Question.
What purpose has this thing you are doing? And why did I just word it like that?
Anyway. Does it do anything to game play? What is its purpose?
Less slowdown and better overall framerate ofcourse :)
Watch demo 5, that's where it's most noticable.
Epicenter
02-01-2004, 05:38 PM
Mystic Cave Zone 2P (video 1) was where I found the lag to be the worst, but it's just as noticable in 5, I suppose. :) Anyhoo, I'll be pushing it to 14/16/21 MHz today, if the equipment cooperates. Wish me luck!
Mr-Monday
02-02-2004, 04:15 AM
That's cool!
Why didn't the original hardware designers up the clock speed to begin with, so all Megadrives were 14mhz?
Jasoco
02-02-2004, 04:21 AM
That's cool!
Why didn't the original hardware designers up the clock speed to begin with, so all Megadrives were 14mhz?
For the same reason Processor makers don't do it in the first place either.
Usually heat reasons. Stability problems. Or maybe they just didn't know.
dr mario kart
02-02-2004, 02:27 PM
Just how do you overclock a console. I'd like to OC my SNES
Wow, this is a really cool project. And the videos prove that it's worth the effort.
I can't wait for more information! I'd be up for overclocking a Genesis or Mega Drive and, if it's possible, a SNES. Now THAT's a system that could use this upgrade. Even if it requires lots of modifications (cooling fans) it would be worth it. Gradius 3 without slowdown? Super Ghouls and Ghosts? Super R-Type? This would be great!
Ze_ro
02-02-2004, 03:36 PM
Wouldn't this make some games too fast though? And what about compatibility with the 32X and Power Base Converter and such? I know those are rather low priority, but wouldn't a faster Genesis have difficulty communicating with stuff like that?
--Zero
Ed Oscuro
02-02-2004, 03:42 PM
I'd love to see an official Sega add-on: The Power Base Inverter :D
That would be nifty. o_O
AWESOME work, Epicenter! Don't try this at home or anywhere else, folks. Leave console overclocking to the pros. :o
Ed Oscuro
02-02-2004, 03:51 PM
Wouldn't this make some games too fast though?
I don't want to guess about compatability, but I'm going to say that most games (probably all) will run at the correct framerate. PC games that run too fast are an oddity and are due to the developers having to use rather unrefined techniques. On the Genesis, lag is a problem, but running too many frames could be a problem too. It's sort of like this:
Old PC game -- do stuff, move character X amount PER FRAME
Genesis game -- do stuff, move character X amount per unit time
Obviously, if you're moving a character 10 pixels per frame and running 20 FPS, you can move 90 pixels in three seconds, but if that game runs on faster hardware (remember that people were using 8080s or 8088s for a long darn time) where you can output 60 fps (or more) you end up with the character jetting across three times as fast.
On the Genesis, the system was powerul and developers had become savvy enough to realize that in moments where more (or less) CPU was available it would be a mistake to move stuff X amount in a single frame. Usually games don't seem to solve as well for moments where there's less CPU time (at best, it looks sort of like a guy running really fast in Counter-Strike, where you move extra quickly to get back in sync with the state as it should appear in that point in time -- what happens normally between frames, but slower), but for times where there's more CPU are fixed in just about all software for software from the late 80s and on.
Hope that's helpful.
Epicenter
02-02-2004, 05:34 PM
First of all, about compatibility. The clockrate increase on the 68000 does not go to the 32x/Mega CD, so they work just fine. Only thing is, you need to boot at 8, turn on the Mega CD, then switch to 13 after the BIOS is done loading. As for the power base converter; it doesn't use the 68000 at all, so no problems there. It uses the Z80 as the main processor.
Also, games do not speed up, except for one case. Here's how it works AFAIK. The VDP (Video Display Processor) cranks out 60 Frames Per Second at all times. However, it can only display frames as fast as the 68000 can do the math allowing it to generate them. When the 68000 is overworked, the VDP Shows the same frame over and over. When overclocked; the 68000 is able to crank out frames fast enough for the VDP to draw them onto the screen, so there is no slowdown. But since the VDP is not overclocked, it does not push the games beyond their proper speed threshold.
The ONE time I've had overclocking make a game speed up was in a very timing-specific demonstration-- the Sonic 2 Special Stages. If pushed to 14 or 16 MHz during those, it will speed up to 2-3x proper speed and start glitching up horribly. But everything else is just fine.
As for the SNES. Odds are, I can push the SNES' CPU from 3.58 to, say, 5, maybe 10 MHz, with a bit of work, and it shouldn't really be too hard. However, I cannot afford an SNES on my strict college budget, and I don't have any games I would play on it. :) If anyone wanted to donate one to the project, sure, I'll go ahead and do it, document it, and make videos of it. But until then, my hands are tied. *shrug*
Oh, BTW, about 'not trying this at home', I think the writeup I am working on will prove that this CAN be done by anyone with a bit of soldering experience. :)
Ze_ro
02-02-2004, 05:56 PM
Obviously, if you're moving a character 10 pixels per frame and running 20 FPS, you can move 90 pixels in three seconds, but if that game runs on faster hardware you end up with the character jetting across three times as fast.
I would have figured that people would have programmed the Genesis the same way. Since everyone's Genesis (well, except Epicenter's) runs at the same speed, you can safely time things using that. Or perhaps developers were specifically told not to do that so that games could be converted to PAL without speed changes?
--Zero
Ed Oscuro
02-02-2004, 06:11 PM
I'm not sure if that's true about the VDP or not, but that would be a good explanation. If you don't control for instances where the hardware can do more work you might end up with the game generating too many frames. I really don't think the VDP has any major part in this, but I could be wrong. Seems that the 68K is doing the graphics work, though, moving stuff around in VRAM and sending a signal to the VDP to draw the frame is simply the last step.
Maybe the VDP *can't* display frames faster than 60 FPS, but I would think the software can't rely on the VDP to tell it when to not draw another frame. That would be slow and wasteful -- you want to keep these sort of loops inside the processor when possible.
On the other hand, the Genesis is old enough for something crazy like that to work. I'm really not sure. I do know that there is *some* mechanism for keeping the CPU from making more frames per second, though, and the old PC games either don't have a mechanism (relying on budgeting the code so you know it only does so much per frame, which seems ODD) or the mechanism is broken. As the Genesis obviously has some way of keeping the code under control, and the PC doesn't, I think I like my theory. Could be way off of course!
Epicenter
02-02-2004, 06:56 PM
The VDP is locked to display ONLY 60/50 FPS depending on the region code set by the onboard jumpers, so it simply can't crank out more frames than it's supposed to. :)
Ed Oscuro
02-02-2004, 07:10 PM
Yeah, but you still have to deal with the CPU trying to push stuff around too fast. Even on the Genesis you have to budget CPU time for AI and such; the stuff sent to the VDP must be completely drawn frames. No Sinclair-Hobbit style drawing frames onscreen here :)
jonjandran
02-02-2004, 07:49 PM
@ Epicenter
Pm me your address and I'll send you a Snes to work on.
It looks like crap, but it works. :D
hu6800
02-03-2004, 04:08 AM
Question.
What purpose has this thing you are doing? And why did I just word it like that?
Anyway. Does it do anything to game play? What is its purpose?
He is being creative.. how many other people you see besides D-Lite
making moves with the hardware?
You get my props dude... can you do a TG16 too?
Jasoco
02-03-2004, 04:16 AM
Question.
What purpose has this thing you are doing? And why did I just word it like that?
Anyway. Does it do anything to game play? What is its purpose?
He is being creative.. how many other people you see besides D-Lite
making moves with the hardware?
You get my props dude... can you do a TG16 too?I was just ASKING. :hmm:
It's not like I came in and said, "OMFG? WTF AR U DO THAT 4? THERE NO PRACTICLE RESON 2 DO THAT!!!!11!!!1LOLOLOL!!!!!!"
Epicenter
02-03-2004, 10:37 AM
*Shrug* If anyone wants to donate a TG-16/PCEngine/Whatever, I'd be happy to give it a shot.
dr mario kart
02-03-2004, 07:28 PM
I can't wait for your write-up on how to do this, and I hope it will have generel applications for the snes as well.
Jorpho
02-03-2004, 10:03 PM
Don't you have to completely replace the existing processor with a freshly-purchased, faster version?
Epicenter
02-03-2004, 10:45 PM
Nope. If you DID replace the CPU with a faster one, you would have the chip running at the SAME speed because that is all the system expects. Overclocking is the process of pushing existing hardware beyond its original settings, pushing it to its limits, so to speak.
Ze_ro
02-04-2004, 01:13 AM
So are you sticking a new oscillator in there? Or are there clock multipliers on the Genesis already that you can make use of?
--Zero
Epicenter
02-04-2004, 03:09 AM
No multipliers that I know of, just divisors. There are a few methods you can use. I'll be posting the simple 'how-to' writeup tomorrow or Thursday, when it's ready I'll post it in this topic, and edit my original post with it. Once I have the rest of the parts I need to push it to 14 MHz, 16 MHz, and perhaps a bit higher, I'll add that, too. I have the information ready, just need to get all the photos ..
SoulBlazer
02-04-2004, 03:35 AM
Well, I don't have those systems anymore, but I commend you on doing a wonderfull project.
Now if only the 'faster disc loading' option that my PS2 has for PS1 games actually WORKED...... :o
Laggerzero
02-19-2004, 11:33 PM
Clips back up now. I had to search through my backed up files and took awhile to find them.
EDIT: forgot the link x_x http://www.epicgaming.net/hardware/md_oc/