DataMuseum.dk

Presents historical artifacts from the history of:

CP/M

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about CP/M

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download

⟦9b670ff56⟧ TextFile

    Length: 29056 (0x7180)
    Types: TextFile
    Names: »MYREDOK2.PAS«

Derivation

└─⟦6b390fbd9⟧ Bits:30002872 Myresnak v.1.06 for ICL COMET
    └─ ⟦this⟧ »MYREDOK2.PAS« 

TextFile

                          Brugervejledning                MYRESNAK v. 1.0
 
                          Maj 84/TH                                s. 5.6




                  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.24  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 (GRØN).
                 - 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.25  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.26  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.27  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å












                          Brugervejledning                MYRESNAK v. 1.0
 
                          Maj 84/TH                                s. 5.7




             skærmen og udskrives samtidigt på den tilsluttede matrixprin-
             ter.

       5.1.28  SLET
       ------------

              Samme ordre som GLEM (se kap. 5.1.7).

       5.1.29  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.30  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
            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.31  SORT
       ------------

               Myren tegner med 'sort' farve på skærmen, dvs. alle tændte
            punkter slukkes.
               Ordren bruges til af slette og rette i tegningen.













                          Brugervejledning                MYRESNAK v. 1.0
 
                          Maj 84/TH                                s. 5.8




       5.1.32  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.33  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.34  TEGNING     (forkortet TG)
       ----------------------------------

               Fortolkeren skifter til grafikbilledet uden at slette det,
            der befinder sig her. Myrens attributter ændres ikke.

       5.1.35  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.36  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.


















                          Brugervejledning                MYRESNAK v. 1.0
 
                          Maj 84/TH                                s. 5.9




       5.1.37  VDREJ      (forkortet VD)
       ---------------------------------

               Ordren har syntaksen :     VDREJ(<tal>)  eller  VD(<tal>)
            og er identisk med ordren VENSTRE (se kap. 5.1.38).

       5.1.38  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.0
 
                          Maj 84/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).
       --------------------------------------------------------------------

       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.0
 
                          Maj 84/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                       Henter program på disketten.
       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.0
 
                          Maj 84/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.0
 
                          Maj 84/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.0
 
                          Maj 84/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 negativ, 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.0
 
                          Maj 84/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.0
 
                          Maj 84/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.

























                          Brugervejledning                MYRESNAK v. 1.0
 
                          Maj 84/TH                                s. 8.1




      8.    Variabelbegrebet i myresnak.
      ----------------------------------

               Myresnak fortolkeren arbejder med to former for variabler
            nemlig globale og lokale variabler.
               Man kan frit skifte mellem de to typer ved ordrerne GLOBAL
            og LOKAL.
               Det tilrådes ikke at bruge disse ordrer som programordrer,
            da virkningerne er uoverskuelige.

       8.1  Globale variabler.
       ----------------------

               Ved opstart af myrestart er alle variabler globale, hvilket
            vises på videosiden i anden linie på skærmens højre halvdel.
            Alle variablerne er ligeledes nulstillede. (Samme virkning op-
            nås ved ordren OPSTART).

               At variablerne er globale betyder, at alle programmerne har
            adgang til de samme variabler og evt. kan ændre dem.

               Ordren NUL nulstiller alle variablerne.

               Ordren GLOBAL sætter alle variablerne globale.

               Programmerer man rekursivt (dvs. at programmet kalder sig
            selv) forbliver man på samme niveau (niveau 1), og der er der-
            for ingen mulighed for tilbagevikling.

            Eks.   I arbejdsområdet ligger følgende program :

                              TREKANTETSPIRAL(L)
                                FREM(L)
                                HØJRE(120)
                                SPIRAL(L+3)
                              SLUT

                      Vi starter f.eks. ved ordren TREKANTETSPIRAL(10) på
                   niveau 0 (kommandoniveauet).
                      Programmet kaldes og tolkes på niveau 1 og L tildeles
                   værdien 10. Myren går 10 frem og højredrejes 120 grader.
                      Programmet kaldes igen (vi bliver på niveau 1), og L
                   tildeles nu værdien 10+3 = 13. Myren går 13 frem og høj-
                   redrejes 120 grader.
                      Programmet kaldes igen (vi bliver på niveau 1), og L
                   tildeles nu værdien 13+3 = 16. Myren går 16 frem og høj-
                   redrejes 120 grader.
                      Således forsættes i det uendelige, eller til program-
                   met afbrydes ved tryk på en vilkårlig tast. Vi vender så
                   tilbage til kommandoniveauet (niveau 0).















                          Brugervejledning                MYRESNAK v. 1.0
 
                          Maj 84/TH                                s. 8.2




       8.2  Lokale variabler.
       ---------------------

               Variablerne sættes lokale ved ordren LOKAL, hvilket vises på
            videosiden i anden linie på højre halvdel.
 
               Hvert program får nu sit eget variabelsæt og evt. variabel-
            overførsler sker ved hjælp af programmets variabeldel. Hvert
            program har kun adgang til sit eget variabelsæt.

               Ved rekursiv programmering vil hver programkald rykke et
            niveau ud.
               Husk: Der er maximalt 50 niveauer til rådighed.

               Ordren NUL nulstiller samtlige variabler på alle niveauer.

               Ordren HVIS giver mulighed for tilbagevikling ved rekursive
            programkald.

            Eks.   Følgende program ligger i arbejdsområdet :

                               MANGEFIRKANT(L,N)
                                 HVIS(N=0)SLUT
                                 GENTAG(4)
                                   MANGEFIRKANT(L/3,N-1)
                                   FREM(L)
                                   VENSTRE(90)
                                 HERTIL
                               SLUT

                   Programmet kaldes f.eks. med ordren MANGEFIRKANT(180,3)
                på kommandoniveauet (niveau 0).
                   På niveau 1 tildeles variablen L værdien 180 og N værdi-
                en 3. Der testes om N er nul, hvilket den ikke er. Sløjfen
                påbegynder første gennemløb på niveau 1. Programmet kalder
                sig selv, og parametrene øverføres til niveau 2.
                   På niveau 2 tildeles variablen L vædien 180/3 = 60 og N
                værdien 3-1 = 2. Der testes om N er nul, hvilket den ikke
                er. Sløjfen påbegynder første gennemløb på niveau 2. Pro-
                grammet kalder sig selv, og parametrene øverføres til ni-
                veau 3.
                   På niveau 3 tildeles variablen L vædien 60/3 = 20 og N
                værdien 2-1 = 1. Der testes om N er nul, hvilket den ikke
                er. Sløjfen påbegynder første gennemløb på niveau 3. Pro-
                grammet kalder sig selv, og parameterne øverføres til ni-
                veau 4.
                   På niveau 4 tildeles variablen L vædien 20/3 = 7 og N
                værdien 1-1 = 0. Der testes om N er nul, hvilket den er.
                Ordren SLUT udføres, og programmet forlader niveau 4. Der
                hoppes tilbage til niveau 3.
                   På niveau 3 forsættes med ordren FREM(L). Dvs. myren be-
                væger sig 20 punkter frem. Tilbageviklingen er altså påbe-
                gyndt. Myren venstredrejes 90 grader. Andet gemmenløb på












                          Brugervejledning                MYRESNAK v. 1.0
 
                          Maj 84/TH                                s. 8.3




                niveau 3 startes, og programmet kalder sig selv.
                   På niveau 4 får L værdien 20/3 = 7 og N værdien 1-1 =0.
                Der testes for N = 0. Niveauet forlades påny og vi forsæt-
                ter på niveau 3.
                   Således forsættes indtil man når niveau 0. 
                   BEMÆRK at variablen N benyttes som en slags omvendt ni-
                veautæller. Variablen L overføres også til niveau 4, men
                benyttes ikke.
 
























































«eof»