Вход

Просмотр полной версии : Ленинград 48К - использование 4-битных чипов памяти (64К*4, 256К*4) и другие вопросы



Rio444
14.02.2023, 22:02
Нигде не нашел, ставил ли кто-нибудь в Ленинград чипы памяти с 4-мя битами данных? Такие как импортные xxx41464 и xxx4256. Выгода налицо, вместо восьми или шестнадцати, всего два чипа.
Видел пару тем, где обсуждали применение модуля Simm 1Мб, 256Кб.
Но у симов есть недостаток, у них нельзя использовать входы /OE чипов. Поэтому приходится городить всякие буферы.
Управляя напрямую /OE чипов памяти можно отключать данные на выходе чипов в моменты, когда Z80 пишет в память и выставляет на шину свои данные.

Покурив схему Ленина, придумал такую схему для сигнала /OE:

https://pic.maxiol.com/images2/1676401154.781442656.mem4256.png

Т.е. нужно добавить только один элемент 2ИЛИ-НЕ.
Заработает?

На картинке фрагмент схемы от Прусака https://disk.yandex.ru/i/j0XJSGTcRZkfUQ

turlipuki
15.02.2023, 08:49
Сделал с буфером, для 48Кб три микросхемы(две ОЗУ 256х4 и ИР22)
Макет для испытания
https://pic.maxiol.com/thumbs2/1676439769.2956686041.img20230206110134.jpg (https://pic.maxiol.com/?v=1676439769.2956686041.img20230206110134.jpg&dp=2)

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

Работает нормально

Shumadan
15.02.2023, 08:50
заработало? как подключил?

turlipuki
15.02.2023, 09:24
Нужно просто отгородить ШД буфером. Входы/выходы озушек(они совмешëные) подключить к MD и выходам буфера. ИР22 управляется сигналами WE и WE/, OE и A8 озушек на землю. Всë)

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

Микросхемы MB81C4256

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

На них(2шт.) 128Кб можно сделать. Добавить только порт 7FFD и дешифрацию, будет всего семь микросхем)

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

А, нет восемь получается ЛЛ1, ЛА3, ЛЕ1, ТМ9, КП11, ИР22 и две DRAM

Rio444
15.02.2023, 11:53
turlipuki, спасибо! А можно поподробнее?


ИР22 управляется сигналами WE и WE/Зачем два сигнала? WE подключаем к /ER ИР22 https://eandc.ru/pdf/mikroskhema/k555ir22.pdf
Зачем ещё /WE? На вход /С чипв ИР22 видимо надо подать какой-то тактовый или его инверсию.

Нельзя ли использовать просто буфер, без триггеров? Такой как АП5? https://eandc.ru/pdf/mikroskhema/k555ap5.pdf
Подключив /WE на его входы E1, E2.

turlipuki
15.02.2023, 13:02
Нужно /WE подать на вход ER, тогда в цикле записи в ОЗУ будет сквозная передача плюс хранение(защëлкивание) до перехода /WE в высокий уровень(это обеспечивает WE на входе С). Тоже думал о простом повторителе, наверное АП6 будет удобнее. Но это не так надëжно, потому что нет режима хранения. Но скорей всего работать будет.

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

Насчëт управления по OE да, было бы здорово сделать без забора)) Но там всë не так просто, эти микрухи использовались в качестве кэша проца, думаю для этого был введëн ОЕ. В ДШ есть подробнейшие диаграммы(что и когда), хороший электронщик может и придумал бы.Но это не про меня, поэтому проще буфер)

Rio444
15.02.2023, 13:23
Насчëт управления по OE да, было бы здорово сделать без забора)) Но там всë не так просто,Тоже уже понял это. У регистра DD41 (ИР22), который стоит между MD0..7 и D0..7 выход получится замкнут на вход. Только если его тоже убрать. Но тогда не понятно, успеет ли CPU прочитать данные, без этого регистра-кэша.



