Неет, одно дело это CD делает (и никого этим не удивляет), а другое, Z80. Не сравнить...
Вид для печати
Неет, одно дело это CD делает (и никого этим не удивляет), а другое, Z80. Не сравнить...
Тогда наверное не имело смысл и CD-ROM изобретать и винилки отлично игралли (((-; Да и нафиг нам винилки когда и живьём до этого отлично пели ((((-; Да и нафиг петь ваще ((((-; и без песен можно прожить ((((((-;Цитата:
Сообщение от The Exploited
:v2_lol:
и искать ссответствующую литературу.
Получилась такая, не очень приятная весчь -
последний из приложенных алгоритмов является самым лучшим и вот почему.
Как мне тут уже указали уважаемые коллеги, для ЦОС характерно такое дело как алиасы, которые являются следствием эффекта максирования частот или эффекта подмены частот (аналог эффекта стробоскопа) - когда реальное звучание отличается от того, что должно было бы звучать. Так вот, эти самые алиасы в зависимости от частоты воспроизведения уже отконвертированного звука могут сильнее/слабее влиять на конечный результат, и представленный последний сэмпл оцифрованного сигнала находится почти в зоне оптимума. Увеличение скорости воспроизведения (которое я осуществил, хотя и методика получилась дурная) привело к ухудшение звучания, хотя логика подсказывала иное - при увеличении скорости работы качество воспроизводимого должно расти. Т.о. можно лишь несколько улучшить качество воспроизводимого сигнала, чуть-чуть изменив рабочий код (добавив в нужных местах парочку NOP'ов), качественно же улучишь реальное спекк-звучание нельзя.
Резюмируя, заключаю что для базовой (не турбо) конфигурации имеет место почти идельный алгоритм (((((((-;
новый алгоритм кодирования - и новые способ модуляции звука
В итоге качество на слух ощутимо выросло (расширился слышимый диапазон частот).
Здесь не выкладываю, ложу на своём сервере.
И ещё, как мне правильно заметили камрады, слишком это муторно набирать там чего-то. В представленных ниже самплах надо просто воткнуть образ диска (в эмуль) или диск (в реал) запустить диск и после того как на экране появится муть давить ENTER
Benny Benassi - Illusions, Metallica - Unforgiven too,
Mike Oldfiled - Cochise, Polka %) - этот руль слушать всем,
Света - Кукла
P.S. Нужна машина с М1 - на пентах звучать будет несколько искажённо.
P.P.S. На всякий случай решил добавить - в тексте универсальный драйвер памяти, так что подхватит любую машину. Чем больше памяти тем лучше - в идеале (чтобы скушать весь диск) надо 1 метр ОЗУ...
Респект. здраво.
но можно попробовать замутить загрузку с HDD в реалтайм - будет не сильно отличаться от переключения банков (анрил кстати умеет мулить хдд).
а если извратиться то и одновременно с загрузкой с флопа! (вариант - кэш+турбомод)
нет, руль безвопросный. Особенно, когда памяти 1м.
А если скорость работы с хардом действительно несмертельна для звука, то результат мог бы выйти убойный наповал. Но тут все тки DMA нужОн, наверное...
не качаются
угу, ссылки сдохли... :(
Угу, не качаются. Проверь.
Виноват, но не я.
Моё доменное имя дурит - вроде регистрацию прошёл, почта ходит (MX запись работает) а NS почему-то не резолвится. Заменяйте указанные ссылки вместо http://say.da.ru/ на http://grivalera.da.ru/
P.S. Вроде исправлял и так и эдак, не понятно почему не работает. При тех же настройках grivalera.da.ru работает...
P.P.S. Через сутки после этого сообщения должно всё работать по приведённым адресам, кажется нашёл я причину того, что линки глючат...
Сейчас витает у меня одна идея... скорей похожая на бред.
Смысл такой - самая "дибильная" команда во всех кодерах - это переход на следующий цикл вывода.
Т.е. Либо оно выглядит так:
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 $
удалось сравнить звучание при проигрывании моих самплов с спекка и с эмуля. Коротко: спекк лучше. Длинно: эмулятор сильно поганит звук вследствие эмуляции Beeper'а, искажается АЧХ; по крайней мере я не смог выправить АЧХ таким образом, чтобы и спекк и эмуль звучали одинаково. Кроме того характер даваемой звуковой картины эмулятора имеет сильно искусственный характер, реал же имеет очень натуральное звучание; видимо в связи с этим уровень шумов со спекка значительно меньше (смотрите две картинки (упакованы)). Кроме того есть и сами самплы, записанные в разных частотах - 44100 и 48000 Гц (сблёв на который это писалось имеет передискретизацию на 48000 Гц, из-за этого писал на обе частоты - "родную" и конечную) - Emulator_44100.flac, Emulator_48000.flac, Scorpion_44100.flac и Scorpion_48000.flac. Так что очередной раз подтверждаю что реал рулит %)
далеко не у всех такты по М1 округляются на реале...
Ага вот и снова я!
Наконец то закончил очередную веху!
Теперь каждый сэмпл играет на своей частоте!
Даёшь минуту и ещё хвостик на 640К! :-)
самогонка это яд!
Вот тут для прикола выложу даже ещё парочку образцов - 1 с максимальным качеством, второй с минимальным :-) Чтобы заценить разницу, в граммах :-) Прошу заметить играется всё одним плеером.
Ага, вот ещё, чтобы не было кваканий, коих могут заметить владельцы машин типа пентагон, нужна машина с задержками М1 (Scorpion и оригинальный Спекк-128).
Меньше самогону - больше градус
Больше самогону - меньше градус
P.S. Чтобы играло жмём Enter.
Если сильно долго играется жмём "P" - тогда промотается.
чем это всё цыфруется на спектруме? через мафонный вход или какая приблуда собрана? а так вообще, несколько не понял, где автор нашол тут качество винила? пережатый мп3 играет лучше. а цыфровать звук (раз уж обработка идёт на паскале на пц) со всеми обработками лучше сразу на пц в адобе аудишн или хотябы в форже. помнится была такая прога от экцесс - ESE. вот там через АУ реально круто играет. и кодеров там до чёртиков, и всё на спектруме работает и цыфровать можно через мафоный вход.
---
хотелось бы услышать звук в оригинале, т.е. только цыфранутый и без обработки на пц и гдебыто небыло.
Подозреваю что мои увещевания про задержки М1 были не замечены :-)
А на реале запустить конечно руки мало у кого дойдут :-)
по порядку
Ничем. И не предполагалось что это будет происходит на реале.
Читай выше.
Смотри Metal_Unf2.zip, Night_in_White_Satin.zip, eagle.zip, Benny_Ilusions.zip и Oldfield_Cochise.zip. Там именно сравнимое - дискретизация на частоте 180кГц.
Наверное. А чем пережимал?
Пережми, выложи образы TRD, послушаю.
А я AY вообще не использую, и это круто. И работает и играет на реале, на чём собственно и тестировалось.
Я тебя вообще не понял.
Не не, Griv, подожди, ты меня извини, я тему эту, когда она с самого начала создавалась, со всеми пояснениями, что, от куда, куда и чем, не видел. на первой странице этой темы сразу идёт типа вот вам типа (как обухом по лбу). потому я слегка не догнал, что за цыфровки, где они сделаны, какими железками и чем потом обработаны. Если оцыфровки сделаны на реале (т.е. оцыфровывал на реальном спектруме), то через какое устройство - например, магнитофонный вход или через собраную для этих целей девайс. я видел сорцы на паскале с коментами что типа для пц. значит я понял так, что далее полученый звук обрабатывается на пц этой утилитой. по поводу выложить образец с моей стороны....чтож...если хочеш, я могу найти для тебя утилиту wavplay.com для цпм, которая умеет проиграть 44100гц стерео ваф через АУ или через стереоковокс. да, там к сожалению играет 8бит, а если играть 16бит вафку, то играет крайне медленно. зато если врубить турбу то проиграет нормально...почему, хз. по поводу качества приведённых тобой образцов - винилом там даже не пахнет. очень явно слышны искажения. причём я слушал спецом на нескольких компах и колонках, включая наушники. правда, да, я согласен, такая игра...такие результаты для спектрума, дорогого стоят. это безспорно мегарулез. вопрос теперь ещё - почему всё только для скорпа? могет для профика или АТм, там по метру памяти, думаю по времени больше влезет...
Через АУк будет хуже. Скорп - это времянка - тактов в цикле, память поддержана - любая (даже 48к). Кстати тут кто то просил минуту в 128к - в минимальной самогонке в 128к (2, 5 и 7 страницы не используются) - 25 секунд, так что рехультат почти обеспечен :-)
Если это вайтовые машины, то запускай - будет играть как положено. В противном случае тоже будет играть но с искажениями.
А можно ли на базе данного алгоритма написать муз.редактор?
Что понимается под муз. редактором? Бипер только 1 канал может играть, к сожалению, миксировать там невозможно в силу специфики алгоритма воспроизведения. А вот что выводить - хоть вдоль хоть поперёк - без разницы. Если есть некий набор сэмплов - то можно их выводить и чередовать в любой последовательности (и даже с изменённой тональностью).
Вот тут использовался своего рода муз. редактор - позволяет на AY (из PT3) трек наложить звуки бипера:
http://www.youtube.com/watch?v=Mw7iLS515jw
Собственно сам редактор там видно при запуске (0..SIL, 1..SIL и т.д.).