===============================================================================

  Delphi 1.x - serial communication component

        TSeriellObject

  Version   : 1.2
  CopyRight : (c) Hartwig MOTAL

===============================================================================

Description:
============

This component gives easy access to serial ports. It's a non-visual-component
which handles serial communication. A small terminal-program shows how it
works. Please notice, it's SHAREWARE (10$ US), but there are no limitations.


Installationguide:
==================

To install this component follow these lines:

1) C:\>        mkdir C:\SERIAL
2) C:\>        cddir C:\SERIAL
3) C:\SERIAL>  serial$.exe -y

Afterwards you'll find a lot of files in special directories. Notice, there'll
be "shipped" an other component within, called TCANVASOUTPUT which handles easy
output to the forms canvas (used by the terminal-test-program).

To install both components within Delphi, start Delphi use the menu options and
there the submenu insatll components. Install both components (OUTPUT.DCU and
SERIELL.DCU). After recompiling the library you'll have a TOOLS-Panel and
there two icons each for one component.


Usersguide:
===========

Using the components is very easy. Drag and Drop the components to the form
and handle all actions via the ObjectInspector.

The terminal-test-program shows all needed actions, here are the summaries:

1) OnFormCreate - Event from TForm
----------------------------------
procedure TForm1.FormCreate(Sender: TObject);
begin
  with SeriellObject1 do
  begin
    Initialize; { initialize the serial port }
  end;
  with CanvasOutPut1 do
  begin
    SetParentForm( Self ); { tell TCanvasOutPut which form }
    StartOutPut; { start the automatic output }
  end;
end;

2) OnActivate - Event from TForm
--------------------------------
procedure TForm1.FormActivate(Sender: TObject);
begin
  CanvasOutPut1.CreateOutPutCaret; { show the caret because Windows use  }
                                   { only one caret for the whole system }
end;

3) OnPaint - Event from TForm
-----------------------------
procedure TForm1.FormPaint(Sender: TObject);
begin
  CanvasOutPut1.PaintParentFormCanvas; { repaint the canvas }
end;

4) OnReceive - Event from TSeriellObject
----------------------------------------
procedure TForm1.SeriellObject1Receive(Sender: TObject);
var
  chReceive : char;
begin
  with SeriellObject1 do
  begin
    while IsCharAvailable do { there could be more than one char }
    begin
      chReceive := GetChar; { get char and save it }
      CanvasOutPut1.SetNewChar( chReceive ); { show the char on forms canvas }
    end;
  end;
end;

5) OnKeyPress - Event from TForm
--------------------------------
procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char);
begin
  with SeriellObject1 do
  begin
    SendChar( Key ); { send each Key via TSeriellObject }
  end;
  with CanvasOutPut1 do
  begin
    if Key in [#8,#13,#32..#255] then
        SetNewChar( Key ); { paint only "real" keys except backspace, which }
                           { is supported                                   }
  end;
end;






    /    /        /__  /__  /       moh@adv.magwien.gv.at       
   /__  /        /    /    /       A-1082 Wien, Rathausstr. 1  
  /    /        /    /    /      (Phone) 0043 (222) 4000 98634
_/   _/artwig _/   _/   _/otal (Fax) 0043 (222) 4000 99 98634