Custom level creation/test.si

From Turing Complete
wip
wip

This page descibes the early access verion 0.1346 Beta. It may not be completely correct for the the current stable version, nor the latest unstable version. Help us update it, and you get a cookie.

A list of functions that can be used in test.si.

Functions[edit | edit source]

Component & Sequential[edit | edit source]

User defined functions for Component & Sequential type levels.

  • check_output($scratch_space: [Int], tick: Int, inputs: [Int], outputs: [Int]) TestResult
  • get_input($scratch_space: [Int], tick: Int, $inputs: [Int])
  • on_reset($scratch_space: [Int], test: Int)
    • Optional

Architecture[edit | edit source]

User defined functions for Architecture type levels.

  • arch_check_output($scratch_space: [Int], test: Int, input: Int, output: Int) TestResult
  • arch_get_input($scratch_space: [Int], test: Int) Int
  • on_reset($scratch_space: [Int], test: Int)
    • Optional

Callable[edit | edit source]

The test framework defines these function which may be used in test.si for any type of level.

  • add_keyboard_value(value: Int)
  • front_panel_push(value: U8)
  • get_assembler_register_count() Int
  • get_assembler_width() Int
  • get_component_count() Int
  • get_console_offset() Int
  • get_counter_value() Int
  • get_delay_score() Int
  • get_gate_score() Int
  • get_last_time() Int
  • get_latency_ram_is_busy() Bool
  • get_level_memory(custom_string: String) Int
  • get_probe_value() Int
  • get_probe_width() Int
  • get_program_address() Int
  • get_ram_size() Int
  • get_ram_value(address: Int) Int
  • get_register_value(index: Int) Int
  • get_tick() Int
  • has_console_component() Bool
  • has_counter_component() Bool
  • has_front_panel() Bool
  • has_keyboard_component() Bool
  • has_ram() Bool
  • has_time_component() Bool
  • set_custom_input_text(input: String)
  • set_error(input: String)
  • ui_set_color(id: String, size: Int)
  • ui_set_hidden(id: String, value: Bool)
  • ui_set_image_name(id: String, text: String
  • ui_set_position(id: String, x: Int, y: Int)
  • ui_set_size(id: String, size: Int)
  • ui_set_text(id: String, text: String