EMU618社区

 找回密码
 立即注册
搜索
查看: 350|回复: 9

[原创HACK教程] SS HACK教学

[复制链接]

签到天数: 2049 天

[LV.Master]伴坛终老

发表于 2025-6-29 17:13:19 | 显示全部楼层 |阅读模式
游戏:SS怒首领蜂
4 W' d! M, Q4 }" E5 R# U
5 X" E6 {% `( d使用调试器:mednafen
7 L1 a( q* e6 C5 `* g( X
6 B, K, j) ^! ^反汇编工具:IDA
1 N! ]9 I' }. I$ {( p
; K# t& p! h6 j8 D, \: V! o* z16进制编辑器:winhex或其他16进制编辑器
: l3 E" V- a! k, H5 S0 x+ H
# ^: H2 a) c) i" d' R, o2 A4 rmednafen是多机种模拟器,模拟器是通过命令行方式加载游戏,当然你也可以通过前端方式加载游戏,关于mednafen的前端太多,请自行寻找。' Q( ?+ Q4 P$ \, f2 e. y

5 k& P: V# |" e1 ~. b, u" u+ \6 p关于SS CPU:5 a( s$ _! |1 k- `
SS是使用日立SH2作为CPU,关于SH2指令集请自行百度或bing查找。
% ~+ @$ e. T7 L8 @: C  b  J/ Q6 F6 b  i3 C* e
关于SS内存区域:: i8 T8 ^" H3 _
LWRAM 0x00200000~0x002FFFFF
$ ~; T9 v% l. S1 d+ }& ]& D- S/ g9 z9 s' E9 X$ m2 r+ _
HWRAM 0x06000000~0x060FFFFF/ K$ q1 G& z, _

