Class Key_M
- java.lang.Object
-
- net.sourceforge.uiq3.fx603p.Owned_Operation
-
- net.sourceforge.uiq3.fx603p.Keyboard
-
- net.sourceforge.uiq3.fx603p.Key_Simple
-
- net.sourceforge.uiq3.fx603p.Key_M
-
- All Implemented Interfaces:
IClear
,IOperation
,IOwned_Operation
final class Key_M extends Key_Simple
The Mode key was clicked- Author:
- "Martin Krischik" «krischik@users.sourceforge.net»
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description (package private) static class
Key_M.Status_Type
-
Field Summary
Fields Modifier and Type Field Description private short[]
AR_Text
Text to be displayed when Mode. was selected.private net.sourceforge.uiq3.calculator.ICalculator.AlphaRegisterType
Backup_A_Active
Active A register.private net.sourceforge.uiq3.calculator.ICalculator.DisplayType
Backup_Display_Mode_Numeric
Current display mode Display_Alpha Displays the content of the Alpha register. Display_L Displays the content of the L0 aka X register. Display_Formated Displays the content of the L0 aka X register inside an alphaprivate net.sourceforge.uiq3.calculator.ICalculator.DisplayType
Backup_Display_Mode_Text
Current display mode Display_Alpha Displays the content of the Alpha register. Display_L Displays the content of the L0 aka X register. Display_Formated Displays the content of the L0 aka X register inside an alphastatic int
Begin_Plane_1
each memory plane contains 20 register.static int
Begin_Plane_2
each memory plane contains 20 register.static int
Begin_Plane_3
each memory plane contains 20 register.static int
Begin_Plane_4
each memory plane contains 20 register.static int
F_Token_Divider
f register are not neatly aligned and need some magic to calculate the tokenstatic int
F_Token_Offset
offset between 0f an 1f operations. f register are not neatly aligned and need some magic to calculate the tokenprivate static Logger
logger
class logger instancestatic int
M_Token_Offset
offset between even and odd even memory operations. f register are not neatly aligned and need some magic to calculate the tokenstatic int
Memory_Digit_1
first digit to display while entering the keystatic int
Memory_Digit_2
second digit to display while entering the keyprivate int
Memory_Register
current dot valueprivate short[]
Memory_Text
Text to be displayed when Mode. was selected.private Key_M.Status_Type
Status
We start with status none.private static String
TAG
class logger tag.private short
Text
The character which make the difference between Min, MR, M+ M--
Fields inherited from class net.sourceforge.uiq3.fx603p.Key_Simple
Inv_Alpha, Inv_Normal, Normal, Normal_Alpha
-
Fields inherited from class net.sourceforge.uiq3.fx603p.Keyboard
a_b_c, AC, ALPHA, Alpha_Text, Base_N_Text, BST, Button_Memory_F, Button_Memory_n, Button_Memory_sn, Button_Memory_sn1, Button_Memory_SX, Button_Memory_SX2, Button_Memory_xmean, Button_Mode_BaseN, Button_Mode_COMP, Button_Mode_DEG, Button_Mode_GRA, Button_Mode_IO, Button_Mode_PCL, Button_Mode_RAD, Button_Mode_RUN, Button_Mode_WRT, Button_RND_FIX, C, cos, degree, Divide, Dot, eng, Equal, EXE, EXP, FST, GOTO, GSB, HLT, hyp, LBL, ln, log, M_Minus, M_Plus, Min, Minus, MODE, Mode_Text, MR, Multiply, Normal_Text, Num_0, Num_1, Num_2, Num_3, Num_4, Num_5, Num_6, Num_7, Num_8, Num_9, P_Close, P_Open, P0, P1, P1_, P2, P3, P4, Plus, Plus_Minus, SecondF, SecondF_Text, SHIFT, Shift_Alpha_Text, Shift_Base_N_Text, Shift_Text, sin, tan, X_M, Xd
-
Fields inherited from class net.sourceforge.uiq3.fx603p.Owned_Operation
Owner
-
-
Constructor Summary
Constructors Constructor Description Key_M(Calculator Owner, short Normal, short Text, short Inv_Normal, short Normal_Alpha, short Inv_Alpha)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
Clear(boolean All_Clear)
Clean Key state.void
Execute(short Key_Code)
Execute virtual CPU command or key strokeprivate void
Execute_Digit_1(short Key_Code)
private void
Execute_Digit_2(short Key_Code)
private void
Execute_None()
private void
Store_Operation(boolean F_Register)
@NotNull String
toString()
Operation as java string-
Methods inherited from class net.sourceforge.uiq3.fx603p.Owned_Operation
µReset, µReset
-
-
-
-
Field Detail
-
TAG
private static final String TAG
class logger tag.
-
logger
private static final Logger logger
class logger instance
-
Begin_Plane_1
public static final int Begin_Plane_1
each memory plane contains 20 register. This is the offset for the 2nd plane
- See Also:
- Constant Field Values
-
Begin_Plane_2
public static final int Begin_Plane_2
each memory plane contains 20 register. This is the offset for the 3rd plane
- See Also:
- Constant Field Values
-
Begin_Plane_3
public static final int Begin_Plane_3
each memory plane contains 20 register. This is the offset for the 4th plane
- See Also:
- Constant Field Values
-
Begin_Plane_4
public static final int Begin_Plane_4
each memory plane contains 20 register. This is the offset for the 5th plane
- See Also:
- Constant Field Values
-
F_Token_Divider
public static final int F_Token_Divider
f register are not neatly aligned and need some magic to calculate the token
- See Also:
- Constant Field Values
-
F_Token_Offset
public static final int F_Token_Offset
offset between 0f an 1f operations. f register are not neatly aligned and need some magic to calculate the token
- See Also:
- Constant Field Values
-
M_Token_Offset
public static final int M_Token_Offset
offset between even and odd even memory operations. f register are not neatly aligned and need some magic to calculate the token
- See Also:
- Constant Field Values
-
Memory_Digit_1
public static final int Memory_Digit_1
first digit to display while entering the key
- See Also:
- Constant Field Values
-
Memory_Digit_2
public static final int Memory_Digit_2
second digit to display while entering the key
- See Also:
- Constant Field Values
-
AR_Text
private final short[] AR_Text
Text to be displayed when Mode. was selected.
-
Memory_Text
private final short[] Memory_Text
Text to be displayed when Mode. was selected.
-
Text
private final short Text
The character which make the difference between Min, MR, M+ M-
-
Backup_A_Active
private net.sourceforge.uiq3.calculator.ICalculator.AlphaRegisterType Backup_A_Active
Active A register.- A_Numeric
- Alpha register to enter and display numeric results.
- A_Text
- Alpha register to enter and display textual results.
- A_Message
- Alpha register to display messages.
- A_Key
- Alpha register to merge key operations.
-
Backup_Display_Mode_Numeric
private net.sourceforge.uiq3.calculator.ICalculator.DisplayType Backup_Display_Mode_Numeric
Current display mode- Display_Alpha
- Displays the content of the Alpha register.
- Display_L
- Displays the content of the L0 aka X register.
- Display_Formated
- Displays the content of the L0 aka X register inside an alpha
-
Backup_Display_Mode_Text
private net.sourceforge.uiq3.calculator.ICalculator.DisplayType Backup_Display_Mode_Text
Current display mode- Display_Alpha
- Displays the content of the Alpha register.
- Display_L
- Displays the content of the L0 aka X register.
- Display_Formated
- Displays the content of the L0 aka X register inside an alpha
-
Memory_Register
private int Memory_Register
current dot value
-
Status
private Key_M.Status_Type Status
We start with status none.
-
-
Constructor Detail
-
Key_M
Key_M(Calculator Owner, short Normal, short Text, short Inv_Normal, short Normal_Alpha, short Inv_Alpha)
- Parameters:
Owner
- Calculator owning the keyNormal
- Normal operationsInv_Normal
- Inverse operationNormal_Alpha
- Normal_Alpha charactersInv_Alpha
- Inverse Normal_Alpha charactersText
- indicating the memory operation
-
-
Method Detail
-
Clear
public void Clear(boolean All_Clear)
Clean Key state.- Specified by:
Clear
in interfaceIClear
- Overrides:
Clear
in classKeyboard
- Parameters:
All_Clear
- make no difference- See Also:
IClear.Clear(boolean)
-
Execute
public void Execute(short Key_Code) throws Error
Description copied from interface:IOperation
Execute virtual CPU command or key stroke
- Specified by:
Execute
in interfaceIOperation
- Overrides:
Execute
in classKey_Simple
- Parameters:
Key_Code
- Virtual CPU Operation to be executed- Throws:
Error
- some error- See Also:
IOperation.Execute(short)
-
Execute_None
private void Execute_None()
-
Store_Operation
private void Store_Operation(boolean F_Register) throws M_Error
- Parameters:
F_Register
- M or MF register?- Throws:
M_Error
- Calculator memory exhausted
-
toString
@NotNull public @NotNull String toString()
Operation as java string- Overrides:
toString
in classKey_Simple
- Returns:
- String representation
-
-