Нужно /WE подать на вход ER, тогда в цикле записи в ОЗУ будет сквозная передача плюс хранение(защëлкивание) до перехода /WE в высокий уровень(это обеспечивает WE на входе С). Тоже думал о простом повторителе, наверное АП6 будет удобнее. Но это не так надëжно, потому что нет режима хранения.Вот есть ещё такая схема
https://pic.maxiol.com/images2/1676456345.781440029.22.png
отсюда https://zx-pk.ru/threads/8903-rasshirenie-ozu-leningrad-2.html?p=167310&viewfull=1#post167310
В ней вход "С" (на схеме "РЕ") подключен к +5В. В описании https://eandc.ru/pdf/mikroskhema/k555ir22.pdf неправильная таблица истинности. Лучше смотреть даташиты на 74LS373.
Так вот, когда на этом входе высокий уровень, входные значения просто копируются на выход. В данном случае - всегда. Т.е. регистр работает как обычный буфер.
У Вас тоже так?
Мне кажется единственный смысл применения ИР22 вместо АП5/АП6 - возможность напайки вторым этажом на уже стоящую ИР22 DD41, с перекрещиванием ног входов-выходов.
Ну ещё у ИР22 задержка больше, потому как сигнал проходит через внутренние регистры.

turlipuki
15.02.2023, 14:07
Я не слишком ещë разбираюсь, но помоему буфер чтения(DD41) отгораживает ШД от данных предназначеных для видеоконтроллера. Нельзя его убирать. Если что, пусть меня поправят более знающие.
А в схему с этими ОЗУ конечно лучше быструю ИР22 ставить. Хорошо тем, что она хранит данные, надëжней.

turlipuki
16.02.2023, 08:19
Нарисовал 128Кб. Осторожно, могут быть ошибки)
https://pic.maxiol.com/thumbs2/1676524519.2956685491.1283.jpg (https://pic.maxiol.com/?v=1676524519.2956685491.1283.jpg&dp=2)

Serg6845
16.02.2023, 11:31
Нарисовал 128Кб. Осторожно, могут быть ошибки)
https://pic.maxiol.com/thumbs2/1676524519.2956685491.1283.jpg (https://pic.maxiol.com/?v=1676524519.2956685491.1283.jpg&dp=2)

все не так просто. 44256 требуют регенерации в 512 циклов, т.е. А8 должен участвовать в этом процессе. в случае с Ленинградом, у которого все заточено под 8 адресов - придется перепахивать схему в районе адресных мультиплексоров, иначе в режиме 128к будет рассыпаться информация в верхней половине памяти.
а в режиме 48к все будет работать нормально.
поэтому для себя я остановился на 41256 - они встают в штатные места вместо РУ5 и регенерация у них 256 циклов.

turlipuki
16.02.2023, 11:53
Да, не подумал. Перерисую)
https://pic.maxiol.com/thumbs2/1676537563.2956685491.img20230216114858.jpg (https://pic.maxiol.com/?v=1676537563.2956685491.img20230216114858.jpg&dp=2)

Rio444
16.02.2023, 14:41
41256 - они встают в штатные места вместо РУ5 и регенерация у них 256 циклов
Спасибо :v2_thumb:
Вот никогда бы не подумал, что так может быть. Видимо сделали как раз для совместимости. И в реальности у них строка не 512 бит, а 1024.


придется перепахивать схему в районе адресных мультиплексоров
Зачем же перепахивать? Нужно два дополнительных 1-битных мультиплексора. Один ставится параллельно адресному мультиплексора для процессора (второй аналогично мультиплексору дисплея) и на него заводится A8 процессора. Выход на А8 чипа по сигналу RAS/.
По сигналу CAS/ с него будет выходить номер страницы. Т.е. у нас страница будет задаваться по CAS/ битами A8 и A0 (т.к. на А0 у нас был адрес с процессора А8, но мы его забрали на А8 RAS/).



Нарисовал 128Кб.
Могли бы пояснить схему? И зачем на 11-й ноге DD3 сигнал /W? Выше писал, что можно поставить просто буфер, управляемый WE/.

Shumadan
16.02.2023, 15:12
41256 это же РУ7 получается

turlipuki
16.02.2023, 15:51
Да, 512строк/512столбцов. Для регенерации нужно перебирать 256 строк, как выше написали. У 256Кх4 1024х1024 матрица, т.е. нужна регенерация 512циклов.

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

Rio444
Да, можно установить на 11-й ноге фиксированную единицу. Я не хочу АП, хочу чтоб был регистр-защëлка)) А схема классическая, еë давно придумали-) Порт 7FFD, дешифрация порта, защита от записи в область ПЗУ.

turlipuki
17.02.2023, 10:01
Убрал WE, вместо него +5. Работает)
Нарисовал на АП6, смотрите что не так, после можно будет испытать.
https://pic.maxiol.com/thumbs2/1676616931.2956684181.48ap6.jpg (https://pic.maxiol.com/?v=1676616931.2956684181.48ap6.jpg&dp=2)

Serg6845
17.02.2023, 11:32
41256 это же РУ7 получается

