home *** CD-ROM | disk | FTP | other *** search
/ Stars of Shareware: Programmierung / SOURCE.mdf / programm / msdos / c / dmkit / flat / t16.asm < prev    next >
Encoding:
Assembly Source File  |  1993-12-31  |  1.6 KB  |  117 lines

  1. ;;*** T16.ASM    Converts an 8 bit mono sound sample into various formats
  2. ;;***        for testing purposes.
  3. ;;***
  4. ;;*** Written by John W. Ratcliff (c) 1994
  5. ;;***         Compuserve: 70253,3237
  6. ;;***         Genie: J.RATCLIFF3
  7. ;;***         BBS: 1-314-939-0200
  8. ;;***         Addresss:
  9. ;;***               747 Napa Lane
  10. ;;***               St. Charles, MO 63304
  11. ;;***
  12.  
  13.  
  14.     IDEAL
  15.     P386
  16.     JUMPS
  17.     MODEL FLAT,C
  18.  
  19.     public    Left8
  20.     public    Right8
  21.     public    Mono16
  22.     public    Left16
  23.     public    Right16
  24.  
  25.  
  26.     CODESEG
  27.  
  28. Proc    C Left8 near
  29.     ARG    SOURCE:DWORD,DEST:DWORD,SLEN:DWORD
  30.     uses    ecx,esi,edi
  31.  
  32.     mov    esi,[SOURCE]
  33.     mov    edi,[DEST]
  34.     mov    ecx,[SLEN]
  35.     xor    ax,ax
  36. @@GO:    movsb
  37.     stosb
  38.     loop    @@GO
  39.  
  40.     ret
  41.     endp
  42.  
  43. PROC    C Right8 near
  44.     ARG    SOURCE:DWORD,DEST:DWORD,SLEN:DWORD
  45.     uses    ecx,esi,edi
  46.  
  47.     mov    esi,[SOURCE]
  48.     mov    edi,[DEST]
  49.     mov    ecx,[SLEN]
  50.     xor    eax,eax
  51. @@GO:    stosb
  52.     movsb
  53.     loop    @@GO
  54.  
  55.     ret
  56.     endp
  57.  
  58. PROC    C Mono16 near
  59.     ARG    SOURCE:DWORD,DEST:DWORD,SLEN:DWORD
  60.     uses ecx,esi,edi
  61.  
  62.     mov    esi,[SOURCE]
  63.     mov    edi,[DEST]
  64.     mov    ecx,[SLEN]
  65. @@GO:    lodsb
  66.     mov    ah,al
  67.     xor    al,al
  68.     sub    ax,32767
  69.     stosw
  70.     loop    @@GO
  71.  
  72.     ret
  73.     endp
  74.  
  75. PROC    C Left16 near
  76.     ARG    SOURCE:DWORD,DEST:DWORD,SLEN:DWORD
  77.     uses ecx,esi,edi
  78.  
  79.     mov    esi,[SOURCE]
  80.     mov    edi,[DEST]
  81.     mov    ecx,[SLEN]
  82.  
  83. @@GO:    lodsb
  84.     mov    ah,al
  85.     xor    al,al
  86.     sub    ax,32767
  87.     stosw
  88.     mov    ax,8000h
  89.     stosw
  90.     loop    @@GO
  91.  
  92.     ret
  93.     endp
  94.  
  95. PROC    C Right16 near
  96.     ARG    SOURCE:DWORD,DEST:DWORD,SLEN:DWORD
  97.     uses ecx,esi,edi
  98.  
  99.     mov    esi,[SOURCE]
  100.     mov    edi,[DEST]
  101.     mov    ecx,[SLEN]
  102.  
  103. @@GO:    mov    ax,8000h
  104.     stosw
  105.     lodsb
  106.     mov    ah,al
  107.     xor    al,al
  108.     sub    ax,32767
  109.     stosw
  110.     loop    @@GO
  111.  
  112.     ret
  113.     endp
  114.  
  115.     ends
  116.     end
  117.