Skip to content

Latest commit

 

History

History
3266 lines (3151 loc) · 50.1 KB

DAT_annoted.md

File metadata and controls

3266 lines (3151 loc) · 50.1 KB
DAT_00000004 // RO (float *)
DAT_00000007 // RO (short *)
DAT_00401340
DAT_00423330 // LPTHREAD_START_ROUTINE
DAT_00427350
DAT_0049e720
DAT_004ae0e8 // IID
DAT_004ae128 // IID
DAT_004ae158 // param for IA3dX QueryInterface
DAT_004ae850 // int[4] ?
DAT_004ae888 // int[4] ?
DAT_004ae8c0 // int[4] ?
DAT_004aeeb0
DAT_004aefb8 // param for class unaff_ESI() + 0
DAT_004af1c8
DAT_004af208
DAT_004af278
DAT_004af328
DAT_004af4a8 // IID
DAT_004af4c8 // IID
DAT_004af880
DAT_004af9b0 // undefined_32[4]. Unicode array ?
DAT_004af9b8 // RO __output & __woutput
DAT_004af9c8 // entry
DAT_004af9d8 // RO __output & __woutput
DAT_004b04c0 // ___tzset_lk some cstring used by __getenv_lk (strlen)

// These eight are **code
DAT_004b2000 // __cinit -> __initterm(., .+2)
DAT_004b2004
DAT_004b2008 // __cinit -> __initterm(., .+2)
DAT_004b2010
DAT_004b2014 // __doexit -> __initterm(., .+2)
DAT_004b201c
DAT_004b2020 // __doexit -> __initterm(., .+2)
DAT_004b2024

DAT_004b2304
PTR_DAT_004b2408 // cstring
DAT_004b2524
DAT_004b2638 // cstring
DAT_004b2910 // checked a lot. set to 1 when ENABLED flag from command line and other
DAT_004b2914
DAT_004b2940 // bool control flag
DAT_004b2944 // control flag
DAT_004b2948 // control flag
DAT_004b294c // RO control flag
DAT_004b2950
DAT_004b2958 // undefined_16[6]

DAT_004b2970 // inlined undefined_32[3]
DAT_004b2974
DAT_004b2978

DAT_004b297c

DAT_004b2980 // float ([] ?) inlined with the following in an unrolled loop
_DAT_004b2984
_DAT_004b2988
_DAT_004b298c
_DAT_004b2990
_DAT_004b2994

DAT_004b2998 // []
DAT_004b29d8 // cstring
DAT_004b29e8
DAT_004b29f0
DAT_004b2af0
DAT_004b2b28 // uint[]
DAT_004b2bd0
DAT_004b2f80 // byte*
DAT_004b3290
DAT_004b35a0
DAT_004b38ac // cstring strcat with \/
DAT_004b38b0 // cstring
DAT_004b38b8
DAT_004b38f8
DAT_004b3b28 // offset in cstring
DAT_004b3b2c
DAT_004b3b48
DAT_004b3b5c
DAT_004b3bd4
DAT_004b3bd8
DAT_004b3df8
DAT_004b3dfc
PTR_DAT_004b3e00
DAT_004b3e04
PTR_DAT_004b3e68 // cstring
DAT_004b3e74 // cstring
DAT_004b3e7c
DAT_004b3ecc
DAT_004b3eec
DAT_004b4270
DAT_004b4314 // counter for sprite display
DAT_004b4318
DAT_004b431c
DAT_004b4320
DAT_004b4330

DAT_004b4348 // inline [] ?
DAT_004b434c
DAT_004b4350
DAT_004b4418
DAT_004b441c
DAT_004b4420
DAT_004b4424
DAT_004b44e8
DAT_004b45b8
DAT_004b4688
DAT_004b468c
DAT_004b4690
DAT_004b4694

DAT_004b4758 // control flag
DAT_004b4760
_DAT_004b4774
DAT_004b4808
DAT_004b480c // cstring
DAT_004b4938 // command-line flag
DAT_004b493c // Force-Feedback StrengthFactor
DAT_004b49b0 // _IFLoadProjectFile_8 first param
DAT_004b4ae8 // cstring
DAT_004b4b08
DAT_004b4dcc
_DAT_004b4dd0 // control flag bool
DAT_004b4f44
PTR_DAT_004b4f7c // cstring
DAT_004b51b8 // int cstring offset
DAT_004b5c40
DAT_004b5c4c // _fopen mode

PTR_DAT_004b5d74 // some class ?
DAT_004b5d7c
DAT_004b5d84 // +0x10 time saved then compared
_DAT_004b5d88
_DAT_004b5d8c
DAT_004b6668
DAT_004b666c
DAT_004b6670
DAT_004b6710
DAT_004b6714
DAT_004b6718 // atoi cstring offset NUTDelay, from command line
_DAT_004b671c
_DAT_004b6720
DAT_004b6748 // RO
DAT_004b6c00 // RO cstring
DAT_004b6c90 // control flag
DAT_004b6cfc // _fopen mode
DAT_004b6d14 // audio quality config
DAT_004b6d18 // audio config
DAT_004b6d1c
DAT_004b6d20
DAT_004b6d24
DAT_004b6d28
DAT_004b6d2c
DAT_004b6d30 // RO

PTR_DAT_004b6d34 // *(int *) | undefined_32 *. Looks like a static struct
// + 0x20
// + 0x24
// + 0x28

DAT_004b74cc // RO cstring
PTR_DAT_004b74d0 // RO cstring
DAT_004b7580
PTR_DAT_004b7588
DAT_004b79f8
DAT_004b79fc // RO control flag
DAT_004b7a00 // Skip intro scene and text crawl.
DAT_004b7a34
DAT_004b7a3c // WO ?
DAT_004b7c30 // RO cstring
DAT_004b7c34 // RO cstring
DAT_004b7c38 // RO cstring
DAT_004b7c50 // RO cstring
DAT_004b7c58
DAT_004b7c5c
DAT_004b7c60
DAT_004b7c64
DAT_004b7c68 // strtok delimiter
PTR_DAT_004b7d5c // LPARAM
DAT_004b7d60
DAT_004b7d90
DAT_004b7db4
DAT_004b7e7e
DAT_004b7ebc // _fopen mode
_DAT_004b7fa8

// part of same switch case
DAT_004b7fb0
DAT_004b8018
DAT_004b8068
DAT_004b80e0
DAT_004b80f0
DAT_004b81c0
DAT_004b8318
DAT_004b83f0

DAT_004b8544 // RO
DAT_004b8548
DAT_004b8550
DAT_004b8554
DAT_004b85d4

DAT_004b85d8 // int
DAT_004b85dc // int

DAT_004b85e0
DAT_004b85e4
DAT_004b8744
DAT_004b8748
PTR_DAT_004b8750 // RO int[]
DAT_004b8780
_DAT_004b8798
_DAT_004b879c

DAT_004b8928 // float*
DAT_004b8cc8 // float*
PTR_DAT_004b8fa8 // float*

DAT_004b9008
DAT_004b9090
DAT_004b9098 // undefined_32[]
DAT_004b90c8 // undefined_32[]
DAT_004b90f0 // undefined_32 ([] ?)
DAT_004b91b8 // count of something
_DAT_004b91bc // sprite x
_DAT_004b91c0 // sprite y

// Is that the podracer array ?
// Looks like this as a struct:
struct unknown {
    undefined_16 a;
    undefined_16 b;
    undefined_32 c;
    undefined_16 d;
    undefined_32 e;
    float[15] mat;
    undefined_32[6] f;
    undefined_32[3] g;
};

PTR_DAT_004b91c4 // struct[32] with substruct[]

// see FUN_00428a60
_DAT_004b91c8 // + 4 // undefined_16 index [1, 9]
// + 6 // undefined_16 unknown
// + 8 // undefined_32 // pointer to some 0x40 bytes size data

// +0xc // undefined_16
// +0x10 // undefined_32

// 0x14 // beginning of a 4x4 matrix
// 0x18
// 0x1c
// 0x20
// 0x24
// 0x28
// 0x2c
// 0x30
// 0x34
// 0x38
// 0x3c
// 0x40
// 0x44 // T_x
// 0x48 // T_y
// 0x4c // T_z
// 0x50 // 1.0f

// something else
// 0x54
// 0x58
// 0x60
// 0x64
// 0x68

// 0x6c
// 0x70
// 0x74 = 0x004b9238 // undefined_32. This would overflow to the next struct, but it look like the struct doesn't start at 0

// 0x004b9240
// times 32 (0x20) (+ 0x7c each increment)
// end at 0x004b91c4 + 0x20 * 0x7c = 004ba144. There is probably padding

DAT_004b9440 // RO string

// Switch case over these 4
DAT_004b94b0
DAT_004b94b4
DAT_004b94b8
DAT_004b94bc

DAT_004b94c0 // __setargv 1|0
DAT_004b94c8
DAT_004b94cc // WO

// These are similar but slight differences
DAT_004b94d0 // float* | undefined_32*
DAT_004b94d8
DAT_004b94d9
DAT_004b94da
DAT_004b94db

DAT_004b94e0
DAT_004b9520 // bool

DAT_004b9524 // Color ?
_DAT_004b9524 // r g b a in which order ?
DAT_004b9525
DAT_004b9526
DAT_004b9527

_DAT_004b9528
_DAT_004b952c
_DAT_004b9530 // WO
DAT_004b9534 // count of something related to sprite
_DAT_004b9578
DAT_004b9584 // RO cstring translation
DAT_004b98e8 // float[]
DAT_004bd8e8 // float[]

// Initialize another global struct with RO data
DAT_004bf7e0 // RO
DAT_004bf7e4 // RO
PTR_DAT_004bf7e8 // RO
DAT_004bf848 // RO
DAT_004bf84c // RO
PTR_DAT_004bf850 // RO
DAT_004bf8b0 // RO
DAT_004bf8b4 // RO
PTR_DAT_004bf8b8 // RO
DAT_004bf918 // RO
DAT_004bf91c // RO
PTR_DAT_004bf920 // RO
DAT_004bf980 // RO
DAT_004bf984 // RO
PTR_DAT_004bf988 // RO

DAT_004bf9c2

DAT_004bfa0c // Some color ?
_DAT_004bfa0c

DAT_004bfa0d // WO
DAT_004bfa0e // WO
DAT_004bfa0f // uint
DAT_004bfa10 // byte[]
DAT_004bfa11 // byte[]
PTR_PTR_DAT_004bfec0 // int** | int*
_DAT_004bfec8 // WO
DAT_004bfecc
DAT_004bfed0

DAT_004bfed4 // similar with below
DAT_004bfed8

DAT_004bfedc
DAT_004bfee0
DAT_004bfee8
DAT_004bfeec
DAT_004bfef0
DAT_004bfef1
DAT_004bfef2

// RO block for variables
DAT_004bffa8 // RO
DAT_004bffac // RO
DAT_004bffb0 // RO
DAT_004bffb1 // RO

_DAT_004c0014 // float
DAT_004c0018
DAT_004c001c
DAT_004c006c

DAT_004c0078 // RO

// Arguments for same function
DAT_004c0088 // RO
DAT_004c0098 // RO

