News:

Herr Otto Partz says you're all nothing but pipsqueaks!

Main Menu

Sound Files Editing (VCE)

Started by Zapper, July 27, 2010, 06:18:39 PM

Previous topic - Next topic

llm

#15
Quote from: dstien on December 13, 2011, 02:11:37 PM
VCEs are Stunts resource archives. Working on the MIDI file conversion I identified some values in the MT-32 voices file that holds MIDI controller data:

char *vce = findResource(vceBuf, seq->voices[i].id);

if (vce == NULL) {
  seq->voices[i].enabled = false;
}
else {
  seq->voices[i].enabled   = true;
  seq->voices[i].channel   = vce[0x43];
  seq->voices[i].program   = vce[0x44];
  seq->voices[i].volume    = vce[0x45];
  seq->voices[i].pan       = vce[0x46];
  seq->voices[i].transpose = vce[0x10];
  seq->voices[i].hasHits   = vce[0x25];
}


i found similar offsets while doing my MT15.DRV reverse engineering project - attached is the C-Source part of the Driver
there are some struct-members with the same offset that are used in drv function calls

see
struct1_t
  ...
  byte_44
  byte_45
  byte_46


used in code as

Line 878: send_program_change_midi_msg(channel_, buffer_->byte_44);
Line 918: send_pan_control_change_midi_msg(channel_, buffer_->byte_46);
Line 922: send_volume_control_change_midi_msg(channel_, buffer_->byte_45);

sames as

  seq->voices[i].program   = vce[0x44];
  seq->voices[i].volume    = vce[0x45];
  seq->voices[i].pan       = vce[0x46];




Zapper

Definitely the implmentation of adlib vce file seems to be similar with mt32, but parameter addresses should have different goals and in other numbers since this effects are played differently.

llm

Quote from: Zapper on July 14, 2021, 05:00:32 PM
Definitely the implmentation of adlib vce file seems to be similar with mt32, but parameter addresses should have different goals and in other numbers since this effects are played differently.

is a full descriptione of the VCE format available somewhere?

Zapper

Quote from: llm on July 14, 2021, 08:33:16 PM
Quote from: Zapper on July 14, 2021, 05:00:32 PM
Definitely the implmentation of adlib vce file seems to be similar with mt32, but parameter addresses should have different goals and in other numbers since this effects are played differently.

is a full descriptione of the VCE format available somewhere?

I also would like to discover that, but for now, just guessing and messing with bytes. ;)

Daniel3D

I don't know if you can use this. But I have found a modding resource about the file type.
https://moddingwiki.shikadi.net/wiki/Kris%27_Music_System_Voice_Format
Edison once said,
"I have not failed 10,000 times,
I've successfully found 10,000 ways that will not work."
---------
Currently running over 20 separate instances of Stunts
---------
Check out the STUNTS resources on my Mega (globe icon)

Daniel3D

Also maybe useful. A list of games that use the same music system.
http://www.vgmpf.com/Wiki/index.php?title=KMS

Released   Title   Sample
1990-10-??   Stunts (DOS)   
1990-??-??   4D Sports Tennis (DOS)   
1990-??-??   Bill Elliott's NASCAR Challenge (DOS)   
1990-??-??   Teenage Mutant Hero Turtles (DOS)   
1991-??-??   4-D Boxing (DOS)   
1991-??-??   Mission: Impossible (DOS)   
1992-??-??   The Simpsons: Bart's House of Weirdness (DOS)   
1993-??-??   Michael Jordan In Flight (DOS)   
1993-??-??   NHL 93 (DOS)   
1993-??-??   World Tour Tennis (DOS)   
1994-??-??   NHL 95 (DOS)
Edison once said,
"I have not failed 10,000 times,
I've successfully found 10,000 ways that will not work."
---------
Currently running over 20 separate instances of Stunts
---------
Check out the STUNTS resources on my Mega (globe icon)

llm

#21
@Daniel3D

do you know which of them also got a MT15.drv or variants of it - i've heard (don't know the source anymore) that there are even more tiny differences MT15.drv exist - then the variants in Stunts 1.0/1.1 - a search for " DSI " in all the files could reveal them (even if different named) - but i think only the MT32 supporting games from that list are relevant for the MT15.drv relevant investigation

would be great to have them all - i would include the differences in my C port of the driver

my next goal is to write an MT15.drv based player to play the game sounds outside of the game

so the next question is: which of the above games support MT32? - except the ones we know, its easier for me analysing the VCE stuff from the MT32 direction because i know more details in that area

a list of Game + exact Release Date + MD5 of the MT15.DRV and MT32.PLB would be great

Daniel3D

Quote@Daniel3D

do you know which of them also got a MT15.drv or variants of it - i've heard (don't know the source anymore) that there are even more tiny differences MT15.drv exist - then the variants in Stunts 1.0/1.1 - a search for " DSI " in all the files could reveal them (even if different named) - but i think only the MT32 supporting games from that list are relevant for the MT15.drv relevant investigation
Well, I don't know.
I found this when I was looking for information on the Kms file.
Edison once said,
"I have not failed 10,000 times,
I've successfully found 10,000 ways that will not work."
---------
Currently running over 20 separate instances of Stunts
---------
Check out the STUNTS resources on my Mega (globe icon)

