Genesis Emulation Reached Its Peak?


DaveC

Internal Development
Joined
Mar 4, 2004
Messages
9,208
I read this in a thread here (one of the flame war threads) from Robster That basically indicates that genesis speed has reached it's technical limits on GP32 and will get no faster.

"Rlyeh and I have worked for weeks to get fGen32 as fast as it can be. Sure, it doesn't run at fs0 with sound at 133MHz, but that is not because we said "166MHz is good, we don't need to make it any faster"... we have tried everything we know to make it faster, and what you see with fGen32 now is the best that we can possibly do."


Does this mean the GP32 will never be able to do full sound support with Z80? Robster is it true? :(
 
why wouldn't it be able to have full sound support
why rlyeh said was about speed and had nothing to do with sound
 
Heh, I wondered at the time whether anyone would pick up on that... DaveC, you're so pedantic ;)

No, development hasn't stopped, although it has slowed down a bit at the moment - as always, these things go in fits and starts. It was pretty feverish for a while there, it's natural to stand back and take stock before diving back in again!

I don't think there are any 50% speedups to be found in there any more, but there should be little tweaks we can do to help it along. Z80 sound will happen, and I think we can reasonably expect that will slow the emulator down (at least initially).

Who knows what the future holds? All I know is that there will be a future :)
 
Given the latest release's performance at 166MHz/FS1/no sound (~135% speed), I'd think there'd be room for Z80 support and (near/) full speed with a frameskip or two.

I take it all the mods are asleep/away at this hour, so it won't be making the move to General Talk for a little while.

EDIT: And there it goes...
 
I think he was refering to where they are up to at the current time... and was also trying to illustrate they make the emulator as fast as they can... and not just to suit a certain mhz...

I am sure once the emulator is finished they will try to optimise it to run at a slower clock speed if possible...
 
Robster posted on Jul 15 2004 at 03:26 AM said:
Heh, I wondered at the time whether anyone would pick up on that... DaveC, you're so pedantic ;)

No, development hasn't stopped, although it has slowed down a bit at the moment - as always, these things go in fits and starts. It was pretty feverish for a while there, it's natural to stand back and take stock before diving back in again!

I don't think there are any 50% speedups to be found in there any more, but there should be little tweaks we can do to help it along. Z80 sound will happen, and I think we can reasonably expect that will slow the emulator down (at least initially).

Who knows what the future holds? All I know is that there will be a future :)
I didn't suggest that developement has stopped. I was just referring to the fact that you were implying that the *tecnical* speed limit may have been reached (due to hardware, not coding). Obviously there are some things like compatibility that is an issue (some games don't run on fgen that do on Gigadrive) that still can happen.

The work so far is fantastic.

For sound is there a way that maybe it could be simulated rather than having to emulate the yamaha chip? That may speed things up. It may not sound as good but beeps and boops would still be better than silence, or true sound w FS 5. What do you think?
 
Last edited by a moderator:
diablo2 posted on Jul 15 2004 at 03:26 AM said:
why wouldn't it be able to have full sound support
why rlyeh said was about speed and had nothing to do with sound
Because sound will slow it down obviously so speed obviously has everything to do with sound.

Fgen would have to run at FS0 at 133Mhz *now* to have the possibility to have full sound in the future. This way when Z-80 sound is added and the emu speed drops down the OC to 166 would speed it back up again to where it should be.

Rememember, as it is now the emu is bypassing an entire CPU (Z-80). Not having to emulate that extra CPU allows alot more speed. When all of that extra CPU time is gobbled up with Z-80 CPU emulation things could get dreadfully slow.
 
Last edited by a moderator:
Well, actually, you might be surprised, going on what Rlyeh said a week or so ago in irc - namely that Reesy's Z80 core was about as efficient as it damn well could be. Before pointing out that it ran at full speed at 4MHz. So really, if it integrates properly (and this is where problems were arising, iirc) the speed difference should be akin to that lost between 166 and 160Mhz - fairly negligable. Which is nice.

That is, of course, if it doesn't for some reason have to be made slower in order to integrate it properly...

Anyone who's more up to date on info, by all means correct the hell out of me :)
 
One really simply optimization to get it running at fs0 is to interlace the frames. What I mean is each frame draw alternative vertical scan lines for sprites background and blitting. Looks a bit crazy on fast moving games (sonic e.t.c) but certainly will get it running at fs0 and looks good on slow moving games (I've tried this on previous versions of genemu and it works a treat!).
 
Hiya Moz!!

it's wickedly hot - and it's still winter - hahah never coming back to uk :)

ZJ
 