не совсем, и в этом засада. по распиновке, сигналам и объему - они одинаковые, а вот регенерация у РУ7 - 512 циклов (у 41256 - 256).

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



Зачем же перепахивать? Нужно два дополнительных 1-битных мультиплексора. Один ставится параллельно адресному мультиплексора для процессора (второй аналогично мультиплексору дисплея) и на него заводится A8 процессора. Выход на А8 чипа по сигналу RAS/.
По сигналу CAS/ с него будет выходить номер страницы. Т.е. у нас страница будет задаваться по CAS/ битами A8 и A0 (т.к. на А0 у нас был адрес с процессора А8, но мы его забрали на А8 RAS/).


типа как здесь? https://habr.com/ru/post/446366/
у меня что-то не взлетело с РУ7. разваливается регенерация. с 41256 - ок. забил, оставил 41256.

Rio444
17.02.2023, 12:15
Убрал WE, вместо него +5. Работает):v2_thumb:



Нарисовал на АП6Вроде всё правильно. Только непонятно, почему такое распределение битов шины на АП6. Так легче подпаиваться?

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


типа как здесь? https://habr.com/ru/post/446366/
Да, наверное как-то так. Хотя схема мудреная, для меня до конца не понятная.

turlipuki
17.02.2023, 12:29
Да нее, схема же не указание куда что паять, а просто принцип)

turlipuki
19.02.2023, 20:19
Сделал на этих микросхемах 128Кб. Работает) На днях выложу схему.
https://pic.maxiol.com/thumbs2/1676826796.2956681366.img202302191751531.jpg (https://pic.maxiol.com/?v=1676826796.2956681366.img202302191751531.jpg&dp=2)
https://pic.maxiol.com/thumbs2/1676826998.2956681366.img202302191951261.jpg (https://pic.maxiol.com/?v=1676826998.2956681366.img202302191951261.jpg&dp=2)
https://pic.maxiol.com/thumbs2/1676827104.2956681366.img202302192005461.jpg (https://pic.maxiol.com/?v=1676827104.2956681366.img202302192005461.jpg&dp=2)

turlipuki
21.02.2023, 20:33
Схему взял здесь, просто приделал ОЗУ 256Кх4bit
https://www.cxemateka.ru/en/building_zx_spectrum_128k_clone_beta_disk_interfac e_ay_3_8910_ym2149f/all
https://pic.maxiol.com/thumbs2/1677000731.2956683893.l1128.jpg (https://pic.maxiol.com/?v=1677000731.2956683893.l1128.jpg&dp=2)
Два часа теста, всё стабильно.

Rio444
22.02.2023, 22:59
turlipuki, как в этом случае работает регенерация, не разбирались?
Вижу по схеме, что А8 на памяти как-то завязано с МА0, но разобраться пока не получается.

Из всего объёма доступны только 128К?
Можно как-то с пользой использовать остальные 128К?

Rio444
23.02.2023, 01:04
P.S. Попытался внимательно разобраться со схемой регенерации, и всё равно не понял. Там всё или очень тонко, или профанация (имею в виду, конечно, не Вас, а исходную схему на сайте Схемотехника).

Дальше обозначения по Вашей схеме https://pic.maxiol.com/images2/1677000731.2956683893.l1128.jpg

С DD7/11 выходит лог. единица если идёт обращение к видеопамяти (страница RAM 5 или 7, окно CPU 1). Причем независимо, контроллером дисплея, или процессором.
Если идёт обращение процессора в окно CPU 2, то будет лог. 0, если в окно CPU 3 - в зависимости от страницы.
То есть фактически этот сигнал указывает, идёт обращение к нечетной странице (включая видеопамять) или к четной.
Далее, если RAS = 1, а /RAS = 0 (т.е. активен), то этот сигнал (с DD7/11) доходит до самого выхода D4.4/13, и выходит с инверсией.

Если RAS = 0, а /RAS = 1 (не активен), то эта ветвь не влияет на выход, и значение выхода определяется сигналом MA0 на входе DD5/12.
Если MA0 = 1, на выходе (D4.4/13) будет ноль, если MA0 = 0, на выхода единица.
Выход, напомню, поступает на старший адресный разряд А8 чипов памяти (4256 или РУ7 в исходной схеме).

Теперь, кто может, объясните, где я ошибся, и как вторая ветвь (начинающаяся с /RAS и MA0) может влиять на регенерацию? Ведь /RAS высокий, следовательно неактивный. А регенерация осуществляется именно по строкам.

https://pic.maxiol.com/images2/1677102609.781441061.trdosspec22.png