DAT_004c00a4
_DAT_004c00a8
_DAT_004c00ac
DAT_004c00b0
DAT_004c00b4
DAT_004c00b8
DAT_004c00c0
_DAT_004c0204 // WO
DAT_004c0208 // RO
DAT_004c020c // RO
DAT_004c0210
DAT_004c0214
DAT_004c0218
DAT_004c021c // bool
DAT_004c0220 // bool
_DAT_004c0224 // WO
DAT_004c0228 // WO
DAT_004c022c
DAT_004c0230
DAT_004c0298 // WO
DAT_004c02a8
_DAT_004c02ac
DAT_004c02b0
DAT_004c02b4
DAT_004c0948
DAT_004c11f4 // RO
DAT_004c1770
DAT_004c1774a // bool
DAT_004c1778 // RO
DAT_004c177c
DAT_004c17e0 // A model ?
DAT_004c17e4 // a model
DAT_004c17e8 // a model
DAT_004c17fc // RO
DAT_004c18e8 // float[]

PTR_DAT_004c1cb4 // static struct
// + 4
DAT_004c1cb9
DAT_004c1cba
DAT_004c1cbb
// + 8
DAT_004c1cc0
// + 0xc
// + 0x10
// + 0x14
// + 0x18
// + 0x1c
// + 0x20

DAT_004c2584 // RO
_DAT_004c2588 // WO

// init some struct with static data
_DAT_004c2590 // float RO
DAT_004c2598 // RO
DAT_004c259c // RO
DAT_004c25a0 // RO

DAT_004c25a8 // RO     -\ Same function
PTR_DAT_004c25aa // RO -|
//                      |
DAT_004c25f8 // RO <<   |
DAT_004c25fa // RO <<   |
//                      |
DAT_004c2620 // RO     -|
DAT_004c2622 // RO     -|
DAT_004c2658 // RO     -|
DAT_004c265a // RO     -|
DAT_004c2698 // RO     -|
DAT_004c269a // RO     -|
DAT_004c26a8 // RO     -|
DAT_004c26aa // RO     -|
DAT_004c26b8 // RO     -|
DAT_004c26ba // RO     -|
DAT_004c26d0 // RO     -|
DAT_004c26d2 // RO     -|
DAT_004c26e8 // RO     -|
DAT_004c26ea // RO     -/

DAT_004c2700
DAT_004c2704
DAT_004c2708
DAT_004c271c
DAT_004c2720
DAT_004c2724
DAT_004c2728 // RO
DAT_004c2730
_DAT_004c2788 // RO float

// __cfgcvt_init_5
_DAT_004c28a4 // WO
_DAT_004c28a8 // WO
_DAT_004c28ac // WO
_DAT_004c28d0 // WO
// __cfgcvt_init_6
_DAT_004c2b7c // WO
_DAT_004c2b80 // WO
_DAT_004c2b84 // WO
_DAT_004c2ba8 // WO

DAT_004c2bb0
DAT_004c2bd8 // RO
DAT_004c2be0
DAT_004c2be8
DAT_004c3114
DAT_004c3b14
DAT_004c3b24
DAT_004c3b88
DAT_004c3b8a
DAT_004c3b8c
DAT_004c3b8e
DAT_004c3b90
DAT_004c3b94
DAT_004c3b98
DAT_004c3ba0
DAT_004c3bd0
DAT_004c3c04
DAT_004c3c08
DAT_004c3c0c
DAT_004c3c10
PTR_DAT_004c3c14
DAT_004c3c18
PTR_DAT_004c3c1c
DAT_004c3c20
DAT_004c3c24
DAT_004c3c38 // matrix[20]
DAT_004c3c78
DAT_004c3cb8
DAT_004c3cf8 // matrix[20]
DAT_004c3d38
DAT_004c3d78
_DAT_004c3db8
_DAT_004c3e40
_DAT_004c3e44
DAT_004c3e50
DAT_004c3e54
DAT_004c3ed8
DAT_004c3edc
DAT_004c3ee0
DAT_004c3ee4
DAT_004c3fb0
DAT_004c3fb4
DAT_004c3fb8
_DAT_004c3fd8
_DAT_004c3fdc
_DAT_004c3fe0
_DAT_004c3fe4
DAT_004c3fe8
DAT_004c3fec
_DAT_004c3ff0
_DAT_004c3ff4
DAT_004c4000
DAT_004c4004
DAT_004c4008
DAT_004c400c
DAT_004c4010
DAT_004c4014
DAT_004c4018
DAT_004c401c
DAT_004c4020
DAT_004c4028
_DAT_004c403c
_DAT_004c4040
DAT_004c407c
DAT_004c40a0
DAT_004c40a8
DAT_004c43d0
DAT_004c43dc
_DAT_004c43dc
_DAT_004c43e0
DAT_004c43f0
_DAT_004c43f0
_DAT_004c43f4
_DAT_004c43f8
DAT_004c43fc
_DAT_004c43fc
DAT_004c4410
_DAT_004c4410
_DAT_004c4414
_DAT_004c4418
DAT_004c441c
DAT_004c4430
_DAT_004c4430
_DAT_004c4434
_DAT_004c4438
DAT_004c443c
DAT_004c4450
_DAT_004c4450
_DAT_004c4454
_DAT_004c4458
DAT_004c445c
DAT_004c4490
DAT_004c449c
DAT_004c44dc
DAT_004c44fc
DAT_004c4510
DAT_004c4514
DAT_004c451c
_DAT_004c4534
DAT_004c4540
DAT_004c454c
DAT_004c4558
_DAT_004c4558
_DAT_004c455c
DAT_004c4564
DAT_004c4568
DAT_004c456c
DAT_004c4570
DAT_004c457c
DAT_004c45ac
DAT_004c45b8
DAT_004c45c4
_DAT_004c45d0
DAT_004c45d4
DAT_004c4848
DAT_004c484c
_DAT_004c4a58
DAT_004c4a5c
DAT_004c4a60
DAT_004c4a68
PTR_DAT_004c4ac8
PTR_DAT_004c4bf0
PTR_DAT_004c4ea0
PTR_DAT_004c5168
DAT_004c5298
DAT_004c52a0
DAT_004c52a8
DAT_004c7074
DAT_004c7078
DAT_004c707c // AI level x10
DAT_004c7080
DAT_004c7084
DAT_004c7088
DAT_004c708c
DAT_004c7094
DAT_004c70a0
DAT_004c70ac
DAT_004c70b0
DAT_004c70b4
DAT_004c70b8
DAT_004c70bc
DAT_004c70c0
DAT_004c70c4
DAT_004c70d0
DAT_004c70d4
DAT_004c70d8
DAT_004c70dc
DAT_004c70e8
_DAT_004c73f4
_DAT_004c740c
_DAT_004c7410
_DAT_004c7414
_DAT_004c7418
_DAT_004c741c
_DAT_004c7420
_DAT_004c7424
_DAT_004c7428
_DAT_004c742c
_DAT_004c7a00
_DAT_004c7a04
_DAT_004c7a08
_DAT_004c7a0c
_DAT_004c7a10
_DAT_004c7a14
DAT_004c7a40
DAT_004c7a44
DAT_004c7a48
_DAT_004c7a50
DAT_004c7a58
DAT_004c7a70
DAT_004c7a74
DAT_004c7a88
DAT_004c7a8c
DAT_004c7aa8
DAT_004c7ab0
DAT_004c7ab8
DAT_004c7abc
DAT_004c7b38
DAT_004c7b3c
DAT_004c7bb8
DAT_004c7bbc
DAT_004c7bc0
_DAT_004c7be0
DAT_004c7be4
DAT_004c7c30
DAT_004c7c34
DAT_004c7c54
DAT_004c7c78
DAT_004c7ca8
PTR_DAT_004c7cdc
DAT_004c7ce0
DAT_004c7ce4
DAT_004c7ce8
DAT_004c7cec
DAT_004c7d54
DAT_004c7d58
DAT_004c7d60
DAT_004c7d70
DAT_004c7d74
DAT_004c7d78
DAT_004c7d80
DAT_004c7ea8
DAT_004c7eb0
DAT_004c7eb8
DAT_004c8170
_DAT_004c8174
_DAT_004c8178
_DAT_004c817c
_DAT_004c8180
PTR_DAT_004c868c
DAT_004c8694
DAT_004c8698
DAT_004c86a0
DAT_004c86bc
DAT_004c86c0
DAT_004c98b0
DAT_004c98b4
DAT_004c98e8 // aSinTable stdMath.c
DAT_004cd8e8 // a?Table stMath.c
DAT_004d1a78
DAT_004d1aa0
PTR_DAT_004d1d5c
PTR_DAT_004d1d90
DAT_004d1d9a
DAT_004d1f9c
DAT_004d1fa0
DAT_004d1fb4
DAT_004d1fc0
PTR_DAT_004d1fc4
PTR_DAT_004d1fe4
PTR_DAT_004d1ff4
PTR_DAT_004d2004
PTR_DAT_004d2080
PTR_DAT_004d2084
DAT_004d2218
DAT_004d422c
DAT_004d4230
DAT_004d4238
DAT_004d423c
DAT_004d43a0
DAT_004d43c8
DAT_004d4450
DAT_004d4458
DAT_004d445c
DAT_004d4460
DAT_004d4464
DAT_004d4468
DAT_004d4548
DAT_004d454c
DAT_004d4550
DAT_004d4554
DAT_004d4558
DAT_004d4618
DAT_004d4638
DAT_004d4880
DAT_004d4898
DAT_004d5030
DAT_004d5034
DAT_004d5038
PTR_DAT_004d50c0
PTR_DAT_004d50c4
DAT_004d50c8
DAT_004d50cc
DAT_004d50d0
_DAT_004d50d8
DAT_004d50dc
DAT_004d50e0
DAT_004d50e4
DAT_004d50e8
DAT_004d511c
DAT_004d5120
_DAT_004d5564
DAT_004d55cc
DAT_004d55d0
DAT_004d55d4
DAT_004d5e00
DAT_004d5e04
DAT_004d5e08
DAT_004d5e0c
DAT_004d5e10
DAT_004d5e14
DAT_004d5e18
DAT_004d5e20
DAT_004d5e24
DAT_004d5e28
DAT_004d5e30
DAT_004d5e40
DAT_004d5e50
DAT_004d5e60
_DAT_004d5e60
DAT_004d5e68
DAT_004d5e80
DAT_004d5ebc
DAT_004d5ef8
DAT_004d5f38
_DAT_004d5fb8
DAT_004d5fc0
DAT_004d62d0
_DAT_004d62d0
_DAT_004d62d4
_DAT_004d62d8
_DAT_004d62dc
_DAT_004d62e0
_DAT_004d62e4
_DAT_004d62e8
_DAT_004d62ec
_DAT_004d62f0
_DAT_004d6300
_DAT_004d6304
DAT_004d6308
DAT_004d6310
DAT_004d6314
DAT_004d6316
DAT_004d6510
DAT_004d6518
_DAT_004d6824
DAT_004d6828
DAT_004d682c
DAT_004d6830
DAT_004d6b34
DAT_004d6b38
DAT_004d6b3c
DAT_004d6b40
DAT_004d6b44
DAT_004d6b48
DAT_004d6b4c
_DAT_004d6b50
DAT_004d6b54
DAT_004d6b58

DAT_004d6b60 // some inlined float[3]
DAT_004d6b64 // float
DAT_004d6b68 // float

