Porting to Python 3
This commit is contained in:
parent
6131315d22
commit
e0f8c0c2a1
|
@ -1,5 +1,4 @@
|
||||||
|
|
||||||
import re
|
|
||||||
import subprocess
|
import subprocess
|
||||||
|
|
||||||
NORMAL_COLOR = '\033[0m'
|
NORMAL_COLOR = '\033[0m'
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
|
|
||||||
import re
|
import re
|
||||||
|
|
||||||
import Junk
|
from . import Junk
|
||||||
from opcodes import OPCODES
|
from .opcodes import OPCODES
|
||||||
|
|
||||||
REGISTERS=["%rax", "%rbx", "%rcx", "%rdx", "%rsp", "%rbp", "%rsi", "%rdi",
|
REGISTERS=["%rax", "%rbx", "%rcx", "%rdx", "%rsp", "%rbp", "%rsi", "%rdi",
|
||||||
"%r8", "%r9", "%r10", "%r11", "%r12", "%r13", "%r14", "%r15"]
|
"%r8", "%r9", "%r10", "%r11", "%r12", "%r13", "%r14", "%r15"]
|
||||||
|
|
|
@ -6,8 +6,8 @@ class JunkComparisonException (BaseException):
|
||||||
|
|
||||||
class Junk:
|
class Junk:
|
||||||
|
|
||||||
def __init__ (self, represents = None):
|
def __init__ (self, represents: str = None):
|
||||||
assert(represents == None or isinstance(represents, basestring))
|
assert represents is None or isinstance(represents, str)
|
||||||
self.repr = represents
|
self.repr = represents
|
||||||
|
|
||||||
def __str__ (self):
|
def __str__ (self):
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
|
"""
|
||||||
# Infernal Interpreter & Devious Stack Painter #################################
|
# Infernal Interpreter & Devious Stack Painter #################################
|
||||||
|
|
||||||
A very simple interpreter and stack tracer for the AMD x86-64 ABI written in
|
A very simple interpreter and stack tracer for the AMD x86-64 ABI written in
|
||||||
|
@ -22,4 +22,4 @@ License is `beerware`:
|
||||||
this notice you can do whatever you want with this stuff. If we
|
this notice you can do whatever you want with this stuff. If we
|
||||||
meet some day, and you think this stuff is worth it, you can buy
|
meet some day, and you think this stuff is worth it, you can buy
|
||||||
me a beer in return.
|
me a beer in return.
|
||||||
|
"""
|
27
infernal_interpreter/main.py → infernal_interpreter/__main__.py
Executable file → Normal file
27
infernal_interpreter/main.py → infernal_interpreter/__main__.py
Executable file → Normal file
|
@ -1,27 +1,18 @@
|
||||||
#!/usr/bin/python2
|
#!/usr/bin/python2
|
||||||
|
|
||||||
ARG_DESC = '''
|
|
||||||
A silly x86-64 emulator and stack visualizer.
|
|
||||||
'''
|
|
||||||
|
|
||||||
LICENSE = '''
|
|
||||||
This program is BEER-WARE.
|
|
||||||
|
|
||||||
<jonjmaa@gmail.com> wrote this program. As long as you retain this
|
|
||||||
notice you can do whatever you want with this stuff. If we meet some
|
|
||||||
day, and you think this stuff is worth it, you can buy me a beer in
|
|
||||||
return.
|
|
||||||
'''
|
|
||||||
|
|
||||||
import sys
|
import sys
|
||||||
|
|
||||||
import re
|
import re
|
||||||
import argparse
|
import argparse
|
||||||
|
|
||||||
from Emulator import Emulator, CodeParseException, REGISTERS
|
from .Emulator import Emulator, REGISTERS
|
||||||
from TikzPainter import TikzPainter
|
from .TikzPainter import TikzPainter
|
||||||
from AsciiPainter import AsciiPainter
|
from .AsciiPainter import AsciiPainter
|
||||||
import Junk
|
from . import Junk
|
||||||
|
|
||||||
|
ARG_DESC = '''
|
||||||
|
A silly x86-64 emulator and stack visualizer.
|
||||||
|
'''
|
||||||
|
|
||||||
PAINTER_ID_TO_CLASS = {
|
PAINTER_ID_TO_CLASS = {
|
||||||
'ascii': AsciiPainter,
|
'ascii': AsciiPainter,
|
||||||
|
@ -29,7 +20,7 @@ PAINTER_ID_TO_CLASS = {
|
||||||
}
|
}
|
||||||
|
|
||||||
def parse_args ():
|
def parse_args ():
|
||||||
parser = argparse.ArgumentParser(description = ARG_DESC, epilog = LICENSE)
|
parser = argparse.ArgumentParser(description = ARG_DESC)
|
||||||
parser.add_argument('-i', '--input-file', default='-', help = 'File to use as input', dest = 'input-file')
|
parser.add_argument('-i', '--input-file', default='-', help = 'File to use as input', dest = 'input-file')
|
||||||
parser.add_argument('-o', '--output-file', default='-', help = 'File to use as output', dest = 'output-file')
|
parser.add_argument('-o', '--output-file', default='-', help = 'File to use as output', dest = 'output-file')
|
||||||
parser.add_argument('-p', '--painter', default='ascii', help = 'Drawer to use', dest = 'painter-name', choices=PAINTER_ID_TO_CLASS.keys())
|
parser.add_argument('-p', '--painter', default='ascii', help = 'Drawer to use', dest = 'painter-name', choices=PAINTER_ID_TO_CLASS.keys())
|
Loading…
Reference in New Issue
Block a user