设为首页收藏本站

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

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

[复制链接]

签到天数: 2053 天

[LV.Master]伴坛终老

发表于 2013-10-24 19:20:46 | 显示全部楼层 |阅读模式
原帖丢失了,重发一份。
% K& Y% Z9 @& s8 ]2 B- q, M. H* h  l( \& B9 W( E3 Y
修改内容:
0 h1 |% ?! E! `' l( F1.P ROM由128KB扩容到256KB
& J6 D: x% P- [8 C2.按START+B武器数量为99' p. O# b5 z- W
3.按START+A补血7 u' F# n/ R$ ~

' }' q. Q; q8 J- Y. z这个HACK ROM本来以前答应某人做个例子给参考一下,因工作忙以及以前用的切BANK方法不完善的关系所以没放出来" k7 Q; V/ D5 U" h" W6 \

$ p6 D2 G  z/ z) S, M$ z" r% H从原单位滚蛋后就有时间来弄一下
- S, B* y0 [* y. {+ P
7 f8 g) W0 |, i, w6 x关于如何扩容:在文件头后面或驻留体前面添加一大量0xFF或0x00,有可能或在程式中间添加,在哪里视游戏而定吧,有何规律我也不清楚. s, v6 C& e- |7 @  E
7 P0 {6 y4 Z' D: ^9 I8 N/ W% |) y4 s
关于如何切BANK:请看相关mapper资料吧  _7 \. Q  u! r* _- x; ?

4 K% p: i* N3 Y( @4 b! [5 y说说我双截龙3 MPPPER 04如何切BANK:

  1. ) m3 N* v4 Z0 u
  2. $xxxx: q- u$ h8 z4 V# }: M8 x- I' o0 `) O4 \
  3. LDA #$07+ k7 z4 L4 }7 _$ K# Z
  4. STA $8000 ;把0x07写入8000端口,选择要切BANK内存地址$A000-$BFFF
    7 I+ }3 C5 ^% ~+ |7 H( U+ q
  5. LDA #$0E' e1 l7 ?, V" X. [
  6. STA $8001 ;把0x0E写入8001端口,把ROM的$1C010-$1E00F地址内容写入内存地址$A000-$BFFF' N- H$ d# @) r8 x0 w
  7. JMP $A000 ;跳转到$A000执行& Q1 S4 J/ Q5 Q/ J
  8. 7 ^5 C7 l3 I! u5 s+ Q. Q: q
  9. $A000:6 P. X3 m2 X: x. C/ w
  10. ., _, p7 |8 l+ [4 f& T1 K1 c
  11. .
    0 e' n* Q, P6 s2 r; o
  12. .9 R0 D4 |- t7 N7 J
  13. .
    5 m: c1 I; X  }/ r8 t
  14. JMP $xxxx ;执行完自写的程式后跳回去- Z4 L% X" j; R2 w6 U' X
  15. ! b& q0 ^5 z, k1 E
  16. $xxxx:
    3 n' I( C: c0 @* d/ f
  17. LDA #$07
    % T3 j0 R9 f* v, a. g! Z+ i
  18. STA $8000 ;把0x07写入8000端口,选择要切BANK内存地址$A000-$BFFF
    " a. ]# X4 }, T7 r
  19. LDA #$0D, \/ W0 z7 y, S9 ?
  20. STA $8001 ;把0x0D写入8001端口,把ROM的$1A010-$1C00F地址内容写回内存地址$A000-$BFFF
    : o- w2 ~, l4 o8 v% c' \  ~

  21. 5 T2 \' H6 Y& q( [7 X
  22. 切BANK前建议做压栈操作保护寄存器数据,当切换完BANK后出栈还原寄存器数据,这只是建议$ ?7 Q5 ?$ H: V; g
  23. 8 B5 P- z4 M  G9 ~9 u3 Z  x; \
复制代码
关于什么时候切BANK:用NMI中断来切BANK吧(在NMI中断程式中插入切换BANK程式)
& i8 X% D' ?3 e
. |9 B+ f6 C# x- _' E! }: D. l0 o附:ROM 16KB BANK编号) B  Z) z, F; n" [- J4 X

2 J' K6 r7 m6 O9 ~ROMf地址      BANK编号; Z" U0 p+ }4 D, v$ `
00010-0200F  03 M; P1 c; G, |+ L5 g
02010-0400F  1
" r+ V  ?- t" D4 M( e1 G4 Q% w& A04010-0600F  2
% b8 G- ?- D2 ~7 h06010-0800F  3" u0 W( G  f0 y4 p4 m6 E
08010-0A00F  41 q0 C( U7 f4 c, Z3 r
0A010-0C00F  52 o% T, O6 Z1 N( R
0C010-0E00F  6$ C0 `1 u3 R: F
0E010-1000F  71 W7 M5 K, @3 G/ G
10010-1200F  8
8 T4 B2 W  L! I0 ?3 j12010-1400F  9  U: s% f( H5 n( D* B: n0 T
14010-1600F  A
2 y0 V  y( `/ y0 z: K8 [" U16010-1800F  B
# @, a5 m( U3 _. P$ r18010-1A00F  C
5 h0 B$ }  W' |* g& v. o3 u" E1A010-1C00F  D  e& `( O# `' S1 n
1C010-1E00F  E
) ~" Z7 ~( z) k- p1E010-2000F  F! i7 \0 y7 @/ ^( C) A3 p
.) F- N0 ~' V) ?
.( Y, d+ n8 g! `# Q1 _* t1 S) i
.; t8 F% X' B0 {( E& [+ ~
( J  D2 \4 T' `: ?
解释一下我为什么把P ROM 128KB扩容到256KB,不扩容到144KB?, l* e  X# u8 Q  ]

0 F0 b" G! c7 b: X9 B因为扩到144KB的话有的模拟器是不认,无法运行
. m' q# F( O1 y) v  o! {
  U! f+ C1 W0 m; v" [8 s# ~% r% B为了全FC模拟器能兼容,所以只好扩容到256KB/ F: g; R, `" Y/ [) F) c% O3 F# y

. o6 V; [" F- J2 Y: ^- \3 b8 ?补充:扩容后记得修改ROM文件头P ROM 16KB数目(地址:0x4),不然有可能引致载入ROM失败或死机, W% y; ]& y+ Q3 N$ S  B
6 A. A- y, ?- Y: s& b' Y

本帖子中包含更多资源

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

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

签到天数: 434 天

[LV.9]以坛为家II

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

使用道具 举报

签到天数: 3024 天

[LV.Master]伴坛终老

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

使用道具 举报

签到天数: 594 天

[LV.9]以坛为家II

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

使用道具 举报

签到天数: 882 天

[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, 2026-8-26 13:24

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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