-
Так понимаю, что скорость выполнения большинства програм тестно связана с gettickcount. Собственно нужно как-то установить hook на эту функцию и давать программе тоже значение умноженное на 2. Подскажите, как это сделать?
В голову приходит: 1. Получить ID процесса 2. Функция умножения значения getTickCount результатом dword 3. SetWindowHookEx 4. Радуемся ускорению.
Вопрос - как это реализовать, моих знаний, к сожалению, хватает только на приблизительное представление принципа работы данного алогоритма. Заранее спасибо.
-
Умножаем на 2 - это снижение, а не ускорение. Такая программа относится ко вредоносному коду.
-
> 4. Радуемся ускорению. больше глюкам чем ускорению... ну к примеру есть у меня таймаут на запрос от сервера... в среднем запрос делается за 6-7 сек, таймаут поставлен 10сек. секунды в компонентах определяются действительно от gettickcount ... дальше объяснять?
> моих знаний, к сожалению и слава Гейтцу великому и ужасному! (кому молится чтобы и дальше так оставалось?...)
-
> Василий21 (25.01.11 09:51) > скорость выполнения большинства програм тестно связана с gettickcount http://www.realcoding.net/articles/funktsiya-gettickcount.htmlОписание: function GetTickCount: Longint; Считывает вpемя, пpошедшее с момента запуска системы.И при чем тут скорость выполнения большинства программ?
-
ну хорошо, раз мой ход мышления вас не радует, то переформулирую вопрос. Вот допустим есть игрушка, в ней задержки поставили... как их ускорить? ну знаете, типа mud и всяких там квестов старых
-
что значит "вас не радует", он верный что-ли? и что это за хитрые mud игры которые ускорять надо? ты решил читерством занятся?
-
> [4] Василий21 (25.01.11 21:55)
пропатчить константы, в которых храянтся задержки в одном конкретном экзешнике да и все.
-
Прикольно, современные дебилки даже в игрушки поиграть не в состоянии...
-
-
где-то есть информация о частоте процессора и объеме памяти. считать, умножить на 10, продублировать запись о процессоре. тихо радоваться многоядерности, многотерагерцовости и дохренозувости
-
Я не знаю, что конкретно имеет в виду автор, но игры, в которых задержки делались посредством for i:=0 to magicvalue do; с ростом тактовых частот действительно становились несколько неадекватными :-) Подозреваю, что в DosBox найдется что-нибудь против таких торопыг.
-
> Virgo_Style © (25.01.11 23:27) [10] > > Я не знаю, что конкретно имеет в виду автор, но игры, в > которых задержки делались посредством > > for i:=0 to magicvalue do; > > с ростом тактовых частот действительно становились несколько > неадекватными :-) > > Подозреваю, что в DosBox найдется что-нибудь против таких > торопыг. >
> Василий21 (25.01.11 21:55) [4] > > ну хорошо, раз мой ход мышления вас не радует, то переформулирую > вопрос. Вот допустим есть игрушка, в ней задержки поставили. > .. как их ускорить? ну знаете, типа mud и всяких там квестов > старых
Тут ведь "дикий" вопрос "Как их ускорить"? Зачем такое понадобилось?
-
> что-нибудь против таких торопыг. так он вроде "тормозов" ускорять хочет, а не "торопыг" замедлять.
кстати насчет "торопыг", старых прог которые из-за скорости работы на новых компах вываливались с ошибкой... реальная проблема была (была у нас прога под дос написанная на паскале... уже везде XP а у нас dos... нда). приходилось "программки замедлялки" использовать.
-
> приходилось "программки замедлялки" использовать.
а я приоритет снижал, а кому-то, параллельно запущенному, рилтайм ставил
автор имеет ввиду игры аля Марьяж(преферанс) под DOS Там, действительно, так и было сделано. По таймеру думала программа.
Когда я таймер компа ускорил (загрузил число какое-то куда-то, не помню сейчас), таймер во всех программах полетел тикать, как бешеный.. Командир Нортон, например, в углу у себя, там где часы у него были, час за пару минут отсчитывал :)
так вот, и Марьяж стал играть "нормально". А не думал по 30 сек над ходом. Причем на силе игры особо это не сказалось. А на нервах - вполне.
Вот автор видимо что-то такое и имеет ввиду.
Но, мне это не надо было никогда под win. потому ничего не скажу. Под вин Марьяж играет нормально, не размышляет по минуте :)
-
точно, там управляющее слово было, 65535 если (при перезагрузке встает именно оно) - то таймер идет как надо. в два раза меньше загрузишь - в два раза быстрее пойдет. 2000 ставишь - и нормально а меньше если - "часы превращаются в винтилятор" словом, http://www.google.rutimer dos управляющее слово 65535
-
По-сути, пример с Марьяжем очень близок к сути. Необходимо именно ускорить процесс, если бы мне нужно было читерство в обычных игрушках - я бы воспользовался одним из тысяч доступных спидхаков, к которым даже есть исходники. Но это не то.
|