Сегодняшний обзор ассемблеров мне хотелось бы начать с Alasm 3.8, тем более что в третьем номере нашего журнала мы обещали подробно рассказать о нём. Но сна- чала небольшое вступление. Сразу же хотелось бы поблагодарить гос- под M.M.A (за предоставление мне всех нижеперечисленных программ на опробацию) и MaxSoft'а (за столь нужное Родной Отчизне (Оберону) начинание - описание ассембле- ров). Времена меняются, меняются требования, выставляемые ассемблерам программистами, хаккерами и даже простыми смертными юзера- ми. Сколько новых необычных, нестандартных ассемблеров появилось? Немало. Но одно можно сказать с уверенностью: до сих пор не написано идеального ассемблера. Да его и не может быть. Кому-то нравятся наворо- ченные оболочки, как в Zasm 3.l0, кому-то сверхбыстрый и оригинальный во всём XAS, кому-то простота старого доброго Tasm'а, а кто-то до сих пор не "вылез" из Zeus'а. Сколько людей - столько мнений. Главное, чтобы было из чего выбирать. Как сказал один незабвенный "форматчик": "Больше ассемблеров, хороших и разных!". И ещё пара общих фраз. Возможно, что при описании программы я покажусь несколько необъективным, но на мой взгляд сие должно означать лишь то, что ассемблер запомнился (понравился) мне несколько больше, чем другие аналогичные программы. Так что, г-да Авторы, прошу не обижаться, а принять к сведению нижеизложенные факты. На этом я официальное вступление завершил. Спасибо за внимание. ALASM 3.8 ■■■■■■■■■■■ (Alem) Эта программа и ранее являлась самым мощным и быстрым ассемблером из всех ОДНО- ПРОХОДНЫХ :), созданных за последний год. И эта версия, судя по всему, должна будет удовлетворить запросы всех тех, кого рань- ше что-либо отпугивало в Alasm'е. Теперь программа поддерживает любую дополнитель- ную память более 128К. В пакете поставля- ются драйверы памяти для ATM, PROFI, SCOR- PION, но имеется возможность написать соб- ственный драйвер и подключить его в SetUp. Кроме того появилась возможность настроить параметры вашей клавиатуры на свой вкус, так что теперь, похоже, пропадут проблемы опроса клавиатуры при включенном турбо-ре- жиме. На мой взгляд одно из немногих неустра- нённых неудобств в работе - довольно ущербный текстовый редактор (отсутствует даже нумерация строк), что в общем-то пор- тит всё впечатление. Да и возможность ра- боты с двоичными числами не помешала бы этому ассемблеру (хотя мне это не особо нужно). Одной из немаловажных особенностей про- граммы является возможность работы с тек- стами, число которых ограничено только наличием свободных страниц ОЗУ. Имеется возможность ассемблирования в страницу. О некоторых планах автора: l) Размер таблицы меток до 64К: 2) RAM-диск для include'ов: Про последнее сказать особо нечего, т.к. это на мой взгляд и не нужно (если текст находится на странице, то обращения к диску и так не происходит), а первый пункт будет приветствоваться всеми кодерами. TASM 4.l2 ■■■■■■■■■■■ (Rst#7/CBS) Где-то в начале этого года появилась но- вая версия Tasm'а, и не от какого-нибудь очередного VasyaSoft'а, а от человека, яв- ляющегося изначальным автором этой прог- раммы, - Rst7. Честно говоря, прочитав анонс ассемблера в ZX-Ревю l-2 за 1997 год, я очень захотел увидеть его: и пере- мещение по строкам с ошибками, и гипертек- стовый Help по директивам и управлению, и увеличена скорость ассемблирования, и сня- ты ограничения на длину меток (до 128 симв.), и т.д. и т.п. Всё это, конечно, хорошо, но мне хотелось бы отметить нес- колько других моментов: l) В программе появились самые полноцен- ные из всех ранее виденных мною МАКРОСЫ. при описании которых можно использовать локальные метки (!). В качестве примера Rst7 предоставляет несколько файлов : 6S02.A, содержащий макросы для облег- чения написания программ под Dendy'вский видеоконтроллер :). SNAKE.A - игра ( в простонародье - 'питон' ), работа которой основана на использовании команд условной трансля- ции. SINUS.A - генератор таблицы синусов. EXAMPLES.A - пример использования мак- росов, локальных меток. 2) Появилась возможность ассемблирования в страницу. 3) Наконец-то оригинальный Tasm зарабо- тал на всяких Скорпионах и прочих компах без переделок. Все остальные же авторские примочки име- ют сомнительную ценность: l) В runeptekctobom Help'e, например, кроме описания директив Tasm'а (вдруг кто забыл, как пользоваться ORG ?) можно почи- тать нецензурные высказывания в адрес AIG'а (одного из авторов Masm l.x и автора будущего Masm 2), который некогда приложил руку к Tasm'у, или узнать о том, что Tasm 3.0 являлся beta (!) версией. 2) Переход по строкам с ошибками (запо- минается 76 строк, что довольно много) сделан не самым лучшим образом. Строка в тексте никак не помечается, не выделяется цветом. Кроме того, если в тексте добавить или удалить строки, переходы будут выпол- нены неверно. Стоило делать, если где-то сделано лучше? 3) Изменён формат хранимого текста. Сла- ва Богу, есть встроенный перекодировщик. 4) Редактор остался всё таким же убогим, хотя специально для слабовидящих сделано 32 символа в строке. S) Выбор загружаемого файла курсором из каталога выполнен весьма оригинально. Я даже не сразу понял, что произошло. 6) Имеется screensaver, вдохновляющий на создание шедевров типа Чёрного Ворона... XAS 7.432.7.432c ■■■■■■■■■■■■■■■■■■ (Макс Петров, Creator) Официально Xas 7.l является последней версией ассемблера, к которой приложил ру- ку Макс Петров. Все последующие доработки программы были выполнены Creator'ом (ака Paul Falcon) с согласия автора. Очередная версия самого нестандартного ассемблера не очень порадовала меня. Дело в том, что даже при живом авторе :) прак- тически не уделялось внимание совершен- ствованию функциональных возможностей про- граммы, а лишь только скорости ассемблиро- вания (сейчас она превосходит скорость Tasm 3.0 в 7 раз). Между тем в редакторе отсутствует даже поиск по тексту с заме- ной. Из нововведений отмечу следующие: l) Появилась возможность задавать произ- вольную длину метки от 3 до 14 символов. Об этом стоит сказать отдельно. Может это и неплохо, т.к. под метки отводится только одна шестая страница (или #56-ая :), но с другой стороны сейчас наметилась тенденция использования Hash-алгоритма, что позволя- ет применять метки длиной до 128 символов. 2) Появилась возможность использования процедур, "выкусываемых" из ваших собст- венных библиотек. 3) Стринги в DEFB. 4) Работа с несколькими драйвами. S) Исправлена ошибка перекодировщика All>Xas, из-за которой последний корчился на некоторых машинах без Kempston Mouse. Недостатки: l) Отсутствует поддержка дополнительной памяти (более 128К). 2) Отсутствует возможность ассемблирова- ния в страницу. 3) Отсутствует поиск по тексту с заменой 4) Редактор не позволяет вводить символы {}[]| и др.,что вызывает некоторые неудоб- ства. S) Версия Xas 7.432c предоставляет ре- дактор с 64 символами в строке, но, к со- жалению, содержит некоторые ошибки. К тому же перекодировщик All>Xas не поддерживает 64 символа в строке! И ещё один момент. Когда я попытался за- грузить исходники от старого Xas'а, то при ассемблированиии получил кучу ошибок. Как выяснилось, Xas 7.l и все последующие вер- сии перестали понимать метки, начинающиеся с символа '_'. Учитывая, что поиск с заме- ной отсутствует, вы, наверное, уже дога- дались, какие это вызвало неудобства. Конечно, '_' может как-то и используется в программе, но поскольку Макс Петров (или кто-то другой) не потрудился предоставить полный Help, как, например, в Alasm'e, а кинул 'огрызок' ReadMe.X, то '_' так и остался для меня загадкой. Zasm 3.l0(dv) ■■■■■■■■■■■■■■■ (К.Афендиков,В.Рубцов,О.Хохлов) Шестого мая сего года произошло знамена- тельное событие: в эху 'кинули' Zasm 3.l0 (demo version). Сложно сказать что-либо определённое о демо версии, оценить удоб- ство/неудобство в работе. Но ясно одно: на Спектруме появилась полноценная инте- грированная turbo среда. Даже демо версия поражает своей масштабностью: перекодиров- щики, диск-доктор (на мой взгляд самый лучший из ныне существующих), собственный монитор (не считая STS), возможность пол- ноценной работы с принтером, копирование и удаление файлов, компрессия и просмотр экранов, шрифтов, не выходя из оболочки, и многое, многое другое, чего ассемблеру не очень-то и нужно. Но поскольку работать с компилятором не представляется возможным, то придётся по- верить авторам на слово и привести некото- рые характеристики, взятые из Help'а, либо услышанные от г-на Афендикова: l) Поддержка меток до 128 символов. 2) Возможность набора нескольких ассемб- лерных команд в одной строке, разделяя их двоеточием. [Oberon: Ценность, надо ска- зать, сомнительная... Хотя, вероятно, это и удобно при наборе некоторых недокументи- рованных команд.] 3) Увеличена скорость ассемблирования. 4) "... много других полезных фич..." © К.Афендиков На мой взгляд,одним из недостатков являет- ся возможность работы только с одним тек- стом в памяти, под который отводится около 30К. Но самое интересное то, что эту же память будет 'кушать' и таблица меток, медленно, но верно продвигаясь навстречу тексту. * * * На этом я закончу описание ассемблеров, скажу только, что в ОБЗОРе были представ- лены лучшие ассемблеры за 1997 год, кото- рые настоятельно рекомендуются к использо- ванию. Остаётся дождаться появления полной версии Zasm 3.l0, Masm 2(*AIG*) и Masm 3 (программу, которую начинал писать KSA, а заканчивать, по-видимому, придётся *AIG*'у).Также ничего не слышно о совмест- ном проекте Rst7 со Stalker'ом. По словам первого Tasm+STS будут представлять со- бой подобие turbo среды на РС с возмож- ностью отладки по тексту и др. Обзор подготовил Alex Noman. -========================================-