Main Restorations Software Audio/Jukebox/MP3 Everything Else Buy/Sell/Trade
Project Announcements Monitor/Video GroovyMAME Merit/JVL Touchscreen Meet Up Retail Vendors
Driving & Racing Woodworking Software Support Forums Consoles Project Arcade Reviews
Automated Projects Artwork Frontend Support Forums Pinball Forum Discussion Old Boards
Raspberry Pi & Dev Board controls.dat Linux Miscellaneous Arcade Wiki Discussion Old Archives
Lightguns Arcade1Up --- Bug Reports --- Site News

Unread posts | New Replies | Recent posts | Rules | Chatroom | Wiki | File Repository | RSS | Submit news

  

Author Topic: Activate composite sync in GroovyArcade  (Read 1792 times)

0 Members and 1 Guest are viewing this topic.

Saroumane

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 10
  • Last login:April 04, 2021, 06:31:12 pm
  • I want to build my own arcade controls!
Activate composite sync in GroovyArcade
« on: October 28, 2020, 11:26:10 am »
Hello,

I'm (almost) a happy user of GroovyArcade / GroovyMame.
It works amazingly well, and the most impressive feature is having dynamic resolution on CRT TV, thanks to switchRes. (The most difficult part is to understand that it can't work if you a have 2nd display activated)

But I'm stucked with another problem. I have now a VGA (connected to my Radeon HD6450) to SCART cable that need composite sync.
My baseline for booting and desktop is "640x480 interlaced" resolution, which is a good compromise ... except it can't sync with the CRT TV

And I can't find how to do it in GroovyArcade, with xrandr.
I tried many Modelines combinations with (+/- hsync) +/-/" " csync and even composite keywords, without success.

Any help ? Thanks !

I know all hardware is fine :
- I tested this cable with another hardware which can output RGB + composite sync : it worked
- I tested this GroovyMame PC with a UMSA clone from a friend, that convert RGB HV to RGB + composite sync : it worked too.

So I assume it's only a matter of software...

Substring

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 593
  • Last login:Yesterday at 03:07:02 pm
  • Forking GroovyArcade
    • forum.arcadecontrols.com/index.php/topic,160023.0.html
    • GroovyArcade active fork
Re: Activate composite sync in GroovyArcade
« Reply #1 on: October 29, 2020, 09:53:07 am »
Hi!

There should be some info somewhere in the forum ... Technically speaking, linux can generate csync video. If you haven't succeeded with xrandr in the desktop, then it's weird ...

For groovymame, that's a different topic. Let me see if I can get the one who know the most about that.
GroovyMAME / GroovyArcade discord: https://discord.gg/YtQ6pJh
GroovyArcade doc: https://gitlab.com/groovyarcade/support/-/wikis/home

Saroumane

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 10
  • Last login:April 04, 2021, 06:31:12 pm
  • I want to build my own arcade controls!
Re: Activate composite sync in GroovyArcade
« Reply #2 on: October 29, 2020, 10:36:09 am »
Sorry I mixed GroovyMame / GroovyArcade : I speak only about GroovyArcade (Archlinux  + GroovyMame linux version)

I browsed countless webpages looking for a Modeline with csync... that really worked. No succes so far.
It's not easy to search in this forum, the search function seems to be broken. (message "Unable to access the search daemon" )

Substring

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 593
  • Last login:Yesterday at 03:07:02 pm
  • Forking GroovyArcade
    • forum.arcadecontrols.com/index.php/topic,160023.0.html
    • GroovyArcade active fork
Re: Activate composite sync in GroovyArcade
« Reply #3 on: October 29, 2020, 10:46:29 am »
GM doesn't handle csync for sure on linux.

Xrandr should work with csync. But i found a BYOAC dorum thread saying that some cables may need some tweaks, who knows.

Use google to find something on BYOAC ;)
GroovyMAME / GroovyArcade discord: https://discord.gg/YtQ6pJh
GroovyArcade doc: https://gitlab.com/groovyarcade/support/-/wikis/home

PL1

  • Global Moderator
  • Trade Count: (+1)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 8303
  • Last login:Today at 02:42:31 am
  • Designated spam hunter
Re: Activate composite sync in GroovyArcade
« Reply #4 on: October 29, 2020, 11:28:10 am »
It's not easy to search in this forum, the search function seems to be broken. (message "Unable to access the search daemon" )
Here's the workaround.
Quote
You can also do a google search of just this website.

on google:

your search term  site:forum.arcadecontrols.com


Scott

