|
@@ -87,11 +87,24 @@ def get_target_endianness():
|
|
|
return target_endianness
|
|
|
|
|
|
|
|
|
+def read_memoryview(inf, start, length):
|
|
|
+ return memoryview(inf.read_memory(start, length))
|
|
|
+
|
|
|
+
|
|
|
def read_u16(buffer):
|
|
|
+ value = [0, 0]
|
|
|
+
|
|
|
+ if type(buffer[0]) is str:
|
|
|
+ value[0] = ord(buffer[0])
|
|
|
+ value[1] = ord(buffer[1])
|
|
|
+ else:
|
|
|
+ value[0] = buffer[0]
|
|
|
+ value[1] = buffer[1]
|
|
|
+
|
|
|
if get_target_endianness() == LITTLE_ENDIAN:
|
|
|
- return ord(buffer[0]) + (ord(buffer[1]) << 8)
|
|
|
+ return value[0] + (value[1] << 8)
|
|
|
else:
|
|
|
- return ord(buffer[1]) + (ord(buffer[0]) << 8)
|
|
|
+ return value[1] + (value[0] << 8)
|
|
|
|
|
|
|
|
|
def read_u32(buffer):
|