Added clearmem shell command and functionality and display are working.
Added multiple load functionality and everything is working so far. Loading 3 programs works.
Added wrapping functionality with loads in memory if you load past 767 it resets the base address to 0 in memory and overwrites the current program with the new one there.
Added memory limitations and wrapping. If the program exceeds mem it now blue screens and stops executing and clears memory.
Implemented ShellRunAll shell command, have not tested yet.
Added run functionality to work with the readyqueue, this took a lot of testing.
Added functionality to the CPU cycle and the run all methods, testing will follow. Also created the quantum variable and counter.
Fixed runall issue with forloop of adding the programs from the resident list to the ready queue.
Fixed another runall issue where the condition check was wrong.
Fixed another condition issue and how I handled the quantum logic in the cpu cycles. Runall now works and produces the correct output based on the quantum.
Added functionality to the display PIDs shell command.
Have the ps shell command completely working.
Implemented the kill command.
Fixed the kill command it wasnt displaying in the help menu or a valid command.
Added the correct functionality for hadnling the interrupts and letting the interrupt handler handle the output of a program. Also set up host logging for the context switching showing when a new process is being scheduled.
Fixed a round robin scheduling error with how often it was changing based on the quantum value.
Changed how the host log displays the context switching of the processes.
Added clean handling for invalid opcodes.
Fixed editing input issue when handling invalid opcodes.
Changed the display messages for setting the quantum, reseting memory, killing a process, etc. Tested all new shell commands to make sure they work as intended.