
Click "Run!" to play a guessing game. The "RISC44" emulator will ask you to guess a secret number and give you a score once you succeed. The purpose of each of the buttons is described below: == Run! ===================================== Click this button to start the emulator. The list called "program" contains a sequence of numbers from 0 to 255. In general, each number represents an operation to be performed sequentially after the number before it, similar to a Scratch block. When you click "Run!", the first instruction in the list is executed, and unless instructed otherwise, the one after, and so on. See the notes to find out what the numbers mean. === Assemble ================================ Click this button to convert (assemble) the assembly code (ASM) in the list called "assembly" into a list of numeric instructions in the list called "program". Every item of "assembly" adds one number to "program", except for the lines ending with colons, which are labels. See the notes to find out what the items in "assembly" mean. === Import ASM ============================== Clicking this button allows you to paste in a sequence of assembly instructions, labels and numbers, separated by a character of your choice (e.g. a semicolon), which will be split up and will replace the entire contents of the "assembly" list. === Edit ===================================== Click this button to change just one item in the "assembly" list. === Insert =================================== Click this button to insert one item at a specific position in the "assembly" list.
Updated 19 July 2019 === What is this? ============================== RISC44 is a fictional 8-bit computer I designed for implementation in The Powder Toy. I never managed to complete the Powder Toy simulation, but I did create this assembler and emulator. The assembler converts (somewhat) human-readable assembly code into a sequence of numbers that might be written in a program ROM (such as a game cartridge/disc) were RISC44 ever to be implemented physically. The emulator is a collection of scripts that simulate how a hypothetical real RISC44 would behave, supposing the numbers in the list called "program" were stored as 8-bit values in its program ROM. === RISC44 Architecture ======================= The RISC44 includes an 8 bit wide program ROM (program), 8-bit wide stack (stack), sixteen 8-bit general purpose registers (registers), a carry bit (Carry), and 8-bit program counter (P. Count.), accumulator (Accum.) and operand register (Operand). All of these are visible on the stage and labelled with the abbreviations given above. The machine interacts with the world using the "int" instruction, which sends a number from 0 to 15 to one of at most 8 numbered devices, and the "out" destination code. This project includes three devices that provide a bridge between the machine and the world: Device 0, when triggered, prompts you to enter a number from 0 to 255. The number sent to the device could be used to select the prompt text, however there is only one option here. Device 1, when triggered, displays a message for a short time. The number provided selects the message from among the following: 0 ---