home *** CD-ROM | disk | FTP | other *** search
/ Power-Programmierung / CD1.mdf / assemblr / library / asm_kit / noise.asm < prev    next >
Assembly Source File  |  1985-06-21  |  2KB  |  36 lines

  1. ;NOISE--Make a sound with the speaker
  2. ;can`t be stopped execpt by reset
  3. ;
  4. ;********************************************************************
  5. prognam       segment                  ;define code segment
  6. ;
  7. ;-------------------------------------------------------------------
  8. main          proc      far            ;main part of program
  9. ;
  10.               assume    cs:prognam
  11. ;
  12.               org       100h           ;start of program
  13. ;
  14. start:                                 ;starting execution address
  15.               mov  dx,140h             ;initial value of wait
  16.               in   al,61h              ;get port 61
  17.               and  al,11111100b        ;and off bits 0, 1
  18. sound:        xor  al,2                ;toggle bit #1 in AL
  19.               out  61h,al              ;output to port 61
  20.               add  dx,9248h            ;add random pattern
  21.               mov  cl,3                ;set to rotate 3 bits
  22.               ror  dx,cl               ;rotate it
  23. ;
  24.               mov  cx,dx               ;put in CX
  25.               and  cx,1ffh             ;mask off upper 7 bits
  26.               or   cx,10               ;ensure not to long
  27. ;
  28. wait:         loop wait                ;wait
  29.               jmp  sound               ;keep on toggling
  30. ;
  31. main          endp                     ;end of main part of program
  32. ;--------------------------------------------------------------------
  33. prognam       ends                     ;end of code segment
  34. ;********************************************************************
  35.               end                      ;end assembly
  36.