标题: [原创] 教新手如何编译PCSX2和GSDX代码
songaiyun1123
游侠会员


Rank: 1

精华 0
积分 29
帖子 96

金钱 132
经验 0
荣誉 0
互助 0
贡献 0


教新手如何编译PCSX2和GSDX代码

教新手如何编译PCSX2GSDX代码
(在EZ我叫SOSG 转发自己的帖子而已)
首先,你需要下载以下软件并且安装:
1>
TortoiseSVN
用于从SVN上把模拟器代码下载到本机。
下载地址: http://tortoisesvn.net/downloads
2>
DirectX SDK
用于编译GSDX所需要的includelib文件。
下载地址: http://86516.onlinedown.net/down/dxsdk_aug2007.zip
3>
Microsoft Platform SDK
用于对Visual Studio 8includelib文件补充。
下载地址:
http://www.microsoft.com/msdownload/platformsdk/sdkupdate/XPSP2FULLInstall.htm
注意:一共是10个包,下完后只解第一个就可以。
4>
Microsoft Visual Studio 8
这个不用介绍了吧 MSDN原版破解
下载地址:
ftp://vipdownload:bbs.winzheng.com@210.51.22.77:8021/cs_vs_2005_pro_dvd.iso
MD5:a276ac538303af951d2c3b60777cc22a


下面正式开始:
一、
安装
a. 安装TortoiseSVN没什么注意的,只要一路点next就可以了,装完了重启机器。然后在文件夹上点右键,就可以看见TortoiseSVNsvn commit选项了。
b. 安装DirectX SDK,这个要用默认路径安装,就是在c:\programfiles\下,所以C盘空间要够,装完是700MB+。看图吧:


这里前5项全部安装,以后也用的上


过程比较长,请耐心等

完成。
c. 安装Microsoft Platform SDK,先解压10个包,然后点setup安装,也要默认路径安装,c:\programfiles\下。还是看图:

一路NEXT 这里用自定义吧 其实就是完全安装就可以


d. Microsoft Visual Studio 8安装很简单,上网找教程去吧。
二、装备工作

a.
首先打开你的Microsoft Visual Studio安装目录吧。找到vc文件夹,找到includelib文件夹,再找到C:\Program Files\Microsoft DirectX SDK (August 2007)里的includelib文件夹,SDK里的includelib文件夹里的东西复制粘贴到vc文件夹下的includelib里,记住:绝对不要覆盖原来的,重复的不要复制就可以了!

b. 按相同的原理,把C:\Program Files\Microsoft Platform SDK for Windows XP SP2里的includelib文件夹下的东西都复制到到vc文件夹下的includelib里,也不要覆盖!
三、开始下载源代码
在你的硬盘上任意位置建立文件夹:



PCSX2_SVN GSDX_SVN。然后对PCSX2_SVN文件夹点右键,选择svn checkout

在出现对话框后在URL那里写PCSX2SVN地址:
https://pcsx2.svn.sourceforge.net/svnroot/pcsx2/
然后点确定,等待连接开始,如果有速度显示就对了,没的话重复上面的动作直到有!
完成后会显示最后的版本号,比如295.
GSDX_SVNPCSX2_SVN一样道理,地址是:
http://guliverkli.svn.sourceforge.net/svnroot/guliverkli/
四、开始编译PCSX2_SVN代码
首先,确认你的Microsoft Visual Studio安装正确并可以正常工作,这个自己搞定。
其次打开…\pcsx2\windows\VCprojects\pcsx2_2005.sln文件,载入工程。
打开解决方案的属性:



