PDA

Просмотр полной версии : ЮТ и AY



Kakos_nonos
12.04.2014, 17:00
Вот сделал конфигурацию эмулятора и "гудящую" программу. Теперь можно двигаться дальше.
Частота AY - 1,77 мгц, почти как у спека, это хорошо, все мелодии подойдут.
Порты:
$70 - данные.
$71 - номер регистра.

VovanRK86
15.04.2014, 16:58
Раз процесс пошёл, и AY не за горами, приведу здесь вот такую цитату.


Если бы ещё у РК было прерывание 50Гц по кадровому СИ...

РК читаем ЮТ

Как это использовать я не понимаю, (не програмер я), но конечно догадываюсь, так вот вопрос МОЖЕТ это нужно в ЮТе?, раз тактовая со спеком совпадает, то может стоит и ЭТО как то предусмотреть?
(вывод КСИ на дисплейном модуле и ВН59 добавить на доп плату)

Kakos_nonos
15.04.2014, 17:19
У рк есть эмуляция кадрового прерывания, то есть, мы можем делать тоже самое, что если бы у нас оно было бы.

В ЮТе это сложнее, вг75 там нет. Однако, 50гц можно реализовать с помошью задержек, что мы и делали в декоде. Правда, не получиться заниматься проигрованием музыки и каким-либо другим делом, например вычислением чего-то, или выводить анимацию на экран.

Можно это так решить, выводить кадровые СИ на какй-то порт, и получим аналог РК. Это позвилит писать демы с музыкой. А играть можно и щас.

VovanRK86
15.04.2014, 18:17
Что то я совсем запутался


У рк есть эмуляция кадрового прерывания
это как и что эмуляция?



В ЮТе это сложнее, вг75 там нет. Однако, 50гц можно реализовать с помошью задержек
а просто с какого нибудь счетчика 50гц снять нельзя? и на ВН59?

---------- Post added at 18:16 ---------- Previous post was at 18:15 ----------


А играть можно и щас.
Жду демку, хочу в железе проверить, AY почти припаял;)

---------- Post added at 18:17 ---------- Previous post was at 18:16 ----------

про счётчик имел в виду дисплейный модуль(ДМ), нет ли там нужного сигнала?

Kakos_nonos
15.04.2014, 19:57
это как и что эмуляция?
Вот что я называю эмуляцией кадрового прерывания:
Есть некий порт, значение которого устанавливается в 1 при кадровом прерывании. Программа постоянно оттуда читает и так может его отслеживать.
Так реализованно в РК и позволяет обойтись без ВН59.

а просто с какого нибудь счетчика 50гц снять нельзя? и на ВН59?
про счётчик имел в виду дисплейный модуль, нет ли там нужного сигнала?

Можно на ВН59 пустить сигнал КСИ видеоконтроллёра (кадровый синхроипсульс). Будет как раз кадровое прерывание.

---------- Post added at 19:57 ---------- Previous post was at 19:53 ----------

Кстати, как там у АУ расположение регистров дата/адрес? Может придётся поменять 70 и 71 местами, чтоб инвыертор не делать.

VovanRK86
15.04.2014, 21:23
Кстати, как там у АУ расположение регистров дата/адрес? Может придётся поменять 70 и 71 местами, чтоб инвыертор не делать.
Это для меня лес тёмный!!! Только изучать мат часть начал!



Так реализованно в РК и позволяет обойтись без ВН59.

ха-ха, и это тоже!!! лес не светлее! что то я не видел в РК ни какого порта под ЭТО, поэтому и спрашиваю, если есть примеры - ткните, и у меня ВН59 в РК на подходе, а уж в ЮТ сам Бог велел, не зря же ВК38 установлена!!!

---------- Post added at 21:23 ---------- Previous post was at 21:18 ----------


Можно на ВН59 пустить сигнал КСИ видеоконтроллёра (кадровый синхроипсульс). Будет как раз кадровое прерывание.

Вот я и спрашиваю можно ли так, и нужно ли???? и если ДА, то может сигнал КСИ на Гребёнку? (в ДМ:)) на будущее!

Kakos_nonos
15.04.2014, 22:00
В РК это реализовано внутри ВГ75.
Вот процедура ожидания КСИ


WAITIN:
LXI H, VG75+1
WAIT1:
MOV A,M
ANI $20
JZ WAIT1
RET

Она постоянно проверяет порт ВГ75, и, когда пришёл КСИ, выходит из цикла, и программа продолжает выполняться.
Так можно эмулировать кадровое прерывание, тем самым, отмеряя точные промежутки времени.

