def __init__(self, master, codice, calcolatore, emulatore):
    "\n        Inizializza i frame per l'interfaccia dell'emulatore\n        "
    self.CD = calcolatore
    self.codice = codice
    self.delay = 100
    self.master = Frame(master)
    self.root = emulatore
    self.ram = LabelFrame(self.master, text='Memoria RAM', relief=RIDGE, borderwidth=5, labelanchor='n', pady=5)
    self.ram.rowconfigure(0, weight=1)
    self.ram.columnconfigure(0, weight=1)
    self.ram.grid(row=0, column=0, rowspan=3, columnspan=5, sticky=(((W + E) + N) + S))
    self.controlli = Frame(self.master, padx=10, pady=10)
    self.controlli.grid(row=0, column=5, rowspan=1)
    self.registri = LabelFrame(self.master, text='REGISTRI', relief=RIDGE, borderwidth=5, labelanchor='n', padx=25, pady=10)
    self.registri.grid(row=0, column=6, rowspan=1, sticky=(((W + E) + N) + S))
    self.unita = LabelFrame(self.master, text='UC', relief=RIDGE, borderwidth=5, labelanchor='n', padx=10, pady=10)
    self.unita.grid(row=2, column=6, rowspan=1, sticky=N)
    self.variabili = Frame(self.master)
    self.variabili.grid(row=2, column=5)
    self.nstep = LabelFrame(self.variabili, text='Num. Step', relief=RIDGE, borderwidth=5, labelanchor='n')
    self.nstep.grid(row=0, column=5, sticky=(W + E))
    self.delays = LabelFrame(self.variabili, text='Delay', relief=RIDGE, borderwidth=5, labelanchor='n')
    self.delays.grid(row=1, column=5, sticky=(W + E))
    self.tempo = LabelFrame(self.variabili, text='Tempo', relief=RIDGE, borderwidth=5, labelanchor='n')
    self.tempo.grid(row=1, column=6, sticky=(W + E))
    self.unitas = LabelFrame(self.unita, text='S', labelanchor='s', padx=10)
    self.unitas.grid(row=0, column=0, sticky=N)
    self.unitaf = LabelFrame(self.unita, text='F', labelanchor='s', padx=10)
    self.unitaf.grid(row=0, column=1, sticky=N)
    self.unitar = LabelFrame(self.unita, text='R', labelanchor='s', padx=10)
    self.unitar.grid(row=0, column=2, sticky=N)
    self.unitaint = LabelFrame(self.unita, text='Int.', labelanchor='s', padx=10)
    self.unitaint.grid(row=0, column=3, sticky=N)
    self.programc = LabelFrame(self.registri, text='PC', relief=FLAT, labelanchor='e', padx=5)
    self.programc.grid(row=0, column=0, sticky=(W + E))
    self.mar = LabelFrame(self.registri, text='MAR', relief=FLAT, labelanchor='e', padx=5)
    self.mar.grid(row=1, column=0, sticky=(W + E))
    self.mbr = LabelFrame(self.registri, text='MBR', relief=FLAT, labelanchor='e', padx=5)
    self.mbr.grid(row=2, column=0, sticky=(W + E))
    self.lopr = LabelFrame(self.registri, text='OPR', relief=FLAT, labelanchor='e', padx=5)
    self.lopr.grid(row=3, column=0, sticky=(W + E))
    self.vari = LabelFrame(self.registri, text='I', relief=FLAT, labelanchor='e', padx=5)
    self.vari.grid(row=4, column=0, sticky=(W + E))
    self.vare = LabelFrame(self.registri, text='E', relief=FLAT, labelanchor='e', padx=5)
    self.vare.grid(row=5, column=0, sticky=(W + E))
    self.lac = LabelFrame(self.registri, text='AC', relief=FLAT, labelanchor='e', padx=5)
    self.lac.grid(row=6, column=0, sticky=(W + E))
    self.lacint = LabelFrame(self.registri, text='INT AC', relief=FLAT, labelanchor='e', padx=5)
    self.lacint.grid(row=7, column=0, sticky=(W + E))
    self.lachex = LabelFrame(self.registri, text='HEX AC', relief=FLAT, labelanchor='e', padx=5)
    self.lachex.grid(row=8, column=0, sticky=(W + E))
    self.micro = LabelFrame(self.master, text='Microistruzioni eseguite', relief=RIDGE, borderwidth=5, labelanchor='n', pady=5)
    self.micro.rowconfigure(0, weight=1)
    self.micro.columnconfigure(0, weight=1)
    self.micro.grid(row=3, column=4, rowspan=5, columnspan=5, sticky=(((W + E) + N) + S))
    self.inout = LabelFrame(self.master, text='Input & Output', relief=RIDGE, borderwidth=5, labelanchor='n', pady=5)
    self.inout.rowconfigure(0, weight=1)
    self.inout.columnconfigure(0, weight=1)
    self.inout.grid(row=3, column=0, columnspan=4, sticky=(((W + E) + N) + S))
    self.create_widgets()
