EMU618社区

 找回密码
 立即注册
搜索
查看: 1437|回复: 7

[原创FC/FDS-HACK] [重发]双截龙3日版扩容+按键HACK

[复制链接]

签到天数: 1968 天

[LV.Master]伴坛终老

发表于 2013-10-24 19:20:46 | 显示全部楼层 |阅读模式
原帖丢失了,重发一份。" ^) d6 _& n( x
+ U# i6 O4 V5 I! f2 q
修改内容:
5 W3 \/ E+ u4 s4 w( R1.P ROM由128KB扩容到256KB
& s. S8 W% ^- x5 W+ y2.按START+B武器数量为99
# _8 C; z- g& p6 u' K+ P3.按START+A补血8 J* ]2 M  v& m* o9 S

+ v4 s' a0 a& B- w8 F% e9 B  ?这个HACK ROM本来以前答应某人做个例子给参考一下,因工作忙以及以前用的切BANK方法不完善的关系所以没放出来
7 m% J4 k( _- g/ ?% ~" o8 U7 W! Z; }6 @) c: J% z
从原单位滚蛋后就有时间来弄一下
2 R8 C& l: Z. {
- o0 n& n" E( o. ^关于如何扩容:在文件头后面或驻留体前面添加一大量0xFF或0x00,有可能或在程式中间添加,在哪里视游戏而定吧,有何规律我也不清楚" `8 P) r* t5 ~" v! u8 r" D

+ `0 w6 n1 g0 T$ \7 l- J关于如何切BANK:请看相关mapper资料吧
3 i- i, f: j  L" d% [4 e+ R! L  V
1 H" X: B$ n- w) K  w9 n说说我双截龙3 MPPPER 04如何切BANK:
  1. & B+ y8 _1 M; }, p- l! s
  2. $xxxx+ d$ I+ g+ I" e+ K
  3. LDA #$07) J* r* a& E7 o% w
  4. STA $8000 ;把0x07写入8000端口,选择要切BANK内存地址$A000-$BFFF4 }. b- U1 V) t. P- O. }: u! K4 ^
  5. LDA #$0E
    ' j0 l; k- c- @$ Y! f- f. v
  6. STA $8001 ;把0x0E写入8001端口,把ROM的$1C010-$1E00F地址内容写入内存地址$A000-$BFFF
    $ j6 _. o- H: s  k! n4 z- v* A
  7. JMP $A000 ;跳转到$A000执行
    " B2 I1 a2 `4 a! W4 Y
  8. 9 w; M/ W, I( g, A7 w+ H
  9. $A000:
    4 {0 ?6 }0 `4 T* t; G
  10. .# U" T3 H2 j5 F; Y
  11. .6 Z$ z9 g+ `+ @+ y1 s
  12. ./ k( i  t6 o& i9 {. B$ z, k0 ^
  13. .8 `( c1 F- m5 ?- R  e
  14. JMP $xxxx ;执行完自写的程式后跳回去
    . y% c6 c: k! c: K

  15. 7 v6 }  Y* U" z' z2 r
  16. $xxxx:- V7 H9 I1 E1 ?% k! I2 ]9 j9 l
  17. LDA #$071 l5 ?" l/ W$ e+ x; x
  18. STA $8000 ;把0x07写入8000端口,选择要切BANK内存地址$A000-$BFFF
    2 I- c2 h; c; y
  19. LDA #$0D
    & G1 U) C- M6 S7 j# N! f
  20. STA $8001 ;把0x0D写入8001端口,把ROM的$1A010-$1C00F地址内容写回内存地址$A000-$BFFF
    , H4 m3 m- T3 T8 M- o
  21. % J9 c+ K& O9 \9 ~
  22. 切BANK前建议做压栈操作保护寄存器数据,当切换完BANK后出栈还原寄存器数据,这只是建议
    " \. }% u5 y3 x; T; P+ a; y" ?2 p

  23. 3 {4 q0 L5 m; i9 F- R$ K
复制代码
关于什么时候切BANK:用NMI中断来切BANK吧(在NMI中断程式中插入切换BANK程式), W# ^6 |6 V2 y' T6 e3 q+ P  P$ ^

* N% N. j, W  \6 Q! O1 D$ K附:ROM 16KB BANK编号7 I+ H  N) w9 J6 g$ Q
: |& T- X. e- Q6 e
ROMf地址      BANK编号1 k- J! x9 p: v/ n# ~5 P
00010-0200F  0- Y2 ^) Q. g7 w7 R% [
02010-0400F  1. Q& f6 w4 v' O
04010-0600F  2
( ?# \, G5 L$ \, K8 i06010-0800F  3* M% ^6 B( V2 D" R
08010-0A00F  42 Q9 u. N& k0 s$ P* X+ S! C- E
0A010-0C00F  5% u+ Q7 x8 ^* w
0C010-0E00F  6
" K3 x0 E0 Z, A4 T' d  @0E010-1000F  7
: }  `2 b0 x5 n3 V" e. y$ q10010-1200F  8
/ s$ A4 U4 |# D- @" F5 G5 y12010-1400F  9& s! g2 |" ]0 c; c$ R* ?
14010-1600F  A
: @- R  |  c' t16010-1800F  B0 R; z1 T' w$ Z6 G3 D( v0 R$ c6 c
18010-1A00F  C  X3 |# ?  ]- V) g$ c  w
1A010-1C00F  D
8 o; o  K' t" N& v! A1C010-1E00F  E
0 R3 c, {5 v  ^" y; X1E010-2000F  F
4 M7 l8 \  O' a+ K9 D4 P1 ?.
9 f* {3 m2 \$ u8 z9 \.
* e; ^7 v, F2 q.% a. g6 A4 f: ^4 M$ k
( B$ p4 m4 c0 e) Y: H2 l- b7 p
解释一下我为什么把P ROM 128KB扩容到256KB,不扩容到144KB?
& k8 L# f$ t9 ~  L2 m7 o! C, T3 P9 @3 x/ m; ~* Z9 ~6 L# ~+ o9 {* ^/ H: @
因为扩到144KB的话有的模拟器是不认,无法运行6 v% W7 b; u+ R: m* h5 N+ S
# ]! r6 m1 M- H
为了全FC模拟器能兼容,所以只好扩容到256KB
% n! Q) x* h1 D' k9 i* d& Y/ n7 p$ b$ B4 E
补充:扩容后记得修改ROM文件头P ROM 16KB数目(地址:0x4),不然有可能引致载入ROM失败或死机7 E1 E; \, H. B

1 ]3 c1 s7 m1 P2 d+ g- E* o8 {; o

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
[发帖际遇]: 疾风之狼 在网吧通宵,花了 1 个 柠檬. 幸运榜 / 衰神榜

签到天数: 434 天

[LV.9]以坛为家II

发表于 2013-10-24 19:23:39 | 显示全部楼层
{:4_98:}沙发支持,顺便下载!
[发帖际遇]: 283167657 打扫环境卫生,被奖励 2 个 柠檬. 幸运榜 / 衰神榜

签到天数: 2942 天

[LV.Master]伴坛终老

发表于 2013-10-24 19:29:43 | 显示全部楼层
这个。。。只能膜拜了。
[发帖际遇]: 天迹云间踩坏了花花草草,被罚款4 个 柠檬. 幸运榜 / 衰神榜

签到天数: 594 天

[LV.9]以坛为家II

发表于 2013-10-24 19:36:57 | 显示全部楼层
支持了 如果能把圣火徽章外传日版扩容就可以中文汉化了吧 这是大功一件哦 先谢谢了

签到天数: 881 天

[LV.10]以坛为家III

发表于 2013-10-24 23:17:03 | 显示全部楼层
圣火徽章外传……唉,外星汉化那个玩起来看得蛋好疼

签到天数: 1418 天

[LV.10]以坛为家III

发表于 2013-10-24 23:32:44 | 显示全部楼层
话说这个我一直都没搞懂{:4_106:}

签到天数: 216 天

[LV.7]常住居民III

发表于 2013-10-28 00:20:58 | 显示全部楼层
感谢up分享

签到天数: 1296 天

[LV.10]以坛为家III

发表于 2013-10-28 16:31:04 | 显示全部楼层
谢谢楼主的分享,支持一下!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|国治模拟精品屋 ( 沪ICP备15012945号-1 )

GMT+8, 2025-6-4 08:30 , Processed in 1.113281 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表