设为首页收藏本站

 找回密码
 立即注册
搜索
查看: 727|回复: 4

[求助] 某种特殊情况下该怎样解决?

[复制链接]

签到天数: 29 天

[LV.4]偶尔看看III

发表于 2012-9-25 17:42:38 | 显示全部楼层 |阅读模式
我在修改的过程中遇到一些只有2个字节的数据+ ?9 p0 B) g  t$ ?4 p% U
例如 :      ( y' |1 E7 I. X3 \' B) J6 K
C021:  85 16  STA$16                           85 16     两个$ Z5 h% O0 Q9 v' ~5 z
" {" }; _8 P8 I  ?3 G$ y
# i) p) S7 `: W3 q9 e; a
然后我需要在这里修改成跳转,但是要跳转的地方需要3个字节l来修改:2 A9 q+ a# E" x, m
例如:& `' C1 u/ s1 I- k
C021:4C BFF0 JMP$F0BF                   4C BFF0   三个/ i! [  O) n) v8 r8 Y
; b+ Y  u2 U& ^/ }# ^% j! U9 O

% d' G/ U5 p0 Q+ D连续的数据是:5 K9 }, T8 s7 j# A' g/ v
9 h; }$ F: j/ a: e
C020:14 85 16 A5 15 85 17 A9 00 90 A5 95 D0 08 A5! Q( p+ q8 c" V$ P6 K0 r! I1 P
2 v: b/ U& ~3 s: I3 ?, T: U
0 }7 V3 n: |" {8 _
这种情况下我改怎样修改,但是原数据只有2个字节,如果我这里改成3个字节会对后面连续的数据造成破坏,我应该怎样改呢?
" b1 ~) K5 E' b; `% p
" e8 P- }" i8 a, g+ S不知道自己有没表达的清楚...希望大家能看懂我的意思..

该用户从未签到

发表于 2012-9-25 18:06:12 | 显示全部楼层
本帖最后由 money_114 于 2012-9-25 18:07 编辑
- u/ K# Q7 K3 v3 a1 z4 r* T4 ?0 J7 r$ g8 a! F$ y, q# O" q  Z- T
就直接跳转, 然后在跳转地址这把前面修改的命令补全
# j0 [) E! n, R* ?- Y  S/ S' V
9 J3 H! y) J% w% e9 f跳转命令看这, 写的很清楚了
, e: j1 ]6 A# v8 M# W7 f+ [/ N; h" chttp://shinwa.kami.blog.163.com/ ... 047200822563622456/
0 P6 {( C) M& {# }6 ?% H
[发帖际遇]: money_114 捡了钱没交公 柠檬 降了 2 个 . 幸运榜 / 衰神榜
回复

使用道具 举报

签到天数: 1914 天

[LV.Master]伴坛终老

发表于 2012-9-25 18:10:06 | 显示全部楼层
  1. C021:& x& a+ d1 ]& d' C$ @  T
  2. 85 16 STA $16  ->4C BF F0 JMP $F0BF5 t1 p3 s/ d  f# R/ k  _- f! |
  3. A5 15 LDA $15  ->EA       NOP/ T$ t8 \8 V, K, S- ^
  4. 85 17 STA $17
    / _: K5 D! b. M2 i: ], F6 k7 o
  5. A9 00 LDA #$00
    ) {4 x0 z& Y! S/ {" M

  6. ) I& y- }+ Z2 q. U! `
  7. F0BF:
    : ~) k# e  _: s5 l2 Q# J) j
  8. 85 16 STA $16: H* M) ]. D1 y, {8 c- _5 m! ^
  9. A5 15 LDA $15+ C, e% N, b$ D9 e
  10. ./ ?* ^. S5 ^% q- w9 Z: s
  11. .
    + o: U$ \7 k  s7 w. K! d# t2 ?
  12. .
    - R! _4 e6 R' W8 z1 ~( A7 b0 q9 z
  13. .
复制代码
[发帖际遇]: 疾风之狼 被钱袋砸中进医院,看病花了 1 个 柠檬. 幸运榜 / 衰神榜
回复

使用道具 举报

签到天数: 29 天

[LV.4]偶尔看看III

 楼主| 发表于 2012-9-25 19:51:21 | 显示全部楼层
本帖最后由 rxlzh 于 2012-9-25 19:54 编辑 ; x5 {3 C7 @) O9 J# c
疾风之狼 发表于 2012-9-25 18:10
4 @" x9 t8 E1 g) `3 e4 t' O

+ m0 {( V. `( \( B2 u: y- [狼大,我按照你的方法,不知对不。* K; b, w) _. i1 x" [& ?4 E
' c1 H1 o8 @/ p. W" r

& K& W( Q! d: T" i原数据
: e' V  m7 v7 g" J% }1 wC021:       85 16 A5 15 85 17
6 f3 K/ m3 e8 [) N: c2 L8 E! g" d
# E) f; D* \; E修改后
* C& |3 g. H$ kC021:       4C BF F0 15 85 17                  把连续的数据A5覆盖掉跳转到F0BF8 Q  b" g! ^; F, L$ K
- `4 ~/ ?/ k8 M* \1 M$ A% G
; M8 j" l2 ~+ B# W$ F2 h
F0BF:85 16  A5 15  4C 25 C0                重新写入原数据和后面被覆盖的A5然后跳回C025
- D: R% K* G" Y* }; U
5 j, e) k# b# I/ ^
2 K) O# x* L5 E9 o  A; u  m
& e3 h0 V( E- c- w( @* e) T我之前也用这个方法测试过一次,不知为啥返回模拟器继续运行提示错误。
回复

使用道具 举报

签到天数: 29 天

[LV.4]偶尔看看III

 楼主| 发表于 2012-9-25 20:03:47 | 显示全部楼层
本帖最后由 rxlzh 于 2012-9-25 20:08 编辑 ' S# b% @( o6 L/ a7 c# v) e
- d$ {8 T0 C9 R: g2 x
看了money的文章后,这次我把前面的几句指令也列举出来:8 O! m9 X! P! z5 z. H, e
C01F: A5 14 LDA $14               :A=0x12
# }* p9 M; h. `+ GC021: 85 16 STA $16               :[0016]=A=0x12
7 D4 t1 @- g% x3 u) v8 y5 W# l. ]/ B5 h/ Z& {$ `" m6 a) ]
根据文章的内容我是不是应该从C01F这个地址开始修改呢。
  \$ I" Q7 M. F我现在重新动手测试一下,有问题再来请教你们' Y3 x6 a* Z% }4 v- {

% n% _0 k2 g- y* }7 x
7 ]/ C0 G9 \% R经过我测试后发现可行,在C01F地址那开始修改,没有出现错误,再次感谢你的文章{:4_103:}
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-4-7 09:01

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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