No more features!

8/5/2010 12:47:11 AM

By RetroRalph

I've been chipping away at recoding large swathes of RetroCopy's interface and general core design and as it always seems to be when you do such things, new features have emerged.

Today in particular I've been cleaning up the 3D Game Room interface, and all the new graphics options to do with the lighting shaders. While I was there I also decided to add a "console" of sorts that will display various information about your system and what you've done in RetroCopy. Basically as a way to help users report problems and also so that I can get a better grasp of driver issues and things of this nature.



While trying to find information about VISTA/Windows 7 and determining the audio device used, I stumbled upon some information about WASAPI, which stands for "The Windows Audio Session API" . Audio on Windows Vista and 7 is different to how it was on XP. If you use the same "DirectSound" engine you will get worse quality and latency on these newer operating systems than XP. Vista basically sits in the middle and does a bit of voodoo magic with the sound you pass it, causing delays and higher CPU usage.

Microsoft basically want you to recode your engine to use their newer API. I had looked at WASAPI before but put it off due to relying upon DirectSound3D for the audio engine. However with the switch to the custom RetroCopy 3D sound engine not only is the quality and feature list better but it's much easier to just use any API I want with it. So a few minutes later the WASAPI interface was up and running in RetroCopy.

Basically this means for those of us on Vista or Windows 7 we will now have better quality and better latency than Windows XP users. I'll be leaving the other option in there for any compatibility issues and also so that Windows 2000/XP users have no issues, but at least it's a good reason to upgrade to Windows 7. In regards to the latency, it's possible to only have about 20 milliseconds of total latency, compared to the previous 50-60ms or ~40-50ms on Windows XP, so it is much improved.

The difference is clear to my ears, so it was a good, quick feature I added in the end. :) The anniversary for "one year public" of RetroCopy is also coming up in a few days. I'm going to release a teaser video for v0.800 on that date as I don't think it will be quite ready by then. But if it is I will release it instead.

12 responses to No more features!

DiDaDo wrote:

8/5/2010 11:35:23 AM

Great i was going to ask about the response time if push a key on my keyboard ;)..

Will this also be improved or am i completely wrong about this?

Waxonator wrote:

8/5/2010 11:58:03 AM

Oooh! I can't wait! :D

Sasha wrote:

8/5/2010 1:05:46 PM

72 hours 55 minutes 37 seconds left... :)

RetroRalph wrote:

8/5/2010 9:27:51 PM

I've put off the INPUT changes I was going to do because it's actually a massive job. I'm going to be getting rid of SDL and code my own INPUT/WINDOW engine (this is after 0.800). SDL is designed more for hobby projects than large scale projects like RetroCopy, I've already modded it quite extensively but it's not quite up to it.

Latency is a big issue in most emulators. Most Windows emulators are using DirectSound so they are going to have 50ms of audio latency almost automatically. Very few would be able to notice 50ms of audio latency without training, but nearly everyone will when it goes over 80ms.

Video latency is a little different, but it is tied to how fast your video card refreshes the screen. It is why you're better off buying a 120hz or 200hz monitor instead of the typical 60hz ones we use today. A 60Hz monitor with double buffering and VSYNC enabled is going to have about 40ms of input latency at a minimum, it could be as high as 80ms in some instances. That is latency for when you press a button and see something happen.

A 120hz monitor on the other hand will have around 20-30ms latency instead. The other option is to disable VSYNC but then you get tearing of the screen. I currently disable VSYNC because I'm stuck on a 60hz monitor. 90+% of people won't really be able to determine a 40ms input latency anyhow, but for those seeking the best quality, look at higher refresh rate monitors and new modern emulators like RetroCopy that take advantage of the latest technologies.

http://www.xbitlabs.com/articles/monitors/display/samsung-sm2233rz.html

Waxonator wrote:

8/5/2010 10:22:36 PM

It's never bothered me.

DiDaDo wrote:

8/6/2010 4:27:58 AM

Okeej thanks for the explanation..

I still have only a reasonable fast laptop but off course still a 60hz monitor with it.

Great that your working on it, i mean for an emulator who wants to be super precise its a normal question i think.. ;)

Sasha wrote:

8/6/2010 9:12:29 AM

I have 60Hz monitor too.

dench wrote:

8/9/2010 4:08:35 AM

Waiting for that vid.... :D

Sasha wrote:

8/10/2010 5:26:57 AM

Is everything alright?

Waxonator wrote:

8/15/2010 8:48:12 AM

What's going on?

RetroRalph wrote:

8/15/2010 8:54:53 AM

Just getting everything tied up still. Work is happening thick and fast but I underestimated the amount of work needed. Video won't take much longer though (I think Sunday or Munday at the latest), and by that stage the release date will be set. Some private betas have gone out already and a fair amount of testing has happened so it should be very stable upon release.

It will only be released to members first too.

Waxonator wrote:

8/15/2010 4:59:28 PM

That sounds good to me. :D

Add Comment
RetroCopy: Making emulation easy and fun.
  |   RetroCopy © 2011