메이플의 개발 스토리
Trace32 명령어 및 디버깅 꿀팁 본문
안녕하세요! 메이플입니다.
오늘은 제가 주로 사용하는 TRACE32 명령어를 설명해드리겠습니다.
TRACE32 라고 구글에 검색하면 정보는 적지 않게 나오지만 제가 필요한 명령어 정보를 검색하는게 어렵더라고요.
그럼 시작하겠습니다!
TRACE32
디버깅 관련 명령어
동작 | 명령어 형식 | 명령어 예시 |
스크립트 실행 | 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