PROGRAM LCASE;{$P,C-,M-,F-} {$I+} TYPE $STRING0 = STRING 0; $STRING80 =STRING 80; $STRING255 = STRING 255; VAR DATA:$STRING80; FUNCTION LENGTH(x:$STRING255):INTEGER;EXTERNAL; PROCEDURE SETLENGTH(VAR X:$STRING0; Y:INTEGER);EXTERNAL; {function to convert a string "x" to all lower case characters and then return this converted string.. corresponds to the BASIC command LCASE$(A$)..} FUNCTION LCASE(X:$STRING255):$STRING255; LABEL 1; VAR I,LEN,ASCII:INTEGER; LCASEX:$STRING80; BEGIN SETLENGTH(LCASEX,0); LEN:=LENGTH(X); IF (LEN = 0) OR (LEN > 255) THEN GOTO 1; FOR I:=1 TO LEN DO IF (ORD(X[I]) > 64) AND (ORD(X[I]) < 91) THEN APPEND(LCASEX,CHR(ORD(X[I])+32)) ELSE APPEND(LCASEX,X[I]); {97 represents a little 'a' and 122 a little 'z'..32 is the offset between a capital and a little letter in ascii code} LCASE:=LCASEX; 1: {immediate exit upon fatal error} END; Begin end. .