mango:/usr/users/wade> 
mango:/usr/users/wade/osi> ls
ls
a.out*		fakelib.c	hello2.pas	libexc.a*	startup.s
bt.c		fakelib.c~	hello2.pas~	names.pas
bt.s		fakelib.o	hello2.s	orig-hello2.s
dis.c		hello2.o	hello2.s~	startup.o
mango:/usr/users/wade/osi> 

mango:/usr/users/wade/osi> cd ../w/com
cd ../w/com
mango:/usr/users/wade/w/com> cd ../lib/c-src
cd ../lib/c-src
mango:/usr/users/wade/w/lib/c-src> ls
ls
Makefile		c-rtl.c~		memory.c
a.out*			c-rtl.o			memory.c~
arith.c			gc/			memory.o
arith.o			immed.c			memory.s
arith.s			immed.o			mips-integer-arith.s
array.c			integer-arith.o		new/
array.o			interrupts.c		orig-bignum/
array.s			interrupts.o		sparc-integer-arith.s
bignum/			lisp.h			test.c
c-rtl.c			lisp.h~
mango:/usr/users/wade/w/lib/c-src> ls new
ls new
a.out*	test.c
mango:/usr/users/wade/w/lib/c-src> ls
ls
Makefile		c-rtl.c~		memory.c
a.out*			c-rtl.o			memory.c~
arith.c			gc/			memory.o
arith.o			immed.c			memory.s
arith.s			immed.o			mips-integer-arith.s
array.c			integer-arith.o		new/
array.o			interrupts.c		orig-bignum/
array.s			interrupts.o		sparc-integer-arith.s
bignum/			lisp.h			test.c
c-rtl.c			lisp.h~
mango:/usr/users/wade/w/lib/c-src> cd new
cd new
mango:/usr/users/wade/w/lib/c-src/new> cc loser.c
cc loser.c
cpp: error 0: No source file loser.c
mango:/usr/users/wade/w/lib/c-src/new> cc loader.c
cc loader.c
cpp: warning loader.c:11: LDREF: argument mismatch
ccom: Error: loader.c, line 11: syntax error
            (( *) ((ptr + len) - 5))-> = *(str + len);
      ----------^
ccom: Error: loader.c, line 14: illegal lhs of assignment operator
         LENGTH_FIELD(ptr) = LENGTH_FIELD(ptr) - 1;
      --------------------------------------------^
ccom: Error: loader.c, line 23: syntax error
        unsigned char * lisp_package-name;
      ------------------------------^
ccom: Warning: loader.c, line 27: illegal combination of pointer and integer, op =
          tmp = ptr;
      -------------^
ccom: Warning: loader.c, line 28: illegal combination of pointer and integer, op =
          ptr = strchr(ptr,'_');
      -------------------------^
ccom: Error: loader.c, line 31: i undefined
          i = 0;
      ------^
ccom: Warning: loader.c, line 32: illegal combination of pointer and integer, op =
          tmp = symbol_name;
      ---------------------^
ccom: Error: loader.c, line 35: illegal indirection
      	*tmp = (DIGIT_TO_INT(*(ptr + 1)) << 4) + DIGIT_TO_INT(*(ptr + 2));
      -------^
ccom: Error: loader.c, line 38: illegal indirection
      	*tmp = *ptr++;
      -------^
ccom: Error: loader.c, line 42: illegal indirection
          *(tmp + 1) = 0;
      ---------------^
ccom: Error: loader.c, line 44: lisp_package_name undefined
        lisp_package_name = c_to_lisp_string(package_name);
      --------------------^
ccom: Warning: loader.c, line 44: illegal combination of pointer and integer, op =
        lisp_package_name = c_to_lisp_string(package_name);
      ----------------------------------------------------^
ccom: Error: loader.c, line 46: sym undefined
        sym = p_INTERN(lisp_symbol_name,lisp_package_name);
      ------^
mango:/usr/users/wade/w/lib/c-src/new> !!
!!
cc loader.c
ccom: Error: loader.c, line 14: illegal lhs of assignment operator
         LENGTH_FIELD(ptr) = LENGTH_FIELD(ptr) - 1;
      --------------------------------------------^
ccom: Error: loader.c, line 25: ptr undefined
        ptr = c_name;
      ------^
