home *** CD-ROM | disk | FTP | other *** search
/ Shareware Overload / ShartewareOverload.cdr / progm / dpl.zip / DOBEEP.D < prev    next >
Text File  |  1988-07-11  |  1KB  |  55 lines

  1. ; Doug's Programming Language  -- DPL, Version 2.22
  2. ; Copyright (c) 1988 Douglas S. Cody, All rights reserved.
  3. ;-------------------------------------------
  4. ; DOBEEP  --  Beep the speaker
  5. ;
  6. ; Entry Conditions:
  7. ;    None
  8. ; Exit conditions:
  9. ;    No registers modified
  10. ;
  11. SUBPGM    DOBEEP
  12. BEGIN    DOBEEP
  13.     PUSH    AX
  14.     PUSH    BX
  15.     PUSH    CX
  16.     PUSH    DX
  17. ;
  18. ; PERFORM A HARDWARE MANIPULATED CLICK
  19.     MOV    AL,10110110B        ; TIMER 2, LSB, MSB, BINARY
  20.     OUT    43H,AL            ; TIMER MODE REGISTER
  21.     MOV    AX,53H*20        ; 500 HZ TONE
  22.     OUT    42H,AL            ;  LSB
  23.     MOV    AL,AH            ;
  24.     OUT    42H,AL            ;  MSB
  25.     IN    AL,61H            ; GET THE CURRENT STATE
  26.     MOV    AH,AL            ; SAVE FOR LATER RESTORATION
  27.     AND    AH,0FCH            ; WITH THE TIMER/BEEPER OFF.
  28.     OR    AL,3            ; CALC THE TIMER GATE & ENABLE
  29.     OUT    61H,AL            ; SOUND OFF!!!!
  30.     PUSH    AX
  31. ;
  32.     MOV    AH,0
  33.     INT    1AH
  34.     MOV    BX,DX
  35.     ADD    BX,6
  36. ;
  37. CLCK:
  38.     INT    1AH
  39.     CMP    BX,DX
  40.     JNZ    CLCK
  41. ;
  42.     POP    AX
  43.     MOV    AL,AH            ; RESTORE ALL
  44.     OUT    61H,AL
  45. ;
  46. CLX:
  47.     POP    DX
  48.     POP    CX
  49.     POP    BX
  50.     POP    AX
  51.     RETURN
  52. ;
  53. ENDPGM    DOBEEP
  54. ;