!c
plank:3,red_doped_wafer,diamond_block,red_doped_wafer,plank,ribbon_cable,plank=central_processing_unit;

Overview

The CPU is the core of a RedPower Control computer system, the part that actually runs code. Everything else is just a dumb peripheral, waiting to be controlled by code running on a CPU.

Front Panel Controls

Right-clicking a CPU opens its front panel on which can be found a number of controls. The “ID” switches set which address the computer responds at when it is being used as a Redbus slave. The “console” switches set the default Redbus address where software should look for a monitor to display information on. The “disk drive” switches set the Redbus address where the BIOS looks for a disk drive to boot from; software can also use this address to find a disk drive for other data storage purposes. The three buttons control the operation of the CPU itself, as follows:
  • The HALT button instantly stops running code, and the indicator beside it illuminates whenever the CPU is halted (either by pushing the HALT or RESET button or executing the STP machine instruction). The CPU’s internal state is saved and execution can be resumed with the START button.
  • The START button has multiple purposes. If the machine is halted due to the HALT button being pushed, START resumes execution where it left off. If the machine is halted due to the STP instruction being executed, START resumes execution immediately after the STP. If the machine was halted due to the RESET button being pushed, START starts execution in the BIOS in order to boot up the system. If the machine was not halted at all, START forces execution to branch to the power-on reset vector specified by software. In all cases, the indicator beside the START button illuminates whenever the CPU is running code (including if it is waiting for an interrupt with WAI).
  • The RESET button halts execution, cleans up the CPU, reinitializes the memory locations containing the monitor and disk drive IDs, loads the BIOS, and prepares to execute the BIOS code. Notably, the RESET button does not clear the contents of RAM, so any data not overwritten by the BIOS while loading new software will still be visible to the new software.

Technical Details

The low-level details of the RedPower CPU are documented on a separate 65EL02 page.