VovanRK86
16.04.2014, 00:59
Спасибо!
Как я понял так можно отмерить ТОЛЬКО именно точный промежуток времени (с привязкой к КСИ), но без вн59, в ДАННЫЙ момент делать больше ничего нельзя, например заставку выводить (хотя может её из за этого КСИ и так нельзя выводить?) т.е. это именно эмуляция прерывания по КСИ и в ЮТе понятно что ПОКА нет такого регистра, что бы отследить КСИ, но как вариант подаём КСИ со счётчиков ДМ на ВН59 и получаем не эмуляцию, а полный функционал, как вектор программировать пока не спрашиваю, для меня и эмуляция в РК на данный момент ОТКРЫТИЕ, может потому что не использовалось в РК (AY там нет до сих пор;)) или я об этом не знаю просто или использовалось только в клонах....

Alex_LG
16.04.2014, 14:22
но как вариант подаём КСИ со счётчиков ДМ на ВН59 и получаем не эмуляцию, а полный функционал, как вектор программировать пока не спрашиваю

Мне кажется проще будет поставить ВИ53, запрограммировать на нужную частоту и повесить на прерывания. Для ЮТ (особенно в минимальной конфигурации) ВН59 - излишество, а вот 589ИК14 - самое оно (контроллер прерываний, выставляющий на шину данных RSTxx, не требует программирования, можно эмулировать на РТ4 или повторить на PAL/GAL)

VovanRK86
16.04.2014, 18:45
Для ЮТ (особенно в минимальной конфигурации) ВН59 - излишество

А вот я бы как раз хотел бы наворочить ИМЕННО минимальную конфигурацию по максимуму, интересно именно минимальную, а то получиться очередной клон РК. Хочется ВН59,ВИ53,ВВ51,ВВ55,ВИ1,AY, RAM&ROM диски и (или) SD, ну и маленькую ОСь для поддержки всего этого может в место Монитора0, а дисплейный модуль нужен в моём варианте для отладки всего этого.

А вот про 589ИК14 и замены её на РТ4 очень интересно!

Kakos_nonos
16.04.2014, 19:21
Мне кажется проще будет поставить ВИ53
У нас ви53 используется для музыки, можно кси использовать.

VovanRK86
16.04.2014, 21:28
Кстати, как там у АУ расположение регистров дата/адрес? Может придётся поменять 70 и 71 местами, чтоб инвыертор не делать.
Вроде начал понимать о чём речь, но ответить надо ли менять пока не могу.

По адресу порта есть тоже идеи, но позже (учу матчасть)

И вопрос как объединять каналы AY, стерео будет?

Ewgeny7
16.04.2014, 21:42
И вопрос как объединять каналы AY, стерео будет?
Схему любого Спектрума посмотри, там все нарисовано :)

VovanRK86
16.04.2014, 21:47
Схему любого Спектрума посмотри

Ага, и как всегда с вариантами, то С канал подмешивается к А и В, а есть где В подмешивается, номиналы резюков вообще вопрос отдельный!

Ewgeny7
16.04.2014, 22:43
Можно поступить проще.
У меня в подписи ссылка на страничку со схемой Скорпиона. Там у смесителя всего один недостаток - нужно поменять местами ножки каналов В и С, чтобы стало по-пентагоновски. А сам смеситель - прекрасный :)

VovanRK86
17.04.2014, 05:05
и "гудящую" программу.

Ураааа!!!!!!!!! "Гудящая" программа "загудела" (порт А) в железе:v2_dizzy_punk: на YM2149

Хотелось бы демку;) для теста.

Порты работают как есть, местами менять не надо, а вот заменить на Axh может есть смысл, т.к. освободится 70 порт. Пока кажется, что легко можно реализовать замену.

Схему включения взял от Mick'a, спаял для пробы ОКОЛО макетки навесным монтажом:eek:

---------- Post added at 04:54 ---------- Previous post was at 04:49 ----------

http://zx.pk.ru/showpost.php?p=156927&postcount=41

---------- Post added at 04:57 ---------- Previous post was at 04:54 ----------

у меня ид7 и ла3, попробую сегодня нарисовать, может можно проще, но я и это еле понял как работает!

---------- Post added at 05:05 ---------- Previous post was at 04:57 ----------

судя по схеме ЮТа, ВСЕ порты Axh отданы клаве и мафону? именно все, а не только A0h и A1h, правильно понимаю? Жаль:(

Kakos_nonos
17.04.2014, 12:15
Ураааа!!!!!!!!! "Гудящая" программа "загудела" (порт А) в железе на YM2149
О, хорошо. Сейчас попробую простенький плеер psg-шек. Для него потребуется много непрерывной памяти, поэтому он будет находиться в $1000 - $8FFF

Alex_LG
17.04.2014, 12:40
А вот я бы как раз хотел бы наворочить ИМЕННО минимальную конфигурацию по максимуму, интересно именно минимальную

Получится аля Altair8800 - плата проца + куча плат расширения :)


А вот про 589ИК14 и замены её на РТ4 очень интересно!