DAT_004d6b6c
DAT_004d6b70
DAT_004d6b74
DAT_004d6b78
_DAT_004d6b7c
_DAT_004d6b90
_DAT_004d6b94
_DAT_004d6b98
DAT_004d6ba8
_DAT_004d6bac
_DAT_004d6bc0
_DAT_004d6bc4
_DAT_004d6bc8
DAT_004d6bd8
DAT_004d6bdc

DAT_004d6be0 // some class
DAT_004d6be4
_DAT_004d6be8 // **code
_DAT_004d6bec
_DAT_004d6bf0
// + 0x14 **code
_DAT_004d6c4c

// see FUN_00409040
DAT_004d6c60 // looks like a subclass from here.
_DAT_004d6c64
DAT_004d6c68
DAT_004d6c6c
// 004d6c60 + 0xe // float
DAT_004d6c70 // float
DAT_004d6c78
DAT_004d6ce8
// 004d6c60 + 0x44 = 0x004d6ca4 // int
// 004d6c60 + 0x48 = 0x004d6ca8 // int
// 004d6c60 + 0x4c = 0x004d6cac // int
// 004d6c60 + 0x50 = 0x004d6cb0 // int
// 004d6c60 + 0x54 = 0x004d6cb4 // int
// 004d6c60 + 0x58 = 0x004d6cb8 // int
// 004d6c60 + 0x5c = 0x004d6cbc // int
// 004d6c60 + 0x60 = 0x004d6cc0 // int
// 004d6c60 + 0x64 = 0x004d6cc4 // int
// 004d6c60 + 0x68 = 0x004d6cc8 // int
// 004d6c60 + 0x6c = 0x004d6ccc // int
// 004d6c60 + 0x70 = 0x004d6cd0 // int
// 004d6c60 + 0x74 = 0x004d6cd4 // int
// 004d6c60 + 0x78 = 0x004d6cd8 // int
// 004d6c60 + 0x7c = 0x004d6cdc // int
// 004d6c60 + 0x88 = 0x004d6ce8 // int
// 004d6c60 + 0x8c = 0x004d6cec // int
// 004d6c60 + 0x90 = 0x004d6cf0 // end of class or another buffer? DirectDraw surface here

DAT_004d6d58
DAT_004d6d98
DAT_004d6da0
DAT_004d6da4
DAT_004d6dd4
DAT_004d6ef0
DAT_004d6ef4
DAT_004d6ef8
DAT_004d6f10
_DAT_004d765c
_DAT_004d7660
_DAT_004d7770
_DAT_004d7780
_DAT_004d7898
DAT_004d789c
DAT_004d78a0
DAT_004d78a4
DAT_004d78a8
DAT_004d78ac
DAT_004d78b0
_DAT_004d78b4
DAT_004d78b8
DAT_004d78bc
DAT_004d78c0
_DAT_004d78c4
DAT_004d78c8
DAT_004d78d0
DAT_004d79d0
_DAT_004d79d4
DAT_004d79d8
DAT_004d79dc
DAT_004d79e0
DAT_004d79e4
DAT_004d79e8
_DAT_004d79ec
DAT_004d79f0
_DAT_004d79f0
DAT_004d79f4
DAT_004d79f8
DAT_004d7c4c
_DAT_004d7c4c
DAT_004d7c50
DAT_004d7c54
DAT_004d7c58
DAT_004d7c68
DAT_004d7c6c
DAT_004d8110
DAT_004d8160
DAT_004d8164
DAT_004d8168
DAT_004d816c
_DAT_004d8200
_DAT_004d8204
DAT_004d8210
DAT_004d8780
DAT_004d8784
DAT_004d8788
DAT_004d878c
DAT_004d8790
DAT_004d8794
DAT_004d8798
DAT_004d879c
DAT_004d87a0
DAT_004d87a4
DAT_004d87a8
DAT_004d87ac
DAT_004d87b0
DAT_004d87b4
DAT_004d87b8
DAT_004d87bc
DAT_004d87c0
DAT_004d87c4
DAT_004d87c8
DAT_004d87d0
DAT_004d8bd0
DAT_004d8bd4
DAT_004d8bd8
DAT_004d8bdc
DAT_004d8be0
DAT_004d8be4
DAT_004d8be8
DAT_004d8bf0
_DAT_004d8bfc
_DAT_004d8c10
_DAT_004d8c14
_DAT_004d8c16
_DAT_004d8c18
DAT_004d9418
DAT_004e9918
DAT_004e991c
DAT_004e9d18
DAT_004e9ea8
DAT_004e9eac
DAT_004e9eb0
_DAT_004e9eb8
DAT_004e9ebc
DAT_004e9ec0
DAT_004e9ecc
DAT_004e9ed8
DAT_004e9f18
DAT_004e9f20
DAT_004ea020
DAT_004ea024
DAT_004ea028
DAT_004ea098
DAT_004ea8a0
DAT_004ea8f0
DAT_004ea940
DAT_004ea988
DAT_004ea98c
DAT_004ead87
DAT_004ead88
DAT_004eb188
DAT_004eb1c4
DAT_004eb1c8
_DAT_004eb1cc
_DAT_004eb1d0
_DAT_004eb1d4
DAT_004eb1dc
_DAT_004eb1e0
_DAT_004eb1e4
DAT_004eb1e8
DAT_004eb1ec
_DAT_004eb1f4
DAT_004eb1f8
DAT_004eb1fc
DAT_004eb218
DAT_004eb21c
DAT_004eb220
DAT_004eb224
DAT_004eb228
DAT_004eb22c
DAT_004eb230 // SyncTimer
DAT_004eb234
DAT_004eb238
DAT_004eb388
DAT_004eb38c
_DAT_004eb390
DAT_004eb394
DAT_004eb398
DAT_004eb39c
DAT_004eb3b4 // PlayerNumber
DAT_004eb3b8
DAT_004eb3c0
DAT_004eb3c4 // pointer that get freed
DAT_004eb3c8 // pointer that get freed
DAT_004eb3cc
DAT_004eb3d0
DAT_004eb3f8
DAT_004eb3fc
DAT_004eb400
DAT_004eb404
DAT_004eb408
DAT_004eb40c
DAT_004eb410

DAT_004eb414
DAT_004eb418
// + 0x2c  ->Lock()
DAT_004eb44c
DAT_004eb450
DAT_004eb454
DAT_004eb458
DAT_004eb45c
DAT_004eb460
DAT_004eb464
DAT_004eb46c
DAT_004eb470
DAT_004eb474
DAT_004eb478
_DAT_004eb47c
DAT_004eb480
DAT_004eb484
_DAT_004eb488
_DAT_004eb48c
_DAT_004eb490
_DAT_004eb4ec
DAT_004eb500
_DAT_004eb504
DAT_004eb508
_DAT_004eb518
_DAT_004eb51c
DAT_004eb550
DAT_004eb558
DAT_0050b558
DAT_0050b560
DAT_0050b564
DAT_0050b568
DAT_0050b56c
DAT_0050b588
_DAT_0050b58c
DAT_0050b594
_DAT_0050b598
DAT_0050b59c
_DAT_0050b5a0
DAT_0050b5a8
DAT_0050b5ac
DAT_0050b5b0
DAT_0050b5b4
DAT_0050b5bc
DAT_0050b5c0
DAT_0050b5c4
DAT_0050b5c8
DAT_0050b5cc
DAT_0050b5d0
_DAT_0050b5d4
DAT_0050b5d8
DAT_0050b5dc
_DAT_0050b5e0
DAT_0050b5e4
DAT_0050b5ec
DAT_0050b5f0
DAT_0050b600
_DAT_0050b608
DAT_0050b620
DAT_0050b680
DAT_0050b6dc
DAT_0050b6e0
_DAT_0050b6e4
_DAT_0050b6e8
_DAT_0050b6ec
_DAT_0050b6f0
_DAT_0050b6f4
DAT_0050b6fc
DAT_0050b700

DAT_0050b704 // byte[4] sprite color
_DAT_0050b704
DAT_0050b705
DAT_0050b706
DAT_0050b707

DAT_0050b708 // byte[4] sprite color
_DAT_0050b708
DAT_0050b709
DAT_0050b70a
DAT_0050b70b

_DAT_0050c034
DAT_0050c038
DAT_0050c03c
DAT_0050c040
DAT_0050c044
DAT_0050c048 // debug text
DAT_0050c04c // counter of some kind
DAT_0050c050
DAT_0050c054
DAT_0050c058
DAT_0050c064
DAT_0050c068
DAT_0050c070
DAT_0050c07c // index 0 | 1 | 2
_DAT_0050c080
DAT_0050c084
DAT_0050c088
DAT_0050c08c
DAT_0050c090
DAT_0050c094
DAT_0050c098
DAT_0050c09c
DAT_0050c0a0
DAT_0050c0a4
DAT_0050c0a8
DAT_0050c0ac
DAT_0050c0b0
_DAT_0050c0b0
DAT_0050c0b4
DAT_0050c0b8
DAT_0050c0bc
DAT_0050c0be
DAT_0050c0c0
DAT_0050c0c4
_DAT_0050c0c8
DAT_0050c0cc
_DAT_0050c0d0
_DAT_0050c0d8
DAT_0050c0e0
_DAT_0050c110
_DAT_0050c114
DAT_0050c118 // SelectedRacer
DAT_0050c11c
_DAT_0050c120
DAT_0050c128 // vec3f
_DAT_0050c130
DAT_0050c134
DAT_0050c138
DAT_0050c13a
DAT_0050c140
DAT_0050c148
DAT_0050c178
DAT_0050c17c
DAT_0050c180
DAT_0050c184
DAT_0050c1d0
_DAT_0050c1d8
_DAT_0050c1dc
_DAT_0050c1e0
DAT_0050c1e8
_DAT_0050c1f4
DAT_0050c1f8
DAT_0050c1fc
DAT_0050c200
_DAT_0050c20c
DAT_0050c210
_DAT_0050c214
DAT_0050c218
_DAT_0050c218
_DAT_0050c21c
_DAT_0050c220
_DAT_0050c224
DAT_0050c228
DAT_0050c230
DAT_0050c2d0
_DAT_0050c2d4
DAT_0050c2dc
DAT_0050c2e8 // rotation angle in degrees
DAT_0050c2ec // rotation angle in degrees
DAT_0050c2f0
DAT_0050c2f8 // vec3f
_DAT_0050c300
DAT_0050c308
_DAT_0050c308
_DAT_0050c30c
_DAT_0050c310
DAT_0050c318 // vec3f
_DAT_0050c318
_DAT_0050c31c
_DAT_0050c320
DAT_0050c328
DAT_0050c428
DAT_0050c430
_DAT_0050c430
_DAT_0050c434
_DAT_0050c438
_DAT_0050c43c
DAT_0050c440 // vec3f
_DAT_0050c440
_DAT_0050c444
_DAT_0050c448
DAT_0050c44c
DAT_0050c450
DAT_0050c454
_DAT_0050c458
_DAT_0050c45c
DAT_0050c468
DAT_0050c46c
DAT_0050c470
DAT_0050c474
DAT_0050c478
DAT_0050c47c
_DAT_0050c480
DAT_0050c484
_DAT_0050c488
DAT_0050c490
DAT_0050c494
DAT_0050c49c
_DAT_0050c4a0
DAT_0050c4a4
_DAT_0050c4b4
_DAT_0050c4b8
DAT_0050c4c0
DAT_0050c524
DAT_0050c528
DAT_0050c52c
DAT_0050c530
_DAT_0050c534
DAT_0050c538
DAT_0050c53c
_DAT_0050c540
_DAT_0050c544
DAT_0050c548
DAT_0050c54c
DAT_0050c550
DAT_0050c554
DAT_0050c558
_DAT_0050c558
DAT_0050c558_1
DAT_0050c55c
_DAT_0050c55c
DAT_0050c55c_1
DAT_0050c560
_DAT_0050c564
DAT_0050c568
_DAT_0050c56c
_DAT_0050c570
_DAT_0050c57c
_DAT_0050c580
_DAT_0050c584
_DAT_0050c588
DAT_0050c5b0
DAT_0050c5c8
DAT_0050c5cc
DAT_0050c5d0
DAT_0050c5d4
DAT_0050c5d8
DAT_0050c5dc
DAT_0050c5e8
DAT_0050c5f0
DAT_0050c5f4
DAT_0050c5f8
DAT_0050c600
DAT_0050c604
DAT_0050c608
DAT_0050c610
DAT_0050c614
_DAT_0050c618
_DAT_0050c61c
_DAT_0050c620
_DAT_0050c624
DAT_0050c628
DAT_0050c62c
DAT_0050c630
DAT_0050c638
DAT_0050c648
DAT_0050c658
DAT_0050c668
DAT_0050c66c
DAT_0050c670
_DAT_0050c678
_DAT_0050c67c
_DAT_0050c680
DAT_0050c684

