home *** CD-ROM | disk | FTP | other *** search
- 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=500:GOTO 20
- 1010 Z=0:LJ=0:GOSUB 100:REM WISSEN
- 1020 GOTO 5020:REM INITIALISATIES
- 1030 REM
- 1040 REM ** HOOFDPROGRAMMA **
- 1050 REM
- 1060 GOSUB 3220:REM UITLEG
- 1070 GOSUB 4020:REM UITLEG(2)+KEUZE
- 1080 IF Z=1 THEN END
- 1090 GOSUB 2320:REM SCHRIKKELJAAR?
- 1100 M(2)=M(0)+S
- 1110 DE=0
- 1120 FOR T=1 TO M:DB=DE:DE=DB+M(T):NEXT T
- 1130 A$="":B$=""
- 1140 FOR T=1 TO 31:A$(T)=" ":NEXT T
- 1150 IF J=LJ THEN 1180
- 1160 GOSUB 2520:REM PAASDATUM
- 1170 LJ=J
- 1180 I=J-1
- 1190 U=J+INT(I/4)-INT(I/100)+INT(I/400)
- 1200 T=U+DB:N=7:GOSUB 2030
- 1210 Y=-R
- 1220 FOR N=0 TO 5:K(N)=0:NEXT N
- 1230 IF M>6 THEN 1250
- 1240 GOSUB 2760:REM FEESTDAGEN?
- 1250 IF M<>12 THEN 1270
- 1260 GOSUB 2120:REM KERSTDAGEN
- 1270 GOSUB 100:PRINT" ";B$(M);" ";J:PRINT
- 1280 PRINT"--------------------------------------"
- 1290 GOSUB 3620:REM PRINTEN
- 1300 PRINT
- 1310 PRINT"--------------------------------------"
- 1320 PRINT:PRINT A$;" ";B$:PRINT
- 1330 GOSUB 4200:REM KEUZE
- 1340 GOTO 1080
- 1350 :
- 2000 REM **BEPALING QUOTIENT +
- 2010 REM **REST VAN DE BREUK
- 2020 REM
- 2030 Q=INT(T/N):R=T-Q*N:RETURN
- 2040 :
- 2100 REM **KERSTDAGEN
- 2110 REM
- 2120 A$="K = Kerstmis"
- 2130 A$(25)=":K"
- 2140 A$(26)=":K"
- 2150 T=24-Y:N=7:GOSUB 2030
- 2160 K(Q)=1:T=25-Y:GOSUB 2030
- 2170 K(Q)=1
- 2180 RETURN
- 2190 :
- 2300 REM **SCHRIKKELJAAR ?
- 2310 REM
- 2320 S=0:T=J:N=4:GOSUB 2030
- 2330 IF R<>0 THEN 2390
- 2340 S=1:N=100:GOSUB 2030
- 2350 IF R<>0 THEN 2390
- 2360 S=0:N=400:GOSUB 2030
- 2370 IF R<>0 THEN 2390
- 2380 S=1
- 2390 RETURN
- 2400 :
- 2500 REM **PAASDATUM ?
- 2510 REM
- 2520 T=J:N=19:GOSUB 2030
- 2530 A=R:T=J:N=100:GOSUB 2030
- 2540 B=Q:C=R:T=B:N=4:GOSUB 2030
- 2550 D=Q:E=R:T=B+8:GOSUB 2030
- 2560 F=Q:T=B-F+1:N=3:GOSUB 2030
- 2570 G=Q:T=19*A+B-D-G+15:N=30:GOSUB 2030
- 2580 H=R:T=C:N=4:GOSUB 2030
- 2590 I=Q:K=R:T=32+E+E+I+I-H-K:N=7:GOSUB 2030
- 2600 L=R:T=A+11*H+22*L:N=451:GOSUB 2030
- 2610 O=Q:T=H+L-7*O+114:N=31:GOSUB 2030
- 2620 MA=Q:DA=R+1:RETURN
- 2630 :
- 2700 REM **BEPALING CARNAVAL-,
- 2710 REM **PAAS-, HEMELVAART-
- 2720 REM **OF PINKSTERDAG IN DE
- 2730 REM **AF TE DRUKKEN MAAND
- 2750 REM
- 2760 C(4)=59+S+DA+(MA-3)*31
- 2770 C(1)=C(4)-49:C(2)=C(4)-48
- 2780 C(3)=C(4)-47:C(5)=C(4)+1
- 2790 C(6)=C(4)+39:C(7)=C(4)+49
- 2800 C(8)=C(4)+50
- 2810 FOR T=1 TO 3:X=C(T)-DB
- 2820 IF X<1 THEN 2860
- 2830 IF X>M(M)THEN 2860
- 2840 A$(X)=":C"
- 2850 A$="C = Carnaval"
- 2860 NEXT T
- 2870 FOR T=4 TO 5:X=C(T)-DB
- 2880 IF X<1 THEN 2920
- 2890 IF X>M(M)THEN 2920
- 2900 A$(X)=":P"
- 2910 A$="P = Pasen"
- 2920 NEXT T
- 2930 X=C(6)-DB
- 2940 IF X<1 THEN 2980
- 2950 IF X>M(M)THEN 2980
- 2960 A$(X)=":H"
- 2970 A$="H = Hemelvaart"
- 2980 FOR T=7 TO 8
- 2990 X=C(T)-DB
- 3000 IF X<1 THEN 3040
- 3010 IF X>M(M)THEN 3040
- 3020 A$(X)=":P"
- 3030 B$="P = Pinksteren"
- 3040 NEXT T
- 3050 :
- 3100 REM *FEESTDAG IN KOLOM?
- 3110 REM
- 3120 FOR X=1 TO M(M)
- 3130 IF A$(X)=" "THEN 3160
- 3140 T=X-Y-1:N=7:GOSUB 2030
- 3150 K(Q)=1
- 3160 NEXT X:RETURN
- 3170 :
- 3200 REM **SUBR.UITLEG
- 3210 REM
- 3220 PRINT"****************************"
- 3230 PRINT"* *"
- 3240 PRINT"* KALENDER *"
- 3250 PRINT"* *"
- 3260 PRINT"****************************"
- 3270 PRINT
- 3280 PRINT:PRINT"Dit programma geeft steeds"
- 3290 PRINT:PRINT"per maand een kalenderblad."
- 3300 PRINT:PRINT"Carnaval, Pasen, Hemelvaart,"
- 3310 PRINT:PRINT"Pinksteren en Kerstmis wor-"
- 3320 PRINT:PRINT"den hierbij aangegeven."
- 3330 PRINT
- 3340 PRINT
- 3350 GOSUB 4920
- 3360 GOSUB 100:REM *WISSEN
- 3370 PRINT"U moet eerst de maand en het"
- 3380 PRINT:PRINT"jaar opgeven."
- 3390 PRINT:PRINT"Daarna kunt U een volgende"
- 3400 PRINT:PRINT"maand kiezen met een enkele"
- 3410 PRINT:PRINT"toets, te weten:"
- 3420 PRINT
- 3430 PRINT:PRINT"'N' als U een nieuwe maand wilt"
- 3440 PRINT:PRINT"'T' als U terug wilt (vorige)"
- 3450 PRINT:PRINT"'V' als U verder wilt"
- 3460 PRINT:PRINT"'S' als U wilt stoppen"
- 3470 PRINT
- 3480 PRINT
- 3490 GOSUB 4920
- 3500 RETURN
- 3510 :
- 3600 REM **PRINTEN
- 3610 REM
- 3620 CT=2:CN=0
- 3630 FOR A=1 TO 7
- 3640 :PRINT:PRINT D$(A)
- 3650 NEXT A
- 3660 VE=2-2*Y:HO=4
- 3670 FOR SR=1 TO M(M)
- 3680 VE=VE+2
- 3690 IF VE>17 THEN VE=VE-14:HO=HO+6
- 3700 GOSUB 110:GOSUB 310:PRINT SR$;A$(SR)
- 3710 NEXT SR
- 3720 VE=17:HO=0:GOSUB 110
- 3730 RETURN
- 3740 :
- 4000 REM **SUBR. UITLEG(2)
- 4010 REM
- 4020 GOSUB 100:REM *WISSEN
- 4030 PRINT"Geef maandnummer, jaar"
- 4040 PRINT
- 4050 PRINT"Dus voor bijv. Mei 1982"
- 4060 PRINT
- 4070 PRINT"Typt U dan : 5,1982"
- 4080 PRINT
- 4090 PRINT
- 4100 REM *SUBROUTINE DATUM INVOER
- 4110 PRINT"Maand, Jaar: ";:INPUT M,J
- 4120 M=INT(M):IF M>12 OR M<1 THEN 4260
- 4130 J=INT(J)
- 4140 IF J>9999 THEN 4310
- 4150 IF J<1583 THEN 4350
- 4160 RETURN
- 4170 :
- 4200 PRINT" N , V , T , S : ";:GOSUB 210
- 4210 GOSUB 100
- 4220 IF IN$="T"OR IN$="t"THEN 4520
- 4230 IF IN$="V"OR IN$="v"THEN 4620
- 4240 IF IN$="S"OR IN$="s"THEN 4720
- 4250 IF IN$="N"OR IN$="n"THEN 4020
- 4260 PRINT
- 4270 PRINT"FOUTIEVE INVOER !!!!!!"
- 4280 PRINT:PRINT:PRINT
- 4300 GOTO 4030
- 4310 PRINT:PRINT"Jaartallen boven 9999 worden"
- 4320 PRINT:PRINT"NIET verwerkt !"
- 4330 FOR T=1 TO 4000:NEXT T
- 4340 GOTO 4020
- 4350 PRINT:PRINT"Tot 1582 gold de Juliaanse"
- 4360 PRINT:PRINT"kalender. Schrijf het programma"
- 4370 PRINT:PRINT"daarvoor maar zelf !"
- 4380 FOR T=1 TO 4000:NEXT T
- 4390 GOTO 4020
- 4400 :
- 4500 REM **TERUG
- 4510 REM
- 4520 M=M-1
- 4530 IF M>0 THEN 4140:REM *INPUT(2)
- 4540 M=12
- 4550 J=J-1
- 4560 GOTO 4140:REM *INPUT(2)
- 4570 :
- 4600 REM **VOLGENDE
- 4610 REM
- 4620 M=M+1
- 4630 IF M<13 THEN 4140:REM *INPUT(2)
- 4640 M=1
- 4650 J=J+1
- 4660 GOTO 4140:REM *INPUT(2)
- 4670 :
- 4700 REM **STOPPEN
- 4710 REM
- 4720 GOSUB 100:REM *WISSEN
- 4730 PRINT:PRINT"U Koos voor stoppen"
- 4740 PRINT:PRINT"Voor opnieuw beginnen 'RUN' intypen"
- 4750 Z=1:RETURN
- 4760 :
- 4900 REM **WACHT OP INPUT
- 4910 REM
- 4920 PRINT" >RETURN";
- 4930 GOSUB 210:RETURN
- 4940 :
- 5000 REM **INITIALISATIES
- 5010 REM
- 5020 DIM A$(31),B$(12),D$(7),C$(8),M(12),K(5),C(8)
- 5030 FOR T=1 TO 12:READ B$(T):NEXT T
- 5040 FOR T=1 TO 7:READ D$(T):NEXT T
- 5050 FOR T=0 TO 12:READ M(T):NEXT T
- 5060 GOTO 1060
- 5070 :
- 30000 DATA"Januari","Februari","Maart"
- 30010 DATA"April","Mei","Juni","Juli"
- 30020 DATA"Augustus","September","Oktober"
- 30030 DATA"November","December"
- 30040 DATA"Zo","Ma","Di"
- 30050 DATA"Wo","Do","Vr","Za"
- 30060 DATA 28,31,00,31,30,31,30
- 30070 DATA 31,31,30,31,30,31
- 30080 :
- 30090 REM ********************
- 30100 REM * *
- 30110 REM * KALENDER *
- 30120 REM * *
- 30130 REM * INCL.FEESTDAGEN *
- 30140 REM * *
- 30150 REM * MAKER:E. IVENS, *
- 30160 REM * DOETINCHEM *
- 30170 REM * *
- 30180 REM ********************
- 30190 REM
- 30200 REM GEMAAKT OP APPLE II
- 30210 REM
- 30220 REM VERSIE: 17-5-1982
- 30230 REM
- 30240 REM ZIE VOOR DE BEPALING
- 30250 REM VAN DE PAASDATUM:
- 30260 REM HEMEL EN DAMPKRING,
- 30270 REM APRIL 1973; OF HET
- 30280 REM BOEK VAN J. MEEUS.
- 30290 REM
- M VAN DE PAASDATUM:
- 30260 REM HEMEL EN DAMPKRING,
- 30270 REM APRIL 1973; OF HET
- 3