Skip to main content Link Search Menu Expand Document (external link)

Automation

RASP computer will recognize if automatic emulation is executed. In the case of non-interactive mode (--nogui), each abstract tape is redirected to a file. The format of the files is described in abstract tape documentation.

Example

Command line for starting non-interactive automatic emulation:

./emuStudio -cf config/RandomAccessStoredProgramRASP.toml --input-file examples/raspc-rasp/factorial.rasp auto --no-gui
  • configuration config/RandomAccessStoredProgramRASP.toml will be loaded
  • input file for compiler is one of the standard examples
  • (auto) automatic emulation will be executed
  • (--no-gui) non-interactive mode will be set

After the run, the following output on the stdout can be expected:

[INFO] Starting logging symbols changes to a file: input_tape.out
[INFO] Starting logging symbols changes to a file: output_tape.out
[INFO] Starting emulation automation...
[INFO] Emulating computer: Random-Access Stored Program (RASP)
[INFO] Compiler: RASP Machine Assembler, version 0.41
[INFO] CPU: Random Access Stored Program (RASP), version 0.41
[INFO] Memory: RASP Memory, version 0.41
[INFO] Memory size: 0
[INFO] Device: Input tape, version 0.41
[INFO] Device: Output tape, version 0.41
[INFO] Compiling input file: examples/raspc-rasp/factorial.rasp
[INFO] Compiler started working.
[INFO] [INFO   ] RASP Machine Assembler, version 0.41
[INFO] [INFO   ] Compile was successful.
	Output: /home/emuStudio/examples/raspc-rasp/factorial.brasp
	Program starts at 0x0014
[INFO] [INFO   ] Compiled file was loaded into program memory.
[INFO] Compilation finished.
[INFO] Resetting CPU...
[INFO] Running emulation...
[INFO] Normal stop
[INFO] Instruction location = 0x0037
[INFO] Emulation completed

Then, in the current working directory, there will be created three new files:

  • input_tape.out: contains all input tape symbols
  • output_tape.out: contains all output tape symbols

Content of each file is a human-readable text file, but also parseable by computer. Every row has format:

position symbol

where position is zero-based index of a symbol on particular tape, and symbol is the symbol on that position. Abstract tapes of RASP machine are left-bounded, therefore all positions start at 0.