unit output1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForm) Button1: TButton; Button2: TButton; Label1: TLabel; Button3: TButton; Button4: TButton; Button5: TButton; Button6: TButton; Button7: TButton; Button8: TButton; Button9: TButton; Button10: TButton; procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure Button3Click(Sender: TObject); procedure Button4Click(Sender: TObject); procedure Button5Click(Sender: TObject); procedure Button6Click(Sender: TObject); procedure Button7Click(Sender: TObject); procedure Button8Click(Sender: TObject); procedure Button9Click(Sender: TObject); procedure Button10Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure PortOut(Port : Word; Data : Byte); stdcall; external 'io.dll'; function PortIn(Port:Word):Byte; stdcall; external 'io.dll'; procedure TForm1.Button2Click(Sender: TObject); begin PortOut(888,0); end; procedure TForm1.Button3Click(Sender: TObject); var InValue : Byte; begin InValue := PortIn(889); label1.Caption := IntToStr(InValue); end; procedure TForm1.Button1Click(Sender: TObject); begin PortOut(888,1); end; procedure TForm1.Button4Click(Sender: TObject); begin PortOut(888,2); end; procedure TForm1.Button5Click(Sender: TObject); begin PortOut(888,4); end; procedure TForm1.Button6Click(Sender: TObject); begin PortOut(888,8); end; procedure TForm1.Button7Click(Sender: TObject); begin PortOut(888,16); end; procedure TForm1.Button8Click(Sender: TObject); begin PortOut(888,32); end; procedure TForm1.Button9Click(Sender: TObject); begin PortOut(888,64); end; procedure TForm1.Button10Click(Sender: TObject); begin PortOut(888,128); end; end.