» 您尚未 登录   注册 | 社区银行 | 社区婚姻 | 社区成就 | 帮助 | 社区 | 无图版


火花天龙剑 -> 火炎之纹章 -> 火花学园 -> 圣魔31上限突破!已经给出程序!
 XML   RSS 2.0   WAP 

<<   1   2  >>  Pages: ( 2 total )
本页主题: 圣魔31上限突破!已经给出程序! 加为IE收藏 | 收藏主题 | 上一主题 | 下一主题
无聊之士

头衔:全控全控
该用户目前不在线
级别: 火花会员
编号: 49952
精华: 5
发帖: 432
威望: 25 点
配偶: 单身
火 花 币: 4092 HHB
注册时间:2006-02-10
最后登陆:2024-06-28
艾雷布的骑士(I)
查看作者资料 发送短消息 引用回复这个帖子
圣魔31上限突破!已经给出程序!

给出的程序见16楼!!


以下是对圣魔31上限的程序解释,对上限不满的人可以看这里~看了以后给我个建议,希望到底多少上限比较满意?我好对大家的意思做修改程序,毕竟记录文件大小有限,不能改的太离谱,当然......能做相当改进就是了~圣魔的SAVE文件看不懂是因为是对人物能力的复合位处理,相信看懂有一定二进制的人就会明白了,好了,废话不多说了,我把我研究的程序文本帖出来(我侧重在读档程序比较详细,但是存档程序也找到了~ 这里要谢谢提供老金的那个老大!没有那些东西估计我也什么不知道~!
),由于太大,所以我就多发几贴吧,希望斑竹原谅~

文本开始:

这两大处理实际上就是把游戏数据每一位进行处理后存入栈地址里面,这个处理过后我们用16进制就看不出是什么数据了.然后把存入栈地址里面的数据再依次写到游戏存档镜象区(0E000000),实际上这个镜象区就是我们打开游戏SAVE的00000000对应(0E000000),因为对游戏的位进行处理过了,我们看到的ROM存档数据一点规律都没有,实际上规律是很强的,但是你要不知道程序,有兴趣用2进制一看就知道了...........

以下的程序我们可以很清楚的知道,存入数据和读出数据真是个相反的处理,规律性之强,让我无言以对....当然!也有不同之处



============================================================
数据存入ROM处理,建议和读取处理对应起来看.很难修改!!!
============================================================

080A9A28   B5F0 push r4-r7, lr
080A9A2A   4657 mov r7, r10
080A9A2C   464E mov r6, r9
080A9A2E   4645 mov r5, r8
080A9A30   B4E0 push r5-r7
080A9A32   B0A4 sub sp, 90h
080A9A34   4682 mov r10, r0
080A9A36 F837F7FE bl 80A7AA8h<--------------得出ROM指针,使R0=0E003FC4
080A9A3A   1C07 mov r7, r0
080A9A3C   2003 mov r0, 3h
080A9A3E FCFBF000 bl 80AA438h<----------03007CEC+4栈地址赋200A,03007CEC+8栈地址赋0E0000D4等等,目前未知为什么当某值为FF又变化了
080A9A42   4C36 ldr r4, [pc, D8h]   ([000A9B1C]=0202BCEC)
080A9A44   4650 mov r0, r10
080A9A46   7320 strb r0, [r4, Ch]
080A9A48 F946F757 bl 8000CD8h
080A9A4C   6020 str r0, [r4, 0h]
080A9A4E   1C20 mov r0, r4
080A9A50   1C39 mov r1, r7
080A9A52   224C mov r2, 4Ch<------------循环次数数据
080A9A54 FD78F02C bl 80D6548h<-----------在bl 80D6420h里0202BCEC的值转移到0E003FC4,一一对应,循环4C次!在bl 80D65C8h里把0E003FC4的值0202BCEC的值一一比较,不同有数据变化!
080A9A58   A904 add r1, sp, 10h
080A9A5A   4688 mov r8, r1
080A9A5C   4668 mov r0, sp
080A9A5E   3074 add r0, 74h
080A9A60   9023 str r0, [sp, 8Ch]

080A9A62   1C3C mov r4, r7<------R7=0E003FC4
080A9A64   344C add r4, 4Ch<------R4=[R7+4C=0E003FC4+4C=0E004010]
080A9A66   2600 mov r6, 0h
080A9A68   492D ldr r1, [pc, B4h]   ([000A9B20]=0202BE48)
080A9A6A   4689 mov r9, r1
080A9A6C   2532 mov r5, 32h<------为使bl 80A9D54h循环处理50次的必要赋值!
080A9A6E   4649 mov r1, r9
080A9A70   1870 add r0, r6, r1
080A9A72   1C21 mov r1, r4
080A9A74 F96EF000 bl 80A9D54h<----这里面可以清楚的了解到人物数据为什么是31的能力上限,因为左右移动使数据得出,从这里就可以知道为什么存档数据不好改的原因了...和读档程序一样是大型程序..........!还有相似的地方:比如"规划8种武器的熟练度循环"在这个转移里为080AA132H,而读档程序在080AA374H,这里面的080D6442就是对一个人物的数据存入存档,和其他地方联合修改可以对上限修改,但是真的好难!这里是改上限的关键点!!!
080A9A78   3424 add r4, 24h<--------为存储下一个人的必要偏移,例如第一次为0E004010,那第二个人就在0E004010+24=0E004034处
080A9A7A   3648 add r6, 48h
080A9A7C   3D01 sub r5, 1h<------为使bl 80AA1ACh循环处理跳出的必要条件!
080A9A7E   2D00 cmp r5, 0h
080A9A80   DAF5 bge 80A9A6Eh

080A9A82   4640 mov r0, r8
080A9A84 FE72F7FD bl 80A776Ch<--------对存档的头文件的修改,将栈地址03007d14的值存入0E000000,循环64次,数据一一对应.
080A9A88   2400 mov r4, 0h
080A9A8A   4E25 ldr r6, [pc, 94h]   ([000A9B20]=0202BE48)
080A9A8C   2532 mov r5, 32h
080A9A8E   19A0 add r0, r4, r6
080A9A90   6800 ldr r0, [r0, 0h]
080A9A92   7900 ldrb r0, [r0, 4h]
080A9A94   4641 mov r1, r8
080A9A96 FBA9F7FE bl 80A81ECh<--------对bl 80A9D54h存入的数据复核,是否成立,对数据有影响
080A9A9A   3448 add r4, 48h
080A9A9C   3D01 sub r5, 1h
080A9A9E   2D00 cmp r5, 0h
080A9AA0   DAF5 bge 80A9A8Eh<--------复核没有完成,返回!

080A9AA2   2400 mov r4, 0h<------------以下的和读档程序参看,不想在研究了
080A9AA4   4640 mov r0, r8
080A9AA6 FEA1F7FD bl 80A77ECh
080A9AAA   21EF mov r1, EFh
080A9AAC   00C9 lsl r1, r1, 3h
080A9AAE   1878 add r0, r7, r1
080A9AB0 FCA2F000 bl 80AA3F8h
080A9AB4   491B ldr r1, [pc, 6Ch]   ([000A9B24]=0000079C)
080A9AB6   1878 add r0, r7, r1
080A9AB8 F8B6F7FE bl 80A7C28h
080A9ABC   491A ldr r1, [pc, 68h]   ([000A9B28]=0000084C)
080A9ABE   1878 add r0, r7, r1
080A9AC0 F8F2F7FF bl 80A8CA8h
080A9AC4   4919 ldr r1, [pc, 64h]   ([000A9B2C]=00000CAC)
080A9AC6   1878 add r0, r7, r1
080A9AC8 F900F7FF bl 80A8CCCh
080A9ACC   1C38 mov r0, r7
080A9ACE FE59F7FF bl 80A9784h
080A9AD2   4917 ldr r1, [pc, 5Ch]   ([000A9B30]=00000D6C)
080A9AD4   1878 add r0, r7, r1
080A9AD6 F85DF7FE bl 80A7B94h
080A9ADA   4916 ldr r1, [pc, 58h]   ([000A9B34]=00000D8C)
080A9ADC   1878 add r0, r7, r1
080A9ADE   4916 ldr r1, [pc, 58h]   ([000A9B38]=03005270)
080A9AE0 FFF2F001 bl 80ABAC8h
080A9AE4   9823 ldr r0, [sp, 8Ch]
080A9AE6 FA47F78E bl 8037F78h
080A9AEA   20DB mov r0, DBh
080A9AEC   0100 lsl r0, r0, 4h
080A9AEE   1839 add r1, r7, r0
080A9AF0   9823 ldr r0, [sp, 8Ch]
080A9AF2   2218 mov r2, 18h
080A9AF4 FD28F02C bl 80D6548h
080A9AF8   4810 ldr r0, [pc, 40h]   ([000A9B3C]=00040624)
080A9AFA   9000 str r0, [sp, 0h]
080A9AFC   4668 mov r0, sp
080A9AFE   7184 strb r4, [r0, 6h]
080A9B00   4651 mov r1, r10
080A9B02 FF69F7FD bl 80A79D8h
080A9B06   4650 mov r0, r10
080A9B08 FE5CF7FF bl 80A97C4h
080A9B0C   B024 add sp, 90h
080A9B0E   BC38 pop r3-r5
080A9B10   4698 mov r8, r3
080A9B12   46A1 mov r9, r4
080A9B14   46AA mov r10, r5
080A9B16   BCF0 pop r4-r7
080A9B18   BC01 pop r0
080A9B1A   4700 bx r0
-----------------------
这一段看起来没什么用,实际上都是指针!!!
080A9B1C   BCEC pop r2-r3,r5-r7
080A9B1E   0202 lsl r2, r0, 8h<-------0202BCEC
080A9B20   BE48 bkpt
080A9B22   0202 lsl r2, r0, 8h<-------0202BE48
080A9B24   079C lsl r4, r3, 1Eh
080A9B26   0000 lsl r0, r0, 0
080A9B28   084C lsr r4, r1, 1h<--------084C
080A9B2A   0000 lsl r0, r0, 0
080A9B2C   0CAC lsr r4, r5, 12h<-------0CAC
080A9B2E   0000 lsl r0, r0, 0
080A9B30   0D6C lsr r4, r5, 15h<-------0D6C
080A9B32   0000 lsl r0, r0, 0
080A9B34   0D8C lsr r4, r1, 16h<-------0D8C
080A9B36   0000 lsl r0, r0, 0
080A9B38   5270 strh r0, [r6, r1]
080A9B3A   0300 lsl r0, r0, Ch<-----03005270
080A9B3C   0624 lsl r4, r4, 18h
080A9B3E   0004 lsl r4, r0, 0
---------------------------------


[ 此贴被无聊之士在2007-10-07 18:58重新编辑 ]


姓:郑
名:长春
号:无聊之士!
欢迎到网络U盘地址:http://zhengchangchun.ys168.com/ 来~
个人空间http://i.cn.yahoo.com/zhengchangchun2003
[楼 主] | Posted:2008-09-29 10:51| 顶端
无聊之士

头衔:全控全控
该用户目前不在线
级别: 火花会员
编号: 49952
精华: 5
发帖: 432
威望: 25 点
配偶: 单身
火 花 币: 4092 HHB
注册时间:2006-02-10
最后登陆:2024-06-28
艾雷布的骑士(I)
查看作者资料 发送短消息 引用回复这个帖子


=============================================================================================================================
=============================================================================================================================
数据从ROM读取处理,建议和存入处理对应起来看.很难修改!!!
=============================================================================================================================
=============================================================================================================================

bl 80D65C8h<--------从ROM中读出数据就是它了.
===========================

080A9B40   B5F0 push r4-r7, lr
080A9B42   464F mov r7, r9
080A9B44   4646 mov r6, r8
080A9B46   B4C0 push r6-r7
080A9B48   B086 sub sp, 18h
080A9B4A   4681 mov r9, r0
080A9B4C F804F7FE bl 80A7B58h<--从存档0E000064读出数据存入03007D68栈里,二者依次加1,数据一一对应
080A9B50   1C07 mov r7, r0
080A9B52   482D ldr r0, [pc, B4h]   ([000A9C08]=0202BCAC)
080A9B54   7901 ldrb r1, [r0, 4h]
080A9B56   2040 mov r0, 40h
080A9B58   4008 and r0, r1
080A9B5A   2800 cmp r0, 0h
080A9B5C   D102 bne 80A9B64h
080A9B5E   2003 mov r0, 3h
080A9B60 FC6AF000 bl 80AA438h
080A9B64   4829 ldr r0, [pc, A4h]   ([000A9C0C]=03006790)
080A9B66   4C2A ldr r4, [pc, A8h]   ([000A9C10]=0202BCEC)
080A9B68   6803 ldr r3, [r0, 0h]
080A9B6A   1C38 mov r0, r7
080A9B6C   1C21 mov r1, r4
080A9B6E   224C mov r2, 4Ch
080A9B70 FD2AF02C bl 80D65C8h
080A9B74   6820 ldr r0, [r4, 0h]<-------------[r4=0202BCEC]=005803E7
080A9B76 F8B5F757 bl 8000CE4h<-------------[r4=0202BCEC]=005803E7=>str[03000010]<---小程序,不用详解
080A9B7A   4648 mov r0, r9
080A9B7C   7320 strb r0, [r4, Ch]
080A9B7E FCF5F76D bl 801756Ch<-----------见第一级+ONE

080A9B82   2600 mov r6, 0h
080A9B84   1C3C mov r4, r7
080A9B86   344C add r4, 4Ch<---------[r4+4C]=0E004010
080A9B88   4922 ldr r1, [pc, 88h]   ([000A9C14]=0202BE48)<-------在老金中0202BE48 xxxx   是 "人物代码"开始!!
080A9B8A   4688 mov r8, r1
080A9B8C   2532 mov r5, 32h<------为使bl 80AA1ACh循环处理50次的必要赋值!
080A9B8E   4642 mov r2, r8
080A9B90   18B1 add r1, r6, r2
080A9B92   1C20 mov r0, r4
080A9B94 FB0AF000 bl 80AA1ACh<------------这里面可以清楚的了解到人物数据为什么是31的能力上限,因为左右移动使数据得出,从这里就可以知道为什么存档数据不好改的原因了...
080A9B98   3648 add r6, 48h
080A9B9A   3424 add r4, 24h<--------为读下一个人的必要偏移,例如第一次为0E004010,那第二个人就在0E004010+24=0E004034处
080A9B9C   3D01 sub r5, 1h<------为使bl 80AA1ACh循环处理跳出的必要条件!
080A9B9E   2D00 cmp r5, 0h
080A9BA0   DAF5 bge 80A9B8Eh<------为使bl 80AA1ACh循环处理50次的必要返回!

