This repository contains the IOP module for playing TSQ/TVB sound files with the PSF2 player.
There are also several scripts included that can be used to create PSF2 files.
Note that this is only for PlayStation 2 games and is not compatible with PlayStation 1 TSQ/TVB files.
For PlayStation 1 games, use tsq2psf by loveemu.
- PowerShell
>=5.1
- Can also be used with cross-platform PowerShell on Linux or macOS.
- PS2DEV (
v1.2.0
is recommended) or Docker - PSF2Kit
- mkpsf2
With PS2DEV environment :
cd ./src && make
With Docker :
./build-docker.ps1
- Extract
SNDMOD.IRX
,*.TSQ
,*.TVB
files from the game disc. - Put
SNDMOD.IRX
to this directory and execute the following :
./scripts/fix-iopmod.ps1 -LiteralPath SNDMOD.IRX
- Create PSF2.INI in any text editor and write the following :
myhost.irx
cdvdnul.irx
fakesif.irx
libsd.irx
sndmod_linkfix.irx
tsqdrv.irx -b=[TVB filename] -s=[TSQ filename]
- Place the following files into their own directory.
Filename | Where to get |
---|---|
PSF2.IRX | From PSF2Kit |
PSF2.INI | You have to create/edit this yourself in step 3. |
MYHOST.IRX | From PSF2Kit |
CDVDNUL.IRX | From PSF2Kit |
FAKESIF.IRX | From PSF2Kit |
LIBSD.IRX | From the game itself |
SNDMOD_linxfix.IRX | Generated in step 2. |
TSQDRV.IRX | Just this module |
[basename].TSQ | From the game itself |
[basename].TVB | From the game itself Must correspond to TSQ file |
-
Use mkpsf2 to bundle these files into a PSF2 file.
-
Calculate the length of the songs and apply it to the PSF2 files using psfpoint.
./scripts/tsqtimer.ps1 -LiteralPath [TSQ path] -Loop [loop count]