PDA

Просмотр полной версии : YM2203 = AY8910+FM



CHRV
23.03.2005, 11:18
Господа, хотел сначала в "железо" засунуть, но музакеры могут туда и не добраться.
А вопрос следующий, стоит ли поддержать сабж в новом компе? Чипы для меня доставаемы впринципе, программно они совместимы снизу вверх.
Дока:http://www.funet.fi/pub/msx/mirrors/msx2.com/vortexion/ym2203.pdf

736b
23.03.2005, 14:10
IMHO конечно пусть будет. Особенно если есть возможность программной идентификации расширенной версии для автоматической настройки проигрывателей.

random
23.03.2005, 18:24
SID отдыхает? :)

newart
23.03.2005, 19:18
Господа, хотел сначала в "железо" засунуть, но музакеры могут туда и не добраться.
А вопрос следующий, стоит ли поддержать сабж в новом компе? Чипы для меня доставаемы впринципе, программно они совместимы снизу вверх.
Дока:http://www.funet.fi/pub/msx/mirrors/msx2.com/vortexion/ym2203.pdf
А где можно заценить его звук?
Он вроде был в Sega System 16, но я так и не нашел игр под этот чип.
Еще в Mame он вроде был.

CHRV
23.03.2005, 19:28
А где можно заценить его звук?
Он вроде был в Sega System 16, но я так и не нашел игр под этот чип.
Еще в Mame он вроде был.
Вот уж чего не знаю того не знаю :).
А еще всем любителям Турбо-саунда или как там его (сдвоенный АУ) посвящается чип YM2612 (доки правда я нашел токо на японском языке, но на это у нас есть Макс). Это сдвоенный АУ и еще два канала FM, т.е. как бы YM2203 умноженный на два.

CHRV
23.03.2005, 19:29
SID отдыхает? :)
SID у нас принципиально недоставаем!

lvd
23.03.2005, 21:07
Господа, хотел сначала в "железо" засунуть, но музакеры могут туда и не добраться.
А вопрос следующий, стоит ли поддержать сабж в новом компе? Чипы для меня доставаемы впринципе, программно они совместимы снизу вверх.
Дока:http://www.funet.fi/pub/msx/mirrors/msx2.com/vortexion/ym2203.pdf

Я хоть и не музакер, но думаю, что стоит! =)

Кстати, я бы не отказался один такой на пробу взять, так что если надумаешь покупать, для меня тоже один возьми, ок? :)

Costa
23.03.2005, 21:45
Какая ориентировочная цена сабжа?

lvd
23.03.2005, 21:54
Вот уж чего не знаю того не знаю :).
А еще всем любителям Турбо-саунда или как там его (сдвоенный АУ) посвящается чип YM2612 (доки правда я нашел токо на японском языке, но на это у нас есть Макс). Это сдвоенный АУ и еще два канала FM, т.е. как бы YM2203 умноженный на два.

Если мне не изменяет память, я энтот ym2612 видел в сега мега драйве, там ещё 68000 в 64пиновом дипе и зетник (зетник имел отдельную 8кб озу и рулил этим УМом).

CHRV
23.03.2005, 22:54
Какая ориентировочная цена сабжа?
Я еще не в курсе, закажу со следующей партией штучек 10 сабжей и парочку квадросабжей :).
А YM2149F у меня еще есть, кому надо налетай (160р).

А вообще думаю перспективная штука, жаль вот попиново несовместима, но хоть программно совместима и то хорошо :).

Costa
23.03.2005, 23:00
Вот уж чего не знаю того не знаю :).
А еще всем любителям Турбо-саунда или как там его (сдвоенный АУ) посвящается чип YM2612 (доки правда я нашел токо на японском языке, но на это у нас есть Макс). Это сдвоенный АУ и еще два канала FM, т.е. как бы YM2203 умноженный на два.

Если YM2612 покруче будет YM2203,то может его уж тогда сразу
поставить.и самодельщикам будет попроще,найти и выдрать его из
разбитой,сломанной Sega mega drive думаю будет несложно.

CHRV
23.03.2005, 23:10
Если YM2612 покруче будет YM2203,то может его уж тогда сразу
поставить.и самодельщикам будет попроще,найти и выдрать его из
разбитой,сломанной Sega mega drive думаю будет несложно.
Тут не ясно с программной совместимостью, если первый поддержат я думаю легко, то второй-сложнее!
Еще могу достать YMU757 (MIDI/PCM chip) причем очень дешево, но как его программировать доки я достать не могу, япошки не дают - типа "вы не мануфактурер и вам не положено"... Он в мобилах применяется для музыки!

Costa
23.03.2005, 23:12
Если мне не изменяет память, я энтот ym2612 видел в сега мега драйве, там ещё 68000 в 64пиновом дипе и зетник (зетник имел отдельную 8кб озу и рулил этим УМом).

покопался у себя в железе,откопал пару плат от мегадрайва.
стоит TA07 24ноги,это он?

Costa
23.03.2005, 23:23
А где можно заценить его звук?
Он вроде был в Sega System 16, но я так и не нашел игр под этот чип.
Еще в Mame он вроде был.

имхо думаю на мегадрайвовский звук должен быть похож
если это так то очень недурственно :eek:
а что даёт такой звук,этот самый FM?

dhau
24.03.2005, 06:40
Не знаю насчет мегадрайвов, а вот генезисы (SEGA Genesis) есть трех моделей:

Модель 1 (1989-1992) - большая, округлая и на честных больших микросхемах - есть настоящий 68000, Z80 и звуковой чип

Модель 2 (1993-1995) - поменьше, более углованая, и все там заинтегрированно в БИС кроме памяти и соплей помоему

Модель 3 (1998) - очень мелкая, без порта расширения, и внутри одна БИС и почти никаких соплей

Agent Cooper
24.03.2005, 08:50
имхо думаю на мегадрайвовский звук должен быть похож
если это так то очень недурственно :eek:
а что даёт такой звук,этот самый FM?

MIDI-музыку на старых саундбластерах слышал? Вот что-то такое.

Agent Cooper
24.03.2005, 08:50
Не знаю насчет мегадрайвов, а вот генезисы (SEGA Genesis) есть трех моделей:

Модель 1 (1989-1992) - большая, округлая и на честных больших микросхемах - есть настоящий 68000, Z80 и звуковой чип

Модель 2 (1993-1995) - поменьше, более углованая, и все там заинтегрированно в БИС кроме памяти и соплей помоему

Модель 3 (1998) - очень мелкая, без порта расширения, и внутри одна БИС и почти никаких соплей

Это и есть мегадрайв.

lvd
24.03.2005, 17:59
покопался у себя в железе,откопал пару плат от мегадрайва.
стоит TA07 24ноги,это он?

Я же говорю, склероз мне может и изменить =)
Я тоже попытался найти эту полураздраконенную платку - не нашёл. От неё похоже только Z80 и 68000 остались...

Costa
24.03.2005, 18:49
Я же говорю, склероз мне может и изменить =)
Я тоже попытался найти эту полураздраконенную платку - не нашёл. От неё похоже только Z80 и 68000 остались...

Ну да,он самый и есть.
вот:http://tv-games.narod.ru/hard/megakey/images/image011.jpg

Costa
24.03.2005, 18:54
А еще всем любителям Турбо-саунда или как там его (сдвоенный АУ) посвящается чип YM2612 (доки правда я нашел токо на японском языке, но на это у нас есть Макс). Это сдвоенный АУ и еще два канала FM, т.е. как бы YM2203 умноженный на два.

А можно плиз на эти доки посмотреть,хочется поразбираться с этим чипом(YM2612)

newart
26.03.2005, 03:25
Тут не ясно с программной совместимостью, если первый поддержат я думаю легко, то второй-сложнее!
Еще могу достать YMU757 (MIDI/PCM chip) причем очень дешево, но как его программировать доки я достать не могу, япошки не дают - типа "вы не мануфактурер и вам не положено"... Он в мобилах применяется для музыки!
Nu так ты определись там со стоимостью, мы может заказали бы парочку в Питер. Хотелосьбы поэксперементировать.....

CHRV
27.03.2005, 10:09
Nu так ты определись там со стоимостью, мы может заказали бы парочку в Питер. Хотелосьбы поэксперементировать.....
ОК, когда буду заказывать следующую партию YM куплю пару-тройку чипов для экспериментов.

Документация по YM2610(YM2612) http://www.ylw.mmtr.or.jp/~hosino/ma-net/sndgen/japanese/manual/ym2610/ym2610am.htm
Также закажу пару-тройку чипов.

lvd
27.03.2005, 13:12
Документация по YM2610(YM2612) http://www.ylw.mmtr.or.jp/~hosino/ma-net/sndgen/japanese/manual/ym2610/ym2610am.htm

Угу, знатная шутка =)


Я вот почитал пдф по ум2203 - в нём по существу мало чего сказано. Нет подробного описания всех дополнительных регистров. Нет примеров подключения внешнего ЦАПа (через который он ФМ и выводит). И даже формата вывода информации на этот цап нету.

CHRV
27.03.2005, 14:54
Угу, знатная шутка =)


Я вот почитал пдф по ум2203 - в нём по существу мало чего сказано. Нет подробного описания всех дополнительных регистров. Нет примеров подключения внешнего ЦАПа (через который он ФМ и выводит). И даже формата вывода информации на этот цап нету.
Хехе вы что думаете придет Рома и все за вас сделает, я потому суда и поместил этот трейд чтобы хоть ктото разобрался или помог мне разобраться.

lvd
27.03.2005, 18:26
Хехе вы что думаете придет Рома и все за вас сделает, я потому суда и поместил этот трейд чтобы хоть ктото разобрался или помог мне разобраться.

Шукание по инету дало следующую инфу - многие подобные чипы комплектуются ДАКом, в который они FM и выводят. Ты можешь узнать у китайцев - к ум2203 такой дак существует/продаётся?

CHRV
27.03.2005, 18:29
Шукание по инету дало следующую инфу - многие подобные чипы комплектуются ДАКом, в который они FM и выводят. Ты можешь узнать у китайцев - к ум2203 такой дак существует/продаётся?
КИтайцы только продают! :)
У кого есть сега-мега-сатурн, посмотрите какой там дак стоит и звук!

lvd
27.03.2005, 20:58
КИтайцы только продают! :)
У кого есть сега-мега-сатурн, посмотрите какой там дак стоит и звук!

http://members.chello.nl/h.otten/vortexion.htm

В ум2612 есть много ФМок из ум2203 и цифровой канал, но нету АУка. Зато и ДАКи 2612'ому не нужны. Так что на сегумегудрайв смотреть бесполезно =) А сатурн имхо вообще не в тему - у него главный проц ppc603e, звуковой проц 68ec000 и есть цифровой выход 44кгц (играет аудиоЦД) - и уж вряд ли при этом будет ум2203 стоять!

Я пока ориентируюсь на MAME'вцов - мож из них чего и вытрясти удастся.

lvd
27.03.2005, 22:35
Вот:

http://www.mame.net/cgi-bin/wwwthreads/showpost.pl?Board=mamegeneral&Number=170805&page=0&view=expanded&mode=threaded&sb=7#Post170805

CHRV - пошукай у китайцев Y3014B ! :)

Costa
27.03.2005, 23:20
В ум2612 есть много ФМок из ум2203 и цифровой канал, но нету АУка. Зато и ДАКи 2612'ому не нужны. Так что на сегумегудрайв смотреть бесполезно =)
Почему бесполезно смотреть на 2612,ведь как раз эти самые ФМки то и нужны(а их там в 2 раза больше чем в 2203) а АУки то у нас с вами уже давно стоят.плюс 8битный Дак не помешает.он имеет компактную распиновку.
Имхо больше преимуществ на его стороне.
Но это вариант для тех кто хочет прикрутить к нашему многострадальному другу интересный девайс чтоб улучшить его скромные возможности.Хотя что нам мешает это сделать!?
А выбор 2203 больше подходит как вариант ставить на новые машины
вместо АУ и получить впридачу ФМ.

Я пока ориентируюсь на MAME'вцов - мож из них чего и вытрясти удастся.
Есть надежда даташит на 2612 вытрясти?

lvd
27.03.2005, 23:54
Вот:

http://www.mame.net/cgi-bin/wwwthreads/showpost.pl?Board=mamegeneral&Number=170805&page=0&view=expanded&mode=threaded&sb=7#Post170805

CHRV - пошукай у китайцев Y3014B ! :)

...и это видимо то же самое, что и YM3014B (точно не уверен). ПДФка тута: http://www.funet.fi/pub/msx/mirrors/msx2.com/vortexion/YM3014B.PDF

lvd
28.03.2005, 00:02
Почему бесполезно смотреть на 2612,ведь как раз эти самые ФМки то и нужны(а их там в 2 раза больше чем в 2203) а АУки то у нас с вами уже давно стоят.плюс 8битный Дак не помешает.он имеет компактную распиновку.
Имхо больше преимуществ на его стороне.
Но это вариант для тех кто хочет прикрутить к нашему многострадальному другу интересный девайс чтоб улучшить его скромные возможности.Хотя что нам мешает это сделать!?
А выбор 2203 больше подходит как вариант ставить на новые машины
вместо АУ и получить впридачу ФМ.

В моём понимании YM2203 надо вставлять в панельку, где был AY-к (естественно на отдельной платке) - будет именно апгрейд AY-ка, ну и на новых разработках тоже сразу можно YM2203 ставить. И пока бы с ним разобраться, потом уж можно отдельно YM2612 навесить.

Опыт с дабл-AYом показывает, что если что-то вешать 'слева' - то шансы на широкое распространение весьма малы, а вот именно апгрейд типа 'plug&play' может и широко разойтись!

Costa
28.03.2005, 00:17
В моём понимании YM2203 надо вставлять в панельку, где был AY-к (естественно на отдельной платке) - будет именно апгрейд AY-ка, ну и на новых разработках тоже сразу можно YM2203 ставить. И пока бы с ним разобраться, потом уж можно отдельно YM2612 навесить.

Опыт с дабл-AYом показывает, что если что-то вешать 'слева' - то шансы на широкое распространение весьма малы, а вот именно апгрейд типа 'plug&play' может и широко разойтись!

Мне кажется что так легко апгрейд сделать не получится так как у 2203
есть новые ноги которых нет в 2149
а если и можно то что мешает поставить на платку 2612+2149

lvd
28.03.2005, 00:44
Мне кажется что так легко апгрейд сделать не получится так как у 2203
есть новые ноги которых нет в 2149




В моём понимании YM2203 надо вставлять в панельку, где был AY-к (естественно на отдельной платке)!!!



а если и можно то что мешает поставить на платку 2612+2149
Ничего не мешает, а можно сразу и GS вместо AYка воткнуть. YM2203 естественным образом вместо AYка ставится, и её дополнительные FM-регистры суть продолжение 16 регистров AY-ка.

newart
28.03.2005, 00:50
Опыт с дабл-AYом показывает, что если что-то вешать 'слева' - то шансы на широкое распространение весьма малы, а вот именно апгрейд типа 'plug&play' может и широко разойтись!
А опыта то и не было, не было даже трекера.

Costa
28.03.2005, 00:51
Ещё один аргумент в пользу YM2612
для него можно надёргать кучу муз из ROMов MD
и проанализировать код Z80 для того же MD

ps:пока открытым остаётся вопрос цены обоих чипов

Costa
28.03.2005, 00:59
!!!