Saroumane

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 10
  • Last login:April 04, 2021, 06:31:12 pm
  • I want to build my own arcade controls!
Re: Activate composite sync in GroovyArcade
« Reply #5 on: October 29, 2020, 11:42:30 am »
Well, I was thinking BYOAC internal search could provide threads not (yet ?) indexed by google. (Yes, google does not index *everything*)

Regarding "csync" threads I already found with google : most of them are dealing with Windows/CRTEmudriver or hardware solutions (so no help for me).
There is ONE guy (MonMotha) who claims he did it with a Modeline for linux. I PMed him, but he has not logged in since 2018.... I have little hope.

I already tried :

Code: [Select]
#xrandr --newmode "640x480i Xorg" 13.10  640 664 728 832  480 484 490 525 interlace +HSync +VSync +CSync

#xrandr --newmode "640x480i Xorg" 13.10  640 664 728 832  480 484 490 525 interlace +HSync +VSync -CSync
#xrandr --newmode "640x480i Xorg" 13.10  640 664 728 832  480 484 490 525 interlace +HSync +VSync CSync

#xrandr --newmode "640x480i Xorg" 13.10  640 664 728 832  480 484 490 525 interlace -HSync -VSync +CSync
#xrandr --newmode "640x480i Xorg" 13.10  640 664 728 832  480 484 490 525 interlace -HSync -VSync -CSync
#xrandr --newmode "640x480i Xorg" 13.10  640 664 728 832  480 484 490 525 interlace -HSync -VSync CSync

#xrandr --newmode "640x480i Xorg" 13.10  640 664 728 832  480 484 490 525 interlace +HSync -VSync +CSync
#xrandr --newmode "640x480i Xorg" 13.10  640 664 728 832  480 484 490 525 interlace +HSync -VSync -CSync
#xrandr --newmode "640x480i Xorg" 13.10  640 664 728 832  480 484 490 525 interlace +HSync -VSync CSync

#xrandr --newmode "640x480i Xorg" 13.10  640 664 728 832  480 484 490 525 interlace -HSync +VSync +CSync
#xrandr --newmode "640x480i Xorg" 13.10  640 664 728 832  480 484 490 525 interlace -HSync +VSync -CSync
#xrandr --newmode "640x480i Xorg" 13.10  640 664 728 832  480 484 490 525 interlace -HSync +VSync CSync

I also tried to remove 1 keyword : HSync or VSync, and mix different polarities between the 2 remaining keywords. (And before that I tried the keyword +/-CSync alone)
« Last Edit: October 29, 2020, 11:54:33 am by Saroumane »

Substring

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 593
  • Last login:Yesterday at 03:07:02 pm
  • Forking GroovyArcade
    • forum.arcadecontrols.com/index.php/topic,160023.0.html
    • GroovyArcade active fork
Re: Activate composite sync in GroovyArcade
« Reply #6 on: October 29, 2020, 03:47:54 pm »
Have you read http://forum.arcadecontrols.com/index.php/topic,77370.0.html ? Means it could be related to the cable.
GroovyMAME / GroovyArcade discord: https://discord.gg/YtQ6pJh
GroovyArcade doc: https://gitlab.com/groovyarcade/support/-/wikis/home

Saroumane

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 10
  • Last login:April 04, 2021, 06:31:12 pm
  • I want to build my own arcade controls!
Re: Activate composite sync in GroovyArcade
« Reply #7 on: October 29, 2020, 04:05:47 pm »
Thanks, interesting thread.

I think the cable is fine : it's from a reliable manufacturer ( manuferhi.com ) and as I explained in 1st post, I tested it separately.
Full story : I used it with a MiSTer FPGA board and I just had to put " composite_sync=1 " in settings file.

That could be my next move : ask MiSTer dev how they output composite sync. (There's a basic linux environnement on the board, but I'm not sure it manages the VGA output. There is no X nor xrandr.)
« Last Edit: October 29, 2020, 04:08:39 pm by Saroumane »

Substring

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 593
  • Last login:Yesterday at 03:07:02 pm
  • Forking GroovyArcade
    • forum.arcadecontrols.com/index.php/topic,160023.0.html
    • GroovyArcade active fork
Re: Activate composite sync in GroovyArcade
« Reply #8 on: October 30, 2020, 02:59:29 am »
Still, let's try :

https://www.mythtv.org/wiki/RGB_Scart#ATI_Cable -> teh nvidia part is interesting too as it explains how to build csync yourself. That is, if the cable was the problem

