LINUX.ORG.RU
ФорумTalks

[wine][ЖЖ][Негодую!] Обратная разработка. Это правда так сложно?

 ,


0

0

Вот интересно. У меня есть несколько любимых игр, без которых (увы!) и жить не хочется. Нет, я конечно утрирую. Ну так вот почти все они сделаны для Windows 98.

Так вот в чём прикол: на разных вайнах ~0.9.30-0.9.50 они запускаются почти все.

С ростом версии наблюдаем такую тенденцию:

- Стали работать:
Нормально: Silent Hill 2-3
Абы как, короче, сойдет: Half-Life 2, ep1

- Перестали работать:

Shivers, Might and Magic VIII, Warcraft III (хотя многие со мной не согласятся, но я думаю, это дело случая), Riven (точнее, он стал очень часто падать), Might and Magic VI, VII (в обоих играх отвалилась музыка), System Shock II (работает ничего так, но вылетает каждые 30 минут, причем пришлось долго шаманить при запуске)

Сегодня пытался запустить Planescape:Torment. Wine 1.2 закидал сообщениями типа:

err:gdi:alloc_gdi_handle out of GDI object handles, expect a crash

(Привожу просто для полноты описания), wine 1.1.x показывает красный крестик и кнопку ok. Старые версии работали отлично (с тех пор в системе ничего не менял)

С этого момента я уже начинаю сомневаться в пользе этого проекта.

Вот как думаете вы, уважаемые форумчане, за сколько лет можно сделать качественный not emulator (то есть альтернативную реализацию Windows API, как написано в википедии) для отдельно взятой версии Windows (скажем Windows 98)?

Будет ли вайн когда либо работать нормально для отдельно взятой (любой) версии windows?

Да, запускал на Debian sid.

Дело в том, что если сделать качественный нот-эмулятор, например, вин2000, то всякое ГНУ можно будет выкидывать чуть менее, чем полностью.

Но вряд ли это достижимо.

thesis ★★★★★
()

А на новых Вендах эти игры запускаются? У меня была проблема что на Win98 Air Fix шел нормально, а на XP не работал. Может это фичи не вайна, а сами знаете кого.

urxvt ★★★★★
()
Ответ на: комментарий от thesis

то всякое ГНУ можно будет выкидывать чуть менее, чем полностью.

Слова истинного вантузятника.

Eddy_Em ☆☆☆☆☆
()

Качественный not emulator можно будет сделать, когда МС выложит исходники венды. То есть никогда.

stevejobs ★★★★☆
()
Ответ на: комментарий от urxvt

Ну с MM8 могут быть проблемы. Причем мне нравилось, типа под вендой не идет, а под вайном идет). А так да идут. Многие идут, скажем под XP, а под вайном - нет

different_thing
() автор топика
Ответ на: комментарий от AITap

На appdb полный расброс ситуаций: у кого «всё за***сь», у кого «надо крутить то-сё», у кого «нифига не работает». У того же тормента рейтинги от Garbage до Gold. Тут похоже дело случая

different_thing
() автор топика
Ответ на: комментарий от thunar

>глюкодром похуже арча и отсутсвие драйверов.

надо же, как тонко.

evoken
()
Ответ на: комментарий от different_thing

> 1-2 багрепорта не изменят общей тенденции, ты не думаешь?

Общей тенденции ныть и не слать багрепортов?

Я думаю, что общая тенденция изменится, если каждый из нас внесет в общее дело свою небольшую лепту.

Используешь чужой труд - плати за него. Плати хотя бы багрепортами, если не можешь предложить код/donations/локализацию.

Manhunt ★★★★★
()
Ответ на: комментарий от Manhunt

> Я думаю, что общая тенденция изменится, если каждый из нас внесет в общее дело свою небольшую лепту.

Ты первый, ага? Тем более, что на странице в appdb, посвященной программе обо всём написано.

Используешь чужой труд - плати за него

Практика показывает, что никто никому ничего не должен.

А тред я завел, не чтобы поныть, а чтобы понять, руки у разрабов из жопы, или это действительно невозможно - создать что-то типа wine, но качественное.

different_thing
() автор топика
Ответ на: комментарий от evoken

>Когда они там NFS Porsche Unleashed сделают? Оченно не хватает.
+++

xorik ★★★★★
()
Ответ на: комментарий от stevejobs

>Качественный not emulator можно будет сделать, когда МС выложит исходники венды. То есть никогда.

ну да, т.е. триста мегабайт исходников винды 2k мне приснились? лет 6-7 назад по всем файлообменникам валялись, я из них mspaint выдирал девочке знакомой для курсача :)

leave ★★★★★
()

Если бы поведение всех функций WinAPI совпадало с тем что написано в справке MSDN, то not emulator давно бы дописали.

PolarFox ★★★★★
()
Ответ на: комментарий от PolarFox

WinAPI

теперь кроме собсна WinAPI нужно иметь еще и полностью совместимую реализацию .NET, плюс все плюшки виндовской системы которые поверх винапи. Ну и нормальный DirectX 11, - сейчас вайн что там понмиает, восьмерку лол?

stevejobs ★★★★☆
()

С ростом версии наблюдаем такую тенденцию

Давно сижу на Windows. С ростом версии наблюдаю такую тенденцию:

Стали работать:

Современные игры

Перестали работать:

Всякое старье.


Приходится извращаться, запускать через dosbox'ы, virtualbox'ы и прочие эмуляторы.

Вывод:

Wine старается идти в ногу со временем :)

