1 /* 2 PLIB - A Suite of Portable Game Libraries 3 Copyright (C) 1998,2002 Steve Baker 4 5 This library is free software; you can redistribute it and/or 6 modify it under the terms of the GNU Library General Public 7 License as published by the Free Software Foundation; either 8 version 2 of the License, or (at your option) any later version. 9 10 This library is distributed in the hope that it will be useful, 11 but WITHOUT ANY WARRANTY; without even the implied warranty of 12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 Library General Public License for more details. 14 15 You should have received a copy of the GNU Library General Public 16 License along with this library; if not, write to the Free Software 17 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 18 19 For further information visit http://plib.sourceforge.net 20 21 $Id: ssgLoadMDL.h 1568 2002-09-02 06:05:49Z sjbaker $ 22 */ 23 24 //=========================================================================== 25 // 26 // File: fsPalettes.h 27 // 28 // Created: Fri Oct 1 15:34:29 1999 29 // 30 // Author: Thomas Engh Sevaldrud <tse@math.sintef.no> 31 // 32 // Revision: $Id: ssgLoadMDL.h 1568 2002-09-02 06:05:49Z sjbaker $ 33 // 34 // Description: 35 // 36 //=========================================================================== 37 // Copyright (c) 1999 Thomas E. Sevaldrud <tse@math.sintef.no> 38 //=========================================================================== 39 40 #ifndef _SSGLOADMDL_H 41 #define _SSGLOADMDL_H 42 43 44 45 //=========================================================================== 46 // Aircraft color palette. The aircraft in MSFS has 47 // a different palette than the default fs5.pal file. 48 // Entries with (?) means that I am not sure of the 49 // values. Entries with (L), means that the color is 50 // emissive (bright at night). 51 52 struct acColor 53 { 54 unsigned char r, g, b, emissive; 55 }; 56 57 static const acColor fsAcPalette[53] = { 58 { 0, 0, 0 , 0 }, // Black 59 { 89, 89, 89 , 0 }, // Dark gray 60 { 169, 169, 169 , 0 }, // Gray 61 { 211, 211, 211 , 0 }, // Light gray 62 { 255, 255, 255 , 0 }, // White 63 { 255, 0, 0 , 0 }, // Red 64 { 0, 255, 0 , 0 }, // Green 65 { 0, 0, 255 , 0 }, // Blue 66 { 255, 165, 0 , 0 }, // Orange 67 { 255, 255, 0 , 0 }, // Yellow 68 { 165, 42, 42 , 0 }, // Brown 69 { 210, 180, 140 , 0 }, // Tan 70 { 255, 69, 0 , 0 }, // Rust (?) 71 { 107, 142, 35 , 0 }, // Olive (?) 72 { 0, 87, 112 , 0 }, // Water 73 { 255, 0, 0 , 1 }, // Red (L) 74 { 0, 255, 0 , 1 }, // Green (L) 75 { 0, 0, 255 , 1 }, // Blue (L) 76 { 57, 57, 112 , 1 }, // Aqua (L) (?) 77 { 255, 165, 0 , 1 }, // Orange (L) 78 { 255, 255, 0 , 1 }, // Yellow (L) 79 { 255, 255, 255 , 1 }, // White (L) 80 { 255, 255, 255 , 1 }, // White (L) 81 { 139, 0, 0 , 0 }, // Dark red 82 { 0, 100, 0 , 0 }, // Dark green 83 { 0, 0, 139 , 0 }, // Dark blue 84 { 205, 120, 0 , 0 }, // Dark orange 85 { 139, 100, 0 , 0 }, // Dark yellow (?) 86 { 82, 21, 21 , 0 }, // Dark brown (?) 87 { 105, 90, 70 , 0 }, // Dark tan 88 { 128, 35, 0 , 0 }, // Dark rust (?) 89 { 53, 71, 17 , 0 }, // Dark olive (?) 90 { 205, 0, 0 , 0 }, // Medium red 91 { 0, 179, 0 , 0 }, // Medium green 92 { 0, 0, 205 , 0 }, // Medium blue 93 { 255, 140, 0 , 0 }, // Medium orange (?) 94 { 205, 179, 0 , 0 }, // Medium yellow (?) 95 { 120, 32, 32 , 0 }, // Medium brown (?) 96 { 155, 135, 105 , 0 }, // Medium tan (?) 97 { 186, 52, 0 , 0 }, // Medium rust (?) 98 { 80, 106, 25 , 0 }, // Medium olive (?) 99 { 238, 173, 173 , 0 }, // Light red (?) 100 { 144, 238, 144 , 0 }, // Light green 101 { 173, 216, 230 , 0 }, // Light Blue 102 { 255, 162, 68 , 0 }, // Light Orange (?) 103 { 255, 255, 224 , 0 }, // Light Yellow 104 { 255, 130, 58 , 0 }, // Light Brown (?) 105 { 255, 220, 180 , 0 }, // Light Tan (?) 106 { 255, 137, 0 , 0 }, // Light rust (?) 107 { 157, 200, 54 , 0 }, // Light olive (?) 108 { 89, 89, 89 , 1 }, // Dark gray (?) (L) 109 { 169, 169, 169 , 1 }, // Gray (L) 110 { 211, 211, 211 , 1 } // Light Gray (L) 111 }; 112 113 //=========================================================================== 114 // Alternative palette for transparent colors (?) 115 // (same as in fs5.pal?) 116 117 static const acColor fsAltPalette[113] = { 118 { 0, 0, 0}, 119 { 8, 8, 8}, 120 { 16, 16, 16}, 121 { 24, 24, 24}, 122 { 32, 32, 32}, 123 { 40, 40, 40}, 124 { 48, 48, 48}, 125 { 56, 56, 56}, 126 { 65, 65, 65}, 127 { 73, 73, 73}, 128 { 81, 81, 81}, 129 { 89, 89, 89}, 130 { 97, 97, 97}, 131 { 105, 105, 105}, 132 { 113, 113, 113}, 133 { 121, 121, 121}, 134 { 130, 130, 130}, 135 { 138, 138, 138}, 136 { 146, 146, 146}, 137 { 154, 154, 154}, 138 { 162, 162, 162}, 139 { 170, 170, 170}, 140 { 178, 178, 178}, 141 { 186, 186, 186}, 142 { 195, 195, 195}, 143 { 203, 203, 203}, 144 { 211, 211, 211}, 145 { 219, 219, 219}, 146 { 227, 227, 227}, 147 { 235, 235, 235}, 148 { 247, 247, 247}, 149 { 255, 255, 255}, 150 { 21, 5, 5}, 151 { 42, 10, 10}, 152 { 63, 15, 15}, 153 { 84, 20, 20}, 154 { 105, 25, 25}, 155 { 126, 30, 30}, 156 { 147, 35, 35}, 157 { 168, 40, 40}, 158 { 189, 45, 45}, 159 { 210, 50, 50}, 160 { 231, 55, 55}, 161 { 252, 60, 60}, 162 { 5, 21, 5}, 163 { 10, 42, 10}, 164 { 15, 63, 15}, 165 { 20, 84, 20}, 166 { 25, 105, 25}, 167 { 30, 126, 30}, 168 { 35, 147, 35}, 169 { 40, 168, 40}, 170 { 45, 189, 45}, 171 { 50, 210, 50}, 172 { 55, 231, 55}, 173 { 60, 252, 60}, 174 { 0, 7, 23}, 175 { 0, 15, 40}, 176 { 0, 23, 58}, 177 { 0, 40, 84}, 178 { 0, 64, 104}, 179 { 0, 71, 122}, 180 { 0, 87, 143}, 181 { 0, 99, 156}, 182 { 0, 112, 179}, 183 { 0, 128, 199}, 184 { 0, 143, 215}, 185 { 0, 153, 230}, 186 { 28, 14, 0}, 187 { 56, 28, 0}, 188 { 84, 42, 0}, 189 { 112, 56, 0}, 190 { 140, 70, 0}, 191 { 168, 84, 0}, 192 { 196, 98, 0}, 193 { 224, 112, 0}, 194 { 252, 126, 0}, 195 { 28, 28, 0}, 196 { 56, 56, 0}, 197 { 84, 84, 0}, 198 { 112, 112, 0}, 199 { 140, 140, 0}, 200 { 168, 168, 0}, 201 { 196, 196, 0}, 202 { 224, 224, 0}, 203 { 252, 252, 0}, 204 { 25, 21, 16}, 205 { 50, 42, 32}, 206 { 75, 63, 48}, 207 { 100, 84, 64}, 208 { 125, 105, 80}, 209 { 150, 126, 96}, 210 { 175, 147, 112}, 211 { 200, 168, 128}, 212 { 225, 189, 144}, 213 { 28, 11, 7}, 214 { 56, 22, 14}, 215 { 84, 33, 21}, 216 { 112, 44, 28}, 217 { 140, 55, 35}, 218 { 168, 66, 42}, 219 { 196, 77, 49}, 220 { 224, 88, 56}, 221 { 252, 99, 63}, 222 { 17, 22, 9}, 223 { 34, 44, 18}, 224 { 51, 66, 27}, 225 { 68, 88, 36}, 226 { 85, 110, 45}, 227 { 102, 132, 54}, 228 { 119, 154, 63}, 229 { 136, 176, 72}, 230 { 153, 198, 81} 231 }; 232 233 struct _ssgBGLOpCode { 234 unsigned short opcode; 235 const char *name; 236 int size; /* size includes opcode (2 bytes) 237 -1 indicates that special treatment is needed 238 to find the size */ 239 240 }; 241 242 static const _ssgBGLOpCode opcodes[] = { 243 { 0x00, "BGL_EOF" , 2 }, 244 { 0x01, "OBSOLETE 0x01" , 2 }, 245 { 0x02, "BGL_NOOP" , 2 }, 246 { 0x03, "BGL_CASE" , -1 }, 247 { 0x04, "RESERVED 0x04" , 2 }, 248 { 0x05, "BGL_SURFACE - Area" , 2 }, 249 { 0x06, "BGL_SPNT" , 8 }, 250 { 0x07, "BGL_CPNT" , 8 }, 251 { 0x08, "BLG_CLOSURE" , 2 }, 252 { 0x09, "OBSOLETE 0x09" , 2 }, 253 { 0x0a, "OBSOLETE 0x0a" , 10 }, 254 { 0x0b, "OBSOLETE 0x0b" , 10 }, 255 { 0x0c, "OBSOLETE 0x0c" , 2 }, 256 { 0x0d, "BGL_JUMP" , 4 }, 257 { 0x0e, "BGL_DEFRES" , 8 }, 258 { 0x0f, "BGL_STRRES" , 4 }, 259 { 0x10, "BGL_CNTRES" , 4 }, 260 { 0x11, "OBSOLETE 0x11" , 10 }, 261 { 0x12, "OBSOLETE 0x12" , 4 }, 262 { 0x13, "OBSOLETE 0x13" , 4 }, 263 { 0x14, "BGL_SCOLOR" , 4 }, 264 { 0x15, "BGL_ELEVATION_MAP" , -1 }, 265 { 0x16, "RESERVED 0x16" , -1 }, 266 { 0x17, "BGL_TEXTURE_ENABLE" , 4 }, 267 { 0x18, "BGL_TEXTURE" , 24 }, 268 { 0x19, "BGL_PALETTE" , 16 }, 269 { 0x1a, "BGL_RESLIST" , -1 }, 270 { 0x1b, "BGL_IFIN_BOX_RAW_PLANE" , 22 }, 271 { 0x1c, "BGL_IFIN2" , 16 }, 272 { 0x1d, "BGL_FACE" , -1 }, 273 { 0x1e, "BGL_HAZE" , 4 }, 274 { 0x1f, "RESERVED 0x1f" , 4 }, 275 { 0x20, "BGL_FACET_TMAP" , -1 }, 276 { 0x21, "BGL_IFIN3" , 22 }, 277 { 0x22, "BGL_RETURN - Return" , 2 }, 278 { 0x23, "BGL_CALL" , 4 }, 279 { 0x24, "BGL_IFIN1" , 10 }, 280 { 0x25, "BGL_SEPARATION_PLANE" , 14 }, 281 { 0x26, "BGL_SETWRD" , 6 }, 282 { 0x27, "OBSOLETE 0x27" , -1 }, 283 { 0x28, "OBSOLETE 0x28" , 10 }, 284 { 0x29, "BGL_GRESLIST" , -1 }, 285 { 0x2a, "BGL_GFACET" , -1 }, 286 { 0x2b, "BGL_ADDOBJ32" , 6 }, 287 { 0x2c, "BGL_REJECT" , 12 }, 288 { 0x2d, "BGL_SCOLOR24" , 6 }, 289 { 0x2e, "BGL_LCOLOR24" , 6 }, 290 { 0x2f, "BGL_SCALE" , 32 }, 291 { 0x30, "OBSOLETE 0x30" , 4 }, 292 { 0x31, "BGL_RESROW" , 18 }, 293 { 0x32, "BGL_ADDOBJ - PerspectiveCall" , 4 }, 294 { 0x33, "BGL_INSTANCE - RotatedCall" , 10 }, 295 { 0x34, "BGL_SUPER_SCALE" , 10 }, 296 { 0x35, "BGL_PNTROW" , 16 }, 297 { 0x36, "OBSOLETE 0x36" , -1 }, 298 { 0x37, "BGL_POINT" , 8 }, 299 { 0x38, "BGL_CONCAVE" , 2 }, 300 { 0x39, "BGL_IFMSK" , 8 }, 301 { 0x3a, "BGL_VPOSITION" , 12 }, 302 { 0x3b, "BGL_VINSTANCE" , 6 }, 303 { 0x3c, "BGL_POSITION" , 28 }, 304 { 0x3d, "BGL_SEED" , 24 }, 305 { 0x3e, "BGL_FACET" , -1 }, 306 { 0x3f, "BGL_SHADOW_CALL" , 4 }, 307 { 0x40, "BGL_SHADOW_VPOSITION" , 12 }, 308 { 0x41, "BGL_SHADOW_VICALL" , 6 }, 309 { 0x42, "BGL_POLYGON_RUNWAY" , 40 }, 310 { 0x43, "BGL_TEXTURE2" , -1 }, 311 { 0x44, "BGL_TEXTURE_RUNWAY" , 64 }, // 40 312 { 0x45, "OBSOLETE 0x45" , 16 }, 313 { 0x46, "BGL_POINT_VICALL" , 22 }, 314 { 0x47, "RESERVED" , 4 }, 315 { 0x48, "BGL_VAR_SEG" , 4 }, 316 { 0x49, "BGL_BUILDING" , 18 }, 317 { 0x4a, "OBSOLETE 0x4A" , 22 }, 318 { 0x4b, "OBSOLETE 0x4B" , -1 }, 319 { 0x4c, "BGL_VSCALE" , 16 }, 320 { 0x4d, "BGL_MOVEL2G" , 6 }, 321 { 0x4e, "BGL_MOVEG2L" , 6 }, 322 { 0x4f, "BGL_MOVEWORD" , 6 }, 323 { 0x50, "BGL_GCOLOR" , 4 }, 324 { 0x51, "BGL_NEW_LCOLOR" , 4 }, 325 { 0x52, "BGL_NEW_SCOLOR" , 4 }, 326 { 0x53, "OBSOLETE 0x53" , 4 }, 327 { 0x54, "OBSOLETE 0x54" , 6 }, 328 { 0x55, "BGL_SURFACE_TYPE" , 10 }, 329 { 0x56, "BGL_SET_WEATHER" , 4 }, 330 { 0x57, "BGL_SET_WEATHER" , 10 }, 331 { 0x58, "BLG_TEXTURE_BOUNDS" , 10 }, 332 { 0x59, "OBSOLETE 0x59" , 4 }, 333 { 0x5a, "OBSOLETE 0x5a" , 4 }, 334 { 0x5b, "OBSOLETE 0x5b" , 4 }, 335 { 0x5c, "OBSOLETE 0x5c" , 6 }, 336 { 0x5d, "BGL_TEXTURE_REPEAT" , 8 }, 337 { 0x5e, "OBSOLETE 0x5e" , 4 }, 338 { 0x5f, "BGL_IFSIZEV" , 8 }, 339 { 0x60, "BGL_FACE_TMAP" , -1 }, 340 { 0x61, "RESERVED 0x53" , 6 }, 341 { 0x62, "BGL_IFVIS" , -1 }, 342 { 0x63, "BGL_LIBRARY_CALL" , 20 }, 343 { 0x64, "BGL_LIST" , -1 }, 344 { 0x65, "BGL_VSCOLOR" , 4 }, 345 { 0x66, "BGL_VGCOLOR" , 4 }, 346 { 0x67, "BGL_VLCOLOR" , 4 }, 347 { 0x68, "OBSOLETE" , 8 }, 348 { 0x69, "BGL_ROAD_START" , 10 }, 349 { 0x6a, "BGL_ROAD_CONT" , 8 }, 350 { 0x6b, "BGL_RIVER_START" , 10 }, 351 { 0x6c, "BGL_RIVER_CONT" , 8 }, 352 { 0x6d, "BGL_IFSIZEH" , 8 }, 353 { 0x6e, "BGL_TAXIWAY_START" , 10 }, 354 { 0x6f, "BGL_TAXIWAY_CONT" , 8 }, 355 { 0x70, "BGL_AREA_SENSE" , -1 }, 356 { 0x71, "BGL_ALTITUDE_SET" , 4 }, 357 { 0x72, "OBSOLETE 0x72" , 20 }, 358 { 0x73, "BGL_IFINBOXP" , 16 }, 359 { 0x74, "BGL_ADDCAT" , 6 }, 360 { 0x75, "BGL_ADDMNT" , 4 }, 361 { 0x76, "BGL_BGL - Perspective" , 2 }, 362 { 0x77, "BGL_SCALE_AGL - RefPoint" , 32 }, 363 { 0x78, "BGL_ROAD_CONTW" , 10 }, 364 { 0x79, "BGL_RIVER_CONTW" , 10 }, 365 { 0x7a, "BGL_GFACET_TMAP" , -1 }, 366 { 0x7b, "OBSOLETE 0x7b" , -1 }, 367 { 0x7c, "BGL_SELECT" , 10 }, 368 { 0x7d, "BGL_PERSPECTIVE" , 2 }, 369 { 0x7e, "BGL_SETWRD_GLOBAL" , 6 }, 370 { 0x7f, "OBSOLETE 0x7f" , 2 }, 371 { 0x80, "BGL_RESPNT" , 4 }, 372 { 0x81, "OBSOLETE 0x81" , 4 }, 373 { 0x82, "OBSOLETE 0x82" , 28 }, 374 { 0x83, "BGL_RESCALE" , 32 }, 375 { 0x84, "OBSOLETE 0x84" , 8 }, 376 { 0x85, "OBSOLETE 0x85" , 2 }, 377 { 0x86, "OBSOLETE 0x86" , 3 }, 378 { 0x87, "BGL_FIXED_COLORS" , 4 }, 379 { 0x88, "BGL_JUMP32" , 6 }, 380 { 0x89, "BGL_VAR_BASE32" , 6 }, 381 { 0x8a, "BGL_CALL32" , 6 }, 382 { 0x8b, "BGL_ADDCAT32" , 8 }, 383 { 0x8c, "RESERVED 0x8c" , 6 }, 384 { 0x8d, "RESERVED 0x8d" , 6 }, 385 { 0x8e, "BGL_VFILE_MARKER" , 4 }, 386 { 0x8f, "BGL_ALPHA" , 6 }, 387 { 0x90, "RESERVED 0x90" , -1 }, 388 { 0x91, "BGL_TEXT" , 12 }, 389 { 0x92, "OBSOLETE 0x92" , 4 }, 390 { 0x93, "RESERVED 0x93" , 4 }, 391 { 0x94, "BGL_CRASH" , 12 }, 392 { 0x95, "BGL_CRASH_INDIRECT" , 10 }, 393 { 0x96, "BGL_CRASH_START" , 6 }, 394 { 0x97, "BGL_CRASH_SPHERE" , 6 }, 395 { 0x98, "BGL_CRASH_BOX" , 22 }, 396 { 0x99, "BGL_SET_CRASH" , 4 }, 397 { 0x9a, "OBSOLETE 0x9a" , -1 }, 398 { 0x9b, "RESERVED 0x9b" , 8 }, 399 { 0x9c, "RESERVED 0x9c" , 6 }, 400 { 0x9d, "RESERVED 0x9d" , 14 }, 401 { 0x9e, "BGL_INTERPOLATE" , 20 }, 402 { 0x9f, "BGL_OVERRIDE" , 6 }, 403 { 0xa0, "BGL_OBJECT" , -1 }, 404 { 0xa1, "OBSOLETE 0xA1" , 10 }, 405 { 0xa2, "OBSOLETE 0xA2" , 8 }, 406 { 0xa3, "OBSOLETE 0xA3" , -1 }, 407 { 0xa4, "BGL_VALPHA" , 4 }, 408 { 0xa5, "OBSOLETE 0xA5" , 4 }, 409 { 0xa6, "OBSOLETE 0xA6" , 8 }, 410 { 0xa7, "BGL_SPRITE_VCALL" , 22 }, 411 { 0xa8, "BGL_TEXTURE_ROAD_START" , 12}, 412 { 0xa9, "BGL_IFIN_INSTANCE_BOX_PLANE" , 22}, 413 { 0xaa, "BGL_NEW_RUNWAY" , -1 }, 414 { 0xab, "RESERVED 0xAB" , 38 }, 415 { 0xac, "BGL_ZBIAS" , 4 }, 416 { 0xad, "BGL_ANIMATE" , 30 }, 417 { 0xae, "BGL_TRANSFORM_END" , 2 }, 418 { 0xaf, "BGL_TRANSFORM_MATRIX" , 50 }, 419 { 0xb0, "UNKNOWN 0xB0" , -1 }, 420 { 0xb1, "UNKNOWN 0xB1" , -1 }, 421 { 0xb2, "BGL_LIGHT" , 44 }, 422 { 0xb3, "BGL_IFINF1" , 14 }, 423 { 0xb4, "UNKNOWN 0xB4" , -1 }, 424 { 0xb5, "UNKNOWN 0xB5" , -1 }, 425 { 0xb6, "UNKNOWN 0xB6" , -1 }, 426 { 0xb7, "UNKNOWN 0xB7" , -1 }, 427 { 0xb8, "UNKNOWN 0xB8" , -1 }, 428 { 0xb9, "UNKNOWN 0xB9" , -1 }, 429 { 0xba, "UNKNOWN 0xBA" , -1 }, 430 { 0xbb, "UNKNOWN 0xBB" , -1 }, 431 { 0xbc, "UNKNOWN 0xBC" , -1 }, 432 { 0xbd, "UNKNOWN 0xBD" , -1 }, 433 { 0xbe, "UNKNOWN 0xBE" , -1 }, 434 { 0xbf, "UNKNOWN 0xBF" , -1 }, 435 { 0xc0, "UNKNOWN 0xC0" , -1 }, 436 { 0xc1, "UNKNOWN 0xC1" , -1 }, 437 { 0xc2, "UNKNOWN 0xC2" , -1 }, 438 { 0xc3, "UNKNOWN 0xC3" , -1 }, 439 { 0xc4, "UNKNOWN 0xC4" , -1 }, 440 { 0xc5, "UNKNOWN 0xC5" , -1 }, 441 { 0xc6, "UNKNOWN 0xC6" , -1 }, 442 { 0xc7, "UNKNOWN 0xC7" , -1 }, 443 { 0xc8, "UNKNOWN 0xC8" , -1 }, 444 { 0xc9, "UNKNOWN 0xC9" , -1 }, 445 { 0xca, "UNKNOWN 0xCA" , -1 }, 446 { 0xcb, "UNKNOWN 0xCB" , -1 }, 447 { 0xcc, "UNKNOWN 0xCC" , -1 }, 448 { 0xcd, "UNKNOWN 0xCD" , -1 }, 449 { 0xce, "UNKNOWN 0xCE" , -1 }, 450 { 0xcf, "UNKNOWN 0xCF" , -1 }, 451 { 0xd0, "UNKNOWN 0xD0" , -1 }, 452 { 0xd1, "UNKNOWN 0xD1" , -1 }, 453 { 0xd2, "UNKNOWN 0xD2" , -1 }, 454 { 0xd3, "UNKNOWN 0xD3" , -1 }, 455 { 0xd4, "UNKNOWN 0xD4" , -1 }, 456 { 0xd5, "UNKNOWN 0xD5" , -1 }, 457 { 0xd6, "UNKNOWN 0xD6" , -1 }, 458 { 0xd7, "UNKNOWN 0xD7" , -1 }, 459 { 0xd8, "UNKNOWN 0xD8" , -1 }, 460 { 0xd9, "UNKNOWN 0xD9" , -1 }, 461 { 0xda, "UNKNOWN 0xDA" , -1 }, 462 { 0xdb, "UNKNOWN 0xDB" , -1 }, 463 { 0xdc, "UNKNOWN 0xDC" , -1 }, 464 { 0xdd, "UNKNOWN 0xDD" , -1 }, 465 { 0xde, "UNKNOWN 0xDE" , -1 }, 466 { 0xdf, "UNKNOWN 0xDF" , -1 }, 467 { 0xe0, "UNKNOWN 0xE0" , -1 }, 468 { 0xe1, "UNKNOWN 0xE1" , -1 }, 469 { 0xe2, "UNKNOWN 0xE2" , -1 }, 470 { 0xe3, "UNKNOWN 0xE3" , -1 }, 471 { 0xe4, "UNKNOWN 0xE4" , -1 }, 472 { 0xe5, "UNKNOWN 0xE5" , -1 }, 473 { 0xe6, "UNKNOWN 0xE6" , -1 }, 474 { 0xe7, "UNKNOWN 0xE7" , -1 }, 475 { 0xe8, "UNKNOWN 0xE8" , -1 }, 476 { 0xe9, "UNKNOWN 0xE9" , -1 }, 477 { 0xea, "UNKNOWN 0xEA" , -1 }, 478 { 0xeb, "UNKNOWN 0xEB" , -1 }, 479 { 0xec, "UNKNOWN 0xEC" , -1 }, 480 { 0xed, "UNKNOWN 0xED" , -1 }, 481 { 0xee, "UNKNOWN 0xEE" , -1 }, 482 { 0xef, "UNKNOWN 0xEF" , -1 }, 483 { 0xf0, "UNKNOWN 0xF0" , -1 }, 484 { 0xf1, "UNKNOWN 0xF1" , -1 }, 485 { 0xf2, "UNKNOWN 0xF2" , -1 }, 486 { 0xf3, "UNKNOWN 0xF3" , -1 }, 487 { 0xf4, "UNKNOWN 0xF4" , -1 }, 488 { 0xf5, "UNKNOWN 0xF5" , -1 }, 489 { 0xf6, "UNKNOWN 0xF6" , -1 }, 490 { 0xf7, "UNKNOWN 0xF7" , -1 }, 491 { 0xf8, "UNKNOWN 0xF8" , -1 }, 492 { 0xf9, "UNKNOWN 0xF9" , -1 }, 493 { 0xfa, "UNKNOWN 0xFA" , -1 }, 494 { 0xfb, "UNKNOWN 0xFB" , -1 }, 495 { 0xfc, "UNKNOWN 0xFC" , -1 }, 496 { 0xfd, "UNKNOWN 0xFD" , -1 }, 497 { 0xfe, "UNKNOWN 0xFE" , -1 }, 498 { 0xff, "UNKNOWN 0xFF" , -1 } 499 }; 500 501 //=========================================================================== 502 503 #endif // _SSGLOADMDL_H 504 505