[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: Yahoo!!!!!!! RSTS/E is fully running on Supnik's simulator on PC



The problem <is> implementation dependent.  It occurs on an x86 under
NT, as well as x86 under various free UNIX's.  Based on prior
experience, and the isolation of this problem to the floating point
emulation, it is surely an unsigned shift issue somewhere (I thought I
had them all, but apparently not).

/Bob

> -----Original Message-----
> From:	Gary L. Luckenbaugh [SMTP:garyll@ibm.net]
> Sent:	Thursday, June 04, 1998 10:51 PM
> To:	Bob Supnik; Bob & Cecelia; deltoids@mcws.net; Chuck Cranor
> Subject:	Yahoo!!!!!!!   RSTS/E is fully running on Supnik's
> simulator on PC
> 
> I got BASIC-PLUS working on Win95 with Pentium processor.  The bug is
> apparently in the emulation of the Floating Point Processor.  I built
> a
> version of BASIC-PLUS and told it the processor had no FPP.  This
> version
> works fine!   After some experimenting I came to the conclusion that
> the bug
> was in the FPP instructions and not the integer instructions.
> 
> Here's what I did:
> 
>       X%=128
> 
>       Ready
> 
>       Print X%
>          0
> 
>       Ready
> 
>       x%=128.0
> 
>       Ready
> 
>       Print x%
>           0
> 
>       Ready
> 
>       x%=128.1
> 
>       Ready
> 
>       print x%
>           0
> 
>       Ready
> 
> At this point the light bulb went off in my head.  The lexical scanner
> in
> BASIC-PLUS assumes all numeric constants are floating point until it
> sees
> the percent sign, at which time it tries to convert it to either a one
> byte
> or two byte integer constant.  So I thought, if the FPP emulation was
> wrong,
> then the conversion to an integer might be wrong.  I then thought, I
> can
> build a BASIC-PLUS with floating point emulation in the interpreter,
> and
> sure enough it works fine.
> 
> I bet the reason it works on the Alpha is because the Alpha's native
> floating point is probably closer to the PDP-11s floating point.  The
> Pentium's floating point is probably different.
> 
> Regards, Gary