Login

Subversion Repositories NedoOS

Rev

Rev 668 | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed

LD BC,0x2000;(#5CE8) ;length ;TODO!!! единственное место
убрать swapa0d0? и проверить pt2, stm, stp
починить загрузку сэмплов из mod

компилятор убрать в дисковое меню?

+ при загрузке показывать все громкости, сэмплы и орнаменты на нотах? (неудобно потом будет менять циферку орнамента на целом паттерне!) (сделать горячки в канале - показать все цифры, убрать лишние цифры?)
+при нажатии enter просчитывать параметры нот с самого верха паттерна - правильное звучание
+ при записи TS музонов приравнивать длины паттернов обоих чипов

- сэмпл без ноты не работает - так и было. странно...
- slide env не работает слева от установки ENV. а в плейере?
- при вводе сэмпла L нота не звучит
- виснет при загрузке модулей, содержащих криво зацикленые
орнаменты/сэмплы (ну и хрен с ними)
- 6 лишних байт в модуле (уничтожаются при компиляции) =ORN0?

+видеть бы все ноты текущего орнамента...
+2 кнопки установки громкости - со сменой всех одноименных вниз и без. то же для сэмплов
+раздельное редактирование ритмического рисунка (условными нотами 1,2,3,...) и аккорда (ставить сами ноты: 1=такая-то, 2=сякая-то...)

*3xxx с переходом через 0 (на первом же шаге) при сохранении автоматически урезать (Firestarter)
+отключабельный автоповтор при вводе чего угодно
+горячую кнопку для EXCHANGE
+окно файлов побольше
+окно паттерна выше на 2 знакоместа
+авторазворачивалку сэмплов (убирание левых ноликов-накоплений)
+показывать ноту в огибающей, если она попала в ноту
+в плейере frq работать с 3xxx опционально мудро
+при нажатии новой ноты (без отпускания старой) играть новую
+шум копировать с каналом B
+сэмпл W
/убить стрелку на главном экране (чтобы рулить кнопками по меню)
+сохранение без компиляции, в раскрытом виде
+спецнота - повтор предыдущей ноты (стоящей до той, которую только что играли) - для эха и чересстрочных треков
+хорошо бы и спецорнамент такой?
+undo одной ноты (U в поле ноты)
+сравнение треков - одинаковые или нет

-PTU1.367: сортировка паттернов в DREAM+ портит музыку (прямо с самого начала)
-PTU1.367: исходник запорот - плейер не играет
-PTU1.367: грузить VTII модули
+в ptutil убивать лишние треки/сэмплы/орнаменты
+в ptutil защититься от сбросов после swap chn со смещ. шума в B
+в ptutil прокрутка при проигр-и (и показ процентов)
+в ptutil индикаторы, юзаются ли разные фишки плейера, плюс по всем смп/орн - макс.юзанная длина, для этого кнопку сверхбыстрого проигр-я.
+в ptutil ПОКАЗЫВАТЬ,сколько % проиграно!!! И возм-сть прокрутки
+плейер ptutil по Бульбе
+в ptutil перевод сонгов в таблицу ST

Сборка и экономия памяти:
*если убить сэмпл 0, то в pg4 #1200 (а не #1000) байт свободно
(под окошки? или перепечатывать весь экран после закрытия окна?)
/убить скроллбар в дисковом меню
+рассчитать DIGITS (и короткий синус?)
*в компиляторе считать пустышки после того, как пройдут?
и в конце паттерна?

                            Mast:

 1.Hеобходимо сделать несколько режимов Write Data - в смысле,
чтобы можно было запомнить много последовательностей типа: 1F0F,
AC00, 1F3B  и т.д., например, набил  в окошке  Write Data  1F0F,
потом нажал SS+1 - последовательность 1F0F запомнилась на кнопке
1, короче, чтобы  не пудрить себе  и вам мозги, объясню попроще:
нужно сделать,чтобы данные Write Data запоминались подобно запо-
минанию адресов в STS (там это повешено на кнопку А) - например,
SS+1,2,3,4,5 - запомнить, CS+1,2,3,4,5 - восстановить.
 2.Дополнение  к интерфейсу: если  режим  Write Data включен и
там присутствует огибающая, то по кнопке 'L' удаляется не только
значение ноты, но и огибающей; если во Write data включен сэмпл,
то по 'L' удаляется также  и сэмпл; если включен орнамент, также
удаляется  и орнамент; если  включена громкость, удаляется гром-
кость. Если Write Data выключен,то как обычно - по "L" удаляется
только нота.
 4.Сделать  возможным  запись  во Write data  команд (в смысле
глисс, порт и т.д.).
 5.Ввести комманду Vibrate (быстрый глисс вверх-вниз).
 6.Hе помешало бы, чтобы  паттерны, позиции и номера строк для
копирования можно было не только мотать маленькими курсорчиками,
т.е. добавить еще один режим: подводишь стрелку к цифре, нажима-
ешь fire,- вместо цифры появляется маленький курсор,вводишь своё
значение. Так будет намного быстрее работать с копированием бло-
ков.
 7.Сделать  накладку  шума  для каждого канала отдельно (как в
PT2).[это как?]
 8.Транспозиция огибающей.

                         Иван Рощин:

 1.Чтобы можно было  устанавливать новое значение периода оги-
бающей без перезаписи R13.
  (Alone Coder: автопересчёт последовательности команд установ-
ки огибающей A/E/C/8 в команды 9xxx, Axxx?)
 2.Так  же, как  есть  команды  для плавного изменения частоты
тона, должны  быть  аналогичные  команды  для частоты огибающей,
частоты шума и для громкости. Нужна команда "сделать звучание на
канале громче или тише на заданную величину".
 3.В связи с увеличением  числа команд, может возникнуть необ-
ходимость  установить  на одну ноту несколько команд, и это надо
предусмотреть. (Alone Coder: tempo 0?)
 4.В  Pro Tracker'е  можно  регулировать  глобальную громкость
мелодии, а хотелось бы  также регулировать громкость отдельно по
каждому каналу.
 7.В Pro Tracker'е есть комбинации клавиш SS+W, SS+E - запоми-
нание  канала  в  буфере/восстановление  из буфера. Так же можно
сделать  и  запоминание/восстановление  целых  PATTERN, а  также
SAMPLE, ORNAMENT. Это будет удобно при редактировании нескольких
одновременно находящихся в памяти мелодий (например,взяли SAMPLE
из одной мелодии в буфер, перешли к другой мелодии, восстановили
из буфера).

                           Miguel:

 1.Хотелось бы  видеть работу с блоками (особенно в sample and
ornament editor'ах).
 2.Неплохо было бы сделать поиск с заменой./менять ## сэмплов/
 3.Также  неплохо бы было иметь такую опцию, как save loop, то
есть когда  надо  сохранить  не 1 паттерн, а последовательность,
также  сохраняя  и инструменты. Ну, то есть, как отдельный song.
Можно также  сделать  и  Copy loop (то есть  входишь в positions
list, выбираешь  loop, нажимаешь  SS+E, перемещаешь курсор  куда
надо и делаешь  SS+R. Отсюда  вытекает, что  помимо  копирования
можно  сделать  и перенос  loop'a. А отсюда вытекает, что это же
можно сделать и в sample\ornament editor, а это, в свою очередь,
опять ведёт  к необходимости делать работу с блоками, как глоба-
льную  необходимость, без которой становится всё трудней и труд-
ней.
 4.Надо  сделать  setup  для  мышки, чтобы  можно было сменить
скорость передвижения курсора (шаг) и реверс кнопок.

                            Moran:

 1.Более 1 канала запоминания в буфер.
 3.Запоминание части канала и выгрузка в любой позиции.
 4.Горячую клаву для обмена +/- транспозиции.
 5.Огибающую в редакторе сэмплов.
 6.Какие-нибудь анализаторы, в пустые места.

                         Alone Coder:

 1.PT3 может быть 42-символьным:
63 0100 g c-4 1234.... c-4 1234.... c-4 1234....
12 3456 7 890 12345678 901 23456789 012 34567890
 2p  2p 2p  2p       2p  2p       2p  2p
                                       3chr3chr
40*6=240
+2p*8= 16
    =256
 2.AY с freq не 50Hz, а 100Hz.
 3.AY с freq  1kHz - сэмплы  практически  цифровые, но  как их
получить?
 4.Использовать  хитрость  (для  турбо не прокатит, точнее, не
совсем  попадёт) и делать громкость у тихой огибающей выжиданием
на высокой частоте огибающей.
 5.Хранить  дорожки  для  инструментов, которые группируются в
каналы. Дорожки  содержат номер сэмплов (для прописывания партий
ударников)! Увеличивается ёмкость каналов из расчёта на одинако-
вое удобство редактирования; плюс в мало похожих паттернах/кана-
лах  бывают ой как похожие дорожки для многих инструментов! Плюс
можно  видеть весь паттерн; плюс можно редактировать по принципу
драм-машины; плюс  затирание  каналов друг другом можно выбирать
любое (задавать приоритеты).
 6.Обычный  трекер, но с оверлейной дорожкой (накладывается на
любой канал по вкусу).
 7.Огибающую  и её тип  класть в сэмпл, инициализации туда же.
Выигрыш в размере нотного текста.
 8.Команда "продолжить играть предпредыдущую ноту" (для эха).
 9.Альтернатива: вибрато со старой нотой в "дырках".
 10.Хранить  мелодию  в терминах ступеней аккорда, а аккорды в
терминах ступеней гаммы. (Делать это только в транспозиции?)
 11.В сэмпле  режим autoenv с любым коэффициентом, с подтяжкой
частоты сэмпла к частоте огибающей с разливом на +(-)0, +(-)1...
по вкусу.
 12.Таблицу громкости заменить на простое сложение. (сделано: версия li)
 13.Много строк на экране, скроллинг организовавать как в мно-
гозадачных  системах: если текущий цикл скроллинга не успел вов-
ремя, то доводим его до конца,а в следующий раз сдвинем уже на 2
строки. Вариант: показывать на экране 32 строки паттерна и запу-
скать  цикл  перепечатки после перехода на новый паттерн (или на
2-ю половину этого).
 14.Параметры ноты (сэмпл,форма вибрато и его глубина,характер
изменения громкости и пр.) группировать в микропрограммы пользо-
вателя (с 1-2 параметрами), чтобы в тексте они не занимали много
места. Для каждой микропрограммы дать возможность указать понят-
ное название,чтобы можно было легко найти её в списке (перебором
цифробукв при нахождении курсора в поле редактирования). Возмож-
ности должны быть широкими - вспоминать предпредыдущий орнамент,
ноту, автоматически  подстраиваться  под используемую громкость,
плавно  менять  вибрато, регулировать  приоритеты  использования
шумов и наложения, подстраивать огибающую под тон и тон под оги-
бающую и т.п. Скорее всего, это проще реализовать через перемен-
ные микропрограмм (область этих переменных должна быть общая для
всех микропрограмм, играющих в канале - но дать и доступ к пере-
менным  других  каналов?). Операции умножения/деления в языке не
нужны (?), выражения  особенно - выражения можно программировать
последовательностью микрокоманд.
 15.Команду фазировки тональника, хотя бы без параметра (чтобы
огибающая с тоном была хотя бы наполовину предсказуемой)!!!

                   Complex Tracker AY+Covox:

##tF Teee+n n-1aov n-2aov n-3aov|c-1iefv c-2iefv c-3iefv c-4iefv
0123456789012345678901234567890123456789012345678901234567890123
                      6x6 (диезы узкие)?
##t
  e-1Tn
       n-1av
            n-2av
                 n-3av
                      c-1ifv
                            c-2ifv
                                  c-3ifv
                                        c-4ifv
t - tempo
F - some filter? noiselevel/distortionform/echo?
T - ay env type
eee - ay env frq (нотой?)
+n - ay noise disp
a - ay sample
o - ay ornament(?)
v - volume
s - sample
e - effect type
f - effect parameter

                           effects:
slide/portamento, offset, ...

                         instruments:
инструменты делаются на основе сэмпла, на одном сэмпле может
быть несколько инструментов.
                 (begin),(len),(loop),#sample
begin - linestart point in sample (начинаем играть сэмпл раньше
строчки, на которой его нота! так можно реализовать более
реальную игру на инструментах, у которых перед пиком звука
что-то ещё должно звучать).

график изменения громкости и график изменения точного смещения
частоты (для вибрато).

                           samples:
флажок: "хранить сэмпл в памяти в интерполированном виде?(Y/N)".
                           +t-1+%%
                           ^^^^смещение в полутонах (как нота)
defaults: begin, len, loop.

                         AY samples:
        l (T)(f)(+)t-1+%% (N)(h)(+)n (E)(u)(+)ee (+)v
%% - очень точный disp в долях полутона.
l - прозрачность (предыдущая нота ВСЕГДА обсчитывается на фоне
текущей).
f - значение tone (не смещение) - для тихой огибающей и ударника
поверх тона (примерно как в pt3'шном орнаменте "-96").
h - значение noise (не смещение) - для тарелочек на любом
глобальном смещении шума.
u - значение env (не смещение) - для ударника на огибающей и
использования огибающей 0.