OpenCores
URL https://opencores.org/ocsvn/openmsp430/openmsp430/trunk

Subversion Repositories openmsp430

[/] [openmsp430/] [trunk/] [tools/] [openmsp430-gdbproxy/] [commands.tcl] - Diff between revs 198 and 217

Show entire file | Details | Blame | View Log

Rev 198 Rev 217
Line 27... Line 27...
# 
# 
# Author(s):
# Author(s):
#             - Olivier Girard,    olgirard@gmail.com
#             - Olivier Girard,    olgirard@gmail.com
#
#
#------------------------------------------------------------------------------
#------------------------------------------------------------------------------
# $Rev: 198 $
# $Rev: 217 $
# $LastChangedBy: olivier.girard $
# $LastChangedBy: olivier.girard $
# $LastChangedDate: 2014-10-07 21:30:05 +0200 (Tue, 07 Oct 2014) $
# $LastChangedDate: 2016-08-01 23:04:04 +0200 (Mon, 01 Aug 2016) $
#------------------------------------------------------------------------------
#------------------------------------------------------------------------------
 
 
global mem_breakpoint
global mem_breakpoint
global mem_mapping
global mem_mapping
global breakSelect
global breakSelect
Line 96... Line 96...
#-----------------------------------------------------------------------------#
#-----------------------------------------------------------------------------#
# Read CPU registers                                                          #
# Read CPU registers                                                          #
#-----------------------------------------------------------------------------#
#-----------------------------------------------------------------------------#
proc rsp_g {CpuNr} {
proc rsp_g {CpuNr} {
 
 
 
    global mspgcc_compat_mode
 
 
    # Read register value
    # Read register value
    set reg_val [ReadRegAll $CpuNr]
    set reg_val [ReadRegAll $CpuNr]
 
 
    # Format answer
    # Format answer
    set rsp_answer ""
    set rsp_answer ""
    for {set i 0} {$i < [llength $reg_val]} {incr i} {
    for {set i 0} {$i < [llength $reg_val]} {incr i} {
 
 
        regexp {0x(..)(..)} [lindex $reg_val $i] match msb lsb
        regexp {0x(..)(..)} [lindex $reg_val $i] match msb lsb
 
        if {$mspgcc_compat_mode} {
        append rsp_answer "$lsb$msb"
        append rsp_answer "$lsb$msb"
 
        } else {
 
            append rsp_answer "$lsb${msb}0000"
 
        }
    }
    }
 
 
    return $rsp_answer
    return $rsp_answer
}
}
 
 
#-----------------------------------------------------------------------------#
#-----------------------------------------------------------------------------#
# Write CPU registers                                                         #
# Write CPU registers                                                         #
#-----------------------------------------------------------------------------#
#-----------------------------------------------------------------------------#
proc rsp_G {CpuNr cmd} {
proc rsp_G {CpuNr cmd} {
 
 
 
    global mspgcc_compat_mode
 
 
    # Format register value
    # Format register value
 
    if {$mspgcc_compat_mode} {
    set num_reg [expr [string length $cmd]/4]
    set num_reg [expr [string length $cmd]/4]
 
    } else {
 
        set num_reg [expr [string length $cmd]/8]
 
    }
    set reg_val ""
    set reg_val ""
    for {set i 0} {$i < $num_reg} {incr i} {
    for {set i 0} {$i < $num_reg} {incr i} {
 
        if {$mspgcc_compat_mode} {
        set lsb "[string index $cmd [expr $i*4+0]][string index $cmd [expr $i*4+1]]"
        set lsb "[string index $cmd [expr $i*4+0]][string index $cmd [expr $i*4+1]]"
        set msb "[string index $cmd [expr $i*4+2]][string index $cmd [expr $i*4+3]]"
        set msb "[string index $cmd [expr $i*4+2]][string index $cmd [expr $i*4+3]]"
 
        } else {
 
            set lsb "[string index $cmd [expr $i*8+0]][string index $cmd [expr $i*8+1]]"
 
            set msb "[string index $cmd [expr $i*8+2]][string index $cmd [expr $i*8+3]]"
 
        }
        lappend reg_val "0x$msb$lsb"
        lappend reg_val "0x$msb$lsb"
    }
    }
 
 
    # Write registers
    # Write registers
    WriteRegAll $CpuNr $reg_val
    WriteRegAll $CpuNr $reg_val
 
 
    return "OK"
    return "OK"
}
}
 
 
 
 
#-----------------------------------------------------------------------------#
#-----------------------------------------------------------------------------#
# Kill request.                                                               #
# Kill request.                                                               #
#-----------------------------------------------------------------------------#
#-----------------------------------------------------------------------------#
proc rsp_k {CpuNr cmd} {
proc rsp_k {CpuNr cmd} {
 
 

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.