EMU618社区

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

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

[复制链接]

签到天数: 1868 天

[LV.Master]伴坛终老

发表于 2013-10-24 19:20:46 | 显示全部楼层 |阅读模式
原帖丢失了,重发一份。* T, O, l+ b' B- n' G
# L. O/ f2 H: y; `
修改内容:4 A; w% S. `; @! q3 b- Z% f
1.P ROM由128KB扩容到256KB1 O- s5 \$ r$ }( f" `+ P
2.按START+B武器数量为99
# u$ X/ @1 v3 J  s8 }' U* I) X3.按START+A补血
$ @) t$ s. n5 P2 M3 Y+ a) G$ k
+ L, O% o. n( J  }# k! ?/ R  W这个HACK ROM本来以前答应某人做个例子给参考一下,因工作忙以及以前用的切BANK方法不完善的关系所以没放出来
( Y" I7 _  i6 u: R+ E$ }- r! e4 [/ k- R  v
从原单位滚蛋后就有时间来弄一下" C5 |1 q3 R2 O' \
' |; G# [: \" p4 T  x2 N0 T8 ]
关于如何扩容:在文件头后面或驻留体前面添加一大量0xFF或0x00,有可能或在程式中间添加,在哪里视游戏而定吧,有何规律我也不清楚
2 \8 J: G- K1 Y) F  M# p1 }0 ^
+ j& ]. P4 [+ u+ w6 K关于如何切BANK:请看相关mapper资料吧; a0 U* R6 u5 `* j

) q3 v" z6 x) \! S3 e说说我双截龙3 MPPPER 04如何切BANK:

  1. ! k# ^7 w! p; s  |
  2. $xxxx# a& L$ k  X; j8 f7 I3 V
  3. LDA #$079 F" n7 J3 l' o/ q9 [
  4. STA $8000 ;把0x07写入8000端口,选择要切BANK内存地址$A000-$BFFF
    : z5 S1 {# v  k  A
  5. LDA #$0E: m. F! B! u9 Y' ~* ^& i, b% U+ g
  6. STA $8001 ;把0x0E写入8001端口,把ROM的$1C010-$1E00F地址内容写入内存地址$A000-$BFFF1 P1 G7 {/ o5 e
  7. JMP $A000 ;跳转到$A000执行: d! @1 N+ b/ R! L
  8. % P& e- A7 R  k) y  a  T
  9. $A000:/ W* L7 g$ P1 {4 ~3 X: J
  10. .( Y" E6 |2 e# S8 @) e7 y+ D
  11. .. Z3 b" u6 J9 Q7 `7 n  R
  12. .$ q) j- b2 E: ~. Z- W% X
  13. ./ [2 }, X3 h/ A) {; {5 o$ J
  14. JMP $xxxx ;执行完自写的程式后跳回去
    0 y* _( u4 l6 `
  15. " ~5 {( F; s4 i8 ^2 I1 ?
  16. $xxxx:
    6 [2 H' g! r- w( Y
  17. LDA #$07
    $ ^, [3 p, B" d$ S; L
  18. STA $8000 ;把0x07写入8000端口,选择要切BANK内存地址$A000-$BFFF
    5 I% Q7 S, y+ o7 F  N3 _: A: v9 ?
  19. LDA #$0D
      _: x2 s. Q0 l# I6 o8 @
  20. STA $8001 ;把0x0D写入8001端口,把ROM的$1A010-$1C00F地址内容写回内存地址$A000-$BFFF
    ' G: B' G8 o2 _% P1 ?/ v9 r

  21. 9 d, {9 `6 u2 {6 D# ], b
  22. 切BANK前建议做压栈操作保护寄存器数据,当切换完BANK后出栈还原寄存器数据,这只是建议
    : s: c; \& h& [$ I; ~/ Q
  23. ( z8 R6 l) u' w3 \/ P$ K+ u
复制代码
关于什么时候切BANK:用NMI中断来切BANK吧(在NMI中断程式中插入切换BANK程式)
. E# K, [9 P. _7 w0 R* }% X% ]; }2 v& b1 r# A
附:ROM 16KB BANK编号
& A) W, k! c1 [1 A: f- w- o0 M8 R& S% J& A' g" F+ G
ROMf地址      BANK编号* E0 [" f1 g% c! k  R
00010-0200F  0- S6 G( a2 n9 _  w4 ~; c5 D5 A
02010-0400F  1
) s2 u" p, C% ?' M! u04010-0600F  2% U; C6 r( f/ G+ ]$ m& T9 n
06010-0800F  3
' y3 G  f/ d2 u. L" Y08010-0A00F  4+ U$ n! q& J3 c0 }3 T$ X
0A010-0C00F  5! }) L1 m! t1 q9 k
0C010-0E00F  6
/ C; z  q2 k) Z+ B9 X0E010-1000F  7  I; }: j9 ]* ^5 Z% O
10010-1200F  88 ^4 f% h+ ]) Q1 U
12010-1400F  9& \5 b# Z. D8 P! [
14010-1600F  A9 ^  U; e7 y! D: o6 h1 u( k
16010-1800F  B
% o6 r% [+ t8 b- }+ b18010-1A00F  C, A  X1 F" k* z( J4 j4 H2 j2 b
1A010-1C00F  D
( F+ j5 V' D" x3 u- J1C010-1E00F  E
! M" S5 _' V7 L/ m. o( i1E010-2000F  F
! E) X* l2 b0 E.
; K# I- n: j: _: q( `. {.4 i/ M) _* F; `% V
.
5 f9 M+ ^: z9 [' Q4 X+ d' W; b# y0 p( g4 e
解释一下我为什么把P ROM 128KB扩容到256KB,不扩容到144KB?/ F. n6 n4 |6 w9 M# p+ L) V2 I  Z/ E! t( Q

1 [- Z% j6 x1 F1 p( Y& K7 s  p( o因为扩到144KB的话有的模拟器是不认,无法运行
! v+ v1 g; w. y7 n3 a0 A8 q/ S# m2 \
为了全FC模拟器能兼容,所以只好扩容到256KB! A7 c& D% V6 Y/ ^$ H) C" T7 f, n

5 b) F( A1 P! O% c$ B补充:扩容后记得修改ROM文件头P ROM 16KB数目(地址:0x4),不然有可能引致载入ROM失败或死机3 G" ^: L, C0 e! e6 N1 j( ?' p4 M6 x
( o) v! |! D2 w# p, o8 y, z' D

本帖子中包含更多资源

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

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

签到天数: 434 天

[LV.9]以坛为家II

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

签到天数: 2841 天

[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:}

签到天数: 215 天

[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-2-22 23:42 , Processed in 1.084961 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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