Ok. Been thinking about the file format for the database. At the moment I think the best idea is to have one large (compressed) data file.
Here's a rough idea how the data will be stored (uncompressed):
Compression info: not concrete at this time
Header data: chr$0 (represents type of data follows)
byte value (1=represents People, 2=represents VIP's etc.)
That way new types can be added later, with a theoretical maximum of 255 types (not gonna use value of 0), by the user.
Main data: chr$1+"Text 1"+chr$2
chr$3+"Text 2"+chr$4
chr$5+"Text 3"+chr$6
chr$7+"Text 4"+chr$8
Text 1 is the name of the person/demo/diskzine etc. (see below)
Text 2 is the nickname/created by/no. issues released etc. (see below)
Text 3 is the email address/release date/release date etc. (see below)
Text 4 is the notes about person/demo/diskzine and can contain an IFF image (IFF data marked with chr$0+chr$0 before it), up to a maximum of 5 (or would 10 be better?).
Not sure if the markers before and after each text part are necessary, but they could prove useful later.
The way I have done it is to allow for quick searches through the uncompressed datafile using the Hunt command (e.g. searching for files with images is simply a case of scanning fromn start to finish looking for chr$0+chr$0). I'm not entirely sure how I will store the data for the searches though - possibly by creating a temporary reference file in the RAM disk which points to relevant message numbers (or location, whichever proves faster).
Here's what I have on each data type so far..
People
-------
Text 1 = Name
Text 2 = Nickname
Text 3 = Email address
Text 4 = Notes
VIP's
------
As People but Text 4 = VIP because...
Diskzines
---------
Text 1 = Diskzine Name
Text 2 = Number of issues released
Text 3 = Released
Text 4 = Notes
Demo's
------
Text 1 = Demo Name
text 2 = Created By
Text 3 = Released
Text 4 = Notes
Games
-----
Text 1 = Game Name
Text 2 = Created By
Text 3 = Released
Text 4 = Notes
AMOS PD disks
-------------
Text 1 = Disk Name
Text 2 = Released by (eg. Len & Ann tucker)
Text 3 = Release date
Text 4 = Disk Contents
Extensions
----------
Text 1 = Extension Name
Text 2 = Created By
Text 3 = Last version released
Text 4 = Notes
I think that's about it. Any suggestions/commnents welcome. BTW, I haven't done any coding on it yet
Regards,
Lonewolf10