[comp.lang.scheme] SYSV Scheme was Re: Request for C-Scheme info

craig@ncrcpx.UUCP (R. Craig Peterson) (01/15/88)

In article <3057@okstate.UUCP> norman@a.cs.okstate.edu writes:
>I'm about to uucp C-Scheme from Ohio State, but before I do I would 
>like to know what I'm getting myself into.  Some of the questions
>going through my mind right now are
>
>  - Is this thing SysV compatible?
>  - If it's not, is it easily portable (or has someone else done it :-)?
>  - Is it a decent implementation?
>  - Is it documented?
>  - Is it the greatest thing since sliced bread?
>
>If it is not sysV compatible I would appreciate hearing any war stories
>about porting it.
>
>Please send mail to me as I'm sure that this has been discussed before.
>
>--
>Norman Graham
>Oklahoma State University              Internet:  norman@a.cs.okstate.edu
>Computing and Information Sciences         UUCP:  {cbosgd, ihnp4,
>219 Mathematical Sciences Building                 rutgers}!okstate!norman
>Stillwater, OK  74078-0599


I've uploaded the MIT-Scheme from OSU.  I have a few System VR2 boxes
here, and I've worked at porting it to SYSV.  I've got it working just
fine until part way through its conversion of some files from its
non-machine-specific format to something for your machine; creating
its runtime library stuff.  It ends up getting a segmentation
violation.  I haven't had any chance to look at it for a couple of
weeks as I'm very busy getting ready for a demo for another product
here.  If you'd like what I've done, I'd be glad to send it to you.

I'm still looking for help!!  Does anyone know of any known bugs.
Here's the scenario:

I am trying to get MIT Scheme up on an NCR Tower 32 - SYSVR2.  I've
got everything going along just fine until:

    Psbtobin /usr/craig/Scheme/runtime/screen.psb
    Psbtobin /usr/craig/Scheme/runtime/sdata.psb
    /usr/craig/Scheme/microcode/Psbtobin: Segmentation violation -- Core dumped
    *** Error code 1
    `runtime/scheme.bin' not remade because of errors

Not very nice.  I looked into Psbtobin and found it to be quite
involved.  I wonder if you know of any bugs that may be obvious.  An
sdb run on the core shows:

    $ sdb Psbtobin ../runtime/core
    0x80a in read_a_string:138:     *string++ = ((char) read_a_char());
    *w
    133:   To[STRING_LENGTH] = Make_Non_Pointer(TC_FIXNUM, len);
    134: 
    135:   /* Space */
    136:   getc(Portable_File);
    137:   while (--len >= 0)
    138:     *string++ = ((char) read_a_char());
    139:   *string = '\0';
    140:   return (To + Pointer_Count);
    141: }
    142: 
    *t
    read_a_string(To=0x8134,Slot=0x7228)   [Psbtobin.c:138]
    Read_External(N=300,Table=0x7078,To=0x7528)   [Psbtobin.c:410]
    do_it()   [Psbtobin.c:750]
    Setup_Program(argc=1,argv=0xdffd84,Noptions=0,Options=0x5274)   [Psbtobin.c:226]
    main(argc=1,argv=0xdffd84,14679436)   [Psbtobin.c:851]
    *To/s
    '7^?J^Z_}
    *To/x
    0x8134
    *To/2x
    0x8134	0x7228
    *Pointer_Count/2x
    0x37ff4b	0xdfc63b
    *

BTW, adb agrees with sdb about the arguments:

    $ adb Psbtobin ../runtime/core
    ready
    $c
    Read_External+0x4e:	read_a_string	(0x8134, 0x7228)
    do_it+0x58:	Read_External	(0x12c,	0x7078,	0x7528)
    Setup_Program+0x76:	do_it	(0x5274)
    main+0x22:	Setup_Program	(0x1, 0xdffd84,	0x0, 0x5274)
    start%+0x2c:	main	(0x1)
    ???:		start%	(0x518f2eaf, 0x841ef, 0xc2f48)
    $q

Can you be of any help?  I would really like to get this stuff going.

Thanks in advance.
-- 
R. Craig Peterson		"Next time someone asks you if you're a god
ncrlnk!ncrcam!ncrcpx!craig	 say YES!!"
N8INO					Ghost Busters
E Pluribus Unum 	(NSA stuff - terrorist, DES, cipher, secret, NRO, CIA)