Hello everyone a few months ago I took the plunge into getting all my emulators and frontend set up to output retro games directly to my CRT. I have posted this on a couple forums already but I saw it looked like my information might be helpful here and wanted to share all I could
The picture linked above is just an example of my setup and the finished product. The first thing required in setting this up is just getting a modern PC to output 15khz into a CRT in the first place, the way I’m able to do this is using an old AMD Radeon HD 7850 GPU with modified drivers called CRT_Emudriver, more information on that here but mostly you need an AMD HD series card or higher: http://geedorah.com/eiusdemmodi/forum/viewtopic.php?id=295 check there to see if your card is compatible find a card that is and install it and then all you have to do is follow the installation guides on the forum post I just linked. Then after my computer is now able to send 15khz thanks to CRT_Emudriver I can take the signal through a custom VGA-SCART cable I found on Ebay. The seller I purchased my cable from is no longer on ebay but alternatively you can make the cable yourself with tutorials online, or use the UMSA ultimate SCART adapter linked here: http://arcadeforge.net/UMSA:::15.html . From there I use a common SCART to Component trans-coder easily found on either Amazon or Ebay and an aux to RCA L/R audio cord to send a component signal to my CRT. There is a lot of good extra information about other methods and equipment that can help you bring a signal from your PC to a CRT TV or PVM/BVM here in this thread I’ve also participated in: https://www.aussiearcade.com/showthread.php/87668-A-guide-to-connecting-your-Windows-PC-to-an-SD-CRT-TV-PVM-or-Arcade-Monitor . That covers how I output to my CRT but now onto how I configure my emulators to work with this.
Now on to the Emulator setup, for most systems I use Retroarch. CRT_Emudriver allows you to assign any custom resolutions you want that the TV can support so I have set up several resolutions for my different consoles for the GBA, GB, and SMS they mostly use one resolution but for SNES, NES, Genesis\CD\32X, etc switch between 240 and 224 so I have a profile set up for both. How I do this is I make seperate emulator listings for different profiles in example, Retroarch_GBA.cfg, Retroarch_TV.cfg, Retroarch_224p.cfg etc for each different console / display / vertical resolution I want to choose and point my command line to load them accordingly which is made a little bit easier to manage thanks to Launchbox. The CFG’s for the CRT just define which screen index the CRT is, the resolution to switch too (so no borderless fullscreen here) and the aspect ratio matching the same resolution ex. 2560x240, same with the profile for my big screen TV but it’s set to auto fullscreen to whatever that screen is set to.
I use Project 64 and EPSXe for just a few games on both platforms as well Dolphin and Mame primarily for GC and Arcade so for those I use two tools. Multi Monitor Tool: http://www.nirsoft.net/utils/multi_monitor_tool.html I use this too switch the primary monitor for emulators so they can full screen on the CRT, and then to change it back as well when the game is close using the additional applications feature. I also use ChangeScreenResolution.exe: http://tools.taubenkorb.at/change-screen-resolution/ to change the resolution on the CRT. I make batch files for these tools that tell them which screen to make primary or change to what resolution, then on a per game basis I assign them as additional apps for certain games. Dolphin just auto fullscreens to whatever monitor it was on last on so I have a separate Dolphin executable for games I play on the CRT like virtual console titles. Groovymame is made for CRT TVs in mind and doesn’t really require much additional setup.
Anyways that’s how I set up my CRT to work on my computer with my emulators and frontend, feel free to ask any questions and hopefully someone finds this interesting / useful
Timely thread. I was wondering how to do this myself. Well written too!
Great thread, will definitely be making use of this at some point.
Gonna contribute to the echo going on, great thread and thanks for the info.
Thanks appreciate the responses guys. Wanted to take a moment to link to a product I just found from a comment on reddit: https://www.ebay.com/itm/VGA-to-Component-Transcoder-Retrotek-VGACTV1/192116647418?hash=item2cbb0b65fa:g:3TcAAOSwB-1YtmUY
This should just be able to go straight VGA to Component instead of going from VGA to SCART to Component like I was doing before. I’ll be ordering one of these soon to try to resolve an issue I’ve been having with my current configuration that’s been giving me scrolling noise on my picture and I will let you know the results but I’d probably recommend this over pairing that Ultimate SCART converter box I linked earlier in the thread with a SCART -> Component transcoder, as this will keep you from needing two boxes in order to do this and would be seemingly cheaper.
Updating you all. I received that other transcoder in the mail and it did somewhat help the picture noise but introduced some really intense color bleeding, I contacted the person who makes the product and he explained to me he tests all his transcoders before sending them. He told me he believes my interference problem as well as the color bleeding I experience with his transcoder is due to a voltage issue but I’m not equipped to diagnose it any further so I’ll be taking a break on working on this issue for a while. I still think this product is probably a good solution for people who don’t have the know how to make a custom SCART cable
Pricey but may want to take a look at this AV-700CGA converter:
It’s on ebay, a bunch of listings but they’re all the same seller in California as the site above. I bought one of their RGB to S-Video converters before and it worked well, although I’m sure they’re sourced from somewhere in China and not originally manufactured by them so YMMV on the quality of each individual thing they sell. I would also contact the seller and confirm that 480i output includes 240p. It may be a similar thing in how pro CRT manuals and onscreen display say “480i” but that also includes support for 240p.
Thanks for pointing me to this! I may looks further into this later and purchase that but for now the issue is too minor to spend any more money than I already have throwing things at it to see what sticks
Good work! In my experience any GPU with analog output can output in 240p pretty easily. Currently I use my GTX 950. In some cases you can just enter the custom resolution(s) without any additional steps, but often you’ll need the utility CRU which can easily set up any resolution you want.
As for the cable, if you have BNC RGB inputs, just get a VGA to 5 BNC cable, and a splitter to merge the Hsync and Vsync, and you’re golden. Make sure to NOT get a VGA to 4 BNC cable, as this will only carry one of the sync signals, and you need both. For me retroarch is the easiest to deal with because it accepts your crazy-ass resolution (I’m using something around 240x5XXX) and you only need to set it up once. Also has good global options for reducing lag while maintaining vsync (mainly the “frame delay” setting which you can jack up as high as your GPU can handle to reduce lag). Depending on the emulator I usually get between 1 and 2 additional lag frames versus original hardware.
Big update on this! Someone is currently developing a fork of Retroarch that switches resolution on the fly! More info can be found on that here: https://forums.libretro.com/t/retroarch-native-15khz-crt-support-bounty-suggestion-50/10124
Here is a video of it in action
MM switches between 240p and 480pi in the menus?
Yup! Only the Bomber’s Notebook, not quite sure why they felt the need just for the 1 menu
Must be because it’s double the horizontal resolution to fit more info on screen, small icons, etc, and still look clear.
Anyway that’s an interesting development for folks running emulation on a CRT. I’ve used Groovymame but wasn’t even aware Retroarch didn’t do on-the-fly res switching. What would happen before if you played something like RE2 w/Expansion Pak which normally has constant res switching between different screens and the menu? Fixed 480i throughout?
I tested RE2 the other day and it ran well, it switches from progressive to interlaced all over the place. This current build switches resolutions quickly enough it doesn’t detract from the gameplay much at all but it’s still not quite the smooth transition a real console would have. I believe the author intends to try to integrate Groovymame style resolution switching provided he can make that happen that would certainly bridge the gap
I always assumed a disgruntled employee enabled 480i for that menu screen the day prior to the game going gold because his wife was cheating on him or something.
Thought I’d ask here first. Is there a shader I can use in Retroarch that anyone has found to approximate/smooth dither for the Genesis that works at native res? Seeing the MegaSG doing that made me pine for having the best of both worlds in RGB sharpness and blurred dither to make transparencies.
Or would this be more of an emulator feature?
Yes there is such a thing and these shaders work at native res. Below I have comparisons of me using the Gdapt dithering shader first with Sonic and then the Mdapt shader with mario. As you can see on the “x” characters in the HUD in SMW there are sometimes false positives. You are able to go it and try to weed out false positives by adjusting the intensity of the shader in the paramaters but it’s difficult to get some games just right so generally I prefer just going without a filter or using a composite filter over the whole thing.
I’m gonna try this tonight, thanks!
Seriously dude,you should expand the thread OP into a full-fat OT for 240p Emulation. You’ve been a ton of help to me on my journey and the info is hard to come by elsewhere.
Yes please do that. It would make a few things in 15khz land a lot easier.
Have their been any significant changes since the call was put out to make “Groovymame” type resolutions available