EMU618社区

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

[原创HACK教程] SS HACK教学

[复制链接]

签到天数: 2151 天

[LV.Master]伴坛终老

发表于 2025-6-29 17:13:19 | 显示全部楼层 |阅读模式
游戏:SS怒首领蜂, K* U6 u% ^2 L) u( |' L0 e

0 d0 P( Q  P) \' z4 T9 R7 w8 p/ ?7 i" ]使用调试器:mednafen
3 `& ?* v" ^9 T# }0 \% m2 t) o
0 M" {1 h9 k  u$ C反汇编工具:IDA4 A# D. x6 B7 N+ G6 N" I. a6 Z: e' ~
, c/ y  Y0 c) T! T( P: u, q( ^
16进制编辑器:winhex或其他16进制编辑器  e3 |; ]0 j% W, P: c$ E5 z& Z( q

" b& N& u, X- J% E) {: i4 tmednafen是多机种模拟器,模拟器是通过命令行方式加载游戏,当然你也可以通过前端方式加载游戏,关于mednafen的前端太多,请自行寻找。( b( g* a/ ]- r4 ?7 O

6 Q8 J% S- @  P0 {! j8 g关于SS CPU:. ?5 B3 C# _$ f( O0 B8 a
SS是使用日立SH2作为CPU,关于SH2指令集请自行百度或bing查找。 ( }" r( ]1 @6 n5 X1 S0 ?8 {

: w" P/ `2 [8 g! Q关于SS内存区域:% w5 g8 T$ }, W2 [! C5 b+ K# V
LWRAM 0x00200000~0x002FFFFF6 b. T/ P  z/ o* d; |
5 b. d5 M; ?! @; f: p; q
HWRAM 0x06000000~0x060FFFFF* H# f1 F, V# T7 \' D) c: @! F5 c

- h& r" H/ i8 P" d. @" W5 s+ k68K RAM 0x05A00000~0x05AFFFFF
! E8 ~8 t5 l' x- ]& r9 p& W# B5 `2 f: e2 ]: M* D
1.下载mednafen解压后,运行一次mednafen.exe,生成mednafen.cfg文件,用记事本之类文本编辑工具打开mednafen.cfg,查找全部debugger.disfontsize 5x7,全部替换为debugger.disfontsize 9x18并保存,不这样改调试器显示字体太小。4 O* f1 L% l6 \$ A( G4 @

* L+ ?- @) h7 w1 T- l* u) T关于mednafen调试器用法请参考mednafen模拟器目录下Documentation目录里debugger.html文档。- g. D6 d/ ?" `8 Y) R/ W$ {& P' f4 d: M
' w' _6 c) W2 j8 S" [
2.用mednafen加载SS怒首领蜂,进入游戏后第一步是查找1P飞机数,查找过程略过,我找到1P飞机数地址:0x060c0061
5 ?4 P% P. T4 c) x& \) F2 G# ]& v& Q
3.进入游戏后,按ALT+D调出调试器,按SHIFT+W打开写断点框,输入060c0061后按Enter完成写断点设置;# C# K1 y& z  a1 |+ p5 H
+ A8 n6 a" Q9 u
! S& ~; G2 B+ C# F

; I7 M) C5 `+ D! X" f( ]  C4.按ALT+D退出调试器,回到游戏中死一命后调试器发生中断,程序停在0603A8CA: mov.b r1, @r2
% U9 z: T0 @8 k" _+ a: m0 N: K) u5 k8 r4 v# O: `  m1 b( v2 m

( H7 X( x, R* G& R& O
  f* I# y2 C5 t" r$ l" y5.接下来分析一下:
, r0 W: C2 j% X0603A8C6: mov.b @r2, r1        把r2寄存器地址的数据传递到r1
6 I$ h& [1 P, c5 \1 x- T9 j- U0603A8C8: add #-1, r1                把-1数值和寄存器r1相加,结果存入r1寄存器
; T; K% W' _4 L/ a. ]5 U9 l0603A8CA: mov.b r1, @r2        把r1寄存器的数据传递到r2寄存器的地址里
$ i! e3 G$ _) G( z0 P, r/ i! p  k* z8 c  M
6.只要把0603A8C8: add #-1, r1指令nop掉就飞机数就不减,SH2汇编nop指令机械码是00 09;7 k1 K0 Q& k% F% h& h0 k* A( w
" n5 I; E1 y( E
7.按ALT+3切换内存窗口,还记得前面说的关于SS内存区域吧,0603A8C8地址是HWRAM区域,按CTRL+→切换到High Work RAM区域,按D调出Dump Memory框,输入3A8C6 3A8E0 SS_dump.bin后按Enter,之后会在mednafen模拟器目录下生成SS_dump.bin二进制文件;
1 I# ^9 ]; z( C3 Z6 I( T* j, D6 {1 z. D3 m. f1 U6 n- z7 y  R" @
( g/ |# j& L2 V' t! c: I* c* v  k; F
' @( p) b( D/ V& L0 p3 R. [9 @
8.用IDA反汇编SS_dump.bin结果:% K8 q. x& c, r3 n' q

! e6 Q# h0 u6 E$ H8 tROM:0603A8C6 61 20                 mov.b   @r2, r1
: I8 Z/ r- [, a. G; hROM:0603A8C8 71 FF                 add     #-1, r1
) S3 v- M! b% k7 cROM:0603A8CA 22 10                 mov.b   r1, @r2) @' {' V2 O# o- B7 E. E+ f" m! N
ROM:0603A8CC 61 1E                 exts.b  r1, r1$ Y9 p  C. f; }: y. [$ f6 h
ROM:0603A8CE 41 11                 cmp/pz  r1
; G' u+ f  G/ s, KROM:0603A8D0 8F 07                 bf/s    h'603A8E2; C/ K, |6 T% {. i3 U! y
ROM:0603A8D2 E9 00                 mov     #0, r9, B- G' L( u1 Q9 k% P2 N
ROM:0603A8D4 61 32                 mov.l   @r3, r1' y- b  k/ T. K1 \
ROM:0603A8D6 D2 3E                 mov.l   #h'FFFFFFFF, r2# {' t* d7 N+ J; l
ROM:0603A8D8 21 2B                 or      r2, r1
% Q3 |1 |  B, E9 ]6 r: p  ?ROM:0603A8DA D2 3E                 mov.l   #h'FFFFFFFF, r2
( T( V+ A( F( B# {$ P$ Q
/ L1 ?3 a4 ^4 s4 {) l反汇编结果得知add     #-1, r1指令机械码是71 FF! E( y& g! s4 e
, F  O4 g# e% N- u
9.用winhex打开怒首领蜂镜像,查找 16进制数据“612071FF2210611E41118F07E9006132D23E212BD23E2129A06523”;# p5 y9 J+ d$ p. h1 O

* V2 b$ x4 \& i- u- i  w! h- j; e! p3 z. U7 c; c

" H. m; ^3 u( q1 a# @0 m10.把71 FF修改为00 09,另存为镜像,我不建议覆盖镜像,而是另存为镜像,怕万一改错了引致镜像损坏。5 x& X3 }+ L9 H2 X

; D. O  s# H) \( V8 t+ o
, a3 Z5 }7 F6 X1 T; {. x) n2 X% d; O- l0 M7 C
11.用mednafen载入修改过的SS怒首领蜂镜像,如飞机数不减说明修改成功。
8 N0 x  G) @) j* y" O% j) H* ?* U1 n+ c2 ?

3 m2 T" l$ z7 X. O& {, j( f+ G7 Z, X8 J6 m
12.要刻盘在主机玩请先用ECCREGEN 1.41修复修改过的镜像EDC\ECC。
) N/ H" G7 u9 n' R- F: K/ k8 F5 K
疾风之狼7 G( g: |* }  E* R+ b1 g7 {. @
2025.06.29

本帖子中包含更多资源

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

x

评分

4

查看全部评分

签到天数: 794 天

[LV.10]以坛为家III

发表于 2025-6-29 18:07:07 | 显示全部楼层
修改这些CD游戏
* `% i9 l( M- b: H( }4 H还是用金手指简单点
回复 支持 反对

使用道具 举报

签到天数: 644 天

[LV.9]以坛为家II

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

使用道具 举报

签到天数: 1688 天

[LV.Master]伴坛终老

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

使用道具 举报

签到天数: 864 天

[LV.10]以坛为家III

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

使用道具 举报

签到天数: 875 天

[LV.10]以坛为家III

发表于 2025-8-8 16:07:54 | 显示全部楼层
大佬威武,學會了一點2 `8 R$ |0 f( u: K$ m0 t- W

: t0 k; K/ q- d6 L" W3 }

本帖子中包含更多资源

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

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

使用道具 举报

头像被屏蔽

签到天数: 7 天

[LV.3]偶尔看看II

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

使用道具 举报

签到天数: 1245 天

[LV.10]以坛为家III

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

使用道具 举报

签到天数: 9 天

[LV.3]偶尔看看II

发表于 2025-8-12 12:59:07 | 显示全部楼层
* j& [8 x- N! z: }; m
谢谢分享
8 w" D+ t2 i1 `& I
回复 支持 反对

使用道具 举报

签到天数: 69 天

[LV.6]常住居民II

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-12-5 22:48 , Processed in 1.093750 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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