A9VG电玩部落论坛

标题: PS1游戏在硬盘上运行,希望 or 绝望?详解PS2运行PS1游戏原理 [打印本页]

作者: movie    时间: 2010-6-7 19:29
标题: PS1游戏在硬盘上运行,希望 or 绝望?详解PS2运行PS1游戏原理
为了使解释变的简单明了,特采用Q&A的方式。
详解PS2运行PS1游戏原理[/COLOR]

Q:PS2运行PS1游戏,是硬件兼容还是软件模拟?
A:是硬件兼容。
PS2可以运行PS1游戏因为,PS2的I/O processor中含有和PS同样的CPU。
I/O Processor
  CPU Core: Original PlayStation CPU (MIPS R3000A clocked at 33.8 MHz or 37.5 MHz)
正是因此,PS1游戏才可以在PS2上运行,画质和读盘速度有少许提高。
在EE芯片旁边红圈表示的就是PS2的I/O processor
PS1的CPU


Q:以PS2的机能,PS1游戏的画质为何只得到少许提高?我家10年前的PC机都可以很好的模拟PS1游戏。
A:以PS2的EE CPU 再加上PS的CPU,处理PS1游戏应该不是难事。但事实上是当PS1运行时,PS2 BIOS将不再被使用。
PS1 模式
主机进入PS1 模式,在此模式下PS1驱动是PS2中唯一剩下的软件程序,并且一旦有PS1游戏运行 大部分加载的驱动都将“***”,使PS2主机转换为近似标准PS1主机。
也就是说此时的PS2主机 可以看做一台PS1主机。因为此时主要的PS2功能都已丧失,包括多个设备驱动程序。
PC模拟的问题下面讨论。


Q:听你这么说,那想办法搞个虚拟CD-ROM骗过BIOS检测不就行了嘛。
A:这点不可能实现,请参照前面 PS1模式 的解释。
PS2系统的运行
PS2系统依赖于IOP处理它的设备驱动程序,这些驱动被加载在IOP RAM中。
但是当运行PS1游戏的时候作为PS1处理器的IOP变的十分繁忙,全部的IOP RAM 使用被预留给 PS1游戏和BIOS功能。
所以,当PS1游戏通过PS1驱动运行时,很明显此时PS2的驱动程序将不可能被访问。


Q:你说的这些都是用光盘来玩PS1游戏的,我想用HDL来玩PS1游戏。
A:工作原理和存储介质无关。
首先HDL是HD Loader的缩写,HDL最初的设计就是运行PS2游戏。
通过HDL只能运行在硬盘上的PS2游戏,不可能运行PS1游戏!


Q:那我修改PS2镜像,将PS1游戏伪装成PS2文件,安装入硬盘,再通过HDL读取不就骗过BIOS检测了嘛。
A:操作复杂并且不切实际。首先HDL不支持PS1游戏,即使欺骗HDL读取,HDL也会停止对硬盘的访问,HDL无法对PS1记忆卡文件作出定义。
退一步来说,即使HDL成功读取PS1游戏,PS1游戏也无法再PS2系统环境下运行。因为PS1模式需要PS1驱动和IOP中PS1处理器的支持。


Q:这么说在硬盘上运行PS1游戏就没有希望了吗?
         
A:这个问题问的好!希望!潘多拉魔盒中最强大的力量,奎托斯战胜众神的力量。最终希望遍布人间。在这些困难面前,指引我们前进的正是希望。
既然在PS1模式下无法加载PS2自制程序。那就想办法绕开PS1模式,编写PS2自制程序,在PS2环境下模拟PS1 CPU,加载PS1驱动从而避免进入PS1模式。


希望
著名的 ESR的作者 ffgriever 在很早的时候就编写了一个名为PS2PSXe 的程序,它可以在PS2环境下对PS1游戏进行模拟。
程序特点
PS1游戏可以以一般CD镜像格式 CUE+BIN(或CCD+SUB+BIN)存放在PFS分区格式的PS2硬盘上。
(不支持ISO9660镜像,会破坏音轨。)
PS2PSXe对上述格式的镜像兼容性很好,运行绝对没问题。
但是这个程序还停留在早期阶段,对PS1游戏图形处理还不够流畅,而且大多数游戏也没有声音。

因为ffgriever涉及多个程序开发,还难以抽出很多时间对PS2PSXe进行编写。但是编写工作并未停止,只是相当缓慢。
目前还没有任何公测版本放出。而且这并不是一个开源程序,所以我们只能希望ffgriever最终能够完成这款程序。
好消息 是ffgriever说他从未想过放弃。
坏消息 是PS2PSXe开发难道较大 ,因为即使是SONY也没有采用EE软模拟PS1的方式来运行PS1游戏。


