UNIT FIDOFMT;
(*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*)
(*% %*)
(*% %*)
(*% F I D O M E S S A G E S T R U C T U R E %*)
(*% %*)
(*% %*)
(*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*)
(*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*)
(* *)
(* Opus stores and handles its messages in the traditional *)
(* FTSC FidoNet message format with the exception that *)
(* additional dating information is added in a set of two *)
(* 'timestamp' fields that indicate when a message was *)
(* created and when it arrived on the system and in the use *)
(* of certain message flags. The extended use of the flags *)
(* is done in such a way as to only be of use within the *)
(* Opus environment and avoidsconflict with other systems *)
(* which adhere to basic FidoNet standards. *)
(* In a manner directly descended from the original Fido<tm> *)
(* BBS system, messages are stored in one or more directories *)
(* which each correspond to a System Area (topic). *)
(* Each message is stored in its own file and has a file name *)
(* format "#.MSG" where "#" is the assigned number of the *)
(* message. The first messages in any given area would be *)
(* named 1.MSG, 2.MSG, and so on. *)
(* *)
(* Each message file consists of a fixed-length header record, *)
(* immediately followed by a variable-length stream of ASCII *)
(* text that is terminated by an ASCII NULL (Code 0). *)
(* All text is considered to be unformatted and continuous *)
(* without end-of-line sequences unless they are meant to *)
(* unconditionally force a new paragraph. Traditionally, *)
(* some message editors and BBS's use a $8D character *)
(* (CR with 8th bit ON) as a "soft" carriage return. *)
(* These should be treated as superfluous *unless" they are *)
(* immediately followed by a space. In that case, the line *)
(* that the space starts is considered to be fixed format and *)
(* should not be word wrapped as all other message text will be. *)
(* The header data contains fixed information about the author, *)
(* addressee, creation and arrival dates, subject, message *)
(* numbers that it replies to or is answered by, privacy flags, *)
(* and so on. In the case of messages in a netmail area, *)
(* there are many special flags used. *)
(*----------------------------------------------------------------*)
(*----------------------------------------------------------------*)
(* TIME STAMP (Not an FTSC Standard. Unique to Opus) *)
(*----------------------------------------------------------------*)
(* *)
(* The following _stamp structure is used in Opus message *)
(* headers to store a message's creation date (when first *)
(* written) and the date the message arrived on the system *)
(* such as when received via netmail. *)
(* *)
(* This dating information is auxiliary and used by Opus only. *)
(* It does *not* replace the functionality of the FTSC *)
(* standard ASCII formatted date field which is also maintained *)
(* by Opus for compatibility with the rest of the world. *)
(* *)
(*----------------------------------------------------------------*)
|