Goonstation 13 - Modules - TypesVar Details - Proc Details

mainframe program

Mainframe programs represent computer programs, and are responsible for carrying out an instruction or set of instructions specified by commands passed to them. Unlike real computer programs, mainframe programs are not in possession of any ingame representation of "source code" and are hardcoded. Most of DWAINE's functionality is provided by computer programs, which include the kernel, the shell, the drivers, and system utilities (ls, cd, etc...), among other programs.

Vars

executableWhether this program can be executed by the kernel.
initializedWhether this program has been initialised and is running.
masterThe mainframe computer that this program is bring run by.
needs_holderWhether this program requires a holder data disc.
parent_idThe program ID of this program's parent task.
parent_taskThe parent task of this program. This corresponds to the program that initialised this program.
progidThe program ID of this program. This corresponds to the position of this program in the mainframe's processing list.
useraccThis program's current user.

Procs

check_mode_permissionCheck that the specified user has the required permissions to alter the metadata and permission level of the target file or folder.
check_read_permissionCheck that the specified user has the required permissions to read the content of the target file or folder.
check_write_permissionCheck that the specified user has the required permissions to write to the target file or folder.
ensure_programEnsure that the program is configured correctly. Returns TRUE on success, FALSE on failure.
get_computer_datumFind any computer datum with a given name.
get_file_nameFind a file with a given name.
get_folder_nameFind a folder with a given name.
handle_quitHandle program exiting. If a program should end intentionally, an exit system call should be sent to the OS through mainframe_prog_exit. The program will not exit otherwise, even if nothing bothers to send it more input.
initializeInitialise this program. Called when this program starts running.
input_textPass text to this program; this text is typically interpreted as a command.
is_name_invalidCheck if a filename is invalid somehow.
message_userInstruct the parent task to pass an output string to the user terminal, with optional render options. This allows for piping operations.
parse_stringFormat a string into a command and substitute variable names with their values.
processCalled by the mainframe processing loop, in sync with the machinery processing loop.
read_user_fieldRead a field from the current user's user file.
receive_progsignalCalled when this program receives a signal.
signal_programSend a signal from this program to its mainframe computer.
unloadedCalled when this program is unloaded.
write_user_fieldRead a value to a field from the current user's user file.

Var Details

executable

Whether this program can be executed by the kernel.

initialized

Whether this program has been initialised and is running.

master

The mainframe computer that this program is bring run by.

needs_holder

Whether this program requires a holder data disc.

parent_id

The program ID of this program's parent task.

parent_task

The parent task of this program. This corresponds to the program that initialised this program.

progid

The program ID of this program. This corresponds to the position of this program in the mainframe's processing list.

useracc

This program's current user.

Proc Details

check_mode_permission

Check that the specified user has the required permissions to alter the metadata and permission level of the target file or folder.

check_read_permission

Check that the specified user has the required permissions to read the content of the target file or folder.

check_write_permission

Check that the specified user has the required permissions to write to the target file or folder.

ensure_program

Ensure that the program is configured correctly. Returns TRUE on success, FALSE on failure.

get_computer_datum

Find any computer datum with a given name.

get_file_name

Find a file with a given name.

get_folder_name

Find a folder with a given name.

handle_quit

Handle program exiting. If a program should end intentionally, an exit system call should be sent to the OS through mainframe_prog_exit. The program will not exit otherwise, even if nothing bothers to send it more input.

initialize

Initialise this program. Called when this program starts running.

input_text

Pass text to this program; this text is typically interpreted as a command.

is_name_invalid

Check if a filename is invalid somehow.

message_user

Instruct the parent task to pass an output string to the user terminal, with optional render options. This allows for piping operations.

parse_string

Format a string into a command and substitute variable names with their values.

process

Called by the mainframe processing loop, in sync with the machinery processing loop.

read_user_field

Read a field from the current user's user file.

receive_progsignal

Called when this program receives a signal.

signal_program

Send a signal from this program to its mainframe computer.

unloaded

Called when this program is unloaded.

write_user_field

Read a value to a field from the current user's user file.