turlipuki
23.02.2023, 09:57
Сам до конца не разобрался, пока отложил это. Но думаю эта схема никак не профанация, а наоборот изящное решение.
Вот здесь очень не плохое объяснение:
http://zxpress.ru/article.php?id=14681
Сообщайте о результатах, тоже хочется понять)

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

Сам на этом же месте схемы споткнулся.

Rio444
23.02.2023, 11:40
turlipuki, спасибо, почитал статью. Моя ошибка в том, что считал, адрес выставляется при низком уровне /RAS. На самом деле он "защелкивается" при переходе в низкий, а выставляется как раз когда /RAS высокий.
Получается, что используются только 128К из 256К. Сигнал А0 дублируется, одновременно подаётся на A0 памяти, а при записи номера строки, ещё и на А8. Видимо этим и достигается регенерация.
При этом переключение между "нижними" и "верхними" 64К происходит внутри строки, заданием значения адреса А8 чипов памяти.

turlipuki
23.02.2023, 13:18
Я рад, что удалось разобраться, спасибо.
Считаю, что 256Кб, только из спортивного интереса делать) Такого софта крохи по сравнению с 48,128.

Serg6845
23.02.2023, 13:37
Я рад, что удалось разобраться, спасибо.
Считаю, что 256Кб, только из спортивного интереса делать) Такого софта крохи по сравнению с 48,128.

ну это как к делу подойти. у меня например на второй половине 256к работает DIVMMC. хотя там схема уже гораздо сложнее...

turlipuki
23.02.2023, 13:51
Да, соглашусь. Просто зациклился на своей концепции. Задача уместить всë в маленький корпус Ленинграда: 128Кб, AY, pal-кодер, и никаких интерфейсов)
Правда появились мысли о подключении геймпада, Сега или Дэнди.

Rio444
23.02.2023, 14:14
Задача уместить всë в маленький корпус Ленинграда: 128Кб, AY, pal-кодер, и никаких интерфейсов)
Аналогично:v2_thumb:
Игрушки загружаю со старого кнопочного телефона. Большинство в турбо-режиме на удвоенной скорости (прошивка уже была "Турбо"). Турбированные вообще очень быстро грузятся https://zx-pk.ru/threads/19193-igry-s-turbo-zagruzkoj-dlya-quot-leningrad-2012-quot.html
В связи с этим заморачиваться с дисководом и всякими эмуляторами вообще не вижу смысла.

Но вот использовать как-то с пользой "лишние" 128К хотелось бы.

Вы AY будете оригинальный использовать или эмулятор на Atmega?

crrush
26.02.2023, 20:51
Да, соглашусь. Просто зациклился на своей концепции. Задача уместить всë в маленький корпус Ленинграда: 128Кб, AY, pal-кодер, и никаких интерфейсов)
Правда появились мысли о подключении геймпада, Сега или Дэнди.

а платку не разводили? а то не охота навесом монтировать)

turlipuki
26.02.2023, 22:41
To Rio444
Буду использовать настоящую AY
To crrush
Если делать плату, не зайдëт в корпус. А так можно попробовать) Но всë равно соединять проводками придëтся, их немало будет. Может влезет, если сделать две платы. К примеру порт и ОЗУ над полем РУшек, AY над ПЗУ1, кодер на монтажном поле. Насчëт геймпада даже не знаю, ещë не разбирался, как и по какой схеме это сделать.

Rio444
27.02.2023, 14:41
Буду использовать настоящую AYУ Вас уже есть или знаете где купить? ;)
На Atmega компактнее получается. Звук конечно похуже, но имхо не критично.

turlipuki
27.02.2023, 16:20
Купил на Али по какой то прям смешной цене. Около 100р. за 2шт. Поленился проверять их, так что не могу ручаться за качество). С микроконтроллерами пока дела не имел.
Да, конечно нужно их проверить(есть комп с AY)

Rio444
27.02.2023, 17:19
turlipuki, AY-3-8910 и сейчас по смешной цене. Но они вообще огромные. И отзывы не однозначные.
AY-3-8912 по ~1500 руб.

turlipuki
27.02.2023, 19:10
AY-3-8912 по ~1500 руб.
Ничëси, не знал.
Микросхема конечно огромная, согласен. Но плюс в том, что несложно сделать.
Всëж проверю сейчас, которые купил.

Rio444
27.02.2023, 20:42
Микросхема конечно огромная, согласен
Я о том, что 8912 имеет 28 ног (тоже не маленькая), в то время как 8910 все 40 ног.
То бишь 8912 размером как ROM, а 8910 как Z80.