DAT_0050c688 // byte, WO with 0

DAT_0050c68c // boolean
DAT_0050c690
DAT_0050c69c
DAT_0050c6a0 // ia3d_release
DAT_0050c6a4 // ia3d_release

DAT_0050c6b0 // struct here, char[0x3f]
DAT_0050c6b4
DAT_0050c6b8
_DAT_0050c6bc
DAT_0050c6c0
DAT_0050c6d0
// 0x0050c6a0 + 0x38 = 0x0050c6d8 **code(param_1)
// 0x0050c6a0 + 0x3c = 0x0050c6dc **code(param_1)
DAT_0050c6e0 // = 0x0050c6a4 + 0x3c **code(param_1) // overlap with a counter. Bug ?
DAT_0050c6e8
_DAT_0050c6e8
_DAT_0050c6ec
_DAT_0050c6f0
DAT_0050c6f4 // undefined_32. Some counter
_DAT_0050c6f8
DAT_0050c704
DAT_0050c708
DAT_0050c70c
DAT_0050c710
DAT_0050c734
DAT_0050c738
DAT_0050c73c
DAT_0050c740
_DAT_0050c744
_DAT_0050c748
DAT_0050c750
DAT_0050c758
_DAT_0050c75c
DAT_0050c764
DAT_0050c770
DAT_0050c870
_DAT_0050c874
_DAT_0050c878
DAT_0050c87c
_DAT_0050c880
DAT_0050c890
DAT_0050c894
DAT_0050c898
DAT_0050c89c
DAT_0050c8a4
_DAT_0050c8a8
_DAT_0050c8b0
_DAT_0050c8b4
_DAT_0050c8b8
_DAT_0050c8bc
DAT_0050c8c0
_DAT_0050c8c4
DAT_0050c8c8
DAT_0050c8d4
_DAT_0050c8e0
_DAT_0050c8e4
_DAT_0050c8f0
_DAT_0050c8f4
DAT_0050c908
_DAT_0050c90c
_DAT_0050c910
_DAT_0050c914
DAT_0050c918
DAT_0050c91c
_DAT_0050c920
_DAT_0050c924
DAT_0050c928
DAT_0050c92c
DAT_0050c930
DAT_0050c934
_DAT_0050c938
_DAT_0050c93c
DAT_0050c940
DAT_0050c944
DAT_0050c950
DAT_0050c954
_DAT_0050c958
_DAT_0050c95c
DAT_0050c960
DAT_0050c968
DAT_0050c96c
DAT_0050c970
DAT_0050c980
DAT_0050c990
DAT_0050c994
DAT_0050c998
_DAT_0050c9a4
DAT_0050c9a8
DAT_0050c9b0
DAT_0050c9c0
DAT_0050c9cc
DAT_0050c9d0
DAT_0050c9f8
DAT_0050c9fc
DAT_0050ca00
DAT_0050ca04
DAT_0050ca08
_DAT_0050ca0c
_DAT_0050ca10
DAT_0050ca14
DAT_0050ca18
_DAT_0050ca1c
DAT_0050ca20
DAT_0050ca24
DAT_0050ca28 // pod invincibility
DAT_0050ca2c
DAT_0050ca34
DAT_0050ca3c
DAT_0050ca40
DAT_0050ca44
_DAT_0050ca48
DAT_0050ca4c
DAT_0050ca58
_DAT_0050ca5c
DAT_0050ca60
DAT_0050ca68
DAT_0050ca70
_DAT_0050ca78
_DAT_0050ca7c
_DAT_0050ca80
_DAT_0050ca84
_DAT_0050ca88
DAT_0050ca8c
DAT_0050ca90
DAT_0050ca98
DAT_0050caa8
DAT_0050cab8
DAT_0050cac8
DAT_0050cad4
DAT_0050cad8
DAT_0050cadc // rotation angle degree
_DAT_0050cae0
_DAT_0050cae4
DAT_0050cae8
_DAT_0050caf8
DAT_0050cb00
DAT_0050cb04
_DAT_0050cb08
DAT_0050cb10
_DAT_0050cb14
DAT_0050cb18
DAT_0050cb38
DAT_0050cb40
_DAT_0050cb44
DAT_0050cb48
DAT_0050cb4c
DAT_0050cb50
DAT_0050cb54
DAT_0050cb58
DAT_0050cb60
DAT_0050cb64
DAT_0050cb68
DAT_0050cb70
DAT_0050cb74
_DAT_0050cb78
DAT_0050cb7c
DAT_0050cb80
DAT_0050cb88
DAT_0050cbc8
DAT_0050ccc8
DAT_0050cccc
DAT_0050ccd0
DAT_0050cce0
_DAT_0050cce4
DAT_0050ccec

DAT_0050ccf0
DAT_0050ccf8
DAT_0050ccfc
DAT_0050cd00
DAT_0050cd04

DAT_0050cd08
DAT_0050cd0c
DAT_0050cd10
DAT_0050cd18
_DAT_0050d518
DAT_0050d520 // A3DCAPS_HARDWARE
_DAT_0050d520 // .dwSize
DAT_0050d524 // .dwFlags
DAT_0050d544
IA3dX_0050d548 // IA3dX static class. ->QueryInterface(IA3dX_0050d548, &DAT_004ae158, &DAT_0050d560)
DAT_0050d550 // Release()
DAT_0050d554
DAT_0050d55c
DAT_0050d560 // A subStructure start here
DAT_0050d564
DAT_0050d568
DAT_0050d56c // **code
// IA3dX_0050d548 + 0x2c = 0x50d574 // GetHardwareCaps()
// **code IA3dX_0050d548 + 0x34 = 0x50d57c
// **code here (FUN_00484f40) DAT_0050d560 + 0x2c
// IA3dX_0050d548 + 0x50 = 0x50d598 // SetPosition3f()
// IA3dX_0050d548 + 0x5c = 0x50d5a4 // SetCoordinateSystem()
// IA3dX_0050d548 + 0x68 = 0x50d5b0 // GetOutputGain()
// IA3dX_0050d548 + 0x6c = 0x50d5b4 // SetNumFallbackSources()
// IA3dX_0050d548 + 0x80 = 0x50d5c8 // SetUnitsPerMeter()
// IA3dX_0050d548 + 0x88 = 0x50d5D0 // SetDopplerScale()
// IA3dX_0050d548 + 0x90 = 0x50d5D2 // SetDistanceModelScale()
// **code here (FUN_00484f10), DAT_0050d560 + 0x3c
// IA3dX_0050d548 + 0xa0 // Guess: SetGain()
// + 0xd0 **code (param_1, param_2)
// IA3dX_0050d548 + 0xd4 // Guess: GetRenderMode()
// IA3dX_0050d548 + 100 (0xEC) // SetOutputGain()
DAT_0050d628
DAT_0050d658
DAT_0050d89c
DAT_0050e028
DAT_0050e428
DAT_0050e46c
DAT_0050e470
DAT_0050e474
DAT_0050e828
DAT_0050e868
DAT_0050ec68
DAT_0050ecac
DAT_0050ecb0
DAT_0050ecb4
DAT_0050f068
DAT_0050f0a8
DAT_0050f0ac
DAT_0050f0b0
DAT_0050f0b4
DAT_0050f0b8
DAT_0050f0bc
DAT_0050f0c0
DAT_0050f528
DAT_0050f540
DAT_0050f648
_DAT_0050f64c
_DAT_0050f650
DAT_0050f658
_DAT_0050f65c
_DAT_0050f660
DAT_0050f668
DAT_0050fa68
DAT_0050faac
DAT_0050fab0
DAT_0050fab4
DAT_0050fe68
DAT_0050fea8
DAT_0050feac
DAT_0050feb0
DAT_0050feb4
LPDIRECTINPUT_PTR_0050feb8
DAT_0050febc
DAT_0050fec0
DAT_0050fec4
DAT_0050fec8
DAT_0050fecc
DAT_0050fed0
DAT_0050fed8
DAT_0050fee0
DAT_0050ff08
DAT_00510250
DAT_00510254
_DAT_00510258
DAT_00510260
DAT_00510370
DAT_005117e8
DAT_005117ec
DAT_005117f0
DAT_005117f4
DAT_00513868
DAT_0051386c
DAT_00513870
DAT_005138b8
DAT_00513937
DAT_00513938
DAT_00514338
DAT_00514388
DAT_005143d8
DAT_00514457
DAT_00514458
DAT_005284a8
DAT_005284f8
DAT_00528500 // char[0x1000], buffer for vsnprintf -> fwrite

DAT_00529500
DAT_00529504
DAT_00529508
DAT_0052950c
DAT_00529510
DAT_00529514
DAT_00529518
DAT_0052951c
_DAT_00529520
_DAT_00529568
_DAT_0052956c
_DAT_00529570
_DAT_00529574
DAT_00529578 // class
DAT_0052957c
_DAT_00529580
_DAT_00529584
_DAT_00529588
// + 0x14 = 0x0052958c **code
DAT_005295c4
_DAT_005295e4
DAT_005295f8
DAT_0052a9f8
DAT_0052d438
DAT_0052d43c
DAT_0052d440
DAT_0052d444
DAT_0052d448
DAT_0052d44c
DAT_0052d450
DAT_0052d454 // a class void* vtable
DAT_0052d458
DAT_0052d45c
DAT_0052d460
_DAT_0052d460
// +0x18 = 0052d46c **code
// +0x20 = 0052d470 **code
// +0x50 = 0052d4a0 **code
// +0x5c = 0052d4ac **code
// +0x6c = 0052d4c0 **code
DAT_0052d4cc
DAT_0052d4ec
_DAT_0052d55c
DAT_0052d560 // buffer here ? set by FUN_0048add0(&DAT_004ae8c0)
DAT_0052d564
DAT_0052d568
DAT_0052d56c