080A9BA2   21EF mov r1, EFh
080A9BA4   00C9 lsl r1, r1, 3h
080A9BA6   1878 add r0, r7, r1<---------------r0=[r7+r1=0E003FC4+EF*3=0E003FC4+778=0E00473C]
080A9BA8 FC36F000 bl 80AA418h<----------------见第一级+TWO
080A9BAC   4A1A ldr r2, [pc, 68h]   ([000A9C18]=0000079C)
080A9BAE   18B8 add r0, r7, r2<---------------r0=[r7+r2=0E003FC4+79C=0E004760]
080A9BB0 F87EF7FE bl 80A7CB0h<----------------和第一级+TWO差不多,只是因为RO不同所以处理数据不同
080A9BB4   4919 ldr r1, [pc, 64h]   ([000A9C1C]=00000D6C)
080A9BB6   1878 add r0, r7, r1<---------------r0=[r7+r1=0E003FC4+D6C=0E004D30]
080A9BB8 F810F7FE bl 80A7BDCh<----------------和第一级+TWO差不多,只是因为RO不同所以处理数据不同
080A9BBC   4A18 ldr r2, [pc, 60h]   ([000A9C20]=0000084C)
080A9BBE   18B8 add r0, r7, r2<---------------r0=[r7+r2=0E003FC4+84C=0E004810]
080A9BC0 F84EF7FF bl 80A8C60h<----------------和第一级+TWO差不多,只是因为RO不同所以处理数据不同
080A9BC4   4917 ldr r1, [pc, 5Ch]   ([000A9C24]=00000CAC)
080A9BC6   1878 add r0, r7, r1<---------------r0=[r7+r2=0E003FC4+CAC=0E004C70]
080A9BC8 F860F7FF bl 80A8C8Ch<----------------和第一级+TWO差不多,只是因为RO不同所以处理数据不同
080A9BCC   1C38 mov r0, r7<-------------------r0=[r7=0E003FC4]
080A9BCE FDE7F7FF bl 80A97A0h<----------------和第一级+TWO有点出入,把RO更改在里面了,还是处理数据而不同
080A9BD2   4A15 ldr r2, [pc, 54h]   ([000A9C28]=00000D8C)
080A9BD4   18B8 add r0, r7, r2<---------------r0=[r7+r2=0E003FC4+D8C=0E004D50]
080A9BD6   4915 ldr r1, [pc, 54h]   ([000A9C2C]=03005270)
080A9BD8 FFBAF001 bl 80ABB50h<----------------和第一级+TWO差不多,只是因为RO不同所以处理数据不同
080A9BDC   490B ldr r1, [pc, 2Ch]   ([000A9C0C]=03006790)
080A9BDE   22DB mov r2, DBh
080A9BE0   0112 lsl r2, r2, 4h
080A9BE2   18B8 add r0, r7, r2<---------------r0=[r7+r2=0E003FC4+DB*4=0E004D74]
080A9BE4   680B ldr r3, [r1, 0h]
080A9BE6   4669 mov r1, sp
080A9BE8   2218 mov r2, 18h
080A9BEA FCEDF02C bl 80D65C8h
080A9BEE   4668 mov r0, sp
080A9BF0 F9CEF78E bl 8037F90h
080A9BF4   4648 mov r0, r9
080A9BF6 FDE5F7FF bl 80A97C4h
080A9BFA   B006 add sp, 18h
080A9BFC   BC18 pop r3-r4
080A9BFE   4698 mov r8, r3
080A9C00   46A1 mov r9, r4
080A9C02   BCF0 pop r4-r7
080A9C04   BC01 pop r0
080A9C06   4700 bx r0
=======================
注意:03002AB0这里在程序里不能设置中断进入,只能从080A9B4C F804F7FE bl 80A7B58h处跟进.该程序不得随意修改增减,因为有个bx r15 可以说跳转条件很苛刻。

03002AB0开始从存档0E000064读出数据存入03007D68栈里,二者依次加1,数据一一对应,该程序为循环,16次后跳出,而且这一段程序ROM里是没有的!!!
  其中[0E000064+4]=[0E000068]=0A,[0E000064+5]=[0E000069]=20,和起来是200A,如不等,那么第一个存档数据无效,具体就因为080A7962出设置的跳转条件就是200A。
  其中[0E00006C]=C4,[0E00006D]=3F,和起来是3FC4;[0E00006E]=C8,[0E00006F]=0D,和起来是0DC8;则在次进入03002AB0从[3FC4+0E000000]=[0E003FC4]处读出数据存入02020188里,二者依次加1,数据一一对应,该程序仍然循环,循环的次数就是0DC8!!!。处理完以后在0800360处有关于[02020188]数据处理的ARM程序,0DC8还是作为循环的次数,只是在ARM下是-2,很明显ARM加快了处理。得到的9D0907E7是一个比较数。数据0E0000D4存入到地址[3007D64+8],后来因为有值等于FF而使得[3007D64+8]重新存入0。
  080D6442开始当r5=[03007D64],r4=[0E000094]的时候,开始从03007D64栈读出数据存入存档映射区0E000064,二者依次加1,数据一一对应,该程序为循环,16次后跳出,与03002AB0程序有相似之处。
--------------------------
==========================


姓:郑
名:长春
号:无聊之士!
欢迎到网络U盘地址:http://zhengchangchun.ys168.com/ 来~
个人空间http://i.cn.yahoo.com/zhengchangchun2003
[1 楼] | Posted:2007-09-28 20:14| 顶端
无聊之士

头衔:全控全控
该用户目前不在线
级别: 火花会员
编号: 49952
精华: 5
发帖: 432
威望: 25 点
配偶: 单身
火 花 币: 4092 HHB
注册时间:2006-02-10
最后登陆:2024-06-28
艾雷布的骑士(I)
查看作者资料 发送短消息 引用回复这个帖子


==========================
第一级+ONE
----------------
对ROM中085C2A50指针表规划,循环R5=>FF次

0801756C   B5F0 push r4-r7, lr
0801756E   2500 mov r5, 0h
08017570   4F09 ldr r7, [pc, 24h]   ([00017598]=085C2A50)
08017572   26FF mov r6, FFh
08017574   1C28 mov r0, r5
08017576   4030 and r0, r6
08017578   0080 lsl r0, r0, 2h
0801757A   19C0 add r0, r0, r7
0801757C   6804 ldr r4, [r0, 0h]
0801757E   2C00 cmp r4, 0h
08017580   D003 beq 801758Ah
08017582   1C20 mov r0, r4
08017584 F80AF000 bl 801759Ch<-------------指针表规划具体程序,没什么可研究的.就是把数据清零.
08017588   72E5 strb r5, [r4, Bh]
0801758A   3501 add r5, 1h
0801758C   2DFF cmp r5, FFh
0801758E   DDF1 ble 8017574h
08017590   BCF0 pop r4-r7
08017592   BC01 pop r0
08017594   4700 bx r0
=====================
人物数据为什么是31的能力上限
080AA1AC   B5F0 push r4-r7, lr
080AA1AE   4647 mov r7, r8
080AA1B0   B480 push r7
080AA1B2   B089 sub sp, 24h
080AA1B4   1C0C mov r4, r1
080AA1B6   498E ldr r1, [pc, 238h]   ([000AA3F0]=03006790)
080AA1B8   680B ldr r3, [r1, 0h]
080AA1BA   4669 mov r1, sp
080AA1BC   2224 mov r2, 24h
080AA1BE FA03F02C bl 80D65C8h<----ROM中0E004010数据读出到030077D40栈,二者依次加1(升序),数据一一对应,该程序为循环,24H次后跳出
080AA1C2   4668 mov r0, sp<-----------030077D40栈地址返回
080AA1C4   7D00 ldrb r0, [r0, 14h]<---读取030077D40+14H栈地址数据,实际上就是处理0E004024处的数据,例:这里第一个是0F为伊弗列姆
080AA1C6 FFB9F76E bl 801913Ch<---当R0不等于0则得出R0=8858288+r0*34,这是一个与ROM数据合成地址;当R0不等于0则R0=0,合成地址没有
------
角色篇
地址计算公式
(角色代码-1)X34+8582BC=(角色代码)X34+858288
-------------------------------------------
080AA1CA   6020 str r0, [r4, 0h]<---第一次处理R4=202BE48
080AA1CC   4668 mov r0, sp<-----------030077D40栈地址返回
080AA1CE   7800 ldrb r0, [r0, 0h]<-----------读取030077D40H栈地址数据,实际上就是处理0E004010处的数据
080AA1D0   0640 lsl r0, r0, 19h
080AA1D2   0E40 lsr r0, r0, 19h<--------屏蔽前25位,保留后7位
080AA1D4 FFA2F76E bl 801911Ch
------
职业篇
地址计算公式
(职业代码-1)X54+85B6BC=(职业代码)X54+85B668
-------------------------------------------
080AA1D8   6060 str r0, [r4, 4h]<---第一次处理[R4+4=202BE48+4]=[0202BE4C]
080AA1DA   4668 mov r0, sp<-----------030077D40栈地址返回
080AA1DC   8800 ldrh r0, [r0, 0h]<-----------读取030077D40H栈地址数据,实际上就是处理0E004011~0E004010处的数据
080AA1DE   0500 lsl r0, r0, 14h
080AA1E0   0EC0 lsr r0, r0, 1Bh
080AA1E2   7220 strb r0, [r4, 8h]<--------前进20位,后退27位,即级别只用了5位2进制表示,最高31........
080AA1E4   9800 ldr r0, [sp, 0h]
080AA1E6   0340 lsl r0, r0, Dh
080AA1E8   0E43 lsr r3, r0, 19h
080AA1EA   7263 strb r3, [r4, 9h]<--------前进13位,后退25位,即经验只用13~19位共7位2进制表示,最高255........
080AA1EC   4668 mov r0, sp
080AA1EE   8840 ldrh r0, [r0, 2h]
080AA1F0   05C0 lsl r0, r0, 17h
080AA1F2   0E80 lsr r0, r0, 1Ah
080AA1F4   7420 strb r0, [r4, 10h]<--------前进23位,后退26位,即X坐标只用7~9位共3位2进制表示,最高7?........
080AA1F6   4668 mov r0, sp
080AA1F8   78C0 ldrb r0, [r0, 3h]
080AA1FA   0640 lsl r0, r0, 19h
080AA1FC   0E80 lsr r0, r0, 1Ah
080AA1FE   7460 strb r0, [r4, 11h]<--------即Y坐标,同X坐标处理
080AA200   9801 ldr r0, [sp, 4h]
080AA202   0380 lsl r0, r0, Eh
080AA204   0E80 lsr r0, r0, 1Ah
080AA206   74A0 strb r0, [r4, 12h]<--------前进14位,后退26位,即HP只用17~12位共6位2进制表示,最高63........
080AA208   4668 mov r0, sp
080AA20A   7980 ldrb r0, [r0, 6h]
080AA20C   0640 lsl r0, r0, 19h
080AA20E   0EC0 lsr r0, r0, 1Bh
080AA210   7520 strb r0, [r4, 14h]<--------前进25位,后退27位,即力量只用7~3位共5位2进制表示,最高31........
080AA212   4668 mov r0, sp
080AA214   88C0 ldrh r0, [r0, 6h]
080AA216   0500 lsl r0, r0, 14h
080AA218   0EC0 lsr r0, r0, 1Bh
080AA21A   7560 strb r0, [r4, 15h]<--------技术,同力量处理
080AA21C   4668 mov r0, sp
080AA21E   79C1 ldrb r1, [r0, 7h]
080AA220   0909 lsr r1, r1, 4h
080AA222   7A00 ldrb r0, [r0, 8h]
080AA224   2501 mov r5, 1h
080AA226   4028 and r0, r5
080AA228   0100 lsl r0, r0, 4h
080AA22A   4308 orr r0, r1
080AA22C   75A0 strb r0, [r4, 16h]<------速度,同力量处理,但因为数据读取和位问题,所以组合处理,算法最终目的实际就是将数据还原
080AA22E   4668 mov r0, sp
080AA230   7A00 ldrb r0, [r0, 8h]
080AA232   0680 lsl r0, r0, 1Ah
080AA234   0EC0 lsr r0, r0, 1Bh
080AA236   75E0 strb r0, [r4, 17h]<--------守备,同力量处理
080AA238   4668 mov r0, sp
080AA23A   8900 ldrh r0, [r0, 8h]
080AA23C   0540 lsl r0, r0, 15h
080AA23E   0EC0 lsr r0, r0, 1Bh
080AA240   7620 strb r0, [r4, 18h]<--------防御,同力量处理
080AA242   4668 mov r0, sp
080AA244   7A40 ldrb r0, [r0, 9h]
080AA246   08C0 lsr r0, r0, 3h
080AA248   7660 strb r0, [r4, 19h]<------运气,同速度处理,但因为数据读取和位问题,所以组合处理,算法最终目的实际就是将数据还原
080AA24A   4668 mov r0, sp
080AA24C   7A80 ldrb r0, [r0, Ah]
080AA24E   06C0 lsl r0, r0, 1Bh
080AA250   0EC0 lsr r0, r0, 1Bh
080AA252   76A0 strb r0, [r4, 1Ah]<------体格(附加值)
080AA254   4668 mov r0, sp
080AA256   8940 ldrh r0, [r0, Ah]
080AA258   0580 lsl r0, r0, 16h
080AA25A   0EC0 lsr r0, r0, 1Bh
080AA25C   7760 strb r0, [r4, 1Dh]<------同行人物
080AA25E   4668 mov r0, sp
080AA260   7AC1 ldrb r1, [r0, Bh]
080AA262   0889 lsr r1, r1, 2h
080AA264   7B00 ldrb r0, [r0, Ch]
080AA266   0180 lsl r0, r0, 6h
080AA268   4308 orr r0, r1
080AA26A   83E0 strh r0, [r4, 1Eh]<------第一武器\物品R4=202BE48
080AA26C   9803 ldr r0, [sp, Ch]
080AA26E   0280 lsl r0, r0, Ah
080AA270   0C80 lsr r0, r0, 12h
080AA272   8420 strh r0, [r4, 20h]<------第二武器\物品
080AA274   4668 mov r0, sp
080AA276   89C2 ldrh r2, [r0, Eh]
080AA278   0992 lsr r2, r2, 6h
080AA27A   7C00 ldrb r0, [r0, 10h]
080AA27C   210F mov r1, Fh
080AA27E   4008 and r0, r1
080AA280   0280 lsl r0, r0, Ah
080AA282   4310 orr r0, r2
080AA284   8460 strh r0, [r4, 22h]<------第三武器\物品
080AA286   9804 ldr r0, [sp, 10h]
080AA288   0380 lsl r0, r0, Eh
080AA28A   0C80 lsr r0, r0, 12h
080AA28C   84A0 strh r0, [r4, 24h]<------第四武器\物品
080AA28E   4668 mov r0, sp
080AA290   8A40 ldrh r0, [r0, 12h]
080AA292   0880 lsr r0, r0, 2h
080AA294   84E0 strh r0, [r4, 26h]<------第五武器\物品
080AA296   2B63 cmp r3, 63h
080AA298   D901 bls 80AA29Eh<--------经验与99比较[低于或同于(无符号)]
080AA29A   20FF mov r0, FFh<------大于99则得FF,这可以使得"经验升级系统"不执行的跳出条件
080AA29C   7260 strb r0, [r4, 9h]<--------R4=202BE48
080AA29E   2000 mov r0, 0h
080AA2A0   60E0 str r0, [r4, Ch]<-----未知
080AA2A2   4668 mov r0, sp
080AA2A4   78C1 ldrb r1, [r0, 3h]
080AA2A6   09C9 lsr r1, r1, 7h<--------处理0E004013的数据,只保留第8位
080AA2A8   8880 ldrh r0, [r0, 4h]<--------处理0E004015~0E004014的数据,只保留后12位
080AA2AA   4A52 ldr r2, [pc, 148h]   ([000AA3F4]=00000FFF)
080AA2AC   4010 and r0, r2
080AA2AE   0040 lsl r0, r0, 1h<------保留后12位前移一位,在与处理的0E004013的数据,只保留的第8位求或,得到13位数据
080AA2B0   4308 orr r0, r1
080AA2B2   4028 and r0, r5<-----------与1求与
080AA2B4   2800 cmp r0, 0h
080AA2B6   D001 beq 80AA2BCh
080AA2B8   2005 mov r0, 5h
080AA2BA   60E0 str r0, [r4, Ch]<-----未知
080AA2BC   4668 mov r0, sp
080AA2BE   8880 ldrh r0, [r0, 4h]<--------处理0E004015~0E004014的数据,只保留后12位
080AA2C0   4010 and r0, r2
080AA2C2   0040 lsl r0, r0, 1h
080AA2C4   2102 mov r1, 2h<-----------与2求与
080AA2C6   4008 and r0, r1
080AA2C8   2800 cmp r0, 0h
080AA2CA   D003 beq 80AA2D4h<-------男主角的反正是不跳了,因为R0=2
080AA2CC   68E0 ldr r0, [r4, Ch]
080AA2CE   2109 mov r1, 9h
080AA2D0   4308 orr r0, r1
080AA2D2   60E0 str r0, [r4, Ch]<-------R0=9
080AA2D4   4668 mov r0, sp
080AA2D6   8880 ldrh r0, [r0, 4h]<--------处理0E004015~0E004014的数据,只保留后12位
080AA2D8   4010 and r0, r2
080AA2DA   0040 lsl r0, r0, 1h
080AA2DC   2104 mov r1, 4h<-----------与4求与
080AA2DE   4008 and r0, r1
080AA2E0   2800 cmp r0, 0h
080AA2E2   D004 beq 80AA2EEh
080AA2E4   68E0 ldr r0, [r4, Ch]
080AA2E6   2180 mov r1, 80h
080AA2E8   01C9 lsl r1, r1, 7h
080AA2EA   4308 orr r0, r1<-----------与80求或
080AA2EC   60E0 str r0, [r4, Ch]
080AA2EE   4668 mov r0, sp
080AA2F0   8880 ldrh r0, [r0, 4h]
080AA2F2   4010 and r0, r2
080AA2F4   0040 lsl r0, r0, 1h
080AA2F6   2108 mov r1, 8h<-----------与8求与
080AA2F8   4008 and r0, r1
080AA2FA   2800 cmp r0, 0h
080AA2FC   D004 beq 80AA308h
080AA2FE   68E0 ldr r0, [r4, Ch]
080AA300   2180 mov r1, 80h
080AA302   0209 lsl r1, r1, 8h
080AA304   4308 orr r0, r1<-----------与80求或
080AA306   60E0 str r0, [r4, Ch]
080AA308   4668 mov r0, sp
080AA30A   8880 ldrh r0, [r0, 4h]
080AA30C   4010 and r0, r2
080AA30E   0040 lsl r0, r0, 1h
080AA310   2110 mov r1, 10h<-----------与10求与
080AA312   4008 and r0, r1
080AA314   2800 cmp r0, 0h
080AA316   D004 beq 80AA322h
080AA318   68E0 ldr r0, [r4, Ch]
080AA31A   2180 mov r1, 80h
080AA31C   0189 lsl r1, r1, 6h
080AA31E   4308 orr r0, r1<-----------与80求或
080AA320   60E0 str r0, [r4, Ch]
080AA322   4668 mov r0, sp
080AA324   8880 ldrh r0, [r0, 4h]
080AA326   4010 and r0, r2
080AA328   0040 lsl r0, r0, 1h
080AA32A   2120 mov r1, 20h<-----------与20求与
080AA32C   4008 and r0, r1
080AA32E   2800 cmp r0, 0h
080AA330   D004 beq 80AA33Ch
080AA332   68E0 ldr r0, [r4, Ch]
080AA334   2180 mov r1, 80h
080AA336   0249 lsl r1, r1, 9h
080AA338   4308 orr r0, r1<-----------与80求或
080AA33A   60E0 str r0, [r4, Ch]
080AA33C   4668 mov r0, sp
080AA33E   8880 ldrh r0, [r0, 4h]
080AA340   4010 and r0, r2
080AA342   0040 lsl r0, r0, 1h
080AA344   2140 mov r1, 40h<-----------与40求与
080AA346   4008 and r0, r1
080AA348   2800 cmp r0, 0h
080AA34A   D004 beq 80AA356h
080AA34C   68E0 ldr r0, [r4, Ch]
080AA34E   2180 mov r1, 80h
080AA350   0489 lsl r1, r1, 12h
080AA352   4308 orr r0, r1<-----------与80求或
080AA354   60E0 str r0, [r4, Ch]
080AA356   4668 mov r0, sp
080AA358   8880 ldrh r0, [r0, 4h]
080AA35A   4010 and r0, r2
080AA35C   0040 lsl r0, r0, 1h
080AA35E   2180 mov r1, 80h<-----------与80求与
080AA360   4008 and r0, r1
080AA362   2800 cmp r0, 0h
080AA364   D004 beq 80AA370h
080AA366   68E0 ldr r0, [r4, Ch]
080AA368   2180 mov r1, 80h
080AA36A   0389 lsl r1, r1, Eh
080AA36C   4308 orr r0, r1<-----------与80求或
080AA36E   60E0 str r0, [r4, Ch]<-----未知终于结束,共与1,2,4,8,10,20,40,80比较,就只是为了改变[r4, Ch]的数据