turlipuki
27.02.2023, 21:01
Испытал чипы от китайцев, всë ОК.
Даже сравнил звучание AY и YM, есть некоторая разница)

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


Я о том, что 8912 имеет 28 ног (тоже не маленькая), в то время как 8910 все 40 ног.
То бишь 8912 размером как ROM, а 8910 как Z80.
Так в этих компьютерах всë большое, Ретро всë же =))

Rio444
09.03.2023, 13:39
Подскажите, по какому стандарту лучше расширять память Ленинграда до 256Кб?
Пентагон (бит D6 порта 7FFD)?
Или Скорпион (бит D4 порта 1FFD)?

И зачем в схеме https://www.avray.ru/wp-content/uploads/2014/10/256k_upgrade_ay_1ffd_7ffd_3_tmp.png источник https://www.avray.ru/ru/zx-spectrum-256k-upgrade/
на вход G1 LS138 (ИД7) подаётся /М1? На схеме чип в левом нижнем углу.

Shofer
09.03.2023, 18:15
М1 на ИД7 идёт, чтобы выборка регистра порта конфигурации и регистров AY происходила синхронно с окончанием операции, а не от фонаря. Это правильное решение. Без М1 тот же АY будет мусорить на шину в какие-то моменты

Rio444
09.03.2023, 18:56
Shofer, но ведь есть же сигнал /IOREQ, который тоже задействуется в этих схемах, и если я правильно понимаю, с /М1 никак не пересекается.
Т.е. если /IOREQ низкий, то /М1 всегда будет высокий. Разве не так?

Хотя есть вот такая схема https://www.cxemateka.ru/i/AY-3-8910.gif с сайта Схемотехника, в которой видно, что М1 добавлен. То есть видимо без него что-то работало не так.

В общем непонятно, в какие именно моменты АY будет мусорить на шину?

Shofer
09.03.2023, 20:48
IORQ совместно с М1 вообще используется для подтверждения прерывания. Но смысл не в этом, а в том, что низкий М1 означает, что проц выполняет операцию. М1 - это машинный цикл. Как только М1 становится высоким, в этот момент можно производить запись/чтение и это не будет конфликтовать с предыдущими данными

Rio444
31.07.2023, 01:55
Сделал пока в облегченном варианте - чипы 4256, но используются только 64Кб. Старший адресный разряд просто на "земле".
В качестве буфера использовал LS244, чипы памяти 80нс.
Все РУ5 вообще выпаял. DD32 ИР22 на месте, к ней подключен буфер и шина данных памяти.
Линии адреса и данных перепутаны, исключительно с целью упрощения монтажа.

https://i.ibb.co/Dr99Yg4/64K-4256.png (https://ibb.co/Dr99Yg4)

Rio444
05.07.2024, 00:25
Допилил наконец. Пока без муз. процессора. Хотя возможность подключения предусмотрена.
И на макетке.

По сравнению с известными конструкциями, минимум проводов для впайки в схему "Ленинграда", минимум перерезаний дорожек.
По задумке, все 565РУ5 выпаиваются (что уже сделано) и на их место устанавливается плата с 256К памяти.

Схема состоит всего из 6-ти чипов:
- D-триггер со входом очистки 74ls273 (К555ИР35),
- буфер 74ls244 (К555АП5),
- два чипа GAL16V8B-10,
- два чипа памяти 256Kx4,
На питание каждого чипа, между Vcc и GND, установлены конденсаторы по 0,1 мкФ (на схеме ниже не показаны).

https://pic.maxiol.com/images2/1724748249.3582613444.gal.png

Описание входов и выходов:

D0..D7 - шина данных процессора. Проще всего взять с D32 (ИР22/LS373).
MD0..MD7 - шина данных памяти. Аналогично берётся с D32.
MA0..MA7 - шина адреса памяти. Берётся с контактов 565РУ5.
/RAS, /CAS, /WE - сигналы доступа к памяти. Аналогично берутся с контактов 565РУ5.
A0, A1, A8, A14, A15 - шина адреса процессора, можно взять с ножек Z80: 30, 31, 38, 4, 5 (соответственно).
/IORQ_input, WR, RESET, M1 - аналогично берутся с контактов процессора: 20(IORQ), 22, 26, 27.
V0_V6 берётся с контакта 3 D18 (КП11/LS257) или контакта 4 D19 (КП11/LS257).
H1 проше всего взять с контакта 15 D16 (КП11/LS257). Хотя вариантов много (см. схему "Ленинграда"). Например контакт 15 D15, D17, D18.
/IORD_out подключается к контакту 15 D38 или D37 (КП11/LS257).

