Commit graph

160 commits

Author SHA1 Message Date
Unknown W. Brackets
1a010a37ab Return an error for invalid voice in keyoff.
Can't reproduce no error and Every Extend Extra doesn't even seem to be
reporting it.  Most likely it would be happy with the error code anyway.
2014-02-17 01:39:56 -08:00
Unknown W. Brackets
f02bf1239e Validate the effect volume in __sceSasRevEVOL(). 2014-02-17 01:39:55 -08:00
Unknown W. Brackets
b5ac7b0c5f Dumb typo. 2014-02-08 07:29:02 -08:00
Unknown W. Brackets
fa6f004213 Validate ADSR modes in sceSasSetADSRmode().
Might prevent a game bug from breaking sounds, pretty unlikely.
2014-02-07 23:52:29 -08:00
Unknown W. Brackets
7e4e40b4d8 Reject invalid values in sceSasSetADSR().
Might happen due to a bug in a game, rejected by real firmware.
2014-02-07 22:44:11 -08:00
Unknown W. Brackets
074ef84559 Correct the rates set by sceSasSetSimpleADSR().
They were wrong for a few combinations before.  Could have effected how
accurate sound effects were (they may have been too quite, or dropped off
wrong, etc.)
2014-02-07 22:29:54 -08:00
raven02
0890567240 Small fix :) 2014-02-04 20:12:50 +08:00
raven02
3f20b5ad77 sceSas : should be always delay thread 2014-02-04 20:03:54 +08:00
Unknown W. Brackets
a00d5a2df8 Set a voice as keyed off when its envelope ends. 2014-02-04 01:35:53 -08:00
raven02
f381bfd0b4 Update comment 2014-01-27 17:22:01 +08:00
raven02
75a49129a6 Return without delay if voicesPlayingCount is zero 2014-01-27 10:07:56 +08:00
Henrik Rydgård
5b355c4a64 Improve comment about the sas delay 2014-01-26 14:37:41 +01:00
raven02
7701784608 Not reschelding if voicesPlayingCount == 0 2014-01-26 19:52:31 +08:00
Henrik Rydgard
0de71f27cb Optimize the VAGADPCM decoder. 2014-01-04 01:59:20 +01:00
Henrik Rydgard
2fe898cda8 Add comment with link to important github thread about sceSas threading 2013-11-09 02:05:28 +01:00
Henrik Rydgard
a790c0a723 SasAudio: Add some comments about reverb, and add the reverb type list 2013-10-23 22:59:42 +02:00
Unknown W. Brackets
50e9e45d65 Check version in each DoState() func.
They bail on PointerWrap error or bad version.
2013-09-14 20:23:03 -07:00
Henrik Rydgard
324cde5a79 Let's actually use the log category mechanism. A first step. 2013-09-07 21:19:21 +02:00
Henrik Rydgard
78d3ee3d6a Misc cleanup, mostly logging code 2013-09-07 13:01:19 +02:00
Unknown W. Brackets
fe1f4d53c6 Return an error on bad SAS sample rate.
Also reorder the types to fit the PSP's flag values.
2013-09-01 16:59:37 -07:00
Henrik Rydgard
a530d47fcd Clamp bad audio pitches for safety. 2013-08-27 22:47:45 +02:00
Unknown W. Brackets
a217cefa11 Tone down some less needed reporting. 2013-08-21 08:40:29 -07:00
Henrik Rydgard
806fadb1c0 logging tweak 2013-06-17 22:05:47 +02:00
Unknown W. Brackets
8b4b4a6b8c Use the 1 bit in sceSasRevVON() and cleanup.
Not used yet anyway.
2013-06-12 07:59:54 -07:00
Unknown W. Brackets
8e7c5be2e0 Don't return errors in sceSasSetPause().
-1 is perfectly valid, we just need to not infinite loop in that case by
using a logical shift not an arithmetic one.
2013-06-12 07:56:53 -07:00
Unknown W. Brackets
28729fc116 sceSasInit() ignores maxVoices and always does 32.
Weird, I can't find anything that parameter does except generate errors.
Most games call with 32 anyway...

Affects only sceSasGetEndFlag() and sceSasGetPauseFlag() really.
2013-06-11 00:43:52 -07:00
Unknown W. Brackets
b7d494f34e Delay in sceSasCore per tests.
Not sure if this fixes anything, but scheduling issues can be tricky.
2013-06-09 20:56:09 -07:00
Unknown W. Brackets
ea5996bf02 Don't restart release on double keyoff.
Fixes Kingdom Hearts bug, #2066.
2013-06-09 20:38:54 -07:00
Unknown W. Brackets
1d35cc46a4 Validate parameters in sceSasInit(). 2013-06-09 20:32:01 -07:00
oioitff
c98adee757 Implement __sceSasConcatenateATRAC3.
.
2013-06-09 19:07:02 +08:00
oioitff
3c13b574e3 Partly implement __sceSasSetVoiceATRAC3.
Fix Sol Trigger hang up issue.
2013-06-09 01:34:38 +08:00
Unknown W. Brackets
fa69e5e646 Didn't need any special logic here after all. 2013-05-27 17:05:13 -07:00
Unknown W. Brackets
7b154f9a2e Fix VAG looping. 2013-05-27 16:48:59 -07:00
Unknown W. Brackets
91bdc0617e Return an invalid size error even for VAG = 0. 2013-05-27 12:19:19 -07:00
Unknown W. Brackets
aeb2b23735 Validate volume inside sceSasSetVolume().
I wonder what a negative volume means?
2013-05-27 11:57:27 -07:00
oioitff
99f8041375 Implement pcm voice correctly. 2013-05-24 00:42:15 +08:00
Unknown W. Brackets
cdacdee030 Match syscall names to nids ot be safe.
Don't want any more mistakes like the sceVaudio one.
2013-05-19 22:12:39 -07:00
Unknown W. Brackets
ded3fb5e12 Add reporting to a bunch of unimpl functions.
Also some comment/logging fixes along the way.
2013-05-19 22:12:37 -07:00
oioitff
8d10724b64 Implement volume control for _sceSasCoreWithMix.
Tested with Fate Unlimited Code.
2013-05-11 04:30:02 +08:00
oioitff
a944c96137 Remove the useless codes instead. 2013-04-23 22:31:23 +08:00
oioitff
62f79989bd Implement _sceSasCoreWithMix correctly.
The inoutAddr should be both input and output buffer address.
2013-04-23 22:00:14 +08:00
Unknown W. Brackets
e4223dbcb0 Simplify adding report messages, add a bunch more. 2013-03-26 00:54:00 -07:00
raven02
1b5dce5c93 Remove volume shift 2013-03-12 21:19:48 +08:00
raven02
b07fe9da46 Should be good enough to remove now as we already identifed games use sceSasSetVoicePCM() 2013-03-12 12:17:19 +08:00
Unknown W. Brackets
cb4c7f0eb6 Add some basic reporting hooks. 2013-03-04 00:01:40 -08:00
Unknown W. Brackets
51d5b84108 Fix some misc HLE warnings. 2013-02-18 09:04:43 -08:00
raven02
f41b3f7cf1 sceSAS style & simplification 2013-02-17 09:45:20 +08:00
Henrik Rydgard
686c083b6f sceSas: initialize some stuff 2013-02-16 14:07:04 +01:00
Lewis Robbins
73ddf8d01f Line spacing 2013-02-10 14:16:29 +00:00
Lewis Robbins
6efad644d3 extra int print 2013-02-10 14:12:48 +00:00