ZardozJones posted on Jul 15 2004 at 07:32 AM said:
One really simply optimization to get it running at fs0 is to interlace the frames. What I mean is each frame draw alternative vertical scan lines for sprites background and blitting. Looks a bit crazy on fast moving games (sonic e.t.c) but certainly will get it running at fs0 and looks good on slow moving games (I've tried this on previous versions of genemu and it works a treat!).
Yep it worked great in Genemu. I think rlyeh should implement this. I barely noticed it in the sonic games even. Is it hot for ya Zardoz? Its quite cool here on the Gold Coast sometimes very cold lol. Getting warmer though.
 
Last edited by a moderator:
Personally, I don't think it needs to go any faster and if it has reached its speed peak, that's fine by me. The games that are playable on FGen are perfectly playable and the only thing missing is sound and more compatability, speed isn't an issue for me at least, anymore.
 
DaveC posted on Jul 15 2004 at 03:07 AM said:
I read this in a thread here (one of the flame war threads) from Robster That basically indicates that genesis speed has reached it's technical limits on GP32 and will get no faster.

"Rlyeh and I have worked for weeks to get fGen32 as fast as it can be. Sure, it doesn't run at fs0 with sound at 133MHz, but that is not because we said "166MHz is good, we don't need to make it any faster"... we have tried everything we know to make it faster, and what you see with fGen32 now is the best that we can possibly do."


Does this mean the GP32 will never be able to do full sound support with Z80? Robster is it true? :(


Crickey, it's only been like a month... give us some time! ...Rome wasn't built in a day!

There's no way really to know at this point... and for a start it largely depends on the game.

The only people who really have any idea are emulation authors, and if you want my best guess I would say that the GP32 at 132mhz is typically capable of running a Megadrive without sound at 60fps, and with sound at between 30fps and 60fps.

(That would be purely my best guess. If you want me to go through my logic with execution times and figures etc, I can do...)
 
Last edited by a moderator:
Tobriand posted on Jul 15 2004 at 06:26 AM said:
Before pointing out that it ran at full speed at 4MHz. So really, if it integrates properly (and this is where problems were arising, iirc) the speed difference should be akin to that lost between 166 and 160Mhz - fairly negligable.

Heh, I think you might have got your wires slightly crossed there ;-)
The *original* Z80 runs at 4mhz (well 3.57954mhz to be exact).
An *emulated* Z80 would clearly not run at 4mhz, the overhead is 5x or 10x as a ballpark for the original chip speed.

Otherwise a 7.67mhz Megadrive would run on a 7.67mhz GP32 wouldn't it ;-)
 
Last edited by a moderator:
Just out of interest... how does the processor type affect the required overhead? The ARM9 in a gp32_console is a 32bit RISC, so to emulate a 4mhz Z80 (8 bit) would require about 5x (ie effectively an ARM9 running at 20mhz) and a 8mhz 68000 (16 bit) would require about 10x (ie effectively an ARM9 running at 80mhz)... Is that anything like right?

I guess what I am asking is whether a 16bit processor has an overhead about twice that of an 8bit?

J(ohn)
 
fdave posted on Jul 15 2004 at 11:27 AM said:
DaveC posted on Jul 15 2004 at 03:07 AM said:
I read this in a thread here (one of the flame war threads) from Robster That basically indicates that genesis speed has reached it's technical limits on GP32 and will get no faster.

"Rlyeh and I have worked for weeks to get fGen32 as fast as it can be. Sure, it doesn't run at fs0 with sound at 133MHz, but that is not because we said "166MHz is good, we don't need to make it any faster"... we have tried everything we know to make it faster, and what you see with fGen32 now is the best that we can possibly do."


Does this mean the GP32 will never be able to do full sound support with Z80? Robster is it true? :(


Crickey, it's only been like a month... give us some time! ...Rome wasn't built in a day!

There's no way really to know at this point... and for a start it largely depends on the game.

The only people who really have any idea are emulation authors, and if you want my best guess I would say that the GP32 at 132mhz is typically capable of running a Megadrive without sound at 60fps, and with sound at between 30fps and 60fps.

(That would be purely my best guess. If you want me to go through my logic with execution times and figures etc, I can do...)
I am just going by what Rlyeh and Robster said. I am no coder so don't know But I would think that Rlyeh/Robster would know as they are the coders.
 
Last edited by a moderator:
fdave posted on Jul 15 2004 at 11:51 AM said:
Tobriand posted on Jul 15 2004 at 06:26 AM said:
Before pointing out that it ran at full speed at 4MHz. So really, if it integrates properly (and this is where problems were arising, iirc) the speed difference should be akin to that lost between 166 and 160Mhz - fairly negligable.

Heh, I think you might have got your wires slightly crossed there ;-)
The *original* Z80 runs at 4mhz (well 3.57954mhz to be exact).
An *emulated* Z80 would clearly not run at 4mhz, the overhead is 5x or 10x as a ballpark for the original chip speed.

Otherwise a 7.67mhz Megadrive would run on a 7.67mhz GP32 wouldn't it ;-)
You'd think so, but that's what I remember from IRC. 4MHz of CPU time to emulate a chip at ~3.58MHz certainly seemed to be what he was saying. It resulted in a few impressed gasps from various people on at the time. Problem was in the integration of it - for some reason it was refusing to do so properly.

However it is possible I'm getting slightly mixed up. It might have been 5MHz or something. Either way, though, its a damn efficient core...
 
Last edited by a moderator:
ZardozJones posted on Jul 15 2004 at 08:34 AM said:
Hiya Moz!!

it's wickedly hot - and it's still winter - hahah never coming back to uk :)

ZJ
Hiya Dude! Nice to see you still browse the boards from tiem to time :D


You gotta come back for a shot while - we still gotta go out and get pissed again :p

Cheers!
 
Last edited by a moderator:
Back
Top