Ничего не мешает, а можно сразу и GS вместо AYка воткнуть. YM2203 естественным образом вместо AYка ставится, и её дополнительные FM-регистры суть продолжение 16 регистров AY-ка.

Я вообще говорил про сигналы
т.е как коммутировать там BDIR,BC?
а заводить на ногу 38 сигнал тактовый откуда?
придётся ставить генератор свой опять же раздувается схема
как ни крути и придётся проводки тянуть

lvd
28.03.2005, 08:22
У сеги из сабжа, оказывается, не только YM2612!

Если взять эмулятор GENS, то в нём видны галки YM2612, PSG, DAC. Запустив любую гаму (например, sonic the hedgehog - rulez!), можно эти галки потыкать, послушать отдельно YM2612 (просто звук без шумов/ударников), отдельно PSG (TI76489, 3 тона + 1 шум, почти АУк), отдельно DAC, через который звучат ударники или голос в некоторых местах.

CHRV
28.03.2005, 09:41
Ещё один аргумент в пользу YM2612
для него можно надёргать кучу муз из ROMов MD
и проанализировать код Z80 для того же MD

ps:пока открытым остаётся вопрос цены обоих чипов
Цены будут не дороже 5-6$ за чип. А скорей всего дешевле!

lvd
28.03.2005, 13:14
Ну вот, смотрим сюда: http://www.mame.net/cgi-bin/wwwthreads/showpost.pl?Board=mamegeneral&Number=170824&page=0&view=expanded&mode=threaded&sb=7#Post170824

И сюда: http://www.cityofberwyn.com/schematics/PDF/DoubleDribbleSchem.pdf

Проблему подключения ДАКа можно считать решённой - если конечно Рома у китайцев найдёт этот ДАК =)

CHRV
28.03.2005, 14:55
Ну вот, смотрим сюда: http://www.mame.net/cgi-bin/wwwthreads/showpost.pl?Board=mamegeneral&Number=170824&page=0&view=expanded&mode=threaded&sb=7#Post170824

И сюда: http://www.cityofberwyn.com/schematics/PDF/DoubleDribbleSchem.pdf

Проблему подключения ДАКа можно считать решённой - если конечно Рома у китайцев найдёт этот ДАК =)
ВО это дело! LVD спасибо! Кстати по моему YM3016 это тоже что YM3014 токо стерео.
Рома найдет, если для дела надо!
А теперь конкурс "слабо" типа трекер под такую штуку написать, хотя я с Алко поговорю на эту тему :) .

random
28.03.2005, 15:00
может пора поменять заголовок этой темы? :)

Costa
28.03.2005, 19:09
ВО это дело! LVD спасибо! Кстати по моему YM3016 это тоже что YM3014 токо стерео.
Рома найдет, если для дела надо!
А теперь конкурс "слабо" типа трекер под такую штуку написать, хотя я с Алко поговорю на эту тему :) .

Ребят, тока моно ни надо(в наши то дни!)
стерео и только стерео!
Ром найди уж тогда сразу YM3016

CHRV
29.03.2005, 00:37
Ребят, тока моно ни надо(в наши то дни!)
стерео и только стерео!
Ром найди уж тогда сразу YM3016
FM канал монофонический у YM2203. A SSG такой же как у AY - 3 канала.

newart
29.03.2005, 00:56
ВО это дело! LVD спасибо! Кстати по моему YM3016 это тоже что YM3014 токо стерео.
Рома найдет, если для дела надо!
А теперь конкурс "слабо" типа трекер под такую штуку написать, хотя я с Алко поговорю на эту тему :) .
Дай рабочию микруху, дай доку, за трекером дело не встанет.

newart
29.03.2005, 00:58
FM канал монофонический у YM2203. A SSG такой же как у AY - 3 канала.
Еще есть YM2208 там вроде стерео.

newart
29.03.2005, 01:00
Ребят, тока моно ни надо(в наши то дни!)
стерео и только стерео!
Ром найди уж тогда сразу YM3016
Если так рассуждать, то проще юзать пц.
2203 хорош совместимостью, все отальные варианты отпадают, так-как их надо реализовывать по слотовой системе, и уж тогда эффективнее делать нечто вроде GS.

Djoni
29.03.2005, 02:58
Нашёл доки на чип Yamaha 2612
http://tv-games.narod.ru/hard/Sega_Tech_Rus_1_5b.rar
отрывок из документа;
ЗВУКОВАЯ СИСТЕМА GENESIS
РУКОВОДСТВО ПРОГРАММИСТА
Звуковой чип "Yamaha 2612 Frequency Modulation (FM)" основан на чипе "Yamaha 2151"
(использовался на игровых автоматах Sega) и использует алгоритмы/методы синтеза звука
от фирмы Yamaha.

Этот чип способен:
-- 6 стереоканалов звуковых FM синтезаторов
-- 8-ми битный ЦАП для оцифрованного звука
-- Один LFO (low frequency oscillator - низкочастотный генератор) для искажения звуков FM
-- 2 таймера для использования программой.

Для более понятного определения: канал FM синтезатора может довольно реалистично повторить одиночную ноту
большинства инструментальных голосов. Эффект хоруса получается использованием нескольких FM каналов.

CHRV
29.03.2005, 09:35
Дай рабочию микруху, дай доку, за трекером дело не встанет.
Микрухи закажу со следующей партией YM2149. Сейчас распродам что есть (осталось двадцать штук,цена 160р за шт) и буду заказывать новую партию микрух! Сделаю втыкаемой на посадочное место YM2149 токо выход будет с моей платы (ибо FM и остальной звук смешивать нужно).

Costa
29.03.2005, 22:04
[QUOTE=Djoni]Нашёл доки на чип Yamaha 2612
http://tv-games.narod.ru/hard/Sega_Tech_Rus_1_5b.rar

Спасибо за инфу!

Costa
29.03.2005, 22:20
Если так рассуждать, то проще юзать пц.
2203 хорош совместимостью, все отальные варианты отпадают, так-как их надо реализовывать по слотовой системе, и уж тогда эффективнее делать нечто вроде GS.

Ну не будь таким категоричным и консервативным.
чем плоха слотовая система?
а как же все подключают контроллеры мыши,pc-клавы,hdd и т д.
проект YM2612 носит пока чисто экспериментальный характер.
кстати запусти эмуль и послушай этот сочный звук!
какие тембра!какие звуки!
тебе не хочется попрограмировать этот FM-синтез именно на спеке?
а GS это другое это сэмпловая карточка.

newart
30.03.2005, 00:00
Ну не будь таким категоричным и консервативным.
чем плоха слотовая система?
а как же все подключают контроллеры мыши,pc-клавы,hdd и т д.
проект YM2612 носит пока чисто экспериментальный характер.
кстати запусти эмуль и послушай этот сочный звук!
какие тембра!какие звуки!
тебе не хочется попрограмировать этот FM-синтез именно на спеке?
а GS это другое это сэмпловая карточка.
Я вот и сам недоумеваю, что народ делает с этими слотовымы устройствами, при том что слотовых спека было все 3-4 (Кай, Скорп, ZX-Next и вроде профи).
GS хоть и семпловая, но легко может выдавать звук похлеще YM2612,
играет ведь она чип модули. Хотя конечно собрать YM2612+обвязку проще и дешевле чем с GS заморачиваться.

Costa
30.03.2005, 00:57
Хотя конечно собрать YM2612+обвязку проще и дешевле чем с GS заморачиваться.
Тогда помоги с редактором для FM(2203,2612)

newart
30.03.2005, 02:37
Тогда помоги с редактором для FM(2203,2612)
Посмотрим, пущай сначала Рома их раздабудет.

lvd
30.03.2005, 11:55
Нашёл доки на чип Yamaha 2612
http://tv-games.narod.ru/hard/Sega_Tech_Rus_1_5b.rar


Спасибо за ссылочку - интересно было почитать о всех возможностях сеги, о её архитектуре и о ФМ-чипе тоже! =) Вообще, я последнее время от сеги фанатеть начал - тем более что по некоторым фичам её железо побивает AGA! =)

Costa
30.03.2005, 22:08
Спасибо за ссылочку - интересно было почитать о всех возможностях сеги, о её архитектуре и о ФМ-чипе тоже! =) Вообще, я последнее время от сеги фанатеть начал - тем более что по некоторым фичам её железо побивает AGA! =)

Ссылочка безспорно интересная.
Так значит rulez а не mustdie :smile:
что сейчас думаешь об этом чипе?

newart
31.03.2005, 00:20
Оказывается у AY было еще пара аналогов: http://forum.rarib.ru/index.php?board=7;action=display;threadid=5774

Costa
31.03.2005, 21:51
Оказывается у AY было еще пара аналогов: http://forum.rarib.ru/index.php?board=7;action=display;threadid=5774

ну китайцы видимо могут под свои внутренние нужды выпускать и под любым именем.
KC89C72 по стилю маркировки похож на samsung

lvd
01.04.2005, 14:17
Ссылочка безспорно интересная.
Так значит rulez а не mustdie :smile:
что сейчас думаешь об этом чипе?

Хм - сега рулез, особенно ёжики =)

А сам чип - хз. Большая часть музла там какая-то елейная. В общем надо посмотреть, что из ФМсинтеза в YM2203 выйдет - каким его увидят спектрумские музыканты. На сеге ж япошки музицировали =)

himik
19.04.2005, 12:51
Хм - сега рулез, особенно ёжики =)

А сам чип - хз. Большая часть музла там какая-то елейная. В общем надо посмотреть, что из ФМсинтеза в YM2203 выйдет - каким его увидят спектрумские музыканты. На сеге ж япошки музицировали =)

Предлагаю создать группу разработчиков. Взять программеров, художников, дизайнеров, музыкантов. Создать нормальное ТЗ, железячники пусть разработают оптимально-уникальную схему работы. Выберут нормальный и доступный чип. Запустят...
А группа создателей начнет работать над редактором/плеером и прочими фичами. Так я считаю будет не только правильнее но и проще. Каждый пишет отдельный кусок проги. Быстро и качественно.
Я даже присоеденюсь лично, хочу покодить уже. А то мой Turbo-Sound Editor заждался, когда я в него влезу...

Ну и основная трабла - нужен как минимум эмулятор с поддержкой данного чипа, или возможность внешнего подключения к ПЦ и эмуль для управления сим девайсом.

Ronin
21.04.2005, 11:14
himik, железячники уже все решили. на первой будет YM2203 - стандартный AY плюс FM.
цифровая часть будет отлажена.
предложения по аналоговому микшированию для турбосаундов принимаются. у 2203 есть 3канала AY и 1 канал FM.
все остальное (ay8910/12 + ym2612, ym2203*2) естественно вытекают из 2203, совместимость на уровне регистров есть (с учетом переключения чипов, аналогично схеме переключения NedoPC TurboSound).

newart
21.04.2005, 13:17
Предлагаю создать группу разработчиков. Взять программеров, художников, дизайнеров, музыкантов. Создать нормальное ТЗ, железячники пусть разработают оптимально-уникальную схему работы. Выберут нормальный и доступный чип. Запустят...
А группа создателей начнет работать над редактором/плеером и прочими фичами. Так я считаю будет не только правильнее но и проще. Каждый пишет отдельный кусок проги. Быстро и качественно.
Я даже присоеденюсь лично, хочу покодить уже. А то мой Turbo-Sound Editor заждался, когда я в него влезу...

Ну и основная трабла - нужен как минимум эмулятор с поддержкой данного чипа, или возможность внешнего подключения к ПЦ и эмуль для управления сим девайсом.
Для трекера мне кажется хватит двух кодеров.
Один на редактор, второй на плеер.
Также желательно опросить всех живых музыкантов на тему "Чего вам не хватало и что было не одобно в старых трекерах".
И естественно надо писать новый трекер, с нуля.
При этом желательно в двух конфигурациях: 2AY и AY+2203.
Я готов принять непосредственное участие в работе над трекером, как кодер или еще как.

CHRV
21.04.2005, 13:49
Для трекера мне кажется хватит двух кодеров.
Один на редактор, второй на плеер.
Также желательно опросить всех живых музыкантов на тему "Чего вам не хватало и что было не одобно в старых трекерах".
Вы бы с Химиком бы договорились,у него уже какието наработки есть. Кстати как насчет конвертации мелодий от SAA1099 на турбо-саунд, идеалогически наверно реализуемо?

И естественно надо писать новый трекер, с нуля.
При этом желательно в двух конфигурациях: 2AY и AY+2203.
Я готов принять непосредственное участие в работе над трекером, как кодер или еще как.
Неа не АУ+2203, а два 2203 :-). YM2203 дешевле чем YM2149, но требует обвески для ФМ (DAC YM3014).

Я думаю появление такого трекера и возможностей несколько встряхнет музакеров, а то сейчас можно сказать достигли потолка текущей музыкальной системы.

Образцы железа дам под залог, после появления более-менее рабочей версии деньги верну (чтобы стимул был :) ).

himik
21.04.2005, 13:57
Для трекера мне кажется хватит двух кодеров.
Один на редактор, второй на плеер.
Также желательно опросить всех живых музыкантов на тему "Чего вам не хватало и что было не одобно в старых трекерах".
И естественно надо писать новый трекер, с нуля.
При этом желательно в двух конфигурациях: 2AY и AY+2203.
Я готов принять непосредственное участие в работе над трекером, как кодер или еще как.

Если речь идет о скорости создания проекта, то надо больше :)

Ты конечно чел авторитетный, и помощь твоя к месту, но вот доделай сначала то, за что взялся :) Без обид только.

newart
21.04.2005, 14:37
Вы бы с Химиком бы договорились,у него уже какието наработки есть. Кстати как насчет конвертации мелодий от SAA1099 на турбо-саунд, идеалогически наверно реализуемо?

Неа не АУ+2203, а два 2203 :-). YM2203 дешевле чем YM2149, но требует обвески для ФМ (DAC YM3014).

Я думаю появление такого трекера и возможностей несколько встряхнет музакеров, а то сейчас можно сказать достигли потолка текущей музыкальной системы.

Образцы железа дам под залог, после появления более-менее рабочей версии деньги верну (чтобы стимул был :) ).
Что такое saa1099?
Использование 2203 меня настораживает. Во первых не ясно сколько на складах у китайцев этих чипов, нет гарантии что лечез год-другой они не исчезнут окончательно. Кроме того прикрутить второй AY к эмулятору дело пары часов (для автора), а вот эмулятор 2203 неизвестно когда появиться.
Да и 12 каналов... боюсь под модуль будет даже 2-х банок маловато...
и тактов это чудо будет кушать немеренно, уж явно не менее 8-10.

CHRV
21.04.2005, 14:52
Что такое saa1099?
Использование 2203 меня настораживает. Во первых не ясно сколько на складах у китайцев этих чипов, нет гарантии что лечез год-другой они не исчезнут окончательно. Кроме того прикрутить второй AY к эмулятору дело пары часов (для автора), а вот эмулятор 2203 неизвестно когда появиться.
Смотри внимательно заголовок трейда, с получением YM2203 ты получаешь токо дополнительно ФМ!
Кстати YM2203*2=YM2149*2+YM2612 :)
У китайцев этих чипов (впрочем как и YM2149), хватит каждому форумчанину по пакету наложить :)

Да и 12 каналов... боюсь под модуль будет даже 2-х банок маловато...
и тактов это чудо будет кушать немеренно, уж явно не менее 8-10.
Ну во первых каналов SSG как было шесть (у TS) так и останется, а добавится токо два канала FM.

