[uae] Re: More on the V-synced, Linux-based E-UAE

  • From: Richard Drummond <evilrich@xxxxxxxxxxxxxx>
  • To: uae@xxxxxxxxxxxxx
  • Date: Fri, 23 Mar 2007 00:45:23 -0400

Hi Manuel

On Thursday 15 March 2007 07:14, Manuel Alfayate wrote:
> Well, I can confirm that: the ONLY chipset that can be found on a Power-PC
> based MAC MINI is the ATI 9200 (which I believe has the R200 chip inside, a
> well supported chip under Linux as it has over-average quality open source
> video drivers including 2D and 3D acceleration). It's also the most popular
> chipset used on the PEGASOS and a cheap, silent option for
> emulation-oriented Pc's :D

The question, though, is if the radeonfb driver and the DirectFB Radeon driver 
that builds on that support synchronization with vertical refresh. This is 
something I need to investigate. Luckily, after hacking on the AmigaOS 4.0 
Radeon driver, I now have lots of Radeon cards to test... ;-)

> As for the DirectFB backend for E-UAE, I think it's a great idea: DirectFB
> allows the definition of custom video modes (I have defined a perfect PAL
> video mode that works with E-UAE after setting it with fbset: I can post
> the geometry and timmings if you are interested; the only problem is
> tearing, as Ritcher said).

I want to get version 0.8.29-WIP4 out to the public first. Then I'll be doing 
the graphics overhaul in E-UAE that I've been experimenting with and putting 
off merging into to the main code for so long. Part of that work will be a 
DirectFB driver.

> In the other hand, when definig a video mode for fbset you can specify the
> pixel clock (pixel lengh in picosecs) along with the vysnc lengh and hsync
> lengh: you can also specify the vsync and hsync polarity. There are even a
> coulple of files included with those libraries, namely fbmodes.PAL and
> fbmodes.NTSC, that provide broadcast-exact video modes; they are 15Hz
> (H-freq) and have to be modified for usage on a PC monitor, wich usually
> supports only >30Hz H-freq...

If I remember DirectFB uses your /etc/fb.modes file to determine what 
screenmodes are available. I don't know how the SDL DirectFB driver makes use 
of that. 

> So, in a nutshell, you could use the DirectFB backend to specify a
> frequency using fbset code and vsync (Vsync doesn't work under Linux right
> now, as far as I have tried: it just makes the whole system unestable) and
> easily implement a "frequency" line for the uaerc. I think there's souch a
> feature in WinUAE.

I don't think so. I think DirectFB will reset the framebuffer screenmode 
itself - it won't just use the same mode that you've set with fbset.

> As for the MAC OSX-built version, it's Vsync works: Does anyone know where
> MAC OSX stores it's video modes? Manually definig a 50Hz videomode should
> be possible.

I don't know that.

I do know that vsyncing in E-UAE on OS X works (at least with my NVidia 
GeForce2MX). The problem is that E-UAE when built on SDL cannot choose a 
refresh rate - you get what SDL gives you. Again, a native OS X display 
driver could do better.

> There are at least three programs that I know about (DisplayX, SwitchresX
> and resX) that allow custom video-mode definition, including vertical and
> horizontal frequencies, for MAC OSX, but using this stuff to set up the
> system before running an emulator requires loading a full Aqua
> enviroment... I tried to contact the authors for info, but no luck (as
> expected). Has Mac OS X a FrameBuffer device at Darwin level to try using
> fbset under MACOSX?
>
> Thanks people, and sorry for souch a LONG writing!

No worries. This is something I want to get working too.

Up to this point I've been relying on SDL to be the main graphics framework 
for E-UAE, even though it's long been clear to me that SDL isn't up to the 
job. It's long passed due that something should be done about this, and after 
the 0.8.29-WIP4 is released, I shall do something about it...

Cheers,
Rich
-- 
Richard Drummond

Web:  http://www.rcdrummond.net/
Mail: mailto:evilrich@xxxxxxxxxxxxxx

Other related posts: