Effective emulator design.

Announce new emulators, discuss which games run best under each emulator, and much much more.

Moderator: General Mods

h4tred

Post by h4tred »

Like some of the others guys said, why not do a 'proper/accurate' GBA emulator from scratch? It may fill the gap between no$GBA and VBA. Of course, with your mastering of all those shaders and filters, you could probably create an awesome feature emulator to boot.
t's awfully easy to trust No$GBA as being more accurate when the source isn't out. VBA definitely makes a very significant attempt at accuracy - no, it doesn't emulate things like prebuffer coherency or VRAM bus contention but I doubt you'll find it makes a difference for anything whatsoever (save for demos written solely to show an emulator isn't correct, ie the equivalence of pissing contests in the emulation world).
Hence there's not much point. Unless you rewrite VBA from scratch...but then it won't be VBA. Sort of. And then we run into the issues Exophase ran into with his emu. With a DS emu, you also run into the massive noob issues about Pokemon and crap. Why not just blacklist the ROMs using SHA1 or something :/, but bleh. People don't care these days. PS2/GC emulation is all thats popular now basically, and those emulators are Hack City.

I'm still trying to work out the basic design of the emu though.


PS: Doing shader and filter programming is not all that special. Anyone can do it if they can put thier mind to it. I am nothing special at all. So what if I write shaders and crack stuff?
I.S.T.
Zealot
Posts: 1325
Joined: Tue Nov 27, 2007 7:03 am

Post by I.S.T. »

I don't think anyone was suggesting you continue VBA, rather a brand new GBA emulator.

I'd say GBA emulation is still popular, as are the other kinds. It's just not talked about as much...

Edit: In the end, you should make the one you want to make. I'm just giving out suggestions.
ShadowFX
Regular
Posts: 265
Joined: Thu Jul 29, 2004 8:55 am
Location: The Netherlands

Post by ShadowFX »

h4tred wrote:With a DS emu, you also run into the massive noob issues about Pokemon and crap. Why not just blacklist the ROMs using SHA1 or something :/, but bleh.
I'm sure it's not easy, but you should ignore all that nonsense... and put your energy into development and the fun that you can find that comes with it.
h4tred wrote:People don't care these days. PS2/GC emulation is all thats popular now basically, and those emulators are Hack City.
It's probably because those are relatively newer systems that people actually still play on and most likely has a much larger end-user base.

I guess Hack City still because those systems are even more complex than retro systems. Therefore, developers tend to use hacks or HLE to bypass certain functions that are not understood yet. The only downside to that is when the emulator is not being developed anymore, there's little chance that it'll become 'hackfree'/more accurate/etc. afterwards due to its complexity and or lack of documentation. Buuut, I'm sure you know that already :)
h4tred wrote:PS: Doing shader and filter programming is not all that special. Anyone can do it if they can put thier mind to it. I am nothing special at all. So what if I write shaders and crack stuff?
I was actually giving you a compliment.
[i]"Change is inevitable; progress is optional"[/i]
h4tred

Post by h4tred »

I was actually giving you a compliment.
and I don't accept compliments well. In fact I prefer criticism to compliments. At least with the criticism I can work at it. :/ With compliments, they leave me feeling weird. But still, my point remains. Even you with some spare time on your hands could learn HLSL to the point where you can do things like HDR and SSAO shaders easily.
I'd say GBA emulation is still popular, as are the other kinds. It's just not talked about as much...
..Guess you have a point.
byuu

Post by byuu »

As the author of my own emulators, even I can't verify that it's doing things right by looking at the source code. I may think it's working, but that's not reliable. Test programs are the only reasonably-reliable of verifying an emulator's operation (and they can be re-run anytime you change the source code)

...

My point is that for the most part, determination of an emulator's accuracy doesn't require its source code.
A very good point. Yeah, especially for interrupt timing, I had to write hundreds of tests to make sure every edge case worked properly.

But for general 'accuracy' measurements, there are very few test programs, and most people rely on whether or not commercial software works correctly. Without publicly listing specific examples, I've found interesting bugs in various programs (including mine) after trying to understand why they worked correctly. Always fun when there are actually two bugs, but one actually avoids triggering the other.

To really target those test ROMs, it helps to be able to see what kind of weaknesses the code has. But I do concede mostly to your point that test ROMs are superior, especially for regression testing.
Hence there's not much point.
That depends. Do you want to write a popular emulator, or do you just want to do something you enjoy for fun? I'm sure nine in ten NES emu devs would be flattered just to hear that one person uses their emulator.
Awakened
Rookie
Posts: 33
Joined: Sun Mar 25, 2007 3:04 am

Post by Awakened »

The NeoGeo Pocket Color could use a new emulator. Neopop doesn't work so well in Vista.
h4tred

Post by h4tred »

or do you just want to do something you enjoy for fun?
When I am writing it, I am not writing it for fun. I am writing it to fufill a need. It should be obvious all signs are pointing to the GBA as there is zero emulator out there which has 100% clean code, accurate, non bloated and feature rich. :/ VBA at least tries to be compatible, yet its size is a issue (and lets not debate over things like HD size, size still matters.:roll: ) . With gpPSP, the author is unwilling to make future versions open source. With No$GBA, there is zero audio interpolation and the author is nowhere to be found. With ReasonableGBA, the source code is a utter nightmare.

See the need? And lets not forget the SGB issue. :?
Exophase
Hazed
Posts: 77
Joined: Mon Apr 28, 2008 10:54 pm

Post by Exophase »

gpSP, thanks ;P

This is the first time I've heard of this ReasonableGBA. I got interested when I saw dynarec but I guess it doesn't work.

What's strange is that the author says that few GBA games use the legacy Gameboy audio chip that he wasn't emulating. I actually talked to another GBA emu author who said the same thing. I'm not sure I've played a GBA game that DOESN'T use GB audio.
I.S.T.
Zealot
Posts: 1325
Joined: Tue Nov 27, 2007 7:03 am

Post by I.S.T. »

h4tred wrote:
or do you just want to do something you enjoy for fun?
When I am writing it, I am not writing it for fun. I am writing it to fufill a need. It should be obvious all signs are pointing to the GBA as there is zero emulator out there which has 100% clean code, accurate, non bloated and feature rich. :/ VBA at least tries to be compatible, yet its size is a issue (and lets not debate over things like HD size, size still matters.:roll: ) . With gpPSP, the author is unwilling to make future versions open source. With No$GBA, there is zero audio interpolation and the author is nowhere to be found. With ReasonableGBA, the source code is a utter nightmare.

See the need? And lets not forget the SGB issue. :?
Interesting point of view. :)

