home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
OS/2 Shareware BBS: 10 Tools
/
10-Tools.zip
/
os2bnd01.zip
/
os2.adb
< prev
next >
Wrap
Text File
|
1995-10-14
|
2KB
|
83 lines
-- THIN ADA 95 BINDINGS TO THE OS/2 API, R 0.1ß
--
-- File: OS2.ADB (body)
--
-- Editor: Klaus A. Brunner, <kbrun@ibm.net>
-- Build: gcc -c os2.adb (GNAT 2.06)
-- Note: See the README.TXT file for additional information
--
with Unchecked_Conversion;
package body OS2 is
type Four_Chars is
record
char1: CHAR;
char2: CHAR;
char3: CHAR;
char4: CHAR;
end record;
function CHARSFROMMP is
new Unchecked_Conversion(Source => MPARAM, Target => Four_Chars);
function CHAR1FROMMP(mp: MPARAM) return CHAR is
begin
return CHARSFROMMP(mp).char1;
end CHAR1FROMMP;
function CHAR2FROMMP(mp: MPARAM) return CHAR is
begin
return CHARSFROMMP(mp).char2;
end CHAR2FROMMP;
function CHAR3FROMMP(mp: MPARAM) return CHAR is
begin
return CHARSFROMMP(mp).char3;
end CHAR3FROMMP;
function CHAR4FROMMP(mp: MPARAM) return CHAR is
begin
return CHARSFROMMP(mp).char4;
end CHAR4FROMMP;
---------------------
type Two_Shorts is
record
short1: SHORT;
short2: SHORT;
end record;
function SHORTSFROMMP is new
Unchecked_Conversion(Source => MPARAM, Target => Two_Shorts);
function SHORT1FROMMP(mp: MPARAM) return SHORT is
begin
return SHORTSFROMMP(mp).short1;
end SHORT1FROMMP;
function SHORT2FROMMP(mp: MPARAM) return SHORT is
begin
return SHORTSFROMMP(mp).short2;
end SHORT2FROMMP;
---------------------
function MPFROMSHORT(s: SHORT) return MPARAM is
begin
return MPFROMLONG(LONG(s));
end;
function MPFROMCHAR(c: CHAR) return MPARAM is
begin
return MPFROMLONG(LONG(c));
end;
end OS2;
-- eof