Chip Tracker v1.0 © Alone Coder Наконец-то вышла первая версия нашего давно обещанного редактора. Задержки с ре- лизом я объясню тем,что мне долго было ле- ниво написать дисковый модуль для него.Вот не люблю я дисковые модули писать ;) Что это за чудо? Чудо. Чип - цифровой музыкальный модуль раз- мером меньше 64k, как правило, в формате .MOD; иногда их стремятся сокращать и по длине после упаковки zip'ом.Получаются лю- бопытные результаты:мне приходилось видеть .MDZ размером меньше килобайта. То есть, чиповая музыка - это типа ис- кусство. Ну вы поняли ;) Маленький цифровой музон можно вставить в не сильно динамичную игру, если движок такой игры повесить на прерывания или на регулярно вызываемую точку плейера резиде- нтом. В общем,как-нибудь я вам покажу, как это делается... Основную массу композиции занимают сэм- плы.При этом плейер постоянно считывает по байтику то из одного сэмпла,то из другого, так что раскидывание сэмплов по страничкам даст некоторую потерю в скорости, а потому и в качестве звука. Так размещение инстру- ментов в нижней памяти,ведущее к ограниче- нию на объём оцифровок,имеет оправдание ;) Такую халтуру ;) и раньше можно было плодить на Спекки в редакторах Sample Tra- cker,FT или DD, но вот интерфейс мне ихний не приглянулся ;). Я взял большинство идей из PT 2.x, 3.x, а нижнюю память под сэмплы использовал уже всю, что породило проблемы (см.ниже), но всё-таки хоть как-то справи- лось с теснотой, которая характерна для этого типа плейеров. Сэмплам в памяти тес- но,как шпротам в банке ;) Конечно же,нужно урезать сэмплы из стандартных наборов,и не утрировать искусство цифровой композиции до банального набивания звуковых эффектов. Мелодика прежде всего! В попсе нет никакой ценности, она не должна жить! Что не поместилось в хелпе: Поддержку SounDrive я добавить не ус- пел,но это несложно. Я уже пробовал менять плейер в исходнике: звук на SD получается чище, хотя частота дискретизации немного меньше. К сожалению,для другой частоты ди- скретизации придётся пересчитать табличку частот, и на несколько процентов "поедут" глиссы. Попытаюсь что-нибудь придумать,для turbo в том числе... Можно изменить номер используемого пор- та для COVOX. Он прописан в бейсик-загруз- чике. Чтобы занять свободную страничку, я до- бавил в редактор выход в RealCommander1.x, так что в этой версии свободно только 400 байт. В будущих версиях свободная память будет занята под редактор сэмплов (весьма полезная должна быть штука - урезать,заци- кливать, накладывать громкость, склеивать, складывать сэмплы и менять их частоту, я полагаю, потребуется весьма часто). Дисковый модуль не обрабатывает ошибок, поэтому будьте аккуратны: малейшее неосто- рожное движение,и вы в открытом космосе ;) Проблемы со скорпионовским контроллером клавы могут появляться везде и всюду. Хуже то,что ничего с этим поделать нельзя! ;( В трекере асинхронный проигрыватель...Неуже- ли к скорпиону нельзя подключить клавиату- ру,минуя контроллер??? Компилятора пока нет,но нетрудно вынуть плейер из редактора. Формат модуля описан внутри,и нужно только произвести небольшое перекодирование параметров сэмплов в абсо- лютные адреса: (page 0) #ff02: beg end ? ? Lloop Hloop #ff12: beg end ? ? Lloop Hloop ... и т.д., где beg = старший адрес начала сэ- мпла, end = старший адрес последних 256 б. сэмпла (сэмпл округляется до 256 с разво- рачиванием loop'а), loop = адрес точки за- цикливания. Должен быть равен #ff00, если сэмпл не зациклен (т.е.если Start=Length). Формат паттерна: addr addr+256 %NNNNNNCC,%IIIIXXXX четыре раза Причём n=0 - это ---, а n=63 - это R--. ХАРАКТЕРИСТИКИ: Число каналов............................4 Частота дискретизации............16-18 кГц Память под инструменты..........#bb00 байт Память под паттерны.................15.5 k Память под плейер................#3c0 байт Память под резиденты и стек.......#40 байт Свободно..............................64 k Число инструментов......................16 Число паттернов.........................31 Число позиций..........................256 Число октав...........................пять Длина инструмента............не ограничена Объём паттерна...................до 64 нот Громкость..................не регулируется Триоли и форшлаги............только темпом Арпеджио........................невозможно Вибрато и тремоло...............невозможны Глиссандо................есть,даже на ноте Легато,sample offset..............возможно Sample delay....................невозможен Команды.............Gliss,Tempo,Offset,End Комбинация эффектов.............невозможна Минимальная конфигурация системы: Пентагон-128/ATM/KAY/Profi(no wait)+COVOX (для тормозов можно написать 48k плейер) Громкости нету...Используйте Offset... Почему? Когда-то (года три назад) мне захоте- лось поэкспериментировать с плейерами циф- ровой музыки.Писал их на лекциях,в большом количестве, а характеристики сводил в таб- личку,главным критерием которой было число f·c2·(v+b)·m, где f=частота дискретизации плейера, c=число каналов, v=число разрядов громкости, b=разрядность каналов, m=объём памяти под сэмплы. Сейчас смешно,но мне тогда казалось,что чем больше эта цифра,тем круче плейер =) [основная лажа вот в чём: эта характе- ристика очень быстро растёт с увеличением числа каналов; ещё есть некий предел насы- щения разрядностью и частотой дискретиза- ции,да и объём памяти учитывался только на 128k...] Весьма приличные значения получались при выделении всего 47k под сэмплы,как для плейера под COVOX,так и для AY. Ну,я и по- думал написать пару соответствующих редак- торов - набить руку,так сказать. Думал,раз сэмплы все в одном месте, то и программа будет попроще. Наивный ;) Я сегодняшний не раз вспоминал разными словами себя тогдашнего, пытаясь написать процедуру сохранения сэмпла (6 битов в од- ной страничке, остальные 2 - в другой) на диск (а системные переменные йок ;), како- вая процедура должна лежать в третьей страничке и использовать информацию о па- раметрах сэмпла, хранящуюся в четвёртой 8] К сожалению,я не успел написать поддер- жку упакованных сэмплов, но она будет. И в компиляторе тоже. Паттерны тоже будут сжи- маться:по жутко простому,но жутко эффекти- вному принципу,придуманному специально для этого формата паттернов.И что интересно,их можно будет играть без распаковки! Но это (плейер, играющий упакованные паттерны) - пока дело будущего...Как и плейер для 48k. Возможно, эти два пункта будут реализованы в одном флаконе.Конечно же,я буду думать и о реализации плейера, дружащего с прерыва- ниями. Планируется написать AY-версию редакто- ра: 3 канала,192k samples,громкость,12kHz, 32 паттерна, 16 орнаментов. AY ещё не ска- зал своё последнее слово! ;) Дата сборки: 8.11.2001. В общем,это версия первая,пробная,в ней есть HELP.Я постарался вставить этот HELP, но это оказалось очень сложно, и потому в следующих версиях встроенного хелпа не бу- дет. На такой вот оптимистической ноте ;) В приложении лежит пример музона в фор- мате Chip Tracker'а: "ZATRAHAN.CHI" Уважаемые композиторы!Подарите музончик для следующей версии,плз... а?