Werken met Amos deel 125 """""""""""""""""""""""" WAIT KEY (Wacht totdat er een toets ingedrukt is) """"""""""""""""""""""""""""""""""""""""""""""""" WAIT KEY Wacht op een enkele toetsendruk. Voorbeeld: Print "Druk op een toets" : Wait Key : Print "Toets ingedrukt" KEY SPEED (Wijzigt de herhalingssnelheid van de toets) """""""""""""""""""""""""""""""""""""""""""""""""""""" KEY SPEED tag,speed KEY SPEED laat je naar eigen smaak de snelheid instellen van je keyboard. De nieuwe snelheid kan voor elk deel van het AMOS systeem gebruikt worden, inklusief de editor. Tag is de tijd in vijftigste delen van een seconde die ligt tussen het indrukken van een toets en de tijd van herhalen. Speed is de vertraging in vijftigste van een seconde van elke opvolgende letter. Voorbeeld: Key$(1)="Key Speed 10,1"+Chr$(13) : Rem Bewaart de redelijke snelheid Key Speed 10,10 : Rem Druk op een toets voor een langzame snelheid Key Speed 1,1 : Rem Voor snelle herhalingen Rem Druk op de linker Amiga F1 om je keyboard weer op normaal te zetten CLEAR KEY (Maak de keyboard buffer schoon) """""""""""""""""""""""""""""""""""""""""" CLEAR KEY Op elk moment dat je een letter vanaf het keyboard invoert wordt zijn Ascii code in een geheugen gebied gestopt wat bekend staat als het keyboard buffer. Deze buffer dient als voorbeeld voor de INKEY$ funktie om je toets druk te krijgen. CLEAR KEY wist de gehele buffer en zet je keyboard in zijn oorspronkelijke toestand. Dat is zeer handig aan het begin van je programma, omdat de buffer vol met ongewenste informatie kan zitten. Je kunt het ook onmiddellijk voor een WAIT KEY kommando oproepen om er zeker van te zijn dat het programma wacht op een nieuwe toets druk voordat het verder gaat. Voorbeeld: Clear Key : Rem Wist de huidige toetsen drukken Wait Key : Wacht op een nieuwe toetsendruk PUT KEY (Zet een string in de keyboard buffer) """""""""""""""""""""""""""""""""""""""""""""" PUT KEY a$ Laadt een string met lettertekens direkt in de keyboard buffer. Returns kunnen gebruikt worden met het CHR$(13)(RETURN) teken. Het meest algemene gebruik van PUT KEY is om bases op te zetten voor de INPUT routines. Hieronder een demonstratie: Do Put Key "No" Input"Een ander spel"'A$ If A$="No" Then Exit Loop Het bovenstaande programma voegt "No" toe aan de standaard INPUT string. Als je op RETURN drukt wordt die waarde rechtstreeks in de variabele A$ gezet. Op een andere manier kun je de regel bewerken met de normale cursor toetsen en desgewenst je eigen waarde voor A$ in typen. Input/Output """""""""""" INPUT (Laad een waarde van de gebruiker en zet het in een variable) """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" INPUT is er voor om je op een standaard manier je informatie in een of meer variabelen te zetten. Er zijn twee mogelijk formaten voor deze instruktie: INPUT vars[;] Voert direkt een reeks variabelen van het keyboard in. var kan elke set variabelen bevatten die je wilt, gescheiden door komma's. Een vraagteken wordt gelijk automatisch op de huidige cursor positie gezet. INPUT "Prompt";variable list[;] Zet de prompt string op het scherm voordat je je informatie opgeeft. Je moet er wel op letten dat je altijd een punt komma ";" tussen de tekst en de reeks variabelen zet. Je mag in dit geval geen komma gebruiken. De eventuele punt komma ";" aan het eind van de variabelen reeks bepaalt dat de tekst cursor niet door de INPUT instruktie beroerd raakt en zijn originele positie behoudt nadat de data ingevoerd is. Als je een of meer van deze kommando's uitvoert, wacht Basic op je om de verlangde informatie vanaf het keyboard in te voeren. Elke variabele in je reeks moet bij de enkele waarde door de gebruiker aangepast worden. Deze waarden moeten van hetzelfde type zijn als je originele waarden en moeten gescheiden worden door komma's. Hier enige simpele voorbeelden: Inpu A Print "Je nummer was";A Input "Voer een decimaal getal in";N# Print"Je voerde";N# Input "Wat is je naam Mens?";name$; Locate 23, : Print "Hello";Name$ Zie INPUT# en LINE INPUT LINE INPUT (Voer een reeks variabelen in gecheiden door een Return) INPUT "Prompt";variable list[;] INPUT vars[;] LINE INPUT is hetzelfde als INPUT met dat verschil dat deze een Return gebruikt in plaats van een komma om elke waarde te scheiden die je via je keyboard hebt ingevoerd. Voorbeeld: Line Input "Voer drie cijfers in";A,B,C Print A,B,C Zie INPUT, LINE INPUT#.