libretro / mame2003-plus-libretro

Updated 2018 version of MAME (0.78) for libretro. with added game support plus many fixes and improvements
Other
191 stars 109 forks source link

Berzerk has no audio #178

Closed Wilstorm closed 6 years ago

Wilstorm commented 6 years ago

Berzerk doesn't seem to have audio in either mame2003 or mame2003-plus. I have berzerk.zip samples in /home/pi/RetroPie/BIOS/mame2003/samples and also /home/pi/RetroPie/BIOS/mame2003-plus/samples. The game runs fine there's just no audio.

Using the workaround last week I downloaded 2003+ from source yesterday.

mame2003 I downloaded from source probably one to two weeks ago roughly.

ghost commented 6 years ago

@Wilstorm the update script is officially done on retropie you can safely use that :)

ghost commented 6 years ago

https://retropie.org.uk/forum/topic/17678/berzerk-sound-in-mame2003-plus-but-not-in-mame2003

ghost commented 6 years ago

just waiting to hear back from user

Wilstorm commented 6 years ago

Oh, great news! Go ahead and download from source to test?

ghost commented 6 years ago

well there was no issues 2 days ago if you built yesterday it should be fine

Wilstorm commented 6 years ago

Ok I just read the thread. I did notice something weird with dkong last night. Here's my dkong sample pack list for 2003+ but I am missing all the audio enhancements Arcadez put in place. Mame2003+ dkong has reverted to the old way of missing partial sounds.

Can you verify my path in the above post for samples is correct?

dkstomp.wav
effect00.wav
effect01.wav
effect02.wav
jump.wav
run01.wav
run02.wav
run03.wav
ghost commented 6 years ago

for the source (2003+)

static const char dkong_sample_names[] = { "dkong", "run01.wav", "run02.wav", "run03.wav", "jump.wav", "dkstomp.wav", 0 / end of array / };

static const char dkongjr_sample_names[] = { "dkongjr", "jump.wav", "land.wav", "roar.wav", "climb0.wav", "climb1.wav", "climb2.wav", "death.wav", "drop.wav", "walk0.wav", "walk1.wav", "walk2.wav", "snapjaw.wav", 0 / end of array / };

ghost commented 6 years ago

i dont use samples but ill start the game and see if i have any audio

Wilstorm commented 6 years ago

The samples are ok but also not working properly with dkong. I have the new and old samples in the pack to cover new as well as old versions of mame. How does the path for samples look? /home/pi/RetroPie/BIOS/mame2003-plus/samples

ghost commented 6 years ago

are the samples in a zip file ?

ghost commented 6 years ago

I have some audio in dkon on mame2003+ the running ect is missing because I dont have any samples. That is where the code is putting the samples should be right

ghost commented 6 years ago

@Wilstorm do yourself a favor before we test any more. With all the changes recently its probably best to recompile mame with the retropie script changes.

cd ~/RetroPie-Setup/ git checkout master git pull

then compile mame as normal

if ths is still happening ill need to know if its just this one game or all samples

Wilstorm commented 6 years ago

Yeah both games are in berzerk.zip and dkong.zip in the path listed above. Berzerk audio didn't work in either emulator and dkong is missing the corrected/added audio. I don't know if the corrected dkong audio made it to lr-mame2003 so it might be correct how it is.

Ok will do the steps above it might take me few hours as I have no audio on my monitors and will need to move it to a TV afterwards.

ghost commented 6 years ago

any time is good @Wilstorm if you could test the hiscores for mark as well he just done a commit for it. I really do need to get a set of samples I thought this was all tested.

ps are what version of retropie are you on @Wilstorm

Wilstorm commented 6 years ago

@grant2258 - Will do is there a good test game so we are on the same page? I do use high scores but also I don't pay much attention as I seem to forget them and they get wiped regularly. So most of the time they are at defaults. Make it an easy game so I don't have to work so hard to get a high score! ;)

ghost commented 6 years ago

just play a few games and check the folder whenever you remember too and see if its populating.

Wilstorm commented 6 years ago

Ok, basically you want to know if it's writing out a \<rom>.hi file in the /hi folder?

ghost commented 6 years ago

yeap need to know that it works for you with the hiscore.dat and without it

Wilstorm commented 6 years ago

Good deal s these old peepers probably aren't going to break records anytime soon.

Ok, so test it with and without hiscore.dat. Basically run it with hiscore.dat located in /home/pi/RetroPie/BIOS/mame2003-plus/hiscore.dat and then delete hiscore.dat and the \<rom>.hi files and retest the same games?