Одной РТ4 не обойтись, надо будет еще 589ИР12 ставить для защелкивания и вырабатывания /INT (оказывается она и такое может!) и 555ЛА2 для сброса ИР12, да и то не будет полной совместимости с ИК14...
На адресные входы РТ4 подаем 8 линий запросов на прерывание (они же идут на входы 555ЛА2, выход на сброс ИР12), на /CS0 - F2TTL, /CS1 - /INTE, со входов, например, А0-А2 снимаем код номера прерывания (0-7) и подаются на входы D3-D5 ИР12 (все линии данных ИР12 подтянуты к +5В через резисторы), А3 -служит стробом записи в ИР12. Выход данных ИР12 подключен на шину данных, выход /INT на вход /INT 580ВК38.

P.S. В принципе можно обойтись и без РТ4 - вместо нее поставить шифратор 555ИВ1, только прерывание подавать на вход в обратном порядке, т.е. /INT7 подать на 0 вход... ИВ1 даже лучше - ее можно каскадировать.

VovanRK86
17.04.2014, 14:40
Нарисовал схемку включения AY, может дешифратор можно проще сделать?
Рисовал второй раз всего!, могут быть ошибки.

Kakos_nonos
17.04.2014, 19:54
Вот, написал плеер psg-шек, в архиве 12 музык.
Немного, правда, кривоватый, некоторые мелодии глючат (например, FATALBUG, хотя, не слушая оригинал, заметить трудно), но я знаю куда копать.
PSG формат несжатый, поэтому мелодии весят много, в 32 кб влезает максимум 1:20.
Программы загружаются в $1000.

VovanRK86
18.04.2014, 01:59
Kakos_nonos, Хочу сказать ОГРОМНОЕ СПАСИБО!!!, попробовал в эмуле и КОНЕЧНО РЕАЛЕ!!!!!!!!!!! одну пока(goodbye), НО уже КРУТЬ!!! :v2_dizzy_roll:в эмуле сразу даже разницу не понял с ви53, а вот в реале хватило только канала А!, ДЛЯ КАЙФА! потом подмешал С, ВЕСЧЪ!!!, думал В просто для стерео, а там БАСЫ!:v2_dizzy_punk:

Надо же как ЮТ всё перевернул:v2_thumb:, к рк так и нет реализации AY в железе, хотя тема поднималась!!!(ВАМИ!), а у меня и цанга 40 впаяна и шд к ней, а вот как адресовать AY я только вчера изучать начал, а сегодня он ИГРАЕТ!!! :v2_thumb:

И еще одно, не могу не написать, про РК все писали, что все проги влезут на ОДНУ флеш (ром диск,кассету, дискету,...), зачем SD, ДОС!, для ЮТ88 было 4 проги в книге + тетрис + CPM80 и его хитрый ДОС в журнале, ВСЁ можно впихнуть в 100-200кб носителя, а теперь УЖЕ музыки, на такой объём, и ЭТО благодаря ВАМ, ещё раз СПА-СИ-БО!!!!

Один минус;) я хотел РАМ диск мелкий только 64кб, а теперь понимаю и МЕТРА:eek_std: мало, но думаю это решиться, SD на чтение есть, уже кое что!!!

п.с. эмуль обидеть не хочу, без него, реалу не жить сейчас, но звук другой!!!
B2M ВАМ отдельное СПАСИБО! если бы не он я бы ни чего не смог попробовать!

---------- Post added at 01:52 ---------- Previous post was at 01:39 ----------

пс.пс. И ещё одно все наработки я хочу в РК86, ОН МОЙ КУМИР:v2_finge:, но ЮТ88 я паял первым!:v2_clapp:, но спаял ТОЛЬКО сейчас в 2014г. через четверть века! офигеть:v2_eek:.......................

---------- Post added at 01:59 ---------- Previous post was at 01:52 ----------

Пойду :sleep:, а то надо в СУД ещё сегодня, и в БАНЮ!

Kakos_nonos
19.04.2014, 18:41
И еще одно, не могу не написать, про РК все писали, что все проги влезут на ОДНУ флеш (ром диск,кассету, дискету,...), зачем SD, ДОС!, для ЮТ88 было 4 проги в книге + тетрис + CPM80 и его хитрый ДОС в журнале, ВСЁ можно впихнуть в 100-200кб носителя, а теперь УЖЕ музыки, на такой объём
Полный архив AY музыки TR-Songs весит 63 мб, там более 20000 штук :), поэтому, тут без SD никак.
Жалко только что PSG формат такой прожорливый, как-то неинтересно ждать 3-4 минуты загрузки, чтобы послушать одну минуту. Хотя он очень простой. Надо далее разбираться с другими, более сжатыми форматами. Плеер STC от Мика хорош, но он играет только STC, а конвертера в него нет, то есть мы не все музыки сможем проиграть.