080AA370   2200 mov r2, 0h
080AA372   1C27 mov r7, r4<--------R4=202BE48
080AA374   3732 add r7, 32h<-------R7=[R4+32=0202BE48+32=0202BE7A]
080AA376   466E mov r6, sp
080AA378   361D add r6, 1Dh<-------R6=[SP+1D=03007D40+1D=03007D5D]
080AA37A   2039 mov r0, 39h
080AA37C   1900 add r0, r0, r4<----R0=[R4+39=0202BE48+39=0202BE81]
080AA37E   4680 mov r8, r0<--------R8=[0202BE81]
080AA380   1C25 mov r5, r4
080AA382   3528 add r5, 28h<-------R5=[R4+28=0202BE48+28=0202BE70]
080AA384   466B mov r3, sp
080AA386   3315 add r3, 15h<-------R3=[SP+15=03007D40+15=03007D55]
080AA388   18A8 add r0, r5, r2
080AA38A   1899 add r1, r3, r2
080AA38C   7809 ldrb r1, [r1, 0h]
080AA38E   7001 strb r1, [r0, 0h]
080AA390   3201 add r2, 1h
080AA392   2A07 cmp r2, 7h
080AA394   DDF8 ble 80AA388h<-------规划8种武器的熟练度循环
---------------------------
0202BE70 xx     剑熟练度
0202BE71 xx     枪熟练度
0202BE72 xx     斧熟练度
0202BE73 xx     弓熟练度
0202BE74 xx     杖熟练度
0202BE75 xx     理熟练度
0202BE76 xx     光熟练度
0202BE77 xx     暗熟练度
----------------------------
080AA396   2200 mov r2, 0h
080AA398   1C3D mov r5, r7
080AA39A   1C33 mov r3, r6
080AA39C   18A8 add r0, r5, r2
080AA39E   1899 add r1, r3, r2
080AA3A0   7809 ldrb r1, [r1, 0h]
080AA3A2   7001 strb r1, [r0, 0h]
080AA3A4   3201 add r2, 1h
080AA3A6   2A06 cmp r2, 6h
080AA3A8   DDF8 ble 80AA39Ch<-------规划7个支援人物循环
-------------------------
0202BE7A xx    第一人
0202BE7B xx    第二人
0202BE7C xx    第三人
0202BE7D xx    第四人
0202BE7E xx    第五人
0202BE7F xx     第六人
0202BE80 xx     第七人
-------------------------
080AA3AA   1C20 mov r0, r4
080AA3AC FD7AF76E bl 8018EA4h<------看第二级
080AA3B0   1C01 mov r1, r0
080AA3B2   1C20 mov r0, r4
080AA3B4 FE44F76E bl 8019040h<------看第二级
080AA3B8   2000 mov r0, 0h
080AA3BA   4641 mov r1, r8
080AA3BC   7008 strb r0, [r1, 0h]
080AA3BE   7A60 ldrb r0, [r4, 9h]<--------经验处理
080AA3C0   287F cmp r0, 7Fh
080AA3C2   D101 bne 80AA3C8h
080AA3C4   20FF mov r0, FFh
080AA3C6   7260 strb r0, [r4, 9h]
080AA3C8   7C21 ldrb r1, [r4, 10h]该人物的地图坐标(XY轴)?
080AA3CA   2010 mov r0, 10h
080AA3CC   5620 ldrsb r0, [r4, r0]该人物的地图坐标(X轴)?
080AA3CE   283F cmp r0, 3Fh
080AA3D0   D101 bne 80AA3D6h
080AA3D2   20FF mov r0, FFh
080AA3D4   7420 strb r0, [r4, 10h]
080AA3D6   7C61 ldrb r1, [r4, 11h]该人物的地图坐标(XY轴)?
080AA3D8   2011 mov r0, 11h
080AA3DA   5620 ldrsb r0, [r4, r0]该人物的地图坐标(Y轴)?
080AA3DC   283F cmp r0, 3Fh
080AA3DE   D101 bne 80AA3E4h
080AA3E0   20FF mov r0, FFh
080AA3E2   7460 strb r0, [r4, 11h]
080AA3E4   B009 add sp, 24h
080AA3E6   BC08 pop r3
080AA3E8   4698 mov r8, r3
080AA3EA   BCF0 pop r4-r7
080AA3EC   BC01 pop r0
080AA3EE   4700 bx r0<---------一个人判定完毕,返回
--------------------
--------------------


姓:郑
名:长春
号:无聊之士!
欢迎到网络U盘地址:http://zhengchangchun.ys168.com/ 来~
个人空间http://i.cn.yahoo.com/zhengchangchun2003
[2 楼] | Posted:2007-09-28 20:16| 顶端
无聊之士

头衔:全控全控
该用户目前不在线
级别: 火花会员
编号: 49952
精华: 5
发帖: 432
威望: 25 点
配偶: 单身
火 花 币: 4092 HHB
注册时间:2006-02-10
最后登陆:2024-06-28
艾雷布的骑士(I)
查看作者资料 发送短消息 引用回复这个帖子


====================
第一级+TWO

080AA418   B500 push , lr
080AA41A   B082 sub sp, 8h
080AA41C   4905 ldr r1, [pc, 14h]   ([000AA434]=03006790)
080AA41E   680B ldr r3, [r1, 0h]<------R3=03002AB1
080AA420   4669 mov r1, sp<---------sp=03007D70
080AA422   2208 mov r2, 8h
080AA424 F8D0F02C bl 80D65C8h<-----从ROM中0E00473C读出数据到03007D70,还是一一对应.080AA422   2208 mov r2, 8h就是循环次数.
080AA428   4668 mov r0, sp
080AA42A FBF1F001 bl 80ABC10h<----可能是读出的数据处理.?
080AA42E   B002 add sp, 8h
080AA430   BC01 pop r0
080AA432   4700 bx r0
=====================

第二级
-------------
08018EA4   B510 push r4, lr
08018EA6   1C04 mov r4, r0
08018EA8 FD12F7FD bl 80168D0h<----------五个(武器\物品)判定顺位
08018EAC   0400 lsl r0, r0, 10h
08018EAE   0C00 lsr r0, r0, 10h
08018EB0 F972F7FD bl 8016198h<--------武器的第0C位数据判定,0C位=附加属性
08018EB4   1C01 mov r1, r0
08018EB6   2012 mov r0, 12h
08018EB8   5620 ldrsb r0, [r4, r0]
08018EBA   1840 add r0, r0, r1
08018EBC   BC10 pop r4
08018EBE   BC02 pop r1
08018EC0   4708 bx r1
-----------------
08019040   B530 push r4-r5, lr
08019042   1C05 mov r5, r0
08019044   74E9 strb r1, [r5, 13h]
08019046   2413 mov r4, 13h
08019048   572C ldrsb r4, [r5, r4]
0801904A FC41F7FD bl 80168D0h<----------五个(武器\物品)判定顺位
0801904E   0400 lsl r0, r0, 10h
08019050   0C00 lsr r0, r0, 10h
08019052 F8A1F7FD bl 8016198h<--------武器的第0C位数据判定,0C位=附加属性
08019056   2112 mov r1, 12h
08019058   5669 ldrsb r1, [r5, r1]
0801905A   1809 add r1, r1, r0
0801905C   428C cmp r4, r1
0801905E   DD0A ble 8019076h
08019060   1C28 mov r0, r5
08019062 FC35F7FD bl 80168D0h<----------五个(武器\物品)判定顺位
08019066   0400 lsl r0, r0, 10h
08019068   0C00 lsr r0, r0, 10h
0801906A F895F7FD bl 8016198h<--------武器的第0C位数据判定,0C位=附加属性
0801906E   2112 mov r1, 12h
08019070   5669 ldrsb r1, [r5, r1]
08019072   1809 add r1, r1, r0
08019074   74E9 strb r1, [r5, 13h]
08019076   BC30 pop r4-r5
08019078   BC01 pop r0
0801907A   4700 bx r0
--------------------
==================================

