Русская Википедия:AMOS (язык программирования)

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску

Шаблон:К удалению Шаблон:Значения Шаблон:Карточка языка программирования

AMOS (часто, AMOS BASIC) — первоначально проприетарный язык программирования высокого уровня для ПК Amiga, основанный на синтаксисе BASIC. Продукт был впервые выпущен в издательстве Europress Software и разрабатывался Франсуа Лионетом (François Lionet Шаблон:Ref-fr) из компании Constantin Sotiropoulos.

История

AMOS является потомком STOS BASIC для Atari ST появившимся на Amiga в 1990 году (через 2 года после STOS на Atari ST). Основным конкурентом для нового языка стал Blitz BASIC от компании Acid Software. AMOS и Blitz BASIC сильно отличались от других диалектов BASIC на разных платформах тем, что позволяли легко создавать довольно требовательное мультимедийное программное обеспечение, написанное понятным и хорошо структурированным кодом, использующее множество высокоуровневых функций для загрузки и воспроизведения изображений, анимаций, звуков и музыки самыми разными способами.

Первые версии AMOS являлись интерпретатором BASIC, который обладал недостатками характерными для всех интерпретируемых языков. Однако, даже в качестве интерпретатора AMOS оказался самым производительным среди интерпретируемых языков на Amiga. Это подтверждалось тем, что расширение языка AMOS 3D позволило писать 3D-игры работающие даже на классической нерасширенной Amiga 500+ вышедшей в 1991 году и имеющей процессор mc68000@7,14 МГц. Позже был разработан оптимизирующий компилятор языка AMOS, который ещё больше увеличил производительность создаваемых с его помощью приложений. Ещё одной причиной популярности языка у пользователей стала возможность использования в коде AMOS включений на языке ассемблера m68k. Это позволило писать критичные с точки зрения производительности участки приложений наиболее производительным способом и привело к появлению библиотек таких включений.[1]

Чтобы упростить анимацию спрайтов, AMOS включает в себя как подмножество язык AMAL (AMOS Animation Language) программы на котором выполняются независимо от выполнения основного кода написанного на AMOS.[2] Это позволяет осуществлять независимое управление эффектами происходящими на экране и выводить градиентные заливки. Фактически, сценарии на языке AMAL создают т.н. CopperLists, это небольшие подпрограммы выполняемые чипом Agnus входящим в чипсет классической Amiga (OCS, ECS, AGA). Таким образом, обработка эффектов и градиентов поддерживается аппаратно и выполняется в реальном времени.

Следом за AMOS, издательство Europress выпустила компилятор языка (AMOS Compiler) и две интегрированные среды разработки: Easy AMOS, нацеленную на начинающих программистов и AMOS Professional, содержащую дополнительную функциональность в редакторе кода, поддержку ARexx, новый пользовательский API и новые управляющие конструкции.

Основной сферой применения AMOS стало создание мультимедийного программного обеспечения, видеоигр (платформеры и графические приключения) и образовательное программное обеспечение. Язык оказался умеренно успешным в сообществе пользователей платформы Amiga. Простота использования сделала его особенно привлекательным для начинающих.

Возможно, самым большим недостатком AMOS, было его происхождение из мира компьютеров Atari ST, что повлекло за собой его несовместимость с функциями и интерфейсами операционной системы AmigaOS. Вместо того чтобы пользоваться развитыми системными средствами AmigaOS, язык программирования AMOS напрямую управляет компьютером, из-за чего приложения, написанные на нём, имеют нестандартный пользовательский интерфейс и имеют проблемы в совместимости с новыми компьютерами Amiga и расширениями для них.

В конце 2002 года все приложения AMOS (Easy AMOS, AMOS the creator, AMOS Professional, AMOS 3D, AMOS Compilers) стали доступны для свободного скачивания из архива Back to the Roots[3].

Настоящее время

Сегодня небольшое сообщество энтузиастов все ещё использует этот язык, он популярен для создания открытых и коммерческих ретро-игр для классических моделей Amiga, и представлен в архиве Aminet отдельной веткой «dev/amos».[4]

Исходный код AMOS был открыт примерно в 2001 году под лицензией BSD компанией Clickteam, в которой на тот момент работал программист создавший этот язык. Исходный код AMOS Professional был открыт и размещён в архиве Aminet их владельцем Пьетро Гиццони 1 декабря 2012 года, а также изменена форма права собственности на общественное достояние[5].

4 апреля 2019 года Франсуа Лионет объявил о выпуске AMOS2 на своем сайте amos2.org Шаблон:Wayback. Язык AMOS2 должен (по идее автора) стать заменой STOS и AMOS, и, используя JavaScript в качестве интерпретатора кода, позволить разработчику программировать на нём в браузере. Интегрированная среда разработки AMOS 2 получила название AOZ Studio. Исходный код AMOS2 является открытым.[6]

В 2020 году Франсуа Лионет выложил на GitHub оригинальные исходные коды AMOS Professional, в том виде, в каком они были на его винчестере в 1993 году.[7] Независимый разработчик Фредерик Кордье (Frederic Cordier Шаблон:Ref-fr) создал новую версию AMOS Professional AGA на основе оригинального исходного кода и выложил исходники на GitHub под лицензией MIT[8] В новой версии появились двойной буфер с поддержкой экранов до 256 цветов, поддержка до 8 бит-планов, поддержка 24-битной палитры и режима HAM8. По состоянию на 2021 год проект получил название AMOS Professional Unity, развивается и имеет официальный сайт.[9]

Программное обеспечение

Игры и приложения созданные с использованием AMOS:

См. также

Примечания

Шаблон:Примечания

Ссылки

Шаблон:Диалекты языка программирования Basic Шаблон:IDE