Package net.sourceforge.uiq3.fx602p
Class Op_Interface
- java.lang.Object
-
- net.sourceforge.uiq3.fx602p.Owned_Operation
-
- net.sourceforge.uiq3.fx602p.Op_Interface
-
- All Implemented Interfaces:
IClear,IOperation,IOwned_Operation,IProgrammable_Operation
abstract class Op_Interface extends Owned_Operation implements IProgrammable_Operation
Halt Calculator- Author:
- "Martin Krischik" «krischik@users.sourceforge.net»
-
-
Field Summary
Fields Modifier and Type Field Description private static short @NotNull []AF_TextFile type Text for All-Filesprivate static intAlpha_IdDon't use a numeric file Id.protected net.sourceforge.uiq3.calculator.ICalculator.AlphaRegisterTypeBackup_ActiveKeep a backup of the active A registerprivate intBackup_Display_CountRemember the display character count for the A_Text register.private net.sourceforge.uiq3.calculator.ICalculator.DisplayTypeBackup_Display_ModeKeep a backup of the display mode registerprivate NumberBackup_LKeep a backup of the L Registerprivate short @Nullable []Backup_NumericKeep a backup of the A Registerprivate short @Nullable []Backup_PrintKeep a backup of the A Registerprivate intBackup_Printer_CountRemember the printer character count for the A_Text register.private short @Nullable []Backup_TextKeep a backup of the A Registerprivate static intBits_4private static short @NotNull []DF_TextFile type Text for Data-Filesprivate static LoggerLoggerClass logger instance.private static intNull_IdDon't use a numeric file Id.private intNum_IdNumeric file nameprivate static short[]PF_TextFiletype Text for Program-Filesprivate static StringTAGClass logger tag.-
Fields inherited from class net.sourceforge.uiq3.fx602p.Owned_Operation
Owner
-
-
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)Display filename.voidExecute(short Opcode)Execute virtual CPU command or key strokeprotected StringJava_File_Name()protected voidRestore_Display()Restore the Display (A and L Register)-
Methods inherited from class net.sourceforge.uiq3.fx602p.Owned_Operation
µ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
File type 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
File type Text for Data-Files
-
Logger
private static final Logger Logger
Class logger instance.
-
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
-
TAG
private static final String TAG
Class logger tag.
-
Backup_Display_Count
private int Backup_Display_Count
Remember the display character count for the A_Text register.
-
Backup_Display_Mode
private net.sourceforge.uiq3.calculator.ICalculator.DisplayType Backup_Display_Mode
Keep a backup of the display mode register
-
Backup_L
@Nullable private Number Backup_L
Keep a backup of the L Register
-
Backup_Numeric
private short @Nullable [] Backup_Numeric
Keep a backup of the A Register
-
Backup_Print
private short @Nullable [] Backup_Print
Keep a backup of the A Register
-
Backup_Printer_Count
private int Backup_Printer_Count
Remember the printer character count for the A_Text register.
-
Backup_Text
private short @Nullable [] Backup_Text
Keep a backup of the A Register
-
Num_Id
private int Num_Id
Numeric file name
-
Backup_Active
protected net.sourceforge.uiq3.calculator.ICalculator.AlphaRegisterType Backup_Active
Keep a backup of the active A register
-
-
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.- Specified by:
Clearin interfaceIClear- 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)Display filename.- Parameters:
Type- File Type to print oder display
-
Execute
public void Execute(short Opcode) throws ErrorDescription copied from interface:IOperationExecute virtual CPU command or key stroke
- Specified by:
Executein interfaceIOperation- Parameters:
Opcode- Virtual CPU Operation to be executed- Throws:
Error- numeric errorError- See Also:
IOperation.Execute(short)
-
Java_File_Name
protected String Java_File_Name()
- Returns:
- alpha register as file name
-
-