DAT_0052d570 // get MEMSET 0 at FUN_00489e40
DAT_0052d578
DAT_0052d59c
DAT_0052d5a8
DAT_0052d5ac
DAT_0052d5b0

DAT_0052d870 // get MEMSET 0 at FUN_00489e40
DAT_0052d878
DAT_0052e610
DAT_0052e614
DAT_0052e618
DAT_0052e61c
_DAT_0052e620
DAT_0052e624
DAT_0052e628
DAT_0052e62c

// NULL terminated array of struct / classes ? do {} while
DAT_0052e630 // Class from here instead of e638 ?
DAT_0052e634

DAT_0052e638 // some class, or start from e630 ? vtable, same as 0x0052d454
DAT_0052e63c
DAT_0052e640 // init bool for 52e644, vtable, IDirectInput8:: ?
IDirect3DDevice9_0052e644 // 0x0052e63c + 8 **code single use ?
DAT_0052e648 // 0x0052e640 + 8 **code
_DAT_0052e64c // 0x0052e648 + 8 **code single use ?
DAT_0052e650 // 0x0052e638 + 0x18, 0x0052e648 + 8 **code
DAT_0052e658 // char[0x800] vsnprintf -> fwrite
// 0x0052e644 + 0x24 = 0x0052e668 **code
// 0x0052e644 + 0x28 = 0x0052e66c **code
// 0x0052e644 + 0x64 = ->SetTransform()
// 0x0052e630 + 0x80 = 0x0052e6b0 undefined_32*
// 0x0052e630 + 0x80 + 8 = 0x0052e6b8 **code
// 0x0052e644 + 0x58 = 0x0052e6dc **code(self, 0, 0)
// 0x0052e644 + 0x98 = 0x0052e6e4 **code
// 0x0052e644 + 0xa0 = 0x0052e6e4 **code

DAT_0052ee60
_DAT_0052ee60 // unicode array[4] ?
_DAT_0052ee64
_DAT_0052ee68
_DAT_0052ee6c

DAT_0052ee70 // main window hwnd
DAT_0052ee74
DAT_0052ee78
_DAT_0052ee7c
DAT_0052ee98
DAT_005330c0
DAT_005330c8
DAT_005330d0
DAT_005330d4
DAT_005330d8
DAT_005330f4
_DAT_005430c0
DAT_005430c4
DAT_005430c8
DAT_006830c8
DAT_006830d0
DAT_006830d4
DAT_006830d8
DAT_006830dc
DAT_006830e0
DAT_006830fc
DAT_006930c8
DAT_006930d0
DAT_007d30d0
DAT_008730d0
DAT_009630d0
DAT_00a530d0
DAT_00a530d8
DAT_00af30d8
DAT_00af30dc
DAT_00af30e8
DAT_00af30ea
DAT_00af30ec
DAT_00b6b0e8
DAT_00b6b0ec
DAT_00b6b0f0
DAT_00b6b0f4
DAT_00b6b0f8
DAT_00b6b0fc
DAT_00b6b100
DAT_00b6b104
DAT_00dc0000
DAT_00deb0e8
DAT_00deb0ec
DAT_00deb0f0
DAT_00deb0f4
DAT_00deb0f8
DAT_00deb0fc
DAT_00deb100
DAT_00deb104
DAT_00deb108 // *code
DAT_00deb10c // *code
DAT_00deb110
DAT_00deb118
_DAT_00deb118
_DAT_00deb11c
_DAT_00deb120
DAT_00deb128
DAT_00deb4e8
DAT_00deb6e8
DAT_00debce8
DAT_00df7ce8
DAT_00df7cec
DAT_00df7cf0
DAT_00df7cf8
DAT_00df7ef8
DAT_00df7efc
DAT_00df7f04
DAT_00df7f08
DAT_00df7f0c
DAT_00df7f18
DAT_00df7f1c
DAT_00df7f20
DAT_00df7f2c
DAT_00df7f30
DAT_00df7f34
DAT_00df7f78
DAT_00df7f7c
DAT_00df7f80
DAT_00df7fd0
DAT_00df7fd4
DAT_00df7fe0
DAT_00df83a0
_DAT_00df83a0
_DAT_00df83a4
_DAT_00df83a8
_DAT_00df83ac
_DAT_00df83b0
_DAT_00df83b4
_DAT_00df83b8
_DAT_00df83bc
_DAT_00df83c0
_DAT_00df83c4
_DAT_00df83c8
_DAT_00df83cc
DAT_00df8760
_DAT_00df8760
_DAT_00df8764
_DAT_00df8768
_DAT_00df876c
_DAT_00df8770
_DAT_00df8774
_DAT_00df8778
_DAT_00df877c
_DAT_00df8780
_DAT_00df8784
_DAT_00df8788
_DAT_00df878c
DAT_00df8b20
DAT_00df8b24
DAT_00df9728
DAT_00df9ae8
_DAT_00df9ae8
_DAT_00df9aec
_DAT_00df9af0
_DAT_00df9af4
_DAT_00df9af8
_DAT_00df9afc
_DAT_00df9b00
_DAT_00df9b04
_DAT_00df9b08
_DAT_00df9b0c
_DAT_00df9b10
_DAT_00df9b14
DAT_00df9ea8
DAT_00df9eac
DAT_00df9eb0
DAT_00df9eb4
DAT_00df9eb8
DAT_00dfa138
DAT_00dfa13c
DAT_00dfa140
DAT_00dfa500
DAT_00dfaa04
DAT_00dfaa08
DAT_00dfaa0c
DAT_00dfaa10
DAT_00dfaa14
DAT_00dfaa18
DAT_00dfaa1c
DAT_00dfaa20
DAT_00dfaa24
DAT_00dfaa28 // another window hwnd, KernelJones3D lpclass name
_DAT_00dfaa2c // nCmdShow is a flag that says whether the main application window will be minimized, maximized, or shown normally.
DAT_00dfaa30 // some function pointer
DAT_00dfaa34 // cx increment
DAT_00dfaa38 // cy increment
_DAT_00dfaa3c
DAT_00dfaa40
DAT_00dfaa44
DAT_00dfaa48 // { get; } undefined_8*
DAT_00dfaa74
_DAT_00dfaa78
_DAT_00dfaa7c
_DAT_00dfaa80
_DAT_00dfaa84
_DAT_00dfaa88
_DAT_00dfaa8c
DAT_00dfaa94
DAT_00dfaa98
DAT_00dfaa9c
_DAT_00dfaaa4
DAT_00dfaaac
_DAT_00dfaab0
DAT_00dfaab4
_DAT_00dfaabc
DAT_00dfaac0
DAT_00dfaac8
DAT_00dfab38
DAT_00dfab48
DAT_00dfab5c
DAT_00dfab60
DAT_00dfab64
DAT_00dfab68
DAT_00dfab6c
DAT_00dfab70
_DAT_00dfab74
DAT_00dfab78
DAT_00dfac80
DAT_00dfac88
DAT_00dfad90
DAT_00dfae90
DAT_00dfae94
_DAT_00dfae98
_DAT_00dfae9c
_DAT_00dfaea0
DAT_00dfaea4
DAT_00dfaea8
DAT_00dfaeb8
DAT_00dfaeec
DAT_00dfaef6
DAT_00dfaef8
DAT_00dfaf20
DAT_00dfaf24
DAT_00dfaf28
DAT_00dfaf2c
DAT_00dfaf30
DAT_00dfaf38
DAT_00dfaf3c
_DAT_00dfaf7c
DAT_00dfaf7e
DAT_00dfaf80
DAT_00dfaf84
DAT_00dfaf88
DAT_00dfaf8c
DAT_00dfaf90
_DAT_00dfafd0
DAT_00dfafd2
DAT_00dfafd4
_DAT_00dfafd8
DAT_00dfafdc
DAT_00dfafe0
DAT_00dfafe4
DAT_00dfafe8
DAT_00dfb008
DAT_00dfb010
DAT_00dfb014
DAT_00dfb018
DAT_00dfb020
DAT_00dfb040

DAT_00dfb044 // array here. Struct containing transforms ? 4 cells, sizeof() = 0x16c
DAT_00dfb048
DAT_00dfb04c
DAT_00dfb050
DAT_00dfb054
DAT_00dfb058
DAT_00dfb05c
DAT_00dfb060
DAT_00dfb064
DAT_00dfb068
DAT_00dfb06c
DAT_00dfb070
DAT_00dfb074
DAT_00dfb078
DAT_00dfb07c
DAT_00dfb080
DAT_00dfb084
DAT_00dfb088
DAT_00dfb08c
DAT_00dfb090
DAT_00dfb094
DAT_00dfb098
DAT_00dfb09c
DAT_00dfb0a0
DAT_00dfb0a4
DAT_00dfb0a8
DAT_00dfb0ac
DAT_00dfb0b0
DAT_00dfb0b4
DAT_00dfb0b8
DAT_00dfb0bc
DAT_00dfb0c0
DAT_00dfb0c4
DAT_00dfb0c8
DAT_00dfb0cc
DAT_00dfb0d0
DAT_00dfb0d4
DAT_00dfb0d8
DAT_00dfb0dc
DAT_00dfb0e0
DAT_00dfb0e4
DAT_00dfb0e8
DAT_00dfb0ec
DAT_00dfb0f0
DAT_00dfb0f4
DAT_00dfb0f8
DAT_00dfb0fc
DAT_00dfb100
DAT_00dfb104
DAT_00dfb108
DAT_00dfb10c
DAT_00dfb110
DAT_00dfb114
DAT_00dfb118
DAT_00dfb11c
DAT_00dfb120
DAT_00dfb124
DAT_00dfb128
DAT_00dfb12c
DAT_00dfb130
DAT_00dfb134
DAT_00dfb138
DAT_00dfb13c
DAT_00dfb140
DAT_00dfb144
DAT_00dfb148
DAT_00dfb14c
DAT_00dfb150
DAT_00dfb154
DAT_00dfb158
DAT_00dfb15c
DAT_00dfb160
DAT_00dfb164
DAT_00dfb168
DAT_00dfb16c
DAT_00dfb170
DAT_00dfb174
DAT_00dfb178
DAT_00dfb17c
DAT_00dfb180
DAT_00dfb184
DAT_00dfb188
DAT_00dfb18c
DAT_00dfb190
DAT_00dfb194
DAT_00dfb198
DAT_00dfb19c
DAT_00dfb1a0
DAT_00dfb1a4
DAT_00dfb1a8
DAT_00dfb1ac
DAT_00dfb21c // something here till 254
DAT_00dfb220
DAT_00dfb224
DAT_00dfb22c
DAT_00dfb230
DAT_00dfb234
DAT_00dfb23c
DAT_00dfb240
DAT_00dfb244
DAT_00dfb24c
DAT_00dfb250
DAT_00dfb254 // end here
_DAT_00dfb2e0
DAT_00dfb2ec
DAT_00dfb2f0
DAT_00dfb318
DAT_00dfb600
DAT_00e226f4
DAT_00e226f6
DAT_00e226f8
DAT_00e226fa
DAT_00e226fc
DAT_00e226fe
DAT_00e22704
DAT_00e22706
DAT_00e22708
DAT_00e2270a
DAT_00e22710
DAT_00e22712
DAT_00e22714
DAT_00e22716
DAT_00e22720
DAT_00e22722
DAT_00e22724
DAT_00e22726
DAT_00e22820
DAT_00e2282c
_DAT_00e229a0
DAT_00e229a8
_DAT_00e229a8
DAT_00e229aa
_DAT_00e229aa
DAT_00e229ac
_DAT_00e229ac
DAT_00e229b0
DAT_00e229c0
_DAT_00e229c0
DAT_00e229c4
DAT_00e229c8
DAT_00e229d0
_DAT_00e229d0
DAT_00e229d4
DAT_00e229d8
DAT_00e229dc
DAT_00e229e0
DAT_00e22a30
_DAT_00e22a38
_DAT_00e22a3c

