vgmrips

The forum about vgm files
It is currently 2017-09-19, 17:13:58

All times are UTC + 1 hour [ DST ]




Post new topic Reply to topic  [ 14 posts ] 
Author Message
 Post subject: Pinball VGM Ripping
PostPosted: 2017-09-03, 18:59:23 
Offline

Joined: 2017-09-03, 18:56:43
Posts: 6
Hi I was wanting to make a HQ rip of High Speed's Multiball theme, but I can't figure out what I exactly need for a extracted VGM.
Can someone help me out?


Top
 Profile  
 
 Post subject:
PostPosted: 2017-09-04, 7:19:54 

Contributors Contributors
Staff Staff
Offline
User avatar

Joined: 2013-07-17, 23:32:39
Posts: 201
Pinball games are usually tricky... In this case it seems like M1 supports this game so you can use that for WAV logging. Unfortunately VGM logging does not capture the drums or any other sampled sounds. Also songs that use voice samples usually do not play properly in M1 (see: BK2K). You wouldn't be able to log those to VGM anyway, the BK2K rip is an exception since I used some nasty hacks...

If M1 does not work you will have to pray that the game works well enough in MAME to be able to enter the service mode where there may or may not be a sound test.
And finally if there isn't a sound test you might have to mess around with the MAME debugger and in the worst case do assembly hacking. I won't go in depth about that here...

Finally, to even be able to log the Williams/Midway machines you will need to modify MAME that logs the DAC (drum samples etc) as if it was an YM2612. I made a custom build for BK2K, but it may not work here if the hardware is different.


Top
 Profile  
 
 Post subject:
PostPosted: 2017-09-04, 9:32:06 
Offline

Joined: 2011-12-09, 13:47:34
Posts: 53
Location: Tampa, FL, USA
Not only that, but it's not too well known how its sound system works. We know CVSD is used for the ingame sound effects and voices, but we don't know enough of what drives the music, except that it ain't FM synthesized...

_________________
Until next post...


Top
 Profile  
 
 Post subject:
PostPosted: 2017-09-04, 13:46:20 

Contributors Contributors
Staff Staff
Offline
User avatar

Joined: 2013-07-17, 23:32:39
Posts: 201
High Speed uses an YM2151 for the music like most other williams hardware of the late 80s.


Top
 Profile  
 
 Post subject:
PostPosted: 2017-09-04, 15:40:06 
Offline

Joined: 2017-09-03, 18:56:43
Posts: 6
Okay... what tools do I need and what are the steps?


Top
 Profile  
 
 Post subject:
PostPosted: 2017-09-05, 0:01:14 

Contributors Contributors
Staff Staff
Offline
User avatar

Joined: 2013-07-17, 23:32:39
Posts: 201
M1 can be found here. Seems like it's impossible to log to VGM after all, so you'll have to live with only doing WAV for now.


Top
 Profile  
 
 Post subject:
PostPosted: 2017-09-05, 6:38:46 
Offline

Joined: 2017-03-06, 7:44:05
Posts: 17
Location: Mexico
How you can rip VGM Pinball when converting DAC with YM2612.


Top
 Profile  
 
 Post subject:
PostPosted: 2017-09-06, 18:03:50 
Offline

Joined: 2017-09-03, 18:56:43
Posts: 6
ctr wrote:
M1 can be found here. Seems like it's impossible to log to VGM after all, so you'll have to live with only doing WAV for now.

But didn't you do one of Black Knight 2000 with the files being on VGZ?
Could it be possible that you can convert them into a vgm?


Top
 Profile  
 
 Post subject:
PostPosted: 2017-09-06, 22:56:31 

Contributors Contributors
Staff Staff
Offline
User avatar

Joined: 2013-07-17, 23:32:39
Posts: 201
That one used the FM chip. Unfortunately, High Speed does not (despite my earlier comment). Black Knight 2000 took a lot of effort in order to log VGM and is not something I would probably do again.


Top
 Profile  
 
 Post subject:
PostPosted: 2017-09-08, 18:21:15 
Offline

Joined: 2017-09-03, 18:56:43
Posts: 6
Well in that case what are ones that use FM chips and what was the process of logging it in a VGM?


Top
 Profile  
 
 Post subject:
PostPosted: 2017-09-09, 6:27:13 

Contributors Contributors
Staff Staff
Offline
User avatar

Joined: 2013-07-17, 23:32:39
Posts: 201
To check if the game uses the FM chip, just start it in MAME or M1 and get it to the point where it plays some music. Then mute the YM2151 using the mixer window in BridgeM1 or the tab menu in MAME. If the music stops or if only drums and samples are playing, then the game uses the FM chips.

The process for BK2K involved quite a few steps. In order to get the drums working I modified MAME sources to log the DAC writes (used for the drums) as YM2612 DAC writes. dacopt was used to optimize these.

The voice samples were ripped by using the MAME debugger and some hacking. The pinball boards have multiple CPUs and I find out the address the main CPU has to write to in order to command the sound CPU to play a sample. A program was then written to insert the samples into the VGM file as "PWM" datablocks (a sort of DAC used in the Sega 32X) and another program to sequence the datablock play commands (the sequences themselves were written by hand).

Finally, to even be able to log the songs in MAME without using the sound test (which does not include all the songs), more hacking was required. Same deal as with samples, I find out where the main CPU has to write in order to play a song.


Top
 Profile  
 
 Post subject:
PostPosted: 2017-09-11, 17:16:57 
Offline

Joined: 2017-09-03, 18:56:43
Posts: 6
So using dacopt can write what DAC streams and copy what it written into a VGM, sort of like copying answers off someone else during a test, I got it.
But how did you find the music and what website source did you use to find the roms for the music?
How did you modified the MAME sources for dacopt to work?
Can you please elaborate on hacking for the samples and logging respectively?


Top
 Profile  
 
 Post subject:
PostPosted: 2017-09-11, 17:43:26 

Contributors Contributors
Staff Staff
Offline
User avatar

Joined: 2013-07-17, 23:32:39
Posts: 201
SpaceQuakes wrote:
But how did you find the music and what website source did you use to find the roms for the music?

You could find the roms from any website that carries the full and up to date MAME romsets. Finding the music itself is usually done with M1 or the game's sound test.

SpaceQuakes wrote:
How did you modified the MAME sources for dacopt to work?

Unless you know programming it seems a bit pointless to explain all that. And even if you do you should have gotten enough info from what I've written earlier to understand. There is no proper way to play DAC streams directly in VGM (apart from the PWM but I used that too!) so I piggy back on the YM2612's DAC mode, even though the pinball hardware does not have an YM2612. dacopt's job is just to reduce the file size of the VGMs by optimizing the streamed DAC data.

SpaceQuakes wrote:
Can you please elaborate on hacking for the samples and logging respectively?

Well I can't really explain everything step by step. My knowledge comes from experience, so my advice would just be to try it on your own. Learn how to use the MAME debugger, 6800/6809 assembly and C++ in order to understand the MAME source code which explains the hardware. You have a mountain to climb and unfortunately I can't really pull you all the way up...


Top
 Profile  
 
 Post subject:
PostPosted: 2017-09-14, 4:03:57 
Offline

Joined: 2017-09-03, 18:56:43
Posts: 6
Well if you say it's near impossible. Then I just have to let this go.
Thanks for your help.


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 14 posts ] 

All times are UTC + 1 hour [ DST ]


Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group