The problem is N64, PSX, GBA and other older emulations all have big problems. You just gotta pick the one that speaks to you the most, I guess.
h4tred

Post by h4tred »

gpSP, thanks ;P
Thanks for the clarification.

Its just I really don't want to step on your toes if I look at your code for some ideas. Plus, you seem adamant about it not being open source, so I really don't wanna be a bother like that other person was to you. And plus, I rather not face licensing issues.

The problem is N64, PSX, GBA and other older emulations all have big problems.
Yes:

N64:
* Core emulation has now mostly stagnated, PJ64 1.7 included. So the best core emulation is proprietary and almost dead.
* Only solution for best compatibility with support graphics wise, is via a convolted wrapper/plugin set. And even that has issues, since depth buffer to texture is not supported in that combination for Majora's Mask LoT. And even then, to get decent support you need a antiquated card.
* Only current core emulation is with MESS and that is running into major issues
* The best software graphics solution is donationware/commercial. Second best has major issues with speed.
* The emulation itself is on life support

GBA:
* No$GBA seems non maintained, has several longstanding issues, and the only support nowadays is by 3rd party code injection hacks.
* VBA is bloated. VBA-M has not had much attention. And has issues with its codebase.
* ReasonableGBA's code is a eyesore
* gpSP will be proprietary, because of blatant code theft
* BoycottAdvance is dead
* CowBite is non maintained
I.S.T.
Zealot
Posts: 1325
Joined: Tue Nov 27, 2007 7:03 am

Post by I.S.T. »

Never heard of CowBite before...
Panzer88
Inmate
Posts: 1485
Joined: Thu Jan 11, 2007 4:28 am
Location: Salem, Oregon
Contact:

Post by Panzer88 »