п.с. эмуль обидеть не хочу, без него, реалу не жить сейчас, но звук другой!!!
B2M ВАМ отдельное СПАСИБО! если бы не он я бы ни чего не смог попробовать!
Да, b2m молодец, очень хороший эмуль, можно безо всяких ковыряний в исходниках сделать свою конфигурацию. AY, конечно там реализованно не идеально, но нельзя чтобы было всё и сразу. AY хорошо реализовано в AY-Emul, но там нет ЮТа :)

---------- Post added at 18:41 ---------- Previous post was at 17:44 ----------

Вот выкладываю исходники и тулзу для создания ЮТ-шных AY-шек.

Как делать:
1.Сначала в AY-Emul'e конвертируем нужную музыку в .psg.
2.Запускаем Конвертер.exe, нажимаем кнопку, выбираем .psg файл, в папке с ним появится .txt фаил.
3.Переименовываем этот txt в music.asm и кладём в папку с исходниками.
4.Запускаем compile.bat.
5.:v2_walkm: :v2_yahoo:

Также немного переработа код. Исправил проблему с темпом, и изменил индикацию. Теперь экранчик показывает громкость каждого канала, прям демка :)
В некоторых музыках циферки так удачно под музыку меняются, что аж весело становится.
http://yadi.sk/d/o2dV52J8Mn539

Kakos_nonos
20.04.2014, 17:24
Кстати, там в папке MUSICS горстка новых музык.
И ещё, если будете перекомпилировать под новый адрес, то надо не только в коде .org заменить, но и в compile.bat заменить текущий адрес (4096) на нужный.

VovanRK86
21.04.2014, 15:51
B2M,
Kakos_nonos,

Подскажите, что не так? Попробовал прикрутить AY в эмуляторе к РК86, и по запускать музычку, звук жутко хрипящий, если не убрать эти строки:
}
beep : beep {
input=cpu.int
input2=sys.portC[0]
input[0]=tim.out[0]
}
вообще фон идёт, ПДП пробовал отключать, не помогает:(

b2m
21.04.2014, 16:17
Во-первых, скачай последнюю версию эмулятора, в ранних версиях два источника звука не предусмотрены (beep+AY).
Во-вторых, не стесняйся выкладывать свой конфиг.

VovanRK86
21.04.2014, 19:30
Спасибо!, помогло!, РК заработал с новой версией, но ЮТ перестал.

Kakos_nonos
21.04.2014, 20:04
но ЮТ перестал.
Надо в .ext файле перенаправить .rku файлы с просто ЮТ-88 мини на ЮТ88+AY. У него имя кажется ut88ay.

---------- Post added at 20:04 ---------- Previous post was at 20:00 ----------

Ещё это лучше убрать:

port.maptomem=1

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

VovanRK86
21.04.2014, 20:43
Спасибо!, Всё заработало!, про port.maptomem=1 понятно.

Elvys
15.05.2014, 12:50
---

yur
17.05.2014, 15:27
Сектор газа звучит суперски, особенно PUNKS )

Stampmaker
12.11.2017, 19:52
я тоже собрал AY и всё запустилось с первого раза.
но вот вопрос: почему звук на выходе очень тихий?

что я имею ввиду?
я замиксовал выход AY с выходом ВИ53 (схема Prusak'a).
громкости музык AY и ВИ53 (Trigona Calanda) очень сильно отличаются.
после AY предварительный усилитель что ль нужен?

null_device
13.11.2017, 05:41
я замиксовал выход AY с выходом ВИ53

А можно ссылку на схему?
Как бы, в АY выходов несколько, которые за счет резистивных делителей как-то смешиваются до двух или обного канала.

Stampmaker
13.11.2017, 15:00
А можно ссылку на схему?
схема ЮТ http://zxbyte.ru/doc/ut88/ut88sch.zip

а вот так я соединил выходы муз.процессора
http://i066.radikal.ru/1711/ba/c573c18c1983.jpg (http://radikal.ru)

marinovsoft
13.11.2017, 16:24
Лучше бы так
http://sblive.narod.ru/ZX-Spectrum/AY-ADAPTER/AY-ADAPTER-SCHEME.tif

Stampmaker
13.11.2017, 16:59
спасибо, попробую

............


собрал, попробовал. всё отлично звучит!
и громкость как надо :v2_dizzy_punk:

Stampmaker
14.11.2017, 08:04
Вот выкладываю исходники и тулзу для создания ЮТ-шных AY-шек.

по ссылке пишет "Ничего не найдено". можно перезалить?

Kakos_nonos
16.11.2017, 19:25
Поищу, если найду - перезалью

Дмитрий2012
16.11.2017, 19:48
по ссылке пишет "Ничего не найдено". можно перезалить?


Поищу, если найду - перезалью
По моему этот архив?

Stampmaker
17.11.2017, 20:29
спасибо, попробую :)