# a( n3 R# g% C6 b: t68K RAM 0x05A00000~0x05AFFFFF
; L" g1 ]+ w7 j4 P. ]2 t; N3 a
2 P, W' b! K" ?* D3 p  ?  Y* o7 j4 [$ d1.下载mednafen解压后,运行一次mednafen.exe,生成mednafen.cfg文件,用记事本之类文本编辑工具打开mednafen.cfg,查找全部debugger.disfontsize 5x7,全部替换为debugger.disfontsize 9x18并保存,不这样改调试器显示字体太小。
: |7 f, ?7 y  q+ ]( [  _
" c- f4 t4 |. J+ S% f# d4 l8 d关于mednafen调试器用法请参考mednafen模拟器目录下Documentation目录里debugger.html文档。; m( |  W2 l. o; Z7 T6 t
$ z; A+ [. {7 ~6 I! A1 M' V
2.用mednafen加载SS怒首领蜂,进入游戏后第一步是查找1P飞机数,查找过程略过,我找到1P飞机数地址:0x060c00612 |: n5 ^( Z9 h9 H- X
) t* }$ W4 J2 k. P/ J9 m
3.进入游戏后,按ALT+D调出调试器,按SHIFT+W打开写断点框,输入060c0061后按Enter完成写断点设置;
% @! ?1 @" \+ u; r: d$ ^6 ?' t1 V- a2 U8 _

+ J% d: q# I* m8 Z3 u1 q% H) s, |4 K  B
4 e4 ]- D" ^  E  O4.按ALT+D退出调试器,回到游戏中死一命后调试器发生中断,程序停在0603A8CA: mov.b r1, @r2
9 R: W$ I4 }$ }( e. N
# d$ D& i7 K& S, L: s! p* r! t5 m. W) J( k0 T: R

% e! O, w# T0 _4 V3 A5 b5.接下来分析一下:
5 v; E+ B- M8 o$ b) @0603A8C6: mov.b @r2, r1        把r2寄存器地址的数据传递到r16 i) U+ i. c4 W4 u; y0 d! G
0603A8C8: add #-1, r1                把-1数值和寄存器r1相加,结果存入r1寄存器
, E7 ?! u' T6 C! E& j1 s; P. @0603A8CA: mov.b r1, @r2        把r1寄存器的数据传递到r2寄存器的地址里- F3 a" k+ C1 d; `! \. W, w
8 W- t0 g$ G5 u' X
6.只要把0603A8C8: add #-1, r1指令nop掉就飞机数就不减,SH2汇编nop指令机械码是00 09;; c5 V9 Y: U- k" _5 {( M  e
, k/ w6 u4 d7 z* f
7.按ALT+3切换内存窗口,还记得前面说的关于SS内存区域吧,0603A8C8地址是HWRAM区域,按CTRL+→切换到High Work RAM区域,按D调出Dump Memory框,输入3A8C6 3A8E0 SS_dump.bin后按Enter,之后会在mednafen模拟器目录下生成SS_dump.bin二进制文件;. h. U  D( O3 v1 _

& ]) e7 [2 {0 l, i! s# g% H. N7 s+ w" r8 K
- M! N* F+ \- @5 m( `
8.用IDA反汇编SS_dump.bin结果:! G5 }: H6 w6 e$ n  Q; ~- S0 p
( K( |/ E) ~: X0 Y* j. O( S% n! }/ S
ROM:0603A8C6 61 20                 mov.b   @r2, r1$ z( J  F. `# q9 d# x2 w
ROM:0603A8C8 71 FF                 add     #-1, r1" i# P# c( V5 E) m8 W
ROM:0603A8CA 22 10                 mov.b   r1, @r2; P8 U! x0 ^; S! z" G8 R
ROM:0603A8CC 61 1E                 exts.b  r1, r1
% r0 w- V  m+ N: @! YROM:0603A8CE 41 11                 cmp/pz  r1- C+ j; I6 }  K2 C  H
ROM:0603A8D0 8F 07                 bf/s    h'603A8E2: ^5 l+ d5 H' ]  s1 u9 e
ROM:0603A8D2 E9 00                 mov     #0, r9
7 h3 a* X' u3 o- m; k% [ROM:0603A8D4 61 32                 mov.l   @r3, r14 d! `; `% A! F: u9 S+ w
ROM:0603A8D6 D2 3E                 mov.l   #h'FFFFFFFF, r2* k- b& n/ l$ V0 V' A9 Z" m
ROM:0603A8D8 21 2B                 or      r2, r1
; y, O" d4 S7 w( OROM:0603A8DA D2 3E                 mov.l   #h'FFFFFFFF, r2
, [5 n% L! Y, W
0 |& P% l4 C6 T; e" ]反汇编结果得知add     #-1, r1指令机械码是71 FF
* a; N' S0 g+ ?% i2 T% n
3 A* q- y) W- ~5 t, j9.用winhex打开怒首领蜂镜像,查找 16进制数据“612071FF2210611E41118F07E9006132D23E212BD23E2129A06523”;( k( b9 @9 Q9 r; b; `- k% U1 c
) U9 U2 j3 Z, Z. a, y+ k4 z# b) m
4 G3 D+ }/ k& y* p% \. {
- y) ^# g/ v. h8 r
10.把71 FF修改为00 09,另存为镜像,我不建议覆盖镜像,而是另存为镜像,怕万一改错了引致镜像损坏。
* X4 f# {' P  G  l  y
3 f/ ]# S/ a* q- c# A2 s2 }, b( S
& J  f3 _0 {) A- }, Z8 l& u5 _. ]( _
11.用mednafen载入修改过的SS怒首领蜂镜像,如飞机数不减说明修改成功。5 P% u- {6 t# s2 P8 T! V

6 O5 k' P2 z' {. W; L9 z
3 r1 `# ]4 i. [; p+ B
6 V/ n# H+ s# k$ n5 U% i12.要刻盘在主机玩请先用ECCREGEN 1.41修复修改过的镜像EDC\ECC。
7 q9 c( k" k5 e2 V. Z2 g/ E
% Q4 t" Y* I# R. d! }
疾风之狼
* Z5 P5 I: \2 |* A& R2025.06.29

本帖子中包含更多资源

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

x

评分

4

查看全部评分

签到天数: 691 天

[LV.9]以坛为家II

发表于 2025-6-29 18:07:07 | 显示全部楼层
修改这些CD游戏
$ Z: \. T# u; z  g# k4 `: m5 A还是用金手指简单点
回复 支持 反对

使用道具 举报

签到天数: 632 天

[LV.9]以坛为家II

发表于 2025-6-29 21:21:43 | 显示全部楼层
很厉害的教程,本人愚钝,看起来好难
[发帖际遇]: liuqi459120528花12 个 柠檬买彩票,血本无归T_T. 幸运榜 / 衰神榜
回复 支持 反对

使用道具 举报

签到天数: 1586 天

[LV.Master]伴坛终老

发表于 2025-6-29 22:36:28 | 显示全部楼层
感谢老大分享
回复 支持 反对

使用道具 举报

签到天数: 785 天

[LV.10]以坛为家III

发表于 2025-6-30 10:49:56 | 显示全部楼层
谢谢分享
回复 支持 反对

使用道具 举报

签到天数: 800 天

[LV.10]以坛为家III

发表于 2025-8-8 16:07:54 | 显示全部楼层
大佬威武,學會了一點
  G$ t) o2 `5 {1 W1 V4 L4 j, C. M. o2 O  k% \# \' P3 |

本帖子中包含更多资源

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

x
[发帖际遇]: foxshen摆地摊卖菜,占道经营被城管罚款 2 个 柠檬. 幸运榜 / 衰神榜
回复 支持 反对

使用道具 举报

头像被屏蔽

签到天数: 7 天

[LV.3]偶尔看看II

发表于 2025-8-10 00:15:25 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
[发帖际遇]: xy4444 乐于助人,奖励 4 个 柠檬. 幸运榜 / 衰神榜
回复 支持 反对

使用道具 举报

签到天数: 1182 天

[LV.10]以坛为家III

发表于 2025-8-10 22:52:26 | 显示全部楼层
哈!很棒很不錯的教學,我也要來看看
[发帖际遇]: lucifer666整理箱子竟然翻出了 8 个 柠檬. 幸运榜 / 衰神榜
回复 支持 反对

使用道具 举报

签到天数: 8 天

[LV.3]偶尔看看II

发表于 2025-8-12 12:59:07 | 显示全部楼层
/ Z9 o$ d  ]9 N' x9 N7 s, j0 ?& A5 r
谢谢分享
+ M* E! X! ~2 G" p$ d
回复 支持 反对

使用道具 举报

签到天数: 57 天

[LV.5]常住居民I

发表于 2025-8-12 22:45:51 | 显示全部楼层
虽然看不懂还是支持一下
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-8-24 18:38 , Processed in 1.091797 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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