Ignore:
Timestamp:
Jul 12, 2022, 11:51:47 PM (22 months ago)
Author:
chronos
Message:
  • Modified: Execute instructions as array of instruction handlers.
  • Modified: Optimized some methods call with inline directive.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/UltimatOS/UMachine.pas

    r32 r34  
    1414    Machine: TMachine;
    1515    procedure Reset; virtual;
     16    procedure OutputHandler(Port: TAddress; Data: TData); virtual; abstract;
     17    function InputHandler(Port: TAddress): TData;  virtual; abstract;
    1618  end;
    1719
     
    8789  end;
    8890
     91  { TStorage }
     92
     93  TStorage = class(TDevice)
     94  public
     95    F: TFileStream;
     96    FileName: string;
     97    constructor Create;
     98    procedure OutputHandler(Port: TAddress; Data: TData); override;
     99    function InputHandler(Port: TAddress): TData; override;
     100  end;
     101
    89102  { TMachine }
    90103
     
    110123
    111124implementation
     125
     126{ TStorage }
     127
     128constructor TStorage.Create;
     129begin
     130
     131end;
     132
     133procedure TStorage.OutputHandler(Port: TAddress; Data: TData);
     134begin
     135
     136end;
     137
     138function TStorage.InputHandler(Port: TAddress): TData;
     139begin
     140
     141end;
    112142
    113143{ TMouse }
Note: See TracChangeset for help on using the changeset viewer.