Simulating the 1802 CPU with Logisim by Carl Burch (http://www.cburch.com/logisim/)

Download Logisim 1802 CPU files here



NOTE: It is highly recommended to learn how to use the Logisim IDE by going through the tutorials.

Step 1: Open ELFII.circ


Step 2: When you open or create a new file in Logisim, the simulation is enabled by default.


Step 3: Select the frequency (speed) at which you want to run the simulation.


Step 4: Enable the clock ticks.


Step 5: Make sure you have the poke tool selected and press the RESET pushbutton.


Step 6: You have 2 methods to enter a program. You can do it manually as if you would be using my ELF II keypad and pushbuttons.
Notice the RAM memory contents as you enter the byte. The first number you enter will be the lower nibble then when you press the next number, the lower nibble will shift to the high nibble and the 2nd number will go in the lower nibble.
The hex keypad almost works like the 74923. The only difference is when you enter the 3rd number, the 2nd number that you previously entered will not shift to the higher nibble (unless, of course, you enter a 4th number).
The second method is faster since you edit the RAM memory directly. Hover over the RAM memory component, right click, then select edit contents. You can also save/load programs this way.
The images below show the manual method first then the edit RAM memory method.


The RAM Memory Component



Step 7: Go ahead and enter the classic turn ON/OFF the Q LED using the INPUT key from the Netronics ELF II assembly manual:

M0000:7A 3F 00 7B 30 01

Step 8: Use LOAD if you are to enter the program manually. After entering the program, press RESET then RUN. Depending on the frequency or speed, you will see the Q LED turn ON when the INPUT is pressed and OFF when not pressed.

Step 9: There are two methods at looking at any subcircuits.

Method 1: Click the plus and double click on subcircuit name.


Method 2: Hover over any subcircuits, right click then View "subcircuitname".



Step 10: Double-click "main" to go back to "main" circuit or select any other subcircuits from the left-side explorer pane window.