最后是关于PC模拟器的问题
诚然现在用PC模拟PS早已不是难事,PS的画面得到提升,方便的存档管理。你可以坐在电脑桌前,用键盘或手柄来玩PS1游戏。但这终归是PC,无论怎么模拟,它不是PS2。就像模拟赛车游戏模拟的再真实也毕竟是模拟,和真正的赛车体验肯定是有差别的。
别的不想多说,大家可以继续享受PC PSP  iPhone PS3的PS模拟器带来的乐趣。但是想要真正的PS2硬盘运行PS1那就不要放弃希望!
.
作者: movie    时间: 2010-6-7 19:29
文章准备了一段时间,今天终于完成了。
不足之处还望大家补充。
自己先顶一下。
作者: shenqifx    时间: 2010-6-7 19:43
这个很早就有定论了,除非出现PS2端的PS1模拟器(使用EE模拟PS1运行,而不是使用IOP处理器的硬件支持)否则是不能支持HDL模式的PS1游戏。
作者: 839890805    时间: 2010-6-7 19:45
此等技术帖要先顶再看...
作者: marins    时间: 2010-6-7 20:19
在PS2环境下模拟PS1 CPU,加载PS1驱动从而避免进入PS1模式……简直就是异想天开,这样还不如单独为ps1模式开发一个独立的HDL程式,谁愿意去做
作者: movie    时间: 2010-6-7 20:44
下面是引用shenqifx于2010-06-07 19:43发表的:
这个很早就有定论了,除非出现PS2端的PS1模拟器(使用EE模拟PS1运行,而不是使用IOP处理器的硬件支持)否则是不能支持HDL模式的PS1游戏。
恩,的确理论上已经决定了这是条艰难的道路。
现在来看,PS2PSXe已经放弃了HDL模式,直接对PS1进行模拟。所以游戏镜像不再需要安装。

大家都对硬盘运行PS1游戏抱有希望,但是一直没有一篇文章对此进行解释。我这才产生了写出此文的想法,但一直没能完成。最近看到大家对PS1的热情依然高涨,就加快进度完成了此文。

不足之处,还望shenqifx版主指点。
作者: 慢慢走    时间: 2010-6-7 20:44
认真学习了。
正好昨天也有一篇关于PS2硬盘运行PS游戏的帖子,结果从希望变成了失望。
幸好今天又看到了软模拟的希望。
作者: jin_0101    时间: 2010-6-7 20:48
总觉得潘多拉的盒子得要SONY自己解开,

PSP上的PS模拟,PS2上的HDL...

(真要在PS2上运行硬盘PS游戏,实在毫无问题,就不知道是谁来打开这个盒子)
作者: movie    时间: 2010-6-7 20:49
下面是引用marins于2010-06-07 20:19发表的:
在PS2环境下模拟PS1 CPU,加载PS1驱动从而避免进入PS1模式……简直就是异想天开,谁愿意去做
这个不是异想天开,PS2PSXe的思路就是如此。
ffgriever正在开发。
这样还不如单独为ps1模式开发一个独立的HDL程式
我的文章已经说的很清楚了,在PS1模式下,不可能有多余的RAM来加载其它驱动。所以在PS1模式下不可能开发出对应PS1的HDL程式。
作者: movie    时间: 2010-6-7 20:51
下面是引用慢慢走于2010-06-07 20:44发表的:
认真学习了。
真好昨天也有一篇关于PS2硬盘运行PS游戏的帖子,结果从希望变成了失望。
幸好今天又看到了软模拟的希望。
大家一起学习。
最新的那个帖子我也看了。想法很独特,但不现实,也不可能实现。
作者: lin521    时间: 2010-6-7 20:52
期待PSL早日完成
有生之年吧......哎
作者: toukoushi    时间: 2010-6-7 20:54
看到MOVIE大恩师的文章就进来了~

感谢您一直以来对PS2区的贡献

          
作者: movie    时间: 2010-6-7 20:56
下面是引用jin_0101于2010-06-07 20:48发表的:
总觉得潘多拉的盒子得要SONY自己解开,

PSP上的PS模拟,PS2上的HDL...

(真要在PS2上运行硬盘PS游戏,实在毫无问题,就不知道是谁来打开这个盒子)
PSP上的PS模拟虽然是SONY做的,但是却是由Dark-Alex放出的。

PS2上的HDL是由Sjeep主写的,SONY封杀的。现在的版本只是破解版而已。

SONY已经放弃对PS2硬件的改动,而且PS2的BIOS都是不可写的。
就像我文章中写的那样“即使是SONY也没有采用EE软模拟PS1的方式来运行PS1游戏。 ”

