网页
资讯
视频
图片
知道
文库
贴吧
地图
采购
进入贴吧
全吧搜索
吧内搜索
搜贴
搜人
进吧
搜标签
日
一
二
三
四
五
六
签到排名:今日本吧第
个签到,
本吧因你更精彩,明天继续来努力!
本吧签到人数:0
一键签到
可签
7
级以上的吧
50
个
一键签到
本月漏签
0
次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行
补签
。
连续签到:
天 累计签到:
天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
02月21日
漏签
0
天
winulator吧
关注:
1,214
贴子:
2,384
看贴
图片
吧主推荐
游戏
1
2
3
4
下一页
尾页
116
回复贴,共
4
页
,跳到
页
确定
<返回winulator吧
>0< 加载中...
关于winulator转换文件的原理分析
只看楼主
收藏
回复
贴吧用户_0W5JK8P
活跃吧友
5
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
前不久在论坛里看到了winulator这个小东西,感觉挺神奇的,才几兆竟可以使1.4g的starcraft很流畅的运行在android上。相比之下bouchs的虚拟机多少有些逊色。
送TA礼物
1楼
2013-12-13 22:37
回复
贴吧用户_0W5JK8P
活跃吧友
5
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
在高兴之余我也不时的再找有没有更多的转换游戏,于是就上网搜了下,貌似就两个,一个星际另一个是凯撒3,有点失望,偶然间发现了国人转换的handkercief,由于是老玩家了。当时的激动之情油然而生呢。兴冲冲的下来之后才发现怎么弄都没办法玩。很伤心,可是又很好奇到底是哪里做错了。于是就花了一下午对winulator进行了一番研究。
2楼
2013-12-13 22:41
回复
收起回复
贴吧用户_0W5JK8P
活跃吧友
5
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
首先必须要讲的是,确实是上当了,因为那个根本就是假冒伪劣产品,根本不能玩,具体分析以下展开。
winulator这个软件和mac机上的crossover差不多,也是通过对程序地址的偏移运算实现的,这一点从最初的凯撒3的转换文件可以看出来。
这个程序要实现转换至少需要两个文件,一个是对具体程序的描述文件,包括地址偏移的具体规则,一般叫做 XX.WCH。另一个是profile文件,这个文件是对x86和android的接口,告诉转换器exe在哪里。转换器要做的是将exe部分的api按照wch的描述进行偏移,然后打包成一个成品文件。
3楼
2013-12-13 22:50
回复(5)
收起回复
贴吧用户_0W5JK8P
活跃吧友
5
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
有同学可能要问了,为什么2.0以后的版本只要一个profile文件就可以了?因为根据原作者的官方说法,我已经将那部分api的转换规则写进了程序里,不再需要pc端的操作,也就是不需要转换器这个东西的存在了。这也就解释了为什么wch helper只有1.4.1版了。
4楼
2013-12-13 22:52
回复(3)
收起回复
贴吧用户_0W5JK8P
活跃吧友
5
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
其实实现游戏转换最重要的是wch文件的编辑,这个文件由hash码、jumptable(偏移规则)、indirectjumptable(间接偏移量)三部分构成。hash码的作用是标记程序。以凯撒3的转换文件为例,这里面有5个hash码,如果你逐个的去依据hash码找文件会发现这5个是同一个文件,叫c3.exe,凯撒3的执行文件(原作者blog上说是为了适配不同的版本)。jumptable和indirect jumptable这两部分和exe的内存地址很像,而且有大小区间的限制,我想应该是api的转换规则,或者是内存使用规则,c语言学的不好,只能解释到这里了。
5楼
2013-12-13 23:00
回复
收起回复
贴吧用户_0W5JK8P
活跃吧友
5
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
profile文件的编辑很简单,就是告诉转换器 exe文件的地址,这个正常人一看就会。
6楼
2013-12-13 23:00
回复
收起回复
贴吧用户_0W5JK8P
活跃吧友
5
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
接下来我们就看看国人转换的这个奇葩成果吧。
从表面上看没问题,但是仔细看就会发现 那个dll文件,这个游戏根本就用不到。如果带着这条规则,你没这个,转换器会告诉你找不到文件;你有这个,转换器会告诉你错误,因为游戏用不到,程序不会调用,api也就无从转换了。坑爹啊
7楼
2013-12-13 23:05
回复
收起回复
贴吧用户_0W5JK8P
活跃吧友
5
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
最后时profile文件了,这个好歹还有点良心,但是您好歹把最后的那两段删了吧,一个act游戏怎么会有rts特有的maps文件夹。。。
9楼
2013-12-13 23:11
回复
收起回复
贴吧用户_0W5JK8P
活跃吧友
5
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
还有,最后就是随包附送的游戏,因为是精简过的,hash值读不出来,转换器会提示too few bit。我特地换成了英文原版之后,才发现的hash这个东西的真正作用。
10楼
2013-12-13 23:14
回复
收起回复
贴吧用户_0W5JK8P
活跃吧友
5
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
总之,我写这个东西不是为了黑谁也不是为了难为谁,主要是想给大家科普下winulator的基本知识,同时也想表达一下我心中的怒火,假货骗人的东西始终是假的,不但浪费玩家的感情也浪费别人的时间。同时呢,也希望国人能真正的做出些“移植”。
11楼
2013-12-13 23:18
回复(1)
收起回复
贴吧用户_0W5JK8P
活跃吧友
5
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
不喜勿喷,纯属个人见解。
12楼
2013-12-13 23:18
回复(6)
收起回复
必顶此帖
知名人士
11
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
楼主辛苦了
IP属地:江苏
来自
Android客户端
13楼
2013-12-15 18:55
回复(1)
收起回复
Yua
铁杆吧友
8
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
官方到底有没有动作
–––––大家好我是新人,如果有什么冒犯的地方。你他妈来打我啊!
IP属地:湖北
来自
Android客户端
14楼
2013-12-15 20:58
回复(2)
收起回复
中華蜜蜂
活跃吧友
4
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
可以自己搞转换吗?
IP属地:广西
来自
WindowsPhone客户端
15楼
2013-12-15 23:16
回复(4)
收起回复
我是流氓啦丶
知名人士
11
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
不明觉厉
IP属地:湖北
来自
Android客户端
16楼
2013-12-16 08:45
回复(2)
收起回复
登录百度账号
扫二维码下载贴吧客户端
下载贴吧APP
看高清直播、视频!
贴吧热议榜
1
贴吧跳绳哥连续发贴打卡5000天
2973480
2
当你觉得自己没用时看看他
2152554
3
失落之魂制作人首度回应负面舆论
1931692
4
文化工作者一定要有文化
1407348
5
没玩过乐队的是这样吗?
1167842
6
EDG复仇TL获曼谷大师赛开门红
901800
7
郭艾伦痛斥肇事队友没担当
729336
8
王楚钦亚洲杯小组赛两连胜
670289
9
估计大部分人看到这都不相信
576312
10
清算!拳头实锤Elk利用Bug
558201
贴吧页面意见反馈
违规贴吧举报反馈通道
贴吧违规信息处理公示