Software Support > GroovyMAME

Switchres: modeline generator engine

<< < (6/260) > >>

bitbytebit:

--- Quote from: Calamity on October 11, 2010, 05:35:24 am ---Hi VeS,

It's great you've been able to build it, now it's time to test. I highly recommend you to include the patch for Mame that I pasted above (just the second one), in order to see the real emulation speed (e.g. [59.763 Hz]) when you press F9.

Regarding to Hantarex 9110 + ArcadeVGA, I believe it'll be necessary to make an specific lrmc.conf file, as -cga option may not fit here. The timings I've been using for the Hantarex MTC9110, translated to this lrmc format, would be:

Clock = 3.75 - 25 / 15.625 - 16.650 / 49.50 - 65.00

It's very important to be able to reach this low dotclock (around 3.75), otherwise lower resolutions would have huge porchs (borders).
Just to clarify things, this dotclock thing (3.75-25) is videocard related, not a monitor feature. ArcadeVGA and Radeon 9250 can be set for very low dotclocks, thus these cards are suitable for emulation. Many newer cards do not allow dotclocks as low as 3.75 MHz (some do).

Thanks



--- End quote ---

It's interesting about the lower dotclock, there's some limitations I can remove but not sure if they are really actively limiting things.  First is the radeon driver, it claimed normally it could only go down to 12Mhz and I lowered this to 5Mhz in my patch.  I can it just allow any dotclock asked for, but not sure if that really is a hard limit in the driver and the value is really used.  I'll look at this value closer in the driver, one of the many little things I've been wanting to do, since it seems like the ati radeon driver has so many limitations on the hardware like the modelines or the dotclock which the actual hardware doesn't really have.  I always wondered why that xorg.conf setting of lowering the dotclock was sometimes used and sometimes not in peoples configs, it may be another xorg.conf setting that is either ignored or less intuitive on how it's actually used.

bitbytebit:

--- Quote from: bitbytebit on October 11, 2010, 06:08:39 am ---
--- Quote from: Calamity on October 11, 2010, 05:35:24 am ---Hi VeS,

It's great you've been able to build it, now it's time to test. I highly recommend you to include the patch for Mame that I pasted above (just the second one), in order to see the real emulation speed (e.g. [59.763 Hz]) when you press F9.

Regarding to Hantarex 9110 + ArcadeVGA, I believe it'll be necessary to make an specific lrmc.conf file, as -cga option may not fit here. The timings I've been using for the Hantarex MTC9110, translated to this lrmc format, would be:

Clock = 3.75 - 25 / 15.625 - 16.650 / 49.50 - 65.00

It's very important to be able to reach this low dotclock (around 3.75), otherwise lower resolutions would have huge porchs (borders).
Just to clarify things, this dotclock thing (3.75-25) is videocard related, not a monitor feature. ArcadeVGA and Radeon 9250 can be set for very low dotclocks, thus these cards are suitable for emulation. Many newer cards do not allow dotclocks as low as 3.75 MHz (some do).

Thanks



--- End quote ---

It's interesting about the lower dotclock, there's some limitations I can remove but not sure if they are really actively limiting things.  First is the radeon driver, it claimed normally it could only go down to 12Mhz and I lowered this to 5Mhz in my patch.  I can it just allow any dotclock asked for, but not sure if that really is a hard limit in the driver and the value is really used.  I'll look at this value closer in the driver, one of the many little things I've been wanting to do, since it seems like the ati radeon driver has so many limitations on the hardware like the modelines or the dotclock which the actual hardware doesn't really have.  I always wondered why that xorg.conf setting of lowering the dotclock was sometimes used and sometimes not in peoples configs, it may be another xorg.conf setting that is either ignored or less intuitive on how it's actually used.

--- End quote ---

I need to look at the way lrmc in the radeon driver will do the lrmc.conf file reading, just realized it may ignore that file because I have it so the option in xorg.conf gives a monitor type.  I need an option I guess to use the config file, actually wish I could use the xorg.conf settings for the Vert/Horz rates but oddly I can't seem to get that information from the driver.  That would be ideal, all setup in xorg.conf, and seems strange to need to add another settting for those values instead of using the default ones already in xorg.conf.  This is definitely interesting, have to figure out the simplest way to pass this information through, wish the modelines were actually read by the driver to begin with and it would simplify things greatly.  I'm planning on trying to find out if that information is even available to me, may be like the horz/vert values where the driver seems cutoff from the main xserver and the config file reading seems to be split up between xorg parts.

