A9VG电玩部落论坛

 找回密码
 注册
搜索
查看: 21047|回复: 74

[讨论] PS3即将迎来NTFS格式支持

[复制链接]
该用户已被禁言

精华
0
帖子
225
威望
0 点
积分
223 点
种子
5 点
注册时间
2009-1-31
最后登录
2021-6-28
 楼主| 发表于 2011-2-24 11:14  ·  北京 | 显示全部楼层 |阅读模式
本帖最后由 pigisma 于 2011-2-24 11:16 编辑

一位匿名黑客上传了 “Playstation文件系统资料库(PlayStation File System Libraries)”,这意味着开发者们可以是自己的自制程序支持NTFS格式。也许不久你就会看到支持NTFS的Rogero, multiMAN等。


Download: pfsm-0.1.0.rar (1.39 MB)


I’m out of town leaving me PS3-less, so I’m unable to test this… This being a library, PlayStation File System Libraries — libpfsm, that you can use when building your homebrew projects, i.e.) Gaia Manager. And the Gaia Manager source is included and comes pre-modified as an example adding NTFS (libpfsm) support. You just need to build it now and I’m sure someone’ll do that real soon.

What does PlayStation File System Libraries feature?

* Support for multiple simultaneously connected devices.
* Hot swapping of devices.
* Support for multiple partitions (with different FS).
* NTFS support
o Alternate data streams
o Sparse files
o File compression
o B+ trees directory
* FAT support
o FAT12, FAT16, FAT32
o Long file names (VFAT)

Writing to NTFS formatted volumes is not supported and not planned.

Check the README for everything else.
  1. ================================================== ==============================
  2. Playstation File System libraries README
  3. ================================================== ==============================

  4. == Introduction ==

  5. Playstation File System is a set of libraries designed primarily to support new
  6. filesystems. The main aim was to provide support for reading NTFS from Sony PS3
  7. GameOS. At this moment writing is not supported and is not currently planned.

  8. Supported features:
  9. * Support for multiple simultaneously connected devices.
  10. * Hot swapping of devices.
  11. * Support for multiple partitions (with different FS).
  12. * NTFS support
  13. - Alternate data streams
  14. - Sparse files
  15. - File compression
  16. - B+ trees directory
  17. * FAT support
  18. - FAT12, FAT16, FAT32
  19. - Long file names (VFAT)

  20. Limitations:
  21. * Userland Mass Storage device driver is tested on a small set of devices.
  22. * Concurrent access to files on one disc is not supported.
  23. * It supports only the ASCII subset of Unicode (UTF-16).
  24. * Read only access.

  25. Libraries:
  26. * libpmsd.a (Playstation Mass Storage Driver)
  27. - A simple userland driver for reading sectors from USB Mass Storage.
  28. * libpfs.a (Playstation File System)
  29. - File system drivers NTFS and FAT.
  30. * libpfsm.a (Playstation File System Manager)
  31. - Exported functions are in 'libpfsm.h'.
  32. - Responsible for hot swapping, managing partitions and mounting the FS.

  33. == Building ==

  34. If you want to use these libraries in your project, you must add to the
  35. Makefile the following lines:

  36. PPU_LIBS += libpmsd.a libpfs.a libpfsm.a
  37. PPU_LDLIBS += -lusbd_stub

  38. A source code must include the header file with FS Manager interface:

  39. #include "libpfsm.h"

  40. == Usage ==

  41. int32_t PfsmInit(int32_t max_volumes);
  42. void PfsmUninit(void);

  43. The FS Manager must first be initialized with 'PfsmInit'. Maximum possible
  44. connected devices/volumes is set by `max_volumes`. It is suitable to call the
  45. 'PfsmUninit' before you quit.

  46. int32_t PfsmDevAdd(uint16_t vid, uint16_t pid, PFSM_DEVICE *dev);
  47. int32_t PfsmDevDel(PFSM_DEVICE *dev);

  48. All supported devices must be registered with the function 'PfsmDevAdd'. The USB
  49. device is identified by Vendor ID (`vid`) a ProductID (`pid`). If the devices is
  50. no longer needed it can be unregistered with 'PfsmDevDel'.

  51. int32_t PfsmVolStat(int32_t vol_id);

  52. The application can monitor the newly added/removed devices using 'PfsmVolStat'.
  53. The parameter `vol_id` must be between 0 and `max_volumes`-1.

  54. PFS_HFILE PfsFileOpen(const char *path);
  55. PFS_HFIND PfsFileFindFirst(const char *path, PFS_FIND_DATA *find_data);
  56. ...

  57. Standard functions for access to the files is similar to the Win32 API. The file
  58. `path` is in the form of '/pvd_usbXXX/DIR/FILE' where XXX represents `vol_id`.

  59. == Sample: GaiaManager ==

  60. For reference implementations was used open source GaiaManager. This solution
  61. extends GaiaManager to connect one device with NTFS or FAT file system. When the
  62. connection is successful, this device is shown as a 'usb10'. Backups in 'BDRIPS'
  63. directory can then be copied in a standard way to internal disk.

  64. Attached sample file 'usbdevs.cfg' with tested devices must be placed in a folder
  65. on the PS3, where is installed GaiaManager ('/dev_hdd0/game/GAIA01985').

  66. If you want to use your own USB disk, you must add another line to 'usbdevs.cfg'.
  67. File 'usbdevs.cfg' lists the device's IDs separated by a newline in the following
  68. format:

  69. VID:PID
  70. VID:PID
  71. ...

  72. VID and PID are hexadecimal numbers that identify the USB device. Linux users can
  73. obtain this identification number using lsusb utility. Transcend StoreJet disk is
  74. displayed as:

  75. lsusb:
  76. Bus 002 Device 011: ID 152d:2329 JMicron Technology Corp. / JMicron USA Tech...

  77. Windows users can use one of these utilities:
  78. - http://www.ftdichip.com/Support/Utilities/usbview.zip
  79. - http://www.nirsoft.net/utils/usbdeview.zip
  80. - http://www.nirsoft.net/utils/usbdeview-x64.zip

  81. USBDeview:
  82. ...
  83. Description | StoreJet Transcend
  84. Device Type | Mass Storage
  85. ...
  86. VendorID | 152d (VID)
  87. ProductID | 2329 (PID)
  88. ...


  89. Compiling for CFW/MFW without dongle (not tested):

  90. make clean
  91. make

  92. Compiling for older OFW with a dongle (tested only 3.41):

  93. make -f Makefile.dongle clean
  94. make -f Makefile.dongle

  95. Precompiled package for FW 3.41 (with PSGroove) is included:
  96. UP0001-GAIA01985_00-7679866932773369.pkg

  97. == Compatible devices ==

  98. USB Mass Storage driver has been tested with the following devices:

  99. - 0x090c:0x1000
  100. Corsair Flash Voyager (2GB)
  101. - 0x0951:0x1602
  102. Kingston DataTravelerMini (1GB)
  103. - 0x13fe:0x1d00
  104. Kingston DataTraveler 2.0 1GB/4GB Flash Drive (1GB)
  105. - 0x152d:0x2329
  106. JMicron StoreJet Transcend (320GB)
  107. http://ec.transcendusa.com/product/I...ID=TS320GSJ25M

  108. == TODO ==

  109. Support for a wider range of USB Mass Storage devices.

  110. Support for other file systems. (e.g. Ext2/3)

  111. Support for concurrent access to files.

  112. Proper Unicode (UTF-16) support.
