start tok64 d64-r0vi84 0 REM save"@0:64glos 830722",8:verify"0:64glos 830722",8 1 REM 2 REM 64glos ver. 2 3 REM (c) copyright 1983 4 REM grana software 5 REM 1983-07-22 6 REM 20 PRINT"{clear}"; 25 dm=INT((FRE(0)+65536)/50):DIMg$(1,dm),g%(dm) 30 v=54272:tn=v+1:tr=v+4:OPEN1,0:h=RND(-RND(0)) 40 FORl=vTOv+24:POKEl,0:NEXT:POKEv+24,15:POKEv+5,7 50 s=53248:cb=s+32:cs=s+33:DEFFNr(x)=INT(RND(1)*x+1):POKEcb,6:POKEcs,14 60 ud$="{space*39}":GOTO200 69 REM *** subrutiner *** 70 POKE198,0 80 GETa$:IFa$=""THEN80 90 a=VAL(a$):RETURN 100 PRINT"{red}fel !!{blue}" 110 POKEcb,2:POKEtn,10:POKEtr,128:POKEtr,129:GOTO140 120 PRINT"r[tt !!":po=po+1 130 POKEcb,5:POKEtn,100:POKEtr,16:POKEtr,17 140 FORp=0TO100:NEXT:POKEcb,6:RETURN 199 REM *** huvudrutin *** 200 PRINT"{clear}{blue}{down}"TAB(14)"{cyan}6 4 g l o s" 215 PRINT"{down}{blue}{space*4}f{pound}rh{pound}r mellan tv] valfria spr]k" 220 PRINT"{down}"TAB(3)"{cyan}public domain 1990 grana software{down*2}{blue}" 225 PRINTTAB(10)nr"glosor inmatade{down}":PRINTTAB(15)"{cyan}meny:{blue}{down}" 230 RESTORE:FORl=1TO7:READl$(l):PRINTTAB(9)l;": "l$(l):NEXT 240 DATA inmatning av glosor,h[mta glosor,se glosor,spara glosor,avsluta,f{pound}rh{pound}r 241 DATA svenska tecken 245 PRINT"{down}{space*4}]terhopp till menyn g{pound}rs med '{arrow left}'" 250 PRINT"{down}{space*8}tryck siffra < >{left*2}"; 260 GOSUB70:IFa<1ORa>7OR(a=3ORa=4ORa=6)ANDnr=0THENGOSUB110:GOTO260 270 PRINTa$:GOSUB130 290 ln=20-LEN(l$(a))/2:PRINT"{clear}{down}"TAB(ln)l$(a):PRINTTAB(ln)LEFT$(ud$,LEN(l$(a))) 300 ONaGOSUB1000,2000,2500,3000,4000,5000,59000 310 GOTO200 999 REM *** inmatning *** 1000 PRINT"{space*5}du har plats f{pound}r"dm"glosor":nr=1 1005 PRINT"{down}{space*2}avsluta varje inmatning med " 1010 PRINT"{down}{space*5}svenska"," utl[ndska" 1020 PRINTnrTAB(4)":";:INPUT#1,g$(0,nr):PRINT 1030 PRINT"{up}",,":";:INPUT#1,g$(1,nr):PRINT 1040 PRINT"ok ? (j/n/{arrow left}) {reverse on} " 1050 GOSUB70:PRINT"{up}{space*16}{up}" 1055 IFa$="n"THENPRINT"{up*2}":GOTO1020 1060 IFa$="{arrow left}"THENRETURN 1070 nr=nr+1:IFnr18THENGOSUB80 2530 NEXTl:PRINTTAB(12)"{down}tryck {reverse on} " 2535 IFPEEK(197)<64THEN2535 2540 GOSUB70:RETURN 2999 REM *** spara glosor *** 3000 PRINT"{down}{space*6}vad vill du kalla gloslistan?" 3001 PRINT"{down*10}{space*6}]terhopp till menyn, skriv {arrow left}{home}{down*4}" 3005 PRINTTAB(11)"{down}:";:INPUT#1,a$:PRINT 3007 IFa$="{arrow left}"THENRETURN 3010 IFLEN(a$)>16THENPRINT"{up}";:GOSUB110:GOTO3005 3011 PRINT"{down}{space*10}disk eller band? b{left}";:INPUT#1,dv$:PRINT 3012 IFLEFT$(dv$,1)="d"THENOPEN2,8,2,"@0:"+a$+",s,w":PRINT#2,nr:GOTO3060 3015 PRINT"{down}{space*2}se till att r[tt band [r i" 3020 PRINT"{down}tryck ner 'rec' & 'play' p] bandspelaren" 3030 IFPEEK(1)AND16THEN3030 3040 OPEN2,1,1,a$:PRINT#2,nr 3060 FORx=1TOnr:FORt=0TO1:PRINT#2,g$(t,x):NEXTt,x:CLOSE2:RETURN 3999 REM *** avsluta *** 4000 PRINT"{down}{space*2}vill du spara glosorna? (j/n) {reverse on} " 4010 GOSUB70:IFa$<>"n"THEN4050 4020 PRINT"{clear}{green}{down*7}{space*12}p] ]terseende ! 4025 PRINT"{down*2}{space*12}grana software{down*4}{black}" 4030 POKEcb,14:POKEcs,6:CLR:END 4050 RETURN 4999 REM *** f{pound}rh{pound}r *** 5000 FORl=1TOnr:g%(l)=0:NEXT:po=0:h=0:PRINT"{down}"; 5005 FORl=1TOnr:t=FNr(2)-1:b=0:b$="" 5010 x=FNr(nr):IFg%(x)THEN5010 5020 PRINTlTAB(3)":vad "MID$("heter{blue*2}betyder",t*7+1,7)" "g$(t,x)" ?":g%(x)=1 5030 PRINT"{space*3}:"b$:PRINT"{up}{space*3}:";:INPUT#1,a$:PRINTTAB(25);:c$=g$(1-t,x) 5040 IF c$=a$ THEN5080 5050 GOSUB100 5060 b=b+1:b$=LEFT$(c$,b) 5065 IFb=LEN(c$)THENPRINT"skulle varit:"c$:GOSUB110:GOTO5090 5070 GOTO5030 5080 GOSUB120:IFbTHENh=h+1 5090 NEXTl 5999 REM *** resultat *** 6000 FORl=0TO500:NEXT:PRINT"{clear}{down}"TAB(16)"resultat":PRINTTAB(16)"{cm u*8}" 6005 FORl=100TO200:POKEtn,l:POKEtr,32:POKEtr,33:NEXT 6010 PRINT"{down}{space*6}av"nr"glosor klarade du "po 6020 po=po-h:IFhTHENPRINT"{down}{space*2}och d[rav,"po"vid f{pound}rsta f{pound}rs{pound}ket" 6030 GOSUB7000:PRINT"{down}"TAB(20-LEN(a$)/2)a$ 6040 PRINTTAB(12)"{down}tryck {reverse on} ":GOSUB70:RETURN 7000 IFpo=nrTHENa$="alldeles utm[rkt, du [r klar !!":RETURN 7010 IFpo=nr-1ANDpo<>0THENa$="ganska bra,men en g]ng till skadar inte":RETURN 7020 IFpo=0THENa$="inte bra,f{pound}rs{pound}k minst en g]ng till":RETURN 7030 a$="lagom bra,ett f{pound}rs{pound}k till rekommenderas":RETURN 59000 REM denna rutin g{pound}r att man f]r 59010 REM svenska tecken 59020 REM den tar c:a 9 sek och kan 59030 REM l[tt [ndras s] att andra 59040 REM tecken blir de svenska 59050 REM 59060 REM rutinen tar bara med de 59070 REM 64 f{pound}rsta tecknen 59080 REM dvs inte grafik, reverserade 59090 REM tecken och sm] bokst[ver. 59100 REM detta kan dock [ndras 59110 REM 59120 REM kontroll 59130 REM 59160 PRINT"{clear}" 59170 PRINTTAB(6)"vill du ha svenska tecken" 59180 PRINTTAB(6)"ist]llet f{pound}r [, ] och {pound}?" 59190 PRINTTAB(6)"(svara ja eller nej)" 59200 PRINT:PRINTTAB(14);:INPUT#1,qq$:PRINT 59210 qq$=LEFT$(qq$,1) 59220 IFqq$<>"j"THEN 60060 59230 PRINT"{down}{space*6}detta tar en liten stund {.*3}":FORi=1TO500:NEXTi:PRINT"{clear}"; 59240 REM 59250 REM koppla bort tangentbord och 59260 REM interrupt 59280 REM 60000 POKE56334,PEEK(56334)AND254:POKE1,PEEK(1)AND251 60004 REM 60005 REM kopierar de f{pound}rsta 64 tecknen 60006 REM om andra tecken skall vara 60007 REM med, se tabell sid 105 i 60008 REM commodore 64 reference guide 60009 REM 60010 FORi=0TO511:POKEi+57344,PEEK(i+53248):NEXT:DATA102,0,60,102,126,102,102,0 60014 REM 60015 REM [ ] {pound} blir svenska tecken 60016 REM genom att [ndra variabel i 60017 REM kan dessa l[ggas in p] andra 60018 REM teckens plats 60019 REM 60020 FORi=57560TO57583:READj:POKEi,j:NEXT:DATA102,0,60,102,102,102,60,0 60024 REM 60025 REM kopplar in tangentbord och 60026 REM interrupt 60027 REM 60030 POKE1,PEEK(1)OR4:POKE56334,PEEK(56334)OR1:DATA24,0,60,102,126,102,102,0 60034 REM 60035 REM byter till sista minnesbanken 60036 REM visar editorn var sk[rmen [r 60037 REM 60040 POKE56578,PEEK(56578)OR3:POKE56576,(PEEK(56576)AND252)OR0:POKE648,196 60044 REM 60045 REM visar var tecknen finns 60046 REM t{pound}mmer sk[rmen och ]terv[nder 60047 REM 60050 POKE53272,(PEEK(53272)AND240)OR8 60060 PRINT"{clear}";:RETURN stop tok64 (bastext 1.0)