PS2 [MX4SIO/SIO2SD] SD Card Adapter and SD-driver for the PS2 SIO2 interface

  • uploading the Logo (maybe with a black or olive green [or whatever color the people "out there" like] background)?
  • if I create a tab solely for the Booklets and attach them there, so the people out there can translate it to their languages, if they want to?

The logo was created in KiCAD, there is no picture of it, but it's possible to create a svg file i think. I have chosen the position of the logo to be visible through the sticker position on transparent cases ;)

A translation in other languages would be nice, but the translation shouldn't begin until the documentation is "final".
 
  • Like
Reactions: TnA
I've created a very simple test app for sio2sd. It uses BDM and loads 3 block device drivers: usb, sio2sd and ieee1394. And 1 filesystem driver: vfat. It currently only does an "ls -l" on the first 2 fat32 partitions it finds, and you'll see some debug output from all drivers loaded. Insert the devices you want listed (at least a sio2sd card ofcourse) and start the app using ps2client/ps2link. You will see the result in ps2client.

The output of my usb and sio2sd is:
Code:
ps2client -h 192.168.1.10 execee host:test_bdm.elf
loadelf: fname host:test_bdm.elf secname all
Input ELF format filename = host:test_bdm.elf
0 00100000 0003aba8 ....
1 0019293c 00000004 .
Loaded, host:test_bdm.elf
start address 0x1000d8
gp address 00000000
BDM (Block Device Manager) test application
Loading iomanX and fileXio IOP modules
fileXio: fileXio RPC Server v1.00
Copyright (c) 2003 adresd
Loading BDM IOP modules
Block Device Manager (BDM) v1.1
BDM: connecting fs MBR
BDM: BDM event thread running
FreeUsbd v.0.1.2
USBMASS: USB MASS Driver v1.1
sdCard v1.1
 ERR: CMD 0  RSP 3F  -> CMD 0 doesn't receive response soon on some cards, so this error is normal, if there are no errors after this point. 
 done 2 passes 
 Detected SD ver.2+ card 
 SD ver.2+ Block address 
 Card successfully initialized. 
 CSD reg: 
 CSD ver 2 BDM: connecting device sdc0p0
Init done
BDM: connecting device sdc0p1
BDM: sdc0p0 mounted to MBR
BDM VFAT driver (FAT12/16/32) v1.1
BDM: connecting fs vfat
VFAT: Fat type 32 Id FAT32   
BDM: sdc0p1 mounted to vfat
USBMASS: connect: devId=1
USBMASS: Vendor: SanDisk
USBMASS: Product: Ultra
USBMASS: Revision: 1.00
USBMASS: 60063743 512-byte logical blocks: (30754MB / 29327MiB)
BDM: connecting device usb0p0
BDM: connecting device usb0p1
BDM: usb0p0 mounted to MBR
VFAT: Fat type 32 Id FAT32   
BDM: usb0p1 mounted to vfat
Wait 5s for drives
Listing files in mass0:
d------rwx Thu Aug 10 19:43:20 2017      0 ART
d------rwx Sun Jun 24 12:02:58 2018      0 .Trash-1000
-------rwx Sun Sep 10 11:10:46 2017 33554432 zero.bin
d------rwx Sat Sep  3 11:00:30 2016      0 CD
d------rwx Sun Jul 23 12:37:00 2017      0 CFG
d------rwx Sat Jul 22 13:06:36 2017      0 CFG-DEV
d------rwx Thu Jul 27 16:41:16 2017      0 CHT
d------rwx Sun Jun 24 12:55:20 2018      0 DVD
d------rwx Wed Aug  9 20:06:52 2017      0 THM
d------rwx Wed Jun 20 19:08:20 2018      0 VMC
-------rwx Thu Jun 28 17:38:36 2018 886805 OPNPS2LD.ELF
-------rwx Mon Jun 25 17:26:54 2018 1082357 OPNPS2LD-0.9.3+.1083-Beta-9ce6dea.ELF
d------rwx Sat Apr 25 04:24:44 2020      0 APPS
d------rwx Sat Apr 25 04:24:44 2020      0 LNG
Listing files in mass1:
d------rwx Sat Aug 31 09:46:16 2019      0 PS2LINK
d------rwx Thu Oct 10 20:58:32 2019      0 OTHER
d------rwx Sat Aug 31 17:52:30 2019      0 THM
d------rwx Sat Aug 31 17:52:30 2019      0 CFG-DEV
d------rwx Sat Aug 31 05:58:20 2019      0 .Trash-1000
d------rwx Sat Aug 31 17:52:30 2019      0 LNG
d------rwx Sun Oct 27 21:56:58 2019      0 ART
d------rwx Sat Aug 31 17:52:30 2019      0 VMC
d------rwx Sat Aug 31 17:52:30 2019      0 CHT
d------rwx Sat Aug 31 17:52:30 2019      0 APPS
d------rwx Sat Aug 31 17:52:30 2019      0 CD
d------rwx Tue Sep 10 20:20:58 2019      0 DVD
-------rwx Tue Dec 24 22:32:00 1996 262160 Mega Man 2 (USA).nes
-------rwx Tue Dec 24 22:32:00 1996 262160 Super Mario Bros. 2 (USA).nes
-------rwx Sun Oct 27 21:35:08 2019     82 hello.txt
-------rwx Thu Feb  6 05:50:10 2020    622 conf_opl.cfg
-------rwx Thu Feb  6 05:50:10 2020    252 conf_network.cfg
d------rwx Thu Jan  9 16:05:52 2020      0 [190413]FMCB-1966-bin
d------rwx Sun Jan 12 06:01:54 2020      0 RETROARCH
-------rwx Wed Feb 26 05:34:08 2020  10977 prboom.cfg
-------rwx Thu Feb 20 19:57:32 2020 143312 prboom.wad
-------rwx Thu Feb 20 20:18:08 2020 4196020 Doom1.wad
Done. Exit in 5s
tty mounted
host: mounted
IOP cmd thread started
Naplink thread started
read/write allocate memory 4000
EE: Cmd thread

