Results 1 to 3 of 3

Thread: PS ISO Tool v1.00 By CaptainCPS-X, Supports PS1 / PS2 / PS3 / PSP

  1. #1
    Join Date
    Apr 2005
    Posts
    23,636

    PS ISO Tool v1.00 By CaptainCPS-X, Supports PS1 / PS2 / PS3 / PSP

    Following up on his previous work, today PlayStation 3 developer CaptainCPS-X has released PS ISO Tool v1.00 which supports PS1 / PS2 / PS3 / PSP followed by v1.01, v1.02a and v1.03 with details below.

    Download: psiso_tool_v1.00_[bin_and_src]_[win_x86]_[by_CaptainCPS-X].rar / psiso_tool_v1.01_[bin_and_src]_[win_x86]_[by_CaptainCPS-X].rar / psiso_tool_v1.01_[bin_and_src]_[win_x86]_[by_CaptainCPS-X].rar (Mirror) / psiso_tool_v1.01_[bin_and_src]_[win_x86]_[by_CaptainCPS-X].rar (Mirror #2) / psiso_tool_v1.02a_[bin]_[windows]_[by_CaptainCPS-X]_[inc_aldostools_GUI].rar / psiso_tool_v1.02a_[bin]_[windows]_[by_CaptainCPS-X]_[inc_aldostools_GUI].rar (Mirror) / psiso_tool_v1.02a_[bin]_[windows]_[by_CaptainCPS-X]_[inc_aldostools_GUI].rar (Mirror #2) / psiso_tool_v1.03_[bin_and_src]_[by_CaptainCPS-X].rar / psiso_tool_v1.03_[bin_and_src]_[by_CaptainCPS-X].rar (Mirror) / psiso_tool_v1.03_[bin_and_src]_[by_CaptainCPS-X].rar (Mirror #2) / psiso_tool_v1.03.1_alpha_(linux_support).tar.gz / GIT / PS3ISOBuilder_test.rar by aldostools

    To quote: UPDATE: PS ISO Tool v1.01 released (fixed a crucial typo) (please use this one)

    Changelog: v1.03 (November 11, 2013)
    • GitHub created for project (github.com/CaptainCPS/PS_ISO_Tool)
    • [source] Initial portability changes done and made Makefiles for both MSys/MinGW and MS Visual C++.
    • [source] Sorted out compilations warnings and fixed possible memory leaks.

    NOTE: This release still don't have support or checking for split files on directories when creating ISOs. Support for Split files will eventually come on future versions.

    Changelog: v1.02 (November 11, 2013)
    • Added feature to create ISOs using ImgBurn and patch them to comply with the PlayStation 3 disc header format.
    • Did a couple of cosmetic changes.

    Changelog: v1.01 (November 9, 2013)
    • Fixed typo, now all references to "vervose" are correctly named "verbose".
    • Removed accidental duplicate macro definition on "psiso_tool.h".

    Readme:
    Code:
    ================================================================================
     PS ISO Tool (Supports PS1 / PS2 / PS3 / PSP disc images) (CaptainCPS-X, 2013)
    ================================================================================
    
     This tool will parse any of the supported PlayStation ISO / BIN. The module will 
     also check for valid (ISO9660 / MODE1 / 2048) or (MODE2 / 2352).
    
     When used as library for an application this can:
    
     - [PS1 / PS2] Get game Title ID from SYSTEM.CNF and obtain Title from a text database.
     - [PS3 / PSP] Get game Title and ID from the PARAM.SFO inside the ISO (no need for text database).
     - Titles gets automatically converted from UTF-8 to ASCII.
     - Provide a function to patch PS3 ISOs created with different applications than 
       GenPS3iso (Ex. ImgBurn, PowerISO).
    
     When used as application:
    
     - Users can quickly patch any specified PS3 ISO created with different application than 
       GenPS3iso (Ex. ImgBurn, PowerISO).
    
     Note: Patching will make the ISO valid for the PS3 system, if you try to mount 
     it without patching, the system will not detect it.
    
     Usage:  
    	
    	ps_isotool [opt] [in]
    
     Example 1 - Patching a PS3 game ISO:
    
    	ps_isotool --ps3 --verbose --patch "C:\PS3ISO\MyPS3ISO.iso"
    
     Example 2 - Displaying info from ISOs:
    
    	ps_isotool --ps1 --verbose "C:\PSXISO\MyPS1ISO.bin"
    	ps_isotool --ps2 --verbose "C:\PS2ISO\MyPS2ISO.iso"
    	ps_isotool --ps3 --verbose "C:\PS3ISO\MyPS3ISO.iso"
    	ps_isotool --psp --verbose "C:\PSPISO\MyPSPISO.iso"
    
    Note: If you don't specify --verbose then only the Title ID and Title will be displayed.
    Changelog: v1.01 (November 9, 2013)
    • Fixed typo, now all references to "vervose" are correctly named "verbose".
    • Removed accidental duplicate macro definition on "psiso_tool.h".

    v1.00 (November 9, 2013)
    • Initial Release.

    Example Windows Batch:

    EDIT: Removed "@" from script, because vBulletin messes it up
    Code:
    echo off
    
    set PSISO_TOOL_LOG=psiso_tool_log.txt
    
    call psiso_tool --ps1 --v "I:\PSXISO\FINALFANTASY7_CD3.BIN" > ps1_%PSISO_TOOL_LOG% && type ps1_%PSISO_TOOL_LOG%
    echo .
    call psiso_tool --ps2 --v "I:\PS2ISO\Capcom vs. SNK 2 - Mark of the Millennium 2001 (USA).iso" > ps2_%PSISO_TOOL_LOG% && type ps2_%PSISO_TOOL_LOG%
    echo .
    call psiso_tool --ps3 --v --patch "I:\PS3ISO\BCUS98174-[The Last of Us].iso" > ps3_%PSISO_TOOL_LOG% && type ps3_%PSISO_TOOL_LOG%
    echo .
    call psiso_tool --psp --v "I:\PSPISO\b-ff4u.iso" > psp_%PSISO_TOOL_LOG% && type psp_%PSISO_TOOL_LOG%
    echo .
    
    pause
    
    Example Batch Output:
    
    ps1_psiso_tool_log.txt
    Code:
    =========================================================================
    PS ISO Tool v1.00 (supports PS1/PS2/PS3/PSP) (CaptainCPS-X, 2013) 
    =========================================================================
    ISO file: I:\PSXISO\FINALFANTASY7_CD3.BIN 
    Supported PS1 ISO (ISO9660/MODE2/FORM1/2352) 
    Volume Size: (0x0004476A sectors) (574312448 bytes)
    Root Directory Record Offset: 0x0000CA20 
    SYSTEM.CNF file record found at pos: 0x4C5 
    SYSTEM.CNF Extent (data) Offset: 0x0000D350 
    SYSTEM.CNF Data Length: 0x00000044 
    Getting title for: SCUS-94165
    -------------------------------------------------------------------------
    TITLE ID: ( SCUS_941.65 ) 
    TITLE: ( Final Fantasy VII [Disc3of3] ) 
    -------------------------------------------------------------------------
    
    ps2_psiso_tool_log.txt
    Code:
    =========================================================================
    PS ISO Tool v1.00 (supports PS1/PS2/PS3/PSP) (CaptainCPS-X, 2013) 
    =========================================================================
    ISO file: I:\PS2ISO\Capcom vs. SNK 2 - Mark of the Millennium 2001 (USA).iso 
    Supported PS2 ISO (ISO9660/MODE1/2048) 
    Volume Size: (0x0001AB80 sectors) (224133120 bytes)
    Root Directory Record Offset: 0x00082800 
    SYSTEM.CNF file record found at pos: 0x125 
    SYSTEM.CNF Extent (data) Offset: 0x0053D000 
    SYSTEM.CNF Data Length: 0x00000038 
    Getting title for: SLUS20246
    -------------------------------------------------------------------------
    TITLE ID: ( SLUS_202.46 ) 
    TITLE: ( Capcom vs. SNK 2 - Mark of the Millennium 2001 ) 
    -------------------------------------------------------------------------
    
    psp_psiso_tool_log.txt
    Code:
    =========================================================================
    PS ISO Tool v1.00 (supports PS1/PS2/PS3/PSP) (CaptainCPS-X, 2013) 
    =========================================================================
    ISO file: I:\PSPISO\b-ff4u.iso 
    Supported PSP ISO (ISO9660/MODE1/2048) 
    Volume Size: (0x00068FF0 sectors) (880771072 bytes)
    Root Directory Record Offset: 0x0000B000 
    PSP_GAME file record found at pos: 0x081 
    PSP_GAME Extent (data) Offset: 0x0000B800 
    PARAM.SFO file record found at pos: 0x127 
    PARAM.SFO Extent (data) Offset: 0x06F48000 
    PARAM.SFO Data Length: 0x00000230 
    -------------------------------------------------------------------------
    Preparing to process PARAM.SFO 
    -------------------------------------------------------------------------
    SFO Type: 0x00 
    SFO Identifier: PSF 
    SFO Variable Name Table Offset: 0x000000E4 
    SFO Data Table Offset: 0x00000168 
    SFO Total Variables: 13 
    -------------------------------------------------------------------------
    SFO Variable Table Entries: 
    -------------------------------------------------------------------------
     >> APP_VER: 01.00 
     >> BOOTABLE: 0x0001 
     >> CATEGORY: UG 
     >> DISC_ID: ULUS10560 
     >> DISC_NUMBER: 0x0001 
     >> DISC_TOTAL: 0x0001 
     >> DISC_VERSION: 1.00 
     >> HRKGMP_VER: 0x0013 
     >> PARENTAL_LEVEL: 0x0004 
     >> PSP_SYSTEM_VER: 6.37 
     >> REGION: 0x8000 
     >> TITLE: FINAL FANTASY IV: The Complete Collection 
     >> USE_USB: 0x0000 
    -------------------------------------------------------------------------
    Searching variable data for [ DISC_ID ] 
    Found variable data for [ DISC_ID ]... [ ULUS10560 ]
    Searching variable data for [ TITLE ] 
    Found variable data for [ TITLE ]... [ FINAL FANTASY IV: The Complete Collection ]
    -------------------------------------------------------------------------
    TITLE ID: ( ULUS10560 ) 
    TITLE: ( FINAL FANTASY IV: The Complete Collection ) 
    -------------------------------------------------------------------------
    
    ps3_psiso_tool_log.txt
    Code:
    =========================================================================
    PS ISO Tool v1.00 (supports PS1/PS2/PS3/PSP) (CaptainCPS-X, 2013) 
    =========================================================================
    ISO file: I:\PS3ISO\BCUS98174-[The Last of Us].iso 
    Supported PS3 ISO (ISO9660/MODE1/2048) 
    Volume Size: (0x00F18669 sectors) (32416942080 bytes)
    Root Directory Record Offset: 0x0000B800 
    PS3_GAME file record found at pos: 0x095 
    PS3_GAME Extent (data) Offset: 0x0000C000 
    PARAM.SFO file record found at pos: 0x0B9 
    PARAM.SFO Extent (data) Offset: 0x00029000 
    PARAM.SFO Data Length: 0x00000444 
    -------------------------------------------------------------------------
    Preparing to process PARAM.SFO 
    -------------------------------------------------------------------------
    SFO Type: 0x00 
    SFO Identifier: PSF 
    SFO Variable Name Table Offset: 0x000000E4 
    SFO Data Table Offset: 0x00000174 
    SFO Total Variables: 13 
    -------------------------------------------------------------------------
    SFO Variable Table Entries: 
    -------------------------------------------------------------------------
     >> APP_VER: 01.00 
     >> ATTRIBUTE: 0x200A5 
     >> BOOTABLE: 0x0001 
     >> CATEGORY: DG 
     >> LICENSE: Library programs ©Sony Computer Entertainment Inc. Licensed for play on the PLAYSTATION®3 Computer Entertainment System or authorized PLAYSTATION®3 format systems. For full terms and conditions see the user's manual. This product is authorized and produced under license from Sony Computer Entertainment Inc. Use is subject to the copyright laws and the terms and conditions of the user's license. 
     >> NP_COMMUNICATION_ID: NPWR03073_00 
     >> PARENTAL_LEVEL: 0x0009 
     >> PS3_SYSTEM_VER: 04.4100 
     >> RESOLUTION: 0x003F 
     >> SOUND_FORMAT: 0x0317 
     >> TITLE: The Last of Us™ 
     >> TITLE_ID: BCUS98174 
     >> VERSION: 01.00 
    -------------------------------------------------------------------------
    Searching variable data for [ TITLE_ID ] 
    Found variable data for [ TITLE_ID ]... [ BCUS98174 ]
    Searching variable data for [ TITLE ] 
    Found variable data for [ TITLE ]... [ The Last of Us™ ]
    -------------------------------------------------------------------------
    Preparing to patch PS3 ISO (BCUS98174)... 
    PS3 ISO has proper disc header. No patching will be done. 
    -------------------------------------------------------------------------
    TITLE ID: ( BCUS98174 ) 
    TITLE: ( The Last of Us  ) 
    -------------------------------------------------------------------------
    To sandungas , zecoxao , aldostools , Ada Love Lace: check the source out I did a couple of modules from scratch that you might like (psiso_tool.h has info)

    PS: This already have been implemented into Simple NTFS ISO Mounter and tested, I wrote all the code to be portable and usable on both windows / ps3 / etc. More nice stuff will be implemented to these tools in the future. SeeYa!

    Finally, below is a PSX GAME PKGs For 4.50 CFW Tutorial by lionsfan420 as follows:

    This is just a tutorial to customize and make a PSX.Pkg to install on XMB in CFW 4.50. No need to stay on 4.41 CFW. And no need to mount through MultiMan. Thought I would write this tutorial because no one else has.

    Tested on Habib 4.50 v1.03 on Release day 60gb PS3. Notes: Ingame screenshots do work.

    Requirements

    1: Multiman 4.50
    2: LastGame (Latest Version)
    3: Aldostools LastGame Customizer
    4: RetroXMB
    5: PSX Game

    Instructions

    1: Make sure to have all the above installed and working.
    2: Its easier to make a empty folder on desktop to work. Place your Game in this folder.
    3: Open RetroXMB and select PlayStation 1 tab on the top and then browse for your PSX iso,bin,img.
    4: Under XMB Content Information Files, You may customize to your liking.
    5: After customizing, hit build Package button on the bottom. Save it int the desktop work folder.
    6: You can now exit RetroXMB.
    7: In the work folder where you saved the Pkg you just made, go ahead and extract it by right click (extract to current path). Let that extract.
    8: Next, open LastGame Customizer, Exit out of the first screen that pops up requesting a EBOOT.BIN.
    9: Under "Item Type" select "13=PSXISO"
    10: Under "Launch from Device" select "/dev_hdd0".
    11: Under "Title ID" copy in the ID from the extracted pkg that you just extracted. (PS1xxxxxx).
    12: Under "Title Description" Type in the name of the Game.
    13: next Under "Mount PSX ISO From", customize this according to the file structure in the recently extracted Pkg. (/dev_hdd0/game/PS1xxxxxx/USRDIR/NAME OF YOUR GAME.iso). (MAKE SURE THE ISO FROM THE /ps1_iso/ FOLDER, IS IN THE /USRDIR/ FOLDER.) Delete the /ps1_iso/ Folder.
    Dont forget this will be installing in /dev_hdd0/game/ folder,
    14: Under "Path for ICON0.png", use this format "/dev_hdd0/game/PS1xxxxxx/ICON0.PNG".
    15: Under "Path for PIC1.PNG", use the same format "/dev_hdd0/game/PS1xxxxxx/PIC1.PNG".
    16: now hit the make button, In the window that pops up, grab the Pkg you just made and drag it to the Desktop work folder.
    17: You can now exit Lastgame Customizer.
    18: In the desktop work folder, Go ahead and right extract the Pkg with the "-XMB[hdd0].Pkg" extension.
    19: now pull the 2 Pkg's in the desktop work folder onto the desktop and leave them there. Now you should be left with the 2 extracted Pkg's now.
    20: Open up the "-XMB[hdd0]" folder, delete the text file you see. then open up the folder you see (PS1xxxxxx).
    21: Delete the ICON0.PNG file. This folder is done.
    22: Back to the Desktop work folder, open the other folder now. delete the text file you see. (MAKE SURE TO CUT THE ISO FROM THE /ps1_iso/ FOLDER, AND PASTE IT IN THE /USRDIR/ FOLDER.)
    23: then copy the folder you see (PS1xxxxxx) into the "- XMB [hdd0]" folder overwriting that folder. Make sure to overwrite evrything.
    24: Next, right click on the "- XMB [hdd0]" folder and click "Make Pkg".
    25: Now you should see the Pkg you just made, Copy to usb stick or FTP over and install normally through XMB.
    26: Hooray, PSX games on XMB in 4.50 CFW!!!

    ENJOY!!! Thanx To all the Devs for your hard work.

    PSISO Tool v1.03.1 Alpha (Linux Support) by NoisilySilent

    Probably the dirtiest code I ever wrote... Meh...

    Anyways, here's basic support for linux ^^ ImgBurn is no longer used. mkisofs does the job

    mkisofs (or a link to it) needs locating in /opt/schily/bin/ (the place it settles if you build it from source)

    Built and tested OK on Raspberry. This is a VERY ROUGH DROUGHT of what it should be. Please, don't report my coding style is ugly, i know it is... I've been very lazy on this one, this code is dirty and hard to maintain... sorry. I'll try cleaning it up if i have time, which i doubt.

    Hope it'll help. Cheers.

    Finally, from aldostools: I love ISOs as you do... as I have been lately experimenting with the ISOs, I made this very quick prototype: aldostools.org/temp/PS3ISOBuilder_test.rar

    It's still an experiment and I don't know if I will ever finish it... it probably is full of bugs (I didn't test it much). It writes large ISO files (no split support yet), read/write large files (writes in chunks of 4MB), read SFO/ICON0, writes proper header, graphical progress and more. The best is that it is only 113KB.

    PS. I think the 2 in // unknown (always 0x02) in your code could be the number of Sectors containing the information. Also in the Sector 1, could you verify the number of Sectors at offset 0x14? In your code is vol_size is obtained from the volume descriptor at 0x8054 and written at 0x14, but in genPS3ISO the value at 0x14 is vol_size - 1. Could it be a bug in genPS3ISO? Or is that wrong in your code?

    [imglink=http://www.ps4news.com/images/ps-iso-tool-v1-00-by-captaincps-x-supports-ps1-ps2-ps3-psp-37186-1.jpg|PS ISO Tool v1.00 By CaptainCPS-X, Supports PS1 / PS2 / PS3 / PSP]http://www.ps4news.com/images.php?sm=1&f=ps-iso-tool-v1-00-by-captaincps-x-supports-ps1-ps2-ps3-psp-37186-1.jpg&w=500&h=400[/imglink]
    [imglink=http://www.ps4news.com/images/ps-iso-tool-v1-00-by-captaincps-x-supports-ps1-ps2-ps3-psp-37186-2.jpg|PS ISO Tool v1.00 By CaptainCPS-X, Supports PS1 / PS2 / PS3 / PSP]http://www.ps4news.com/images.php?sm=1&f=ps-iso-tool-v1-00-by-captaincps-x-supports-ps1-ps2-ps3-psp-37186-2.jpg&w=500&h=400[/imglink]
    More PlayStation 3 News...

  2. #2
    XxZer0ModZxX Guest
    Thx for the tool

    cheers!

  3. #3
    crawf Guest
    thanks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •