home *** CD-ROM | disk | FTP | other *** search
/ BURKS 2 / BURKS_AUG97.ISO / BURKS / SOFTWARE / LIBS / PMC101.ZIP / LIBSRC.ZIP / MEMICMP.ASM (.txt) < prev    next >
Assembly Source File  |  1994-06-14  |  870b  |  56 lines

  1. .386p
  2. locals
  3.  
  4. public  MEMICMP
  5.  
  6. _TEXT           segment byte public use32 'CODE'
  7. assume  cs:_TEXT
  8.  
  9. MEMICMP:
  10.         push esi edi
  11.         cld
  12.  
  13.         mov edi,[esp+4+8+08h]
  14.         mov esi,[esp+4+8+04h]
  15.         mov ecx,[esp+4+8+00h]
  16.         jecxz short @@01
  17.  
  18. @@00l:
  19.         lodsb
  20.         cmp al,'A'
  21.         jb short @@00l00
  22.         cmp al,'Z'
  23.         ja short @@00l00
  24.         add al,'a'-'A'
  25.  
  26. @@00l00:
  27.         mov ah,[edi]
  28.         inc edi
  29.         cmp ah,'A'
  30.         jb short @@00l01
  31.         cmp ah,'Z'
  32.         ja short @@00l01
  33.         add ah,'a'-'A'
  34.  
  35. @@00l01:
  36.         cmp al,ah
  37.         loope short @@00l
  38.         je short @@01
  39.  
  40.         setb al
  41.         seta ah
  42.         sub al,ah
  43.         movsx eax,al
  44.         jmp short @@00
  45.  
  46. @@01:
  47.         xor eax,eax
  48.  
  49. @@00:
  50.         pop edi esi
  51.         ret 0ch
  52.  
  53. _TEXT           ends
  54. end
  55.  
  56.