1 REM BASICODE 2 ROUTINES DOOR HENK WEVERS
2 REM NADERE INLICHTINGEN BASICODE
3 REM NOS, HOBBYSCOOP HILVERSUM  
5 PRINT CHR$(26);:WIDTH(255)
10 GOTO 1000
20 GOTO 1010
100 PRINT CHR$(26);:RETURN
110 REM
111 IF HO>51 THEN HO=51
112 IF VE>23 THEN VE=23
113 PRINT CHR$(27);"=";CHR$(VE+32);CHR$(HO+32);
115 RETURN
120 HO=PEEK(&HEF5A):VE=PEEK(&HEF5B)-&HF0
121 VE=VE*2
122 IF HO>127 THEN HO=HO-128:VE=VE+1
123 VE=VE-PEEK(&HEF62):IF VE<0 THEN VE=32+VE
124 RETURN
200 IN$=INKEY$:RETURN
210 GOSUB 200:IF IN$="" THEN 210
211 RETURN
250 PRINT CHR$(7);:RETURN
260 RV=RND(1):RETURN
270 FR=FRE(2):RETURN
300 SR$=STR$(SR)
301 Q7=LEN(SR$):IF Q7=0 THEN RETURN
302 IF RIGHT$(SR$,1)<>" " THEN 304
303 SR$=LEFT$(SR$,Q7-1):GOTO 301
304 IF LEFT$(SR$,1)<>" " THEN RETURN
305 SR$=RIGHT$(SR$,Q7-1):GOTO 301
310 Q4=SR:IF CN<>0 THEN 316
312 SR=INT(SR+.5):GOSUB 300:GOTO 330
316 Q5=SGN(SR):SR=ABS(SR):Q8=INT(SR):Q9=SR-Q8
318 FOR Q6=1 TO CN:Q9=Q9*10:NEXT Q6
320 Q9=INT(Q9+.5):SR=Q9:GOSUB 300
322 Q9$=RIGHT$("00000000000000000000"+SR$,CN)
324 IF Q8=0 AND Q9=0 THEN Q5=1
326 SR=Q8:GOSUB 300:IF Q5=-1 THEN SR$="-"+SR$
328 SR$=SR$+"."+Q9$
330 IF LEN(SR$)<=CT THEN 334
332 SR$=LEFT$("********************",CT):GOTO 340
334 SR$=RIGHT$("                    "+SR$,CT)
340 SR=Q4:RETURN
350 LPRINT SR$;:RETURN
360 LPRINT:RETURN
1000 A=100:GOTO 20
1010 DIM M(15),DD(5),AA(5),A$(5),MA$(12)
1020 FOR I=0 TO 15:READ M(I):NEXT I
1030 FOR I=0 TO 4:READ AA(I):NEXT I
1040 FOR I=0 TO 5:READ A$(I):NEXT I
1050 FOR I=1 TO 12:READ MA$(I):NEXT I
2000 GOSUB 100
2010 PRINT"Dit programma berekent de feestdagen."
2020 PRINT:PRINT
2030 PRINT"In welk jaar ";:INPUT J
2040 IF J>1582 AND J<2300 THEN 3000
2050 PRINT"Alleen van 1583 t/m 2299!":GOTO 2020
3000 GOSUB 100:PRINT"Feestdagen:"
3010 HO=14:VE=3:GOSUB 110
3020 PRINT J:PRINT
3030 E=M(INT(J/100)-15)
3040 F=M(INT(J/100)-7)
3050 X=J:Y=19:GOSUB 4000:G=19*Z+E
3060 X=G:Y=30:GOSUB 4000:G=Z
3070 X=J:Y=4:GOSUB 4000:H=2*Z
3080 Y=7:GOSUB 4000:I=4*Z
3090 H=H+I+6*G+F
3100 X=H:GOSUB 4000:H=G+Z
3110 IF H=35 THEN H=28
3120 X=J:Y=19:GOSUB 4000
3130 IF H=34 AND G=28 AND Z>10 THEN H=27
3140 FOR I=1 TO 4
3150 DD(I)=H-AA(I)
3160 IF DD(I)<1 THEN DD(I)=DD(I)+30.9
3170 IF DD(I)<1 THEN DD(I)=DD(I)+29.9
3180 NEXT I
3190 DD(5)=25
3200 S=0
3210 IF(INT(J/4)*4)<>J THEN 3260
3220 S=1
3230 FOR I=1700 TO 2200 STEP 100
3240 IF J=I THEN IF I<>2000 THEN S=0
3250 NEXT I
3260 DD(0)=H-AA(0)
3270 IF DD(0)<1 THEN DD(0)=DD(0)+27.9+S
3280 FOR I=0 TO 5
3290 D=INT(DD(I)):B=INT((10*DD(I)+.1)-10*D)
3300 IF I=5 THEN B=12
3310 SR=D:CT=2:CN=0:GOSUB 310
3320 PRINT A$(I);" ";SR$;" ";MA$(B)
3330 NEXT I
3340 END
3350 :
4000 ZZ=INT(X/Y):Z=X-Y*ZZ:RETURN
4010 :
5000 DATA 22,22,23,23,24,24,24,25,2,2,3,4,5,5,6,0
5010 DATA 23.7,8.6,30.4,20.4,9.4
5020 DATA "Aswoensdag    ","Pasen         ","Hemelvaart    "
5030 DATA "Pinksteren    ","Sacramentsdag ","Kerstmis      "
5040 DATA "Januari","Februari","Maart","April","Mei","Juni"
5050 DATA "Juli","Augustus","September","Oktober","November"
5060 DATA "December"
5070 :
9000 REM  KERKELIJKE FEESTDAGEN
9010 REM  PROGRAMMA VAN DE ACORN ATOM
9020 REM  GEMAAKT VOOR BASICODE DOOR:
9030 REM       A.G.MARCHAL
9040 REM       SCHUTTEKLEEF 16
9050 REM       6171 HM  STEIN
0 REM  GEMAAKT VOOR BASICODE DOOR:
9030 REM    