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 Try the site in https mode Site News

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

  

Author Topic: missing soundsync in 145+  (Read 2494 times)

0 Members and 1 Guest are viewing this topic.

krick

  • Trade Count: (+1)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 2006
  • Last login:May 23, 2025, 03:48:36 am
  • Gotta have blue hair.
missing soundsync in 145+
« on: September 30, 2012, 01:00:01 pm »
It looks like soundsync was removed from the GroovyMAME patch starting with the 145 releases.  Did I miss something?
Hantarex Polo 15KHz
Sapphire Radeon HD 7750 2GB (GCN)
GroovyMAME 0.197.017h_d3d9ex
CRT Emudriver & CRT Tools 2.0 beta 13 (Crimson 16.2.1 for GCN cards)
Windows 7 Home Premium 64-bit
Intel Core i7-4790K @ 4.8GHz
ASUS Z87M-PLUS Motherboard

Calamity

  • Moderator
  • Trade Count: (0)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 7463
  • Last login:July 19, 2025, 04:03:33 am
  • Quote me with care
Re: missing soundsync in 145+
« Reply #1 on: September 30, 2012, 05:02:29 pm »
Yes, the -soundsync option was removed with the new implementation, but the functionality is still there, it's only that now the sound is always tied to the emulation speed.

The old patch was taken from CabMAME, it worked by dynamically modifying the sample rate of the directsound's buffer. There was no way to do this on the SDL side.

The new patch gets the sound mixed at the correct rate before it's sent to the OSD layer, that makes it OS independent.
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 of pasting it.

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

krick

  • Trade Count: (+1)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 2006
  • Last login:May 23, 2025, 03:48:36 am
  • Gotta have blue hair.
Re: missing soundsync in 145+
« Reply #2 on: September 30, 2012, 11:02:56 pm »
So you still had to add code in your patch.
The soundsync code isn't in official MAME, correct?

But now it's automatic and you can't manually toggle it on and off at the command line or in the ini file?

I'm just making sure that I understand so that I don't give people wrong information.
Hantarex Polo 15KHz
Sapphire Radeon HD 7750 2GB (GCN)
GroovyMAME 0.197.017h_d3d9ex
CRT Emudriver & CRT Tools 2.0 beta 13 (Crimson 16.2.1 for GCN cards)
Windows 7 Home Premium 64-bit
Intel Core i7-4790K @ 4.8GHz
ASUS Z87M-PLUS Motherboard

Calamity

  • Moderator
  • Trade Count: (0)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 7463
  • Last login:July 19, 2025, 04:03:33 am
  • Quote me with care
Re: missing soundsync in 145+
« Reply #3 on: October 01, 2012, 04:22:54 am »
Yes that's right. The exact behaviour is this: the 'soundsync' functionality is now integrated in the -syncrefresh option. This seemed to me like the natural way of doing things. If -syncrefresh is disabled (i.e. by enabling -triplebuffer) then the sound is left alone as emulation is supposed to run at 100% either way.

The soundsync code isn't in official MAME, although I might submit the whole 'synchronization part' of the Groovy patch (not the modeline stuff) at some point. Anyway, the new 'soundsync' patch is extremely simple and clean, it just makes use of one already built-in mechanism in MAME (used by the somewhat absurd -refreshspeed option), so it's not exactly a hack.
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 of pasting it.

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

krick

  • Trade Count: (+1)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 2006
  • Last login:May 23, 2025, 03:48:36 am
  • Gotta have blue hair.
Re: missing soundsync in 145+
« Reply #4 on: October 01, 2012, 12:30:51 pm »
It makes sense that if you enable -syncrefresh, that the sound should speed up or slow down accordingly since you're syncing both the video and the audio to the refresh rate.  I think you could make the case that it should be in baseline MAME.

It also makes perfect sense that if you enable -triplebuffer, then the emulation (both video and audio) should be decoupled from the refresh rate and the audio should play at normal speed.  This is also obviously mutually exclusive with -syncrefresh.

I never really understood what -refreshspeed was supposed to do in baseline MAME.

Hantarex Polo 15KHz
Sapphire Radeon HD 7750 2GB (GCN)
GroovyMAME 0.197.017h_d3d9ex
CRT Emudriver & CRT Tools 2.0 beta 13 (Crimson 16.2.1 for GCN cards)
Windows 7 Home Premium 64-bit
Intel Core i7-4790K @ 4.8GHz
ASUS Z87M-PLUS Motherboard