nedoPC.org

Electronics hobbyists community established in 2002
Atom Feed | View unanswered posts | View active topics It is currently 28 Mar 2024 13:58



Reply to topic  [ 18 posts ]  Go to page 1, 2  Next
CP/M компьютер на Z80 
Author Message
Doomed
User avatar

Joined: 04 Jan 2016 09:15
Posts: 649
Location: Russia, S.- Peterburg
Reply with quote
Решил активировать сборку 8-разрядного компьютера на Z80.

В начале 90-х годов были заказаны печатные платы контроллера на процессоре Z80A. Одноплатный компьютер планировали использовать в приборах для химико-биологического анализа. Сохранились схемы, две платы.

Какая цель?

В начале инженерной карьеры, после института, рядом были отличные советские инженеры. Учили, делились знаниями. Помогали с микросхемами, схемами, программным обеспечением.

С 8-разрядной операционная системой CPM-2.2 познакомился в отделе акустики института им. А.С.Попова. Это была собственная разработка сотрудника Манохина Петра. Сосед. Иван, напротив, также собрал себе компьютер на К580ВМ80А.

Позднее от сотрудников кафедры биомедицинской электроники получил в дар два компьютер с дисководами "Правец 8С — аналог Apple IIc", в котором был установлен дополнительный процессор Z80A для работы с CP/M-2.2. Увы, на дисках была только Apple DOS. А как хотелось иметь именно рабочую CP/M-2.2!

В химико-биологическом отделении мы заказали и купили персональный рабочий компьютер на Z80A CP/M-2.2, программатор ПЗУ, программатор К1816ВЕ48, программы для разработки i8035,i8048,i8031 в Ленинградском институте ЛИТМО. Компьютер использовали так 1/2 времени - программист, 1/2 - руководитель. Он быстро освоил редактор текстов ME, базу данных DB2, язык Basic. Не хватало внутрисхемной отладки. Разработал схему для плат КР1816ВЕ35, сделал вставки в отладчик SIM48 и дамп памяти отправлял в ОЗУ, которое и исполнялось на плате прибора.

Пару лет назад нашел открытый проект CP/M-2.0 для ESP8266. И, конечно же, за пару вечеров прошил и был очень доволен! Программы из 90-х годов запустились. Собрал проекты на ассемблере для К1816ВЕ35/48. Не смог прочитать диски 360 КБайт. Устройство оказалось неисправным. А так хотелось! Это ещё предстоит. Необходимо проверить родной дисковод флоппи дисков.

На прошлой неделе "подтягивал" в linux инструментарий для Z80A. Смотрел видео о эмуляторах ZX Spectum. Для меня была неожиданность, что фирма Amstrad выпустила ZX Spectrum +2 и ZX Spectrum +3, в которых была встроена CP/M .

Одним словом - фанат классической операционной системы CP/M !!

Фирма Digital Research выложила исходные коды операционной системы CP/M 2.2 http://www.cpm.z80.de/source.html


Приглашаю участников форума, гуру, продвинутых за помощью для платы c Z80A, с нуля, создать прошивку ПЗУ операционной системы CP/M-2.2

Шаг за шагом создать работающую ось на нативном процессоре.


Attachments:
File comment: Одноплатный компьютер на Z80A.
z80_CPM_2_2.jpg
z80_CPM_2_2.jpg [ 169.49 KiB | Viewed 13205 times ]

_________________
"Ученье свет, а неученье — тьма. Дело мастера боится, и коль крестьянин не умеет сохою владеть — хлеб не родится." (С)
27 Apr 2020 13:18
Profile WWW
Doomed
User avatar

Joined: 19 Feb 2017 03:46
Posts: 584
Location: Санкт-Петербург, Россия, третья планета от Солнца, галактика Млечный Путь
Reply with quote
Post 
askfind wrote:
В начале 90-х годов были заказаны печатные платы контроллера на процессоре Z80A
Лучше бы была схема или словесное описание архитектуры. В общих чертах можно догадаться по печати. Т.к в банке ОЗУ ноги 2-14 соединены, 8,16 питание, а нога 1 висит), то видимо, кроме ВВ55, контроллер содержит банку ОЗУ РУ6 или РУ5, ПЗУ 2764 и вероятно, ВИ53 или Z80-DMA UB857 (ВВ51 вряд-ли, т.к для неё надо ставить и ВИ53).

Такая платка будучи в 1988 или 1989 году опубликованной в массовом журнале была бы успешна у любителей. Т.к хочешь добавляй к ней любой текстов адаптер, хочешь используй просто как контроллер, хочешь добавляй граф.адаптер по схеме Специалиста и получай графику. Без такой платки энтузиасты проводками паяли такие схемки. Я и сам так делал и беседовал в 1989...1992 примерно с пол-десятком других людей кто так делал.

Конструктив в виде модулей правильный. Только разъём удобнее не ГРПМ-61, а ГРПМ-45 (потому у меня до сих пор лежит спаянная кросс-плата аж с восемью разъёмами ГРПМ-45). Идея кросс-платности из Альтаира-8800 - это разумно для самодельного компьютера.
askfind wrote:
Решил активировать сборку 8-разрядного компьютера на Z80
Неясно, речь о том, чтобы Вы сделали для себя единичный экземпляр используя готовое МП-ядро, платка которого на фото, или речь о том, чтобы подключив ещё хотя бы несколько интересантов, создать хотя бы крошечную новую платформу для тех, кто захочет узнать, как жили их предки древние славяне, т.е посмотреть программы CP/M.

