当前位置: 首页 > 工具软件 > MAME > 使用案例 >

MAME模拟器debug帮助文档汉化二(常规指令)

单琛
2023-12-01

常规调试器指令

help

        在控制台中显示内置帮助
do

        求给定表达式的值
symlist

        显示已注册符号列表
softreset

        软重启
hardreset

        硬重启
print

将一个或多个<item>打印到控制台
printf

        使用<format>将一个或多个<item>打印到控制台
logerror

        输出一个或多个<item>到error.log
tracelog

        使用<format>将一个或多个<item>输出到跟踪文件


tracesym

        向跟踪文件输出一个或多个<item>


history

        显示最近访问的PC地址和操作码
trackpc

        可视化地跟踪访问的操作码
trackmem
pcatmem
rewind

        通过加载时间来返回最近的活动状态
statesave

        为仿真系统保存一个状态文件(进度存盘)
stateload

        为仿真系统加载一个状态文件(加载进度)
snap

        保存屏幕快照
source

        从文件中读取命令并逐个执行
time

        将当前机器时间打印到控制台
quit

        退出调试器并结束模拟器

详细说明:

help

help [<topic>]

在调试器控制台显示内置的调试器帮助。如果没有指定<topic>,则列出顶级主题。大多数调试器命令都有相应命名的帮助主题。

Examples:

help

        列出顶级帮助主题。
help expressions

        显示调试器表达式语法的内置帮助。
help wpiset

        显示wpset命令的内置帮助。


do

do <expression>

do命令只是对提供的表达式求值。这通常用于设置或修改设备状态变量(例如CPU寄存器),或写入内存。有关表达式语法的详细信息,请参见调试器表达式语法。

Examples:

do pc = 0

        设置寄存器PC为0。


symlist

symlist [<cpu>]

列出已注册符号及其值。如果不指定<cpu>,则显示全局符号表中的符号;否则,显示设备<cpu>的特定符号。符号按字母顺序排列。注意只读符号。有关指定CPU的详细信息,请参见指定设备和地址空间。

Examples:

symlist

        显示全局符号表。
symlist 2

        显示系统中第3个CPU的符号(从0开始的索引)。
symlist audiocpu

        显示带有绝对标记的CPU符号:audiocpu。


softreset

softreset

执行软复位。这将调用系统中所有设备的reset成员函数(默认情况下,在模拟期间按F3具有相同的效果)。

Examples:

softreset

        执行软复位。


hardreset

hardreset

执行硬复位。这将终止模拟会话,并启动具有相同系统和选项的另一个会话(默认情况下,在模拟期间按Shift+F3具有相同的效果)。注意,这将丢失调试器控制台和错误日志中的历史记录。

Examples:

hardreset

        执行硬复位。


print

print <item>[,…]

print命令将一个或多个表达式的结果以十六进制数的形式输出到调试器控制台。

Examples:

print pc

        将控制台PC寄存器的值以十六进制数字输出到调试器控制台。
print a,b,a+b

        将a、b和a+b的值以十六进制数字的形式输出到控制台。


printf

printf <format>[,<argument>[,…]]

        将c样式的格式化消息打印到调试器控制台。只有非常有限的格式说明符和转义序列子集可用:

%c

        将对应的参数输出为8-bit字符。
%[0][<n>]d

        将对应的参数输出为具有可选最小字段宽度和零填充的十进制数。
%[0][<n>]o

        将对应的参数输出为八进制数,其中具有可选的最小字段宽度和使用小写字母的零填充。
%[0][<n>]x

        输出对应的参数为十六进制数,具有可选的最小字段宽度和使用大写字母的零填充。
%%

        输出百分比符号。
\n

        输出换行符。
\\

        输出反斜杠。

        所有其他格式说明符将被忽略。

Examples:

printf "PC=%04X",pc

       输出PC=<pcval>,其中<pcval>是PC寄存器的十六进制值,至少有4位数字和零填充。


