Comments 26
Спасибо за продолжение истории Wasted Dreams.
5 лет заниматься разработкой и не потерять интереса и желания продолжать — вызывает уважение.
5 лет заниматься разработкой и не потерять интереса и желания продолжать — вызывает уважение.
Спасибо.
А как вы его нашли? В прошлой статье, вроде, писали, что тяжело было найти его и получилось найти только дизайнера.
Если честно — но ничего особенно сложного не было. Вероятно, пару лет назад, когда Weilard искал Реймонда, все было сложнее — а сейчас — пошел в социальные сети (в первую очередь — профессиональные, типа linkedin, g+ или zerply) — поискал по имени-фамилии, ограничил поиск страной и областью деятельности — IT — и, внезапно, нашел. Списались, товарищ подтвердил, что это именно он, согласился ответить на вопросы. Вопросов оказалось много и наш диалог затянулся на несколько недель, я все вызнавал всякие подробности :)
Спасибо, интересно было почитать.
Эх вот бы так кто нибудь про Jumpgate интервью взять…
Эх вот бы так кто нибудь про Jumpgate интервью взять…
Про вот эту Jumpgate?
Про неё, великолепная игра, до сих пор в трауре хожу после закрытия,
Ну так возьмите и поищите — это же совсем несложно :) Jumpgate делали NetDevil, которые в свою очередь основывались ровно 3 людьми — Scott Brown, Peter Grundy, Steven Williams, которые и есть отцы-основатели Jumpgate. Кому, как не им знать весь процесс. Вот, например, Scott Brown на LinkedIn, совсем как живой. Ушел из NetDevil в 2010, наверняка у него есть, чего рассказать :)
Исходники искать бесполезно, ассемблер абсолютно непортабелен :(
Ну, в предыдущем топике ряд людей уже начал кое-что ковырять. Непортабелен-то понятно, вопрос, например, в редакторе карт (из которого будет ясен формат карт), в редакторе и упаковщике архивов и изображений (из которого будет ясен вопрос с форматом архивов) и т.д. и т.п. Ну и, конечно, саму логику гораздо приятнее смотреть в настоящем (пусть и ассемблерном) исходном коде, в котором есть человеческие названия переменных, есть разбиение по файлам, выделенные библиотеки и группы функций, всякие макросы в порядке и на месте и т.д. и т.п.
В некоторых ассемблерах разбираться легко и приятно, например у БК-0010(01)/11М, не знаю как с этим у Amiga.
Да почти во всех легко и приятно, если запомнить некие базовые штуки типа того, как называются флаги :)
У Amiga (классических) внутри MC680x0, там все на самом деле весьма похоже на 80386, если не углубляться во всякие совсем системные штуки…
У Amiga (классических) внутри MC680x0, там все на самом деле весьма похоже на 80386, если не углубляться во всякие совсем системные штуки…
> «некие базовые штуки», «всякие совсем системные штуки»
:)))) Сорри.
Писал на трёх ассемблерах: БК-0010(01)/11М (PDP-11), ZX Spectrum (Z80) и x86 (real mode/protected mode), к сожалению Amiga не было и с MC68000 не знаком.
И я говорю именно про приятность ассемблера у БК в сравнении с другими.
К примеру в сравнении с x86:
По регистрам: У 16-разрядного 8086/8088, есть счётчик команд, а также восемь регистров общего назначения, к которым относился и указатель стека — все 16-разрядные (есть ещё 4 сегментных регистра, но они используются для преобразования адресов, поэтому про них можно не говорить).
У PDP-11 восемь 16-разрядных регистров общего назначения, к числу которых относятся и указатель стека, и счётчик команд. Таким образом, по числу регистров все перечисленные процессоры примерно одинаковы (свободны для программиста 6 регистров на PDP-11 и по 7 на 8080 и 8086), однако только у PDP-11 регистры действительно имеют общее назначение. Например, в 8086 для обращения к памяти по адресу, находящемуся в регистре, можно использовать только регистры BX, BP, SI и DI, для умножения и деления — непременно регистры AX и DX, счётчиком количества повторений может быть только CX и т.д.
В PDP-11 таких ограничений практически нет (только спаривание регистров с чётным и нечётным номерами в командах умножения-деления и использование регистра R5 в команде MARK). Кроме того, у PDP-11 намного более развита система адресации операндов. В итоге система команд PDP-11 при меньшем числе команд, чем у 8086, намного более эффективна и удобна.
Например в PDP-11 нет команд PUSH, POP, MOVS, SCAS, LODS и т.д. Только они там не нужны — как раз благодаря развитой системе адресации. Вместо PUSH, POP, MOVS благополучно используется обычная MOV, например.
В PDP-11 к регистрам внешних устройств можно обратиться любой арифметико-логической командой. Например, можно одной операцией установить нужный бит регистра, не затрагивая все остальные. В 8080/8086 для той же цели потребуется использовать три команды и один регистр (аккумулятор).
:)))) Сорри.
Писал на трёх ассемблерах: БК-0010(01)/11М (PDP-11), ZX Spectrum (Z80) и x86 (real mode/protected mode), к сожалению Amiga не было и с MC68000 не знаком.
И я говорю именно про приятность ассемблера у БК в сравнении с другими.
К примеру в сравнении с x86:
По регистрам: У 16-разрядного 8086/8088, есть счётчик команд, а также восемь регистров общего назначения, к которым относился и указатель стека — все 16-разрядные (есть ещё 4 сегментных регистра, но они используются для преобразования адресов, поэтому про них можно не говорить).
У PDP-11 восемь 16-разрядных регистров общего назначения, к числу которых относятся и указатель стека, и счётчик команд. Таким образом, по числу регистров все перечисленные процессоры примерно одинаковы (свободны для программиста 6 регистров на PDP-11 и по 7 на 8080 и 8086), однако только у PDP-11 регистры действительно имеют общее назначение. Например, в 8086 для обращения к памяти по адресу, находящемуся в регистре, можно использовать только регистры BX, BP, SI и DI, для умножения и деления — непременно регистры AX и DX, счётчиком количества повторений может быть только CX и т.д.
В PDP-11 таких ограничений практически нет (только спаривание регистров с чётным и нечётным номерами в командах умножения-деления и использование регистра R5 в команде MARK). Кроме того, у PDP-11 намного более развита система адресации операндов. В итоге система команд PDP-11 при меньшем числе команд, чем у 8086, намного более эффективна и удобна.
Например в PDP-11 нет команд PUSH, POP, MOVS, SCAS, LODS и т.д. Только они там не нужны — как раз благодаря развитой системе адресации. Вместо PUSH, POP, MOVS благополучно используется обычная MOV, например.
В PDP-11 к регистрам внешних устройств можно обратиться любой арифметико-логической командой. Например, можно одной операцией установить нужный бит регистра, не затрагивая все остальные. В 8080/8086 для той же цели потребуется использовать три команды и один регистр (аккумулятор).
Ну, зато у PDP-11, насколько я помню, все *сильно* нетривиально с таймингами этих команд и часть MOV'ов работает за одно время, а часть — за сильно бОльшее, за что PDP-11 все активно и ругали как пример «посмотрите, какой отстой эта ваша CISC-архитектура».
Вообще, я в MC68000 не очень много разбирался, но он мне с этой точки зрения куда больше напоминает PDP-11 — ограничений в режимах адресации и способах использования регистров там действительно сильно меньше. PUSH есть, называется PEA, но можно делать и что-то типа «MOVE.B (A0)+,-(SP)» (PUSH) или «MOVE.W (SP)+,D0» (POP).
По большому счету — это все легко, приятно и сверхпредсказуемо, если начать это сравнивать с современными решениями Intel/AMD, где достоверно предсказать, скажем, время выполнения не может практически никто.
Вообще, я в MC68000 не очень много разбирался, но он мне с этой точки зрения куда больше напоминает PDP-11 — ограничений в режимах адресации и способах использования регистров там действительно сильно меньше. PUSH есть, называется PEA, но можно делать и что-то типа «MOVE.B (A0)+,-(SP)» (PUSH) или «MOVE.W (SP)+,D0» (POP).
По большому счету — это все легко, приятно и сверхпредсказуемо, если начать это сравнивать с современными решениями Intel/AMD, где достоверно предсказать, скажем, время выполнения не может практически никто.
Большое спасибо, интересно было почитать :)
P.S. Поправьте почти в самом конце «вы никогда не сможешь».
P.S. Поправьте почти в самом конце «вы никогда не сможешь».
Просто замечательно. Спасибо. Огромное.
[прим. пер. — думаю, Томас говорит о 1993-1994, потому как на момент конца разработки игры в 1998, Amiga уже дважды банкротилась, а последняя выпущенная модель A4000T выходила в 1995 и с процессором в 50 МГц, целыми 16 мегабайтами памяти и разрешением 640×480 вряд ли могла конкурировать со среднестатистическим Pentium II (233-450 МГц, 128-256 МБ памяти и разрешением 1024×768, не говоря уже о модных 3D-ускорителях) эпохи 1998.]
Не обязательно. Не смотря на банкротство Коммодор и постоянные перекупки ее наследия, оставалось достаточно большое количество амиг на руках (предыдущее поколение — самый продаваемый компьютер в Европе в 88-89 годах, даже к концу 90-ых их было еще полно). По этому сторонние фирмы продолжали выпускать ускорители, видео-карты и т.п. для этой платформы.
Так что в 97 году на амигу можно было купить двух-процессорный акселератор (моторола 060-50mhz для совместимости и старта машины, и powerpc 604-233mhz для современных игр/приложений) и видео-карты на чипах Virge, Permedia 2 (а пермедия — это уже конкурент voodoo).
Такие игры как quake1-2, heretic, hexen были портированы для таких машин и вполне конкурентно игрались на амигах.
Еще интересно, что на платформе амига не было маркетинговых/искусственных ограничений. Платформа последних амиг (3000, 4000 и, частчно, 1200), разработанная на рубеже 80-х и 90-х годов была истинно 32-битной. Не смотря на то, что тогда размер памяти в 4 мегабайта казался огромным (и стоил состояние), платформа позволяла адресовать все 4 гигабайта, а операционная система реально работала с размером памяти в 2 гигабайта (это выяснили энтузиасты, создав модули памяти на современной элементной базе, уже в этом веке). В тех же амигах, разработанная в те же годы шина zorro3, благодаря своей асинхронности и режиму busmaster, теоретически могла достигать скорости передачи 150мегабайт/с (немного быстрее, чем разработанная на 3-4 года позже pci в PC).
То есть, чисто теоретически, на той самой платформе амиги4000, без внесения в нее принципиальных изменений, коммодор мог бы делать компьютеры, плавно наращивая мощность, с 1992 года вплоть до какого-нибудь 2005-ого (ну или когда нам стало не хватать 2гб и pci?). А на PC за это время сменились 4 шины (isa, vlb, pci, pci-e (даже не вспоминая редкие eisa, pci-x)), с два десятка сокетов процессоров, куча форматов памяти и тому подобное.
Спасибо за комментарий, у вас явно куда больше опыта общения с Amiga — я сам их вживую, например, видел считанное количество раз — в основном на всяких фестивалях.
Тем не менее, судя по тем весьма неполным обрывкам информации, что я нахожу, переход на PowerPC был, мягко говоря, болезненным и не самым удачным. PowerPC-акселератор для Amiga в 97-98 стоил приличных денег, сравнимых со стоимостью целиком отдельного 200-233-266 МГц PC. За цену же продвинутых CyberVision PPC или BlizzardVision PPC можно было купить два-три таких компьютера. Поддержка PowerPC в 97-98 в ПО была в каком-то близком к зачаточному состоянию. AmigaOS 4 на PPC выпустили только в 2001. О поддержке PPC игрушками в 97-98 толком никто и не думал — это был рынок еще на порядок меньший, чем уже прилично сдувшийся рынок игрушек для MC68K.
Видео-карты на Virge были первыми на массовом рынке не-консольного 3D и были довольно быстро задавлены 3dfx'ом. Число игрушек, которые поддерживали Virge можно пересчитать по пальцам максимум двух рук даже на PC, на Amiga — подозреваю, что по пальцам одной руки. Даже в quake1 они выдавали в лучшем случае 5-7-10 FPS, чтобы было несколько неиграбельно. Permedia изначально (и до довольно позднего времени слияния с ATI) не была сколько-нибудь пригодна для игрушек, а позиционировалась как профессиональная карта для 3D-моделирования / анимирования, умела мильён довольно специфичных фишек OpenGL-стандарта типа быстрого антиалиасинга wireframe'ов, тучи вариантов шейдинга и при этом весьма уныло конкурировала с теми же Voodoo по банальным параметрам типа того же fill rate.
Тем не менее, судя по тем весьма неполным обрывкам информации, что я нахожу, переход на PowerPC был, мягко говоря, болезненным и не самым удачным. PowerPC-акселератор для Amiga в 97-98 стоил приличных денег, сравнимых со стоимостью целиком отдельного 200-233-266 МГц PC. За цену же продвинутых CyberVision PPC или BlizzardVision PPC можно было купить два-три таких компьютера. Поддержка PowerPC в 97-98 в ПО была в каком-то близком к зачаточному состоянию. AmigaOS 4 на PPC выпустили только в 2001. О поддержке PPC игрушками в 97-98 толком никто и не думал — это был рынок еще на порядок меньший, чем уже прилично сдувшийся рынок игрушек для MC68K.
Видео-карты на Virge были первыми на массовом рынке не-консольного 3D и были довольно быстро задавлены 3dfx'ом. Число игрушек, которые поддерживали Virge можно пересчитать по пальцам максимум двух рук даже на PC, на Amiga — подозреваю, что по пальцам одной руки. Даже в quake1 они выдавали в лучшем случае 5-7-10 FPS, чтобы было несколько неиграбельно. Permedia изначально (и до довольно позднего времени слияния с ATI) не была сколько-нибудь пригодна для игрушек, а позиционировалась как профессиональная карта для 3D-моделирования / анимирования, умела мильён довольно специфичных фишек OpenGL-стандарта типа быстрого антиалиасинга wireframe'ов, тучи вариантов шейдинга и при этом весьма уныло конкурировала с теми же Voodoo по банальным параметрам типа того же fill rate.
Спасибо за комментарий, у вас явно куда больше опыта общения с Amiga — я сам их вживую, например, видел считанное количество раз — в основном на всяких фестивалях.
Если на фестивале в питере — то скорее всего мои.
переход на PowerPC был, мягко говоря, болезненным и не самым удачным.
Безусловно. В отсутствии головной фирмы, которая бы создавала политику развития, поддерживала со стороны софта — другого быть и не могло.
За цену же продвинутых CyberVision PPC или BlizzardVision PPC
Стоили от 700 до 1000 долларов (старых). Да, цена практически хорошего PC, за то не надо менять привычки, поставил плату и работай.
Поддержка PowerPC в 97-98 в ПО была в каком-то близком к зачаточному состоянию.
На уровне операционной системы — пожалуй да. Но демо и игры скомпилированные под powerup/warpos стали появляться сразу же.
Так что не сказать, что бы конечный пользователь от этого сильно страдал.
AmigaOS 4 на PPC выпустили только в 2001
Это она в 2004 вышла и только на новую платформу (Pegasos), где был только ppc процессор (так сказать amiga NG). На старые амиги (amiga — классика) с акселераторами cyberstorm/blizzard ее портировали только в 2007 году. :)
О поддержке PPC игрушками в 97-98 толком никто и не думал — это был рынок еще на порядок меньший, чем уже прилично сдувшийся рынок игрушек для MC68K.
Считанные фирмы и энтузиасты. Да. Но хитов с пц успели пачку конвертнуть. И нативных игр кое-каких выпустить.
Например игр не очень много hol.abime.net/hol_search.php?N_ref_hardware=14 (да, многие 2000 года), а демок пять страниц pouet.net/prodlist.php?platform[]=Amiga+PPC%2FRTG
Видео-карты на Virge
Не берем virge. Просто вспомнилось.
Кстати игр под ее родное api ровно 4 шутки, они шли на диске в коробочной версии. Терминал велосити, и еще 3 каких-то.
Permedia изначально не была сколько-нибудь пригодна для игрушек,
Может быть про permedia1 это так, но во второй особого перекоса для 3д моделирования не было.
Обычный чип с типично игровыми процедурами, появился после первой вуду, конкурировал с ней и со второй вуду, где-то лучше, где-то хуже (http://www.ixbt.com/video/3dcompare4.html www.ixbt.com/video/ultimavtest_p3.html ). Т.к. сама 3dlabs была больше нацелена на профессиональные карты, типа wildcat, то Permedia 2 шла на куче недорогих потребительских карт от creative, diamond и т.п. поставщиков.
Если на фестивале в питере — то скорее всего мои.
Не, в Европе… На CC я все мечтаю доехать уже лет 5, но все никак не срастается. Может быть в этом году получится.
Про CyberVision PPC или BlizzardVision PPC:
Стоили от 700 до 1000 долларов (старых). Да, цена практически хорошего PC, за то не надо менять привычки, поставил плату и работай.
Я так понимаю, по хорошему нужно было покупать 2 платы: одну — PPC-акселератор (Blizzard / CyberStorm), другую — 3D-акселератор (BlizzardVision / CyberVision). И там *каждая* отдельно стоила эти самые 700-1000. Для сравнения — пардон, Voodoo 2 и 3 (обе 1998 года) имели на момент выхода MSRP ~200-250$. И при этом, если верить mobygames — только под Windows для Glide было 358 игр.
В общем, на самом деле, спасибо большое еще раз за дополнение — я действительно недооценивал Amiga и многое не знал :) На какой-нибудь следующей выставке-фестивале попробую посмотреть на эти акселерированные машины поближе.
Почти так, акселераторы стоили около 700-…, видео-карты около 300-400. С другой стороны, амижники сидели без апгрейдов год-два-три, в отличии от PC, где чуть ли не весь комп надо было апгрейдить раз в два года, так что вполне могли такие суммы скопить. Хотя, конечно, это был закат платформы, ни кто не спорит.
С 2004 года пошли только powerpc платформы для amigaos4/morphos, но на них остались только фанаты.
А сейчас таких амиг осталось мало. И на выставке не вдруг увидишь. Лично у меня ощущения, что где-то под тысячу рабочих классических амиг с powerpc во всем мире, из них хорошо если десяток в России.
В этом году большие шансы, что я на ЦЦ выставлять не буду, хотя скорее всего и посещу мероприятие.
С 2004 года пошли только powerpc платформы для amigaos4/morphos, но на них остались только фанаты.
А сейчас таких амиг осталось мало. И на выставке не вдруг увидишь. Лично у меня ощущения, что где-то под тысячу рабочих классических амиг с powerpc во всем мире, из них хорошо если десяток в России.
В этом году большие шансы, что я на ЦЦ выставлять не буду, хотя скорее всего и посещу мероприятие.
Так я не понял, вы скинули ему контакты Реймонда? Это ведь самое важное в этой истории.
Sign up to leave a comment.
Wasted Dreams — еще немного истории одной забытой игры