SONY从来没有打开过潘多拉的盒子。希望还是要掌握在自己的手中。
作者: movie    时间: 2010-6-7 20:59
下面是引用lin521于2010-06-07 20:52发表的:
期待PSL早日完成
有生之年吧......哎
现在的开发进度几乎为零,ffgriever太忙了。

但一切事物都是在发展变化的,只要他想放出公测版,这个还是很有可能实现的。

至于完成度,万一变成开源程序,那就不可同日而语了。
作者: movie    时间: 2010-6-7 21:12
下面是引用toukoushi于2010-06-07 20:54发表的:
看到MOVIE大恩师的文章就进来了~

感谢您一直以来对PS2区的贡献
toukoushi朋友太客气了。能够帮忙我也很高兴。毕竟FMCB的Free除了“自由”之外还有“免费”的含义。

上次好像看过你写的PS3运行OPL的文章,只是最近一段时间没有时间上网,当时没有回复。

正巧借着这篇拙文,谈一下PS3模拟PS2的事情。

toukoushi朋友你的PS3应该是硬件兼容PS2吧。
PS3的USB接口的确是高速2.0的。
但当运行PS2游戏时,情况就变的和PS2模拟PS1一样了。
PS3从硬件上最大程度模拟PS2 ,USB的接口速度也被模拟成PS2的USB 1.1接口速度。
所以说USBA很难在速度上得到提升。

现在很有希望的OPL的USB模式速度也因此受到影响,没有本质的提升。
但是OPL的SMB网络模式还是很有希望的。但是有传言说道,SONY已经在系统升级的时候对此打了补丁,网络模式受到了限制。但这点未被OPL的开发者证实。

总之SONY将PS3变的越来越封闭,已经偏离了久多大叔的最初设想了。
作者: toukoushi    时间: 2010-6-7 21:38
嗯,是带EE+GS的旧版。 当时已经有心理准备骚尼会把接口速度也给“模拟”了,所以也算是意料之中吧。倒是Launch ELF在PS3上十分挑剔U盘这点让我很意外。

作为游戏机,官方把系统做得封闭我觉得是可以理解的,破解满天飞的话那做游戏的都不用***了。就算是厚机曾经支持安装的Linux,给我的感觉也是类似安装在一个虚拟机上。而且PPC版的Linux软件也很匮乏,用起来没什么意思。
作者: srw008    时间: 2010-6-7 21:42
当初PS2发售时久多信誓旦旦的说等软件成熟了就由EE执行PS1模拟,PS3发售也这么说,将来由CELL执行PS2模拟,结果............
作者: toukoushi    时间: 2010-6-7 21:51
目前PS3是可以模拟PS2的EE的,只是GS还不行。

也许在这次的E3上骚尼就会公布已经解决PS2的模拟问题
作者: movie    时间: 2010-6-7 22:10
下面是引用toukoushi于2010-06-07 21:38发表的:
嗯,是带EE+GS的旧版。 当时已经有心理准备骚尼会把接口速度也给“模拟”了,所以也算是意料之中吧。倒是Launch ELF在PS3上十分挑剔U盘这点让我很意外。

作为游戏机,官方把系统做得封闭我觉得是可以理解的,破解满天飞的话那做游戏的都不用***了。就算是厚机曾经支持安装的Linux,给我的感觉也是类似安装在一个虚拟机上。而且PPC版的Linux软件也很匮乏,用起来没什么意思。

硬件兼容的版本很不错啊!
雷克沙的U盘(Lexar JumpDrive Firefly)对PS2的兼容性不错,psx-scene也有人推荐过。不太清楚这款U盘在PS3的兼容性怎么样。Sandisk的大多数都不错。反正金士顿的兼容性是最差的。
难不成USB的驱动也要更换吗?

恩,破解带来盗版这的确是个问题。万事皆有两面性吧。
对于PS3来说,我希望看到一个开放的系统,但不愿意它像PSP那样在破解之后陷入原地踏步的窘境。
Dark-Alex做出了出色的自制系统,但也为自己带来了无尽的烦恼。
Geohot的大嘴巴,引来SONY对PS3 Other OS的封杀。

