// File: JD557[P]Wolf/wolf.cpp
// Function: showHelp()
void showHelp() {
	cout << "Wolf: A Cellular Automata based Language" << endl;
	cout << "._______." << endl;
	cout << "| Usage |________________________________________________________________ " << endl;
	cout << "|                                                                        |" << endl;
	cout << "| wolf -i       - Starts the interpreter                                 |" << endl;
	cout << "| wolf <source> - Compiles and executes the file <source>                |" << endl;
	cout << "|________________________________________________________________________|" << endl;
	cout << ".________." << endl;
	cout << "| Syntax |___________________________________________________________________ " << endl;
	cout << "|                                                                            |" << endl;
	cout << "| T<start>,<tape>            - Saves the binary string <tape> on the tape    |" << endl;
	cout << "|                              starting on <start>                           |" << endl;
	cout << "| X                          - Clears the tape                               |" << endl;
	cout << "| R<rule>[<start>,<end>]     - Executes rule <rule> to all elements from     |" << endl;
	cout << "|                              <start> to <end>. <rule> must be in binary    |" << endl;
	cout << "| J<line>[<start>,<end>]     - Jumps to <line> unless every element from     |" << endl;
	cout << "|                              <start> to <end> is equal to 0                |" << endl;
	cout << "| C<line>[<start>,<end>]     - Same as J, but puts the next line on the top  |" << endl;
	cout << "|                              of the call stack                             |" << endl;
	cout << "| P                          - Pops the call stack and goes to that line     |" << endl;
	cout << "| O[<start>,<end>]           - Outputs the contents from <start> to <end>    |" << endl;
	cout << "| S[<start>,<end>]           - Outputs the contents from <start> to <end> as |" << endl;
	cout << "|                              a string                                      |" << endl;
	cout << "| I[<start>,<end>]           - Binary input (saved from <start> to <end>)    |" << endl;
	cout << "| F[<start>,<end>]           - String input (saved from <start> to <end>)    |" << endl;
	cout << "| ;<text>                    - Comment                                       |" << endl;
	cout << "|____________________________________________________________________________|" << endl;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
movq 0xba2d(%rip), %rdi      # 0xdfc8
leaq 0x6a62(%rip), %rsi      # 0x9004
callq 0x21c0
movq %rax, %rdi
movq 0xba07(%rip), %rsi      # 0xdfb8
callq 0x2200
movq 0xba0b(%rip), %rdi      # 0xdfc8
leaq 0x6a69(%rip), %rsi      # 0x902d
callq 0x21c0
movq %rax, %rdi
movq 0xb9e5(%rip), %rsi      # 0xdfb8
callq 0x2200
movq 0xb9e9(%rip), %rdi      # 0xdfc8
leaq 0x6a51(%rip), %rsi      # 0x9037
callq 0x21c0
movq %rax, %rdi
movq 0xb9c3(%rip), %rsi      # 0xdfb8
callq 0x2200
movq 0xb9c7(%rip), %rdi      # 0xdfc8
leaq 0x6a7a(%rip), %rsi      # 0x9082
callq 0x21c0
movq %rax, %rdi
movq 0xb9a1(%rip), %rsi      # 0xdfb8
callq 0x2200
movq 0xb9a5(%rip), %rdi      # 0xdfc8
leaq 0x6aa3(%rip), %rsi      # 0x90cd
callq 0x21c0
movq %rax, %rdi
movq 0xb97f(%rip), %rsi      # 0xdfb8
callq 0x2200
movq 0xb983(%rip), %rdi      # 0xdfc8
leaq 0x6acc(%rip), %rsi      # 0x9118
callq 0x21c0
movq %rax, %rdi
movq 0xb95d(%rip), %rsi      # 0xdfb8
callq 0x2200
movq 0xb961(%rip), %rdi      # 0xdfc8
leaq 0x6af5(%rip), %rsi      # 0x9163
callq 0x21c0
movq %rax, %rdi
movq 0xb93b(%rip), %rsi      # 0xdfb8
callq 0x2200
movq 0xb93f(%rip), %rdi      # 0xdfc8
leaq 0x6b1e(%rip), %rsi      # 0x91ae
callq 0x21c0
movq %rax, %rdi
movq 0xb919(%rip), %rsi      # 0xdfb8
callq 0x2200
movq 0xb91d(%rip), %rdi      # 0xdfc8
leaq 0x6b07(%rip), %rsi      # 0x91b9
callq 0x21c0
movq %rax, %rdi
movq 0xb8f7(%rip), %rsi      # 0xdfb8
callq 0x2200
movq 0xb8fb(%rip), %rdi      # 0xdfc8
leaq 0x6b34(%rip), %rsi      # 0x9208
callq 0x21c0
movq %rax, %rdi
movq 0xb8d5(%rip), %rsi      # 0xdfb8
callq 0x2200
movq 0xb8d9(%rip), %rdi      # 0xdfc8
leaq 0x6b61(%rip), %rsi      # 0x9257
callq 0x21c0
movq %rax, %rdi
movq 0xb8b3(%rip), %rsi      # 0xdfb8
callq 0x2200
movq 0xb8b7(%rip), %rdi      # 0xdfc8
leaq 0x6b8e(%rip), %rsi      # 0x92a6
callq 0x21c0
movq %rax, %rdi
movq 0xb891(%rip), %rsi      # 0xdfb8
callq 0x2200
movq 0xb895(%rip), %rdi      # 0xdfc8
leaq 0x6bbb(%rip), %rsi      # 0x92f5
callq 0x21c0
movq %rax, %rdi
movq 0xb86f(%rip), %rsi      # 0xdfb8
callq 0x2200
movq 0xb873(%rip), %rdi      # 0xdfc8
leaq 0x6be8(%rip), %rsi      # 0x9344
callq 0x21c0
movq %rax, %rdi
movq 0xb84d(%rip), %rsi      # 0xdfb8
callq 0x2200
movq 0xb851(%rip), %rdi      # 0xdfc8
leaq 0x6c15(%rip), %rsi      # 0x9393
callq 0x21c0
movq %rax, %rdi
movq 0xb82b(%rip), %rsi      # 0xdfb8
callq 0x2200
movq 0xb82f(%rip), %rdi      # 0xdfc8
leaq 0x6c42(%rip), %rsi      # 0x93e2
callq 0x21c0
movq %rax, %rdi
movq 0xb809(%rip), %rsi      # 0xdfb8
callq 0x2200
movq 0xb80d(%rip), %rdi      # 0xdfc8
leaq 0x6c6f(%rip), %rsi      # 0x9431
callq 0x21c0
movq %rax, %rdi
movq 0xb7e7(%rip), %rsi      # 0xdfb8
callq 0x2200
movq 0xb7eb(%rip), %rdi      # 0xdfc8
leaq 0x6c9c(%rip), %rsi      # 0x9480
callq 0x21c0
movq %rax, %rdi
movq 0xb7c5(%rip), %rsi      # 0xdfb8
callq 0x2200
movq 0xb7c9(%rip), %rdi      # 0xdfc8
leaq 0x6cc9(%rip), %rsi      # 0x94cf
callq 0x21c0
movq %rax, %rdi
movq 0xb7a3(%rip), %rsi      # 0xdfb8
callq 0x2200
movq 0xb7a7(%rip), %rdi      # 0xdfc8
leaq 0x6cf6(%rip), %rsi      # 0x951e
callq 0x21c0
movq %rax, %rdi
movq 0xb781(%rip), %rsi      # 0xdfb8
callq 0x2200
movq 0xb785(%rip), %rdi      # 0xdfc8
leaq 0x6d23(%rip), %rsi      # 0x956d
callq 0x21c0
movq %rax, %rdi
movq 0xb75f(%rip), %rsi      # 0xdfb8
callq 0x2200
movq 0xb763(%rip), %rdi      # 0xdfc8
leaq 0x6d50(%rip), %rsi      # 0x95bc
callq 0x21c0
movq %rax, %rdi
movq 0xb73d(%rip), %rsi      # 0xdfb8
callq 0x2200
movq 0xb741(%rip), %rdi      # 0xdfc8
leaq 0x6d7d(%rip), %rsi      # 0x960b
callq 0x21c0
movq %rax, %rdi
movq 0xb71b(%rip), %rsi      # 0xdfb8
callq 0x2200
movq 0xb71f(%rip), %rdi      # 0xdfc8
leaq 0x6daa(%rip), %rsi      # 0x965a
callq 0x21c0
movq %rax, %rdi
movq 0xb6f9(%rip), %rsi      # 0xdfb8
callq 0x2200
movq 0xb6fd(%rip), %rdi      # 0xdfc8
leaq 0x6dd7(%rip), %rsi      # 0x96a9
callq 0x21c0
movq %rax, %rdi
movq 0xb6d7(%rip), %rsi      # 0xdfb8
callq 0x2200
movq 0xb6db(%rip), %rdi      # 0xdfc8
leaq 0x6e04(%rip), %rsi      # 0x96f8
callq 0x21c0
movq %rax, %rdi
movq 0xb6b5(%rip), %rsi      # 0xdfb8
callq 0x2200
movq 0xb6b9(%rip), %rdi      # 0xdfc8
leaq 0x6e31(%rip), %rsi      # 0x9747
callq 0x21c0
movq %rax, %rdi
movq 0xb693(%rip), %rsi      # 0xdfb8
callq 0x2200
popq %rbp
retq
nopl (%rax)