home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Loadstar 14
/
014.d81
/
q&d.pollster
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2022-08-26
|
7KB
|
322 lines
0 remsave"q&d.pollster",8
100 rem"[209][160]&[160][196][160][208]ollster 5/24/85"
101 open15,8,15:forc=54272to54296:pokec,0:next
102 poke53281,7:poke53280,7:print"[144]"
103 ad=120
104 print"[147]"
105 dimq$(500),an$(ad)
106 da$="---------------------------------------"
107 dimq1$(10),a1$(15),a2$(15,10),al(15),tg(15),an(15)
108 us$="[164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164]"
109 gosub44000:q=1:goto10000
110 reminput answers from disk
120 print#15,"i0":open8,8,8,"poll.d."+ps$
125 input#15,a:ifa=62then170
140 ac=0
150 input#8,an$(ac)
151 print".";
160 ifan$(ac)<>"///"thenac=ac+1:goto150
165 an$(ac)=""
170 close8
200 rem done reading in.
210 return
10000 gosub20000
11000 print"[147]";
11050 ifr=1then11700
11100 ifcm$="quit"then11600
11200 gosub21000
11300 gosub12000
11400 print"[147]";
11500 goto11000
11600 rem
11610 gosub40000
11700 run
12000 rem
12010 iftype=1thengosub35000:goto12140
12020 iftype=2thengosub22000:goto12140
12140 rem
12150 rem
12300 iftype=1thengosub37000:goto12390
12310 iftype=2thengosub25000:goto12390
12390 rem
12400 ifcm$<>"quit"thenifk$<>"_"thengosub12600
12410 ifk$="_"thenifq>1thenq=q-1:gosub39000:return
12500 return
12600 rem
12610 dp=dp+1:ifq$(dp)<>"?"thenifq$(dp)<>"///"then12610
12612 q=q+1:ifq$(dp)="///"thendp=0:q=1
12620 return
20000 rem
20010 qc=0
20015 fi$="poll.q."+ps$
20016 open8,8,8,fi$
20020 input#8,q$(qc)
20030 ifq$(qc)="///"thenqc=qc-1:goto20080
20040 qc=qc+1:goto20020
20080 rem
20082 close8
20085 dp=0:gosub50000:ifr<>1thengosub110
20090 return
21000 rem
21005 ds=dp+1
21010 type=val(q$(ds)):ds=ds+1
21020 iftype=1thengosub27000:goto21040
21030 iftype=2thengosub28000:goto21040
21040 return
22000 rem
22010 print"";
22020 print"[209]uestion: "q;tab(21)mx"answer";:ifmx<>1thenprint"s";
22022 print" allowed"
22025 printda$
22030 forc1=1tonl:printq1$(c1):next
22035 printda$
22040 forc1=1toac
22050 forc2=1toal(c1):printspc(4);
22055 ifan$(an(c1))<>""thenifan$(an(c1))<>"0"thenprint"";
22056 printa2$(c1,c2)
22058 iftg(c1)<>0thenprintspc(6)us$;
22059 ifan$(an(c1))<>""theniftg(c1)<>0thenprint:print"[145]"an$(an(c1));
22060 iftg(c1)<>0thenprint
22061 next
22065 next
22070 return
23000 rem
23010 vs=vt:vt=19:gosub61000:vt=vs: print""da$
23020 iftype<>1thenprint" [198]unction keys move cursor[160]([160]>[160]) "
23030 iftype=2thenprint" [211]pace bar toggles selections. "
23035 iftype=1thenprint" [208]ress space bar then type answer. "
23040 print" [208]ress [210][197][212][213][210][206] for next question. "
23050 print" [208]ress _ for previous question. "
23055 print" [208]ress [195][212][210][204]-[199] to quit. "
23060 return
25000 gosub23000
25005 a=1:vt=4+nl
25006 rem
25010 ht=1:gosub60000
25015 gosub61000:print">";
25020 getk$:ifk$=""then25020
25025 print"[157] ";
25026 ifk$="[145]"ork$=""thenk$="[133]"
25027 ifk$=""ork$="[157]"thenk$="[136]"
25030 ifk$="[135]"ork$="[136]"thena=a+1:vt=vt+al(a-1)+tg(a-1):ifa>acthena=1:vt=4+nl
25040 ifk$="[133]"ork$="[134]"thena=a-1:vt=vt-al(a)-tg(a):ifa=0thena=ac:vt=4+nl:gosub62000
25050 ifk$=" "ork$="[160]"thengosub25999:k$=""
25060 ifk$=chr$(13)thenreturn
25070 ifk$="_"thenreturn
25075 ifk$=""thencm$="quit":return
25080 goto25006
25999 rem
26000 iftype=2thengosub26002:return
26001 iftype=1thengosub37000:return
26002 na=0:forc=1toac:ifan$(an(c))<>""thenifan$(an(c))<>"0"thenna=na+1
26004 next
26005 iftg(a)=0thenifan$(an(a))="1"thenan$(an(a))="0":goto26015
26006 iftg(1)=1thenifan$(an(a))<>""thengosub36000:goto26015
26007 ifmx=1thenforc=1toac:an$(an(c))="":next:ontg(a)+1gosub41000,36000:goto26015
26008 iftg(a)=0thenifna=mxthenifval(an$(an(a)))=0thengosub59000:return
26010 iftg(a)=0thenifval(an$(an(a)))<>0thenan$(an(a))="0":goto26012
26011 iftg(a)=0thenan$(an(a))="1"
26012 iftg(a)=1thenif((na<mx)or(len(an$(an(a))))>0)thengosub36000:goto26015
26013 iftg(a)=1thenifna=mxtheniflen(an$(an(a)))=0thengosub64000:return
26014 iftg(a)=1thengosub36000:goto26015
26015 rem
26020 gosub22000
26025 rem
26030 return
27000 rem
27010 gosub29000
27020 ac=val(q$(ds)):ds=ds+1
27030 foran=1toac
27040 gosub34000
27050 next
27060 return
28000 rem
28010 gosub29000
28020 ac=val(q$(ds)):ds=ds+1:mx=val(q$(ds)):ds=ds+1
28030 foran=1toac
28040 gosub30000
28042 gosub31000
28044 gosub32000
28046 forao=1toal(an)
28048 gosub33000
28049 next
28050 next
28060 return
29000 rem
29010 nl=val(q$(ds)):ds=ds+1
29020 forlc=1tonl
29030 q1$(lc)=q$(ds):ds=ds+1
29040 next
29050 return
30000 rem
30010 an(an)=val(q$(ds)):ds=ds+1:return
31000 rem
31010 al(an)=val(q$(ds)):ds=ds+1:return
32000 rem
32010 tg(an)=val(q$(ds)):ds=ds+1:return
33000 rem
33010 a2$(an,ao)=q$(ds):ds=ds+1:return
34000 rem
34010 an(an)=val(q$(ds)):ds=ds+1:return
35000 rem
35010 print"";
35020 print"[209]uestion "q
35025 printda$
35030 forc1=1tonl:printq1$(c1):next
35040 printda$
35050 forc1=1toac
35060 printspc(6)us$;:ht=7:gosub60000:iflen(an$(an(c1)))<>0thenprintan$(an(c1));
35061 print
35070 next
35080 return
36000 rem
36010 print:printspc(6);
36020 gosub38000:ht=7:gosub60000:printus$;:gosub60000:printl$;
36030 return
37000 rem
37010 vt=4+nl
37020 gosub23000:gosub61000:ht=1:gosub60000:print">";
37030 getk$
37031 ifk$<>" "thenifk$<>"[160]"thenifk$<>chr$(13)thenifk$<>"_"thenifk$<>""then37030
37035 ifk$=""thencm$="quit"
37040 ifk$=chr$(13)ork$="_"ork$=""thenreturn
37050 a=1:gosub42000:gosub61000
37060 ht=7:gosub60000:gosub38000:ht=7:gosub60000:printus$;:gosub60000:printl$
37070 ifan$(an(a))=""thenforc1=atoac:an$(an(c1))="":next:gosub35000:goto37020
37080 a=a+1:ifa>acthenk$="":goto37020
37090 goto37060
38000 rem
38002 dl$=chr$(20):x$="[164]"
38005 l$="":cr$=chr$(13):bs$="[157]":fs$=""
38010 forl1=1tolen(us$)
38020 print""x$bs$;
38021 getk$:ifk$=""thenprint"[146]"x$bs$;:goto38020
38022 poke198,0:print"[146]";
38023 ifk$=dl$thenk$=bs$
38024 ifl1<len(an$(an(a)))thenx$=mid$(an$(an(a)),l1+1,1)
38025 ifl1>=len(an$(an(a)))thenx$="[164]"
38030 ifk$=cr$thenan$(an(a))=l$:print" "bs$;:return
38031 ifk$=","thenk$=";"
38032 ifk$=":"thenk$="-"
38033 ifk$=chr$(34)thenk$="'"
38034 ifk$=bs$thenifl1>len(an$(an(a)))thenan$(an(a))=l$
38035 ifk$=bs$thenifl1>1thengosub38200:goto38020
38036 ifk$=fs$thenht=7:gosub60000:gosub38100:x$="[164]":goto38020
38040 ifk$<" "ork$>"z"then38020
38045 ifl1=len(us$)thengosub59000:goto38020
38050 l$=l$+k$:printk$;
38060 next
38070 return
38100 printl$mid$(an$(an(a)),l1);:l$=l$+mid$(an$(an(a)),l1):l1=len(l$)+1:return
38200 gosub63000:poke782,peek(782)-1:poke783,0:sys65520
38205 x$=right$(l$,1)
38210 l1=l1-1:l$=mid$(left$(" "+l$,l1),2)
38220 print"[146]"x$bs$;
38230 return
39000 rem
39010 dp=dp-1:ifq$(dp)<>"?"then39010
39020 return
40000 rem
40010 forc1=adto1step-1
40020 ifan$(c1)<>""thentp=c1:c1=0
40030 next
40035 print"[208]lease, wait....";
40040 print#15,"s0:poll.d."+ps$
40050 open8,8,8,"poll.d."+ps$+",s,w"
40060 forc1=0totp
40070 print#8," "an$(c1):print".";
40080 next
40085 print#8,"///"
40090 close8:print
40100 return
41000 an$(an(a))="1":return
42000 vs=vt:vt=19:gosub61000:vt=vs: print
42010 print" [212]ype your response. "
42020 print" [208]ress [210][197][212][213][210][206][160]after each line. "
42030 print" [197]dit each line with [195][210][211][210][160]keys. "
42040 print""da$
42060 return
44000 print"[147]";
44010 print"[209][160]&[160][196][160][208]ollster"
44020 print:print:print"[204]oadstar [208]oll"
44030 print:print:print"[215]hich topic do you choose?"
44040 print:print"1 = [196]emographics"
44050 print:print"2 = [200]ardware"
44060 print:print"3 = [211]oftware"
44070 print:print"4 = [204]oadstar"
44080 print:print"5 = [204]eave the [208]olls"
44090 getk$:ifk$=""then44090
44091 ifk$>"5"ork$<"1"thengosub59000:goto44090
44094 print#15,"i0"
44095 open8,8,8,"$":forc=1to142:get#8,l$:next:n$="":forc=1to16:get#8,l$:n$=n$+l$
44096 next:close8:ifn$<>"loadstar #14 s-2"thengosub53000:goto44094
44099 ps$=""
44100 ifk$="1"thenps$="demographics"
44110 ifk$="2"thenps$="hardware"
44120 ifk$="3"thenps$="software"
44130 ifk$="4"thenps$="loadstar"
44140 ifk$="5"then45000
44145 print
44147 print""k$" "ps$
44150 re