Вопрос № 26451: Вопрос: В приложении есть вариан как проиграть из ресурса wav файл. Как переделать программу, чтобы из памяти проигравался MIDI.
Если получиться, дайте документацию о функции midiInStart - подозреваю, что за всем этим стоит именно она.
Какие ...Вопрос № 26457: Был вопрос:
Нужно двойное слово, начинающееся с адреса DATAX, т.е. 01482316h умножить на слово DATAY, причем используя только 16-ые регистры процессора.
Вообще представления не имею, как это сделать?
Немогли бы вы мне объяснить теорию!<br...
Вопрос № 26.451
Вопрос: В приложении есть вариан как проиграть из ресурса wav файл. Как переделать программу, чтобы из памяти проигравался MIDI.
Если получиться, дайте документацию о функции midiInStart - подозреваю, что за всем этим стоит именно она.
Какие структуры есть, куда нужно записать параметры выбранного устройства MIDI, перед тем как проиграть midiInStart. midiInOpen - что делает эта функция?
Отвечает: Sager
Здравствуйте, Подболотов Иван Алексеевич!
вот пример проигрывания миди-файла
Приложение:
Ответ отправил: Sager (статус: 8-ой класс)
Отправлен: 16.09.2005, 19:37 Оценка за ответ: 5 Комментарий оценки: Отлично, осталось теперь со структурами разобраться, что они значат! Огромное спасибо!
Отвечает: Undertaker
Здравствуйте, Подболотов Иван Алексеевич!
http://www.rsdn.ru/article/multimedia/midi.xml
Ответ отправил: Undertaker (статус: 4-ый класс)
Отправлен: 16.09.2005, 23:04
Вопрос № 26.457
Был вопрос:
Нужно двойное слово, начинающееся с адреса DATAX, т.е. 01482316h умножить на слово DATAY, причем используя только 16-ые регистры процессора.
Вообще представления не имею, как это сделать?
Немогли бы вы мне объяснить теорию!
этого процесса!
А то я запутался в вашем коде.
Отвечает: Ayl
Здравствуйте, Терсков Алексей Николаевич!
Я же тебе объяснил теорию в ответе на вопрос 25917.
Посторяю еще раз.
Что такое двойное слово с точки зрения 16-разрядного процессора? Это два 16-разрядных слова, причем их можно записать так: X = A*2^16 + B (сравни с записью: 98 = 9*10 + 8).
Т.о. ты имеешь два числа: X = A*2^16 + B и Y = C*2^16 + D.
Каждое частичное произведение использует только 16-разрядные элементы. Умножения на 2^16 и на 2^32 выполняются с помощью записи множимых в нужные разряды результата.
Код смотри в ответе на вопрос №25917.
--------- Трудное - то, что можно сделать немедленно. Невозможное - то, для выполнения чего требуется немного больше времени
Ответ отправил: Ayl (статус: Профессор)
Отправлен: 21.09.2005, 14:19 Оценка за ответ: 5 Комментарий оценки: Это меня спасло: "98 = 9*10 + 8" :-)