10 REM +++++++++++++++++++++++++++++++++
11 REM ! Program ....LAYOUT.UTL
12 REM ! Utg}va 2.3 1981-08-28
13 REM ! av KALLE LINDSTR\M <837>
14 REM ! granskat av BO HJULSTR\M <557>
15 REM ! Copyright SE 4
16 REM ! Minne 16 Kbytes
17 REM ! Ins{nt av SE 4
18 REM +++++++++++++++++++++++++++++++++
19 REM UTILITYPROGRAM :
20 REM "INSTRUKTIONER GES OM DU
21 REM TRYCKER 'CTRL-W'. [NDRINGAR F]R
22 REM G\RAS OM RESULTATET L[GGS P]
23 REM PROGRAMBANKEN."
24 REM
25 REM PROGRAM F\R DESIGN AV SK[RM-
26 REM UTSKRIFTER. RESULTATET KAN
27 REM LAGRAS P] FIL I FORM AV
28 REM "XX ;CUR(R,0);" MED START P]
29 REM VALFRITT RADNUMMER (XX).
30 REM +++++++++++++++++++++++++
31 REM KALLE LINDSTR\M, 1981-08-28
32 REM COPYRIGHT KALLE LINDSTR\M
33 REM VERS. 2.3 1981-08-28
34 REM +T+H+E+++C+O+M+P+U+T+E+R+
35 REM +++++P+H+A+N+T+O+M+E+++++
36 DIM P$(23%)=0%,P1$(23%)=40%
37 V0%=PEEK(65065%)
38 IF V%=17% GOTO 149
39 V0%=V0%+SWAP%(PEEK(65066%))+4%
40 V0%=PEEK(V0%)+SWAP%(PEEK(V0%+1%))
41 FOR I%=0% TO 2%*23% STEP 2%
42 POKE V0%+I%*3%,40%,0%,PEEK(884%+I%)
43 POKE V0%+I%*3%+3%,PEEK(885%+I%)
44 POKE V0%+I%*3%+4%,40%,0%
45 NEXT I%
46 X%=0% : Y%=0%
47 ; CHR$(12%);
48 REM
49 ; CUR(23%,0%)SPACE$(39%);
50 ; CUR(23%,17%)X%" ,"Y%" ";
51 ; CUR(X%,Y%);
52 GET P$
53 OUT 6%,0%
54 V%=ASC(P$)
55 IF V%=12% 46
56 IF NOT (V%=23%) 60
57 FOR U%=0% TO 22% : P1$(U%)=P$(U%)
58 NEXT U%
59 GOTO 159
60 IF NOT (V%>31% AND V%<128%) 65
61 IF NOT (Y%<39%) 64
62 ; CHR$(V%) : Y%=Y%+1%
63 GOTO 48
64 OUT 6,131% : GOTO 48
65 IF V%=21% AND X%=0% OUT 6%,131%
66 IF V%=21% AND X%=0% 49
67 IF NOT (V%=21% AND X%>0%) 69
68 X%=X%-1% : GOTO 49
69 IF V%=14% AND X%=22% OUT 6%,131%
70 IF V%=14% AND X%=22% 49
71 IF NOT (V%=14% AND X%<22%) 73
72 X%=X%+1% : GOTO 49
73 IF V%=8% AND Y%=0% OUT 6%,131%
74 IF V%=8% AND Y%=0% 49
75 IF NOT (V%=8% AND Y%>0%) 77
76 Y%=Y%-1% : GOTO 49
77 IF V%=10% AND Y%=39% OUT 6%,131%
78 IF V%=10% AND Y%=39% 49
79 IF NOT (V%=10% AND Y%<39%) 81
80 Y%=Y%+1% : GOTO 49
81 IF V%=9% AND X%=0% OUT 6%,131%
82 IF V%=9% AND Y%=39% OUT 6%,131%
83 IF V%=9% AND X%=0% 49
84 IF V%=9% AND Y%=39% 49
85 IF NOT (V%=9% AND X%>0%) 88
86 IF NOT (V%=9% AND Y%<39%) 88
87 X%=X%-1% : Y%=Y%+1% : GOTO 49
88 IF V%=25% AND X%=0% OUT 6%,131%
89 IF V%=25% AND Y%=0% OUT 6%,131%
90 IF V%=25% AND X%=0% 49
91 IF V%=25% AND Y%=0% 49
92 IF NOT (V%=25% AND X%>0%) 95
93 IF NOT (V%=25% AND Y%>0%) 95
94 X%=X%-1% : Y%=Y%-1% : GOTO 49
95 IF V%=2% AND X%=22% OUT 6%,131%
96 IF V%=2% AND Y%=0% OUT 6%,131%
97 IF V%=2% AND X%=22% 49
98 IF V%=2% AND Y%=0% 49
99 IF NOT (V%=2% AND X%<22%) 102
100 IF NOT (V%=2% AND Y%>0%) 102
101 X%=X%+1% : Y%=Y%-1% : GOTO 49
102 IF V%=13% AND X%=22% OUT 6%,131%
103 IF V%=13% AND Y%=39% OUT 6%,131%
104 IF V%=13% AND X%=22% 49
105 IF V%=13% AND Y%=39% 49
106 IF NOT (V%=13% AND X%<22%) 109
107 IF NOT (V%=13% AND Y%<39%) 109
108 X%=X%+1% : Y%=Y%+1% : GOTO 49
109 IF NOT (V%=16%) 123
110 ; CUR(23%,0%)SPACE$(39%);
111 ; CUR(23%,0%);
112 ; "VILKEN PUNKT (00-22,00-39)";
113 GET P$ : IF P$<"0" OR P$>"2" 113
114 ; P$;
115 GET R$ : IF R$<"0" OR R$>"9" 115
116 ; R$; : IF VAL(P$+R$)>22% 110
117 X%=VAL(P$+R$) : ; ",";
118 GET P$ : IF P$<"0" OR P$>"3" 118
119 ; P$;
120 GET R$ : IF R$<"0" OR R$>"9" 120
121 ; R$; : IF VAL(P$+R$)>39% 110
122 Y%=VAL(P$+R$) : GOTO 49
123 IF NOT (V%=19%) 48
124 U$=P$(22%)
125 ; CUR(22%,0%)SPACE$(39%);
126 ; CUR(22%,0%);"ANGE FILNAMN";
127 INPUT P$
128 IF P$="" 49
129 ONERRORGOTO 129
130 ; CUR(22%,0%);SPACE$(39%);
131 ; CUR(22%,0%)"F\RSTA RADNR";
132 INPUT U%
133 IF U%<1% OR U%>32000% 132
134 ; CUR(22%,0%)U$;
135 IF P$="" 49
136 IF P$="" AND P1$<>"" P$=P1$
137 IF P$="" 125
138 IF INSTR(1%,P$,".")=0% P$=P$+".LAY"
139 IF F% F%=0% : GOTO 143
140 ONERRORGOTO 143
141 OPEN P$ ASFILE 1% : CLOSE 1%
142 F%=1% : GOTO 124
143 ONERRORGOTO 153
144 PREPARE P$ ASFILE 1%
145 F%=0%
146 FOR X%=0% TO 22%
147 ; #1%,U%+X%;
148 ; #1' ; CUR('X%'%,0%)"';
149 ; #1%P$(X%)'"'
150 NEXT X%
151 CLOSE 1% : X%=0% : Y%=0%
152 GOTO 49
153 IF ERRCODE=21% 124
154 ; CUR(23%,0%)"DET BLEV ERROR";
155 ; ERRCODE
156 FOR P%=0% TO 6000% : NEXT P%
157 ; CUR(23%,0%)SPACE$(39%);
158 GOTO 49
159 ; CUR(0,0%)" LAYOUT "
160 ; CUR(1,0%)" ====== "
161 ; CUR(2,0%)" "
162 ; CUR(3,0%)"Med detta program kan du skriva text- "
163 ; CUR(4,0%)"sidor, liknande den h{r. "
164 ; CUR(5,0%)" "
165 ; CUR(6,0%)"Sidorna sparas som printsatser med CUR. "
166 ; CUR(7,0%)" "
167 ; CUR(8,0%)"Du startar upp programmet genom att "
168 ; CUR(9,0%)"skriva 'RUN LAYOUT.UTL'. D} t|ms sk{rmen "
169 ; CUR(10,0%)"och mark|ren st{ller sig h|gst uppe "
170 ; CUR(11,0%)"till v{nster. P} den nedersta raden "
171 ; CUR(12,0%)"st}r det '0,0'. Dessa siffror visar "
172 ; CUR(13,0%)"mark|rens position (Rad,Kolumn). "
173 ; CUR(14,0%)" "
174 ; CUR(15,0%)"Du kan styra mark|ren genom olika kon- "
175 ; CUR(16,0%)"trollkommandon, som n{rmare g}s igenom "
176 ; CUR(17,0%)"p} n{sta sida. "
177 ; CUR(18,0%)" "
178 ; CUR(19,0%)" "
179 ; CUR(20,0%)" "
180 ; CUR(21,0%)" "
181 ; CUR(22,0%)"Tryck p}