newart
21.04.2005, 15:05
Смотри внимательно заголовок трейда, с получением YM2203 ты получаешь токо дополнительно ФМ!
Кстати YM2203*2=YM2149*2+YM2612 :)
У китайцев этих чипов (впрочем как и YM2149), хватит каждому форумчанину по пакету наложить :)

Ну во первых каналов SSG как было шесть (у TS) так и останется, а добавится токо два канала FM.
A мне почему то казалось что в 2203 3 дополнительных FM канала.
3+3=6?

newart
21.04.2005, 15:06
Если речь идет о скорости создания проекта, то надо больше :)

Ты конечно чел авторитетный, и помощь твоя к месту, но вот доделай сначала то, за что взялся :) Без обид только.
Одно другому не мешает ;)

Mike
21.04.2005, 15:45
С радостью приму участие в проэкте, как "Живой музыкант", знакомый и с AY и с FM-синтезом, и не по наслышке.
Кодер к сожалению из меня не великий... а вот художество нарисовать к трекеру, иконки, дизайн интерфейса, это пожалуйста. В идеале это бы конечно под 320x200 сделать бы (Sprinter, вроде и ATM2 держит).
Только давайте наконец-то начнём !!! :mad:

newart
21.04.2005, 16:50
Описание 2203 в читабельном виде (в отличае от PDF):
http://www.larwe.com/technical/chip_ym2203.html

himik
21.04.2005, 19:23
Что такое saa1099?
Использование 2203 меня настораживает. Во первых не ясно сколько на складах у китайцев этих чипов, нет гарантии что лечез год-другой они не исчезнут окончательно. Кроме того прикрутить второй AY к эмулятору дело пары часов (для автора), а вот эмулятор 2203 неизвестно когда появиться.
Да и 12 каналов... боюсь под модуль будет даже 2-х банок маловато...
и тактов это чудо будет кушать немеренно, уж явно не менее 8-10.

Для инфы: Philips SAA1099 это Sound Chip компьютера Sam Coupe. Клон ZX однако, только более продвинутый. Кста, чем то похож на Sprinter :)

Ну и как всегда, муза может быть и на 12 каналов и на 3, и на 4, плеер будет кушать время относительно модуля. Данные каналы интересны для создания спецэффектов в играх, работе в демомейкинге (ибо это искусство) ну и просто для души, писать красивые мощные музоны.

По поводу 12 каналов конечно служно сказать, ибо я например долго думал как в спековский экран засунуть 6 каналов. У меня это получилось, но вот 12 я не всуну. :)

lvd
21.04.2005, 20:13
С радостью приму участие в проэкте, как "Живой музыкант", знакомый и с AY и с FM-синтезом, и не по наслышке.

Это карашё =)

На текущий момент есть инфа по хардверной части YM2203 (как подключать-какие регистры), но совершенно нет инфы, как его программировать (==извлекать FM звуки). Может, займёшься составлением доки с названием 'как извлекать FM-звуки из YM2203'? Потому что даташыт на это чудо где только не валяется, а вот по существу там ничего не сказано. Кстати, готовые музы в виде код+данные (на любом проце) тоже я бы покопал, типа квикпорт сделал бы =)

lvd
21.04.2005, 20:17
По поводу 12 каналов конечно служно сказать, ибо я например долго думал как в спековский экран засунуть 6 каналов. У меня это получилось, но вот 12 я не всуну. :)

Дык посмотри как на пц суют эн каналов. Видно только от M до M+k каналов, где k - сколько на экран помещается. А ещё есть горизонтальный движок.

breeze
28.04.2005, 10:32
Вот кстати неплохой обзор о ямахах с datasheet'ами
http://members.chello.nl/h.otten/soundchips.htm

по поводу описалово ym2203 в PDF -> http://www.funet.fi/pub/msx/mirrors/msx2.com/vortexion/ym2203.pdf

по поводу программинга, в сорцах эмулятора MAME есть кусок на С ->
http://www.mameworld.net/maws/mamesrc/src/sound/2203intf.c
может кто разберется ?

вот еще один сорец на С FM генератора, есть в нем и 2203 -> http://svn.kitenet.net/trunk/src/packages/dgen/fm.c?rev=10213&view=auto

:sleep: continue searching...

Mike
28.04.2005, 13:06
Это карашё =)

На текущий момент есть инфа по хардверной части YM2203 (как подключать-какие регистры), но совершенно нет инфы, как его программировать (==извлекать FM звуки). Может, займёшься составлением доки с названием 'как извлекать FM-звуки из YM2203'? Потому что даташыт на это чудо где только не валяется, а вот по существу там ничего не сказано. Кстати, готовые музы в виде код+данные (на любом проце) тоже я бы покопал, типа квикпорт сделал бы =)

С удовольствием займусь, только надо бы рабочий экземпляр для ентого иметь. И хотя бы примитивный софт, так как кодер из меня не великий. Проще говоря мне нужно что то вроде сверхурезанного трекера, где есть только та часть, где инструмент настраевается, и опрос клавиатуры, что бы можно было поиграть, послушать. Хотя бы одну октаву с транспозицией +- 2-3 октавы. А если интересен FM-синтез как таковой, то документации уже навалом понаписанно. Совсем было бы сдорово MIDI-порт организовать, точнее даже, только MIDI-вход. на скорпе вроде был сериал, к нему можно подцепить ?

Shiru
28.04.2005, 13:54
Проще говоря мне нужно что то вроде сверхурезанного трекера, где есть только та часть, где инструмент настраевается, и опрос клавиатуры, что бы можно было поиграть, послушать.
Это зачем? Послушать можно в любом PC-шном adlib-трекере, при наличии карты с OPL-чипом (либо в DOSbox'е). Звук такой-же.

Sonic
28.04.2005, 16:31
Господа! Не могу удержаться от комментария.
FM - это круто. FM на писюковом саундбластере - это далеко не пример. Если у кого еще остались знакомые MSX-овцы, советую сходить в гости и послушать FM-PAC в редакторе MoonBlaster.
ТАКОГО, я вас уверяю, вы не слышали. У меня у самого когда-то был знакомый MSXовец, и он себе поставил такую штуковину. Он запустил игруху, через 10 минут я был ПРОСТО ПОТРЯСЕН! Хотя как звучит ПЦ я в то время уже знал. Это просто ни шло ни в какое сравнение с чем-либо. Я даже горел желанием приобрести себе MSX. Только эта сцена в России никогда не была развита, время было уже что называется "начало конца", через буквально полгода народ массово повалил на ПЦ и сообщество альтернативщиков практически перестало существовать. MSX был забыт в первую очередь. А так мне даже предлагали его взять бесплатно для портирования Sound Tracker'а с ZX (у них там очень плачевно с AY-музыкой). Я его даже взял, но у меня сначала не было монитора, потом его просто некуда было поставить и я его так и вернул. Хотя у друга я немного поигрался на асме. Помнится мне не очень нравилась скорость работы ОС (хотя в реальности там просто тормозной видео-вывод). Во всем остальном машина мне очень нравилась, несмотря даже на микрософт...
Так что ставьте FM, связывайтесь с голландцами (авторами MB), и не пожалеете. Будете затыкать за пояс абсолютно всех.

Shiru
28.04.2005, 17:20
хотя в реальности там просто тормозной видео-вывод
Это на MSX тормозной видео-вывод? 8)

Mike
28.04.2005, 18:00
Господа! Не могу удержаться от комментария.
FM - это круто. FM на писюковом саундбластере - это далеко не пример. Если у кого еще остались знакомые MSX-овцы, советую сходить в гости и послушать FM-PAC в редакторе MoonBlaster.
ТАКОГО, я вас уверяю, вы не слышали. У меня у самого когда-то был знакомый MSXовец, и он себе поставил такую штуковину. Он запустил игруху, через 10 минут я был ПРОСТО ПОТРЯСЕН! Хотя как звучит ПЦ я в то время уже знал. Это просто ни шло ни в какое сравнение с чем-либо. Я даже горел желанием приобрести себе MSX. Только эта сцена в России никогда не была развита, время было уже что называется "начало конца", через буквально полгода народ массово повалил на ПЦ и сообщество альтернативщиков практически перестало существовать. MSX был забыт в первую очередь. А так мне даже предлагали его взять бесплатно для портирования Sound Tracker'а с ZX (у них там очень плачевно с AY-музыкой). Я его даже взял, но у меня сначала не было монитора, потом его просто некуда было поставить и я его так и вернул. Хотя у друга я немного поигрался на асме. Помнится мне не очень нравилась скорость работы ОС (хотя в реальности там просто тормозной видео-вывод). Во всем остальном машина мне очень нравилась, несмотря даже на микрософт...
Так что ставьте FM, связывайтесь с голландцами (авторами MB), и не пожалеете. Будете затыкать за пояс абсолютно всех.

Естественно FM-синтез на 2-х оператора, на заре этого вида синтеза, это то ещё г., но мы имеем реальную возможность выжать из этого г. максимум на спеке.
А что удивлятся MSXу, там явно стоял более позний чип.
Хотите НАСТОЯЩИЙ FM-синтез ?
Берите: Yamaha DX-7, SY-77, SY-99, TG-77, TX-7, TX802, FS1R (http://golev.ru/lab/hardware/gear.asp/id=yamaha%2Dfs1r), серия довольно большая. Может это будет для вас настоящим открытием, хотя DX-7 уже около 20-и лет ! А моей DX-11 ~9 лет.
А тем у кого нет возможности приобрести профессиональный синтезатор, я посоветую посмотреть такую вот софтинку от Native Instruments: называется FM7, эмулирует DX-серию. Хотя как обычно криво. Для написания серьёзной музыки конечно не годится, а что бы составить мнение и поучится работе с FM-синтезом вполне подойдёт.

CHRV
28.04.2005, 18:10
Естественно FM-синтез на 2-х оператора, на заре этого вида синтеза, это то ещё г., но мы имеем реальную возможность выжать из этого г. максимум на спеке.
А что удивлятся MSXу, там явно стоял более позний чип.
Хотите НАСТОЯЩИЙ FM-синтез ?
Берите: Yamaha DX-7, SY-77, SY-99, TG-77, TX-7, TX802, FS1R, серия довольно большая. Может это будет для вас настоящим открытием, хотя DX-7 уже около 20-и лет ! А моей DX-11 ~9 лет.
А тем у кого нет возможности приобрести профессиональный синтезатор, я посоветую посмотреть такую вот софтинку от Native Instruments: называется FM7, эмулирует DX-серию. Хотя как обычно криво. Для написания серьёзной музыки конечно не годится, а что бы составить мнение и поучится работе с FM-синтезом вполне подойдёт.
Скоро начну резать за оффтопик!
Господин Майк, ну уважайте других сколько можно уводить тему в непонятный астрал!
Посмотрите на заголовок, тут все для Спектрума, а не форум производителей инструментов!
Очень Вас прошу!

Shiru
28.04.2005, 18:13
Для написания серьёзной музыки конечно не годится, а что бы составить мнение и поучится работе с FM-синтезом вполне подойдёт.
Ага, именно поэтому они за неё 340 баксов просят ;) Для всего она годится, многие успешно юзают. FM-синтез - это ведь чисто цифровая штука, и нет особой разницы между программным FM-синтезатором и аппаратным. Звук у неё, конечно, несколько другой. Не думаю, что авторы задавались целью сделать 100% эмулятор звука DX'ов. Скорее - нечто похожее, со своей спецификой.

lvd
28.04.2005, 20:55
Вот кстати неплохой обзор о ямахах с datasheet'ами
http://members.chello.nl/h.otten/soundchips.htm

по поводу описалово ym2203 в PDF -> http://www.funet.fi/pub/msx/mirrors/msx2.com/vortexion/ym2203.pdf

Это уже все видели =)



по поводу программинга, в сорцах эмулятора MAME есть кусок на С ->
http://www.mameworld.net/maws/mamesrc/src/sound/2203intf.c
может кто разберется ?

Главный код фмсинтеза сидит таки в fm.c там!



вот еще один сорец на С FM генератора, есть в нем и 2203 -> http://svn.kitenet.net/trunk/src/packages/dgen/fm.c?rev=10213&view=auto
:sleep: continue searching...
А это надо посмотреть...

lvd
28.04.2005, 21:21
С удовольствием займусь, только надо бы рабочий экземпляр для ентого иметь. И хотя бы примитивный софт, так как кодер из меня не великий. Проще говоря мне нужно что то вроде сверхурезанного трекера, где есть только та часть, где инструмент настраевается, и опрос клавиатуры, что бы можно было поиграть, послушать. Хотя бы одну октаву с транспозицией +- 2-3 октавы.


Дык, а о чём я говорю - что на сегодняшний момент неясно, как вообще из этого YM2203 звук извлечь - т.е. что писать в егойные регистры, чтобы получить хоть какой-то звук! И пдфки на этот вопрос не отвечают никоим образом - думаю, с этим согласится любой, кто их видел!

lvd
28.04.2005, 21:33
Господа! Не могу удержаться от комментария.
FM - это круто. FM на писюковом саундбластере - это далеко не пример. Если у кого еще остались знакомые MSX-овцы, советую сходить в гости и послушать FM-PAC в редакторе MoonBlaster.


Давай отсюда поподробнее. Что такое фм-пак, какой эмулятор его эмулирует, где взять мунбластер? =)

lvd
28.04.2005, 23:48
вот еще один сорец на С FM генератора, есть в нем и 2203 -> http://svn.kitenet.net/trunk/src/packages/dgen/fm.c?rev=10213&view=auto


А ващета это тоже кусок из МАМЕ, о чём опять же там написано! =)

Mike
29.04.2005, 09:41
Дык, а о чём я говорю - что на сегодняшний момент неясно, как вообще из этого YM2203 звук извлечь - т.е. что писать в егойные регистры, чтобы получить хоть какой-то звук! И пдфки на этот вопрос не отвечают никоим образом - думаю, с этим согласится любой, кто их видел!

Блин... Видимо придётся становится быть кодером... :mad: :mad: :mad: :mad:

Mike
29.04.2005, 09:58
Ага, именно поэтому они за неё 340 баксов просят ;) Для всего она годится, многие успешно юзают. FM-синтез - это ведь чисто цифровая штука, и нет особой разницы между программным FM-синтезатором и аппаратным. Звук у неё, конечно, несколько другой. Не думаю, что авторы задавались целью сделать 100% эмулятор звука DX'ов. Скорее - нечто похожее, со своей спецификой.

Вот тут ты ОООООчень сильно заблуждаешься, они могут просить за неё хоть 3400 баксов, но от этого она не перестанет быть жалким подобием железных FM-синтезаторов. А то что многие "пионэры" юзают, это я и сам знаю, это от бедности и/или небольшого ума. Разница между програмным и аппаратным синтезом (любым) день и ночь, без преувеличения. Просто не спорь, поверь я не первый год со звуком работаю (~15 лет), и знаю что говорю. И FM-синтез необязательно должен быть цифровым.

