Best Genesis/Mega Drive emulator for DC?

This forum is for discussion pertaining to homebrew and indie software for the Dreamcast, such as homebrew games, emulators/interpreters, and other homebrew software/applications. Porting requests and developmental ideas are not to be made here; you can make those here. If you need any help burning discs for homebrew software, this is the place to ask as well.
Post Reply
jessman
DCEmu Super Poster
DCEmu Super Poster
Posts: 1434
Joined: Wed Jan 29, 2003 10:15 pm
Location: At the end of the stage with a MASSIVE arsenal!
Has liked: 0
Been liked: 0
Contact:

Post by jessman » Tue Jul 25, 2006 1:38 pm

DcSteve wrote:many graphical issues are fixed, yet there are some new ones. Sparkster has completly garbled gfx with both cores. This problem did not occur in pvr3. Another semi-issue is that sometimes when you exit back to the menu, the noise from the last secs of the game you are exiting is shreaking out.
Sparkster runs fine for me. Are you sure it's not your rom?
Image

Spreading his inquiries all over the net!

<^_^>
Warmtoe
DC Developer
DC Developer
Posts: 453
Joined: Thu May 16, 2002 8:29 am
Location: ice88's house
Has liked: 0
Been liked: 0
Contact:

Post by Warmtoe » Tue Jul 25, 2006 2:05 pm

BlackAura wrote:
Also, what's with that compiler flag (-no-gcse) that Quzar found? Would it increase C68K & CZ80 performance noticably ?
I dunno. It potentially speeds up code that uses computed gotos, which C68K uses extensively. The only way is to try it out.
OK - I put -fno-gcse (which I think is the right way to specify this flag) and rebuilt everything, including C68K and CZ80 - It still works, but how do I tell if it's faster?

What wasn't running fast enough before that now potentially would be?!?!
DcSteve
Modder Of Rage
Modder Of Rage
Posts: 805
Joined: Mon Mar 18, 2002 12:41 pm
Location: Midwest
Has liked: 0
Been liked: 0
Contact:

Post by DcSteve » Tue Jul 25, 2006 3:08 pm

One way- If sonic 3+knuckles has no slowdown in the char select screen.
Check out the beats of rage community at http://borrevolution.vg-network.com/
Warmtoe
DC Developer
DC Developer
Posts: 453
Joined: Thu May 16, 2002 8:29 am
Location: ice88's house
Has liked: 0
Been liked: 0
Contact:

Post by Warmtoe » Tue Jul 25, 2006 3:09 pm

OK - did more fiddlin....

The compiler option, improved the region select, made it possible to have FPS again (although, nothing switches it on).

The all important gpwt.bin:- http://homepage.ntlworld.com/ian_edward ... 706.d1.zip

The source (delta from the previously posted source):- http://homepage.ntlworld.com/ian_edward ... d1.src.zip

Sorry for wastin' those CDRs.
User avatar
Juan
DCEmu Commie
DCEmu Commie
Posts: 3343
Joined: Sun Jun 15, 2003 11:47 pm
Location: Montevideo
Has liked: 15 times
Been liked: 0

Post by Juan » Tue Jul 25, 2006 3:18 pm

I don't mind being spoiled with daily builds :mrgreen:
DcSteve
Modder Of Rage
Modder Of Rage
Posts: 805
Joined: Mon Mar 18, 2002 12:41 pm
Location: Midwest
Has liked: 0
Been liked: 0
Contact:

Post by DcSteve » Tue Jul 25, 2006 3:32 pm

^Definetly 2nd that^
Check out the beats of rage community at http://borrevolution.vg-network.com/
User avatar
Quzar
Dream Coder
Dream Coder
Posts: 7489
Joined: Wed Jul 31, 2002 12:14 am
Location: Miami, FL
Has liked: 0
Been liked: 3 times
Contact:

Post by Quzar » Tue Jul 25, 2006 3:34 pm

