Package net.sourceforge.uiq3.fx603p
Class Op_Interface
- java.lang.Object
-
- net.sourceforge.uiq3.fx603p.Owned_Operation
-
- net.sourceforge.uiq3.fx603p.Programmable_Operation
-
- net.sourceforge.uiq3.fx603p.Op_Interface
-
- All Implemented Interfaces:
IClear
,IOperation
,IOwned_Operation
,IProgrammable_Operation
,IProgrammable_Operation
abstract class Op_Interface extends Programmable_Operation
Halt Calculator- Author:
- "Martin Krischik" «krischik@users.sourceforge.net»
-
-
Field Summary
Fields Modifier and Type Field Description private static short @NotNull []
AF_Text
Filetype Text for All-Filesprivate static int
Alpha_Id
Don't use a numeric file Id.protected net.sourceforge.uiq3.calculator.ICalculator.AlphaRegisterType
Backup_Active_Numeric
Backup active numeric rowsprotected net.sourceforge.uiq3.calculator.ICalculator.AlphaRegisterType
Backup_Active_Text
Backup active text rows(package private) int
Backup_Display_Count
Remember the display character count for the A_Text register.private net.sourceforge.uiq3.calculator.ICalculator.DisplayType
Backup_Display_Mode
keep backup of display mode.(package private) Number
Backup_L
Keep a backup of the L Registerprivate short @Nullable []
Backup_Numeric
Keep a backup of the A_Numeric Register(package private) short @Nullable []
Backup_Print
Keep a backup of the A Register.(package private) int
Backup_Printer_Count
protected short @Nullable []
Backup_Text
Keep a backup of the of A_Text.private static int
Bits_4
private static short @NotNull []
DF_Text
Filetype Text for Data-Filesprotected static String
HAS_BEEN_SET_AT_THE_BEGINNING_OF_THE_SAVE_OPERATION
Assert messageprivate static int
Header_Size
private static Logger
Logger
Class logger instance.private static int
Mask_8_Bit
private static int
Null_Id
Don't use a numeric file Id.private int
Num_Id
Numeric file nameprivate static short[]
PF_Text
Filetype Text for Program-Filesprivate static short @NotNull []
Program_All_Text
All programs storedprivate static short @NotNull []
Program_None_Text
All programs storedprivate static String
TAG
Class 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_Interface(@NotNull Calculator Owner)
Create operation and attach to owning calculator.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private void
Backup_Display()
Backup the display (A and L Register).(package private) int @NotNull []
Casio_File_Name()
return filename to be used inside the file header.void
Clear(boolean AC)
Reset state - for state full operations.void
Clear_Backup()
clear the backup data so it won't be accidentally used(package private) void
Display_File_Name(Interface.File_Type Type, short @NotNull [] File_Name)
Display filename.void
Execute(short Opcode)
Execute virtual CPU command or key strokeprotected short @NotNull []
Filename()
get the raw file nameprotected String
Java_File_Name()
protected void
Restore_Display()
Restore the Display (A and L Register)-
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
-
AF_Text
private static final short @NotNull [] AF_Text
Filetype Text for All-Files
-
Alpha_Id
private static final int Alpha_Id
Don't use a numeric file Id.- See Also:
- Constant Field Values
-
Bits_4
private static final int Bits_4
- See Also:
- Constant Field Values
-
DF_Text
private static final short @NotNull [] DF_Text
Filetype Text for Data-Files
-
Header_Size
private static final int Header_Size
- See Also:
- Constant Field Values
-
Logger
private static final Logger Logger
Class logger instance.
-
Mask_8_Bit
private static final int Mask_8_Bit
- See Also:
- Constant Field Values
-
Null_Id
private static final int Null_Id
Don't use a numeric file Id.- See Also:
- Constant Field Values
-
PF_Text
private static final short[] PF_Text
Filetype Text for Program-Files
-
Program_All_Text
private static final short @NotNull [] Program_All_Text
All programs stored
-
Program_None_Text
private static final short @NotNull [] Program_None_Text
All programs stored
-
TAG
private static final String TAG
Class logger tag.
-
HAS_BEEN_SET_AT_THE_BEGINNING_OF_THE_SAVE_OPERATION
protected static final String HAS_BEEN_SET_AT_THE_BEGINNING_OF_THE_SAVE_OPERATION
Assert message
- See Also:
- Constant Field Values
-
Backup_Display_Mode
@Nullable private net.sourceforge.uiq3.calculator.ICalculator.DisplayType Backup_Display_Mode
keep backup of display mode.
-
Backup_Numeric
private short @Nullable [] Backup_Numeric
Keep a backup of the A_Numeric Register
-
Num_Id
private int Num_Id
Numeric file name
-
Backup_Display_Count
int Backup_Display_Count
Remember the display character count for the A_Text register.
-
Backup_L
@Nullable Number Backup_L
Keep a backup of the L Register
-
Backup_Print
short @Nullable [] Backup_Print
Keep a backup of the A Register. Needed for save and load the alpha register operation. Need be cleared after print operations.
-
Backup_Printer_Count
int Backup_Printer_Count
-
Backup_Active_Numeric
@Nullable protected net.sourceforge.uiq3.calculator.ICalculator.AlphaRegisterType Backup_Active_Numeric
Backup active numeric rows
-
Backup_Active_Text
@Nullable protected net.sourceforge.uiq3.calculator.ICalculator.AlphaRegisterType Backup_Active_Text
Backup active text rows
-
Backup_Text
protected short @Nullable [] Backup_Text
Keep a backup of the of A_Text. Also used for save display operation.
-
-
Constructor Detail
-
Op_Interface
Op_Interface(@NotNull @NotNull Calculator Owner)
Create operation and attach to owning calculator.- Parameters:
Owner
- Calculator which will call this Opcode
-
-
Method Detail
-
Backup_Display
private void Backup_Display()
Backup the display (A and L Register). This is necessary as I/O operations might be followed by file name or file number which will is composed in the A_Text and L_X register respectively. To change this a massive change Op_Alpha or Op_Num would be needed. A backup is a lot simpler.
-
Casio_File_Name
@Contract(pure=true) int @NotNull [] Casio_File_Name()
return filename to be used inside the file header.- Returns:
- alpha register as internal file name as array of integer range 0 .. 255
-
Clear
public void Clear(boolean AC)
Reset state - for state full operations.- Parameters:
AC
- All Clear reset- See Also:
IClear.Clear(boolean)
-
Clear_Backup
public final void Clear_Backup()
clear the backup data so it won't be accidentally used
-
Display_File_Name
void Display_File_Name(@NotNull Interface.File_Type Type, short @NotNull [] File_Name) throws Error
Display filename.
-
Execute
public void Execute(short Opcode) throws Error
Description copied from interface:IOperation
Execute virtual CPU command or key stroke
- Parameters:
Opcode
- Virtual CPU Operation to be executed- Throws:
Error
- numeric errorError
- See Also:
IOperation.Execute(short)
-
Filename
protected short @NotNull [] Filename()
get the raw file name
- Returns:
- get the filename as alpha characters
-
Java_File_Name
protected String Java_File_Name()
- Returns:
- alpha register as file name
-
-