Перейти к содержанию

Нужна помощь по переброске исходников и компиляция...


Рекомендуемые сообщения

Все привет хакерам и прогерамм!

Опишу коротко что нужно...

И так...есть два исходника эмуля Gens 2.14 и Gens v2.11 + ATM v1.181 full

Нужно взять данные отладчика М68000 + сканер адресов с версии 2.11 и перекинуть в 2.14 и откомпилировать проект по возможности.

Необходима среда разработки не ниже Microsoft Visual Studio 2003

Есть желающие помочь?

Ссылка на комментарий
Поделиться на другие сайты

Я так понимаю надо что-то из старого проекта в новый перенести? А почему они тогда эти штуки выпилили в новом? Неспроста ведь.

И почему сам не можешь?) Студии под рукой нет?

Ссылка на комментарий
Поделиться на другие сайты

5 часов назад, uhx сказал:

Я так понимаю надо что-то из старого проекта в новый перенести?

Угу.

 

5 часов назад, uhx сказал:

А почему они тогда эти штуки выпилили в новом?

В официальных версиях независимо старое или новое, там не было никогда отладки и сканера для геймхака...

Отладка и сканер добавил уже другой сторонний чел. с другого эмулятора... вот только жаль что он на старую версию сделал.

 

5 часов назад, uhx сказал:

И почему сам не можешь?) Студии под рукой нет?

Студия есть...вот каким образом всё это переносить!?... даже просто исходники откомпилить не могу, ошибку выдаёт,

а исправив одну ошибку, вылазит другая и т.д. такая вот шняга.

Ссылка на комментарий
Поделиться на другие сайты

1 час назад, krocki сказал:

даже просто исходники откомпилить не могу, ошибку выдаёт,

а исправив одну ошибку, вылазит другая и т.д. такая вот шняга

боже, чувак, это настолько знакомо, что ты даже не представляешь))

 

это все из за разницы версий. По сути, код писался очень давно и тут просто разница в соглашениях. Например, тут есть ошибка с присвоением const char* к char*, я так понимаю раньше на такое компилятор даже не ругался, а щас ... Плюс еще какие-то зависимости, которых у меня нет.

Изменено пользователем uhx
Ссылка на комментарий
Поделиться на другие сайты

Короче в чем соль. Надо ставить старый DirectX SDK, который поддерживает те функции. Я сейчас повозился часок со всем этим, дошел до ошибки

1>g_dinput.obj : error LNK2019: unresolved external symbol _DirectInputCreateA@16 referenced in function "int __cdecl Init_Input(struct HINSTANCE__ *,struct HWND__ *)" (?Init_Input@@YAHPAUHINSTANCE__@@PAUHWND__@@@Z)

Но тут уже надо, похоже, ставить старый dinput.lib, а не dinput8.lib который в последних SDK. Я так понимаю в нем уже нет нужных функций старых. Либо просто докачать старые либы и запихнуть к SDK

Ссылка на комментарий
Поделиться на другие сайты

А, лол, все.

========== Build: 1 succeeded, 0 failed, 0 up-to-date, 0 skipped ==========

Докачал просто с какого-то гитхаба отдельно этот файлик и скомпилило. Ща поясню за всё, надеюсь из старого проекта что нужно ты уж сам перенесешь)

Ссылка на комментарий
Поделиться на другие сайты

В общем, как я фиксил Gens 2.14

Открыл проект, пофиксил ошибку в genie.cpp на 176 строчке (const char* to char*)

if(!(x = (char*) strchr(code, ':'))) goto bad_code;

Изменил макрос в kaileraclient.h

#define DLLEXP __declspec(dllimport) WINAPI

на

#define DLLEXP __declspec(dllimport) int WINAPI

А то ругается на него, мол, не определен тип, давай указывай. Переключил проект на Release.

В свойствах проекта добавляю в VC++ Directories нужные пути до моего DirectX SDK (2010 June). На всякий случай:

Executable directories: C:\Program Files %28x86%29\Microsoft DirectX SDK %28June 2010%29\Utilities\bin\x86;$(VCInstallDir)bin;$(WindowsSDK_ExecutablePath_x86);$(VSInstallDir)Common7\Tools\bin;$(VSInstallDir)Common7\tools;$(VSInstallDir)Common7\ide;$(ProgramFiles)\HTML Help Workshop;$(MSBuildToolsPath32);$(VSInstallDir);$(SystemRoot)\SysWow64;$(FxCopDir);$(PATH);
Include directories: C:\Program Files %28x86%29\Microsoft DirectX SDK %28June 2010%29\Include;$(VCInstallDir)include;$(VCInstallDir)atlmfc\include;$(WindowsSDK_IncludePath);
Library directories: C:\Program Files %28x86%29\Microsoft DirectX SDK %28June 2010%29\Lib\x86;C:\Program Files %28x86%29\Microsoft DirectX SDK %28June 2010%29\Lib\x64;$(VCInstallDir)lib;$(VCInstallDir)atlmfc\lib;$(WindowsSDK_LibraryPath_x86);

С этим ясно. Теперь компилю опять и вижу ошибку:

LINK : fatal error LNK1181: cannot open input file 'dinput.lib'

Окей, крутяк. Ищем нужный файл на просторах интернета, тык. Ну или переписываем код под библиотеку dinput8.lib, что конечно более геморно))

Добавляем этот файлик к нашему SDK, а точнее сюда:

C:\Program Files (x86)\Microsoft DirectX SDK (June 2010)\Lib\x86

> Build

LINK : fatal error LNK1104: cannot open file 'LIBC.lib'

А это уже серьезнее. Ругается на недоступность C RunTime library, которая содержит основной костяк Сишных функций ( printf, malloc/free ... )

В наше время от нее уже успели отказаться в пользу msvcrt, поэтому придется ее переключить...

Так как все опции находятся в Makefile, то приходится лезть в него.

Хмм... долго думал и копался, не придумал ничего лучше как просто заигнорить ее :D

27 строчка Makefile

LINK_FLAGS=/NODEFAULTLIB:"LIBC.lib"

> Build

========== Build: 1 succeeded, 0 failed, 0 up-to-date, 0 skipped ==========

Удачи ;)

Изменено пользователем uhx
Ссылка на комментарий
Поделиться на другие сайты

1 час назад, krocki сказал:

ОК...спасибки, позже у себя попробую по юзать...кстати на какой студии юзал?

Компилил в MVS2012, но какая разница? Здесь всё равно все опции для построения вынесены в Makefile, по сути сам Solution ничего не содержит.

А библиотеки (и уж тем более компилятор) везде одинаковые 

Изменено пользователем uhx
  • Плюс 1
Ссылка на комментарий
Поделиться на другие сайты

×
×
  • Создать...

Важная информация

Находясь на нашем сайте, Вы автоматически соглашаетесь соблюдать наши Условия использования.