
|
De interrupt in Basic (1) Genic Clubguide, 00-00-00
De Interrupt in Basic
Velen denken bij de interrupt aan machinetaal, het kan
echter ook gewoon in basic gebruikt worden en wel met het
commando ON INTERVAL= GOSUB. Waarom is dit zo handig? Welnu
men kan praktisch gezien een beweging regelmatig laten
verlopen, bij scrolls bijvoorbeeld kan dit heel handig zijn.
Ik zal hieronder in simpel basic een voorbeeld geven:
10 ON INTERVAL=1 GOSUB 50
20 PRINT "Begin":INTERVAL ON
30 GOTO 30
50 PRINT "De routine loopt":RETURN
Uitwerking :
Begin
De Routine Loopt
De Routine Loopt
De Routine Loopt
etc.
Het is dus duidelijk wat er gebeurt: Elke keer als de
interrupt 1 is (om de 2 honderdste seconde) springt het
programma naar regel 50. Verder verblijft het in regel 30.
Je zou dus in regel 30 ook nog een commando kunnen zetten
zodat de computer steeds van het ene naar het andere
commando springt. Hieronder volgt een kleine toepassing van
het bovenstaande:
10 SCREEN 8:OPEN"GRP:"AS#1
20 ON INTERVAL=1 GOSUB 50 :INTERVAL ON
30 ON STRIG GOSUB 60:STRIG(0)ON
40 READ A$:FOR G=1 TO LEN (A$):Q$=MID$(A$,G,1) :FOR W=1TO30:
NEXT W : PRESET (160,0) : PRINT#1,Q$:NEXT G:RESTORE:GOTO 40
50 COPY (76,0)-(166,7)TO(75,0):RETURN
60 INTERVAL OFF:END
70 DATA .DIT IS EEN PROEFSCROLLTEKST VOOR DE SCROLL....
Dit programmaatje maakt het mogelijk om een soepele
lichtkrant te verkrijgen. Een paar opmerkingen:
REGEL 10 : Scherm 8 en het openen van "GRP:" voor tekst
REGEL 20 : Als interval =1 ga dan naar 50 . Zet 'm aan.
REGEL 30 : Als de spatie wordt ingedrukt dan naar 60
REGEL 40 :- Lees de tekst uit DATA in A$
- Begin een lus van 1 tot de lengte van A$
- Neem de letter die aan de beurt is
- Een wachtroutine ,dit is noodzakelijk omdat
anders de scroll te snel gaat en de letters
elkaar overlappen.
- Print de letter
- Begin overnieuw met het lezen van de DATA
- Ga naar het begin van de regel
REGEL 50 : De belangrijkste regel van dit stuk ,hier springt
de interrupt naar toe deze schuift de letters een
plaats verder en keert terug.
REGEL 60 : Einde programma
REGEL 70 : De tekst in de DATA-regel
Er valt natuurlijk makkelijk te experimenteren met dit
programma er kan nog van alles bij regel 40. Als de letters
dan niet meer op goede afstand staan moet men de wachtlus
veranderen. Het is ook mogelijk om eigen letters te maken op
pagina 1 en deze weer te copieeren naar pagina 0 om ze zo te
laten scrollen (Een voorbeeld hiervan vindt U op de
Clubguide Picturedisk #1, waarop overigens ook een scroll
staat met VDP(24) (horizontale scroll) ,die ook aan de
interrupt gekoppeld is.
Het programmaatje van hierboven staat ook op deze disk onder
de naam "INTERUPT.BAS". Veel plezier met experimenteren,
heeft u nog vragen of idee‰n, of weet u scrollroutines in
machinetaal: Het is van harte welkom. Wie weet kunnen we dan
ook nog eens een artikel plaatsen over Scroll in
machinetaal. Neem kontakt op met:
Ronald Egas
De Blauwe Wereld 53
1398 EP Muiden
tel. 02942-3813
|