ghost commented 6 years ago

if you wouldnt mind testing in your own time would really help @Wilstorm ill try find some samples. In the mean time please try deleting the following from dkong and try again

effect00.wav effect01.wav effect02.wav

ghost commented 6 years ago

I just built the latest (after changing back to master branch) and hiscores are saving. @Wilstorm I tried Bombjack you can get the hiscore on the first screen !

Regarding the subject of the post, I have full sound in Berzerk (robot speech) and running/jumping sounds in DK.

ghost commented 6 years ago

I just tried without the hiscore dat and hiscores are NOT saving.

markwkidd commented 6 years ago

There is an internal hiscore issue that affects only some games. I am close to a fix: https://github.com/libretro/mame2003-plus-libretro/issues/173#issuecomment-387411757

Wilstorm commented 6 years ago

@ZappaUtopia - Thanks for testing!

@grant2258 - So did lr-mame2003 port some code that broke it in that emulator also or would downloading from source get it working again in lr-mame2003?

Wilstorm commented 6 years ago

@ZappaUtopia - Double thanks for the single board high score...that's more my speed! ;) I have to ask is your handle refer to Frank Zappa or one of the kids? Every time I see your handle I think of Frank Zappa or his kids who had pretty unique names. He banged out a lot of music in his short lifetime.

ghost commented 6 years ago

I'm a big fan of Frank !

Not sure why your Berzerk sound isn't working in 2003+, it's working fine on mine.

ghost commented 6 years ago

berzerker and dkong is fine for me as well just got the samples from twistys. Ill compile the latest mame 2003 code and test on that as well.

Wilstorm commented 6 years ago

@ZappaUtopia - Ah, very cool! Every time I see it I think it has to be him! That's good taste! ;)

I am downloading from source with the steps Grant suggested above so I'll get a definitive answer here shortly.

I was also referring to lr-mame2003. I tested it last night after 2003+ and noticed it's broke also. I was curious if lr-mame2003 is porting code from 2003+ and broke it. I am downloading that from source also so it's current today. If that doesn't work I will download the binary just to make sure it's working. I am about 99% sure it had sound prior to download from source.

ghost commented 6 years ago

I dont know how often retropie update there bins its always best to compile from source im doing it now as well

Wilstorm commented 6 years ago

@grant2258 - I believe they update the bins when RetroPie releases a new version so it's months between updates but I suppose that keeps it pretty stable. If from source doesn't kick start some audio I'll download the old binary to verify.

I mean you would know if it was missing "Intruder alert!" right? ... but it could all be in my head. I had to point out the smiley faces to my wife last night. She didn't notice when they explode they turn to smiley faces for a brief second.

ghost commented 6 years ago

hahahha class that is indeed attention to detail. My other half loves games too I hate it when I loose in mario kart i dont know why i just do lol

ghost commented 6 years ago

@Wilstorm retropie grabs bins from a sever they do get updated I just dont know how often

Wilstorm commented 6 years ago

Yeah I thought Dank said it was only updated with new RetroPie image releases but maybe it's more frequent. I can't remember but I'm pretty sure it's not to frequently.

ghost commented 6 years ago

you could be right ill check the scripts and see curiosity and all hehe

Wilstorm commented 6 years ago

Ok I have full samples working now in 2003+. I had to squash the changes.

Something has changed between the bins and source for lr-mame2003. Berzerk has audio if you download the binary and quits if download from source. Some update since the last binary has broken it.

Also I downloaded KMFDManic-NESC-SNESC-Cores.4-16-18.7z. It's KMFDManic's file but looking at the ffight.zip it's missing half the files. Basically it looks like it has the left channel only but to build a complete set for the DAT you need the right channel also. Do you guys have all the files or did I miss a folder in the archive. If you read the excerpt below the ffight.zip is missing all the -02 channels.

To recreate a stereo effect of the original music, i extracted the sega cd 
music, opened up each track, split the stereo channels separate, and convert
each channel to a mono track and save them out.  If you take a look inside
the ffight.zip samples you will see track02-01.wav and track02-02.wav. 
01 is the left channel converted to mono, and track02-02.wav is the right 
channel converted to mono. The updated cps code will play back both files 
together, and mixes the track02-01.wav into the left speaker and 
track02-02.wav into the right speaker, thus simulating the original 
stereo track.

This is what's in the ffight.zip archive:

