mirror of
https://git.soft.fish/val/MicroCorruption.git
synced 2024-11-25 20:45:58 +00:00
20 lines
439 B
Python
20 lines
439 B
Python
|
#!/usr/bin/env python3
|
||
|
"""
|
||
|
caller_id: Call a function with arbitrary parameters in microcorruption
|
||
|
"""
|
||
|
|
||
|
import re
|
||
|
|
||
|
preamble = "reset; break main; continue; unbreak main;"
|
||
|
|
||
|
while 1:
|
||
|
address, *args = re.split(r"[(,) ]",input("> "))
|
||
|
if address == "": break
|
||
|
print(f"{preamble} Let pc = {address}", end=";")
|
||
|
reg = 15
|
||
|
for arg in args:
|
||
|
if arg:
|
||
|
print(f"Let r{reg} = {arg}", end=";")
|
||
|
reg -= 1
|
||
|
print("\b ")
|