DAT_00e22a40 // some time Time
_DAT_00e22a40

DAT_00e22a44
_DAT_00e22a48
_DAT_00e22a4c
_DAT_00e22a50
DAT_00e22a60
DAT_00e22a64
DAT_00e23240
_DAT_00e25960
DAT_00e25964
DAT_00e25968
DAT_00e2596c
DAT_00e25970
DAT_00e25974
DAT_00e25978
DAT_00e2597c
DAT_00e25980
DAT_00e25984
DAT_00e25988
DAT_00e2598c
DAT_00e25990
DAT_00e25994
DAT_00e25998
DAT_00e2599c
DAT_00e259a0
DAT_00e259c0
DAT_00e25ac0
DAT_00e25de0
DAT_00e25df4
_DAT_00e25df8
DAT_00e25e00

// store animations data pointer
DAT_00e25e60
_DAT_00e25e60
_DAT_00e25e64
_DAT_00e25e68
_DAT_00e25e6c
_DAT_00e25e74

DAT_00e26fc0
_DAT_00e26fc0
_DAT_00e26fc8
_DAT_00e26fcc
DAT_00e26fd0
_DAT_00e26fd0
DAT_00e26fe0
_DAT_00e26fe4
DAT_00e26fe8
_DAT_00e26fec
_DAT_00e26ff0
_DAT_00e26ff4
DAT_00e27000
_DAT_00e270c8

// FUN_0047d890
_DAT_00e270d0 // float[16] Some control structure with thresholds
_DAT_00e270d4
_DAT_00e270d8
_DAT_00e270dc
_DAT_00e270e0
_DAT_00e27100
_DAT_00e27104
_DAT_00e27108
_DAT_00e2710c
_DAT_00e27110
_DAT_00e27114
_DAT_00e27118
_DAT_00e2711c
_DAT_00e27120
_DAT_00e27124
_DAT_00e27128 // end

_DAT_00e2712c
DAT_00e27130
DAT_00e27134
DAT_00e27140
_DAT_00e27168
DAT_00e27180
_DAT_00e27194
_DAT_00e27198
DAT_00e271a0
DAT_00e27240
DAT_00e27260
DAT_00e277e0
_DAT_00e277e0
DAT_00e27800
DAT_00e27814
DAT_00e27818
DAT_00e2781c
DAT_00e27820
DAT_00e27840
DAT_00e27841
DAT_00e27842
DAT_00e27843
DAT_00e27890
_DAT_00e27894
DAT_00e278a0
DAT_00e28660
DAT_00e28674
DAT_00e28678
DAT_00e28680
DAT_00e286d0
DAT_00e286e0
DAT_00e28740
_DAT_00e28754
_DAT_00e28758
_DAT_00e2875c
_DAT_00e28760
DAT_00e28764
DAT_00e28780
DAT_00e287e0
_DAT_00e287e4
_DAT_00e287e8
DAT_00e287ec
_DAT_00e287f0
_DAT_00e287f8
_DAT_00e287fc
_DAT_00e28800
_DAT_00e28804
_DAT_00e28808
_DAT_00e2880c
DAT_00e28814
_DAT_00e28818
DAT_00e28820
DAT_00e28860
DAT_00e288b0
DAT_00e288b4
DAT_00e288c0
DAT_00e28960
DAT_00e28964
_DAT_00e28964
DAT_00e28980
_DAT_00e28994
_DAT_00e28998
DAT_00e2899c
DAT_00e289a0
DAT_00e289a4
DAT_00e289a8
DAT_00e289c0
_DAT_00e289f8
DAT_00e28a00 // int * to some model ?
DAT_00e28a20
DAT_00e28a60
DAT_00e28a80
DAT_00e28a90
DAT_00e28a94
DAT_00e28a98
DAT_00e29160
DAT_00e293c4
DAT_00e293cc
DAT_00e293d0
DAT_00e293d4
DAT_00e295a0 // TransitionFloat (?)
DAT_00e295a4
DAT_00e295a8
DAT_00e295ac
DAT_00e295b0
DAT_00e295b4
DAT_00e295b8
DAT_00e295bc
DAT_00e295c0
DAT_00e295c4
DAT_00e295c8
DAT_00e295cc // RacerSelectionMax
DAT_00e295d0
DAT_00e295d4
_DAT_00e295d8
DAT_00e295dc
DAT_00e295e0
DAT_00e29600
DAT_00e2985e
DAT_00e29860
DAT_00e29861
DAT_00e29862
DAT_00e29890
DAT_00e298a0
_DAT_00e298a0
_DAT_00e298a4
_DAT_00e298a8

DAT_00e298c0 // mat
DAT_00e298c4
DAT_00e298c8
DAT_00e298d0
DAT_00e298d4
DAT_00e298d8
DAT_00e298e0
DAT_00e298e4
DAT_00e298e8
DAT_00e298f0 // vec3f[3] translation
_DAT_00e298f0
_DAT_00e298f4
_DAT_00e298f8
// mat end 0x00e298fc probably 1.0

DAT_00e29900
DAT_00e29908
DAT_00e29914
DAT_00e29918
DAT_00e2993c
DAT_00e29968
DAT_00e29970
DAT_00e29974
DAT_00e299cc
DAT_00e299d0
DAT_00e299e0
DAT_00e299f4
DAT_00e29a18
DAT_00e29a30
DAT_00e29a34
DAT_00e29a4c
DAT_00e29a54
DAT_00e29a74
DAT_00e29a88
DAT_00e29b38
DAT_00e29b60
DAT_00e29b90
_DAT_00e29b90
_DAT_00e29b94
_DAT_00e29b98
DAT_00e29ba0
DAT_00e29bc0
DAT_00e29bc4 // contains a MAGIC
DAT_00e29bc8
DAT_00e29bcc
DAT_00e29bd8
DAT_00e29bdc
DAT_00e29c20
DAT_00e29c44
DAT_00e2a660
_DAT_00e2a674
_DAT_00e2a678
DAT_00e2a67c
DAT_00e2a698
DAT_00e2a6b0
_DAT_00e2a6b0
_DAT_00e2a6b4
_DAT_00e2a6b8
_DAT_00e2a6bc
DAT_00e2a6c0
DAT_00e2a6c1
DAT_00e2a6c4
DAT_00e2a6c8
DAT_00e2a6cc
DAT_00e2a6d0
DAT_00e2a6dc
DAT_00e2a6e4
DAT_00e2a6e8
DAT_00e2a6ec
DAT_00e2ae80
DAT_00e2aeb0
_DAT_00e2aeb0
_DAT_00e2aeb4
_DAT_00e2aeb8
DAT_00e2aec0
DAT_00e2aee0
DAT_00e2af00 // mat
// 0x00e2af3c // mat end
DAT_00e2af40
DAT_00e2af60 // mat
DAT_00e2af90 // vec3f[3] translation
_DAT_00e2af90
_DAT_00e2af94
_DAT_00e2af98
// 0x00e2af9c // mat end
DAT_00e2afa0
DAT_00e2afb8
DAT_00e2b200
DAT_00e2b220
DAT_00e2b221
DAT_00e2b224
DAT_00e2b22c
DAT_00e2b230
DAT_00e2b23c
DAT_00e2b3e0
DAT_00e2b410
_DAT_00e2b410
_DAT_00e2b414
_DAT_00e2b418
DAT_00e2b420
DAT_00e2b440
DAT_00e2b470
_DAT_00e2b470
_DAT_00e2b474
_DAT_00e2b478
DAT_00e2b480
DAT_00e2b481
DAT_00e2b482
DAT_00e2b483
DAT_00e2b670
DAT_00e2b674
DAT_00e2b678
DAT_00e2b67c
DAT_00e2b680
DAT_00e2be7c
DAT_00e2be80
DAT_00e2c080
DAT_00e2c082
DAT_00e2c380 // sprintf array of buffers ?
DAT_00e303a0
DAT_00e343a0
DAT_00e343a1
DAT_00e343a2
DAT_00e343a3
DAT_00e345a0
DAT_00e34660
DAT_00e34662
DAT_00e34860
DAT_00e34862
_DAT_00e34a60
DAT_00e34a70
DAT_00e34a80
DAT_00e35a60
DAT_00e35a80
DAT_00e35a81
DAT_00e35a82
DAT_00e35a83
DAT_00e35a84
DAT_00e35a85
DAT_00e35a86
DAT_00e35a87
DAT_00e35a88
DAT_00e35a8a
_DAT_00e35a8a
_DAT_00e35a8c
DAT_00e35a8e
_DAT_00e35a8e
_DAT_00e35a90
DAT_00e35a94
DAT_00e35a98
DAT_00e35a9c
DAT_00e35aa0 // Pit Droid
_DAT_00e35aa0
DAT_00e35aa1 // char[7] Upgrades
DAT_00e35aa8 // char[4] = uint Part health, 0xff ff ff ff is max
_DAT_00e35aa8
_DAT_00e35aac // 2 bytes
DAT_00e35aae // 1 byte

DAT_00e35ab0
DAT_00e35ad1
DAT_00e360a0
DAT_00e360a4
DAT_00e364a0
DAT_00e364a5
DAT_00e364a6
DAT_00e364a8
DAT_00e364ac
DAT_00e364ad
DAT_00e364ae
DAT_00e364af
DAT_00e364b0
DAT_00e364b4
DAT_00e364d4
DAT_00e364d5
DAT_00e364d6
DAT_00e364d7
DAT_00e364d8
DAT_00e364d9
DAT_00e364da
DAT_00e364db
DAT_00e364dc
DAT_00e364de
DAT_00e364e2
DAT_00e364e8
_DAT_00e364e8
DAT_00e364ec
DAT_00e364f0
DAT_00e364f4
DAT_00e364f5
DAT_00e364fc
DAT_00e36503
DAT_00e365f4
DAT_00e366bc
DAT_00e36784
DAT_00e36dc4
DAT_00e37404
DAT_00e37436
DAT_00e37480
_DAT_00e37480
_DAT_00e37484
_DAT_00e37488
_DAT_00e3748c
_DAT_00e37490
_DAT_00e37494
_DAT_00e37498
_DAT_00e3749c
_DAT_00e374a0
_DAT_00e374a4
_DAT_00e374a8
_DAT_00e374ac
_DAT_00e374b0
_DAT_00e374b4
_DAT_00e374b8
_DAT_00e374bc
DAT_00e374c0
_DAT_00e374c4
DAT_00e374e0
DAT_00e374e4
DAT_00e37520
_DAT_00e37524
_DAT_00e37528
DAT_00e3752c
DAT_00e37530
DAT_00e37534
DAT_00e37538
DAT_00e3753c
DAT_00e37540
_DAT_00e37580
_DAT_00e37584
_DAT_00e37588
_DAT_00e3758c
DAT_00e37590
_DAT_00e37590
DAT_00e37594
_DAT_00e37594
DAT_00e37598
_DAT_00e37598
DAT_00e3759c
_DAT_00e3759c
DAT_00e375a0
_DAT_00e375a0
DAT_00e375a4
DAT_00e375a8
DAT_00e375ac
DAT_00e375b0
DAT_00e375b4
_DAT_00e375b4
DAT_00e375b8
_DAT_00e375b8
DAT_00e375bc
_DAT_00e375bc
DAT_00e375c0
DAT_00e375c4
DAT_00e375c8
DAT_00e375cc
DAT_00e375d0
DAT_00e375d4
DAT_00e375d8
DAT_00e375dc
DAT_00e375e0
DAT_00e375e4
DAT_00e375e8
DAT_00e375ec
DAT_00e37bf0
DAT_00e37c00
_DAT_00e67c00
DAT_00e67c04
_DAT_00e67c08
DAT_00e67c20
DAT_00e67c38

