Инфа тут:
http://forum.tslabs.info/viewtopic.php?f=9&t=383
Вид для печати
Rindex, а версии обновлять пушкин будет? мало нам было проблемы синхронизировать релиз между форумами, будем потом еще за людьми вроде тебя бегать, чтобы старье убрать.
Sent from my HTC Sensation XE with Beats Audio Z715e using Tapatalk
introspec, так сделай сам, и обновляй. Ундергрунд штука ненадёжная. Если падает, то надолго. Уже такое было и не раз. Файл убрал, раз не нужен.
поздравляю! :)
introspec, я вот точно не знаю, но частелько гугловские ссылки не работают, у кого нет почты gmail. Это не про гугл-драйв случаем? Просто на том же WoS всегда просят переложить файлы с гугла на файлообменник, поскольку не все могут скачать.
Мне же пришлось сделать там ящик, поскольку ютуб просто приказал это сделать, иначе я потеряю доступ к моему каналу, и закачать ничего не смогу.
Специально для тебя только что открыл zx-pk.ru стареньким эксплорером, он выругался, но скачал после тех же трёх кликов. Не нужен аккаунт гугла, ничего не нужно. Три клика: ссылка, потом - "Файл", потом - "Скачать".
Не забывай, это не игра, а очень специфическая весчь, нужная, в лучшем случае, нескольким десяткам спектрумовских кодеров. Последним из могикан. Казуалы реально в данном контексте неактуальны.
А плейер от TmK пакует лучше или хуже?
Вообще, нужно смотреть в каждом случае: это зависит от конкретного трека. На некоторых треках плейер TmK выигрывает, на некоторых - проигрывает. psndcj подбивал статистику у себя в блоге несколько лет назад, там есть некоторое число примеров: http://psndcj.blogspot.co.uk/2011/08...g-squezer.html
introspec, будет ли доступен сорец пакера?
---------- Post added at 01:33 ---------- Previous post was at 01:33 ----------
Как поведет себя плеер если в одном канале всегда будет тишина?
---------- Post added at 01:36 ---------- Previous post was at 01:33 ----------
Возможно ли расчленить плеер на несколько кусков, скажем для интеграции с бипером?..
Прямо сейчас - нет, psndcj недоволен кодом и не считает возможным его релизить. Вообще же, при небольшой модификации пакера существует потенциал для (небольшого) повышения сжатия, добавления быстрого честного зацикливания и общего (небольшого) ускорения. Я вложился в этот проигрыватель и меня тоже интересует развитие пакера. Прямо сейчас ничего в этом направлении не делается, но в средне-долгосрочной перспективе, я надеюсь, psndcj или я или кто-то ещё что-то продвинет.
Если PSG "правильный", то он не будет содержать записей в этот канал. "Быстрый" плейер не будет писать в соответствующие регистры совсем, "ровный" плейер будет непрерывно обновлять содержимое регистров из буфера. Вопрос про звук в играх или "смешанные" движки звука, да? пока они по сути не подразумевались и гибкости плейера Робуса тут нет. Нужно понимать, что задачей psndcj была в первую очередь скорость. Но я продолжаю работать над развитием фич плейера и мне безусловно интересно добавить каналы и т.п. Сейчас ничего этого нет. Приоритет этой работы, к сожалению, сейчас не очень высок.
Это продолжение прошлого вопроса. Я безусловно много думаю об этом; синтез звука на AY меня давно и плотно интересует. Идей много, но времени недостаточно. На данный момент почти ничего в этом направлении не сделано.
В каком-то смысле, плейер уже частично расчленён. Во-первых, модуль проигрывания регистров работает в постоянном времени и достаточно легко разрежется на части. Во-вторых, сам плейер тоже достаточно модулярный по структуре, хотя, если честно, переписывать его в лоб под бипер сейчас я бы не взялся. Я думаю в этом направлении, но пока это всё очень сырое и экспериментальное, поделиться нечем.
---------- Post added at 22:50 ---------- Previous post was at 21:56 ----------
Titus, забыл упомянуть, что упаковщик сейчас всё тот же, что psndcj описывал в своём блоге 2 года назад, но проигрыватель был дополнительно ускорен с т.зр. пикового времени (и среднего времени, я думаю, тоже). Оценки скорости проигрывателя в старой статье psndcj устарели.
Извращенство - писать на асме все в одну строку. Может кому-то это и привычно, но для меня совсем нечитаемо. Пришлось переформатировать исходник, чтобы хоть примерно понять, что там изображено)
introspec, тебе почему-то на другом форуме рекламацию выписали:)
На остальные вопросы не успел ответить! :)
Нужно раскомментировать опцию FAST_LOOP или PROPER_LOOP. Первая работает быстро, но выдаёт один пустой фрейм, что на некоторых мелодиях будет слышно. Вторая делает всё как нужно, но в момент зацикливания занимает лишние 500 тактов. Зацикливание всегда на начало. Т.е. пока не без ограничений. Реализация быстрого и полноценного зацикливания - одна из важных задач в нашем списке todo :)
Это происходит потому, что у вас включен режим прерываний IM 1, и в этом режиме обработчик прерываний бейсика читает клавиатуру и делает всякие разные бесполезные вещи (не в ровных тактах). Чтобы по-настоящему воспользоваться "ровностью" ровного плейера, нужно настраивать свой обработчик прерываний и включать режим IM 2.
Мысль понял. Вопрос в том, что вроде как включЯю IM2...
Буду разбираться, где промахнулся.
-------
upd -промахнулся в стартовом адресе запуска снапшота, процедура инициализации IM2 стояла ДО запуска плейера, вот она пропускалась и включался сразу плейер. Я то был уверен, что IM2 включено..
Еще раз спасибо, плейер ровно работает, вот только зацикливание переключил на PROPER_LOOP, с FAST есть какие-то непонятки)
introspec, а почему такие сложности?
что такого сразу сделать нормально?
jerri, потому что это непростые плейеры, предназначенный для решения специфических проблем. Потому что это не самостоятельная программа, а по сути библиотека для использования в своих программах. Кому реально нужна такая библиотека, без дураков? людям которые только начали изучать ассемблер? чем вортекс плох для людей, только начавших изучать ассемблер? чем наши плейеры сложнее вортекса?
Пожалуйста, прочти наш первый пост. Много ли вопросов возникает у тебя после его прочтения? А есть ещё такой момент как "простота" базового примера - настойка IM 2 потребует больше кода чем сам плейер. Причём, вставь мы туда обработчик IM 2 - нашёлся бы, уверен, человек, у которого он затёр бы не ту память. Т.е., с моей точки зрения, то, как выложен выравниватель на такт Alone Coder'а, со встроенным обработчиком прерываний - глубоко "неправильно", потому что человеку в теме это всё равно не нужно, а человеку не в теме это просто создаст ощущение ложной безопасности, с потенциалом создания ничуть не менее серьёзных проблем уже в будущем.
Я пишу так много слов, потому у меня нет ощущения, что мы с psndcj сделали что-то неправильно. Конечно, я могу в этом плане заблуждаться. Но тогда будь добр, скажи конкретно, по пунктам, что именно сейчас сделано "не так", чтобы мы могли учесть твои пожелания в будущих версиях.
У Alone Coder - короче, насколько я помню.
Товарищи гусары, вот и клади вам палец в рот!
Я понял что плеер непростой. Я понял что библиотека.
Но если пишешь исходник пиши так что бы он был понятный.
к прерываниям вопросов у меня нет. Но после прочтения первого поста у меня вопросы не исчезли.Цитата:
Пожалуйста, прочти наш первый пост. Много ли вопросов возникает у тебя после его прочтения? А есть ещё такой момент как "простота" базового примера - настойка IM 2 потребует больше кода чем сам плейер. Причём, вставь мы туда обработчик IM 2 - нашёлся бы, уверен, человек, у которого он затёр бы не ту память. Т.е., с моей точки зрения, то, как выложен выравниватель на такт Alone Coder'а, со встроенным обработчиком прерываний - глубоко "неправильно", потому что человеку в теме это всё равно не нужно, а человеку не в теме это просто создаст ощущение ложной безопасности, с потенциалом создания ничуть не менее серьёзных проблем уже в будущем.
То что вы сделали это здорово. Но вот об ограничениях плеера нет ни слова.Цитата:
Я пишу так много слов, потому у меня нет ощущения, что мы с psndcj сделали что-то неправильно. Конечно, я могу в этом плане заблуждаться. Но тогда будь добр, скажи конкретно, по пунктам, что именно сейчас сделано "не так", чтобы мы могли учесть твои пожелания в будущих версиях.
Щелкает ли плеер страницами?
16к лимит для одного музона или можно как то исхитриться?
Сам плейер никаких манипуляций с памятью не осуществляет. Поэтому если хочется положить музыку в страницу - да, ограничение на длину трека в 16кб. Но плейер тупой и ни на чём не настаивает. Сборка приложенного примера, компилирует плейер с адреса 32768, т.е. даёт больше 31кб на музыку. Если действовать с умом, можно занять и медленную память, просто положив вектор прерываний в память быструю; это позволит играть музыку длиной до 47 килобайт.
Цель этого плейера - демодизайн. Если трек не входит в банку, скорее всего, нам придётся работать над треком с музыкантом в любом случае, потому что память на вес золота. Конечно, нам хочется запихать в банку больше, чем помещается сейчас, но это вопрос будущей работы. Плейер автоматически прыгающий по банкам для наших задач реально неактуален, скорее даже вреден.