Link to home
Start Free TrialLog in
Avatar of RonaBassett
RonaBassett

asked on

Does anyone have Delphi code to calculate X.25 Frame Check Sequence (CRC-CCITT)?

Please can anyone help with some nice Delphi code that will calculate the X.25 Frame Check Sequence?

I am trying to receive and send X.25 packets from Windows 2000 via an ISDN line, without a PAD. I am trying to create the X.25 packets myself. I can get the SABM and DISC packets into a memo box, using APRO component TApdcom. However, next I need to send a UA (unnumbered acknowledgement), and an RR (ready to receive), and one day hopefully, a Call Request, and later, some data.

To do this, I need to calculate the 16-bit checksum to put into the outgoing X.25 packet. I have followed various web links and tried various available programs to (a) construct a table (b) use the table with complex XOR instructions that I don't really understand, but have slavishly copied. I can't get the same answers as the incoming SABM and DISC packets.

I should really appreciate any clues, pointers, and best of all some really nice working code!
Avatar of Epsylon
Epsylon

See if you can find something on Google:

http://groups.google.com/

search for: Delphi x.25 crc
Avatar of RonaBassett

ASKER

Thank you, Epsylon, but I have already scoured Google! I can't seem to get a matching set of programs, and I don't really understand the exotic maths.
ASKER CERTIFIED SOLUTION
Avatar of egono
egono

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Brilliant. Thank you very much indeed. Appreciated more than you realise!!!