Три случая, когда дорожки придётся резать:
ROM_A14 поключается к контакту чипа ROM (27256). Если контакт был с чем-то соединён (GND, +5V или чем-то ещё), его нужно изолировать - перерезать дорожку.
/IORD_input берётся с 3-й ножки D14 (ЛЛ1/LS32). Ногу изолировать от остальной части схемы (чтобы сигнал не доходил до контактов 15 D38 и D37) - перерезать дорожку.
/IOWR_out подключается к контакту 9 D39 (ТМ9/LS174). От остальной части схемы этот контакт нужно изолировать - перерезать дорожку.

Ещё не протестировано: Уже проверено, работает:
AY_BDR, AY_BDC - к муз. процессору.

Фото результата:
https://pic.maxiol.com/thumbs2/1724748385.3582613444.1.jpg (https://pic.maxiol.com/?v=1724748385.3582613444.1.jpg&dp=2) https://pic.maxiol.com/thumbs2/1724748441.3582613444.2.jpg (https://pic.maxiol.com/?v=1724748441.3582613444.2.jpg&dp=2) https://pic.maxiol.com/thumbs2/1724748478.3582613444.3.jpg (https://pic.maxiol.com/?v=1724748478.3582613444.3.jpg&dp=2)

Проекты GAL для WinCupl, включая скомпилированные прошивки:
80967

Rio444
05.07.2024, 11:48
Точки подключения к плате "Ленинграда" (кликабельно).
https://i.ibb.co/y84tbLP/Leningrad-MONTGray-mini.png (https://i.ibb.co/D1NYV7R/Leningrad-MONTGray.png)

Rio444
07.07.2024, 00:51
Подключил звук по такой схеме:
https://i.ibb.co/MDVpbXY/AY38910-mini.png

Работает, но возникли вопросы.
1. Какую схему выхода на колонки лучше использовать? Их огромное количество. По разному резисторы подключаются. Разные номиналы этих резисторов.
2. Как проверить, что правильно работает?
3. Подключил компьютерные колонки. Звук оказался очень громким. Чтобы получить среднюю громкость, надо регулятор громкости крутить на самый минимум. И попасть так, чтобы звук вообще не пропал.
Увеличил R3 и R6 до 10К, R1 и R2 до 20К, между 3-м контактом ("выход B") и землёй поставил резистор 2К.
То есть сделал ближе вот к этой схеме (не помню, откуда скачал):
https://i.ibb.co/PZnvyMc/Forum-16-1-36.png (https://ibb.co/PZnvyMc)

Стало тише, но всё равно громко. Что ещё можно сделать?

4. Какие популярные игры поддерживают муз. процессор? Все?

