Advertisement
Kabuto_Kun

BL Demo enviro.dat info

Sep 25th, 2020
1,150
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 5.36 KB | None | 0 0
  1.  
  2. Burnout Legends Demo: "enviro.dat" Garage
  3. Initial reads and most operations occur on function i0x089FECF8
  4. File header size = 0x01D0
  5.  
  6. Notes:
  7. - Only values with prefixed types are confirmed, other are placeholders.
  8. - 4-byte values are assumed to be u32/uint, but may be s32/int instead
  9. - Values with no decriptions mean that the value is re-stored as-is somewhere in RAM.
  10.  
  11.  
  12. //enum  enviroDatHeaderData
  13. {
  14. // VarType      Offset      Operation descriptions from game code
  15.  
  16. // > Copied to 0x08DCEF50
  17. unk00       0x00,
  18. unk04       0x04,
  19. unk08       0x08,
  20. unk0C       0x0C,
  21. unk10       0x10,
  22. unk14       0x14,
  23. unk18       0x18,
  24. unk1C       0x1C,
  25. unk20       0x20,
  26. unk24       0x24,
  27. unk28       0x28,
  28. unk2C       0x2C,
  29. // <
  30.  
  31. unk30       0x30,
  32. unk34       0x34,
  33. unk38       0x38,
  34. unk3C       0x3C,
  35.  
  36. unk40       0x40,
  37. unk44       0x44,
  38. unk48       0x48,
  39. unk4C       0x4C,
  40.  
  41. unk50       0x50,
  42. unk54       0x54,
  43. unk58       0x58,
  44. unk5C       0x5C,
  45.  
  46. unk60       0x60,
  47. unk64       0x64,
  48. unk68       0x68,
  49. unk6C       0x6C,
  50.  
  51. unk70       0x70,
  52. unk74       0x74,
  53. unk75       0x78,
  54. unk7C       0x7C,
  55.  
  56. // > Values are negated (sign change) and results are re-stored as floats at same address
  57. float unk80     0x80,
  58. float unk84     0x84,
  59. float unk88     0x88,
  60. float unk8C     0x8C,
  61. // < Values are negated (sign change) and results are re-stored as floats at same address
  62.  
  63. float unk90 0x90, // Multiplies PSP X resolution (480) and result is re-stored as float at same address
  64. unk94   0x94,
  65.  
  66. u32* skTex1_Ptr     0x98,
  67. u32* skTex2_Ptr     0x9C,
  68. u32* skTex3_Ptr     0xA0,
  69. u32* skTex4_Ptr     0xA4,
  70. u32* skTex5_Ptr     0xA8,
  71. u32* skTex6_OptnPtr 0xAC,
  72.  
  73. u8 unkB0            0xB0,
  74. float unkB4         0xB4,
  75. float unkB8         0xB8,
  76. unkBC   0xBC,
  77.  
  78. float unkC0     0xC0, // Conditional check: If lower than constant 2147483648.0f (INT_MAX), store somewhere as INT
  79. float unkC4     0xC4, // Conditional check: If lower than constant 2147483648.0f (INT_MAX), store somewhere as INT
  80. float unkC8     0xC8, // Conditional check: If lower than constant 2147483648.0f (INT_MAX), store somewhere as INT
  81.  
  82. float unkD0     0xD0,
  83. float unkD4     0xD4,
  84. float unkD8     0xD8,
  85.  
  86. float unkE0     0xE0, // Conditional check: If lower than constant 2147483648.0f (INT_MAX), store somewhere as INT
  87. float unkE4     0xE4, // Conditional check: If lower than constant 2147483648.0f (INT_MAX), store somewhere as INT
  88. float unkE8     0xE8, // Conditional check: If lower than constant 2147483648.0f (INT_MAX), store somewhere as INT
  89.  
  90. float unkF0     0xF0, // Conditional check: If lower than constant 2147483648.0f (INT_MAX), store somewhere as INT
  91. float unkF4     0xF4, // Conditional check: If lower than constant 2147483648.0f (INT_MAX), store somewhere as INT
  92. float unkF8     0xF8, // Conditional check: If lower than constant 2147483648.0f (INT_MAX), store somewhere as INT
  93.  
  94. float unk100    0x100, // Conditional check: If lower than constant 2147483648.0f (INT_MAX), store somewhere as INT
  95. float unk104    0x104, // Conditional check: If lower than constant 2147483648.0f (INT_MAX), store somewhere as INT
  96. float unk108    0x108, // Conditional check: If lower than constant 2147483648.0f (INT_MAX), store somewhere as INT
  97.  
  98. float unk110    0x110, // Conditional check: If lower than constant 2147483648.0f (INT_MAX), store somewhere as INT
  99. float unk114    0x114, // Conditional check: If lower than constant 2147483648.0f (INT_MAX), store somewhere as INT
  100. float unk118    0x118, // Conditional check: If lower than constant 2147483648.0f (INT_MAX), store somewhere as INT
  101.  
  102. float unk120    0x120, // Conditional check: If lower than constant 2147483648.0f (INT_MAX), store somewhere as INT
  103. float unk124    0x124, // Conditional check: If lower than constant 2147483648.0f (INT_MAX), store somewhere as INT
  104. float unk128    0x128, // Conditional check: If lower than constant 2147483648.0f (INT_MAX), store somewhere as INT
  105.  
  106. float unk130    0x130, // Conditional check: If lower than constant 2147483648.0f (INT_MAX), store somewhere as INT
  107. float unk134    0x134, // Conditional check: If lower than constant 2147483648.0f (INT_MAX), store somewhere as INT
  108. float unk138    0x138, // Conditional check: If lower than constant 2147483648.0f (INT_MAX), store somewhere as INT
  109.  
  110. float unk140    0x140,
  111. float specularCoeff1    0x144,
  112. u8 specularCoeff2       0x148,
  113. u32 unk14C      0x14C,
  114. u32 unk150      0x150,
  115. float unk154    0x154,
  116. u8 unk158       0x158,
  117. u32 unk15C      0x15C,
  118. float unk160    0x160,
  119. float unk164    0x164,
  120. u32 unk168      0x168,
  121.  
  122. float unk170    0x170, // Conditional check: If lower than constant 2147483648.0f (INT_MAX), store somewhere as INT
  123. float unk174    0x174, // Conditional check: If lower than constant 2147483648.0f (INT_MAX), store somewhere as INT
  124. float unk178    0x178, // Conditional check: If lower than constant 2147483648.0f (INT_MAX), store somewhere as INT
  125.  
  126. float unk180    0x180, // Conditional check: If lower than constant 2147483648.0f (INT_MAX), store somewhere as INT
  127. float unk184    0x184, // Conditional check: If lower than constant 2147483648.0f (INT_MAX), store somewhere as INT
  128. float unk188    0x188, // Conditional check: If lower than constant 2147483648.0f (INT_MAX), store somewhere as INT
  129.  
  130. float unk190    0x190,
  131. float unk194    0x194,
  132. float unk198    0x198,
  133.  
  134. u8 unk1A0       0x1A0,
  135. float unk1A4    0x1A4,
  136. float unk1A8    0x1A8,
  137.  
  138. float unk1B0    0x1B0, // Conditional check: If lower than constant 2147483648.0f (INT_MAX), store somewhere as INT
  139. float unk1B4    0x1B4, // Conditional check: If lower than constant 2147483648.0f (INT_MAX), store somewhere as INT
  140. float unk1B8    0x1B8, // Conditional check: If lower than constant 2147483648.0f (INT_MAX), store somewhere as INT
  141.  
  142. u8 unk1C0       0x1C0,
  143. float unk1C4    0x1C4,
  144.  
  145. };
  146.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement