EMU618社区

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

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

[复制链接]

签到天数: 1987 天

[LV.Master]伴坛终老

发表于 2013-10-24 19:20:46 | 显示全部楼层 |阅读模式
原帖丢失了,重发一份。
, I5 M' {/ M9 ], u& B* H, u8 ~4 p7 ?# ]" }
修改内容:
* M- @; c/ E) ]  b/ v9 T2 |1.P ROM由128KB扩容到256KB8 E' b5 g( `  F" q6 I% x
2.按START+B武器数量为99
/ ^- u# e% q+ ~* {' u3.按START+A补血0 K4 h+ R5 C# e  c: C
! p5 k* J, t; `
这个HACK ROM本来以前答应某人做个例子给参考一下,因工作忙以及以前用的切BANK方法不完善的关系所以没放出来; q7 P2 m* M( |( q% J: o  Z% f% b
9 [6 [  k( b* T5 A
从原单位滚蛋后就有时间来弄一下2 X) i8 {& y" _! I0 S" E
1 x2 ?8 S& J' r' \$ l
关于如何扩容:在文件头后面或驻留体前面添加一大量0xFF或0x00,有可能或在程式中间添加,在哪里视游戏而定吧,有何规律我也不清楚
( U1 P. @% R4 e5 e0 f! Q# A
2 [; l, [2 u2 C; K3 t  q关于如何切BANK:请看相关mapper资料吧
, M2 Y; u$ R7 H, ?5 e* i% |2 b& ~
9 G/ X' l6 g* V* w3 i6 n* N说说我双截龙3 MPPPER 04如何切BANK:

  1. & P: v& p# s5 M( n" {6 u  Q7 m! Y$ p
  2. $xxxx
    - K/ y5 e3 t. |( d: F
  3. LDA #$07
    # n. j; W# M  B3 _" l; ~; X
  4. STA $8000 ;把0x07写入8000端口,选择要切BANK内存地址$A000-$BFFF
    * |2 ?! ^  g$ F& i# y( m
  5. LDA #$0E2 c0 e# O+ U& r- Y) _, `( X
  6. STA $8001 ;把0x0E写入8001端口,把ROM的$1C010-$1E00F地址内容写入内存地址$A000-$BFFF2 M/ Z- H# Z$ N3 X" g
  7. JMP $A000 ;跳转到$A000执行. N& Z" J: u, S6 z+ m7 B
  8. 1 m2 I& ]2 P6 O1 u3 R* B/ p
  9. $A000:
    , m3 ]1 i) Y, ?0 H) I6 H1 q  @
  10. .* n- b6 N  Q5 |: b4 t  G; e
  11. .7 C  A. i* h. i# R- k5 }; s
  12. .
    + q6 t7 Z7 s. \, \9 {6 E
  13. .
      ?# j, b; @# F* _- ^3 \
  14. JMP $xxxx ;执行完自写的程式后跳回去
    9 O, U3 ~) H. B; V& ]) c9 i
  15. . }* W. Z7 H' j4 z4 X% c- K- W
  16. $xxxx:
    ! L# b! _  A+ b+ V+ O; F
  17. LDA #$07
    # _0 j$ k5 u9 \. T9 B; y
  18. STA $8000 ;把0x07写入8000端口,选择要切BANK内存地址$A000-$BFFF
    9 m! n8 @* _' s$ W
  19. LDA #$0D
    + t% n! j, M5 K' y- G3 e- p2 X- Y
  20. STA $8001 ;把0x0D写入8001端口,把ROM的$1A010-$1C00F地址内容写回内存地址$A000-$BFFF
    5 g2 G$ B( \* M7 L% e! _

  21. 9 s/ F( }7 z) Y+ }8 w0 @9 ?& M
  22. 切BANK前建议做压栈操作保护寄存器数据,当切换完BANK后出栈还原寄存器数据,这只是建议
    ' n5 v. j$ b' h2 R

  23. , x8 W# a( M( I
复制代码
关于什么时候切BANK:用NMI中断来切BANK吧(在NMI中断程式中插入切换BANK程式)1 U  h$ F! b4 l' K
: @) u+ N; V$ |3 i$ k
附:ROM 16KB BANK编号9 w9 g1 ~$ m" z: F. h. b

' K: o& w  P' v, p, `+ ?: oROMf地址      BANK编号
. F( y  r! q" U1 y! `8 L00010-0200F  0, Q- g4 q" {: F0 {7 L! A
02010-0400F  1* A8 v% M% I3 X/ ^( M: n
04010-0600F  2
, a. A# _- }7 a# v06010-0800F  3! a# h! Y( W& b, [
08010-0A00F  4* h5 N* W) Z, C
0A010-0C00F  5" t, L6 v$ H2 c9 p0 h) z6 d5 e
0C010-0E00F  6. ]' h$ {( [1 M/ R3 G/ \$ f0 r
0E010-1000F  7
& v0 i  P2 b8 w9 N+ I$ N10010-1200F  8
8 M& Y+ q4 |0 H5 v3 L( J' p12010-1400F  9+ W. M- y& s1 R6 ]# |
14010-1600F  A1 E) p- z' g) M; R5 O& \
16010-1800F  B
; d& S5 R$ ?! R- x4 I/ b* N) d. |5 Y18010-1A00F  C) w0 n4 D9 Y% t+ ?, ~2 ~0 f% N, @
1A010-1C00F  D
* R+ j0 h5 ?- m& K0 V. ]1C010-1E00F  E" \* ?7 X' ^- L' L
1E010-2000F  F* H0 v8 S4 `/ p5 T$ R" C1 C
.: f0 V0 t5 r$ _, m% a
.
4 B6 T! [1 v. d: D7 e8 F7 ].
' z8 y! h$ u( G! N+ \
9 p$ w5 B. T6 x5 [2 Y, z解释一下我为什么把P ROM 128KB扩容到256KB,不扩容到144KB?' Y! F0 y7 H" x; S8 l

$ K3 {$ |* C  {. s因为扩到144KB的话有的模拟器是不认,无法运行
% B! D: q6 V5 Y1 p7 y9 G: F/ v) c+ n
为了全FC模拟器能兼容,所以只好扩容到256KB3 K3 [$ \1 d" X! I
, c, ~3 L+ J5 B  _9 X* P8 v* b
补充:扩容后记得修改ROM文件头P ROM 16KB数目(地址:0x4),不然有可能引致载入ROM失败或死机$ W/ ?* `7 j4 w
; U1 u9 a! C8 B

本帖子中包含更多资源

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

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

签到天数: 434 天

[LV.9]以坛为家II

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

签到天数: 2962 天

[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-24 14:29 , Processed in 1.077149 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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