Извиняюсь за оффтоп(ы), предлагаю продолжить обсуждение возможности подключения, хоть какого нибудь FM-чипа к спеку.
Для продолжения обсуждения синтеза и вопросов по звуку, если кому интересно, можно перейти на форум Moline (http://www.moline.ru/forum/index.php?bn=mo_main), я там с удовольствием подескутирую на эту тему. А сдесь постораюсь не оффтопить.
Итак, что мы имеем ? Доков по 2203, способных ответить на имеющиеся вопросы так и нет... А кто нибудь писал в Yamaha ? Мол мы девелоперы, производство налаживаем, документации нехватает... такие вещи нередко прокатывают, даже халявные образцы микрух присылают иногда.
Может ещё какие FM-чипы поискать ?

Shiru
29.04.2005, 10:18
Доков по 2203, способных ответить на имеющиеся вопросы так и нет...
Ну, некоторое количество информации там есть. Кое-что мне понятно, т.к. программил OPL2 (но не всё). Разобраться в принципе можно, хотя хотелось-бы, конечно, более подробную документацию. Уверен, что она есть, и скорее всего на японском;)

Sonic
29.04.2005, 13:27
Давай отсюда поподробнее. Что такое фм-пак, какой эмулятор его эмулирует, где взять мунбластер? =)

http://www.faq.msxnet.org/fmpac.html

На эмуляторе слушал. Звук, пожалуй, даже похож, только вот тормозило оно... Было это, правда, в эпоху Pentium-100...
Думаю, все дело в программировании. То же самое, что AY на MSX против AY на ZX.
Если есть возможность, лучше послушай оригинал.
Блин, почитал сам, хорошо у буржуев, железо производят вовсю для своих тачек... А у нас??? :(

CHRV
29.04.2005, 13:32
Если есть возможность, лучше послушай оригинал.
Блин, почитал сам, хорошо у буржуев, железо производят вовсю для своих тачек... А у нас??? :(
А унас это железо никто не покупает, безсменный народный хит "оооооой как дорого" :-)

lvd
23.06.2005, 00:56
Итак, девайс успешно спаян и подключён. Пока проверена работа только в режиме одного AY (т.е. без переключения на второй чип, без ФМ).

Итак:

1 - девайс работает
2 - но АУк играет на пониженной в 2 раза частоте (чипы ym2203 тактируются от 1.75мгц с платы).

Методом тыка среди 3 регистров (#2d,#2e,#2f, см. даташит на ym2203) нашёлся тот, при выводе в который чего-либо AYк начинает работать на удвоенной относительно нормальной скорости. А также нашёлся другой порт, при выводе в который 1 (другие числа не пробовал) частота AYк в YM2203 начинает играть как надо (на нормальной частоте).

Таким образом, нельзя сказать, что имеется полная совместимость. Тем не менее можно не брать тактовую с платы через разъём АУка, а генерить свою 3.5мгц на платке turboFM. Этот вариант я в ближайшем будущем опробую, о результатах докладу. К сожалению кварцев на 3.5мгц в продаже не видно, придётся брать 3.54мгц, тогда это будет соответствовать тактированию обычного АУка от 1.77мгц (как в фирменных спеках).

Есть ещё варианты:
- взять 7/14мгц и поделить
- взять таки сигнал с платы и удвоить на ЛП5

newart
23.06.2005, 01:33
1 - девайс работает
2 - но АУк играет на пониженной в 2 раза частоте (чипы ym2203 тактируются от 1.75мгц с платы).
Где достал? Признавайся!
С нетерпением жду долнейших результатов эксперементов!

Shiru
23.06.2005, 02:37
а генерить свою 3.5мгц на платке turboFM
Мне вот интересно, как-же у меня без всяких делителей работал в своё время AY на 3.5mhz? Т.е., тактовая бралась прямо с ножки Z80. И звучало нормально...

newart
23.06.2005, 02:58
Он ж сам собирал!
Я не про сборку, я про чип, который фиг достанешь.

lvd
23.06.2005, 08:17
Где достал? Признавайся!

У CHRV! Он этих чипов много штук у китайцев купил.

lvd
23.06.2005, 08:30
Мне вот интересно, как-же у меня без всяких делителей работал в своё время AY на 3.5mhz? Т.е., тактовая бралась прямо с ножки Z80. И звучало нормально...

Тебе виднее, как, а я не телепат. Во всех схемах АУк тактируется на 1.75Мгц, причём это видно глазами и телепатических способностей не требуется.

Shiru
23.06.2005, 08:44
Во всех схемах АУк тактируется на 1.75Мгц, причём это видно глазами и телепатических способностей не требуется.
А в моей 'схеме' он тактировался напрямую с проца - когда я его подключал к 48-ому Спеку, я не знал, какой должна быть тактовая частота. Вот и спрашиваю - каким-же образом он умудрялся работать правильно? По идее ведь не должен был...

spensor
23.06.2005, 08:56
Мне вот интересно, как-же у меня без всяких делителей работал в своё время AY на 3.5mhz? Т.е., тактовая бралась прямо с ножки Z80. И звучало нормально...
А ты убежден, что это был именно AY. Дело в том, что в YM есть вывод (который в AY был то ли TEST1, то ли TEST2) управляющий внутренним предделителем частоты на 2. Подавая логический уровень на этот вывод, можно было управлять частотой подаваемой на внутренние счетчики с вывода CLK.

Shiru
23.06.2005, 09:03
А ты убежден, что это был именно AY.
Это был YM. Хм, не знал, что там есть встроенный делитель. Занятно:)

Ronin
23.06.2005, 12:57
- взять таки сигнал с платы и удвоить на ЛП5
удваять пожалуй.

а можно еще
- перешить ПЗУ с инициализацией этих регистров ;) (шутка есссно)

по докам, легче искать программирование Сег и 2612 наверно.

зы// защитил диплом и тоже приступаю к сабжу ;)

Shiru
23.06.2005, 13:34
по докам, легче искать программирование Сег и 2612 наверно.
Вот основное, что есть на эту тему:

http://tv-games.narod.ru/hard/Sega_Tech_Rus_1_5b.rar (на русском)
http://devster.retrodev.com/sega/devster_noise_machine.zip (некая страшная тулза, якобы 'A simple YM2612 tracker for the Sega Genesis')

Остальные доки в основном описывают работу с PSG (SN76489) и проигрывание оцифровок.

Sonic
23.06.2005, 15:01
Поздравляю всех нас с успешной реализацией проекта. Думаю, для нас это событие редкое, к сожалению. :cool: :cool: :cool:
Чтобы не отстать, на этой неделе начну разрабатывать схему Beta-2005 (а то я уже слышу упоминания о разных товарищах, которые "меняют точку зрения как только начинают рисовать схему")... :mad:

lvd
23.06.2005, 15:13
Поздравляю всех нас с успешной реализацией проекта.

Какой нафик успешной? ещё надо с частотой разобраться, потом плату развести, етц... :-\

Conan
23.06.2005, 16:19
ещё надо с частотой разобраться, потом плату развести, етц... :-\А схему опубликуешь и описание (порты)?

P.S. Сними на минуту шлём и улыбнись ребятам, они же радуются искренне, что будет новая хорошая железка!
Эх, если бы такие мощные микрухи были бы доступны лет 10 назад, какой бы музон сейчас игрался бы на Speccy... В общем ждем с нетерпением!

lvd
23.06.2005, 16:29
Убедился осциллоглядом, что АУ-часть действительно тормозит ровно в 2 раза без инициализации.

Потестил ФМ-часть - что-то там бибикает и гудит =)

Обнаружил редко появляющийся глюкодром в режиме турбо на моём скорпионе - запись значений промахивается и происходит в регистры FM-части, в результате чего последняя начинает шуршать и пукать :)

Протестил TSE на ём - всё играет как надо.

lvd
23.06.2005, 17:08
А схему опубликуешь и описание (порты)?
Схему могу уже выкласть цифровую часть (согласование шинного интерфейса 2203 и AY). Аналоговую (куча оперов, резюков, кондюков) пока не нарисовал.


Порты собственно написаны в даташите на ym2203, они являются продолжением портов AYка. Также поддержано переключение 2 чипов по стандарту NedoPC-TS. Ещё есть возможность читать регистр состояния 2203 (бит busy), путём установки номера регистра #FD или #FC (для каждого чипа, чипы выбираются по стандарту NedoPC-TS). См. аттачи, в общем. Там (на картинке) кстати пока нету ещё удвоителя тактовой.



P.S. Сними на минуту шлём и улыбнись ребятам, они же радуются искренне, что будет новая хорошая железка!

Не, потом. А то сейчас тут тонны дыма от канифоли плавают =))




Эх, если бы такие мощные микрухи были бы доступны лет 10 назад, какой бы музон сейчас игрался бы на Speccy... В общем ждем с нетерпением!

У меня сейчас 4 чипа ym2203, годы выпуска как раз в районе 92-94г. А ещё снизу какие-то иероглифы намалёваны китайские. &)


PS: почти вся цифровая часть схемы выдумана jtn/4d. Имейте в виду. &^)

Shiru
23.06.2005, 17:12
Эх, если бы такие мощные микрухи были бы доступны лет 10 назад, какой бы музон сейчас игрался бы на Speccy... В общем ждем с нетерпением!
Такие мощные микрухи, как 2203, ставились в кучу игровых автоматов от 84 года и далее:) Другое дело, что у нас в стране они не были доступны, как и много чего другого...

lvd
23.06.2005, 17:29
http://lvd.nm.ru/TurboFM/

newart
23.06.2005, 22:29
У CHRV! Он этих чипов много штук у китайцев купил.
A что же он такую важную новость утаил?! :mad:
Продайте мне парочку, плииз. :)

lvd
23.06.2005, 23:07
A что же он такую важную новость утаил?! :mad:

Я точно забыл, откуда я узнал про это, но скорее всего из форума!


PS: лп5 в хламе не нашёл, сделал удвоитель частоты на кп16. Работает. В качестве бонуса - возможность программно раскочегарить АУк в 2 и 4 раза.

CHRV
24.06.2005, 15:16
Таким образом, нельзя сказать, что имеется полная совместимость. Тем не менее можно не брать тактовую с платы через разъём АУка, а генерить свою 3.5мгц на платке turboFM. Этот вариант я в ближайшем будущем опробую, о результатах докладу. К сожалению кварцев на 3.5мгц в продаже не видно, придётся брать 3.54мгц, тогда это будет соответствовать тактированию обычного АУка от 1.77мгц (как в фирменных спеках).

Я все жду известий о ФМ!
И микшер как твоей версии звучит послушать!
Не знаю буду ли в Москве в ближайшее время, если буду позвоню - кинь мне телефон свой по мылу!

П.С. А может не надо придумывать ничего, а сделать первичную иниуциализацию чипа перед запуском АУ-игрушек? По хорошему конечно включить в ROM :).

Ronin
24.06.2005, 15:46
Lvd, ты проверял что читается из регистров >#0F ? статуса там нету ?

jtn
24.06.2005, 16:02
Я все жду известий о ФМ!
а чего ждать-то. всё работает. уже и с удвоителем. я вот тоже подумываю прикупить. кончно бы от готовой платы не отказался =)

Lvd, ты проверял что читается из регистров >#0F ? статуса там нету ?
ну прочитал я даташит, никаких разночтений в этом плане не нашел.

Ronin
24.06.2005, 16:21
не хотите проверять, сам проверю :)

lvd
24.06.2005, 17:15
Lvd, ты проверял что читается из регистров >#0F ? статуса там нету ?

Приду домой - проверю. А заодно и как он откуда надо читается. =)

lvd
24.06.2005, 18:03
Я все жду известий о ФМ!

Каких именно? Я ж вроде про начальный тест FM-части где-то выше писал =)



П.С. А может не надо придумывать ничего, а сделать первичную иниуциализацию чипа перед запуском АУ-игрушек? По хорошему конечно включить в ROM :).

Хз, имхо проще умножитель на 1 чипе или вообще провод с платы, чем ПЗУ перешивать!...

lvd
25.06.2005, 18:10
Сабж устанавливается примерно на 30мкс после записи в ЛЮБОЙ регистр ym2203 (в т.ч. и AYковый). После 30мкс он сбрасывается. В младших 2 битах читаются нули (биты таймеров), остальные биты - повторяют только что записанное в регистр ym2203 число.

Учитывая, что все плееры АУ музыки имеют период между записями в регистры куда меньше 30 мкс и играют отлично, на него можно забить при игрании АУ-музонов, что собственно и требовалось. (Глюки в турбе пока отбросим - их причина неясна, нужна проверка на разных компах).

Далее, с адресов, соответствующих ФМ-регистрам, читается всякая байда, не имеющая отношения к сабжу.

himik
25.06.2005, 18:37
Вот тут ты ОООООчень сильно заблуждаешься, они могут просить за неё хоть 3400 баксов, но от этого она не перестанет быть жалким подобием железных FM-синтезаторов. А то что многие "пионэры" юзают, это я и сам знаю, это от бедности и/или небольшого ума. Разница между програмным и аппаратным синтезом (любым) день и ночь, без преувеличения. Просто не спорь, поверь я не первый год со звуком работаю (~15 лет), и знаю что говорю. И FM-синтез необязательно должен быть цифровым.


пока профы работают на железках реальных, мы "пионэры" на софте пишем музу, и чо ты скажешь на это? realmusic.ru/anestis ;)

Dexus
10.08.2005, 21:31
К сожалению ждать эмуляции сабжа - не стоит.

Хотя может быть кто-нибудь из авторов эмулей возмется за поддержку эмуляции сабжа?
Может быть уже взялся?
SMT и Vladimir Kladov...
Стоит ли ждать или как?

Dexus
21.08.2005, 20:10
Я тут это.. эмулятор YM2203 замонстрячил. отдельный :) не встраивал пока в Unreal... Взял из MAME.
Судя по звуковой реакции и согласованности со спецификациями - вроде пашет как надо.

lvd
21.08.2005, 20:53
Я тут это.. эмулятор YM2203 замонстрячил. отдельный :) не встраивал пока в Unreal... Взял из MAME.
Судя по звуковой реакции и согласованности со спецификациями - вроде пашет как надо.

А чего с ним с отдельным-то делать? Встраивай давай быстрее в унрыл! =))))

Dexus
22.08.2005, 00:12
В общем какая фигня там.. есть три регистра (2d,2e,2f), переключаясь на которые можно менять множители частот:
2f = FM x1, SSG x2 (reset)
2d = FM x1/3 , SSG x1/2 (default after boot)
2d,2e = FM x2/3 , SSG x1

Т.е. если тактировать на 1.75МГц, то после _запуска_ будет выдавать вдвое меньшей частоты звук (для AY звуков) -как написал вначале lvd. И необходимо будет выполнить вывод в порты 2d,2e чтобы выправить его.
Если тактировать на 3.5МГц (или 3.54), то после _запуска_ будет выдавать ровно нужный тон для SSG.

Достаточно мудрёная схема для понимания... но в общем ничего сложного, если вникнуть.

По-моему логичнее схему "питать" как раз от 3.54МГц, во-первых, будет совместимость с AY _сразу_ после загрузки, во-вторых, все игровые автоматы работают с частотой YM2203 3-4МГц.

У FM немножечко другие коэффиценты, но в целом - похоже.
И поскольку этот вопрос еще не был проработан, то логичней будет отталкиваться все-же от совместимости с AY. А FM уж можно будет подогнать.
Получается 3 FM голоса + 3 SSG (на один 2203).
SSG и FM синтез никак не связаны (кроме как частотными коэффицентами). Т.е. можно параллельно играть музыку и в FM и в SSG :) Мнимая 6тиканальность.
А если использовать 2х2203, то будет 6FM+6SSG, что есть практически 12 каналов (правда половина из них - квадратноволновой SSG).
На фоне FM синтеза SSGшные звуки кажутся настолько плоскими и примитивными, что слушать их не очень охота...

ЗЫ: По возможности постараюсь в ближайшие дни встроить в Unreal.

Lounge Lizard
22.08.2005, 00:36
На фоне FM синтеза SSGшные звуки кажутся настолько плоскими и примитивными, что слушать их не очень охота...

Ну почему, можно юзать AY в качестве хреновой драм-машины для FM, или наоборот - FM как дополнительную огибающую для AY. :D А если серьёзно, может разумнее будет не заморачиваться с FM, а сразу сделать поддержку для MIDI? Чтобы хочешь - ставишь чип с FM, хочешь - с wavetable. А что, MIDI для спека будет самое оно - данных в него загонять надо вроде даже меньше чем в AY - меньше нагрузка на проц. Зато звук и возможности несравнимы с AY. А для любителей звука AY оставить один или два AY без всякого FM.

newart
22.08.2005, 02:05
На фоне FM синтеза SSGшные звуки кажутся настолько плоскими и примитивными, что слушать их не очень охота...
Когда начинаешь бредить указывай пожалуйста что это "IMHO".

Dexus
22.08.2005, 05:55
Когда начинаешь бредить указывай пожалуйста что это "IMHO".
Да, похоже напрасно я за это взялся.
Отбой.

Dexus
22.08.2005, 05:58
если серьёзно, может разумнее будет не заморачиваться с FM, а сразу сделать поддержку для MIDI?
Есть схемы сопряжения ZX с миди-трактом. берешь покупаешь синтезаторы по $700-1500, прицепляешь к спектруму.. только нафиг? не проще ли сразу к писюку?

CHRV
22.08.2005, 09:01
TurboFM скоро появится живьем!
Так что в эмуляторе ждем поддержку!

Dexus
22.08.2005, 09:45
Так что в эмуляторе ждем поддержку!
От кого ждете? Я не слышал в планах разработчиков эмуляторов хоть какой-то поддержки ФМ.
ДАЛЕКО не все за турбоСаунд даже берутся...
Потому что нигде даже никакой документации по этому делу нет. Ни стандартов, ни "примеров программ", ни рекомендаций, ни технических характеристик...
А рыться в дебрях форумских высказываний мало кого прикалывает.

Будет стандарт - будет и поддержка (со временем).
А пока стандарта нет.
А на идею всавывания эмуля 2203 в эмуль спектрума я забил.

CHRV
22.08.2005, 09:54
От кого ждете? Я не слышал в планах разработчиков эмуляторов хоть какой-то поддержки ФМ.
ДАЛЕКО не все за турбоСаунд даже берутся...
Потому что нигде даже никакой документации по этому делу нет. Ни стандартов, ни "примеров программ", ни рекомендаций, ни технических характеристик...
А рыться в дебрях форумских высказываний мало кого прикалывает.

Будет стандарт - будет и поддержка (со временем).
А пока стандарта нет.
А на идею всавывания эмуля 2203 в эмуль спектрума я забил.
Ну и ладно, а я не забил и реальный ТурбоФМ на днях сделаю :).

lvd
22.08.2005, 10:11
2f = FM x1, SSG x2 (reset)
2d = FM x1/3 , SSG x1/2 (default after boot)
2d,2e = FM x2/3 , SSG x1

Что такое 'reset' и 'default after boot'? =)



По-моему логичнее схему "питать" как раз от 3.54МГц, во-первых, будет совместимость с AY _сразу_ после загрузки,
И не только по-твоему. Сразу так и было сделано =)

lvd
22.08.2005, 10:14
Будет стандарт - будет и поддержка (со временем).
А пока стандарта нет.


То есть как это нет - уже готов и прототип (давно), и PCB, и CHRV скоро начнёт клепать уж 'серию'!

Lounge Lizard
22.08.2005, 10:43
Есть схемы сопряжения ZX с миди-трактом. берешь покупаешь синтезаторы по $700-1500, прицепляешь к спектруму..


Мне моего за 300$ хватает, правда он практически одноголосный, зато виртуально-аналоговый. :D



только нафиг? не проще ли сразу к писюку?

Синт стоит ты сам написал сколько, а ISA-звуковуха с FM-синтезом - 50 рублей.

Dexus
22.08.2005, 11:28
То есть как это нет - уже готов и прототип (давно), и PCB, и CHRV скоро начнёт клепать уж 'серию'!
Ага. МОжет быть и есть. Но что о них известно? какие спецификации? как работает "стерео"?
В общем инфы, кроме того что чип - YM2203 - никакой нет.

Вот я тут посмотрел.. Всего 2х2203 .т.е. 2 набора портов (в сумме будет под 200).. При том что иногда они все забиваются одновременно.. Уже нагрузка на проц немалая.
Плюс к этому - 6 каналов, в каждом по 4 оператора... У операторов по 10 параметров, упакованных в 6 регистров.
Если строить стандартные АУшные графики в сэмплах, которые бы контроллировали все эти параметры (ну или хотя бы частично) - я это уже очень плохо себе представляю... Тут методика обычных АУшных трекеров не катит... Здесь у сэмплов своя огибающая есть (точнее у каждого из 4 операторов), которые "инициализируются" по событию KeyOn и отключаются по событию KeyOff. Причем для одного канала эти переинициализации огибающих (keyon/keyoff) задаются для каждого оператора НЕЗАВИСИМО. Т.е. можно запустиьт основную огибающую, и время от времени запускать-выключать огибающую какого-нибудь FM слота, что будет давать интересный звуковой результат.
Шумы, кстати, тоже очень даже неплохо получаются, когда много операторов намешано с большими амплитудами.
И на фоне FM "мелодии" (одновременное звучание) SSG звук будет реально плоским и сухим, и будет в основном портить звуковую картину.
Единственное применение для SSG синтеза вижу - в звуковом сопровождении (типа спецэффектики в игрушках - выстрелы или еще что-нибудь подобное). В FM музыку саму эти SSG звуки будут вписываться еще хуже чем БИПЕР в AYшную. Это небо и земля. Несравнимо.
(поклонников плоских звуков от наездов попрошу воздержаться).

lvd
22.08.2005, 11:51
Ага. МОжет быть и есть. Но что о них известно? какие спецификации? как работает "стерео"?
В общем инфы, кроме того что чип - YM2203 - никакой нет.

Ну здрасти - отмотай тред назад! Там и схема (рассыпушная) есть (финальный вариант отличается только умножителем частоты), и программинг модель (как программить). Вывод же звука идёт так: оба ФМ в моно, АУки как в турбосоунде, всё. Имхо исчерпывающая инфа!

lvd
22.08.2005, 11:53
И на фоне FM "мелодии" (одновременное звучание) SSG звук будет реально плоским и сухим, и будет в основном портить звуковую картину.

Единственное применение для SSG синтеза вижу - в звуковом сопровождении (типа спецэффектики в игрушках - выстрелы или еще что-нибудь подобное). В FM музыку саму эти SSG звуки будут вписываться еще хуже чем БИПЕР в AYшную. Это небо и земля. Несравнимо.
(поклонников плоских звуков от наездов попрошу воздержаться).
А я тебе говорил и говорю - послушай сегу (эмулятор gens). Там и фм и ссг сочетаются нормально и органично!... :)

Кстати в zynaps'e от мкхг бипeр и АУк тоже органично в звучках в игре сочетаются.

Dexus
22.08.2005, 12:36
Ну здрасти - отмотай тред назад! Там и схема (рассыпушная) есть (финальный вариант отличается только умножителем частоты), и программинг модель (как программить). Вывод же звука идёт так: оба ФМ в моно, АУки как в турбосоунде, всё. Имхо исчерпывающая инфа!
Уважаемый, я в схемах не смыслю ничерта. Мне нужен конкретный tech specs, чтобы руководствуясь им можно было ориентироваться на программирование не заморачиваясь на то, что у кого-то будет не по стандарту.

А я тебе говорил и говорю - послушай сегу (эмулятор gens). Там и фм и ссг сочетаются нормально и органично!...
В сеге еще PAN есть и ADPCM, одним SSG сыт не будешь. Его очень ограниченно можно комбинировать с FM. Только в игрухах для спецэффектов (скорее всего в сегах так и есть).
Кроме того, в сегах используется далеко не 100% возможностей.

Ronin
22.08.2005, 14:04
оба ФМ в моно
т.е. КАК ЭТО в МОНО ? фиг там, в стерео разбрасывать надо, раз 2 чипа. Если один чип установлен - тогда моно.

lvd
22.08.2005, 14:18
т.е. КАК ЭТО в МОНО ? фиг там, в стерео разбрасывать надо, раз 2 чипа. Если один чип установлен - тогда моно.

Ага, а потом ЭТО в наушниках слушать... УЖОС. =)

Или предлагай коэффициенты микширования Роме, благо там не как в тс микшер, а по-человечески, и каждый канал определяется всего одним резюком =)

lvd
22.08.2005, 14:27
Уважаемый, я в схемах не смыслю ничерта. Мне нужен конкретный tech specs, чтобы руководствуясь им можно было ориентироваться на программирование не заморачиваясь на то, что у кого-то будет не по стандарту.

А там он и есть - в текстовичке:

Вывел номер регистра #FF - первый чип, #FE - второй (как у ТС)
#FD - включается режим чтения статуса и битов таймера у первого чипа
#FC - у второго.

Остальное так же, как с АУком обычным - и чего неясного?... =)



В сеге еще PAN есть и ADPCM, одним SSG сыт не будешь. Его очень ограниченно можно комбинировать с FM. Только в игрухах для спецэффектов (скорее всего в сегах так и есть).

А что такое ПАН и в каких сегах он? А что касается genesis и megadrive, то в них есть: 2612, SSG некий и ЦАП. ЦАП может и адпцм, не знаю, зато знаю, что проц руками туда байтики кладёт, совсем как на АУке цифру играют (правда дело облегчается тем, что в 2612 есть таймеры, в 2203 кстати тоже есть!). Больше в этих сегах ничего нет.

ССГ играет малую часть ударников и пшикалок (большая часть ударников потому что через ЦАП идёт) и подыгровки тихие в музле. Ну и фефекты наравне с ФМ на нём. На спеке у АУка есть ещё огибающая, да и ауков собственно 2, зато нет цапов (но при желании юзаются АУшные).



Кроме того, в сегах используется далеко не 100% возможностей.

Ну да, там же тот же самый 4мгц зетник, а такты в нём не резиновые =)

Ronin
22.08.2005, 18:04
некий и ЦАП
этот ЦАП - сидит в 2612, собственно это тот ЦАП которым и осуществляется ФМ-синтез. такой же ЦАП (точнее 3 штуки/чип как я понимаю) есть и в схеме с ym2203 (только физически он во внешнем чипе).
Так что ТурбоФМ - это та же сега с продвинутым SSG (ТурбоСаунд-компатибл)

lvd
22.08.2005, 18:17
этот ЦАП - сидит в 2612, собственно это тот ЦАП которым и осуществляется ФМ-синтез. такой же ЦАП (точнее 3 штуки как я понимаю) есть и в схеме с ym2203 (только физически он во внешнем чипе).
Так что ТурбоФМ - это та же сега с продвинутым SSG (ТурбоСаунд-компатибл)

Насчёт физической организации не знаю что там в 2612, но логически и фактически там есть ЦАП как отдельный регистр, в который проц пишет байт за байтом по таймерам (на 2612) и выводит через него цифровые сэмплы. Таким макаром очень активно на сеге делаются ударники, да и голосовые эффекты тоже попадаются в некоторых гамах. Чтобы в этом убедиться - ещё раз - достаточно взять эмулятор gens и пару ромов к нему, и потыкаться в меню у него.

Lounge Lizard
22.08.2005, 19:24
Только в игрухах для спецэффектов (скорее всего в сегах так и есть).
Кроме того, в сегах используется далеко не 100% возможностей.

Справедливости ради, переиграл на мегадрайве в не один десяток игр и фирменного AYшного звука не слышал ни разу. Вообще. Может он у них там через фильтры какие-то пропускается, может ещё что, но на спековскую музыку это не похоже совершенно.

На сеге кстати звук вообще интересный - ни на писявый FM MIDI не похоже, ни на трекеры, ни уж тем более на AY. Больше всего мне это напомнило хорошую современную "самоиграйку".

Lounge Lizard
22.08.2005, 19:38
Чтобы в этом убедиться - ещё раз - достаточно взять эмулятор gens и пару ромов к нему, и потыкаться в меню у него.

Потыкался в GENS - странно как-то. Там 4 звуковых девайса - Z80, YM2612, PSG, DAC. Погонял музоны из Dune2 - весь музон извлекают первые 2 девайса, причём если отключить Z80, то 90% звука пропадёт. Ну YM2612 это я так полагаю FM, а Z80 это тогда что? DAC там отдельно написан, так что точно не DAC. Ну не может же сам Z80 звуки какие-то издавать?

lvd
22.08.2005, 20:18
Потыкался в GENS - странно как-то. Там 4 звуковых девайса - Z80, YM2612, PSG, DAC. Погонял музоны из Dune2 - весь музон извлекают первые 2 девайса,

Погоняй соника =)


причём если отключить Z80, то 90% звука пропадёт. Ну YM2612 это я так полагаю FM, а Z80 это тогда что?

Как что - процессор такой, Z80. =)



DAC там отдельно написан, так что точно не DAC. Ну не может же сам Z80 звуки какие-то издавать?
Конечно не может. Потому вместо него звуки издают 2612, псг и дак, а он только рулит. Для полного счастья погонять соника.

Lounge Lizard
22.08.2005, 21:45
Погоняй соника =)


Обязательно. ;)



Конечно не может. Потому вместо него звуки издают 2612, псг и дак, а он только рулит.

Тогда почему в Dune YM продолжает кое-как звучать и без него?

Costa
22.08.2005, 22:19
Тогда почему в Dune YM продолжает кое-как звучать и без него?
Доступ к YM и PSG имеет и главный процессор 68000.

lvd
22.08.2005, 22:22
Тогда почему в Dune YM продолжает кое-как звучать и без него?

Подай /BUSRQ на зетник на спеке када он музло на АУке играет - почему АУк продолжит звучать?... =)

К тому же на сеге не только зетник может лазить в адресное пространство 68к (в РОМку, в его озушку), но и наоборот - 68к умеет лазить в адресное простанство Z80 (8к озушка и порты, отмапленные на память). Но это маловероятно - первый пункт рулит.

Lounge Lizard
22.08.2005, 22:57
Подай /BUSRQ на зетник на спеке када он музло на АУке играет - почему АУк продолжит звучать?... =)

К тому же на сеге не только зетник может лазить в адресное пространство 68к (в РОМку, в его озушку), но и наоборот - 68к умеет лазить в адресное простанство Z80 (8к озушка и порты, отмапленные на память). Но это маловероятно - первый пункт рулит.

Скорее второе - там не просто одно и тоже как при зависании, а звуки вполне осмысленные и меняются.

Dexus
22.08.2005, 23:02
А что такое ПАН и в каких сегах он? А что касается genesis и megadrive, то в них есть: 2612, SSG некий и ЦАП
Pan - это панорамирование (стереоэффекты).
SSG есть, да, но иной по тембру (не квадратный). ЦАП - это ADPСM.
В доках написано что 6й канал используется для цифрового вывода, т.е. можно ФМ синтез, а можно диджитал. Но не одновременно.

