LOBO Machine-Language Simulator

The LOBO machine-language simulator is being used regularly in the required Introduction to Computers IS112 course. The team undertaking this project will test this simulator, make a list of desired/possible improvements and estimate the effort required for each, work with the customer to prioritize the list and determine which ones to implement, and finally implement a subset of the improvements. The required coding should not be difficult since some improvements have apparently been made by students in the first Java course. It is not necessary to understand machine language for this project.

In addition to updating the documentation based on the improvement you make, an additional contribution you can make is to update the documentation based on your experience in running the simulator.

The recommended procedure to get things working is to unzip the code zip file into a working directory that you create, and then invoke the simulator by clicking on the html file. This should bring up a browser showing an applet window containing a number of buttons and fields, see the operating instructions for how to use them.

The html file (in the directory) calls the .class files in the lobo-runnable.zip file. The source code is in the lobo-source.zip file. The lobo-instructions file is Dr. Frank's edited version of Dr. Wolf's original manual. The lobo-changes file is the change log of changes Dr. Frank made to the code to get it to work under eclipse.

Problem Description

There is a running Java code that puts up an applet in a browser and provides a simple simulation of a very basic computer including a small 32 location memory, an accumulator, an IR and PC. It executes, under user control only. It executes the fetch and execute cycle separately for each instruction. It comes with a description good enough for it to be used in IS112 classes or as a project in Java classes.

Various suggestions have come up for improvements. I think the team should first get the code running. This is not trivial, since it is not hosted on a server but is going to run locally. There is a subtlety to the placement of the .html file. It invokes the applet. The team may have to consult a Java Master. After they get it to run, their own user experience should suggest some changes beyond the ones I forwarded. The objective is to make it simple to run locally, and improve its ease of use. Later if there is time, extensions are possible.