#1  
Old 29th April 2014, 06:42 AM
Frank74's Avatar
Frank74 Frank74 is offline
Alpha Tester
Project Supporter
Senior Member
 
Join Date: Aug 2013
Location: UK
Posts: 828
Default Mupen64plus-rsp-hle

I've recently tried the latest Mupen64Plus build. It has flawless Musyx playback in hle, thanks to a bloke called Bobby Smiles working on the rsp.

How hard would it be to port this over to a Zilmar spec plugin?
Reply With Quote
  #2  
Old 29th April 2014, 06:52 AM
Frank74's Avatar
Frank74 Frank74 is offline
Alpha Tester
Project Supporter
Senior Member
 
Join Date: Aug 2013
Location: UK
Posts: 828
Default

Here is the musyx source from the rsp.

https://github.com/mupen64plus/mupen...er/src/musyx.c
Reply With Quote
  #3  
Old 29th April 2014, 06:59 AM
HatCat's Avatar
HatCat HatCat is offline
Alpha Tester
Project Supporter
Senior Member
 
Join Date: Feb 2007
Location: In my hat.
Posts: 16,256
Default

1964 Audio already has MusyX HLE'd in their plugin and is zilmar-spec. I don't know why nobody on EmuTalk has noticed this.
Reply With Quote
  #4  
Old 29th April 2014, 07:18 AM
Frank74's Avatar
Frank74 Frank74 is offline
Alpha Tester
Project Supporter
Senior Member
 
Join Date: Aug 2013
Location: UK
Posts: 828
Default

I know, but 1964 Audio 2.7 Musyx ucode's weren't complete, and it crapped out making the voices go garbled at random points. The same bugs appear in Shunyuan's plugin.

The Mupen64plus-rsp-hle appears to be perfect. I played through TWINE and it was perfect musyx speech the whole time.

h##p://###.emutalk.net/threads/54585-N64-List-of-games-that-use-MusyX-and-any-open-source-audio-plugin-playing-it?p=451913&viewfull=1#post451913

h##ps://github.com/mupen64plus/mupen64plus-rsp-hle/blob/master/src/musyx.c
Reply With Quote
  #5  
Old 29th April 2014, 07:33 AM
HatCat's Avatar
HatCat HatCat is offline
Alpha Tester
Project Supporter
Senior Member
 
Join Date: Feb 2007
Location: In my hat.
Posts: 16,256
Default

This is a core bug with the CPU. You should get the same garbling with a LLE audio plugin, too, not just HLE ones. They will crap out at some point on 1964 as well if you are using an unstable emulator core, like 1964's recompiler, which may eventually break something sent to the RSP, at which point, it is no longer the RSP's fault whether the speech/audio broke, no matter if it's in HLE or LLE.

Quote:
Originally Posted by Frank74 View Post
The same bugs appear in Shunyuan's plugin.
Shunyuan's audio plugin was based on 1964AudioLLE and is not a HLE audio plugin. It appears to operate as a HLE audio plugin under the stereotype that the RSP has to call it externally to do "HLE", which is really just my LLE RSP code copied into it, as he admits.
Reply With Quote
  #6  
Old 1st May 2014, 12:32 AM
bsmiles32 bsmiles32 is offline
Junior Member
 
Join Date: Jun 2013
Posts: 10
Default

Quote:
1964 Audio 2.7 Musyx ucode's weren't complete
I cannot comment on the 2.7 version, but reading the 2.6 sources it seems that they only emulate one of the version of Musyx ucode (GauntletMicrocode.c). So this wouldn't work for Indiana Jones or Star Wars Battle For Naboo. [However, those games are not playable yet with HLE so not a real loss].

Furthermore, their approach for emulating ucodes is more "machine friendly" than what I proposed:They made a(n unreleased) converter which generates the c file from a binary dump of ucode. I reverse engineered the musyx format and reimplemented it. Their approach scales better, while my approach better document the ucode.
Reply With Quote
  #7  
Old 26th June 2014, 04:06 AM
RPGMaster's Avatar
RPGMaster RPGMaster is offline
Alpha Tester
Project Supporter
Super Moderator
 
Join Date: Dec 2013
Posts: 2,029
Default

Nice work bsmiles32! You've given me some hope. I think that's really cool how you can accomplish by debugging.
Quote:
Originally Posted by Frank74 View Post
How hard would it be to port this over to a Zilmar spec plugin?
I'd like to test it out myself on zilmar spec emulators. I might give it a shot at porting, but I'm impatient atm so idk if I'll succeed lol.
Reply With Quote
  #8  
Old 30th June 2014, 01:10 AM
the_randomizer's Avatar
the_randomizer the_randomizer is offline
Alpha Tester
Project Supporter
Senior Member
 
Join Date: Sep 2008
Location: USA
Posts: 1,136
Default

Is there any reason why the 1964 Audio Plugin doesn't work with PJ64 and why the MusyX ucode is such a pain to emulate?
__________________
My rig:
CPU: Intel Core i7 4470 3.4 GHz to 3.9 GHz
Video card:: MSI nVidia GTX 970 4 GB GDDR5
OS: Windows 7 Professional 64-bit
RAM: 16 GB DDR3 SDRAM 10600
HDD: 2 x Western Digital 1 TB HDDs
Monitor: 23" Asus Full HD LED

Oh, and Snes9x > Zsnes in every way
Reply With Quote
  #9  
Old 30th June 2014, 02:40 AM
RPGMaster's Avatar
RPGMaster RPGMaster is offline
Alpha Tester
Project Supporter
Super Moderator
 
Join Date: Dec 2013
Posts: 2,029
Default

Quote:
Originally Posted by the_randomizer View Post
Is there any reason why the 1964 Audio Plugin doesn't work with PJ64
Idk, but I'm investigating that. It's odd how it works fine on Mupen64. Also pausing the emulator seems the screw up the audio too.
Quote:
Originally Posted by the_randomizer View Post
why the MusyX ucode is such a pain to emulate?
I don't think it is such a pain to emulate. What games have problems?
Reply With Quote
  #10  
Old 30th June 2014, 02:45 AM
HatCat's Avatar
HatCat HatCat is offline
Alpha Tester
Project Supporter
Senior Member
 
Join Date: Feb 2007
Location: In my hat.
Posts: 16,256
Default

Basically, it's like this.

In increasing order of the usage of #include <Eminem.h>:

Linux/Macintosh plugins >> Windows zilmar-spec plugins >> Project64-compliant Windows plugins.
Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump


All times are GMT. The time now is 03:54 PM.


Powered by vBulletin® Version 3.7.3
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd.