home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
OS/2 Shareware BBS: 18 REXX
/
18-REXX.zip
/
rexxface.zip
/
xbm2ascii.cmd
< prev
next >
Wrap
OS/2 REXX Batch file
|
1998-02-01
|
2KB
|
59 lines
/*
* xbm2ascii.cmd --- width=48 XBM to ascii-picture converter
*
* Copyright (C) 1997-1998 OKUNISHI Fujikazu
*
* Author: OKUNISHI Fujikazu <fuji0924@mbox.kyoto-inet.or.jp>
* Created: Jul 30, 1997
* Revised: Feb 1, 1998
*
* how2use:
* ex.)
* 1. xface.cmd +x-face/6 | xbm2ascii.cmd [RET]
* 2a. xbm2ascii.cmd foo.xbm [RET]
* 2b. xbm2ascii.cmd < foo.xbm [RET]
*/
Parse Arg IN .
If IN='' Then Do; If Lines()==0 Then Exit 255; IN='STDIN'; End
Else If Stream(IN,'C','Query Exist') ='' Then Exit 255
str=''
Do i=1 By 1 While Lines(IN)
str.i= Linein(IN)
If Left(Word(str.i,1),2)<>'0x' Then Iterate
Do Until Length(str.i) = 0
Parse Var str.i '0x' strA.i ',' str.i
strA.i =Substr(strA.i,1,2)
If Datatype(strA.i,'X') <>1 Then Leave
strA.i = B2X(Reverse(X2b(strA.i)))
str = str strA.i
End
End
Do i=1 By 1 While Length(str) > 0
Parse Var str str1.i str2.i str3.i str4.i str5.i str6.i str7.i str8.i str9.i strA.i strB.i strC.i str
line1.i= X2B(str1.i||str2.i||str3.i||str4.i||str5.i||str6.i)
line2.i= X2B(str7.i||str8.i||str9.i||strA.i||strB.i||strC.i)
/* say line1.i; say line2.i*/
End
Do j=1 to i-1
l.j=''
Do m=1 to 48 /* 48x48 */
a1.j.m=Substr(line1.j,m,1)
a2.j.m=Substr(line2.j,m,1)
d.j= a1.j.m||a2.j.m
If d.j='00' Then d.j=' '
If d.j='01' Then d.j='w' /* 'o' */
If d.j='10' Then d.j='"'
If d.j='11' Then d.j='W' /* 'M' 'H' 'Z' */
l.j=l.j||d.j
End
Say l.j
End
Exit
/* end of procedure */