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

⟦a44a97dbf⟧ TextFile

    Length: 12160 (0x2f80)
    Types: TextFile
    Names: »README.DOC«

Derivation

└─⟦74e5ee6fb⟧ Bits:30002683 PolyPascal-86 v. 3.11 - Piccoline
└─⟦74e5ee6fb⟧ Bits:30003934 SW1402 PolyPascal v3.11 (dk) til Piccoline
    └─ ⟦this⟧ »README.DOC« 

TextFile



              PolyPascal Supplerende Dokumentation
                til PolyPascal-86 V3.11 (CP/M-86)

                       Copyright (C) 1985
                    PolyData MicroCenter A/S



Tak fordi De har købt PolyPascal systemet.  Vi er sikre på, at De 
vil  finde,  at PolyPascal er et kvalitetsprodukt,  der til fulde 
indfrier Deres forventninger.  Før De går videre,  anmoder vi om, 
at De læser brugerlicensaftalen, der følger med systemet, samt at 
De udfylder og indsender registreringsformularen.


1. Distributionsdisketten
-------------------------

Distributionsdisketten indeholder de følgende filer:

README.DOC    Den fil, De for nuværende læser.

PPAS.CMD      Denne  fil  indeholder selve  PolyPascal  systemet, 
              dvs.   run-time biblioteket,  den  skærmorienterede 
              editor, og Pascal compileren.

PPAS.HLP      Denne fil indeholder de hjælptekster,  der vises af 
              HELP kommandoen og ^J kommandoen i editoren.

PPAS.ERM      Denne fil indeholder de fejlmeddelelser, der bruges 
              af compileren, når den rapporterer fejl under over-
              sættelser.

PPBS.CMD      Business versionen af PolyPascal. Business version-
              en anvender 10-byte reelle tal i BCD format,  hvil-
              ket  giver 18 betydende cifre.  Envidere indeholder 
              denne  version er række  avancerede  formatterings-
              funktioner til tal og strenge.

PP87.CMD      8087 versionen af PolyPascal.  Denne version anven-
              der 8087 co-processoren til floating point kalkula-
              tioner,  men  er ellers fuldstændig magen til stan-
              dardversionen.

INSTALL.CMD   PolyPascal  installationsprogram.   Dette   program 
              bruges  til at indlægge systemafhængige parametre i 
              PolyPascal.  Hvis PolyPascal er leveret som en uin-
              stalleret  version,  skal dette program  køres  før 
              systemet tages i brug. INSTALL kan desuden anvendes 
              til  at rette enkeltparametre i en  præ-installeret 
              version.  INSTALL  er selvforklarende.  Bemærk,  at 
              Business versionen og 8087 versionen altid  distri-
              bueres som uinstallerede versioner, og at de derfor 
              må installeres førend de kan anvendes.

INSTALL.TRM   INSTALL  programmets  datafiler.  Disse  filer  kan 
INSTALL.DAT   indeholde installationsdata for op til 40  forskel-
              lige computersystemer.

INSTALL.DOC   Denne tekstfil indeholder en detaljeret beskrivelse 
              af de installerbare parametre i PolyPascal. Teksten 
              er på engelsk.

INSTALL.PAS   Kildeteksten til INSTALL programmet.  Hele  INSTALL 
              er skrevet i PolyPascal.

CALC.PAS      Demstrationsprogram i kildetekstform. Dette program 
              opfører  sig som en lommeregner:  Man kan  indtaste 
              udtryk, hvorefter programmet udregner deres værdi.

HEXDUMP.PAS   Demonstrationsprogram i kildetekstform. HEXDUMP kan 
              udskrive  en  hex-listing af fil til en  anden  fil 
              eller til printeren.

PRIMES.PAS    Demonstrationsprogram i kildetekstform.  PRIMES be-
              regner alle primtallene mellem 1 og 30000.

QSORT.PAS     Demonstrationsprogram i kildetekstform. QSORT gene-
              rerer en række tilfældige tal og sorterer dem  der-
              efter  ved  hjælp af den meget effektive  quicksort 
              algoritme.

LIST.PAS      Demonstrationsprogram  i kildetekstform.  LIST  kan 
              udskrive listninger af alle slags  tekstfiler,  med 
              overskrifter,  linienumre, og fuld kontrol af side-
              længde, linielængde, venstremargin og bundmargin.

CROSSREF.PAS  Demonstrationsprogram  i  kildetekstform.  CROSSREF 
              kan udskrive en listing med linienumre og en kryds-
              reference listing af et PolyPascal program.

