Class Op_Interface

    • 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
      • DF_Text

        private static final short @NotNull [] DF_Text
        File type Text for Data-Files
      • Logger

        private static final Logger Logger

        Class logger instance.

      • 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:
        Clear in interface IClear
        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
      • Java_File_Name

        protected String Java_File_Name()
        Returns:
        alpha register as file name
      • Restore_Display

        protected final void Restore_Display()
                                      throws Error
        Restore the Display (A and L Register)
        Throws:
        Error - when something failed