track02-01.wav
track03-01.wav
track04-01.wav
track05-01.wav
track06-01.wav
track07-01.wav
track08-01.wav
track09-01.wav
track10-01.wav
track11-01.wav
track12-01.wav
track13-01.wav
track14-01.wav
track15-01.wav
track16-01.wav
track17-01.wav
track18-01.wav
track19-01.wav
track20-01.wav
track21-01.wav
track22-01.wav
track23-01.wav
track24-01.wav
track25-01.wav
track26-01.wav

Here's what should be in the ffight.zip archive if you want to simulate the original stereo sound of the audio CD:

track02-01.wav
track02-02.wav
track03-01.wav
track03-02.wav
track04-01.wav
track04-02.wav
track05-01.wav
track05-02.wav
track06-01.wav
track06-02.wav
track07-01.wav
track07-02.wav
track08-01.wav
track08-02.wav
track09-01.wav
track09-02.wav
track10-01.wav
track10-02.wav
track11-01.wav
track11-02.wav
track12-01.wav
track12-02.wav
track13-01.wav
track13-02.wav
track14-01.wav
track14-02.wav
track15-01.wav
track15-02.wav
track16-01.wav
track16-02.wav
track17-01.wav
track17-02.wav
track18-01.wav
track18-02.wav
track19-01.wav
track19-02.wav
track20-01.wav
track20-02.wav
track21-01.wav
track21-02.wav
track22-01.wav
track22-02.wav
track23-01.wav
track23-02.wav
track24-01.wav
track24-02.wav
track25-01.wav
track25-02.wav
track26-01.wav
track26-02.wav
dankcushions commented 6 years ago

retropie binaries are updated usually with each retropie image but also at jool's discretion if an important bugfix or feature is ready. once we have stability we can request an update, but it's moving so quickly at the moment it doesn't seem worth asking.

ghost commented 6 years ago

no i was just curious is all dan

Wilstorm commented 6 years ago

@grant2258 - Thank you good sir for fixing this. Will you be posting here after the pull request for testing on lr-mame2003?

ghost commented 6 years ago

its tested already @Wilstorm on linux and retropie anyone that wants to test it is welcome to if its pulled. It was @markwkidd that fixed it not me I just put the commit in. no reason to pull a test request here its a different core if there is an issue we can post over there. The cores have drifted apart somewhat with our rapid development it going to get to the point we cant port our fixes across sooner or later.

ghost commented 6 years ago

@Wilstorm from what i understand final is the full stereo channels as one channel in mono wav. if you only have one sample I think it still goes through both speakers will verify that on my barcade. You can easily download the game iso and rip the audio and convert it if you want the full stereo effect im pretty sure this was done to save on space

Wilstorm commented 6 years ago

@grant2258 - If you read the whole readme he split the stereo into left/right. If either is missing it will play the other in mono out both speakers. If both are present it's simulated stereo. If any are missing it falls back to ROM based audio. You can mix and match ROM based and CD based. He made 3 sets for different scenarios. My set is missing all of the 02 (right) channel samples. I'm pretty sure half the audio files are missing. A quick search brings up nothing, hard to find.

ghost commented 6 years ago

@Wilstorm i think your miss understanding what im saying. What im saying is he got a stereo sample and put left and right together as a mono sample so you have all the sound just not in stereo through two speakers. To save on space. The full size of the stereo wavs are 400megs thats a lot of space for one game its what i would do. The stereo may be missing bit the both channels surely will be mixed into the mono. Best to ask him if your in doubt i personally think thats whats happend. Just grabe the iso and get the samples and split the channels and youll have them in stereo if you want them in there full glory

ghost commented 6 years ago

https://www.reddit.com/r/miniSNES/comments/7prvlw/snes_classic_random_game_generator_new_retroarch/ says on his pages its the monotracks think youll need to tracks the stereo ones down or rip them yourself @Wilstorm

ghost commented 6 years ago

I can upload the tacks if you want to convert them just let me know ill delete them when your finished downloading

ghost commented 6 years ago

@Wilstorm if this topic of berserk samples not working in mame2003plus is fixed for you can you please close the topic. If you want the samples uploaded just let me know isint a problem

Wilstorm commented 6 years ago

I hear what you're saying but I would struggle to say that flattening 2 channels went from 400MB to 60MB. It's usually roughly have the size but maybe one channel is that much more dense but still. I would imagine not every part of the original 400MB was used to reproduce the samples though.

I think I would have rather have had the 2 channels the original author created and flattened them to mono myself that would be easy enough. I suppose a guy could try and reinvent the wheel and recreate what the original author has already done but that seems silly and a good bit of work when they are floating around somewhere.