Currently that's it. It's not much, but it will give you the ability to test if your self-made adapter works or not. Please report success or failure here.

ps2sdk driver sources (mostly by @wisi):
https://gitlab.com/ps2max/ps2sdk/-/tree/master-ps2max/iop/memorycard/sio2sd_bd

test app source:
https://gitlab.com/ps2max/testing/test_bdm

.elf download:
https://gitlab.com/ps2max/testing/test_bdm/-/jobs/543221027/artifacts/browse
 
the objective of this project is to run iso games on the SD card inside the memory card?
That is one of the things it could be used for, yes. But in general it's a faster alternative for a USB drive.
With a USB drive being aroung 1.2MB/s, and the SD around 2MB/s.
 
  • Like
Reactions: TnA
That is a part of the project!
General access to the SD via wLE and hopefully other apps, is important as well!

Edit: Oooops... I didn't refresh the page.

Edit 2: @Maximus32 I added a link to your reply with the notice "Test-App" + a small notice what it does in the "Software"-Tab!

THX! Now those who make their own adapters, can test if it works!
 
Last edited:
Just poking my head in to see what's unfolded since last time...

Woah, you guys have the start of a design and production crew here. All looking very professional and on point.

Just to let ya'll know I'm here to test anything... Once my damn resistors turn up :/
 
  • Like
Reactions: TnA
I can see this gaining quite a bit of popularity due to the slims not so compatible USB HDD.
Of course the phaty boys are the way to go. But there must be way more slims out in the wild compared to phats now.
 
or not using FAT filesystem on it at all, which is usually a bad idea AFAIK (due to wear-leveling, etc.).

FAT32 is cancer ;p There is designed much faster F2FS but also exFAT would be better (which last time was freed from licensing by MS and i.e is slowly reimplementing on kernel level of Linux). Also @tps using it experimentally in his file manager for PS3 (which is also PPC as Decard if this is anyhow related).
 
I think BDM makes it likely to easier port support for another FS...

One thing regarding BDM: I wish a similar approach would be taken for the in-game-cores (especially how static types of them are pre-built during compilation and not "matched together" [what is needed at the moment of starting from one or another device or FS]) of various device-types!

The OPL.ELF would be smaller as well and we would not need another in-game-driver per supported filesystem + adding more support (FS, device, etc.) would not increase the size of the ELF as much!

Anyway... That's all a bit off topic! ;)
 
I've created a very simple test app for sio2sd. It uses BDM and loads 3 block device drivers: usb, sio2sd and ieee1394. And 1 filesystem driver: vfat. It currently only does an "ls -l" on the first 2 fat32 partitions it finds, and you'll see some debug output from all drivers loaded. Insert the devices you want listed (at least a sio2sd card ofcourse) and start the app using ps2client/ps2link. You will see the result in ps2client.

I tried to use ps2link and ps2client, but it doesn't work. Where can I get a compiled version of ps2link and ps2client? I have ps2link 1.24, but when I start it I get the message "could not load module mc0:/BOOT/IOMANX.IRX" and when I ping the PS2, I get no response. ps2link 1.46 shows a black screen, that's all.
At the PC side I have "ps2client for uLE rev8" and "PS2ClientLoader 1.31". When I try to start the test_bdm.elf, It does nothing. It's because of the PS2 side I think.
Can you give me an advice?
 
You can probably use RadShell. It is the only PS2 app which works in CLI but with printing support, so You will probably be able to see the same output what ps2link.
 
Thanks a lot. I tried RadShell 0.6, but when I ping the PS2, I still get no response.

I found some IRX files (IOMANX.IRX, PS2DEV9.IRX, PS2IP.IRX, POWEROFF.IRX, PS2SMAP.IRX) and now I get an answer when I'm pinging the PS2 (using ps2link 1.24). But PS2LINK.IRX and IOPTRAP.IRX are still missing and i couldn't find it.
Then I found another download of ps2link 1.46 and with this version I get the "console" but as before with ping I get no answer. Since I get an answer with ps2link 1.24 the hardware connection should be okay.

Edit: I found the PS2LINK.IRX and now "it works". With the command "ps2client.exe execee test_bdm.elf" I get the message:
"Executing file test_bdm.elf...
Could not execute file test_bdm.elf"
-> The transmission of the elf file works, but the elf file doesn't work. Is it because of the elf file, the old version of ps2link or the wrong command?

When I'm using XLink instead of ps2client the ps2 started the elf file, but I get no output on XLink.
 
Last edited:
  • Like
Reactions: TnA
ps2client -h 192.168.1.10 execee host:test_bdm.elf

With the command "ps2client.exe execee test_bdm.elf" I get the message:
"Executing file test_bdm.elf...
Could not execute file test_bdm.elf"
-> The transmission of the elf file works, but the elf file doesn't work. Is it because of the elf file, the old version of ps2link or the wrong command?
The devil is in the details:
ps2client -h 192.168.1.10 execee host:test_bdm.elf

Transmission of the file did not work. You've only given the ps2 the command to "execee test_bdm.elf". When the ps2 tries to load that file, it fails, becouse it does not know from what driver to load the file. Is this case, the "host" driver, that can read files on your pc using the ps2client<->ps2link connection.
 

Similar threads

Back
Top