PDA

View Full Version : ساخت آهنگ



poya011
چهارشنبه 05 دی 1386, 18:25 عصر
سلام به دوستان
من می خواستم با استفاده از emu 8086 یک آهنگ بسازم ولی هیچگونه اطلاعاتی اولیه در مورد این موضوع ندارم . فقط در حد مبتدی . نمی دانم صدای مورد نظر از بوق BIOS بیرون می آید یا از خود اسپیکر سیستم اگر می شود کد ساده برای یادگیری بگذارید در ضمن اگر شد برنامه ساده ای در این تاپیک بگذارید با تشکر.

kiarash_king
شنبه 15 دی 1386, 20:04 عصر
از این استفاده کن تا یه جرقه ای در ذهنت به وجود بیاد واسه بقیش

durtion dw 10000
tone dw 512h


seda proc near
in al,21h
push ax
cli
call spkr
pop ax
out 61h, al
sti
mov ax, 4c00h
int 21h
seda endp
;************************************
spkr proc near
b20:
mov dx, durtion
b30:
and al,11111100b
out 61h, al
mov cx, tone
b40:
loop b40
or al, 00000010b
out 61h, al
mov cx,tone
b50:
loop b50
dec dx
jnz b30
shl durtion,1
shr tone,1
jnz b20
ret
spkr endp

Delphi Coder
شنبه 15 دی 1386, 21:48 عصر
;************************************
spkr proc near
b20:
mov dx, durtion
b30:
and al,11111100b
out 61h, al
mov cx, tone
b40:
loop b40
or al, 00000010b
out 61h, al
mov cx,tone
b50:
loop b50
dec dx
jnz b30
shl durtion,1
shr tone,1
jnz b20
ret
spkr endp

استفاده از Loop برای Delay ایده خوبی نیست من یه بار دردسرشو کشیدم. چون سرعت پروسسورها باهم فرق داره تو یه PC صدا بم تو یکی دیگه زیر و بعضی ها اصلا با گوش شنیده نمیشه.

Delphi Coder
شنبه 22 دی 1386, 09:59 صبح
این برنامه که ضمیمه کردم ترکیبی از یه Screen Saver توی DN با یکی از برنامه های TSR قدیمی برای پخش موزیک هست که خیلی وقت پیش اینارو Disassemble کردم و باهم ترکیبش کردم. میتونید قسمت موزیکشو جدا کنید و مطالعه کنید. یه تیکه کوچولو از برنامه هست. اگر نتونستید بگید تا خودم جداش کنم.