Как я кодирую и компилирую приложение Amiga? [закрытый]

Вы можете использовать Object.entries() и .map(), чтобы получить массив объектов:

const data = {
  "ABC": {"minValue": 0,"maxValue": 5},
  "XYZ": {"minValue": 0,"maxValue": 5},
  "PQR": {"minValue": 0,"maxValue": 5},
  "overall": {"minValue": 0,"maxValue": 5}
};

const result = Object.entries(data)
                     .map(([ k, v ]) => Object.assign({}, {type: k},  v));
                     
console.log(result);
.as-console-wrapper { max-height: 100% !important; top: 0; }

43
задан Connor 10 May 2014 в 21:18
поделиться

14 ответов

Примечание: Не помещайтесь от ответа; это - продолжающийся поток.
Спасибо за все Ваши ответы до сих пор :-)

Потраченный на несколько дней, понимая это. Эти инструкции для AMOS Pro, не стесняйтесь или отправлять свой собственный ответ для другого языка или обновлять этот ответ (это - общественная Wiki).

Инструкции по инструментальным средствам:

  1. Amiga установки Навсегда 2008 (плюс версия включает Инструментальные средства 3.1).
  2. Используйте или Amiga Навсегда или WinUAE как эмулятор (я предпочитаю WinUAE).
  3. Инструментальные средства Amiga установки 3.1 к пользовательскому жесткому диску.
  4. При использовании WinUEA просто используйте af_3x файл конфигурации (установленный с Amiga Навсегда).
  5. Ознакомьтесь с Инструментальными средствами и Amiga Shell (см. ресурсы).

AMOS Pro инструкции:

AMOS Pro является IDE, который немного походит на что-то от старого щелчка хакера, плюс Вы может даже включить тех, которые раздражают звуки, которые Вы слышите в фильмах. Разве это не является большим? Так или иначе, на практическом руководстве...

  1. Получите диски для AMOSPro (существует 6 дисков всего в v2.00).
  2. Вставьте диск AMOSPro_System и установите AMOS Pro согласно инструкциям.
  3. После того, как установленный, открытый каталог AMOS_Pro и выполненный AMOSPro.
  4. Если Вы не знаете AMOS, изучаете некоторый AMOS кодирование основ.
  5. Тип: Print "Hello world!"
  6. Нажмите F1 для выполнения (делает то же как красный треугольник направо от логотипа AMOS).
  7. Rejoyce как "Hello world!" появляется в белом тексте на оранжевом фоне.
  8. TODO: Узнайте, как скомпилировать это как двоичный файл (?), который может быть выполнен от Инструментальных средств.

AMOS Pro:Привет, мир! http://img7.imageshack.us/img7/7867/001tpe.png

Вот является еще немного кода AMOS для забавы.

Input "Who are you? ";S2$
S1$="Oh, hello "
S3$=", nice to see you!"
Print S1$+S2$+S3$