creator
07.07.2024, 05:56
1. Какую схему выхода на колонки лучше использовать? Их огромное количество. По разному резисторы подключаются. Разные номиналы этих резисторов.
Если прям конкретно лучше, то вот так (комментарий (https://zx-pk.ru/threads/680-turbo-sound.html?p=12646&viewfull=1#post12646)):
https://pic.maxiol.com/images2/1720320126.92909876.hardaysch1.png

2. Как проверить, что правильно работает?
Можно этим (https://zx-pk.ru/threads/32069-karabas-pro.html?p=1139944&viewfull=1#post1139944).

4. Какие популярные игры поддерживают муз. процессор? Все?
Практически так. Exolon, Golden Axe, Venom Strikes Back, Batman 3, Robocop 1-2-3.

Serg6845
07.07.2024, 08:52
То есть сделал ближе вот к этой схеме (не помню, откуда скачал):
https://i.ibb.co/PZnvyMc/Forum-16-1-36.png (https://ibb.co/PZnvyMc)

Стало тише, но всё равно громко. Что ещё можно сделать?



добавить по резистору с Left и Right на землю. номинал подобрать до получения желаемой громкости.

Rio444
07.07.2024, 12:24
Если прям конкретно лучше, то вот так (комментарий):Лучше не надо. Надо выбрать из "плохих".
Слышал муз. процессор у приятеля ещё в начале 90-х. Вот надо как тогда было.
Не думаю, что у него была схема на ОУ.
Вот ещё какие варианты попались:
https://i.ibb.co/xmSTJ8Z/ay-beeper-scorpion.png (https://ibb.co/xmSTJ8Z) https://i.ibb.co/tXTTXTx/AY-out.png (https://ibb.co/tXTTXTx)

За тесты AY спасибо! Попробую.


Практически так. Exolon, Golden Axe, Venom Strikes Back, Batman 3, Robocop 1-2-3.Спасибо! Запускал Робокопа и Exolon.
По ощущениям что-то не то. Возможно AY паленый попался.
https://i.ibb.co/27TmNGP/DSCF3424.jpg (https://ibb.co/27TmNGP)
Тестовая программа пишет, что это YM2149

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


добавить по резистору с Left и Right на землю. номинал подобрать до получения желаемой громкости.
Первое, что приходит в голову. На как это повлияет на смешивание каналов? Ведь коэффициенты изменятся?
Может наоборот, сделать делитель из нагрузочных резисторов на выходах каналов?
Вместе 2К поставить например 2К + 500 Ом (к земле) и снимать сигнал с 500 Ом? Так не лучше будет?
Или вообще эти 2К заменить на переменники.

creator
07.07.2024, 13:20
По ощущениям что-то не то. Возможно AY паленый попался.
Попробуй подтянуть clock (22 нога) к +5В через резистор 2.2К.

Serg6845
07.07.2024, 13:26
Первое, что приходит в голову. На как это повлияет на смешивание каналов? Ведь коэффициенты изменятся?

на этой схеме
https://i.ibb.co/tXTTXTx/AY-out.png (https://ibb.co/tXTTXTx)
ровно так и сделано. а коэффициенты можно при желании подкорректировать остальными резисторами - например поставив вместо 4 резисторов с выходов AY два переменника (или один сдвоенный).


Может наоборот, сделать делитель из нагрузочных резисторов на выходах каналов?
Вместе 2К поставить например 2К + 500 Ом (к земле) и снимать сигнал с 500 Ом? Так не лучше будет?
Или вообще эти 2К заменить на переменники.

можно и так, только деталей больше понадобится.

Rio444
08.07.2024, 11:11
Попробуй подтянуть clock (22 нога) к +5В через резистор 2.2К.Что должно было измениться?
Поставил, разницы не заметил. Убрал, опять разницы не заметил.

Посмотрел осликом уровни на выходах - размах в пределах 1В, то есть ничего криминального.
Послушал тест. Оказалось дело в колонках. Сдыхает регулятор громкости. Из-за этого ещё и регулировка по каналам неравномерная. Звук громче то в одном канале, то в другом.
Поставил колонки поновее, теперь с регулировкой громкости всё в порядке.
Т.е. в итоге схема, где выходы AY нагружаются резисторами по 2К (у меня по факту 2,2К), каналы А и С идут на колонки через 10К, а канал В через два по 20К.

Но всё равно звучок какой-то не такой. Или память подводит, или дело в чипе. Буду искать оригинальный 8910.
Есть ещё вариант - оригинальное звучание обеспечивали колонки приятеля :D

P.S. Да, наверное дело в чипе.
У меня звук слишком "мягкий", как в этом видео https://www.youtube.com/watch?v=5wd8YkPKBB4
А запомнился более "мощный", вот такой: https://www.youtube.com/watch?v=FpBqUFsT5Nc

Rio444
09.07.2024, 10:24
Ещё один вариант аудио-выхода. Из журнала Радиолюбитель 1994-02,03 https://emuverse.ru/wiki/%D0%A0%D0%B0%D0%B4%D0%B8%D0%BE%D0%BB%D1%8E%D0%B1%D 0%B8%D1%82%D0%B5%D0%BB%D1%8C_1994-02,03/%D0%A1%D0%BF%D0%B5%D0%BA%D1%82%D1%80%D1%83%D0%BC-128
И тоже заметно отличается от предыдущих.
https://i.ibb.co/RgjRtLQ/RL-1994-03-06.png

Serg6845
09.07.2024, 11:18
И тоже заметно отличается от предыдущих.


да ничем оно по сути не отличается. R2:R3 - примерно 1:2 как в остальных схемах, а R1, R6 - задают амплитуду на выходах. Конденсаторы - пожалуй единственное отличие, в зависимости от того что подключено дальше - могут быть нужны или не нужны.

creator
09.07.2024, 11:57
Что должно было измениться?
Поставил, разницы не заметил. Убрал, опять разницы не заметил.
У меня была некая проблема с отдельным генератором (https://zx-pk.ru/threads/14041-radost-dnya).html?p=815027&viewfull=1#post815027). А затем собрал аналогичный генератор на 155ла3 (https://zx-pk.ru/threads/26259-pochemu-takoj-zvuk-ym2149f-kvorum-48-po-skheme-dlya-lut.html?p=861275&viewfull=1#post861275), так этот резистор, заранее поставленный, пришлось убрать.

Rio444
09.07.2024, 15:16
creator, понял, спасибо.
Только у меня звук не "жуткий", а "какой-то не такой" :)

goodboy
14.07.2024, 22:44
у меня звук не "жуткий", а "какой-то не такой"
возможно разное смешение каналов ABC / ACB.

Rio444
07.09.2024, 02:27
В "Ленинграде-1" клавиатура и джойстик обслуживаются одними и теми же
микросхемами D37,D38 (555КП11). А дешифрация портов ввода - вывода выполнена
настолько грубо, что: все выходные порты 0...254 работают как порт 254
(#FE), а выходные порты: все четные - 254, все нечетные - 31, т.к.
используется только один адрес - A0. С этим и связаны все проблемы, о
которых немало написано на страницах "ZX-РЕВЮ".Источник https://zxpress.ru/book_articles.php?id=652&ysclid=m0rc9t2auc305217719

Хотелось бы узнать, что это за проблемы?
И если они действительно имеют место, по какой схеме лучше сделать "правильную" дешифрацию?
Один из вариантов предлагается здесь https://www.cxemateka.ru/v1/128k.png
А так-то можно хоть по LS688 поставить на каждый порт. Или по GAL-ке.
Это действительно нужно?

Rio444
07.09.2024, 23:01
Конкретизирую вопрос.
Зачем при расширении памяти "Ленинграда" нужна коррекция дешифрации IORD?
https://pic.maxiol.com/images2/1725739038.3582613444..png

Почему IOWR - понятно. Иначе при записи данных в регистр управления страницами памяти (по адресу 7FFDh), все те же данные будут переть на спикер, бордер и магнитофонный выход.

Но зачем корректировать IORD?
Мы же всё равно дополнительно ничего не читаем, кроме стандартных клавиатуры и кемпстон-джойстика.

Rio444
11.09.2024, 15:10
Всё понял. Всем спасибо!
Нафиг эта коррекция не нужна.

OldSpeccer
03.02.2025, 12:39
Но зачем корректировать IORD?
Мы же всё равно дополнительно ничего не читаем, кроме стандартных клавиатуры и кемпстон-джойстика.

Читаем. Порт FF например, или другие порты. Схема не для превращение спека в конкретную игровую приставку, а для правильности вообще,
мало ли кому что надо в итоге. Но да, если больше ничего кроме КП11-х на FE нет, то конечно нафиг надо.

Но я вообще просто из интереса открыл данную ветку, и прозрел, что оказывается у народа с данным вопросом даже проблемы вылазят.
А я то и не знал. У меня 2 или 3 ленинграда собрано на 4х битных RAM, и ниразу никаких проблем с регенерацией не было. И при этом именно в совершенно
стандартном включении, то есть просто АП6/LS245 и все, то есть никаких Н0 на клок (известно, что это включает режим CAS перед RAS).
Вот прямо сейчас лежит передо мной Ленинград-1 на 2х MCM514256 + LS245, работает четко, стабильно, с дешманским MME-80A, что с вэйтом,
что без. Второй был когда-то ленинградом, весь МГТФом собран, тоже до 256К расширен на двух DIP18 44256-х из какой-то видеокарты, там возможно
и Н0 в качестве клока, не разобраться уже, смотреть надо. Возможно все потому, что импортная память вся поддерживает hidden refresh, то есть достаточно
простого обращения к памяти для рефреша, хз. Но теперь вот меня этот вопрос заинтересовал, жаль нет РУ7, охотно поигрался бы с этим проклятым
рефрешем.

UPD: разобрался, почему у меня всегда все работало. Поскольку на чипах хх256 получается 256 килобайт памяти - грех все не использовать, поэтому и доработку я всегда делал одну и ту же, с сайта Прусака, а тамошняя схема рассчитана на РУ7, т.е. рефреш 512 циклов (КП12-я перебирает этот самый A8 адрес по комбинациям RAS и H1), и поэтому 1:1 работает с импортной 4х-битной памятью.

Rio444
09.02.2025, 02:55
поэтому и доработку я всегда делал одну и ту же, с сайта Прусака, а тамошняя схема рассчитана на РУ7Что за схема?
Что-то сходу не вспомню.

OldSpeccer
17.02.2025, 17:15
Что за схема?
Что-то сходу не вспомню.

https://zxbyte.ru/doc/leningrad/leningrad_256.zip