Changeset 3367


Ignore:
Timestamp:
Oct 13, 2012, 3:40:00 AM (18 months ago)
Author:
wmb
Message:

x86 kernel - added bscan code word used by new substring variant.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • cpu/x86/kerncode.fth

    r2904 r3367  
    656656   dx di mov 
    657657   2 # cx shl  cx push 
     658c; 
     659 
     660\ Find the first occurence of bvalue, returning the residual string 
     661code bscan  ( adr1 len1 char -- adr' len' ) 
     662   si dx mov 
     663   cld 
     664   bx pop                  \ bx: char 
     665   cx pop                  \ cx: count 
     666   si pop                  \ si: adr 
     667   cx cx or  0<>  if 
     668      begin 
     669         al lods 
     670         bl al cmp 
     671      loopne 
     672      =  if                 
     673         si dec si push    ( adr' ) 
     674         cx inc cx push    ( adr' len' ) 
     675         dx si mov 
     676         next 
     677      then 
     678   then 
     679   si push                 ( adr' ) 
     680   cx push                 ( adr' len' ) 
     681   dx si mov 
    658682c; 
    659683 
Note: See TracChangeset for help on using the changeset viewer.