That way we have a choice if we used a PC or I am sure the Pi would use the larger samples fine or we can flatten them for mono sound or split 1 channel by deleting it and let the other be handled via ROM. It gives you the best of both worlds as well as options left up to user based on platform used and limitations. If the speakers in your cab are on opposite sides the sense of the simulated stereo depth would work fine I imagine but we won't know! ;)

Anyway if I understand what you're saying is the author created two channel stereo but then flattened it before distributing it which doesn't make sense really as he gives you the ability to scale back the size multiple ways including 1 channel mono if you look at the readme but I can live with what you're saying.

The DAT needs cleaned up as it assumes the parent and all children have the right channel available see below. It's also missing the wav extension.

The Soundtrack can be run a few different ways!  These include **8bit mono,** 
**8 bit mono-stereo non-usb host**, and **8bit mono-stereo mix.**
I also built in hooks, so if only one of the 2 channels play, it will 
default the playing one into both speakers, it'll be a mono effect but
it'll still work, and is another option for people to cut down on file
size.  So for example if in the ffight.zip, track02-02.wav is missing,
the cps system will play track02-01 into both speakers. Or if 
track02-01.wav is missing, it will play track02-02.wav into both speakers.
You can run without ALL of them.  But, if you decide to remove any...due to
space limitations, remove from 26 and go backwards.  if track02-01.wav and 
track02-02.wav are missing, the system will fall back and default to the 
original music from the game!  (tracks 24 and 25, which are not used at all 
so they arent needed) Keep that in mind.

DAT errors when completing a set:

Final Fight (World) [folder: ffight - size: 3mb]
missing sample: track02-01
missing sample: track02-02
missing sample: track03-01
missing sample: track03-02
missing sample: track04-01
missing sample: track04-02
missing sample: track05-01
missing sample: track05-02
missing sample: track06-01
missing sample: track06-02
missing sample: track07-01
missing sample: track07-02
missing sample: track08-01
missing sample: track08-02
missing sample: track09-01
missing sample: track09-02
missing sample: track10-01
missing sample: track10-02
missing sample: track11-01
missing sample: track11-02
missing sample: track12-01
missing sample: track12-02
missing sample: track13-01
missing sample: track13-02
missing sample: track14-01
missing sample: track14-02
missing sample: track15-01
missing sample: track15-02
missing sample: track16-01
missing sample: track16-02
missing sample: track17-01
missing sample: track17-02
missing sample: track18-01
missing sample: track18-02
missing sample: track19-01
missing sample: track19-02
missing sample: track20-01
missing sample: track20-02
missing sample: track21-01
missing sample: track21-02
missing sample: track22-01
missing sample: track22-02
missing sample: track23-01
missing sample: track23-02
missing sample: track24-01
missing sample: track24-02
missing sample: track25-01
missing sample: track25-02
missing sample: track26-01
missing sample: track26-02

Final Fight (Japan set 1) [folder: ffightj - parent: ffight - sampleparent: ffight - size: 3mb]
missing sample: track02-01
missing sample: track02-02
missing sample: track03-01
missing sample: track03-02
missing sample: track04-01
missing sample: track04-02
missing sample: track05-01
missing sample: track05-02
missing sample: track06-01
missing sample: track06-02
missing sample: track07-01
missing sample: track07-02
missing sample: track08-01
missing sample: track08-02
missing sample: track09-01
missing sample: track09-02
missing sample: track10-01
missing sample: track10-02
missing sample: track11-01
missing sample: track11-02
missing sample: track12-01
missing sample: track12-02
missing sample: track13-01
missing sample: track13-02
missing sample: track14-01
missing sample: track14-02
missing sample: track15-01
missing sample: track15-02
missing sample: track16-01
missing sample: track16-02
missing sample: track17-01
missing sample: track17-02
missing sample: track18-01
missing sample: track18-02
missing sample: track19-01
missing sample: track19-02
missing sample: track20-01
missing sample: track20-02
missing sample: track21-01
missing sample: track21-02
missing sample: track22-01
missing sample: track22-02
missing sample: track23-01
missing sample: track23-02
missing sample: track24-01
missing sample: track24-02
missing sample: track25-01
missing sample: track25-02
missing sample: track26-01
missing sample: track26-02

