|
DataMuseum.dkPresents historical artifacts from the history of: CP/M |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about CP/M Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - download
Length: 24832 (0x6100) Types: TextFile Names: »MYREDOK2.PAS«
└─⟦dc273b4b7⟧ Bits:30004219 Myresnak ver. 1.11 til ICL Comet └─ ⟦this⟧ »MYREDOK2.PAS«
Brugervejledning MYRESNAK v. 1.1 Apr 85/TH s. 5.6 Eks. Følgende program ligger i arbejdsområdet. SNYD(L,V) NUL FREM(L) VENSTRE(V+5) SLUT Kommandoen SNYD(10,50) tillægger variablen L værdien 10 og variablen V værdien 50. L og V får værdien nul. Myren flyttes 0 punkter frem og venstredrejes 0+5 = 5 grader. Altså uanset hvilke værdier L og V tillægges, udfører programmet kun det samme som ordren VENSTRE(5). 5.1.27 OPSTART --------------- Ordren OPSTART udfører følgende operationer : - Myren føres til startpositionen midt på skærmen (START). - Myren stilles, så den peger opad (NORD). - Myren gøres 'synlig' (MYRE). - Myren sætter spor på skærmen (KRAVL). - Myren sætter spor (HVID/GRØN/GUL). - Alle variabler nulstilles (NUL). - Alle variabler er globale (GLOBAL). - Snoren fæstnes til denne position (SNOR). - Niveau-tælleren stilles til 0. Ved denne opstart startstilles alt, dog vil alle programmer- ne i arbejdsområdet være bevaret. Ordren kan benyttes, hvis fortolkeren mod al forventning ik- ke arbejder, som den skal. 5.1.28 PADDE ------------- Syntaksen er PADDE(<tal>), hvor <tal> er et heltal mellem 1 og 10. Angives <tal> ikke, sættes det automatist til 1. Denne ordre aktiverer den tilsluttede skildpadde, således at ordrene til myren tegnes på skærmen og derefter ekko'es over til skildpadden. <tal> angiver det antal millimeter skildpadden skal bevæge sig frem/tilbage for hvert punkt, myren bevæger sig på skærmen. Eks. Skilpadden er aktiveret med PADDE(7). Ordren FREM(40) vil da få skildpadden til at bevæge sig 280 mm frem. Skildpadden reagerer kun på følgende ordrer : PADDE EDDAP VENSTRE VE VDREJ VD HØJRE HØ HDREJ HD FREM FR BAK BK FLYV KRAVL STOP Forbindelsen til skildpadden afbrydes ved ordren EDDAP. (Husk at montere printerstikket igen ! ) Brugervejledning MYRESNAK v. 1.1 Apr 85/TH s. 5.7 5.1.29 RENS ------------ Følgende operationer udføres ved ordren RENS : - Der skiftes til grafikskærm (TEGNING). - Tegninger på grafikskærmen fjernes. - Myren stilles i startstilling (START). - Myren stilles, så den peger opad (NORD). - Alle variabler nulstilles (NUL). 5.1.30 RET ----------- Fortolkeren skifter automatisk til videoskærmen og spørger om programnavn. Når dette er indtastet, listes programmet, og markøren stilles i øverste venstre hjørne i programfeltet. Editoren aktiveres, og rettelsen kan foretages som forkla- ret i kap. 7 under indskrivning af programmer. 5.1.31 SKRIV ------------- Ordren SKRIV giver mulighed for udskrift af programmer på linieskriveren. Fortolkeren skifter automatisk til videoskærmen og spørger om programnavn. Når dette er indtastet, listes programmet på skærmen og udskrives samtidigt på den tilsluttede matrixprin- ter. 5.1.32 SLET ------------ Samme ordre som GLEM (se kap. 5.1.8). 5.1.33 SLUT ------------ Ordren SLUT er den ordre, som afslutter et program. Den er samtidig et signal til program-editoren om at afslutte edite- ringen. Hvis ordren afgives på kommandoniveauet (niveau 0), tolkes den ikke. 5.1.34 SNOR ------------ Når ordren SNOR afgives, husker fortolkeren koordinaterne til det punkt, hvor myren befinder sig. Hver gang ordren STRAM afgives, vil der blive trukket en linie fra dette punkt til det sted, hvor myren nu befinder sig. Først når ordren SNOR igen afgives, vil fortolkeren ud- skifte koordinatsættet med koordinaterne til det punkt, hvor Brugervejledning MYRESNAK v. 1.1 Apr 85/TH s. 5.8 myren nu står. Eks. Følgende program ligger i arbejdsområdet : VIFTE SNOR GENTAG(12) FLYV FREM(50) HØJRE(30) KRAVL STRAM HERTIL SLUT Programmet vil tegne alle diagonalerne til startpunk- tet i en tolvkant samt tegne de to sidestykker, der udgår fra startpunktet. 5.1.35 SORT ------------ Myren tegner med 'sort' farve på skærmen, dvs. alle tændte punkter slukkes. Ordren bruges til af slette og rette i tegningen. 5.1.36 START ------------- Ved ordren start udfører fortolkeren følgende : - Myren føres til startstillingen midt på skærmen uden at sætte spor. - Myren stiller sig i retningen pegende opad. 5.1.37 STOP ------------ STOP ordren afgivet på kommandoniveau (niveau 0) standser fortolkeren og overgiver kommandoen til CP/M. Man har derefter mulighed for at se, hvad der ligger på disketten med kommandoen DIR, eller slette programfiler med kommandoen ERA <programnavn>.MYR (se kap. 4.3). Benyttes STOP i et program, standser dette. Niveautælleren sættes til 0, altså kommandoniveauet. BEMÆRK: Når myresnak fortolkeren standser, mistes alle program- mer i arbejdsområdet. Husk derfor at gemme dem på disketten inden STOP ordren afgives. 5.1.38 STRAM ------------- Myren 'strammer' snoren, som blev fæstnet til strandbredden ved ordren SNOR. Hvis myren 'kravler' tegnes en streg mellem Brugervejledning MYRESNAK v. 1.1 Apr 85/TH s. 5.9 punktet, hvor ordren SNOR blev givet og myrens nuværende posi- tion. 5.1.39 TEGNING (forkortet TG) ---------------------------------- Fortolkeren skifter til grafikbilledet uden at slette det, der befinder sig her. Myrens attributter ændres ikke. 5.1.40 TRYK ------------ En kopi af grafikskærmen kopieres på matrixprinteren uanset det valgte skærmbillede. Udskrivningen kan afbrydes ved tryk på en vilkårlig tast. 5.1.41 UDHOP ------------- UDHOP er en programordre, som bruges til udhop fra en sløj- fe. Ordren har kun mening, hvis den befinder sig inden i sløj- fen, dvs. mellem ordrerne GENTAG og HERTIL. Bruges den andre steder, vil virkningerne utvivlsom virke overraskende. Når fortolkeren udfører UDHOP ordren, foretager den et spring til sætningen umiddelbart efter ordren HERTIL, hvoref- ter den tolker denne sætning. 5.1.42 VDREJ (forkortet VD) --------------------------------- Ordren har syntaksen : VDREJ(<tal>) eller VD(<tal>) og er identisk med ordren VENSTRE (se kap. 5.1.43). 5.1.43 VENSTRE (forkortet VE) --------------------------------- Ordren har syntaksen : VENSTRE(<tal>) eller VE(<tal>) <tal> er et heltal og angiver, hvor mange grader myren skal dreje sig venstre om. <tal> kan være negativ, hvilket bevirker, at myren drejer højre om. Som programordre kan <tal> erstattes af en variabel eller et udtryk (se kap. 6.5). Eks. VENSTRE(45) Myren drejes 45 grader venstre om. VENSTRE(V) Myren drejes det antal grader venstre om, som tallet i variabel V angiver. Brugervejledning MYRESNAK v. 1.1 Apr 85/TH s. 5.10 5.2 Oversigt over ordrerne til myresnak. ----------------------------------------- Ordrerne kan inddeles i tre dele. Et sæt ordrer, der styrer my- ren. Et sæt, der bruges i programmerne og et sæt, der bruges til styring af de tilsluttede enheder samt styring af variablerne. 5.2.1 Myreordrer. ------------------- Ordre Forkortet Funktion -------------------------------------------------------------------- HØJRE(<tal>) HØ(<tal>) Myren drejer <tal> grader mod højre. HDREJ(<tal>) HD(<tal>) - - - - - - . VENSTRE(<tal>) VE(<tal>) Myren drejer <tal> grader mod venstre. VDREJ(<tal>) VD(<tal>) - - - - - - . FREM(<tal>) FR(<tal>) Myren går <tal> punkter frem. BAK(<tal>) BK(<tal>) Myren bakker <tal> punkter. MYRE Myren vises på skærmen. ERYM Myren fjernes fra skærmen. FLYV Myren kan bevæges uden at sætte spor. KRAVL Myren sætter spor på skærmen. SNOR Myren husker hvor den er på skærmen. STRAM Myren trækker en linie fra sin nuværende position til positionen, hvor ordren SNOR blev givet (Snoren strammes). NORD Myren drejes mod nord (lodret op). START Myren 'flyver' til startstillingen. HJEM Myren trækker et spor tilbage til start- stillingen. GRØN eller HVID Myren tegner grønt spor på skærmen. SORT Myren tegner sort (sletter sit spor). PADDE(<tal>) Skildpadden aktiveres og alle myreordrer vises på skærmen og ekko'es videre til skildpadden. EDDAP Forbindelsen mellem skildpadden og myre- snak afbrydes. -------------------------------------------------------------------- 5.2.2 Programordrer. ---------------------- Ordrer Funktion. -------------------------------------------------------------------- GENTAG Gentag det følgende i det uendelige. GENTAG(<tal>) - - - <tal> gange. (Hvis <tal> <= 0 udføres sætningen efter HERTIL. HERTIL Afslutning af gentage-sløjfen. HVIS(<udsagn>)<ordre> Hvis <udsagn> er sandt udføres <ordre> ellers overspringes sætningen. UDHOP Sætningen efter hertil udføres. SLUT Afslutter programmet. -------------------------------------------------------------------- Brugervejledning MYRESNAK v. 1.1 Apr 85/TH s. 5.11 5.2.3 Systemordrer. --------------------- Ordrer Forkortet Funktion -------------------------------------------------------------------- TEGNING TG Der skiftes til tegnesiden. RENS Skærmen renses, og myren anbringes i startstillingen. KATALOG KT Alle programnavnene vises. HUSK Nyt program kan indtastes. LIST Udskrift af program på skærmen. SKRIV Udskrift af program på linieskriveren. TRYK Kopierer tegnesiden på linieskriveren. RET Man kan rette i et eksisterende program. GLEM eller SLET Sletning af program i arbejdsområdet. NUL Nulstiller alle variabler. HENT(<programnavn>) Henter program <programnavn> på disketten. <programnavn> kan udelades. GEM Lagrer program på disketten. LOKAL Myresnak arbejder med lokale variabler. GLOBAL - - - globale - . STOP Fortolkeren stopper (Husk at alle pro- grammer i arbejdsområdet mistes, hvis de ikke er gemt på disketten). OPSTART Fortolkeren opstartes påny, dog vil alle programmerne i arbejdsområdet være bevaret. -------------------------------------------------------------------- Brugervejledning MYRESNAK v. 1.1 Apr 85/TH s. 6.1 6. Programmer. ---------------- Et program består af 1. <programnavn>(<variabel),..,<variabel>) 2. programdel 3. SLUT Et program kan maksimalt bestå af 20 linier med 30 tegn. 6.1 Programnavn. ----------------- Programnavnet kan bestå af et antal bogstaver eller tal (evt. blandet) og kan være lige så langt, som linien tillader. Programnavnet kan ikke være en af ordrene nævnt i kap. 5. Hvis programmet skal gemmes på diskette, bør programnavnets længde ikke overstige 8 tegn, da fortolkeren (af hensyn til CP/M systemet) automatisk afskærer tegn udover det ottende, når der arbejdes på disketten. Eks. På disketten ligger programmet 'FIRKANTER' under navnet 'FIRKANTE' (8 tegn). Programmet 'FIRKANTERNE' gemmes. Programmet 'FIRKANTE' (opr. 'FIRKANTER') over- skrives, og efter operationen ligger programmet 'FIR- KANTERNE' nu på disketten under navnet 'FIRKANTE'. Hentes programmet ind i fortolkeren, vises nu i kataloget programmet 'FIRKANTERNE'. Dvs. at hvis et programnavn overstiger 8 tegn vil diskettekataloget kun vise de første 8. 6.2 Variabler. --------------- En variabel består af eet bogstav (A-Å). Bruges flere variabler, skilles de ved komma. Der kan maximalt benyttes 8 variabler pr. program. 6.3 Programdel. ---------------- Programdelen består af 1. Ordrer 2. evt. een sløjfe 3. evt. programkald Eks. VINKEL(V) KVADRAT SPIRAL(Q) FREM(200) GENTAG(4) FREM(10) VENSTRE(V) FREM(100) VENSTRE(Q) FREM(200) HØJRE(90) SPIRAL(Q+10) SLUT HERTIL SLUT SLUT Brugervejledning MYRESNAK v. 1.1 Apr 85/TH s. 6.2 6.4 Programkald. ----------------- Programkald består af <programnavn>(<udtryk>,..,<udtryk>) <udtryk> kan udelades. Det er vigtigt, at antallet af udtryk til programmet svarer til antallet af programmets variabler. 6.5 Udtryk. ------------ Et udtryk opfattes som 1. et <tal> eller en <variabel> 2. to <tal> eller <variable> med et <regnetegn> imellem Eksempler på LOVLIGE udtryk: 2+5 A-3 7*L -Q A/L 5/-B -2*P 5*-A Eksempler på ULOVLIGE udtryk: 2*5+6 2*A/R A*B*C 6.6 Tal. --------- Myresnak fortolkeren behandler kun heltal, som kan være posi- tive, negative eller nul. Talområdet går fra -32768 til 32767. 6.7 Regnetegn. --------------- Fortolkeren arbejder kun med '+', '-', '*' og '/'. 6.8 Sløjfer. ------------- Sløjfer består af et antal programordrer eller programkald, som skal gentages et vist antal gange evt. uendelig mange gange. Syntaksen er følgende 1. GENTAG(<udtryk>) 2. ordredel 3. HERTIL Ad. 1. Hvis <udtryk> udelades, gentages ordredelen i det uen- delige. Ad. 2. Hvis <udtryk> er positivt, udføres ordredelen <udtryk> Brugervejledning MYRESNAK v. 1.1 Apr 85/TH s. 6.3 antal gange. Sløjfen kan afbrydes, hvis ordren UDHOP bruges evt. i en betinget ordre. Fortolkeren udfører så linien efter HERTIL. Ad. 3. Hvis <udtryk> er nul eller negativt, overspringes ordre- delen, og linien efter HERTIL udføres. BEMÆRK: Fortolkeren tillader kun een sløjfe pr. program. Ønskes flere sløjfer (evt. inden i hinanden), gøres det ved at kalde et nyt program, der udfører denne sløjfe. Eks. SPIRAL(L) TREKANT(L) GENTAG GENTAG(3) TREKANT(L) FREM(L) HØJRE(10) HØJRE(120) HERTIL HERTIL SLUT SLUT 6.9 Betingede ordrer. ---------------------- Den betingede ordre giver mulighed til at udføre rekursiv programmering. Syntaksen er følgende HVIS(<udsagn>)<ordre> Hvis <udsagn> er sand, udføres <ordre>. Hvis <udsagn> er falsk, overspringes sætningen, og næste programlinie udføres. Hvis <ordre> er SLUT, forlades programmet (niveauet sættes et ned). <ordre> kan også være et programkald. Eks. HVIS(N>=0)SLUT HVIS(2<=2*N)FIRKANT(L+5) 6.10 Udsagn. ------------ Udsagnet har følgende syntaks: <udtryk><logisk operator><udtryk> 6.11 Logisk operator. --------------------- De logiske operatorer er følgende: 1. = lig med 2. > større end 3. < mindre end 4. >= eller => større end og lig med 5. <= eller =< mindre end og lig med 6. <> eller >< forskellig fra Brugervejledning MYRESNAK v. 1.1 Apr 85/TH s. 6.4 6.12 Programafbrydelse. ----------------------- Alle programkørsler kan afbrydes ved tryk på en vilkårlig tast. Det er dog ikke muligt at genstarte programmet fra det sted, hvor det blev afbrudt. Brugervejledning MYRESNAK v. 1.1 Apr 85/TH s. 7.1 7. Indskrivning af programmer. -------------------------------- Skrives ordren HUSK, aktiveres program-editoren, og indskriv- ningen af programmet kan påbegyndes. På et hvilket som helst tidpunkt under indskrivningen kan editorens faciliteter benyttes. - Piltasterne benyttes til at flytte markøren. - 'DEL' tasten sletter tegnet under markøren og flytter re- sten af linien en position til venstre. - 'INS' tasten indsætter et mellemrum under markøren og flytter resten af linien en position til højre. - 'BS' virker som tasten med pil til venstre. - Tredie funktionstast fra højre sletter linien under markø- ren og rykker efterfølgende linier en linie op. - Anden funktionstast fra højre indsætter en tom linie un- der markøren og rykker de efterfølgede linier en linie ned. NB: Hvis der stod noget i nederste linie, mistes det. - Første funktionstast fra højre sletter alle tegn fra mar- køren til liniens slutning. Editoren foretager selv indrykninger/udrykninger af program- linierne. Programindskrivningen afsluttes automatisk, når 'RETURN' ned- trykkes mens markøren står på linien, hvor ordren SLUT står. Myresnak-programmer kan maksimal være på 20 linier. Hver li- nie kan højst bestå af 30 tegn. Skrivefeltets bredde er 34 anslag af hensyn til indryknin- gerne. Når indskrivningen er færdig fjerner editoren automatisk alle mellemrum og afskærer alle tegn udover det 30te. Programmet lagres i arbejdsområdet, og programnavnet indføres i kataloget. Hvis der allerede er et program med samme navn, gi- ves der mulighed for at rette programnavnet i det sidst indta- stede program, ellers overskrives det gamle. Ordren RET giver også adgang til editoren og benyttes, når man skal foretage rettelser i et eksisterende program. «eof»