Подсказки по Amiga:

  • [Оставленный Amiga] является ключом Windows, [Правильный Amiga] является ключом Контекстного меню.
  • Нажмите [Левый Amiga] +A для переключения между AMOS Pro и Инструментальными средствами.
  • Британец ['] ключ производит или # или (сдвиг) символ.
  • Британец [~ #] ключ производит или \или | (сдвиг) символ.
  • Британцы [¬ ] key produces either the ' or ~ (shift) or (высокий звук) символ.

Ресурсы:

*Не neccecary при использовании WinUAE Amiga Навсегда конфигурируются (af_3x).

TODO:

Я попытаюсь сделать практическое руководство для каждого языка следующим образом.

  • Дракон (благодаря avery-payne)
  • Amiga E (благодаря Paul Ruane)
  • SAS/C (благодаря Мотку)
  • Modula-2 (благодаря JasonTrue)
  • ARexx (благодаря Nik)
25
ответ дан 20 revs, 2 users 99% 26 November 2019 в 22:32
поделиться

Необходимо, конечно, использовать эмулятор - современный ПК, выполняющий ОАЭ, является миром кроме A1200. Можно работать с хорошим высоким разрешением экрана и порядками величины производительности ЦП быстрее (если Вы хотите, чтобы оно было быстрее то есть, все дополнительные, конечно). О, и можно на самом деле получить доступ к аппаратным средствам ПК через библиотеки Amiga, обеспеченные эмулятором, если Вы хотите.

Справочники Amiga были бы местом, чтобы запуститься, если Вы хотите поразить 'аппаратные средства'. Devpac был предпочтительным ассемблером для большинства людей.

Было несколько компиляторов C, и по крайней мере один компилятор C++, SAS/C. Вот ссылки еще на несколько компиляторов Amiga

Если Вы надеетесь учить новый язык затем, Modula-2 мог бы быть опцией, но действительно C был предпочтительным языком для большинства людей. Сама ОС была записана в C (по крайней мере, от 2,0 вперед - BCPL до того), и библиотеки, все имели заголовки C, предусмотрели доступ к ним.

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

  • Motorola Programmer's Reference Manual для 68k-68040, самой всесторонней книги по системе команд. Доступный бесплатно для загрузки здесь
  • Руководство Руководства по аппаратным средствам Amiga, для полного списка всех аппаратных регистров, как они работают и как использовать их. Старые копии для продажи здесь

Еще одна забавная опция могла бы быть довольно мощным языком сценариев ARexx. Вы могли сделать довольно много с этим, таким как управление другими приложениями через их 'порт ARexx' для получения доступа к их функциональности. Намного больше высокого уровня, чем другие опции, но довольно легкий заставить это делать интересные вещи.

12
ответ дан Nik 26 November 2019 в 22:32
поделиться

Эмуляторы

Операционные системы

  • AROS (попытка приведения в чувство AmigaOS)

Программирование ресурсов

7
ответ дан Manrico Corazzi 26 November 2019 в 22:32
поделиться

Я был программистом Amiga в течение некоторого времени и использовал 68k Ассемблер исключительно. Справочниками Amiga были библии и необходимый. Что касается забавных программ, я подозреваю, больше всего были сделаны до смерти на Amiga..., просто ищут любую идею, которую Вы имеете, и я уверен, что Вы найдете существующую часть кода.

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

5
ответ дан Lazarus 26 November 2019 в 22:32
поделиться

Был большой инструмент программирования для Amigas, который имел то же имя как кто-то в Библии....

AMOS

Вот и все.

6
ответ дан cjk 26 November 2019 в 22:32
поделиться

Я уверен, что можно найти эмулятор, как другие люди упомянули, но я хотел добавить, что Modula-2 был довольно популярен у программистов Amiga.

5
ответ дан JasonTrue 26 November 2019 в 22:32
поделиться

Точно, что программирование инструментов я должен использовать, там кто-либо уже установлен?

Основной и AREXX были единственные языки для прибытия предварительно упакованный, и даже затем, ОСНОВНОЙ прибыл в два диалекта (ABasic и AmigaBasic). Вы захотите посмотреть на Коллекцию рыб Fred или AmiNet для большего количества инструментов.

Для покупки коммерческих компиляторов судите Разработчиков Amiga CD, который доступен в Vesalia Онлайн, хотя могут быть другие.

Я ограничен редакторами простого текста или являюсь там IDE и доступными средствами отладки?

Вы в значительной степени вернулись к edit-save-compile-link-run-crash-whycrash-doh-fixit-edit циклу, IDE не легко доступны. Я посмотрел бы на что-то как DME (Макро-Редактор Dillon), также доступный на Коллекции рыб Fred или AmiNet (http://wuarchive.wustl.edu/pub/aminet/). Это предоставляет некоторые основные макро-услуги конструкции, которые помогут.

Если никакие инструменты уже не установлены, как может сделанный? Есть ли свободные?

Да. Снова, рыба Fred или AmiNet.

Я хотел бы выучить традиционный язык Amiga, Вы могли рекомендовать тот?

Дракон. Это было записано Chris Grey. Это - немного "примитива", но это должно предоставить Вам все, что необходимо начать, включая надлежащую привязку и константы. Язык компилируется и работает на скоростях, сопоставимых с C.

Что я должен использовать для компиляции языка, который Вы предлагаете?

Мэнским или Решеткой C были компиляторы C времени (если можно найти их, удачу), с мэнской охраной к 16 битам и Решеткой к 32 битам. Было несколько крошечных компиляторов на базе С. Существует 68k блок (neato система команд, по моему скромному мнению), Дракон, диалект Паскаля, возможно Modula-2, а также DICE (свободный компилятор C, но Вы ищете что-то еще)...

Вы могли предложить инструменты, которые я могу использовать для отладки предложенного языка?

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

Есть ли какие-либо библиотеки, о которых я должен знать, такие как библиотеки GUI?

Библиотеки все встроены. intuition.library является названием библиотеки, которая оказывает основную поддержку работы с окнами. gfx.library предоставит Вам высокоуровневые примитивы, и layers.library предоставит Вам поддержку вручения уникального подхода битового слоя к графике. Прежде чем Вы получите это далеко, Вы захотите посмотреть на должностное лицо, которое было основой и душой ОС. Это обеспечивает вытесняющую многозадачность, встроенные примитивы связанного списка, примитивы передачи сообщений, примитивы IO, и т.д. и было в большой степени снова использовано по всей системе. Если Вы поймете должностное лицо, то Вы поймете внутренности низкого уровня остальной части системы.

Следует иметь в виду, что состояние системы будет больше походить на встроенную игровую приставку, поскольку не будет никакой защиты памяти, поддержки SMP, и т.д. Все эти вещи не могли легко быть добавлены из-за конструктивных ограничений, которые были представлены незадолго до первого поставленного Amiga. Я, кажется, вспоминаю, что проблема была окружающей, как она обработает несколько процессоров и защиты памяти, учитывая, что все микроядро работает в non-priv режиме CPU.

Наконец, что не менее важно, магическое число равняется 4, который является адресом памяти. Тот адрес является указателем на должностное лицо (который не является только микроядром, но также и библиотекой), и с ним можно загрузить в остальную часть системы через OpenLibrary () вызовы. Библиотеки, которые не могли быть расположены, будут автоматически загружены из диска через AmigaDOS. Это - то, как Amiga занимался проблемой портативного кода - весь код был написан с помощью смещений в указатель на "основу" библиотеки и не было никаких фиксированных адресов кроме адреса 4. Каждая библиотека имеет таблицу вызова 6 байтов за запись (команда перехода) что затем векторы прочь в корректную точку входа. Было легко записать Вашу собственную библиотеку, если у Вас был правильный формат для Вашего "заголовка". Драйверы устройств "одолжили" структуру библиотек и использовали то же понятие для обеспечения обработчиков вводов-выводов по умолчанию.

Извините, если имена являются немного неправильными, эта информация первое, что пришло на ум почти от 20 лет назад...

Могут быть другие проспекты информации. Кто-то приложил усилие с Wiki и с некоторым поиском, я уверен, что можно узнать еще больше.

Некоторые вещи отметить...

Я выполняю Инструментальные средства 3.1 из эмулятора WinUAE.

Круто. Вы установлены. Это было последними большими "классическими" инструментальными средствами.

От Инструментальных средств я могу получить доступ к файлам от своего жесткого диска Windows.

Это поможет, но Вы захотите пойти "собственный компонент" как можно больше.

Я хотел бы кодировать и скомпилировать его от Инструментальных средств, если это возможно.

Посмотрите выше.

Я выполняю WinUAE в режиме A1200, не уверенном, если это имеет значение.

Это - модель аппаратных средств, которые Вы эмулируете; это была хорошая бюджетная машина, но попытка, устанавливающая его для A3000, если это возможно, который был хорошей высокопроизводительной машиной перед Commodore, испытала затруднения.

Уже существует приложение установленный названный MEmacs.

Дайте ему попытку, если бы Emacs является Вашей вещью... иначе я посмотрел бы на некоторые собственные инструменты.

знайте C++ и C# очень хорошо, возможно, существует подобный язык Amiga. Я знаю, что можно кодировать с C и C++, но я хочу выучить новый язык.

Затем Дракон для Вас. Это имеет большую часть привязки для библиотек, компиляции чисто, и это - официально "мертвый" язык, учитывая, он связывается с определенной аппаратной платформой. Очень определенный для Amiga.:)

Удачи! Сообщите всем, как это сложилось...

8
ответ дан Avery Payne 26 November 2019 в 22:32
поделиться

http://en.wikipedia.org/wiki/AmigaE

Это было похоже на C, но без указателей. У меня все еще есть своя система книги API дома где-нибудь.

6
ответ дан Paul Ruane 26 November 2019 в 22:32
поделиться

AMOS, как ранее упомянуто, является довольно достойным основным диалектом, хотя я, вероятно, смотрел бы на Блиц, Основной вместо этого. Или прямой 68k блок с помощью Asm ОДИН, конечно. Asm Каждый - своего рода IDE, просто не ожидают инструменты поддержки уровня Visual Studio.

SAS/C был моим предпочтительным оружием на платформе Amiga, хотя существуют порты других компиляторов C также.

5
ответ дан Hank 26 November 2019 в 22:32
поделиться

Шаг один, купите один из них.

Шаг два, купите один из них и установите его.

(Вы, возможно, также должны были бы ждать один из них, чтобы быть изобретенными.)

Шаг три, получите до 88 миль в час.

2
ответ дан Matt Cruikshank 26 November 2019 в 22:32
поделиться

Существует Amiga Developer CD 2.1 , который содержит все необходимое: все SDK (включая классические для 1.3, 2.0 и 3.1, и более новый для 3.5, который, насколько мне известно, также можно использовать на 3.9) и подходящий 68k C-компилятор.

Он все еще доступен у некоторых поставщиков, и я помню, как писал на нем кое-что. Это C, поэтому он должен быть довольно простым.

Нет поддержки AmigaOS4, но опять же, Workbench 3.1 был последней настоящей AmigaOS.

12
ответ дан 26 November 2019 в 22:32
поделиться

Эй, если вы хотите сделать программирование Amiga для удовольствия, есть NEW Software, которая будет качаться Мир:

Голливуд 4.5 от Airsoft Softwair

Это очень простой и веселый язык, в основном предназначенный для мультимедийных презентаций. Это язык сценариев, основанный на синтаксисе LUA, но он также напоминает мне немного старого добрых AMOS из-за многих и мощных функций GFX и звука. Он очень прост в использовании, поставляется с отличной документацией и многими примерами. Кроме того, это мультипликатор, интерпретатор / компилятор работает на всех различных платформах Amiga (включая OS 3.1, AROS, MORPHOS ...), а также готовые, скомпилированные скрипты даже без усилий на Windows, так и на Mac OS X!

Вы можете найти его немного подвизги на 89 евро, но я могу сказать вам, что стоит инвестиций, если вы хотите провести веселое программирование, и я не видел ничего подобного на любой другой платформе!

Вы можете проверить один из моих творений :-). Это боевая игра с реальными актерами, это делается в Голливуде, и версия Windows можно скачать прямо здесь:

http://dl.dropbox.com/u/2920309/bef-win32.zip

7
ответ дан 26 November 2019 в 22:32
поделиться

Это должен быть самый странный и в то же время весьма вдохновляющий вопрос.

Простите меня, я как бывший разработчик Amiga отказался от этой платформы. Идея написать что-то сейчас для меня довольно абстрактна.

Однако долг, связанный с платформой, которая, как я когда-то считал, может быть номером один, я должен старательно отвечать на ваши вопросы.

Средства программирования; либо 68k ассемблер, либо C с SAS / C

Лично я всегда использовал CygnusEd для редактирования, и я не знаю ни одной IDE. Я думаю, что у SAS / C была какая-то туманная IDE, но я не могу быть уверен, поскольку я использовал только отладчик исходного уровня (для меня это было очень новой вещью в то время).

Что касается бесплатных инструментов, я участвовал в создании GCC и библиотек для Amiga, но я понятия не имею, что случилось с этим проектом. Вероятно, что-то есть в моем A3000 в сарае, но мало причин для этого.

Единственный традиционный язык Amiga - это собственный ассемблер 68k. Но вы можете многое сделать с C при условии, что вы подробно прочитали 15 дюймов RKM.

Кстати, Амос был чушью. Игрушкой в ​​свое время.

Для отладки я использовал только SAS / C (или Lattice, как это было официально известно).

Существуют ли какие-либо библиотеки, о которых я должен знать, например библиотеки GUI?

Много. Чтобы эффективно кодировать на Amiga, вам действительно нужно знать, как много вещей об уровни ОС связаны вместе. В то время это было самым большим препятствием до интернета, когда информацию и знания было намного труднее получить.

Workbench 3.1 - первый из лучших. Я мог бы утомить вас подробностями, если только я мог их вспомнить.

Самым похожим на C ++ языком Amiga является C, и знание C даст вам лишь небольшую часть пути, поскольку дьявол кроется в деталях системных вызовов / библиотек.

Если вы хотите выучить новый язык, возможно, не выбирайте почти мертвую платформу. Если бы у меня было время, я бы изучал lua.

Амос все еще мусор, даже сейчас.

13
ответ дан 26 November 2019 в 22:32
поделиться

Не забывайте ARexx, который поставляется с большинством инсталляций Amiga. Это поистине замечательный язык, удивительно читаемый и простой в написании. Большинство существующих приложений на Amiga имеют перехватчики для ARexx, так что вы можете легко и эффективно собирать большие приложения из множества более мелких. Один из моих любимых аспектов ARexx - это универсальная обработка строк.Несмотря на то, что это интерпретируемый язык, он на удивление быстр, особенно если вы хорошо использовали его соединение с другими программами, чтобы делать для него низкоуровневые вещи.

9
ответ дан 26 November 2019 в 22:32
поделиться
Другие вопросы по тегам:

Похожие вопросы: