У МЕНЯ ПОЛУЧИЛОСЬ ДАМПАНУТЬ ВСЮ ИНФОРМАЦИЮ В ФАЙЛ!!!
https://drive.google.com/file/d/1f33j57 ... sp=sharing
Объявления | ||
---|---|---|
Друзья, если не получается зарегистрироваться, напишите на почту vdv_forever@bk.ru. Я оторву свою задницу от всех дел и обязательно Вас активирую! Добро пожаловать на геройский форум! |
Re: База данных IDA от void17У МЕНЯ ПОЛУЧИЛОСЬ ДАМПАНУТЬ ВСЮ ИНФОРМАЦИЮ В ФАЙЛ!!!
https://drive.google.com/file/d/1f33j57 ... sp=sharing Последний раз редактировалось void_17 17 дек 2021, 16:08, всего редактировалось 1 раз.
|
Re: База данных IDA от void17Круто Но тут символы и методы, а названий полей не видно что-то. Есть ли утилита, которая бы вместе с названиями полей доставала типы?
Зато размеры сразу видны:
Последний раз редактировалось AlexSpl 17 дек 2021, 11:35, всего редактировалось 1 раз.
|
Re: База данных IDA от void17AlexSpl писал(а): Плохо смотрите. Все там есть. Например:
|
Re: База данных IDA от void17А я извлёк спецификацию формата вплоть до NB11:
Цитата: The debug information format encompasses a block of data which goes into the .exe file at a location dependent upon the executable file format. The version of the debug information is specified by a signature that is contained within the debug information. The signature has the format NBxx, where xx is the version number and have the following meanings. NB00 Not supported NB01 Not supported NB02 Linked by a Microsoft LINK, version 5.10, or equivalent OEM linker NB03 Not supported NB04 Not supported NB05 The signature emitted by LINK 5.20 and later linkers for a file before it has been packed. NB06 Not supported. NB07 This signature is used for Quick C for Windows 1.0 only. NB08 The signature CodeView 4.00 through CodeView 4.05 uses for a file after it has been packed. CodeView 4.00 - 4.05 will not process a file that does not have this signature. NB09 The signature for CodeView 4.10 for a file after it has been packed. CodeView 4.10 will not process a file that does not have this signature. NB10 The signature for an executable with the debug information stored in a separate PDB file. Corresponds with the formats set forth in NB09 or NB11. NB11 The signature for Visual C++ 5.0 debug information that has been packed and bonded to the executable. This includes all 32-bit type indices. Это чтобы лучше понимать инфу в дампе. |
Re: База данных IDA от void17Разобрался, как находить типы полей. type_enemy_data я правильно разобрал
Например,
Ищем тип 0x686A:
Это массив размером 320 байт, 320 / 16 = 20 элементов типа Element type 0x59D9. Ага:
Значит, type_AI_enemy_data. И, наконец, получаем поля type_AI_enemy_data:
Последний раз редактировалось AlexSpl 17 дек 2021, 12:03, всего редактировалось 4 раз(а).
|
Re: База данных IDA от void17Как же хочется поблагодарить того, кто выложил дримкаст версию героев. Не то все золото, что блестит. (С)
|
Re: База данных IDA от void17Теперь хотелось бы выяснить, какие типы использовать. long (12) или всё же привычный int? uchar(20) или привычный bool? Нужно сразу решить, чтобы потом не было путаницы. Интересно, программеры NWC реально заморачивались с long и int, которые в 32-х разрядах одно и то же, или это причуды компилятора?
Всё-таки считаю, что нужно оставлять такие, как в дампе. Т.е. если int, пишем int, а если long, то long. Последний раз редактировалось AlexSpl 17 дек 2021, 12:18, всего редактировалось 1 раз.
|
Re: База данных IDA от void17AlexSpl писал(а): Я тоже задавался этим вопросом при изучении дримкаст базы. Я вот что понял. sizeof(long) = sizeof(int) в 32-битной Windows. НО! Разделение NWC делали для себя, чтобы было понятнее. Хоть они имеют один размер, но по задумке те или иные поля или параметры хранят по задумке б0льшие числа в long и меньшие в int. |
Re: База данных IDA от void17Цитата: У меня есть ещё гипотеза о том, что int, по привычке, считали 16-рязрядным, а long в те времена был тру 32-разрядный. Программисты, я думаю, начинали тогда с 16-разрядного кода. А ещё, вполне возможно, писали с запасом, что было модно. Т.е. думали, вот скоро (рукой подать) станет архитектура 64-разрядной и будет long аж 8 байтов Надо будет в плагине типы в порядок привести |
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2