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_TextFiletype Text for All-Filesprivate static intAlpha_IdDon't use a numeric file Id.protected net.sourceforge.uiq3.calculator.ICalculator.AlphaRegisterTypeBackup_Active_NumericBackup active numeric rowsprotected net.sourceforge.uiq3.calculator.ICalculator.AlphaRegisterTypeBackup_Active_TextBackup active text rows(package private) intBackup_Display_CountRemember the display character count for the A_Text register.private net.sourceforge.uiq3.calculator.ICalculator.DisplayTypeBackup_Display_Modekeep backup of display mode.(package private) NumberBackup_LKeep a backup of the L Registerprivate short @Nullable []Backup_NumericKeep a backup of the A_Numeric Register(package private) short @Nullable []Backup_PrintKeep a backup of the A Register.(package private) intBackup_Printer_Countprotected short @Nullable []Backup_TextKeep a backup of the of A_Text.private static intBits_4private static short @NotNull []DF_TextFiletype Text for Data-Filesprotected static StringHAS_BEEN_SET_AT_THE_BEGINNING_OF_THE_SAVE_OPERATIONAssert messageprivate static intHeader_Sizeprivate static LoggerLoggerClass logger instance.private static intMask_8_Bitprivate static intNull_IdDon't use a numeric file Id.private intNum_IdNumeric file nameprivate static short[]PF_TextFiletype Text for Program-Filesprivate static short @NotNull []Program_All_TextAll programs storedprivate static short @NotNull []Program_None_TextAll programs storedprivate 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_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 voidBackup_Display()Backup the display (A and L Register).(package private) int @NotNull []Casio_File_Name()return filename to be used inside the file header.voidClear(boolean AC)Reset state - for state full operations.voidClear_Backup()clear the backup data so it won't be accidentally used(package private) voidDisplay_File_Name(Interface.File_Type Type, short @NotNull [] File_Name)Display filename.voidExecute(short Opcode)Execute virtual CPU command or key strokeprotected short @NotNull []Filename()get the raw file nameprotected StringJava_File_Name()protected voidRestore_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 ErrorDisplay filename.
-
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- 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
-
-