User Tag List

Страница 88 из 120 ПерваяПервая ... 848586878889909192 ... ПоследняяПоследняя
Показано с 871 по 880 из 1362

Тема: Орион-128: Разное

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1

    Регистрация
    28.03.2009
    Адрес
    г. Березовский КО
    Сообщений
    98
    Спасибо Благодарностей отдано 
    3
    Спасибо Благодарностей получено 
    5
    Поблагодарили
    5 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Denn Посмотреть сообщение
    А почему гена не на 20 МГц?
    В этой конструкции не нужна такая скорость, да был под рукой

    - - - Добавлено - - -

    Цитата Сообщение от VladimirS Посмотреть сообщение
    А клавиатуру я сделал из старой механической, чтобы не путаться с разными шрифтами и разным расположением
    кнопок, я разделил русский и английский на разные поля и расположил по стандарту.
    Получилось так
    Миниатюры
    Забыл добавить, клавиатура стандартная РК-86

  2. #1
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  3. #2

    Регистрация
    08.02.2015
    Адрес
    г. Санкт-Петербург
    Сообщений
    242
    Спасибо Благодарностей отдано 
    15
    Спасибо Благодарностей получено 
    15
    Поблагодарили
    7 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    хорошо. есть такое предложение: внедрить в схему ОРИОН-СЕРВИСа порт #FF (получится такое?) и смикшировать оба выхода (OUT FFH + INTE) в один звуковой канал.
    barsik, Вы сможете это сделать, нарисовать эту доработку так, чтобы всё понятно было?
    просто я, например, не знаю, что и как там внедрять.

  4. #3

    Регистрация
    05.10.2016
    Адрес
    г. Санкт-Петербург
    Сообщений
    1,080
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    5
    Поблагодарили
    5 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Чтобы получить звук по OUT FF надо иметь порт FF. Для это нужен дешифратор ИД7 из схемы Z80CARD-II или логика для дешифрации адреса FFxx. Часть дешифрации уже делает сигнал 112 (/F800), так что с его использованием остаётся только определить что 3 бита D10, D9, D8 равны 1. Подав на четырёх входовый ЛА1 (ЛА6) эти 3 адреса и инверсный сигнал 112 (D8/11) получаем искомый чип селект на адрес FF00. Объединив этот сигнал с выхода ЛА1 и /IORQ на ЛЛ1 или ЛЕ1 получим строб для входа C D-триггера.

    Звук OUT FF это триггерный звук. По каждому стробу в порт FF состояние D-триггера меняется на обратное. Это сокращает объём программы вывода звука вдвое. Этот звук был заимствован из Apple-II.

    Ставить столько деталей, когда следует наоборот сократить платку Z80, нежелательно. Поэтому можно попробовать использовать выдвинутую ранее идею использовать строб порта FB00 в качестве строба порта FF00, используя неполную дешифрацию портов в схеме ОРИОНА. Если я правильно разобрался в схеме (а я естественно, могу ошибаться), то при обращении по OUT FF мы попадаем в порт STA FB00. Это надо проверить на реале. Если по OUT FF на выходе D27/12 есть импульсы, то этот строб STA FB00 можно подавать на вход C триггера и он будет выдавать звук по OUT FF.

    Если же это не работает, то надо ставить дешифратор ИД7 или вышеописанную ЛА1 формирующую чип-селект FF00 для его обьединения c /IORQ (при желании можно объединить и с /WR, хотя это и не важно, т.к порта FF на ввод нет).

    Если триггера нет, то хоть какой-то звук по OUT FF слышно, если просто без триггера подать выход строба (в Z80CARD-II это выход ИД7) на динамик. А если поставить последовательный диод и ёмкость на +5В, то громкость возрастает (при стробе ёмкость быстро заряжается нулём через диод и после пропадания иголки строба сигнал 0 сохраняется на емкости). Понятно, что это не чистый тон, а хрип, но хоть что-то слышно.

    Если вот этот код (это подпрограмма F83F в ПЗУ для Z80) даёт звук при подключении триггера на выход STA FB00 (D27/12), то значит порт FB в ОРИОНЕ склеен с портом FF и эта идея для вывода звука работает.
    Код:
    .
    CBEEP	EQU	0F3E7H			; константа BEEP
    
    XBEEP:	LD	C,60			; 15 BYTES
    BP1:	OUT	(0FFH),A
    	LD	A,(CBEEP)
    BP2:	NOP
    	DEC	A
    	JR	NZ,BP2
    	DEC	C
    	JR	NZ,BP1
    	RET
    - - - Добавлено - - -

    Цитата Сообщение от Stampmaker
    На висящие входы сделать привязку на +5В через резистор ?
    Резистор жалко тратить. 155-тая читает единицу от висящих входов, а 1533 допускает подключение входов на +5В. А те, кто поставит 555-тую ТМ2, пусть пропадают...
    Миниатюры Миниатюры Нажмите на изображение для увеличения. 

