| 1 |
unit TypeDefs; |
| 2 |
interface |
| 3 |
|
| 4 |
uses |
| 5 |
Graphics, SysUtils; |
| 6 |
|
| 7 |
type |
| 8 |
ENotImplemented = class(Exception); |
| 9 |
|
| 10 |
TDataBackend = (DB_ONI, DB_ADB, DB_ONISPLIT); |
| 11 |
TDataOS = (DOS_WIN, DOS_WINDEMO, DOS_MAC, DOS_MACBETA); |
| 12 |
|
| 13 |
TChangeRights = set of (CR_EditDat, CR_EditRaw, CR_ResizeDat, CR_ResizeRaw, CR_AppendRaw); |
| 14 |
|
| 15 |
TStatusMessages = ( |
| 16 |
SM_OK, |
| 17 |
SM_AlreadyOpened, |
| 18 |
SM_FileNotFound, |
| 19 |
SM_UnknownExtension, |
| 20 |
SM_IncompatibleFile, |
| 21 |
SM_IncompatibleDBVersion, |
| 22 |
SM_UnknownError |
| 23 |
); |
| 24 |
|
| 25 |
TDatOSIdent = array[0..3] of Byte; |
| 26 |
TDatGlobalIdent = array[0..15] of Byte; |
| 27 |
|
| 28 |
THeader = packed record |
| 29 |
OSIdent: TDatOSIdent; |
| 30 |
GlobalIdent:TDatGlobalIdent; |
| 31 |
Files: Integer; |
| 32 |
NamedFiles: Integer; |
| 33 |
Extensions: Integer; |
| 34 |
DataAddr: Integer; |
| 35 |
DataSize: Integer; |
| 36 |
NamesAddr: Integer; |
| 37 |
NamesSize: Integer; |
| 38 |
Ident2: array[0..$F] of Byte; |
| 39 |
end; |
| 40 |
TFilesMap = array of packed record |
| 41 |
Extension: array[0..$3] of Char; |
| 42 |
DataAddr: Integer; |
| 43 |
NameAddr: Integer; |
| 44 |
FileSize: Integer; |
| 45 |
FileType: LongWord; |
| 46 |
end; |
| 47 |
TNamedFilesMap = array of packed record |
| 48 |
FileNumber: Integer; |
| 49 |
blubb: Integer; |
| 50 |
end; |
| 51 |
|
| 52 |
TTypeIdent = array[0..7] of Byte; |
| 53 |
TFileType = record |
| 54 |
Extension: String[4]; |
| 55 |
StructID: Integer; |
| 56 |
Name: String; |
| 57 |
IdentWin: TTypeIdent; |
| 58 |
IdentMac: TTypeIdent; |
| 59 |
end; |
| 60 |
|
| 61 |
TExtensionsMap = array of packed record |
| 62 |
Ident: TTypeIdent; |
| 63 |
Extension: array[0..$3] of Char; |
| 64 |
ExtCount: Integer; |
| 65 |
end; |
| 66 |
|
| 67 |
TFileInfo = packed record |
| 68 |
ID: Integer; |
| 69 |
Name: String; |
| 70 |
Extension: String[4]; |
| 71 |
Size: Integer; |
| 72 |
FileType: LongWord; |
| 73 |
DatAddr: Integer; |
| 74 |
end; |
| 75 |
TFiles = array of TFileInfo; |
| 76 |
|
| 77 |
TRawDataInfo = record |
| 78 |
Name: String; |
| 79 |
SrcID: Integer; |
| 80 |
SrcOffset: Integer; |
| 81 |
RawAddr: Integer; |
| 82 |
RawSize: Integer; |
| 83 |
LocSep: Boolean; |
| 84 |
RawType: String; |
| 85 |
end; |
| 86 |
TRawDataList = array of TRawDataInfo; |
| 87 |
|
| 88 |
TSortType = ( |
| 89 |
ST_IDAsc, |
| 90 |
ST_IDDesc, |
| 91 |
ST_NameAsc, |
| 92 |
ST_NameDesc, |
| 93 |
ST_ExtAsc, |
| 94 |
ST_ExtDesc, |
| 95 |
ST_ExtNameAsc, |
| 96 |
ST_ExtNameDesc |
| 97 |
); |
| 98 |
|
| 99 |
TExtensionFormat = ( |
| 100 |
EF_ExtOnly, |
| 101 |
EF_ExtCount |
| 102 |
); |
| 103 |
|
| 104 |
TByteData = array of Byte; |
| 105 |
|
| 106 |
TAppSettings = record |
| 107 |
DatPath: String[250]; |
| 108 |
ExtractPath: String[250]; |
| 109 |
CharSet: TFontCharSet; |
| 110 |
HideUnusedData: Boolean; |
| 111 |
end; |
| 112 |
|
| 113 |
TToolList = array of record |
| 114 |
context: String; |
| 115 |
name: String; |
| 116 |
exts: String; |
| 117 |
end; |
| 118 |
|
| 119 |
|
| 120 |
TLinkByName = record |
| 121 |
SrcOffset: Integer; |
| 122 |
Destination: String; |
| 123 |
end; |
| 124 |
TLinkByID = record |
| 125 |
SrcOffset: Integer; |
| 126 |
Destination: Integer; |
| 127 |
end; |
| 128 |
TLinks = record |
| 129 |
ByName: array of TLinkByName; |
| 130 |
ByID: array of TLinkByID; |
| 131 |
end; |
| 132 |
|
| 133 |
TDatLink = record |
| 134 |
SrcOffset: Integer; |
| 135 |
DestID: Integer; |
| 136 |
PosDestExts: String; |
| 137 |
end; |
| 138 |
TDatLinkList = array of TDatLink; |
| 139 |
|
| 140 |
{ |
| 141 |
TLevelInfo = record |
| 142 |
Ident: array[0..$13] of Byte; |
| 143 |
LevelNumber: Byte; |
| 144 |
end; |
| 145 |
|
| 146 |
TDatLinks = array of record |
| 147 |
Src_Offset: Integer; |
| 148 |
Target: Integer; |
| 149 |
end; |
| 150 |
} |
| 151 |
|
| 152 |
const |
| 153 |
CrLf: String[2] = #13#10; |
| 154 |
|
| 155 |
implementation |
| 156 |
|
| 157 |
end. |