For the -fno-gcse, it is important to performance to make sure to only have it on when compiling c68k and cz80, otherwise you will gain performance in them and lose it in other things. Sorry that I forgot to mention that prior.
"When you post fewer lines of text than your signature, consider not posting at all." - A Wise Man
Warmtoe
DC Developer
DC Developer
Posts: 453
Joined: Thu May 16, 2002 8:29 am
Location: ice88's house
Has liked: 0
Been liked: 0
Contact:

Post by Warmtoe » Tue Jul 25, 2006 4:23 pm

It makes perfect sense - and I was thinking it when I was doing it - but then I left it in place for everything (as you can see from the Makefile).

It's simple enough to change the makefiles for c68k and cz80 only - since they are both built with separate build rules.

The other thing, I'm using the C++ compiler (as opposed to the C compiler) - only because I read somewhere that it gives more efficient code, does that option work for the C++ compiler too?
jessman
DCEmu Super Poster
DCEmu Super Poster
Posts: 1434
Joined: Wed Jan 29, 2003 10:15 pm
Location: At the end of the stage with a MASSIVE arsenal!
Has liked: 0
Been liked: 0
Contact:

Post by jessman » Tue Jul 25, 2006 4:34 pm

Man. All of this stuff is so awsome. Thanks for updating things for us.
Image

Spreading his inquiries all over the net!

<^_^>
Warmtoe
DC Developer
DC Developer
Posts: 453
Joined: Thu May 16, 2002 8:29 am
Location: ice88's house
Has liked: 0
Been liked: 0
Contact:

Post by Warmtoe » Tue Jul 25, 2006 4:37 pm

NP - all ends on Thursday, since I'm off on vacation (i.e. away from my machines!)

But since the source is out, maybe someone else will take up the reins for a while!
DcSteve
Modder Of Rage
Modder Of Rage
Posts: 805
Joined: Mon Mar 18, 2002 12:41 pm
Location: Midwest
Has liked: 0
Been liked: 0
Contact:

Post by DcSteve » Tue Jul 25, 2006 4:43 pm

i seriously doubt that since nobody has ever done much to it besides you and BA in the first place till now. Looks likes its back to silent development soon. Thanks for everything you have done. SEEEEEEGGAAAAA
Check out the beats of rage community at http://borrevolution.vg-network.com/
User avatar
Quzar
Dream Coder
Dream Coder
Posts: 7489
Joined: Wed Jul 31, 2002 12:14 am
Location: Miami, FL
Has liked: 0
Been liked: 3 times
Contact:

Post by Quzar » Tue Jul 25, 2006 5:08 pm

Warmtoe wrote:It makes perfect sense - and I was thinking it when I was doing it - but then I left it in place for everything (as you can see from the Makefile).

It's simple enough to change the makefiles for c68k and cz80 only - since they are both built with separate build rules.

The other thing, I'm using the C++ compiler (as opposed to the C compiler) - only because I read somewhere that it gives more efficient code, does that option work for the C++ compiler too?
As far as I know from everything I have ever tested gcc gives MUCH more optimized code for the sh4 than g++ does. I remember seeing as much as a 1/3 speed increase in certain ports simply by renaming *.cpp to *.c . That being said though, I also don't know if -fno-gcse works with g++, but I would strongly suggest recompiling with the C compiler and seeing if there is any difference. If there is any difference in the outputted binary, the C one should be either smaller or faster.
"When you post fewer lines of text than your signature, consider not posting at all." - A Wise Man
Warmtoe
DC Developer
DC Developer
Posts: 453
Joined: Thu May 16, 2002 8:29 am
Location: ice88's house
Has liked: 0
Been liked: 0
Contact:

Post by Warmtoe » Tue Jul 25, 2006 5:33 pm

OK - well, all of that is simple to switch - check out dreamcast-x\Makefile you can choose which compiler to use in there.

And take the -fno-gcse off the main compile options and put it on the 2 rules for cz80 and c68k subdirectories.
Warmtoe
DC Developer
DC Developer
Posts: 453
Joined: Thu May 16, 2002 8:29 am
Location: ice88's house
Has liked: 0
Been liked: 0
Contact:

Post by Warmtoe » Tue Jul 25, 2006 5:36 pm

