BBS: Inland Empire Archive
Date: 05-25-92 (22:43) Number: 179
From: FRANCOIS ROY Refer#: NONE
To: STEVE MATHIESON Recvd: NO
Subj: Squish, part 2 Conf: (2) Quik_Bas
Ok, now for the little bit of explanation I am able to
give... I've only figured out how to read the Squish bases;
I haven't tried to write new messages yet.
The .SQI file is formed of 12-byte records, defined as per
the SQIDX type. There is one such record for each valid
message in the Squish base.
The .SQD file contains the messages. You start reading (BINARY mode) at byte
1+SQIDX.OFFST (QB starts counting at 1, not 0). There, you
find a record of type SQD immediately followed by a record
of type SQMSG, immediately followed by the message itself.
The SQD and SQMSG records total 238 bytes, so the length of
the message to be read is SQD.MSGLEN-238. I also found out
that if the message contains any ^A kludges, these end with
a null byte, followed by the text of the message.
In case you're wondering what the SQBASE record is used for... I'm not sure.
There is only one of those per message base, and it appears
at the very beginning of the .SQD file. It appears to
store the control information Squish needs to maintain the
It isn't much, but hopefully it will set you on the right
track. I had a hard time getting this far myself, since
#define's and other redundant stuff than actual structure
definitions... I'm only glad 'C' is meant to be read by
computers, not humans :-)
--- msgedsq 2.1
* Origin: R&D BBS