xrandr man page :
--newmode name mode
              New modelines can be added to the server and then associated with outputs.  This option does the former. The mode is specified using the ModeLine syntax for xorg.conf: clock hdisp  hsyncstart
              hsyncend htotal vdisp vsyncstart vsyncend vtotal flags. flags can be zero or more of +HSync, -HSync, +VSync, -VSync, Interlace, DoubleScan, CSync, +CSync, -CSync. Several tools permit to com‐
              pute the usual modeline from a height, width, and refresh rate, for instance you can use cvt.

-> you may need the Csync keyword in your flags

I will try to find some time on my side to see if I can force a composite output and see how my tv reacts. I don't even know if it supports composite. So if I get a blank display, means it works. I also quickly browed through the xorg radeon driver to find info about csync, but i couldn't find anything worth yet.

Edit : I'm also told this could depend on the video bios, which would allow (or not) csync. So far, you couldn't tell if your gfx card could output csync.
« Last Edit: October 30, 2020, 04:37:34 am by Substring »
GroovyMAME / GroovyArcade discord: https://discord.gg/YtQ6pJh
GroovyArcade doc: https://gitlab.com/groovyarcade/support/-/wikis/home

Saroumane

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 10
  • Last login:April 04, 2021, 06:31:12 pm
  • I want to build my own arcade controls!
Re: Activate composite sync in GroovyArcade
« Reply #9 on: October 30, 2020, 05:12:57 am »
Edit : I'm also told this could depend on the video bios, which would allow (or not) csync. So far, you couldn't tell if your gfx card could output csync.

That could be that !

I guess I'll have to reinstall Win10 and try CRTEmudriver to check the card differently.

My cable schematics is also different from the one you linked :


mythtv :
VGA SCART
10    17    Composite sync ground
13    20(19)    Composite sync

mine :
13  18    Composite sync ground copypaste error indeed !
10  18    Composite sync ground
13  20    Composite sync
« Last Edit: October 30, 2020, 11:56:37 am by Saroumane »

Substring

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 593
  • Last login:Yesterday at 03:07:02 pm
  • Forking GroovyArcade
    • forum.arcadecontrols.com/index.php/topic,160023.0.html
    • GroovyArcade active fork
Re: Activate composite sync in GroovyArcade
« Reply #10 on: October 30, 2020, 09:28:14 am »
Yours uses the same pine for csync and csync ground ???

I share your opinion to try csync on windows.

Back to your tests with this cable but some other hardware : was it the same tv ? Which hardware was it ?
GroovyMAME / GroovyArcade discord: https://discord.gg/YtQ6pJh
GroovyArcade doc: https://gitlab.com/groovyarcade/support/-/wikis/home

Saroumane

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 10
  • Last login:April 04, 2021, 06:31:12 pm
  • I want to build my own arcade controls!
Re: Activate composite sync in GroovyArcade
« Reply #11 on: October 30, 2020, 11:18:14 am »
Yes, same TVs :
Sony KV 21LS30B
Telefunken color image 8157

PL1

  • Global Moderator
  • Trade Count: (+1)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 8303
  • Last login:Today at 02:42:31 am
  • Designated spam hunter
Re: Activate composite sync in GroovyArcade
« Reply #12 on: October 30, 2020, 11:47:05 am »
mine :
13  18    Composite sync ground
13  20    Composite sync
Yours uses the same pine for csync and csync ground ???
Pretty sure he meant that Composite sync ground is from pin 10 to 18 like the diagram shows.


Scott

Saroumane

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 10
  • Last login:April 04, 2021, 06:31:12 pm
  • I want to build my own arcade controls!
Win10 tries
« Reply #13 on: October 31, 2020, 06:38:16 pm »
So I did test the setup with "CRT Emudriver & CRT Tools 2.0 beta 15 (Crimson 16.2.1 non-GCN* cards) for Windows 7/8/10 64-bits"
I just think that I should have tried this one too "CRT Emudriver & CRT Tools 2.0 beta 15 (Catalyst 12.6) for Windows 7/8/10 64-bits", as my HD 6450 seems to be supported by both. (The Catalyst driver gives me a BSOD with "PAGE_FAULT_IN_NONPAGED_AREA" on atikmdag.sys )

Anyway, the result is very strange :
When I follow the guidelines, as soon as I enable "EDID emulation" I have a "rolling unsynced" windows 10 desktop on TV, UNTIL I push "Activate composite sync".
Then, I have no more desktop : only a black screen... but it's synced : I see it on the sony TV GUI ! (AV1 is displayed in green on the top left corner without rolling effect)
Moreover : when I change resolution with Windows10 internal tool, from 240x192 to 768x512 (or any in between) : it "works" too ! Still a blackscreen, but I see scanlines changing on Sony GUI.

