A9VG电玩部落论坛

 找回密码
 注册
搜索
查看: 8727|回复: 24

[教程]修改 IOPRP 文件的过程

[复制链接]

精华
2
帖子
15689
威望
16 点
积分
16857 点
种子
7 点
注册时间
2008-4-5
最后登录
2024-8-1
 楼主| 发表于 2008-12-19 16:13  ·  辽宁 | 显示全部楼层 |阅读模式
为了修改方便,用 VB.Net2008 编写了两个修改 IOPRP 文件的工具,现将使用方法写给大家:

(1)下载修改工具:
      http://pickup.mofile.com/6206410672707213
      解压后得到两个可执行文件和一个包含源代码的目录(程序代码未作优化,有兴趣的朋友可以自己优化编译)

(2)在网络上自行下载.net框架2.0,并安装

(3)运行 IOPRP_ELFS.exe 文件,看到如下界面:



其中:
  浏览按钮可选择要操作的文件;分析按钮可显示出当前文件的ELF代码段信息;拆解按钮可将当前IOPRP文件中的ELF段分解成单个文件并保存在指定的目录中;替换按钮可以用指定的ELF文件替换当前文件的代码段;填充按钮可以用指定的ELF文件数据覆盖当前文件的同名elf段数据;清除按钮用来清空文本框中的文字。

(4)修改实例:

目标:用ioprp300.img 文件中的 IOP_SIF_manager 段替换 ioprp310.img 文件的数据

操作方法:
   1:首先用 浏览 按钮选择 ioprp300.img 文件
   2:点击  分析 按钮 在文本框中将显示出该文件的全部 elf 段的位置和长度信息



    3:点击 拆解 按钮,在弹出的文件夹选择窗口中选择一个空文件夹
  4:点击 浏览 按钮选择 ioprp310.img 文件
  5:点击  分析 按钮 在文本框中继续将显示出该文件的全部 elf 段的位置和长度信息
  6:确认 310 文件的 IOP_SIF_manager 段的 len(长度)大于等于 300 文件的同段长度
  7:点击 填充 按钮,并指定在第3步中选择的文件夹里的 IOP_SIF_manager.elf 文件
  8:在 310 文件的所在文件夹里将生成 ioprp310_new.img 文件,该文件就是修改后的文件,可于 ISO 替换。
  
  注:替换 ISO 后,用模拟器运行 ISO 看看,如果模拟器黑屏就不用费劲向硬盘里灌了。

  替换按钮因现在无法得知 IOPRP 文件的组成格式,无法使用..

精华
0
帖子
4268
威望
0 点
积分
5051 点
种子
17 点
注册时间
2005-4-7
最后登录
2024-9-23
发表于 2008-12-19 16:23  ·  辽宁 | 显示全部楼层
如此一来就方便多了
这个软件真的很适合给大家动手测试用

精华
0
帖子
670
威望
0 点
积分
720 点
种子
0 点
注册时间
2007-11-2
最后登录
2014-4-11
发表于 2008-12-19 16:26  ·  香港 | 显示全部楼层
大致明白替換的方法,這即是說也可是替換其他的ELF文件來嘗試曾加兼容並性,LZ替換IOP-SIF-MANAGER只是其中一個嘗試,LZ是否每個ELF文件去嘗試的呢?
该用户已被禁言

精华
0
帖子
221
威望
0 点
积分
227 点
种子
0 点
注册时间
2007-6-28
最后登录
2019-12-28
发表于 2008-12-19 16:27  ·  湖北 | 显示全部楼层
楼主迎来了USBA的春天,但是CG卡,有其他的办法就好

精华
0
帖子
670
威望
0 点
积分
720 点
种子
0 点
注册时间
2007-11-2
最后登录
2014-4-11
发表于 2008-12-19 16:30  ·  香港 | 显示全部楼层
我就把。PSS的文件刪來掉去除CG的

精华
0
帖子
4268
威望
0 点
积分
5051 点
种子
17 点
注册时间
2005-4-7
最后登录
2024-9-23
发表于 2008-12-19 16:31  ·  辽宁 | 显示全部楼层
关于像这样IOP_SIF_manager 的名字
LZ可不可以把意思都解释一下啊
不知道该从哪里下手

精华
0
帖子
1836
威望
0 点
积分
1884 点
种子
7 点
注册时间
2003-12-11
最后登录
2024-3-27
发表于 2008-12-19 16:34  ·  福建 | 显示全部楼层
这样看就更明白些了。双休时我来试试

精华
2
帖子
15689
威望
16 点
积分
16857 点
种子
7 点
注册时间
2008-4-5
最后登录
2024-8-1
 楼主| 发表于 2008-12-19 16:58  ·  辽宁 | 显示全部楼层
IOP_SIF_manager 等名称都是从 elf 数据段中读取得,具体对应的功能不明,本人对ps2开发基本不懂

精华
2
帖子
15689
威望
16 点
积分
16857 点
种子
7 点
注册时间
2008-4-5
最后登录
2024-8-1
 楼主| 发表于 2008-12-19 17:10  ·  辽宁 | 显示全部楼层
我的理解是,usba在运行后驻留在ps2内存中,实时的将对光驱的调用转换为对usb设备的调用,游戏在运行时也要加载各种程序模块,启动黑屏的游戏可能在加载模块时因为usba转换的原因造成某些致命错误,致使ps2进入死机/死循环等状态,通过替换 ioprp 里的 elf 模块可以使ps2跳过或忽略这些错误继续运行游戏代码(可能替换成功的elf代码中有容错代码),也可能是由于usba占用了一部分ps2内存,致使游戏没有足够的内存空间来装载执行游戏数据(如战神2应该就很占内存),这类游戏应该是现在的usba版本无法支持的

精华
0
帖子
1836
威望
0 点
积分
1884 点
种子
7 点
注册时间
2003-12-11
最后登录
2024-3-27
发表于 2008-12-19 18:20  ·  福建 | 显示全部楼层
感觉只要USBA运行黑屏的游戏。只要画面有闪动一下然后手柄灯有亮画面黑屏的游戏。用你的方法绝对有戏。但手柄灯也不亮的估计昨改也没戏
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-9-26 00:18 , Processed in 0.182095 second(s), 14 queries , Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

返回顶部