DATMAN.PAS    Disse filer udgør PolyFile systemet. PolyFile er en 
NPFKEY.PAS    række procedurer og funktioner,  der giver brugeren 
ADDKEY.PAS    mulighed  for  at  anvende indexerede  filer  (ISAM 
DELKEY.PAS    filer) i PolyPascal. PolyFile er skrevet i PolyPas-
              cal.  Systemet er beskrevet i PolyFile referencema-
              nualen, der indgår i PolyPascal dokumentationen.

DATABASE.PAS  Demonstrationsprogram  i  kildetekstform.  DATABASE 
              viser hvorledes PolyFile rutinerne kan anvendes til 
              at opbygge en simpel kundedatabase.

GSX.DOC       GSX.PAS  indeholder en række rutiner der danner  et 
GSX.PAS       interface  til  GSX  grafikoperativsystemet.   Hvis 
              Deres maskine er udstyret med GSX,  kan De program-
              mere  dens  grafik  ved  hjælp  af  disse  rutiner. 
              GSX.DOC filen indeholder yderligere detaljer.

Vi anbefaler, at De, før De begynder at anvende PolyPascal syste-
met,  tager en sikkerhedskopi af denne diskette.  Når De vil lave 
en PolyPascal arbejdsdiskette,  behøver De blot kopiere PPAS.CMD, 
PPAS.HLP  og PPAS.ERM over på en blank diskette,  sammen  med  de 
systemprogrammer,  De  eventuelt får brug for (f.eks.  PIP.CMD og 
STAT.CMD).  Hvis De har meget lidt plads på Deres disketter,  kan 
De  eventuelt  udelade PPAS.HLP og PPAS.ERM,  men i  så  tilfælde 
virker HELP kommandoen ikke, og compileren udskriver kun fejlnum-
re og ikke fejlmeddelelser.


2. PolyPascal sammenlignet med COMPAS Pascal
--------------------------------------------

PolyPascal  hed tidligere COMPAS Pascal,  og PolyPascal V3.11  er 
en direkte videreudvikling af COMPAS Pascal V3.07.  PolyPascal er 
fuldt  ud kildetekstkompatibel med COMPAS Pascal,  bortset fra de 
følgende mindre forskelle (kapitelreferencerne henviser til Poly-
Pascal Programmeringsmanualen):

o   TEXT identifieren er et reserveret ord i PolyPascal.

o   PolyPascal behandler logiske enheder (CON:,  LST:,  etc.) an-
    derledes end COMPAS Pascal.  Specielt gælder der, at "eof" og 
    "eoln"  opfører  sig anderledes,  når de anvendes på  logiske 
    enheder.  I modsætning til COMPAS Pascal er der i  PolyPascal 
    ikke forskel på behandlingen af logiske enheder og diskfiler. 
    Kapitel 13.3 indeholder yderligere information.

o   Standardprocedurerne  "blockread" og "blockwrite" kræver fire 
    parametre i stedet for tre.  Den fjerde parameter  returnerer 
    det  antal records,  der faktisk blev overført.  Kapitel 13.4 
    indeholder yderligere information.

o   PolyPascal  åbner og lukker overlay-filer hvergang der  læses 
    fra  dem.  Som  programmør  behøver man derfor  ikke  længere 
    bekymre sig om at lukke overlay-filer.  Y  compilerdirektivet 
    er  afskaffet.  I  stedet  kan  standardproceduren  "ovdrive" 
    bruges  til  at angive hvilken disk der  indeholder  overlay-
    filerne. Kapitel 15.9 indeholder yderligere information.

o   Standardprocedurerne "chain" og "execute" sætter ikke længere 
    et flag i adresse $80 i datasegmentet.  Kapitel 20 indeholder 
    yderligere informationer.

