读取存储在存储位置的值

时间:2014-03-09 21:55:57

标签: python linux

我有一个.dat文件(我相信)会在advmame中将高分存储在名为hiscore.dat的文件中。从我的理解,我可能是错的,.dat文件存储游戏名称和该游戏的高分的内存地址:

foogame:  ;******foo game
0:6105:9e:10:10
0:7661:1:10:10
0:7641:1:00:00
0:7621:1:00:00
0:7601:1:07:07
0:75e1:1:06:06
0:75c1:1:05:05
0:75a1:1:00:00

在python中,有没有办法读取存储在这些内存位置的值?

已编辑 - 根据文件顶部的说明:

;This file should be in the same directory of MAME.EXE .
;
;This file can be edited with a text editor, but keep the same format:
; all fields are separated by a colon (:)
; <gamename>:
; <cpu>:<address>:<length>:<value to wait for
; in the first byte/word>:<value to wait for in the last byte/word>
; [repeat the above as many times as necessary]

关于hiscore.dat的一些额外信息:

Info on hiscore.dat for mame

A hiscore.dat file is needed so your modified version of MAME will read to know which memory addresses contain the high scores for supported games. 

1 个答案:

答案 0 :(得分:1)

MAME是街机游戏系统中使用的各种计算机的模拟器。该文件中引用的“内存地址”是仿真机内存中的地址,而不是您自己系统内存中的地址。虽然可以使用操作系统的调试钩子在运行游戏时查看MAME的内存并在其中找到模拟系统的内存(然后在模拟内存中查找游戏的高分),我怀疑它将会比它的价值更麻烦。

确实,按照您提供的“信息”链接提示highscores.dat的全部内容是告诉MAME如何在正在运行的游戏中找到高分,以便它可以为您保存(对其他人)文件,我假设)。该链接是关于作者使用a patch进行保存的经验。