终于发完了.........................................................................

如果因为文本太大而打不开,那就真可惜了~~~~~~~~呵呵


姓:郑
名:长春
号:无聊之士!
欢迎到网络U盘地址:http://zhengchangchun.ys168.com/ 来~
个人空间http://i.cn.yahoo.com/zhengchangchun2003
[3 楼] | Posted:2007-09-28 20:21| 顶端
八神太一

头衔:就是你了战斗暴龙兽!就是你了战斗暴龙兽!
该用户目前不在线
级别: 火花会员
编号: 59531
精华: 0
发帖: 148
威望: 0 点
配偶: 单身
火 花 币: 50 HHB
注册时间:2006-08-21
最后登陆:2024-11-22
查看作者资料 发送短消息 引用回复这个帖子


嗯...后面的看得偶头疼~!
其实偶觉得上限可以修改成40,和晓女一样...m(- -)m


咦?签名放错了!其实我不是这样的人!
[4 楼] | Posted:2007-09-28 22:10| 顶端
无聊之士

头衔:全控全控
该用户目前不在线
级别: 火花会员
编号: 49952
精华: 5
发帖: 432
威望: 25 点
配偶: 单身
火 花 币: 4092 HHB
注册时间:2006-02-10
最后登陆:2024-06-28
艾雷布的骑士(I)
查看作者资料 发送短消息 引用回复这个帖子


我看程序看了3天,好不容易把他给解释出来了,现在头都木然了~

终于有个看了回的了,既然你也懂,握个手先~


姓:郑
名:长春
号:无聊之士!
欢迎到网络U盘地址:http://zhengchangchun.ys168.com/ 来~
个人空间http://i.cn.yahoo.com/zhengchangchun2003
[5 楼] | Posted:2007-09-28 22:14| 顶端
八神太一

头衔:就是你了战斗暴龙兽!就是你了战斗暴龙兽!
该用户目前不在线
级别: 火花会员
编号: 59531
精华: 0
发帖: 148
威望: 0 点
配偶: 单身
火 花 币: 50 HHB
注册时间:2006-08-21
最后登陆:2024-11-22
查看作者资料 发送短消息 引用回复这个帖子


早上一早就来看了,像偶这种懒人只能享用一下劳动成果啦~
无聊大有空的话就弄一个修改器什么的吧~


咦?签名放错了!其实我不是这样的人!
[6 楼] | Posted:2007-09-29 07:12| 顶端
桂木弥生

头衔:我永远喜欢老干妈我永远喜欢老干妈
该用户目前不在线
级别: 站务议员
编号: 5
精华: 198
发帖: 43732
威望: 20 点
配偶: 千里孤坟
火 花 币: 61330 HHB
组织纹章:
所属组织: 科莉娅圣教
组织头衔: 至高的圣神
注册时间:2002-11-26
最后登陆:2024-05-27
游戏王国的浪人(I)冥界死徒(I)艾雷布的圣骑士(II)海蓝之钻(II)文字の契约者(II)
查看作者资料 发送短消息 引用回复这个帖子


恩 突破了这上限界限  对同人来说 是很大的成果啊


这样 二转就能真正出现了


老干妈LOVE
[7 楼] | Posted:2007-09-29 09:50| 顶端
Raffin

头衔:重剑无锋,大巧不工重剑无锋,大巧不工
该用户目前不在线
级别: 火花会员
编号: 446
精华: 2
发帖: 9458
威望: 20 点
配偶: 单身
火 花 币: 114889 HHB
注册时间:2002-12-04
最后登陆:2020-05-02
朱红之钻(I)艾雷布的骑士(I)
查看作者资料 发送短消息 引用回复这个帖子


你能不能说得简单点,文章太长。
我改的时候,就是跳过那个把32变成0的处理程序,直接把数据写到纪录电池里,然后reset的时候,人物数据直接从记录电池里面读。
我只做了一个人了。

另外2转和同人的话,主要难度在美工,能修改的火花一大把,能跟踪得也有几个,但能画战斗画面的有几个,就算有,也是工作量很大,最多画几个,画一套不可能。
黄金骑将,神龙骑士,谁去画?


[ 此贴被Raffin在2007-09-29 15:44重新编辑 ]

[8 楼] | Posted:2007-09-29 15:38| 顶端
无聊之士

头衔:全控全控
该用户目前不在线
级别: 火花会员
编号: 49952
精华: 5
发帖: 432
威望: 25 点
配偶: 单身
火 花 币: 4092 HHB
注册时间:2006-02-10
最后登陆:2024-06-28
艾雷布的骑士(I)
查看作者资料 发送短消息 引用回复这个帖子


下面是引用Raffin于2007-09-29 15:38发表的:
你能不能说得简单点,文章太长。
我改的时候,就是跳过那个把32变成0的处理程序,直接把数据写到纪录电池里,然后reset的时候,人物数据直接从记录电池里面读。
我只做了一个人了。

另外2转和同人的话,主要难度在美工,能修改的火花一大把,能跟踪得也有几个,但能画战斗画面的有几个,就算有,也是工作量很大,最多画几个,画一套不可能。
.......

不好意思,我还是要对你说,你那改法不可,因为数据依你的方法修改实际上会造成不可预知的变化,实际上的数据存储我细细的说说吧~
依照伊弗列姆为例子:数据占用存档空间24H(十进是:36)位如下:
01 FA 31 20
01 70 52 4A
A9 C4 00 5C
50 1A 14 1F
C0 41 79 3C
0F 00 B5 00
00 00 00 00
00 50 50 47
12 50 21 40