o   Det interne format af filvariable (FIB'er) er ændret. Kapitel 
    23.1.5 indeholder yderligere informationer.


3. Kommandolinieparametre
-------------------------

PolyPascal-86  V3.11 indeholder to  nye  standardfunktioner,  der 
giver adgang til kommandolinieparametre:

argcnt       Returnerer antallet af argumenter på kommandolinien, 
             dvs.  antallet af parametre der efterfulgte program-
             navnet. Resultatet er af typen integer.

argstr(n)    Returnerer en streng,  der indeholder den n'te  kom-
             mandolinieparameter.  n  er et udtryk af typen inte-
             ger,  og 1 udpeger det første element. Hvis n er nul 
             eller større end antallet af parametre returneres en 
             tom streng.

Hvis man,  for eksempel,  starter et program ved navn  "DUMP.CMD" 
med kommandolinien:

                     DUMP CROSSREF.PAS CON:

vil  argcnt returnere 2,  argstr(1) returnere "CROSSREF.PAS",  og 
argstr(2) returnere "CON:".  Bemærk,  at det kun er blanktegn  og 
TAB-tegn der gælder som parameteradskillere.

Selvom  det ikke fremgår af manualen tillader RUN  kommandoen  at 
man  angiver kommandolinieparametre når man udfører  et  program. 
Alle  de tegn,  der efterfølger RUN kommandoordet,  kopieres  til 
programmets kommandoliniebuffer førend det startes.


4. Brugerdefinerede fejlbehandlingsrutiner
------------------------------------------

I PolyPascal-86 V3.11 kan man skrive sin egen  fejlbehandlingsru-
tine,  der  bliver kaldt i tilfælde af en I/O eller  kørselsfejl. 
Rutinen skal have den følgende overskrift:

             PROCEDURE error(errno,errofs: integer);

Navnet  på proceduren og parametrene er ligegyldigt,  blot det er 
en procedure med to value-parametre af typen integer.

Værdien der overføres i "errno" er fejltypen og fejlnummeret. Den 
mest betydende byte,  dvs.  "hi(errno)", indeholder fejltypen, og 
den mindst betydende byte,  dvs. "lo(errno)", indeholder fejlnum-
meret  (se Appendix F og G i PolyPascal  Programmeringsmanualen). 
Følgende fejltyper er definerede:

    0   Programafbrydelse (Ctrl-C)
    1   I/O fejl.
    2   Kørselsfejl.

Den  mindst  betydende byte af "errno" er altid 1 i  tilfælde  af 
programafbrydelse (Ctrl-C).  "errofs" indeholder fejlens  offset-
adresse i programkoden.

En fejlbehandlingsrutine aktiveres ved at sætte standardvariablen 
"ehofs" lig med dens offset-adresse, f.eks. "ehofs:=ofs(error)".

En typisk fejlbehandlingsrutine lukker alle åbne filer, udskriver 
en fejlmeddelelse,  og stopper programmet ved et kald til  "halt" 
standardproceduren.  Hvis  en  fejlbehandlingsrutine  returnerer, 
dvs.  hvis den ikke kalder "halt",  eller hvis der sker en fejl i 
den, udskriver PolyPascal selv en fejlmeddelelse og stopper prog-
rammet.


5. Programafbrydning under ind- og udlæsning
--------------------------------------------

PolyPascal-86 V3.11 har,  i tillæg til C  compilerdirektivet,  en 
prædefineret  variabel ved navn "cbreak",  der kan sættes lig med 
"true"  (sand)  eller "false" (falsk).  Når "cbreak"  er  "true", 
virker Ctrl-S og Ctrl-C funktionerne som beskrevet i kapitel 17.1 
i PolyPascal Programmeringsmanualen. Når "cbreak" er "false", har 
Ctrl-S  og Ctrl-C ingen speciel betydning.  C  compilerdirektivet 
bruges  til  at styre "cbreak" variablens værdi ved start  af  et 
program.  "C+"  betyder "true",  og "C-"  betyder  "false".  "C+" 
vælges automatisk ved start af compileren.


6. PolyPascal og Concurrent CP/M
--------------------------------

CP/M-86  versionen  af PolyPascal-86 kan uden ændringer  anvendes 
under Concurrent CP/M.

Under  Concurrent  CP/M  sørger PolyPascal-86 automatisk  for  at 
frigive  printeren når et program stopper efter en RUN  kommando. 
Ligeledes  frigives printeren automatisk når editorens ^K^P  kom-
mando er færdig med at udskrive en blok.

I PolyPascal-86 V3.11 findes en standard heltalsvariabel ved navn 
"sysres".  Når PolyPascal udfører et fil-orienteret BDOS kald (så 
som open file,  close file,  read random,  osv.),  bliver kaldets 
returkode,  der overføres i AX registeret, gemt i "sysres". Dette 
kan i visse tilfælde være en hjælp når man skal finde den præcise 
grund til en I/O fejl.


7. Forslag og bemærkninger
--------------------------

Hvis  De har nogle bemærkninger til PolyPascal systemet  og/eller 
dets dokumentation,  f.eks. forslag til nye faciliteter De føler, 
der er behov for, eller fejl, De eventuelt måtte have opdaget, er 
De naturligvis meget velkommen til at kontakte os.  Vores adresse 
er:

        PolyData MicroCenter A/S
        Aaboulevarden 13
        DK-1960 København V

        Telefon: (01) 35 61 66
        Telex: 27439 poly dk


Held og lykke med programmeringen!
«eof»