- 注册时间
- 2004-12-12
- 最后登录
- 1970-1-1
|
独立破解星星密码
刚独立解开了PC1000C的密码,很兴奋.再这里讲一下!
其实有很多帖子上PEEK值表里都有各型号星星的BASIC破密程序和绕过密码的PEEK值,但有些非主流机型的PEEK值很少有人研究.比如我的这个PC1000C,关于它的资料几乎空白,很不爽!!!
于是在看了不少老鸟关于PEEK/POKE命令的讲解后,经过我一晚努力,终于把PC1000C上判断密码开关的PEEK值找了出来,而这个办法在其他机型上也可通用!
我的办法很笨(水平所限),对老鸟来说也许不值一提,那就请讲一下高手们是如何探索不同星星上的PPEK值的.
因为NC020以后的机器对密码加了密,难以在星星上直接读出.但用POKE命令也可绕过密码,暂解系统.这里就说一下我是怎样在没有任何相关资料的情况下,找出判断密码开关的PEEK值,并暂解密码的.
整体思路上,我先在星星未解密时用PEEK命令大面积读取内存,将获得的PEEK对应值记下,再打开密码(自己的机子密码当然知道,解密一是为了研究,二万一密码忘了怎么办?),用PEEK重读一遍相同地址的内存,比较两次结果,若有不同自然是输入密码引起的.这个发生变化的值对应的PEEK就是判断密码开关的了!!!最后再用POKE把内存一改,就OK了!
思路很明显,但做起来问题不少!
我先用BASIC编了两个读PEEK的小程序,一个可读X到Y地址间的PEEK值(X,Y由你输),另一个是读某一特定PEEK值,用于最后检验.
下来我用程序一从PEEK(1000)开始读,每读20个记录对比一次(据我观察各型号星星判断密码开关的PEEK都在1K多到2K多之间,若要保险也可从PEEK(0)开始读),结果发现在PEEK(1260)~PEEK(1280),PEEK(1300)~PEEK(1320)间的值,每次读它值都不同,但我并没对星星进行任何操作呀,这是为什么?是随机取值么,星星这样做有什么用??请高人指点!!!
终于,在经历了好几次空欢喜后,一个特殊的PEEK被我发现了!PEEK(1944)在解密前=0,解密后=128,根据经验判断密码开关的就是它了!最后用POKE 1944,128试了一下,果然暂解了密码!YES!终于成功了!这是我已经读了近1000个PEEK值了,好辛苦啊...
希望我的这点心得能给别人一些帮助.
最后附上我搜集的几个其它型号暂解密码的POKE:
PC500/PC505/CC300/NC360 时间界面输入MATOID清除密码
PC1000/A/CC800 POKE 1226,255(已证实)
NC1020/CC880/CC980 POKE 1856,255(已证实)
NC2000A/C POKE 1159,128(已证实)
NC2600C POKE 1161,128(已证实)
PC1000C POKE 1944,128(已证实)
PC1010 POKE 1213,255(未证实)
GP150 POKE 1623,255(未证实)
希望能与大家交流,共同提高!!!
|
|