Опишите полностью конструкцию планируемого CP/M-компьютера. В первую очередь интересует какое устройство отображения (м.быть плата граф.адаптера, - например 640*200 от ИРИШИ или 384*256 из RFE 10.1987 или текстов адаптер на мелкой TTL-логике или БИС) и какая планируется массовая память, т.е какой CP/M-привод (т.е флоп / винт / RAM / флэш).

Т.к не вижу у Вас ни платы текстового адаптера, ни платы графического адаптера и, если речь о новой платформе, то намного разумнее взять плату Специалист-Экспресс и доработать. Достаточно расширить экран до 448*256 или 512*256 (кварц 8 МГЦ меняем на 10 или 11 МГЦ) и ввести крошечное изменение архитектуры, чтобы было 48К сплошного ОЗУ. Это напайка 4-5 доп.корпусов вторым этажом. И чтобы поиметь CP/M нужен контроллер НГМД, винчестера или флэша, или внешний эл.диск.

В простейшем случае меняем на плате Экспресс РУ5 на РУ7 и в DOS из доп.ОЗУ организуем эл.диск на 192 кб. Если решить проблему быстрой перекачки файлов из PC, то этого вполне достаточно. Как раз для экрана Специалиста/ОРИОНА есть экранные драйверы на любой вкус. Это расширение имеющейся платформы Специалиста и годится ПО Специалиста. Потому такая платформа могла бы поиметь несколько фанатов. Только для такой (или подобной) платформы можно писать программмы. А для текстовой машины ничего не напишешь.

А чисто CP/M-компьютер, ни с кем несовместимый, - неинтересен и бесперспективен. Ведь реальной пользы от ретро программ типа SuperCalc, MultiPlan, dBase-II и т.п - сейчас нет, а чтобы посмотреть пяток убогих текстовых CP/M-игр, достаточно РК86. Единственная ценность в CP/M это наличие в этой DOS компиляторов ЯВУ, а они работают в MSDOS и даже в Win XP через TSR-эмулятор.
askfind wrote:
Apple IIc, в котором был установлен дополнительный процессор Z80A для работы с CP/M-2.2. Увы, на дисках была только Apple DOS. А как хотелось иметь именно рабочую CP/M-2.2!
У меня была та же неприятность. В начале 90-тых я поимел Apple-II+ с дисководами, 128К и платкой Z80Card, было ~40 дискет с играми в Apple-DOS и PRODOS, но дискеты CP/M не было. Я бы и сам сделал, но это сложно, - для этого надо выдрать из Apple-DOS подпрограммы чтения/записи сектора в кодах 6502 и конвертировать их в коды для Z80, чётко соблюдая времянки (т.к КНГМД там программный). Дизассемблера не было, а мини-дизассемблером монитора трудно дизассеблировать DOS 10 кб.
askfind wrote:
Digital Research выложила исходные коды операционной системы CP/M 2.2
Те кому это было надо в своё время дизассемблировали сами. Имея исходник, установка CP/M заключается в написании процедуры деблокирования (если физический сектор имеет размер отличный от 128 байт) и двух подпрограмм - чтения и записи на диск любой природы массива размером кратным 128-ми байтам.
askfind wrote:
создать прошивку ПЗУ операционной системы CP/M-2.2
Непонятна терминология. Слово прошивка подразумевает, что речь о ПЗУ. Я не встречал версии CP/M-BDOS переделанной под ПЗУ, хотя CCP и CP/M-BIOS без переделок транслируются для ПЗУ (достаточно изменить лишь адреса блока раб.ячеек и стека). Да и BDOS переделать для работы из ПЗУ - это труд лишь на десяток минут (т.к там переменные и раб.ячейки есть и в конце кода, как обычно принято, но есть и в середине кода). Для программ написанных профессионалами нет проблем при переделке в ПЗУ, т.к они не используют трюков с модификацией кода (у профессоналов это считалось дурным стилем), а вот в 70-80% любительских программ используется само-модификация кода.
askfind wrote:
Шаг за шагом создать работающую ось на нативном процессоре
Тоже непонятно о чём это. Если о использовании CP/M, то это слишком просто и в этом нет никакого интереса, а вот написать свою DOS это интересно. При использовании CP/M нет никакого пути шаг за шагом, т.к это задача на один присест. Кстати, для CP/M родной процессор это не Z80.

 
Quote:
Шаг за шагом по теме DOS возникает лишь, если пишешь свою DOS. Кстати, DOS написать несложно (DOS уровня CP/M пишется максимум за месяц, а макроассемблер пишется за 3 месяца, а хоть какой-то компилятор за полгода). Чтобы не звучало как фантазии, упомяну, что в конце 90-тых, за несколько лет я написал 4 разные DOS, из них лишь одну на основе CP/M.

Трудность не в том, чтобы написать DOS, а в том, чтобы придумать хорошую идею. Довод, что самодельные DOS бессмысленны, т.к для них нет программ - "не играет". Т.к естественно номера большинства функций BDOS и п/п-мм BIOS совмещаются с CP/M. Потому программа, что не лезет в дискету годится сразу, а та, что лезет в диск нуждается в минимальной адаптации. Потому ассемблер, отладчик и нортон для DOS есть сразу. Остальное из CP/M мне было просто не надо.


