XUINCNV ;SFISC/HVB - STRIP ASCII 127&128 FROM AC&VC ;8/25/89 09:15 [ 04/02/2003 8:29 AM ]
;;8.0;KERNEL;**1002,1003,1004,1005,1007**;APR 1, 2003
;;7.1;KERNEL;;May 11, 1993
S T=+$H F X=0:0 S X=$O(^VA(200,X)) Q:'X D B
Q
B Q:'$D(^VA(200,X,0)) S (AC,AC0)=$P(^(0),"^",3) Q:AC=""!('$D(^(.1))) S (VC,VC0)=$P(^(.1),"^",2)
C F Z=0:0 Q:AC'[$C(127) S P=$F(AC,$C(127)),AC=$E(AC,1,P-2)_$E(AC,P,20)
F Z=0:0 Q:AC'[$C(128) S P=$F(AC,$C(128)),AC=$E(AC,1,P-2)_$E(AC,P,20)
F Z=0:0 Q:VC'[$C(127) S P=$F(VC,$C(127)),VC=$E(VC,1,P-2)_$E(VC,P,20)
F Z=0:0 Q:VC'[$C(128) S P=$F(VC,$C(128)),VC=$E(VC,1,P-2)_$E(VC,P,20)
W:$X>74 ! S Y=1
I AC'=AC0 S $P(^VA(200,X,0),"^",3)=AC,^VA(200,"A",AC,X)=T K ^VA(200,"A",AC0) W X,"a" S Y=0
I VC'=VC0 S $P(^VA(200,X,.1),"^",2)=VC W:Y X W "v"
Q
XUINCNV ;SFISC/HVB - STRIP ASCII 127&128 FROM AC&VC ;8/25/89 09:15 [ 04/02/2003 8:29 AM ]
+1 ;;8.0;KERNEL;**1002,1003,1004,1005,1007**;APR 1, 2003
+2 ;;7.1;KERNEL;;May 11, 1993
+3 SET T=+$HOROLOG
FOR X=0:0
SET X=$ORDER(^VA(200,X))
IF 'X
QUIT
DO B
+4 QUIT
B IF '$DATA(^VA(200,X,0))
QUIT
SET (AC,AC0)=$PIECE(^(0),"^",3)
IF AC=""!('$DATA(^(.1)))
QUIT
SET (VC,VC0)=$PIECE(^(.1),"^",2)
C FOR Z=0:0
IF AC'[$CHAR(127)
QUIT
SET P=$FIND(AC,$CHAR(127))
SET AC=$EXTRACT(AC,1,P-2)_$EXTRACT(AC,P,20)
+1 FOR Z=0:0
IF AC'[$CHAR(128)
QUIT
SET P=$FIND(AC,$CHAR(128))
SET AC=$EXTRACT(AC,1,P-2)_$EXTRACT(AC,P,20)
+2 FOR Z=0:0
IF VC'[$CHAR(127)
QUIT
SET P=$FIND(VC,$CHAR(127))
SET VC=$EXTRACT(VC,1,P-2)_$EXTRACT(VC,P,20)
+3 FOR Z=0:0
IF VC'[$CHAR(128)
QUIT
SET P=$FIND(VC,$CHAR(128))
SET VC=$EXTRACT(VC,1,P-2)_$EXTRACT(VC,P,20)
+4 IF $X>74
WRITE !
SET Y=1
+5 IF AC'=AC0
SET $PIECE(^VA(200,X,0),"^",3)=AC
SET ^VA(200,"A",AC,X)=T
KILL ^VA(200,"A",AC0)
WRITE X,"a"
SET Y=0
+6 IF VC'=VC0
SET $PIECE(^VA(200,X,.1),"^",2)=VC
IF Y
WRITE X
WRITE "v"
+7 QUIT