Hmmm, ok, maybe I see what you are saying...
lets look at RallyX as an example:
resolution = 288 x 224 @ 60Hz
so I would increase from 288 to something like 400 x 224 @60Hz and then adjust the monitors controls so the game itself fills the screen?
Do you know of a card for linux that does low pclocks so this isn't necessary?
thanks again,
Yes, that's correct. You have the right idea, its just that you want to do this in the advcfg.exe utlity. You need to understand that you can only set the blanking time for your monitor once. This is what the advcfg.exe utlity is for, setting the blanking time. So you would launch the advcfg.exe utility, shrink your screen using your key board until you reach 8 or something (it should start out near 5), and then center your screen using your arcade monitor controls until the screen fits perfectly. The only thing you normally don't want to adjust in the advcfg.exe utlity is the height (not unless you really know what you are doing). Unfortunately, this fine tuning is required for the D9200 to perfectly emulate all games. What makes the D9200 so tricky is need to use a wierdo blanking time, to take advantage of the monitors full horizontal range. So this is how the D9200 setup would go for linux and a matrox g400 card.
launch the advcfg.exe utility, select Arcade Standard CGA Resolution (15kHz), then select custom and enter
pclock 5-90
hclock 15.72
vclock 50-60
and press enter. Now here comes the real magic. Decrease the width of the screen using your keyboard until you have 8mHz. Then decrease the height of your screen using your keyboard until you get 230 lines. Save and exit.
Now edit your advmame.rc file and change
device_video_pclock pclock 5-90
device_video_hclock hclock 15.72
device_video_vclock vclock 50-60
to
device_video_pclock 5-90
device_video_hclock 15-16.75, 24-26, 31-32.5
device_video_vclock 50-85
vector/device_video_hclock 31-32.5
192x256/device_video_hclock 15-16.75
208x248/device_video_hclock 15-16.75
208x256/device_video_hclock 15-16.75
216x288/device_video_hclock 15-16.75
224x248/device_video_hclock 15-16.75
224x256/device_video_hclock 15-16.75
224x264/device_video_hclock 15-16.75
224x272/device_video_hclock 15-16.75
224x280/device_video_hclock 15-16.75
224x288/device_video_hclock 15-16.75
232x264/device_video_hclock 15-16.75
234x256/device_video_hclock 15-16.75
236x272/device_video_hclock 15-16.75
240x256/device_video_hclock 15-16.75
240x280/device_video_hclock 15-16.75
248x256/device_video_hclock 15-16.75
256x256/device_video_hclock 15-16.75
Then for simplicty sake, center the following games Gauntlet, 720 Degrees, and Asteroids using your arcade monitor controls. That's it. Perfect emulation! If a game is slightly off center or slightly overscanned/underscanned, its due to rounding error. There is always a small amount due to the 8 dot multiple.
If the above doesn't work then your kernel's video card driver is goofed (or possibly the advancemame version). The above worked for me on 2.6.1, and I know it works perfectly with 2.4.22 (and probably 2.4.6). This was all some time ago, on advancemame .78 or something.
If you give me a day or two, I'll create the perfect device_video_format for your setup and post it. But the above is how I would do it. I did it on LFS 5.0 and it worked beautifully.
As wpcmame points out, you could just double the hres for all the games below something like 240, but it's lot of damn work. The method above will do it for you all automatically, meaning you won't have to create a single modeline.
I just finished my LFS 5.1 system. As soons as it's tweaked I'll post the source along with some device_video_formats better suited for Linux boxes. Maybe it's time to kill the only windows box left in the house?