Memory Ref - BCL Molecular 18

BCL Molecular 18
Go to content
Memory Reference Instructions

Memory Reference instructions can directly access memory only within the Current Page (i.e. the page within which the instruction itself is stored) or within the lowest Page (i.e. Page 00, often called Zero Page, comprising Words 00/0000 to 00/1777).
But that word may contain the 16-bit address of any word in memory and the Memory Reference instruction can indirectly access that word through the "pointer". If the pointer's B17 is set, then the target word is itself a pointer and so on indefinitely.  It's left to the programmer to ensure that such a chain does not form a closed loop.

Operation CodeMnemonicInstruction Function
02JUMPJump unconditionally
03JSBRJump to Subroutine
04INSZIncrement by one, Skip if result is zero
05DESZDecrement by one, Skip if result is zero
06ANDAAND into A-Register
07IORAInclusive OR into A-Register
10XORAExclusive OR into A-Register
11ADAAdd to A-Register
12ADBAdd to B-Register
13SFASubtract from A-Register
14SFBSubtract from B-Register
15ADACAdd to A-Register with CARRY
16ADBCAdd to B-Register with CARRY
17SFACSubtract from A-Register with CARRY
20SFBCSubtract from B-Register with CARRY
21LDALoad into A-Register
22LDBLoad into B-Register
23CMPACompare with A-Register, Skip if B17:B1 unequal (see also GT-Flag)
24CMPBCompare with B-Register, Skip if B17:B1 unequal (see also GT-Flag)
25STAStore A-Register
26STBStore B-Register
(C) 2022 Kevin Murrell & The National Museum of Computing
Back to content