数据读取的是上面的8个16进一组(注意读出顺序和存入顺序不同之处,你应该把读出的8个16进数据翻译成32位的机器码,比如力量就占用5个机器码,正好表示不超过31!!!接下来的5个机器码就是技术等等,由于数据存在一起,实际上用32位就可以保存8个不超过31的数据呢,而且还多2位的机器码!!!跳过存档的方式并不可取,最好是改变存档方式~我想我能做到的~不过想问问大家到底上限多少合适,毕竟存档空间有限,原来的ROM实际上可以存50(32H)个人呢!!!但是一旦改变存档方式,就意味着数据增加位数,那么为了不影响后面其他数据的空间,只有缩减存档人物的个数是最好方法了......,另外改变存档方式还会对栈地址空间扩大,为了不影响其他数据,还得注意栈地址使用不要溢出.............


姓:郑
名:长春
号:无聊之士!
欢迎到网络U盘地址:http://zhengchangchun.ys168.com/ 来~
个人空间http://i.cn.yahoo.com/zhengchangchun2003
[9 楼] | Posted:2007-10-01 12:57| 顶端
BRUNIA

头衔:太阳月光流星剑!太阳月光流星剑!
该用户目前不在线
级别: 火花会员
编号: 23892
精华: 2
发帖: 408
威望: 10 点
配偶: 单身
火 花 币: 32952 HHB
注册时间:2004-09-08
最后登陆:2014-08-08
艾雷布的骑士(I)
查看作者资料 发送短消息 引用回复这个帖子


不客气的说,文不对题,我看标题以为LZ已经做好补丁了,结果只是程序;不要怪我不厚道,因为这ASM修改真的是没几人感兴趣,所以,最好是拿出现成的东西来。
当然,这其中的千辛万苦我还是有所了解的,不过我自愚认为做修改还是要站在使用者的角度,尽量提供方便。呵呵见笑了,LZ的研究精神在下十分佩服,期待LZ的新进展!


上限最好是42,因为显示条是42象素。


[10 楼] | Posted:2007-10-01 15:44| 顶端
Raffin

头衔:重剑无锋,大巧不工重剑无锋,大巧不工
该用户目前不在线
级别: 火花会员
编号: 446
精华: 2
发帖: 9458
威望: 20 点
配偶: 单身
火 花 币: 114889 HHB
注册时间:2002-12-04
最后登陆:2020-05-02
朱红之钻(I)艾雷布的骑士(I)
查看作者资料 发送短消息 引用回复这个帖子


改变压缩方式的话,工作量太大了,但愿你能弄懂那个存档方式
我记得,记录和中断,都要进行电池读写,但走过的程序却是不同的。

[11 楼] | Posted:2007-10-01 20:46| 顶端
无聊之士

头衔:全控全控
该用户目前不在线
级别: 火花会员
编号: 49952
精华: 5
发帖: 432
威望: 25 点
配偶: 单身
火 花 币: 4092 HHB
注册时间:2006-02-10
最后登陆:2024-06-28
艾雷布的骑士(I)
查看作者资料 发送短消息 引用回复这个帖子


存档方式,我已经知道了~其实就是读档的逆反~!我很清楚怎么存档的~

BRUNIA兄,不客气的说,文不对题,我不同意,我做127上限存档方式都可以呢~
我现在就是问问大家的意见,多少上限合适,以便于我做存档方式程序......
你提供"上限最好是42,因为显示条是42象素。"这一条多谢~

Raffin兄说的没错.改变压缩方式的话,工作量太大了.所以我得考虑好了再做,要不做个半成品就等于白费工夫哦!!!
而且我现在只考虑第一存档,以后的交给大家慢慢研究吧,工作量太大~因为存档和读档要联合修改!
做一个就晕头晕脑的~!!!

另外多谢你的理解~
还有就是我把程序破译了才知道怎么修改,所以就先把研究成果发上来给大家分享嘛~
期待更多致力于修改的人能知道程序的运行,才能做出更合理的修改,用更少的程序步达到更好的效果,我的修改能力你们可以去看看我的修改大全啊~里面的5连击都是我自己附加的程序呢~
相信要拿出实际的修改也能够,只是那不是一朝一夕就能搞定的,哎~~~~~~~~~~~~~~``


[ 此贴被无聊之士在2007-10-02 16:47重新编辑 ]


姓:郑
名:长春
号:无聊之士!
欢迎到网络U盘地址:http://zhengchangchun.ys168.com/ 来~
个人空间http://i.cn.yahoo.com/zhengchangchun2003
[12 楼] | Posted:2007-10-02 16:39| 顶端
如月影二

头衔:暗黑皇子暗黑皇子
该用户目前不在线
级别: 论坛版主
编号: 35949
精华: 1
发帖: 2603
威望: 5 点
配偶: 花影旋岚
火 花 币: 106230 HHB
注册时间:2005-04-19
最后登陆:2024-11-03
朱红之钻(I)
查看作者资料 发送短消息 引用回复这个帖子


很不错的帖 BRUNIA兄说的没错 确实很多人想要现成的东西 不过我觉得只给出程序也好 那样会让有很多人自己去专研学习 让那些只等着吃白食的人也稍微活动一下的好
楼主这种帖再来一百帖我也不嫌多 既然楼主说了 那就暂时不加精好了 我最近也比较忙很少来 请大家见谅了
如果楼主想要加精的时候随时可以向我提出要求 请楼主继续努力


[13 楼] | Posted:2007-10-02 23:11| 顶端
Raffin

头衔:重剑无锋,大巧不工重剑无锋,大巧不工
该用户目前不在线
级别: 火花会员
编号: 446
精华: 2
发帖: 9458
威望: 20 点
配偶: 单身
火 花 币: 114889 HHB
注册时间:2002-12-04
最后登陆:2020-05-02
朱红之钻(I)艾雷布的骑士(I)
查看作者资料 发送短消息 引用回复这个帖子


我自己当初研究的时候,记得读档和存档虽然原理是一样的,但程序的位置是不一样的
要写就全部重写。
我觉得最好的办法就是写入记录电池,因为系统就是这么做的。当然我们要跳过压缩

[14 楼] | Posted:2007-10-03 19:04| 顶端
无聊之士

头衔:全控全控
该用户目前不在线
级别: 火花会员
编号: 49952
精华: 5
发帖: 432
威望: 25 点
配偶: 单身
火 花 币: 4092 HHB
注册时间:2006-02-10
最后登陆:2024-06-28
艾雷布的骑士(I)
查看作者资料 发送短消息 引用回复这个帖子


不压缩的话,程序存入的数据直接就暴标了~直接影响第二存档数据,我看了看SAVE数据,就圣魔来说,最多存入50人,但是当隐藏人物加起来就有43人,实际上我们只有7个人物的空间可以占用,一旦数据扩得太大,直接导致7个人物的空间根本不够43人数据扩充占用,影响的最后还是SAVE数据,我想这也就违背修改的本意,不如说是破坏~!

姓:郑
名:长春
号:无聊之士!
欢迎到网络U盘地址:http://zhengchangchun.ys168.com/ 来~
个人空间http://i.cn.yahoo.com/zhengchangchun2003
[15 楼] | Posted:2007-10-04 13:59| 顶端
无聊之士

头衔:全控全控
该用户目前不在线
级别: 火花会员
编号: 49952
精华: 5
发帖: 432
威望: 25 点
配偶: 单身
火 花 币: 4092 HHB
注册时间:2006-02-10
最后登陆:2024-06-28
艾雷布的骑士(I)
查看作者资料 发送短消息 引用回复这个帖子


这回真真正正的突破了,请看下面~
=======================================================
    以下修改突破31上限的压缩数据程序,我没对该程序做大的修改,所以改变不大,实际上我把移动附加和体格附加分别压为1位和3位了,也就是说使用该程序移动最多加一点,体格最多加3点了,但是HP上限80(最大127~)力技速运守防上限63!
-----------------------------------------------------------------------
目前不知道为什么?建议从塔\遗迹出来的时候不要记录,因为再读取会丢失人员..,但是在大地图记录后读取又能找回,我估计和0E004010+4和+5和+6的数据没处理好有关

程序我更新了下,所有问题已经解决!!!
----------------------------------------------------------------


读档方式

080AA1AC   B5F0 push r4-r7, lr
080AA1AE   4647 mov r7, r8
080AA1B0   B480 push r7
080AA1B2   B089 sub sp, 24h
080AA1B4   1C0C mov r4, r1
080AA1B6   498E ldr r1, [pc, 238h]   ([000AA3F0]=03006790)
080AA1B8   680B ldr r3, [r1, 0h]
080AA1BA   4669 mov r1, sp
080AA1BC   2224 mov r2, 24h
080AA1BE FA03F02C bl 80D65C8h
080AA1C2   4668 mov r0, sp
080AA1C4   7D00 ldrb r0, [r0, 14h]
080AA1C6 FFB9F76E bl 801913Ch
080AA1CA   6020 str r0, [r4, 0h]
080AA1CC   4668 mov r0, sp
080AA1CE   7800 ldrb r0, [r0, 0h]
080AA1D0   0640 lsl r0, r0, 19h
080AA1D2   0E40 lsr r0, r0, 19h
080AA1D4 FFA2F76E bl 801911Ch
080AA1D8   6060 str r0, [r4, 4h]
080AA1DA   4668 mov r0, sp
080AA1DC   8800 ldrh r0, [r0, 0h]
080AA1DE   0500 lsl r0, r0, 14h
080AA1E0   0EC0 lsr r0, r0, 1Bh
080AA1E2   7220 strb r0, [r4, 8h]
080AA1E4   9800 ldr r0, [sp, 0h]
080AA1E6   0340 lsl r0, r0, Dh
080AA1E8   0E43 lsr r3, r0, 19h
080AA1EA   7263 strb r3, [r4, 9h]
开始修改!
080AA1EC   466A mov r2, sp
080AA1EE   8850 ldrh r0, [r2, 2h]
080AA1F0   05C0 lsl r0, r0, 17h
080AA1F2   0E80 lsr r0, r0, 1Ah
080AA1F4   7420 strb r0, [r4, 10h]
080AA1F6   78D0 ldrb r0, [r2, 3h]
080AA1F8   0640 lsl r0, r0, 19h
080AA1FA   0E80 lsr r0, r0, 1Ah
080AA1FC   7460 strb r0, [r4, 11h]
080AA1FE   9801 ldr r0, [sp, 4h]
080AA200   0B00 lsr r0, r0, Ch
080AA202   217F mov r1, 7Fh
080AA204   4001 and r1, r0
080AA206   74A1 strb r1, [r4, 12h]
080AA208   09C0 lsr r0, r0, 7h
080AA20A   2101 mov r1, 1h
080AA20C   4001 and r1, r0
080AA20E   7761 strb r1, [r4, 1Dh]
080AA210   0840 lsr r0, r0, 1h
080AA212   213F mov r1, 3Fh
080AA214   4001 and r1, r0
080AA216   7521 strb r1, [r4, 14h]
080AA218   0981 lsr r1, r0, 6h
080AA21A   7561 strb r1, [r4, 15h]
080AA21C   6890 ldr r0, [r2, 8h]
080AA21E   2216 mov r2, 16h
080AA220   213F mov r1, 3Fh
080AA222   4001 and r1, r0
080AA224   54A1 strb r1, [r4, r2]
080AA226   1C52 add r2, r2, 1h
080AA228   0980 lsr r0, r0, 6h
080AA22A   2A19 cmp r2, 19h
080AA22C   DDF8 ble 80AA220h
080AA22E   2103 mov r1, 3h
080AA230   4001 and r1, r0
080AA232   76A1 strb r1, [r4, 1Ah]
080AA234   2501 mov r5, 1h
080AA236   E012 b 80AA25Eh
080AA238   0000 lsl r0, r0, 0
080AA23A   0000 lsl r0, r0, 0
080AA23C   0000 lsl r0, r0, 0
080AA23E   0000 lsl r0, r0, 0
080AA240   0000 lsl r0, r0, 0
080AA242   0000 lsl r0, r0, 0
080AA244   0000 lsl r0, r0, 0
080AA246   0000 lsl r0, r0, 0
080AA248   0000 lsl r0, r0, 0
080AA24A   0000 lsl r0, r0, 0
080AA24C   0000 lsl r0, r0, 0
080AA24E   0000 lsl r0, r0, 0
080AA250   0000 lsl r0, r0, 0
080AA252   0000 lsl r0, r0, 0
080AA254   0000 lsl r0, r0, 0
080AA256   0000 lsl r0, r0, 0
080AA258   0000 lsl r0, r0, 0
080AA25A   0000 lsl r0, r0, 0
080AA25C   0000 lsl r0, r0, 0
080AA25E   1C01 mov r1, r0
080AA260   4668 mov r0, sp
<-----------结束修改!
080AA262   0889 lsr r1, r1, 2h
080AA264   7B00 ldrb r0, [r0, Ch]
080AA266   0180 lsl r0, r0, 6h
080AA268   4308 orr r0, r1
080AA26A   83E0 strh r0, [r4, 1Eh]
080AA26C   9803 ldr r0, [sp, Ch]
080AA26E   0280 lsl r0, r0, Ah
080AA270   0C80 lsr r0, r0, 12h
080AA272   8420 strh r0, [r4, 20h]
080AA274   4668 mov r0, sp
080AA276   89C2 ldrh r2, [r0, Eh]
080AA278   0992 lsr r2, r2, 6h
080AA27A   7C00 ldrb r0, [r0, 10h]
080AA27C   210F mov r1, Fh
080AA27E   4008 and r0, r1
080AA280   0280 lsl r0, r0, Ah
080AA282   4310 orr r0, r2
080AA284   8460 strh r0, [r4, 22h]
080AA286   9804 ldr r0, [sp, 10h]
080AA288   0380 lsl r0, r0, Eh
080AA28A   0C80 lsr r0, r0, 12h
080AA28C   84A0 strh r0, [r4, 24h]
080AA28E   4668 mov r0, sp
080AA290   8A40 ldrh r0, [r0, 12h]
080AA292   0880 lsr r0, r0, 2h
080AA294   84E0 strh r0, [r4, 26h]
080AA296   2B63 cmp r3, 63h
080AA298   D901 bls 80AA29Eh
080AA29A   20FF mov r0, FFh
080AA29C   7260 strb r0, [r4, 9h]
080AA29E   2000 mov r0, 0h
080AA2A0   60E0 str r0, [r4, Ch]
080AA2A2   4668 mov r0, sp
080AA2A4   78C1 ldrb r1, [r0, 3h]
080AA2A6   09C9 lsr r1, r1, 7h
080AA2A8   8880 ldrh r0, [r0, 4h]
080AA2AA   4A52 ldr r2, [pc, 148h]   ([000AA3F4]=00000FFF)
080AA2AC   4010 and r0, r2
080AA2AE   0040 lsl r0, r0, 1h
080AA2B0   4308 orr r0, r1
080AA2B2   4028 and r0, r5
080AA2B4   2800 cmp r0, 0h
080AA2B6   D001 beq 80AA2BCh
080AA2B8   2005 mov r0, 5h
080AA2BA   60E0 str r0, [r4, Ch]
080AA2BC   4668 mov r0, sp
080AA2BE   8880 ldrh r0, [r0, 4h]
080AA2C0   4010 and r0, r2
080AA2C2   0040 lsl r0, r0, 1h
080AA2C4   2102 mov r1, 2h
080AA2C6   4008 and r0, r1
080AA2C8   2800 cmp r0, 0h
080AA2CA   D003 beq 80AA2D4h
080AA2CC   68E0 ldr r0, [r4, Ch]
080AA2CE   2109 mov r1, 9h
080AA2D0   4308 orr r0, r1
080AA2D2   60E0 str r0, [r4, Ch]
080AA2D4   4668 mov r0, sp
080AA2D6   8880 ldrh r0, [r0, 4h]
080AA2D8   4010 and r0, r2
080AA2DA   0040 lsl r0, r0, 1h
080AA2DC   2104 mov r1, 4h
080AA2DE   4008 and r0, r1
080AA2E0   2800 cmp r0, 0h
080AA2E2   D004 beq 80AA2EEh
080AA2E4   68E0 ldr r0, [r4, Ch]
080AA2E6   2180 mov r1, 80h
080AA2E8   01C9 lsl r1, r1, 7h
080AA2EA   4308 orr r0, r1
080AA2EC   60E0 str r0, [r4, Ch]
080AA2EE   4668 mov r0, sp
080AA2F0   8880 ldrh r0, [r0, 4h]
080AA2F2   4010 and r0, r2
080AA2F4   0040 lsl r0, r0, 1h
080AA2F6   2108 mov r1, 8h
080AA2F8   4008 and r0, r1
080AA2FA   2800 cmp r0, 0h
080AA2FC   D004 beq 80AA308h
080AA2FE   68E0 ldr r0, [r4, Ch]
080AA300   2180 mov r1, 80h
080AA302   0209 lsl r1, r1, 8h
080AA304   4308 orr r0, r1
080AA306   60E0 str r0, [r4, Ch]
080AA308   4668 mov r0, sp
080AA30A   8880 ldrh r0, [r0, 4h]
080AA30A   8880 ldrh r0, [r0, 4h]
080AA30C   4010 and r0, r2
080AA30E   0040 lsl r0, r0, 1h
080AA310   2110 mov r1, 10h
080AA312   4008 and r0, r1
080AA314   2800 cmp r0, 0h
080AA316   D004 beq 80AA322h
080AA318   68E0 ldr r0, [r4, Ch]
080AA31A   2180 mov r1, 80h
080AA31C   0189 lsl r1, r1, 6h
080AA31E   4308 orr r0, r1
080AA320   60E0 str r0, [r4, Ch]
080AA322   4668 mov r0, sp
080AA324   8880 ldrh r0, [r0, 4h]
080AA326   4010 and r0, r2
080AA328   0040 lsl r0, r0, 1h
080AA32A   2120 mov r1, 20h
080AA32C   4008 and r0, r1
080AA32E   2800 cmp r0, 0h
080AA330   D004 beq 80AA33Ch
080AA332   68E0 ldr r0, [r4, Ch]
080AA334   2180 mov r1, 80h
080AA336   0249 lsl r1, r1, 9h
080AA338   4308 orr r0, r1
080AA33A   60E0 str r0, [r4, Ch]
080AA33C   4668 mov r0, sp
080AA33E   8880 ldrh r0, [r0, 4h]
080AA340   4010 and r0, r2
080AA342   0040 lsl r0, r0, 1h
080AA344   2140 mov r1, 40h
080AA346   4008 and r0, r1
080AA348   2800 cmp r0, 0h
080AA34A   D004 beq 80AA356h
080AA34C   68E0 ldr r0, [r4, Ch]
080AA34E   2180 mov r1, 80h
080AA350   0489 lsl r1, r1, 12h
080AA352   4308 orr r0, r1
080AA354   60E0 str r0, [r4, Ch]
080AA356   4668 mov r0, sp
080AA358   8880 ldrh r0, [r0, 4h]
080AA35A   4010 and r0, r2
080AA35C   0040 lsl r0, r0, 1h
080AA35E   2180 mov r1, 80h
080AA360   4008 and r0, r1
080AA362   2800 cmp r0, 0h
080AA364   D004 beq 80AA370h
080AA366   68E0 ldr r0, [r4, Ch]
080AA368   2180 mov r1, 80h
080AA36A   0389 lsl r1, r1, Eh
080AA36C   4308 orr r0, r1
080AA36E   60E0 str r0, [r4, Ch]
080AA370   2200 mov r2, 0h
080AA372   1C27 mov r7, r4
080AA374   3732 add r7, 32h
080AA376   466E mov r6, sp
080AA378   361D add r6, 1Dh
080AA37A   2039 mov r0, 39h
080AA37C   1900 add r0, r0, r4
080AA37E   4680 mov r8, r0
080AA380   1C25 mov r5, r4
080AA382   3528 add r5, 28h
080AA384   466B mov r3, sp
080AA386   3315 add r3, 15h
080AA388   18A8 add r0, r5, r2
080AA38A   1899 add r1, r3, r2
080AA38C   7809 ldrb r1, [r1, 0h]
080AA38E   7001 strb r1, [r0, 0h]
080AA390   3201 add r2, 1h
080AA392   2A07 cmp r2, 7h
080AA394   DDF8 ble 80AA388h
080AA396   2200 mov r2, 0h
080AA398   1C3D mov r5, r7
080AA39A   1C33 mov r3, r6
080AA39C   18A8 add r0, r5, r2
080AA39E   1899 add r1, r3, r2
080AA3A0   7809 ldrb r1, [r1, 0h]
080AA3A2   7001 strb r1, [r0, 0h]
080AA3A4   3201 add r2, 1h
080AA3A6   2A06 cmp r2, 6h
080AA3A8   DDF8 ble 80AA39Ch
080AA3AA   1C20 mov r0, r4
080AA3AC FD7AF76E bl 8018EA4h
080AA3B0   1C01 mov r1, r0
080AA3B2   1C20 mov r0, r4
080AA3B4 FE44F76E bl 8019040h
080AA3B8   2000 mov r0, 0h
080AA3BA   4641 mov r1, r8
080AA3BC   7008 strb r0, [r1, 0h]
080AA3BE   7A60 ldrb r0, [r4, 9h]
080AA3C0   287F cmp r0, 7Fh
080AA3C2   D101 bne 80AA3C8h
080AA3C4   20FF mov r0, FFh
080AA3C6   7260 strb r0, [r4, 9h]
080AA3C8   7C21 ldrb r1, [r4, 10h]
080AA3CA   2010 mov r0, 10h
080AA3CC   5620 ldrsb r0, [r4, r0]
080AA3CE   283F cmp r0, 3Fh
080AA3D0   D101 bne 80AA3D6h
080AA3D2   20FF mov r0, FFh
080AA3D4   7420 strb r0, [r4, 10h]
080AA3D6   7C61 ldrb r1, [r4, 11h]
080AA3D8   2011 mov r0, 11h
080AA3DA   5620 ldrsb r0, [r4, r0]
080AA3DC   283F cmp r0, 3Fh
080AA3DE   D101 bne 80AA3E4h
080AA3E0   20FF mov r0, FFh
080AA3E2   7460 strb r0, [r4, 11h]
080AA3E4   B009 add sp, 24h
080AA3E6   BC08 pop r3
080AA3E8   4698 mov r8, r3
080AA3EA   BCF0 pop r4-r7
080AA3EC   BC01 pop r0
080AA3EE   4700 bx r0
080AA3F0   6790 str r0, [r2, 78h]
080AA3F2   0300 lsl r0, r0, Ch<--------屏蔽数据,栈地址
080AA3F4   0FFF lsr r7, r7, 1Fh
080AA3F6   0000 lsl r0, r0, 0<--------屏蔽数据,00000FFF

-------------------------------

存档方式修改
080A9D54   B5F0 push r4-r7, lr
080A9D56   4657 mov r7, r10
080A9D58   464E mov r6, r9
080A9D5A   4645 mov r5, r8
080A9D5C   B4E0 push r5-r7
080A9D5E   B09C sub sp, 70h
080A9D60   1C07 mov r7, r0
080A9D62   911B str r1, [sp, 6Ch]
080A9D64   4669 mov r1, sp
080A9D66   6838 ldr r0, [r7, 0h]
080A9D68   7900 ldrb r0, [r0, 4h]
080A9D6A   7508 strb r0, [r1, 14h]
080A9D6C   466B mov r3, sp
080A9D6E   6878 ldr r0, [r7, 4h]
080A9D70   7901 ldrb r1, [r0, 4h]
080A9D72   207F mov r0, 7Fh
080A9D74   4001 and r1, r0
080A9D76   781A ldrb r2, [r3, 0h]
080A9D78   2580 mov r5, 80h
080A9D7A   426D neg r5, r5
080A9D7C   1C28 mov r0, r5
080A9D7E   4010 and r0, r2
080A9D80   4308 orr r0, r1
080A9D82   7018 strb r0, [r3, 0h]
080A9D84   683C ldr r4, [r7, 0h]
080A9D86   2C00 cmp r4, 0h
080A9D88   D10A bne 80A9DA0h
080A9D8A   AF09 add r7, sp, 24h
080A9D8C   1C38 mov r0, r7
080A9D8E FC05F76D bl 801759Ch
080A9D92   4668 mov r0, sp
080A9D94   7504 strb r4, [r0, 14h]
080A9D96   466A mov r2, sp
080A9D98   7811 ldrb r1, [r2, 0h]
080A9D9A   1C28 mov r0, r5
080A9D9C   4008 and r0, r1
080A9D9E   7010 strb r0, [r2, 0h]
080A9DA0   466C mov r4, sp
080A9DA2   2108 mov r1, 8h
080A9DA4   5679 ldrsb r1, [r7, r1]
080A9DA6   201F mov r0, 1Fh
080A9DA8   4681 mov r9, r0
080A9DAA   4648 mov r0, r9
080A9DAC   4001 and r1, r0
080A9DAE   01C9 lsl r1, r1, 7h
080A9DB0   8822 ldrh r2, [r4, 0h]
080A9DB2   4BEB ldr r3, [pc, 3ACh]   ([000AA160]=FFFFF07F)
080A9DB4   1C18 mov r0, r3
080A9DB6   4010 and r0, r2
080A9DB8   4308 orr r0, r1
080A9DBA   8020 strh r0, [r4, 0h]
080A9DBC   7A7A ldrb r2, [r7, 9h]
080A9DBE   217F mov r1, 7Fh
080A9DC0   468A mov r10, r1
080A9DC2   400A and r2, r1
080A9DC4   0312 lsl r2, r2, Ch
080A9DC6   9800 ldr r0, [sp, 0h]
080A9DC8   49E6 ldr r1, [pc, 398h]   ([000AA164]=FFF80FFF)
080A9DCA   4008 and r0, r1
080A9DCC   4310 orr r0, r2
080A9DCE   9000 str r0, [sp, 0h]
080A9DD0   2110 mov r1, 10h
080A9DD2   5679 ldrsb r1, [r7, r1]
080A9DD4   203F mov r0, 3Fh
080A9DD6   4001 and r1, r0
080A9DD8   00C9 lsl r1, r1, 3h
080A9DDA   8862 ldrh r2, [r4, 2h]
080A9DDC   48E2 ldr r0, [pc, 388h]   ([000AA168]=FFFFFE07)
080A9DDE   4010 and r0, r2
080A9DE0   4308 orr r0, r1
080A9DE2   8060 strh r0, [r4, 2h]
080A9DE4   2111 mov r1, 11h
080A9DE6   5679 ldrsb r1, [r7, r1]
080A9DE8   203F mov r0, 3Fh
080A9DEA   4001 and r1, r0
080A9DEC   0049 lsl r1, r1, 1h
080A9DEE   78E2 ldrb r2, [r4, 3h]
080A9DF0   207F mov r0, 7Fh
080A9DF2   4240 neg r0, r0
080A9DF4   4010 and r0, r2
080A9DF6   4308 orr r0, r1
080A9DF8   70E0 strb r0, [r4, 3h]
080A9DFA   2212 mov r2, 12h
080A9DFC   56BA ldrsb r2, [r7, r2]
080A9DFE   267F mov r6, 7Fh
080A9E00   4032 and r2, r6
080A9E02   0312 lsl r2, r2, Ch
080A9E04   9801 ldr r0, [sp, 4h]
开始修改!

080A9E06   0500 lsl r0, r0, 14h
080A9E08   0D00 lsr r0, r0, 14h
080A9E0A   4310 orr r0, r2
080A9E0C   0000 lsl r0, r0, 0
080A9E0E   0000 lsl r0, r0, 0
080A9E10   211D mov r1, 1Dh
080A9E12   5679 ldrsb r1, [r7, r1]
080A9E14   2201 mov r2, 1h
080A9E16   4011 and r1, r2
080A9E18   04C9 lsl r1, r1, 13h
080A9E1A   4308 orr r0, r1
080A9E1C   2114 mov r1, 14h
080A9E1E   5679 ldrsb r1, [r7, r1]
080A9E20   263F mov r6, 3Fh
080A9E22   4031 and r1, r6
080A9E24   0509 lsl r1, r1, 14h
080A9E26   4308 orr r0, r1
080A9E28   2215 mov r2, 15h
080A9E2A   56B9 ldrsb r1, [r7, r2]
080A9E2C   4031 and r1, r6
080A9E2E   0689 lsl r1, r1, 1Ah
080A9E30   4308 orr r0, r1
080A9E32   6060 str r0, [r4, 4h]
080A9E34   2000 mov r0, 0h
080A9E36   2500 mov r5, 0h
080A9E38   E000 b 80A9E3Ch
080A9E3A   4308 orr r0, r1
080A9E3C   1C52 add r2, r2, 1h
080A9E3E   56B9 ldrsb r1, [r7, r2]
080A9E40   40A9 lsl r1, r5
080A9E42   3506 add r5, 6h
080A9E44   2A19 cmp r2, 19h
080A9E46   DDF8 ble 80A9E3Ah
080A9E48   2503 mov r5, 3h
080A9E4A   56B9 ldrsb r1, [r7, r2]
080A9E4C   4029 and r1, r5
080A9E4E   0609 lsl r1, r1, 18h
080A9E50   4308 orr r0, r1
080A9E52   8BFA ldrh r2, [r7, 1Eh]
080A9E54   1C11 mov r1, r2
080A9E56   23FF mov r3, FFh
080A9E58   4019 and r1, r3
080A9E5A   0689 lsl r1, r1, 1Ah
080A9E5C   4308 orr r0, r1
080A9E5E   60A0 str r0, [r4, 8h]
080A9E60   230F mov r3, Fh
080A9E62   4698 mov r8, r3
080A9E64   2301 mov r3, 1h
080A9E66   469C mov r12, r3
080A9E68   466B mov r3, sp
080A9E6A   0992 lsr r2, r2, 6h
080A9E6C   2401 mov r4, 1h
080A9E6E   4264 neg r4, r4
080A9E70   0CA4 lsr r4, r4, 12h
080A9E72   8C38 ldrh r0, [r7, 20h]
080A9E74   4020 and r0, r4
080A9E76   0200 lsl r0, r0, 8h
080A9E78   4302 orr r2, r0
080A9E7A   8C78 ldrh r0, [r7, 22h]
080A9E7C   4020 and r0, r4
080A9E7E   1C01 mov r1, r0
080A9E80   0580 lsl r0, r0, 16h
080A9E82   4302 orr r2, r0
080A9E84   60DA str r2, [r3, Ch]
080A9E86   0A89 lsr r1, r1, Ah
080A9E88   8CB8 ldrh r0, [r7, 24h]
080A9E8A   4020 and r0, r4
080A9E8C   0100 lsl r0, r0, 4h
080A9E8E   4301 orr r1, r0
080A9E90   8CF8 ldrh r0, [r7, 26h]
080A9E92   4020 and r0, r4
080A9E94   0480 lsl r0, r0, 12h
080A9E96   4301 orr r1, r0
080A9E98   6119 str r1, [r3, 10h]
080A9E9A   E046 b 80A9F2Ah
多余的程序步~~~~~~
080A9E9C   0000 lsl r0, r0, 0
080A9E9E   0000 lsl r0, r0, 0
080A9EA0   0000 lsl r0, r0, 0
080A9EA2   0000 lsl r0, r0, 0
080A9EA4   0000 lsl r0, r0, 0
080A9EA6   0000 lsl r0, r0, 0
080A9EA8   0000 lsl r0, r0, 0
080A9EAA   0000 lsl r0, r0, 0
080A9EAC   0000 lsl r0, r0, 0
080A9EAE   0000 lsl r0, r0, 0
080A9EB0   0000 lsl r0, r0, 0
080A9EB2   0000 lsl r0, r0, 0
080A9EB4   0000 lsl r0, r0, 0
080A9EB6   0000 lsl r0, r0, 0
080A9EB8   0000 lsl r0, r0, 0
080A9EBA   0000 lsl r0, r0, 0
080A9EBC   0000 lsl r0, r0, 0
080A9EBE   0000 lsl r0, r0, 0
080A9EC0   0000 lsl r0, r0, 0
080A9EC2   0000 lsl r0, r0, 0
080A9EC4   0000 lsl r0, r0, 0
080A9EC6   0000 lsl r0, r0, 0
080A9EC8   0000 lsl r0, r0, 0
080A9ECA   0000 lsl r0, r0, 0
080A9ECC   0000 lsl r0, r0, 0
080A9ECE   0000 lsl r0, r0, 0
080A9ED0   0000 lsl r0, r0, 0
080A9ED2   0000 lsl r0, r0, 0
080A9ED4   0000 lsl r0, r0, 0
080A9ED6   0000 lsl r0, r0, 0
080A9ED8   0000 lsl r0, r0, 0
080A9EDA   0000 lsl r0, r0, 0
080A9EDC   0000 lsl r0, r0, 0
080A9EDE   0000 lsl r0, r0, 0
080A9EE0   0000 lsl r0, r0, 0
080A9EE2   0000 lsl r0, r0, 0
080A9EE4   0000 lsl r0, r0, 0
080A9EE6   0000 lsl r0, r0, 0
080A9EE8   0000 lsl r0, r0, 0
080A9EEA   0000 lsl r0, r0, 0
080A9EEC   0000 lsl r0, r0, 0
080A9EEE   0000 lsl r0, r0, 0
080A9EF0   0000 lsl r0, r0, 0
080A9EF2   0000 lsl r0, r0, 0
080A9EF4   0000 lsl r0, r0, 0
080A9EF6   0000 lsl r0, r0, 0
080A9EF8   0000 lsl r0, r0, 0
080A9EFA   0000 lsl r0, r0, 0
080A9EFC   0000 lsl r0, r0, 0
080A9EFE   0000 lsl r0, r0, 0
080A9F00   0000 lsl r0, r0, 0
080A9F02   0000 lsl r0, r0, 0
080A9F04   0000 lsl r0, r0, 0
080A9F06   0000 lsl r0, r0, 0
080A9F08   0000 lsl r0, r0, 0
080A9F0A   0000 lsl r0, r0, 0
080A9F0C   0000 lsl r0, r0, 0
080A9F0E   0000 lsl r0, r0, 0
080A9F10   0000 lsl r0, r0, 0
080A9F12   0000 lsl r0, r0, 0
080A9F14   0000 lsl r0, r0, 0
080A9F16   0000 lsl r0, r0, 0
080A9F18   0000 lsl r0, r0, 0
080A9F1A   0000 lsl r0, r0, 0
080A9F1C   0000 lsl r0, r0, 0
080A9F1E   0000 lsl r0, r0, 0
080A9F20   0000 lsl r0, r0, 0
080A9F22   0000 lsl r0, r0, 0
080A9F24   0000 lsl r0, r0, 0
080A9F26   0000 lsl r0, r0, 0
080A9F28   0000 lsl r0, r0, 0

<---------------修改结束
080A9F2A   4669 mov r1, sp
080A9F2C   78C8 ldrb r0, [r1, 3h]
080A9F2E   4655 mov r5, r10
080A9F30   4005 and r5, r0
080A9F32   70CD strb r5, [r1, 3h]
080A9F34   888A ldrh r2, [r1, 4h]
080A9F36   4E94 ldr r6, [pc, 250h]   ([000AA188]=FFFFF000)
080A9F38   1C30 mov r0, r6
080A9F3A   4010 and r0, r2
080A9F3C   8088 strh r0, [r1, 4h]
080A9F3E   68F8 ldr r0, [r7, Ch]
080A9F40   2104 mov r1, 4h
080A9F42   4688 mov r8, r1
080A9F44   4008 and r0, r1
080A9F46   2800 cmp r0, 0h
080A9F48   D00F beq 80A9F6Ah
080A9F4A   4668 mov r0, sp
080A9F4C   8882 ldrh r2, [r0, 4h]
080A9F4E   4C8F ldr r4, [pc, 23Ch]   ([000AA18C]=00000FFF)
080A9F50   4022 and r2, r4
080A9F52   4660 mov r0, r12
080A9F54   0841 lsr r1, r0, 1h
080A9F56   01C0 lsl r0, r0, 7h
080A9F58   4328 orr r0, r5
080A9F5A   70D8 strb r0, [r3, 3h]
080A9F5C   4311 orr r1, r2
080A9F5E   4021 and r1, r4
080A9F60   889A ldrh r2, [r3, 4h]
080A9F62   1C30 mov r0, r6
080A9F64   4010 and r0, r2
080A9F66   4308 orr r0, r1
080A9F68   8098 strh r0, [r3, 4h]
080A9F6A   68F8 ldr r0, [r7, Ch]
080A9F6C   2108 mov r1, 8h
080A9F6E   4689 mov r9, r1
080A9F70   4008 and r0, r1
080A9F72   2800 cmp r0, 0h
080A9F74   D019 beq 80A9FAAh
080A9F76   466B mov r3, sp
080A9F78   4668 mov r0, sp
080A9F7A   78C4 ldrb r4, [r0, 3h]
080A9F7C   09E1 lsr r1, r4, 7h
080A9F7E   8882 ldrh r2, [r0, 4h]
080A9F80   4D82 ldr r5, [pc, 208h]   ([000AA18C]=00000FFF)
080A9F82   402A and r2, r5
080A9F84   0052 lsl r2, r2, 1h
080A9F86   430A orr r2, r1
080A9F88   2002 mov r0, 2h
080A9F8A   4302 orr r2, r0
080A9F8C   1C11 mov r1, r2
080A9F8E   4660 mov r0, r12
080A9F90   4001 and r1, r0
080A9F92   01C9 lsl r1, r1, 7h
080A9F94   4650 mov r0, r10
080A9F96   4020 and r0, r4
080A9F98   4308 orr r0, r1
080A9F9A   70D8 strb r0, [r3, 3h]
080A9F9C   0852 lsr r2, r2, 1h
080A9F9E   402A and r2, r5
080A9FA0   8899 ldrh r1, [r3, 4h]
080A9FA2   1C30 mov r0, r6
080A9FA4   4008 and r0, r1
080A9FA6   4310 orr r0, r2
080A9FA8   8098 strh r0, [r3, 4h]
080A9FAA   68F8 ldr r0, [r7, Ch]
080A9FAC   2180 mov r1, 80h
080A9FAE   01C9 lsl r1, r1, 7h
080A9FB0   4008 and r0, r1
080A9FB2   2800 cmp r0, 0h
080A9FB4   D019 beq 80A9FEAh
080A9FB6   466B mov r3, sp
080A9FB8   4668 mov r0, sp
080A9FBA   78C4 ldrb r4, [r0, 3h]
080A9FBC   09E2 lsr r2, r4, 7h
080A9FBE   8881 ldrh r1, [r0, 4h]
080A9FC0   4D72 ldr r5, [pc, 1C8h]   ([000AA18C]=00000FFF)
080A9FC2   4029 and r1, r5
080A9FC4   0049 lsl r1, r1, 1h
080A9FC6   4311 orr r1, r2
080A9FC8   4640 mov r0, r8
080A9FCA   4301 orr r1, r0
080A9FCC   1C0A mov r2, r1
080A9FCE   4660 mov r0, r12
080A9FD0   4002 and r2, r0
080A9FD2   01D2 lsl r2, r2, 7h
080A9FD4   4650 mov r0, r10
080A9FD6   4020 and r0, r4
080A9FD8   4310 orr r0, r2
080A9FDA   70D8 strb r0, [r3, 3h]
080A9FDC   0849 lsr r1, r1, 1h
080A9FDE   4029 and r1, r5
080A9FE0   889A ldrh r2, [r3, 4h]
080A9FE2   1C30 mov r0, r6
080A9FE4   4010 and r0, r2
080A9FE6   4308 orr r0, r1
080A9FE8   8098 strh r0, [r3, 4h]
080A9FEA   68F8 ldr r0, [r7, Ch]
080A9FEC   2180 mov r1, 80h
080A9FEE   0209 lsl r1, r1, 8h
080A9FF0   4008 and r0, r1
080A9FF2   2800 cmp r0, 0h
080A9FF4   D019 beq 80AA02Ah
080A9FF6   466B mov r3, sp
080A9FF8   4668 mov r0, sp
080A9FFA   78C4 ldrb r4, [r0, 3h]
080A9FFC   09E2 lsr r2, r4, 7h
080A9FFE   8881 ldrh r1, [r0, 4h]
080AA000   4D62 ldr r5, [pc, 188h]   ([000AA18C]=00000FFF)
080AA002   4029 and r1, r5
080AA004   0049 lsl r1, r1, 1h
080AA006   4311 orr r1, r2
080AA008   4648 mov r0, r9
080AA00A   4301 orr r1, r0
080AA00C   1C0A mov r2, r1
080AA00E   4660 mov r0, r12
080AA010   4002 and r2, r0
080AA012   01D2 lsl r2, r2, 7h
080AA014   4650 mov r0, r10
080AA016   4020 and r0, r4
080AA018   4310 orr r0, r2
080AA01A   70D8 strb r0, [r3, 3h]
080AA01C   0849 lsr r1, r1, 1h
080AA01E   4029 and r1, r5
080AA020   889A ldrh r2, [r3, 4h]
080AA022   1C30 mov r0, r6
080AA024   4010 and r0, r2
080AA026   4308 orr r0, r1
080AA028   8098 strh r0, [r3, 4h]
080AA02A   68F8 ldr r0, [r7, Ch]
080AA02C   2180 mov r1, 80h
080AA02E   0189 lsl r1, r1, 6h
080AA030   4008 and r0, r1
080AA032   2800 cmp r0, 0h
080AA034   D019 beq 80AA06Ah
080AA036   466B mov r3, sp
080AA038   4668 mov r0, sp
080AA03A   78C4 ldrb r4, [r0, 3h]
080AA03C   09E1 lsr r1, r4, 7h
080AA03E   8882 ldrh r2, [r0, 4h]
080AA040   4D52 ldr r5, [pc, 148h]   ([000AA18C]=00000FFF)
080AA042   402A and r2, r5
080AA044   0052 lsl r2, r2, 1h
080AA046   430A orr r2, r1
080AA048   2010 mov r0, 10h
080AA04A   4302 orr r2, r0
080AA04C   1C11 mov r1, r2
080AA04E   4660 mov r0, r12
080AA050   4001 and r1, r0
080AA052   01C9 lsl r1, r1, 7h
080AA054   4650 mov r0, r10
080AA056   4020 and r0, r4
080AA058   4308 orr r0, r1
080AA05A   70D8 strb r0, [r3, 3h]
080AA05C   0852 lsr r2, r2, 1h
080AA05E   402A and r2, r5
080AA060   8899 ldrh r1, [r3, 4h]
080AA062   1C30 mov r0, r6
080AA064   4008 and r0, r1
080AA066   4310 orr r0, r2
080AA068   8098 strh r0, [r3, 4h]
080AA06A   68F8 ldr r0, [r7, Ch]
080AA06C   2180 mov r1, 80h
080AA06E   0249 lsl r1, r1, 9h
080AA070   4008 and r0, r1
080AA072   2800 cmp r0, 0h
080AA074   D019 beq 80AA0AAh
080AA076   466B mov r3, sp
080AA078   4668 mov r0, sp
080AA07A   78C4 ldrb r4, [r0, 3h]
080AA07C   09E1 lsr r1, r4, 7h
080AA07E   8882 ldrh r2, [r0, 4h]
080AA080   4D42 ldr r5, [pc, 108h]   ([000AA18C]=00000FFF)
080AA082   402A and r2, r5
080AA084   0052 lsl r2, r2, 1h
080AA086   430A orr r2, r1
080AA088   2020 mov r0, 20h
080AA08A   4302 orr r2, r0
080AA08C   1C11 mov r1, r2
080AA08E   4660 mov r0, r12
080AA090   4001 and r1, r0
080AA092   01C9 lsl r1, r1, 7h
080AA094   4650 mov r0, r10
080AA096   4020 and r0, r4
080AA098   4308 orr r0, r1
080AA09A   70D8 strb r0, [r3, 3h]
080AA09C   0852 lsr r2, r2, 1h
080AA09E   402A and r2, r5
080AA0A0   8899 ldrh r1, [r3, 4h]
080AA0A2   1C30 mov r0, r6
080AA0A4   4008 and r0, r1
080AA0A6   4310 orr r0, r2
080AA0A8   8098 strh r0, [r3, 4h]
080AA0AA   68F8 ldr r0, [r7, Ch]
080AA0AC   2180 mov r1, 80h
080AA0AE   0489 lsl r1, r1, 12h
080AA0B0   4008 and r0, r1
080AA0B2   2800 cmp r0, 0h
080AA0B4   D019 beq 80AA0EAh
080AA0B6   466B mov r3, sp
080AA0B8   4668 mov r0, sp
080AA0BA   78C4 ldrb r4, [r0, 3h]
080AA0BC   09E1 lsr r1, r4, 7h
080AA0BE   8882 ldrh r2, [r0, 4h]
080AA0C0   4D32 ldr r5, [pc, C8h]   ([000AA18C]=00000FFF)
080AA0C2   402A and r2, r5
080AA0C4   0052 lsl r2, r2, 1h
080AA0C6   430A orr r2, r1
080AA0C8   2040 mov r0, 40h
080AA0CA   4302 orr r2, r0
080AA0CC   1C11 mov r1, r2
080AA0CE   4660 mov r0, r12
080AA0D0   4001 and r1, r0
080AA0D2   01C9 lsl r1, r1, 7h
080AA0D4   4650 mov r0, r10
080AA0D6   4020 and r0, r4
080AA0D8   4308 orr r0, r1
080AA0DA   70D8 strb r0, [r3, 3h]
080AA0DC   0852 lsr r2, r2, 1h
080AA0DE   402A and r2, r5
080AA0E0   8899 ldrh r1, [r3, 4h]
080AA0E2   1C30 mov r0, r6
080AA0E4   4008 and r0, r1
080AA0E6   4310 orr r0, r2
080AA0E8   8098 strh r0, [r3, 4h]
080AA0EA   68F8 ldr r0, [r7, Ch]
080AA0EC   2180 mov r1, 80h
080AA0EE   0389 lsl r1, r1, Eh
080AA0F0   4008 and r0, r1
080AA0F2   2800 cmp r0, 0h
080AA0F4   D019 beq 80AA12Ah
080AA0F6   466B mov r3, sp
080AA0F8   4668 mov r0, sp
080AA0FA   78C4 ldrb r4, [r0, 3h]
080AA0FC   09E1 lsr r1, r4, 7h
080AA0FE   8882 ldrh r2, [r0, 4h]
080AA100   4D22 ldr r5, [pc, 88h]   ([000AA18C]=00000FFF)
080AA102   402A and r2, r5
080AA104   0052 lsl r2, r2, 1h
080AA106   430A orr r2, r1
080AA108   2080 mov r0, 80h
080AA10A   4302 orr r2, r0
080AA10C   1C11 mov r1, r2
080AA10E   4660 mov r0, r12
080AA110   4001 and r1, r0
080AA112   01C9 lsl r1, r1, 7h
080AA114   4650 mov r0, r10
080AA116   4020 and r0, r4
080AA118   4308 orr r0, r1
080AA11A   70D8 strb r0, [r3, 3h]
080AA11C   0852 lsr r2, r2, 1h
080AA11E   402A and r2, r5
080AA120   8899 ldrh r1, [r3, 4h]
080AA122   1C30 mov r0, r6
080AA124   4008 and r0, r1
080AA126   4310 orr r0, r2
080AA128   8098 strh r0, [r3, 4h]
080AA12A   2200 mov r2, 0h
080AA12C   466D mov r5, sp
080AA12E   351D add r5, 1Dh
080AA130   1C3E mov r6, r7
080AA132   3632 add r6, 32h
080AA134   466C mov r4, sp
080AA136   3415 add r4, 15h
080AA138   1C3B mov r3, r7
080AA13A   3328 add r3, 28h
080AA13C   18A0 add r0, r4, r2
080AA13E   1899 add r1, r3, r2
080AA140   7809 ldrb r1, [r1, 0h]
080AA142   7001 strb r1, [r0, 0h]
080AA144   3201 add r2, 1h
080AA146   2A07 cmp r2, 7h
080AA148   DDF8 ble 80AA13Ch
080AA14A   2200 mov r2, 0h
080AA14C   1C2C mov r4, r5
080AA14E   1C33 mov r3, r6
080AA150   18A0 add r0, r4, r2
080AA152   1899 add r1, r3, r2
080AA154   7809 ldrb r1, [r1, 0h]
080AA156   7001 strb r1, [r0, 0h]
080AA158   3201 add r2, 1h
080AA15A   2A06 cmp r2, 6h

080AA15C   DDF8 ble 80AA150h<--------简单的修改,简化程序步
080AA15E   E018 b 80AA192h<--------简单的修改,简化程序步

080AA160 FFFFF07F bl 812A162h<--------屏蔽数据表
080AA164   0FFF lsr r7, r7, 1Fh
080AA166 FE07FFF8 bl 8129D72h
080AA16A   FFFF [???]
080AA16C   0FFF lsr r7, r7, 1Fh
080AA16E F83FFFFC bl 81291E2h
080AA172 FC1FFFFF bl 81299A2h
080AA176   FFFF [???]
080AA178   3FFF sub r7, FFh
080AA17A   0000 lsl r0, r0, 0
080AA17C   00FF lsl r7, r7, 3h
080AA17E   FFC0 [???]
080AA180   03FF lsl r7, r7, Fh
080AA182   0000 lsl r0, r0, 0
080AA184   000F lsl r7, r1, 0
080AA186   FFFC [???]
080AA188 FFFFF000 bl 80AB18Ah
080AA18C   0FFF lsr r7, r7, 1Fh
080AA18E   0000 lsl r0, r0, 0<--------屏蔽数据表结束,实际上这里面的屏蔽数据表有很多都作废了~

080AA190   DDDE ble 80AA150h<--------因为简单的修改,这一步已经没用了
080AA192   4668 mov r0, sp
080AA194   991B ldr r1, [sp, 6Ch]
080AA196   2224 mov r2, 24h
080AA198 F9D6F02C bl 80D6548h
080AA19C   B01C add sp, 70h
080AA19E   BC38 pop r3-r5
080AA1A0   4698 mov r8, r3
080AA1A2   46A1 mov r9, r4
080AA1A4   46AA mov r10, r5
080AA1A6   BCF0 pop r4-r7
080AA1A8   BC01 pop r0
080AA1AA   4700 bx r0

-----------------------------
------------
加点是否溢出判定程序

0802BE6C   B530 push r4-r5, lr
0802BE6E   1C02 mov r2, r0
0802BE70   468C mov r12, r1
0802BE72   2112 mov r1, 12h
0802BE74   5651 ldrsb r1, [r2, r1]----->读出存档的最大HP?
0802BE76   4660 mov r0, r12
0802BE78   3073 add r0, 73h
0802BE7A   7800 ldrb r0, [r0, 0h]----->读出HP判定加点数据
0802BE7C   0600 lsl r0, r0, 18h
0802BE7E   1600 asr r0, r0, 18h------->加点不能超过7位2进
0802BE80   180B add r3, r1, r0
0802BE82   200B mov r0, Bh
0802BE84   5610 ldrsb r0, [r2, r0]
0802BE86   21C0 mov r1, C0h------>过滤123456位,保留7,8位
0802BE88   4008 and r0, r1
0802BE8A   2880 cmp r0, 80h
0802BE8C   D102 bne 802BE94h----->等于80是HP大于60的职业
0802BE8E   2B78\7f cmp r3, 78\7fh
0802BE90   DC02 bgt 802BE98h------>大于120\250转移
0802BE92   E010 b 802BEB6h------>不大于120转移到其他判定
0802BE94   2B3C\50 cmp r3, 3C\50h----->不等于80是HP小于60的,3C=60,50=80
0802BE96   DD0E ble 802BEB6h------>小于60转移到其他判定
0802BE98   2312 mov r3, 12h
0802BE9A   56D3 ldrsb r3, [r2, r3]----->再次读出存档的最大HP?
0802BE9C   200B mov r0, Bh
0802BE9E   5610 ldrsb r0, [r2, r0]
0802BEA0   21C0 mov r1, C0h------>再次过滤123456位,保留7,8位
0802BEA2   4008 and r0, r1
0802BEA4   2880 cmp r0, 80h
0802BEA6   D101 bne 802BEACh
0802BEA8   2078\7f mov r0, 78\7fh----->最大HP=120\250
0802BEAA   E000 b 802BEAEh
0802BEAC   203C\50 mov r0, 3C\50h----->最大HP=60\80
0802BEAE   1AC0 sub r0, r0, r3------>最大值超标超了多少计算
0802BEB0   4661 mov r1, r12
0802BEB2   3173 add r1, 73h
0802BEB4   7008 strb r0, [r1, 0h]---->最后加多少点存入原地址

0802BEB6   2014 mov r0, 14h
0802BEB8   5610 ldrsb r0, [r2, r0]----->读出存档的STR
0802BEBA   4664 mov r4, r12
0802BEBC   3474 add r4, 74h
0802BEBE   2100 mov r1, 0h
0802BEC0   5661 ldrsb r1, [r4, r1]----->读出STR判定加点数据
0802BEC2   1840 add r0, r0, r1
0802BEC4   6855 ldr r5, [r2, 4h]------>返回ROM数据读取指针
0802BEC6   2114 mov r1, 14h
0802BEC8   5669 ldrsb r1, [r5, r1]----->读取职业最大力量
0802BECA   1C2B mov r3, r5
0802BECC   4288 cmp r0, r1
0802BECE   DD03 ble 802BED8h
0802BED0   7D18 ldrb r0, [r3, 14h]
0802BED2   7D11 ldrb r1, [r2, 14h]
0802BED4   1A40 sub r0, r0, r1
0802BED6   7020 strb r0, [r4, 0h]------>最大值超标超了多少存入

0802BED8   2015 mov r0, 15h
0802BEDA   5610 ldrsb r0, [r2, r0]----->读出存档的SKI
0802BEDC   4664 mov r4, r12
0802BEDE   3475 add r4, 75h
0802BEE0   2100 mov r1, 0h
0802BEE2   5661 ldrsb r1, [r4, r1]
0802BEE4   1840 add r0, r0, r1
0802BEE6   2115 mov r1, 15h
0802BEE8   5659 ldrsb r1, [r3, r1]
0802BEEA   4288 cmp r0, r1
0802BEEC   DD03 ble 802BEF6h
0802BEEE   7D58 ldrb r0, [r3, 15h]
0802BEF0   7D51 ldrb r1, [r2, 15h]
0802BEF2   1A40 sub r0, r0, r1
0802BEF4   7020 strb r0, [r4, 0h]

0802BEF6   2016 mov r0, 16h
0802BEF8   5610 ldrsb r0, [r2, r0]----->读出存档的SPD
0802BEFA   4664 mov r4, r12
0802BEFC   3476 add r4, 76h
0802BEFE   2100 mov r1, 0h
0802BF00   5661 ldrsb r1, [r4, r1]
0802BF02   1840 add r0, r0, r1
0802BF04   2116 mov r1, 16h
0802BF06   5659 ldrsb r1, [r3, r1]
0802BF08   4288 cmp r0, r1
0802BF0A   DD03 ble 802BF14h
0802BF0C   7D98 ldrb r0, [r3, 16h]
0802BF0E   7D91 ldrb r1, [r2, 16h]
0802BF10   1A40 sub r0, r0, r1
0802BF12   7020 strb r0, [r4, 0h]

0802BF14   2017 mov r0, 17h
0802BF16   5610 ldrsb r0, [r2, r0]-----> SAVE'DEF
0802BF18   4664 mov r4, r12
0802BF1A   3477 add r4, 77h
0802BF1C   2100 mov r1, 0h
0802BF1E   5661 ldrsb r1, [r4, r1]
0802BF20   1840 add r0, r0, r1
0802BF22   2117 mov r1, 17h
0802BF24   5659 ldrsb r1, [r3, r1]
0802BF26   4288 cmp r0, r1
0802BF28   DD03 ble 802BF32h
0802BF2A   7DD8 ldrb r0, [r3, 17h]
0802BF2C   7DD1 ldrb r1, [r2, 17h]
0802BF2E   1A40 sub r0, r0, r1
0802BF30   7020 strb r0, [r4, 0h]

0802BF32   2018 mov r0, 18h
0802BF34   5610 ldrsb r0, [r2, r0]-----> SAVE'MDF
0802BF36   4663 mov r3, r12
0802BF38   3378 add r3, 78h
0802BF3A   2100 mov r1, 0h
0802BF3C   5659 ldrsb r1, [r3, r1]
0802BF3E   1840 add r0, r0, r1
0802BF40   2118 mov r1, 18h
0802BF42   5669 ldrsb r1, [r5, r1]
0802BF44   4288 cmp r0, r1
0802BF46   DD03 ble 802BF50h
0802BF48   7E28 ldrb r0, [r5, 18h]
0802BF4A   7E11 ldrb r1, [r2, 18h]
0802BF4C   1A40 sub r0, r0, r1
0802BF4E   7018 strb r0, [r3, 0h]

0802BF50   2019 mov r0, 19h
0802BF52   5610 ldrsb r0, [r2, r0]-----> SAVE'LUCK
0802BF54   4663 mov r3, r12
0802BF56   3379 add r3, 79h
0802BF58   2100 mov r1, 0h
0802BF5A   5659 ldrsb r1, [r3, r1]
0802BF5C   1840 add r0, r0, r1
0802BF5E   281E cmp r0, 1Eh
0802BF60   DD03 ble 802BF6Ah
0802BF62   7E51 ldrb r1, [r2, 19h]
0802BF64   201E mov r0, 1Eh
0802BF66   1A40 sub r0, r0, r1
0802BF68   7018 strb r0, [r3, 0h]

0802BF6A   BC30 pop r4-r5
0802BF6C   BC01 pop r0
0802BF6E   4700 bx r0-------》加点是否溢出0802BB32   F000   bl 0802BE6Ch判定程序判定完毕

====================================
使用物品上限锁定程序<---相似---->加点是否溢出判定程序

08017EDC   B5F0 push r4-r7, lr
08017EDE   1C04 mov r4, r0
08017EE0   2212 mov r2, 12h
08017EE2   56A2 ldrsb r2, [r4, r2]
08017EE4   200B mov r0, Bh
08017EE6   5620 ldrsb r0, [r4, r0]
08017EE8   21C0 mov r1, C0h
08017EEA   4008 and r0, r1
08017EEC   2880 cmp r0, 80h
08017EEE   D102 bne 8017EF6h
08017EF0   2A78\7F cmp r2, 78\7Fh
08017EF2   DC02 bgt 8017EFAh
08017EF4   E00A b 8017F0Ch
08017EF6   2A3C\50 cmp r2, 3C\50h
08017EF8   DD08 ble 8017F0Ch
08017EFA   200B mov r0, Bh
08017EFC   5620 ldrsb r0, [r4, r0]
08017EFE   21C0 mov r1, C0h
08017F00   4008 and r0, r1
08017F02   213C\50 mov r1, 3C\50h
08017F04   2880 cmp r0, 80h
08017F06   D100 bne 8017F0Ah
08017F08   2178 mov r1, 78\7Fh
08017F0A   74A1 strb r1, [r4, 12h]

08017F0C   6867 ldr r7, [r4, 4h]
08017F0E   2114 mov r1, 14h
08017F10   5661 ldrsb r1, [r4, r1]
08017F12   7D3A ldrb r2, [r7, 14h]
08017F14   2014 mov r0, 14h
08017F16   5638 ldrsb r0, [r7, r0]
08017F18   1C3D mov r5, r7
08017F1A   4281 cmp r1, r0
08017F1C   DD00 ble 8017F20h
08017F1E   7522 strb r2, [r4, 14h]
08017F20   2115 mov r1, 15h
08017F22   5661 ldrsb r1, [r4, r1]
08017F24   7D6A ldrb r2, [r5, 15h]
08017F26   2015 mov r0, 15h
08017F28   5628 ldrsb r0, [r5, r0]
08017F2A   4281 cmp r1, r0
08017F2C   DD00 ble 8017F30h
08017F2E   7562 strb r2, [r4, 15h]
08017F30   2116 mov r1, 16h
08017F32   5661 ldrsb r1, [r4, r1]
08017F34   7DAA ldrb r2, [r5, 16h]
08017F36   2016 mov r0, 16h
08017F38   5628 ldrsb r0, [r5, r0]
08017F3A   4281 cmp r1, r0
08017F3C   DD00 ble 8017F40h
08017F3E   75A2 strb r2, [r4, 16h]
08017F40   2117 mov r1, 17h
08017F42   5661 ldrsb r1, [r4, r1]
08017F44   7DEA ldrb r2, [r5, 17h]
08017F46   2017 mov r0, 17h
08017F48   5628 ldrsb r0, [r5, r0]
08017F4A   4281 cmp r1, r0
08017F4C   DD00 ble 8017F50h
08017F4E   75E2 strb r2, [r4, 17h]
08017F50   2118 mov r1, 18h
08017F52   5661 ldrsb r1, [r4, r1]
08017F54   7E2A ldrb r2, [r5, 18h]
08017F56   2018 mov r0, 18h
08017F58   5628 ldrsb r0, [r5, r0]
08017F5A   4281 cmp r1, r0
08017F5C   DD00 ble 8017F60h
08017F5E   7622 strb r2, [r4, 18h]
08017F60   2019 mov r0, 19h
08017F62   5620 ldrsb r0, [r4, r0]
08017F64   281E cmp r0, 1Eh
08017F66   DD01 ble 8017F6Ch
08017F68   201E mov r0, 1Eh
08017F6A   7660 strb r0, [r4, 19h]
08017F6C   231A mov r3, 1Ah
08017F6E   56E3 ldrsb r3, [r4, r3]
08017F70   2219 mov r2, 19h
08017F72   56AA ldrsb r2, [r5, r2]
08017F74   2011 mov r0, 11h
08017F76   5628 ldrsb r0, [r5, r0]
08017F78   6826 ldr r6, [r4, 0h]
08017F7A   2113 mov r1, 13h
08017F7C   5671 ldrsb r1, [r6, r1]
08017F7E   1840 add r0, r0, r1
08017F80   1A12 sub r2, r2, r0
08017F82   4293 cmp r3, r2
08017F84   DD05 ble 8017F92h
08017F86   7CF1 ldrb r1, [r6, 13h]
08017F88   7C68 ldrb r0, [r5, 11h]
08017F8A   1809 add r1, r1, r0
08017F8C   7E68 ldrb r0, [r5, 19h]
08017F8E   1A40 sub r0, r0, r1
08017F90   76A0 strb r0, [r4, 1Ah]
08017F92   221D mov r2, 1Dh
08017F94   56A2 ldrsb r2, [r4, r2]
08017F96   2112 mov r1, 12h
08017F98   5679 ldrsb r1, [r7, r1]
08017F9A   200F mov r0, Fh
08017F9C   1A40 sub r0, r0, r1
08017F9E   4282 cmp r2, r0
08017FA0   DD03 ble 8017FAAh
08017FA2   7CB9 ldrb r1, [r7, 12h]
08017FA4   200F mov r0, Fh
08017FA6   1A40 sub r0, r0, r1
08017FA8   7760 strb r0, [r4, 1Dh]
08017FAA   BCF0 pop r4-r7
08017FAC   BC01 pop r0
08017FAE   4700 bx r0

===========================
===========================


[ 此贴被无聊之士在2007-10-16 19:53重新编辑 ]


姓:郑
名:长春
号:无聊之士!
欢迎到网络U盘地址:http://zhengchangchun.ys168.com/ 来~
个人空间http://i.cn.yahoo.com/zhengchangchun2003
[16 楼] | Posted:2007-10-07 18:56| 顶端
如月影二

头衔:暗黑皇子暗黑皇子
该用户目前不在线
级别: 论坛版主
编号: 35949
精华: 1
发帖: 2603
威望: 5 点
配偶: 花影旋岚
火 花 币: 106230 HHB
注册时间:2005-04-19
最后登陆:2024-11-03
朱红之钻(I)
查看作者资料 发送短消息 引用回复这个帖子


已经完全破解了吗? 非常好 很好~

[17 楼] | Posted:2007-10-07 23:12| 顶端
雪灵龙

头衔:漫画连载冲刺中>>>期待漫画连载冲刺中>>>期待
该用户目前不在线
级别: 火花会员
编号: 34582
精华: 3
发帖: 3848
威望: 10 点
配偶: 单身
火 花 币: 15583 HHB
注册时间:2005-03-29
最后登陆:2019-09-10
朱红之钻(I)
查看作者资料 发送短消息 引用回复这个帖子


太强了。。。。啥时候可以弄一部全新的作品出来就好了。。。

雪灵龙的博客^ ^!
http://blog.sina.com.cn/u/1277833264


画帖
http://bbs.fireemblem.net/read.php?tid=84202&fpage=&toread=&page=1
[18 楼] | Posted:2007-10-09 19:59| 顶端
无聊之士

头衔:全控全控
该用户目前不在线
级别: 火花会员
编号: 49952
精华: 5
发帖: 432
威望: 25 点
配偶: 单身
火 花 币: 4092 HHB
注册时间:2006-02-10
最后登陆:2024-06-28
艾雷布的骑士(I)
查看作者资料 发送短消息 引用回复这个帖子


下面是引用雪灵龙于2007-10-09 19:59发表的:
太强了。。。。啥时候可以弄一部全新的作品出来就好了。。。

我做新作品是不大可能的~一个人......
不过你的画图功夫不赖啊~看过你曾经画的图.
你做作品出来更值得人信赖~


姓:郑
名:长春
号:无聊之士!
欢迎到网络U盘地址:http://zhengchangchun.ys168.com/ 来~
个人空间http://i.cn.yahoo.com/zhengchangchun2003
[19 楼] | Posted:2007-10-18 19:22| 顶端
<<   1   2  >>  Pages: ( 2 total )

火花天龙剑 -> 火花学园




Powered by PHPWind v3.0.1 Code © 2003-05 PHPWind
辽ICP备05016763号
Gzip enabled

You can contact us