1This is the readme file for CWEB for QDOS/SMSQ systems
2
3(These instructions are for systems with Toolkit II,
4 please report any problems to me, the address is at the
5 end of the file)
6
7If you want to compile CWEB for your QL system, you must first
8convert the ASCII code to the QL's character set.  Therefore you
9can use the little BASIC program appended at the end of the file.
10
11For a first version you have to alter the supplied ctangle_c file.
12Set your DATA_USE to the directory you have the CWEB sources in, and
13the PROG_USE to C68's directory.
14compile it with:
15ex cc;'common_c ctangle_c -bufp500K -octangle'
16
17then ctangle the source files with:
18ex datad$&'ctangle';'common_w comm-ql_ch'
19ex datad$&'ctangle';'ctangle_w ctang-ql_ch'
20ex datad$&'ctangle';'cweave_w cweav-ql_ch'
21
22Compile the following way (C68v4.14 +):
23
24ex cc;'-c common_c'
25ex cc;'-c ctangle_c'
26ex cc;'-c cweave_c'
27ex ld;'-bufp500K common_o ctangle_o -octangle'
28ex ld;'-bufp500K common_o cweave_o -ocweave'
29
30After that copy the ctangle and cweave executables into your
31programs directory (if you want them there).
32
33The DATA default may be used as usual.  E.g. if you have
34a file win2_data_test_w and the DATA default set to
35win2_data_ you may call ctangle with
36     ex ctangle;'test'
37assuming that ctangle is in your PROG default.
38
39Please report any problems with the QL version to:
40Robert Klein
41Bluecherstrasse 24
42D-56349 Kaub
43Germany
44
45
46**************** ASCII Conversion program ***************
47With this program you can convert DOS and Unix 7-Bit ASCII
48files to the QL's character set.  You'll need Toolkit II.
49The program will take all the files in the source directory
50and put them converted into the destination&source directory,
51e.g. you have as drive1$='win2_', drive2$='win3_',
52path1$='cweb_' and path2$='ql_'.  Then the routine will take
53all files in win2_cweb_ (wthout subdirectories!) convert them
54and write them to 'win3_ql_cweb_'.  It's only a lousy hack,
55but it'll do it's job.
56
571000 DEFine PROCedure dos2ql (drive1$,path1$,drive2$,path2$)
581002 LOCal zx$,zx%,ishl,ashl
591005 DELETE drive2$&path2$&'dirlist'
601010 OPEN_NEW#5,drive2$&path2$&'dirlist'
611020 DIR#5,drive1$&path1$
621030 CLOSE#5
631040 OPEN_IN#5,drive2$&path2$&'dirlist'
641050 INPUT#5,zx$:INPUT#5,zx$:REMark devicename and sectors
651060 REPeat ashl
661070   IF EOF(#5)THEN EXIT ashl
671080   INPUT#5,zx$
681085   IF '->' INSTR zx$ THEN NEXT ashl
691090   OPEN_IN#3,drive1$&zx$
701100   OPEN_NEW#4,drive2$&path2$&zx$
711110   REPeat ishl
721120     IF EOF(#3)THEN EXIT ishl
731130     BGET#3,zx%
741140     SELect ON zx%
751150       = 13:REMark do nothing (DOS LineFeed)
761155       = 26:REMark do nothing (DOS EOF sign)
771160       = 96: BPUT#4,159:REMark Unix/DOS beginning quote sign
781170       = REMAINDER : BPUT#4,zx%
791180     END SELect
801190   END REPeat ishl
811195   CLOSE#3:CLOSE#4
821200 END REPeat ashl
831205 CLOSE#5
841210 END DEFine dos2ql
85