I would shoot for the N64, It's the more insane undertaking but I have the upmost faith in you. Plus being the first system to use a graphics accelorator (first mainstream console right) I think that would be a good match for someone like you who knows a decent amount about that sort of thing.
[quote="byuu"]Seriously, what kind of asshole makes an old-school 2D emulator that requires a Core 2 to get full speed? [i]>:([/i] [/quote]
powerspike
Regular
Posts: 236
Joined: Mon Nov 21, 2005 3:43 am

Post by powerspike »

h4tred wrote: GBA:
* No$GBA seems non maintained, has several longstanding issues, and the only support nowadays is by 3rd party code injection hacks.
* VBA is bloated. VBA-M has not had much attention. And has issues with its codebase.
* ReasonableGBA's code is a eyesore
* gpSP will be proprietary, because of blatant code theft
* BoycottAdvance is dead
* CowBite is non maintained
I'm surprised you didn't mention the mess gba driver. Seems he needs help, but I know a lot of people don't like using mess much.

http://rbelmont.mameworld.info/?page_id=214
Gil_Hamilton
Buzzkill Gil
Posts: 4294
Joined: Wed Jan 12, 2005 7:14 pm

Post by Gil_Hamilton »

Panzer88 wrote:I would shoot for the N64, It's the more insane undertaking but I have the upmost faith in you. Plus being the first system to use a graphics accelorator (first mainstream console right) I think that would be a good match for someone like you who knows a decent amount about that sort of thing.
Pretty sure the PS1 was the first home system with 3D hardware.
Not very GOOD 3D hardware, mind you, but... it had it.
I.S.T.
Zealot
Posts: 1325
Joined: Tue Nov 27, 2007 7:03 am

Post by I.S.T. »

It was damn good for 1994 hardware!

As for MESS.... Fuck 'em as long as they have Cowering supporting/working on it.
Gil_Hamilton
Buzzkill Gil
Posts: 4294
Joined: Wed Jan 12, 2005 7:14 pm

Post by Gil_Hamilton »

I.S.T. wrote:It was damn good for 1994 hardware!

As for MESS.... Fuck 'em as long as they have Cowering supporting/working on it.
Saturn's was better. If nothing else, it didn't have the severe geometry bugs that led to crazy things like dancing stripes in the street.
I.S.T.
Zealot
Posts: 1325
Joined: Tue Nov 27, 2007 7:03 am

Post by I.S.T. »

It was also insane to program. IIRC, it wasn't really even 3D...
Gil_Hamilton
Buzzkill Gil
Posts: 4294
Joined: Wed Jan 12, 2005 7:14 pm

Post by Gil_Hamilton »

I.S.T. wrote:It was also insane to program. IIRC, it wasn't really even 3D...
I know it was a pain on account of the massive pile of chips that all had to be addressed independently. Beyond that... I dunno?
powerspike
Regular
Posts: 236
Joined: Mon Nov 21, 2005 3:43 am

Post by powerspike »

I.S.T. wrote:It was damn good for 1994 hardware!

As for MESS.... Fuck 'em as long as they have Cowering supporting/working on it.
I wasn't really thinking of that, actually it was more along the lines of people having troubling getting games to run and the facct that most of the emulators are out preformed by stand alone ones. As for the cowering thing I checked the source code and all the rom checksums are stored in some special hsi format in plain text. There's nothing stopping someone from writing a converter from say the no-intro sets. Actually I'd be happy if someone made one since I don't like goodtools at all either.
I.S.T.
Zealot
Posts: 1325
Joined: Tue Nov 27, 2007 7:03 am

Post by I.S.T. »

He pays for their site too, IIRC, and he contributes in some other way.
powerspike
Regular
Posts: 236
Joined: Mon Nov 21, 2005 3:43 am

Post by powerspike »

I.S.T. wrote:He pays for their site too, IIRC, and he contributes in some other way.
Haha really? Jezz, well it'd make for a nice evilmess project. >=)
ArtVandelae
New Member
Posts: 5
Joined: Thu Jan 03, 2008 7:58 pm

Post by ArtVandelae »

For what it's worth, I'll toss in a vote for either N64 or PSX. Most stand-alone emulators for both are currently old plug-in based models, pSX being the exception and it's currently closed source. The only real progress being made on the open source front for these systems is in MESS and for various reasons (MooglyGuy needing the approval of Nintendo's legal department on the N64 side and smf being smf on the PSX side) both are moving very slowly.
I.S.T.
Zealot
Posts: 1325
Joined: Tue Nov 27, 2007 7:03 am

Post by I.S.T. »

smf being smf? What does that mean?
ArtVandelae
New Member
Posts: 5
Joined: Thu Jan 03, 2008 7:58 pm

Post by ArtVandelae »

I.S.T. wrote:smf being smf? What does that mean?
To quote one of the MAME developers "Nobody knows what smf is up to and that's the way he likes it".
I.S.T.
Zealot
Posts: 1325
Joined: Tue Nov 27, 2007 7:03 am

Post by I.S.T. »

Ah, one of those types.

and Moogly Guy is that much in trouble with Nintendo? Wow. I'll have to check out his blog again...
Post Reply