-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathstructures.ini
108 lines (98 loc) · 3.4 KB
/
structures.ini
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
typedef signed char i8;
typedef unsigned char u8;
typedef signed short i16;
typedef unsigned short u16;
typedef signed int i32;
typedef unsigned int u32;
typedef signed int64 i64;
typedef unsigned int64 u64;
struct BITMAPFILEHEADER
{
char bfType[2];
unsigned long bfSize;
unsigned short bfReserved1;
unsigned short bfReserved2;
unsigned long bwOffBits (abs_pointer);
};
struct BITMAPINFOHEADER
{
unsigned long biSize;
long biWidth;
long biHeight;
unsigned short biPlanes;
unsigned short biBitCount;
unsigned long biCompression;
unsigned long biSizeImage;
long biXPelsPerMeter;
long biYPelsPerMeter;
unsigned long biClrUsed;
unsigned long biClrImportant;
};
struct RGBQUAD
{
unsigned char rgbBlue (bin);
unsigned char rgbGreen (base 10);
unsigned char rgbRed (base hex);
unsigned char rgbReserved;
};
struct wxString
{
int nRefs;
unsigned int nDataLength;
unsigned int nAllocLength;
char data[nDataLength];
};
struct ABMFileHeader
{
unsigned short signature;
unsigned short version;
char comment[60];
unsigned long first_entry (abs_pointer);
unsigned long start_address (hex);
};
typedef unsigned short USHORT;
typedef unsigned long ULONG;
typedef unsigned char BYTE;
typedef int64 __int64; //! stupid
struct SVMFileHeader // 192 bytes
{
USHORT signature (hex); // the file signature = 0x96A3
USHORT version (hex); // version of the file format
CHAR comment[60]; // embedded file comment
ULONG firstentry (abs_pointer hex); // file offset of first MemEntry
ULONG startaddress (hex); // vector memory starting address
BYTE colmask[12]; // bitmask to indicate which columns are
// used in parallel vector words
// 1 = not used
BYTE defaultfmt[96]; // default format for signals not used in the file
USHORT scanmode; // width of scan chain = 2, 4, 8, 16, 32, or 64
USHORT scansigs; // number of scan signals actually used
USHORT scanproto (hex); // scan data word prototype: timing, sync CS
BYTE reserved[6]; // reserved
};
struct SVMDataHeader // 48 bytes
{
CHAR memory[8]; // memory to load (VECTOR, REP_RATE, etc.)
SHORT column; // = zero
SHORT datatype; // parallel data:
// 0 = normal, 1 = column map, 2 = compressed?
// scan data:
// 0=use SCAN opcode for all words,
// 1=use RSCN opcode for last word,
// 2=compressed?
ULONG startaddr (hex); // starting memory address (row)
__int64 databytes; // number of bytes in this block (including header? No)
ULONG datawords; // number of data rows to load
ULONG scanrem; // for scan data, the number of tester cycles in the last word
// ignored for parallel data
__int64 dataoffset (abs_pointer hex); // file offset of data block
__int64 nextentry (abs_pointer hex); // file offset of next MemEntry
};
struct PartitionTableEntry {
u8 ActiveFlag;
u8 StartingCHS[3];
u8 Type;
u8 EndingCHS[3];
u32 StartingLBA;
u32 Sectors;
};