home *** CD-ROM | disk | FTP | other *** search
/ Simtel MSDOS - Coast to Coast / simteldosarchivecoasttocoast2.iso / awk / awk320sr.zip / AWKUTIL.C < prev    next >
C/C++ Source or Header  |  1991-04-25  |  637b  |  43 lines

  1. #pragma inline
  2. /*
  3.  * Awk stack push pop routines
  4.  *
  5.  * Copyright (C) 1988, 1989, 1990, 1991 by Rob Duff
  6.  * All rights reserved
  7.  */
  8.  
  9. #include "awk.h"
  10.  
  11. void xpop(void far *dst)
  12. {
  13.     _CX = sizeof(ITEM) / 2;
  14. asm les di, dst
  15. asm mov si, stackptr
  16. asm rep movsw
  17.     stackptr++;
  18. }
  19.  
  20. void xpush(void far *src)
  21. {
  22.     stackptr--;
  23.     _CX = sizeof(ITEM) / 2;
  24. asm push ds
  25. asm mov ax,ds
  26. asm mov es,ax
  27. asm mov di, stackptr
  28. asm lds si, src
  29. asm rep movsw
  30. asm pop ds
  31. }
  32.  
  33. void xmove(void far *dst, void far *src)
  34. {
  35.     _CX = sizeof(ITEM) / 2;
  36. asm push ds
  37. asm les di, dst
  38. asm lds si, src
  39. asm rep movsw
  40. asm pop ds
  41. }
  42.  
  43.