Advertisement
Guest User

PS3 STEP 5 can we see ?

a guest
Sep 30th, 2012
581
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.12 KB | None | 0 0
  1. Step 5 Can we see ? :
  2.  
  3. Like the number of the movie 10000, Sony employees were laid off in April (it was not a April fool infornutely).
  4.  
  5. With all what happens, you false Dev and Sony still playing around with this.
  6.  
  7.  
  8. Ok guys, let's play with the debugger mode of the PS3
  9.  
  10. Launch TM or Debugger
  11. Reset the LV1-LV2 to Debugging Station (not software)
  12.  
  13. And that you can do under Debugging Station (you can make a core dump and also load the core dump you made)
  14.  
  15. ----->
  16.  Running your game
  17.  Loading object modules
  18.  Loading a core dump file
  19.  PRX debugging
  20.  MSELF Support
  21.  
  22. CFW 4.21/CFW 4.25 is a hybrid firmware (3.55 + 4.xx files dex) that load the necessary module to launch every game you need
  23. It's kinda a hot swapping files, we load the module we need to launch the game, remember the similar situation on PSP ? that we need to load new module to launch higher games ? let's say that is a similar method.
  24.  
  25.  
  26. You can also read this that help you a lot to understand the point of using TM/Debugger on PS3 DEX (you don't need to be on a 4.21 DEX, a 3.55 DEX Prodg can also work and you should have more accessibility)
  27.  
  28. About the Kernel Linux Part point before it was a reference to a story happen between some Sony dev who worked together on the OtherOS/GameOS PS3. It's just a message to the DEV we all know.
  29.  
  30. This part is available on the LV2 Manual a example to execute a MSELF/PRX File
  31.  
  32. 13. 2 Open and Close an MSELF File
  33.  
  34. MSELF files are opened by cellFsOpen() with the CELL_FS_O_MSELF option.
  35.  
  36. #include <sys/types.h>
  37.  
  38. #include <sys/paths.h>
  39. #include <sys/fs_external.h>
  40. #include <sys/process.h> /* SYS_PROCESS_PARAM */
  41.  
  42. #include <cell/fs/cell_fs_file_api.h>
  43. #include <cell/sysmodule.h>
  44.  
  45. SYS_PROCESS_PARAM(1001, 0x10000);
  46. #define MSELF_FILENAME "scene_data.ppu.mself"
  47.  
  48. int main(int argc, char *argv[])
  49. {
  50. int fd, retval;
  51. ...
  52. /* Load CELL_SYSMODULE_FS PRX */
  53. retval = cellSysmoduleLoadModule(CELL_SYSMODULE_FS);
  54. ...
  55.  
  56. /* Open the MSELF file */
  57. retval = cellFsOpen(SYS_APP_HOME "/" MSELF_FILENAME,
  58. CELL_FS_O_MSELF,
  59. &fd, NULL, 0);
  60. ...
  61.  
  62. The above example opens the MSELF file, "/app_home/scene_data.ppu.mself." Note that PRX or SPU program files cannot be loaded from an MSELF file that has not been opened with the CELL_FS_O_MSELF option.
  63.  
  64. The access permission of a file which is opened with CELL_FS_O_MSELF is regarded as CELL_FS_O_RDONLY, and operations such as cellFsRead() and cellFsLseek() can be performed on that opened file. The file is closed by cellFsClose().
  65.  
  66. 13. 3 Load and Unload the PRX
  67. The PRX stored in an MSELF file is opened by sys_prx_load_module_by_fd().
  68.  
  69. #include <sys/types.h>
  70.  
  71. #include <sys/paths.h>
  72. #include <sys/process.h> /* SYS_PROCESS_PARAM */
  73. #include <sys/prx.h>
  74. #include <sys/fs_external.h>
  75.  
  76. #include <cell/fs/cell_fs_file_api.h>
  77. #include <cell/sysmodule.h>
  78.  
  79. SYS_PROCESS_PARAM(1001, 0x10000);
  80.  
  81. #define MSELF_FILENAME "scene_data.ppu.mself"
  82. #define SPRX_OFFSET 65536 /* Offset from the head of the MSELF file */
  83.  
  84. int main(int argc, char *argv[])
  85. {
  86. sys_prx_id_t id;
  87. int fd, retval;
  88. ...
  89. /* Open the MSELF file */
  90. retval = cellFsOpen(SYS_APP_HOME "/" MSELF_FILENAME,
  91. CELL_FS_O_MSELF,
  92. &fd, NULL, 0);
  93. ...
  94. /* Load the PRX */
  95. id = sys_prx_load_module_by_fd(fd, SPRX_OFFSET, 0, NULL);
  96. ...
  97.  
  98. The above example loads the PRX stored in the position that is SPRX_OFFSET bytes from the head of the "/app_home/scene_data.ppu.mself" MSELF file, onto memory. On success of sys_prx_load_module_by_fd(), it returns the ID of the PRX. It fails with ENOTMSELF if the MSELF file that stores the PRX is not opened with the CELL_FS_O_MSELF option. PRX is unloaded by sys_prx_unload_module().
  99. 13. 4 Open and Close an SPU Program File
  100. SPU program files stored in MSELF files are opened by sys_spu_image_open_by_fd().
  101.  
  102. #include <sys/types.h>
  103.  
  104. #include <sys/paths.h>
  105. #include <sys/process.h> /* SYS_PROCESS_PARAM */
  106. #include <sys/spu_image.h>
  107. #include <sys/fs_external.h>
  108.  
  109. #include <cell/fs/cell_fs_file_api.h>
  110. #include <cell/sysmodule.h>
  111.  
  112. SYS_PROCESS_PARAM(1001, 0x10000);
  113.  
  114. #define MSELF_FILENAME "scene_data.ppu.mself"
  115.  
  116. /* Offset from the head of the MSELF file */
  117. #define SPU_IMAGE_OFFSET 524228
  118.  
  119. int main(int argc, char *argv[])
  120. {
  121. sys_spu_image_t img;
  122. int fd, retval;
  123. ...
  124. /* Open the MSELF file */
  125. retval = cellFsOpen(SYS_APP_HOME "/" MSELF_FILENAME,
  126. CELL_FS_O_MSELF,
  127. &fd, NULL, 0);
  128. ...
  129. /* Open the SPU program file */
  130. retval = sys_spu_image_open_by_fd(&img, fd, SPU_IMAGE_OFFSET);
  131. ...
  132.  
  133. The above example loads an SPU program file stored in the position that is SPU_IMAGE_OFFSET bytes from the head of the "/app_home/scene_data.ppu.mself" MSELF file, onto memory. On success, the management information of the SPU program file is stored in the area pointed to by img. It fails with ENOTMSELF if the MSELF file that stores the SPU program file is not opened with the CELL_FS_O_MSELF option. The SPU program file is closed by sys_spu_image_close().
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement