Вот такая весчь:

ZXNet эхоконференция «music.zx»

От Surfin' Bird Кому All 08.11.2005

Hello, GriV Офигенная вещь! РУЛЕЗ! Пропустил в своё время:( А что если сделать, чтобы с СД диска играло? Тогда можно будет такую частоту забадяжить?

От alexeenko Кому All 09.11.2005

Hello, Corpsegrinder А это не чище звучит ? Демка польская, называлась MIX #2. Файл: 1.ZIP http://zx.pk.ru/attachment.php?attachmentid=1909

От Surfin' Bird Кому All 12.11.2005

Hello, GriV Gri> Hе понял, ещё раз как с CD? Hу, я про это: Gri> чисто теоретически (на самом деле просто ломает меня прогу писать) Gri> можно написать декодер-проигрыватель, который бы работал со средней Gri> частотой декодирования 233,333 Гц = 233 кГц - это почти что винилка Gri> (спектрум по качеству приближается к винилке... CD-audio отдыхает :D Gri> ), соответсвенно можно и кодер на паскале переписать, однако вот Gri> здесь такой есть расчёт - 1) Это непакующий кодер 2) В связи с этим Gri> его время работы для всей 256кБайт памяти скорпиона есть чтото около Gri> 8-9 секунд :(. Hасколько понял, то проблема в том, что памяти слишком мало? А что если с CD подгружать всё время?

От Valery Grigoriev Кому All 12.11.2005

Hello, Surfin' Bird Sur> Офигенная вещь! РУЛЕЗ! ;) Sur> Пропустил в своё время:( Sur> Sur> А что если сделать, чтобы с СД диска играло? Тогда можно будет такую Sur> частоту забадяжить? Hе понял, ещё раз как с CD?

От Valery Grigoriev Кому All 12.11.2005

Hello, Surfin' Bird Sur> Hу, я про это: Sur> Sur> Hасколько понял, то проблема в том, что памяти слишком мало? А что Sur> если с CD подгружать всё время? Если это можно сделать без участия проца... ;))) то пожалста, тока как такое без участия проца можно сделать ума не приложу ;))) Если кто на реальном спекке запускал, заметят, что там вначале идёт треть диска в память - это почти 30 секунд - потом только начинается вопроизведение - те же 30 секунд в первом сампле и минута во втором... Тут именно что не получится грузить, для видео дискретность при загрузке не так сильно заметна, а вот для аудио к несчастью очень...

От Valery Grigoriev Кому All 12.11.2005

Hello, Surfin' Bird Sur> Hу, я про это: Sur> Sur> Hасколько понял, то проблема в том, что памяти слишком мало? А что Sur> если с CD подгружать всё время? Ещё есть такой вариант, что имеются какие то данные которые подаются в порт - чтобы их без управления (по крайней мере постоянного) можно было их оттуда снимать (простой командой IN A,(port)), так тоже можно - так даже будет прощё - потому что работать с таким потом удобней - не надо за границами памяти следить - а прога на прерываниях репает опрос клавиатуры - тогда вообще класс. Hо сомнительно чтобы всё было так просто...

От Orionsoft Кому All 12.11.2005

Hello, GriV GriV ты молодец ! :)

От Сергей Данилов Кому All 14.11.2005

Hello, CityAceE Еще в Born Dead 2 [http://trd.speccy.cz/press/borndead/BORN_02.ZIP] было про это, с демонстрацией.

От Valery Grigoriev Кому All 17.11.2005

Hello, GriV P.P.S. Hе хочу забегать вперёд... но я почти закончил ещё более производительный алгоритм, правда я пока семплы не сделал для него - собрал только декодер. Когда кодер соберу и отлажу выложу... по всем замашкам это будет просто отличное звучание... У меня была в разработке более производительная в смысле скорости (почти в 1,5 раза быстрей!) схема, аналогичная приведённой двумя постами выше, однако 4-5 секунд звучания (на 256 кб!) я думаю мало кого устроят - просто невозможно отличить уровень звучания от предыдущего варианта - поэтому я даже не стал её развивать.

От Марк Антонов Кому All 09.10.2006

Hello, GriV Респект. здраво. но можно попробовать замутить загрузку с HDD в реалтайм - будет не сильно отличаться от переключения банков (анрил кстати умеет мулить хдд). а если извратиться то и одновременно с загрузкой с флопа! (вариант - кэш+турбомод)

От TomCaT Кому All 09.10.2006

Hello, The Exploited нет, руль безвопросный. Особенно, когда памяти 1м. А если скорость работы с хардом действительно несмертельна для звука, то результат мог бы выйти убойный наповал. Hо тут все тки DMA нужОн, наверное...

От Марк Антонов Кому All 28.10.2006

Hello, TomCaT не качаются

От Рустам Тимербаев Кому All 29.10.2006

Hello, The Exploited Угу, не качаются. Проверь.

От яковлев антон Кому All 29.10.2006

Hello, The Exploited угу, ссылки сдохли... :(

От Valery Grigoriev Кому All 10.11.2006

Hello, Savage Виноват, но не я. Моё доменное имя дурит - вроде регистрацию прошёл, почта ходит (MX запись работает) а NS почему-то не резолвится. Заменяйте указанные ссылки вместо http://say.da.ru/ на http://grivalera.da.ru/ P.S. Вроде исправлял и так и эдак, не понятно почему не работает. При тех же настройках grivalera.da.ru работает... P.P.S. Через сутки после этого сообщения должно всё работать по приведённым адресам, кажется нашёл я причину того, что линки глючат...

От Valery Grigoriev Кому All 11.11.2006

Hello, Orionsoft Сейчас витает у меня одна идея... скорей похожая на бред. Смысл такой - самая "дибильная" команда во всех кодерах - это переход на следующий цикл вывода. Т.е. Либо оно выглядит так: Out (c),X Ret - аж целых десять тактов при 12 вывода либо Out (c),X .. - здесь какие то вычисления для перехода, что по определению больше или равно 4 тактам Jp (HL) - ещё 4 такта, итого 8 Вот я долго думал как избавиться - и пришёл к единственному выводу - это просто убрать Ret. :-D Теперь вывод звука идёт без Ret! А для этого программа кодер генерирует готовый Z80 код - т.е. команды типа Out (c),X NOP и прочие для забивки тактами для тактовых промежутков: Out (c),d ; подъём динамика Nop ; задержка 4 такта, пока не займёт нужное положение Out (c),c ; опускание Inc hl ; пауза 6 тактов, hl вообще никак не используется - только регистры С и D пользуются популярностью Out (с),d ; здесь сразу после подъёма должно идти опускание без паузы Out (c),c ; оно и есть Nop Nop ; пауза 8 тактов на опускание Out (c),d ; очередной подъём и т.д. - именно такое будет генерировать программа кодер Единственное, что меня сдерживает - что этот код будет жутко неоптимальный - около 2-3 секунд проигрывания на всё тело в памяти около 1 метра - зато он будет максимально точный. Кроме того, в отличие от предыдущих версий он имеет возможность (по крайней мере теоретически) распаковываться после загрузки, т.е. фактически полный диск займёт около 20-30 секунд звучания, после каждой отгрузки будет распаковка в память и само проигрывание. Ага, чуть не забыл Фишка в том, что почти все предыдущие (кроме песни бабы яги) самплы были в постоянным размером цикла, тут нет. Тут раземр цикла непостоянен, зато очень Т.е. дискретность следующая: Первый вывод в порт, поэтому само собой длина при длительности размера цикла равной 1 равна 12 тактам - Out (c),X Длительность цикла при размере 2 - 16 тактов - Out (c),X и Nop и далее идёт добавление под два такта - 3 размер - 18 тактов 4 - 20 5 - 22 6 - 24 и т.д., причём так как генерируется готовый код, то ограничений по размеру цикла нет - хоть 493859836986й размер ((((((-; Огромные промежутки (они возможны только теоретически, практически они просто не встречаются) можно кодировать даже командами циклов типа ld b,12 djnz $

От Марк Антонов Кому All 11.02.2007

Hello, GriV далеко не у всех такты по М1 округляются на реале...