Ну... мазл тов тогда.
Ну... мазл тов тогда.
Здесь лучше оставить оригинал, т.е. терминальный ввод/вывод. Используется всего один СОМ-порт и для вывода инфы и для "опроса" клавиатуры (сразу в ASCII-кодах)
Как по мне, S-100 - избыточна. Половиной сигналов никто никогда не воспользуется. Я для своей машинки пока развел кросс-плату с такими сигналами
D0-D7 - процессор (буфер)
A0-A15 - процессор (буфер)
#WAIT - процессор
#BUSREQ - процессор
#BUSACK - процессор
#INT - контроллера прерываний -> процессор
#RESET - процессор
#HALT - процессор
#WR - процессор
#RD - процессор
#MREQ - процессор
#IORQ - процессор
#DRQ0-#DRQ2 - устройства ввода/вывода -> контроллер ПДП
#DACK0-#DACK2 - контроллер ПДП -> устройства ввода/вывода
#INT0-#INT7 - устройства ввода/вывода -> контроллер прерываний
CPU_CLK - процессор
#M1 - процессор
+5В
Общ.
По идее, должно хватить на все обозримые домашние поделки. Питание только +5В, +12В для дисководов и т.п. - подается внешне, остальные напряжения (типа -5В) сейчас проще реализовать прямо на плате DC-DC преобразователями. Если сигнал #INT использовать только в ближайшем слоте от процессора (контроллер прерываний будет устанавливаться только в этот слот), то на остальных слотах эту линию можно использовать для других задач.
Мои разработки клавы и дисплейного блока, на которые давал ссылки ранее, работают по терминальному принципу (даже п/п для СОМ-порта не меняются, за исключением инициализации), так что прокладку в виде тормозного СОМ-порта можно исключить или оставить только для внешнего обмена.
А про избыточность S-100 то ясно, Ваш список вполне оптимальный.
С КР580 ещё может быть, а вот с Z80, который сам регенерирует ОЗУ, и на непредельных частотах их применять вполне оправдано. Да и по энергетике динамические ОЗУ жрут большой ток только в момент когда /CAS равен 0, а без этого они жрут мало. Средний ток потребления при непредельной частоте - на уровне обычных TTL. Если надо оверклочить CPU на 5 МГЦ и выше, то следует применять скоростные SIMM, а не РУ5 или РУ7Сообщение от rw6hrm
Подавляющее большинство CPU в мире не имеют команд IN/OUT. Это извращение от инженеров Intel, - просто ненужное усложнение системы команд, вызывающее бесполезный расход деталей. IN/OUT ввели лишь для того, чтобы убедить клиента, что этот процессор "круче". И если портов меньше, чем пальцев на руке, то так ли уж сильно сократит это адресное пространство. Кроме того команда LD с адресацией через HL вдвое быстрее, чем IN/OUT.Сообщение от rw6hrm
Встречный вопрос. Мы что живём в середине 70-тых, когда ещё никто не слышал о цвете и графике, а нортон и окна на экране ещё не были изобретены. На кой хрен нужна система, к которой Вы не сможете написать свой красивый нортон и будете вынужденно заменять его POWER-ом? Может быть Вы и псевдографику и инверсию знакомест объявите блажью?Сообщение от rw6hrm
Насчёт затраты адресного пространства. Кто мешает, как во "Львове" сделать экран программно включаемый в адресное пространство только когда нужно делать вывод на экран. А для чего не хватит скорости? Да пока Вы передаёте по тормозному последовательному интерфейсу один символ, программно можно вывести на экран 100 символов. Какое тут ускорение?Сообщение от rw6hrm
Вообще идея терминала в компьютере, где хоть что-то говорят о скорости - нонсенс. Вы потому и не хотите иметь графику, потому что в идее терминала по последовательному интерфейсу она фатально тормозит. Терминал в оригинале это АЦПУ (клавиатура плюс принтер). Устройства TTY применяли в 50-тые и 60-тые и там скорость передачи была 75-110 бод. А в начале 70-х в моду вошли терминалы с текстовым дисплеем, отчего скорость подняли аж до 300 бод (а это целых 40 символов в секунду). И всем этого хватало. Даже тем, кто работал из дома по телефонной линии с майн-фреймом. Цитата: "In 1975, the 110 Bods ASR33 Teletype®, with automatic reader and punch options, was the most frequently used terminal". И только когда, уже в начале 80-тых, появились первые телефонные сети и BBS, и понадобилась скорость, то скорость последовательного интерфейса довели до физического предела модема для ТЛФ-линии в 2400 бод (это предел при тональном кодировании, многочастотные методы уже в 90-тые подняли этот предел до 14.400 и выше).
И кроме того к ЭВМ подключался не один терминал, а десятки и сотни. Так к VAX подключалось несколько компьютерных залов, в каждом из которых было по 25-30 машин. Вот откуда взялись и почему использовались терминалы. А сколько терминалов будет подключаться к Вашей машине?
Когда пришли микропроцессоры в 1974-ом, то по инерции поначалу также применяли терминалы. Т.к они уже просто имелись в наличии. Но когда Стив Возняк в начале 1976 показал, что гораздо удобнее иметь экран встроенный внутрь компьютера, то идея терминала в применении к ПК умерла в одночасье. Ни одного народного компьютера с терминалом после 1976 не появилось. Терминал удобен лишь как вспомогательное средство (его оставили даже в MSDOS).
Насчёт альтернативной кодировки я высказался в начале темы. При желании можно сделать плавающую кодировку. Для этого достаточно ввести флаг кодировки. Тогда вывод производится в соответствии с включённой кодировкой, а в п/п-мме CONIN д.быть автоматическая перекодировка.
Последний раз редактировалось barsik; 20.07.2017 в 01:16.
Просьба - прочитайте внимательно мои последние посты и найдите, где я там хоть что-то говорил о последовательном интерфейсе применительно к видеовыводу (исключая ссылки на чужие конструкции). Больше повторяться не буду. Мышление - да, терминальное. Но по параллельному интерфейсу. И с частичной поддержкой графики, кстати. Ссылки в предыдущих постах.
Не надо передёргивать. Нет программ - незачем выпендриваться с графикой. Писать новые никто не будет.
Да ради Дога, повторюсь: кому хочется испытать эротику с разводкой восьми (минимум) корпусов - оно пожалуйста. Но что-то никто не горит особым желанием хотя бы один корпус развести (или хотя бы поделиться свежими наработками). Только товарищ Xrust потихоньку проводит программные и аппаратные экзерсисы.
Никаких проблем. В связи с тем, что если какой-либо новодел и будет внезапно собран, то он останется в пользовании самого автора, который сам будет решать, каким образом результаты его работы будут совместимы с чем-либо ещё.
...угу, и это "подавляющее большинство" не работает под СР/М. И список из ныне живущих начинается и оканчивается на 6502 (включая клоны и прародителя).
Ой. Вы, наверное, давно не интересовались существующим для СР/М софтом. Аналог NC уже есть (и не один, кстати), и он прекрасно работает на псевдографике, как и его бессмертный прародитель. Даже в цвете, синеньком таком. И PIP-ом открыто можно больше не пользоваться. Хотя лично мне консоли хватает выше крыши.
...не хочу никого обидеть, но просто давайте положим руки на интимные/нежные части наших тел и признаем: вся эта ветка есть не более чем обычный разговорный шум. Делать СР/М-совместимую машинку если кто и будет, то чисто из-за спортивного интереса, а не для работы, как это было лет тридцать назад. Поэтому обсуждать что надо или не надо можно до бесконечности, в любом случае делаться всё будет только и исключительно исходя из подножного корма/подстольных запасов. А уж про написание программ - извините дважды. Они уже все написаны. Хотя никто не запрещает, также исходя из спортивного интереса, написать что-то свежее.
Я высказался. Спасибо.
Естественно.Сообщение от rw6hrm
Тема-то не о том, что будут сделаны платы для массового потребителя. Топик стартер попросил совета. И как раз это (раздачу советов) все кому не лень и делают. Каждый высказывает своё мнение, исходя из собственного опыта и предпочтений. Лично я высказываюсь о том, как бы сделал для себя. В ходе дискуссии обдумываются идеи. И если они и не полезны топик стартеру, это не важно. Люди читают этот форум в основном, чтобы получить моральную поддержку и почерпнуть идеи, которые они могут в дальнейшем использовать в своём творчестве.
Кстати, меня CP/M уже не интересует. Интереснее и, кстати, не намного сложнее, чем адаптировать CP/M, написать собственную ДОС. Главное тут, - придумать концепцию (уже опробовал для ДОС три концепции).
Как я понимаю, дикое возражение вызывает цвет и графика. Но согласитесь, что хорошие потребительные качества изделия желательны. Даже, если нортон монохромный, но в машине есть цвет, то кто мешает установить жёлтые буквы на синем фоне.
Цвет ничуть не утомляет при разработке ПО и легко встраивается в чужие готовые программы. Ведь с цветом никто не работает по железу. Используются ESC-последовательности. Достаточно их выкинуть на CONOUT и цвет включился или изменился. И последующие буквы выводятся на экран нужным цветом на нужном фоне. Интерфейс с программой остаётся чисто текстовым. Усложнений программирования нет. Просто на другом конце линии в терминале (или в самом компьютере, но в драйвере) работает не простейшая подпрограмма вывода символов (как в ПЗУ РК86), а 12-ти килобайтовый цветной оконный графический драйвер.
Если работать с графикой и цветом по железу, то передача по линии фатально тормознёт. Но при цветном графическом драйвере с управлением ESC-кодами как раз идея терминала оказывается выгодной. Для вывода просто символов терминал не даёт ускорения, а вот для графики и цвета уже иначе. Т.к обслуживание графики и цвета намного более ресурсо-затратно. Потому и разделение на два процессора, основной и графический - выгодно. Для основного CPU интерфейс остаётся простейшим, т.к для графики требуется передавать по линии всего на несколько символов больше, отчего цвет и графика никак не тормозит.
Можно и не писать новое. Можно взять чужие исходники и адаптировать. Но о чём речь? Где применить цвет и графику? Применительно к CP/M - реально речь только о нортоне. Желательно и текстовый редактор, но тут лучше SuperText не сделать при всём желании (и он кстати, в КОИ-8, - на CP-866 его не переделать, что начисто исключает эту кодировку).Сообщение от rw6hrm
Для НЕ-CP/M нужно чуть больше программ - это нортон, текстовый редактор и макроассемблер. Но, если эти программы у Вас один раз написаны, то сделать версию для другой ДОС или другого железа это работа, максимум, на один день.
Насчёт наличия исходников нортона. Тут нужен именно корректный для ДОС (т.е не по железу) и в принципе, у меня такой нортон есть (использует драйвер, но переделать в корректность не сложно). Я видел на немецких сайтах исходники нортонов. Но не стал даже смотреть, во-первых даже, если они корректные, то псевдографика и управляющие коды отличаются. Т.е в любом случае придётся адаптировать. А во-вторых, разбираться в чужих листингах, - противно и неинтересно. Но трудоёмкость адаптации низка. На написание нортона, текстового редактора или новой ДОС на ассемблере с нуля уходит до месяца (а на разработку макроассемблера три месяца). Трудоёмкость адаптации на порядки меньше.
Зачем разводить всё? Выгоднее распилить платы старых компов на фрагменты.. Фрагмент с ОЗУ привинчивается на 4-х винтах M2 (лучше M1.5), трудоёмкость меньше, чем монтаж ОЗУ статики типа w24512. В макетах я не использую МГТФ, хотя имею даже МГТФ-0.03. Ранее был самозалуживающиеся ПЭПЛОТ и ПЭВТКЛ. Теперь, увы, обычный ПЭЛ-0.2. Нет вороха проводов снизу. Макетируемая конструкция свинчивается из кусков готовых плат, что резко сокращает трудоёмкость проводного монтажа. Проблема лишь нехватки маленьких винтов и гаек (чтобы свинтить что-то новое, чтобы их добыть, приходится разбирать старые конструкции).Сообщение от rw6hrm
Видел пяток чужих нортонов. Но все они по железу (некорректные к ДОС). Дайте пожалуйста ссылку хоть на один корректный нортон (можно даже только сами коды, дизассемблировать не проблема).Сообщение от rw6hrm
В этом и заключается задача темы.Сообщение от rw6hrm
На мой взгляд такой компьютер уже есть. Это ОРИОН-128 с Z80 и 512К ОЗУ. Его архитектура позволяет получить CP/M с 60К TPA, цветом и графикой (хотя быстродействие 3.75 МГЦ маловато).Сообщение от rw6hrm
Последний раз редактировалось barsik; 21.07.2017 в 11:21.
Юзают, не особо массово конечно, ибо не канонiчно и исключительно спортивный интерес, да и толку в этом нет особого... Юзабельного софта под такие скорости всё равно нет.
Как по мне - приятное извращение. ))) Расход деталей - такой же как и при адресации УВВ как ячейки памяти.
Встречный вопрос - "На кой хрен нужна система", где я должен еще что-то дописывать, кроме драйверов? Не забывайте, что разговор идет о CP/M. Лично меня устраивает весь набор софта, что есть и переделывать его нет никакого желания. Я сделал CP/M машинку как девборду для опробования программных и схемных решений, т.е. есть основная плата с процессором, памятью, последовательным портом (терминал) и жестким диском к которой подключается кросс-плата, в которую я планирую "тыкать" всякую всячину для исследований. Для всего этого вполне хватает стандартного вида CP/M и ассемблера.
Тут не понял. Отрисовка 100 символов 5х7 в памяти будет быстрее одной "извращенной" команды OUT!?
100%! Как я уже написАл выше, если использовать такую машинку для собственных нужд, то терминала хватает с головой! И никакой графики не нужно, разве что, если очень нужно вывести какой-то график или картинку, можно использовать как внешнее устройство ISA карточку или графический дисплей, коих сейчас в продаже не мерено и на любое разрешение.
---------------
удалил дубль
чет задвоилось сообщение...
Последний раз редактировалось Alex_LG; 19.07.2017 в 21:28.
Во-первых, по одному символу никто не передаёт и если уж так считать, то вывод одного символа в текстовый экран это тоже одна команда. Во-вторых, речь не о графическом экране, для которого как раз передача по линии и использование второго процессора для видеовывода имеет смысл. Я тоже делал CP/M машины и именно с текстовым адаптером, т.к убедился в нехватке скорости для вывода текста на графической ЭВМ. И процессор при использовании терминала вовсе не освобождается для другой работы. Потому, что по одному символу в час не передают, а передают целую строку. После вывода символа в ВВ51 командой OUT, процессор вовсе не свободен, а занят в цикле опроса готовности. По готовности, процессор выводит очередной символ. Стандартная скорость терминала 9600 бод. С учётом программного обслуживания, старт стоповых битов и пауз, за секунду передаётся ~800 символов. Таким образом, на вывод одного символа расход времени вовсе не 11 тактов команды OUT, а 1/800 секунды, т.е 1.25 МСЕК. При такте CPU в 4 МГЦ один маш.такт длится 0.25 МКСЕК. Итого за 1.25 МСЕК процессор в машине с текстовым адаптером с пользой выполнит 5000 машинных тактов. Если учесть, что все остальные побочные расходы программы текстового вывода одинаковы, то и получается то, что я написал.Сообщение от Alex_LG
А выигрыш терминал даёт вовсе не на командах OUT, а на обслуживании управляющих кодов, т.к их обслуживание выполняет не ЦП, а терминал имеющий свой процессор или в старых системах ~250 TTL-микросхем логики (в терминале СМ-1800 было ~10 плат, на каждой по ~35 корпусов 155-той серии). Но всё-равно система с экранным ОЗУ в адресном пространстве быстрее и гибче, чем терминальная.
Есть IBM PC, где ничего не надо дописывать. Рэтро системы именно потому и ценны, что только для них несложное любительское программирование имеет смысл. Только здесь любой "некомпетэ" может за несколько дней освоить ассемблер и начать писать программы. Именно в этом ценность, а вовсе не в том, чтобы собрать музейный экспонат и поставить на полку. Если я что-то делаю из железа, то только для того, чтобы писать для него программы, потому что писать программы на порядок интереснее, чем трахаться с железом, что дико ненавижу. Цель вовсе не железо и очень неприятно, что без возни с ним не обойтись. С большим психологическим сопротивлением заставляю себя возиться с железом, отчего могу этим заниматься лишь несколько дней, после чего вынужден отдыхать 2-3 недели. Оттого у меня сейчас все аппаратные работы продвигаются крайне медленно. Пытаюсь вспомнить с какой стороны держать паяльник. А какая ДОС, это вообще без разницы. CP/M была удобна 25 лет назад, потому что имеет компиляторы. А сейчас и это не играет роли, т.к удобнее программировать на PC.Сообщение от Alex_LG
Да, знаете-ли, доставляет эстетическое наслаждение уничтожение очень ценных и редких плат старых компьютеров. А если серьёзно, то это было в начале 90-тых и эти платы потеряли тогда всякую ценность. Уж лучше распилить и хоть как-то использовать, чем выбросить. Вот, что удалось тогда распилить. 3 платы ZX-48К, 3 комплекта ИРИШИ, 3 платы СПЕЦИАЛИСТА, 2 платы ОРИОНА, 2 платы КОРВЕТА (обе дохлые), ПРАВЕЦ-16 (дохлый), 3 платы Apple-II с грудой периферии, импортная ЭВМ (на MC6802, ОЗУ 4116+4164), целый СМ-1800 (еще осталось 10 нераспиленных плат со 155-той серией), 10 плат от ЕС ЭВМ, несколько плат от ДВК, не полностью спаянный ПРАВЕЦ-8М, чистые платы ОКЕАН-240.Сообщение от shurik-ua
Последний раз редактировалось barsik; 20.07.2017 в 00:40.
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)