Что касается адаптации CP/M для любой машины на Z80, то это совсем не проблема. В этом даже я могу помочь.

Для RAM-диска из ОЗУ это можно сделать, как только Вы точно опишете архитектуру коммутации доп.ОЗУ. Причём хотя такая DOS точно заработает и без проверки (я это делал десятки раз и всё работало сразу-же), но можно проверить и в эмуляторе, т.к практически для любой конструкции диспетчера памяти доп.ОЗУ несложно создать нужный конфиг для эмуляторов EMU или EMU80. Всегда удобнее иметь CP/M с RAM-диском и отлаживать железный КНГМД удобнее уже из CP/M работающей с эл.диском.

А вот для физических носителей нужен эмулятор. Без эмулятора могу помочь при использовании приводов под которые у меня есть готовые исходники. Это: РК-КНГМД, КНГМД Корвета и IDE-винчестер (контроллер: мой вариант на трёх ИМС 1533-серии). Удобнее всего применить КНГМД по схеме Корвета (порты в области памяти, а не IN/OUT), - такая CP/M транслируется за 3 минуты под любой объём ОЗУ и любой ROM-BIOS и её отлаживать в эмуляторе или реале не требуется.


Last edited by barsik on 28 Apr 2020 04:39, edited 3 times in total.



28 Apr 2020 03:36
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
rw6hrm wrote:
Я уже попробовал переделать Спец под требования СР/М и понял, что это либо должен быть интеллектуальный терминал к другой машине, либо отдать кошкам, чтобы закопали.

Неужто не справились? :o А говорил "бог... бог..." :lol:
Великолепно Спец_МХ с СР/М работает. Хотя, конечно, это всё ретроспектива...

P.S. А что касается "совецкого инженера" - бедный... не бедный... но гением он был. При такой
аппаратной простоте сделать такую шикарную графику 384х256 - никто не смог. Я много просмотрел
схемотехники популярных компиков - никто не смог. Даже когда за IBM-PC сел - это было очень
убого: 320х200 и 640х200 при несоизмеримых аппаратных затратах.

_________________
iLavr


28 Apr 2020 17:17
Profile
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22412
Location: Silicon Valley
Reply with quote
Перенёс тему в ZILOG

_________________
:dj: https://mastodon.social/@Shaos


29 Apr 2020 02:21
Profile WWW
Doomed
User avatar

Joined: 19 Feb 2017 03:46
Posts: 584
Location: Санкт-Петербург, Россия, третья планета от Солнца, галактика Млечный Путь
Reply with quote
Post 
rw6hrm wrote:
Как раз-то "CP/M-компьютер" - это уже говорит о его совместимости
Это понятно, я выразился неточно. Имелась в виду совместимость с компьютером, который был бы пригоден для любительского программирования и был бы реальной платформой. Сейчас не получится создать новую платформу (чтобы это сделать надо иметь дикий фанатизм и возможность потратить $5000). Потому любое новое ретро железо, что не является дополнением реальных исторических платформ, для которых есть хоть какое-то ПО, мне кажется бессмысленной тратой сил. Для любителей программирования чисто текстовый компьютер не интересен. Т.к корректные программы для CP/M могут быть только чисто текстовыми, а текстовые программы никому не интересны. Нет шансов, что кто-то захочет писать программы для нового текстового компьютера.
rw6hrm wrote:
Вот про РК86 и Спец упоминать как раз не нужно, это есть самое убогое железо
Насчёт РК86 не возразишь, а вот Специалист наоборот, - это оптимальный советский любительский комп. Вот здесь как раз сейчас обсуждают каким должен был бы быть идеальный советский бытовой компьютер. Из чего видно, что на том форуме не осталось компетентных, т.к любому соображающему очевидно, что Специалист, если слегка изменить его архитектуру и цветной адаптер, - это и есть самый оптимальный советский компьютер.
rw6hrm wrote:
Я уже попробовал переделать Спец под требования СР/М и [это не получилось]
Что тут сложного, особенно, если совместимость со старым ПО не волнует? Расширяем экран до 14 кб (растр 448*256) и сдвигаем его на C000...F7FF (шрифт 7*10 отлично смотрится). А в панельку ПЗУ на 28 ног ставим ОЗУ 62256, которой закрываем окно экрана C000...F7FF, чтобы поиметь сплошное ОЗУ в 62 кб. А если гонять фирменное ПО CP/M (что требует много ОЗУ) не требуется, то и добавлять 62256 не обязательно, 48 кб хватит, т.к ещё есть 14 кб ПЗУ. В отличие от ОРИОНА Специалист на Z80 удобно и надёжно турбируется ровно вдвое до 4.0 МГЦ.


29 Apr 2020 09:18
Profile
Doomed
User avatar

Joined: 04 Jan 2016 09:15
Posts: 649
Location: Russia, S.- Peterburg
Reply with quote
Мужики!

Благодарю за подробный комментарий. За подробные советы, к которым обязательно прислушаюсь!
В такой доброй атмосфере дело пойдёт очень быстро.