Название:	Звуки.jpg 
Просмотров:	167 
Размер:	22.3 Кб 
ID:	60995  
    Последний раз редактировалось barsik; 12.05.2017 в 13:24.

  5. #4

    Регистрация
    08.02.2015
    Адрес
    г. Санкт-Петербург
    Сообщений
    242
    Спасибо Благодарностей отдано 
    15
    Спасибо Благодарностей получено 
    15
    Поблагодарили
    7 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    выводы 1 и 4 лучше подтянуть к питанию через резистор?


    add: резистор подтяжки поставил

    теперь осталось только собрать
    Последний раз редактировалось Stampmaker; 11.05.2017 в 22:07.

  6. #5

    Регистрация
    05.10.2016
    Адрес
    г. Санкт-Петербург
    Сообщений
    1,080
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    5
    Поблагодарили
    5 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Stampmaker
    теперь осталось только собрать
    Для проверки слипаемости портов FB00 и FF00 не надо ничего собирать. Для этого Z80 не нужен. Достаточно на обычном ОРИОНЕ с КР580 "на соплях" подключить D-триггер к выходу D27/12 и запустить в бесконечном цикле приведённую подпрограмму вывода звука.

    Сообщите пожалуйста, результаты, такого теста звука OUT FF. Триггер можно даже не подключать, достаточно подключить динамик прямо на выход STA FB00 (D27/12). Если использовать пьезо излучатель, то даже буфер не нужен. Без триггера чистого тона, как при меандре не будет, но понять, что звук идёт можно - пьезоизлучатель будет хрипеть от иголок стробов.

    Так как порт STA FB00 тогда занят для звука, то управлять включением большого ПЗУ в окне 0...3FFF придётся иначе. Т.к других портов больше нет, то придётся объединять управление ПЗУ с управлением ОЗУ, т.е с портом F9. Это, увы, намного менее удобно и создаёт проблемы, но куда деваться, если портов больше нет.

    Бит D7 в порту F9 будет включать большое ПЗУ в окне 0...3FFF. 16 банок по 64К, т.е 1 мб надеюсь ОРИОНУ хватит, хотя бы на первое время. Тогда биты D4, D5, D6 будут задавать номер 16-ти килобайтного куска ПЗУ.

    Некоторая сложность возникает при вызове подпрограмм F836/39 из ПЗУ включённого портом F9, т.к эти п/п-ммы всегда возвращаются по RET выдав в порт F9 байт 0. Таким образом напрямую вызывать подпрограммы F836/39 из большого ПЗУ в адресах 0...3FFF нельзя, т.к при возврате ПЗУ будет отключено. Выходом является, давно напрашивающаяся модернизация подпрограмм F836/39, заключающаяся в том, что они будут теперь делать возврат не в банку 0, а ту банку номер которой хранится в ячейке F3F9. Если в этой ячейке 0, то совместимость сохраняется. Благодаря такой модернизации ПЗУ F800, можно будет вызывать п/п-ммы F836/39 и из большого ПЗУ в адресах 0...3FFF. Впрочем и без модернизации ПЗУ F800 можно выкрутиться, вызывая п/п-раммы F836/39 всегда только из ОЗУ банки 0.

    Надо решить как будет управляться большое ПЗУ. Тут есть 2 варианта. Большое ПЗУ работает только в банке 0, и второй вариант, когда большое ПЗУ закрывает область 0...3FFF во всех банках. Каждый вариант имеет свои плюсы и минусы.

    Можно сделать так, чтобы большое ПЗУ включалось только в банке 0, отчего объединение управления ОЗУ и ПЗУ в одном порту не повредит. Но тогда программой в ROM-BIOS нельзя будет напрямую закрашивать плоскость цвета, а потребуется по-старинке закидывать п/п-раммы раскраски в некоммутируемую область выше F000. А также от этого утратится логическая совместимость с архитектурой Z80CARD-II, в которой включённое окно 16К не коммутируется портом F9.

    Включение большого ПЗУ не только при текущей банке 0, но и во всех банках, даёт больше гибкости для ДОС в других банках ОЗУ, например позволяет подпрограммой ПЗУ читать с дискеты в дисковый буфер ДОС в банке 1 (а не только в банке 0) и даёт возможность из ПЗУ напрямую работать с плоскостью цвета. При таком включении ПЗУ также чуть меньший расход деталей.

    Ввиду вышеописанного неудобства такого объёдинения управления ОЗУ и ПЗУ в одном порту, рассмотрим, как можно ввести реальный порт FF для звука, не растрачивая на это порт FB00.

    Убрать "слипаемость" портов FB00 и FF00, как я писал ранее, очень просто. Достаточно двух диодов и резистора на ноге D27/15 (по схеме монтажное И). Резистор 150 ом, привязка входа на землю. А через 2 диода подаётся старый сигнал 112 (/F800) и адрес A10. На входе будет 0, только когда оба сигнала нулевые. Тогда при адресации выше FC00 (верхний) дешифратор D27 будет деактивирован сигналом A10=1. Такая простая переделка даёт полноценную дешифрацию портов вывода F800...FB00 и даёт возможность ввести порт FC00...FF00.

    После такой переделки с двумя диодами по адресам FC00...FF00 ничего не стоИт. Остаётся получить чип селект на эти адреса. Для этого достаточно инверсный сигнал 112 (т.е D8/11) и адрес A10 объединить по 'И' на ЛА3. Это даёт выборку FC00...FFFF (/FC00). Чтобы был строб при OUT в эти адреса достаточно объединить на ЛЛ1 эту выборку /FC00 и /IORQ. Можно, используя 2 вентиля из ЛА3, проинвертировать /IORQ и чип селект /FC00 и объединить на 4-ом ЛА3. На выходе получится единичный строб по команде OUT FF. Т.е весь расход деталей на звук OUT FF составит ЛА3, ТМ2 и два диода..
    Вложения Вложения
    Последний раз редактировалось barsik; 12.05.2017 в 11:31.

  7. #6

    Регистрация
    08.02.2015
    Адрес
    г. Санкт-Петербург
    Сообщений
    242
    Спасибо Благодарностей отдано 
    15
    Спасибо Благодарностей получено 
    15
    Поблагодарили
    7 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от barsik Посмотреть сообщение
    Для проверки слипаемости портов FB00 и FF00
    Цитата Сообщение от barsik Посмотреть сообщение
    Сообщите пожалуйста, результаты, такого теста звука OUT FF
    проверил, порты FB и FF слипаются. программа выдает меандр длительностью 1,4мс.

    для КР580 программа получилась такая:

    Код:
    CBEEP	EQU	0F3E7H			; константа BEEP
    
    XBEEP:	MVI	C, 60			; 15 BYTES
    
    BP1:	OUT	0FFH
    
    	LXI H, CBEEP
    	MOV A, M
    
    BP2:	NOP
    	DCR A
    	JNZ BP2
    	DCR C
    	JNZ BP1
    
    JMP XBEEP

  8. #7

    Регистрация
    05.10.2016
    Адрес
    г. Санкт-Петербург
    Сообщений
    1,080
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    5
    Поблагодарили
    5 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Stampmaker
    программа выдает меандр длительностью 1,4 МСЕК
    Что Вы понимаете под длительностью? Полагаю, что это период (а не длительность импульсов)? Период в 1.4 МСЕК соответствует частоте 714 герц. Если бы Вы не применили загрузку через HL, а сразу LDA CBEEP, то получилось бы 800 герц, как и положено.

    Если вводить дешифратор ИД7, то на основной плате надо делать доработку по устранению слипаемости портов, как я описал в своём предыдущем посте.

    Может быть у Вас есть возможность и желание проверить и схему устранения слипаемости портов (только лучше вместо диодов применить вентиль ЛЛ1)?

    Цитата Сообщение от Denn
    имеет смысл сразу делать видеовывод в формате VGA (режим 800х600@60), ОЗУ 1 Мб, ЦПУ Z80@20МГц, рассыпуха на КМОП
    Вообще-то не заметно, что много клонов 8-ми разрядок делают сразу для VGA (видел только РК86 с выходом на VGA).

    Входной клок видеогенератора с учётом соотношений частот строк и кадров придётся увеличить на (31.5:15.625)*(70:50)= 2.823 раза, т.е вместо 10 МГЦ кварц будет 28 МГЦ. Клок CPU и частота ОЗУ будет 28:4= 7 МГЦ, что даже Z80B потянут. Период доступа к ОЗУ будет 1:7= ~140 НСЕК, так что 100 наносекундные древние ОЗУ потянут.

    Но поиск остальных деталей будет затруднителен. Где брать такие скоростные ИМС работающие на 28 МГЦ? Да и настройка будет не очень лёгкой.

    Поставить статику в области вне экрана несложно. А чтобы ставить в экран придётся менять КП12 на КП11. И выигрыш по деталям будет только на ОЗУ. Поэтому применение SIMM (30 или 72 ноги) ничуть не хуже статики, но дешевле и проще.

    Если не ставить целью VGA, то гораздо проще сделать клон ОРИОНА с таким же быстродействием в 6.5...7.1 МГЦ, используя базовую схемотехнику, ОЗУ на такте 5 МГЦ, Z80B с WAIT на такте 10 МГЦ и две планки SIMM-30 по 1 мб (что в сумме 2 мб). SIMM рассчитаны на такую скорость, поэтому перегрева ОЗУ на такте 5 МГЦ не будет (как происходит с РУ5-тыми), отчего надёжность будет высокой. А для достижения скорости, достаточно поставить в банки 0 и 1 в адресах 0...7FFF статику w24257 без WAIT, так что программы в младших адресах будут прогоняться на эффективной скорости в 10 МГЦ, тем самым делая такую версию ОРИОНА более выгодной, чем вариант для VGA.

    А вместо подключения к VGA следует использовать подключение к целой IBM PC с установленной TV-картой, имеющей внешний вход VIDEO или китайский VGA-конвертор.
    Последний раз редактировалось barsik; 12.05.2017 в 20:47.

  9. #8

    Регистрация
    08.02.2015
    Адрес
    г. Санкт-Петербург
    Сообщений
    242
    Спасибо Благодарностей отдано 
    15
    Спасибо Благодарностей получено 
    15
    Поблагодарили
    7 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от barsik Посмотреть сообщение
    Что Вы понимаете под длительностью? Полагаю, что это период (а не длительность импульсов)? Период в 1.4 МСЕК соответствует частоте 714 герц.
    да, именно это я и имею ввиду - период.

    - - - Добавлено - - -

    Цитата Сообщение от barsik Посмотреть сообщение
    Ввиду вышеописанного неудобства такого объёдинения управления ОЗУ и ПЗУ в одном порту, рассмотрим, как можно ввести реальный порт FF для звука, не растрачивая на это порт FB00.

    Убрать "слипаемость" портов FB00 и FF00, как я писал ранее, очень просто. Достаточно двух диодов и резистора на ноге D27/15 (по схеме монтажное И). Резистор 150 ом, привязка входа на землю. А через 2 диода подаётся старый сигнал 112 (/F800) и адрес A10. На входе будет 0, только когда оба сигнала нулевые. Тогда при адресации выше FC00 (верхний) дешифратор D27 будет деактивирован сигналом A10=1. Такая простая переделка даёт полноценную дешифрацию портов вывода F800...FB00 и даёт возможность ввести порт FC00...FF00.

    После такой переделки с двумя диодами по адресам FC00...FF00 ничего не стоИт. Остаётся получить чип селект на эти адреса. Для этого достаточно инверсный сигнал 112 (т.е D8/11) и адрес A10 объединить по 'И' на ЛА3. Это даёт выборку FC00...FFFF (/FC00). Чтобы был строб при OUT в эти адреса достаточно объединить на ЛЛ1 эту выборку /FC00 и /IORQ. Можно, используя 2 вентиля из ЛА3, проинвертировать /IORQ и чип селект /FC00 и объединить на 4-ом ЛА3. На выходе получится единичный строб по команде OUT FF.

    если я правильно понял описание, то должно получиться вот так.
    в основной схеме предварительно разрываем связь между выводами 1 и 15 дешифратора ИД4 DD27.





    как теперь на КР580 получить /IORQ?
    Последний раз редактировалось Stampmaker; 12.05.2017 в 22:03.

  10. #9

    Регистрация
    28.03.2009
    Адрес
    г. Березовский КО
    Сообщений
    98
    Спасибо Благодарностей отдано 
    3
    Спасибо Благодарностей получено 
    5
    Поблагодарили
    5 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от barsik Посмотреть сообщение
    Где брать такие скоростные ИМС работающие на 28 МГЦ?
    Вот
    Миниатюры Миниатюры Нажмите на изображение для увеличения. 

Название:	M1.jpg 
Просмотров:	193 
Размер:	33.6 Кб 
ID:	61016   Нажмите на изображение для увеличения. 

Название:	M2.jpg 
Просмотров:	182 
Размер:	37.0 Кб 
ID:	61017  

  11. #10

    Регистрация
    20.06.2014
    Адрес
    г. Орск, Оренбургская обл.
    Сообщений
    813
    Спасибо Благодарностей отдано 
    33
    Спасибо Благодарностей получено 
    80
    Поблагодарили
    60 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от barsik Посмотреть сообщение
    Период доступа к ОЗУ будет 1:7= ~140 НСЕК, так что 100 наносекундные древние ОЗУ потянут.
    100 нс чипы тянут только до 5 МГц... Для 7 МГц надо 70 нс (теоретический предел), а лучше 60 нс, но они (в DIP-е) уж совсем дефицит...
    Указанное на чипах время - это время активного состояния сигнала выборки строк tRAS. Полный период произвольного доступа состоит из суммы этого времени и времени восстановления tRAS_Precharge, которое примерно равно этому же значению (иногда чуть меньше, указывается в шитах).
    Последний раз редактировалось LeoN65816; 13.05.2017 в 12:15.
    Турбо АГАТ-9/16 (ЦП 65C802, 5 Махов, dual-port SRAM).

Страница 88 из 120 ПерваяПервая ... 848586878889909192 ... ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Специалист: Разное
    от Splinter в разделе Специалист
    Ответов: 171
    Последнее: 09.05.2018, 07:50
  2. Видео про спекрум новое разное
    от AAA в разделе Новости
    Ответов: 19
    Последнее: 05.08.2016, 22:57
  3. Куплю Поиск, Радио - 86, Орион, БК
    от luzanov в разделе Барахолка (архив)
    Ответов: 23
    Последнее: 03.04.2007, 17:50
  4. Ответов: 4
    Последнее: 05.10.2006, 20:18
  5. Я готов купить Радио и Орион
    от Shaos в разделе Барахолка (архив)
    Ответов: 7
    Последнее: 18.12.2005, 22:15

Метки этой темы

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •