Просмотр полной версии : MITS Altair 8800
Решил поделиться результатом моих извращений на тему древних компов из далеких 70-х. Поставил перед собой задачу сделать что-то вроде эмулятора компьютера Altair 8800 в железе. И вот что получилось... Небольшой девайс (ATmega8515+SRAM+I2C FLASH+MAX232) который эмулирует работу Altair... и может запускать интерретатор Basic 3.2 для него (тот самый бейсик с которого началась карьера Билла Гейтса, этот интерпретатор продавался не на дискетах и даже не на кассетах... он продавался на перфолентах:v2_wacko:). Девайс подключается к любому терминалу по RS232.
Подчеркну, что AVR эмулирует не Baisic, а сам комп... точнее проц Intel 8080, RAM и плату SIO. На эмуляторе запущен оригинальный Baisic 3.2
Понятно что девайс сделан "Jast for fun" и посвящается всем любителям древних компов.:)
Ну, там не столько Бейсик интересен, сколько куча всего другого. Писишка что...эмулирует только терминал?
Ну, там не столько Бейсик интересен, сколько куча всего другого.
Вроде этот Бейсик вообще одна из ключевых софтин в истории ))) Что еще там интересного?
Да... PC используется как терминал.
Добавил в проект ввод с PS/2 клавы. Осталось прикрутить свой генератор VGA сигнала на AVR и будет полноценный "эмулятор" Altair 8800.
Читал тут описание Altair Basic и наткнулся на следующий абзац (обратите внимание на фамилии).... прям за душу берет. :)
есть отличный эмулятор этого....
кхм...
компьютера ? :)
http://www.altair32.com/
кроме эмулятора там довольно много всевозможных касет, дискет и прочих файлов.
вот только как этим пользоваться я так и не допёр, сколько тумблеры не щёлкал результата чёто особо не видно.
Да... помню как я дрюкался с этим эмулятором чтобы запустить Basic. В конце концов запустил. Но скажу что прога глючная и с массой ошибок... отказался от ее использования, когда нашел simh (эмулятор не только altair). Кстати код simh помог мне написать эмулятор проца Intel 8080 (ВМ80) для сего проекта.
Для Altair есть и другие бейсики: от Processor Technology и Tiny BASIC (требует всего 2K памяти в отличие от микрософтовского)
ZEman, запуск Basic на Altair 32:
1) запускаем эмуль и "включаем питание"
2) открываем файл lodr_4k.hex
3) жмем тумблер reset
4) поднимаем тумблер A15
5) F3 и открываем файл 4kbas32m.tap
6) тумблер RUN
Бейсик запущен, но с неправильными установками терминала... делаем дальше:
7) тумблер stop
8) тумблер A15 вниз
9) тумблер Examine
10) тумблер A11 вверх
11) тумблер RUN
Откроется окно терминала с Basic
---------- Post added at 19:06 ---------- Previous post was at 19:02 ----------
Для Altair есть и другие бейсики: от Processor Technology и Tiny BASIC (требует всего 2K памяти в отличие от микрософтовского)
Честно говоря не знал об этом... Надо будет попробовать запустить на своей машинке что-нибудь кроме Altair Basic 3.2.
Теперь видите ( в этом эмуле) сколько там софта! Там и Cobol даже имеется. И кстати, оказывается была версия и на z80 сего чуда-юда.
Все остальное конечно тоже интересно... но сыграло не такую значительную роль в истории.
А что там еще можно откопать идучи по ссылкам...офигеть!
TI 990
http://www.cozx.com/~dpitts/ti990.html
BASIC, COBOL, TPL, FORTRAN IV, PASCAL аж 3х видов(!), FORTH, FOCAL
Куча PDP-ных эмулей и софта
http://www.bitsavers.org/
словом, налетай, разгребай! Всё даром!
Ну вот уже потихоньку что-то вырисовывается... подцепил свой генератор VGA сигнала (зеленая плата) через RS232. Итого... теперь моему "клону" Altair ПЦ не нужен.
Теперь бы еще microSD подсобачить со всяким старым софтом, в корпус и на продажу :) Дешевая альтернатива школьным компам. Ну, в принципе он уже и так вполне. Только где проги хранить бейсиковские?
Сам бейсик зашит в I2C флешку... там можно и проги хранить, если взять ее пообъемистей, а не 8Кб как у меня. Также у меня в проекте всего 4Кб RAM... тоже можно расширить, а то 700-900 байт (которые остаются после загрузки бейсика) для проги думаю мало.
Расширил RAM (поставил микруху 61256)... получилось запустить Basic 4.0 (он же 8K Basic).
Так же решил, что зеленый цвет в терминале будет как-то по олдскульней.:)
Клево! 8080Exerciser уже прогнал, все исправно?
Еще не пробовал, но хотелось бы... Нашел версию только под CP/M и исходники. Просто CP/M я еще не пробовал "грузить"... бейсик тупо грузится с 0-го адреса и оттуда-же запускается. Без CP/M соответственно будут еще проблемы и с выводом результатов.
А вообще, когда у меня бейсик не запускался, я написал прошивку для своей системы с возможностью вывода инфы о состоянии CPU после выполнения кажной команды. Потом тупо сидел и проверял со справочником каждую команду и ее реализацию на си. Прошелся 2 раза и не нашел ошибки... ошибка оказалась в эмуляции платы SIO (последовательный порт).
А вообще при написании эмулятора 8080 для AVR я испоьзовал эмулятор simh. Его ядро пришлось перевести с 32-bit реализации в 8-bit (всего-то :) ).
Ну, когда запустишь CP/M, не забудь запустить Exerciser. SIMH хорош, но не идеален: он тоже сделан по справочнику и проверен только на простом софте, который так же написан по справочнику.
sergey2b
22.10.2009, 13:24
Zloy,
Если это не секрет могли бы вы пожалуйста дать схему и прошивку для вашего эмулятора Altair 8800
Я хотел бы собрать его
Ваш личный ящик переполнен поэтому отослать личное сообщение не получилось.
Схему дать не могу т.к. ее нет... собирал понемногу (проект самообразовательный). Подцепил SRAM поигрался, собрал генератор видео... и т.д. Прошивки в проекте 3... 2 для ATmega32 и 8515 + одна I2C FLASH. Если есть желание повторить... скину прошивки позже. Надо разбираться какая свежая...
Реально было желание довести проект до логического завершения... платка + схема. Но как-то народ не заинтересовался... Возможно в ближайшее время все же завершу.
Повторять схему МГТФ-ом думаю нет смысла.
---------- Post added at 13:27 ---------- Previous post was at 13:21 ----------
и вга терминала тоже...
VGA терминал буду переделывать под ATmega64... на АTmega32 нереально сделать 80 символов в строке без разгона (из-за нехватки RAM знакогенератор хранится во FLASH ... а читать оттуда очень медленно).
Но как-то народ не заинтересовался.
Народ заинтересовался. Я вот, например, слежу за этой темой. Эмуляция i8080 в Atmegе меня особенно заинтересовала.
Ну тогда будем продолжать... ))) Схемку и прошивки я торжественно обещаю в ближайшее время.
Реально... эмуляция 8080 в AVR это самое ценное в данном проекте. Я просто волосы на себе рвал, когда лепил это дело из исходников simh. Simh 32 бит, а AVR 8 бит... это было самое большое препятствие.
sergey2b
22.10.2009, 15:11
Zloy,
Я заинтересовался с самого начала, но было впечатление что вы не хотите выкладывать на паблик
>Реально было желание довести проект до логического завершения... платка + >схема. Но как-то народ не заинтересовался... Возможно в ближайшее время все >же завершу.
у меня все равно нет возможности получить посылку из СНГ так что я влюбом случаи буду собирать на слепыше
>Повторять схему МГТФ-ом думаю нет смысла.
можно взять макетную плату с полосками на всю длинну платы
у atmeg очень удачно сделанна разводка так что на таких платах МГТФ минимум
дорожки резать не скальпелем а сверлом (3-5 оборотов сверла пальцами и дорожка порезанна) могу показать фотки откуда я идею как компоновать взял
>VGA терминал буду переделывать под ATmega64... на АTmega32 нереально сделать >80 символов в строке без разгона (из-за нехватки RAM знакогенератор хранится
пожно взять готовый контролер на atmega 1280 стоит 20-25$ в принципе собирать самому получиться на 5-10$ дешевле
пожно взять готовый контролер на atmega 1280 стоит 20-25$ в принципе собирать самому получиться на 5-10$ дешевле
ATmega64 стоит у на 5$... кроме него в схеме еще 1533ИР10 и транзистор 3107(3102). ТОже хотел взять вместо mega64 mega640/1280, но их нет в продаже... только под заказ. А что за готовый контроллер?
sergey2b
22.10.2009, 15:55
Zloy,
>взять вместо mega64 mega640/1280, но их нет в продаже...
я заказываю в амер так как у нас тоже нет
напишите пожалуйста на sergey2b@_gmail.com я пришлю ссылки
у меня все равно нет возможности получить посылку из СНГ так что я влюбом случаи буду собирать на слепыше
Ну тогда ждите схему...
---------- Post added at 14:56 ---------- Previous post was at 14:55 ----------
напишите пожалуйста на sergey2b@_gmail.com я пришлю ссылки
Я почистил личные сообщения... можно кинуть туда. А вообще мой ящик: sergby@tut.by
sergey2b
22.10.2009, 16:05
я отослал письмо
Глянул модули...
Если их использовать, то радиолюбительства не останется ничего... )))) и так сейчас основная работа сводится к написанию прог/прошивок. Но я люблю подержать и паяльник в руках.
Имхо эти модули брать не стоит т.к. в них ничего нет... на плате контроллер и пара пассивных компонентов. Лучше взять контроллер... переходную платку под корпус TQFP (у нас я нашел дешевые за 0,75$) и макетку.
Вот я подготовил платку для нового VGA терминала:
И еще... реально хотелось сделать все устройство на одном контроллере. Но быстродействие при этом сильно пострадает т.к. процентов 80 mega32 занята выводом графики, все расчитывалось до такта (один такт - 1 пиксель, за 8 тактов нужно успеть считать байт и передать в порт, экран хранится в виде кодов символов а не в точечном формате, поэтому нужно успеть и перекодировку сделать налету за эти 8 тактов; эта часть написана на асме)... оставшегося времени (когда нет вывода изображения) явно недостаточно для эмуляции проца на Си и обслуживания клавы (у меня это сделано по прерыванию - самый простой вариант).
sergey2b
08.11.2009, 10:07
если не секрет есть ли у вас прогресс?
Но быстродействие при этом сильно пострадает т.к. процентов 80 mega32 занята выводом графики,
наверное видео можно сделать на atmega8
+5$ на ситуацию не повлияет
еще как на zx80 отключать видео на время глобалных оперраций счета (хотя играть станет не возможно)
alexeilm
15.12.2009, 05:34
Если не секрет, как дела?
Сейчас жду контроллер atmega644 в DIP40... с atmega64 в TQFP у меня ничего не получилось (то ли я его сжег при пайке, то ли контроллер попался дефектный) - шить шьется, но ничего не работает, даже светодиодом поморгать не получается. Попробую запустить mega644 на 25 мгц (штатная 20) и получить 80x40 символов.
Схему начертить никак руки не доходят. Начерчу, когда буду разводить окончательный вариант, а это будет когда переделаю видео генератор и добалю загрузку программ. Проектом занимаюсь время от времени...
---------- Post added at 16:27 ---------- Previous post was at 16:23 ----------
наверное видео можно сделать на atmega8
очень мало RAM
Первые результаты экспериментов с Atmega644.
Чип без проблем завелся на 25 Мгц... удалось получить картинку 80x40 символов (символ 8x12 точек, разрешение 640x480). Теперь можно и эмулятор дальше развивать, и сообразить эмулятор терминала как отдельный девайс. Возможно, что и Радио 86РК тоже можно будет проэмулировать.
...и сообразить эмулятор терминала как отдельный девайс.
Оч. инересно!
немного офф, но в тему, http://cnews.ru/news/top/index.shtml?2010/04/02/385265
Умер автор Альтаира...
Работа над проектом по-немногу продвигается... Добавлен цвет (по принципу спека - атрибуты знакоместа) и разведена односторонняя плата эмулятора терминала. Из-за того что в макете использовался тактовый генератор, а плату я развел под кварцевый резонатор... добиться устойчивой работы ATmega644 на частоте 25 МГц на плате не удалось (при включеном рядом компе плата периодически сбоит). Придется переводить все на 20 МГц, а это значит, что о 80-ти символах в строке можно будет забыть.:( Также добавлена поддержка команд VT52, на VT100 сил не хватило.
помер Эд Робертс (http://www.thegatesnotes.com/Thinking/article.aspx?ID=126)
добиться устойчивой работы ATmega644 на частоте 25 МГц она по даташиту и не должна
Понятно, что не должна... Но очень надо было ))) Надо отметить, что на макетке с внешним генератором все работало на ура.
Односторонняя плата это очень плохо с точки зрения помех на таких частотах. А про 25 MHz это просто у тебя внутренний генератор не должен заводится сам от кварца устойчиво. Почему не поставить генератор 25 MHz на плату? Есть же миниатюрные и какие хочешь, на любые напряжения питания. Еще вариант уйти на AVR® XMEGA, там более высокочастотное ядро.
Еще вариант уйти на AVR® XMEGA, там более высокочастотное ядро.
Думал об этом... но нет чем шить.
Работа над проектом по-немногу продвигается... IMHO такой момент: Если к проекту подобрать корпус (похожий на настоящий Altair 8800, то буржуины будут заказывать такие штуки на ура.
Возможно. Видел в нете проект реплики Altair... так комплект стоил больше штуки.
Пока о коммерческой стороне не думаю - рано. Но Altair за бугром явно интересен...
В любом случае для форумчан прошивки и печатки я выложу.
IMHO такой момент: Если к проекту подобрать корпус (похожий на настоящий Altair 8800, то буржуины будут заказывать такие штуки на ура.
буржуины и спринтер неплохо заказывали, только к корпусам надо бы еще и в нормальной стране оказаться, а то из РФ продавать крайне геморно как мне Алексей Горячев рассказывал (руководитель проекта спринтер)
Програматор для XMEGA
http://electronix.ru:1288/forum/lofiversion/index.php/t66758.html
а вот здесь по ссыле из треда сами девайсы, в самом низу
http://www.mcuzone.com:8080/dokuwiki/doku.php/english_home_page
Пока о коммерческой стороне не думаю - рано. когда надумаешь сообщи, проект очень интересный!
буржуины и спринтер неплохо заказывали, только к корпусам надо бы еще и в нормальной стране оказаться, а то из РФ продавать крайне геморно как мне Алексей Горячев рассказывал (руководитель проекта спринтер)Zloy вроде не в России ;). Может "у батьки" такой бизнес будет проще :)
Кстати, я тоже могу привезти
AVRISP mkII In-System Programmer за $52 в рублях по курсу ЦБ+2% без стоимости пересылки
http://www.atmel.com/dyn/resources/prod_documents/AVRISPmkII_UG.pdf
в Компэле их нет.
Zloy вроде не в России . Может "у батьки" такой бизнес будет проще
Как бы не так! У Батьки своих заморочек хватает. Беларуси нет даже в списке стран с которыми работает PAYPAL. Вот и приходится при регистрации писать Россия... регион: Беларусь и надеяться, что товар дойдет (кстати проверено - работает) :)))
---------- Post added at 23:22 ---------- Previous post was at 23:20 ----------
когда надумаешь сообщи, проект очень интересный!
Спасибо за интерес к проекту. Когда понимаешь, что это кому-то интересно... работать намного проще.
SpecialistMK87
05.04.2010, 08:41
Очень интересный проект, здорово! Altair 8800 важная часть истории... как и Basic для него... Помню первый номер Компьютерры с переводом интервью с Биллом Гейтсом как он писал этот бейсик. А как насчет шины S-100? Не планируется?
А как насчет шины S-100? Не планируется?
Если планировать S-100, то проще бы уже было сделать реплику Altair (с настоящим процем). У меня проект в духе минимализма, так что S100 никак не получится. Да и зачем? Плат под нее все ровно у нас не найти.
sergey2b
05.04.2010, 19:44
вот продают набор для сборки Altair http://cgi.ebay.com/Mits-Altair-8800-CPU-board-kIt-S100_W0QQitemZ330419688468QQcategoryZ4193QQcmdZVie wItemQQ_trksidZp4340.m8QQ_trkparmsZalgo%3DMW%26its %3DC%26itu%3DUCC%26otn%3D20%26ps%3D63%26clkid%3D89 97833860137034322
только не понятно это новый или с тех времен остался
Это только процессорная плата... Скорее всего родная (по крайней мере так написано). Кроме нее понадобится еще много чего (плата RAM, ROM, SIO - плата последовательного порта, панель со светодиодами и тумблерами - это самый минимум для работы).
alexeilm
23.08.2010, 17:12
Тема умерла?
http://cgi.ebay.com/S-100-Z-80-CPU-Board-PCB-only-/130387474980?pt=LH_DefaultDomain_0
alexeilm
25.08.2010, 06:22
Нет, сама тема, MITS Altair 8800 на ATmega ?
Powered by vBulletin® Version 4.2.5 Copyright © 2025 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot