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.