Thread Rating:
  • 35 Vote(s) - 4.43 Average
  • 1
  • 2
  • 3
  • 4
  • 5
SPU2-X v2
Thumbs Up 
OK, that special build that I don't see before is visible Cool
Thank you FlatOut


So there is another question now : why the installer does not look at the OS version to replace the SPU-2 version ? Biggrin
Reply

Sponsored links

(04-21-2016, 09:38 PM)AjeAurel Wrote: OK, that special build that I don't see before is visible Cool
Thank you FlatOut


So there is another question now : why the installer does not look at the OS version to replace the SPU-2 version ? Biggrin

Because 1.4.0 was the last version to support Windows XP and we aren't going to spend ages making modifications to the installer for something we're about to completely drop Tongue
[Image: ref_sig_anim.gif]
Like our Facebook Page and visit our Facebook Group!
Reply
Speaking of the problem with XP, check this.

Said this, an IRC dump for posterity

pseudonym Wrote:(Example of something we genuinely don't understand: the digital effects engine in the SPU2)
(What we have for that is the result of testing on the psx's spu by one guy... the thing is......... all our testing indicates his model is very very wrong)
MrKB Wrote:Does it cause any issues in PCSX2 though?
pseudonym Wrote:Yes, it makes every game that uses digital effects (which is every game with 3D sound of some sort) sound wrong
You mentioned FFX for example.  Have you listened to the underwater portions on pcsx2 and on a real PS2? Tongue
Any kind of "room effect" is ***** Tongue
In addition to sounding wrong, there is actually a chance that it completely breaks some game
Because technically... I don't know if any game does this but it is technically a thing you could do...
..........you could set the SPU2 to interrupt the IOP when a certain address in the effects working area is touched
And rely on that happening at a predictable time
Or at least at a predictable interval
The HD remaster could easily be wrong too
And even if it's not it could easily be different
MrKB Wrote:Could I play the PS2 version on a truly BC PS3? Or does that PS3 still emulate the SPU2?
pseudonym Wrote:The PS3 doesn't use any variant of the SPU so the entire sound engine will be either replaced or emulated for the PS3
I dunno about hw bc ps3s
In any case we absolutely know ours is ***** because of spu2 tests we wrote
We wrote tests which record the waveform produced by playing a sample with an effect applied
Our output was only similar in the broadest of senses
MrKB Wrote:How would one go about understanding it? Reverse engineering?
pseudonym Wrote:Yeah, just got to write tests, make a model that fits, test that model etc.
Until you're 99% sure your model's right
I'm pretty damn sure the guy who originally did this wasn't right even for the psx spu
The SPU2 is supposedly just two SPUs in serial
So if we work this out I'm pretty sure it'd benefit psx emulators too
SPU2 emulation is probably mostly there other than that.  Maybe the slides are still not right.
Well, the DMA isn't but IOP dma's a mess
MrKB Wrote:From the FAQ - PCSX2 has come a long way since its starting point back in 2001. Current features include: Proper SPU2 emulation featuring Time Scaling and Reverb.
lel
Was it ghz|afk that coded it? Or did he only do the work on SPU2?
pseudonym Wrote:That's a funny statement, since if you emulate the SPU2 without "time scaling", all midi style music will be monotone
On the bright side, reversing that is an entirely self contained task.
A tedious and frustrating one that few people would want to do but it doesn't require anything but the ability to read the SPU2 manual, write test programs and stare at data for days on end
rama2 Wrote:yo Tongue2
reading the backlog, some spu2 talk
nice
pseudonym says the reverb is wrong
well, it's about 90&% right
pseudonym Wrote:About 10%
rama2 Wrote:it has to be, because if it was that wrong, we would get insane overdrives and feedbacks
pseudonym Wrote:Echoes last no more than 200% longer than they should and all the waveforms are entirely wrong Tongue
And all other room effects are just *****.  Completely Tongue
rama2 Wrote:it would never sound like reverb *at all*
pseudonym Wrote:The processing isn't even remotely correct
rama2 Wrote:meh, did you ever even compare yourself pseudonym?
pseudonym Wrote:Yes
rama2 Wrote:4 out of 5 games it sounds identical to me
pseudonym Wrote:I blame your hearing
That said, a lot of games don't use the digital effects at all
So those games sounding the same doesn't mean anything
rama2 Wrote:square always messes up with their audio drivers Tongue2
i selected reverb using games, stuff like bof3 and xenosaga, remember?
you can't make them sound as good as they do now with a totally broken fx
pseudonym Wrote:The fact that we don't have massive positive feedback loops doesn't mean that it's even remotely correct
It just means that it's completely wrong without being offensive to your ears
rama2 Wrote:it's a massive analogue style feedback loop. it breaks very easily and we would notice right aways
since it doesn't do that and instead in most games sounds exactly right (to me! Tongue2 ), it has to be pretty close
pseudonym Wrote:not really.
rama2 Wrote:okay, which game and which sound in it is broken?
pseudonym Wrote:As I mentioned the obvious test is FFX battles underwater
rama2 Wrote:leave that out please, because of other variables
square messes with the spu2 somehow, you know
pseudonym Wrote:Their game magically rewires the SPU2 Tongue
No, it's just using the hardware features Tongue
rama2 Wrote:we don't get other sounds in the game right either and it could be just that
the problem is their fast updates in some special sounds
psx emu guys wrote about it
pseudonym Wrote:Our _own_ tests showed that the reverb is wrong
rama2 Wrote:it's known to be super hard to emulate right
yea, we had a bit lower amplitude and length
so it's like, we lost some phase alignment after the 5th feedback or smth
minimal!°
pseudonym Wrote:Uh and you know... square waves
Everywhere.
rama2 Wrote:don't remember those Tongue2
do you still have screens btw?
pseudonym Wrote:No of course not
rama2 Wrote:would be great now Tongue2
lemme look
pseudonym Wrote:Rather than say "it must be anything but the thing we absolutely know is *****" how about "it's probably the thing we know is *****"?
rama2 Wrote:what, for FFX?
pseudonym Wrote:This is the one thing in SPU2-X nobody has ever seriously tried to fix
rama2 Wrote:for ffx i'm saying there are more problems than just reverb Smile
pseudonym Wrote:(Because doing so would require reversing it from scratch)
rama2 Wrote:yea, we could prolly do it
we did it half assed before
pseudonym Wrote:We didn't really do it at all
Every single SPU or SPU2 emulator is based on the same guy's reversing
rama2 Wrote:but it produced tools and methods to do it, and that's the annoying part
so that helps Tongue2
we have a method to load waves onto the ps2 and get the sound back + a waveform onto memory card
pseudonym Wrote:I think for reversing we'll need better than that
The end result is too far removed from the process
rama2 Wrote:when redoing it now, i'd start by double checking if that code is all sane though Tongue2
pseudonym Wrote:Watching the effects area during processing is probably more helpful
rama2 Wrote:think you can sample and display it?
pseudonym Wrote:I think it's doable.  Not every cycle though
Although repeated testing could get every cycle
rama2 Wrote:well, if you had that tool and suppose it does a live display while you upload sounds and program the fx
where do you start reversing the whole thing then?
wasn't it like 30+ registers? Tongue2
pseudonym Wrote:***** knows.
Probably start by zeroing the lot and poking them until something happens then think about what just happened a lot Tongue
rama2 Wrote:also are we sure with the memory region at all?
pseudonym Wrote:Yes, the effects area is at least a documented thing
rama2 Wrote:yea well
there were issues.. (i forgot what exactly >< )
pseudonym Wrote:Although for all I know it's possible to overflow it if you set the registers to something screwy
rama2 Wrote:something with bootup, one game (formula one 2000) and software not doing what the specs say
pseudonym Wrote:The manuals are completely silent about how it actually works
They say "use these presets, don't think too hard about it"
rama2 Wrote:yea, that's written for the audio guy Tongue2
he needs to know where the fx on / off and the settings are and sometimes he might care about how much ram it will use
but not more
 i think only that sakuraba motoi guy ever did his own effects Tongue2
and he's crazy. ask the dolphin guys, they have his crap to deal with, too Tongue2
(tales of something )
hmmm
i have recordings but no pics
stuff is from 2010
https://i.imgur.com/xLIiWS9.png
good days Tongue2
pseudonym Wrote:In any case regardless of how "good" you think it is, there's no reason it shouldn't be bit exact
rama2 Wrote:the reason is you need the exact specs for everything Smile
might be simpler to go and ask sony, lol
pseudonym Wrote:Sony don't know
rama2 Wrote:hm, isn't their spu emulation correct?
i think i never checked that
but i agree with you that fixing the fx would be a good start fixing the remaining spu2 issues
only that it's so damn hard Tongue2
pseudonym Wrote:It might be the only remaining spu2 issue apart from dma stuff for all we know Tongue
rama2 Wrote:there's interrupts in the reverb region and if games time that, then *****
pseudonym Wrote:I really think the voice emulation is... probably right now?
We weren't able to write a test which got voice emulation wrong
rama2 Wrote:no, there's this problem with fast updates
it was something about writing to a register really quickly and that would do some effect
FFX
i'm saying that this means our emulation has a problem with resolution
pseudonym Wrote:I prefer to focus on things that are definitely wrong rather than things that are maybe wrong
rama2 Wrote:yea but 30 regs and a couple uncerten things.. enjoy Tongue2
thinking about it, it might be fun though
lol
it depends on the tools again

[the discussion than proceeds with pseudonym complaining about gsdx upscaling hacks ^^]
[until I link this and we start talking about surround sound]

pseudonym Wrote:I don't know a lot about surround sound hacks and don't care about them
When I say hacks I mean that surround data encoding in stereo is a hack
Yes I know these are real standards
Stereo for life
(I'm very much the wrong person to ask about surround)
me Wrote:wait wait wiat
this is not "surround encoded in stereo" (aka matrixing)
pseudonym Wrote:The PS2 only does stereo
So yes it is
me Wrote:this is *surround encoded to fit a cable with only the bandwith for two uncompressed channels*
 but compressed surround is still surround
pseudonym Wrote:And I don't really care how you decode it

[we then discover skid_au allegedly has a "newer PS2" with no toslink output, therefore preventing him from doing what I recommend here]

MrKB Wrote:would [recording digital audio coming from the PS2] potentially make it easier to work with [SPU2 problems in general]?
pseudonym Wrote:Not really.
As I said reversing is probably mostly going to have to be based on the contents of the effects working area, not the final output
We can get output no problem.
SPU2 is in fact designed to be able to download the output to IOP memory
There are two memory areas for mixed audio output
One dry (no effects), the other wet (with effects)
You can simply download from these to see what the output is
That said this isn't the final final output
me Wrote:Tongue2
pseudonym Wrote:There's a final mix of streamed audio, external inputs, dry mixed voices and wet mixed voices to the output
But that's simple enough.
(Note that external input is a technicality in reality)
(Although the SPU2 could theoretically be wired to have an external input, in reality it doesn't, so this is actually used for wiring the two cores of the SPU2 together)
Sorry I said something wrong about dry/wet.  That was stupid.
gigaherz Wrote:technically, the spu2 core0 would still have its own external input, it's just either not plugged to anything, or pluggedto the cdrom for ps1 emulation reasons -- I was never certain (not that I looked too hard)
pseudonym Wrote:At the very least sony tell you to turn off mixing it
 For PS2 software
Plugged into the CDROM sounds plausible
Reply
Then (on another occasion)

me Wrote:if you have to tinker with spu2, I'd sugget adding dolby-dts decoding/passhtrough
gigaherz Wrote:tried once, never again.
XD
me Wrote:really?
gigaherz Wrote:the spu2 SPDIF system is completely undocumented
I tried to make it accept the data and dump it to a file
and it actually BROKE every single game I had that used spdif output
I didn't even manage to get a binary dump to work with
ghz|afk in another occasion Wrote:"ac3" is a trademarked name for another encoding system that you can find implemented elsewhere
but I discarded that
I started trying to decode the contents of the SPDIF-mode buffers
I never managed to get the decoder to recognize the data
(couldn't figure out if there was some sort of header that I was missing or something)
and also, I never managed to get any game to actually send a continuous data stream
couldn't figure out which bit rate the data was supposed to work at
all my attempts at finding a workingbit rate failed
so I gave up
if you look at that code, you may be able to detect some of my knowledge gaps
and maybe you know something I didn't and can try to work it further
but yeah ;P
best i managed was to cause all dolby-enabled games to STOP WORKING
for all practical purposes, it was never a thing ;p

rama1 Wrote:it would always be a complicated mess to get the benefits of spdif anyway
gigaherz Wrote:that's why there's PCM bypass (CDDA music from BIOS), but no SPDIF bypass
rama1 Wrote:like, intercepting the audio streams and converting to your particular sound card
and av receiver
me Wrote:why? there are plenties of tools to do so
rama1 Wrote:forget about direct spdif streams because of the unstable fps
gigaherz Wrote:the goal was to use spdif passthrough output and send the data directly to the sound card's digital out
without reprocessing
rama1 Wrote:nicer av's will just desync and give up
others .. idk Tongue2


gregory38 Wrote:would it be complicated to move spu2x in a separate thread?
rama1 Wrote:yep, that'll be horrible Tongue2
you would need to move the entire iop block to a thread
it would prolly be a good speed gain
but the sync Tongue2
first we'd have to get the handshaking right when iop is on the same thread as ee
some games are broken or habe minor issues because we don't
gigaherz Wrote:yes.
spu2 *needs* to interact with the IOP in realtime
inter-thread sync won't do
it would be easier to move the whope IOP to a thread
and use interop to emulate an actual SIF(?)
well IOP + SPU2x in a separate thread will be a very nice for the performance. (actually just keep EE and VU, in a thread)
rama1 Wrote:audio crackles in persona 4 when displaying save files
fiddle with the cycles a little and games unbreak
others break
gregory38 Wrote:I think you break some hypothesis
on the kernel you have some code that read the register 2 times (with various nope in the middle)
it retry until the value is stable
if you change the frequency the nop are useless
rama1 Wrote:xD
there are several issues like that, not only one
another problem is leapfrogging ee and iop cycles when we interrupt one cpu for some task
when it gets back to doing its thing, the entire environment has changed
gregory38 Wrote:well both iop and ee would need to be completely separated
only sif access ought to be allowed
gigaherz Wrote:EE-IOP would synchronize implicitly, through the SIF
rama1 Wrote:well, to tackle this, one would have to seriously debug everything involved, SIF, ee kernel, iop modules, our handshaking attempt
gigaherz Wrote:the IOP is mostly a slave of the EE, so it would receive a command, process it, and return the result
there's no need to keep a clock sync, since they are already in separate domains in the real thing
Reply




Users browsing this thread: 1 Guest(s)