helios2000
Guest
|
|
Re: TEAM x WE NEED YOU! Samij Waschnij Mod dlja Fallout 2
« Reply #15 on: 25 April 2008, 22:46:57 » |
|
//----- (004C7E6C) -------------------------------------------------------- int __stdcall sub_4C7E6C(double a1) { int v1; // ecx@2 int v2; // edx@6 int v14; // eax@6 int v15; // [sp+Ch] [bp-4h]@1 __int64 v16; // [sp+4h] [bp-Ch]@2 int v17; // [sp+0h] [bp-10h]@6
dbl_51DF18 = a1; v15 = 0; do { __asm { fld ds:dbl_51DF18 fild [esp+10h+var_4] } IF(); __asm { fst [esp+10h+var_C] fcomp ds:dbl_50F97C fnstsw ax sahf } if ( !(_CF | _ZF) ) { *((_DWORD *)&v16 + 1) = v1; *(_DWORD *)&v16 = 0; } __asm { fldz fcomp [esp+10h+var_C] fnstsw ax sahf } if ( !(_CF | _ZF) ) v16 = 0i64; __asm { fld [esp+10h+var_C] } _CHP(); __asm { fistp [esp+10h+var_10] } v2 = v15; byte_673390[v15] = v17; v14 = v15++ + 1; } while ( v14 < 64 ); return sub_4C73E4((int)byte_673090, v2); }
My Programm can embed headers. I believe it is possible to convert correctly. The headers we need: e:\WATCOM\H\string.h e:\WATCOM\H\stdlib.h e:\WATCOM\H\stdarg.h e:\WATCOM\H\ctype.h e:\WATCOM\H\NT\wtypes e:\WATCOM\H\NT\winver.h e:\WATCOM\H\NT\winuser.h e:\WATCOM\H\NT\winsvc.h e:\WATCOM\H\NT\winspool.h e:\WATCOM\H\NT\winsock.h e:\WATCOM\H\NT\winreg.h e:\WATCOM\H\NT\winperf.h e:\WATCOM\H\NT\winnt.h e:\WATCOM\H\NT\winnls.h e:\WATCOM\H\NT\winnetwk.h e:\WATCOM\H\NT\wingdi.h e:\WATCOM\H\NT\winerror.h e:\WATCOM\H\NT\windows.h e:\WATCOM\H\NT\windef.h e:\WATCOM\H\NT\wincon.h e:\WATCOM\H\NT\winbase.h e:\WATCOM\H\NT\unknwn.h e:\WATCOM\H\NT\shellapi.h e:\WATCOM\H\NT\rpcnterr.h e:\WATCOM\H\NT\rpcnsip.h e:\WATCOM\H\NT\rpcnsi.h e:\WATCOM\H\NT\rpcndr.h. end else. I do not say that I have the correct code. I ask whether you can start so what. Why are you so hostile?
|
|
|
|
Ray
Глобальный модератор
Posts: 220
|
|
Re: TEAM x WE NEED YOU! Samij Waschnij Mod dlja Fallout 2
« Reply #16 on: 25 April 2008, 23:05:02 » |
|
We don't Sorry if it seems like Look at your code. We already saw something like that a long time ago. Your code is unusable. You can't write any modiffications with it. P.S. Я думаю привидённый выше пример яркое тому доказательство. Что и требовалось доказать.
|
|
|
|
helios2000
Guest
|
|
Re: TEAM x WE NEED YOU! Samij Waschnij Mod dlja Fallout 2
« Reply #17 on: 25 April 2008, 23:15:19 » |
|
Ok. Shame. But I have use first Rec Studi. I think Ide Pro with Hex Aray Plugin is better. At your place I would look at this Prog. Maybe you get it is still out. No headers are available?
|
|
|
|
Mr.Wolna
Пользователь
Posts: 16
|
|
Re: TEAM x WE NEED YOU! Samij Waschnij Mod dlja Fallout 2
« Reply #18 on: 25 April 2008, 23:22:14 » |
|
Neuschelji ne4jo newijdet btw: Ja ozen 4nju waschu rabotju rebjata. Ja nekatoroje wremja tamju ma3ad pisal wam na Milo no nepalu4jil otwetja moschna mne atkritj nowij topic,? u menja jest parju waprosow k mr fixitju!
|
|
|
|
Jordan
Пользователь
Posts: 416
|
|
Re: Декомпиляция движка
« Reply #19 on: 18 August 2008, 07:14:22 » |
|
helios2000
News about project?
download source code fallout2.exe?
|
Воспрянет Россия, из праха отцов Расправятся крылья, миллионов сердец Поднимут все головы и грудью вздохнут И громка скажут, что пришли Мы пришли, со столетней войны
|
|
|
Mynah
Модератор
Posts: 29
|
|
Re: Декомпиляция движка
« Reply #20 on: 18 August 2008, 09:01:00 » |
|
Jordan, А какие у них могут быть новости? :) В теме ж вроде ясно написано. Ребята нашли "декомпилятор си", радостно запихнули в него exe'шник фола, тот им выдал... Эмм... Как бы назвать этот набор команд ассемблера оформленных синтаксисом си... В общем, штука получилась крайне бесполезная и неудобная. Вдобавок, зачем-то просят стандартные хэдеры виндовые, которые свободно валяются в инете - бери не хочу. Но наши великие программисты об этом не очень знают ;)
И, да, вот такое вот выкапывание бесполезной темы 4-х месячной давности - не есть хорошо. Учти, на всякий.
|
|
|
|
|
Ray
Глобальный модератор
Posts: 220
|
|
Re: Декомпиляция движка
« Reply #22 on: 11 September 2011, 11:24:39 » |
|
Думаю что это бесполезное занятие, без обид Поясню мысль... Я в соседней (относительно) теме упоминал когда-то, что работаю над одним проектом (ныне мной успешно закрытым ). Идея была в том, что я вставил в движёк вызов собственной библиотеки и потихоньку переписывал код движка своим, на си. Который даже работал... пока дело касалось простых функций вроде main, WindowProcedure, Init и прочего. Но потом я понял что дальше тупик. Согласовывать значение регистров, с учётом что компилятор может оптимизировать код и в итоге получать жуткую кашу... Это адский труд. Даже если сказать ему ничего не трогать... Всё равно - это занятие не благодарное - переписать простые функции можно, но смысл? Сложные переделать не получится, т.к. там всё настолько сложно завязано, что... Вобщем словами не передать А для "простых" вставок и возможностей sfall хватит с головой. Проще написать двиг с нуля, чем серьёзно переделать этот, сколь банально это б не звучало. Поверь, не трать время зря. У меня опыта поболее чем на 40кб Если решишь продолжить - ты видел линк на декомпилированный мной двиг в псевдокод с помощью REC с моими комментариями? Возможно пригодится - там есть что почитать Делать точечные правки можно в принципе, что опыт Timeslip и мой, а также наших коллег доказывает. Но не более. P.S. По началу эти перспективы действительно выглядят радужно, у меня тоже всё вначале получалось А дальше это болото
|
|
|
|
Hexxx
Пользователь
Posts: 3
|
|
Re: Декомпиляция движка
« Reply #23 on: 11 September 2011, 13:32:04 » |
|
У меня опыта поболее чем на 40кб Ну начинается... Проще написать двиг с нуля, чем серьёзно переделать этот Знаете почему заказывают декомпиляцию прошивок дорогих игровых автоматов, вместо того чтобы у китайцев заказать "клон" написаный с нуля? Если решишь продолжить - ты видел линк на декомпилированный мной двиг в псевдокод с помощью REC с моими комментариями Неа, когда-то пробовал гуглить, не нашел. Можно урл?
|
|
|
|
Ray
Глобальный модератор
Posts: 220
|
|
Re: Декомпиляция движка
« Reply #24 on: 11 September 2011, 15:16:07 » |
|
Ну начинается... Заканчивается Я это написал не для того, чтобы самолюбие потешить, вообще-то. Я ковырянием конкретно этого экзешника занимался 6 лет и знаю его не хуже Timeslip. Это если не вдаваться в кокретные навыки программирования и реверс-инженеринга. Это просто был совет обратить внимание на слова человека который "в теме". И не жалеть в дальнейшем о потеряном времени. Я прекрасно осведомлён насчёт второй фразы - я тоже долго думал прежде, чем начать переписывать двиг. Однако работа себя не опровдала. Посмотреть некоторые схемы реализации этого двига, чтобы создать свой - куда ни шло... А биться головой в стену хитросплетений ассемблерного кода... Для чего? Воссоздать в точности графическую подсистему? А стоит ли, если её всё равно надо менять хотя бы на поддержу 24 бит цветов. Просто цена затраченых усилий несоизмерима с полученным результатом. И уверен будут возникать такие баги, на отладку которых уйдёт весь энтузиазм. Причём багов подхода в целом, а не программирования в часности. Я верю в твою квалификацию, раз уж ты этим уже занимаешься - но задумайся, стоит ли? На самом то деле двиг фолла довольно прост. Всё уже давно задокументировано. Есть заморочки с некоторыми расчётами, но на НМА народ уже давно лопатит это направление и есть патчи для sfall. Так что в принципе как мне кажется - просто серьёзно никто за это дело не брался. А те кто брались или не имели время\мотивацию\квалификацию. Я не призываю писать свой двиг. Это не веселее чем ковырять существующий и для этого надо море времени. Но всё же это более реально. Хотя если есть конкретные вопросы - можешь говорить смещения в двиге - может что вспомню "по старой памяти", учитывая что некоторые наработки у меня всё же остались P.S. Сайт где дока была выложена давно умер, а сама дока осталась дома, в другой стране. Поеду в гости - постараюсь не забыть захватить P.P.S Не принимай мои слова близко к сердцу - это "тимыксовый синдром" Просто ты спросил мнения - я тебе ответил Особенно учитывая объём работ и постановку вопроса.
|
|
|
|
Wasteland Ghost
Администратор
Posts: 869
Маленькое Злое Привидение
|
|
Re: Декомпиляция движка
« Reply #25 on: 11 September 2011, 17:04:54 » |
|
Ну начинается...
Просить мнения знающих людей и тут же ставить их знания под сомнение — нелогично. А знающий человек тут как раз Ray.
|
|
|
|
Hexxx
Пользователь
Posts: 3
|
|
Re: Декомпиляция движка
« Reply #26 on: 11 September 2011, 18:37:56 » |
|
Хотя если есть конкретные вопросы - можешь говорить смещения в двиге - может что вспомню "по старой памяти" Ссылку на "декомпилированный мной двиг в псевдокод с помощью REC" можно? Или вот это как раз про нее и было: P.S. Сайт где дока была выложена давно умер, а сама дока осталась дома, в другой стране. Поеду в гости - постараюсь не забыть захватить ? Просить мнения знающих людей и тут же ставить их знания под сомнение — нелогично. А знающий человек тут как раз Ray. Т.е. ставить мое мнение под сомнение - логично. И логично по-умолчанию меня записать в незнающие.
|
|
« Last Edit: 11 September 2011, 18:56:44 by Hexxx »
|
|
|
|
|
Freeman
Пользователь
Posts: 50
|
|
Re: Декомпиляция движка
« Reply #27 on: 11 September 2011, 19:04:07 » |
|
|
|
|
|
Ray
Глобальный модератор
Posts: 220
|
|
Re: Декомпиляция движка
« Reply #28 on: 11 September 2011, 19:53:29 » |
|
Т.е. ставить мое мнение под сомнение - логично. И логично по-умолчанию меня записать в незнающие. Бррр... Где ты это усмотрел то? Я наоборот высказался чётко насчёт квалификации. Не надо всё воспринимать так категорично. Просто твой вопрос был в духе всех новичков - я вот тут собрался замутить "глобальный мод\новый двиг\новую игру", что думаете? Пусть и прозвучавший в другом контексте. Именно это я в шутку назвал синдромом тимы Не принимай на свой счёт Я вот что сказать хочу. Если ты задал вопрос - "что думаете?" то я ж надеюсь ты не расчитывал получить ответ в духе - "вау, круто, молодец, вот мне бы так..."? Если тебя действительно интересовал ответ - то я думаю тебе интересны ответы по существу. А опыт у меня поверь большой. И что самое важное - я делал именно ту же работу, что и ты начал и я в курсе объёма работ. И я логично предположил, что используя свой опыт я вполне могу давать подобные советы. Более того, если внимательно читать - я даже помощь предложил. И ещё - я не знаю, сколь старая версия выложена Freeman'ом, но в личку я спросил у тебя мыло и готов слить доступный мне в данный момент последний вариант (новее только через пару месяцев так как он остался в другой стране, как я уже говорил, и отпуск у меня только через месяц). Я ни в коем случае не умоляю твоих заслуг, но поверь - 40кб это самое начало и капля в море. "Дальше будет хуже" Ты хотел совет - ты его получил. А как им распорядиться - твоё дело. Перенести код из sfall в то, что делаешь ты - это не тоже, что переписать обработку кнопок с нуля скажем. Я коммитил в код sfall и в курсе что и как там сделано. P.S. И вообще - дай хоть посмотреть на работу Интересно ж блин P.P.S Вот так и складываются стереотипы - пришёл человек, делает полезное дело - пришли старожили и накинулись... К сожалению не все через некоторое время понимают, что мы хотели как лучше...
|
|
|
|
Ray
Глобальный модератор
Posts: 220
|
|
Re: Декомпиляция движка
« Reply #29 on: 11 September 2011, 19:56:58 » |
|
Линк Freeman'а ведёт на какую-то совсем древнюю доку помоему. Вроде эта слегка новее P.S. И вообще - это даже не дока. Это скорее путевые заметки Которые я набрасывал в течении некоторого времени "для себя". Без орфографии, корректности слов и фраз и прочая, прочая... Иногда на ходу... Информация кое-где вообще может быть не точной. Этот текст не предназначался в public. Залил я его просто так, чтобы не пропал P.P.S. Искать в документе символы // Все мои комментарии начинаются с них
|
|
« Last Edit: 11 September 2011, 20:04:47 by Ray »
|
|
|
|
|
|