В Питере самоизоляция. Доехал до Народной улице. На сайте объявления выставили ретро детали. Стояли у подъезда и продавец, энергичный, делился воспоминаниями:

- Готов купить микросхемы.
- Приезжайте.
- Решил собрать ретро компьютеры. Один из них, первый домашний компьютер на К580.
- РК-86 ?
- Точно! Плату заказываю из далека. Ещё будет на Z80 компьютер, но не Spectrum.
- РК я тоже собирал. Я все компьютеры на К580, которые публиковали тогда в журналах, собирал. Сейчас у меня есть два Ориона. Есть даже ЮТ/88.
- Интересно!
- Но уже все надоело... Больше этим заниматься больше не хочу...
- А сколько за сколько продадите мне Орион компьютер?
- Не-не, это я не продаю.

P.S.
- Теперь для платы есть комплект К565РУ5 у меня есть для Z80.
- Припаял К580ВВ51А, К580ВИ53А 1990 года выпуска.


Attachments:
File comment: Раритетные микросхемы из СССР.
Retro_kp580_USSR.png
Retro_kp580_USSR.png [ 533.56 KiB | Viewed 13060 times ]

_________________
"Ученье свет, а неученье — тьма. Дело мастера боится, и коль крестьянин не умеет сохою владеть — хлеб не родится." (С)
29 Apr 2020 10:24
Profile WWW
Doomed
User avatar

Joined: 04 Jan 2016 09:15
Posts: 649
Location: Russia, S.- Peterburg
Reply with quote
Post Re:
barsik wrote:
Лучше бы была схема или словесное описание архитектуры.


Выкладываю схему платы на Z80.

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


Attachments:
File comment: Схема платы на Z80 страница 2.
Z80 board page2.png
Z80 board page2.png [ 1.13 MiB | Viewed 13060 times ]
File comment: Схема платы на Z80 страница 1.
Z80 board page1.png
Z80 board page1.png [ 1.22 MiB | Viewed 13060 times ]

_________________
"Ученье свет, а неученье — тьма. Дело мастера боится, и коль крестьянин не умеет сохою владеть — хлеб не родится." (С)
29 Apr 2020 10:32
Profile WWW
Doomed
User avatar

Joined: 04 Jan 2016 09:15
Posts: 649
Location: Russia, S.- Peterburg
Reply with quote
rw6hrm wrote:
1. Почему .... ?


1. Почему ОЗУ динамическое? Привычка?

Год 1990. Ленинград. Динамические ОЗУ К565РУ5 выносили "на теле несуны" с заводов. Купить даже официально было практически невозможно. Меня как то аспирант взял с собой в середине 80-х в командировку в Минск для покупки дефицитных микросхем. Нам тогда вручили в нагрузку статическую память в золотых корпусах.

Схема "выращена" на основе опыта компьютера "Спектрум".
Статические микросхемы были доступны КР537РУ10 2Кх8.

Мой знакомый Дмитрий, соавтор разработанного нами Hayes-совместимого модема V23( 1200/75 бит/сек), получил американскую визу и улетал в США в 90-х. С собой взял собранный самим компьютер на К580 CP/M. Уже в Америке его на собеседовании спрашивали:

- Нам понравился разработанный модем на К1816ВЕ35. Но почему Вы использовали в разработке две штуки ПЗУ К573РФ2 2К-8 бит? Можно было использовать всего один корпус !

Дмитрий пытался пояснить состоянии доступности микросхем в СССР. :)

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

Эта плата разрабатывалась как встраиваемая процессорная система в будущий прибор. Таймер был нужен для аппаратной работы внешних устройств.

3. Если используются прерывания, то предусмотреть КР1818ВН19 (аналог AM9519) в качестве контроллера. Я вот у себя вовремя не сделал (ибо не знал про такой чип), а народу оказалось нужно...

Планирую использовать КР1818ВН19 и подключить железные дисководы 360/720/1.2/1.44. Собственно у меня есть рабочий ПК на 386/486 процессоры с контроллером дисковода. И все дисководы видны, кроме 360К (его необходимо исправить).

Задача прочитать гибкие те самые диски 360К, где есть софт на CP/M.

4. С клавиатурой (только не матричная!)

А что посоветуете? Может быть есть преобразователь с PS/2 для CP/M ?

5. C видеовыходом пока не определились?

Заказал плату Радио-86РК. Хочу в один корпус с Z80 установить и использовать для начала как терминал.

Радио-86РК - первый мой самостоятельно собранный компьютер. Бесполезный конечно. Даже на магнитных лентах где-то программы записаны. У него есть видео выход.

Далее посмотрим.

Подскажите, и буду благодарен за советы.

Z80 - использовать хочется типа как сервер.

_________________
"Ученье свет, а неученье — тьма. Дело мастера боится, и коль крестьянин не умеет сохою владеть — хлеб не родится." (С)


29 Apr 2020 13:20
Profile WWW
Doomed
User avatar

Joined: 19 Feb 2017 03:46
Posts: 584
Location: Санкт-Петербург, Россия, третья планета от Солнца, галактика Млечный Путь
Reply with quote
Post 
rw6hrm wrote:
Почему ОЗУ динамическое?
Потому что у них цена байта в конце 80-тых была на порядок меньше (сейчас возможно это уже не так). Интереснее детали из той эпохи, иначе вообще исчезает смысл браться за железо.
askfind wrote:
почему Вы использовали в разработке две штуки ПЗУ К573 РФ2 2К x 8 бит? Можно было использовать всего один корпус
Видимо имеются ввиду 2732. В мире империализма эти ПЗУ были доступны уже в 70-тые годы (т.к они применены в ZX80). С точки зрения бытовых компьютеров жалко, что у нас не клонировали 2732 в середине 80-тых. Технологии хватало, т.к в середине 80-тых уже выпускались отечественные 573 РФ4 на 8 кб, иначе каким образом они стоят в ИРИШЕ разработки 1984 года, а в 1988 году они уже продавались на ленинградском "толчке" (цена 15-20 рублей за штуку, тогда как 573 РФ2 стоили 3 рубля). Наличие 2732 позволяет удобно с минимальными доделками расширять объём ПЗУ сделанного на РФ2, например, в РК86 и ОРИОНЕ.
askfind wrote:
ВИ53, если использовать только одну скорость работы последовательного порта, можно и не ставить. 9600 стандарт вроде, вполне хватает
ВИ53 упрощает вывод звука. Если задача обслуживать только низкоскоростной внешний видео терминал, то ставить ВВ51 не требуется, т.к в машине с более-менее равномерным тактом (т.е без использования ПДП), имея однобитовый порт, легко и программно эмулируется скорость передачи до 8 кб в секунду. Если же связь по линии с РК86, где есть ПДП, то скорость программного обмена по однопроводной линии приходится резко снижать до 100 байт в секунду (или нужны доп.провода для сигналов стробирования и подтверждения). ВВ51 полезен только для подключения мыши, что для текстовой машины ни к чему, и для организации обмена с IBM PC (хотя и это уже устарело, т.к годится только для PC 10 летней давности, где есть интерфейсный разъём).
askfind wrote:
предусмотреть КР1818ВН19... Я вот у себя вовремя не сделал, а народу оказалось нужно
Для контроллера станка ЧПУ может и надо, а для любительского компьютера зачем? И даже в случае, если надо более, чем одно прерывание, - чем 580 ВН59 не угодил? Для игр и счёта времени достаточно одного прерывания 5...50 ГЦ.
askfind wrote:
клавиатурой (только не матричная!). А что посоветуете? Может быть есть преобразователь с PS/2 для CP/M ?
А матричная чем не угодила? Опрос матричной клавиатуры тормозит мало. Например процессор в ОРИОНЕ успевает опросить РК-клавиатуру несколько тысяч раз в секунду. Матричная клавиатура даёт выигрыш для игр и быстрого ввода ключевых фраз, позволяя определять сдвоенные нажатия, а ASCII-клавиатура рассчитана лишь на одиночные нажатия, (что неудобно для игр).

CP/M рассчитана на аппаратную клавиатуру выдающую флаг готовности и готовый байт ASCII-кода. Можно использовать клавиатуру от АГАТА, от ИРИШИ, от Apple-II или от Электроники-60 (15ВВВ-97-006). В ГДР-овских любительских и промышленных бытовых компьютерах на Z80 тоже почему-то всегда использовали не матрицы кнопок, а готовые ASCII-клавиатуры. Вот типовая схема ASCII-клавиатуры из самодельного немецкого компьютера (но есть и ещё проще):

 простая ASCII-клавиатура
Image

Кроме того, когда недавно выпустили партию плат "Океана-240", то на каком-то форуме разработали конвертор PS/2 в ASCII-клавиатуру. Естественно, это годится и для других машин с ASCII-клавиатурой.
askfind wrote:
плату Радио-86РК. Хочу... использовать для начала как терминал.
Если интересует только прогон импортных CP/M-программ этого хватит. Если вдруг понадобится SuperCalc или другие программы, что требуют широкий экран, то несложно переделать РК на вывод 80-ти символов в строке.

Из ПЗУ РК86 можно выкинуть RAM-монитор, что освобождает ~1 кб места, куда можно упихать программу терминала VT52. Программу терминала можно написать даже на ЯВУ (например Паскаль МТ+ может генерить код для работы из ПЗУ). При этом, т.к объём кода будет большим, то удобно расширить ПЗУ до 8 кб (или даже аж до 56 кб, если прогон РК-игр уже не волнует).

ВГ75 и рассчитан для изготовления терминала, а не целого компьютера. Можно 565 РУ3 извлечь из панелек и смонтировать панельку для 6264 на имеющееся посадочное место (кстати, я сам именно так пытался сделать лет 30 назад, но не сумел, ума не хватило - как ОЗУ для кодов работало чудесно, а при включении как экранное ОЗУ не было картинки). Но читал где-то, что в XXI веке кому-то удалось сделать в схеме РК86 замену 565 РУ3 на 62256.
askfind wrote:
у меня есть рабочий ПК на 386/486 процессорах с контроллером дисковода. Задача прочитать гибкие те самые диски 360К, где есть софт на CP/M.
Если под словами "софт на CP/M" имеется ввиду, что дискеты в формате CP/M, то проще всего с помощью TELEDISK-а перегнать их в файлы TD0, а затем конвертировать в доступный вид с помощью SteinBlume. TELEDISK как раз и работает только на старых PC и в DOS не выше Windows-98.