ccom: Warning: loader.c, line 25: illegal combination of pointer and integer, op =
        ptr = c_name;
      --------------^
ccom: Error: loader.c, line 26: illegal indirection
        if ((*ptr == 's') && (*(ptr + 1) == '-')) {
      -------------^
ccom: Error: loader.c, line 26: illegal indirection
        if ((*ptr == 's') && (*(ptr + 1) == '-')) {
      ------------------------------------^
ccom: Error: loader.c, line 32: i undefined
          i = 0;
      ------^
ccom: Warning: loader.c, line 33: illegal combination of pointer and integer, op =
          tmp = symbol_name;
      ---------------------^
ccom: Error: loader.c, line 34: illegal indirection
          while (*ptr != 0) {
      -----------------^
ccom: Error: loader.c, line 35: illegal indirection
            if (*ptr == '_') {
      ----------------^
ccom: Error: loader.c, line 36: illegal indirection
      	*tmp = (DIGIT_TO_INT(*(ptr + 1)) << 4) + DIGIT_TO_INT(*(ptr + 2));
      -------^
ccom: Error: loader.c, line 36: illegal indirection
      	*tmp = (DIGIT_TO_INT(*(ptr + 1)) << 4) + DIGIT_TO_INT(*(ptr + 2));
      ---------------------------------^
ccom: Error: loader.c, line 36: illegal indirection
      	*tmp = (DIGIT_TO_INT(*(ptr + 1)) << 4) + DIGIT_TO_INT(*(ptr + 2));
      ------------------------------------------------------------------^
ccom: Error: loader.c, line 39: illegal indirection
      	*tmp = *ptr++;
      -------^
ccom: Error: loader.c, line 39: illegal indirection
      	*tmp = *ptr++;
      ---------------^
ccom: Error: loader.c, line 43: illegal indirection
          *(tmp + 1) = 0;
      ---------------^
ccom: Warning: loader.c, line 45: argument type doesn't match prototype description
        lisp_package_name = c_to_lisp_string(package_name);
      ---------------------------------------------------^
ccom: Error: loader.c, line 47: sym undefined
        sym = p_INTERN(lisp_symbol_name,lisp_package_name);
      ------^
mango:/usr/users/wade/w/lib/c-src/new> !!
!!
cc loader.c
ccom: Error: loader.c, line 14: illegal indirection
         *(LENGTH_FIELD(ptr)) = LENGTH_FIELD(ptr) - 1;
      ------------------------^
ccom: Warning: loader.c, line 29: illegal combination of pointer and integer, op =
          tmp = ptr;
      -------------^
ccom: Warning: loader.c, line 30: illegal combination of pointer and integer, op =
          ptr = strchr(ptr,'_');
      -------------------------^
ccom: Error: loader.c, line 33: i undefined
          i = 0;
      ------^
ccom: Warning: loader.c, line 34: illegal combination of pointer and integer, op =
          tmp = symbol_name;
      ---------------------^
ccom: Error: loader.c, line 37: illegal indirection
      	*tmp = (DIGIT_TO_INT(*(ptr + 1)) << 4) + DIGIT_TO_INT(*(ptr + 2));
      -------^
ccom: Error: loader.c, line 40: illegal indirection
      	*tmp = *ptr++;
      -------^
ccom: Error: loader.c, line 44: illegal indirection
          *(tmp + 1) = 0;
      ---------------^
ccom: Warning: loader.c, line 48: illegal combination of pointer and integer, op =
        sym = p_INTERN(lisp_symbol_name,lisp_package_name);
      ----------------------------------------------------^
mango:/usr/users/wade/w/lib/c-src/new> !!
!!
cc loader.c
ccom: Error: loader.c, line 14: illegal indirection
         *(LENGTH_FIELD(ptr)) = LENGTH_FIELD(ptr) - 1;
      ------------------------^
ccom: Warning: loader.c, line 27: illegal combination of pointer and integer, op =
        ptr = c_name;
      --------------^
ccom: Error: loader.c, line 28: illegal indirection
        if ((*ptr == 's') && (*(ptr + 1) == '-')) {
      -------------^
ccom: Error: loader.c, line 28: illegal indirection
        if ((*ptr == 's') && (*(ptr + 1) == '-')) {
      ------------------------------------^
ccom: Warning: loader.c, line 30: illegal combination of pointer and integer, op =
          tmp = ptr;
      -------------^
ccom: Error: loader.c, line 32: operands of - have incompatible types
          strncpy(package_name,ptr,ptr - tmp);
      --------------------------------------^
ccom: Error: loader.c, line 34: i undefined
          i = 0;
      ------^
ccom: Error: loader.c, line 36: illegal indirection
          while (*ptr != 0) {
      -----------------^
ccom: Error: loader.c, line 37: illegal indirection
            if (*ptr == '_') {
      ----------------^
ccom: Error: loader.c, line 38: illegal indirection
      	*tmp = (DIGIT_TO_INT(*(ptr + 1)) << 4) + DIGIT_TO_INT(*(ptr + 2));
      ---------------------------------^
ccom: Error: loader.c, line 38: illegal indirection
      	*tmp = (DIGIT_TO_INT(*(ptr + 1)) << 4) + DIGIT_TO_INT(*(ptr + 2));
      ------------------------------------------------------------------^
ccom: Error: loader.c, line 41: illegal indirection
      	*tmp = *ptr++;
      ---------------^
ccom: Warning: loader.c, line 49: illegal combination of pointer and integer, op =
        sym = p_INTERN(lisp_symbol_name,lisp_package_name);
      ----------------------------------------------------^
mango:/usr/users/wade/w/lib/c-src/new> !!
!!
cc loader.c
ccom: Error: loader.c, line 14: illegal indirection
         *(LENGTH_FIELD(ptr)) = LENGTH_FIELD(ptr) - 1;
      ------------------------^
ccom: Warning: loader.c, line 31: illegal combination of pointer and integer, op =
          ptr = strchr(ptr,'_');
      -------------------------^
ccom: Error: loader.c, line 34: i undefined
          i = 0;
      ------^
ccom: Warning: loader.c, line 49: illegal combination of pointer and integer, op =
        sym = p_INTERN(lisp_symbol_name,lisp_package_name);
      ----------------------------------------------------^
mango:/usr/users/wade/w/lib/c-src/new> !!
!!
cc loader.c
ccom: Error: loader.c, line 16: illegal indirection
         *(LENGTH_FIELD(ptr)) = LENGTH_FIELD(ptr) - 1;
      ------------------------^
ccom: Warning: loader.c, line 33: illegal combination of pointer and integer, op =
          ptr = strchr(ptr,'_');
      -------------------------^
mango:/usr/users/wade/w/lib/c-src/new> !!
!!
cc loader.c
ccom: Error: loader.c, line 17: illegal indirection
         *(LENGTH_FIELD(ptr)) = LENGTH_FIELD(ptr) - 1;
      ------------------------^
mango:/usr/users/wade/w/lib/c-src/new> !!
!!
cc loader.c
ccom: Error: loader.c, line 17: illegal indirection
         *(  *((unsigned long *) (((ptr) - 4) - 1)) ) = (( (  *((unsigned long *) (((ptr) - 4) - 1))  >> 8) - 1) << 8) +  ((unsigned char)   *((unsigned long *) (((ptr) - 4) - 1)) );
      ------------------------------------------------^
mango:/usr/users/wade/w/lib/c-src/new> !!
!!
cc loader.c
ld:
Undefined:
main
alloc_bytes
p_lsp_INTERN
DIGIT_TO_INT
mango:/usr/users/wade/w/lib/c-src/new> ls
ls
a.out		loader.c	loader.c~	test.c
mango:/usr/users/wade/w/lib/c-src/new> mv loader.c ..
mv loader.c ..
mango:/usr/users/wade/w/lib/c-src/new> ls
ls
a.out		loader.c~	test.c
mango:/usr/users/wade/w/lib/c-src/new> rclean .
rclean .
mango:/usr/users/wade/w/lib/c-src/new> cd ..
cd ..
mango:/usr/users/wade/w/lib/c-src> mv loader.c generic-loader.c
mv loader.c generic-loader.c
mango:/usr/users/wade/w/lib/c-src> make
make
cc -c -g c-rtl.c
ccom: Warning: c-rtl.c, line 140: illegal combination of pointer and integer, op =
          *(ptr + len--) =  (((unsigned char *) &(s_lsp_NIL)) + 5)	;
      ------------------------------------------------------------------^
as -o integer-arith.o mips-integer-arith.s
cc -g  mips-loader.c -o mips-loader
ld:
Undefined:
main
*** Error code 1

Stop.
mango:/usr/users/wade/w/lib/c-src> make CC=cc
make CC=cc
as -o integer-arith.o mips-integer-arith.s
(cd bignum; make mips CC="cc")
as -w mipsKerN.s -o KerN.o
make CC="cc" CFLAGS="-c  -O  -DDIGITon32BITS" all
mango:/usr/users/wade/w/lib/c-src> touch lisp.h
touch lisp.h
mango:/usr/users/wade/w/lib/c-src> make CC=cc
make CC=cc
cc -c -g c-rtl.c
ccom: Warning: c-rtl.c, line 140: illegal combination of pointer and integer, op =
          *(ptr + len--) =  (((unsigned char *) &(s_lsp_NIL)) + 5)	;
      ------------------------------------------------------------------^
cc -c -g memory.c
cc -c -g immed.c
cc -c -g arith.c
cc -c -g interrupts.c
cc -c -g array.c	
as -o integer-arith.o mips-integer-arith.s
(cd bignum; make mips CC="cc")
as -w mipsKerN.s -o KerN.o
make CC="cc" CFLAGS="-c  -O  -DDIGITon32BITS" all
mango:/usr/users/wade/w/lib/c-src> make
make
as -o integer-arith.o mips-integer-arith.s
cc -g  mips-loader.c -o mips-loader
ld:
Undefined:
find_rpd
top
*** Error code 1

Stop.
mango:/usr/users/wade/w/lib/c-src> make
make
as -o integer-arith.o mips-integer-arith.s
(cd bignum; make mips CC="cc -g")
as -w mipsKerN.s -o KerN.o
make CC="cc -g" CFLAGS="-c  -O  -DDIGITon32BITS" all
mango:/usr/users/wade/w/lib/c-src> make
make
cc -g -c  c-rtl.c
ccom: Warning: c-rtl.c, line 140: illegal combination of pointer and integer, op =
          *(ptr + len--) =  (((unsigned char *) &(s_lsp_NIL)) + 5)	;
      ------------------------------------------------------------------^
ccom: Error: c-rtl.c, line 705: syntax error
        signal(    8	, signal_handler);
      -----------------------------------^
*** Error code 1

Stop.
mango:/usr/users/wade/w/lib/c-src> make
make
cc -g -c  c-rtl.c
ccom: Warning: c-rtl.c, line 140: illegal combination of pointer and integer, op =
          *(ptr + len--) =  (((unsigned char *) &(s_lsp_NIL)) + 5)	;
      ------------------------------------------------------------------^
as -o integer-arith.o mips-integer-arith.s
cc -g -O  mips-loader.c -o mips-loader

uopt: Warning: file not optimized; use -g3 if both optimization and debug wanted
ld:
Undefined:
main
find_rpd
*** Error code 1

Stop.
mango:/usr/users/wade/w/lib/c-src> touch generic-loader.c
touch generic-loader.c
mango:/usr/users/wade/w/lib/c-src> make
make
as -o integer-arith.o mips-integer-arith.s
(cd bignum; make mips CC="cc -g")
as -w mipsKerN.s -o KerN.o
make CC="cc -g" CFLAGS="-c  -O  -DDIGITon32BITS" all
mango:/usr/users/wade/w/lib/c-src> touch *loader*
touch *loader*
mango:/usr/users/wade/w/lib/c-src> make
make
as -o integer-arith.o mips-integer-arith.s
(cd bignum; make mips CC="cc -g")
as -w mipsKerN.s -o KerN.o
make CC="cc -g" CFLAGS="-c  -O  -DDIGITon32BITS" all
mango:/usr/users/wade/w/lib/c-src> touch c-rtl.c
touch c-rtl.c
mango:/usr/users/wade/w/lib/c-src> make
make
cc -g -c  c-rtl.c
ccom: Warning: c-rtl.c, line 140: illegal combination of pointer and integer, op =
          *(ptr + len--) =  (((unsigned char *) &(s_lsp_NIL)) + 5)	;
      ------------------------------------------------------------------^
as -o integer-arith.o mips-integer-arith.s
(cd bignum; make mips CC="cc -g")
as -w mipsKerN.s -o KerN.o
make CC="cc -g" CFLAGS="-c  -O  -DDIGITon32BITS" all
mango:/usr/users/wade/w/lib/c-src> t
t
t: Command not found.
mango:/usr/users/wade/w/lib/c-src> make
make
cc -g -c  c-rtl.c
as -o integer-arith.o mips-integer-arith.s
(cd bignum; make mips CC="cc -g")
as -w mipsKerN.s -o KerN.o
make CC="cc -g" CFLAGS="-c  -O  -DDIGITon32BITS" all
mango:/usr/users/wade/w/lib/c-src> touch lisp.h
touch lisp.h
mango:/usr/users/wade/w/lib/c-src> make
make
cc -g -c  c-rtl.c
cc -g -c  memory.c
cc -g -c  immed.c
cc -g -c  arith.c
cc -g -c  interrupts.c
cc -g -c  array.c	
as -o integer-arith.o mips-integer-arith.s
(cd bignum; make mips CC="cc -g")
as -w mipsKerN.s -o KerN.o
make CC="cc -g" CFLAGS="-c  -O  -DDIGITon32BITS" all
mango:/usr/users/wade/w/lib/c-src> make mips
make mips
as -o integer-arith.o mips-integer-arith.s
(cd bignum; make mips CC="cc -g")
as -w mipsKerN.s -o KerN.o
make CC="cc -g" CFLAGS="-c  -O  -DDIGITon32BITS" all
mango:/usr/users/wade/w/lib/c-src> make mips
make mips
lisp.h
Make: Cannot load lisp.h.  Stop.
mango:/usr/users/wade/w/lib/c-src> ls lisp.h
ls lisp.h
lisp.h
mango:/usr/users/wade/w/lib/c-src> make
make
cc -g -c  generic-loader.c
ccom: Warning: generic-loader.c, line 51: illegal combination of pointer and integer, op =
        sym = p_INTERN(2,lisp_symbol_name,lisp_package_name);
      ------------------------------------------------------^
as -o integer-arith.o mips-integer-arith.s
cc -g -c  mips-loader.c
(cd bignum; make mips CC="cc -g")
as -w mipsKerN.s -o KerN.o
make CC="cc -g" CFLAGS="-c  -O  -DDIGITon32BITS" all
mango:/usr/users/wade/w/lib/c-src> make mips
make mips
as -o integer-arith.o mips-integer-arith.s
(cd bignum; make mips CC="cc -g")
as -w mipsKerN.s -o KerN.o
make CC="cc -g" CFLAGS="-c  -O  -DDIGITon32BITS" all
mango:/usr/users/wade/w/lib/c-src> make
make
as -o integer-arith.o mips-integer-arith.s

mango:/usr/users/wade/w/lib/c-src> make mips
make mips
as -o integer-arith.o mips-integer-arith.s
(cd bignum; make mips CC="cc -g")
as -w mipsKerN.s -o KerN.o
make CC="cc -g" CFLAGS="-c  -O  -DDIGITon32BITS" all
mango:/usr/users/wade/w/lib/c-src> make mips
make mips
cc -g -c  generic-loader.c
as -o integer-arith.o mips-integer-arith.s
(cd bignum; make mips CC="cc -g")
as -w mipsKerN.s -o KerN.o
make CC="cc -g" CFLAGS="-c  -O  -DDIGITon32BITS" all
mango:/usr/users/wade/w/lib/c-src> make mips
make mips
cc -o -c integer-arith.o mips-integer-arith.s
ld:
mips-integer-arith.o: integer_add: multiply defined
mips-integer-arith.o: integer_subtract: multiply defined
mips-integer-arith.o: integer_multiply: multiply defined
mips-integer-arith.o: copy_regs_to_stack: multiply defined
Undefined:
main
multiply_overflow_handler
*** Error code 1

Stop.
mango:/usr/users/wade/w/lib/c-src> make mips
make mips
cc -c -o integer-arith.o mips-integer-arith.s
(cd bignum; make mips CC="cc -g")
as -w mipsKerN.s -o KerN.o
make CC="cc -g" CFLAGS="-c  -O  -DDIGITon32BITS" all
mango:/usr/users/wade/w/lib/c-src> make mips
make mips
cc -c -o integer-arith.o mips-integer-arith.s
(cd bignum; make mips CC="cc -g")
as -w mipsKerN.s -o KerN.o
make CC="cc -g" CFLAGS="-c  -O  -DDIGITon32BITS" all
mango:/usr/users/wade/w/lib/c-src> ls
ls
-c			generic-loader.c	memory.s
Makefile		generic-loader.c~	mips-integer-arith.s
Makefile~		generic-loader.o	mips-loader
a.out*			immed.c			mips-loader.c
arith.c			immed.o			mips-loader.c~
arith.o			integer-arith.o		mips-loader.o
arith.s			interrupts.c		mips-loader~
array.c			interrupts.o		new/
array.o			lisp.h			orig-bignum/
array.s			lisp.h~			sparc-integer-arith.s
bignum/			loader.c		sparc-loader.c
c-rtl.c			loader.c~		sparc-loader.c~
c-rtl.c~		memory.c		test.c
c-rtl.o			memory.c~
gc/			memory.o
mango:/usr/users/wade/w/lib/c-src> ls new
ls new
a.out	test.c
mango:/usr/users/wade/w/lib/c-src> rclean .
rclean .
mango:/usr/users/wade/w/lib/c-src> cd new
cd new
mango:/usr/users/wade/w/lib/c-src/new> cc -v test.c
cc -v test.c
/usr/lib/cmplrs/cc/cpp -v test.c -DLANGUAGE_C -DMIPSEL -I/usr/include2.0 > /tmp/ctmpa01678 
0.1u 0.1s 0:04 8% 22+87k 29+12io 0pf+0w
/usr/lib/cmplrs/cc/ccom -Xv -EL -Xg0 -O1 -XS/tmp/ctmsta01678 < /tmp/ctmpa01678 > /tmp/ctmfa01678 
ccom:get_heap_size main 0.1u 0.2s 0:01 18% 60+253k 7+6io 3pf+0w
/usr/lib/cmplrs/cc/ugen -v -G 8 -EL -g0 -O1 /tmp/ctmfa01678 -o /tmp/ctmca01678 -t /tmp/ctmsta01678 -temp /tmp/ctmgta01678 
ugen: get_heap_size main
0.0u 0.0s 0:03 2% 76+56k 5+6io 6pf+0w
/usr/lib/cmplrs/cc/as1 -v -G 8 -p0 -EL -g0 -O1 /tmp/ctmca01678 -o test.o -t /tmp/ctmsta01678 
as1: get_heap_size main 
0.0u 0.1s 0:03 3% 79+79k 9+4io 6pf+0w
/usr/lib/cmplrs/cc/ld -G 8 -g0 -nocount /usr/lib/cmplrs/cc/crt0.o -count test.o -nocount -lc 
0.0u 0.4s 0:17 3% 59+188k 107+21io 4pf+0w
mango:/usr/users/wade/w/lib/c-src/new> ls
ls
a.out*	test.c
mango:/usr/users/wade/w/lib/c-src/new> cc -Wl,-T 10000000 test.c
cc -Wl,-T0x10000000 test.c
ld:
Badly formed hex number: -g0
ld: Usage: ld [options] file [...]
mango:/usr/users/wade/w/lib/c-src/new> cc -Wl,-T 0x10000000 test.c
cc -Wl,-T 10000000 test.c
ld:
Badly formed hex number: -g0
ld: Usage: ld [options] file [...]
mango:/usr/users/wade/w/lib/c-src/new> cc -Wl,-T10000000 test.c
cc -Wl,-T 0x10000000 test.c
ld:
Badly formed hex number: -g0
ld: Usage: ld [options] file [...]
mango:/usr/users/wade/w/lib/c-src/new> cc -Wl,-T -Wl,10000000 test.c
cc -Wl,-T10000000 test.c
ld:
Badly formed hex number: -g0
ld: Usage: ld [options] file [...]
mango:/usr/users/wade/w/lib/c-src/new> cc -Wl,-D -Wl,A000000 test.c
cc -Wl,-T -Wl,10000000 test.c
ld:
Output sections overlap, check -T, -D and -B values
Output sections overlap, check -T, -D and -B values
mango:/usr/users/wade/w/lib/c-src/new> 