본문 바로가기

메이플의 개발 스토리

Trace32 명령어 및 디버깅 꿀팁 본문

기타 개발 관련

Trace32 명령어 및 디버깅 꿀팁

mapled 2021. 12. 2. 16:13

안녕하세요! 메이플입니다.

오늘은 제가 주로 사용하는 TRACE32 명령어를 설명해드리겠습니다.

TRACE32 라고 구글에 검색하면 정보는 적지 않게 나오지만 제가 필요한 명령어 정보를 검색하는게 어렵더라고요.

그럼 시작하겠습니다!


TRACE32

출처 https://www.trace32.com:49813/product/product_view.php?uid=311&mnu=1&_m_=01

 

디버깅 관련 명령어

동작 명령어 형식 명령어 예시
스크립트 실행 do <script file> do startup.cmm
Step s s
현재 소스코드 출력 l
특정 함수 소스코드 출력 ㅣ <function name> l main

 

값 출력 및 설정 관련 명령어

동작 명령어 형식 명령어 예시
변수 값 출력 V <variable>
V.V <variable>
v idx
v.v idx
변수 값 설정 V <variable>=<value> v idx = 0
주소 값 출력 D D:<address>
D.V D:<address>
d d:0x5001FE
d.v d:0x5001FE
주소 값 설정 D.S D:<address> <value> D.S D:0x5001FE %LE 0xBB
D.S D:0x500000 %LE %WORD 0x00FF

 

중단점 설정 관련 명령어

동작 명령어 형식 명령어 예시
Break point 설정 B.S <function>\<function line number> /p B.S main\83 /P
b.s func1\8 /P /CMD "PRINT ""address 0x500080 = "" (data.WORD(d:0x500080))" /RESUME
변수 값이 WR될 때, 변수 값 설정 v.break <variable> /WRITE /CMD "v <variable>=<value>" v.break userId /WRITE /CMD "v userId=0x30" /RESUME
주소 값이 WR될 때, 주소 값 설정 B.S <address> /WRITE /CMD "D.S D:<address> <value>" B.S 0x5001FE /WRITE /CMD "D.S D:0x5001FE 0xBB"

 

소스코드 화면에서 어셈블리어 활성화/비활성화

상단의 Mode 버튼을 통해 아래와 같이 어셈블리 코드를 비활성화 할 수 있습니다.

 

스크립트에서 디버깅

pedit <script file> 명령어를 입력하면 아래 이미지와 같이 뜹니다. 

Debug 버튼을 누르면 스크립트를 한줄 한줄 실행 가능하다.

 

Comments