齐林书院 www.70shu.com,最快更新超脑黑客 !
“快把这个接上去看看效果。”顾伟刚刚说完这句话,就立刻意识到自己犯了个低级错误。
此刻的烧录器结构可以说已经进行了改变,而且是原理上的改变,之前的那个配套软件已经不能用了。
“对了,这个软件已经不能用了!”顾伟傻眼道。
“是啊,我扩充了比特位数,原来的软件已经不配套了。”林鸿自然知道这点。
“那牛办?岂不是做了无用功了?、,
就算是林鸿改造的这个烧录器能起作用,但是没有相应的软件与之配套使用,那也是白搭。
“让我想想,我有几个朋友懂编程技术不过他们大部分都是改改游戏什么的,做对编程器这种底层编程应该不太擅长”
顾伟嘴中念念有词,正在寻思着该找谁过来帮忙编写这个程序。
而这个时候,林鸿已经做在了计算机前,开始进入basic编程状态编写起来。
cp/m操作系统虽然是基于z80的,但是vasic编程却是和苹果的dos
基本相同。
顾伟听到耳边霹雳啪啦的键盘响声,转头看到林鸿正在操作计算机,于是惊讶地问道:“你在做什么?”“编程啊,给烧录器编写一个配套工具。”
“你连这个都懂?”
“学过一些。”
顾伟彻底无言了,他还想着找一个朋友过来帮忙,而且还没有把握是否真的能够在短时间内编写好能够配套的软件却没想到林鸿此刻已经开始编上了。
林鸿之所以有这个把握,完全是建立在已经摸透了烧录器的基本原理的基础之上。
这个过程看似很复杂,其实原理是比较简单的,就是一个数据的复制过程,将一个存储器中的数据,复制到另外一个地方,对地址里面的数据进行挨个扫描就行了。
林鸿此刻的打字方式并不科学,完全使用“二指禅”但是打字速度却相当快,他甚至已经实现了盲打,完全可以不看键盘敲出准确的对应字符。
顾伟在旁边看得简直要傻掉了。
他实在无法想象,两个手指头也能打字这么快,而且还盲打。
难道对方已经将键盘各个键位之间的距离记得清清楚楚,而且对手指的控制达到了如此令人恐怖的地步?
太变态了!
林鸿完全不知道顾伟此刻已经将其归类于“变态人物”他全神贯注地在编写着手中的这个程序。
由于涉及到底层的编程,单单只用basic的语句是不能完成所有功能的,他还在其中嵌入了一些汇编指令,直接对硬件底层进行操作。
这在十几年后就相当于是单片机编程,随便一个计算机专业毕业的人估计都知道编写几段。但是在现在这个时候,国内在这块简直还处于空白状态,就算有,也只是停留在各大研究机构和院校的实验室中,这些技术还得完全靠从国外引进。
当然林鸿完全不知道这一点。
由于林鸿编写的这个工具是专门针对他改造的烧录器而编写的,相比起之前的那个万用型编程器软件,要简单许多,他大概只编写了不到五百行代码就完成了这个小工具的编写,其中有五六十行嵌入汇编语句。
在顾伟充满震惊和崇拜的目光之下,他继续调试了几次之后,最终将dump程序顺利完成了。
这个程序的主要功能和之前的配套程序差不多,区别之处就在于多了一个对辅助电路的支持在刚开始的时候,辅助位为0,当数据复制到八兆的时候,辅助位就会自动更换为1,这样就开始了八兆以上地址空间的扫描。
“可以开始尝试dump了。”林鸿对顾伟说道。
顾伟连忙将27c320芯片插到烧录器的中间插槽中,然后启动了电源。
林鸿敲上他编写的程序名称,然后回车。
显示器左下角的位置上立刻出现了一个慢慢增大的百分率数字一1%……
2%…………
5…………
没有图形只有一个这样的简单表示,对观看者述说着数据的dump
过程正在逐渐完成。
要想实现图形表示林鸿也是可以实现的,只是现在似乎没有这个必要,他们关注的只是能不能成功将数据dump出来,至于软件的界面这是次要的,只要自己能够看懂进行了。
顾伟可以看到这一次的dump速度,确实比之前要快很多,这意味着林鸿加的那根飞线的确起作用了。
48%……………
快要到八兆了,林鸿和顾伟两人此刻的心情各不相同,不过都紧盯着显示器。
49%…………
50%……………
51%……………成功了!”
顾伟高兴地叫了一声。
林鸿脸上也露出了笑容,虽然他很有自信,但亲眼看到自己设计的电路起作用了,心中还是非常开心的。
这个过程很快就达到了100%,顾伟迫不及待地在目录中找到了dump
出来的数据包。
废了这么大的心思才将这些数据导出来,他心中隐隐生出了一种期待的感觉。
他用list命令查看了一下文件的大小,大概4兆大小。
林鸿看到,微微一愣,疑惑道:“怎么只有这么小?”
“没错。”顾伟解释道“游戏机卡带里面的容量普遍采用兆位bit来计算,而电脑都采用兆字节byte来计算,一个字节等于八个比特,所以导出来的数据在计算机里面只有原来的八分之一大小。”
顾伟先用文本编辑器查看了一下数据包,发现是十六进制的机器码,看不懂,于是将其和之前dump出来的数据一起打包,放到街机模拟器里面运行。
结果还是一片黑屏,没有任何东西,按键盘也没有任何反应。
“奇怪,怎么回事“……费了这么大的心思导出来的数据竟然没用,这不禁让他感到非常郁闷。
“难道是导出数据的时候出了问题?”
顾伟转头看了看林鸿。
如果在dump数据的时候出了问题,的确也会出现这样的现象,软件就是这样,讲究完整性,缺少任何一点代码都可能会导致运转不了。
林鸿也在默默思考着到底哪个环节出了问题。
顾伟退出游戏界面,然后重新开始分析导出来的那个数据包里面的代码。
他决定对那部分代码做一个反编译,仔细看看里面到底是什么结构,以此来判断是否导出的时候出了问题。
这个过程是他经常做的,所以非常熟练。
直接调出一个小软件,对数据进行还原,这个软件可以将机器码进行反汇编,最终以汇编代码的形式展现出来,虽然可能会和源程序的代码有区别,但是其完成的功能却是一样的,甚至经过编泽器优化过后的代码甚至比源代码的执行效率更高。
当然,顾伟的这个小软件并不能将整个游戏的完整代码都还原出来,因为游戏在进行编绎的时候,通常会加入一些反破解的代码,虽然不能百分之百地组织破解和逆向工程,但却极大地增加了难度。
顾伟还没达到能够将整个游戏的源代码给逆向出来的水平。
不过,他这么一反编泽,却发现了一个异常情况。
“奇怪了,怎么全部是数据?没有任何一条指令。”
顾伟发现,整个数据包里面的代码,竟然没有任何一个操作码,全部是数据,或者说没有意义的代码。
他再次用文本编辑器打开了这个数据包,想从中看出点什么规律,但是满屏的机器码,让他眼睛都看huā了也没看出什么名堂。于是,他接着将十六进制编码转换为二进制的,全部由“0,和“1”组成。
他进行这一步转换也只不过是顺手而已,十六进制和二进制,实际是一个效果。
他将编辑器关掉,转过头来对林鸿说道:“看来这个数据包完全是乱码,也不知道哪里出了问题。”
他说得很委婉,并没有直接说是林鸿所做的工具或者说编写的程序有同题。
林鸿眉头紧皱地回想着刚刚显示器上显示地那些二进制代码,并没有回答顾伟的话。
顾伟回过头来,从抽屉里找了一块其他游戏的存储芯片,然后插到烧录器中,用林鸿的那个工具dump了一下,然后打包放到模拟器中,运行。
显示器上出现了一个乒乓球小游戏。
“咦?是正常的啊。”
顾伟彻底混乱了。
这说明林鸿改造之后的烧录器和编写的软件都没有问题,就算是后面那段有问题,前面的数据也不可能连一条指令都不存在。
很显然,只有一个解释,那就是27c320里面的数据原本就是这样的,根本不是什么游戏程序。
“靠了,难道忙活半天,就是一堆乱码?”顾伟有些郁闷地说道“是哪个家伙没事闲得蛋疼,往27c320装一些毫无意义的垃圾信息啊,真是暴殄天物!”
27c320可是个好东西,是顾伟所见过的容量最大的存储芯片,据他所知,这个芯片刚刚上市不超过半年时间,国内还很少见到呢。
这个时候,一直在凝神苦想的林鸿突然对他说道:“伟哥,麻烦你把刚刚那个文件用编辑器再打开一下。”