EMU618社区

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

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

[复制链接]

签到天数: 2091 天

[LV.Master]伴坛终老

发表于 2013-10-24 19:20:46 | 显示全部楼层 |阅读模式
原帖丢失了,重发一份。
! ^7 o7 j4 S8 J) T; T% N- }! [2 Q7 B/ }$ R
修改内容:/ r& H8 l5 j$ d
1.P ROM由128KB扩容到256KB1 `1 @) S. S' [" a7 e6 g
2.按START+B武器数量为99
, r; A8 P1 n- j2 R( z2 s  a- t0 x, k3.按START+A补血
% W5 j8 P( N' k3 W1 x3 }2 c! ^
- s$ V+ l+ x1 K/ r这个HACK ROM本来以前答应某人做个例子给参考一下,因工作忙以及以前用的切BANK方法不完善的关系所以没放出来: ~/ `' v2 Y" a) W

% V1 L* K/ k& r; \) |从原单位滚蛋后就有时间来弄一下4 [* s* b4 N5 T- F

) ?4 b5 Q( d8 v! b1 \+ A0 W3 {# @+ w关于如何扩容:在文件头后面或驻留体前面添加一大量0xFF或0x00,有可能或在程式中间添加,在哪里视游戏而定吧,有何规律我也不清楚9 a; q" j& [  p  }( l) J$ f) @

7 t+ D8 A8 A5 r9 w关于如何切BANK:请看相关mapper资料吧
1 M' \) b' y# Q( p6 L  R" D. R2 g7 `' N( u$ ~1 Q! p  \
说说我双截龙3 MPPPER 04如何切BANK:
  1. ) o0 ^; l2 ~( w: g6 R
  2. $xxxx
    / G; g9 T0 s5 X8 X3 Y3 d; u+ Q8 p
  3. LDA #$071 ?7 i; N% I! O( @+ k
  4. STA $8000 ;把0x07写入8000端口,选择要切BANK内存地址$A000-$BFFF$ D; V  k3 l' B1 h; v, h
  5. LDA #$0E
    " @) k7 V# K5 ^) V" Q: }
  6. STA $8001 ;把0x0E写入8001端口,把ROM的$1C010-$1E00F地址内容写入内存地址$A000-$BFFF
    5 M0 E& W! t1 U% @
  7. JMP $A000 ;跳转到$A000执行. f* g, `1 l$ s! Z4 ]0 g
  8.   D$ r  A" }, ^* l# m* o% S! F
  9. $A000:
    / @7 x7 n/ s/ V7 a
  10. .
    " o, c1 p( t  W9 f) p
  11. .
    : l8 E  H  j( H* H
  12. .4 n! w6 l, a$ B+ j. ]* F" `# ^
  13. .
    % Z2 s8 [# D  H( D! K7 a0 A3 n
  14. JMP $xxxx ;执行完自写的程式后跳回去
    : v- h. X; ]& D% `1 t6 a3 C
  15. 7 l, @, W$ W$ h, M
  16. $xxxx:
    8 f3 }$ R( ]- O/ E
  17. LDA #$07
    5 r  a* r3 t# j: U1 c* v
  18. STA $8000 ;把0x07写入8000端口,选择要切BANK内存地址$A000-$BFFF/ B! R- W! r) o: X
  19. LDA #$0D
    8 h; O8 u- d; v* S- j$ B. z
  20. STA $8001 ;把0x0D写入8001端口,把ROM的$1A010-$1C00F地址内容写回内存地址$A000-$BFFF
    4 z. a8 z0 ?6 z4 t
  21. 3 V5 E6 B# x, ]2 ]
  22. 切BANK前建议做压栈操作保护寄存器数据,当切换完BANK后出栈还原寄存器数据,这只是建议
      P! E  I- D' ]3 Q( R3 Z
  23. ; f% v3 @% o3 }* J" X2 j
复制代码
关于什么时候切BANK:用NMI中断来切BANK吧(在NMI中断程式中插入切换BANK程式)
4 j+ P# X9 Z* N
" l  v5 G% }. q% q( S7 |( K3 F附:ROM 16KB BANK编号
# y/ Z8 B; V4 Z  U
$ I3 e# ?& ^! sROMf地址      BANK编号4 z3 ?+ t; a! t$ \1 F. M
00010-0200F  0
" y8 T( u" Z& [4 r* U! M02010-0400F  1! d2 e' O/ U$ ?8 _! ]# e; B
04010-0600F  2, Y$ S/ t/ K/ z% f7 p' E0 A
06010-0800F  39 c- j0 M, `, y! s) V" Q' Y$ B7 {6 E
08010-0A00F  4/ z# |2 }$ q4 U/ N
0A010-0C00F  51 T# T& H' _& O" `  G% y) d* t9 E
0C010-0E00F  62 F0 J+ c7 p: @3 U4 p
0E010-1000F  7) w7 @5 X. [+ s
10010-1200F  8( J% {5 v- ]) e+ d! N! W
12010-1400F  9$ g! s9 B( {# ~3 u8 Q/ V1 L5 ?
14010-1600F  A
' H$ U* T, e1 O. |# a4 V# H16010-1800F  B
" x& i0 ]$ [$ A4 t; k18010-1A00F  C
* d' ?2 t8 l; h9 x1A010-1C00F  D
  z& H/ y0 d; |  L& D$ Q( S1C010-1E00F  E
0 f& {; r" U9 D1E010-2000F  F3 A. i0 ~" A9 {& R2 n
.
$ v+ v, K9 m' Q( z" \, _' D.
: Z, O' c5 S7 r! S' w.* Y! }- U% K' M! Y5 ~! @

4 B+ Y% L9 p  Y) T  O解释一下我为什么把P ROM 128KB扩容到256KB,不扩容到144KB?% ^( B  Y4 U# l3 k  K: {

% |7 ?* K# c  R' x% L" S& \6 H因为扩到144KB的话有的模拟器是不认,无法运行
1 A2 k' Q2 j: L# u2 B' _+ N5 d: Y- \& I. H; x% W& M
为了全FC模拟器能兼容,所以只好扩容到256KB6 n. }# o3 Y: h! r( W3 c

  _5 f' R4 S; j6 @: [! i补充:扩容后记得修改ROM文件头P ROM 16KB数目(地址:0x4),不然有可能引致载入ROM失败或死机
. x. n3 m# e) x1 S6 T' J1 r
4 I* E% \+ q8 O! J/ ]' r

本帖子中包含更多资源

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

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

签到天数: 434 天

[LV.9]以坛为家II

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

签到天数: 3060 天

[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-10-5 16:16 , Processed in 1.071289 second(s), 28 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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