复制代码

精华
0
帖子
180
威望
0 点
积分
204 点
种子
0 点
注册时间
2009-1-5
最后登录
2012-6-8
发表于 2011-2-24 11:21  ·  广东 | 显示全部楼层
哇  太好了  这样就不用再切割和转移了~!!!

精华
0
帖子
446
威望
0 点
积分
467 点
种子
5 点
注册时间
2007-3-20
最后登录
2020-7-10
发表于 2011-2-24 11:38  ·  甘肃 | 显示全部楼层
这个真好,可以外挂看高清了。

精华
0
帖子
446
威望
0 点
积分
467 点
种子
5 点
注册时间
2007-3-20
最后登录
2020-7-10
发表于 2011-2-24 11:38  ·  甘肃 | 显示全部楼层
这个真好,可以外挂看高清了。

精华
0
帖子
4184
威望
0 点
积分
4270 点
种子
118 点
注册时间
2006-5-21
最后登录
2024-12-2
发表于 2011-2-24 11:40  ·  上海 | 显示全部楼层
这样就完美了,还差金手指~

精华
1
帖子
1316
威望
1 点
积分
1571 点
种子
23 点
注册时间
2004-7-3
最后登录
2024-12-3
发表于 2011-2-24 11:41  ·  新疆 | 显示全部楼层
免内置了。

精华
0
帖子
7
威望
0 点
积分
7 点
种子
0 点
注册时间
2011-1-11
最后登录
2012-8-5
发表于 2011-2-24 11:42  ·  山东 | 显示全部楼层
最近一个月的最大新闻

精华
0
帖子
1397
威望
0 点
积分
1201 点
种子
17 点
注册时间
2008-6-9
最后登录
2024-10-17
发表于 2011-2-24 11:51  ·  广东 | 显示全部楼层
可以果断换个大硬盘了。。。
该用户已被禁言

精华
0
帖子
12
威望
0 点
积分
20 点
种子
5 点
注册时间
2010-9-9
最后登录
2019-12-10
发表于 2011-2-24 11:58  ·  内蒙古 | 显示全部楼层
弄个2T的硬盘,看高清玩游戏者不误
该用户已被禁言

精华
0
帖子
441
威望
0 点
积分
460 点
种子
5 点
注册时间
2008-6-12
最后登录
2023-6-23
发表于 2011-2-24 12:11  ·  浙江 | 显示全部楼层
太牛了~那不是可以换更加大得硬盘了?黑客真是强大哟!!!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|A9VG电玩部落 川公网安备 51019002005286号

GMT+8, 2024-12-5 04:20 , Processed in 0.207313 second(s), 19 queries , Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

返回顶部