Last edited by barsik on 29 Apr 2020 22:22, edited 1 time in total.



29 Apr 2020 21:11
Profile
Doomed
User avatar

Joined: 19 Feb 2017 03:46
Posts: 584
Location: Санкт-Петербург, Россия, третья планета от Солнца, галактика Млечный Путь
Reply with quote
Post 
rw6hrm wrote:
Есть, viewtopic.php?f=67&t=19327, полное описание тут, http://rw6hrm.qrz.ru/adapter.htm.
А не расскажете, как залить программу в PIC16Fxxx, чем это делается, сколько это стоит и где это взять? Где взять ассемблер для PIC16Fxxx, сложно ли в нём разобраться и писать программы. Там система команд 8051/8052 или другая? Можно ли на PIC16Fxxx сделать компьютер и будет ли он скоростнее, чем компьютер с КР580 на такте 2.5 МГЦ?


30 Apr 2020 00:09
Profile
Doomed
User avatar

Joined: 04 Jan 2016 09:15
Posts: 649
Location: Russia, S.- Peterburg
Reply with quote
Post Re:
barsik wrote:
(1) А не расскажете, как залить программу в PIC16Fxxx, чем это делается, сколько это стоит и где это взять?
(2) Где взять ассемблер для PIC16Fxxx, сложно ли в нём разобраться и писать программы.
(3) Там система команд 8051/8052 или другая?
(4) Можно ли на PIC16Fxxx сделать компьютер и будет ли он скоростнее, чем компьютер с КР580 на такте 2.5 МГЦ?


1.
2.

Инструментарий. Почему PIC16Fxxx? Цена? Опыт?

Трудился программистов в фирме по разработке и продаж сигнализаций, иммобилайзеров, логеров и т.д. для
автомобилей. Директор влюбился в PIC процессоры. На совещаниях инженеры шутили: "Процессоры на пике прогресса!" Директор в приказном порядке не давал нам перейти на ARM. Основной код писался и поддерживался на ассемблере. Потом внедрили компилятор Си для PIC и стали переводить проекты на высокий язык программирования.

Инструментарий PIC Основной ресурс это сайт производителя Microchip https://www.microchip.com/

Смотрим ресурс для PIC16xxx.
Quote:
Status: Not Recommended for new designs


Старое железо. Всё использовать нельзя! Единственный аргумент - готовую прошивку HEX-файла записать, чтобы время не тратить. Для 8-разрядного использования рекомендую использовать семейство PIC18xxx.

Разработчик Microchip предлагает использовать комбайн для программиста MPLAB X Integrated Development Environment (IDE) ( MPLAB-X-IDE ) (редактировать код, отладка, компилятор ASN,GCC,GCC++).

Можно найти другие и инструменты сторонних фирм.

Источник таблицы здесь - http://www.pic24.ru/doku.php/en/osa/ref/introduction/intro#compilers

Quote:
Процессоры PIC10/12 PIC16/12 PIC16F1xxx,PIC18, PIC24/dsPIC
Компиляторы:
- HT-PICC STD
- HT-PICC PRO
- Microchip C
- mikroC PRO
- CCS PICC


Программатор для PIC обычно покупали.

Список программаторов: https://www.microchip.com/wwwproducts/en/PIC16F876

Quote:
- MPLAB PICkit 4 In-Circuit Debugger ( PG164140 )
- MPLAB ICD 4 In-Circuit Debugger ( DV164045 )
- MPLAB PM3 Universal Device Programmer ( DV007004
)

Китайцы предлагают клоны программаторов PICKit 2 PICKit3, PICKit3.5 programer. Использовал - работают.

О внутрисхемной отладке кода для PIC16/18 - забудьте. Режим есть, но он с костылями. Отладчик внутри PIC реализован программно-аппаратно. Т.е. будет необходимо ресурсы процессора и памяти. Странностей пруд-пруди... Великие программисты пишут программы без отладки и тестирования. :exclaim:

(3) Там система команд 8051/8052 или другая?

