Языки программирования Амиги
В данной статье рассматриваются языки программирования, используемые в Amiga линейке компьютеров , работающих под управлением операционной системы AmigaOS и ее производных AROS и MorphOS . Это часть основной статьи «Программное обеспечение Amiga» . см. также в соответствующих статьях Программное обеспечение для повышения производительности Amiga , Музыкальное программное обеспечение Amiga , Программное обеспечение Amiga для Интернета и связи , а также Программное обеспечение поддержки и обслуживания Amiga Другую информацию о программном обеспечении, работающем на Amiga, .
История
[ редактировать ]Многие игры и программное обеспечение, особенно в первые годы существования Amiga, были написаны для прямого доступа к оборудованию вместо использования операционной системы для графики и ввода. Следовательно, игры могут работать намного быстрее и плавнее, но за счет совместимости с новыми моделями Amiga.
Кроссплатформенные библиотеки и средства программирования
[ редактировать ]Для Amiga доступно несколько кроссплатформенных библиотек и средств:
- MUI и ReAction системы Amiga — это стандартные объектно-ориентированные для создания графических интерфейсов.
- Библиотеки SDL широко используются во всех современных системах Amiga.
- Поддержка Cairo встроена в AmigaOS 4.1 и MorphOS 3.0.
- Антизернистая геометрия [1]
- CLib2 — это портативная ISO C (1994) библиотека времени выполнения для Amiga.
- Библиотека Allegro портирована на AmigaOS 4 [2] и MorphOS [3] .
- порт wxWidgets для Amiga работает над wxWidgets-AOS .
- Gallium3D теперь является частью AROS Icaros Desktop Live Distro.
- OpenAL Кроссплатформенный аудио API , предназначенный для эффективного рендеринга многоканального трехмерного позиционного звука, доступен для MorphOS и любой AmigaOS версии 3 и более поздних версий.
- AROS и MorphOS поддерживают библиотеку FreeType в различных проектах, включая выпуск ее версии Origyn Web Browser .
- Версия FLTK «Fast, Light Toolkit» для AmigaOS 4.0 по состоянию на 2024 год все еще находится в разработке и предлагает все функциональные возможности официальной версии 1.1.6, включая стандартную и пластиковую схему.
В течение многих лет у Amiga не было полноценной интегрированной среды разработки (IDE). Ситуация изменилась в 2005–2006 годах, когда была создана Cubic IDE на базе модульного текстового редактора GoldED .
Краткий список языков, доступных на Amiga
[ редактировать ]Ассемблер: макроассемблер ASM-One, ассемблер Devpac , ассемблер макросов Metacomco, ассемблер SEKA.
Базовые диалекты: AmigaBASIC от Microsoft, ABasic от Commodore (разработанный Metacomco ), AC Basic Compiler , GFA BASIC , HiSoft Basic , AMOS BASIC , Blitz BASIC , PureBasic.
C-компиляторы: Aztec C , DICE C, GNU gcc, VBCC , Lattice C , SAS/C , Storm C , HiSoft C++.
ПАСКАЛЬ: Amiga Pascal , Kick-Pascal , High Speed Pascal , Free Pascal
Другие языки: Форт (JForth [ 1 ] и Multi-Forth), FORTRAN , логотип Amiga , Oberon , Perl 5, Ruby , Amiga E , FALSE , Portable , Python (AmigaPython [ 2 ] ), REBOL , ARexx , Схема ( SCM , [ 3 ] Гамбит , [ 4 ] Схема УМБ, [ 5 ] ЗДЕСЬ [ 6 ] ), GNU C++ , Modula-2 , Benchmark Modula 2, Eiffel, Java ( JAmiga ), Draco и ML ( Caml Light [ 7 ] ).
Описания некоторых языков
[ редактировать ]ABasiC был разработан MetaComCo и входил в состав AmigaOS 1.0 и 1.1.
AmigaOS 1.2 и 1.3 поставлялись в комплекте с AmigaBASIC (и полным руководством), который, кроме того, что был диалектом BASIC, не был связан с ABasic. AmigaBASIC был единственным языком программирования (и единственным инструментом), созданным Microsoft для компьютера Amiga. Его лучшей особенностью было отсутствие нумерации строк кода, что было первой попыткой в 1985/1986 году создать новый подход в программировании на BASIC. Затем Microsoft добавила эту функцию во все свои инструменты языка разработки. Поскольку AmigaBASIC входил в состав многих Amiga, в первые годы он был одним из наиболее распространенных языков.
Поскольку Commodore хотела сэкономить деньги, обновление для AmigaBasic так и не было выпущено. Из-за огромного количества известных ошибок и ограничений профессиональные разработчики сразу же отказались от него в пользу других языков программирования, таких как GFA BASIC, Aztec C, Lattice C, а затем AMOS. Эти ошибки и ограничения включали:
- вылетает на новых процессорах и версиях AmigaOS новее 1.3 при использовании подпрограмм (gosub) и звука
- редактор написан для NTSC и поэтому не использует полноэкранный режим на экранах PAL (стандарт телевидения в Европе )
- коммерчески выпущенные BASIC обеспечивали лучшую IDE и лучшую (более быструю) производительность.
Ассемблер SEKA был популярным инструментом среди программистов игр и демо-версий в первые годы существования Amiga. Позже популярными ассемблерами стали Devpac и AsmOne. SEKA, DevPac и AsmOne были IDE и включали в себя редактор, ассемблер, компоновщик и отладчик.
Devpac Assembler от HiSoft — профессиональная программа на ассемблере, ставшая фактическим стандартом программирования на ассемблере. Его также можно использовать для кроссплатформенной разработки для любого другого устройства на базе Motorola 68k, такого как Atari ST. Программы писались совместно для Amiga и Atari с использованием Devpac на Amiga. Однако, поскольку Atari ST была менее функциональной из двух машин, программы тестировались и создавались в первую очередь для ST.
IDE (интегрированная среда разработки)
[ редактировать ]До 2005–2006 годов у Amiga не было настоящего программного обеспечения IDE (кроме устаревшей IDE Storm C). Разработка велась с использованием продвинутых текстовых редакторов, таких как Emacs, MicroEmacs, Cygnus Editor и Gold Ed (Gold Editor), которые могли выделять различный синтаксис в языках программирования. Затем Gold Ed превратился в полноценную коммерческую программу среды IDE под названием Cubic IDE .
Наиболее широко используемыми программами IDE являются коммерческая программа Cubic IDE и коммерческая программа CodeBench , которая иногда выпускается с ограниченными функциями в виде бесплатной версии.
Инструменты создания приложений
[ редактировать ]Некоторые программы Amiga представляли собой полноценные прикладные инструменты. Примерами были: CanDO , Amiga Vision , Shoot'Em-Up Construction Kit, также известный как SEUCK, 3D Construction Kit , 3D Construction Kit II и в некоторой степени The Director (язык, подобный BASIC, предназначенный для мультимедиа, презентаций и анимации). Сам AMOS можно было рассматривать как инструмент для создания приложений, и он представлял собой нечто большее, чем простой язык программирования (даже если SEUCK был нацелен на игры. Серия 3D Construction также могла обрабатывать некоторые виды 3D VRML ). Другими инструментами для создания независимых приложений или «самозагружающихся проектов» были Scala Multimedia и Hollywood Designer .
CanDO был одним из первых инструментов создания приложений, способных создавать полностью независимые (скомпилированные или полностью двоичные) программы для Amiga. Он основан на визуальном интерфейсе, основанном на современном подходе к программированию « визуального программирования », который стал известен благодаря Visual C++ и Visual Basic от Microsoft. Хотя CanDO не имеет ничего общего с Visual C и Visual Basic, это программа, управляемая мышью, с использованием значков, а ее внутреннее программирование похоже на интерактивную блок-схему функций, как и инструменты программирования VISUAL. Эдди Черчилль, один из основных разработчиков CanDO, впоследствии участвовал в разработке объектно-ориентированной среды разработки Pascal для Borland — Delphi .
Amiga Vision — это что-то вроде CanDO для Amiga. Это ВИЗУАЛЬНЫЙ инструмент «создания приложений», созданный Commodore для запуска Amiga 3000 , и он был выпущен бесплатно для всех, кто купил Amiga 3000.
Vision - это больше, чем просто язык, предназначенный для мультимедиа, все управление осуществляется с помощью значков, а блок-схема функций была реализована графически, на странице, на которой пользователь мог визуально расположить значки, каждый из которых представляет функцию программы. Сохраненные файлы (проекты) Vision нельзя было использовать как чистые двоичные файлы. С этой точки зрения инструмент «создания приложений» Amiga Vision был интерпретируемым языком.
AmigaBasic, созданный Microsoft, CanDO, а затем Amiga Vision, вдохновил саму Microsoft на подход к визуальному программированию с помощью их линейки языков визуального программирования, таких как Visual Basic и других.
Ссылки
[ редактировать ]- ^ «ДжФорт» . СофтСинт .
- ^ «АмигаПитон» .
- ^ Джаффер, Обри. «Реализация схемы SCM» .
- ^ «Содержимое Фиш-диска 764: Гамбит_Терп» . База данных Amiga Fish Disk . Архивировано из оригинала 7 августа 2017 г. Проверено 22 июля 2017 г.
- ^ «Схема UMB: портативная схема из Массачусетского университета в Бостоне» . Репозиторий искусственного интеллекта CMU .
- ^ "dev/язык/SIOD" . Аминет .
- ^ «Caml Light v0.73 для Amiga» . Язык Камл .
- Руководство для инсайдеров Amiga Assember, автор: Пол Овераа, ISBN 1-873308-27-2
- Освоение ассемблера Amiga, Автор: Пол Овераа, ISBN 1-873308-11-6
- Amiga Machine Language (1987), подзаголовок: Практическое руководство по изучению языка ассемблера 68000 на Amiga, Автор: Стефан Диттрих, Издатель: Abacus Software Inc., ISBN 1-55755-025-5
- Справочное руководство по оборудованию Amiga (3-е изд.), опубликованное Аддисоном Уэсли (1991 г.), ISBN 0-201-56776-8
- Справочное руководство по ядру Amiga ROM: Включает и Autodocs, опубликованное Аддисоном Уэсли (1991), ISBN 0-201-56773-3
- Справочное руководство по ядру Amiga ROM: Библиотеки, опубликованное Аддисоном Уэсли (1991), ISBN 0-201-56774-1
- Справочное руководство по ядру Amiga ROM: Устройства (3-е изд.), опубликованное Аддисоном Уэсли (1991), ISBN 0-201-56775-X
Внешние ссылки
[ редактировать ]- Список программного обеспечения Amiga на сайте AmiWorld Итальянский сайт, на котором представлен список всех известных программ повышения производительности для Amiga.
- Каталог программного обеспечения classicamiga Проект каталога Amiga, целью которого является каталогизация всего известного программного обеспечения Amiga.
- Бенчмарк Модуль-2 инструкция