Inizializza i frame per l'interfaccia dell'emulatore
def __init__(self, master, codice, calcolatore, emulatore):
    "\n        \n        "
    self.CD = calcolatore
    self.codice = codice
    self.delay = 100
    self.master = Frame(master)
    self.root = emulatore
    self.ram = LabelFrame(self.master, text='Memoria RAM', relief=RIDGE, borderwidth=5, labelanchor='n', pady=5)
    self.ram.rowconfigure(0, weight=1)
    self.ram.columnconfigure(0, weight=1)
    self.ram.grid(row=0, column=0, rowspan=3, columnspan=5, sticky=(((W + E) + N) + S))
    self.controlli = Frame(self.master, padx=10, pady=10)
    self.controlli.grid(row=0, column=5, rowspan=1)
    self.registri = LabelFrame(self.master, text='REGISTRI', relief=RIDGE, borderwidth=5, labelanchor='n', padx=25, pady=10)
    self.registri.grid(row=0, column=6, rowspan=1, sticky=(((W + E) + N) + S))
    self.unita = LabelFrame(self.master, text='UC', relief=RIDGE, borderwidth=5, labelanchor='n', padx=10, pady=10)
    self.unita.grid(row=2, column=6, rowspan=1, sticky=N)
    self.variabili = Frame(self.master)
    self.variabili.grid(row=2, column=5)
    self.nstep = LabelFrame(self.variabili, text='Num. Step', relief=RIDGE, borderwidth=5, labelanchor='n')
    self.nstep.grid(row=0, column=5, sticky=(W + E))
    self.delays = LabelFrame(self.variabili, text='Delay', relief=RIDGE, borderwidth=5, labelanchor='n')
    self.delays.grid(row=1, column=5, sticky=(W + E))
    self.tempo = LabelFrame(self.variabili, text='Tempo', relief=RIDGE, borderwidth=5, labelanchor='n')
    self.tempo.grid(row=1, column=6, sticky=(W + E))
    self.unitas = LabelFrame(self.unita, text='S', labelanchor='s', padx=10)
    self.unitas.grid(row=0, column=0, sticky=N)
    self.unitaf = LabelFrame(self.unita, text='F', labelanchor='s', padx=10)
    self.unitaf.grid(row=0, column=1, sticky=N)
    self.unitar = LabelFrame(self.unita, text='R', labelanchor='s', padx=10)
    self.unitar.grid(row=0, column=2, sticky=N)
    self.unitaint = LabelFrame(self.unita, text='Int.', labelanchor='s', padx=10)
    self.unitaint.grid(row=0, column=3, sticky=N)
    self.programc = LabelFrame(self.registri, text='PC', relief=FLAT, labelanchor='e', padx=5)
    self.programc.grid(row=0, column=0, sticky=(W + E))
    self.mar = LabelFrame(self.registri, text='MAR', relief=FLAT, labelanchor='e', padx=5)
    self.mar.grid(row=1, column=0, sticky=(W + E))
    self.mbr = LabelFrame(self.registri, text='MBR', relief=FLAT, labelanchor='e', padx=5)
    self.mbr.grid(row=2, column=0, sticky=(W + E))
    self.lopr = LabelFrame(self.registri, text='OPR', relief=FLAT, labelanchor='e', padx=5)
    self.lopr.grid(row=3, column=0, sticky=(W + E))
    self.vari = LabelFrame(self.registri, text='I', relief=FLAT, labelanchor='e', padx=5)
    self.vari.grid(row=4, column=0, sticky=(W + E))
    self.vare = LabelFrame(self.registri, text='E', relief=FLAT, labelanchor='e', padx=5)
    self.vare.grid(row=5, column=0, sticky=(W + E))
    self.lac = LabelFrame(self.registri, text='AC', relief=FLAT, labelanchor='e', padx=5)
    self.lac.grid(row=6, column=0, sticky=(W + E))
    self.lacint = LabelFrame(self.registri, text='INT AC', relief=FLAT, labelanchor='e', padx=5)
    self.lacint.grid(row=7, column=0, sticky=(W + E))
    self.lachex = LabelFrame(self.registri, text='HEX AC', relief=FLAT, labelanchor='e', padx=5)
    self.lachex.grid(row=8, column=0, sticky=(W + E))
    self.micro = LabelFrame(self.master, text='Microistruzioni eseguite', relief=RIDGE, borderwidth=5, labelanchor='n', pady=5)
    self.micro.rowconfigure(0, weight=1)
    self.micro.columnconfigure(0, weight=1)
    self.micro.grid(row=3, column=4, rowspan=5, columnspan=5, sticky=(((W + E) + N) + S))
    self.inout = LabelFrame(self.master, text='Input & Output', relief=RIDGE, borderwidth=5, labelanchor='n', pady=5)
    self.inout.rowconfigure(0, weight=1)
    self.inout.columnconfigure(0, weight=1)
    self.inout.grid(row=3, column=0, columnspan=4, sticky=(((W + E) + N) + S))
    self.create_widgets()