                           FP instructions

OpCode Mnemonic  Description				    	Stack Status

00..7f SLR_0..7f Short Load Real Constant                   { } -> { r }
                 r =    - $40, .. 
                    -64.0 .. +63.0     

 80    addR      Add Reals.                   r:= r2 + r1  {r1, r2} -> { r }

 81    subR      Subtract reals.              r:= r2 - r1  {r1, r2} -> { r }

 82    mulR      Multiply Reals.              r:= r2 * r1  {r1, r2} -> { r }

 83    divR      Divide reals.                r:= r2 / r1  {r1, r2} -> { r }

 84    absR      Absolute value of real       r:= abs(r1)  { r1 } -> { r }

 85    negR      Neagte real                     r:= - r1  { r1 } -> { r }

 86    sqrR      Square Real                  r:= r1 * r1  { r1 } -> { r }

 87    sqrt      Square Root of real         r:= sqrt(r1)  { r1 } -> { r }

 88    sin       Calculate SIN                r:= sin(r1)  { r1 } -> { r }

 89    cos       Calculate COS                r:= cos(r1)  { r1 } -> { r }

 8a    exp       Calculate EXP                r:= exp(r1)  { r1 } -> { r }

 8b    ln        Calculate LN                  r:= ln(r1)  { r1 } -> { r }

 8c    Atan      Calculate ArcTan            r:= atan(r1)  { r1 } -> { r }

 8d    intR      get integer part of real     r:= int(r1)  { r1 } -> { r }

 8e    fracR     get fraction part of real   r:= frac(r1)  { r1 } -> { r }

 8f    randomR   generate random real number   r:= random  { } -> { r }

 90    equR      Compare reals (for = )       b:= r2 = r1  {r1, r2} -> { b }

 91    equR      Compare reals (for <> )     b:= r2 <> r1  {r1, r2} -> { b }

 92    lesR      Compare reals (for < )       b:= r2 < r1  {r1, r2} -> { b }

 93    leqR      Compare reals (for <= )     b:= r2 <= r1  {r1, r2} -> { b }

 94    grtR      Compare reals (for > )       b:= r2 > r1  {r1, r2} -> { b }

 95    geqR      Compare reals (for >= )     b:= r2 >= r1  {r1, r2} -> { b }

 96    trunc     Convert real to LongInt     i:= trunc(r)  { r } -> { li }

 97    round     Convert real to LongInt     i:= round(r)  { r } -> { li }

 98    i2real    Integer to real. Convert top of stack     { i } -> { r }
                 integer number to 4 byte IEEE real       

 99    c2real    Cardinal to real. Convert top of stack    { c } -> { r }
                 cardinal number to 4 byte IEEE real      

 9a    l2real    LongInt to real. Convert top of stack     { li } -> { r }
                 LongInt number to 4 byte IEEE real       

 9b    LwRcnst w Load word as Real constant (convert cnst  { } -> { r }
                 from integer format to real).      r:= w 


                            FPcode 

   
    .0 /.8  .1 /.9  .2 /.a  .3 /.b  .4 /.c  .5 /.d  .6 /.e  .7 /.f 

80  addR    subR    mulR    divR    absR    negR    sqr     sqrt  87

88  sin     cos     exp     ln      Atan    intR    fracR  randomR8f

90  equR    neqR    lesR    leqR    grtR    geqR    trunc   round 97

98 i2real  c2real  l2real  LwRcnst                                9f
                            word                                    

    .0 /.8  .1 /.9  .2 /.a  .3 /.b  .4 /.c  .5 /.d  .6 /.e  .7 /.f 
   