Subj : Squish questions
To : Nick Andre
From : andrew clarke
Date : Mon Nov 24 2008 05:41 am
On Sun 2008-11-23 10:00, Nick Andre (1:229/426) wrote to All:
NA> I'm trying to add Squish support to my application, written in both
NA> assembly language, BASIC and Pascal, and I can read a Squish
NA> database but writing to one appears to involve a lot of work with
NA> frames and the indexes.
From memory, I don't think Squish bases are all that complicated to write to
until you start reusing free frames. But I think you can ignore the free frame
list and still have a conforming implementation. It would just mean that if
your software wrote to the database, it would not be self-packing.
Probably the only truly complicated bit of code is when you delete a message
and have to connect the previous and next messages, so not to break the chain.
If you've ever done any work with linked lists that might start to make some
sense.
I'm tempted to write some very basic code in Python to read & write to/from a
Squish base...
NA> I cannot work with TPU's, API's or any of that, for a variety of
NA> reasons.
NA> Is the source code to Maximus publically available or some sort of code
NA> example for writing to a Squish database?
My XMSGAPI project is based on the original Squish MSGAPI (which is what
Maximus uses) and is probably the most portable & easy to read:
http://blizzard.dnsalias.org/cvsweb/xmsgapi/src/
Most of the meat is in the sq_*.c sources. Personally I think the code is
unnecessarily complicated (but I didn't write it, I just helped to port it!)
AFAIK GoldED+ uses its own Squish library which you might also get some clues
from.
http://golded-plus.sourceforge.net/
--- timEd/FreeBSD 1.11.b2
* Origin: Blizzard of Ozz, Melbourne, Victoria, Australia (3:633/267)