Annotation of researchv10no/cmd/ex/ex.3b, revision 1.1.1.1

1.1       root        1: From cbosg!alice!mjm Sun Oct 11 19:47:11 1981
                      2: To: cbosg!cbosgd!mark
                      3: Subject: ex-vi
                      4: Status: RO
                      5: 
                      6: Mark,
                      7:      Just made vi on the 3B from the source on Jim Farrell's tape.
                      8: It seems to be working OK.  Almost no problems but ...
                      9: 
                     10: (1)  In the makefile, expreserve is loaded with ex_extern.o;
                     11: ex_extern.o is not needed and furthermore it gives a
                     12: multiple declaration error for the global structure H.
                     13: 
                     14: (2)  In the xstr.c you provided there are two problems for the 3B.
                     15: I needed to change line 96 (added extern keyword) to:
                     16:        printf("extern char\txstr[];\n");
                     17: and line 370 (%02x --> %.2x) to:
                     18:        fprintf(xdotcf, "0x%.2x," ,c);
                     19: (The second one is a 3B library bug, but it will likely be around for a while.)
                     20: 
                     21: (3)   In termlib/tc3.c I needed to add the extern keyword
                     22: before the declaration "char *UP".  And in termlib/tputs.c,
                     23: the #include <sgtty.h> is not needed (for anyone).
                     24: 
                     25: (4)   Here is my bcopy.c for vi, with an asm() ifdef'd in for the 3B;
                     26: you may or may not want to put it in the offical source.
                     27: 
                     28: /* block copy from from to to, count bytes */
                     29: static char *sccsid = "@(#)bcopy.c     7.1     7/8/81";
                     30: bcopy(from, to, count)
                     31: #ifdef vax
                     32:        char *from, *to;
                     33:        int count;
                     34: {
                     35: 
                     36:        asm("   movc3   12(ap),*4(ap),*8(ap)");
                     37: }
                     38: #else ifdef u3b                /* mjm */
                     39:        register char *from, *to;
                     40:        register int count;
                     41: {
                     42:        asm("   movblkb %r6, %r8, %r7");
                     43: }
                     44: #else
                     45:        register char *from, *to;
                     46:        register int count;
                     47: {
                     48:        while ((count--) > 0)   /* mjm */
                     49:                *to++ = *from++;
                     50: }
                     51: #endif
                     52: 
                     53: (5)    If there is an "exchanges" file for 3.7,
                     54: I would very much appreciate a copy of it.
                     55: Also I'd like to know about any future bugs and/or improvements.
                     56: 
                     57: Thanks,   Mel
                     58: 
                     59: 
                     60: 

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.