source: branches/configured machine/AddressableArea.pas

Last change on this file was 239, checked in by chronos, 10 months ago
File size: 1.5 KB
Line 
1unit AddressableArea;
2
3interface
4
5uses
6 Classes, SysUtils;
7
8type
9 TAddressableArea1 = class
10 procedure Write1(Address: Byte; Data: Byte); virtual; abstract;
11 function Read1(Address: Byte): Byte; virtual; abstract;
12 end;
13
14 TAddressableArea2 = class
15 procedure Write1(Address: Word; Data: Byte); virtual; abstract;
16 procedure Write2(Address: Word; Data: Word); virtual; abstract;
17 function Read1(Address: Word): Byte; virtual; abstract;
18 function Read2(Address: Word): Word; virtual; abstract;
19 end;
20
21 TAddressableArea4 = class
22 procedure Write1(Address: Cardinal; Data: Byte); virtual; abstract;
23 procedure Write2(Address: Cardinal; Data: Word); virtual; abstract;
24 procedure Write4(Address: Cardinal; Data: Cardinal); virtual; abstract;
25 function Read1(Address: Cardinal): Byte; virtual; abstract;
26 function Read2(Address: Cardinal): Word; virtual; abstract;
27 function Read4(Address: Cardinal): Cardinal; virtual; abstract;
28 end;
29
30 TAddressableArea8 = class
31 procedure Write1(Address: DWord; Data: Byte); virtual; abstract;
32 procedure Write2(Address: DWord; Data: Word); virtual; abstract;
33 procedure Write4(Address: DWord; Data: Cardinal); virtual; abstract;
34 procedure Write8(Address: DWord; Data: DWord); virtual; abstract;
35 function Read1(Address: DWord): Byte; virtual; abstract;
36 function Read2(Address: DWord): Word; virtual; abstract;
37 function Read4(Address: DWord): Cardinal; virtual; abstract;
38 function Read8(Address: DWord): DWord; virtual; abstract;
39 end;
40
41implementation
42
43end.
44
Note: See TracBrowser for help on using the repository browser.