# coding: iso-8859-1
#
# script(ed/able/ing/ful) code compiler
# (c)2006 Tiago Rezende
# Distributed freely.
#

from assemblerbase import *

r128 = RegisterScheme("r128")
r64  = RegisterScheme("r64")
r32  = RegisterScheme("r32")
r16  = RegisterScheme("r16")
r8   = RegisterScheme("r8")

class x86regs:
    def __init__(self):
        self.registers = {"eax": Register("eax",{r32: 0x01}),
                          "ax":  Register("ax", {r16: 0x01}),
                          "al":  Register("al", {r8:  0x01}),
                          "ah":  Register("ah", {r8:  0x05}),
                          "ecx": Register("ecx",{r32: 0x02}),
                          "cx":  Register("cx", {r16: 0x02}),
                          "cl":  Register("cl", {r8:  0x02}),
                          "ch":  Register("ch", {r8:  0x06}),
                          "edx": Register("edx",{r32: 0x03}),
                          "dx":  Register("dx", {r16: 0x03}),
                          "dl":  Register("dl", {r8:  0x03}),
                          "dh":  Register("dh", {r8:  0x07}),
                          "ebx": Register("ebx",{r32: 0x04}),
                          "bx":  Register("bx", {r16: 0x04}),
                          "bl":  Register("bl", {r8:  0x04}),
                          "bh":  Register("bh", {r8:  0x08}),
                          "esp": Register("esp",{r32: 0x05}),
                          "ebp": Register("ebp",{r32: 0x06}),
                          "esi": Register("esi",{r32: 0x07}),
                          "edi": Register("edi",{r32: 0x08})}
        self.opcodes = {}

class x86assembler:
    def __init__(self, infile):
        print "iê"
    
    def output(self):
        print "iê"