DAT_00e67c40 // array of 0x220, +0x44 each item starting from here // release_ia3d called to this
DAT_00e67c44
DAT_00e67c48
// end at 00e70cc0

// struct of some kind filled by FUN_00449e00
DAT_00e67e40 // related to previous array with 0x200 items and offset of 0x44
DAT_00e67e44
DAT_00e67e48
DAT_00e67e4c
DAT_00e67e50
DAT_00e67e54
DAT_00e67e58
DAT_00e67e5c
DAT_00e67e60
DAT_00e67e68
DAT_00e67e6c
DAT_00e67e70
DAT_00e67e74
DAT_00e67e78

// struct of some kind filled by FUN_00449e00, FUN_00426a00
DAT_00e68060 // related to previous array with 0x200 items and offset of 0x44
DAT_00e68064
DAT_00e68068
DAT_00e6806c
DAT_00e68070
DAT_00e68074
DAT_00e68078
DAT_00e6807c
DAT_00e68080
DAT_00e68088
DAT_00e6808c // vec3f x
DAT_00e68090 // y
DAT_00e68094 // z
DAT_00e68098
DAT_00e6809c
DAT_00e680a0 // struct end

DAT_00e68280
DAT_00e6b160
DAT_00e6b164
DAT_00e6b168
DAT_00e6b180
DAT_00e90980
DAT_00e93860
DAT_00e95300
DAT_00e981e0
DAT_00e981e4
_DAT_00e981e8
DAT_00e981fc
DAT_00e98200
DAT_00e98204
DAT_00e98224
DAT_00e98228
DAT_00e9822c
_DAT_00e98230
_DAT_00e98234
_DAT_00e98238
DAT_00e9823c
DAT_00e98240
DAT_00e98244
DAT_00e98248
_DAT_00e9824c
DAT_00e98250
DAT_00e98254
DAT_00e98258 // float
_DAT_00e98260
_DAT_00e98264
_DAT_00e98268
DAT_00e9826c
_DAT_00e98270
_DAT_00e98274
_DAT_00e98278
DAT_00e9827c
DAT_00e98280
DAT_00e98284
// end of some array (FUN_00449e50)
DAT_00e98290 // float[3] [0]
_DAT_00e98290 // [0]
DAT_00e98294 // [1]
// end of some array (FUN_00449e30)

DAT_00e98298 // [2]
DAT_00e982a0
DAT_00e982a4
DAT_00e982a8
DAT_00e98580
DAT_00e98584
DAT_00e98588
DAT_00e9858c
DAT_00e98590
DAT_00e98594
DAT_00e98598
DAT_00e9859c
DAT_00e985a0
_DAT_00e985a0
DAT_00e985a4
_DAT_00e985a4
DAT_00e985a8
_DAT_00e985a8
DAT_00e985ac

DAT_00e985b0
_DAT_00e985b0

DAT_00e985b4
DAT_00e985b8
DAT_00e985bc

DAT_00e985c0 // __cfltcvt_init_2 float
_DAT_00e985c0
DAT_00e985c4
_DAT_00e985c4
DAT_00e985c8
_DAT_00e985c8
DAT_00e985cc
_DAT_00e985cc
DAT_00e985d0
_DAT_00e985d0
DAT_00e985d4 // float
_DAT_00e985d4
DAT_00e985d8
_DAT_00e985d8
DAT_00e985dc
_DAT_00e985dc
DAT_00e985e0
_DAT_00e985e0
DAT_00e985e4
_DAT_00e985e4
DAT_00e985e8
_DAT_00e985e8 // float
DAT_00e985ec
_DAT_00e985ec
DAT_00e985f0
_DAT_00e985f0
DAT_00e985f4
_DAT_00e985f4
DAT_00e985f8
_DAT_00e985f8
DAT_00e985fc // float
_DAT_00e985fc // end

DAT_00e98e00
DAT_00e98e10
_DAT_00e98e10
_DAT_00e98e14
_DAT_00e98e18
_DAT_00e98e1c
DAT_00e98e20

DAT_00e98e30
_DAT_00e98e30
_DAT_00e98e34
_DAT_00e98e38

DAT_00e98e40 // vec3f[3]
DAT_00e98e44
DAT_00e98e48
DAT_00e98e4c // vec3f[3]
_DAT_00e98e4c
_DAT_00e98e50
_DAT_00e98e54
DAT_00e98e58 // scaling factor
DAT_00e98e60 // vec3f[3]  [0]
_DAT_00e98e60 // [0]
DAT_00e98e64 // [1]
DAT_00e98e68 // [2]
_DAT_00e98e6c
DAT_00e98e70
DAT_00e98e80
DAT_00e98e88
DAT_00e98e90 // player input string
DAT_00e98e94
DAT_00e98ea0
DAT_00e98ea8
DAT_00e98eb0

_DAT_00e98eb4
DAT_00e98ec0
DAT_00e98ee0
DAT_00e98ee2
DAT_00e98ee4
_DAT_00e98ee4
_DAT_00e98ee8
_DAT_00e98eec
_DAT_00e98ef0
DAT_00e98ef2
_DAT_00e98ef4
DAT_00e98f40
DAT_00e98f44
DAT_00e98f48
DAT_00e98f4c
DAT_00e98f50
DAT_00e98f54
DAT_00e98f58
DAT_00e98f5c
DAT_00e98fb8
DAT_00e99014
DAT_00e99070
DAT_00e990cc
DAT_00e99128
_DAT_00e99178
DAT_00e99184
DAT_00e991e0
DAT_00e99220
DAT_00e99240
DAT_00e99244
DAT_00e99300
_DAT_00e99300
_DAT_00e99304
DAT_00e9930c
_DAT_00e9930c
_DAT_00e99310
DAT_00e99320
DAT_00e9932c
_DAT_00e9932c
_DAT_00e99330
DAT_00e99340
_DAT_00e99340
_DAT_00e99344
DAT_00e9934c
_DAT_00e9934c
_DAT_00e99350
_DAT_00e99358
DAT_00e9935c
DAT_00e99364
DAT_00e99368
DAT_00e99384 // PodRotationAnimation angle float
DAT_00e99400

// this end up at 004b91c4 + 8 + n * 0x7c where n is the index starting at 0
DAT_00e99420 // some data. Texture, text, model ? index 0 // RacerIndex
DAT_00e99460 // same type of data
DAT_00e994a0 // same type of data
DAT_00e994e0 // same type of data
DAT_00e99520 // same type of data
DAT_00e99560 // same type of data
DAT_00e995a0 // same type of data
DAT_00e995e0 // same type of data
DAT_00e99620 // same type of data
DAT_00e99660 // same type of data, index 9

_DAT_00e996a0
DAT_00e996a4
DAT_00e996c0
_DAT_00e996c0
_DAT_00e996c4
_DAT_00e996c8
DAT_00e996cc
_DAT_00e996cc
_DAT_00e996d0
_DAT_00e996d4
_DAT_00e996d8
DAT_00e996dc
DAT_00e996e0
_DAT_00e996e0
_DAT_00e996e2
_DAT_00e996e4
_DAT_00e996e8
_DAT_00e996ec
_DAT_00e996f0
_DAT_00e996f4
_DAT_00e996f6
_DAT_00e996f8
DAT_00e996fc
_DAT_00e996fc
DAT_00e99700
_DAT_00e99700
DAT_00e99704
DAT_00e99708
_DAT_00e99708
DAT_00e9970c
DAT_00e99720
_DAT_00e99724
_DAT_00e99728
_DAT_00e9972c
_DAT_00e99730
_DAT_00e99734
DAT_00e99738
DAT_00e99740
_DAT_00e99740
DAT_00e99750
DAT_00e99754
DAT_00e99758
DAT_00e9975c
DAT_00e99760
_DAT_00e99760
DAT_00e99764
DAT_00e99768
DAT_00e99780
DAT_00e997c0
DAT_00e99868
DAT_00e99c20
DAT_00e99c28
DAT_00e99c40
DAT_00e99ce0
DAT_00e99d80
DAT_00e99e20
DAT_00e99e24
DAT_00e99e28
DAT_00e9a000
DAT_00e9a280
DAT_00e9a3c0
DAT_00e9a3e0
DAT_00e9a3e4
DAT_00e9a3e8
DAT_00e9a400
DAT_00e9a440
DAT_00e9a480
DAT_00e9a488
DAT_00e9a4a0
DAT_00e9a4a4
DAT_00e9a4a8
DAT_00e9a590
DAT_00e9a598
DAT_00e9a5a0
DAT_00e9a5e0
DAT_00e9a640
DAT_00e9a6a0
DAT_00e9a6a1
DAT_00e9a6a2
DAT_00e9a6e0
DAT_00e9a720
DAT_00e9a780
DAT_00e9a7e0
_DAT_00e9a830
DAT_00e9a840
DAT_00e9a8a0
DAT_00e9a8e0
DAT_00e9a920
DAT_00e9a960
DAT_00e9a9b0
DAT_00e9a9b4
DAT_00e9a9b8
DAT_00e9a9c0
DAT_00e9b9c0
DAT_00e9b9c4
DAT_00e9b9c6
_DAT_00e9b9c8
_DAT_00e9b9cc
_DAT_00e9b9d0
_DAT_00e9b9d4
_DAT_00e9b9d8
_DAT_00e9b9dc
_DAT_00e9b9e0
_DAT_00e9b9e4

DAT_00e9b9e8 // mat
DAT_00e9b9ec
DAT_00e9b9f0
DAT_00e9b9f4
DAT_00e9b9f8
DAT_00e9b9fc
DAT_00e9ba00
DAT_00e9ba04
DAT_00e9ba08
DAT_00e9ba0c
DAT_00e9ba10
DAT_00e9ba14
DAT_00e9ba18
DAT_00e9ba1c
DAT_00e9ba20
DAT_00e9ba24 // mat end

_DAT_00e9ba28
_DAT_00e9ba2c
_DAT_00e9ba30
DAT_00e9ba40
DAT_00e9ba44

// FUN_004282f0
// Sprite related, [400] array at max (maybe less ?)
DAT_00e9ba60 // struct start, sizeof() = 0x20 / shot
DAT_00e9ba62 // short
DAT_00e9ba64 // undefined_16
DAT_00e9ba66 // undefined_16
DAT_00e9ba68 // float
DAT_00e9ba6c // float
DAT_00e9ba70 // int
DAT_00e9ba74 // int