zgen ★★★★★
()
Ответ на: комментарий от stevejobs

К черту .NET и DirectX 11.

Пусть хотя бы на уровне 98, ну XP сделают, если легче

different_thing
() автор топика
Ответ на: комментарий от zgen

Кто ж виноват, что новые игры - УГ?)

А вообще нереально сделать API постоянно выпускающихся новых версий. Надо 1 выбрать и пилить её, ИМХО. Не важно, сколько лет уйдет, главное не будет такого, что 1 баг починили, 10 других добавили.

different_thing
() автор топика
Ответ на: комментарий от stevejobs

> Ну и нормальный DirectX 11, - сейчас вайн что там понмиает, восьмерку лол?

Девятку вполне себе на должном уровне, второй халфик епизоде 2 со всеми перделками в режиме девятого икса не хуже чем в винде.

PolarFox ★★★★★
()
Ответ на: комментарий от different_thing

>А тред я завел, не чтобы поныть, а чтобы понять, руки у разрабов из жопы, или это действительно невозможно - создать что-то типа wine, но качественное.
Возможно. Но они специально не делают, чтобы тебя побесить

iceberk
()
Ответ на: комментарий от different_thing

> Ты первый, ага?

Я уже давно.

Практика показывает, что никто никому ничего не должен.


В данном случае это в первую очередь твой профит - чтобы твои игрульки заработали.

Manhunt ★★★★★
()

это называется обратной совместимостью, её в винде криво-косо, но соблюдают. В вине такого нет :( видимо, изначально игруля работала через какието недокументированные фишки определенной версии виндов, вино на это либо закрывал глаза, либо просто не знал об этом. И вот функция заработала как надо и больше не закрывает глаза - вылет и сломанная совместимость. Разраб м$ уже ругался в интернетах на эту тему...

TERRANZ ★★★★
()
Ответ на: комментарий от PolarFox

> Девятку вполне себе на должном уровне, второй халфик епизоде 2 со всеми перделками в режиме девятого икса не хуже чем в винде.

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

stevejobs ★★★★☆
()
Ответ на: комментарий от stevejobs

> а теперь давай запустим вайн в консоли, свернем халфик, и посчитаем сколько тысяч ошибок в секунду по поводу нереализованных или криво реализованных функций он туда пишет.

Дык какая разница, халфик-то работает. А для ускорения надо запускать с WINEDEBUG=-all, чтобы вывод мессаг о stub функциях не тормозил вайн.

Ещё хрен знает насколько криво оно всё в оригинале организовано, там наверняка тоже немало костылей. Костыль для симсити, например, вообще официально запротоколирован.

PolarFox ★★★★★
()
Ответ на: комментарий от Manhunt

А они на них реагируют? По дефолту уже winemenubuilder уже отключили? А то там было встали в позу, что фича.

Deleted
()
Ответ на: комментарий от stevejobs

Но они есть, и идеи оттуда можно черпать. Контрол-цэ, контрол-вэ не прокатит, естественно.

leave ★★★★★
()
Ответ на: комментарий от different_thing

>А вот я хочу узнать есть ли смысл?)

Есть. Когда вовремя пишут багрепорт о регрессии, её проще отловить — число коммитов, которые надо проанализировать, намного меньше. А когда такие нытики всплывают через несколько лет, источник проблемы надо с нуля искать.

Gary ★★★★★
()
Ответ на: комментарий от stevejobs

>Ну и нормальный DirectX 11

Ох лол, его использовали только в нескольких играх, причём конечному пользователю от этого как-то ни тепло, ни холодно

Gary ★★★★★
()
Ответ на: комментарий от evoken

nfspu и на вин2000/xp не запускалась - надо было ставить на винду какой то пакет совместимости для старых программ и отдельно для nfspu что то прописывать в реестре. если для вайна то же самое попробовать - очень даже возможно что заработает

hooj ★★
()

Уж лучше так, чем никак. Держать для конкретной игры конкретный вайн имхо проще, чем иметь вантуз в дуалбуте.

Hokum ☆☆☆☆
()

а вы пробовали выставить в winecfg выставить windows 98?

record ★★★★★
()
Ответ на: комментарий от different_thing

> Практика показывает, что никто никому ничего не должен.

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

Evgueni ★★★★★
()
Ответ на: комментарий от Voviandr

> ведь исходники 2000 винды уже давно уплыли в сеть.

а) исходники далеко не все утекли

б) смотреть на них преступление и код по их мотивам будет вычищаться из wine беспощадно дабы не получить гарантированных проблем с одной большой и мягкой компанией.

Evgueni ★★★★★
()
Ответ на: комментарий от Evgueni

б) смотреть на них преступление и код по их мотивам будет вычищаться из wine беспощадно дабы не получить гарантированных проблем с одной большой и мягкой компанией.

Реактосовцы писали на эту тему.

Вроде человек, который смотрел эти исходники, не должен писать код для вайна или реактоса. А вот так, чтобы один посмотрел исходники, написал доки, на основе только этих доков другой написал код — вроде можно.

Но я могу путать.

ChALkeR ★★★★★
()
Ответ на: комментарий от pevzi

> А кто-то еще говорит про постоянно ломающиеся апи в линупсе. Ну-ну (:

В винде наоборот API намеренно оставляют обратно совместимым, даже если эта обратная совместимость основана на глюках. Поэтому софт винды 95 более чем в половине процентов случаев запустится на семёрке. От линукса подобного ждать не приходится, в дистрибутиве просто не окажется нужных библиотек.

PolarFox ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.