mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-09-13 13:29:24 +02:00
+ Initial implementation
This commit is contained in:
parent
73c9c39b22
commit
53d0f3d9af
102
rtl/linux/ports.pp
Normal file
102
rtl/linux/ports.pp
Normal file
@ -0,0 +1,102 @@
|
||||
{
|
||||
$Id$
|
||||
This file is part of the Free Pascal run time library.
|
||||
Copyright (c) 1998 by Michael Van Canneyt
|
||||
member of the Free Pascal development team
|
||||
|
||||
See the file COPYING.FPC, included in this distribution,
|
||||
for details about the copyright.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||
|
||||
**********************************************************************}
|
||||
|
||||
Unit ports;
|
||||
|
||||
{ Implements the
|
||||
port[] portw[] and portl[]
|
||||
constructs using Delphi classes }
|
||||
|
||||
Interface
|
||||
|
||||
type
|
||||
tport = class
|
||||
protected
|
||||
procedure writeport(p : longint;data : byte);
|
||||
function readport(p : longint) : byte;
|
||||
public
|
||||
property pp[w : longint] : byte read readport write writeport;default;
|
||||
end;
|
||||
|
||||
tportw = class
|
||||
protected
|
||||
procedure writeport(p : longint;data : word);
|
||||
function readport(p : longint) : word;
|
||||
public
|
||||
property pp[w : longint] : word read readport write writeport;default;
|
||||
end;
|
||||
|
||||
tportl = class
|
||||
Protected
|
||||
procedure writeport(p : longint;data : longint);
|
||||
function readport(p : longint) : longint;
|
||||
Public
|
||||
property pp[w : Longint] : longint read readport write writeport;default;
|
||||
end;
|
||||
|
||||
|
||||
{ Non-Instantiaded vars. As yet, they don't have to be instantiated,
|
||||
because there is no need for 'self' etc. }
|
||||
|
||||
var
|
||||
port,
|
||||
portb : tport;
|
||||
portw : tportw;
|
||||
portl : tportl;
|
||||
|
||||
|
||||
implementation
|
||||
|
||||
uses linux;
|
||||
|
||||
{ to give easy port access like tp with port[] }
|
||||
|
||||
procedure tport.writeport(p : Longint;data : byte);
|
||||
|
||||
begin
|
||||
linux.writeport (p,data)
|
||||
end;
|
||||
|
||||
function tport.readport(p : Longint) : byte;
|
||||
|
||||
begin
|
||||
linux.readport (p,Result);
|
||||
end;
|
||||
|
||||
procedure tportw.writeport(p : longint;data : word);
|
||||
|
||||
begin
|
||||
linux.writeport (p,data)
|
||||
end;
|
||||
|
||||
function tportw.readport(p : longint) : word;
|
||||
|
||||
begin
|
||||
linux.Readport(P,Result);
|
||||
end;
|
||||
|
||||
procedure tportl.writeport(p : longint;data : longint);
|
||||
|
||||
begin
|
||||
linux.writeport (p,data)
|
||||
end;
|
||||
|
||||
function tportl.readport(p : longint) : longint;
|
||||
|
||||
begin
|
||||
Linux.readport(p,Result);
|
||||
end;
|
||||
|
||||
end.
|
Loading…
Reference in New Issue
Block a user