Comandos do ponto de interrupção do depurador

Define o ponto de interrupção [1] no <endereço>.
Limpa todos ou um determinado ponto de interrupção.
Desativa todos ou um determinado ponto de interrupção.
Ativa todos ou um determinado ponto de interrupção.
Lista todos os ponto de interrupção.

bpset

bp[set] <endereço>[:<CPU>][,<condição>[,<ação>]]

Define uma nova execução do breakpoint num determinado <endereço>. O <endereço> pode ser seguido por dois pontos, uma etiqueta ou o número de depuração da CPU para definir um ponto de interrupção para uma determinada CPU. Caso nenhuma CPU seja informada, o ponto de interrupção será definido na CPU que estiver atualmente visível no depurador.

O parâmetro de <condição> opcional permite que você possa definir uma expressão que será avaliada toda a vez que o endereço de um ponto de interrupção for alcançado.

Caso o resultado da expressão seja verdadeiro (não zero), o ponto de interrupção suspenderá a execução; caso contrário, a execução continuará sem qualquer notificação. O parâmetro opcional <ação> fornece um comando para ser executado sempre que o ponto de interrupção for alcançado e a <condição> seja verdadeira. Observe que talvez seja necessário cercar a ação com chaves { } para garantir que as vírgulas e o ponto e vírgula dentro do comando não sejam interpretados no contexto do próprio comando bpset.

A cada ponto de interrupção definido é atribuído a um índice numérico que pode ser usado para se referir a ele em outros comandos de ponto de interrupção. Ao longo de uma sessão, os índices do ponto de interrupção são únicos.

Exemplos:

bp 1234
Define um ponto de interrupção na CPU que estiver visível e suspenda [2] uma execução sempre que PC seja igual à 1234.
bp 23456,a0 == 0 && a1 == 0
Define um ponto de interrupção na CPU que estiver visível e suspenda uma execução sempre que PC seja igual à 23456 e a expressão (a0 == 0 && a1 == 0) seja verdadeira.
bp 3456:audiocpu,1,{ printf "A0=%08X\n",a0 ; g }
Define um ponto de interrupção na CPU com o caminho absoluto da etiqueta :audiocpu que suspenda uma execução sempre que PC seja igual à 3456. Quando isso acontecer, imprime A0=<a0val> no console do deputador e continua a execução.
bp 45678:2,a0==100,{ a0 = ff ; g }
Define um ponto de interrupção na terceira CPU do sistema (num índice com base zero) e que suspenderá uma execução sempre que PC seja igual à 45678 e a expressão a0 == 100 seja verdadeira. Quando isso acontecer, define a0 para ff e continua a execução.
temp0 = 0 ; bp 567890,++temp0 >= 10
Define um ponto de interrupção na CPU que estiver visível e suspenda uma execução sempre que PC seja igual à 567890 e a expressão ++temp0 >= 10 seja verdadeira. Isso apenas será interrompido de forma efetiva depois que o ponto de interrupção for alcançado 16 vezes.

Retorna para Comandos do ponto de interrupção do depurador.

bpclear

bpclear [<bpnum>[,…]]

Limpa todos os pontos de interrupção. Caso um <bpnum> seja definido, apenas os pontos de interrupção relacionados a ele serão limpos, caso contrário, todos serão.

Exemplos:

bpclear 3
Limpa o ponto de interrupção com o índice 3.
bpclear
Limpa todos os pontos de interrupção.

Retorna para Comandos do ponto de interrupção do depurador.

bpdisable

bpdisable [<bpnum>[,…]]

Desativa os pontos de interrupção. Caso um <bpnum> seja definido, apenas os pontos de interrupção citados serão desativados, caso contrário, todos serão.

Observe que ao desativar um ponto de interrupção ele não é eliminado, apenas marca temporariamente o ponto de interrupção como inativo. Os pontos de interrupção desativados não causarão a suspensão da execução, as expressões relacionadas com as suas respectivas condições não serão avaliadas e seus comandos relacionados não serão executados.

Exemplos:

bpdisable 3
Desativa o ponto de interrupção com o índice 3.
bpdisable
Desativa todos os pontos de interrupção.

Retorna para Comandos do ponto de interrupção do depurador.

bpenable

bpenable [<bpnum>[,…]]

Ativa os pontos de interrupção. Caso um <bpnum> seja definido, apenas os pontos de interrupção citados serão ativados, caso contrário, todos serão.

Exemplos:

bpenable 3
Ativa o ponto de interrupção com o índice 3.
bpenable
Ativa todos os pontos de interrupção.

Retorna para Comandos do ponto de interrupção do depurador.

bplist

bplist [<CPU>]

Lista os pontos de interrupção existentes juntamente com seus índices e quaisquer outras condições ou ações associadas. Caso nenhuma <CPU> esteja definida, serão listados os pontos de interrupção para todas as CPUs do sistema, caso contrário, serão listados apenas os pontos de interrupção numa determinada CPU. A <CPU> pode ser definida pela etiqueta ou pelo número da CPU no depurador (consulte o capítulo Determinando os dispositivos e as faixas de endereço para obter mais informações).

Exemplos:

bplist
Lista todos os pontos de interrupção.
bplist .
Lista todos os pontos de interrupção em todas as CPUs disponíveis.
bplist maincpu
Lista todos os pontos de interrupção na CPU com o caminho absoluto da etiqueta :maincpu.

Retorna para Comandos do ponto de interrupção do depurador.