Calamity:

--- Quote from: bitbytebit on October 11, 2010, 06:08:39 am ---It's interesting about the lower dotclock, there's some limitations I can remove but not sure if they are really actively limiting things.  First is the radeon driver, it claimed normally it could only go down to 12Mhz and I lowered this to 5Mhz in my patch.  I can it just allow any dotclock asked for, but not sure if that really is a hard limit in the driver and the value is really used.  I'll look at this value closer in the driver, one of the many little things I've been wanting to do, since it seems like the ati radeon driver has so many limitations on the hardware like the modelines or the dotclock which the actual hardware doesn't really have.  I always wondered why that xorg.conf setting of lowering the dotclock was sometimes used and sometimes not in peoples configs, it may be another xorg.conf setting that is either ignored or less intuitive on how it's actually used.

--- End quote ---

A 5 MHz dotclock is low enough for a 240x240@60 video mode, e.g.:

Modeline "240x240@60.0Hz 15.7KHz (60Hz)" 5.010 240 256 280 320 240 241 244 261 -hsync -vsync

However, it's understandable they limit it in the Radeon driver as it's generic and many Ati cards can't use these low dotclocks.
I wonder which options are available from lrmc.conf (I'd like to get a blank template to adapt it to MTC 9110).

bitbytebit:

--- Quote from: Calamity on October 11, 2010, 06:31:16 am ---
--- Quote from: bitbytebit on October 11, 2010, 06:08:39 am ---It's interesting about the lower dotclock, there's some limitations I can remove but not sure if they are really actively limiting things.  First is the radeon driver, it claimed normally it could only go down to 12Mhz and I lowered this to 5Mhz in my patch.  I can it just allow any dotclock asked for, but not sure if that really is a hard limit in the driver and the value is really used.  I'll look at this value closer in the driver, one of the many little things I've been wanting to do, since it seems like the ati radeon driver has so many limitations on the hardware like the modelines or the dotclock which the actual hardware doesn't really have.  I always wondered why that xorg.conf setting of lowering the dotclock was sometimes used and sometimes not in peoples configs, it may be another xorg.conf setting that is either ignored or less intuitive on how it's actually used.

--- End quote ---

A 5 MHz dotclock is low enough for a 240x240@60 video mode, e.g.:

Modeline "240x240@60.0Hz 15.7KHz (60Hz)" 5.010 240 256 280 320 240 241 244 261 -hsync -vsync

However, it's understandable they limit it in the Radeon driver as it's generic and many Ati cards can use these low dotclocks.
I wonder which options are available from lrmc.conf (I'd like to get a blank template to adapt it to MTC 9110).



--- End quote ---
lrmc.conf can change the interlace, doublescan, stretch, vsync values used in lrmc

I'm guessing it may be best just to use the lrmc.conf file instead of adding more settings to xorg.conf, so lrmc and the radeon driver will definitely use the same settings to calculate modelines.  Hopefully I can figure out how to make it just read the modelines again properly and then we'd not have to worry about reading lrmc.conf from the x driver.

bitbytebit:

--- Quote from: bitbytebit on October 11, 2010, 06:24:42 am ---
--- Quote from: bitbytebit on October 11, 2010, 06:08:39 am ---
--- Quote from: Calamity on October 11, 2010, 05:35:24 am ---Hi VeS,

It's great you've been able to build it, now it's time to test. I highly recommend you to include the patch for Mame that I pasted above (just the second one), in order to see the real emulation speed (e.g. [59.763 Hz]) when you press F9.

Regarding to Hantarex 9110 + ArcadeVGA, I believe it'll be necessary to make an specific lrmc.conf file, as -cga option may not fit here. The timings I've been using for the Hantarex MTC9110, translated to this lrmc format, would be:

Clock = 3.75 - 25 / 15.625 - 16.650 / 49.50 - 65.00

It's very important to be able to reach this low dotclock (around 3.75), otherwise lower resolutions would have huge porchs (borders).
Just to clarify things, this dotclock thing (3.75-25) is videocard related, not a monitor feature. ArcadeVGA and Radeon 9250 can be set for very low dotclocks, thus these cards are suitable for emulation. Many newer cards do not allow dotclocks as low as 3.75 MHz (some do).

Thanks



--- End quote ---

It's interesting about the lower dotclock, there's some limitations I can remove but not sure if they are really actively limiting things.  First is the radeon driver, it claimed normally it could only go down to 12Mhz and I lowered this to 5Mhz in my patch.  I can it just allow any dotclock asked for, but not sure if that really is a hard limit in the driver and the value is really used.  I'll look at this value closer in the driver, one of the many little things I've been wanting to do, since it seems like the ati radeon driver has so many limitations on the hardware like the modelines or the dotclock which the actual hardware doesn't really have.  I always wondered why that xorg.conf setting of lowering the dotclock was sometimes used and sometimes not in peoples configs, it may be another xorg.conf setting that is either ignored or less intuitive on how it's actually used.

--- End quote ---

I need to look at the way lrmc in the radeon driver will do the lrmc.conf file reading, just realized it may ignore that file because I have it so the option in xorg.conf gives a monitor type.  I need an option I guess to use the config file, actually wish I could use the xorg.conf settings for the Vert/Horz rates but oddly I can't seem to get that information from the driver.  That would be ideal, all setup in xorg.conf, and seems strange to need to add another settting for those values instead of using the default ones already in xorg.conf.  This is definitely interesting, have to figure out the simplest way to pass this information through, wish the modelines were actually read by the driver to begin with and it would simplify things greatly.  I'm planning on trying to find out if that information is even available to me, may be like the horz/vert values where the driver seems cutoff from the main xserver and the config file reading seems to be split up between xorg parts.

--- End quote ---

--- Code: ---diff --git a/xf86-video-ArcadeVGA-6.13.0/src/radeon.h b/xf86-video-ArcadeVGA-6.13.0/src/radeon.h
index 7d84eab..96248f9 100644
--- a/xf86-video-ArcadeVGA-6.13.0/src/radeon.h
+++ b/xf86-video-ArcadeVGA-6.13.0/src/radeon.h
@@ -451,6 +451,7 @@ typedef enum {

 typedef enum {
     RADEON_ARCADE_NONE,
+    RADEON_ARCADE_LRMC,
     RADEON_ARCADE_CGA,
     RADEON_ARCADE_EGA,
     RADEON_ARCADE_VGA,
diff --git a/xf86-video-ArcadeVGA-6.13.0/src/radeon_output.c b/xf86-video-ArcadeVGA-6.13.0/src/radeon_output.c
index ae4317d..5c4ab80 100644
--- a/xf86-video-ArcadeVGA-6.13.0/src/radeon_output.c
+++ b/xf86-video-ArcadeVGA-6.13.0/src/radeon_output.c
@@ -2891,7 +2891,9 @@ Bool RADEONSetupConnectors(ScrnInfoPtr pScrn)
     info->ArcadeMonitor = 0; /* Default is CGA */
     optstr = (char *)xf86GetOptValString(info->Options, OPTION_ARCADE_MONITOR);
     if (optstr) {
-       if (!strncmp("cga", optstr, strlen("cga")))
+       if (!strncmp("lrmc", optstr, strlen("lrmc")))
+            info->ArcadeMonitor = RADEON_ARCADE_LRMC;
+       else if (!strncmp("cga", optstr, strlen("cga")))
             info->ArcadeMonitor = RADEON_ARCADE_CGA;
         else if (!strncmp("ega", optstr, strlen("ega"))) /* alias */
             info->ArcadeMonitor = RADEON_ARCADE_EGA;

--- End code ---

Quick patch to the radeon driver to allow you to set the ArcadeMonitor setting in xorg.conf to "lrmc" and then it'll read the /etc/lrmc.conf file for the monitor specs.

Also I'm starting to see how to get the other values from the xorg.conf file so hopefully can just read the modelines from it and we'll not need to compute them anymore inside the driver itself, which would simplify needing calculate them twice at ini file creation and then again from the labels on starting X.  Which is what we wanted of course the driver to do in the first place and everyone *thinks* it already does. 

Navigation

[0] Message Index

[#] Next page

[*] Previous page

Go to full version