EMU618社区

 找回密码
 立即注册
搜索
查看: 867|回复: 1

[求助] 关于模拟器虚拟内存的实际地址映射问题

 关闭 [复制链接]

该用户从未签到

发表于 2009-11-27 09:43:26 | 显示全部楼层 |阅读模式
想要在模拟器的源代码中插入一个自己的模块,读取模拟器内存的0x0700地址中的数据,并根据数值的不同作出自己的操作。
4 {8 h1 V6 h/ b  k- e/ p4 `  d  X( w  m8 M关于内存数据读取,使用了Windows自带的API——ReadProcessMemory(),当中的某一个参数是传入的地址。测试时发觉这个参数传0x0700无效。个人猜想这个0x0700应该仅仅只是模拟器虚拟出来的内存地址(实际上模拟器整个的64K地址应该都是虚拟出来的),数据是通过某种算法从实际的逻辑内存地址中映射过来的。; ]! S" d% G1 d% _
——向高手们求教模拟器的这种映射关系。:yun:" l+ z- }, t  j/ ?1 e" m( r9 f

; x: u, N0 l+ t% B( r[ 本帖最后由 独孤残云 于 2009-11-27 09:49 编辑 ]

该用户从未签到

发表于 2009-11-27 11:02:45 | 显示全部楼层
用相对寻址不行么?! B1 v9 _2 L8 [* o4 H; q
从模拟器起始地址+载入的游戏的起始偏移地址+0x0700
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-5-2 12:54 , Processed in 1.068359 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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