Вводный раздел этой статьи может быть слишком коротким, чтобы адекватно суммировать основные моменты . ( Май 2020 г. ) |
Разработчик | Юпитер Кантаб |
---|---|
Тип | Домашний компьютер |
Дата выпуска | 22 сентября 1982 г ( 1982-09-22 ) |
Начальная цена | 89,95 фунтов стерлингов (эквивалентно 400 фунтам стерлингов в 2023 году) |
Прекращено | 1984 ( 1984 ) |
Продано единиц | около 5000 единиц |
Операционная система | ТУЗ Форт |
Процессор | Z80 @ 3,25 МГц |
Память | 1 КБ (максимум 49 КБ) |
Съемное хранилище | Интерфейс кассеты (1500 бод ) |
Отображать | 32 x 24 монохромных символа, 127 переопределяемых символов 8 x 8 пикселей, полуграфика |
Звук | Бипер |
Jupiter Ace от Jupiter Cantab был британским домашним компьютером, выпущенным в 1982 году. Ace отличался от других микрокомпьютеров того времени тем, что его среда программирования использовала Forth вместо более популярного BASIC . [1] [2] Это отличие, наряду с ограниченным доступным программным обеспечением и плохим графическим дисплеем на основе символов, ограничило продажи, и машина не имела успеха. [3] [4]
Jupiter Cantab была основана Ричардом Альтвассером и Стивеном Виккерсом . [5] Оба были в команде разработчиков ZX Spectrum : Альтвассер работал над разработкой ZX81 и проектированием оборудования Spectrum. Виккерс адаптировал и расширил 4K ZX80 ROM до 8K ZX81 ROM и написал большую часть ROM для Spectrum.
Jupiter Ace был назван в честь раннего британского компьютера Pilot ACE [6] и поступил в продажу 22 сентября 1982 года по цене 89,95 фунтов стерлингов [2] .
Продажи для широкой публики были медленными. Первоначально компьютер был доступен только по почте, [2] и Jupiter Cantab сообщила, что были трудности с производством, но они были преодолены к январю 1983 года, и что устройства начали поступать в магазины. [7]
Использование Forth вместо более обычного выбора BASIC, а также доступность и успех ZX Spectrum, а также ограниченное количество опубликованного программного обеспечения, плохой корпус и небольшая начальная память — все это мешало более широкому принятию на рынке. В конце концов, Jupiter Cantab прекратил торговлю к концу октября 1983 года. [8]
В 1984 году бренд был приобретён компанией Boldfield Computing Ltd, которая продала оставшиеся акции по почте за 26 фунтов стерлингов. [8] В 2015 году бренд был снова продан компании Пола Эндрюса Andrews UK Limited. [9]
Продажи этой машины никогда не были особенно большими; сообщалось, что количество проданных Aces до закрытия Jupiter Cantab составило около 5000. [4] По состоянию на начало 2000-х годов сохранившиеся машины были редкостью и часто продавались по высоким ценам как предметы коллекционирования.
Forth, будучи структурированным и мощным, считался сложным для изучения, а знание BASIC, полученное при знакомстве с другими домашними компьютерами, не имело практической помощи в его изучении. В обзоре 1982 года говорилось, что «успех Jupiter Ace будет зависеть от принятия публикой, покупающей машины, другого языка микрокомпьютеров». [10]
Кроме того, для этой машины был выпущен лишь очень ограниченный набор программного обеспечения — либо коммерческих программ, либо программ для ввода текста, напечатанных в журналах для любителей, и они были ограничены небольшим объемом оперативной памяти базовой модели. [3]
Попытки продвинуть Ace на образовательном рынке также не увенчались успехом; сомнения относительно того, будет ли Forth актуален для программ экзаменов, и отсутствие поддержки Forth со стороны преподавательского состава были ключевыми проблемами. [11] Учащиеся были больше заинтересованы в изучении широко используемого BASIC, чем языка, используемого только одной (необычной) машиной со своеобразным синтаксисом RPN . [12]
Наконец, графика на основе плиток плохо сравнилась с графикой на основе пикселей других машин, которые также были цветными, а не монохромными, как у Ace. Это в значительной степени ограничивало продажи нишевым рынком энтузиастов технического программирования.
Jupiter Ace часто сравнивают с ZX81 из-за схожего размера, низкой стоимости и схожего форм-фактора . [13] Внутренне его конструкция больше похожа на ZX Spectrum, хотя Ace также имел выделенную видеопамять объемом 2 КБ, что отчасти позволяло избежать замедления, когда программы обращались к тому же банку (тем же чипам), что и видеопамять. Как и Spectrum, Ace использовал черные токопроводящие резиновые клавиши, хотя в отличие от Spectrum, клавиши имели токопроводящую накладку, которая была прижата непосредственно к дорожкам на печатной плате, а не использовала мембрану. В результате клавиши часто переставали надежно работать, пока их не очистили или не обновили токопроводящий материал.
Аудиовозможности контролировались процессором с программируемой частотой и длительностью. Звук выводился через небольшой встроенный динамик.
Как было принято в то время, он использовал обычный магнитофон вместо дисковых/ленточных приводов. Аналогично, телевизор был нужен в качестве дисплея – но он был только черно-белым, а не цветным, поддерживаемым конкурирующими моделями, такими как Spectrum. Вторичный (недокументированный) краевой разъем на задней стороне корпуса делал некоторые видеосигналы доступными, предположительно для будущей цветной видеокарты, но ни один официальный продукт, который использовал бы этот разъем, так и не был выпущен.
Jupiter Ace был создан на базе Zilog Z80, с которым конструкторы уже имели опыт работы над Sinclair ZX81 и ZX Spectrum.
И графика, и текст могли отображаться одновременно: (1) переопределение плиток символов обеспечивало стандартную графику 256×192, ограниченную 128 доступными (определяемыми) символами 8×8, одновременно с построением графики 64×48.
Внутренний динамик напрямую управляется процессором в однозадачном режиме с контролем частоты и продолжительности звука в миллисекундах .
Хранение осуществлялось через интерфейс кассетной ленты на скорости 1500 бод . Файлы могли использоваться как для хранения программ Forth (скомпилированный код), так и для сырых дампов памяти.
Ace имел 8 КБ ПЗУ , содержащее ядро Forth и операционную систему, а также предопределенный словарь слов Forth в 5 КБ. Оставшиеся 3 КБ ПЗУ поддерживали несколько функций: библиотеку чисел с плавающей точкой и таблицу определений символов, доступ к магнитофону, декомпиляцию и переопределение заново отредактированных «слов» (т. е. процедур). [14] Часть ПЗУ была написана в машинном коде Z80 , но часть также была закодирована в Forth.
Следующие 8 КБ были построены в ОЗУ, которое было декодировано лишь частично , при этом 2 КБ видеопамяти были отображены дважды, а 1 КБ пользовательской ОЗУ был отображен 4 раза (при этом одна и та же память появлялась по нескольким разным адресам памяти).
Использование зеркала видеопамяти с меньшим адресом выбирало приоритет ЦП, что приводило к появлению случайных пикселей на экране, когда видеоподсистема и ЦП обращались к видеопамяти в одном и том же тактовом цикле . Использование зеркала с большим адресом на короткое время останавливало ЦП из-за помех, влияя на синхронизацию программы и делая этот режим непригодным для операций ввода-вывода. Поскольку видеопамять была частично отделена от основных адресных и шин данных, по большей части видеоподсистема и ЦП могли работать параллельно .
Первые 16 КБ карты памяти использовались для ПЗУ, видео и доступной пользователю ОЗУ, вторые 16 КБ карты памяти оставались свободными для расширения ОЗУ, а верхние 32 КБ оставались неопределенными.
Один банк 1K позволял переопределять большинство из 128 символов на основе ASCII в формате битовой карты 8×8 пикселей . Другой банк 1K хранил полноэкранное отображение 24 строк × 32 столбцов символов в черно-белом цвете. Цвет предполагалось получить в качестве расширения, но хотя была разработана цветная графическая плата, [15] ни одна из них не была произведена в коммерческих целях.
1 КБ ОЗУ с возможностью 16 КБ RAM-Pack, а позже и 32 КБ. Печатная плата также была представлена Boldfield Computing, которая преобразовала краевой разъем для электрической совместимости с Sinclair ZX81, что позволило использовать пакет ОЗУ ZX81 16K. [16]
Характеристика | Ценить |
---|---|
Процессор | Zilog Z80A с тактовой частотой 3,25 МГц. [17] |
Операционная система | FORTH (как язык программирования и интерфейс командной строки ). |
Память | 2 КБ для видео + 1 КБ базовый с возможностью расширения до 49 КБ (без видео). |
Видео | Независимая подсистема с 2 выделенными банками SRAM : экран (1 КБ) + символьные плитки (1 КБ). |
Звук | Внутренний динамик, управляемый процессором (не выделенный). |
Расширение | 2 разъема: основной (связанный с процессором) + видео (экран + AV-сигнал). |
Клавиатура и набор символов | 40-клавишная QWERTY- клавиатура (доступ к символам с помощью дополнительной клавиши). Все символы в наборе символов (на основе ASCII-1967 ) являются переопределяемыми. |
Набор символов | Основан на ASCII-1967 с расширениями для набора символов ZX Spectrum, включая ↑, £ и ©. |
Ссылки на Ace RAM иногда включают отдельную видеопамять 2 КБ , которая не была доступна для программирования, что приводило к некоторой путанице. Аналогично, иногда утверждается, что из-за эффективности Forth стандартная RAM 1 КБ была фактически сопоставима по крайней мере с 2 КБ в системе BASIC.
Его наиболее отличительной чертой был выбор Forth, структурированного языка. Поточная компиляция позволяла программам, написанным для работы почти так же быстро, как и многие компилируемые нативные языки, загруженные более дорогими компьютерами. Forth считался хорошо адаптированным к микрокомпьютерам с их небольшой памятью и относительно низкопроизводительными процессорами. [18] Программы Forth эффективно используют память; по мере того, как они становятся больше, они повторно используют больше ранее определенного кода. [19] Управляющие структуры могли быть вложены на любом уровне, ограниченном только доступной памятью. Это позволяло реализовывать сложные программы, даже допуская рекурсивное программирование . Было заявлено, что Forth от Ace был «в десять раз быстрее, чем Basic» [20] [21] [22] и использовал менее половины памяти (значительный процент стоимости компьютеров низкого класса того времени) эквивалентной программы, написанной на интерпретируемом BASIC. [20] Он также позволял легко реализовывать процедуры машинного кода , если это было необходимо. [23]
Forth от Ace был основан в основном на Forth-79 с некоторыми существенными отличиями, [6] : 176 в частности, он добавил проверку синтаксиса для управления структурами и конструкциями определителей, а также было добавлено несколько дополнительных слов на основе общих команд BASIC для звука, видео и ленты. В реализации отсутствовали некоторые менее часто используемые слова Forth, которые легко реализовывались при необходимости. Проверку ошибок во время выполнения можно было отключить, чтобы повысить скорость на 25% - 50%. [6] : 171
Его Форт был адаптирован к аппаратному обеспечению домашних компьютеров, использующих ленточные носители, без дисков, благодаря возможности сохранять/загружать «скомпилированные словари» пользователя вместо обычных пронумерованных программных блоков, используемых в дискетных системах.
Декомпиляция избегала траты оперативной памяти при имитации отсутствующей блочной системы, используемой как с дисковыми, так и с ленточными драйверами (последние не следует путать с ленточными магнитофонами). В качестве замены он включал дополнительный файл данных для необработанных двоичных данных. Эти решения были уникальными для Jupiter Ace.
Чтобы разрешить декомпиляцию, он различает обычные слова определения Форта и создания компилятора, заменяя пару создания CREATE .. DOES>
, [24] на:
DEFINER .... DOES>
: Создать новые определяющие слова, обычно используемые для определения и построения структур данных. Аналогично CREATE..DOES
использованию в стандартном FORTH. [6] : 120 (Пример: Добавление структур данных в виде массивов, записей, ...).COMPILER .. RUNS>
: Создать новые слова компиляции, реже используемые для расширения языка с помощью слов компилятора, где CREATE..DOES>
реализация FORTH зависит от. [6] : 136 (Пример: новые структуры управления компилятором, такие как Case, Infinite Loop, ...).Эти две определяющие пары, а не одна в отдельности, позволяли Ace декомпилировать свои программы, в отличие от обычных систем Forth . Эта способность декомпиляции была решением проблемы отсутствия более гибкой дисковой системы, используемой Forth. Не сохраняя исходный код программы Forth, а компилируя код после редактирования, он полностью избегал эмуляции дисковода/ленточного накопителя в ОЗУ, экономя память компьютера . Он также экономил время при чтении и записи программ с кассетной ленты. Это дружественное к лентам и экономящее ОЗУ решение было уникальным для Jupiter Ace Forth.
Имена могут быть двусмысленными вне контекста Forth, так как все слова компилируются при объявлении. [25]DEFINER
определяет новый класс (как массив), который будет строить (компилировать) массив Object. [26] Они активны в «Интерпретаторе». Сопряжение этого режима взаимодействия COMPILER
определяет программную структуру (обычно пару или триплет) как IF-ELSE-THEN
. [27] Эти «Структурированные программы» активны в режиме «Компиляция» (который просто строит новое слово Forth). Короче говоря, «Режим интерпретации» означает стадию выполнения, тогда как «Режим компиляции» относится к стадии редактирования.
Избегание источников компенсировалось сохранением комментариев, введенных в код, вместе с скомпилированным выводом, традиционная компиляция отбрасывала такие комментарии. Комментарии затем восстанавливались при декомпиляции. В результате «код является источником», измененные слова (отредактированные) требовали актуализации всего кода с использованием только что отредактированного. Это было сделано с помощью нестандартной REDEFINE
команды.
Хотя это и не было специально разработано для этой цели, скомпилированный Forth мог использоваться для расширений ПЗУ встроенной системы. Внешние ПЗУ были разработаны с Ace Forth для использования в качестве управляющих приложений. [28] [29]
Машина могла использовать некоторые дополнения ZX81 из-за схожего расположения ОЗУ и внешнего слота расширения. Jupiter Cantab изготовила пакет ОЗУ на 16 КБ, а внешние компании изготовили аналогичные пакеты ОЗУ, а также другие периферийные устройства и интерфейсы.
Оригинальный Jupiter Ace issue 1 был представлен в 1982 году и имел вакуумно-вытянутый корпус. Сообщается, что было выпущено 5000 экземпляров. [37]
Jupiter Ace 4000 был представлен в 1983 году и имел более прочный литой корпус. Сообщается, что было выпущено 800 единиц. [38] [8]
Существует 51 известная коммерчески выпущенная видеоигра для Jupiter Ace [39]
Заголовок | Издатель | Год выпуска |
---|---|---|
Ace Invaders (Четвертое измерение) | Четвертое измерение | 1983 |
Ace Invaders (Hi-Tech Microsoft) | Хай-Тек Microsoft (Великобритания) | 1983 |
Вторжение Аса | Titan Programs Ltd (Великобритания) | 1984 |
Ace Pack 2 (Защита, Эскиз, Гонщик) | Программное обеспечение мечты | 1983 |
Ace Pack 3 (Picman, Breakout, Life) | Программное обеспечение мечты | 1983 |
ТУЗ Змея | Stusoft | 1984 |
Асевадеры | Микромаркетинг (Великобритания) | 1984 |
Защитник пришельцев | Boldfield Computing Ltd | 1984 |
Удивительный лабиринт | Boldfield Computing Ltd | 1984 |
Атический рейд | Boldfield Computing Ltd | 1984 |
Приключения на Черном острове | Boldfield Computing Ltd | 1984 |
Атака в пещере | Хай-Тек Microsoft (Великобритания) | 1984 |
Сороконожка | Boldfield Computing Ltd | 1984 |
Минные поля / Касс Брикес | ERE Informatique (Франция) | 1983 |
Шахматы | Boldfield Computing Ltd | 1984 |
Лебедь | Boldfield Computing Ltd | 1984 |
Человек-точка (Суширо) | Микромаркетинг (Великобритания) | 1984 |
Duckshoot / Minefield / Zapem | Микромаркетинг (Великобритания) | 1984 |
Неуловимый отшельник / Acesnake | Stusoft | 1984 |
Жар-птица | Программное обеспечение Voyager | 1983 |
Рыба / Порхающая птица | Юпитер Кантаб (Великобритания) | 1983 |
Фроггер (Boldfield Computing Ltd) | Boldfield Computing Ltd | 1983 |
Галактическое Вторжение | JRS Software Ltd (Великобритания) | 1983 |
Игровая кассета первая (Brick Catcher, Asteroids, Street Racer, TimeVaders) | Программное обеспечение Voyager | 1983 |
Игровая кассета три (Бомбардир, Джекпот) | Программное обеспечение Voyager | 1983 |
тарабарщина | Юпитер Кантаб (Великобритания) | 1983 |
Жадный Обжора / Взрывая Мир | Юпитер Кантаб (Великобритания) | 1983 |
Зелёная лягушка-крест | Хай-Тек Microsoft (Великобритания) | 1982 |
Игровая кассета Jovian 1 (Aceteroids, Demolition, Moneymatrix, Golfgrid, Duckinvaders) | Игры Джовиана | 1983 |
Прыгун | Каллисто Программное обеспечение | 1984 |
Вдохновитель | Хамсофт | 1983 |
Звезды памяти | Хай-Тек Microsoft (Великобритания) | 1984 |
Метеор Гонщик | Четвертое измерение | 1983 |
Микро-лабиринт | Хай-Тек Microsoft (Великобритания) | 1983 |
Миллепеда | Мягкое пятно | 1983 |
Ракетчик / Летчик-истребитель | Юпитер Кантаб (Великобритания) | 1983 |
Му / Палач | Юпитер Кантаб (Великобритания) | 1983 |
Отелло | Юпитер Кантаб (Великобритания) | 1983 |
Обгонщик / Брэндс-Хэтч | Юпитер Кантаб (Великобритания) | 1983 |
Совёнок | Каллисто Программное обеспечение | 1983 |
Головоломка / Бомбы | Boldfield Computing Ltd | 1984 |
Змея / Суперлетучая мышь | Waylandsoft | 1983 |
Космическая битва | Хай-Тек Microsoft (Великобритания) | 1984 |
Супершахматы II | Программное обеспечение CP | 1983 |
Болотные монстры | Микромаркетинг (Великобритания) | 1984 |
Кассета 5: Фроггер | Ремсофт | 1983 |
Кассета 12: Frogger / Scramble / Meteor / Breakout / Star Wars | Ремсофт | 1983 |
Титановый защитник / Двойная дуэль | Stusoft | 1984 |
Тройной набор 1: пилот воздушного шара / волан | Boldfield Computing Ltd | 1983 |
Червь | А.Кертис | 1983 |
Зомби и выбоины | Юпитер Кантаб (Великобритания) | 1983 |
Другие микрокомпьютеры на базе Форта:
Micro Z80 3,25 МГц [...], Jupiter Ace [...]