Demacify and uniqify bin/adb
authorNick Downing <downing.nick@gmail.com>
Wed, 25 Jan 2017 10:17:06 +0000 (21:17 +1100)
committerNick Downing <downing.nick@gmail.com>
Wed, 25 Jan 2017 10:17:06 +0000 (21:17 +1100)
18 files changed:
bin/adb/access.c
bin/adb/command.c
bin/adb/defs.h
bin/adb/expr.c
bin/adb/format.c
bin/adb/head.h
bin/adb/input.c
bin/adb/main.c
bin/adb/message.c
bin/adb/mode.h
bin/adb/opset.c
bin/adb/optab.c
bin/adb/output.c
bin/adb/pcs.c
bin/adb/print.c
bin/adb/runpcs.c
bin/adb/setup.c
bin/adb/sym.c

index 2ac4865..03b91bf 100644 (file)
@@ -1,11 +1,11 @@
 #ifndef lint
-static char sccsid[] = "@(#)access.c   4.8 10/13/84";
+static char sccsid[] = "@(#)_access.c  4.8 10/13/84";
 #endif
 /*
- * Adb: access data in file/process address space.
+ * Adb: _access data in file/process address space.
  *
- * The routines in this file access referenced data using
- * the maps to access files, ptrace to access subprocesses,
+ * The routines in this file _access referenced data using
+ * the maps to _access files, ptrace to _access subprocesses,
  * or the system page tables when debugging the kernel,
  * to translate virtual to physical addresses.
  */
@@ -13,24 +13,24 @@ static      char sccsid[] = "@(#)access.c   4.8 10/13/84";
 #include "defs.h"
 
 
-MAP            txtmap;
-MAP            datmap;
-INT            wtflag;
-STRING         errflg;
-INT            errno;
+struct map             txtmap;
+struct map             datmap;
+short          wtflag;
+char           *errflg;
+short          errno;
 
-INT            pid;
+short          pid;
 
 /*
  * Primitives: put a value in a space, get a value from a space
  * and get a word or byte not returning if an error occurred.
  */
 put(addr, space, value) 
-    off_t addr; { (void) access(WT, addr, space, value); }
+    off_t addr; { (void) _access(WT, addr, space, value); }
 
 u_int
 get(addr, space)
-    off_t addr; { return (access(RD, addr, space, 0)); };
+    off_t addr; { return (_access(RD, addr, space, 0)); };
 
 u_int
 chkget(addr, space)
@@ -38,7 +38,7 @@ chkget(addr, space)
 
 u_int
 bchkget(addr, space) 
-    off_t addr; { return(chkget(addr, space) & LOBYTE); }
+    off_t addr; { return(chkget(addr, space) & 0377); }
 
 /*
  * Read/write according to mode at address addr in i/d space.
@@ -53,7 +53,7 @@ bchkget(addr, space)
  * relative to the ``current'' process (as specified by its p_addr in
  * <p) and mapping system space addresses through the system page tables.
  */
-access(mode, addr, space, value)
+_access(mode, addr, space, value)
        int mode, space, value;
        off_t addr;
 {
@@ -156,7 +156,7 @@ simple:
                errflg = "page table botch";
                return (-1);
        }
-       /* SHOULD CHECK NOT I/O ADDRESS; NEED CPU TYPE! */
+       /* SHOULD CHECK NOT I/O ADDRESS; NEED CPU typedef! */
        if (pte.pg_v == 0 && (pte.pg_fod || pte.pg_pfnum == 0)) {
                errflg = "page not valid/reclaimable";
                return (-1);
@@ -186,18 +186,22 @@ physrw(file, addr, aw, rd)
 }
 
 chkmap(addr,space)
-       REG L_INT       *addr;
-       REG INT         space;
+       register long   *addr;
+       register short          space;
 {
-       REG MAPPTR amap;
+       register struct map *amap;
        amap=((space&DSP?&datmap:&txtmap));
-       IF space&STAR ORF !within(*addr,amap->b1,amap->e1)
-       THEN IF within(*addr,amap->b2,amap->e2)
-            THEN *addr += (amap->f2)-(amap->b2);
-            ELSE rwerr(space); return(0);
-            FI
-       ELSE *addr += (amap->f1)-(amap->b1);
-       FI
+       if (space&STAR || !within(*addr,amap->b1,amap->e1)) {
+            if (within(*addr,amap->b2,amap->e2)) {
+                 *addr += (amap->f2)-(amap->b2);
+            }
+            else {
+                 rwerr(space); return(0);
+            }
+       }
+       else {
+            *addr += (amap->f1)-(amap->b1);
+       }
        return(1);
 }
 
index 5d695d7..9e31e24 100644 (file)
@@ -9,37 +9,37 @@ static        char sccsid[] = "@(#)command.c  4.6 10/13/84";
 
 #include "defs.h"
 
-MSG            BADEQ;
-MSG            NOMATCH;
-MSG            BADVAR;
-MSG            BADCOM;
-
-MAP            txtmap;
-MAP            datmap;
-INT            executing;
-CHAR           *lp;
-INT            fcor;
-INT            fsym;
-INT            mkfault;
-STRING         errflg;
-
-CHAR           lastc;
-CHAR           eqformat[512] = "z";
-CHAR           stformat[512] = "X\"= \"^i";
-
-L_INT          dot;
-L_INT          ditto;
-INT            dotinc;
-INT            lastcom = '=';
-L_INT          var[];
-L_INT          locval;
-L_INT          locmsk;
-INT            pid;
-L_INT          expv;
-L_INT          adrval;
-INT            adrflg;
-L_INT          cntval;
-INT            cntflg;
+char           BADEQ[];
+char           NOMATCH[];
+char           BADVAR[];
+char           BADCOM[];
+
+struct map             txtmap;
+struct map             datmap;
+short          executing;
+char           *lp;
+short          fcor;
+short          fsym;
+short          mkfault;
+char           *errflg;
+
+char           lastc;
+char           eqformat[512] = "z";
+char           stformat[512] = "X\"= \"^i";
+
+long           dot;
+long           ditto;
+short          dotinc;
+short          lastcom = '=';
+long           var[];
+long           locval;
+long           locmsk;
+short          pid;
+long           expv;
+long           adrval;
+short          adrflg;
+long           cntval;
+short          cntflg;
 
 
 
@@ -47,39 +47,46 @@ INT         cntflg;
 /* command decoding */
 
 command(buf,defcom)
-STRING         buf;
-CHAR           defcom;
+char           *buf;
+char           defcom;
 {
-       INT             itype, ptype, modifier, regptr;
-       BOOL            longpr, eqcom;
-       CHAR            wformat[1];
-       CHAR            savc;
-       L_INT           w, savdot;
-       STRING          savlp=lp;
-       IF buf
-       THEN IF *buf==EOR
-            THEN return(FALSE);
-            ELSE lp=buf;
-            FI
-       FI
-
-       REP
-       IF adrflg=expr(0)
-       THEN dot=expv; ditto=dot;
-       FI
+       short           itype, ptype, modifier, regptr;
+       bool            longpr, eqcom;
+       char            wformat[1];
+       char            savc;
+       long            w, savdot;
+       char*CHECKME            savlp=lp;
+       if (buf) {
+            if (*buf=='\n') {
+                 return(0);
+            }
+            else {
+                 lp=buf;
+            }
+       }
+
+       do {
+          
+       if (adrflg=expr(0)) {
+            dot=expv; ditto=dot;
+       }
        adrval=dot;
-       IF rdc()==',' ANDF expr(0)
-       THEN cntflg=TRUE; cntval=expv;
-       ELSE cntflg=FALSE; cntval=1; lp--;
-       FI
-
-       IF !eol(rdc())
-       THEN lastcom=lastc;
-       ELSE IF adrflg==0 THEN dot=inkdot(dotinc); FI
+       if (rdc()==',' && expr(0)) {
+            cntflg=-1; cntval=expv;
+       }
+       else {
+            cntflg=0; cntval=1; lp--;
+       }
+
+       if (!eol(rdc())) {
+            lastcom=lastc;
+       }
+       else {
+            if (adrflg==0) { dot=inkdot(dotinc); }
             lp--; lastcom=defcom;
-       FI
+       }
 
-       switch(lastcom&STRIP) {
+       switch(lastcom&0177) {
 
            case '/':
                itype=DSP; ptype=DSYM;
@@ -90,74 +97,82 @@ CHAR                defcom;
                goto trypr;
 
            case '?':
-               itype=ISP; ptype=ISYM;
+               itype=_ISP; ptype=ISYM;
                goto trystar;
 
            trystar:
-               IF rdc()=='*' THEN lastcom |= QUOTE; ELSE lp--; FI
-               IF lastcom&QUOTE
-               THEN itype |= STAR; ptype = (DSYM+ISYM)-ptype;
-               FI
+               if (rdc()=='*') { lastcom |= 0200; }NEWLINEelse { lp--; }
+               if (lastcom&0200) {
+                    itype |= STAR; ptype = (DSYM+ISYM)-ptype;
+               }
 
            trypr:
-               longpr=FALSE; eqcom=lastcom=='=';
+               longpr=0; eqcom=lastcom=='=';
                switch (rdc()) {
 
                        case 'm':
                            {/*reset map data*/
-                           INT         fcount;
-                           MAP         *smap;
-                           UNION{MAP *m; L_INT *mp;}amap;
+                           short               fcount;
+                           struct map          *smap;
+                           union{struct map *m; long *mp;}amap;
 
-                           IF eqcom THEN error(BADEQ); FI
+                           if (eqcom) { error(BADEQ); }
                            smap=(itype&DSP?&datmap:&txtmap);
                            amap.m=smap; fcount=3;
-                           IF itype&STAR
-                           THEN amap.mp += 3;
-                           FI
-                           WHILE fcount-- ANDF expr(0)
-                           DO *(amap.mp)++ = expv; OD
-                           IF rdc()=='?' THEN smap->ufd=fsym;
-                           ELIF lastc == '/' THEN smap->ufd=fcor;
-                           ELSE lp--;
-                           FI
+                           if (itype&STAR) {
+                                amap.mp += 3;
+                           }
+                           while (fcount-- && expr(0)) { *(amap.mp)++ = expv; }
+                           if (rdc()=='?') {
+                                smap->ufd=fsym;
+                           }
+                           else if (lastc == '/') {
+                                smap->ufd=fcor;
+                           }
+                           else {
+                                lp--;
+                           }
                            }
                            break;
 
                        case 'L':
-                           longpr=TRUE;
+                           longpr=-1;
                        case 'l':
                            /*search for exp*/
-                           IF eqcom THEN error(BADEQ); FI
+                           if (eqcom) { error(BADEQ); }
                            dotinc=(longpr?4:2); savdot=dot;
                            expr(1); locval=expv;
-                           IF expr(0) THEN locmsk=expv; ELSE locmsk = -1L; FI
-                               IF !longpr THEN locmsk &= 0xFFFF; locval &= 0xFFFF; FI
-                           LOOP w=get(dot,itype);
-                                IF errflg ORF mkfault ORF (w&locmsk)==locval THEN break; FI
+                           if (expr(0)) { locmsk=expv; }NEWLINEelse { locmsk = -1L; }
+                               if (!longpr) { locmsk &= 0xFFFF; locval &= 0xFFFF; }
+                           for(;;) {
+                                w=get(dot,itype);
+                                if (errflg || mkfault || (w&locmsk)==locval) { break; }
                                 dot=inkdot(dotinc);
-                           POOL
-                           IF errflg
-                           THEN dot=savdot; errflg=NOMATCH;
-                           FI
+                           }
+                           if (errflg) {
+                                dot=savdot; errflg=NOMATCH;
+                           }
                            psymoff(dot,ptype,"");
                            break;
 
                        case 'W':
-                           longpr=TRUE;
+                           longpr=-1;
                        case 'w':
-                           IF eqcom THEN error(BADEQ); FI
+                           if (eqcom) { error(BADEQ); }
                            wformat[0]=lastc; expr(1);
-                           REP  savdot=dot; psymoff(dot,ptype,":%16t"); exform(1,wformat,itype,ptype);
+                           do {
+                                savdot=dot; psymoff(dot,ptype,":%16t"); exform(1,wformat,itype,ptype);
                                 errflg=0; dot=savdot;
-                                IF longpr
-                                THEN put(dot,itype,expv);
-                                ELSE put(dot,itype,itol(get(dot+2,itype),expv));
-                                FI
+                                if (longpr) {
+                                     put(dot,itype,expv);
+                                }
+                                else {
+                                     put(dot,itype,itol(get(dot+2,itype),expv));
+                                }
                                 savdot=dot;
-                                printf("=%8t"); exform(1,wformat,itype,ptype);
+                                _printf("=%8t"); exform(1,wformat,itype,ptype);
                                 newline();
-                           PER  expr(0) ANDF errflg==0 DONE
+                           } while (expr(0) && errflg==0);
                            dot=savdot;
                            chkerr();
                            break;
@@ -165,27 +180,33 @@ CHAR              defcom;
                        default:
                            lp--;
                            getformat(eqcom ? eqformat : stformat);
-                           IF !eqcom
-                           THEN psymoff(dot,ptype,":%16t");
-                           FI
+                           if (!eqcom) {
+                                psymoff(dot,ptype,":%16t");
+                           }
                            scanform(cntval,(eqcom?eqformat:stformat),itype,ptype);
                }
                break;
 
            case '>':
                lastcom=0; savc=rdc();
-               IF regptr=getreg(savc)
-               THEN IF kcore THEN
+               if (regptr=getreg(savc)) {
+                    if (kcore) {
+                        
                        *(int *)regptr = dot;
-                    ELSE
-                       *(ADDR *)(((ADDR)&u)+regptr) = dot;
-                       ptrace(PT_WRITE_U, pid, regptr,
-                            *(ADDR *)(((ADDR)&u)+regptr));
-                    FI
-               ELIF (modifier=varchk(savc)) != -1
-               THEN    var[modifier]=dot;
-               ELSE    error(BADVAR);
-               FI
+                    }
+                    else {
+                        
+                       *(intptr_t *)(((intptr_t)&u)+regptr) = dot;
+                       ptrace(PT_WRITE_U, pid, regptr,
+                            *(intptr_t *)(((intptr_t)&u)+regptr));
+                    }
+               }
+               else if ((modifier=varchk(savc)) != -1) {
+                       var[modifier]=dot;
+               }
+               else {
+                       error(BADVAR);
+               }
                break;
 
            case '!':
@@ -197,12 +218,12 @@ CHAR              defcom;
                printtrace(nextchar()); break;
 
            case ':':
-               IF !executing
-               THEN executing=TRUE;
+               if (!executing) {
+                    executing=-1;
                     subpcs(nextchar());
-                    executing=FALSE;
+                    executing=0;
                     lastcom=0;
-               FI
+               }
                break;
 
            case 0:
@@ -213,8 +234,8 @@ CHAR                defcom;
        }
 
        flushbuf();
-       PER rdc()==';' DONE
-       IF buf THEN lp=savlp; ELSE lp--; FI
-       return(adrflg ANDF dot!=0);
+       } while (rdc()==';');
+       if (buf) { lp=savlp; }NEWLINEelse { lp--; }
+       return(adrflg && dot!=0);
 }
 
index 4c6b92c..d99b544 100644 (file)
 #include "mode.h"
 #include "head.h"
 
-/* access modes */
+/* _access modes */
 #define RD     0
 #define WT     1
 
 #define NSP    0
-#define        ISP     1
+#define        _ISP    1
 #define        DSP     2
 #define STAR   4
 #define STARCOM 0200
@@ -40,8 +40,8 @@
 #define BKPTSET        1
 #define BKPTEXEC 2
 
-#define USERPS PSL
-#define USERPC PC
+#define USERPS _PSL
+#define USERPC _PC
 #define BPT    03
 #define TBIT   020
 #define FD     0200
 
 /* the quantities involving ctob() are located in the kernel stack. */
 /* the others are in the pcb. */
-#define KSP    0
-#define ESP    4
-#define SSP    8
-#define USP    (ctob(UPAGES)-5*sizeof(int))
-#define R0     (ctob(UPAGES)-18*sizeof(int))
-#define R1     (ctob(UPAGES)-17*sizeof(int))
-#define R2     (ctob(UPAGES)-16*sizeof(int))
-#define R3     (ctob(UPAGES)-15*sizeof(int))
-#define R4     (ctob(UPAGES)-14*sizeof(int))
-#define R5     (ctob(UPAGES)-13*sizeof(int))
-#define R6     (ctob(UPAGES)-12*sizeof(int))
-#define R7     (ctob(UPAGES)-11*sizeof(int))
-#define R8     (ctob(UPAGES)-10*sizeof(int))
-#define R9     (ctob(UPAGES)-9*sizeof(int))
-#define R10    (ctob(UPAGES)-8*sizeof(int))
-#define R11    (ctob(UPAGES)-7*sizeof(int))
-#define AP     (ctob(UPAGES)-21*sizeof(int))
-#define FP     (ctob(UPAGES)-20*sizeof(int))
-#define PC     (ctob(UPAGES)-2*sizeof(int))
-#define PSL    (ctob(UPAGES)-1*sizeof(int))
-#define P0BR   80
-#define P0LR   84
-#define P1BR   88
-#define P1LR   92
+#define _KSP   0
+#define _ESP   4
+#define _SSP   8
+#define _USP   (ctob(UPAGES)-5*sizeof(int))
+#define _R0    (ctob(UPAGES)-18*sizeof(int))
+#define _R1    (ctob(UPAGES)-17*sizeof(int))
+#define _R2    (ctob(UPAGES)-16*sizeof(int))
+#define _R3    (ctob(UPAGES)-15*sizeof(int))
+#define _R4    (ctob(UPAGES)-14*sizeof(int))
+#define _R5    (ctob(UPAGES)-13*sizeof(int))
+#define _R6    (ctob(UPAGES)-12*sizeof(int))
+#define _R7    (ctob(UPAGES)-11*sizeof(int))
+#define _R8    (ctob(UPAGES)-10*sizeof(int))
+#define _R9    (ctob(UPAGES)-9*sizeof(int))
+#define _R10   (ctob(UPAGES)-8*sizeof(int))
+#define _R11   (ctob(UPAGES)-7*sizeof(int))
+#define _AP    (ctob(UPAGES)-21*sizeof(int))
+#define _FP    (ctob(UPAGES)-20*sizeof(int))
+#define _PC    (ctob(UPAGES)-2*sizeof(int))
+#define _PSL   (ctob(UPAGES)-1*sizeof(int))
+#define _P0BR  80
+#define _P0LR  84
+#define _P1BR  88
+#define _P1LR  92
 
 #define MAXOFF 255
 #define MAXPOS 80
@@ -83,8 +83,8 @@
 
 /* long to ints and back (puns) */
 union {
-       INT     I[2];
-       L_INT   L;
+       short   I[2];
+       long    L;
 } itolws;
 
 #ifndef vax
@@ -98,13 +98,13 @@ union {
 #endif
 
 /* result type declarations */
-L_INT          inkdot();
-POS            get();
-POS            chkget();
-STRING         exform();
-L_INT          round();
-BKPTR          scanbkpt();
-VOID           fault();
+long           inkdot();
+unsigned               get();
+unsigned               chkget();
+char*CHECKME           exform();
+long           round();
+struct bkpt*CHECKME            scanbkpt();
+void           fault();
 
 struct pcb     pcb;
 int    kernel;
index 2336fd7..cc976b7 100644 (file)
@@ -9,48 +9,48 @@ static        char sccsid[] = "@(#)expr.c     4.8 8/11/83";
 
 #include "defs.h"
 
-MSG            BADSYM;
-MSG            BADVAR;
-MSG            BADKET;
-MSG            BADSYN;
-MSG            NOCFN;
-MSG            NOADR;
-MSG            BADLOC;
+char           BADSYM[];
+char           BADVAR[];
+char           BADKET[];
+char           BADSYN[];
+char           NOCFN[];
+char           NOADR[];
+char           BADLOC[];
 
-ADDR           lastframe;
-ADDR           savlastf;
-ADDR           savframe;
-ADDR           savpc;
-ADDR           callpc;
+intptr_t               lastframe;
+intptr_t               savlastf;
+intptr_t               savframe;
+intptr_t               savpc;
+intptr_t               callpc;
 
 
 
-CHAR           *lp;
-INT            radix;
-STRING         errflg;
-L_INT          localval;
-CHAR           isymbol[1024];
+char           *lp;
+short          radix;
+char           *errflg;
+long           localval;
+char           isymbol[1024];
 
-CHAR           lastc,peekc;
+char           lastc,peekc;
 
-L_INT          dot;
-L_INT          ditto;
-INT            dotinc;
-L_INT          var[];
-L_INT          expv;
+long           dot;
+long           ditto;
+short          dotinc;
+long           var[];
+long           expv;
 
 
 
 
 expr(a)
 {      /* term | term dyadic expr |  */
-       INT             rc;
-       L_INT           lhs;
+       short           rc;
+       long            lhs;
 
        rdc(); lp--; rc=term(a);
 
-       WHILE rc
-       DO  lhs = expv;
+       while (rc) {
+           lhs = expv;
 
            switch ((int)readchar()) {
 
@@ -76,13 +76,13 @@ expr(a)
                        term(a|1); expv |= lhs; break;
 
                    case ')':
-                       IF (a&2)==0 THEN error(BADKET); FI
+                       if ((a&2)==0) { error(BADKET); }
 
                    default:
                        lp--;
                        return(rc);
            }
-       OD
+       }
        return(rc);
 }
 
@@ -95,7 +95,7 @@ term(a)
                        term(a|1); expv=chkget(expv,DSP); return(1);
 
                    case '@':
-                       term(a|1); expv=chkget(expv,ISP); return(1);
+                       term(a|1); expv=chkget(expv,_ISP); return(1);
 
                    case '-':
                        term(a|1); expv = -expv; return(1);
@@ -108,10 +108,12 @@ term(a)
 
                    case '(':
                        expr(2);
-                       IF *lp!=')'
-                       THEN    error(BADSYN);
-                       ELSE    lp++; return(1);
-                       FI
+                       if (*lp!=')') {
+                               error(BADSYN);
+                       }
+                       else {
+                               lp++; return(1);
+                       }
 
                    default:
                        lp--;
@@ -121,174 +123,205 @@ term(a)
 
 item(a)
 {      /* name [ . local ] | number | . | ^ | <var | <register | 'x | | */
-       INT             base, d;
-       CHAR            savc;
-       BOOL            hex;
-       L_INT           frame;
+       short           base, d;
+       char            savc;
+       bool            hex;
+       long            frame;
        register struct nlist *symp;
        int regptr;
 
-       hex=FALSE;
+       hex=0;
 
        readchar();
-       IF symchar(0)
-       THEN    readsym();
-               IF lastc=='.'
-               THEN    frame= *(ADDR *)(((ADDR)&u)+FP); lastframe=0;
-                       callpc= *(ADDR *)(((ADDR)&u)+PC);
-                       WHILE errflg==0
-                       DO  savpc=callpc;
+       if (symchar(0)) {
+               readsym();
+               if (lastc=='.') {
+                       frame= *(intptr_t *)(((intptr_t)&u)+_FP); lastframe=0;
+                       callpc= *(intptr_t *)(((intptr_t)&u)+_PC);
+                       while (errflg==0) {
+                           savpc=callpc;
                                findsym(callpc,ISYM);
-                           IF  eqsym(cursym->n_un.n_name,isymbol,'~')
-                           THEN break;
-                           FI
+                           if (eqsym(cursym->n_un.n_name,isymbol,'~')) {
+                                break;
+                           }
                                callpc=get(frame+16, DSP);
                            lastframe=frame;
-                           frame=get(frame+12,DSP)&EVEN;
-                           IF frame==0
-                           THEN error(NOCFN);
-                           FI
-                       OD
+                           frame=get(frame+12,DSP)&-2;
+                           if (frame==0) {
+                                error(NOCFN);
+                           }
+                       }
                        savlastf=lastframe; savframe=frame;
                        readchar();
-                       IF symchar(0)
-                       THEN    chkloc(expv=frame);
-                       FI
-               ELIF (symp=lookup(isymbol))==0 THEN error(BADSYM);
-               ELSE expv = symp->n_value;
-               FI
+                       if (symchar(0)) {
+                               chkloc(expv=frame);
+                       }
+               }
+               else if ((symp=lookup(isymbol))==0) {
+                    error(BADSYM);
+               }
+               else {
+                    expv = symp->n_value;
+               }
                lp--;
 
-       ELIF getnum(readchar)
-       THEN ;
-       ELIF lastc=='.'
-       THEN    readchar();
-               IF symchar(0)
-               THEN    lastframe=savlastf; callpc=savpc;
+       }
+       else if (getnum(readchar)) {
+            ;
+       }
+       else if (lastc=='.') {
+               readchar();
+               if (symchar(0)) {
+                       lastframe=savlastf; callpc=savpc;
                        chkloc(savframe);
-               ELSE    expv=dot;
-               FI
+               }
+               else {
+                       expv=dot;
+               }
                lp--;
 
-       ELIF lastc=='"'
-       THEN    expv=ditto;
-
-       ELIF lastc=='+'
-       THEN    expv=inkdot(dotinc);
-
-       ELIF lastc=='^'
-       THEN    expv=inkdot(-dotinc);
-
-       ELIF lastc=='<'
-       THEN    savc=rdc();
-               IF regptr=getreg(savc)
-               THEN    IF kcore THEN expv = *(int *)regptr;
-                       ELSE expv= * (ADDR *)(((ADDR)&u)+regptr); FI
-               ELIF (base=varchk(savc)) != -1
-               THEN    expv=var[base];
-               ELSE    error(BADVAR);
-               FI
-
-       ELIF lastc=='\''
-       THEN    d=4; expv=0;
-               WHILE quotchar()
-               DO  IF d--
-                   THEN expv = (expv << 8) | lastc;
-                   ELSE error(BADSYN);
-                   FI
-               OD
-
-       ELIF a
-       THEN    error(NOADR);
-       ELSE    lp--; return(0);
-       FI
+       }
+       else if (lastc=='"') {
+               expv=ditto;
+
+       }
+       else if (lastc=='+') {
+               expv=inkdot(dotinc);
+
+       }
+       else if (lastc=='^') {
+               expv=inkdot(-dotinc);
+
+       }
+       else if (lastc=='<') {
+               savc=rdc();
+               if (regptr=getreg(savc)) {
+                       if (kcore) {
+                            expv = *(int *)regptr;
+                       }
+                       else { expv= * (intptr_t *)(((intptr_t)&u)+regptr); }
+               }
+               else if ((base=varchk(savc)) != -1) {
+                       expv=var[base];
+               }
+               else {
+                       error(BADVAR);
+               }
+
+       }
+       else if (lastc=='\'') {
+               d=4; expv=0;
+               while (quotchar()) {
+                   if (d--) {
+                        expv = (expv << 8) | lastc;
+                   }
+                   else {
+                        error(BADSYN);
+                   }
+               }
+
+       }
+       else if (a) {
+               error(NOADR);
+       }
+       else {
+               lp--; return(0);
+       }
        return(1);
 }
 
 /* service routines for expression reading */
 getnum(rdf) int (*rdf)();
 {
-       INT base,d,frpt;
-       BOOL hex;
-       UNION{REAL r; L_INT i;} real;
-       IF isdigit(lastc) ORF (hex=TRUE, lastc=='#' ANDF isxdigit((*rdf)()))
-       THEN    expv = 0;
+       short base,d,frpt;
+       bool hex;
+       union{float r; long i;} real;
+       if (isdigit(lastc) || (hex=-1, lastc=='#' && isxdigit((*rdf)()))) {
+               expv = 0;
                base = (hex ? 16 : radix);
-               WHILE (base>10 ? isxdigit(lastc) : isdigit(lastc))
-               DO  expv = (base==16 ? expv<<4 : expv*base);
-                   IF (d=convdig(lastc))>=base THEN error(BADSYN); FI
+               while ((base>10 ? isxdigit(lastc) : isdigit(lastc))) {
+                   expv = (base==16 ? expv<<4 : expv*base);
+                   if ((d=convdig(lastc))>=base) { error(BADSYN); }
                    expv += d; (*rdf)();
-                   IF expv==0
-                   THEN IF (lastc=='x' ORF lastc=='X')
-                                THEN hex=TRUE; base=16; (*rdf)();
-                                ELIF (lastc=='t' ORF lastc=='T')
-                            THEN hex=FALSE; base=10; (*rdf)();
-                        ELIF (lastc=='o' ORF lastc=='O')
-                        THEN hex=FALSE; base=8; (*rdf)();
-                                FI
-                   FI
-               OD
-               IF lastc=='.' ANDF (base==10 ORF expv==0) ANDF !hex
-               THEN    real.r=expv; frpt=0; base=10;
-                       WHILE isdigit((*rdf)())
-                       DO      real.r *= base; frpt++;
+                   if (expv==0) {
+                        if ((lastc=='x' || lastc=='X')) {
+                                     hex=-1; base=16; (*rdf)();
+                                }
+                                else if ((lastc=='t' || lastc=='T')) {
+                                 hex=0; base=10; (*rdf)();
+                        }
+                        else if ((lastc=='o' || lastc=='O')) {
+                             hex=0; base=8; (*rdf)();
+                                }
+                   }
+               }
+               if (lastc=='.' && (base==10 || expv==0) && !hex) {
+                       real.r=expv; frpt=0; base=10;
+                       while (isdigit((*rdf)())) {
+                               real.r *= base; frpt++;
                                real.r += lastc-'0';
-                       OD
-                       WHILE frpt--
-                       DO      real.r /= base; OD
+                       }
+                       while (frpt--) { real.r /= base; }
                        expv = real.i;
-               FI
+               }
                peekc=lastc;
 /*             lp--; */
                return(1);
-       ELSE return(0);
-       FI
+       }
+       else {
+            return(0);
+       }
 }
 
 readsym()
 {
-       REG char        *p;
+       register char   *p;
 
        p = isymbol;
-       REP IF p < &isymbol[sizeof(isymbol)-1]
-           THEN *p++ = lastc;
-           FI
+       do {
+           if (p < &isymbol[sizeof(isymbol)-1]) {
+                *p++ = lastc;
+           }
            readchar();
-       PER symchar(1) DONE
+       } while (symchar(1));
        *p++ = 0;
 }
 
 convdig(c)
-CHAR c;
+char c;
 {
-       IF isdigit(c)
-       THEN    return(c-'0');
-       ELIF isxdigit(c)
-       THEN    return(c-'a'+10);
-       ELSE    return(17);
-       FI
+       if (isdigit(c)) {
+               return(c-'0');
+       }
+       else if (isxdigit(c)) {
+               return(c-'a'+10);
+       }
+       else {
+               return(17);
+       }
 }
 
 symchar(dig)
 {
-       IF lastc=='\\' THEN readchar(); return(TRUE); FI
-       return( isalpha(lastc) ORF lastc=='_' ORF dig ANDF isdigit(lastc) );
+       if (lastc=='\\') { readchar(); return(-1); }
+       return( isalpha(lastc) || lastc=='_' || dig && isdigit(lastc) );
 }
 
 varchk(name)
 {
-       IF isdigit(name) THEN return(name-'0'); FI
-       IF isalpha(name) THEN return((name&037)-1+10); FI
+       if (isdigit(name)) { return(name-'0'); }
+       if (isalpha(name)) { return((name&037)-1+10); }
        return(-1);
 }
 
 chkloc(frame)
-L_INT          frame;
+long           frame;
 {
        readsym();
-       REP IF localsym(frame)==0 THEN error(BADLOC); FI
+       do {
+           if (localsym(frame)==0) { error(BADLOC); }
            expv=localval;
-       PER !eqsym(cursym->n_un.n_name,isymbol,'~') DONE
+       } while (!eqsym(cursym->n_un.n_name,isymbol,'~'));
 }
 
 eqsym(s1, s2, c)
index 0eb522a..7157b33 100644 (file)
@@ -9,135 +9,145 @@ static      char sccsid[] = "@(#)format.c   4.3 2/27/86";
 
 #include "defs.h"
 
-MSG            BADMOD;
-MSG            NOFORK;
-MSG            ADWRAP;
-
-INT            mkfault;
-CHAR           *lp;
-L_INT          maxoff;
-ADDR           sigint;
-ADDR           sigqit;
-STRING         errflg;
-CHAR           lastc,peekc;
-L_INT          dot;
-INT            dotinc;
-L_INT          expv;
-L_INT          var[];
-
-
-STRING         fphack;
+char           BADMOD[];
+char           NOFORK[];
+char           ADWRAP[];
+
+short          mkfault;
+char           *lp;
+long           maxoff;
+intptr_t               sigint;
+intptr_t               sigqit;
+char           *errflg;
+char           lastc,peekc;
+long           dot;
+short          dotinc;
+long           expv;
+long           var[];
+
+
+char           *fphack;
 rdfp()
 {
        return(lastc= *fphack++);
 }
 
 scanform(icount,ifp,itype,ptype)
-L_INT          icount;
-STRING         ifp;
+long           icount;
+char           *ifp;
 {
-       STRING          fp;
-       CHAR            modifier;
-       INT             fcount, init=1;
-       L_INT           savdot;
-       BOOL exact;
-       BOOL doit = 1;
-
-       WHILE icount
-       DO  fp=ifp;
+       char            *fp;
+       char            modifier;
+       short           fcount, init=1;
+       long            savdot;
+       bool exact;
+       bool doit = 1;
+
+       while (icount) {
+           fp=ifp;
            savdot=dot; init=0;
 
-           IF init==0 ANDF (exact=(findsym(dot,ptype)==0)) ANDF maxoff
-           THEN printf("\n%s:%16t",cursym->n_un.n_name);
-           FI
+           if (init==0 && (exact=(findsym(dot,ptype)==0)) && maxoff) {
+                _printf("\n%s:%16t",cursym->n_un.n_name);
+           }
 
            /*now loop over format*/
-           WHILE *fp ANDF errflg==0
-           DO  IF digit(modifier = *fp)
-               THEN fcount = 0;
-                       WHILE digit(modifier = *fp++)
-                       DO fcount *= 10;
+           while (*fp && errflg==0) {
+               if (digit(modifier = *fp)) {
+                    fcount = 0;
+                       while (digit(modifier = *fp++)) {
+                          fcount *= 10;
                           fcount += modifier-'0';
-                       OD
+                       }
                        fp--;
-                       IF fcount==0 THEN fcount = 1; FI
-               ELSE fcount = 1;
-               FI
-
-               IF *fp==0 THEN break; FI
-               IF exact ANDF dot==savdot ANDF itype==ISP ANDF cursym->n_un.n_name[0]=='_' ANDF *fp=='i'
-               THEN exform(1,"x",itype,ptype); fp++; printc(EOR); /* entry mask */
-               ELSE fp=exform(fcount,fp,itype,ptype);
-               FI
-           OD
+                       if (fcount==0) { fcount = 1; }
+               }
+               else {
+                    fcount = 1;
+               }
+
+               if (*fp==0) { break; }
+               if (exact && dot==savdot && itype==_ISP && cursym->n_un.n_name[0]=='_' && *fp=='i') {
+                    exform(1,"x",itype,ptype); fp++; printc('\n'); /* entry mask */
+               }
+               else {
+                    fp=exform(fcount,fp,itype,ptype);
+               }
+           }
            dotinc=dot-savdot;
            dot=savdot;
 
-           IF errflg
-           THEN IF icount<0
-                THEN errflg=0; break;
-                ELSE error(errflg);
-                FI
-           FI
-           IF --icount
-           THEN dot=inkdot(dotinc);
-           FI
-           IF mkfault THEN error(0); FI
-       OD
+           if (errflg) {
+                if (icount<0) {
+                     errflg=0; break;
+                }
+                else {
+                     error(errflg);
+                }
+           }
+           if (--icount) {
+                dot=inkdot(dotinc);
+           }
+           if (mkfault) { error(0); }
+       }
 }
 
-STRING
+char*CHECKME
 exform(fcount,ifp,itype,ptype)
-INT            fcount;
-STRING         ifp;
+short          fcount;
+char           *ifp;
 {
        /* execute single format item `fcount' times
         * sets `dotinc' and moves `dot'
         * returns address of next format item
         */
-       POS             w;
-       L_INT           savdot, wx;
-       STRING          fp;
-       CHAR            c, modifier, longpr;
-       L_REAL          fw;
+       unsigned                w;
+       long            savdot, wx;
+       char            *fp;
+       char            c, modifier, longpr;
+       double          fw;
        struct{
-               L_INT   sa;
-               INT     sb,sc;
+               long    sa;
+               short   sb,sc;
        };
 
-       WHILE fcount>0
-       DO      fp = ifp; c = *fp;
+       while (fcount>0) {
+               fp = ifp; c = *fp;
                longpr=(c>='A')&(c<='Z')|(c=='f')|(c=='4')|(c=='p');
-               IF itype==NSP ORF *fp=='a'
-               THEN wx=dot; w=dot;
-               ELSE w=get(dot,itype);
-                    IF longpr
-                    THEN wx=itol(get(inkdot(2),itype),w);
-                    ELSE wx=w;
-                    FI
-               FI
-               IF c=='F'
-               THEN fw.sb=get(inkdot(4),itype);
+               if (itype==NSP || *fp=='a') {
+                    wx=dot; w=dot;
+               }
+               else {
+                    w=get(dot,itype);
+                    if (longpr) {
+                         wx=itol(get(inkdot(2),itype),w);
+                    }
+                    else {
+                         wx=w;
+                    }
+               }
+               if (c=='F') {
+                    fw.sb=get(inkdot(4),itype);
                     fw.sc=get(inkdot(6),itype);
-               FI
-               IF errflg THEN return(fp); FI
-               IF mkfault THEN error(0); FI
+               }
+               if (errflg) { return(fp); }
+               if (mkfault) { error(0); }
                var[0]=wx;
                modifier = *fp++;
                dotinc=(longpr?4:2);;
 
-               IF charpos()==0 ANDF modifier!='a' THEN printf("%16m"); FI
+               if (charpos()==0 && modifier!='a') { _printf("%16m"); }
 
                switch(modifier) {
 
-                   case SP: case TB:
+                   case ' ': case '\t':
                        break;
 
                    case 't': case 'T':
-                       printf("%T",fcount); return(fp);
+                       _printf("%T",fcount); return(fp);
 
                    case 'r': case 'R':
-                       printf("%M",fcount); return(fp);
+                       _printf("%M",fcount); return(fp);
 
                    case 'a':
                        psymoff(dot,ptype,":%16t"); dotinc=0; break;
@@ -146,89 +156,97 @@ STRING            ifp;
                        psymoff(var[0],ptype,"%16t"); break;
 
                    case 'u':
-                       printf("%-8u",w); break;
+                       _printf("%-8u",w); break;
 
                    case 'U':
-                       printf("%-16U",wx); break;
+                       _printf("%-16U",wx); break;
 
                    case 'c': case 'C':
-                       IF modifier=='C'
-                       THEN printesc(w&LOBYTE);
-                       ELSE printc(w&LOBYTE);
-                       FI
+                       if (modifier=='C') {
+                            printesc(w&0377);
+                       }
+                       else {
+                            printc(w&0377);
+                       }
                        dotinc=1; break;
 
                    case 'b': case 'B':
-                       printf("%-8o", w&LOBYTE); dotinc=1; break;
+                       _printf("%-8o", w&0377); dotinc=1; break;
 
                        case '1':
-                       printf("%-8r", w&LOBYTE); dotinc=1; break;
+                       _printf("%-8r", w&0377); dotinc=1; break;
 
                        case '2':
                    case 'w':
-                       printf("%-8r", w); break;
+                       _printf("%-8r", w); break;
 
                        case '4':
                    case 'W':
-                       printf("%-16R", wx); break;
+                       _printf("%-16R", wx); break;
 
                    case 's': case 'S':
                        savdot=dot; dotinc=1;
-                       WHILE (c=get(dot,itype)&LOBYTE) ANDF errflg==0
-                       DO dot=inkdot(1);
-                          IF modifier == 'S'
-                          THEN printesc(c);
-                          ELSE printc(c);
-                          FI
+                       while ((c=get(dot,itype)&0377) && errflg==0) {
+                          dot=inkdot(1);
+                          if (modifier == 'S') {
+                               printesc(c);
+                          }
+                          else {
+                               printc(c);
+                          }
                           endline();
-                       OD
+                       }
                        dotinc=dot-savdot+1; dot=savdot; break;
 
                    case 'x':
-                       printf("%-8x",w); break;
+                       _printf("%-8x",w); break;
 
                    case 'X':
-                       printf("%-16X", wx); break;
+                       _printf("%-16X", wx); break;
 
                    case 'Y':
-                       printf("%-24Y", wx); break;
+                       _printf("%-24Y", wx); break;
 
                    case 'q':
-                       printf("%-8q", w); break;
+                       _printf("%-8q", w); break;
 
                    case 'Q':
-                       printf("%-16Q", wx); break;
+                       _printf("%-16Q", wx); break;
 
                    case 'o':
-                       printf("%-8o", w); break;
+                       _printf("%-8o", w); break;
 
                    case 'O':
-                       printf("%-16O", wx); break;
+                       _printf("%-16O", wx); break;
 
                    case 'i':
-                       printins(0,itype,w); printc(EOR); break;
+                       printins(0,itype,w); printc('\n'); break;
 
                    case 'd':
-                       printf("%-8d", w); break;
+                       _printf("%-8d", w); break;
 
                    case 'D':
-                       printf("%-16D", wx); break;
+                       _printf("%-16D", wx); break;
 
                    case 'f':
                        fw = 0;
                        fw.sa = wx;
-                       IF (wx & ~0xFFFF00FF) == 0x8000
-                       THEN printf("(reserved oprnd)");
-                       ELSE printf("%-16.9f", fw);
-                       FI
+                       if ((wx & ~0xFFFF00FF) == 0x8000) {
+                            _printf("(reserved oprnd)");
+                       }
+                       else {
+                            _printf("%-16.9f", fw);
+                       }
                        dotinc=4; break;
 
                    case 'F':
                        fw.sa = wx;
-                       IF (wx & ~0xFFFF00FF) == 0x8000
-                       THEN printf("%-32s", "(reserved oprnd)");
-                       ELSE printf("%-32.18F", fw);
-                       FI
+                       if ((wx & ~0xFFFF00FF) == 0x8000) {
+                            _printf("%-32s", "(reserved oprnd)");
+                       }
+                       else {
+                            _printf("%-32.18F", fw);
+                       }
                        dotinc=8; break;
 
                    case 'n': case 'N':
@@ -236,9 +254,8 @@ STRING              ifp;
 
                    case '"':
                        dotinc=0;
-                       WHILE *fp != '"' ANDF *fp
-                       DO printc(*fp++); OD
-                       IF *fp THEN fp++; FI
+                       while (*fp != '"' && *fp) { printc(*fp++); }
+                       if (*fp) { fp++; }
                        break;
 
                    case '^':
@@ -252,11 +269,11 @@ STRING            ifp;
 
                    default: error(BADMOD);
                }
-               IF itype!=NSP
-               THEN    dot=inkdot(dotinc);
-               FI
+               if (itype!=NSP) {
+                       dot=inkdot(dotinc);
+               }
                fcount--; endline();
-       OD
+       }
 
        return(fp);
 }
@@ -264,56 +281,64 @@ STRING            ifp;
 shell()
 {
 #ifndef EDDT
-       INT             rc, status, unixpid;
-       STRING          argp = lp;
-       STRING          getenv(), shell = getenv("SHELL");
+       short           rc, status, unixpid;
+       char*CHECKME            argp = lp;
+       char*CHECKME            getenv(), shell = getenv("SHELL");
 #ifdef VFORK
        char            oldstlp;
 #endif
 
        if (shell == 0)
                shell = "/bin/sh";
-       WHILE lastc!=EOR DO rdc(); OD
+       while (lastc!='\n') { rdc(); }
 #ifndef VFORK
-       IF (unixpid=fork())==0
+       if ((unixpid=fork())==0
 #else
        oldstlp = *lp;
-       IF (unixpid=vfork())==0
-#endif
-       THEN    signal(SIGINT,sigint); signal(SIGQUIT,sigqit);
+       if ((unixpid=vfork())==0
+#endif) {
+               signal(SIGINT,sigint); signal(SIGQUIT,sigqit);
                *lp=0; execl(shell, "sh", "-c", argp, 0);
                _exit(16);
 #ifndef VFORK
-       ELIF unixpid == -1
+       }
+       else if (unixpid == -1
 #else
-       ELIF *lp = oldstlp, unixpid == -1
-#endif
-       THEN    error(NOFORK);
-       ELSE    signal(SIGINT,1);
-               WHILE (rc = wait(&status)) != unixpid ANDF rc != -1 DONE
+       }
+       else if (*lp = oldstlp, unixpid == -1
+#endif) {
+               error(NOFORK);
+       }
+       else {
+               signal(SIGINT,1);
+               while ((rc = wait(&status)) != unixpid && rc != -1);
                signal(SIGINT,sigint);
                prints("!"); lp--;
-       FI
+       }
 #endif
 }
 
 
 printesc(c)
 {
-       c &= STRIP;
-       IF c==0177 THEN printf("^?");
-       ELIF c<SP
-       THEN printf("^%c", c + '@');
-       ELSE printc(c);
-       FI
+       c &= 0177;
+       if (c==0177) {
+            _printf("^?");
+       }
+       else if (c<' ') {
+            _printf("^%c", c + '@');
+       }
+       else {
+            printc(c);
+       }
 }
 
-L_INT  inkdot(incr)
+long   inkdot(incr)
 {
-       L_INT           newdot;
+       long            newdot;
 
        newdot=dot+incr;
-       IF (dot NEQ newdot) >> 24 THEN error(ADWRAP); FI
+       if ((dot ^ newdot) >> 24) { error(ADWRAP); }
        return(newdot);
 }
 
index 6a2db38..a01a8d4 100644 (file)
@@ -1,7 +1,7 @@
 /*     head.h  4.1     81/05/14        */
 
-ADDR   maxoff;
-ADDR   localval;
+intptr_t       maxoff;
+intptr_t       localval;
 
 struct nlist *symtab, *esymtab;
 struct nlist *cursym;
@@ -13,14 +13,14 @@ long        var[36];
 
 int    xargc;
 
-MAP    txtmap;
-MAP    datmap;
-INT    wtflag;
-INT    fcor;
-INT    fsym;
-L_INT  maxfile;
-L_INT  maxstor;
-INT    signo;
+struct map     txtmap;
+struct map     datmap;
+short  wtflag;
+short  fcor;
+short  fsym;
+long   maxfile;
+long   maxstor;
+short  signo;
 
 union {
        struct  user U;
index 99dcba5..60c96a1 100644 (file)
@@ -9,75 +9,85 @@ static        char sccsid[] = "@(#)input.c    4.2 8/11/83";
 
 #include "defs.h"
 
-INT            mkfault;
-CHAR           line[LINSIZ];
-INT            infile;
-CHAR           *lp;
-CHAR           peekc,lastc = EOR;
-INT            eof;
+short          mkfault;
+char           line[LINSIZ];
+short          infile;
+char           *lp;
+char           peekc,lastc = '\n';
+short          eof;
 
 /* input routines */
 
 eol(c)
-CHAR   c;
+char   c;
 {
-       return(c==EOR ORF c==';');
+       return(c=='\n' || c==';');
 }
 
 rdc()
-{      REP     readchar();
-       PER     lastc==SP ORF lastc==TB
-       DONE
+{      do {NEWLINE     readchar();
+       } while (lastc==' ' || lastc=='\t');
        return(lastc);
 }
 
 readchar()
 {
-       IF eof
-       THEN    lastc=0;
-       ELSE    IF lp==0
-               THEN    lp=line;
-                       REP eof = read(infile,lp,1)==0;
-                           IF mkfault THEN error(0); FI
-                       PER eof==0 ANDF *lp++!=EOR DONE
+       if (eof) {
+               lastc=0;
+       }
+       else {
+               if (lp==0) {
+                       lp=line;
+                       do {
+                           eof = read(infile,lp,1)==0;
+                           if (mkfault) { error(0); }
+                       } while (eof==0 && *lp++!='\n');
                        *lp=0; lp=line;
-               FI
-               IF lastc = peekc THEN peekc=0;
-               ELIF lastc = *lp THEN lp++;
-               FI
-       FI
+               }
+               if (lastc = peekc) {
+                    peekc=0;
+               }
+               else if (lastc = *lp) {
+                    lp++;
+               }
+       }
        return(lastc);
 }
 
 nextchar()
 {
-       IF eol(rdc())
-       THEN lp--; return(0);
-       ELSE return(lastc);
-       FI
+       if (eol(rdc())) {
+            lp--; return(0);
+       }
+       else {
+            return(lastc);
+       }
 }
 
 quotchar()
 {
-       IF readchar()=='\\'
-       THEN    return(readchar());
-       ELIF lastc=='\''
-       THEN    return(0);
-       ELSE    return(lastc);
-       FI
+       if (readchar()=='\\') {
+               return(readchar());
+       }
+       else if (lastc=='\'') {
+               return(0);
+       }
+       else {
+               return(lastc);
+       }
 }
 
 getformat(deformat)
-STRING         deformat;
+char           *deformat;
 {
-       REG STRING      fptr;
-       REG BOOL        quote;
-       fptr=deformat; quote=FALSE;
-       WHILE (quote ? readchar()!=EOR : !eol(readchar()))
-       DO  IF (*fptr++ = lastc)=='"'
-           THEN quote = ~quote;
-           FI
-       OD
+       register char   *fptr;
+       register bool   quote;
+       fptr=deformat; quote=0;
+       while ((quote ? readchar()!='\n' : !eol(readchar()))) {
+           if ((*fptr++ = lastc)=='"') {
+                quote = ~quote;
+           }
+       }
        lp--;
-       IF fptr!=deformat THEN *fptr++ = '\0'; FI
+       if (fptr!=deformat) { *fptr++ = '\0'; }
 }
index 0bf3c6f..711741d 100644 (file)
@@ -4,25 +4,25 @@ static        char sccsid[] = "@(#)main.c 4.3 4/1/82";
  */
 #include "defs.h"
 
-MSG            NOEOR;
+char           NOEOR[];
 
-INT            mkfault;
-INT            executing;
-INT            infile;
-CHAR           *lp;
-L_INT          maxoff;
-L_INT          maxpos;
-ADDR           sigint;
-ADDR           sigqit;
-INT            wtflag;
-L_INT          maxfile;
-STRING         errflg;
-L_INT          exitflg;
+short          mkfault;
+short          executing;
+short          infile;
+char           *lp;
+long           maxoff;
+long           maxpos;
+intptr_t               sigint;
+intptr_t               sigqit;
+short          wtflag;
+long           maxfile;
+char           *errflg;
+long           exitflg;
 
-CHAR           lastc;
-INT            eof;
+char           lastc;
+short          eof;
 
-INT            lastcom;
+short          lastcom;
 
 long   maxoff = MAXOFF;
 long   maxpos = MAXPOS;
@@ -70,7 +70,7 @@ another:
        for (;;) {
                flushbuf();
                if (errflg) {
-                       printf("%s\n", errflg);
+                       _printf("%s\n", errflg);
                        exitflg = errflg;
                        errflg = 0;
                }
@@ -99,13 +99,13 @@ done()
        exit(exitflg);
 }
 
-L_INT
+long
 round(a,b)
-REG L_INT a, b;
+register long a, b;
 {
-       REG L_INT w;
+       register long w;
        w = (a/b)*b;
-       IF a!=w THEN w += b; FI
+       if (a!=w) { w += b; }
        return(w);
 }
 
index 1099d7c..c892fd6 100644 (file)
@@ -10,33 +10,33 @@ static      char sccsid[] = "@(#)message.c  4.3 8/11/83";
 #include       "mac.h"
 #include       "mode.h"
 
-MSG            VERSION =  "\nVERSION VM/VAX4.3 DATE 8/11/83\n";
+char[]CHECKME          VERSION =  "\nVERSION VM/VAX4.3 DATE 8/11/83\n";
 
-MSG            BADMOD  =  "bad modifier";
-MSG            BADCOM  =  "bad command";
-MSG            BADSYM  =  "symbol not found";
-MSG            BADLOC  =  "automatic variable not found";
-MSG            NOCFN   =  "c routine not found";
-MSG            NOMATCH =  "cannot locate value";
-MSG            NOBKPT  =  "no breakpoint set";
-MSG            BADKET  =  "unexpected ')'";
-MSG            NOADR   =  "address expected";
-MSG            NOPCS   =  "no process";
-MSG            BADVAR  =  "bad variable";
-MSG            EXBKPT  =  "too many breakpoints";
-MSG            A68BAD  =  "bad a68 frame";
-MSG            A68LNK  =  "bad a68 link";
-MSG            ADWRAP  =  "address wrap around";
-MSG            BADEQ   =  "unexpected `='";
-MSG            BADWAIT =  "wait error: process disappeared!";
-MSG            ENDPCS  =  "process terminated";
-MSG            NOFORK  =  "try again";
-MSG            BADSYN  =  "syntax error";
-MSG            NOEOR   =  "newline expected";
-MSG            SZBKPT  =  "bkpt: command too long";
-MSG            BADFIL  =  "bad file format";
-MSG            BADNAM  =  "not enough space for symbols";
-MSG            LONGFIL =  "filename too long";
-MSG            NOTOPEN =  "cannot open";
-MSG            BADMAG  =  "bad core magic number";
-MSG            TOODEEP =  "$<< nesting too deep";
+char[]CHECKME          BADMOD  =  "bad modifier";
+char[]CHECKME          BADCOM  =  "bad command";
+char[]CHECKME          BADSYM  =  "symbol not found";
+char[]CHECKME          BADLOC  =  "automatic variable not found";
+char[]CHECKME          NOCFN   =  "c routine not found";
+char[]CHECKME          NOMATCH =  "cannot locate value";
+char[]CHECKME          NOBKPT  =  "no breakpoint set";
+char[]CHECKME          BADKET  =  "unexpected ')'";
+char[]CHECKME          NOADR   =  "address expected";
+char[]CHECKME          NOPCS   =  "no process";
+char[]CHECKME          BADVAR  =  "bad variable";
+char[]CHECKME          EXBKPT  =  "too many breakpoints";
+char[]CHECKME          A68BAD  =  "bad a68 frame";
+char[]CHECKME          A68LNK  =  "bad a68 link";
+char[]CHECKME          ADWRAP  =  "address wrap around";
+char[]CHECKME          BADEQ   =  "unexpected `='";
+char[]CHECKME          BADWAIT =  "wait error: process disappeared!";
+char[]CHECKME          ENDPCS  =  "process terminated";
+char[]CHECKME          NOFORK  =  "try again";
+char[]CHECKME          BADSYN  =  "syntax error";
+char[]CHECKME          NOEOR   =  "newline expected";
+char[]CHECKME          SZBKPT  =  "bkpt: command too long";
+char[]CHECKME          BADFIL  =  "bad file format";
+char[]CHECKME          BADNAM  =  "not enough space for symbols";
+char[]CHECKME          LONGFIL =  "filename too long";
+char[]CHECKME          NOTOPEN =  "cannot open";
+char[]CHECKME          BADMAG  =  "bad core magic number";
+char[]CHECKME          TOODEEP =  "$<< nesting too deep";
index 6c27b64..eb83cda 100644 (file)
@@ -18,27 +18,27 @@ typedef char bool;
 
 /* file address maps */
 struct map {
-       L_INT   b1;
-       L_INT   e1;
-       L_INT   f1;
-       L_INT   b2;
-       L_INT   e2;
-       L_INT   f2;
-       INT     ufd;
+       long    b1;
+       long    e1;
+       long    f1;
+       long    b2;
+       long    e2;
+       long    f2;
+       short   ufd;
 };
 
 struct bkpt {
-       ADDR    loc;
-       ADDR    ins;
-       INT     count;
-       INT     initcnt;
-       INT     flag;
-       CHAR    comm[MAXCOM];
-       BKPT    *nxtbkpt;
+       intptr_t        loc;
+       intptr_t        ins;
+       short   count;
+       short   initcnt;
+       short   flag;
+       char    comm[MAXCOM];
+       struct bkpt     *nxtbkpt;
 };
 
 struct reglist {
-       STRING  rname;
-       INT     roffs;
+       char    *rname;
+       short   roffs;
        int     *rkern;
 };
index ac08f20..dc6e969 100644 (file)
@@ -14,19 +14,19 @@ static      char sccsid[] = "@(#)opset.c 4.5 5/27/85";
 #include "head.h"
 #endif SDB
 
-L_INT          dot;
-INT            dotinc;
-L_INT          insoutvar[36];
+long           dot;
+short          dotinc;
+long           insoutvar[36];
 #ifdef ADB
-L_INT          var[36];
+long           var[36];
 #endif ADB
 
 #undef INSTTAB
 #include "instrs.h"
 
-STRING regname[];
-STRING fltimm[];
-POS    type, space, incp;
+char*CHECKME   regname[];
+char*CHECKME   fltimm[];
+unsigned       type, space, incp;
 /*
  *     Definitions for registers and for operand classes
  */
@@ -94,7 +94,7 @@ int mapescbyte(byte)
 
 mkioptab()
 {
-       REG     struct insttab *p;
+       register        struct insttab *p;
                int     mapchar;
 
        for(p = insttab; p->iname; p++){
@@ -137,8 +137,8 @@ printins(fmt, Idsp, ins)
                char    *indexreg;      /* print of which register indexes */
                char    *indexed;       /* we indexed */
                char    *operandout();
-       REG     u_char  *ap;
-       REG     struct insttab *ip;
+       register        u_char  *ap;
+       register        struct insttab *ip;
                u_char  optype;
                int     mapchar;
 
@@ -148,7 +148,7 @@ printins(fmt, Idsp, ins)
 #ifdef SDB
        procp = adrtoprocp(dot);
        if (procp->paddr == dot){
-               printf("0x%04.4x", ins);
+               _printf("0x%04.4x", ins);
                incp = 2;
                goto ret;
        }
@@ -176,11 +176,11 @@ printins(fmt, Idsp, ins)
                }
        }
        if (ioptab[mapchar][ins] == 0){
-               printf("<undefined operator byte>: %x", ins);
+               _printf("<undefined operator byte>: %x", ins);
                goto ret;
        }
        ip = &insttab[ioptab[mapchar][ins] - 1];
-       printf("%s\t", ip->iname);
+       _printf("%s\t", ip->iname);
 
        for (ap = ip->argtype, argno = 0; argno < ip->nargs; argno++, ap++) {
                savevar(0x80000000);    /* an illegal symbol */
@@ -204,7 +204,7 @@ printins(fmt, Idsp, ins)
                        }
                        indexreg = operandout(mode, optype);
                        if (indexed)
-                               printf("[%s]", indexed);
+                               _printf("[%s]", indexed);
                        indexed = indexreg;
                } while(indexed);
        }
@@ -234,19 +234,19 @@ casebody(base, limit)
        long    limit;
 {
        int     i;
-       POS     baseincp;
-       POS     advincp;
+       unsigned        baseincp;
+       unsigned        advincp;
        struct  as_number       *valuep;
 #define        OSIZE (sizeof(short))
        argno = 0;
        baseincp = incp;
        for (i = 0; i <= limit; i++) {
-               printc(EOR);
+               printc('\n');
 #ifdef SDB
-               printf("    %d:  ", i + base);
+               _printf("    %d:  ", i + base);
 #endif SDB
 #ifdef ADB
-               printf("    %R:  ", i + base);
+               _printf("    %R:  ", i + base);
 #endif ADB
                valuep = snarfreloc(OSIZE, 0);
                advincp = incp;
@@ -282,7 +282,7 @@ numberp snarfreloc(nbytes)
 numberp snarf(nbytes)
        int     nbytes;
 {
-       REG     int     i;
+       register        int     i;
 
        static  struct  as_number       backnumber;
        static  struct  as_number       znumber;        /* init'ed to 0 */
@@ -329,13 +329,13 @@ char *operandout(mode, optype)
        case OC_INDEX:
                return(r);              /* will be printed later */
        case OC_REG:
-               printf("%s", r);
+               _printf("%s", r);
                return(0);
        case OC_DREG:
-               printf("(%s)", r);
+               _printf("(%s)", r);
                return(0);
        case OC_ADREG:
-               printf("-(%s)", r);
+               _printf("-(%s)", r);
                return(0);
        case OC_DAIREG:
                printc('*');
@@ -343,7 +343,7 @@ char *operandout(mode, optype)
                if (regnumber == R_PC){
                        pcimmediate(mode, optype);
                } else {
-                       printf("(%s)+", r);
+                       _printf("(%s)+", r);
                }
                return(0);
        case OC_DBDISP:
@@ -380,7 +380,7 @@ dispaddress(valuep, mode)
        case OC_LDISP:
        case OC_DLDISP:
                if (regnumber == R_PC){
-                       /* PC offset addressing */
+                       /* _PC offset addressing */
                        valuep->num_ulong[0] += inkdot(incp);
                }
        }
@@ -388,14 +388,14 @@ dispaddress(valuep, mode)
        if (regnumber == R_PC)
                psymoff(valuep->num_ulong[0], type, &insoutfmt[0]);
        else {                          /* } */
-               printf(LPRMODE, valuep->num_ulong[0]);
-               printf(insoutfmt);
+               _printf(LPRMODE, valuep->num_ulong[0]);
+               _printf(insoutfmt);
 #endif ADB
 #ifdef SDB
        if(psymoff(valuep->num_ulong[0], regnumber, &insoutfmt[0])
           && (regnumber != R_PC)){
 #endif SDB
-               printf("(%s)", insregname(regnumber));
+               _printf("(%s)", insregname(regnumber));
        }
        savevar((long)valuep->num_ulong[0]);
 }
@@ -430,14 +430,14 @@ shortliteral(mode, optype)
        case TYPD:
        case TYPG:
        case TYPH:
-               printf("$%s", fltimm[mode]);
+               _printf("$%s", fltimm[mode]);
                break;
        default:
 #ifdef ADB
-               printf("$%r", mode);
+               _printf("$%r", mode);
 #endif ADB
 #ifdef SDB
-               printf("$%d", mode);
+               _printf("$%d", mode);
 #endif SDB
                break;
        }
@@ -450,7 +450,7 @@ pcimmediate(mode, optype)
        int     nbytes;
 
        printc('$');
-       if (mode == OC_CONS(OC_DAIREG, R_PC)){  /* PC absolute, always 4 bytes*/
+       if (mode == OC_CONS(OC_DAIREG, R_PC)){  /* _PC absolute, always 4 bytes*/
                dispaddress(snarfreloc(4), mode);
                return;
        }
@@ -468,22 +468,22 @@ bignumprint(nbytes, optype)
 {
        numberp valuep;
        int     leading_zero = 1;
-       REG     int     bindex;
-       REG     int     nindex;
-       REG     int     ch;
+       register        int     bindex;
+       register        int     nindex;
+       register        int     ch;
 
        valuep = snarf(nbytes);
        switch(A_TYPEXT(optype)){
        case TYPF:      
-               printf("0f%f", valuep->num_num.numFf_float.Ff_value);
+               _printf("0f%f", valuep->num_num.numFf_float.Ff_value);
                break;
        case TYPD:
-               printf("0d%f", valuep->num_num.numFd_float.Fd_value);
+               _printf("0d%f", valuep->num_num.numFd_float.Fd_value);
                break;
        case TYPG:
-               printf("0g::"); goto qprint;
+               _printf("0g::"); goto qprint;
        case TYPH:
-               printf("0h::"); goto qprint;
+               _printf("0h::"); goto qprint;
        case TYPQ:
        case TYPO:
        qprint:
@@ -504,10 +504,10 @@ bignumprint(nbytes, optype)
 }
 #ifdef SDB
 
-L_INT inkdot(incr)
+long inkdot(incr)
        int     incr;
 {
-       L_INT           newdot;
+       long            newdot;
 
        newdot = dot + incr;
        return(newdot);
@@ -516,29 +516,29 @@ L_INT inkdot(incr)
 printc(c)
        char c;
 {
-       printf("%c", c);
+       _printf("%c", c);
 }
 
 psymoff(v, regnumber, fmt)
-       L_INT   v;
+       long    v;
        char    *fmt;
 {
        struct  proct   *procp;
-       REG     int diff;
+       register        int diff;
        if (fmt[0] == 'i') {
                switch(regnumber){
                case 12:        /* parameter */
-                       if ((diff = adrtoparam((ADDR) v, adrtoprocp(dot)))
+                       if ((diff = adrtoparam((intptr_t) v, adrtoprocp(dot)))
                                        != -1) {
-                               printf("%s", sl_name);
+                               _printf("%s", sl_name);
                                prdiff(diff);
                                return(0);
                        }
                        break;
                case 13:        /* local */
-                       if ((diff = adrtolocal((ADDR) -v, adrtoprocp(dot))
+                       if ((diff = adrtolocal((intptr_t) -v, adrtoprocp(dot))
                                        ) != -1) {
-                               printf("%s", sl_name);
+                               _printf("%s", sl_name);
                                prdiff(diff);
                                return(0);
                        }
@@ -547,13 +547,13 @@ psymoff(v, regnumber, fmt)
                        break;
                }
                if (v < firstdata) {
-                       if ((procp = adrtoprocp((ADDR) v)) != badproc) {
+                       if ((procp = adrtoprocp((intptr_t) v)) != badproc) {
                                prlnoff(procp, v);
                                return(0);
                        }
                } else {
-                       if ((diff = adrtoext((ADDR) v)) != -1) {
-                               printf("%s", sl_name);
+                       if ((diff = adrtoext((intptr_t) v)) != -1) {
+                               _printf("%s", sl_name);
                                prdiff(diff);
                                return(0);
                        }
@@ -566,7 +566,7 @@ psymoff(v, regnumber, fmt)
 prdiff(diff)
 {
        if (diff) {
-               printf("+");
+               _printf("+");
                prhex(diff);
        }
 }
index 437afe2..75ad1de 100644 (file)
@@ -56,7 +56,7 @@ SYSTAB {
        1, "30",
        1, "stty",
        1, "gtty",
-       0, "access",
+       0, "_access",
        0, "nice",
        0, "sleep",
        0, "sync",
@@ -89,9 +89,9 @@ SYSTAB {
        0, "63",
 };
 
-STRING regname[] = { "r0", "r1", "r2", "r3", "r4", "r5", "r6", "r7",
+char*CHECKME   regname[] = { "r0", "r1", "r2", "r3", "r4", "r5", "r6", "r7",
                                        "r8", "r9", "r10","r11","ap", "fp", "sp", "pc"};
-STRING fltimm[] = {
+char*CHECKME   fltimm[] = {
 "0.5", "0.5625", "0.625", "0.6875", "0.75", "0.8125", "0.875", "0.9375",
 "1.0", "1.125", "1.25", "1.375", "1.5", "1.625", "1.75", "1.875",
 "2.0", "2.25", "2.5", "2.75", "3.0", "3.25", "3.5", "3.75",
@@ -103,30 +103,30 @@ STRING    fltimm[] = {
 };
 
 #ifdef SDB
-REGLIST reglist [] = {
-               "p1lr", P1LR,
-               "p1br",P1BR,
-               "p0lr", P0LR,
-               "p0br",P0BR,
-               "ksp",KSP,
-               "esp",ESP,
-               "ssp",SSP,
-               "psl", PSL,
-               "pc", PC,
-               "usp",USP,
-               "fp", FP,
-               "ap", AP,
-               "r11", R11,
-               "r10", R10,
-               "r9", R9,
-               "r8", R8,
-               "r7", R7,
-               "r6", R6,
-               "r5", R5,
-               "r4", R4,
-               "r3", R3,
-               "r2", R2,
-               "r1", R1,
-               "r0", R0,
+struct reglist reglist [] = {
+               "p1lr", _P1LR,
+               "p1br",_P1BR,
+               "p0lr", _P0LR,
+               "p0br",_P0BR,
+               "ksp",_KSP,
+               "esp",_ESP,
+               "ssp",_SSP,
+               "psl", _PSL,
+               "pc", _PC,
+               "usp",_USP,
+               "fp", _FP,
+               "ap", _AP,
+               "r11", _R11,
+               "r10", _R10,
+               "r9", _R9,
+               "r8", _R8,
+               "r7", _R7,
+               "r6", _R6,
+               "r5", _R5,
+               "r4", _R4,
+               "r3", _R3,
+               "r2", _R2,
+               "r1", _R1,
+               "r0", _R0,
 };
 #endif SDB
index ead0105..5338774 100644 (file)
@@ -11,79 +11,85 @@ static      char sccsid[] = "@(#)output.c   4.4 4/26/85";
 #include <stdio.h>
 
 
-INT            mkfault;
-INT            infile;
-INT            outfile = 1;
-L_INT          maxpos;
-L_INT          maxoff;
-INT            radix = 16;
+short          mkfault;
+short          infile;
+short          outfile = 1;
+long           maxpos;
+long           maxoff;
+short          radix = 16;
 
-CHAR           printbuf[MAXLIN];
-CHAR           *printptr = printbuf;
-CHAR           *digitptr;
-MSG            TOODEEP;
+char           printbuf[MAXLIN];
+char           *printptr = printbuf;
+char           *digitptr;
+char           TOODEEP[];
 
 
 eqstr(s1, s2)
-       REG STRING      s1, s2;
+       register char*CHECKME   s1, s2;
 {
-       REG STRING       es1;
-       WHILE *s1++ == *s2
-       DO IF *s2++ == 0
-          THEN return(1);
-          FI
-       OD
+       register char    *es1;
+       while (*s1++ == *s2) {
+          if (*s2++ == 0) {
+               return(1);
+          }
+       }
        return(0);
 }
 
 length(s)
-       REG STRING              s;
+       register char           *s;
 {
-       INT             n = 0;
-       WHILE *s++ DO n++; OD
+       short           n = 0;
+       while (*s++) { n++; }
        return(n);
 }
 
 printc(c)
-       CHAR            c;
+       char            c;
 {
-       CHAR            d;
-       STRING          q;
-       INT             posn, tabs, p;
+       char            d;
+       char            *q;
+       short           posn, tabs, p;
 
-       IF mkfault
-       THEN    return;
-       ELIF (*printptr=c)==EOR
-       THEN tabs=0; posn=0; q=printbuf;
-            FOR p=0; p<printptr-printbuf; p++
-            DO d=printbuf[p];
-               IF (p&7)==0 ANDF posn
-               THEN tabs++; posn=0;
-               FI
-               IF d==SP
-               THEN posn++;
-               ELSE WHILE tabs>0 DO *q++=TB; tabs--; OD
-                    WHILE posn>0 DO *q++=SP; posn--; OD
+       if (mkfault) {
+               return;
+       }
+       else if ((*printptr=c)=='\n') {
+            tabs=0; posn=0; q=printbuf;
+            for (p=0; p<printptr-printbuf; p++) {
+               d=printbuf[p];
+               if ((p&7)==0 && posn) {
+                    tabs++; posn=0;
+               }
+               if (d==' ') {
+                    posn++;
+               }
+               else {
+                    while (tabs>0) { *q++='\t'; tabs--; }
+                    while (posn>0) { *q++=' '; posn--; }
                     *q++=d;
-               FI
-            OD
-            *q++=EOR;
+               }
+            }
+            *q++='\n';
 #ifdef EDDT
                printptr=printbuf; do putchar(*printptr++); while (printptr<q);
 #else
             write(outfile,printbuf,q-printbuf);
 #endif
             printptr=printbuf;
-       ELIF c==TB
-       THEN *printptr++=SP;
-            WHILE (printptr-printbuf)&7 DO *printptr++=SP; OD
-       ELIF c
-       THEN printptr++;
-       FI
-       IF printptr >= &printbuf[MAXLIN-9] THEN
+       }
+       else if (c=='\t') {
+            *printptr++=' ';
+            while ((printptr-printbuf)&7) { *printptr++=' '; }
+       }
+       else if (c) {
+            printptr++;
+       }
+       if (printptr >= &printbuf[MAXLIN-9]) {
+           
                write(outfile, printbuf, printptr - printbuf);
                printptr = printbuf;
-       FI
+       }
 }
 
 charpos()
@@ -91,33 +97,35 @@ charpos()
 }
 
 flushbuf()
-{      IF printptr!=printbuf
-       THEN printc(EOR);
-       FI
+{      if (printptr!=printbuf) {
+            printc('\n');
+       }
 }
 
-printf(fmat,a1)
-       STRING          fmat;
-       STRING          *a1;
+_printf(fmat,a1)
+       char            *fmat;
+       char*CHECKME            *a1;
 {
-       STRING          fptr, s;
-       INT             *vptr;
-       L_INT           *dptr;
-       L_REAL          *rptr;
-       INT             width, prec;
-       CHAR            c, adj;
-       INT             x, decpt, n;
-       L_INT           lx;
-       CHAR            digits[64];
+       char*CHECKME            fptr, s;
+       short           *vptr;
+       long            *dptr;
+       double          *rptr;
+       short           width, prec;
+       char            c, adj;
+       short           x, decpt, n;
+       long            lx;
+       char            digits[64];
 
        fptr = fmat; dptr = vptr = &a1;
 
-       WHILE c = *fptr++
-       DO  IF c!='%'
-           THEN printc(c);
-           ELSE IF *fptr=='-' THEN adj='l'; fptr++; ELSE adj='r'; FI
+       while (c = *fptr++) {
+           if (c!='%') {
+                printc(c);
+           }
+           else {
+                if (*fptr=='-') { adj='l'; fptr++; }NEWLINEelse { adj='r'; }
                 width=convert(&fptr);
-                IF *fptr=='.' THEN fptr++; prec=convert(&fptr); ELSE prec = -1; FI
+                if (*fptr=='.') { fptr++; prec=convert(&fptr); }NEWLINEelse { prec = -1; }
                 digitptr=digits;
 #ifndef vax
                 dptr=rptr=vptr; lx = *dptr; x = *vptr++;
@@ -178,14 +186,14 @@ printf(fmat,a1)
                        s=ecvt(*rptr, prec, &decpt, &n);
                        *digitptr++=(n?'-':'+');
                        *digitptr++ = (decpt<=0 ? '0' : *s++);
-                       IF decpt>0 THEN decpt--; FI
+                       if (decpt>0) { decpt--; }
                        *digitptr++ = '.';
-                       WHILE *s ANDF prec-- DO *digitptr++ = *s++; OD
-                       WHILE *--digitptr=='0' DONE
+                       while (*s && prec--) { *digitptr++ = *s++; }
+                       while (*--digitptr=='0');
                        digitptr += (digitptr-digits>=3 ? 1 : 2);
-                       IF decpt
-                       THEN *digitptr++ = 'e'; printnum(decpt,'d',10);
-                       FI
+                       if (decpt) {
+                            *digitptr++ = 'e'; printnum(decpt,'d',10);
+                       }
                        s=0; prec = -1; break;
 #endif
 #endif
@@ -195,17 +203,21 @@ printf(fmat,a1)
                        width=x; break;
                    case 'T':
                    case 't':
-                       IF c=='T'
-                       THEN width=x;
+                       if (c=='T') {
+                            width=x;
 #ifndef vax
-                       ELSE vptr--;
+                       }
+                       else {
+                            vptr--;
 #else
-                       ELSE dptr--;
+                       }
+                       else {
+                            dptr--;
 #endif
-                       FI
-                       IF width
-                       THEN width -= charpos()%width;
-                       FI
+                       }
+                       if (width) {
+                            width -= charpos()%width;
+                       }
                        break;
                    default:
 #ifndef vax
@@ -215,107 +227,106 @@ printf(fmat,a1)
 #endif
                }
 
-               IF s==0
-               THEN *digitptr=0; s=digits;
-               FI
+               if (s==0) {
+                    *digitptr=0; s=digits;
+               }
                n=length(s);
-               n=(prec<n ANDF prec>=0 ? prec : n);
+               n=(prec<n && prec>=0 ? prec : n);
                width -= n;
-               IF adj=='r'
-               THEN WHILE width-- > 0
-                    DO printc(SP); OD
-               FI
-               WHILE n-- DO printc(*s++); OD
-               WHILE width-- > 0 DO printc(SP); OD
+               if (adj=='r') {
+                    while (width-- > 0) { printc(' '); }
+               }
+               while (n--) { printc(*s++); }
+               while (width-- > 0) { printc(' '); }
                digitptr=digits;
-           FI
-       OD
+           }
+       }
 }
 
 printdate(tvec)
-       L_INT           tvec;
+       long            tvec;
 {
-       REG INT         i;
-       REG STRING      timeptr;
+       register short          i;
+       register char   *timeptr;
 #ifndef EDDT
        timeptr = ctime(&tvec);
 #else
        timeptr="????????????????????????";
 #endif
-       FOR i=20; i<24; i++ DO *digitptr++ = *(timeptr+i); OD
-       FOR i=3; i<19; i++ DO *digitptr++ = *(timeptr+i); OD
+       for (i=20; i<24; i++) { *digitptr++ = *(timeptr+i); }
+       for (i=3; i<19; i++) { *digitptr++ = *(timeptr+i); }
 } /*printdate*/
 
 prints(s)
 char *s;
-{      printf("%s",s);
+{      _printf("%s",s);
 }
 
 newline()
 {
-       printc(EOR);
+       printc('\n');
 }
 
 convert(cp)
-REG STRING     *cp;
+register char*CHECKME  *cp;
 {
-       REG CHAR        c;
-       INT             n;
+       register char   c;
+       short           n;
        n=0;
-       WHILE ((c = *(*cp)++)>='0') ANDF (c<='9') DO n=n*10+c-'0'; OD
+       while (((c = *(*cp)++)>='0') && (c<='9')) { n=n*10+c-'0'; }
        (*cp)--;
        return(n);
 }
 
 printnum(n,fmat,base)
-       REG INT         n;
+       register short          n;
 {
-       REG CHAR        k;
-       REG INT         *dptr;
-       INT             digs[15];
+       register char   k;
+       register short          *dptr;
+       short           digs[15];
        dptr=digs;
-       IF n<0 ANDF fmat=='d' THEN n = -n; *digitptr++ = '-'; FI
+       if (n<0 && fmat=='d') { n = -n; *digitptr++ = '-'; }
        n &= 0xffff;
-       WHILE n
-       DO  *dptr++ = ((POS)(n&0xffff))%base;
-           n=((POS)(n&0xffff))/base;
-       OD
-       IF dptr==digs THEN *dptr++=0; FI
-       WHILE dptr!=digs
-       DO  k = *--dptr;
+       while (n) {
+           *dptr++ = ((unsigned)(n&0xffff))%base;
+           n=((unsigned)(n&0xffff))/base;
+       }
+       if (dptr==digs) { *dptr++=0; }
+       while (dptr!=digs) {
+           k = *--dptr;
            *digitptr++ = (k+(k<=9 ? '0' : 'a'-10));
-       OD
+       }
 }
 
 printoct(o,s)
-       L_INT           o;
-       INT             s;
+       long            o;
+       short           s;
 {
-       INT             i;
-       L_INT           po = o;
-       CHAR            digs[12];
+       short           i;
+       long            po = o;
+       char            digs[12];
 
-       IF s
-       THEN IF po<0
-            THEN po = -po; *digitptr++='-';
-            ELSE IF s>0 THEN *digitptr++='+'; FI
-            FI
-       FI
-       FOR i=0;i<=11;i++
-       DO digs[i] = po&7; po >>= 3; OD
+       if (s) {
+            if (po<0) {
+                 po = -po; *digitptr++='-';
+            }
+            else {
+                 if (s>0) { *digitptr++='+'; }
+            }
+       }
+       for (i=0;i<=11;i++) { digs[i] = po&7; po >>= 3; }
        digs[10] &= 03; digs[11]=0;
-       FOR i=11;i>=0;i--
-       DO IF digs[i] THEN break; FI OD
-       FOR i++;i>=0;i--
-       DO *digitptr++=digs[i]+'0'; OD
+       for (i=11;i>=0;i--) {
+          if (digs[i]) { break; } }
+       for (i++;i>=0;i--) { *digitptr++=digs[i]+'0'; }
 }
 
 #ifndef vax
 printdbl(lx,ly,fmat,base)
-INT lx, ly; char fmat; int base;
+short lx, ly; char fmat; int base;
 #else
 printdbl(lxy,fmat,base)
-L_INT lxy; char fmat; int base;
+long lxy; char fmat; int base;
 #endif
 {      int digs[20]; int *dptr; char k;
 #ifndef MULD2
@@ -324,32 +335,36 @@ L_INT lxy; char fmat; int base;
        sprintf(cp1,base==16 ? "%x" : "%D",lxy);
        cp1=digs; while (*digitptr++= *cp1++); --digitptr;
 #else
-       L_REAL f ,g; long q;
+       double f ,g; long q;
 #ifdef vax
-       INT lx,ly;
+       short lx,ly;
        ly=lxy; lx=(lxy>>16)&0xFFFF;
 #endif
        dptr=digs;
-       IF fmat=='D' ORF fmat=='r'
-       THEN    f=itol(lx,ly);
-               IF f<0 THEN *digitptr++='-'; f = -f; FI
-       ELSE
-               IF lx==-1
-               THEN *digitptr++='-'; f=leng(-ly);
-               ELSE f=leng(lx); f *= itol(1,0); f += leng(ly);
-               FI
-               IF fmat=='x' THEN *digitptr++='#'; FI
-       FI
-       WHILE f
-       DO  q=f/base; g=q;
+       if (fmat=='D' || fmat=='r') {
+               f=itol(lx,ly);
+               if (f<0) { *digitptr++='-'; f = -f; }
+       }
+       else {
+           
+               if (lx==-1) {
+                    *digitptr++='-'; f=leng(-ly);
+               }
+               else {
+                    f=leng(lx); f *= itol(1,0); f += leng(ly);
+               }
+               if (fmat=='x') { *digitptr++='#'; }
+       }
+       while (f) {
+           q=f/base; g=q;
            *dptr++ = f-g*base;
            f=q;
-       OD
-       IF dptr==digs ORF dptr[-1]>9 THEN *dptr++=0; FI
-       WHILE dptr!=digs
-       DO  k = *--dptr;
+       }
+       if (dptr==digs || dptr[-1]>9) { *dptr++=0; }
+       while (dptr!=digs) {
+           k = *--dptr;
            *digitptr++ = (k+(k<=9 ? '0' : 'a'-10));
-       OD
+       }
 #endif
 }
 
@@ -362,48 +377,52 @@ int       ifiledepth;
 
 iclose(stack, err)
 {
-       IF err
-       THEN    IF infile
-               THEN    close(infile); infile=0;
-               FI
-               WHILE --ifiledepth >= 0
-               DO      IF istack[ifiledepth].fd
-                       THEN    close(istack[ifiledepth].fd);
-                       FI
-               OD
+       if (err) {
+               if (infile) {
+                       close(infile); infile=0;
+               }
+               while (--ifiledepth >= 0) {
+                       if (istack[ifiledepth].fd) {
+                               close(istack[ifiledepth].fd);
+                       }
+               }
                ifiledepth = 0;
-       ELIF stack == 0
-       THEN    IF infile
-               THEN    close(infile); infile=0;
-               FI
-       ELIF stack > 0
-       THEN    IF ifiledepth >= MAXIFD
-               THEN    error(TOODEEP);
-               FI
+       }
+       else if (stack == 0) {
+               if (infile) {
+                       close(infile); infile=0;
+               }
+       }
+       else if (stack > 0) {
+               if (ifiledepth >= MAXIFD) {
+                       error(TOODEEP);
+               }
                istack[ifiledepth].fd = infile;
                istack[ifiledepth].r9 = var[9];
                ifiledepth++;
                infile = 0;
-       ELSE    IF infile
-               THEN    close(infile); infile=0;
-               FI
-               IF ifiledepth > 0
-               THEN    infile = istack[--ifiledepth].fd;
+       }
+       else {
+               if (infile) {
+                       close(infile); infile=0;
+               }
+               if (ifiledepth > 0) {
+                       infile = istack[--ifiledepth].fd;
                        var[9] = istack[ifiledepth].r9;
-               FI
-       FI
+               }
+       }
 }
 
 oclose()
 {
-       IF outfile!=1
-       THEN    flushbuf(); close(outfile); outfile=1;
-       FI
+       if (outfile!=1) {
+               flushbuf(); close(outfile); outfile=1;
+       }
 }
 
 endline()
 {
 
        if (maxpos <= charpos())
-               printf("\n");
+               _printf("\n");
 }
index 04f85b0..8f87a55 100644 (file)
@@ -10,26 +10,26 @@ static      char sccsid[] = "@(#)pcs.c      4.2 8/11/83";
 #include "defs.h"
 
 
-MSG            NOBKPT;
-MSG            SZBKPT;
-MSG            EXBKPT;
-MSG            NOPCS;
-MSG            BADMOD;
+char           NOBKPT[];
+char           SZBKPT[];
+char           EXBKPT[];
+char           NOPCS[];
+char           BADMOD[];
 
 /* breakpoints */
-BKPTR          bkpthead;
+struct bkpt            *bkpthead;
 
-CHAR           *lp;
-CHAR           lastc;
+char           *lp;
+char           lastc;
 
-INT            signo;
-L_INT          dot;
-INT            pid;
-L_INT          cntval;
-L_INT          loopcnt;
+short          signo;
+long           dot;
+short          pid;
+long           cntval;
+long           loopcnt;
 
-L_INT          entrypt;
-INT            adrflg;
+long           entrypt;
+short          adrflg;
 
 
 
@@ -37,89 +37,102 @@ INT                adrflg;
 
 subpcs(modif)
 {
-       REG INT         check;
-       INT             execsig,runmode;
-       REG BKPTR       bkptr;
-       STRING          comptr;
+       register short          check;
+       short           execsig,runmode;
+       register struct bkpt    *bkptr;
+       char            *comptr;
        execsig=0; loopcnt=cntval;
 
        switch (modif) {
 
            /* delete breakpoint */
            case 'd': case 'D':
-               IF (bkptr=scanbkpt(dot))
-               THEN bkptr->flag=0; return;
-               ELSE error(NOBKPT);
-               FI
+               if ((bkptr=scanbkpt(dot))) {
+                    bkptr->flag=0; return;
+               }
+               else {
+                    error(NOBKPT);
+               }
 
            /* set breakpoint */
            case 'b': case 'B':
-               IF (bkptr=scanbkpt(dot))
-               THEN bkptr->flag=0;
-               FI
-               FOR bkptr=bkpthead; bkptr; bkptr=bkptr->nxtbkpt
-               DO IF bkptr->flag == 0
-                  THEN break;
-                  FI
-               OD
-               IF bkptr==0
-               THEN IF (bkptr=sbrk(sizeof *bkptr)) == -1
-                    THEN error(SZBKPT);
-                    ELSE bkptr->nxtbkpt=bkpthead;
+               if ((bkptr=scanbkpt(dot))) {
+                    bkptr->flag=0;
+               }
+               for (bkptr=bkpthead; bkptr; bkptr=bkptr->nxtbkpt) {
+                  if (bkptr->flag == 0) {
+                       break;
+                  }
+               }
+               if (bkptr==0) {
+                    if ((bkptr=sbrk(sizeof *bkptr)) == -1) {
+                         error(SZBKPT);
+                    }
+                    else {
+                         bkptr->nxtbkpt=bkpthead;
                          bkpthead=bkptr;
-                    FI
-               FI
+                    }
+               }
                bkptr->loc = dot;
                bkptr->initcnt = bkptr->count = cntval;
                bkptr->flag = BKPTSET;
                check=MAXCOM-1; comptr=bkptr->comm; rdc(); lp--;
-               REP *comptr++ = readchar();
-               PER check-- ANDF lastc!=EOR DONE
+               do {
+                   *comptr++ = readchar();
+               } while (check-- && lastc!='\n');
                *comptr=0; lp--;
-               IF check
-               THEN return;
-               ELSE error(EXBKPT);
-               FI
+               if (check) {
+                    return;
+               }
+               else {
+                    error(EXBKPT);
+               }
 
            /* exit */
            case 'k' :case 'K':
-               IF pid
-               THEN printf("%d: killed", pid); endpcs(); return;
-               FI
+               if (pid) {
+                    _printf("%d: killed", pid); endpcs(); return;
+               }
                error(NOPCS);
 
            /* run program */
            case 'r': case 'R':
                endpcs();
                setup(); runmode=CONTIN;
-               IF adrflg 
-               THEN IF !scanbkpt(dot) THEN loopcnt++; FI
-               ELSE IF !scanbkpt(entrypt+2) THEN loopcnt++; FI
-               FI
+               if (adrflg) {
+                    if (!scanbkpt(dot)) { loopcnt++; }
+               }
+               else {
+                    if (!scanbkpt(entrypt+2)) { loopcnt++; }
+               }
                break;
 
            /* single step */
            case 's': case 'S':
-               IF pid
-               THEN
+               if (pid) {
+                   
                        runmode=SINGLE; execsig=getsig(signo);
-               ELSE setup(); loopcnt--;
-               FI
+               }
+               else {
+                    setup(); loopcnt--;
+               }
                break;
 
            /* continue with optional signal */
            case 'c': case 'C': case 0:
-               IF pid==0 THEN error(NOPCS); FI
+               if (pid==0) { error(NOPCS); }
                runmode=CONTIN; execsig=getsig(signo);
                break;
 
            default: error(BADMOD);
        }
 
-       IF loopcnt>0 ANDF runpcs(runmode,execsig)
-       THEN printf("breakpoint%16t");
-       ELSE printf("stopped at%16t");
-       FI
+       if (loopcnt>0 && runpcs(runmode,execsig)) {
+            _printf("breakpoint%16t");
+       }
+       else {
+            _printf("stopped at%16t");
+       }
        delbp();
        printpc();
 }
index bcb915d..b6827bd 100644 (file)
@@ -6,77 +6,77 @@ static        char sccsid[] = "@(#)print.c 4.11 5/2/85";
  */
 #include "defs.h"
 
-MSG            LONGFIL;
-MSG            NOTOPEN;
-MSG            A68BAD;
-MSG            A68LNK;
-MSG            BADMOD;
+char           LONGFIL[];
+char           NOTOPEN[];
+char           A68BAD[];
+char           A68LNK[];
+char           BADMOD[];
 
-MAP            txtmap;
-MAP            datmap;
+struct map             txtmap;
+struct map             datmap;
 
-ADDR           lastframe;
-ADDR           callpc;
+intptr_t               lastframe;
+intptr_t               callpc;
 
-INT            infile;
-INT            outfile;
-CHAR           *lp;
-L_INT          maxoff;
-L_INT          maxpos;
-INT            radix;
+short          infile;
+short          outfile;
+char           *lp;
+long           maxoff;
+long           maxpos;
+short          radix;
 
 /* symbol management */
-L_INT          localval;
+long           localval;
 
 /* breakpoints */
-BKPTR          bkpthead;
-
-REGLIST reglist [] = {
-       "p1lr", P1LR,   &pcb.pcb_p1lr,
-       "p1br", P1BR,   &pcb.pcb_p1br,
-       "p0lr", P0LR,   &pcb.pcb_p0lr,
-       "p0br", P0BR,   &pcb.pcb_p0br,
-       "ksp",  KSP,    &pcb.pcb_ksp,
-       "esp",  ESP,    &pcb.pcb_esp,
-       "ssp",  SSP,    &pcb.pcb_ssp,
-       "psl",  PSL,    &pcb.pcb_psl,
-       "pc",   PC,     &pcb.pcb_pc,
-       "usp",  USP,    &pcb.pcb_usp,
-       "fp",   FP,     &pcb.pcb_fp,
-       "ap",   AP,     &pcb.pcb_ap,
-       "r11",  R11,    &pcb.pcb_r11,
-       "r10",  R10,    &pcb.pcb_r10,
-       "r9",   R9,     &pcb.pcb_r9,
-       "r8",   R8,     &pcb.pcb_r8,
-       "r7",   R7,     &pcb.pcb_r7,
-       "r6",   R6,     &pcb.pcb_r6,
-       "r5",   R5,     &pcb.pcb_r5,
-       "r4",   R4,     &pcb.pcb_r4,
-       "r3",   R3,     &pcb.pcb_r3,
-       "r2",   R2,     &pcb.pcb_r2,
-       "r1",   R1,     &pcb.pcb_r1,
-       "r0",   R0,     &pcb.pcb_r0,
+struct bkpt            *bkpthead;
+
+struct reglist reglist [] = {
+       "p1lr", _P1LR,  &pcb.pcb_p1lr,
+       "p1br", _P1BR,  &pcb.pcb_p1br,
+       "p0lr", _P0LR,  &pcb.pcb_p0lr,
+       "p0br", _P0BR,  &pcb.pcb_p0br,
+       "ksp",  _KSP,   &pcb.pcb_ksp,
+       "esp",  _ESP,   &pcb.pcb_esp,
+       "ssp",  _SSP,   &pcb.pcb_ssp,
+       "psl",  _PSL,   &pcb.pcb_psl,
+       "pc",   _PC,    &pcb.pcb_pc,
+       "usp",  _USP,   &pcb.pcb_usp,
+       "fp",   _FP,    &pcb.pcb_fp,
+       "ap",   _AP,    &pcb.pcb_ap,
+       "r11",  _R11,   &pcb.pcb_r11,
+       "r10",  _R10,   &pcb.pcb_r10,
+       "r9",   _R9,    &pcb.pcb_r9,
+       "r8",   _R8,    &pcb.pcb_r8,
+       "r7",   _R7,    &pcb.pcb_r7,
+       "r6",   _R6,    &pcb.pcb_r6,
+       "r5",   _R5,    &pcb.pcb_r5,
+       "r4",   _R4,    &pcb.pcb_r4,
+       "r3",   _R3,    &pcb.pcb_r3,
+       "r2",   _R2,    &pcb.pcb_r2,
+       "r1",   _R1,    &pcb.pcb_r1,
+       "r0",   _R0,    &pcb.pcb_r0,
 };
 
 char           lastc;
 
-INT            fcor;
-STRING         errflg;
-INT            signo;
-INT            sigcode;
+short          fcor;
+char           *errflg;
+short          signo;
+short          sigcode;
 
 
-L_INT          dot;
-L_INT          var[];
-STRING         symfil;
-STRING         corfil;
-INT            pid;
-L_INT          adrval;
-INT            adrflg;
-L_INT          cntval;
-INT            cntflg;
+long           dot;
+long           var[];
+char           *symfil;
+char           *corfil;
+short          pid;
+long           adrval;
+short          adrflg;
+long           cntval;
+short          cntflg;
 
-STRING         signals[] = {
+char*CHECKME           signals[] = {
                "",
                "hangup",
                "interrupt",
@@ -115,105 +115,124 @@ STRING          signals[] = {
 
 printtrace(modif)
 {
-       INT             narg, i, stat, name, limit;
-       POS             dynam;
-       REG BKPTR       bkptr;
-       CHAR            hi, lo;
-       ADDR            word;
-       STRING          comptr;
-       ADDR            argp, frame, link;
+       short           narg, i, stat, name, limit;
+       unsigned                dynam;
+       register struct bkpt    *bkptr;
+       char            hi, lo;
+       intptr_t                word;
+       char            *comptr;
+       intptr_t                argp, frame, link;
        register struct nlist *sp;
-       INT             stack;
-       INT             ntramp;
+       short           stack;
+       short           ntramp;
 
-       IF cntflg==0 THEN cntval = -1; FI
+       if (cntflg==0) { cntval = -1; }
 
        switch (modif) {
 
            case '<':
-               IF cntval == 0
-               THEN    WHILE readchar() != EOR
-                       DO OD
+               if (cntval == 0) {
+                       while (readchar() != '\n') { }
                        lp--;
                        break;
-               FI
-               IF rdc() == '<'
-               THEN    stack = 1;
-               ELSE    stack = 0; lp--;
-               FI
+               }
+               if (rdc() == '<') {
+                       stack = 1;
+               }
+               else {
+                       stack = 0; lp--;
+               }
                /* fall thru... */
 
            case '>':
-               {CHAR           file[64];
-               CHAR            Ifile[128];
-               extern CHAR     *Ipath;
-               INT             index;
+               {char           file[64];
+               char            Ifile[128];
+               extern char     *Ipath;
+               short           index;
 
                index=0;
-               IF rdc()!=EOR
-               THEN    REP file[index++]=lastc;
-                           IF index>=63 THEN error(LONGFIL); FI
-                       PER readchar()!=EOR DONE
+               if (rdc()!='\n') {
+                       do {
+                           file[index++]=lastc;
+                           if (index>=63) { error(LONGFIL); }
+                       } while (readchar()!='\n');
                        file[index]=0;
-                       IF modif=='<'
-                       THEN    IF Ipath THEN
+                       if (modif=='<') {
+                               if (Ipath) {
+                                   
                                        strcpy(Ifile, Ipath);
                                        strcat(Ifile, "/");
                                        strcat(Ifile, file);
-                               FI
-                               IF strcmp(file, "-")!=0
-                               THEN    iclose(stack, 0);
+                               }
+                               if (strcmp(file, "-")!=0) {
+                                       iclose(stack, 0);
                                        infile=open(file,0);
-                                       IF infile<0
-                                       THEN    infile=open(Ifile,0);
-                                       FI
-                               ELSE    lseek(infile, 0L, 0);
-                               FI
-                               IF infile<0
-                               THEN    infile=0; error(NOTOPEN);
-                               ELSE    IF cntflg
-                                       THEN    var[9] = cntval;
-                                       ELSE    var[9] = 1;
-                                       FI
-                               FI
-                       ELSE    oclose();
+                                       if (infile<0) {
+                                               infile=open(Ifile,0);
+                                       }
+                               }
+                               else {
+                                       lseek(infile, 0L, 0);
+                               }
+                               if (infile<0) {
+                                       infile=0; error(NOTOPEN);
+                               }
+                               else {
+                                       if (cntflg) {
+                                               var[9] = cntval;
+                                       }
+                                       else {
+                                               var[9] = 1;
+                                       }
+                               }
+                       }
+                       else {
+                               oclose();
                                outfile=open(file,1);
-                               IF outfile<0
-                               THEN    outfile=creat(file,0644);
+                               if (outfile<0) {
+                                       outfile=creat(file,0644);
 #ifndef EDDT
-                               ELSE    lseek(outfile,0L,2);
+                               }
+                               else {
+                                       lseek(outfile,0L,2);
 #endif
-                               FI
-                       FI
-
-               ELSE    IF modif == '<'
-                       THEN    iclose(-1, 0);
-                       ELSE    oclose();
-                       FI
-               FI
+                               }
+                       }
+
+               }
+               else {
+                       if (modif == '<') {
+                               iclose(-1, 0);
+                       }
+                       else {
+                               oclose();
+                       }
+               }
                lp--;
                }
                break;
 
            case 'p':
-               IF kernel == 0
-               THEN    printf("not debugging kernel\n");
-               ELSE    IF adrflg
-                       THEN    int pte = access(RD, dot, DSP, 0);
+               if (kernel == 0) {
+                       _printf("not debugging kernel\n");
+               }
+               else {
+                       if (adrflg) {
+                               int pte = _access(RD, dot, DSP, 0);
                                masterpcbb = (pte&PG_PFNUM)*512;
-                       FI
+                       }
                        getpcb();
-               FI
+               }
                break;
 
            case 'd':
-               IF adrflg
-               THEN    IF adrval < 2 ORF adrval > 16
-                       THEN    printf("must have 2 <= radix <= 16");
+               if (adrflg) {
+                       if (adrval < 2 || adrval > 16) {
+                               _printf("must have 2 <= radix <= 16");
                                break;
-                       FI
-                       printf("radix=%d base ten",radix=adrval);
-               FI
+                       }
+                       _printf("radix=%d base ten",radix=adrval);
+               }
                break;
 
            case 'q': case 'Q': case '%':
@@ -229,12 +248,12 @@ printtrace(modif)
 
            case 'v': case 'V':
                prints("variables\n");
-               FOR i=0;i<=35;i++
-               DO      IF var[i]
-                       THEN printc((i<=9 ? '0' : 'a'-10) + i);
-                               printf(" = %x\n",var[i]);
-                       FI
-               OD
+               for (i=0;i<=35;i++) {
+                       if (var[i]) {
+                            printc((i<=9 ? '0' : 'a'-10) + i);
+                               _printf(" = %x\n",var[i]);
+                       }
+               }
                break;
 
            case 'm': case 'M':
@@ -243,10 +262,12 @@ printtrace(modif)
                break;
 
            case 0: case '?':
-               IF pid
-               THEN printf("pcs id = %d\n",pid);
-               ELSE prints("no process\n");
-               FI
+               if (pid) {
+                    _printf("pcs id = %d\n",pid);
+               }
+               else {
+                    prints("no process\n");
+               }
                sigprint(); flushbuf();
 
            case 'r': case 'R':
@@ -254,100 +275,116 @@ printtrace(modif)
                return;
 
            case 'c': case 'C':
-               IF adrflg
-               THEN    frame=adrval;
+               if (adrflg) {
+                       frame=adrval;
                        word=get(adrval+6,DSP)&0xFFFF;
-                       IF word&0x2000
-                       THEN    /* 'calls', can figure out argp */
+                       if (word&0x2000) {
+                               /* 'calls', can figure out argp */
                                argp=adrval+20+((word>>14)&3); word &= 0xFFF;
-                               WHILE word
-                               DO      IF word&1
-                                       THEN    argp+=4;
-                                       FI
+                               while (word) {
+                                       if (word&1) {
+                                               argp+=4;
+                                       }
                                        word>>=1;
-                               OD
-                       ELSE    /* 'callg', can't tell where argp is */
+                               }
+                       }
+                       else {
+                               /* 'callg', can't tell where argp is */
                                argp=frame;
-                       FI
+                       }
                        callpc=get(frame+16,DSP);
-               ELIF kcore
-               THEN    argp = pcb.pcb_ap;
+               }
+               else if (kcore) {
+                       argp = pcb.pcb_ap;
                        frame = pcb.pcb_fp;
                        callpc = pcb.pcb_pc;
-               ELSE    argp= *(ADDR *)(((ADDR)&u)+AP);
-                       frame= *(ADDR *)(((ADDR)&u)+FP);
-                       callpc= *(ADDR *)(((ADDR)&u)+PC);
-               FI
+               }
+               else {
+                       argp= *(intptr_t *)(((intptr_t)&u)+_AP);
+                       frame= *(intptr_t *)(((intptr_t)&u)+_FP);
+                       callpc= *(intptr_t *)(((intptr_t)&u)+_PC);
+               }
                lastframe=0;
                ntramp = 0;
-               WHILE cntval--
-               DO      char *name;
+               while (cntval--) {
+                       char *name;
                        chkerr();
                        /* if in extended pcb must be signal trampoline code */
-                       IF KERNOFF - ctob(UPAGES) < callpc ANDF
-                           (unsigned)callpc < KERNOFF
-                       THEN    name = "sigtramp";
+                       if (KERNOFF - ctob(UPAGES) < callpc &&
+                           (unsigned)callpc < KERNOFF) {
+                               name = "sigtramp";
                                ntramp++;
-                       ELSE    ntramp = 0;
+                       }
+                       else {
+                               ntramp = 0;
                                findsym(callpc,ISYM);
-                               IF cursym ANDF
-                                   !strcmp(cursym->n_un.n_name, "start")
-                               THEN break;
-                               FI
-                               IF cursym
-                               THEN name = cursym->n_un.n_name;
-                               ELSE name = "?";
-                               FI
-                       FI
-                       printf("%s(", name);
-                       narg = get(argp,DSP); IF narg&~0xFF THEN narg=0; FI
-                       LOOP    IF narg==0 THEN break; FI
-                               printf("%R", get(argp += 4, DSP));
-                               IF --narg!=0 THEN printc(','); FI
-                       POOL
-                       IF ntramp == 1
-                       THEN callpc=get(frame+92, DSP);
-                       ELSE callpc=get(frame+16, DSP);
-                       FI
-                       IF callpc != 0
-                       THEN    prints(") from ");
+                               if (cursym &&
+                                   !strcmp(cursym->n_un.n_name, "start")) {
+                                    break;
+                               }
+                               if (cursym) {
+                                    name = cursym->n_un.n_name;
+                               }
+                               else {
+                                    name = "?";
+                               }
+                       }
+                       _printf("%s(", name);
+                       narg = get(argp,DSP); if (narg&~0xFF) { narg=0; }
+                       for(;;) {
+                               if (narg==0) { break; }
+                               _printf("%R", get(argp += 4, DSP));
+                               if (--narg!=0) { printc(','); }
+                       }
+                       if (ntramp == 1) {
+                            callpc=get(frame+92, DSP);
+                       }
+                       else {
+                            callpc=get(frame+16, DSP);
+                       }
+                       if (callpc != 0) {
+                               prints(") from ");
                                psymoff(callpc, ISYM, "\n");
-                       ELSE    prints(")\n");
-                       FI
-
-                       IF modif=='C'
-                       THEN    WHILE localsym(frame,argp)
-                               DO      word=get(localval,DSP);
-                                       printf("%8t%s:%10t",
+                       }
+                       else {
+                               prints(")\n");
+                       }
+
+                       if (modif=='C') {
+                               while (localsym(frame,argp)) {
+                                       word=get(localval,DSP);
+                                       _printf("%8t%s:%10t",
                                            cursym->n_un.n_name);
-                                       IF errflg
-                                       THEN prints("?\n"); errflg=0;
-                                       ELSE printf("%R\n",word);
-                                       FI
-                               OD
-                       FI
+                                       if (errflg) {
+                                            prints("?\n"); errflg=0;
+                                       }
+                                       else {
+                                            _printf("%R\n",word);
+                                       }
+                               }
+                       }
 
                        argp=get(frame+8, DSP);
                        lastframe=frame;
-                       frame=get(frame+12, DSP)&EVEN;
-                       IF frame==0 THEN break; FI
-                       IF !adrflg ANDF !INSTACK(frame)
-                       THEN    IF !kcore ORF !kstackaddr(frame)
-                               THEN break;
-                               FI
-                       FI
-               OD
+                       frame=get(frame+12, DSP)&-2;
+                       if (frame==0) { break; }
+                       if (!adrflg && !INSTACK(frame)) {
+                               if (!kcore || !kstackaddr(frame)) {
+                                    break;
+                               }
+                       }
+               }
                break;
 
            /*print externals*/
            case 'e': case 'E':
-               FOR sp = symtab; sp < esymtab; sp++
-               DO      IF sp->n_type == (N_DATA|N_EXT) ORF
-                          sp->n_type == (N_BSS|N_EXT)
-                       THEN printf("%s:%12t%R\n", sp->n_un.n_name,
+               for (sp = symtab; sp < esymtab; sp++) {
+                       if (sp->n_type == (N_DATA|N_EXT) ||
+                          sp->n_type == (N_BSS|N_EXT)) {
+                            _printf("%s:%12t%R\n", sp->n_un.n_name,
                                    get(sp->n_value,DSP));
-                       FI
-               OD
+                       }
+               }
                break;
 
            case 'a': case 'A':
@@ -356,15 +393,15 @@ printtrace(modif)
 
            /*print breakpoints*/
            case 'b': case 'B':
-               printf("breakpoints\ncount%8tbkpt%24tcommand\n");
-               FOR bkptr=bkpthead; bkptr; bkptr=bkptr->nxtbkpt
-               DO      IF bkptr->flag
-                       THEN    printf("%-8.8d",bkptr->count);
+               _printf("breakpoints\ncount%8tbkpt%24tcommand\n");
+               for (bkptr=bkpthead; bkptr; bkptr=bkptr->nxtbkpt) {
+                       if (bkptr->flag) {
+                               _printf("%-8.8d",bkptr->count);
                                psymoff(leng(bkptr->loc),ISYM,"%24t");
                                comptr=bkptr->comm;
-                               WHILE *comptr DO printc(*comptr++); OD
-                       FI
-               OD
+                               while (*comptr) { printc(*comptr++); }
+                       }
+               }
                break;
 
            default:
@@ -374,68 +411,70 @@ printtrace(modif)
 }
 
 printmap(s,amap)
-STRING s; MAP *amap;
+char   *s; struct map *amap;
 {
        int file;
        file=amap->ufd;
-       printf("%s%12t`%s'\n", s,
+       _printf("%s%12t`%s'\n", s,
            (file<0 ? "-" : (file==fcor ? corfil : symfil)));
-       printf("b1 = %-16R",amap->b1);
-       printf("e1 = %-16R",amap->e1);
-       printf("f1 = %-16R",amap->f1);
-       printf("\nb2 = %-16R",amap->b2);
-       printf("e2 = %-16R",amap->e2);
-       printf("f2 = %-16R",amap->f2);
-       printc(EOR);
+       _printf("b1 = %-16R",amap->b1);
+       _printf("e1 = %-16R",amap->e1);
+       _printf("f1 = %-16R",amap->f1);
+       _printf("\nb2 = %-16R",amap->b2);
+       _printf("e2 = %-16R",amap->e2);
+       _printf("f2 = %-16R",amap->f2);
+       printc('\n');
 }
 
 printregs()
 {
-       REG REGPTR      p;
-       L_INT           v;
-
-       FOR p=reglist; p < &reglist[24]; p++
-       DO      v = kcore ? *p->rkern : *(ADDR *)(((ADDR)&u)+p->roffs);
-               printf("%s%6t%R %16t", p->rname, v);
-               valpr(v,(p->roffs==PC?ISYM:DSYM));
-               printc(EOR);
-       OD
+       register struct reglist *p;
+       long            v;
+
+       for (p=reglist; p < &reglist[24]; p++) {
+               v = kcore ? *p->rkern : *(intptr_t *)(((intptr_t)&u)+p->roffs);
+               _printf("%s%6t%R %16t", p->rname, v);
+               valpr(v,(p->roffs==_PC?ISYM:DSYM));
+               printc('\n');
+       }
        printpc();
 }
 
 getreg(regnam) {
-       REG REGPTR      p;
-       REG STRING      regptr;
-       CHAR    *olp;
-       CHAR            regnxt;
+       register struct reglist *p;
+       register char   *regptr;
+       char    *olp;
+       char            regnxt;
 
        olp=lp;
-       FOR p=reglist; p < &reglist[24]; p++
-       DO      regptr=p->rname;
-               IF (regnam == *regptr++)
-               THEN
-                       WHILE *regptr
-                       DO IF (regnxt=readchar()) != *regptr++
-                               THEN --regptr; break;
-                               FI
-                       OD
-                       IF *regptr
-                       THEN lp=olp;
-                       ELSE
+       for (p=reglist; p < &reglist[24]; p++) {
+               regptr=p->rname;
+               if ((regnam == *regptr++)) {
+                   
+                       while (*regptr) {
+                          if ((regnxt=readchar()) != *regptr++) {
+                                    --regptr; break;
+                               }
+                       }
+                       if (*regptr) {
+                            lp=olp;
+                       }
+                       else {
+                           
                                int i = kcore ? (int)p->rkern : p->roffs;
                                return (i);
-                       FI
-               FI
-       OD
+                       }
+               }
+       }
        lp=olp;
        return(0);
 }
 
 printpc()
 {
-       dot= *(ADDR *)(((ADDR)&u)+PC);
-       psymoff(dot,ISYM,":%16t"); printins(0,ISP,chkget(dot,ISP));
-       printc(EOR);
+       dot= *(intptr_t *)(((intptr_t)&u)+_PC);
+       psymoff(dot,ISYM,":%16t"); printins(0,_ISP,chkget(dot,_ISP));
+       printc('\n');
 }
 
 char   *illinames[] = {
@@ -459,22 +498,23 @@ char      *fpenames[] = {
 
 sigprint()
 {
-       IF (signo>=0) ANDF (signo<sizeof signals/sizeof signals[0])
-       THEN prints(signals[signo]); FI
+       if ((signo>=0) && (signo<sizeof signals/sizeof signals[0])) { prints(signals[signo]); }
        switch (signo) {
 
        case SIGFPE:
-               IF (sigcode > 0 &&
-                   sigcode < sizeof fpenames / sizeof fpenames[0]) THEN
+               if ((sigcode > 0 &&
+                   sigcode < sizeof fpenames / sizeof fpenames[0])) {
+                       
                        prints(" ("); prints(fpenames[sigcode]); prints(")");
-               FI
+               }
                break;
 
        case SIGILL:
-               IF (sigcode >= 0 &&
-                   sigcode < sizeof illinames / sizeof illinames[0]) THEN
+               if ((sigcode >= 0 &&
+                   sigcode < sizeof illinames / sizeof illinames[0])) {
+                       
                        prints(" ("); prints(illinames[sigcode]); prints(")");
-               FI
+               }
                break;
        }
 }
index e755ae3..232a02b 100644 (file)
@@ -9,37 +9,37 @@ static        char sccsid[] = "@(#)runpcs.c   4.6 4/25/85";
 
 #include "defs.h"
 
-extern MAP     txtmap;
+extern struct map      txtmap;
 
-MSG            NOFORK;
-MSG            ENDPCS;
-MSG            BADWAIT;
+char           NOFORK[];
+char           ENDPCS[];
+char           BADWAIT[];
 
-CHAR           *lp;
-ADDR           sigint;
-ADDR           sigqit;
+char           *lp;
+intptr_t               sigint;
+intptr_t               sigqit;
 
 /* breakpoints */
-BKPTR          bkpthead;
+struct bkpt            *bkpthead;
 
-REGLIST                reglist[];
+struct reglist         reglist[];
 
-CHAR           lastc;
+char           lastc;
 
-INT            fcor;
-INT            fsym;
-STRING         errflg;
-INT            errno;
-INT            signo;
-INT            sigcode;
+short          fcor;
+short          fsym;
+char           *errflg;
+short          errno;
+short          signo;
+short          sigcode;
 
-L_INT          dot;
-STRING         symfil;
-INT            wtflag;
-L_INT          pid;
-L_INT          expv;
-INT            adrflg;
-L_INT          loopcnt;
+long           dot;
+char           *symfil;
+short          wtflag;
+long           pid;
+long           expv;
+short          adrflg;
+long           loopcnt;
 
 
 
@@ -51,67 +51,73 @@ getsig(sig)
 {      return(expr(0) ? expv : sig);
 }
 
-ADDR userpc = 1;
+intptr_t userpc = 1;
 
 runpcs(runmode,execsig)
 {
-       INT             rc;
-       REG BKPTR       bkpt;
-       IF adrflg THEN userpc=dot; FI
-       printf("%s: running\n", symfil);
+       short           rc;
+       register struct bkpt    *bkpt;
+       if (adrflg) { userpc=dot; }
+       _printf("%s: running\n", symfil);
 
-       WHILE --loopcnt>=0
-       DO
+       while (--loopcnt>=0) {
+         
 #ifdef DEBUG
-               printf("\ncontinue %x %d\n",userpc,execsig);
+               _printf("\ncontinue %x %d\n",userpc,execsig);
 #endif
-               IF runmode==SINGLE
-               THEN delbp(); /* hardware handles single-stepping */
-               ELSE /* continuing from a breakpoint is hard */
-                       IF bkpt=scanbkpt(userpc)
-                       THEN execbkpt(bkpt,execsig); execsig=0;
-                       FI
+               if (runmode==SINGLE) {
+                    delbp(); /* hardware handles single-stepping */
+               }
+               else {
+                    /* continuing from a breakpoint is hard */
+                       if (bkpt=scanbkpt(userpc)) {
+                            execbkpt(bkpt,execsig); execsig=0;
+                       }
                        setbp();
-               FI
+               }
                ptrace(runmode,pid,userpc,execsig);
                bpwait(); chkerr(); execsig=0; delbp(); readregs();
 
-               IF (signo==0) ANDF (bkpt=scanbkpt(userpc))
-               THEN /* stopped by BPT instruction */
+               if ((signo==0) && (bkpt=scanbkpt(userpc))) {
+                    /* stopped by BPT instruction */
 #ifdef DEBUG
-                       printf("\n BPT code; '%s'%o'%o'%d",
-                               bkpt->comm,bkpt->comm[0],EOR,bkpt->flag);
+                       _printf("\n BPT code; '%s'%o'%o'%d",
+                               bkpt->comm,bkpt->comm[0],'\n',bkpt->flag);
 #endif
                        dot=bkpt->loc;
-                       IF bkpt->flag==BKPTEXEC
-                       ORF ((bkpt->flag=BKPTEXEC)
-                               ANDF bkpt->comm[0]!=EOR
-                               ANDF command(bkpt->comm,':')
-                               ANDF --bkpt->count)
-                       THEN execbkpt(bkpt,execsig); execsig=0; loopcnt++;
-                       ELSE bkpt->count=bkpt->initcnt; rc=1;
-                       FI
-               ELSE execsig=signo; rc=0;
-               FI
-       OD
+                       if (bkpt->flag==BKPTEXEC
+                       || ((bkpt->flag=BKPTEXEC)
+                               && bkpt->comm[0]!='\n'
+                               && command(bkpt->comm,':')
+                               && --bkpt->count)) {
+                            execbkpt(bkpt,execsig); execsig=0; loopcnt++;
+                       }
+                       else {
+                            bkpt->count=bkpt->initcnt; rc=1;
+                       }
+               }
+               else {
+                    execsig=signo; rc=0;
+               }
+       }
        return(rc);
 }
 
 #define BPOUT 0
 #define BPIN 1
-INT bpstate = BPOUT;
+short bpstate = BPOUT;
 
 endpcs()
 {
-       REG BKPTR       bkptr;
-       IF pid
-       THEN ptrace(PT_KILL,pid,0,0); pid=0; userpc=1;
-            FOR bkptr=bkpthead; bkptr; bkptr=bkptr->nxtbkpt
-            DO IF bkptr->flag
-               THEN bkptr->flag=BKPTSET;
-               FI
-            OD
-       FI
+       register struct bkpt    *bkptr;
+       if (pid) {
+            ptrace(PT_KILL,pid,0,0); pid=0; userpc=1;
+            for (bkptr=bkpthead; bkptr; bkptr=bkptr->nxtbkpt) {
+               if (bkptr->flag) {
+                    bkptr->flag=BKPTSET;
+               }
+            }
+       }
        bpstate=BPOUT;
 }
 
@@ -126,33 +132,36 @@ setup()
 {
        close(fsym); fsym = -1;
 #ifndef VFORK
-       IF (pid = fork()) == 0
+       if ((pid = fork()) == 0
 #else
-       IF (pid = vfork()) == 0
-#endif
-       THEN ptrace(PT_TRACE_ME,0,0,0);
+       if ((pid = vfork()) == 0
+#endif) {
+            ptrace(PT_TRACE_ME,0,0,0);
 #ifdef VFORK
             signal(SIGTRAP,nullsig);
 #endif
             signal(SIGINT,sigint); signal(SIGQUIT,sigqit);
             doexec(); exit(0);
-       ELIF pid == -1
-       THEN error(NOFORK);
-       ELSE bpwait(); readregs(); lp[0]=EOR; lp[1]=0;
+       }
+       else if (pid == -1) {
+            error(NOFORK);
+       }
+       else {
+            bpwait(); readregs(); lp[0]='\n'; lp[1]=0;
             fsym=open(symfil,wtflag);
-            IF errflg
-            THEN printf("%s: cannot execute\n",symfil);
+            if (errflg) {
+                 _printf("%s: cannot execute\n",symfil);
                  endpcs(); error(0);
-            FI
-       FI
+            }
+       }
        bpstate=BPOUT;
 }
 
 execbkpt(bkptr,execsig)
-BKPTR  bkptr;
+struct bkpt    *bkptr;
 {
 #ifdef DEBUG
-       printf("exbkpt: %d\n",bkptr->count);
+       _printf("exbkpt: %d\n",bkptr->count);
 #endif
        delbp();
        ptrace(PT_STEP,pid,bkptr->loc,execsig);
@@ -163,83 +172,87 @@ BKPTR     bkptr;
 
 doexec()
 {
-       STRING          argl[MAXARG];
-       CHAR            args[LINSIZ];
-       STRING          p, *ap, filnam;
-       extern STRING environ;
+       char*CHECKME            argl[MAXARG];
+       char            args[LINSIZ];
+       char*CHECKME            p, *ap, filnam;
+       extern char *environ;
        ap=argl; p=args;
        *ap++=symfil;
-       REP     IF rdc()==EOR THEN break; FI
+       do {
+               if (rdc()=='\n') { break; }
                *ap = p;
                /*
                 * First thing is to look for direction characters
                 * and get filename.  Do not use up the args for filenames.
                 * Then get rid of spaces before next args.
                 */
-               IF lastc=='<'
-               THEN    REP readchar(); PER lastc==SP ORF lastc==TB DONE
+               if (lastc=='<') {
+                       do { readchar(); } while (lastc==' ' || lastc=='\t');
                        filnam = p;
-                       WHILE lastc!=EOR ANDF lastc!=SP ANDF lastc!=TB ANDF lastc!='>'
-                               DO *p++=lastc; readchar(); OD
+                       while (lastc!='\n' && lastc!=' ' && lastc!='\t' && lastc!='>') { *p++=lastc; readchar(); }
                        *p = 0;
                        close(0);
-                       IF open(filnam,0)<0
-                       THEN    printf("%s: cannot open\n",filnam); _exit(0);
-                       FI
+                       if (open(filnam,0)<0) {
+                               _printf("%s: cannot open\n",filnam); _exit(0);
+                       }
                        p = *ap;
-               ELIF lastc=='>'
-               THEN    REP readchar(); PER lastc==SP ORF lastc==TB DONE
+               }
+               else if (lastc=='>') {
+                       do { readchar(); } while (lastc==' ' || lastc=='\t');
                        filnam = p;
-                       WHILE lastc!=EOR ANDF lastc!=SP ANDF lastc!=TB ANDF lastc!='<'
-                               DO *p++=lastc; readchar(); OD
+                       while (lastc!='\n' && lastc!=' ' && lastc!='\t' && lastc!='<') { *p++=lastc; readchar(); }
                        *p = '\0';
                        close(1);
-                       IF creat(filnam,0666)<0
-                       THEN    printf("%s: cannot create\n",filnam); _exit(0);
-                       FI
+                       if (creat(filnam,0666)<0) {
+                               _printf("%s: cannot create\n",filnam); _exit(0);
+                       }
                        p = *ap;
-               ELSE    
-                       WHILE lastc!=EOR ANDF lastc!=SP ANDF lastc!=TB ANDF lastc!='>' ANDF lastc!='<'
-                               DO *p++=lastc; readchar(); OD
+               }
+               else {
+                       
+                       while (lastc!='\n' && lastc!=' ' && lastc!='\t' && lastc!='>' && lastc!='<') { *p++=lastc; readchar(); }
                        *p++ = '\0';
-                       ap++;
-               FI
-       PER lastc!=EOR DONE
+                       ap++;
+               }
+       } while (lastc!='\n');
        *ap++=0;
        exect(symfil, argl, environ);
        perror(symfil);
 }
 
-BKPTR  scanbkpt(adr)
-ADDR adr;
+struct bkpt*CHECKME    scanbkpt(adr)
+intptr_t adr;
 {
-       REG BKPTR       bkptr;
-       FOR bkptr=bkpthead; bkptr; bkptr=bkptr->nxtbkpt
-       DO IF bkptr->flag ANDF bkptr->loc==adr
-          THEN break;
-          FI
-       OD
+       register struct bkpt    *bkptr;
+       for (bkptr=bkpthead; bkptr; bkptr=bkptr->nxtbkpt) {
+          if (bkptr->flag && bkptr->loc==adr) {
+               break;
+          }
+       }
        return(bkptr);
 }
 
 delbp()
 {
-       REG ADDR        a;
-       REG BKPTR       bkptr;
-       IF bpstate!=BPOUT
-       THEN
-               FOR bkptr=bkpthead; bkptr; bkptr=bkptr->nxtbkpt
-               DO      IF bkptr->flag
-                       THEN a=bkptr->loc;
-                               IF a < txtmap.e1 THEN
+       register intptr_t       a;
+       register struct bkpt    *bkptr;
+       if (bpstate!=BPOUT) {
+           
+               for (bkptr=bkpthead; bkptr; bkptr=bkptr->nxtbkpt) {
+                       if (bkptr->flag) {
+                            a=bkptr->loc;
+                               if (a < txtmap.e1) {
+                                   
                                        ptrace(PT_WRITE_I,pid,a,bkptr->ins);
-                               ELSE
+                               }
+                               else {
+                                   
                                        ptrace(PT_WRITE_D,pid,a,bkptr->ins);
-                               FI
-                       FI
-               OD
+                               }
+                       }
+               }
                bpstate=BPOUT;
-       FI
+       }
 }
 
 #ifdef vax
@@ -248,73 +261,81 @@ delbp()
 
 setbp()
 {
-       REG ADDR                a;
-       REG BKPTR       bkptr;
-
-       IF bpstate!=BPIN
-       THEN
-               FOR bkptr=bkpthead; bkptr; bkptr=bkptr->nxtbkpt
-               DO IF bkptr->flag
-                  THEN a = bkptr->loc;
-                       IF a < txtmap.e1 THEN
+       register intptr_t               a;
+       register struct bkpt    *bkptr;
+
+       if (bpstate!=BPIN) {
+           
+               for (bkptr=bkpthead; bkptr; bkptr=bkptr->nxtbkpt) {
+                  if (bkptr->flag) {
+                       a = bkptr->loc;
+                       if (a < txtmap.e1) {
+                           
                                bkptr->ins = ptrace(PT_READ_I, pid, a, 0);
                                ptrace(PT_WRITE_I, pid, a, SETBP(bkptr->ins));
-                       ELSE
+                       }
+                       else {
+                           
                                bkptr->ins = ptrace(PT_READ_D, pid, a, 0);
                                ptrace(PT_WRITE_D, pid, a, SETBP(bkptr->ins));
-                       FI
-                       IF errno
-                       THEN prints("cannot set breakpoint: ");
+                       }
+                       if (errno) {
+                            prints("cannot set breakpoint: ");
                             psymoff(bkptr->loc,ISYM,"\n");
-                       FI
-                  FI
-               OD
+                       }
+                  }
+               }
                bpstate=BPIN;
-       FI
+       }
 }
 
 bpwait()
 {
-       REG ADDR w;
-       ADDR stat;
+       register intptr_t w;
+       intptr_t stat;
 
        signal(SIGINT, 1);
-       WHILE (w = wait(&stat))!=pid ANDF w != -1 DONE
+       while ((w = wait(&stat))!=pid && w != -1);
        signal(SIGINT,sigint);
-       IF w == -1
-       THEN pid=0;
+       if (w == -1) {
+            pid=0;
             errflg=BADWAIT;
-       ELIF (stat & 0177) != 0177
-       THEN sigcode = 0;
-            IF signo = stat&0177
-            THEN sigprint();
-            FI
-            IF stat&0200
-            THEN prints(" - core dumped");
+       }
+       else if ((stat & 0177) != 0177) {
+            sigcode = 0;
+            if (signo = stat&0177) {
+                 sigprint();
+            }
+            if (stat&0200) {
+                 prints(" - core dumped");
                  close(fcor);
                  setcor();
-            FI
+            }
             pid=0;
             errflg=ENDPCS;
-       ELSE signo = stat>>8;
+       }
+       else {
+            signo = stat>>8;
             sigcode = ptrace(PT_READ_U, pid, &((struct user *)0)->u_code, 0);
-            IF signo!=SIGTRAP
-            THEN sigprint();
-            ELSE signo=0;
-            FI
+            if (signo!=SIGTRAP) {
+                 sigprint();
+            }
+            else {
+                 signo=0;
+            }
             flushbuf();
-       FI
+       }
 }
 
 readregs()
 {
-       /*get REG values from pcs*/
-       REG i;
-       FOR i=24; --i>=0; 
-       DO *(ADDR *)(((ADDR)&u)+reglist[i].roffs) =
+       /*get register values from pcs*/
+       register i;
+       for (i=24; --i>=0;) {
+          *(intptr_t *)(((intptr_t)&u)+reglist[i].roffs) =
                    ptrace(PT_READ_U, pid, reglist[i].roffs, 0);
-       OD
-       userpc= *(ADDR *)(((ADDR)&u)+PC);
+       }
+       userpc= *(intptr_t *)(((intptr_t)&u)+_PC);
 }
 
 
index 51f4aff..56dd273 100644 (file)
@@ -11,7 +11,7 @@ static        char sccsid[] = "@(#)setup.c    4.10 (Berkeley) 85/05/09";
 
 off_t  datbas;                 /* offset of the base of the data segment */
 off_t  stksiz;                 /* stack size in the core image */
-INT    sigcode;        /* belongs in head.h */
+short  sigcode;        /* belongs in head.h */
 
 char   *symfil = "a.out";
 char   *corfil = "core";
@@ -83,13 +83,13 @@ nosymt:
        }
        return;
 readerr:
-       printf("Error reading symbol|string table\n");
+       _printf("Error reading symbol|string table\n");
        exit(1);
 nospac:
-       printf("Not enough space for symbol|string table\n");
+       _printf("Not enough space for symbol|string table\n");
        exit(1);
 oldfmt:
-       printf("Old format a.out - no string table\n");
+       _printf("Old format a.out - no string table\n");
        exit(1);
 }
 
@@ -110,7 +110,7 @@ setcor()
                sbr = cursym->n_value;
                lookup("_Syssize");
                slr = cursym->n_value;
-               printf("sbr %x slr %x\n", sbr, slr);
+               _printf("sbr %x slr %x\n", sbr, slr);
                lookup("_masterpaddr");
                physrw(fcor, KVTOPH(cursym->n_value), &masterpcbb, 1);
                masterpcbb = (masterpcbb&PG_PFNUM)*NBPG;
@@ -155,7 +155,7 @@ getpcb()
        lseek(fcor, KVTOPH(masterpcbb), L_SET);
        read(fcor, &pcb, sizeof (struct pcb));
        pcb.pcb_p0lr &= ~AST_CLR;
-       printf("p0br %x p0lr %x p1br %x p1lr %x\n",
+       _printf("p0br %x p0lr %x p1br %x p1lr %x\n",
            pcb.pcb_p0br, pcb.pcb_p0lr, pcb.pcb_p1br, pcb.pcb_p1lr);
 }
 
@@ -192,7 +192,7 @@ findstackframe()
                        *cp = '?';
        if (*cp)
                *cp = '\0';
-       printf("panic: %s\n", buf);
+       _printf("panic: %s\n", buf);
        /*
         * After a panic, look at the top of the rpb stack to
         * find a stack frame.  If this was a clean crash,
@@ -216,7 +216,7 @@ findstackframe()
                fp = checkintstack();
        /* search kernel stack? */
        if (fp == 0) {
-               printf("can't locate stack frame\n");
+               _printf("can't locate stack frame\n");
                return;
        }
        /* probably shouldn't clobber pcb, but for now this is easy */
@@ -326,7 +326,7 @@ getfile(filnam, cnt)
                if (wtflag)
                        fsym = create(filnam);
                if (fsym < 0)
-                       printf("cannot open `%s'\n", filnam);
+                       _printf("cannot open `%s'\n", filnam);
        }
        return (fsym);
 }
index 6e64243..6d92869 100644 (file)
@@ -17,7 +17,8 @@ lookup(symstr)
        cursym = 0;
        if (symtab)
        for (sp = symtab; sp < esymtab; sp++)
-               /* SHOULD DO SOME OF EQSYM INLINE TO SAVE TIME */
+               /* SHOULD) {
+                  SOME OF EQSYM INLINE TO SAVE TIME */
                if ((sp->n_type&N_STAB)==0 && eqsym(sp->n_un.n_name, symstr, '_'))
                        return(cursym = sp);
        return (0);
@@ -58,7 +59,7 @@ findsym(val, type)
  * Return 0 at end of file.
  */
 localsym(cframe, cargp)
-       ADDR cframe, cargp;
+       intptr_t cframe, cargp;
 {
        register int type;
        register struct nlist *sp;
@@ -120,13 +121,13 @@ psymoff(v, type, s)
        if (v) 
                w = findsym(v, type);
        if (v==0 || w >= maxoff || (INKERNEL(v) && KVTOPH(v) < maxoff && w))
-               printf(LPRMODE, v);
+               _printf(LPRMODE, v);
        else {
-               printf("%s", cursym->n_un.n_name);
+               _printf("%s", cursym->n_un.n_name);
                if (w)
-                       printf(OFFMODE, w);
+                       _printf(OFFMODE, w);
        }
-       printf(s);
+       _printf(s);
 }
 
 /*
@@ -142,7 +143,7 @@ valpr(v, idsp)
        d = findsym(v, idsp);
        if (d >= maxoff)
                return;
-       printf("%s", cursym->n_un.n_name);
+       _printf("%s", cursym->n_un.n_name);
        if (d)
-               printf(OFFMODE, d);
+               _printf(OFFMODE, d);
 }