DAT_00e9ba78 // byte[4] color
DAT_00e9ba79
DAT_00e9ba7a
DAT_00e9ba7b

DAT_00e9ba7c // struct end // undefined_32
// ...


DAT_00e9d9dc
DAT_00e9ec60
DAT_00e9ed60
DAT_00e9edc0
DAT_00e9f280 // load_platform_abstraction from here, as well as a class
_DAT_00e9f288
_DAT_00e9f290
_DAT_00e9f294
_DAT_00e9f2f0
_DAT_00e9f2f4
_DAT_00e9f2f8
_DAT_00e9f2fc
DAT_00e9f300
_DAT_00e9f350
_DAT_00e9f354
_DAT_00e9f358
_DAT_00e9f35c
DAT_00e9f360
DAT_00e9f364
DAT_00e9f380
_DAT_00e9f3be
DAT_00e9f3c0
DAT_00e9f3c4
_DAT_00e9f402
DAT_00e9f404
DAT_00e9f444
DAT_00e9f448
DAT_00e9f46c
_DAT_00ea0180
DAT_00ea01a0
DAT_00ea0200
DAT_00ea0250
DAT_00ea0260
DAT_00ea02b0
_DAT_00ea02b0
DAT_00ea02b4
DAT_00ea02b8
DAT_00ea02bc
DAT_00ea02c0
DAT_00ea0320
DAT_00ea0360
DAT_00ea03c0
DAT_00ea0420
DAT_00ea0480
DAT_00ea04e0
DAT_00ea05a0
DAT_00ea05a4
DAT_00ea05a8
DAT_00ea05ac
DAT_00ea05b0
DAT_00ea05c0
DAT_00ea05c4
DAT_00ea05c8
DAT_00ea05cc
DAT_00ea0720
DAT_00ea0724
DAT_00ea0728
DAT_00ea072c
DAT_00ea0730
DAT_00ea0734
DAT_00ea0738
DAT_00ea073c
DAT_00ea0740
DAT_00ea0744
DAT_00ea0748
DAT_00ea074c
DAT_00ea0750
DAT_00ea0754
DAT_00ea0758
DAT_00ea075c
DAT_00ec7620
_DAT_00ec7624
DAT_00ec7640
DAT_00ec76a0
DAT_00ec76b0
DAT_00ec76d0
DAT_00ec76d4
DAT_00ec76d8
DAT_00ec7ba0
_DAT_00ec7ba4
DAT_00ec7bbc
_DAT_00ec7bc0
DAT_00ec7bc4
DAT_00ec7bc6
DAT_00ec7bc8 // Players
DAT_00ec7bcc
DAT_00ec7bd0
DAT_00ec7bd4
DAT_00ec7bd8
DAT_00ec7bdc
DAT_00ec7be0
DAT_00ec7be4
DAT_00ec7be8
DAT_00ec7bec
DAT_00ec7bf0
DAT_00ec7bf4
DAT_00ec7bf8
DAT_00ec7c18
DAT_00ec7c1c
DAT_00ec7c20
DAT_00ec7c24
DAT_00ec7c28
DAT_00ec83c8
DAT_00ec83cc
DAT_00ec83d0
DAT_00ec83e0
DAT_00ec83e4
DAT_00ec83e8
DAT_00ec83ec
DAT_00ec83f0
DAT_00ec83f4
DAT_00ec83f8
DAT_00ec83fc
DAT_00ec8400
DAT_00ec8404
_DAT_00ec8404
DAT_00ec8408
_DAT_00ec8410
_DAT_00ec841c
_DAT_00ec8428
_DAT_00ec8434
_DAT_00ec8440
_DAT_00ec844c
_DAT_00ec8458
_DAT_00ec8464
_DAT_00ec8470
_DAT_00ec847c
_DAT_00ec8488
_DAT_00ec8494
_DAT_00ec84a0
_DAT_00ec84ac
_DAT_00ec84b8
_DAT_00ec84c4
_DAT_00ec84cc
DAT_00ec84d0
_DAT_00ec84d4
_DAT_00ec84dc
_DAT_00ec84e8
_DAT_00ec84f4
_DAT_00ec8500
_DAT_00ec850c
_DAT_00ec8518
_DAT_00ec8524
_DAT_00ec8530
_DAT_00ec853c
_DAT_00ec8548
_DAT_00ec8550
_DAT_00ec8554
_DAT_00ec8558

DAT_00ec8564 // float
DAT_00ec8568 // float
DAT_00ec856c // float
_DAT_00ec8570 // float
_DAT_00ec8574
DAT_00ec8578
DAT_00ec857c

DAT_00ec8580
DAT_00ec85c0
DAT_00ec85e8
DAT_00ec85ec // address to something big, math related
DAT_00ec8600
DAT_00ec8604
DAT_00ec8660 // int array

// video.cfg values
DAT_00ec86a0 // ReflectionsEnabled bool
DAT_00ec86a4 // ZEFFECTS bool
DAT_00ec86a8 // DYNAMIC_LIGHTING bool
DAT_00ec86ac // VSYNC bool
DAT_00ec86b0 // LENSFLARE bool
DAT_00ec86b4 // ENGINEEXHAUST bool
DAT_00ec86b8 // TEXTURE_RES (int)
DAT_00ec86bc // MODEL_DETAIL (int)
DAT_00ec86c0 // DRAWDISTANCE (int)
DAT_00ec86c4
DAT_00ec86d0
_DAT_00ec86d0
_DAT_00ec86d4
_DAT_00ec86d8
_DAT_00ec86dc
DAT_00ec86e0
DAT_00ec8700
_DAT_00ec8730
_DAT_00ec8734
_DAT_00ec8738

DAT_00ec8740 // get memset 0 for 0xb iterations on undefined_32 (352 bytes). end at 88a0 ?
DAT_00ec8744
DAT_00ec8748
DAT_00ec874c
DAT_00ec8750
DAT_00ec8754
_DAT_00ec8758
DAT_00ec875c
_DAT_00ec8760
DAT_00ec8764
_DAT_00ec8768
DAT_00ec876c
DAT_00ec8770
DAT_00ec8780
_DAT_00ec8784
DAT_00ec878c

DAT_00ec8790 // inlined undefined_32[3]
DAT_00ec8794
DAT_00ec8798

DAT_00ec879c
DAT_00ec87a0
DAT_00ec87c0
DAT_00ec87c4
_DAT_00ec87c8
_DAT_00ec87cc
_DAT_00ec87d0
_DAT_00ec87d4

DAT_00ec87d8 // inlined undefined_32[3]
_DAT_00ec87d8
_DAT_00ec87dc
_DAT_00ec87e0

_DAT_00ec87f0
_DAT_00ec87f4
_DAT_00ec87f8
DAT_00ec8808
DAT_00ec8810
_DAT_00ec8810
_DAT_00ec8814
_DAT_00ec8818
_DAT_00ec881c
DAT_00ec881e
DAT_00ec8820
DAT_00ec8824
DAT_00ec8830 // throttleInput
DAT_00ec8834
DAT_00ec8838
DAT_00ec883c // pitchInput
_DAT_00ec883c
DAT_00ec8840
_DAT_00ec884c // thrustInput
_DAT_00ec8850 // boostInput
_DAT_00ec8854
_DAT_00ec8864
DAT_00ec887c
DAT_00ec8880
DAT_00ec88a0
_DAT_00ec88ac
_DAT_00ec88b0
_DAT_00ec88c4
DAT_00ec88e0
DAT_00ec89e0
DAT_00ec89e4
DAT_00ec89e8
DAT_00ec8c00
DAT_00ec8c80
DAT_00ec8c82
DAT_00ec8c84
DAT_00ec8ca0
_DAT_00ec8ca4
_DAT_00ec8ca8
DAT_00ec8cac
DAT_00ec8cb0
_DAT_00ec8cb8
_DAT_00ec8cbc
_DAT_00ec8cf8

DAT_00ec8d00 // class
DAT_00ec8d04
_DAT_00ec8d08
DAT_00ec8d0c
DAT_00ec8d10
DAT_00ec8d14 // **code
_DAT_00ec8d18
DAT_00ec8d50
DAT_00ec8d58
DAT_00ec8d5c
DAT_00ec8d60
DAT_00ec8d64
DAT_00ec8d6c
DAT_00ec8d80
DAT_00ec8da0
_DAT_00ec8da4
_DAT_00ec8da8
DAT_00ec8dac
DAT_00ec8db0
_DAT_00ec8db8
_DAT_00ec8dbc
_DAT_00ec8dc0
_DAT_00ec8dc4
_DAT_00ec8dc8
_DAT_00ec8dcc
_DAT_00ec8dd0
_DAT_00ec8dd4
_DAT_00ec8dd8
_DAT_00ec8ddc
_DAT_00ec8de0
_DAT_00ec8de4
_DAT_00ec8de8
_DAT_00ec8df8
DAT_00ec8e00 // class
DAT_00ec8e04
_DAT_00ec8e08
DAT_00ec8e0c
DAT_00ec8e10
DAT_00ec8e14
_DAT_00ec8e18
DAT_00ec8e50
DAT_00ec8e58
DAT_00ec8e5c
DAT_00ec8e60
DAT_00ec8e64
DAT_00ec8e6c
DAT_00ec8e80
DAT_00ec8e84
DAT_00ec8e88

DAT_00ec8e8c // video.cfg string key
DAT_00ec8e90 // video.cfg string value

DAT_00ec9e84
DAT_00ec9ea0
DAT_00ec9ea4
DAT_00ec9ec5
DAT_00ec9fcc
DAT_00eca0e4
DAT_00eca0ec
DAT_00eca0f8
DAT_00eca0fc
DAT_00ecb240
DAT_00ecb484 // vtable (for some inputs ?)
DAT_00ecb494
DAT_00ecb498

DAT_00ecbc20 // char[0x800], store a format string for writting to console -> 00ecc420

DAT_00ecc420 // HostServices*.
DAT_00ecc424
DAT_00ecc428
_DAT_00ecc42c // **code(debug string)
DAT_00ecc430 // +0x10 **code
_DAT_00ecc434
DAT_00ecc438
_DAT_00ecc438 // +0x18 **code(save Game struct, develgnome..., 0x4f) at FUN_00421810 or replaceMapping
DAT_00ecc440 // + 0x20 **code return struct containing float[3]. The first is a prime ?
// + 0x24 **code
// +0x2c **code()
// + 0x30 **code
// + 0x34 **code
// + 0x38 **code
DAT_00ecc464
DAT_00ecc468
DAT_00ecc46c // **code 0xecc420 + 0x4c
DAT_00ecc470
_DAT_00ecc474
DAT_00ecc480
DAT_00ecc48c
_DAT_00ecc490
_DAT_00ecc494
DAT_00ecc49c
DAT_00ecc4a0
_DAT_00ecc4a0
_DAT_00ecc4a4
_DAT_00ecc4a8
_DAT_00ecc4ac
_DAT_00ecc4b0
_DAT_00ecc4b4
_DAT_00ecc4b8
DAT_00ecc4c0
DAT_00ecd4e0
_DAT_00ecd4e4
DAT_00ecd500
DAT_00ecd504
DAT_00ecd600
DAT_00ecd604
DAT_00ecd608
DAT_00ecd60c
_DAT_00ecd60c
DAT_00ecd610
DAT_00ecd614
DAT_00ecd618