呃。。有点跑题了。
回到PS2上来,毕竟PS2的潜力还很大,希望能够看到更多的惊喜 。
作者: 湮灭自由    时间: 2010-6-7 23:56
感谢楼主的文章,
期待硬盘运行ps!
作者: hkx    时间: 2010-6-8 00:00
其实我和我和国外作者的想法是一样的 都是在PS2模式下运行PS1游戏 马上就会成功的 我只要有空就会去弄 绝对要比国外得快
作者: 阿卡尼亚    时间: 2010-6-8 00:38
楼上 你弄出来我肯定还给你烧香
作者: 839890805    时间: 2010-6-8 08:50
下面是引用hkx于2010-06-08 00:00发表的:
其实我和我和国外作者的想法是一样的 都是在PS2模式下运行PS1游戏 马上就会成功的 我只要有空就会去弄 绝对要比国外得快
马上就会成功...绝对要比国外得快...
就为这两段话...我很是期待...希望不要烂尾...
作者: pop124    时间: 2010-6-8 10:32
技术贴支持,以前还真不太清楚...
作者: leverto    时间: 2010-6-8 10:51
看了之前那个研发贴,我还想用同样原理替换文件研发玩p3由喜呢,果然还是不可能。灭活活~~~~~~~~`
作者: hkx    时间: 2010-6-8 11:12
可行性报告第二弹已出https://bbs.luryl.com/viewthread.php?tid=1497899&fpage=1
作者: movie    时间: 2010-6-8 12:22
下面是引用hkx于2010-06-08 11:12发表的:
可行性报告第二弹已出https://bbs.luryl.com/viewthread.php?tid=1497899&fpage=1
帖子已回复。
用事实来证明你的想法。而不是说出想法让别人来为你证明。
作者: natuman    时间: 2010-6-8 12:28
A9都是高人啊 新手前来学习了。。。。。。。。。。。。。。。。。。。。。。
作者: 路飞大爷    时间: 2010-6-8 18:06
下面是引用hkx于2010-06-08 00:00发表的:
其实我和我和国外作者的想法是一样的 都是在PS2模式下运行PS1游戏 马上就会成功的 我只要有空就会去弄 绝对要比国外得快
我。。。。。。。。。。。实在想不出该说什么。。。。。。。。。。。。

作者: leon2003    时间: 2010-6-8 19:49
期待吧。。别的忙帮不了,只好帮顶了。。
作者: chenke    时间: 2010-6-8 20:34
时间久了我都忘了,PS的CPU是将GPU功能整合在里面的?
作者: srw008    时间: 2010-6-8 21:27
不是,PS1据说是首个CPU和GPU分开的游戏机
作者: tq03q9i    时间: 2010-6-8 21:29
楼主可否解答一下为何有些PS2游戏会出现不定时死机现像的原理?是因为HDL或OPL会抢占系统线程吗?
作者: movie    时间: 2010-6-8 22:21
下面是引用chenke于2010-06-08 20:34发表的:
时间久了我都忘了,PS的CPU是将GPU功能整合在里面的?
下面是引用srw008于2010-06-08 21:27发表的:
不是,PS1据说是首个CPU和GPU分开的游戏机
PS1的GPU的确是独立的。

CXD8561Q

PS1的GPU是一个DMA设备负责接收基本图形信息。

PS2的IOP包含完整的PS1 CPU,但没有PS1的GPU。
PS1游戏在PS2上运行时,游戏的图像处理由一个运行在EE上的模拟器来运算,并将信息发送到GS处理。
作者: movie    时间: 2010-6-8 22:30
下面是引用tq03q9i于2010-06-08 21:29发表的:
楼主可否解答一下为何有些PS2游戏会出现不定时死机现像的原理?是因为HDL或OPL会抢占系统线程吗?
很遗憾,我对HDL和OPL缺乏了解。

但是我知道一种死机的情况是,由于HDL提交给处理器的信息过多,信息处理不过来,导致运算出错,死机。

详细的情况可以咨询一下 shenqifx版主,相信他能给你一个满意的答复。
作者: abbe    时间: 2010-6-9 12:58
下面是引用hkx于2010-06-08 00:00发表的:
其实我和我和国外作者的想法是一样的 都是在PS2模式下运行PS1游戏 马上就会成功的 我只要有空就会去弄 绝对要比国外得快

若可以的话,希望大家给予hkx一点开发经费……
作者: 49535740    时间: 2011-8-22 09:36
什么时候能实现 HDL PS1游戏啊
作者: darkdark    时间: 2011-8-22 17:41
當然, ps2 成功 hdl ps1 遊戲是最好, 不過, 現在有沒有可能 ps1 以usb 什麼讀卡等方式讀入, 先一解相思ps1 遊戲之苦呢?
作者: 苍炎之烈火    时间: 2011-8-23 21:42
说得太好了!!!
作者: 我为eg狂    时间: 2011-8-23 21:49
回复 苍炎之烈火 的帖子

这水的,何好之有愿闻其详。
作者: 10dakongyi    时间: 2011-8-23 22:20
顶再看








.
作者: yangjuniori    时间: 2011-8-25 17:01
把 PS1游戏反编译成PS2游戏 大概这才行吧 那种NAMCO街机游戏看着还真的和PS1很像




欢迎光临 A9VG电玩部落论坛 (https://bbs.luryl.com/) Powered by Discuz! X3.4