This repository has been archived on 2017-10-30. You can view files and clone it, but cannot push or open issues or pull requests.
synacor.py/README.md

1.0 KiB

synacor.py

My OOP, poorly-documented concise working response to the Synacor challenge

Debug commands

At any time the program is waiting for input, a string of the following form may be input:

.<cmd> <args>

This will execute the file <cmd>.py with dbg_args[0] set to <cmd> and <args> stored in dbg_args[1..n].

For example, the self-test and decryption at the beginning of the program takes a comparatively long time. To save the state to the dumps/init file, enter:

.dbg/dump dumps/init

Similarly, debug commands may be passed as command-line arguments to synacor.py in the form:

./synacor.py <file> <cmd> <args>

For example, to load the dumps/init state to skip the self-test and decryption, run:

./synacor.py challenge.bin dbg/load dumps/init

Dump files are stored in Python pickle format, so if you want to inspect the memory in a hex editor, for example, it will be necessary to extract a raw memory dump:

./tools/dump_to_raw.py dumps/init dumps/init.raw