Page 1 of 4 123 ... LastLast
Results 1 to 10 of 40

Thread: Clean resolution & refresh rate on CRT TV using HDMI out?

  1. #1
    Join Date
    Sep 2014
    State
    QLD
    Posts
    26
    Mentioned
    2 Post(s)
    Quoted
    6 Post(s)

    Clean resolution & refresh rate on CRT TV using HDMI out?

    EDIT: I have more options; My video card has HDMI or DVI out, and the TV has Component, or S-Video in. Whatever best converter goes between any one of these, let me know.

    My custom cabinet is going well so far - I have really good CRT TV, and an older video card with an S-Video out on it that I've kept around through the years - this card has always worked well with CRT TVs using S-Video, and in my custom arcade cabinet I got everything perfect so that the emulation and the video card are set at the proper refresh rate for perfectly smooth scrolling, at what appears to be the native resolutions of the games!

    My problem is - I want it to do a little more - my cabinet has 4 player controls on it (for TMNT etc.), and I'm wiring them up to disassembled Xbox 360 pads, so that it can also play the plethora of great 4 player games being released on steam. However, at least one of them wants DirectX 11, so I got a new card (cheaply) that supports that - trouble is, it doesn't have S-Video out of course, only HDMI.

    I'm looking at these "active" HDMI converters, either HDMI -> Component, or HDMI -> S-Video.

    My concern is, before I shell out for one of these, are they going to do something to the signal that will mess it up in the conversion? They all claim to support 480p (60Hz) and 576p (50Hz) outputs (as well as higher), but can I trust this?

    Does anyone have any experience with trying to get a clean authentic picture on a CRT TV when your only option is a HDMI out?
    Last edited by Domarius; 8th February 2017 at 07:58 PM.

  2. #2
    Join Date
    Mar 2015
    State
    Tasmania
    Posts
    1,461
    Mentioned
    75 Post(s)
    Quoted
    469 Post(s)
    Just to confirm: what resolutions can the CRT TV handle? As in, is it a widescreen HDTV (720p/1080i) or a later model 4:3 SDTV (480i?) that happens to have component inputs? Any marking on the case about 100Hz or Progressive, EDTV, HDTV? Which model video card are you using, and does it have a DVI-I port, or only a DVI-D? What's your setup? PC in a cab, only used for gaming?

    I'm also curious about how you managed to manipulate the S-video port of the old GPU. Normally those are hardwired to 480i - so no matter what resolutions you set elsewhere, there'd be no way to get a 1:1 rendition of a 15kHz arcade game that used progressive video.
    Last edited by buttersoft; 9th February 2017 at 07:21 AM.

  3. #3
    Join Date
    Apr 2012
    State
    NSW
    Posts
    968
    Mentioned
    27 Post(s)
    Quoted
    269 Post(s)
    Have you got a user manual for the TV. The compatible resolutions will be listed. If you haven't you can normally look them up online.


    Sent from my iPhone using Aussie Arcade
    Last edited by MarkOZLAD; 9th February 2017 at 08:59 AM.

  4. #4
    Join Date
    Sep 2014
    State
    QLD
    Posts
    26
    Mentioned
    2 Post(s)
    Quoted
    6 Post(s)

    Thanks for the enthusiastic response guys I can tell you anything you need to know...

    @buttersoft yeah I need to explain myself a bit better - OK so I managed to fudge something up that to my eye looks 100% perfect, at least for the 8 bit and 16 bit consoles. There are two main problems - swimming pixels when scrolling due to scaling issues, and juddery frame rate when scrolling, due to refresh rates not matching. I set the emulator to 1024x768, disable any filtering options, and this 100% hides any "swimming" pixels when scrolling. To me it looks just as if each scan line is a row of pixels on the CRT. Then I set the Nvidia driver TV output to "NTSC", this also sets the 480i, 720x576 and the refresh rate is locked at 29hz. In the emulator, I enable "Vsync" - et voila - the scrolling (to my eye) looks absolutely smooth and perfect. I'm not sure why it works, since NTSC is supposed to be 60hz, all I know is setting it to PAL causes juddering in the scrolling.

    The one and only drawback I can see is everything is interlaced - this is especially noticible when sprite flickering effects are used (eg. killing an enemy in Shinobi on the Sega Master System). This is ugly and not authentic. But all the TV out options are interlaced options (eg. 480i, 576i) there are no progressive options (480p, 576p)...

    I would consider the Soft15kHz route, but I'm really really confused, and would like any advice you have. Info on how to use Soft15kHz effectively seems thin on the ground, it doesn't even have a home page. It might be compatible with the cards I have. But I read an article (here) that said he couldn't get the refresh rates to sync up so everything was choppy. I'd prefer to suffer with the interlacing than go back to choppy scrolling.



    Here are the hardware details.

    Yes, it's a Windows 7 PC in a home made cabinet. I'm rather proud of it, this only being my 2nd woodworking project (after my smaller benchtop arcade). Have had to disassemble for painting and have not put buttons back in yet, also doing away with the iPAC4 and going with hacked apart (chinese knock off) XBox 360 USB controllers, so it can play the newer games, wiring up the d-pad terminals to the joystick inputs and ignoring the analogue sticks, since all the "retro" style games use the d-pad anyway. And the emulators don't mind having their controls mapped to XBox 360 controller inputs.

    IMG_20161102_204648.jpgIMG_-972550817.jpg

    The TV is an "LG" TX-68PS12A, you can google for its manual easily, I think I used this link https://www.manualslib.com/manual/11...x-68ps12a.html It's not a widescreen, it's just a (very good) 4:3 TV with Composite, Component, and S-Video inputs.

    The OLD video card is an "Albatron" Nvidia 7300 GT, it's the one with the S-Video out - I've used this setup with all kinds of resolutions, I know I used the really low res ones that the 8 bit and 16 bit consoles put out, and in addition to that, I can recall using 640x480, that SD TV resolution 768576, 800x600, and 1024x768. My good old Albatron video card always sent a signal that the TV understood, given the wide variety of resolutions I tried.

    The NEW video card that only has HDMI, DVI-I, and DisplayPort out, is an ATi Radeon HD 5670, rather spiffy given I only paid $20 for it second hand (the guy handed it over in a small soup box, haha). Works great though, almost no dust in it. Just a reminder, the only reason I'm trying to get this newer card working with the CRT is it runs a few more of the newer 4 player games on Steam, and they are done in a retro style, eg. "TowerFall" so they look great on the CRT. And also Demul (the Dreamcast emulator) won't work on the other card but works on this one.
    Last edited by Domarius; 9th February 2017 at 06:30 PM.

  5. #5
    Join Date
    Apr 2012
    State
    NSW
    Posts
    968
    Mentioned
    27 Post(s)
    Quoted
    269 Post(s)
    https://gist.github.com/jonlabelle/7834592




    Sent from my iPhone using Aussie Arcade

  6. #6
    Join Date
    Apr 2012
    State
    NSW
    Posts
    968
    Mentioned
    27 Post(s)
    Quoted
    269 Post(s)

    Clean resolution & refresh rate on CRT TV using HDMI out?

    https://en.m.wikipedia.org/wiki/Refresh_rate

    These rates formed the basis for the sets used today: 60 Hz System M (almost always used with NTSC color coding) and 50 Hz System B/G (almost always used with PAL or SECAM color coding). This accident of chance gave European sets higher resolution, in exchange for lower frame-rates. Compare System M (704 480 at 30i) and System B/G (704 576 at 25i). However, the lower refresh rate of 50 Hz introduces more flicker, so sets that use digital technology to double the refresh rate to 100 Hz are now very popular. (see Broadcast television systems)


    Sent from my iPhone using Aussie Arcade

  7. #7
    Join Date
    Apr 2012
    State
    NSW
    Posts
    968
    Mentioned
    27 Post(s)
    Quoted
    269 Post(s)
    I remember 60hz pal used to have a terrific looking picture but led to jittery movement on my old 68cm.


    Sent from my iPhone using Aussie Arcade

  8. #8
    Join Date
    Mar 2015
    State
    Tasmania
    Posts
    1,461
    Mentioned
    75 Post(s)
    Quoted
    469 Post(s)
    @Domarius, this is a slightly tricky question due to the resolutions you may wish to use and the nature of transcoding vs scaling vs lag. For older games/emulators/MAME, using a 15Khz mode with a 1:1 vertical ratio is amazing, and can't be beaten. For newer games, if you can't use a 640x480 mode, then you have to downscale the image to get it onto your CRT.

    The S-video port on your older GPU is only capable of 640x480i, and in every case I’ve seen Windows is happy to slot a 640x480p standard mode into that no trouble. It might flicker a little, but hey, it works. But that port is also capable of taking your desktop at 1080p and shoehorning it into the 480i output, at an obvious drop in quality. So you could run any game at any resolution, if I have this right, and it would come out the S-video port at 480i and display on your 15kHz-only SD CRT TV.

    The new card won’t do this. So the next question is, can you run everything you want to at 640x480p or lower?

    If the answer is no, and you need higher resolutions to do everything you want to do, then you want to get yourself an HDMI to Component converter that can output 480i. I have no idea about these, and thus cannot recommend anything , so if someone else would like to contribute that'd be great.. After that, you can ask on the Hardware subforum of the Shmups site, probably in the Questions That Do Not Deserve A Thread thread. If you search that Hardware forum I’m sure someone else has asked.

    This method is simple, all you do is plug the relevant bits together. The digital processing require to downscale the video signal, and convert it to analog format, does introduce lag. You’ll notice if you’re playing fighting games, shmups and maybe brawlers. It may be that the more you spend on the converter, the better you’ll do all round, but I really couldn’t say.

    However if the answer is yes, and you only need 640x480 or lower, then, if you want to, you can get significantly better picture quality for these lower resolutions. Doing this will probably be a bit cheaper, and this way also means less lag, but it’s an amount more work and fiddling around.

    The first things you need are a DVI-to-VGA adapter and a VGA cable, and then a VGA-to-Component transcoder. These units are meant to work well and produce virtually zero lag as there's no scaling going on. I don't know which transcoder to get either, so ask as above. This time you want an VGA-to-Component(YPbPr) transcoder capable of handling 240p & 480i natively, and ideally one that can handle “super” resolutions.

    Once you have the hardware above, you install crt_emudriver 2.0, using the guide for the 5000 series and above cards. The guide is step-by-step and easy to follow. Make sure to turn on EDID emulation for the DVI-I port only. The 16.2.1 crimson-based driver is brand spanking new, and *might* have issues. But if it works it'll be your best bet for newer stuff, so I'd try it first. This will allow you to get 15kHz modes out of your system - 240p & 480i being the best-known examples. You may also want to look into Atom15, so that the boot screens from your PC are in 15kHz too.

    You then make sure you have the video modes you want in your system using VMM (in the guide, above, but you may need to add more modes) for the different emulators you use. 640x480i will already be there, as will 320x240.

    I’m writing up a guide to getting 15kHz modes out of a Windows PC, and why you want to use GroovyMAME and super resolutions, and below is a chunk of it (apologies for the essay). A lot of what is said regarding resolutions applies to other emulators.

    What is GroovyMAME?
    GroovyMAME, by Calamity with input from Intealls, Bytebit and others, is a parallel build of MAME. GM, to save typing it out every time. There’s a lot to know about GroovyMAME, but it’s no harder to actually use than MAME. Connecting your PC to an old CRT is the problem.

    Why is GM better for CRT?
    GM has a built-in function called switchres, which, when left on default settings, selects a video mode with a 1:1 vertical ratio, ideally from a list of "super" resolutions, and adjusts the modeline so the refresh matches the original hardware. The ability to push video which is unstretched and unscaled in the vertical produces an image which is all-but-impossible to distinguish from the original system. This is about the most important feature of GroovyMAME, if one of many.

    What are Super Resolutions? (What about Horizontal stretching?)
    Super just means horizontally larger, here. This allows the image to stretch more evenly in that direction. 2560 pixels wide is the default super resolution trigger GM uses, but you could almost double that without a problem. Some analogue circuitry might hit a dot-clock limit, I’m not sure. Be careful. Any functioning analogue TV can do 2560 though. CRT's are limited by their horizontal scan rate (number of vertical lines they can draw) they are not limited by horizontal pixels (number of dots within each line). They aren’t fixed-pixel like an LCD or OLED, of course. Think of two flyscreens with slightly different mesh sizes lain on top of each other - the electron guns fire a grid of pixels at the shadow mask, and the two never line up perfectly - they can't, it's not physically possible. As long as the number of horizontal pixels you're trying to fit your image into is sufficiently large, the effect is seamless. Obviously the computer has to draw the first flyscreen first, the one the guns will fire at the second screen, dot by dot, line by line. Think of the CPS1 arcade system (SF2, final fight + more) at 384x224. Using 320x240 dots would mean that while the vertical will fit at 1:1, you'd be losing pixels horizontally trying to fit 384 into 320, or just enabling some filter or effect that would only warp the original image. The answer is to use a ‘super’ resolution of 2560 pixels, giving a 7/7/6 pixel ratio for each three original pixels of the 384. The horizontal sync rate remains the same, the electron beam sweeps across the face of the tube in the same interval, so the 2560 pixels are drawn into the same physical space over the same length of time as 384 would be, or 320, or whatever.

    You can do this horizontally because there’s no hard limit to the number of pixels that can be drawn by a CRT. Careful pushing too far with that, I’m not sure where the analog circuitry will hit its limit. The picture would probably blur well before that, and even the best PC monitors could only resolve something under 2500 pixels cleanly. Projectors are a separate subject, and not covered here.

    The number of Horizontal lines, however, is one of the main limiting factors of a CRT. Not individual pixels, those are covered above. This time we're talking about lines of pixels. A 15Khz standard definition set won’t go beyond about 288 lines at 50Hz (frames per second). This means that you have to scale 1:1 because most old systems output at about 240 lines, and if you stretch that slightly into say 256, or even 300 or so, the distortion is huge. On the other hand, an LCD with 1080 lines would have more room to stretch evenly. You could even use integer (whole number) stretching so the pixels scale perfectly. However 382x224 isn’t 4:3 when displayed on an LCD, integer stretching or no. And you wanted a CRT for visual fidelity, didn’t you? (If you were wondering, the 224 vertical lines fit into 240 with 8 blank lines each side, which seems to be what Calamity recommends.)

    Trust me, it looks awesome, and just like the real thing. To achieve this you need modelines like 2560x240 and 2560x256 installed on your system. I'm using 2560x262 for WinUAE as it's the only way I seem to be able to get a 1:1 vertical ratio. Not sure why.

    GM has other advantages too, like frame-delay to combat input lag, V-sync offset and audio latency options, but those are not addressed here.

    I want to use GM! How do I connect my Windows PC to my old CRT? (And what are these 15kHz modes people keep talking about?)
    Assuming you have an old standard definition TV, PVM or arcade monitor, the first step is to get the right video mode out of your PC. Modes like 240p and 480i. These modes have a horizontal scan rate of 15Khz or thereabouts – the limit to how many horizontal lines of pixels can be drawn on the screen each second.

    15kHz H-Scan = (Horizontal lines each frame) x (Frames per second)
    Roughly
    15,750 = 262 x 60

    That’s for a 240p mode. The number 262 represents the total number of lines in the video frame, 240 visible and a blanking interval of 22 lines, the latter containing information which sizes/positions/centers the line, then tells the beam to return to the beginning position one line lower, to start the next line. 15,750 is the nominal scan rate of an NTSC SD TV.

    For 480i, we see:

    15,750 = 525 x 30

    In each case, the number listed is the number of horizontal lines in the frame (visible lines + blanking interval lines). 240p, 480i have that many visible horizontal lines in each frame, though 240p has twice the framerate of 480i. Interlaced modes, like 480i, typically run at 60 fields per second. The first field draws odd lines – 1,3,5,7 etc. The second draws even lines - 2,4,6,8 and on. The two fields interlace to make one frame, so that’s 30 frames per second.

    These numbers are not fixed, the product is. You can get a 600i mode into 16.2kHz (where an arcade monitor or PVM will normally cut off) but only at 50i, or 25FPS, which flickers badly. Interlaced modes have a higher res, technically, but if you get seizures I’d be careful sacrificing framerates. In addition, most sets will have cutoff limits. 50Hz-65Hz (Vertical scan, or FPS) and a horizontal scan rate of ~15.6kHz-15.8kHz are about the safe limits for a normal old consumer CRT TV.

    I read about a method to get 15kHz but I can’t make it work! (Soft15Khz/ArcadeVGA/Powerstrip/Dongles/EDID-overrides/other)
    If you use Linux, you don't need to be told what to do next or you shouldn't be using Linux. If you're on Windows, there are a number of ways to install video modelines, but only a few of them work for 15kHz resolutions, and only one is designed to work easily with GroovyMAME.

    The problem arises because Microsoft, AMD and Nvidia all build scan limits into their video drivers, essentially to protect people from themselves. Sailorsat's Soft15Khz, ToastyX's CRU, or Entech's Powerstrip cannot bypass these limits. They used to work, and still might with cards of the 5000GT vintage, from before 2007 or so. But you need a driver to work on your OS as well. With a bit of fiddling you can still use a modeline tool such as these to install any and all modelines you like, and then set them on your display, but the scanrate-check blocks them and switches to the nearest acceptable mode (often 640x480, but not always, so be careful with a laptop or you'll kill your windows install by setting a mode the built-in screen can't deliver like 800x600i at 50Hz - linedoubling that still gives an LCD-crashing 50Hz rate.)

    On raw windows video drivers there’s no way out until someone codes one. On a GPU you used to be able to use an EDID dongle to bypass the check, which told the drivers there was a monitor connected with whatever properties the dongle said. Modelines installed by CRU or Soft15Khz would then work. But this method stopped working about 2008/9 for Nvidia cards, and a few years later for AMD. The driver doesn’t care what the ’monitor’ says, the modes won’t work. (All dates are a guesstimate. I'm playing around with this for modern cards as well, beside ToastyX's pixel clock patchers, but no results as yet. And the method I describe below would be better anyway, when doing things from scratch.)

    The exception is the AMD Firepro and Nvidia Quadro workstation cards, which are more flexible. The dongle will work, but is not needed as those cards have the ability to emulate an EDID, so you can tell the GPU what you want it to do. (CRU and I think powerstrip are capable of overriding EDID, a function built into Windows Vista and up, but not of emulating it, thus they still fail the driver check without further help.)

    Ultimarc's ArcadeVGA cards are another workable option. Either that or a Firepro/Quadro will let you install a bunch of modelines into windows and use them. The ArcadeVGA comes with its own tools to do so. But you'd need a modeline for each system within MAME, if not each game. The ArcadeVGA does have boot protection, but is more expensive than picking up a second-hand AMD Radeon card locally, which you might do if you wanted to use the method below.
    The guide goes on to talk about crt_emudriver, but I did that above

    (Note that this is for your 15kHzonly SD CRT TV with YPbPr inputs. An even better picture, if not massively so, comes from using RGB/SCART inputs; you wouldn't need the transcoder, but there may be other concerns like video amplification.)
    Last edited by buttersoft; 10th February 2017 at 01:46 PM.

  9. #9
    Join Date
    Apr 2012
    State
    NSW
    Posts
    968
    Mentioned
    27 Post(s)
    Quoted
    269 Post(s)
    A trifle


    Sent from my iPhone using Aussie Arcade

  10. #10
    Join Date
    Sep 2014
    State
    QLD
    Posts
    26
    Mentioned
    2 Post(s)
    Quoted
    6 Post(s)

    Thanks @MarkOZLAD for the info on refresh rates, it's good to have a clear definitive list finally.

    @buttersoft Thank you so much. If that is really all the info I need in one place, then this is super helpful, I really appreciate all this, because it seems like info on this 15kHz stuff is all over the place. I have saved your whole post to a document (and MarkOZLAD's links too) in case anything happens to this thread, since this endeavour is going to be a slow burn process. I've decided to stick with the S-Video card and the technique I posted for now, get it all running, have some fun with it & show everyone, get that out of my system, and then if the output quality can be improved, and I know it's possible, it's going to eat away at me till I do something about it.

    To answer your question - YES, I think everything I want can be done at 640x480 or lower. You see, I only set the emulators to 10248x768 to get rid of the artifacting caused by scaling, so if I instead go a route that doesn't cause artifacting, I don't need 1024x768! The other thing is, even those Steam games I was talking about, I'm pretty damn sure they can all run at low resolutions (I've tried some of them) since they're done in a retro style and are just scaling their already low resolution up to whatever screen resolution you specify. Eg. Towerfall, and Duck Game. In fact even ones that aren't done in a pixelly style still support 640x480 I'm pretty sure, a lot of games seem to support that. Eg. Neon Drive - not authentically retro, but retro in a fantasy kind of way This kind of game is cool to have on this cabinet as well.

    Question: You said 480p coming out the S-Video port will "flicker a little". Will this always be the case? Or is there something about your approach that will improve this?

    Also what you said about HDMI conversion has put me off it. I don't want to pay for an expensive piece of hardware to find out it introduces lag!

    I am looking forward to someday seeing the clarity that your method will give. I had a strange experience today, comparing the actual Super Nintendo to the emulated version on my PC, using the same CRT. The SNES is using standard old composite, and the PC is using S-Video. Compared to the PC emulation, the SNES composite image seems very over-bright and the colours more washed out as a result (my non-retro gaming house mate agreed). Also it had some strange speckled artifacting around any high-contrast edges. These things wouldn't have bothered us as kids back in the day. However, I was able to switch on the fly so we could directly compare, and when I switched to the PC emulating the SNES out the S-Video port using the approach I described earlier - the picture was crisper, and the colours were richer! It was a much more pleasing image. This really surprised me, since I assumed the authentic method (the way we ran it back in the day) would have a better picture! I guess what we put up with back in the day was what it was, but nowadays we have tech available to us that can avoid signal degradation, as I recall reading about people making Component out mods for old consoles.


Page 1 of 4 123 ... LastLast

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •