Подскажите, плз, софт, который-бы видел этот модуль.
м.б это совсем левый банк? Или битый. Например для суперновы по интернету блуждает левый банк "блю мейджик", там внутри остались теги от банка для вируса, т.е этот банк фейковый.Но есть один банк - при попытке загрузки сам не грузится, но и в модуль пихает чегой-то.
На первый взгляд не надо, надо все сисексы посмотретьТам, на первый взгляд, проходит только запрос на сброс дампа.
А как, собственно это сделать? С компика пошел запрос на обмен дампом, мидимонитор корректно его подтвердил, модуль нарисовал на экранчике "now transmitting" и ушел в задумчивость (только вкл-выкл выводит его из этого состояния), ничего не выдавая в компьютер.На первый взгляд не надо, надо все сисексы посмотреть
Я себе написал простенькую программу лет 5 назад, она выделяет все сисексы из любого файла, показывает их заголовки(первые 8 байт),идентифицирует их (для Korg M1 определяет Prog, Combi или AllProg, AllCombi) и выгружает в отдельные файлы, например я легко вынимаю звуки(в сисекс виде) из Сонаровских проектов(если они там есть). Поэтому с Вас дампы хороший и плохой целиком(а не строка sysex), если в плохой затесалась лишняя или некорректная информация можно будет что-то попробовать понять. У меня были случаи, когда терялись байты из сисексов(они реально были короче почему хз), я в 16-ричном редакторе дописывал и потом спокойно грузил.А как, собственно это сделать? .
Отсюда я сделал вывод, что Вы грузите в модуль, а оказывается Вы пытаетесь выгрузить дамп с модуля, сорри не понял. Попробуйте принять дамп другой программой, м.б. эта не любит этот номер банка))). С такой ситуацией я не сталкивался, если выгрузка дампа банка работает, то причём тут номер. Как получен этот банк, пришёл с модулем или как-то откуда-то загружен? У меня случилась другая ситуация, синт перестал грузить и выгружать банки(виснет на середине передачи), грузит только отдельными звуками.Пытаюсь подружить модуль с мидиквестом. В общем, модуль меняется дампами с программой. Со сказёвого винта гружу в модуль потом читаю в кубе квестовским плагом новые банки, потом эти дампы сохраняю в компе. Но есть один банк - при попытке загрузки сам не грузится, но и в модуль пихает чегой-то.
Вот этот S1A и выложите, а также другой банк с винта выложите, с которым загрузка-выгрузка нормально проходят, а я в них посмотрю сисексы(по сусекам))) в дальнейшем может понадобиться описание сисексов банков и отдельных звуков на ваш дивайс, а может пронесёт...Банк пришел с винчестером. Нормально грузится, и я упёрся в проблему, только, попытавшись сбросить первый его войс-банк в мидиквест. Хотелось с него забрать пару патчей в собираемый свой банк звуков. На винте банк имеет своё расширение - S1A. В этом файле я не копался, хотя, думаю, если просмотреть его в hex-редакторе, то можно будет найти и само тело дампа. Вообще-то, это - идея. Надо будет попробовать.
очевидно, потому-то с винчестера и грузится, а вот в сисексах - фигвам ((ничего похожего на ямаховские сисексы
так это ж наверняка нативный формат в котором синт хранит свои пресеты\банки, т.е свой специфический формат не связанный с миди вообще.На винте банк имеет своё расширение - S1A.
Совершенно верно, здесь должны быть наипростейшим способом слегка закодированные параметры каждого патча(сколько их там в банке) плюс возможно в начале небольшой заголовок, т.е. было бы его описание и описание сисекса банка, можно было бы этот сисекс сварганить, для M1 я нечто подобное делал.так это ж наверняка нативный формат в котором синт хранит свои пресеты\банки, т.е свой специфический формат не связанный с миди вообще.
Не надо txt выложите просто сисекс патча и сисекс всего банка(если можно), тогда можно будет сравнитьЗдесь полные параметры 1-ого патча 2-ого войсбанка - Constr Kit 1 (то, что выдал мидиквест).
З.Ы. Думаю, что содержимое ячейки звука содержит определённое количество конкретных байт и, вполне может быть, что, вряд-ли, они будут кодироваться каким-либо образом и в случае передачи с мидиквеста, и в случае загрузки с S1A. "Шапки" над ними, конечно, будут разные...
Да, кстати, я упустил то, что если не нулевой старший бит - это уже команда миди, а не данные. Когда-то - ещё на спектруме - у меня стоял приемник-выдатчик дампов для самограек, написанный на ассемблере. Так в нём как раз и использовалась особенность семибитности данных. Каждый восьмой байт данных записывался в сэкономленную ячейку (именно за счет нулей в старших битах) а при выдаче - производилась обратная работа по вставке этих ноликов в старший разряд семибитного данного. Так, что - да, теперь понимаю, что данные в сисэксах и в нейтиве могут совершенно не повториться.каждые 8 байт эквивалентны как правило 7 байтам нативного и имеют всегда первый бит
Так я рассматривал - место с патчем повторяется в банке. Там и на модуле, когда передаётся весь войсовый банк - на экран поочерёдно выводятся названия передаваемых патчей.выложите просто сисекс патча и сисекс всего банка
Названия и я вам могу по порядку выписать без передачи по миди, но надо же сравнить байты, а без перекодировки 8байт-7байт как Вам это удалось? Ещё одно соображение, если передача всего банка виснет, то "выньте" патчами проблемный банк, раз сисекс патча Вы представили, значит этот режим есть.Так я рассматривал - место с патчем повторяется в банке. Там и на модуле, когда передаётся весь войсовый банк - на экран поочерёдно выводятся названия передаваемых патчей.
Я уже не помню точно (есть где-то распечатки ассемблера), но принцип был таков, что семь бит не сразу вводились в ячейку памяти а сдвигались на бит влево (занимая место нолика в старшем бите и освобождая младший бит), потом принимался следующий байт, старший нолик отбрасывался, следующий значащий бит занимал место в предыдущем байте в младшем разряде - после чего в новопринятом байте сдвиг бит влево производился уже дважды, освобождалось уже 2-а младших бита, в последующих процедурах - 3, 4... То-бишь нолики старших разрядов удалялись а на их место "выжимались" значащие биты данных. При распаковке проводилась обратная процедура.без перекодировки 8байт-7байт как Вам это удалось
- так пробовал, не отдаёт. Думал, в модуле во второй войсбанк - загрузить то, что читается-передаётся, в первый войсбанк - "проблемный". Перекопировать нужные патчи из первого во второй "правильный" войсбанк и попытаться сохранить нужное уже с ним. Надо будет денёк выделить на эксперименты.если передача всего банка виснет, то "выньте" патчами проблемный банк
Я всегда имел ввиду, что лично у меня из Ваших данных нет "данных полного сисэкс-дампа всего банка " а есть данные банка(как Вы говорите) нативного формата и нет "Сисэкс-дамп одного патча " а есть что-то на это похожее в текстовом формате(зачем-то). По поводу банка, я подозреваю, что в Вашем нативном формате не только патчи. Визуально выделяются минимум 3-4 разные секции данных(если не больше) и в шапке нативного дампа написано не All Patch или All Perform или All Voice или All Sample а просто All, например у меня в Korg M1 было несколько разных форматов дампов для собственно звуков(штук 6), дамп глобальных настроек, дамп секвенсора и ,наконец, формат All включал AllProg+AllCombi+секвенсор+глобальные настройки. Думаю и Вашем случае нечто подобное. Поэтому, чтобу попробовать найти данные каждого патча отдельно, мне нужно, как я Вам говорил настоящий Сисэкс-дамп одного патча (а не переработанный Вами в текстовую картинку) и если в нативном формате данные идут в том же порядке что и мидидампе и в той же внутренней кодировке(а это не всегда так), то может повезёт и можно будет сотворить и сисексы для патчей Вашего сюрреалистического банка, который корректно загружается в модуль, а выходить оттуда никак не хочет.P.S. перечитал ещё раз предыдущий топик и решил, что мы говорим о разных вещах. Сисэкс-дамп одного патча есть подмножество данных полного сисэкс-дампа всего банка и, чтобы их сравнивать, не требуется никакой перекодировки 7-8. Достаточно найти в мидимониторе нужное место и просто сравнить визуально.
Странные у Вас сисексы, вот отчёт моей программы просмотра:Вот в сисексах.