Exemple #1
0
    def __init__(self, cx, hi):
        lo = hi
        lo -= 2
        self.c = cx.m.bu16(lo)
        lo -= 2
        self.b = cx.m.bu16(lo)
        lo -= 2
        self.a = cx.m.bu16(lo)

        self.len = self.c & 0xfff
        self.type = self.c >> 12

        lo -= (self.len + 1) & 0xffe
        super().__init__(cx.m, lo, hi)

        self.compact = True

        _a, b = data.stringify(cx.m, self.lo, self.len)
        self.string = b

        self.hash = 0
        for i in bytearray(self.string, 'ascii'):
            self.hash += i
        self.hash %= 13

        self.pp = None
        self.args = None

        if self.type == 3:
            self.pp = params(cx, self.string, self.b, self.a >> 8)
        if self.type == 1:
            if self.b not in KEYNOS:
                KEYNOS[self.b] = "CMD_" + self.string
Exemple #2
0
		def __init__(self, pj, hi):
			lo = hi
			lo -= 2
			self.c = pj.m.bu16(lo)
			lo -= 2
			self.b = pj.m.bu16(lo)
			lo -= 2
			self.a = pj.m.bu16(lo)

			self.len = self.c & 0xfff
			self.type = self.c >> 12

			lo -= (self.len + 1) & 0xffe
			super(mnem, self).__init__(pj, lo, hi)


			self.compact = True

			a,b,c = data.stringify(pj, self.lo, self.len)
			self.string = b

			self.hash = 0
			for i in bytearray(self.string, 'ascii'):
				self.hash += i
			self.hash %= 13

			self.pp = None
			self.args = None

			if self.type == 3:
				self.pp = params(pj, self.string, self.b, self.a >> 8)
			if self.type == 1:
				if self.b not in keynos:
					keynos[self.b] = "CMD_" + self.string
Exemple #3
0
		def __init__(self, pj, lo, n):
			super(oldcmd, self).__init__(pj, lo, lo + 2)
			x,self.name,y = data.stringify(pj, self.lo, 2)

			self.key = pj.m.rd(0x194b2 + n)
			self.imm = (pj.m.rd(0x1951e + (n >> 3)) >> (n & 7)) & 1
			if not self.imm:
				self.svf1 = pj.m.bu16(0x1952c + self.key * 4)
				self.svf2 = pj.m.bu16(0x1952c + self.key * 4 + 2)
				if not self.svf2 in keynos:
					keynos[self.svf2] = "CMD_" + self.name
Exemple #4
0
    def __init__(self, asp, lo, n):
        super().__init__(asp, lo, lo + 2)
        _x, self.name = data.stringify(asp, self.lo, 2)

        self.key = asp[0x194b2 + n]
        self.imm = (asp[0x1951e + (n >> 3)] >> (n & 7)) & 1
        if not self.imm:
            self.svf1 = asp.bu16(0x1952c + self.key * 4)
            self.svf2 = asp.bu16(0x1952c + self.key * 4 + 2)
            if not self.svf2 in KEYNOS:
                KEYNOS[self.svf2] = "CMD_" + self.name