Package net.sourceforge.uiq3.fx603p
Class Op_M
- java.lang.Object
-
- net.sourceforge.uiq3.fx603p.Owned_Operation
-
- net.sourceforge.uiq3.fx603p.Programmable_Operation
-
- net.sourceforge.uiq3.fx603p.Op_M
-
- All Implemented Interfaces:
IClear,IOperation,IOwned_Operation,IProgrammable_Operation,IProgrammable_Operation
- Direct Known Subclasses:
A_Register,Op_ABC,Op_DC,Op_M_Minus,Op_M_Plus,Op_Min_IO,Op_MR_FEXE,Op_Peek,Op_Poke,Op_X_M
abstract class Op_M extends Programmable_Operation
Halt Calculator- Author:
- "Martin Krischik" «krischik@users.sourceforge.net»
-
-
Field Summary
Fields Modifier and Type Field Description private static intBegin_F_Registerprivate static intBegin_M_Second_Halfprivate static intBegin_MF_Second_Halfprotected booleanIs_M_RegisterTrue when operating on an M-Registerprivate static LoggerLoggerclass Logger instanceprivate static intMask_M_Register_Numberprivate static intPlane_Sizeprotected intRegisterRegister number worked onprivate static StringTAGclass Logger tag.-
Fields inherited from class net.sourceforge.uiq3.fx603p.Owned_Operation
Owner
-
Fields inherited from interface net.sourceforge.uiq3.fx603p.IProgrammable_Operation
No_Display
-
-
Constructor Summary
Constructors Constructor Description Op_M(@NotNull Calculator Owner)Create operation and attach to owning calculator.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidCheck_M(int Memory, boolean Is_M)Check im M Register is validvoidClear(boolean AC)Reset state - for state full operations.voidExecute(short Opcode)Execute virtual CPU command or key strokeprotected intGet_M(int Opcode)protected booleanIs_M(int Opcode)-
Methods inherited from class net.sourceforge.uiq3.fx603p.Programmable_Operation
Token
-
Methods inherited from class net.sourceforge.uiq3.fx603p.Owned_Operation
µReset, µReset, toString
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface net.sourceforge.uiq3.calculator.IProgrammable_Operation
Display
-
-
-
-
Field Detail
-
Begin_F_Register
private static final int Begin_F_Register
- See Also:
- Constant Field Values
-
Begin_M_Second_Half
private static final int Begin_M_Second_Half
- See Also:
- Constant Field Values
-
Begin_MF_Second_Half
private static final int Begin_MF_Second_Half
- See Also:
- Constant Field Values
-
Logger
private static final Logger Logger
class Logger instance
-
Mask_M_Register_Number
private static final int Mask_M_Register_Number
- See Also:
- Constant Field Values
-
Plane_Size
private static final int Plane_Size
- See Also:
- Constant Field Values
-
TAG
private static final String TAG
class Logger tag.
-
Is_M_Register
protected boolean Is_M_Register
True when operating on an M-Register
-
Register
protected int Register
Register number worked on
-
-
Constructor Detail
-
Op_M
Op_M(@NotNull @NotNull Calculator Owner)Create operation and attach to owning calculator.- Parameters:
Owner- Calculator which will call this Opcode
-
-
Method Detail
-
Check_M
protected void Check_M(int Memory, boolean Is_M) throws M_ErrorCheck im M Register is valid- Parameters:
Memory- Memory register to testIs_M- true when M register is handled- Throws:
M_Error- exeption of memory is not valid
-
Clear
public void Clear(boolean AC)
Reset state - for state full operations.- Parameters:
AC- All Clear reset- See Also:
IClear.Clear(boolean)
-
Execute
public void Execute(short Opcode) throws ErrorDescription copied from interface:IOperationExecute virtual CPU command or key stroke
- Parameters:
Opcode- Virtual CPU Operation to be executed- Throws:
Error- something went wrongM_Error- Memory accessed does not existError- See Also:
IOperation.Execute(short)
-
Get_M
protected int Get_M(int Opcode)
- Parameters:
Opcode- Opcode for which the memory register should be determined- Returns:
- number of the register
-
Is_M
@Contract(pure=true) protected boolean Is_M(int Opcode)
- Parameters:
Opcode- Opcode for which the F or M register use need to be determined- Returns:
- true if normal memory is used.
-
-