Next Page

aopsf by kode54 at 6:24 PM EDT on September 9, 2015
I created another fork library, this time based on the Audio Overload PSF/PSF2 player engine. I replaced PEOpS/PEOpS2 with Highly Experimental's SPU core, which supports both SPU and SPU2 emulation, and I also fixed a number of bugs along the way. I have also replaced the original PSF2 file access system, which repeatedly unpacked whole files each to their own 6MB buffers, with Neill Corlett's original psf2fs based code, which I include in libpsflib.

The result is now located here:

https://gitlab.kode54.net/kode54/aopsf


I will also be replacing Highly Experimental itself in various players with this, as it also eliminates the need for a PS2 BIOS derived image in the resulting binary.

edited 12:07 AM EDT September 10, 2015

As a starter, here's nenolod's rip of Final Fantasy X, retagged a bit:

https://static.kode54.net/ffx.7z

edited 1:29 AM EDT September 10, 2015
by mudlord88 at 1:09 AM EDT on September 11, 2015
One less legal worry?
by RB at 3:08 AM EDT on September 11, 2015
This is great! I wish you would've told me directly, but this is exactly why I posted the source in the first place.

And yes, AOPSF is legally clean while Highly Experimental is not.
by kode54 at 4:39 AM EDT on September 11, 2015
I found another fork that may be relevant to my coding interests:

DeaDBeeF has the entire library in its source tree, including multi-instance safety across the board. I may just fork that, and slip in some alternate SPUs from the Highly* PSF libraries. I got Neill Corlett's permission to release source at a late point. Unlike the rest of the emulator, the SPU core should be legally clean as well, since it doesn't touch the BIOS code.

Same for the SSF/DSF and QSF cores, but I'm not sure if they're better or worse really.

Neill's R3000 core may also be slightly faster than the MAME(?) core used in the AO code, but it's less accurate. It only emulates delay slots in that it will execute opcodes following branches before executing the branch, but it won't actually lock the system to how delay slot opcodes are actually limited, which is why at least one rip was allowed to be released without hardware testing that would have shown that it crashed.

E: I plan to drill the AOSDK code out of DeaDBeeF's repository, into its own repository, maintaining the entire edit history.

edited 9:51 AM EDT September 11, 2015
by RB at 6:55 AM EDT on September 11, 2015
Sounds interesting. And good catch on the channel 7 DMA being weird! Either way I'll backport whatever interesting changes you and DeaDBeeF have and put up the resulting AOSDK on my Github account.
by Kirishima at 9:15 AM EDT on September 11, 2015
For some reason, some of my psf's didn't want to work with it during testing. It's probably the driver.

https://www.sendspace.com/file/hvtjuv
by MarkGrass at 11:14 AM EDT on September 11, 2015
No clue why the driver for that PSF wouldn't work, considering it was compiled with the official SDK, not hacked via assembly. That said, it most definitely isn't a delay load slot error.

You can always try a newer driver version using the utility found here.

I'm interested to see what the error could be. Any information on this would be greatly appreciated.

Oh, and wonderful work, Kode! :D
by kode54 at 12:20 PM EDT on September 11, 2015
HLE BIOS malloc was incorrectly calculating the size of the following free block to be larger by 16 bytes than it should be, the size of the new block's header.

And it also wants a free function, which I threw in for free. I'll update foo_psf and my DeaDBeeF fork with that shortly.
by punk7890-2 at 2:51 PM EDT on September 11, 2015
Noticed that Final Fantasy 10 doesn't work anymore with this in Foobar after updating. Thought I'd give you a heads up.

edited 8:04 PM EDT September 11, 2015
by kode54 at 2:56 PM EDT on September 11, 2015
Proper rip, thanks to nenolod, which I autocapitalized, maybe someone else can do better?

https://static.kode54.net/ffx.7z


Original rip even crashed on real hardware, apparently. If anyone wants to consolidate the redundant tiny set of files between each .psf2 into a minipsf2/psf2lib set, they're welcome to as well.

Next Page
Go to Page 0 1 2 3

Search this thread

Show all threads

Reply to this thread:

User Name Tags:

bold: [b]bold[/b]
italics: [i]italics[/i]
emphasis: [em]emphasis[/em]
underline: [u]underline[/u]
small: [small]small[/small]
Link: [url=http://www.google.com]Link[/url]

[img=https://www.hcs64.com/images/mm1.png]
Password
Subject
Message

HCS Forum Index
Halley's Comet Software
forum source