printf "A=%d, B=%d\\nC=%d",a,b,a+b

        在一行上输出A=<aval>, B=<bval>,在另一行上输出C=< a +bval>。


logerror

logerror <format>[,<argument>[,…]]

        将c风格格式化的消息打印到错误日志中。有关受支持的有限格式说明符和转义序列的详细信息,请参阅printf。

Examples:

logerror "PC=%04X",pc

        记录PC=<pcval>,其中<pcval>是PC寄存器的16进制值,至少有4位数字和零填充。


logerror "A=%d, B=%d\\nC=%d",a,b,a+b

        一行记录A=<aval>,一行记录B=<bval>,一行记录C=< A +bval>。


tracelog

tracelog <format>[,<argument>[,…]]

将c风格格式化的消息打印到当前打开的跟踪文件(有关更多信息,请参阅跟踪)。如果没有打开跟踪文件,则此命令无效。有关受支持的有限格式说明符和转义序列的详细信息,请参阅printf。

Examples:

tracelog "PC=%04X",pc

输出PC=<pcval>,其中<pcval>是PC寄存器的十六进制值,如果打开跟踪日志文件,则该寄存器至少有4位数字,并且填充为零。


tracelog "A=%d, B=%d\\nC=%d",a,b,a+b

如果打开跟踪日志文件,则在一行上输出A=<aval>, B=<bval>,在第二行上输出C=< A +bval>。


tracesym

tracesym <item>[,…]

将指定的符号打印到当前打开的跟踪文件(有关更多信息,请参阅跟踪)。如果没有打开跟踪文件,则此命令无效。

Examples:

tracesym pc

        输出PC=<pcval>其中<pcval>是如果打开跟踪日志文件,则以其默认格式显示的PC寄存器值。


history

history [<CPU>[,<length>]]

显示最近访问的PC地址,并在这些地址显示反汇编指令。如果存在第一个参数,为选择CPU(详细信息请参见指定设备和地址空间);如果没有指定CPU,则假定为可见CPU。第二个参数如果存在,则限制所显示的地址的最大数量。地址按从最少到最近访问的顺序显示。

Examples:

history ,5

        显示最多5个最近访问的PC地址和可见CPU的指令。


history 3

        显示最近访问的PC地址和系统中第4个CPU的指令(从0开始的索引)。


history audiocpu,1

        显示最近访问的PC地址和CPU指令,使用绝对标记:audiocpu。

trackpc

trackpc [<enable>[,<CPU>[,<clear>]]]

打开或关闭对反汇编视图的访问PC地址跟踪。在跟踪打开时访问的地址的指示在调试器反汇编视图中突出显示。第一个参数是一个布尔值,指定跟踪应该打开还是关闭(默认为打开)。第二个参数指定要启用或禁用跟踪的CPU(有关详细信息,请参阅指定设备和地址空间);如果没有指定CPU,则假定为可见CPU。第三个参数是一个布尔值,指定是否应该清除现有数据(默认值为false)。

Examples:

trackpc 1

        开始跟踪当前CPU的PC


trackpc 1,0,1

        开始或继续跟踪系统中第1个CPU上的PC(从0开始的索引),并清除迄今为止跟踪的历史记录。


trackmem

trackmem [<enable>,[<CPU>,[<clear>]]]

启用或禁用每次写入内存地址时记录PC地址。第一个参数是一个布尔值,指定跟踪应该启用还是禁用(默认为启用)。第二个参数指定要启用或禁用跟踪的CPU(有关详细信息,请参阅指定设备和地址空间);如果没有指定CPU,则假定为可见CPU。第三个参数是一个布尔值,指定是否应该清除现有数据(默认值为false)。

使用pcatmem检索此数据。在某些配置中,右键单击调试器内存视图也会显示给定地址的日志PC值。

Examples:

trackmem

        开始或继续跟踪可见CPU的内存写操作。
