captaincobbs / CS_2450_Application

0 stars 0 forks source link

Installation

Cloning the Repository

Begin by cloning the repository. This can be done by running this command in the command line: git clone https://github.com/captaincobbs/CS_2450_Application.git

Building the Application

Build the application by navigating to the cloned directory and selecting the shortcut to the executable file (Application\bin\Debug\net8.0\CS_2450_Application.exe) in the main directory and run it.

Usage

Writing and Executing BasicML

Once the application has been built, A GUI will pop up, allowing the user to interact with the UVSim Operating System.

The GUI contains a register, which store values, boxes for output and input, buttons to upload/save what is currently in memory, buttons to run the what is in memory, and, most importantly, a panel that displays all the lines of memory. In this panel, there are 3 columns:

To start using the program, either begin editing the memory, or importing an existing .uvsim (or valid .txt) file, then hitting run to have the operating system iterate through each instruction.

The UI also contains a Theme manager, which can be used to determine the colors of various parts of the UI.

BasicML instructions :

I/O operation:

Load/store operations:

Arithmetic operation:

Control operation:

The last two digits of a BasicML instruction are the operand – the address of the memory location containing the word to which the operation applies.

Example of a BasicML program: 10 00 // READ input into memory location 00 20 00 // LOAD value from memory location 00 into accumulator 30 01 // ADD value from memory location 01 to value in the accumulator 21 02 // STORE accumulator value into memory location 02 11 02 // WRITE value stored in memory location 02 to screen 43 // HALT

Import/Save

When the application is open and the user has a prewritten file of valid BasicML code, the user has the option of selecting the Import button underneath the codespace and importing the file to the codespace. Another function of the application is the "Save" button. When the user needs the save their code in a file the Save button is all that needs to be clicked.