Latest upload by: TiagoSC
20th January 2023
PSXDEV logo

Donate & Support PSXDEV.NET

Since 2012, we have been providing users with a place for free information, free downloads & zero ads.

The forums have always been safe and clean (no spam) for members interested in the PlayStation 1 to meet and make new friendships. It's a place for those who are interested in learning about programming, reverse engineering and experimenting with hardware/software for the console.

We have never asked for donations before but it has reached the point where the server costs are becoming too much for us. We would like to politely ask that if you use this site that you donate any amount you can to show your support to assist with the hosting fees in order to keep PSXDEV.NET alive.

Users who donate will be rewarded with a new profile rank on their account badge. Just be sure to include your handle/alias when sending the donation or message us on the site here so we can apply it to your forum profile.

Bitcoin: 1GqS7rr8jYPzT4Lp9Uua3D5thUH8ZnWyD8

Thank you for your contribution

PlayStation Development Network - PSX CD-ROM XA (eXtended Architecture)

Revision 1.1

This tutorial will show you how to correctly master an image with XA, as well as burn XA onto a CD-ROM for playing it off of the PlayStation 1.


First off, you will need Psy-Q installed as we will need to use the tools contained within its SDK.
If you don't have Psy-Q installed, click here.

Next, download the example XA package and extract the folder to 'C:\psyq\projects\'.

[XASAMPLE.ZIP]

Your directory tree structure should now look like this 'C:\psyq\projects\xasample'.

Once you have done that, you will need to compile the XASAMPLE.C code into a PS-EXE. If you don't know how to do that, run a command prompt window in the working folder ('C:\psyq\projects\xasample'), and type 'psymake' to begin compiling. If you are still having trouble, check out this tutorial.

Upon successful compilation, you should now see 'XASAMPLE.EXE'.


The next stage is taking all of the pre-converted WAV's (all 8 of them), and incorporating them into a single XA file with sub-headers (interleaving). The pre-converted files may be found in the 'data\xa' directory.

It is important that you take a read of 'XA_SOUND.PDF', which may found under the data folder in the XASAMPLE working directory ('C:\psyq\projects\xasample\data\').

To proceed, start MC32.EXE from 'C:\psyq\bin' and click 'View' followed by 'Multi Channel'.


Add in all the *.XA files that have been pre-converted from the folder 'C:\psyq\projects\xasample\data\xa\', and ensure that the 'Sub Header' checkbox is checked.

Once done, click the 'Output' button and define the filename as 'FINAL.XA'.
Save 'FINAL.XA' in the folder 'C:\psyq\projects\xasample\data\xa\'.
Now you may click the 'Go' button as seen in the image above. Please be patient while the files are interleaved.


Next, navigate to the CDROM folder in your command prompt window and run 'BUILDCD -ixa.img xa.cti' (as seen in the image below).

You should see your command prompt window building your image (as seen in the image below). If you receive errors, edit the file 'xa.cti' and ensure your paths are correct within it. Please take notice that there are many commented out lines in the xa.cti file for you to see as other examples. They are commented out with a semi-colon ';'.


Now that your image has been built using the CTI file, you must convert it to a standard 9660 ISO (ECMA-119) binary image using STRIPISO with the appropriate system area resided for the PSX license file (the first 16 sectors which we will inject into using DiscPatcher).

To do this, simply use the command 'STRIPISO s 2352 xa.img xa.iso' and wait for the 'Done' return (as seen in the image below).


Now run 'DiscPatcher.exe' and patch the file 'XA.ISO' as a European license. If you wish to master your game for American or Japanese license regions, you should change the 'XA.CTI' file 'LICENSEE.DAT' to either 'LICENSEA.DAT' or 'LICENSEJ.DAT' respectively.

'LICENSEE.DAT' = Europe
'LICENSEA.DAT' = America
'LICENSEJ.DAT' = Japanese


You can now test your image in a PlayStation 1 emulator to see if all went well. If so, congratulations!


To burn your image correctly to a CD-ROM (CD-R) for use in a PlayStation 1 (with a modchip or by performing the swap trick), you must use Nero with the settings seen below

Your disc will now work in a PlayStation 1 without any errors. As a test, load the disc in an emulator and watch the debug console.

This method is the correct way on how to master a PSX CD-ROM, and should be done in this procedure for the best results.



Copyright © 2012-2023 PSXDEV.NET

~ No Cookies, No Tracking & No Ads. The Way the Internet Was Meant to Be ~

, "PlayStation", , , "DUALSHOCK", "Net Yaroze" and "PSone" are registered trademarks of Sony Computer Entertainment Inc. .
This page is for informational use only. The user of this software, assumes full responsbility ensuring its use in accordance with local and federal laws.
The software and hardware on this site is provided "as-is", without any express, implied warranty or guarantees.