trackmem 1,0,1

        开始或继续跟踪系统中第1个CPU的内存写操作(从0开始的索引),并清除现有的跟踪数据。


pcatmem

pcatmem[{d|i|o}] <address>[:<space>]

返回指定地址最近写入时的PC值。参数是请求的地址,后面可选地跟着冒号和CPU和/或地址空间(详细信息请参阅指定设备和地址空间)。可选的d、i或o后缀控制命令的默认地址空间。

必须为记录该命令使用的数据启用跟踪(参见trackmem)。在某些配置中,右键单击调试器内存视图也会显示给定地址的日志PC值。

Examples:

pcatmem 400000

当在可见CPU的程序空间中位置400000最近被写入时,打印PC值。


pcatmem 3bc:io

        当位置3bc在可见CPU的io空间中最近被写入时,打印PC值。
pcatmem 1400:audiocpu

        当CPU:audiocpu的程序空间的位置1400被写入时,打印PC的值。


rewind

rewind

加载最近的基于ram的已保存状态。当启用时,当使用步进、over和out命令时,会保存倒带状态,存储步进之前的机器状态。可缩写为rw。

连续加载倒带状态可以像反向执行一样工作。根据前面执行的步骤不同,行为可能类似于GDB的反向步进和反向下一个命令。此命令的所有输出当前都返回到正在运行的计算机窗口中。

清除以前的内存和PC跟踪统计信息。实际的反向执行不会发生。

Examples:

rewind

        加载以前ram的基础保存状态。
rw

        命令的缩写形式。


statesave

statesave <filename>

在模拟的当前时刻创建保存状态。状态文件被写入已配置的保存状态目录(参见state_directory选项),并且.sta扩展名自动附加到指定的文件名后。可以缩写为ss。

此命令的所有输出当前都返回到正在运行的计算机窗口中。

Examples:

statesave foo

        将模拟的机器状态保存到文件foo中。Sta在已配置的保存状态目录下。
ss bar

        该命令的缩写形式-将模拟的机器状态保存到bar.sta。


stateload

stateload <filename>

从磁盘恢复保存的状态文件。指定的状态文件从配置的保存状态目录中读取(参见state_directory选项),并且.sta扩展名自动附加到指定的文件名后。可以缩写为sl。

此命令的所有输出当前都返回到正在运行的计算机窗口中。清除以前的内存和PC跟踪统计信息。

Examples:

stateload foo

        从配置的状态目录文件foo.sta加载状态。
sl bar

        该命令的缩写形式——加载文件bar.sta。


snap

snap [<filename>[,<scrnum>]]

获取模拟视频显示的快照,并将其保存到配置的快照目录(请参阅snapshot_directory选项)。如果指定了文件名,则使用指定的文件名保存指定屏幕的单个截图(如果未指定屏幕,则保存系统中的第一个模拟屏幕)。如果未指定文件名,则使用已配置的快照视图和文件名模式(参见snapview和snapname选项)。

如果指定了文件名,则会自动追加。png扩展名。屏幕编号指定为从零开始的索引,如MAME的视频选项菜单中自动生成的单屏视图的名称所示。

Examples:

snap

        使用默认的文件名获取快照。


snap shinobi

        截取第一个模拟视频屏幕的快照,并将其保存为shinobi.png,保存在配置的快照目录中。


source

source <filename>

        以文本模式读取指定文件,并作为调试器命令执行每一行。这类似于运行shell脚本或批处理文件。

Examples:

source break_and_trace.cmd

        从break_and_trace.cmd读取并执行调试器命令。


time

将模拟运行的总时间打印到调试器控制台。

Examples:

time

        打印模拟运行所经过的时间


quit

quit

关闭调试器并立即结束模拟会话。退出MAME或返回系统选择菜单,这取决于启动MAME时是否在命令行上指定了系统。

Examples:

quit

        立即退出模拟会话

 类似资料: