Other Parts Discussed in Thread: MSP430F449
Dear Gentlemen,
i am reading the code of a MSP430F449 from an instrument i have here, that i am going to repair. I suspect a fault on the CPU so the purpose is just to check the code, and eventually be able to execute some "step" with the debugger.
I thought the producer is keeping the code protected (fuse), but i could read it, or at least so it seems.
But i am not sure if the entire whole area has been read correctly, i am safely assuming the whole code is good.
This is the command i issue to read the code:
sudo mspdebug pif -j -d /dev/parport0
██ [ repair ] [ 13:58:01 ]
██ sudo mspdebug pif -j -d /dev/parport0
MSPDebug version 0.22 - debugging tool for MSP430 MCUs
Copyright (C) 2009-2013 Daniel Beer <dlbeer@gmail.com>
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Starting JTAG
JTAG ID: 0x89
Chip ID: F449
Chip ID data: f4 49
Available commands:
= erase isearch power save_raw simio
alias exit load prog set step
break fill load_raw read setbreak sym
cgraph gdb md regs setwatch verify
delbreak help mw reset setwatch_r verify_raw
dis hexout opt run setwatch_w
Available options:
color gdb_loop
enable_bsl_access gdbc_xfer_size
enable_locked_flash_access iradix
fet_block_size quiet
gdb_default_port
Type "help <topic>" for more information.
Use the "opt" command ("help opt") to set options.
Press Ctrl+D to quit.
To read the code i use:
save_raw 0x1000 0xF000 dump.bin
some code below:
(mspdebug) di 0xffe0
0xffe0:
0ffe0: 80 c8 ff ff BIC R8, 0xffe1
0ffe4: 6a bc BIT.B @R12, R10
0ffe6: ff ff 54 e5 AND.B @R15+, 0xe554(R15)
0ffea: 70 dd BIS.B @R13+, PC
0ffec: f2 da ff ff BIS.B @R10+, &0xffff
0fff0: 36 f7 AND @R7+, R6
0fff2: 78 b4 BIT.B @R4+, R8
0fff4: ff ff ff ff AND.B @R15+, 0xffff(R15)
0fff8: 48 fd AND.B R13, R8
0fffa: ff ff ff ff AND.B @R15+, 0xffff(R15)
0fffe: 68 24 JZ 0x100d0
(mspdebug) dis 0x80c8
0x80c8:
080c8: 6f 4a MOV.B @R10, R15
080ca: 0f 5f RLA R15
080cc: 0e 4f MOV R15, R14
080ce: 0f 5f RLA R15
080d0: 0f 5f RLA R15
080d2: 0e 5f ADD R15, R14
080d4: 0f 5f RLA R15
080d6: 0f 5e ADD R14, R15
080d8: ff 90 03 00 51 03 CMP.B #0x0003, 0x0351(R15)
080de: 05 20 JNZ 0x80ea
080e0: cf 43 43 03 CLR.B 0x0343(R15)
080e4: ef 42 51 03 MOV.B #0x0004, 0x0351(R15)
080e8: 5c 3c JMP 0x81a2
080ea: ef 43 43 03 MOV.B #0x0002, 0x0343(R15)
080ee: cf 43 51 03 CLR.B 0x0351(R15)
080f2: 32 3c JMP 0x8158
Every comment is appreciated.