For a moment I thought : maybe it's because I have 2 displays and 2 graphics card. So I stopped "extended desktop"  between the LCD and the TV, and chose "TV only".
I also tried "generic 15 KHz" profile instead of "arcade 15KHz". I tried the "csync workaround" : change polarities to "1" instead" of "0" in the "base" Modeline.
Still blackscreen.

Then I thought : let's forgot windows desktop, and try to output groovymame on the TV (after modifying the screen setting in mame.ini ) : switchres seems happy, I even see the game on the "alt-tab" preview, I can interact "blindly" ...  but TV stays black.

After all that I don't know what to think.
It seems Radeon HD 6450 may not be able to activate composite sync, because of its hardware.
But Windows and Linux "misbehave" in different ways, and Windows "CRT Emudriver" seems *so close* to work.


« Last Edit: October 31, 2020, 08:08:16 pm by Saroumane »

Osirus23

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 833
  • Last login:February 20, 2021, 10:06:33 am
Re: Activate composite sync in GroovyArcade
« Reply #14 on: October 31, 2020, 09:55:20 pm »
I have used Composite Sync with CRT Emudriver with an HD 6450.

schmerzkaufen

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 704
  • Last login:April 07, 2021, 06:15:05 pm
  • I want that recipe
Re: Activate composite sync in GroovyArcade
« Reply #15 on: November 01, 2020, 05:01:54 am »
Aren't some of the Sony consumer sets limited 58-61Hz ? dunno if it's one of those tho.
GravyMOM LCD user i5-4690k @3.9GHz, RX Vega 56, W7 64, crt_emudriver 2.0b15 18.5.1
PSA: general warning regarding internet communities where emulation is an important discussion topic: freedom of speech stops where criticism of MAME and its devs begins.

Saroumane

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 10
  • Last login:April 04, 2021, 06:31:12 pm
  • I want to build my own arcade controls!
Re: Activate composite sync in GroovyArcade
« Reply #16 on: November 01, 2020, 05:12:22 am »
I have used Composite Sync with CRT Emudriver with an HD 6450.

Interesting ! Could you please give me more details ?
You had 2 monitors plugged in a single HD 6450 ? Or 2 graphics card like me ?
Was it Windows XP / 7 / 10 ?
Which version of CRT Emudriver ?

Thanks

Calamity

  • Moderator
  • Trade Count: (0)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 7104
  • Last login:April 16, 2021, 07:31:36 am
  • Quote me with care
Re: Activate composite sync in GroovyArcade
« Reply #17 on: November 01, 2020, 12:02:22 pm »


Composite sync works. Just a bit tricky to setup.

Saroumane, never tick the option of "Add modes from modelist" in the EDID emulation box.
Important note: posts reporting GM issues without a log will be IGNORED.
Steps to create a log:
 - From command line, run: groovymame.exe -v romname >romname.txt
 - Attach resulting romname.txt file to your post, instead or pasting it.

CRT Emudriver, VMMaker & Arcade OSD downloads, documentation and discussion:  Eiusdemmodi

Osirus23

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 833
  • Last login:February 20, 2021, 10:06:33 am
Re: Activate composite sync in GroovyArcade
« Reply #18 on: November 01, 2020, 05:46:50 pm »
I have used Composite Sync with CRT Emudriver with an HD 6450.

Interesting ! Could you please give me more details ?
You had 2 monitors plugged in a single HD 6450 ? Or 2 graphics card like me ?
Was it Windows XP / 7 / 10 ?
Which version of CRT Emudriver ?

Thanks

Just following the official setup guide and by using the video Calamity posted. Single HD 6450 card.

Even Calamity admits its tricky though, which is why've I've started changing my TV's RGB mods to use HV Sync instead of Composite.

Saroumane

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 10
  • Last login:April 04, 2021, 06:31:12 pm
  • I want to build my own arcade controls!
Re: Activate composite sync in GroovyArcade
« Reply #19 on: November 01, 2020, 08:00:07 pm »
Guys, thanks to you I made big progress !

Having your feedback about HD6450 and seeing Calamity video gave me confidence to try again the CRT Emudriver installation/configuration.
I did the same thing again and this time it worked !

The difference ? Instead of plugging the HD6450 directly to the TV, I used a SCART  switch.
There are 3 inputs, with "on/off push buttons" which are meant to isolate each SCART source. (HD 6450 / MiSTer / Xbox360)