And I think setting FM_LFO_SUPPORT to 0 is fm.h might work.

It seems to continue to sound alright - but the code with that set seems far simpler - I'm probably missing something obvious (like having that option set to 0 is wrong in the extreme) but...
johnson
DCEmu Junior
DCEmu Junior
Posts: 39
Joined: Sat Jul 22, 2006 7:21 pm
Has liked: 0
Been liked: 0

Post by johnson » Tue Jul 25, 2006 6:36 pm

I hope this helps:

A few games from this last release run full speed properly. i.e Street Fighter 2 CE. This game had slow down in the release from yesterday, but today it runs imaculate. So if you are trying to figure out if todays compile works faster, IT DOES.
jessman
DCEmu Super Poster
DCEmu Super Poster
Posts: 1434
Joined: Wed Jan 29, 2003 10:15 pm
Location: At the end of the stage with a MASSIVE arsenal!
Has liked: 0
Been liked: 0
Contact:

Post by jessman » Tue Jul 25, 2006 7:06 pm

Uh...add what to where? Sorry...but I don't understand what you guys are currently talking about. :P I'm dumb.
Image

Spreading his inquiries all over the net!

<^_^>
BlackAura
DC Developer
DC Developer
Posts: 9951
Joined: Sun Dec 30, 2001 9:02 am
Has liked: 0
Been liked: 0

Post by BlackAura » Tue Jul 25, 2006 7:35 pm

DcSteve wrote:One way- If sonic 3+knuckles has no slowdown in the char select screen.
That slowdown is caused by the PVR, not the CPU. No ammount of speedups in the CPU emulation could ever speed that up.

Using 320x240 mode used to fix that. I don't know if WT's builds are using 320x240 or 640x480. In the last build I gave Warmtoe (the one these builds are based on) 320x240 looked fuzzy because of the deflicker filter. My current builds use 320x240 and disable the deflicker filter, so they look fine.
Warmtoe wrote:And I think setting FM_LFO_SUPPORT to 0 is fm.h might work.

It seems to continue to sound alright - but the code with that set seems far simpler - I'm probably missing something obvious (like having that option set to 0 is wrong in the extreme) but...
It'll work for most games, because most games don't use the LFO. For those games that do use the LFO, it'll make them sound weird. It's mostly used for vibrato / tremolo effects, I think.

I've not really traced through the FM code enough to know what effects the LFO emulation has on performance. I'm not sure that it does the LFO calculations if the game isn't using the LFO, but it may still have a performance impact. There has to be a reason that switch is in there, after all.
DcSteve
Modder Of Rage
Modder Of Rage
Posts: 805
Joined: Mon Mar 18, 2002 12:41 pm
Location: Midwest
Has liked: 0
Been liked: 0
Contact:

Post by DcSteve » Tue Jul 25, 2006 8:13 pm

OK, so I just tried the latest version with the C68k CZ80 Optimization. THIS VERSION IS FAR BETTER. Many games run much much smoother. This last build should be newsposted for its accomplishments. THANK YOU BA AND WARMTOE. Ive been waiting years for this build. Also, thank you quzar for your information contribution.
Check out the beats of rage community at http://borrevolution.vg-network.com/
User avatar
Dreamcast4life
DCEmu Nutter
DCEmu Nutter
Posts: 846
Joined: Mon May 30, 2005 12:24 pm
Location: monticello,Indiana
Has liked: 0
Been liked: 0

Post by Dreamcast4life » Tue Jul 25, 2006 8:32 pm

I try to use "selfboot" to make a NRG, and after the IP is found it fails and gives me a bunch of letters and numbers kinda like "009EF0x444K34x223KLJ" something like that,what would be the best way to make this selfboot?
Have you played dreamcast today?
turnerl
DCEmu Cool Newbie
DCEmu Cool Newbie
Posts: 10
Joined: Wed Apr 28, 2004 9:10 pm
Has liked: 0
Been liked: 0

Post by turnerl » Tue Jul 25, 2006 10:03 pm

new build is sooo much quicker thanks guys!
Post Reply