aboutsummaryrefslogtreecommitdiffstats
path: root/awlsim/core/memory.pxd.in
blob: 341991cba8a8e070adee0517a79825dca837b8b4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
from awlsim.common.cython_support cimport *
from awlsim.core.offset cimport *


cdef class GenericInteger(object):
	cdef public uint32_t value
	cdef public uint32_t mask

	cdef void copyFrom(self, GenericInteger other)
	cdef void reset(self)
	cdef void set(self, int64_t value)
	cdef void setByte(self, int64_t value)
	cdef void setWord(self, int64_t value)
	cdef void setDWord(self, int64_t value)
	cdef setPyFloat(self, pyfl)
	cdef uint32_t get(self)
	cdef uint8_t getByte(self)
	cdef uint16_t getWord(self)
	cdef uint32_t getDWord(self)
	cdef int8_t getSignedByte(self)
	cdef int16_t getSignedWord(self)
	cdef int32_t getSignedDWord(self)
	cdef getPyFloat(self)
	cdef void setBit(self, uint8_t bitNumber)
	cdef void clearBit(self, uint8_t bitNumber)
	cdef void setBitValue(self, uint8_t bitNumber, _Bool value)
	cdef unsigned char getBit(self, uint8_t bitNumber)

cdef class GenericWord(GenericInteger):
	pass

cdef class GenericDWord(GenericInteger):
	pass

cdef class __PointerConstClass(object):
	cdef public uint32_t AREA_SHIFT
	cdef public uint64_t AREA_MASK
	cdef public uint64_t AREA_MASK_S

	cdef public uint64_t AREA_NONE
	cdef public uint64_t AREA_P
	cdef public uint64_t AREA_E
	cdef public uint64_t AREA_A
	cdef public uint64_t AREA_M
	cdef public uint64_t AREA_DB
	cdef public uint64_t AREA_DI
	cdef public uint64_t AREA_L
	cdef public uint64_t AREA_VL

	cdef public uint64_t AREA_NONE_S
	cdef public uint64_t AREA_P_S
	cdef public uint64_t AREA_E_S
	cdef public uint64_t AREA_A_S
	cdef public uint64_t AREA_M_S
	cdef public uint64_t AREA_DB_S
	cdef public uint64_t AREA_DI_S
	cdef public uint64_t AREA_L_S
	cdef public uint64_t AREA_VL_S

	cdef public dict area2str

cdef public __PointerConstClass PointerConst

cdef class Pointer(GenericDWord):
	cpdef toPointer(self)
	cpdef uint32_t toPointerValue(self)
	cpdef toDBPointer(self)
	cpdef uint64_t toDBPointerValue(self)
	cpdef ANYPointer toANYPointer(self)
	cpdef object toANYPointerValue(self)
	cpdef object toNativePointerValue(self)
	cpdef uint8_t getArea(self)
	cpdef setArea(self, uint8_t newArea)
	cpdef uint16_t getByteOffset(self)
	cpdef uint8_t getBitOffset(self)

cdef class DBPointer(Pointer):
	cdef public uint16_t dbNr

	cpdef toDBPointer(self)
	cpdef uint64_t toDBPointerValue(self)
	cpdef ANYPointer toANYPointer(self)
	cpdef object toNativePointerValue(self)

cdef class SymbolicDBPointer(DBPointer):
	cdef public object identChain
	cdef public object dbSymbol

cdef class __ANYPointerConstClass(object):
	cdef public uint8_t MAGIC
	cdef public dict typeId2typeCode
	cdef public dict typeCode2typeId

cdef public __ANYPointerConstClass ANYPointerConst

cdef class ANYPointer(DBPointer):
	cdef public object dataType
	cdef public uint16_t count

	cpdef ANYPointer toANYPointer(self)
	cpdef object toANYPointerValue(self)
	cpdef object toNativePointerValue(self)

cdef class Accu(GenericDWord):
	pass

cdef class Addressregister(Pointer):
	pass

cdef class AwlMemory(object):
	cdef public bytearray dataBytes

	cdef object fetch(self, AwlOffset offset, uint32_t width)
	cdef store(self, AwlOffset offset, uint32_t width, object value)
bues.ch cgit interface