So I had the "SCART switch" linking my HD6450 to my TV.
Blackscreen on TV, as usual. But as soon as I turned on the Xbox360 : the HD 6450 picture appeared on the TV ! I turned off Xbox360, turned on MiSTer : same miraculous effect.

Hypothesis 1 : there is a missing eletric output from my HD6450 that prevented the picture from being recognized and displayed by my TV
Hypothesis 2 : my "SCART switch" is leaking the missing electric output from other sources

So I took my multimeter and .. surprise :


RGB eletric output is OK everywhere.
But it seems that HD6450 is telling on Pin16 : "hello, I'm sending to you composite signal ! Deal with it !".
By the way : is 4.63 V on "csync" Pin20 too much, and dangerous for the TV ?

Next step : maybe I should try to read voltage directly on the card (VGA port : pin 14), without cable at all.
If the voltage is > 1 Volt, my cable has a problem. If not, my HD6450 has a hardware problem.

I guess it can't be a driver issue right ?
« Last Edit: November 01, 2020, 08:04:38 pm by Saroumane »

Zebidee

  • Trade Count: (+4)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 1731
  • Last login:Today at 03:31:21 am
Re: Activate composite sync in GroovyArcade
« Reply #20 on: December 02, 2020, 03:37:11 am »
Hi Saroumane

I know this thread is getting a little old now, but your issue is clear to me.

Your problem is the cable. It doesn't provide any RGB switching voltage to pin 16. Most SCART TVs need some RGB switching voltage there.

The EASIEST way to solve this MIGHT be to open up the SCART head and connect a small bridging wire between sync (pin 20) and RGB switching (pin 16). For this you need a small piece of wire about 2cm long with exposed, tinned ends a few mm long. Bend it into a U shape and solder ends onto pins 20 & 16. Bridging sync will work for about 60% of SCART TVs.

If that doesn't do the job, then you need to run in 5v (typically from a molex or USB source) through a 100-150R resistor to pin 16. The resistor will bring the voltage down to the required level (about 1.5-2v, right within the 1-3v required). This will work for about 30% more SCART TVs. The remaining 10% require some voltage to pin 8 for AV switching in order to play nicely, but fortunately this requirement is not common.

Note that you need to have 75R termination on your RGB+sync signals to take correct voltage readings (typically your TV will have 75R terminations) - just checking voltages from open end of SCART cable only tells you "so" much. For example the 4.63v on SCART 20 is not so unusual - there could be a 1k resistor on that sync line and you'd get exactly that result. But when 75R terminated to TV, that would drop right down to ~0.32v at TV which is just where it needs to be.

Note that with the sync now at 0.3v the bridge 16-20 solution described earlier might not work (voltage too low to trigger RGB). But stay with me.

Be sure to check that VGA2SCART cable for connectivity between VGA 14 and SCART 20. If they are connected, then you'd probably be better off *NOT* using composite sync as it will be driven entirely via VGA pin 13 and leaving VGA 14 floating but connected will create interference on your sync, possibly causing it to not work or for sync to irregularly drop out for short periods. You get reasonably decent csync by just having 13+14 connected, what I call "smushy" sync - not 100% perfect but good enough for most TVs.

If VGA 14 and SCART 20 are not connected, then composite sync out of your PC/device is your only option.

Note that composite sync out of PC via CRTEMU (and many consoles) is not perfect either - it is formed via an XNOR logic process that leaves glitches in the vertical sync signal that can confuse TVs. In many cases my TVs are happier with "smushy" sync (I have tested several with both methods).

If it was me, I'd make my own cable using a SCART header and a VGA header with screw-terminals, or even just a VGA cable with one end cutoff.  At the SCART end, RGB goes to RGB, bundle the grounds together (VGA5,6,7,8,10 but not 9) into whatever GND is most convenient (I usually choose pin17). twist H&V (VGA13&14) syncs together and solder onto a 1k resistor, (slip on some heat-shrink tubing NOW) then that goes to SCART pin 20. Now solder a 100-150R resistor onto VGA side of the 1k resistor, (slip on a bit more heat-shrink) and then the other end of resistor goes to SCART pin 16 to give you RGB switching at 1-3v.

If the RGB switching just described doesn't work (some TVs won't like the overlaid sync signal), then try using "pure" 5v input from VGA pin 9 (or from molex/USB etc) and again through a 100-150R resistor and into SCART 16.
« Last Edit: December 02, 2020, 04:09:40 am by Zebidee »
Check out my completed projects!