Система команд, архитектура PIC12/16/`18 уникальная от Microchip.

i8051/i8052 - это самый древний микроконтроллер от Intel.

(4) Можно ли на PIC16Fxxx сделать компьютер и будет ли он скоростнее, чем компьютер с КР580 на такте 2.5 МГЦ

Quote:
Микроконтроллеры семейства PIC16CXXX, выполненные по технологии HCMOS представляют собой 8-разрядные микроконтроллеры на основе RISC-процессора, выполненные по гарвардской архитектуре. Имеют встроенное ПЗУ команд объемом от 0,5 до 4 Кслов (разрядность слова команд равна 12 – 14 бит). Память данных PIC-контроллеров организована в виде регистрового файла объемом 32 – 128 байт, в котором от 7 до 16 регистров отведено для управления системой и обмена данными с внешними устройствами.


Нет единого пространства адресов. Память FLASH. EEPROM, SRAM отдельные. Есть ещё банки регистров.
Компиляторов Си для PIC16/PIC18 появились на рынке самые последними. Из-за того, что
реализовать для такой архитектуры нужно быть гением...

Сделать компьютер на PIC можно лучше всего на семействе PIC32. Например, статья здесь - https://habr.com/ru/post/161405/

Quote:
Цветной микрокомпьютер Maximite на базе PIC32

На сегодняшний момент проект Maximite является моим любимым в области рукодельных микрокомпьютеров. Собрав его оригинальный черно-белый вариант, я после запустил на нем RetroBSD, затем даже свой эмулятор Радио-86РК. Что подкупает в проекте, так это законченность. Конструктивно Maximite простой, PIC32 делает почти всю работу. Но Maximite — это не просто идея в виде схемы. Для Maximite разработана плата, корпус и, собственно, прошивка — MMBasic, продвинутый диалект Бейсика, дающий доступ ко всей периферии, а она у Maximite внушительна. В небольшом интервью автор и разработчик Maximite, Джеф Грэхем, рассказал, почему ему фактически пришлось довести проект для столь законченного вида.



P.S.

У меня работает ретро-компьютер Z80 CP/M на ESP8266 - WiFi модуле. И очень доволен. По скоростным тестам прибавка выполнения 8-разрядного кода в 100 раз.

Смотри форум "Ретро компьютеры на ESP8266" - https://zx-pk.ru/threads/28973-retro-kompyutery-na-esp8266.html

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

1. COMMODORE 64
Проект NardJ, автор создал вполне рабочий вариант C64, Интересная особенность что вывод на экран идет через браузер, тоесть esp подымает точку wifi к которой нужно подключиться и зайти на ip браузером.
https://github.com/NardJ/esp8266-C64

2. CP/M 2.2
Отлично работающий эмулятор Z80 - CP/M 2.2, в эмуляторе смонтированы 15 дискет с софтом, утилитами, играми. Только текстовый режим, работает через серийный интерфейс.
https://github.com/SmallRoomLabs/cpm8266

3. MICRO BBC
Очень достойный и стабильный бейсик, автор создал файловую систему, можно сохранять и читать с esp записанные бейсик программы,
работает через серийный интерфейс.
https://github.com/ericek111/ESP8266-6502duino

4. APPLE-1
Мало что сказать, это Apple-1, все.. Модулирует RF сигнал на антенку и можно ловить его сигнал на телевизоре.
https://github.com/hrvach/espple
https://www.youtube.com/watch?v=rCqbB1UmW8o

5. PC-XT
Самое интересно и вкусное, настоящий PC-XT, 650кб памяти работает с флешки esp, проект на ранних стадиях создания
и очень не доделанный. Клавы пока нет, выводит композит сигнал на тв. Эмулирует CGA адаптер.
Очень надеюсь автор доделает проект,
https://hackaday.com/2018/02/26/pc-x...or-on-esp8266/
https://mcuhacker.wordpress.com/2018...blogginlagget/

6. RADIO-86K
Отличный очень простой в сборке ретро компьютер, интересно посмотреть за развитием проекта.
Мой первый компьютер кстати)
http://zx-pk.ru/threads/28907-appara...a-esp8266.html

7. ZX81
Дедушка ZX Spectruma, покурил исходники, настоящего Zx Spectruma на Esp8266 нам не видать еще долго.
https://github.com/joaquimorg/ESP826...r/esp8266_zx81
https://www.joaquim.org/electronic/e...zx81-emulator/

_________________
"Ученье свет, а неученье — тьма. Дело мастера боится, и коль крестьянин не умеет сохою владеть — хлеб не родится." (С)


30 Apr 2020 01:26
Profile WWW
Doomed
User avatar

Joined: 19 Feb 2017 03:46
Posts: 584
Location: Санкт-Петербург, Россия, третья планета от Солнца, галактика Млечный Путь
Reply with quote
Post 
rw6hrm wrote:
Заливать любым доступным программатором.
Вряд-ли.

У меня есть только программатор УФ-ПЗУ, собранный мной в начале 1988 года (это просто кусок текстолита с закреплённой там панелькой на 28 ног, двумя светодиодами и парой диодов), который позволяет прошивать РФ2 и 2764/27128/27256/РФ8 (но не 27512 / 271000). На монтаж потратил 1.5 часа и ещё час ушло на написание программы (первоначально используя за основу дизассемблированную программку в 100 байт из МК 07.1987). Подключается к РК86, Специалисту или ОРИОНУ и этого мне хватило на целых 30 лет, т.к я использовал только УФ-ПЗУ.

За последние 25 лет была нужда перешивать только 573 РФ2 (для ПЗУ F800 ОРИОНА и РК86) и 27256 для ROM-диска (куда я прошивал разные DOS для ОРИОНА). Для микроконтроллеров у меня нет задач. А когда была одна задача, я использовал крошечное МП-ядро на КМОП Z80 (SU880), РФ2 (2 кб) и ОЗУ 6514 (1 кб), и у меня до сих пор впечатление, что система команд Z80 удобнее, чем система команд однокристаллов 8048/8051 (с системой команд PIC16 не знаком).
rw6hrm wrote:
наиболее распространённые: WizardProg, TL866... Вообще не понимаю, как можно жить без программатора
А я, наоборот, удивляюсь, отчего молодёжь вместо того, чтобы потратить несколько часов и сделать самому себе простейший прошиватель УФ-ПЗУ (или для пережигаемых РПЗУ 556РТ4/РТ11, 556РТ5 и 155РЕ3) сдуру тратит многие тысячи рублей на дорогостоящие промышленные прошиватели.
rw6hrm wrote:
два микроконтроллера занимаются сугубо своими делами... один выводит изображение, другой занимается клавиатурой.
На клавиатуру я бы применил 580 ВВ79, т.к он именно для этого и предназначен (и уже 30 лет у меня лежит без дела, - купил, чтобы применить, но не смог, т.к выяснилось, что для РК86, Специалиста и Ориона программисты любители сдуру понаписали программ, что сами нагло лезут в матрицу кнопок).
askfind wrote:
PIC16Fxxx. Status: Not Recommended for new designs. Старое железо. Всё, - использовать нельзя! Для 8-разрядного использования рекомендую использовать семейство PIC18Fxxx.
Это я видел. Потому по случаю поимел по паре Microchip PIC18F452 (40 МГЦ, 32 кб) и SyncMOS SM8952A (40 МГЦ, 8 кб) специально в корпусах DIP-40. У PIC18Fxx2 система команд PIC16, а у SM8952 система команд 8052. Но разобраться в использовании и программировании очень сложно (даташит 330 страниц). Для любителя, которому надо сделать единственный контроллер глупо столь много трахаться пытаясь освоить всё это, т.к на Z80 подобный контроллер делается с трудозатратой на 2 порядка меньшей. Тем более, что для закачки программ в эти однокристаллы надо покупать дорогой промышленный прошиватель, что глупо для единичного устройства.

Я спросил в надежде, что был умный человек, что написал программку (для 8-ми разрядки или для PC) закачивающую прошивку в PIC-контроллер (в интерфейсах I2C или SPI). Это сделать ведь несложно.


30 Apr 2020 04:00
Profile
Doomed
User avatar

Joined: 04 Jan 2016 09:15
Posts: 649
Location: Russia, S.- Peterburg
Reply with quote
Нашёл открытый проект PS/2.

Quote:
Контроллер клавиатуры для компьтеров Орион, РК-86, Вектор и т.д. на базе микроконтроллера ATMega48(/88/168).

; Реализована матрица клавиатуры
; -----------------------------------
; │ D7 D6 D5 D4 D3 D2 D1 D0
; ---+-------------------------------
; A7 │SPC ^ ] \ [ Z Y X
; A6 │ W V U T S R Q P
; A5 │ O N M L K J I H
; A4 │ G F E D C B A @
; A3 │ / . = , ; : 9 8
; A2 │ 7 6 5 4 3 2 1 0
; A1 │ v -> ^ <- ЗАБ ВК ПС TAB
; A0 │F5 F4 F3 F2 F1 AP2 CTP ^\
; -----------------------------------

Ссылка - https://github.com/trol73/avr-86rk-ps2-keyboard-controller

_________________
"Ученье свет, а неученье — тьма. Дело мастера боится, и коль крестьянин не умеет сохою владеть — хлеб не родится." (С)


30 Apr 2020 05:08
Profile WWW
Doomed

Joined: 12 Feb 2016 13:39
Posts: 463
Reply with quote
Post Re:
это все оффтоп в этом топике, правда, но
 
barsik wrote:
Я спросил в надежде, что был умный человек, что написал программку (для 8-ми разрядки или для PC) закачивающую прошивку в PIC-контроллер (в интерфейсах I2C или SPI). Это сделать ведь несложно.

Все давно придумано до нас:
Attachment:
post-39-1272279063.gif
post-39-1272279063.gif [ 12.35 KiB | Viewed 11554 times ]

собран лет так 20 назад, пользуюсь до сих пор...
Attachment:
IMG_20200430_150506.jpg
IMG_20200430_150506.jpg [ 814.33 KiB | Viewed 11554 times ]

Attachment:
IMG_20200430_150519.jpg
IMG_20200430_150519.jpg [ 914.49 KiB | Viewed 11554 times ]

и программа для него http://www.ic-prog.com/


30 Apr 2020 05:21
Profile
Doomed
User avatar

Joined: 04 Jan 2016 09:15
Posts: 649
Location: Russia, S.- Peterburg
Reply with quote
PVV wrote:
Я спросил в надежде, что был умный человек, что написал программку (для 8-ми разрядки или для PC) закачивающую прошивку в PIC-контроллер (в интерфейсах I2C или SPI). Это сделать ведь несложно.


Это отдельная задача. Чтобы написать, пусть утилита в командной строке, нужно реализовать протокол загрузки от Microchip. Отладить приложение. Выполнить тестирование микроконтроллеров.

Выбор за Вами. Делать или покупать.

Сам стараюсь покупать программаторы/отладчики работоспособные.

История. Нужен был J-link Segger для STM32, который дружит с IAR ARM IDE программиста. У нас куплена лицензионная версия. Фирменный J-link Segger дорогой. Приобрели 3 шт. китайского клона.

После обновления драйвера USB в IAR ARM IDE китайские клоны просто перестали работать. Причем что-то аппаратно ему прописали. Драйвер увидел подделку. Выкинули. Даже не стал разбираться.

_________________
"Ученье свет, а неученье — тьма. Дело мастера боится, и коль крестьянин не умеет сохою владеть — хлеб не родится." (С)


30 Apr 2020 11:15
Profile WWW
Display posts from previous:  Sort by  
Reply to topic   [ 18 posts ]  Go to page 1, 2  Next

Who is online

Users browsing this forum: No registered users and 6 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group
Designed by ST Software.