PlayStation 2: Difference between revisions

imported>Bignaux
mNo edit summary
Formuna (talk | contribs)
m Fixed some minor misspellings :33
 
(18 intermediate revisions by 6 users not shown)
Line 1: Line 1:
With 155 million sold, the PS2 was the best-selling gaming console ever. Home-brew development is still going on, and many games recover online gaming capability since developers are rewriting the game server. A list of PlayStation 2 Online Games is available [https://docs.google.com/spreadsheets/d/1bbxOGm4dPxZ4Vbzyu3XxBnZmuPx3Ue-cPqBeTxtnvkQ here].


= Emulation =  
= Emulation =  


This section explains how to run Playstation 2 games on NixOS.  A dedicated [[Games]] page lists games and reports on their successful execution on NixOS.
This section explains how to run Playstation 2 games on NixOS.   


== PCSX2 ==
== PCSX2 ==
   
   
You need a legal copy of your ps2 bios. There are many ways to do it, i just describe an easy but slowly one using uLaunchELF :
You need a legal copy of your ps2 bios. There are many ways to do it, so I will just describe an easy but slow one using uLaunchELF:
  1/ get latest ps2ident from https://www.ps2-home.com/forum/viewtopic.php?p=11926#p11926
  1/ get latest ps2ident from https://github.com/ps2homebrew/PS2Ident/releases/tag/stable
  2/ extract somewhere on an USB mass storage
  2/ extract somewhere on an USB mass storage
  3/ launch it from uLaunchELF (mass:) , then select USB as save device
  3/ launch it from uLaunchELF (mass:) , then select USB as save device
Line 22: Line 24:
== Building the open source PS2SDK on NixOS ==
== Building the open source PS2SDK on NixOS ==


You can use the following nix-shell script to build the open source PS2SDK through [https://github.com/ps2dev/ps2toolchain ps2toolchain].
You can use the following nix-shell script to build the open source PS2SDK through [https://github.com/ps2dev/ps2dev ps2dev].


<syntaxhighlight lang="nix">
<syntaxhighlight lang="nix">
Line 29: Line 31:
   name = "ps2dev";
   name = "ps2dev";
   targetPkgs = pkgs: (with pkgs; [
   targetPkgs = pkgs: (with pkgs; [
    autoconf
    automake
    libtool
     gnumake
     gnumake
     clang
     clang
Line 38: Line 43:
     texinfo
     texinfo
     bash
     bash
    file
    bison
    flex
    gettext
    gsl
    gnum4
    gmp.dev
    gmp.out
    mpfr.out
    mpfr.dev
    libmpc
    cmake
    zlib.dev
    zlib.out
   ]);
   ]);
   runScript = "bash";
   runScript = "bash";
Line 44: Line 63:
   name = "ps2dev-shell";
   name = "ps2dev-shell";
   nativeBuildInputs = [ fhs ];
   nativeBuildInputs = [ fhs ];
  hardeningDisable = [ "format" ];
   shellHook = ''
   shellHook = ''
     # or whatever you want
     # or whatever you want
Line 53: Line 73:
     export PS2SDK=$PS2DEV/ps2sdk
     export PS2SDK=$PS2DEV/ps2sdk
     export PATH=$PATH:$PS2DEV/bin:$PS2DEV/ee/bin:$PS2DEV/iop/bin:$PS2DEV/dvp/bin:$PS2SDK/bin
     export PATH=$PATH:$PS2DEV/bin:$PS2DEV/ee/bin:$PS2DEV/iop/bin:$PS2DEV/dvp/bin:$PS2SDK/bin
    export CMAKE_INSTALL_PREFIX=$PS2DEV
     exec ps2dev
     exec ps2dev
     '';
     '';
Line 67: Line 88:
</syntaxhighlight>
</syntaxhighlight>


= Retail =
= PlayStation 2 Expansion Bay =
 
Read more about it: https://en.wikipedia.org/wiki/PlayStation_2_Expansion_Bay
Only genuine Sony adapter offers network capability, you can upgrade them to sata thanks to a SATA mod kit from bitfunx or maxdiypower. On slim model, you can find kit too, but you will need to solder on the motherboard.


== HDD Partitioning ==
== HDD Partitioning ==


Playstation 2 use PFS filesystem. You could use pfsshell on PC. pfsshell's author advises you to not use it as root.
Playstation 2 use PFS filesystem and APA partitions see [https://master.dl.sourceforge.net/project/kernelloader/Sony%20Linux%20Toolkit/Package%20Update%20Files/apa/libhdd_ref.pdf?viasf=1 libHdd Reference Manual] for more information. You could use pfsshell on PC to create APA partition and format to PFS. pfsshell's author advises you to not use it as root.
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# chown myuser /dev/sdb
# chown myuser /dev/sdb
Line 104: Line 128:
0x0100  1024MB __common
0x0100  1024MB __common
</syntaxhighlight>
</syntaxhighlight>
=== install wLauncher ===
In order to be able to launch unofficial software, you can:
* launch a dvd with [https://cturt.github.io/freedvdboot.html FreeDVDBoot]
* have a modchip
* boot with a FMCB installed memory card
* boot on HDD with an elf launcher like wLauncher or [https://github.com/parrado/SoftDev2 SoftDev2]
Extract [https://web.archive.org/web/20221210004709/https://www.ps2-home.com/forum/download/file.php?id=15758&sid=f956d2accefb993288a6791c7c85a5c0 this archive] (wLE_kHn_20200810.7z md5:430af5615895736d96b4f7156e92b2b0 [https://www.ps2-home.com/forum/viewtopic.php?t=5128 dl source]) then call hdl_dump:
$ hdl_dump initialize /dev/sdb MBR.KELF


=== install FHDB (Free HDBoot) ===
=== install FHDB (Free HDBoot) ===


Alternatively you could simply use an image disc with dd ( as windows people use HDDGURU: HDD Raw Copy Tool) , for example FHDB image disc ( like https://www.ps2-home.com/forum/download/file.php?id=12450 ) , that way you can use homebrews too :
Get FMCB installer from official website: https://sites.google.com/view/ysai187/home/projects/fmcbfhdb


<syntaxhighlight lang="bash">
You should be able to launch it following the instruction there.
dd if=FHDB.img of=/dev/sdb status=progress
</syntaxhighlight>
 
FHDB is slower than FMCB but you can use it to install FMCB.  


=== Install games ===
=== Install games ===


Use hdl_dump (see hdl_dump help) :
Games doesn't use PFS but HDLoader partition so we can't rely on pfsshell to install them. Use hdl_dump (see hdl_dump help):


   $ hdl_dump install /dev/sdb Final\ Fantasy\ X\ \(France\).iso
   $ hdl_dump install /dev/sdb Final\ Fantasy\ X\ \(France\).iso
Line 125: Line 157:
=== Samba ===
=== Samba ===


works fine - example soon.
Works fine - example soon.


=== FTP transfer ===
=== FTP transfer ===
Line 131: Line 163:
A very slow solution ( ~ 500KB/s ).  
A very slow solution ( ~ 500KB/s ).  


* PC side (client) :
* PC side (client):


PS2 doesn't support TLS, use plain FTP. (tested with filezilla)
PS2 doesn't support TLS, use plain FTP. (tested with filezilla)
* PS2 side (server) :
* PS2 side (server):


Launch ps2net. You need to activate hdd  (exploring it in uLaunchELF for example) before ps2net to share it.
Launch ps2net. You need to activate hdd  (exploring it in uLaunchELF for example) before ps2net to share it.
[[Category:Gaming]]
[[Category:Applications]]
[[Category:Hardware]]