Как добавить музыку в программу на Ассемблере

Тема в разделе "WASM.ASSEMBLER", создана пользователем holld, 8 мар 2009.

  1. holld

    holld New Member

    Публикаций:
    0
    Регистрация:
    16 дек 2008
    Сообщения:
    39
    Привет всем помогите пожалуста разобраться Новичку!!! Я хочу добавить в свою программу музыку чтобы при запуске программы проигрывался музыкальный файл формата .xm. Как это сделать при помощи Ассемблера использую RadASM . В гуглея я ответа на этот вопрос так и не нашел. ... . Если кто знает можно небольшой пример.
    И еще пару вопросов по ходу =)

    1)Как изменить цвет текста в программе при помощи API CreateFontIndirect читая тутор от iczelion у меня так и не получилось изменит цвет текста использую API CreateFontIndirect .

    2)Как создать небольшое окно со своим текстом в ну три столкнулся с такой проблемой не знаю как поместить свой текст в небольшое окно кроме как в МessageBoxA у меня больше не куда не получается поместить свой текст.
     
  2. Spectrum

    Spectrum Member

    Публикаций:
    0
    Регистрация:
    8 дек 2005
    Сообщения:
    43
    Адрес:
    Одесса
    Первое, что на ум приходит (но тут с форматом .wav):

    invoke PlaySound, addr wav_name, 0, SND_ASYNC or SND_NODEFAULT or SND_FILENAME
     
  3. RamMerLabs

    RamMerLabs Well-Known Member

    Публикаций:
    0
    Регистрация:
    11 сен 2006
    Сообщения:
    1.426
    nop
    http://wasm.ru/baixado.php?mode=src&id=301 - заглянь сюда. странно, что ты этого не нашёл
     
  4. holld

    holld New Member

    Публикаций:
    0
    Регистрация:
    16 дек 2008
    Сообщения:
    39
    Респект!!!

    Но там какой та гигантский исходник получается есть еще какие ни будь предложения?
     
  5. Asterix

    Asterix New Member

    Публикаций:
    0
    Регистрация:
    25 фев 2003
    Сообщения:
    3.576
    неужели?
     
  6. Vov4ick

    Vov4ick Владимир

    Публикаций:
    0
    Регистрация:
    8 окт 2006
    Сообщения:
    581
    Адрес:
    МО
    Есть готовые библиотеки для игры музыки. Например http://www.un4seen.com/ Музыку добавляем в ресурс программки.
     
  7. holld

    holld New Member

    Публикаций:
    0
    Регистрация:
    16 дек 2008
    Сообщения:
    39
    Имхо.....А что разве не мало для проигрывания одного музыкального файла. Тогда лучше написать на Delphi


    Спасибо за ответ Vov4ick. Нашол исходник программки на Ассемблере при запуске которой проигрывается музыка
    там как раз используется одна из этих библиотек. mfmplayer.lib http://slil.ru/27036828 так вот пишу для тех кому интересно, подключаем эту библиотеку в библиотеку импорта программы=)
    Код (Text):
    1. include gdi32.inc
    2. include mfmplayer.inc  
    3. ;==================
    4. includelib gdi32.lib
    5. includelib mfmplayer.lib
    В не инициализированных данные пишем
    .data?
    ; Музыка
    nMusicSize DWORD ?
    pMusic LPVOID ?

    Код (Text):
    1. В секцие кода
    2. ; Загрузить музыку
    3. push esi
    4. INVOKE FindResource, hInstance, IDM_MAINDIALOG, RT_RCDATA
    5. push eax
    6. INVOKE SizeofResource, hInstance, eax
    7. mov nMusicSize, eax
    8. pop eax
    9. INVOKE LoadResource, hInstance, eax
    10. INVOKE LockResource, eax
    11. mov esi, eax
    12. mov eax, nMusicSize
    13. add eax, SIZEOF nMusicSize
    14. INVOKE GlobalAlloc, GPTR, eax
    15. mov pMusic, eax
    16. mov ecx, nMusicSize
    17. mov dword ptr [eax], ecx
    18. add eax, SIZEOF nMusicSize
    19. mov edi, eax
    20. rep movsb
    21. pop esi
    В файле ресурса в .rc пишим
    // XM Музыка
    IDM_MAINDIALOG RCDATA "myMusic.xm"

    Ребята может кто объяснить Дебилу на пальцах как изменить цвет текста в программе, как добавить свой текст
    в окно я разобрался нужно в файле .rc написать свой текст к примеру надо так =)
    BEGIN
    LTEXT "myText", 904, 10, 74, 150, 8, SS_LEFT
    END

    И на подлесок где можно почитать про описание .rc интересен сам синтаксис?
     
  8. holld

    holld New Member

    Публикаций:
    0
    Регистрация:
    16 дек 2008
    Сообщения:
    39
    Продублировалась
    [delete]
     
  9. murder

    murder Member

    Публикаций:
    0
    Регистрация:
    3 июн 2007
    Сообщения:
    628
    nop
    SetTextColor(HDC hdc, COLORREF crColor); (GDI32.DLL)
     
  10. holld

    holld New Member

    Публикаций:
    0
    Регистрация:
    16 дек 2008
    Сообщения:
    39
    murder Спасибо!!! Разобрался
    Вот еще инфа по теме http://forum.exetools.com/showthread.php?t=8554