Custom level creation/test.si: Difference between revisions

From Turing Complete
m (Remove breadcrumbs in favor of built-ins)
(Added brief intro)
 
Line 1: Line 1:
{{Early-access-version|0|1346}}
{{Early-access-version|2|0.16|alpha}}


A list of functions that can be used in <code>test.si</code>.
Each level folder contains a <code>test.si</code> file which has all the code for verifying level solutions. Written in [[Custom level creation/Simplex|Simplex]].
 
A list of functions that can be used in <code>test.si</code>.  


== Functions ==
== Functions ==

Latest revision as of 13:01, 28 March 2025

wip
wip

This page descibes the early access verion 2.0.16 alpha. 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.

Each level folder contains a test.si file which has all the code for verifying level solutions. Written in Simplex.

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