Annotation of researchv10dc/dist/man/v3/manx/fptrap.3, revision 1.1.1.1

1.1       root        1: .pa 1
                      2: .he '3/15/72''FPTRAP (III)'
                      3: .ti 0
                      4: NAME           fptrap  --  PDP-11/45 floating point simulator
                      5: .sp
                      6: .ti 0
                      7: .nf
                      8: SYNOPSIS       .globl fptrap
                      9: .br
                     10: sys ilgins; fptrap
                     11: .fi
                     12: .sp
                     13: .ti 0
                     14: DESCRIPTION    fptrap______
                     15: is a package which picks up instructions which are illegal
                     16: for the PDP-11/20, and if they correspond to 11/45 floating
                     17: point instructions, simulates their operation.
                     18: The following instructions are supported:
                     19: 
                     20:        cfcc
                     21:        setf
                     22:        seti
                     23:        setd
                     24:        setl
                     25: .      ldfps   src             (not in assembler)
                     26: .      stfps   dst             (not in assembler)
                     27:        clrf    fdst
                     28:        tstf    fsrc
                     29:        absf    fdst
                     30:        negf    fdst
                     31:        mulf    fsrc,fr
                     32:        modf    fsrc,fr
                     33:        addf    fsrc,fr
                     34:        movf    fsrc,fr (=ldf)
                     35:        movf    fr,fdst (=stf)
                     36:        subf    fsrc,fr
                     37:        cmpf    fsrc,fr
                     38:        divf    fsrc,fr
                     39: .nf
                     40: .      movei   fr,dst  (=stexp)  (not in assembler)
                     41: .      movie   src,fr  (=ldexp)  (not in assembler)
                     42:        movfi   fr,dst  (=stcfi)
                     43:        movif   src,fr  (=ldcif)
                     44:        movfo   fr,fdst (=stcxy)
                     45:        movof   fsrc,fr (=ldcyx)
                     46: .fi
                     47: 
                     48: Here src___ and dst___ stand for source and destination, fsrc____
                     49: and fdst____ for floating source and destination, and fr__ for
                     50: floating register.
                     51: Notice that the names of several of the opcodes have changed.
                     52: The only strange instruction
                     53: is movf____, which turns into stf___ if its source
                     54: operand is a floating register, and into ldf___ if not.
                     55: .sp
                     56: The simulator sets the floating condition codes
                     57: on both ldf___ and stf___.
                     58: The 11/45 hardware does not set
                     59: the fcc on stf.
                     60: 
                     61: Short and long format for both floating point numbers
                     62: and integers is supported.  Truncation mode is always in effect.
                     63: Traps for overflow and other arithmetic errors are not supported.
                     64: Illegal instructions or addresses cause a simulated trap
                     65: so that a core image is produced.
                     66: 
                     67: The condition code bits are maintained correctly.
                     68: 
                     69: For floating-point source operands, immediate mode ((pc)+) is
                     70: not supported, since the PDP-11/45
                     71: handbook is not clear on what to do about it.
                     72: 
                     73: After an arithmetic error the result is generally
                     74: meaningless.
                     75: 
                     76: The arithmetic is always done in double-precision, so exact
                     77: but unrounded results are to be expected in single-precision
                     78: mode.  Double precision results are probably less correct
                     79: than the hardware will be.
                     80: 
                     81: The lower parts of the floating registers become meaningless
                     82: during single-precision operations.
                     83: .sp
                     84: .ti 0
                     85: FILES          kept in /usr/lib/liba.a
                     86: .sp
                     87: .ti 0
                     88: SEE ALSO       PDP-11/45 handbook, ilgins(II)
                     89: .sp
                     90: .ti 0
                     91: DIAGNOSTICS    trap, c-bit, v-bit
                     92: .sp
                     93: .ti 0
                     94: BUGS           see above

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.