EMU618社区

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

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

 关闭 [复制链接]

该用户从未签到

发表于 2009-11-27 09:43:26 | 显示全部楼层 |阅读模式
想要在模拟器的源代码中插入一个自己的模块,读取模拟器内存的0x0700地址中的数据,并根据数值的不同作出自己的操作。' I) k0 T, b' w2 o3 @0 e
关于内存数据读取,使用了Windows自带的API——ReadProcessMemory(),当中的某一个参数是传入的地址。测试时发觉这个参数传0x0700无效。个人猜想这个0x0700应该仅仅只是模拟器虚拟出来的内存地址(实际上模拟器整个的64K地址应该都是虚拟出来的),数据是通过某种算法从实际的逻辑内存地址中映射过来的。
+ F7 l; Y; N+ t——向高手们求教模拟器的这种映射关系。:yun:( a0 i: |: ?6 n. g

% O8 v6 D3 a+ J7 z5 E' t9 l4 ][ 本帖最后由 独孤残云 于 2009-11-27 09:49 编辑 ]

该用户从未签到

发表于 2009-11-27 11:02:45 | 显示全部楼层
用相对寻址不行么?/ w3 m& S" ]& j8 j3 Z
从模拟器起始地址+载入的游戏的起始偏移地址+0x0700
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-11-18 17:32 , Processed in 1.073242 second(s), 19 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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