|
|
« Предыдущая тема | Следующая тема » |
Опции темы | Опции просмотра |
|
|
|||||
Музыканты/програмисты похелпствуйте плиз :)
Тут такое тупое задание было надо запрограмить прогу, чтобы юзер ввел положение ноты в массиве от [0-22], а далее на PC speaker издать частоту, то есть саму ноту.
Тут очень много чего в проге ну вот что важно. Я в музыке нифига ВАЩЕ не понимаю, поэтому мне дали эту таблицу, а мне все равно это ниче не говорит Цитата:
Вот сделал прогу, так там конечно есть небольшие неточности, но это не важно. Мне вот главное бы знать при выборе нот 0-1-2-3-4........-21-22 наблюдается ли нужная последовательность звуков. Не знаю типа до-ре-ми-фа-соль-ля-си или еще че. Может ли кто-нить определить??? Плиз ребят так надо, файл прилагается. Если ошики и есть, то скорей всего в процедурах GET_COUNT или PLAY. Так что если найдется добрый гений проверить эти процедуры, я бы был безмерно ему благодарен. Но самое важное что програма может быть рабочая без багов просто я в музыке 0 ЗЫ Работает ТОЛЬКО на процах ИНТЕЛ Заранее всем спасибо
__________________
Кто рано встает, тому... спать весь день хочется. Последний раз редактировалось Countach; 15.12.2001 в 20:10. |
|
|||||
Забыл сказать запускайте лучше под Досом
__________________
Кто рано встает, тому... спать весь день хочется. |
|
|||||
PS
PS И что это за бредня такая фиговая появляется иногда??
Your program caused a divide overflow error. If the problem persists, contact your program vendor. Блин ваще ж ниче пока не ввел не сделал, а она сказу бах, и на тебе
__________________
Кто рано встает, тому... спать весь день хочется. |
|
|||||
личку глянь
|
|
|||||
Цитата:
__________________
Кто рано встает, тому... спать весь день хочется. |
|
|||||
да, это типа прикола...
посмотри раздел своих личных сообщений (приват) ))) |
|
|||||
Пасиб попробую врубиться
А что это модно в приват писать ?? А чё не интел такой ж он хороший
__________________
Кто рано встает, тому... спать весь день хочется. |
|
|||||
Блин методом тыка врубился, что есть проблема, примерно тут
[code] PUSH CX ;store loop counter MOV AL,DH ;get the note value from the... XLAT ;...NOTES array in sequence and... MOV CL,AL ;...copy it to the FREQ variable INC DH MOV AL,DH XLAT MOV CH,AL INC DH MOV FREQ,CX Блин но я никак не пойму что ему не нравится
__________________
Кто рано встает, тому... спать весь день хочется. |
|
|||||
Блин ну как тут мона спокойным быть
Вот есть такой аррей
NOTES DW 262,277,294,311,330,349,370,392,415,440,466,494,523,554,587,622,659,698,740,831,880,932,988 GET_COUNT PROC MOV DH,0 MOV CX,23 LEA BX,NOTES INIT: PUSH CX ;store loop counter MOV AL,DH ;get the note value from the... XLAT ;...NOTES array in sequence and... MOV CL,AL ;...copy it to the FREQ variable INC DH MOV AL,DH XLAT MOV CH,AL INC DH MOV FREQ,CX CALL CONVERT ;convert frequency into count number POP CX ;restore loop counter PUSH BX PUSH DX MOV DX,CX ;copy loop counter for subrtraction DEC DX ;generate position for the count number... MOV BX,22 ;... in the COUNT array SUB BX,DX SHL BX,1 MOV DX,FREQ MOV COUNT[BX],DX ;move count to its proper position in COUNT POP DX POP BX LOOP INIT RET GET_COUNT ENDP Ну где-нить тут есть ошибка Не люди давайте так, как взять переменную из DW!!!(16-бит) аррея и записать в AX скажем?? Народ через XLAT ЖОПА какая то
__________________
Кто рано встает, тому... спать весь день хочется. |
|
|||||
ЗЫ может еще сорс CONVERT кому нужен, вот
Тока помогите же, ну блин он мне чего мозги разбросать хочет
__________________
Кто рано встает, тому... спать весь день хочется. |
Часовой пояс GMT +4, время: 14:04. |
|
« Предыдущая тема | Следующая тема » |
|
|