Final Fight (Japan set 2) [folder: ffightj1 - parent: ffight - sampleparent: ffight - size: 3mb]
missing sample: track02-01
missing sample: track02-02
missing sample: track03-01
missing sample: track03-02
missing sample: track04-01
missing sample: track04-02
missing sample: track05-01
missing sample: track05-02
missing sample: track06-01
missing sample: track06-02
missing sample: track07-01
missing sample: track07-02
missing sample: track08-01
missing sample: track08-02
missing sample: track09-01
missing sample: track09-02
missing sample: track10-01
missing sample: track10-02
missing sample: track11-01
missing sample: track11-02
missing sample: track12-01
missing sample: track12-02
missing sample: track13-01
missing sample: track13-02
missing sample: track14-01
missing sample: track14-02
missing sample: track15-01
missing sample: track15-02
missing sample: track16-01
missing sample: track16-02
missing sample: track17-01
missing sample: track17-02
missing sample: track18-01
missing sample: track18-02
missing sample: track19-01
missing sample: track19-02
missing sample: track20-01
missing sample: track20-02
missing sample: track21-01
missing sample: track21-02
missing sample: track22-01
missing sample: track22-02
missing sample: track23-01
missing sample: track23-02
missing sample: track24-01
missing sample: track24-02
missing sample: track25-01
missing sample: track25-02
missing sample: track26-01
missing sample: track26-02

Final Fight (US 900112) [folder: ffightu - parent: ffight - sampleparent: ffight - size: 3mb]
missing sample: track02-01
missing sample: track02-02
missing sample: track03-01
missing sample: track03-02
missing sample: track04-01
missing sample: track04-02
missing sample: track05-01
missing sample: track05-02
missing sample: track06-01
missing sample: track06-02
missing sample: track07-01
missing sample: track07-02
missing sample: track08-01
missing sample: track08-02
missing sample: track09-01
missing sample: track09-02
missing sample: track10-01
missing sample: track10-02
missing sample: track11-01
missing sample: track11-02
missing sample: track12-01
missing sample: track12-02
missing sample: track13-01
missing sample: track13-02
missing sample: track14-01
missing sample: track14-02
missing sample: track15-01
missing sample: track15-02
missing sample: track16-01
missing sample: track16-02
missing sample: track17-01
missing sample: track17-02
missing sample: track18-01
missing sample: track18-02
missing sample: track19-01
missing sample: track19-02
missing sample: track20-01
missing sample: track20-02
missing sample: track21-01
missing sample: track21-02
missing sample: track22-01
missing sample: track22-02
missing sample: track23-01
missing sample: track23-02
missing sample: track24-01
missing sample: track24-02
missing sample: track25-01
missing sample: track25-02
missing sample: track26-01
missing sample: track26-02
ghost commented 6 years ago

I know all this but mame can handle the 16 bit as well. I downloaded them samples they are 98 megs unzipped probably a 8bit mono . so for 8 bit dual channeld youll be looking about 200 megs unzipped and 16 bit will be double that. Again its personal choice the best thing to do is get the original tracks and convert them how you want them @Wilstorm. I can send you the original tracks if you want them then you can make a custom set up

markwkidd commented 6 years ago

Side note: If we really want to embrace libretro down the road in a year or two, there are some neat features that we could bring from libretro-common like native FLAC support, and even I think FLAC compression inside a CHD which is what the cool kids might be doing these days. I imagine that would be 30-50% small in filesize.

I just mention this for fun. Not going to work on it anytime soon :smile:

On Wed, May 9, 2018 at 10:52 AM, grant2258 notifications@github.com wrote:

I know all this but mame can handle the 16 bit as well. I downloaded them samples they are 98 megs unzipped probably a 8bit mono . so for 8 bit dual channeld youll be looking about 200 megs unzipped and 16 bit will be double that. Again its personal choice the best thing to do is get the original tracks and convert them how you want them @Wilstorm https://github.com/Wilstorm

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/libretro/mame2003-plus-libretro/issues/178#issuecomment-387786271, or mute the thread https://github.com/notifications/unsubscribe-auth/ASphdrcIQm71MKgbQymeD4_3nSnMa4IXks5twxC5gaJpZM4T2veK .

-- Mark W. Kidd http://facebook.com/markwkidd (606)536-0115

ghost commented 6 years ago

And KMFD's samples are just an added extra anyway, they are not required to play any arcade games to the fullest, they are just bonus. These samples probably shouldn't even be in the DAT file to avoid confusion.

ghost commented 6 years ago

i kinda disagree samples have always been optional anway most people just dont use them and anyone who does will ask about it and know its a custom thing