Ну да, там же тот же самый 4мгц зетник, а такты в нём не резиновые =)
Дело даже не в тактах, а в самом использовании возможностей ФМ синтеза. В сеге, например, всегда происходит работа с 4мя операторами одновременно. Т.е. там нету использования операторов по-отдельности.
Кстати, арпеджио, будучи выведеной через AY - получается очень уж похожей на обычный спектрумовый звук :)

Справедливости ради, переиграл на мегадрайве в не один десяток игр и фирменного AYшного звука не слышал ни разу. Вообще. Может он у них там через фильтры какие-то пропускается, может ещё что, но на спековскую музыку это не похоже совершенно.
Вот именно. Через фильтры пропускается. Потому что АУК генерит простую квадратную волну, что есть не совсем музыкальный тембр.

ЗЫ: Вот вложил свои "эксперементы". Тембр не особо разнообрзаный,все-таки хардкод - не очень гибкая штука :)

Lounge Lizard
22.08.2005, 23:05
С PSG кстати прояснилось кое-что. Послушал тут ещё несколько музонов, лишний раз протащщился (ComixZone жутко рулит - всем советую, послушайте как может звучать Turbo-FM :cool: ) а главное записал WAV с одним PSG без FM и потом посмотрел его в редакторе - PSG по ходу играет только просто прямоугольники (без всяких AY-наворотов) и драмсы, этим и объясняется непохожесть на AY. Плюс я так подозреваю что AY там работает на частоте сильно большей, чем в Speccy. Может кто в "Сеге" копался, какая там частота на самом деле?

Dexus
22.08.2005, 23:20
Может кто в "Сеге" копался, какая там частота на самом деле?
2МГц.
Не намного больше :)
Не думаю что частота тут имеет значение.

lvd
22.08.2005, 23:34
Скорее второе - там не просто одно и тоже как при зависании, а звуки вполне осмысленные и меняются.

Хм, опиши =)

Lounge Lizard
23.08.2005, 00:15
GENS есть? ROM с Dune2 лежит на pristavka.kulichki.net. В игре по менюшкам доходишь до собственно миссии, там жмёшь Start и щёлкаешь любые музоны, параллельно в GENS'е отключая тот или иной звуковой девайс и наблюдая как от этого меняется звук.

Dexus
23.08.2005, 00:22
GENS есть?
У меня кстати он виснет при запуске.. зато DGEN работает.

Ronin
23.08.2005, 14:57
так подозреваю что AY там работает на частоте сильно большей, чем в Speccy
в сеге НЕ AY! там texas какойто примитивный. и потом, послушай звук фирменных игрушек 85г. и скажи насколько он похож на нынешний AY :)

lvd
23.08.2005, 20:05
GENS есть? ROM с Dune2 лежит на pristavka.kulichki.net. В игре по менюшкам доходишь до собственно миссии, там жмёшь Start и щёлкаешь любые музоны, параллельно в GENS'е отключая тот или иной звуковой девайс и наблюдая как от этого меняется звук.

Я тебе говорю - ЗВУК опиши. То, что у тебя может быть осмысленным изменением, у меня будет всего лишь послезвучанием ADSR-'семплов' 2203 и продолжающийся ФМ-синтез с обратной связью.

PS: В энтой дюне даже ЦАП не юзается - что весьма странно. А без З80 похоже 68к релоадит иногда семплы (а з80 их только играет). Так что ёжик рулит =)

Dexus
23.08.2005, 23:38
Все... Вроде более-менее разобрался в том как надо программироваьт этот 2203 и какие результаты получатся.

Могу сказать одно, что "трекерный" способ создания музыки тут будет не совсем лучшим..
Форму сэмпла можно задавать как огибающей (как обычный мидишный сэмпл), так и если вручную контроллировать все параметры каждое 1/50 прерывание.. Но тогда дискретность может быть уже заметна в определенных местах, хотя звук куда гибче может получиться в плане тембральной вариативности...
SSG звук параллельно тоже можно играть, в качестве "квадратных подзвуков" и дополнительного шумового канала (для ударников). Заодно и экономия FM каналов.

В общем наворотить можно много чего... Только сложность в том как эту сложную систему FM синтеза впендюрить в спектрумовый 256х192 экранчик, чтобы был максимум доступной для интерактива и обозрения информации..

Если взять за вариант тот, что мы отказываемся от задания огибающей (в прямом смысле - формы звука, а не хитромудрый тембр) средствами самого звукового процессора, а будем вручную менять параметры каждую 1/50 секунды. Тогда надо будет контроллировать такие параметры, как: "основная амплитуда" (число от 0 до 127), 3 амплитуды операторов (так же от 0 до 127), алгоритм сопряжения операторов (число от 0 до 7), 4 гармонических "сдвига" от номинальной частоты (хитрое число, включающая множитель и коэффицент от -3 до +3)..

Итого - 4 шкалы амплитуд, 4 хитрогибридных шкалы гармонических сдвигов, и одна шкала алгоритма... И еще самая главные шкалы (так же 4 штуки) - on/off Немало...

Но по-моему это не очень правильно.. На процессор будет нагрузка солидная из-за количества регистров, выбрасываемых каждое прерывание...

Кстати, в описании написано что ожидание "освобожения" во время заливки регистров - важно. В дампах с сеговских программ проигрывания (правда там через 2612) там есть проверка сигнала busy.

Вот такие пирожки.

lvd
24.08.2005, 00:05
Кстати, в описании написано что ожидание "освобожения" во время заливки регистров - важно. В дампах с сеговских программ проигрывания (правда там через 2612) там есть проверка сигнала busy.

Ждать по 30мкс после каждого аута - не есть гут. К тому же этот бизи взводится даже после аута в АУковскую часть.

Но как водится, всё работает и так (АУк уж точно играет нормально, FM - по крайней мере не глючило - всегда одни и те же звуки давало, несмотря на то, что на бизи я принципиально забивал).

Dexus
24.08.2005, 06:06
Но как водится, всё работает и так (АУк уж точно играет нормально, FM - по крайней мере не глючило - всегда одни и те же звуки давало, несмотря на то, что на бизи я принципиально забивал).
Ну это-то понятно. у СЕГ всяких есть возможность нагрузить на "проверку" и загрузку регистров параллельный z80, на скорось работы самого проца это никак не сказывается...

Dexus
24.08.2005, 11:24
Готовлю версию анрила, который поддерживает YM2203
Пока что в очень глючной стадии (вылетает при резете, не меняет частоту SSG при изменении множителей прескейлера, ит.д.)
http:///inatix.com/spool/unreal.zip
Unreal0.30b последняя взята за базу.
Изменений в основном коде делал - минимум, но похоже что придется больше менять, чтобы не глючило так отчаянно :).

newart
24.08.2005, 11:28
Изменений в основном коде делал - минимум, но похоже что придется больше менять, чтобы не глючило так отчаянно
А почему бы вам с автором не скооперироваться? (с SMT)

Dexus
24.08.2005, 11:56
А почему бы вам с автором не скооперироваться? (с SMT)
Потому что SMT предпочитает общаться через форум, а не в онлайне (в асе). Если не изменяет память то он примерно такое сообщил.
Поэтому решение каких-либо вопросов затягивается на долгое время.
Поэтому придется без кооперирования обойтись.

Если ошибаюсь - то дико извиняюсь. :)

Добавление:
Вроде как исправил те глюки которые сразу были найдены.
Работают оба чипа. Но на чтение не работает (спецификаций и примеров нету).
Таймеры скорее не работают, сигнал busy - так же. (Они и не особо нужны)
Разница в конфиге - в секции AY

[AY]
Chip=YM2203 ; bus reaction (none/AY/YM/YM2203)
Громкость берется из слайдера Sound chip. Не работает когда стоит галка digital samples.
Брать тут, если кому интересно: http://inatix.com/spool/unreal.zip
http://inatix.com/spool/2203test.zip - $c файл с тестилкой (запустить легко через run "test" code. Пробел - выход, запуск по адресу 30003 - продолжение поигрывания (правда что там проигрывать - 1 паттерн по циферкам вводил :). Но по крайней мере можно проверить работоспособность эмуля или реального железа.

Добавление:
Были косяки - разобрался... Обновил версию. Все дело в том, что для одного из 48000 тактов аудиотракта выполняется генерация примерно 4х тактов звука (для AY), соответственно нагрузка на проц в 4 раза выше, чем могла бы быть (я не совсем вижу смысл этого, ведь все равно разрешение звукового вывода остается 48000Гц, по крайней мере для FM синтеза, в AY иногда это используется для диджитал синтеза).
Программу для теста тоже обновил.
2CHRV: Можешь протестить пример этот на реальном железе и сравнить с эмульным?

SMT
25.08.2005, 08:25
Потому что SMT предпочитает общаться через форум, а не в онлайне (в асе). Если не изменяет память то он примерно такое сообщил
пока для моей деревни постоянный онлайн слишком дорог. поэтому и не завёл себе асю

Dexus
25.08.2005, 13:38
Версия Unreal031b + YM2203:
http://inatix.com/spool/unreal031b_YM2203.zip

newart
25.08.2005, 14:43
Версия Unreal031b + YM2203:
http://inatix.com/spool/unreal031b_YM2203.zip
Что за фигня, а где конфиги и т.д.?! :mad:

Dexus
25.08.2005, 14:51
Что за фигня, а где конфиги и т.д.?!
Ага, может быть танец живота сплясать?
Это альтернативный exe'шник
остальное - с оффсайта SMT (сурсфорж или виртуал трдос).
Как дети, ей-Богу..

newart
25.08.2005, 14:59
Ага, может быть танец живота сплясать?
Это альтернативный exe'шник
остальное - с оффсайта SMT (сурсфорж или виртуал трдос).
Как дети, ей-Богу..
Тебе несомненно проще было бы засунуть в архив неско недостающих файлов, которые лежат явно в тойже папке, что и EXE.
Чем мне разыскивать их по инету. :mad:

Dexus
25.08.2005, 19:15
Тебе несомненно проще было бы засунуть в архив неско недостающих файлов, которые лежат явно в тойже папке, что и EXE.
Чем мне разыскивать их по инету.
Нет не легче. Ибо я не собираюсь быть "распространителем". Я вообще не вкурсе что там за стандартный комплект должен быть - это грубо говоря не мое дело. Кучу ромов и инишников всовывать. Вообще - никакой проблемы нет заменить номер версии в ini файле (в самом начале его), если лень искать и качать _нормальную_ версию.
Я так думаю, что если у чела нет обычной новой версии unreal speccy, то чел особо и не нуждается в той, которую сделал я.

И вообще - не стоит наезжать и подскальзываться на ровном месте. Создаете впечатление неблагодарного.

Dexus
26.08.2005, 13:06
Вывел номер регистра #FF - первый чип, #FE - второй (как у ТС)
#FD - включается режим чтения статуса и битов таймера у первого чипа
#FC - у второго.
С 255/254 понятно.
а как работают 253/252?
ну сделал я out 65533,253
а потом откуда читать то? из 49149?

lvd
26.08.2005, 13:16
С 255/254 понятно.
а как работают 253/252?
ну сделал я out 65533,254
а потом откуда читать то? из 49152?

Какой ужос - десятичная система =)

Читать оттуда же, откуда и АУк читается обычно - из #FFFD. Т.е. например сначала out (#FFFD),#FD, потом in (#FFFD) - прочитали статус, потом out (#FFFD),#FF и снова как обычно.

Dexus
26.08.2005, 15:34
Какой ужос - десятичная система =)
Я же человекъ :)

Насчет портов вроде как понятно.

Во-первых, сделал вывод YM2203 через отдельный звуковой поток (thx 2 SMT), всвязи с чем нагрузка на проц из-за генерации FM убавилась.
А сейчас мучаюсь чтобы прескейлер (2d-2f) влиял на сам AY.
Это ТАКОЙ геморрой.. в код дохрена изменений пришлось внести..
И с этими переинициализациями потоков.. без этого вообще иногда при переключении - подвисон какой-то образуется...
Пока выкладывать не буду - потому как предвижу море глюков из-за этой возможности смены частоты налету, причем ДЛЯ КАЖДОГО AY НЕЗАВИСИМО.
А в Unreal изначально это не было предусмотрено вовсе.
Потом сделаю чтение из порта. И буду думать как тайминги все соблюдать (таймеры и сигнал busy).
Причем - у YM2203 есть фичка одна, связанная с таймером A. Есть режим, при котором нота автоматически "включается" как только таймер доходит до нужного значения...
По крайней мере что-то подобное "читается" из исходников эмулятора.
В документациях подобное совершенно не описано. И каким образом потом подгонять под реальный YM2203 - ума не приложу.
В документации той, по СЕГЕ (ссылку на которую тут неоднократно давали), вообще никак не описано действие портов #9x - написано reserved. А в реале (и по даташитам) там указаны SSG-EG регистры. Это интересная штука вообще. Нечто вроде "огибающей" в обычном AY. Только тут она действует на один оператор подобным образом. На каждый из 3х4 операторов независимо. Можно зацикливать огибающие FM операторов, создавая интересные эффектики.

Кстати, тут еще промелькивало, что якобы YM2203 умеет делать двухоператорный синтез. Так вот - это деза. Он четырехоператорный. Только основные его минусы - что в нем тип волны ТОЛЬКО синусоида, и нет LFO генератора. Это в определенных местах ущемляет возможности, но тем не менее, этих возможностей в синтезе тембров и звуков - море.

SMT
26.08.2005, 16:14
в код дохрена изменений пришлось внести.. И с этими переинициализациями потоков.. без этого вообще иногда при переключении - подвисон какой-то образуется... Пока выкладывать не буду - потому как предвижу море глюков из-за этой возможности смены частоты налету, причем ДЛЯ КАЖДОГО AY НЕЗАВИСИМО.А в Unreal изначально это не было предусмотрено вовсеподожди, а разве в MAME не было кода эмуляции нижних регистров YM? может проще взять полностью FM+SSG?

Dexus
26.08.2005, 16:19
подожди, а разве в MAME не было кода эмуляции нижних регистров YM? может проще взять полностью FM+SSG?
Там эмулятор AY8910 - отдельный. Там вообще много каких процессоров есть эмуляции. Но они все через извратную систему драйверов (хотя на самом деле куда более удобно чем у Вас, потому как разрабатывалось унифицировано, и ради расширябельности свободной).
Конкретно AY8910 подключается по указателю, как практически отдельный эмулятор, и просто на него ссылается, и передаются ему регистры. Так же как и передается ему просто текущая его частота.. "налету". Но вообще они в совсем разных местах :)
Кроме того - этот новый не будет обладать возможностями ваших разных уровней громкостей, или диджитал сэмплов, или стерео-раскладки.
Я хочу вносить _минимум_ для того чтобы по максимуму похоже эмулировалось. :)

SMT
26.08.2005, 17:22
вообще вся эта переинициализация - лишние тормоза. ведь на самом деле это регистры делителя (а внешняя частота AY постоянна), и нужно всего лишь поправить расчёт fa,fb,fc,fn,fe в функции AY::write, умножив эти периоды на текущий делитель частоты

digital samples можно выкинуть (сам это собираюсь сделать, точнее найти более забавную замену)

Dexus
26.08.2005, 18:04
вообще вся эта переинициализация - лишние тормоза. ведь на самом деле это регистры делителя (а внешняя частота AY постоянна), и нужно всего лишь поправить расчёт fa,fb,fc,fn,fe в функции AY::write, умножив эти периоды на текущий делитель частоты
Даже если не происходит никаких записей в регистры - частота должна меняться.
С изменением периодов fa/fb/fc/fn/fe - спасибо за мысль. Попробую такой алгоритм внедрить.

Диджитал самплес - интересная штука (порой слушал), но к сожалению кривовато реализовано. То ли буффер криво ставится, то ли еще что - но щелчки постоянно прут (с частотой 50 гц)...

SMT
26.08.2005, 19:55
Даже если не происходит никаких записей в регистры - частота должна меняться
да, тут облом - придётся расчитывать текущий fa в начале AY::flush и использовать его

Dexus
27.08.2005, 04:12
да, тут облом - придётся расчитывать текущий fa в начале AY::flush и использовать его
Ну есть один способ. Частота меняется как 1/2х, 1х, 2х. Т.е. кратно двум. Делить частоту - самое простое. А вот умножать...
Поэтому наверно придется работать с умноженной частотой.. и даже 3.5Мгц превратится в 7...
Да и вообще.. частота эта меняется не так часто, поэтому расчеты всяких этих temp.mult_const2, temp.mult_const3, ay.mult_div, temp.ay_div2, последующим c restart_sound() не приведет ни к чему критичному.

Выкладываю новую версию (с работающим прескейлером) http://inatix.com/spool/unreal031b_YM2203.zip .

SMT
27.08.2005, 04:23
Делить частоту - самое простое. А вот умножатьпо моему, одинаково просто как делить, так и умножать на степени двойки (да, ты же в десятичной системе думаешь :))

Dexus
27.08.2005, 10:50
http://inatix.com/spool/unreal031b_2203_full.zip
с конфигом и с ромами..
http://inatix.com/spool/2203test2.zip
хобетовский файлик, для теста (внутри кодовый фрагментик в 6 килобайт с адреса 30000).. не очень конечно качественный. короткий.. тут расширенная версия (типа эхо сделано за счет задержки и перекидывания на второй чип с меньешй громкостью).
лучшего теста-примера пока нету по причине отсутствия нормального инструментария..

Добавление: Почему то при компиляции с оптимизацией (особенно под п4) наблюдается странный эффект - звуки совсем запортаченные.. как будто без операторов вовсе... голимая синусоида.

Dexus
29.08.2005, 19:26
Кстати вот попробовал сделать стерео (нулевой чип направо 0.8 правый 0.6 левый и наоборот) - намного прикольней звучит, и сильного стерео разнобоя нету.

SMT
29.08.2005, 19:50
"Даже если не происходит никаких записей в регистры - частота должна меняться"
да, тут облом - придётся расчитывать текущий fa в начале AY::flush и использовать его
что-то я не подумал: можно пересчитывать при записи в регистр делителя


с оптимизацией (особенно под п4) наблюдается странный эффект - звуки совсем запортаченные
ищи глюк у себя. я раз 20 на такое нарывался: ну всё думаю, точно глюк ms-компилятора. и каждый раз (кроме одного случая, причём глюк исправили в 7-й версии без моего участия) оказывалось, сам дурак :)
хотя, бывает, переменная хитро меняется вне функции в обход поля видимости оптимизатора - попробуй компильнуть без /Oa

Dexus
29.08.2005, 20:27
что-то я не подумал: можно пересчитывать при записи в регистр делителя
Делитель не даст нужной точности. Не изменяя частоту вызова ay.flush() качественно не получится сделать...
И вообще - я решил этот вопрос уже, без лишних переинициализаций: после изменения всех коэффицентов меняю пропорционально изменению частоты переменную t (в пределах одного фрейма). Все встает ровно, никаких подвисонов и дыр.

ищи глюк у себя. я раз 20 на такое нарывался: ну всё думаю, точно глюк ms-компилятора. и каждый раз (кроме одного случая, причём глюк исправили в 7-й версии без моего участия) оказывалось, сам дурак
хотя, бывает, переменная хитро меняется вне функции в обход поля видимости оптимизатора - попробуй компильнуть без /Oa
Вот без оптимизации глобальной все нормально и получается... :) А глюк этот явно не у меня - а в МАМЕвском эмуле. И не глюк это вовсе.. Часто такое бывает, в дебаге работает, в оптимизированной версии - глючит.

Сделал автоматом приоритет HIGH, и попробовал инверсию левого-правого канала.. получается интересно...
для нулевого чипа коэффиценты L:-0.8,R:0.6 для первого L:0.8,R:-0.6

SMT
29.08.2005, 21:45
Часто такое бывает, в дебаге работает, в оптимизированной версии - глючитзначит, глюк в программе, а работает - случайно :)

Dexus
29.08.2005, 22:23
значит, глюк в программе, а работает - случайно
Да нет же. Это компилятор просто убивает видимо места которые все-таки нужны.
Это багофича компилера. Отключаешь глобальную оптимизацию и все работает.

SMT
30.08.2005, 07:07
а локализовать ошибку сможешь? типа, сделать маленький кусок кода, который работал бы по-разному при разных оптимиациях

Dexus
30.08.2005, 08:02
локализовать ошибку сможешь? типа, сделать маленький кусок кода, который работал бы по-разному при разных оптимиациях
А нафига? просто убираю глобальную оптимизацию, как советуют все программисты.
Я лучше на что-нибудь более полезное время убью, чем на копание в чужом абсолютно непонятном коде (MAME) и отлавливание багофич компилятора.

У меня сейчас другой глюк всплыл - время от времени (в определенных случаях) 100% проца жрет. Судя по всему из-за вызова sound.flush().
Иногда почему-то tick оказывается БОЛЬШЕ endtick. А последствия этого очень неприятны.
И вообще не могу разобраться с этим SOUND_STREAM::flush(). Непонятно че за фильтры, че за скейлы, каким макаром она умудряется работать на два звуковых потока (для обоих чипов), ни комментариев... ничего...
Не странно что никто альтернативные ветки не делает, просто разобраться в этом абсолютно нереально. Дохрена мест в которых ВООБЩЕ ничего не понятно.

Dexus
30.08.2005, 15:27
http://inatix.com/spool/2203test2.zip - снап с примером
http://inatix.com/spool/unreal031b_YM2203_001.zip - обновление версии (ехешник only):
- добавил LED'ы (все 6 каналов, все операторы и алгоритмы цветами)
- вроде как победил переключение частоты в рилтайме
- сделал PROIRITY_HIGH, чтобы звук не рвался (правда при нумлоке винда становится однозадачной:) ... потом попробую подфиксить )
- поправил по просьбе SMT строки при запуске

Вопрос к lvd или тому кто пробовал вообще с реальным работать - интересует - действует ли переключение частоты (регистры 2d-2f) в реалтайме для FM или нужно переинициализировать ноту чтобы новая частота задействовалась?
Тот же вопрос и по поводу AY.

SMT
30.08.2005, 18:37
Иногда почему-то tick оказывается БОЛЬШЕ endtickищи ошибку в движке 2203, потому что внутри flush в конце присваивается endtick=tick

вообще не могу разобраться с этим SOUND_STREAM::flush(). Непонятно че за фильтры, че за скейлы, каким макаром она умудряется работать на два звуковых потока (для обоих чипов)да, тут очень злая оптимизация. для примера можно посмотреть, сколько жрёт AY_Emul при порядке fir-фильтра 64 (у меня на все фильтры менее 1%), к тому же если вспомнить сколько независимых потоков у unreal... (beeper, tape, 4xGS, 2xAY, covox/SD...)

Dexus
30.08.2005, 19:25
http://inatix.com/spool/unreal031b_YM2203_001a.zip
Сделал чтобы автоматически приоритет менялся. Отключил проверку на NT.
Т.е. на 98 запустится, но работа не гарантируется. Я на виртуалке запускал - звук то рваный то нормальный был. В общем - на свой страх и риск :)

ищи ошибку в движке 2203, потому что внутри flush в конце присваивается endtick=tick
Ну почему сразу 2203? он всего лишь генерит один такт. И не виснет. А Flush так глючит начинает когда переключаешь частоту посреди такта, и текущий указатель мог назад перенестись - пофиксил я это но и чисто технически неверно: внутри flush нет проверки на то что endtick<tick. В этом случае ведь подвисает все.
да, тут очень злая оптимизация. для примера можно посмотреть, сколько жрёт AY_Emul при порядке fir-фильтра 64 (у меня на все фильтры менее 1%),
Да я "примерно" врубился че к чему. но слишком "примерно"... Немного не понимаю зачем такие сложности :)

SMT
30.08.2005, 20:32
Немного не понимаю зачем такие сложности сделай проще :)

внутри flush нет проверки на то что endtick<tickпотому что предполагалось, что движок работает только вперёд по времени, зачем тормозить лишними проверками (кстати, в прошлых версиях unreal проверка была, пока я не отладил звук полностью). я бы всё-таки сделал например изменение шага счётчиков не на 1, а на делитель, если пересчитывать границы счёта не хочешь. а такты генератора бы не трогал...

на 98 запустится, но работа не гарантируется. Я на виртуалке запускал ну-ну. а файл пробовал открыть/сохранить?

Dexus
30.08.2005, 20:48
ну-ну. а файл пробовал открыть/сохранить?
кнопки f2/f3 не работают :)
Я же ничего не правил, просто убрал запрет запуска на 98х ради проверки. Но полноценной 98й нету. только через VMWare. Потом еще попробую на VirtualPC. Может быть что и получится в результате. Но сильно сомневаюсь.Потому как основа не очень расширябельная и не приспособленная для подобного.

SMT
30.08.2005, 21:29
btw, save/load пофиксить очень легко ;)

SMT
30.08.2005, 21:33
основа не очень расширябельная и не приспособленная для подобногоне нравится - не ешь :(

Dexus
30.08.2005, 22:03
не нравится - не ешь
Да не в этом дело. Я же говорил что основная проблема только в том, что лично для меня ваш код - чужой. и в нем разобраться _очень_ сложно. Я конечно стараюсь, но все-таки очень много непонятностей. А 98е _не_мне_ нужны. Есть же люди на 98х. И им надо тоже дать возможность. Пусть даже без определенных режимов, с определенными ограничениями - но это лучше чем ничего.

Вообще.. Кто нибудь проверял? тестировал? пробовал эксперементировать с YM2203?

fan
31.08.2005, 05:19
Т.е. на 98 запустится, но работа не гарантируется.
Фурычит, но невозможно выбрать файло из менюшки (не реагирует на нажатие кнопки [ ... ], что либо можно запустить только из командной строки.
Это изличимо (для Win98)?

P.S. Тестовый файлик играет нормально .

Dexus
31.08.2005, 06:09
Это изличимо (для Win98)?
SMT сказал, что излечимо, поэтому надежды есть :)

SMT
31.08.2005, 06:45
Dexus, используй структуру OPENFILENAME_NT4 с соответствующей инициализацией полей lStructSize. я не хочу её использовать, потому что пропадёт side bar с common places от win2000

Bulba
31.08.2005, 10:43
да, тут очень злая оптимизация. для примера можно посмотреть, сколько жрёт AY_Emul при порядке fir-фильтра 64 (у меня на все фильтры менее 1%)

В Ay_Emul "в лоб" реализована формула FIR-фильтра, оптимизировать я даже и не пытался. Месяц назад хотел добавать FIR с вычислениями через FFT (должно снизить загрузку процессора и без оптимизации), да слишком многое пришлось бы переделать в движке, бросил...

... Ay_Emul: Gogin - Maski Show Theme

Dexus
31.08.2005, 11:19
http://www.intramail.ru/~dex/unreal031b_YM2203_001b.zip - в винде98 работают файловые менюшки, и в то же время places в 2к/хр остались, и колесо работает
http://www.intramail.ru/~dex/YM2203.ZIP - дока (чуть переделанный кусок докуменатции по СЕГЕ, потом немножко дополню кое какой инфой)
старый сайт чето глючит.

Кстати вот я тут не понял - или под 98 левый и правый шифт не отличается как-то или под эмулируемой 98 такой глюк... SMT, ты с этим не сталкивался?

SMT
31.08.2005, 19:52
с шифтом сталкивался, победить не смог, что directInput, что win32 api никак не отличают. но способ есть (не помню только в каком эмуляторе видел различие). хотел положить его в очередь на взломку, но теперь уже без живой 98-й нет смысла


В Ay_Emul "в лоб" реализована формула FIR-фильтрамогу расказать, что у себя придумал: ЦАПы генерируют кусочно-постоянные функции (между выводами в ЦАПы - константа). пусть x - сигнал, f - импульсная характеристика. тогда самый тяжёлый цикл

y(k)=... + x(i+1)*f(j+1)+x(i+2)*f(j+2)+...+x(i+n)*f(j+n) + ...,

где x не изменяется в период от (i+1) до (i+n) можно записать как

x(i+1)*(f(j+1)+f(j+2)+..+f(j+n)) = x(i+1)*(s(j+n)-s(j)),

где s(m)=f(1)+f(2)+...+f(m) - посчитана заранее. то есть на n постоянных семплах (а в оверсемплинге у меня частота около 3mhz) вместо n умножений и сложений - только одно. заодно не важно, какая частота оверсемплинга, всё равно 1 умножение на 1 вывод в ЦАП

Dexus
31.08.2005, 21:08
с шифтом сталкивался, победить не смог, что directInput, что win32 api никак не отличают. но способ есть (не помню только в каком эмуляторе видел различие). хотел положить его в очередь на взломку, но теперь уже без живой 98-й нет смысла
У меня "живой" 98-й тоже нету. Однако поставил VMWare(дома) и VirtualPC (на работе), и вполне так неплохо можно проверить работоспособность на эмулируемой 98-й :)
Надо-таки разрыть как шифты разные детектить... И отфиксить это дело!

SMT
31.08.2005, 22:31
если разрулишь, скажи как - просто интересно

Dexus
31.08.2005, 22:49
если разрулишь, скажи как - просто интересно
Если бы.... Если бы вы направили меня на приложение которое под 98ми умеет различать нажатия подобные.. Подскажите уж!
Я единственное что могу делать - отличать ОТДЕЛЬНОЕ нажатие левого-правого шифта, но не могу отличать совместное нажатие (когда шифт нажат совместно с любой другой кнопкой). Это делается просто - через чтение из порта 60h. Ведь под 9x/me чтение напрямую из портов не запрещено.
Есть вариант единственный который будет работать в 95 и выше - это рассматривать msg.lParam

SMT
01.09.2005, 00:07
Если бы вы направили меня на приложение я же писал - не помню какое. это один из win-эмуляторов. по-хорошему, нужно всю коллекцию перешерстить

Есть вариант единственный который будет работать в 95 и выше - это рассматривать msg.lParamот какого сообщения?

Dexus
01.09.2005, 00:09
от какого сообщения?
именно через WM_KEY[ON/OFF] -> msg.lParam
Только интересную штуку заметил - это когда шифты одновременно нажимаются, то при отпускании одного из них событие keyoff не приходит... только при отпускании последнего из шифтов. С Ctrl и Alt такой хрени нету. Сделал что при отпускании одного шифта обе кнопки отключаются, и срабатывает как раз как надо.

я же писал - не помню какое. это один из win-эмуляторов. по-хорошему, нужно всю коллекцию перешерстить
Кстати - в Кладовском EmuZWin (думаю что именно его вы и имели в виду) я заметил глюк непонятный, когда нажимаешь Shift+P (кавычку), быстро.. то кавычка начинает циклически рисоваться пока не тыкнешь еще раз но медленно и отчетливо. Видимо тоже что-то с этими сообщениями связано.
В общем вот версия 0.01c в которой и в 98й работают и шифты и альты и контлы слева-справа. http://www.intramail.ru/~dex/unreal031b_YM2203_001c.zip

LVD, ты проигнорировал мои сообщения выше.. нехорошо! Ответь пожалуйста насчет переключения частоты через 2d-2f. работает ли оно мгновенно или дожидается ввода частоты (в ФМ)

Dexus
01.09.2005, 10:02
Читать оттуда же, откуда и АУк читается обычно - из #FFFD. Т.е. например сначала out (#FFFD),#FD, потом in (#FFFD) - прочитали статус, потом out (#FFFD),#FF и снова как обычно.
При попытки реализовать это возникает вопрос - зачем такие сложности???
Переключалка на ff/fe и еще одна переключалка на fd/fc. первая для записи вторая для чтения. Причем, видимо они могут быть независимыми??
Т.е. записал out fffd,ff и сразу же этим out fffd,fc, чем установил режим записи в чип 0 и чтения из чипа 1?
Пишем в один, а читаем состояние другого? Или как?
\
ЗЫ: Вот что значит отсутствие чётких спецификаций.

Ronin
01.09.2005, 18:16
запись номера регистра ff/fe (bit0) - переключения чипа (0/1)
запись ff/fd или fe/fc (проще говоря - bit1) - переключения обычный/статус для соответствующего чипа.

Dexus
01.09.2005, 18:53
запись номера регистра ff/fe (bit0) - переключения чипа (0/1)
запись ff/fd или fe/fc (проще говоря - bit1) - переключения обычный/статус для соответствующего чипа.
Не въехал. Что за "переключение обычный/статус"?
Разве можно записывать в статус?
...
Вопрос в чем? Вопрос в том - из какого чипа будет происходить чтение - из того-же куда поисходит запись, или как?
Дайте пример, наконец :)
Все комбинации .. типа ff - переключить на чип 0 для записи и на чип 0 для чтения
fe - переключить на чип 1 для записи и на чип 0 для чтения ...
итд..
а то так я не въезжаю :(

Ronin
01.09.2005, 19:01
короче, бит0 - управляет номером чипа (0/1).
а бит1 - подключением статус-регистра. когда бит1=1 - это обычная схема портов AY, а когда бит1=0 - то на чтение (вместо регистров AY) подключается статус-регистр от ym2203. вот и все.

эти биты защелкиваются только при записи номеров регистров fc..ff (т.е. запись скажем 00..0f и других, на них не влияет).

т.е. делаем холостую запись номера регистра -
fc - далее следует чтение статуса чипа 1
fd - далее следует чтение статуса чипа 0
fe - далее следует работа с чипом 1
ff - далее следует работа с чипом 0

Dexus
01.09.2005, 19:08
Окей, примерно понятно. Теперь другой вопрос - если после "out #fffd,#fc"
будет выполнена запись в #bffd -куда оно пойдет? вникуда? или впишется в AY?

Т.е. бит1 управляет только "набором" для чтения, а на запись будет влиять только бит0?

Ronin
01.09.2005, 19:18
Вообще говоря, "в спецификации" :) это не декларируется, в том смысле что положено только читать статус.
А на деле придумано две схемы в которых сделано и "полное" переключение, когда запись уйдет в никуда, и частичное - когда запись пойдет в AY. Так что пока это до конца не решено.

Dexus
01.09.2005, 19:24
Так что пока это до конца не решено.
Вот.. Желательно бы решить.
ИМХО частичное лучше, когда запись все-таки не будет уходить "в никуда", а будет идти куда надо. Чтобы в случае чего избегать дополнительных переключений. А то получится что каждый раз нужно переключать чтобы прочитать статус и записать регистр YM2203.

Вот еще вопрос по поводу железа который волнует - это стереоразводка. Я у себя в эмуле (YM2203) сделал стереоразвод где-то 1/0.75. Нулевой чип направо первый чип налево. При одиночном звучании особо "однобокости" не слышно. Т.е. все более-менее чинно. А при звучании обоих чипов - стереоразводка помогает сделать звук менее плоским...

lvd
01.09.2005, 20:25
Окей, примерно понятно. Теперь другой вопрос - если после "out #fffd,#fc"
будет выполнена запись в #bffd -куда оно пойдет? вникуда? или впишется в AY?

В той схеме, что на рассыпухе - запишется в последний установленный регистр.

Dexus
02.09.2005, 00:46
я тут немного попробовал перегнать музыки.. коротенькие фрагменты.
с сеги :)
http://inatix.com/spool/ddtests.zip
коротенькие минитреки с дабл дракона 2.
перегонял с формата .gym
проблема тока в том что они сильно большие (в основном)

Ronin
02.09.2005, 10:04
ИМХО частичное лучше, когда запись все-таки не будет уходить "в никуда", а будет идти куда надо. Чтобы в случае чего избегать дополнительных переключений
можно, в принципе чтение регистров только для AY-части имеет смысл.

кстати, LVD, а что ты говорил читается из ФМ-регистров 2203 ? вроде ничего хорошего оттуда читаться не должно - может безо всяких fc,fd сделаем чтение из ФМ-реистров - чтением статуса ?

Dexus
02.09.2005, 13:24
Еще немножко перегнатой GYM музыки (с сеги). Снапами сохранял.
http://inatix.com/spool/2203tests3.zip

fan
02.09.2005, 19:39
Круто однако. Ещё больше мидишный порт захотелось :)

2 ALL
Выше был линк - http://www.cityofberwyn.com/schematics/PDF/DoubleDribbleSchem.pdf
Там в обвязке YM2203 торчит зверь 4066 (управляется чипом YM2203), собсно что он делает ? Эффект аля хорус ? Может стоит такой же присобачить ?

lvd
02.09.2005, 23:33
Круто однако. Ещё больше мидишный порт захотелось :)

А мне нормального трекера спековского захотелось! =)


Выше был линк - http://www.cityofberwyn.com/schematics/PDF/DoubleDribbleSchem.pdf
Там в обвязке YM2203 торчит зверь 4066 (управляется чипом YM2203), собсно что он делает ? Эффект аля хорус ? Может стоит такой же присобачить ?

1. Он только на AY-каналы действует
2. по сути включает ФНЧ замыканием через кондюки на землю.
3. НАФИК НЕ НУЖЕН!

lvd
02.09.2005, 23:34
кстати, LVD, а что ты говорил читается из ФМ-регистров 2203 ? вроде ничего хорошего оттуда читаться не должно - может безо всяких fc,fd сделаем чтение из ФМ-реистров - чтением статуса ?

Дык можно, только вот ещё нес-ко корпусов добавить... всего лишь.

Dexus
03.09.2005, 00:00
http://inatix.com/spool/2203tests4.zip - добавил еще "примеров" звучания (все в 128k sna). теперь их 41 штука.. среди них есть из дабл дракона титульная :)

Dexus
03.09.2005, 11:42
Кстати я тут посмотрел и прикинул.. Ведь есть режим с расширенным 3м каналом.. 3х канала получается два...
есть алгоритмы с 4 по 7 которые не FM смешивают, а обычно , как разные голоса.
Алгоритм 4 - 1*2 + 3*4 (2 двухоператорных голоса)
Алгоритм 5 - 1*2 + 1*3 + 1*4 (3 голоса с общим оператором)
Алгоритм 6 - 1*2 + 3 + 4 (1 двухоператорный и 2 обычных)
Алгоритм 7 - 1 + 2+ 3 + 4 (4 обычных голоса).
Обычные голоса - это тупые синусоиды.
Но тем не менее за счет разного управления частотами и смешением операторов можно на 3м канале добиваться расширения звучания от 2х до 4х инструментов сразу. а 4й оператор так еще и ФМ синтез дает. Так что в сумме комбинаций дофига, и можно аккорды гонять тока по одному (третьему) каналу.
Это получается 4 чисто 4хоператорных канала + 2 комбинированых.
Эти два комбинированых могут быть расширены в 4 двухоператорных или как угодно. МОжет быть даже и 8 синусоидальных. Т.е. фактически многозвучия можно добиться гораздо бОльшего, нежели это использовалось в ямахе или сеге. 8 уж точно.
В общем расширеный режим для 3го канала дает реально большое поле для экспериментов.

newart
03.09.2005, 16:39
Обычные голоса - это тупые синусоиды.
"Тупая синусоида" - может выдавать нехилый басс, а это уже неплохо.

Dexus
03.09.2005, 23:32
"Тупая синусоида" - может выдавать нехилый басс, а это уже неплохо.
Голая (тупая) синусоида - достаточно глухой звук, на фоне звенящих ФМ звуков он будет еле заметен.

Немного дополнил и подкорректировал документацию по программированию YM2203. http://www.intramail.ru/~dex/YM2203.ZIP
Небольшая просьба для тех у кого есть железный (экспериментальный) вариант сабжа - взять хобетовский файлик (бейсиковская мелкая программка для теста): http://www.intramail.ru/~dex/2203SSG.ZIP
и записать звук, который в результате ее получится.
Есть небольшие подозрения насчет работы SSG-EG регистров в эмуляторе.

CHRV
16.09.2005, 19:51
Еще немножко перегнатой GYM музыки (с сеги). Снапами сохранял.
http://inatix.com/spool/2203tests3.zip
А как перегнать в какой нить реальный формат, а то я эмулю в основном не пользуюсь, хотца формат чтобы на реале моно запустить.

Dexus
16.09.2005, 20:11
А как перегнать в какой нить реальный формат, а то я эмулю в основном не пользуюсь, хотца формат чтобы на реале моно запустить.
Ну там если эти снапы смотреть на уровне файлов - в большинстве случаев со смещения #25ab (адрес 26000) начинается код, а данные заканчивается последовательностью 00FF. В обрывках batman'овских - идет со смещения #21c3 (адрес 25000), а _Batman_m11 - заканчивается со смещением #c01A (адрес 65535 - фактически до конца памяти). Можно просто вырезать эти куски файлов.
А без заморочек запустить можно только http://inatix.com/spool/2203tests3.zip . там хобетовский $c :)
Значит сделали в железе? И что там со стерео и с регистрами состояния?

CHRV
16.09.2005, 20:29
Ну там если эти снапы смотреть на уровне файлов - в большинстве случаев со смещения #25ab (адрес 26000) начинается код, а данные заканчивается последовательностью 00FF. В обрывках batman'овских - идет со смещения #21c3 (адрес 25000), а _Batman_m11 - заканчивается со смещением #c01A (адрес 65535 - фактически до конца памяти). Можно просто вырезать эти куски файлов.
А без заморочек запустить можно только http://inatix.com/spool/2203tests3.zip . там хобетовский $c :)
Значит сделали в железе? И что там со стерео и с регистрами состояния?
И все таки если несложно сделай, самому не очень хочется сидеть васики писать, тем более смещения с размерами угадывать :).
Да сделал сегодня, правда одну половинку ТурбоСаундФМ. SSG разложено по ABC, а FM идет на оба канала.
Фотки завтра положу, у меня щаз цифровика нет под рукой!

Dexus
16.09.2005, 20:52
И все таки если несложно сделай, самому не очень хочется сидеть васики писать, тем более смещения с размерами угадывать
Тяжело :) Тут никакие васики не нужны - просто в hiew повыделять и поудалять куски блоков ненужные. Автоматически это, наверно тоже можно.. все-таки некоторые фрагменты кода воспроизводилки - одинаковые... но это надо писать "преобразователь" только для этого дела.. это очень вломно. А сидеть вынимать вручную из каждого - тем более вломно :)

SSG разложено по ABC, а FM идет на оба канала
ФМ надо разбалансировать где-то на 15% от центра...
А насчет механизма чтения регистра статуса? То решение что изначально предлагалось (бит 1) - какое-то корявое, нелогичное с точки зрения программинга...

CHRV
16.09.2005, 21:15
Тяжело :) Тут никакие васики не нужны - просто в hiew повыделять и поудалять куски блоков ненужные. Автоматически это, наверно тоже можно.. все-таки некоторые фрагменты кода воспроизводилки - одинаковые... но это надо писать "преобразователь" только для этого дела.. это очень вломно. А сидеть вынимать вручную из каждого - тем более вломно :)
Сделай хотя бы какой нить - чисто послушать :).


ФМ надо разбалансировать где-то на 15% от центра...
А насчет механизма чтения регистра статуса? То решение что изначально предлагалось (бит 1) - какое-то корявое, нелогичное с точки зрения программинга...
Зато с точки зрения схеминга, очень даже ничего, хотя тут обсуждаемо! Ибо вся дешифрация в ПЛМке.

Dexus
16.09.2005, 21:34
Сделай хотя бы какой нить - чисто послушать
Послушать быстро можно http://inatix.com/spool/2203test3.zip ... Там хобетовский кодовый файлик. Не думаю что будет проблема его на реале загрузить.

Зато с точки зрения схеминга, очень даже ничего, хотя тут обсуждаемо! Ибо вся дешифрация в ПЛМке.
А без ПЛМки? Если кто-то сам захочет спаять? Вся прелесть наших клонов была в том, что сбацать их мог кто угодно. Вот например такое: http://www.intramail.ru/~dex/len1.jpg . Собрали по одной только схеме. Ленинград. :)

CHRV
16.09.2005, 21:40
А без ПЛМки? Если кто-то сам захочет спаять? Вся прелесть наших клонов была в том, что сбацать их мог кто угодно. Вот например такое: http://www.intramail.ru/~dex/len1.jpg . Собрали по одной только схеме. Ленинград. :)
Дык код ПЛМки будет открыто доступен, а ее запрограммировать даже проще чем ПЗУ (программатор одна микросхема на LPT порт). Так что хватит в дремучих пещерах жить пора переходить на ПЛМки и микроконтроллеры :).

jtn
16.09.2005, 21:40
Зато с точки зрения схеминга, очень даже ничего, хотя тут обсуждаемо! Ибо вся дешифрация в ПЛМке.
и плмный и рассыпной варианты имеют право жить, поэтому считаю, что нужно оставить все как есть, если кто нибудь не предложит иной доступ к статусу при поставленных условиях.

p.s. снапшоты можешь поконвертить в *.z80 - для них есть лоадер под трдос.

elf/2
19.09.2005, 11:01
p.s. снапшоты можешь поконвертить в *.z80 - для них есть лоадер под трдос
а если просто взять unSNAP и сделать хоть из .sna хоть из z80 обычную хобету?

lvd
07.10.2005, 18:57
http://lvd.nm.ru/tfm/tfm.mp3

соответствует tt.C

По сравнению со схемой выход FM задран более, чем в 10 раз (резюки 4.7к).


Частота цапа - около 50 кгц (точно сказать не могу, мерял осциллоглядом). Частота клока на цап - 3.5/3 мгц.

Dexus
07.10.2005, 20:20
Мда.. вот это лажа так лажа :)
Вывод из этого скорее всего только один - нужно ЖДАТЬ сигнала wait.

Atari
02.11.2010, 11:10
Ну да,он самый и есть.
вот:http://tv-games.narod.ru/hard/megakey/images/image011.jpg

это оно?