Code covered by the BSD License
-
Extended Brookshear Machine A...
-
Extended Brookshear Machine E...
-
bm(varargin)
BM GUI for Brookshear Machine emulator
-
assembler(file)
ASSEMBLER is an assembler for the extended Brookshear machine
-
bitmapDisplay(hObject)
BITMAPDISPLAY displays low 128 bytes of memory as 32x32 bitmap
-
bits2strings(a, i, type)
BITS2STRINGS returns strings for displaying memory contents
-
bmachine
BMACHINE starts the emulator and assembler GUI
-
dble2f8(d)
DBLE2F8 converts from double to Brookshear's 1-byte floating point
-
dble2int8(d)
DBLE2INT8 converts double to 1-byte signed integer
-
decodeInstr(b1, b2)
DECODEINSTR decodes a BM instruction
-
f82dble(f)
F82DBLE converts Brookshear 1-byte float to double
-
instr2string(type, b1, b2)
INSTR2STRING returns string representation of instruction
-
instr2string_ass(b1, b2)
INSTR2STRING_ASS returns string representation of instruction
-
instr2string_desc(b1, b2)
INSTR2STRING_DESC returns string representation of instruction
-
int82dble(i)
INT82DBLE converts 1-byte signed integer to double
-
loadmem(machine, text)
LOADMEM loads instructions from text into memory
-
memstrings(machine, rows, ins...
MEMSTRINGS returns strings describing contents of memory as instructions
-
newbm
NEWBM creates a new Brookshear machine
-
nibbles2byte(x, y)
NIBBLES2BYTE converts two nibbles to a byte
-
oddaddr(pc, a)
ODDADDR checks whether an address is at an odd offset from the pc
-
readtext(filename)
READTEXT reads a file's text into a string
-
regstrings(machine)
REGSTRINGS returns strings representing the current state of the registers
-
resetReg(machine)
RESETREG resets registers
-
saveDisplay(hObject)
SAVEDISPLAY saves the current display in a file
-
savemem(machine, file, instty...
SAVEMEM saves the current state of memory in a text file
-
showhelp(name)
SHOWHELP displays a help file
-
showinstructions
SHOWINSTRUCTIONS displays a list of BM instructions
-
step(machine)
STEP carries out one execution step on a BM
-
string2val(type, inp)
STRING2VAL returns value from text entry in display
-
writetext(text, file)
WRITETEXT writes text to a file
-
Contents.m
-
Contents.m
-
todo.m
-
View all files
from
Extended Brookshear Machine emulator and assembler
by David Young
Emulator and assembler for a simple computer, a teaching aid for computer science courses.
|
| showinstructions
|
function showinstructions
%SHOWINSTRUCTIONS displays a list of BM instructions
% SHOWINSTRUCTIONS uses MSGBOX to display a quick-reference list of
% instructions for the BM.
%
% There does not seem to be a way to change the font - it would be better
% larger, and fixed-width.
%
% It might be nice to use INSTR2STRING to generate the message, for
% consistency.
% Copyright 2008 University of Sussex and David Young
msgbox({ ...
'BM instructions' ...
'' ...
'0FFF No operation' ...
'1rxy Load memory[xy] into Rr' ...
'2rxy Load value xy into Rr' ...
'3rxy Store Rr in memory[xy]' ...
'40rs Move Rr to Rs' ...
'5rst Add as ints Rs, Rt, put result in Rr' ...
'6rst Add as floats Rs, Rt, put result in Rr' ...
'7rst OR each bit of Rs, Rt, put result in Rr' ...
'8rst AND each bit of Rs, Rt, put result in Rr' ...
'9rst XOR each bit of Rs, Rt, put result in Rr' ...
'Ar0x Rotate Rr x bits right' ...
'Brxy Jump to xy if Rr equals R0' ...
'C000 Halt' ...
'D0rs Load memory[Rs] into Rr' ...
'E0rs Store Rr in memory[Rs]' ...
'Frxt Jump to address in Rt if Rr test R0' ...
' x=0 means test is equals' ...
' x=1 means test is not equal' ...
' x=2 means test is greater or equal' ...
' x=3 means test is less or equal' ...
' x=4 means test is greater than' ...
' x=5 means test is less than' ...
'' ...
'For full descriptions, click Help' ...
}, ...
'Instructions', ...
'replace');
end
|
|
Contact us at files@mathworks.com