• Enraged
  • Embarrased
  • Drunk
  • Down
  • Depressed
  • Crying
  • Crazy
  • Cool
  • Cocky
  • Bemused
  • Awesome
  • Annoyed
  • Angry
  • Amused
  • Friendly
  • Geeky
  • Godly
  • Happy
  • Hateful
  • Hungry
  • Innocent
  • Meh
  • Piratey
  • Poorly
  • Sad
  • Secret
  • Shy
  • Sneaky
  • Tired
  • Wtf
  • Page 1 of 7 123 ... LastLast
    Results 1 to 10 of 68

    Thread: A guide to connecting your Windows PC to an SD CRT TV, PVM or Arcade Monitor

    1. #1
      buttersoft's Avatar
      buttersoft is online now
      is chasing the beam
       
      Meh
       

      Join Date
      Mar 2015
      State
      Tasmania
      Posts
      1,254
      Mentioned
      57 Post(s)
      Quoted
      416 Post(s)
      Australia

      A guide to connecting your Windows PC to an SD CRT TV, PVM or Arcade Monitor

      This is a basic guide for connecting your Win 7 or Win 10 PC to your CRT using crt_emudriver 2.0 in order to run GroovyMAME or other emulators at 15kHz 240p. This is the best option for emulation currently available, especially MAME. Bear in mind that this document was last updated for October 2018, and even so it's getting a bit patchy.

      It's not hard to connect a Windows PC to an SD consumer CRT TV, professional CRT like a PVM, or Arcade Monitor, but there's lots of small steps you need to get right. This is meant to be a guide to those small steps. It tells you what you’re doing, and a little bit about why you’d be doing it and not doing something else. This should help prevent you making any mistakes. You're trying to make the image on your CRT look as close to the original hardware as possible - no filters, no shaders, no effects, no artificial scanlines. It's about games looking right, and this also helps eliminate lag so they play right. I learned almost all the information in here from other people, and I could certainly have explained things more clearly and in much better order, but it’s taking longer to write than I thought. There’s some general information about CRT’s and modelines (resolutions) included, and if you don’t know where to start when it comes to connecting a PC to a CRT you may want to read it through. It's not short, however, so if you’re frustrated, use the index or ctrl-f. EDIT: it's now so long i'm going to add info as individual posts, so read the thread as well!

      Before you start modifying your PC, backup your windows install or make sure you have a copy. You’re not likely to do any harm, but it’s not impossible if you fail to read properly. And remember that your PC normally boots in 480p or higher, so every time you turn the machine on you'll need to protect or unplug your CRT until Windows loads.

      Everything you need to do can probably be done with a PC, software and cables, and possibly a converter. But if you decide you need to open your TV, remember that any exposed CRT can be dangerous even when unplugged. If you're going to open and play around with a CRT at any point, make sure you know how to discharge the tube correctly, and how to be safe around live equipment.

      Contents
      PART 1
      a) Intro

      b) What is GroovyMAME?

      c) Why is GM better for a CRT? (Vertical Stretching is baaaaad, k?)

      d) What are Super Resolutions? (What about Horizontal stretching?)

      e) I want to use GM and Super Resolutions! How do I connect my Windows PC to my old CRT? (And what are these 15kHz modes people keep talking about?)

      f) I read about a method to get 15kHz out of my PC but I can’t make it work! (Nvidia/Soft15Khz/ArcadeVGA/Powerstrip/CRU/Dongles/EDID-overrides/other)

      g) What about using the TV-out (S-Video) port of some GPU’s? Or a cheap video converter from Ebay?

      h) So what’s the best way to get 15kHz out of my PC? (AMD Radeon cards & crt_emudriver)

      i) Which AMD Radeon card or setup should I pick? (Including boot-protection using Atom-15)

      j) But I already *have* a Radeon card or ArcadeVGA - can’t I use it?

      k) Where do I get crt_emudriver?

      l) How do I install crt_emudriver? (How do I use VMM/ArcadeOSD?)


      PART 2
      m) The physical connection - Cables, and combining sync.

      PART3
      n) Basic troubleshooting.


      The Guide


      a) Intro


      First, let’s establish a few things.

      This guide is about connecting a Windows PC to an SD CRT using an RGB or technically RGBS signal. S-Video and component/YPbPr are also covered.

      Expecting everything to go smoothly the first time you try to connect your Windows PC to an SD CRT is unrealistic. You will almost certainly encounter a few hiccups, have to figure out what's going wrong, reinstall everything and start again at least once. Prepare for this. Get a picture up on the CRT first, then look at customising your emulators, etc. When you do finally get everything set up, consider a free program like Macrium Reflect to take a backup image of your drive.

      You probably want to connect your PC to a CRT to get the visual image from an emulator to look like real hardware, as good as it can look. Some emulators are better at this than others. This guide doesn’t cover emulator configuration beyond a few tips for using GroovyMAME and Super Resolutions. You may also want to watch old SD TV shows or movies and anime.

      Is it worth spending money to do this? Well, how long is a piece of string? Connecting a Windows PC to an old CRT gives you all sorts of options that consoles and linux don't, and personally there's no way I could go back to using an LCD for retro gaming. In my opinion the result is definitely worth it, but sadly it's not always as easy as installing a single piece of software and plugging in a cable.

      CRT’s are analogue. Some have digital processing, and are to be avoided for our purposes here, but even they finish up with an analogue signal. A PC will often output an analogue signal too, called VGA for convenience. But VGA is actually a resolution and not a signal type. The signal type is RGBHV – Red, Green, Blue, Horizontal sync & Vertical sync. Sync is what gives you a stable picture - remember when TV's used to have a v-hold knob, to stop the picture rolling? R, G & B combine to give you the brightness and colours in that stable picture. Sometimes there is more information going back and forth than just the RGBHV, but these 5 lines are all you strictly need. And a ground line. All video signals need one of those, but it’s usually omitted from the description just because. VGA ground lines are normally all connected inside your PC, thus you only need to connect ground once. Google the VGA pinout if you like. (Don't confuse signal ground with mains earth!)

      PCs output other signal types as well. HDMI, DVI-D, and Display Port are all more common than RGBHV(VGA) now, but they’re all digital signals, and not any good for us. They can be converted to VGA or other analog formats at a loss in quality, and normally only with processing lag. To do things right we want a VGA port (HD15 connector), or a DVI-I port, which does the RGBHV signal through a different plug (along with the DVI-D signal we don’t need). And not just any RGBHV signal will do; we want an output controlled in such a way that we can get the low-resolution video modes we need like 240p.

      Back to RGBHV for now. If you combine the H-sync and V-sync elements of RGBHV into Composite Sync, you get RGBS. More on combining sync in section m). RGBS is a standard used for highest-quality low-resolution video. It uses 4 video cables – Red, Green, Blue & Sync. RGBS is NOT the same as the Red, Green, and Blue cables with RCA plugs on the end with no fourth plug for sync. That’s referred to as Component video, or more correctly as YPbPr, often YCbCr if digital, or occasionally as YUV. Do not mistake the red and white audio plugs for a fourth or fifth video line, or for sync! RGBS is also not the same thing as RGsB, or sync-on-green, which Sony fell head-over-heels in love with for a period of the nineties.

      PVM’s normally take RGBS. SD CRT Arcade Monitors all take RGBS if nothing else, though you may need a video amplifier (Ultimarc’s Jpac, for example). Note that later arcade monitors may be multisync, or even 31kHz-only, and it's very important to check the sync range and details for the arcade monitor you have. If your consumer CRT doesn’t take RGBS (often, SCART) or RGBHV, and you're not willing to risk hacking RGBS into the set with the help of the excellent guys and gals on the Shmups thread (if you know how to be safe around electricity I'd recommend looking into this option and seeing what you think) then you need a way to convert RGBHV into something else like YPbPr or Composite video. Composite video compresses all the video information into a single cable, at a significant loss in quality, and I recommend against it unless you really have no other option. S-Video can work for PC use, but you need the right converter. See section g) for more. If you want to use the YPbPr/Component inputs on your TV, a good RGB to YPbPr transcoder introduces no lag, and only a very, very slight drop in picture quality. I know only a little about transcoders, so do your own research there. That said, there's a list in post #10 below, and even some links to schematics for building one.

      CRT’s use a variety of connector plugs. From RF aerial plugs, to RCA sockets, SCART connectors, the BNC bayonet-type connectors often seen on professional gear, and more. And Arcade Monitors normally have their own special plugs, often making cutting and soldering required.

      Ideally you want to use a 15kHz-capable CRT for emulation if that's what the original hardware outputted to. This covers ordinary old Standard Definition (SD) consumer CRT TVs, along with most PVMs and Arcade Monitors. PC CRT's are not usually 15kHz capable at all; they can look very nice, but they're not specifically covered by this guide. Later CRT’s, widescreen or 100Hz EDTV or HDTV consumer models for example, are NOT natively 15kHz capable either. If anything they take that signal and upscale it digitally, similar to an LCD TV or the way a unit like the Framemeister works. But the upscaler built into any TV is garbage, adding lag and losing fidelity. HD CRT TV's have their uses, but retro gaming is not foremost among them.


      b) What is GroovyMAME?

      GroovyMAME, created by Chris Kennedy, maintained and updated now by Calamity with input from Intealls, Bytebit and others, is a parallel build of MAME, the Multiple Arcade Machine Emulator. GM, to save typing it out every time. There’s a bit to know about GM, but it’s no harder to actually use than MAME. Getting an image from your PC to show up on an old CRT is the problem.

      This guide does not tell you how to use MAME, or how to find games for it (roms). One thing I will say, because it often seems to be missing from other sources, is that for any version of MAME it’s best to use the same version roms. So for MAME 0.182, you want the 0.182 roms/romset/bioses/CHDs. The further away the two versions are, the more likely you'll get errors. I do go on to recommend crt_emudriver a bit later, so I should add that you might need the latest version of the driver for newer versions of GM to run. (At least the beta10 version, at this point.)

      Note that a lot of features from GM are being integrated into mainline MAME, and eventually the two may merge. That hasn’t happened at time of writing, however.


      c) Why is GM better for a CRT? (Vertical stretching at 1:1)

      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 rate matches the original hardware and the sizing is right. Vertical resolution is absolutely critical for a CRT. I'm going to talk about horizontal resolution first, in the paragraphs below, but i do come back to vertical resolution and why it's so important.

      The switchres utility works amazingly well with 2D arcade games, and also with the MESS emulator that’s now built into MAME. It’s about the most important feature of GM, but GM also has frame-delay to combat input lag, V-sync offset, and audio latency options. At this point GM on Linux has caught up with Win7/10 in terms of input lag, but i'm a Windows fanboy, so here we are

      EDIT: Calamity is working on an optional update to GM called frame slicing or beam chasing. Modern CPU's are so fast they can update a video frame during the time that frame is being drawn on screen, and this allows GM to respond to control inputs during the current frame. This helps compensate for any input delays and other factors, but it only works in special cases as most games in MAME can't handle partial frame updates. Consider it highly experimental.


      d) What are Super Resolutions? (What about Horizontal stretching?)

      Super just means horizontally larger, here. The picture still looks normal on your screen, of course. In short, a super-wide resolution allows the image to stretch more evenly in the horizontal direction, at the same time allowing you to install, say, only five or six modelines in order to run 99% of games. This means there is far less configuring and tweaking required to get your setup working as well as it can. It also means that when you pick a game your system switches resolutions much, much faster and the game pops up quicker - in some cases ten to fifteen seconds quicker.

      2560 pixels wide is the default super resolution trigger GM uses, controlled by the "super_width" variable in mame.ini. The analogue circuitry in a CRT TV will hit a bandwidth limit above which the transistors won't be able to respond fast enough and the image becomes dim and mushy, depending. (Thanks to NEO-GEO Man for clueing me in, there). Any functioning analogue TV can do 2560 though, even before taking into account how super resolutions are meant to work. A resolution 2560 pixels wide at 15kHz has a bandwidth of about 40MHz. When dealing with analogue video the bandwidth is also called the dot clock. Section e) will talk a bit more about dot clocks. Again, when using super resolutions what you seen on screen is not compressed or stretched out, it looks just like normal.

      To go into more detail... CRT's are limited by their horizontal scan rate, or the number of horizontal lines of pixels they can draw each second. This is the same as vertical resolution, because a raster CRT draws or scans each line of a video frame dot by dot from left to right, one line after the next, down the screen. Hence, scanlines. That's what a raster is, a continuous stream of bits broken up by line markers. CRT's are not, however, limited by horizontal resolution, and the number of dots within each line can be 2560, or higher, as above. The overall screen width is unchanged, the electron beam sweeps across the face of the tube in the same interval, so the 2560 horizontal pixels are drawn into the same physical space over the same length of time as 384 would be, or 320, or whatever. CRT's are not fixed-pixel like LCD or OLED because while there are discrete phosphors of three colours that light up, each can do so partially or unevenly. 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. Increasing the horizontal resolution is like spraypainting much finer dots over the visible flyscreen. There's more to it than that, but it's a convenient analogy. Don't expect to resolve the fine details of a 1920x1080p image on your SD TV, obviously. We're using the super-wide resolution for a special purpose, and the fact the pixels are in groups (see below) makes a difference too.

      Why bother increasing the horizontal resolution? Because it saves massive amounts of time, and because using a large horizontal resolution eliminates scaling artifacts. Take the CPS1 arcade system (SF2, Final Fight + more) at an unusual resolution of 384x224. Sounds unusual anyway, doesn't it? Obviously the computer has to draw the first flyscreen first, the one the colour guns will fire at the physical phosphor-coated screen, and it does so digitally, dot by dot. Selecting a resolution of 320x240 dots would mean that while the vertical will fit at 1:1, with eight blank lines at the top and eight at the bottom, you'd be losing pixels horizontally trying to fit 384 into 320, or just enabling some filter or effect that would warp the original image. Even using 640x480 isn’t a great help, and will not produce a very even picture. The answer is to use a ‘super’ resolution of 2560 pixels wide, giving a 7/7/6 group for each three pixels of the original 384. As long as the horizontal resolution is sufficiently high, the effect is seamless.

      Vertical resolution is different, being one of the main limiting factors of a CRT. Individual pixels are covered above, this time we're talking about lines of pixels. The scanlines of a progressive SD video frame are separate and distinct. This means that you have to scale 1:1 in the vertical direction because most old systems output at about 240 lines, the lines are spaced out, and if you stretch that 240 slightly into say 256, or even 288 or so, the distortion is huge, and scrolling backgrounds or moving sprites stand out like dogs' balls. 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, and leave some blank space. However our example of 384x224 isn’t 4:3 when displayed on an LCD, integer stretching or no. You could always use partial stretching in the horizontal only, on an LCD, but you wanted a CRT for visual fidelity, didn’t you?

      To use super resolutions you need modelines like 2560x240p and 2560x256p installed on your system. I'm using 2560x262p for WinUAE as it's the only way I seem to be able to get a 1:1 vertical ratio. Not sure why; 288p works for most ppl. Other emulators or packages like Retroarch and Mednafen will happily use super resolutions too, you just tell them not to stretch vertically, and how much you want to stretch horizontally. Sure you can run everything in 320x240p with a single modeline, but even the SNES has several video modes it uses. The Amiga has four primary ones in each of two regions. And arcade games are all over the shop. Different devs used different tricks in different regions at different times, let alone the fact different consoles pick different on-screen positions for their video output. Super resolutions work to circumvent most of these issues, and look the same if not better than plain old 320x240p. Some people swear by a 3840-wide image as being an integer multiple of a greater number of native resolutions, but as the number of pixels in each line gets above 2000 or so, increasing it makes less and less difference.

      Done right, using Super Resolutions saves tons of time and looks awesome, just like real arcade hardware or consoles. If you don't use super resolutions, you need to have the native resolution installed for every game you want to play, or you'll be settling for a lower-quality video image. Setting native resolutions for everything balloons out configuration time even if it's physically possible to size everything right on your CRT, and if you have to make changes you'll find yourself facing the same huge task over and over. And don't kid yourself, even if you buy a Hyperspin drive you'll be spending several days configuring things, and then more in a month or two when you realise you didn't do everything quite right the first time.

      If you're going to try super resolutions, remember to keep a few normal resolutions too, like 640x480i, so the desktop remains useable! And not everything will use super resolutions, so having a few fallbacks (320x240p, 256p, 640x480i, even 800x600@50i) is a good idea. The guide linked to in section l) covers installing resolutions with VMM, super or otherwise.


      e) I want to use GM and Super Resolutions! How do I connect my Windows PC to my old CRT? (And what are these 15kHz modes people keep talking about?)

      This might sound obvious, but 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, named for the number of visible horizontal lines (vertical resolution) and whether they are (p)rogressive or (i)nterlaced. All these modes have a horizontal scan rate of 15kHz or thereabouts – the rate at which horizontal lines of pixels are drawn on the screen each second. An old standard definition CRT is often limited to a 15kHz scan rate, give or take. Pushing things too far can do damage, so make sure you read carefully.

      (Nominal NTSC Standard Definition scan rate) = (Horizontal lines each frame) x (Frames per second)

      (FYI if we multiply the scan rate by the horizontal resolution, we get the Dot Clock, or Pixel Clock, which is the bandwidth of the modeline, but we’re not so concerned with the number of pixels within each line here. Horizontal resolution is not limiting, and super resolutions always have a higher dot clock than the lower limit of some GPUs, that limit being ~8 MHz).

      For 240p, we have:

      15.750 kHz = 262 lines x 60 FPS

      The number 262 represents the total number of lines in the video frame, 240 visible lines and a blanking interval of 22 lines, the latter being as named, blank, and usually drawn off the screen. The vertical blanking interval contains the vertical sync pulse. Each of the 262 lines of a frame is drawn left to right, one after the other pretty much, then the vertical sync pulse returns the beam to the top to start again. This happens ~60 times a second for 240p. (There are horizontal sync pulses too, which size/position/center each line, then tell the beam to return to the beginning position one line lower.) Note that this is for 240p; the mode I'm using above for WinUAE is 262p, and probably has about 284 total lines.

      When used alone, the term 240p normally refers to the standard 320x240@60hz mode. But remember that at the same horizontal scan rate you can slot in as many horizontal pixels per line as you like, subject to concerns mentioned in section d).

      For 480i, we see:

      15,750 = 525 x 30

      Interlaced modes, like 480i, typically run at 60 fields per second. The first field draws odd lines – lines 1,3,5,7 through to 521,523,525. The beam then returns to the top and the second field draws even lines - 2,4,6,8…522,524. The two fields make one frame, so that’s 30 frames per second, with each frame drawn in two parts. This method achieves a higher vertical resolution (more horizontal lines per frame and thus more detail) but creates visible flicker in so doing. (Don't worry about that framerate, a CRT at 30Hz will get less motion blur than a top-end LCD at 120Hz). Games at native resolution normally look fine using interlaced modes, but you don't want to be using the desktop that way for long periods.

      The numbers in these equations are not fixed, they have range limits. A PVM or Arcade monitor will normally tolerate a horizontal scan rate of between 15.5 and 16.2kHz, along with a vertical scan rate (FPS) of 48-65Hz (Fields or FPS here, whichever is higher). A consumer TV will normally handle a slightly narrower range than this, and you can find those limits if you want to. Different games and consoles play with them a little. This is important to note, and it becomes more important the more obscure the titles you want to run. You can get a 600i mode into a 16.2kHz scan rate (about where an arcade monitor or PVM will normally cut off) but only at 50 fields per second, or 25FPS - the desktop will flicker a little more noticably, but games will mostly be fine. This will let you run 800x600 games - I have not yet encountered a game or emulator on windows that cared about interlacing or refresh rate, though some titles do slow down to 5/6th speed if V-sync is locked. And I hear Retroarch has some issues that are being looked into or worked around. Different TV’s are different, and it shouldn't hurt to try and find the scan limits of yours while testing. If a stable picture doesn't come up, even when you adjust whatever V-hold and H-hold settings you have, then you've pushed a bit far. The VMM suite of tools included in the crt_emudriver package will allow you to play with these numbers in a graphical format, though doing so may take a little getting used to.

      Remember that certain arcade monitors have certain limits, and you should use google to find out about anything specific to yours. Nanao MS8 monitors, for example, have a very narrow safe scan range, and although they can sync to a much larger range, using them outside their sweet spot will burn out the horizontal sync circuitry pretty quickly. Most TV's and certainly PVM's are designed to be more versatile.

      Note that the numbers in the equations and the advice above are all for 15kHz monitors. The equations themselves, however, apply to all video modes and monitors, CRT or fixed-pixel, but in slightly different ways, and with different limits. For example: VGA=480p=31.5kHz=525x60. An LCD will almost certainly have a couple of fixed refresh rates, and you can't trade resolution for frames all the time even if your GPU thinks you can. The equations are still handy for finding pixel clock limits, etc, if you run into problems with these refresh rates or output formats.
      Last edited by buttersoft; 10 Hours Ago at 10:34 AM.

    2. #2
      buttersoft's Avatar
      buttersoft is online now
      is chasing the beam
       
      Meh
       

      Join Date
      Mar 2015
      State
      Tasmania
      Posts
      1,254
      Mentioned
      57 Post(s)
      Quoted
      416 Post(s)
      Australia


      f) I read about a method to get 15kHz out of my PC but I can’t make it work! (Nvidia/Soft15Khz/ArcadeVGA/Powerstrip/CRU/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 GM. There’s more than one way to skin a cat, and all the methods listed in this section might work for you to get 240p. But none of them are easy, and, depending on your setup, may actually be impossible. If you’re having trouble, bear that in mind.

      It's important to note that GroovyMAME's switchres utility only works right with crt_emudriver (EDIT: actually, i think switchres will work with any driver, given the right video modes. Can anyone confirm?) Switchres is the module that recalculates modelines and allows games to run at their native refresh (using a super resolution, of course). So even if you do manage to enable 15kHz another way listed there, to get native resolution and refresh you need tons of modelines. Windows can have trouble with duplicate resolutions, so 320x240@59.97Hz and 320x240@59.6Hz might not be able to coexist. Using the wrong refresh means either screen tearing or games running at the wrong speed. Or creating more modes like 320x242@57Hz, say, and writing a custom ini file in mame so whichever games use this mode don't get stretched. Again, this leads to much, much longer configuration time. Other utilities for linux and rPi, and possibly retroarch, are catching up, but GM is the gold standard right now.

      Problems getting 15kHz out of a Windows PC arise because Microsoft, AMD and Nvidia all build scan limits into their video drivers, essentially to stop idiots locking themselves out of their Windows install, which will happen if their monitor doesn't get a valid video mode. (In fact Windows 10 doesn't even like delivering 640x480p. It's there as a fallback, but you're not meant to be able to get to it). ToastyX's CRU or Entech's Powerstrip are excellent programs, but are not intended to produce 15kHz modes specifically and cannot always bypass the scan limits effectively. Sailorsat’s Soft15kHz is meant for this use, but predates the current imposition of the limits, and is thus not a way around them. All of these methods used to work, or would once have worked, and still might with cards of the NV7000GT-series vintage or possibly earlier, or on older OSes. But on raw Win 7/10, or Win7/10 with NVidia, and probably XP, there’s no guaranteed way out anymore until someone codes one.

      There’s nothing actually stopping you installing whatever 15kHz modes you like on Win7 or Win10. With a bit of fiddling you can still use a modeline tool such as the above, and then set the modes on your display, using a utility such as quickres if necessary, but the scanrate-check in the video driver blocks them and switches to the nearest acceptable mode instead (often 640x480, but not always, so be careful with a laptop or you'll kill your Windows install by forcing or doubling a mode the built-in screen can't deliver like 800x600i at 50Hz - you can’t VM into a machine that won’t load into Windows.) Windows has handed control of the video output to the driver as it loads, and the driver has the final say. If you want to go this route and install modes for an Nvidia card, I hear it helps to use CRU rather than the NVCP or Soft15kHz, and to remove all video modes apart from the 15kHz ones you need, but i haven't tried this. You will need to look up or learn about modelines, but that isn't too hard.

      With an EDID dongle you used to be able to bypass the check. An EDID is the monitor-description code on an EEPROM chip in every newer monitor. An EDID dongle would tell 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 possibly a few years later for AMD if there was even any window to begin with. Those dates might be off, but newer drivers don’t care what the “monitor” says, the modes won’t work.

      The exception here is the AMD Firepro and Nvidia Quadro workstation cards, which are more flexible. The dongle will work, but is not needed as the drivers for those cards have the ability to emulate an EDID, so you can tell the GPU what you want it to do. CRU and powerstrip are capable of overriding an EDID, a function built into Windows Vista and up, but not of emulating it, which is a reserved function standard drivers don't have. There’s an amount of messing around, you may have to write your own EDID in special format, for example, then install modes manually and switch between them, etc etc, but it can be done. Some older Quadro's in particular may simply do what you tell them without so much hassle.

      Ultimarc's ArcadeVGA cards were a revolution, and remain a workable option. But they’re not the premium deal they used to be, and there can be weird or insurmountable issues with setup. Assuming everything goes smoothly, either an Arcade VGA or a Firepro/Quadro will let you install a bunch of modelines into windows and use them. The ArcadeVGA comes with its own tools, but the tools aren’t as nice as the ones described below and won't work with GM. An ArcadeVGA does have boot protection, but is more expensive and nowhere near as powererful as a second-hand AMD Radeon card, which can use Atom15 anyway - see section h) and section i). ArcadeVGA cards are based on AMD chipsets (the 3000 series/3350, 5000 series/5450, etc) but use a custom BIOS, and crt_emudriver can’t recognise them, in case you were wondering. You can probably re-flash the BIOS to make them into regular Radeon cards, and vice-versa I'd say. But don't quote me on that.

      As stated above, there may be ways to make all these methods work. Sometimes they just do. Most times they're not straightforward, and use utilities designed for other purposes that happen to work together. For example Pakoman figured out that you can use ToastyX’s pixel clock patcher on the latest AMD Crimson drivers and then install 15kHz modelines manually with CRU. And there are older disc images floating around for multiboard setups on WinXP that use Soft15kHz successfully. But in the main it's not going to work. Save yourself the migraine.

      EDIT: For completeness, i'll add a thread from ArcadeControls listing Soft15kHz compatible cards. I would not take this list as definitive by any means. And crt_emudriver (below) is far less work overall and much more functional. Remember that while MAME and GM are primarily CPU-dependent, and most of the time only use the GPU to push a video mode onto the screen, other emulators and more modern games may need a bit of graphics power.


      g) What about using the TV-out (S-Video) port of some GPU’s? Or a cheap video converter from Ebay?

      Full Disclosure: this is the simplest way to connect your PC to a CRT TV. The cables will go directly from one to the other, from computer to TV or whatever. The problem is that image fidelity suffers here, even using component video, and not just by a little bit. I'm not going to recommend spending money on this method, but if you have the gear, by all means give it a shot. Even cheaper is to buy an LCD monitor and a jar of Vaseline and rub the stuff into your eyeballs. Either way you're going to appreciate the preferred option in section h) a whole lot more.

      The TV-out is the mini-din connector, or possibly single RCA connector for composite video, shoved onto older GPUs. These will work, but not well. S-Video is almost as nice as RGB for gaming consoles, but sadly it's awful when output by a PC. The video-out ports on graphics cards were designed for just that sort of content, and use a hardwired 480i mode that can’t be altered. You do not set up your PC in any special way, you simply run a game as normal, at whatever resolution you want, and the TV-out will take it and smear it into 480i. Even going for a 640x480p resolution merely gives you resampled 480i, which is pretty rubbish at best. There is no 1:1 conversion, and what happens is a mess.

      Using composite video is even worse than S-Video. Component/YPbPr is slightly better for higher res, as it often has more than a single hardwired 480i mode, but not worth the trouble. I'll admit i don't know as much about that, especially delivering component over DVI-I, but I don't believe it's the same thing as just altering the colour space in the GPU control panel. As a general rule you should never presume you're going to buy a three-dollar VGA-to-something adapter and get anything to work.

      In general - stay away, unless you have a card sitting in the cupboard and only want to watch old SD video content. The same goes for cheap converter units. There might be decent downscalers or scan converters out there that will turn VGA or even HDMI into S-Video and composite video, but the window during which there was a need for such units for professional use was never large. Something like the Shinybow SB-3800 seems to be about as good as it gets, and it's designed for 480p input. Most of them seem to be, and i'm not sure what trying to feed in 15kHz would do. And no $30 box on ebay is going to be worth the money anyway. This includes HDMI to SCART units. Even the good ones are still going to shoehorn everything into a 480i output mode, no matter if you feed in 1080p or 720p or whatever you want. They probably can't handle a 15kHz input, let alone providing a 1:1 image transition. HDMI is digital to boot, and converting a digital signal to an analogue one adds lag into the mix, be aware. Cheap analogue-to-analogue units probably add lag too, along with their other problems.

      Using a discrete VGA-to-Component video converter, rather than trying to get component video out of your GPU directly, is different to the other options listed here, and should be acceptable as long as the converter is of sufficient quality. It's dealt with in sections a) and m) of this guide, and in post #10 below.

      Important Edit: The Jrok PAL/NTSC boards or the Neobitz units might actually give a decent RGB-15kHz-to-S-Video conversion. And possibly even a semi-decent composite video output too. At any rate these seem to be the best out there for what they do, but they are designed to convert RGBS from an arcade board, so you'll need to look at adjusting video levels and combining sync. And remember that you need to get 15kHz out of your PC first, somehow. I've never used one of these, and have no knowledge of their specs. EDIT: it looks like the J-rok boards at least will give 240p, and probably a 1:1 conversion. They're also happy with composite sync straight from your video card - see section i) for more on composite sync. And they output component video too. See post #10 in this thread.


      h) So what’s the easiest way to get 15kHz out of my PC? (AMD Radeon cards & crt_emudriver)

      IMO the best and easiest method for getting 15kHz out of Windows 7 or Windows 10 is by using the newest version of crt_emudriver 2.0 on an AMD Radeon HD 5000-series to R9 380 card, or various newer mobility cards and APUs. The up-to-date list is here- http://geedorah.com/eiusdemmodi/foru...pic.php?id=295. The driver calls itself a beta version but it isn't, do not be dissuaded. Calamity hacked various regular AMD drivers to turn the EDID-emulation functionality back on and the mode-check and mode-limits off. He's always working, so check the GM subforum on ArcadeControls for the latest news. Make sure you're using an up-to-date version of the driver unless you specifically know you need an older one, as it's harder to troubleshoot older versions and newer builds of GM don't work unless they have a newer version of the driver.

      A Radeon HD 5000 or newer card is best. Older cards like the Radeon HD 2000, 3000 and 4000 series will work, but lack features and the protection EDID emulation gives your screen. Still older cards will work for Windows XP using crt_emudriver 1.2. Read Calamity’s site for more info. There's really no point in buying something older unless you're already running XP and just need a card, and XP can't run newer versions of GM that needed the newer drivers. You'll never get a Soft15kHz-compatible driver that will run reliably on Win 7, let alone Win 10 - see section f). And you want Windows 10 if you can get it as most of the best options for emulation are still under development, and will be supported into the future. The catch is that if you're computer is online, once a year or so the big creator updates might cause your crt_emudriver install to go south, and you'll have to setup again with an LCD - make sure to save your configuration, grab all the files or whatever, and you should be able to get back to where you are.

      EDID emulation is one important reason you want a 5000 series card or higher, and not a 4000 or lower series one. With it enabled, the driver tells Windows that there is always an SD CRT monitor connected, and what that monitor can safely handle. Without EDID emulation, monitor detection can fail or revert to unsafe defaults every time you turn on your system, let alone the mess when you want to plug an LCD into a second port for testing or because you’ve opened a program with a window too large to read at low resolution. There are other benefits to the newer AMD cards, like ease of use and speed of resolution-switching, not to mention grunt, but EDID emulation is easy to recommend. It’s a way to preserve your monitor and your sanity.


      i) Which AMD Radeon card or setup should I pick? (Including boot-protection using Atom-15)

      This section goes into far more detail than it needs to. In general, something at or newer than the Radeon HD 5000 desktop series is good, up to the R9 380 at the top end, but what do you want to play? Video content will play fine on a lower-end card. And MAME, and thus GroovyMAME, is almost entirely CPU-dependent, and getting hungrier as 3D emulation gets more accurate. In MAME/GM the GPU is merely used to push a video mode. (MAME is often single-threaded but will benefit from a multicore processor, and most other emulators will too.) For a video card you can pick up a second-hand low-end supported model pretty easily on Ebay or Gumtree/CL/Kijiji for under A$40, to get you started.

      The other low-end option is to use a newer APU with a built-in Radeon chip. Check the same crt_emudriver lists to find a compatible model, starting somewhere around $30. This will be fine to play video or run 2D MAME games via GM, but you need the rest of the computer too, obviously.

      Other emulators and games may require GPU power. Google is your friend. A lot of slightly older PC games will run nicely in 640x480 (your system will pick 480i for that.) Grid2, Dirt3, Outrun 2006, TTX, Supermodel, Demul and other titles need a bit of graphics oomph. They may need notable CPU power, too. Cave shooters need both. Anything that will run in 800x600 should work ok - it'll be 800x600@50i, but you won't notice that. Hell, you can play Tekken 7 online at that res if you really want to (and I do). I think it might actually work at 640x480i as well. And if you're lucky enough to have a multisync or 31kHz monitor, you can sometimes go as high as 1080i, which will let you play anything at all you have the GPU power for. For newer cards there is even a version of the Crimson driver available right now. Note that the more graphical power the card delivers, the more power connectors it needs and the more heat it generates - a passively-vented arcade cab may need fans if the graphics card you pick has two itself, as a rule of thumb.

      Make sure the card you pick can output analog video (DVI-I or VGA) as a lot of newer cards have dropped it completely. Different models of the same GPU from different makers might be different. Same goes for laptops, if you're going the mobility route. And you'll probably need a DVI-VGA adapter if the card has no direct VGA port. With the adapter your DVI-I port becomes a VGA port, for all intents and purposes. TBH you may want the adapter anyway as the ribbonned VGA ports can be subject to video noise.

      Calamity has also added full support for composite sync in the Beta 13 version of crt_emudriver 2.0. Read section m) if you don't already know why this is important. Make sure to read the notes in post #2 of the crt_emudriver download thread before attempting to use composite sync, tough.

      An important factor to consider is how your PC will boot. Before Windows takes over (and then itself hands over to the video driver) video modes are called directly from the bios of your graphics card, and these are not 15kHz by default. They start at 31kHz (480p) and for newer cards go upwards from there. While it's ok to push the limits of your CRT for testing, repeatedly feeding it a signal well over spec is not the best idea. The easiest option is simply to wait until the PC has loaded and then turn on your monitor. A neater solution for a GroovyMAME cab is Atom-15. Using this utility you can modify the BIOS of your Radeon HD card so it outputs 15kHz as well, protecting your monitor while the computer boots. This may make the bios screens invisible on newer UEFI bios motherboards - they should still work, but you can't see the boot options. Lastly, if you flash the BIOS and something goes wrong, you might brick your card and need a second card to recover it. It's not at all likely to happen with a discrete card, 99.9% of the time it just works, but be aware. It’s really no different to flashing any other custom BIOS.

      Atom-15 is available from Calamity's website, along with instructions. There are also numerous threads on the Arcade Controls forum to help you solve problems, and I'd suggest searching there for issues before you attempt to flash a card, or even better before you buy one. The R9 380 has problems, for example. APU's are an unknown factor at this time, and I'd recommend you seek confirmation before going near them with Atom-15.

      After this, this section turns into general notes and points of interest. Skip ahead unless you need special info about mobility cards in laptops, older APU's, flicker filters, monitor detection on XP, etc.

      As a side note, cards after the 5000 series have at most a single analog-capable (DVI-I or VGA) port and if you need two analog outs you might be able to use two cards. Some very few low-end 6000 or 7000 series cards are actually based on older chipsets, and may break this rule, I'm not sure. Low-end DMS-59-port cards (that weird double-adapter port) are sometimes from a series earlier than claimed, e.g. a DMS-59 6350 might really be an overdressed 5450. It would pay to check out any DMS-59 card thoroughly before buying, and to make sure you have an adapter. (Thanks to Haynor and sorry to 80's Kid for that one.) Same goes for Radeon Mobility cards in laptops. The lower 4000- through 6000-series mobility cards, at least, are often based on a 3300 series chipset, i believe. Older mobility cards are not expressly supported by crt_emudriver, though they often work just fine due to the fact they're revamped desktop cards, if minus a few features you might have wanted. Remember that the Radeon 2000 and 3000 series comes with an 8MHz dot clock limit, so they will do 640x240p, or wider, but won't do 320x240p as that's (just) under 8Mhz. See section e) for more about dot clocks. This doesn't normally affect things as you can configure your emulators to work around it.

      Regarding adding an AMD Radeon card to your existing setup: If you're using an Nvidia card, it is possible now to use a separate AMD Radeon card at the same time. It may depend on which cards you use, and a whole host of other factors i know nothing about. Adding crt_emudriver into the mix will only complicate things, remember. You may not be able to fullscreen GM and use the mouse and keyboard on your other screens at the same time, for example. Either way, you'll have to look into this for yourself. Adding a second Radeon card to your existing Radeon setup is kinda pointless, because you have to use crt_emudriver for both cards. AFAIK you can't use two different drivers from the one manufacturer. That said, a single card at the top end of the list might do ok for modern games. You can install all the resolutions and extra monitors you need with crt_emudriver, and use a CRT plus your LCDs at the same time (I'd use a 5000-series or newer card for EDID emulation for sure here) but you'll always be running a slightly older driver. Not too old, but if an AAA title requires you to update, you'll be in trouble.

      To mention another technicality: the Radeon 5000 series and newer cards have a flicker filter. The 4000 series and below cards do not. If you have a monitor that handles interlaced modes with absolutely zero flicker, like a late model consumer TV can, you may want a card without the filter as the image produced will be slightly sharper. You also lose out on the EDID emulation. In general though, CRTs flicker when displaying interlaced video modes. PC sources are noted for this, and the gain from the filter vastly outweighs any loss of sharpness, IMHO. So ignore this paragraph unless you’re actually having a problem, or your crt is old and the grids themselves are losing focus, perhaps. Remember that this only affects interlaced modes like 480i or 600i; progressive modes like 240p are unaffected either way, and that's what almost all arcade emulation is.

      EDIT: from crt_emudriver 2.0 beta 11 upwards, the flicker filter has been disabled. You can get beta 10 and back from this link. However, this also means you lose out on composite sync, which is from beta 13 and up. This may be a deal breaker. See section m). Personally i'm a big fan of the filter for old 3D games and use in frontends, and i've asked Calamity if he wouldn't mind adding it back as an option. It might be possible to use the beta10 driver, and the beta13 VMM tool though, so give that a go if you like.

      Older APU's, like the AMD E-450 for example, with its inbuilt Radeon mobility 6320, really an RV710-based Mobility 4330 (and god help me i would swear blind the mobility 4330 i used to have was really an overdressed 3350) are a mystery to me. I hope to acquire one soon, but in the meantime see post #52 in this thread.

      For much older cards, well before the EDID emulation feature, you can force monitor detection on a Windows VGA port, but you should only be doing this if other methods within windows have failed. Plugging in your CRT will normally help older versions of Windows detect it - note that you don't need to turn it on, just plug it in. If this fails, you can try to force detection by placing a 75R resistor between any colour(s) R/G/B and ground, called a signal termination for other reasons. Don't get that wrong or you'll hit the 5Volt line by mistake. Google is your friend. Note that this doesn't tell Windows the monitor is 15kHz only - you still have to do that with crt_emudriver, and carefully.

      Laptops are another concern with Atom-15. crt_emudriver itself normally works fine, other concerns aside, but if you flash a laptop's graphics bios with Atom15 i reckon the built-in LCD will spaz out and crash your system. Recovery from that would be a nightmare. It won't just kill windows, it may render the laptop useless. If you know more about this, and how to make it work safely by targeting only the VGA port with the modified BIOS (A laptop often defaults to using that port for POST if anything is plugged into it) then please let us know. I have a few suspicions, but I really don't know enough about this area to give sound advice


      j) But I already *have* a Radeon card or ArcadeVGA - can’t I use it?

      Possibly. Reread sections h) & i) in detail, then read the lists for the original version of crt_emudriver and for the 2.0 release in the link just below, remembering to take note of the OS, the pixel clock info in red, the presence or lack of a VGA or DVI-I port, and understand that using anything earlier than the Radeon HD 5000 series comes with headaches as described above.

      http://geedorah.com/eiusdemmodi/foru...forum.php?id=7

      Regarding ArcadeVGA cards - these are based on low-end Radeon cards (3450,5450) but use a custom BIOS, and crt_emudriver won't recognise them. Ultimarc make excellent products, but in this case alone for less money you can get a Radeon card that's a lot more powerful, more compatible and much easier to use.


      k) Where do I get crt_emudriver?

      From Calamity’s website, of course - http://geedorah.com/eiusdemmodi/foru...forum.php?id=7

      Read the information there and make sure you pick the right download for your card and operating system! Newer versions of the driver are better than older versions, everything else being equal. If you're having trouble telling whether you have a GCN card, try Wikipedia - https://en.wikipedia.org/wiki/List_o...ocessing_units

      The crt_emudriver package comes with the driver, VMMaker and its ini files for creating resolutions, and a tool called ArcadeOSD for setting video modes on low-resolution screens. ArcadeOSD can also tweak your modelines to center them horizontally, adjust their horizontal size, and help squeeze the best out of your crt. This means you can feed your exact monitor timings back into GM via the crt_range lines in the mame.ini file, and also set your modelines up just right for other emulators.
      Last edited by buttersoft; 1 Week Ago at 11:20 AM.

    3. #3
      buttersoft's Avatar
      buttersoft is online now
      is chasing the beam
       
      Meh
       

      Join Date
      Mar 2015
      State
      Tasmania
      Posts
      1,254
      Mentioned
      57 Post(s)
      Quoted
      416 Post(s)
      Australia


      l) How do I install crt_emudriver? (How do I use VMM/ArcadeOSD?)


      Ideally, after making sure you have the right version for your card and OS, you install it over a fresh install of Windows. You don't want old drivers or complicating factors on your first try. Hardware changes and Windows updates might make a reinstall necessary down the line, but that's different It’s best to follow one of the step-by-step guides here – http://geedorah.com/eiusdemmodi/foru...forum.php?id=2

      Make sure to pick the guide closest to your card! If you have a newer card or APU, you’ll want the guide for the 5000 series and up cards. The guides are easy to follow, but don’t skip ahead. If you plug the wrong display into the wrong port for the wrong step, you might wind up with a windows install that cannot output to a display. It’s not possible for that to happen if you follow the right guide, though. Try to set the right monitor preset at first, until you're more confident with your modelines. Use "generic_15" for an old TV, and a tri-res preset for a tri-res monitor, for example. "arcade_15" is fine for a PVM though.

      After that look at the GroovyMAME setup guide on the same link. It's slightly older, and the stretching options aren't quite right as described for newer GM builds. If you have installed and plan to use Super resolutions (strongly recommended) then leave the stretching options alone and just set the "resolution" variable to 2560x0 in the mame.ini file. The 0 gets adjusted by switchres. You then set the "super_width" variable to 2560. This tells GM that when the horizontal component of the "resolution" variable is set to 2560, it should calculate and match up modelines for you based on a game's native resolution. This is pretty important, so don't forget.

      There is a guide to VMM here, but a good place to start is the monitor presets thread on the GM forum, section e) of this guide, and this slightly dated thread about V9 - more options exist now. Normally you'd just use the VMM GUI unless you want to manipulate specific modelines. It helps to understand what a monitor range line is, and what it's made up of. There is a guide to understanding modelines here, though i just googled it

      The guide to ArcadeOSD is on the same link as VMM just above, but to summarise, changing the timing around the horizontal sync pulse and porches for a mode will move the image on the screen left and right and resize it. Play around and see, knowing that you can hit Esc to go back at any time. You then save any changes you want, for other emulators. To make these timings stick for GM you can either redo VMM with updated timings in the monitor.ini, or edit the mame.ini file with the updated horizontal timings (starting with the crt_range0 line, which for the generic_15 monitor preset defaults to crt_range0 15625-15750, 49.50-65.00, 2.000, 4.700, 8.000, 0.064, 0.192, 1.024, 0, 0, 192, 288, 448, 576 - remember that your monitor may want a different preset, and that any specific vertical.ini, machine.ini like neogeo.ini, or game.ini files will override). Calamity insists redoing VMM works best, but i find that with the spread of modes i'm using (230p at 60Hz all the way up to 600i at 50Hz) on different monitors, i still want to set the mame.ini timings afterward.

      EDIT: For Windows 10, after you install or reinstall crt_emudriver, make sure to tick the "hide modes this monitor cannot display" box in windows display properties, and to stop and disable the windows service called AMD External Events Utility. You can just type "services" into the start menu to get to the services options. Then search for and open “Power options” in the Start Menu. Click “Choose what the power buttons do” on the left side of the window. Click “Change settings that are currently unavailable.” Under “Shutdown settings” make sure “Turn on fast startup” is disabled/unchecked. The former stops programs grabbing higher res video modes they once used despite the fact those modes are not meant to exist now, and the latter stops your computer from ever starting up with a letterbox crush, where the whole vertical resolution is compressed into half it's size in the middle of your screen.

      For more general information you might check out this other, older GM guide. It's out of date, but covers a few areas I don't, and there's some good information there. Remember though: Win 10 is best, and you want the newest versions of crt_emudriver for better video cards, ideally.

      If you get a lot of use out of crt_emudriver and its tools, or even GM itself, remember to show Calamity some love and donate!


      PART 2
      m) The physical connection - Cables, and combining sync.
      (Note that while this section talks specifically about 15kHz TV's or other CRTs, the methods for combining sync will probably work for RGBS CRT's with a higher scan rate as well, such as presentation monitors or multisync PVMs.)

      Once you've figured out how you're going to get 15kHz video modes out of your Windows PC, you need a way to get that signal into your CRT. Most older consoles, even a PS3, will output RGBS. But for a PC things are more complicated. If you're very lucky, you have a 15Khz CRT monitor or transcoder that takes VGA in, and can use a regular VGA cable. Or one that takes separate H-sync and V-sync BNC lines, so you can use a VGA-to-5-BNC cable. Many arcade monitors take RGBHV along with RGBS, you'll need to check yours, and you may need to attenuate the voltages with pots or resistors.

      Otherwise your CRT (or possibly VGA-to-YPbPr transcoder if you've gone that route) takes RGBS, either through a SCART socket, through BNC connectors (R,G,B + External Sync) or via whichever plug your Arcade Monitor has. For everything but arcade monitors, there are X-to-Y adapters, and you should Google what you need. BNC male to RCA female adapters, for PVMs, are about $4 for 10 on eBay, and you can get SCART breakouts and all sort of things. For all these connections, because your PC outputs RGBHV, you will have to combine the Horizontal- and Vertical-Sync lines somehow to get Composite-Sync. R,G & B you feed directly in, unless you're using an arcade monitor that wants those amplified. And don't forget a ground connection of some kind. And then a ~3V connection for the SCART blanking voltage, if you're using SCART. Google the VGA pinout, and any other pinouts you need, to find out where the signals are and need to go. Don't look at just one pinout either, as variations exist due to newer standards and simple mistakes. Wikipedia is normally right, but doesn't have the best pictures. Google several images and compare, and read any associated information. Do not mistake JP21 for SCART, as the connector is identical.

      I'm not aware of a passive VGA-to-whatever cable that combines H- and V-Sync. VGA to SCART cables often only have H-Sync wired up, and not V-Sync. Any VGA-to-4-BNC cable is probably wired without V-Sync, and so it won't work. These cables were often intended to connect DVD players to projectors, and not computers to CRTs. There are VGA-to-5-BNC cables, but those put you in the position of still needing to combine sync. And any cable that did combine sync might not do so correctly or safely. Some older AMD cards had the option in Catalyst Control Center to set composite sync instead of H-Sync over pin 13, giving you RGBs directly, but crt_emudriver doesn't use CCC.

      IMPORTANT EDIT: Calamity has added full support for composite sync in the Beta 13 version of crt_emudriver. This means your PC can output C-sync directly, no need to combine H- and V-sync for yourself. Make sure to read the notes in post #2 of the crt_emudriver download thread before attempting, tough. This means you can ebay a VGA to 4 or 5 BNC cable and just use the connector for horizontal sync to connect to a PVM directly. This probably also means you can use a VGA-to-SCART cable, even if a listing says it's not for PC. However, from beta 12 he has also disabled the flicker filter - see section i) of this guide. I'm hoping to get some information on the level at which sync outputs. Most SCART tv's want a -0.3Vp-p (point three volts peak-to-peak) composite sync signal, but graphics cards delivering H and V-sync do so at a 5VDC offset. A PVM or arcade monitor will probably be fine with this, but a SCART TV may not. It's definitely worth a try, however. Make sure to read the notes in post #2 of the crt_emudriver download thread before attempting, though. Note that a BVM or multiformat PVM might not be happy with the C-sync from your GPU, and you might need to try other options below. You can also try the BVM fix in the troubleshooting section, n).

      Using an Extron or similar unit might be the simplest and safest way to combine sync otherwise. A USMA is also good. I know only a little about these units. I have an Extron 190F, which works beautifully when you feed in 15kHz, and a 201, 202 or 203 will probably work as well. In general the cleanest way to get 240p RGBS out of them is to feed 240p RGBHV into them. Some Extron or other units are downscalers, and while they're very nice, downscaling is not a perfect option. There are a few more units that will combine sync for you listed in the posts below this one (posts #6 , #8 , #14 ). You're still trying to output the correct game resolution from your PC in the first place, as these particular units will require you to feed 15kHz in to begin with. This is always going to be better than downscaling.

      After this, you'll need to roll your own. For an arcade monitor, Viletim's sync combiner circuit is great (http://members.optusnet.com.au/evilt...rc/syncadd.png). If you own an arcade cab, sooner or later you're going to need to get your hands dirty, and this is as simple as it gets. Remember that for an arcade monitor you'll probably also need a video amplifier, as a PC signal isn't normally strong enough - a Jpac is easier, and will take a VGA cable and combine sync for you, but a THS7316 or THS7314 chip is only a few dollars. Strictly those last are cable-driver amps not a power amps, I believe, but they work fine. The monitor inside an arcade cab, like any exposed CRT, can be dangerous. Make sure you know how to discharge the tube, and how to be safe around live equipment.

      SCARTHunter's circuit is probably one to try, especially for SCART sets, which need at least the blanking voltage on pin 16 of the SCART plug in addition to the signals talked about above. If the sync circuit doesn't work for you, try one of the other suggestions here. http://scarthunter.blogspot.com.au/2...art-cable.html

      Otherwise a breadboard, a pack of resistors and maybe a few 1k linear pot(entiometer)s are a good idea. The H-sync and V-sync lines of a VGA port normally have a 5VDC offset. Using an interlaced video mode, start with a 500R resistor and a 1k pot in each line, then merge and feed into the CRT where external sync would normally go in (same place as composite video for a SCART CRT). Dial the pots around and see what works best. Then turn the set off and on, to make sure sync is captured properly on startup. After that, measure where the pots are with your multimeter, and replace with actual resistors, then test again. Then put the two pots in series after the resistors merge. Dial those up as far as you can to still get sync. If the pots max out, use a 2k resistor and go again. See if you can get a capacitor or two in there as well, +ve leg toward video source. You can even add small signal diodes and caps. Or even logic chips with XOR or NAND gates for buffering. The idea is to bring up a stable picture, and if your set has an H-Hold or V-Hold adjustment, remember to try those too! This is why I recommend a breadboard, for plugging things into quickly, and a few potentiometers, as these can dial over a range of values. Ideally you should never feed the sync lines directly into one another. Or directly into a TV, where it's not designed to be coupled that way. In theory the outputs of a graphics card are buffered and driven from the same source anyway, in theory an IC will handle an input within its Vcc range on any pin, and in theory a set as robust as a PVM with a ~4Vp-p sync range won't care, but I wouldn't rely on this long term. Doing it for testing, or to see if you think the result is worth spending more on, is fine. But it's probably not going to work for anything besides a PVM, and possibly an arcade monitor. To do this you could buy a BNC T-joiner, and possibly some BNC breakouts or a VGA-to-5-BNC cable, and just clip the sync lines in. But again, I don't recommend doing it every day.

      You might even find that some combinations work better than others. I find for my PVM-2730QM's the best combination is H-1k/V-3.3k up to H-2.2k/V-5.6k, depending on the set, as this minimises interlace-flicker and stops the sets making a buzzing noise. These same sets like a 1k resistor added to the line used for sync with RGB from a Playstation (Luma or Composite vid) or Wii (Composite vid), for the same result. In my experience different PVM's like their sync slightly differently, let alone different consumer sets. Always within spec (your PS1 will always just work, over RGB) but precisely where within that spec works best can change as the sets age. You could recap the set too, of course, or check all the brown resin solid-carbon resistors, just don't expect that to magically fix everything

      The last method above for combining sync is a rather crude way of achieving a result, but it works. Be wary of the sync combiner circuits you find using google. Some work beautifully, and some are, to pick a particular example, designed to work with sync-on-green for Sun Microsystems monitors from the 1980's. The terms might be the same, but the result is not. If you're having no luck with the above I'd recommend working backwards through the older thread about wiring VGA to SCART on the ArcadeControls forum, albeit with reserve and making sure to read all the comments after each post. You're ONLY looking at the wiring in there, so don't get confused with dongles and Soft15kHz and what have you!

      I just dug up another resource for building cables and combining sync. See section 5. And it's in Italian, so you'll need to translate it. Again, you're only looking at the schematics, the other information about powerstrip and Soft15kHz is for Win XP on ancient, underpowered hardware, and won't help you with Win 7 or Win 10.

      The key is not to give up, and find a method that works for you. Basic soldering is not hard to learn, and it's fun. At worst you could buy an electronics breadboard, a VGA breakout, some Arduino jumper wires, some resistors and some BNC breakouts. Or even a VGA-to-5-BNC cable, and then some BNC breakouts and some of the aforementioned gear. That way there's only screwing and pushing wires into a breadboard, not soldering.


      PART 3
      n) Basic troubleshooting.

      Expecting everything to go smoothly the first time you try to connect your Windows PC to an SD CRT is unrealistic. This section here is meant to help, though it's a WIP, so feel free to come up with some more ideas to add to it.

      i) I'm getting two identical images side by side on my monitor!

      This problem has a single cause. It happens when you feed a 15kHz SD monitor with a 31kHz/VGA signal - normally 640x480p. The sync circuitry in the 15kHz chassis only catches every 2nd horizontal sync pulse, so two lines of the incoming signal are delivered into the time it takes your monitor to draw one. Hence two lines side by side, then the next two side by side, etc, until you have two images side by side. They're not actually the same image, because one image is made of odd lines, and one of even, but they're pretty close. The images won't be perfect, there will probably be some slight distortion. Do not attempt to use the monitor like this unless you have no other way to fix the problem, it's not good to feed the wrong signal into the sync circuitry.

      (EDIT: I've since learned that a JPac set to 15kHz-only will pass these side by side images as true 15kHz, by omitting every other sync pulse. The root problem is still the same, but it won't hurt your monitor to play around in this state if you have a JPac.)

      If you have this problem, your PC is not outputting 15kHz/240p, no ifs or buts. You may need to re-read sections d) through f) above. If you've done that, I'd suggest starting over with Calamity's crt_emudriver install guide and taking your time over each step.

      If you're seeing three images, it's the same problem but with 45kHz instead of 31kHz.


      ii) My monitor shows windows just fine, but during boot the image is all messed up or full of static. I can't see the Bios screens.

      This almost certainly stems from the fact crt_emudriver is a windows-based driver, and control of the display adapter isn't handed over until Windows loads. When your PC boots it requests a video mode from a list contained in the bios of your graphics card, to display the motherboard bios and splash screens, and these modes are not 15kHz by default. Re-read section i) above for a few notes on protecting your monitor during boot, and Atom-15.


      iii) I installed Atom-15, but the boot screens are black. I can't see anything!

      If windows comes up normally, but you've installed Atom-15 and your bios screens are black, no image at all, it's probably because your motherboard is too new, and its bios can't be slotted into a 15kHz mode. There's been no reported issues of this causing other, additional problems - the board boots as normal, you just can't see anything. I'd suggest planning to take a look at the bios or overclocking before you install crt_emudriver, as part of the setup process.

      EDIT: it will pay to triple check whether your mobo's UEFI bios will allow you to use Atom-15.


      iv) I've installed crt_emudriver, and 640x480i modes work fine, but every time i try to switch to 320x240p the system crashes. (Or the 320x240p modeline doesn't show up in the list to begin with.)

      This is probably a minimum dot-clock issue. Take a look at the equations in section e) above, in particular the first one and the description below it. You GPU may have a pixel-clock minimum of ~8Mhz. Particular vintages of AMD Redeon cards suffered from this.

      The dot clock, or pixel clock, is how many dots the gpu is drawing per second. 640x480i modes come out above 8Mhz, 320x240p modes come out below it, and may cause problems. There are settings in both VMM and GM to take the problem into account, but there's no way around it. You could simply use 640x240p modes instead, and set the options in your emulators for that. But if you're doing that, you're far better off with super resolutions as described in section d) anyway. In fact the only time I've wanted 640x240 save for because-I-can testing purposes was in some obscure configurations of DeSmuME.

      It's best to presume your GPU doesn't have a dot-clock minimum, though, and correct for the problem where it occurs.


      v) Weird colours

      Expand to talk about signal grounding issues.


      vi) Weird colours 2 (or banding)

      Expand to talk about timing issues, and how using horizontal front and back porches that are too small can cause colours to go wonky. This can often be addressed by altering the porches in ArcadeOSD, or by combining sync differently. This is possibly related to the following issue, which is...


      vi) Weird colours 3 (dark/light streaking on BVM's)
      There is a good thread on the shmups forum about streaking on BVM's or multiformat PVM's, and the fix is changing the CLP P DLY value in the service menu. This value may need to be adjusted when alternating between 15khz and 31khz, and also differs depending on the exact nature of the sync pulse you're feeding the set.
      Last edited by buttersoft; 1 Week Ago at 11:20 AM.

    4. #4
      80's KiD's Avatar
      80's KiD is offline
      is just killin' the haters, god
      bless 'em!
       
      Cool
       

      Join Date
      May 2014
      State
      Botany, N.S.W
      Posts
      612
      Mentioned
      13 Post(s)
      Quoted
      143 Post(s)
      Germany
      Great write up! I can't even imagine how long it would have taken to type up! Very in-depth, I learnt quite a lot! One thing I guess I've been doing wrong all of these years is combining a Negative Vertical Sync + Negative Horizontal Sync to achieve Negative Composite Sync (for arcade chassis' that don't have a single composite Sync line feed) I've never had any issues doing it this way, or would you say that it would be slightly overkill to solder a resistor in place of each Sync line?
      "Pick any game you want! I'm good at all of them. I have 97 of them..."

    5. #5
      buttersoft's Avatar
      buttersoft is online now
      is chasing the beam
       
      Meh
       

      Join Date
      Mar 2015
      State
      Tasmania
      Posts
      1,254
      Mentioned
      57 Post(s)
      Quoted
      416 Post(s)
      Australia

      Quote Originally Posted by 80's KiD View Post
      Great write up! I can't even imagine how long it would have taken to type up! Very in-depth, I learnt quite a lot! One thing I guess I've been doing wrong all of these years is combining a Negative Vertical Sync + Negative Horizontal Sync to achieve Negative Composite Sync (for arcade chassis' that don't have a single composite Sync line feed) I've never had any issues doing it this way, or would you say that it would be slightly overkill to solder a resistor in place of each Sync line?
      TY!

      An arcade chassis will be tougher than a TV. Or would have been, originally. Now it might depend on age and condition. TV's are meant to take a -300mV sync signal with no DC offset. A little DC won't hurt, but VGA uses a 5V offset, normally. You shouldn't have a problem. But that said, even with an arcade chassis there's no protection feeding the sync lines directly into one another. If something goes wrong, there's not 300mv going through, there's 5V. Might even stress the components more to begin with, but that's going to depend on the chassis. That's for VGA, the sync on actual arcade boards I don't know, but they might tend to use DC offset as well, and might not have much buffering to protect you. I know very little about them in general.
      Last edited by buttersoft; 26th June 2017 at 10:55 AM.

    6. #6
      DoomsDave's Avatar
      DoomsDave is online now
      is dodging bullets
       
      ----
       

      Join Date
      Jul 2014
      State
      Victoria
      Posts
      130
      Mentioned
      6 Post(s)
      Quoted
      26 Post(s)
      Australia
      Great write up. I got crt_emudriver running into a couple PVMs largely because of the help from buttersoft in my thread but I can offer a couple of methods on connecting. The first method I use is PC VGA to Extron 190, BNC RGB out of Extron 190 to PVM. This works well now that I have all the parts but as butter knows, I had a bit of trouble with my Extrons. I bought one without a PSU and then busted a PSU trying to mod it before ordering a second unit that came with an official PSU. The second PSU was fine but second unit was faulty on arrival. They are old stock that were used non stop in commercial environments so there's a little bit of a gamble when buying one untested.

      If you want less of a gamble and more features then the second method I use is the Toro by Beharbros. Toro is a Dreamcast VGA box that outputs via VGA or SCART but also doubles as a sync combiner so I feed it VGA from the PC and use a SCART to BNC cable to go from the Toro to the PVM. This doesn't require a PSU and is small so it's easy to store and forget about it. If you don't have a Dreamcast or a SCART to BNC cable then you can get the Kenzei made by the same people which is a dedicated sync combiner but also has RCA outputs so you can just grab a handful of RCA to BNC connectors and go straight into your PVM. Kenzei is a cheaper option but it requires a PSU.

      Kenzei - https://www.beharbros.com/kenzei

      Toro - https://www.beharbros.com/toro

    7. #7
      buttersoft's Avatar
      buttersoft is online now
      is chasing the beam
       
      Meh
       

      Join Date
      Mar 2015
      State
      Tasmania
      Posts
      1,254
      Mentioned
      57 Post(s)
      Quoted
      416 Post(s)
      Australia

      Thanks, Dave!

      To make it clear to anyone using this guide, @DoomsDave is feeding 15kHz into the devices he mentioned. So you will still need a way to get 15kHz video modes from your PC first, which is something the main part of the guide covers. The devices will then combine Horizontal sync and Vertical sync into Composite sync - the "S" in RGBS.

    8. #8
      g5k is offline
      This user has no status.
       
      ----
       

      Join Date
      Dec 2015
      State
      SA
      Posts
      331
      Mentioned
      24 Post(s)
      Quoted
      118 Post(s)
      Australia

      A guide to connecting your Windows PC to an SD CRT TV, PVM or Arcade Monitor

      Quote Originally Posted by DoomsDave View Post
      Great write up. I got crt_emudriver running into a couple PVMs largely because of the help from buttersoft in my thread but I can offer a couple of methods on connecting. The first method I use is PC VGA to Extron 190, BNC RGB out of Extron 190 to PVM. This works well now that I have all the parts but as butter knows, I had a bit of trouble with my Extrons. I bought one without a PSU and then busted a PSU trying to mod it before ordering a second unit that came with an official PSU. The second PSU was fine but second unit was faulty on arrival. They are old stock that were used non stop in commercial environments so there's a little bit of a gamble when buying one untested.

      If you want less of a gamble and more features then the second method I use is the Toro by Beharbros. Toro is a Dreamcast VGA box that outputs via VGA or SCART but also doubles as a sync combiner so I feed it VGA from the PC and use a SCART to BNC cable to go from the Toro to the PVM. This doesn't require a PSU and is small so it's easy to store and forget about it. If you don't have a Dreamcast or a SCART to BNC cable then you can get the Kenzei made by the same people which is a dedicated sync combiner but also has RCA outputs so you can just grab a handful of RCA to BNC connectors and go straight into your PVM. Kenzei is a cheaper option but it requires a PSU.

      Kenzei - https://www.beharbros.com/kenzei

      Toro - https://www.beharbros.com/toro
      Have you looked at the UMSA? Send your 15khz in via VGA and gives you RGBS out via SCART. Much cheaper and very well made, can thoroughly recommend.

      UMSA - http://arcadeforge.net/UMSA/UMSA-Ult...546b2b2543f1eb

    9. #9
      DoomsDave's Avatar
      DoomsDave is online now
      is dodging bullets
       
      ----
       

      Join Date
      Jul 2014
      State
      Victoria
      Posts
      130
      Mentioned
      6 Post(s)
      Quoted
      26 Post(s)
      Australia
      Quote Originally Posted by buttersoft View Post
      Thanks, Dave!

      To make it clear to anyone using this guide, @DoomsDave is feeding 15kHz into the devices he mentioned. So you will still need a way to get 15kHz video modes from your PC first, which is something the main part of the guide covers. The devices will then combine Horizontal sync and Vertical sync into Composite sync - the "S" in RGBS.
      Yep, I should have mentioned that. What I'm doing is strictly for groovymame.

      Quote Originally Posted by g5k View Post
      Have you looked at the UMSA? Send your 15khz in via VGA and gives you RGBS out via SCART. Much cheaper and very well made, can thoroughly recommend.

      UMSA - http://arcadeforge.net/UMSA/UMSA-Ult...546b2b2543f1eb
      I did know about those but I've never used one. They get good reviews everywhere I've seen though. If you're using a PVM/BVM though then a Kenzei would still probably be cheaper since you don't have to buy an expensive SCART to BNC cable.

    10. #10
      buttersoft's Avatar
      buttersoft is online now
      is chasing the beam
       
      Meh
       

      Join Date
      Mar 2015
      State
      Tasmania
      Posts
      1,254
      Mentioned
      57 Post(s)
      Quoted
      416 Post(s)
      Australia

      This post contains a list of VGA-to-Component transcoders suitable for 15kHz use. It's not a big list right now but I'll add to it. Most of these units are going to deliver an analogue-to-analogue conversion, with less than one frame of lag, and thus any unit that says it can handle the vertical resolution required (here 240p/480i) will almost certainly be fine for either normal or super resolutions - a 50MHz bandwidth or higher is ideal, if you're looking to make sure. Whatever you use needs to convert everything 1:1 except the signal type. Check with the manufacturer's documentation and be as sure as you can though, because I’m not responsible if you buy one of these and it and it doesn’t do what you want. Sadly there's not a big market left for top end gear of this type, and a lot of what was available will now only come second hand.

      Please note that I cannot personally recommend any of these units as i have not used them. Think of this list as a jumping-off point for your own research If you need more info and cannot find it, contact the manufacturer! Try eBay for second hand units as many are no longer sold.


      ---Crescendo Systems TC1500 or TC1600 (Top notch units from what I can tell, but discontinued now)

      ---Audio Authority 9A60A (discontinued)

      ---Shinybow SB-2840 (and probably other models as well) Can be bought here

      ---J-rok's converters, which will take composite sync straight from your GPU - section i) of the guide talks a little about composite sync. These also do decent S-video, it seems. And also the best composite video conversion you're likely to get, though i still wouldn't recommend composite if you have other options. See this thread for a little more info.

      ---Mikechi's unit on the shmups forum thread. This one is new, but should be pretty good. He's got some schematics and info there as well.


      The second list is converters that might actually be ok, but don't provide enough info for me to recommend them

      ---http://www.ebay.ca/itm/VGA-to-Compon...-/192116647418
      (The listing for this one says all the right things. Read the description carefully, as the information is important!) These units look very nice, but they're hand made by one guy, AFAIK, and may take time. This is probably the top of the second tier. I've heard good things, but also mixed things about it to do with quality control and customer frustration.

      ---http://www.ebay.com/itm/NEW-SCART-RG...-/221156873851
      (See post #20 ) I've heard this one is ok, but not amazing. Apparently you have to open it and turn some pots for colour calibration, and the best it can do is not as bright or colourful as higher-end gear. But it will get you out of trouble.

      --- Neobitz units? Might be worth looking into. I think these are designed for Arcade Boards, but may work for PC RGB signals.

      The converters below are no good. They may be low quality or fixed output resolution or noisy (introducing video signal noise like static snow) or something else, but they are not recommended.

      ---Anything not listed above, if only to err on the side of caution

      There's more than one thread around the internets about this subject though, for example - https://shmups.system11.org/viewtopic.php?f=6&t=62296


      EDIT: there's been another thread going about building your own RGB-to-YPbPr transcoder, and we've finally turned up some complete schematics. Note that these are for RGBS input, not RGBHV, and none of us have tested it yet, so the methods for combining sync mentioned in section m) of the guide might allow bypass of the LM1811. Or they might not work at all. Any genuine RGBS source like a console should work as diagrammed though. Read the linked thread for more info.
      Last edited by buttersoft; 8th October 2018 at 11:10 AM.

    Page 1 of 7 123 ... LastLast

    Thread Information

    Users Browsing this Thread

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

    1. buttersoft

    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
    •