A9VG电玩部落论坛

 找回密码
 注册
搜索
查看: 4428|回复: 6

[软件] 发个自己修改完善的ps1转换pkg软件

[复制链接]

精华
0
帖子
175
威望
0 点
积分
195 点
种子
10 点
注册时间
2018-2-19
最后登录
2023-9-2
 楼主| 发表于 2018-4-16 18:13  ·  河南 | 显示全部楼层 |阅读模式
本帖最后由 wdjkgjk 于 2018-9-26 23:01 编辑

里面的Fix_EBOOT.PBP_.exe对于小pbp文件很有效(直接点击就能处理完成,只要最后把pkg文件夹改名就行了),但是遇到大pbp文件或者合盘的大pbp就会失灵(失灵现象是产生的ISO.BIN.EDAT文件容量不正确),正常ISO.BIN.EDAT文件是一个盘1m两个盘2m以此类推,正因为这个bug才被迫用批处理解决的。



使用方法如下

先用psx2psp转换ps1镜像成pbp文件(切记把psx2psp设置里面的压缩率调到0,就是不压缩)
转换好的游戏会产生一个带ID编号的文件夹,pbp文件就在里面(最好复制这个带编号的文件夹名字,一会有用)

然后把pbp文件放到工具一个文件夹

重点来了:里面有三个bat批处理文件,一个不带自动打包,一个带打包pkg功能,一个只有打包ps1 pkg功能

想手动打包的可以用不带打包的,用法都一样,用记事本打开你想用的bat文件(自动处理或者带打包自动处理)把刚才复制的那个文件夹编号替换到图示的两个地方保存,然后点击bat运行就会自动处理了,想替换游戏封面的可以选择不带打包的


那个_Fix_EBOOT.PBP_.exe软件有bug的代码如下

Option Explicit
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Private Sub Form_Load()
  Dim titleid As String * 9
  Dim title As String * 128
  On Error Resume Next
  If FileExists("EBOOT.PBP") Then
    Kill "ISO.BIN.DAT"
    Kill "ISO.BIN.EDAT"
    Shell "make_psone_classic_metadata.exe EBOOT.PBP", vbHide
  
    Do Until FileExists("ISO.BIN.DAT")
      Sleep 1000
      DoEvents
    Loop
  
    Open "EBOOT.PBP" For Binary As #1
    Get #1, &H131, titleid
    Get #1, &H359, title
    Close #1
  
    Shell "make_npdata -e ISO.BIN.DAT ISO.BIN.EDAT 1 1 1 0 16 3 00 " & Mid(titleid, 3, 1) & "P9000-" & titleid & "_00-0000000000000001 5", vbHide
    Do Until FileExists("ISO.BIN.EDAT")
      Sleep 1000
      DoEvents
    Loop
    Sleep 5000
    Open "PKG\PARAM.SFO" For Binary As #1
    Put #1, &H161, title
    Put #1, &H1E1, titleid
    Close #1
    Open "PKG\USRDIR\SAVEDATA\PARAM.SFO" For Binary As #1
    Put #1, &H511, titleid
    Put #1, &H12B1, title
    Close #1
    Sleep 5000
    FileCopy "PKG\ICON0.PNG", "PKG\USRDIR\SAVEDATA\ICON0.PNG"
  
    Sleep 1000
  
    Kill "ISO.BIN.DAT"
  
    Kill "PKG\USRDIR\CONTENT\EBOOT.PBP"
    Name "EBOOT.PBP" As "PKG\USRDIR\CONTENT\EBOOT.PBP"
  
    Sleep 1000
  
    Kill "PKG\USRDIR\ISO.BIN.EDAT"
    Name "ISO.BIN.EDAT" As "PKG\USRDIR\ISO.BIN.EDAT"
  
  End If
  End
End Sub

Private Function FileExists(filename As String) As Boolean
  On Local Error Resume Next
  FileExists = FileLen(filename) > 0
End Function

有会VB编程的可以改进一下,我是不会VB无能为力,建议去除bug后添加我那个复制功能和改文件夹名功能

到时候就不用这样曲线救国了

用批处理我只是皮毛功夫,不会自动提取ID添加,只能每次换游戏都要记事本修改了,有高手懂的话可以修改一下



更新一下超过2g的pbp合盘问题,Fix_EBOOT.PBP_.exe这个软件遇到特大pbp提取游戏ID和标题功能也会失效,所以自动处理后要手动用sfo编辑器修改里面的标题和ID

psx2psp貌似转换超过2g的pbp会出问题,进度显示超过百分百还在继续,不知道有没有问题,我转换个2.3g的4盘pbp可以运行。

如果有问题可以用另一个转换工具,日文软件,会乱码,不过一样用,另外那个软件好像不能调0压缩率已经删除了



增加个金手指盘,转换pbp时添加,bin格式不支持可以转换成img再用

金手指盘启动方法是PS3打开游戏后选择重置游戏 换盘 选择金手指代码后再选择第一个启动游戏就行,金手指盘详细使用方法金手指盘详细使用方法

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

精华
3
帖子
8804
威望
13 点
积分
11409 点
种子
1357 点
注册时间
2003-6-12
最后登录
2024-11-21
发表于 2018-4-17 08:15  ·  上海 | 显示全部楼层
支持一个,好多人问这个问题

精华
0
帖子
175
威望
0 点
积分
195 点
种子
10 点
注册时间
2018-2-19
最后登录
2023-9-2
 楼主| 发表于 2018-4-17 13:04  ·  河南 来自手机 | 显示全部楼层
雨鱼 发表于 2018-4-17 08:15
支持一个,好多人问这个问题

这个批处理全识别ID自动输入ID不知道版主能不能搞一下,比如把那个psx2psp转换产生的编号文件夹放在当前目录,读取它的编号再替换那两个ID,本人批处理马马虎虎有什么错误不要见笑,不行就算了

精华
0
帖子
82
威望
0 点
积分
82 点
种子
5 点
注册时间
2015-5-10
最后登录
2023-7-12
发表于 2018-4-17 17:32  ·  广东 | 显示全部楼层
666支持支持产出动手

精华
0
帖子
425
威望
0 点
积分
432 点
种子
19 点
注册时间
2005-12-3
最后登录
2024-11-20
发表于 2018-4-17 20:37  ·  台湾 | 显示全部楼层
期待程序猿弄个一键 完整功能

精华
0
帖子
562
威望
0 点
积分
690 点
种子
156 点
注册时间
2005-11-16
最后登录
2024-11-13
发表于 2023-2-21 16:44  ·  湖北 | 显示全部楼层
支持一下,有空试试。
发自A9VG Android客户端

精华
0
帖子
61
威望
0 点
积分
290 点
种子
42 点
注册时间
2011-2-11
最后登录
2024-7-9
发表于 2024-4-7 13:57  ·  黑龙江 | 显示全部楼层
照着教程做了,主游戏能放出来,切换金手指盘就黑屏不出,感觉多盘游戏这块不知道做错了什么,版主能帮忙再指导一下吗?谢谢!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-21 17:43 , Processed in 0.176322 second(s), 15 queries , Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

返回顶部