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

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