(注意 下面的不改也可以)
然后打开右边的pcsx2,找到cpu文件里的Vif.c,按ctrl+f 查找if ((vif1ch->madr+(mfifoqwc << 4)) > (msize)) 内容,找到后把“ {
”后的内容改为

int s1 = ((msize) - vif1ch->madr) >> 2;然后,在pcsx2上点右键,点击生成,等待,直到出现:
========== 生成: 1 已成功, 0 已失败, 0 最新, 0 已跳过==========
就表示完毕了!最后在你的\ PCSX2_SVN \bin\下找到你编译的最新版本的主程序。
期间的warning可以忽略
注意:如果你要编译No_VM(就是不带虚拟内存的)版本,请将工程pcsx2属性改成DebugTLB!
五、编译GSDX_SVN
首先,打开…GSDX_SVN\GSDX\trunk\gsdx\GSdx_vs2005.sln文件。
再来就是打开解决方案的属性,


选择Release SSE2配置。
然后在右侧的GSDX里找到Header Files里的GSRendererHW.h文件,然后把这里的protect改成public,不然编译报错,看图:


下面要改下:(注意 下面的不改也可以)
同样打开右侧的GSDX里的Source Files里的X86.cpp找到
BYTE c = (src[addr>>1] >> ((addr&1) << 2)) & 0x0f;
BYTE为int

同理找到Source Files里的GSRendererHW9.cpp找到
BYTE factor = m_context->ALPHA.FIX >= 0x80 ? 0xff : m_context->ALPHA.FIX * 2;
改BYTE为INT

最后开始编译代码,选择GSDX点右键的生成,等待完成
========== 生成: 1 已成功, 0 已失败, 0 最新, 0 已跳过==========
完成后在C:\users\gabest\desktop\pcsx2\plugins\里找到GSDX.dll文件,放到你的模拟器的plugins里就可以使用了.

编后语:这里只是很简单的介绍了下如何编译代码,深层次的是分析代码和细节与结构调整,本人能力有限,所以这里暂时不写了,待总结验证后一起发出来。







My PC:
CPU: Inter Duo Core2 E6750 2.66GHz OC 3.5
MB: Gigabyte P35-DS3R 1333Fsb DDR2 1066MHz
MM: 金邦白金 1GX4 800MHz OC 1000
VC: XFX 8600GT 730/2260 完美版
HD: SG 320G 16M
PS3已入手 高达无双成就中....
顶部
gtlym
游侠会员


Rank: 1

精华 0
积分 499
帖子 1646

金钱 1416
经验 0
荣誉 0
互助 1
贡献 0



学习了,不过看来很麻烦的,还是用编译好的版本算了..

顶部
peng6662001
游侠会员


Rank: 1

精华 0
积分 107
帖子 358

金钱 459
经验 0
荣誉 0
互助 0
贡献 0



谢谢楼主,以前没有找到SVN下载的地址,都是在官方网站上下的源代码,研究过几天,太难,也没太多精力,就暂时放弃了,现在正在学习DirectX SDK,可能回头还要把汇编再学一遍。打算学完了再次研究这个代码。





E4300 OC 2.4G
1G DDRII 800
1950GT
别给我扯淡什么政治,我爱的是中国。
顶部
fhb_zyc
游侠会员


Rank: 1

精华 0
积分 65
帖子 215

金钱 252
经验 0
荣誉 0
互助 0
贡献 0

来自 伊苏国


这个,如果是没有接触过语言的新手是不可能看懂的
楼主标题要改...





万物の根源たる七耀を司るエイドスよ…  │
その妙なる輝きをもって我らが脅威を退けた│まえ。光よ!我に集いて魔をうつ陣となれ!サンクタスノヴァッ!!
顶部
hjh888hjh
游侠会员



Rank: 1

精华 0
积分 10
帖子 32

金钱 33
经验 0
荣誉 0
互助 0
贡献 0



感谢楼主教程,,太难。。。。。。。。。

顶部
bish208
游侠会员


Rank: 1

精华 0
积分 121
帖子 354

金钱 468
经验 0
荣誉 0
互助 3
贡献 0


既然是新手,就不可能去玩这些的,还是感谢LZ.

既然是新手,就不可能去玩这些的,还是感谢LZ.哈哈





自家爱机DIY
CPU:E8400 OC3.6G
主板:ASUS P5Q-PRO
显示卡:8800GTX
内存:金士顿 DDR2 800 2G x2
硬盘:西捷酷鱼300G SATA+500G SATA x2
显示器:PHILIPS 107B5 分辨率1024x768@85Hz
操作系统: Windows 7 旗舰版
顶部



www.netshowbbs.com game.ali213.net
我们每天在进步 游侠游戏社区 游侠网


当前时区 GMT+8, 现在时间是 2010-2-10 04:50
沪ICP备05036538

Powered by Discuz! 5.5.0  © 2001-2007 Comsenz Inc.
清除 Cookies - 联系我们 - 游侠NETSHOW论坛 - Archiver - WAP