コード例 #1
0
ファイル: rsp.py プロジェクト: chaosAD/pyrsp
 def refresh_regs(self):
     """ loads and caches values of the registers on the device """
     self.send('g')
     if self.arch['endian']:
         self.regs=dict(zip(self.registers,(switch_endian(reg) for reg in split_by_n(self.readpkt(),self.arch['bitsize']>>2))))
     else:
         self.regs=dict(zip(self.registers,split_by_n(self.readpkt(),self.arch['bitsize']>>2)))
コード例 #2
0
ファイル: rsp.py プロジェクト: stef/pyrsp
 def set_reg(self, reg, val):
     """ sets value of register reg to val on device """
     if isinstance(val, str):
         self.regs[reg]=val
     if isinstance(val, integer_types):
         self.regs[reg]=self.reg_fmt % val
     self.fetchOK(b"G%s" % b''.join([switch_endian(self.regs[r]) for r in self.registers if r in self.regs]))
コード例 #3
0
ファイル: rsp.py プロジェクト: chaosAD/pyrsp
 def set_reg(self, reg, val):
     """ sets value of register reg to val on device """
     if isinstance(val, str):
         self.regs[reg]=val
     if isinstance(val, int):
         self.regs[reg]='%x' % val
     self.fetchOK("G%s" % ''.join([switch_endian(self.regs[r]) for r in self.registers]))
コード例 #4
0
 def set_reg(self, reg, val):
     """ sets value of register reg to val on device """
     if isinstance(val, str):
         self.regs[reg] = val
     if isinstance(val, int):
         self.regs[reg] = '%x' % val
     self.fetchOK(
         "G%s" %
         ''.join([switch_endian(self.regs[r]) for r in self.registers]))
コード例 #5
0
 def refresh_regs(self):
     """ loads and caches values of the registers on the device """
     self.send(b'g')
     enc_reg_blob = self.readpkt()
     reg_blob = rsp_decode(enc_reg_blob)
     raw_regs = split_by_n(reg_blob, self.arch['bitsize'] >> 2)
     if self.arch['endian']:
         raw_regs = iter(switch_endian(reg) for reg in raw_regs)
     self.regs = dict(zip(self.registers, raw_regs))
コード例 #6
0
ファイル: rsp.py プロジェクト: stef/pyrsp
 def refresh_regs(self):
     """ loads and caches values of the registers on the device """
     self.send(b'g')
     enc_reg_blob = self.readpkt()
     reg_blob = rsp_decode(enc_reg_blob)
     raw_regs = split_by_n(reg_blob, self.arch['bitsize']>>2)
     if self.arch['endian']:
         raw_regs = iter(switch_endian(reg) for reg in raw_regs)
     self.regs = dict(zip(self.registers, raw_regs))
コード例 #7
0
ファイル: rsp.py プロジェクト: stef/pyrsp
 def set_reg(self, reg, val):
     """ sets value of register reg to val on device """
     if isinstance(val, str):
         self.regs[reg] = val
     if isinstance(val, integer_types):
         self.regs[reg] = self.reg_fmt % val
     self.fetchOK(b"G%s" % b''.join([
         switch_endian(self.regs[r])
         for r in self.registers if r in self.regs
     ]))
コード例 #8
0
 def refresh_regs(self):
     """ loads and caches values of the registers on the device """
     self.send('g')
     if self.arch['endian']:
         self.regs = dict(
             zip(self.registers, (switch_endian(reg) for reg in split_by_n(
                 self.readpkt(), self.arch['bitsize'] >> 2))))
     else:
         self.regs = dict(
             zip(self.registers,
                 split_by_n(self.readpkt(), self.arch['bitsize'] >> 2)))
コード例 #9
0
ファイル: rsp.py プロジェクト: stef/pyrsp
    def refresh_regs(self):
        """ loads and caches values of the registers on the device """
        self.send(b'g')
        enc_reg_blob = self.readpkt()
        reg_blob = rsp_decode(enc_reg_blob)
        raw_regs = split_by_n(reg_blob, self.arch['bitsize'] >> 2)
        if self.arch['endian']:
            raw_regs = iter(switch_endian(reg) for reg in raw_regs)
        self.regs = dict(zip(self.registers, raw_regs))

        pktsz = len(enc_reg_blob) + 4  # 4 adds back the header and checksum
        if pktsz > self.maxsize_g_packet:
            self.maxsize_g_packet = pktsz
コード例 #10
0
 def getreg(self, size, ptr):
     tmp = self.fetch('m%x,%x' % (ptr, size))
     return unhex(switch_endian(tmp))
コード例 #11
0
def getreg(rsp, size, ptr):
    tmp = rsp.fetch('m%x,%x' % (ptr, size))
    return unhex(switch_endian(tmp))
コード例 #12
0
ファイル: rsp.py プロジェクト: stef/pyrsp
 def getreg(self,size,ptr):
     tmp = self.fetch(b'm%x,%x' % (ptr, size))
     return unhex(switch_endian(tmp))