Comandos gerais do depurador¶
error.log
.help¶
help [<tópico>]
Exibe a ajuda integrada do depurador no console. Caso nenhum <tópico> seja definido, os principais tópicos serão listados. A maioria dos comandos do depurador possuem tópicos correspondentes de ajuda.
Exemplos:
help
help expressions
help wpiset
Retorna para Comandos gerais do depurador.
do¶
do <expressão>
O comando do
simplesmente avalia a expressão fornecida. Geralmente é
utilizado para definir ou alterar a variável do estado do dispositivo
(os registros da CPU por exemplo) ou para escrever na memória.
Consulte A sintaxe das expressões do depurador para obter mais informações sobre a sintaxe da
expressão.
Exemplo:
do pc = 0
pc
como 0
.Retorna para Comandos gerais do depurador.
symlist¶
symlist [<CPU>]
Lista os símbolos registrados e seus respectivos valores. Quando a <CPU> não for definida, os símbolos na tabela de símbolos globais são exibidos, caso contrário, são exibidos os símbolos específicos do dispositivo <CPU>. Os símbolos são listados em ordem alfabética. São anotados apenas os símbolos que sejam somente de leitura. Consulte Determinando os dispositivos e as faixas de endereço para obter mais informações de como definir uma CPU.
Exemplos:
symlist
symlist 2
symlist audiocpu
:audiocpu
.Retorna para Comandos gerais do depurador.
softreset¶
softreset
Executa uma redefinição simples. Invoca as funções do membro reset de todos os dispositivos do sistema (por padrão, o mesmo ocorre ao pressionar F3 durante a emulação).
Exemplo:
softreset
Retorna para Comandos gerais do depurador.
hardreset¶
hardreset
Executa uma redefinição completa. Isso faz o reinicio completo da sessão e inicia uma nova com o mesmo sistema e com as mesmas opções. (por padrão, o mesmo ocorre ao pressionar Shift + F3 durante a emulação). Observe que isso ocasiona a perda do histórico no console do emulador e do registro de erro.
Exemplo:
hardreset
Retorna para Comandos gerais do depurador.
print¶
print <item>[,…]
O comando print
imprime o resultado de uma ou mais expressões no
console do depurador como números hexadecimais.
Exemplos:
print pc
pc
no console como um número hexadecimal.print a,b,a+b
a
, b
e de a
+ b
no console como números hexadecimais.Retorna para Comandos gerais do depurador.
printf¶
printf <formato>[,<argumento>[,…]]
Imprime uma mensagem formatada em estilo C no console de depuração. Apenas um subconjunto muito limitado dos especificadores de formato e das sequências de escape estão disponíveis:
%c
%[-][0][<n>]d
%[-][0][<n>]o
%[-][0][<n>]x
%[-][0][<n>]X
%[-][<n>][.[<n>]]s
\%%
\n
\\
Qualquer outro formato que for utilizado será ignorado.
Exemplos:
printf "PC=%04X",pc
PC=<pcval>
onde <pcval> é o valor hexadecimal do registro pc
com um mínimo de quatro dígitos e preenchimento zero.printf "A=%d, B=%d\\nC=%d",a,b,a+b
A=<aval>, B=<bval>
numa linha e C=<a+bval>
na segunda.Retorna para Comandos gerais do depurador.
logerror¶
logerror <formato>[,<argumento>[,…]]
Imprime uma mensagem formatada em estilo C no registro de erro. Consulte printf para mais detalhes sobre o limitado subconjunto dos especificadores de formato e das sequências de escape.
Exemplos:
logerror "PC=%04X",pc
PC=<pcval>
onde <pcval> é o valor hexadecimal do registro pc
com um mínimo de quatro dígitos e preenchimento zero.logerror "A=%d, B=%d\\nC=%d",a,b,a+b
A=<aval>, B=<bval>
numa linha, e C=<a+bval>
na segunda.Retorna para Comandos gerais do depurador.
tracelog¶
tracelog <format>[,<argumento>[,…]]
Imprime uma mensagem formatada em estilo C para o arquivo de rastreamento aberto no momento (consulte trace para obter mais informações). O comando não tem qualquer efeito caso nenhum arquivo de rastreamento esteja aberto. Consulte printf para obter mais informações sobre o limitado subconjunto dos especificadores de formato e das sequências de escape.
Exemplos:
tracelog "PC=%04X",pc
PC=<pcval>
onde <pcval> é o valor hexadecimal do registro pc
com um mínimo de quatro dígitos e preenchimento zero caso o arquivo de registro de rastreamento esteja aberto.tracelog "A=%d, B=%d\\nC=%d",a,b,a+b
A=<aval>, B=<bval>
numa linha e C=<a+bval>
na segunda, caso o arquivo de registro de rastreamento esteja aberto.Retorna para Comandos gerais do depurador.
tracesym¶
tracesym <item>[,…]
Imprime os símbolos indicados no arquivo de rastreamento aberto no momento (consulte trace para obter mais informações). O comando não tem qualquer efeito caso nenhum arquivo esteja aberto.
Exemplo:
tracesym pc
PC=<pcval>
onde <pcval> é o valor do registro pc
em seu formato padrão caso o arquivo de registro de rastreamento esteja aberto.Retorna para Comandos gerais do depurador.
history¶
history [<CPU>[,<comprimento>]]
Exibe os endereços PC visitados recentemente e a desmontagem das instruções nestes endereços. Se presente, o primeiro argumento seleciona a CPU (consulte Determinando os dispositivos e as faixas de endereço para obter mais informações), caso contrário, assume a CPU que estiver visível. Caso o segundo argumento esteja presente, faz a limitação da quantidade de endereços que será exibido. Os endereços são apresentados na ordem do menor para os mais recentemente visitados.
Exemplos:
history ,5
history 3
history audiocpu,1
:audiocpu
.Retorna para Comandos gerais do depurador.
trackpc¶
trackpc [<ativa>[,<CPU>[,<apaga>]]]
Liga ou desliga o rastreamento do endereço PC visitado para a
visualização da desmontagem. As instruções nos endereços visitados
são destacadas nas visualizações de desmontagem do depurador enquanto o
rastreamento estiver ligado. O 1º argumento é um booleano determinando
se o rastreamento deve ser ativado ou não (o padrão é enabled
). Já
o 2º argumento determina em qual CPU o rastreamento deve ser ativado
ou não (consulte Determinando os dispositivos e as faixas de endereço para obter mais informações).
Quando nenhuma CPU for definida, assume a 1ª CPU que estiver
visível. O 3º argumento é um booleano que determina se os dados
existentes devem ser apagados ou não (o padrão é false
).
Exemplos:
trackpc 1
trackpc 1,0,1
Retorna para Comandos gerais do depurador.
trackmem¶
trackmem [<ativa>,[<CPU>,[<apaga>]]]
Liga ou desliga o registro do endereço PC cada vez que um endereço da
memória for escrito. O 1º argumento é um booleano determinando
se o rastreamento deve ser ativado ou não (o padrão é enabled
). Já o
2º argumento determina em qual CPU o rastreamento deve ser ativado ou
não (consulte Determinando os dispositivos e as faixas de endereço para obter mais informações).
Quando nenhuma CPU for definida, assume a primeira CPU que estiver
visível. O 3º argumento é um booleano que determina se os dados
existentes devem ser apagados ou não (o padrão é false
).
Utilize pcatmem para reaver estes dados. Ao clicar com o botão direito do mouse no visualizado de memória do depurador, também será exibido o valor registrado no PC para dado endereço em algumas configurações.
Exemplos:
trackmem
trackmem 1,0,1
Retorna para Comandos gerais do depurador.
pcatmem¶
pcatmem[{d|i|o}] <endereço>[:<espaço>]
Retorna o valor PC no momento onde o endereço especificado tenha sido recentemente escrito. O argumento é o endereço solicitado, opcionalmente seguido por dois pontos e uma CPU e/ou uma faixa de endereços (consulte Determinando os dispositivos e as faixas de endereço para obter mais informações).
Os sufixos d
, i
ou o
controlam a faixa de endereços padrão para o comando.
O rastreamento deve estar ativado para que os dados utilizados por este comando possam ser gravados (consulte trackmem). Ao clicar com o botão direito do mouse no visualizado de memória do depurador, também será exibido o valor registrado no PC para dado endereço em algumas configurações.
Exemplos:
pcatmem 400000
400000
estiver na região visível do programa na CPU.pcatmem 3bc:io
3bc
estiver na faixa io
da CPU que estiver visível.pcatmem 1400:audiocpu
1400
estiver na faixa do programa :audiocpu
da CPU.Retorna para Comandos gerais do depurador.
rewind¶
rewind
Carrega o estado salvo mais recente da RAM. Quando ativado os estados
rewind
são gravados quando os comando step,
over e out são
utilizados, armazenando o estado do sistema num momento antes do
avanço. Este comando pode ser abreviado para rw
.
A carga consecutiva dos estados rewind
pode funcionar como uma
execução inversa. Dependendo das etapas que foram tomadas
anteriormente, o comportamento pode ser semelhante ao dos comandos
reverse-stepi
e reverse-next
do GDB. Toda a saída deste comando é ecoada em tempo real na janela do sistema que estiver em execução.
As estatísticas anteriores da memória e do rastreamento do PC são apagadas. A atual execução reversa não ocorre.
Exemplos:
rewind
rw
Retorna para Comandos gerais do depurador.
statesave¶
statesave <nome_do_arquivo>
Grava um estado do sistema do momento atual no tempo do emulador. O
arquivo do estado é gravado no diretório de gravação do estado (consulte
a opção state_directory), a
extensão .sta
é adicionada automaticamente ao nome do arquivo. Pode
ser abreviado para ss
.
Toda a saída deste comando é ecoada em tempo real na janela do sistema que estiver em execução.
Exemplos:
statesave foo
foo.sta
no diretório de gravação do estado.ss bar
bar.sta
.Retorna para Comandos gerais do depurador.
stateload¶
stateload <nome_do_arquivo>
Carrega o arquivo de estado a partir do disco. O arquivo do estado é
carregado a partir do diretório de gravação do estado (consulte
a opção state_directory), a
extensão .sta
é adicionada automaticamente ao nome do arquivo. Pode
ser abreviado para sl
.
Toda a saída deste comando é ecoada em tempo real na janela do sistema que estiver em execução. A memória anterior e as estatísticas de rastreamento do PC serão apagadas.
Exemplos:
stateload foo
foo.sta
a partir do diretório de gravação do estado.sl bar
bar.sta
.Retorna para Comandos gerais do depurador.
snap¶
snap [<nome_do_arquivo>[,<scrnum>]]
Faz uma captura da tela emulada e grava no diretório snapshot (consulte a opção snapshot_directory).
Quando um nome é definido, uma única captura é salva usando este nome (o a primeira tela do sistema caso nenhuma tenha sido definida). Quando um nome não é definido, as configurações predefinidas são utilizadas (consulte as opções snapview e snapname ).
A extensão .png
é adicionada automaticamente ao nome do arquivo. O
número da tela é atrabuída num índice com base zero, conforme é visto nos nomes das
visualizações com uma única tela que são geradas automaticamente nos
menus das opções de vídeo do MAME.
Exemplos:
snap
snap shinobi
shinobi.png
no diretório configurado para snapshot.Retorna para Comandos gerais do depurador.
source¶
source <nome_do_arquivo>
Carrega o arquivo em modo texto e executa cada linha como se fossem comandos de depuração. É equivamente a rodar um script shell ou um arquivo batch.
Exemplo:
source break_and_trace.cmd
break_and_trace.cmd
.Retorna para Comandos gerais do depurador.
time¶
Imprime o tempo total decorrido da emulação no console do depurador.
Exemplos:
time
Retorna para Comandos gerais do depurador.
quit¶
quit
Fecha o depurador e encerra a emulação imediatamente. Ou encerra o MAME ou retorna ao menu de seleção do sistema dependendo de como o sistema foi usado na linha de comando, se o MAME foi iniciado sozinho e sem comandos ele retorna para a interface gráfica, caso tenha sido iniciado com algum sistema, o MAME encerra imediatamente.
Exemplo:
quit
Retorna para Comandos gerais do depurador.