@1:324/127
BS> Actually, I prefer Turbo Pascal as my language of choice.
BS>Obviously the end product will be a TMS file, but I can use Pascal
BS>source if you have it. :) .
BS>Talk to you later!
BS>.
I thought I saw someone give you some info, So I didn't look. I will
keep looking, but this is what I was able to kick up right away from
GDSOFT. (The Swag Distribution board.)
======================== Cut Here =================================
(*
Hope ya don't mind me responding via NetMail instead of
the Pascal echo but as you may have noticed the code takes 6 messages!
The
following code is "fairly" EMSI compatible (not sure if it's IEMSI
compatinle
but it should be).
*)
{********* Part 1 of 6 ****************************************}
Uses
DOS,CRT;
Type
HexString = String[4];
Const
FingerPrint = '{EMSI}';
System_Address = '3:690/626.6'; { Your address }
Password = 'ABCD1234'; { Session password }
Link_Codes = '{8N1}'; { Modem setup }
Compatibility_Codes = '{ZMO}'; { Z-Modem }
Mailer_Product_Code = '{00}';
Mailer_Name = 'PM';
Mailer_Version = '1.00';
Mailer_Serial_Number = '{Beta}';
EMSI_INQ : String = '**EMSI_INQC816';
EMSI_REQ : String = '**EMSI_REQA77E';
EMSI_ACK : String = '**EMSI_ACKA490';
EMSI_NAK : String = '**EMSI_NAKEEC3';
Var
EMSI_DAT : String; { NOTE : EMSI_DAT has no maximum length
}
Length_EMSI_DAT : HexString; { Expressed in Hexidecimal }
Packet : String;
Rec_EMSI_DAT : String; { EMSI_DAT sent by the answering system
}
Len_Rec_EMSI_DAT : Word;
Len,
CRC : HexString;
R : Registers;
C : Char;
Loop,ComPort,TimeOut,Tries : Byte;
Temp : String;
{**** String functions ****}
Function Up_Case(St : String) : String;
Begin
For Loop := 1 to Length(St) do
St[Loop] := Upcase(St[Loop]);
Up_Case := St;
End;
{**** Mathematical Functions ****}
function Hex(i : Word) : HexString;
const
hc : array[0..15] of Char = '0123456789ABCDEF';
var
l, h : Byte;
begin
l := Lo(i);
h := Hi(i);
Hex[0] := #4; { Length of String = 4 }
Hex[1] := hc[h shr 4];
Hex[2] := hc[h and $F];
Hex[3] := hc[l shr 4];
Hex[4] := hc[l and $F];
end {Hex} ;
Function Power(Base,E : Byte) : Longint;
Begin
Power := Round(Exp(E * Ln(Base) ));
End;
(Continued next message...)
--- PCBoard (R) v15.22/M 2
---------------
* Origin: The Computer Nut BBS, Elkhart,IN (1:2285/80)
|