llm

#23
some of them containing MT15.drv(and MT32.PLB) and the the other sound drivers + bunch of VCE files  - in different versions (seem to be fixes in the timing code) or content - seems to be a very good source for VCE,MIDI sound analysing

1990-10-??   Stunts (DOS)    <-- contains MT15.DRV+VCEs+MT32.PLB
1990-??-??   4D Sports Tennis (DOS)      <-- contains MT15.DRV+VCEs+MT32.PLB
1990-??-??   Bill Elliott's NASCAR Challenge (DOS)      <-- contains MT15.DRV+MT32.PLB and other VCEs+DRVS
1990-??-??   Teenage Mutant Hero Turtles (DOS)    <-- contains DRV (no MT15) +VCEs
1991-??-??   4-D Boxing (DOS)       <-- contains MT15.DRV+VCEs+MT32.PLB
1991-??-??   Mission: Impossible (DOS)   <-- contains MT15.DRV+VCEs+MT32.PLB
1992-??-??   The Simpsons: Bart's House of Weirdness (DOS)    <-- contains MT15.DRV+MT32.PLB and other VCEs+DRVS
1993-??-??   Michael Jordan In Flight (DOS)   <-- contains MT15.DRV+MT32.PLB and other VCEs+ many different other sound-source DRVS
1993-??-??   NHL 93 (DOS)   <- MT30.BGP seems to be the MT32-sound driver, HOCKEY.EXE seems to have integrated MT32 support
1993-??-??   World Tour Tennis (DOS)   <-- contains MT15.DRV+VCEs+no MT32.PLB
1994-??-??   NHL 95 (DOS) <-- contains some KMS files

there are several changed versions of MT15.drv (and other drvs) around - also the contained MT32.PLB (sounds etc.) are different (much bigger or smaller then stunts)

could be funny to test if the different MT15.DRV and MT32.PLBs work with Stunts (some of the driver a litte bit bigger, some are 2-3 kilobytes larger)

GTAManRCR

Zapper, your V6 driver (ADENG1T3.VCE) sounds like a V10 with a Formula 1 car. So let's call it a Formula 1 V10 driver, okay?
Hejj bicska, bicska, bicska csantavéri kisbicska!

GTAManRCR

Quote from: GTAMan18 on July 25, 2021, 07:05:29 AM
Zapper, your V6 driver (ADENG1T3.VCE) sounds like a V10 with a Formula 1 car. So let's call it a Formula 1 V10 driver, okay?

Proof
Hejj bicska, bicska, bicska csantavéri kisbicska!

Zapper

#26
Quote from: GTAMan18 on July 25, 2021, 07:05:29 AM
Zapper, your V6 driver (ADENG1T3.VCE) sounds like a V10 with a Formula 1 car. So let's call it a Formula 1 V10 driver, okay?

Hi GTAMan18, if it's suitable as a V10 let it be also known as for this type of racing engines ;)

Ryoma


llm

what i've know so far:

these are the files that i seem fit together

3.571 AD15.DRV <- adlib sound card driver
1.152 ADENG1.VCE
3.008 ADSKIDMS.VCE

1.750 MT15.DRV <- 100% revesed into C code and i know what the thing is doing
  976 MTENG1.VCE
1.184 MTSKIDMS.VCE
1.271 MT32.PLB <- Engine Sounds/Crash Sound etc.

2.227 PC15.DRV <- pc speaker driver
1.049 PCENG1.VCE
1.232 PCSKIDMS.VCE

2.993 TD15.DRV <- tandy sound driver (special tandy sound chip?)
  912 TDENG1.VCE
2.528 TDSKIDMS.VCE

4.303 SKIDOVER.KMS <-- over-what?
8.612 SKIDSLCT.KMS <-- selection/menu music?
2.590 SKIDTITL.KMS <-- title music?
4.221 SKIDVICT.KMS <-- victory music?

i think the *ENG1* are engine sounds
no idea what *SKIDMS" means

https://moddingwiki.shikadi.net/wiki/Stunts

*.kms "Kris' Music System Format" - Music
https://moddingwiki.shikadi.net/wiki/Kris%27_Music_System_Format

*.vce "Kris' Music System Voice Format" - Instruments for background music
https://moddingwiki.shikadi.net/wiki/Kris%27_Music_System_Voice_Format

Daniel3D

Skid is the game (project) code. In 4D boxing it has box in that place.
The ms stands for music or something alike.

Skidover is the game over / lose high score screen music.
Skidvict is the game win / finish high score screen music

The **skidms.vce files have the instrument information for the skid****.Kms files.

If you rename the VCE files from boxing you get the stunts song with different instruments..
Edison once said,
"I have not failed 10,000 times,
I've successfully found 10,000 ways that will not work."
---------
Currently running over 20 separate instances of Stunts
---------
Check out the STUNTS resources on my Mega (globe icon)