Software Support > GroovyMAME
crt_emudriver stopping mid-scanline?
rogerxyz:
Thank you again Zeb! It seems not unlikely that some issue in the deflection circuitry is to blame. Before I start putting together a cap list, I think one final test is in order:
I'll hook up another monitor - maybe a sibling Trinitron just for apples-to-apples - to the video card and see if it fares any better.
I just have to make some time for that....
makya:
Hi, please post a log. Without we can only try to guess. However, that's a sure thing that ninja spirit will not display correctly using generic15 (according to my experience with euro TVs at least).
Zebidee:
I looked at your video again, and your TV definitely doesn't like anything over 240p/480i. It cuts the bottom off anything over that, even 248p. It is clearly struggling to even sync with anything over 240p/480i (see the zigzag at top). Unsurprisingly, it seems to be an NTSC TV (says so right there), so use the NTSC monitor preset as your template.
If you've used the NTSC monitor preset to regenerate video modes properly, GM should not be selecting modes with vertical lines over 240p/480i.
An in-game log could help. That starting info screen can help too, as it provides video mode selection and screen sizing information. You can opt to hide them, but I prefer to leave them there.
Another matter is the suspected vertical collapse. Whether that line at top is foldover or not, I can't be 100% sure without a closer look, but the image definitely seems shrunken and now I notice it seems to have bit of pincushioning at the corners. It only gets worse over time, picture shrinking from top and bottom. Final stage is a single fat bright line across the middle. Replacing old caps may help and may help prevent other damage down the track.
rogerxyz:
I ran the experiment - same PC, graphics card, GM, rom, etc., just plugged into a different TV. This one showed the same thing, so I'm doubtful it's the TV. It's not that it's failing to sync at any of the ~15kHz modes, all of them sync, just a smattering of the video modes show this issue where the image just stops drawing mid-scanline before the last line. However, some progressive 240±10 line modes do this and others don't!
Further, as I said, it appears this way on another set. I've adjusted the vertical shift so you can more easily see the bottom.
I could even try this on an LCD next, I think I'll show the same thing...
So here's also logs running under GM 0.227 and GM 0.256. I can try with the latest 0.265 but I have my doubts anything will change. At this point I've reverted to the ntsc timings.
The logs show the video is supposed to be 256 lines for this game, and.... well you know what? I'm not surprised 256p won't draw every line on a consumer NTSC TV.... ::)
Switchres: normal (384x256@55.017605)->(2560x256@56.000000)
Maybe it really is as simple as that? The video mode will sync but there's no coaxing a consumer NTSC set to display 248 lines? This modeline comes out to 15.68khz.
Again referring back to the video https://drive.google.com/file/d/19tWdLeG8p_jrBBt_NsxS0sWWoReADpQX/view:
All of the following modelines SYNC. The ones marked with X don't draw the bottom-most line (i should see a white border). The ones marked with O draw the top and bottom white borders. (Again, in this video, the service menu has been used to artificially compress the v size so that we can be certain that the image is not being cropped.)
O 240x192@60p 15.656khz
O 240x200@60p 15.656khz
O 248x192@60p 15.671khz
O 256x192@60p 15.655khz
O 256x224@60p 15.655khz
X 256x240@60p 15.655khz
X 256x248@60p 16.131khz
X 256x256@60p 16.619khz
O 320x224@60p 15.660khz
X 320x240@60p 15.649khz
X 320x248@60p 16.132khz
X 320x256@60p 15.745khz
O 336x224@60p 15.659khz
X 384x240@60p 15.655khz
X 512x448@60i 15.693khz
X 512x480@60i 15.693khz
X 512x512@60i 16.647khz
X 544x248@60p 16.138khz
O 640x200@60p 15.661khz
X 640x480@30i 15.685khz
X 640x480@60i 15.680khz
X 680x510@60i 16.593khz
X 768x512@60i 16.654khz
X 2560x240@60p 15.661khz
X 2560x248@60p 16.140khz
X 2560x256@60p 16.619khz
X 2560x448@60i 15.691khz
O 2560x464@60i 15.691khz
X 2560x480@60i 15.691khz
X 2560x496@60i 16.170khz
X 2560x510@60i 16.590khz
X 2560x512@60i 16.649khz
Is this expected, that some modes will sync perfectly but depending on the monitor, the bottom scanlines will simply not be reached?
I don't have unreasonable expectations of pushing this consumer set beyond 240p/480i. But when so many of the 240p modes also get cut off, I just wonder if there's something wrong I can try to fix!
Zebidee:
--- Quote from: rogerxyz on May 16, 2024, 09:02:43 pm ---The logs show the video is supposed to be 256 lines for this game, and.... well you know what? I'm not surprised 256p won't draw every line on a consumer NTSC TV.... ::)
...
Maybe it really is as simple as that? The video mode will sync but there's no coaxing a consumer NTSC set to display 248 lines?
--- End quote ---
After all this - yes, I think so.
According to your 0.256 log, you are using this crt_range to allow 256p modes:
--- Quote ---Monitor range 15625.00-16750.00,56.00-65.00,2.000,4.700,8.000,0.064,0.192,1.024,0,0,170,262,448,526
--- End quote ---
Which looks mostly like "generic_15", except the max/min lines numbers have been altered from default. I've highlighted them above. There are two sets of min (red) and max (blue), for progressive and interlaced respectively.
I suggest you to try the default NTSC crt_range, which is:
--- Quote ---monitor "ntsc", "NTSC TV - 60 Hz/525", "4:3"
crt_range0 15734.26-15734.26, 59.94-59.94, 1.500, 4.700, 4.700, 0.191, 0.191, 0.953, 0, 0, 192, 240, 448, 480
--- End quote ---
If yours has been altered, you could always just replace your monitor.ini file with a fresh one from the download package. If you want to try further customisation to get 248p lines or whatever, try using NTSC preset as your base.
After you've updated monitor range presets, video modes and everything in VMMaker: go to "Edit Settings", then "MAME" (last tab), and be sure to tick the box marked "Export monitor settings to GroovyMAME". Then click "Browse" to make sure it is pointing to the right executable. Then click "OK" to update the mame.ini file.
If you do all this, you'll see a message in the VMMaker command window:
--- Quote ---Exporting settings to mame.ini...
--- End quote ---
This will stop GM trying to display 256p modes on your TV. Unfortunately you may need to look at other options for those games (like using interlaced modes or stretching or somesuch).
I'm not sure why you still get lines cutoff even in some 240p modes. If the NTSC monitor range doesn't help, I'd look in TVs service menus.
Maybe being hopeful here, but I'd dive deeply and search through the TV service menu to see if there is an NTSC/PAL option somewhere. While looking, you might find something about screen size etc. Toshiba TVs around 2000 era (like yours alternative TV seems to be) all used these huge jungle chips with everything preloaded already, so maybe you just need to flip a bit. Many manufacturers at that time used Toshiba jungle chips, so they are fairly generic. I expect there to be up to 20 pages of settings, most of which might not be available unless you flip a special "PAGE" bit (it might be called something else) or even enter another code. Unfortunately some manufacturers for US market also might've tried to save a few cents by not bothering to put on something as simple as a PAL frequency crystal oscillator, so I might just be "dreaming". Anyway, worth a good look in the service menu to see what options are there.
Take care and exercise discretion with service menu options, setting the wrong thing can make the service menu inaccessible. It is possible to backup the TV EEPROM (which saves all the data) if you want to really get into it.
Sorry, this post has gotten long. From a practical perspective, looks like you are stuck with a snug 240p for now at least :hissy:
Navigation
[0] Message Index
[#] Next page
[*] Previous page
Go to full version