//用NCTOOLS手工建立一个 BIN文件

  有了前面的知识,我们现在就来在 NCTOOLS里面手工建立一个 BIN文件,以巩固我们前面的知识.

这里由于程序比较小,所以我们决定制作 <8K 的BIN文件.

  我们应该都玩过 电子宠物猫 吧,那么我们这里就制作一个 电子宠物猫存档修改器

  由于 RESET 后,养的猫就 没有了,我们 我们推断,存档一定是存在 RAM区域,那么需要我们去查找

存档的位置,方法很简单,如下:

  如上,我们先领养一只猫,名字叫做"土豆",然后马上你就看到一只活蹦乱跳的猫眯了.

然后我们退出游戏,进入 NCTOOLS,查找 "土豆",查找范围当然是RAM区域,地址范围 0000-3FFF

输入 SC 0000 3FFF,输入 "土豆",然后我们马上就找到了,如图:

 

  哦,原来是地址06DC啊,居然名字存在这里,那附近一定就是其他参数的存贮位置啊,我们看看我们的 土豆 的参数,如图:

  好了,我们的 土豆 有 自身状态 和 物品状态

  自身状态是  07 00 00 03 ..

  物品状态是  C8 09 08 07 ..

  我们往地址06DC附近看看,是不是有这些数据,结果找到了,如图:

  我们总结如下:

  地址 06D6: 金钱    06D7: 猫粮    06D8: 超级猫粮  06D9: 牛奶  06DA: 鱼  06DB: 球

  地址 06C3: 体重    06C4: 成长    06C5: 天使   06C6: 饥饱度  06C7: 口渴度  06C8: 清洁度

       06C9: 训练度   06CA: 兴奋度

 

  由于我们这里主要是介绍 手工建立一个 BIN,所以这里我们程序尽量简单些,这里我们只是实现把宠物猫的物品数全部调为 200

也就是 #$C8,然后 弹出一个信息框,显示"猫猫所有物品达200",然后就结束了.

  我们先实现主程序,即将物品全部改为 200个,从地址2010开始编写:

  同时 按住 Z + H 键,把地址2000-2FFF的内容全部清为 FF

  A 2010

  2010: LDX #$00

  2012: LDA #$C8

  2014: STA $06D7,X

  2017: INX

  2018: CPX #$06

  201A: BNE $2014

  201C:RTS

  这段程序就实现了改物品的个数,是不是很简单?

  然后我们实现弹出 的信息框,我 V 2020, 按 输入法,输入 " 猫猫物品达200啦",然后后面再输入 00 00

作为结束标志,如图:

 

  然后我们做表,从地址 2038开始 输入如下数据,如图:

  我们做弹出信息框:

  A 2048

  2048:LDX #$38

  204A: LDY #$20

  204C: LDA #$00

  204E: INT $C312

  2051: INT $C007

  2054: RTS

  然后我们实现主程序,从地址2058开始

  A 2058

  2058: JSR $2010

  205B: JSR $2048

  205E: RTS

 

  我们 G 2058 试试,出现下图:

  我们回到游戏,看看物品是不是200个,一看,果然是,如图:

  好了,我们已经完成了这个简单的BIN程序,现在我们要做BIN文件了

 1.先做文件头

  E C 2000

  输入 AA A5 5A

  输入文件实际长度   60 00 00

  输入  20

  输入  4C

  输入入口地址  58 20

  输入  70 03 31 03  FF FF

  那么就是这样的,如图:

 

  2.找一块 空闲的闪存,只要有 4K 就可以了.我们在闪存分配表里找 FF FF FF FF,然后把地址2000-2FFF内容送相应的闪存地址

这里我们找到了一块空闲的闪存,大家看到 地址 70DC-70DF的内容为  FF FF FF FF,那我们就放这里吧,计算一下,发现是

06 页码的 7000-7FFF,大家应该会算吧?

  然后我们 输入命令  W 7000 06,就把数据写入了,如图

  3.然后我们修改闪存分配表,即把原来的 FF FF FF FF改为 ?? 5E 00 C2,这里??的值不能与其他重复

这里我们取 0F 5E 00 C2,这样系统就认为该块闪存已经被利用了,就不会分配数据到该块闪存了.

  4.最后我们修改 BIN文件表,就是加入一个新的文件信息给系统

   我们先要找到 BIN文件表,怎么找呢?在前面已经讲过,这里就不说了,你也可以在 NCTOOLS里,按帮助,按系统信息,

按 文件列表  ,按 应用程序,找到了,如图

 

  然后我们 从地址 B040开始输入  C8 DF

  然后就是文件名,这里取  猫猫存档修改.bin

  然后 输入文件建立日期    7A 09 04

  然后输入 FF FF FF

  然后输入文件大小  00 10 00

  然后输入 XX 的值  0F  (因为先前是 0F 5E 00 C2)

  然后输入  00

  那么就可以了,按 网络,是不是看见文件了

 

   我们执行一下看看,如图: