!C99Shell v. 1.0 pre-release build #13!

Software: Apache/2.0.54 (Unix) mod_perl/1.99_09 Perl/v5.8.0 mod_ssl/2.0.54 OpenSSL/0.9.7l DAV/2 FrontPage/5.0.2.2635 PHP/4.4.0 mod_gzip/2.0.26.1a 

uname -a: Linux snow.he.net 4.4.276-v2-mono-1 #1 SMP Wed Jul 21 11:21:17 PDT 2021 i686 

uid=99(nobody) gid=98(nobody) groups=98(nobody) 

Safe-mode: OFF (not secure)

/usr/src/linux-2.4.18-xfs-1.1/arch/m68k/fpsp040/   drwxr-xr-x
Free 318.34 GB of 458.09 GB (69.49%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Feedback    Self remove    Logout    


Viewing file:     fpsp.h (11.23 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
|
|    fpsp.h 3.3 3.3
|

|        Copyright (C) Motorola, Inc. 1990
|            All Rights Reserved
|
|    THIS IS UNPUBLISHED PROPRIETARY SOURCE CODE OF MOTOROLA 
|    The copyright notice above does not evidence any  
|    actual or intended publication of such source code.

|    fpsp.h --- stack frame offsets during FPSP exception handling
|
|    These equates are used to access the exception frame, the fsave
|    frame and any local variables needed by the FPSP package.
|    
|    All FPSP handlers begin by executing:
|
|        link    a6,#-LOCAL_SIZE
|        fsave    -(a7)
|        movem.l    d0-d1/a0-a1,USER_DA(a6)
|        fmovem.x fp0-fp3,USER_FP0(a6)
|        fmove.l    fpsr/fpcr/fpiar,USER_FPSR(a6)
|
|    After initialization, the stack looks like this:
|
|    A7 --->    +-------------------------------+
|        |                |
|        |    FPU fsave area        |
|        |                |
|        +-------------------------------+
|        |                |
|        |    FPSP Local Variables    |
|        |         including        |
|        |      saved registers    |
|        |                |
|        +-------------------------------+
|    A6 --->    |    Saved A6        |
|        +-------------------------------+
|        |                |
|        |    Exception Frame        |
|        |                |
|        |                |
|
|    Positive offsets from A6 refer to the exception frame.  Negative
|    offsets refer to the Local Variable area and the fsave area.
|    The fsave frame is also accessible from the top via A7.
|
|    On exit, the handlers execute:
|
|        movem.l    USER_DA(a6),d0-d1/a0-a1
|        fmovem.x USER_FP0(a6),fp0-fp3
|        fmove.l    USER_FPSR(a6),fpsr/fpcr/fpiar
|        frestore (a7)+
|        unlk    a6
|
|    and then either "bra fpsp_done" if the exception was completely
|    handled    by the package, or "bra real_xxxx" which is an external
|    label to a routine that will process a real exception of the
|    type that was generated.  Some handlers may omit the "frestore"
|    if the FPU state after the exception is idle.
|
|    Sometimes the exception handler will transform the fsave area
|    because it needs to report an exception back to the user.  This
|    can happen if the package is entered for an unimplemented float
|    instruction that generates (say) an underflow.  Alternatively,
|    a second fsave frame can be pushed onto the stack and the
|    handler    exit code will reload the new frame and discard the old.
|
|    The registers d0, d1, a0, a1 and fp0-fp3 are always saved and
|    restored from the "local variable" area and can be used as
|    temporaries.  If a routine needs to change any
|    of these registers, it should modify the saved copy and let
|    the handler exit code restore the value.
|
|----------------------------------------------------------------------
|
|    Local Variables on the stack
|
    .set    LOCAL_SIZE,192        | bytes needed for local variables
    .set    LV,-LOCAL_SIZE    | convenient base value
|
    .set    USER_DA,LV+0        | save space for D0-D1,A0-A1
    .set    USER_D0,LV+0        | saved user D0
    .set    USER_D1,LV+4        | saved user D1
    .set    USER_A0,LV+8        | saved user A0
    .set    USER_A1,LV+12        | saved user A1
    .set    USER_FP0,LV+16        | saved user FP0
    .set    USER_FP1,LV+28        | saved user FP1
    .set    USER_FP2,LV+40        | saved user FP2
    .set    USER_FP3,LV+52        | saved user FP3
    .set    USER_FPCR,LV+64        | saved user FPCR
    .set    FPCR_ENABLE,USER_FPCR+2    |     FPCR exception enable 
    .set    FPCR_MODE,USER_FPCR+3    |     FPCR rounding mode control
    .set    USER_FPSR,LV+68        | saved user FPSR
    .set    FPSR_CC,USER_FPSR+0    |     FPSR condition code
    .set    FPSR_QBYTE,USER_FPSR+1    |     FPSR quotient
    .set    FPSR_EXCEPT,USER_FPSR+2    |     FPSR exception
    .set    FPSR_AEXCEPT,USER_FPSR+3    |     FPSR accrued exception
    .set    USER_FPIAR,LV+72        | saved user FPIAR
    .set    FP_SCR1,LV+76        | room for a temporary float value
    .set    FP_SCR2,LV+92        | room for a temporary float value
    .set    L_SCR1,LV+108        | room for a temporary long value
    .set    L_SCR2,LV+112        | room for a temporary long value
    .set    STORE_FLG,LV+116
    .set    BINDEC_FLG,LV+117        | used in bindec
    .set    DNRM_FLG,LV+118        | used in res_func
    .set    RES_FLG,LV+119        | used in res_func
    .set    DY_MO_FLG,LV+120        | dyadic/monadic flag
    .set    UFLG_TMP,LV+121        | temporary for uflag errata
    .set    CU_ONLY,LV+122        | cu-only flag
    .set    VER_TMP,LV+123        | temp holding for version number
    .set    L_SCR3,LV+124        | room for a temporary long value
    .set    FP_SCR3,LV+128        | room for a temporary float value
    .set    FP_SCR4,LV+144        | room for a temporary float value
    .set    FP_SCR5,LV+160        | room for a temporary float value
    .set    FP_SCR6,LV+176
|
|NEXT        equ    LV+192        ;need to increase LOCAL_SIZE
|
|--------------------------------------------------------------------------
|
|    fsave offsets and bit definitions
|
|    Offsets are defined from the end of an fsave because the last 10
|    words of a busy frame are the same as the unimplemented frame.
|
    .set    CU_SAVEPC,LV-92        | micro-pc for CU (1 byte)
    .set    FPR_DIRTY_BITS,LV-91        | fpr dirty bits
|
    .set    WBTEMP,LV-76        | write back temp (12 bytes)
    .set    WBTEMP_EX,WBTEMP        | wbtemp sign and exponent (2 bytes)
    .set    WBTEMP_HI,WBTEMP+4    | wbtemp mantissa [63:32] (4 bytes)
    .set    WBTEMP_LO,WBTEMP+8    | wbtemp mantissa [31:00] (4 bytes)
|
    .set    WBTEMP_SGN,WBTEMP+2    | used to store sign
|
    .set    FPSR_SHADOW,LV-64        | fpsr shadow reg
|
    .set    FPIARCU,LV-60        | Instr. addr. reg. for CU (4 bytes)
|
    .set    CMDREG2B,LV-52        | cmd reg for machine 2
    .set    CMDREG3B,LV-48        | cmd reg for E3 exceptions (2 bytes)
|
    .set    NMNEXC,LV-44        | NMNEXC (unsup,snan bits only)
    .set    nmn_unsup_bit,1    | 
    .set    nmn_snan_bit,0    | 
|
    .set    NMCEXC,LV-43        | NMNEXC & NMCEXC
    .set    nmn_operr_bit,7
    .set    nmn_ovfl_bit,6
    .set    nmn_unfl_bit,5
    .set    nmc_unsup_bit,4
    .set    nmc_snan_bit,3
    .set    nmc_operr_bit,2
    .set    nmc_ovfl_bit,1
    .set    nmc_unfl_bit,0
|
    .set    STAG,LV-40        | source tag (1 byte)
    .set    WBTEMP_GRS,LV-40        | alias wbtemp guard, round, sticky
    .set    guard_bit,1        | guard bit is bit number 1
    .set    round_bit,0        | round bit is bit number 0
    .set    stag_mask,0xE0        | upper 3 bits are source tag type
    .set    denorm_bit,7        | bit determines if denorm or unnorm
    .set    etemp15_bit,4        | etemp exponent bit #15
    .set    wbtemp66_bit,2        | wbtemp mantissa bit #66
    .set    wbtemp1_bit,1        | wbtemp mantissa bit #1
    .set    wbtemp0_bit,0        | wbtemp mantissa bit #0
|
    .set    STICKY,LV-39        | holds sticky bit
    .set    sticky_bit,7
|
    .set    CMDREG1B,LV-36        | cmd reg for E1 exceptions (2 bytes)
    .set    kfact_bit,12        | distinguishes static/dynamic k-factor
|                    ;on packed move outs.  NOTE: this
|                    ;equate only works when CMDREG1B is in
|                    ;a register.
|
    .set    CMDWORD,LV-35        | command word in cmd1b
    .set    direction_bit,5        | bit 0 in opclass
    .set    size_bit2,12        | bit 2 in size field
|
    .set    DTAG,LV-32        | dest tag (1 byte)
    .set    dtag_mask,0xE0        | upper 3 bits are dest type tag
    .set    fptemp15_bit,4        | fptemp exponent bit #15
|
    .set    WB_BYTE,LV-31        | holds WBTE15 bit (1 byte)
    .set    wbtemp15_bit,4        | wbtemp exponent bit #15
|
    .set    E_BYTE,LV-28        | holds E1 and E3 bits (1 byte)
    .set    E1,2        | which bit is E1 flag
    .set    E3,1        | which bit is E3 flag
    .set    SFLAG,0        | which bit is S flag
|
    .set    T_BYTE,LV-27        | holds T and U bits (1 byte)
    .set    XFLAG,7        | which bit is X flag
    .set    UFLAG,5        | which bit is U flag
    .set    TFLAG,4        | which bit is T flag
|
    .set    FPTEMP,LV-24        | fptemp (12 bytes)
    .set    FPTEMP_EX,FPTEMP        | fptemp sign and exponent (2 bytes)
    .set    FPTEMP_HI,FPTEMP+4    | fptemp mantissa [63:32] (4 bytes)
    .set    FPTEMP_LO,FPTEMP+8    | fptemp mantissa [31:00] (4 bytes)
|
    .set    FPTEMP_SGN,FPTEMP+2    | used to store sign
|
    .set    ETEMP,LV-12        | etemp (12 bytes)
    .set    ETEMP_EX,ETEMP        | etemp sign and exponent (2 bytes)
    .set    ETEMP_HI,ETEMP+4        | etemp mantissa [63:32] (4 bytes)
    .set    ETEMP_LO,ETEMP+8        | etemp mantissa [31:00] (4 bytes)
|
    .set    ETEMP_SGN,ETEMP+2        | used to store sign
|
    .set    EXC_SR,4        | exception frame status register
    .set    EXC_PC,6        | exception frame program counter
    .set    EXC_VEC,10        | exception frame vector (format+vector#)
    .set    EXC_EA,12        | exception frame effective address
|
|--------------------------------------------------------------------------
|
|    FPSR/FPCR bits
|
    .set    neg_bit,3    |  negative result
    .set    z_bit,2    |  zero result
    .set    inf_bit,1    |  infinity result
    .set    nan_bit,0    |  not-a-number result
|
    .set    q_sn_bit,7    |  sign bit of quotient byte
|
    .set    bsun_bit,7    |  branch on unordered
    .set    snan_bit,6    |  signalling nan
    .set    operr_bit,5    |  operand error
    .set    ovfl_bit,4    |  overflow
    .set    unfl_bit,3    |  underflow
    .set    dz_bit,2    |  divide by zero
    .set    inex2_bit,1    |  inexact result 2
    .set    inex1_bit,0    |  inexact result 1
|
    .set    aiop_bit,7    |  accrued illegal operation
    .set    aovfl_bit,6    |  accrued overflow
    .set    aunfl_bit,5    |  accrued underflow
    .set    adz_bit,4    |  accrued divide by zero
    .set    ainex_bit,3    |  accrued inexact
|
|    FPSR individual bit masks
|
    .set    neg_mask,0x08000000
    .set    z_mask,0x04000000
    .set    inf_mask,0x02000000
    .set    nan_mask,0x01000000
|
    .set    bsun_mask,0x00008000    | 
    .set    snan_mask,0x00004000
    .set    operr_mask,0x00002000
    .set    ovfl_mask,0x00001000
    .set    unfl_mask,0x00000800
    .set    dz_mask,0x00000400
    .set    inex2_mask,0x00000200
    .set    inex1_mask,0x00000100
|
    .set    aiop_mask,0x00000080    |  accrued illegal operation
    .set    aovfl_mask,0x00000040    |  accrued overflow
    .set    aunfl_mask,0x00000020    |  accrued underflow
    .set    adz_mask,0x00000010    |  accrued divide by zero
    .set    ainex_mask,0x00000008    |  accrued inexact
|
|    FPSR combinations used in the FPSP
|
    .set    dzinf_mask,inf_mask+dz_mask+adz_mask
    .set    opnan_mask,nan_mask+operr_mask+aiop_mask
    .set    nzi_mask,0x01ffffff     |  clears N, Z, and I
    .set    unfinx_mask,unfl_mask+inex2_mask+aunfl_mask+ainex_mask
    .set    unf2inx_mask,unfl_mask+inex2_mask+ainex_mask
    .set    ovfinx_mask,ovfl_mask+inex2_mask+aovfl_mask+ainex_mask
    .set    inx1a_mask,inex1_mask+ainex_mask
    .set    inx2a_mask,inex2_mask+ainex_mask
    .set    snaniop_mask,nan_mask+snan_mask+aiop_mask
    .set    naniop_mask,nan_mask+aiop_mask
    .set    neginf_mask,neg_mask+inf_mask
    .set    infaiop_mask,inf_mask+aiop_mask
    .set    negz_mask,neg_mask+z_mask
    .set    opaop_mask,operr_mask+aiop_mask
    .set    unfl_inx_mask,unfl_mask+aunfl_mask+ainex_mask
    .set    ovfl_inx_mask,ovfl_mask+aovfl_mask+ainex_mask
|
|--------------------------------------------------------------------------
|
|    FPCR rounding modes
|
    .set    x_mode,0x00    |  round to extended
    .set    s_mode,0x40    |  round to single
    .set    d_mode,0x80    |  round to double
|
    .set    rn_mode,0x00    |  round nearest
    .set    rz_mode,0x10    |  round to zero
    .set    rm_mode,0x20    |  round to minus infinity
    .set    rp_mode,0x30    |  round to plus infinity
|
|--------------------------------------------------------------------------
|
|    Miscellaneous equates
|
    .set    signan_bit,6    |  signalling nan bit in mantissa
    .set    sign_bit,7
|
    .set    rnd_stky_bit,29    |  round/sticky bit of mantissa
|                this can only be used if in a data register
    .set    sx_mask,0x01800000 |  set s and x bits in word $48
|
    .set    LOCAL_EX,0
    .set    LOCAL_SGN,2
    .set    LOCAL_HI,4
    .set    LOCAL_LO,8
    .set    LOCAL_GRS,12    |  valid ONLY for FP_SCR1, FP_SCR2
|
|
    .set    norm_tag,0x00    |  tag bits in {7:5} position
    .set    zero_tag,0x20
    .set    inf_tag,0x40
    .set    nan_tag,0x60
    .set    dnrm_tag,0x80
|
|    fsave sizes and formats
|
    .set    VER_4,0x40        |  fpsp compatible version numbers
|                    are in the $40s {$40-$4f}
    .set    VER_40,0x40        |  original version number
    .set    VER_41,0x41        |  revision version number
|
    .set    BUSY_SIZE,100        |  size of busy frame
    .set    BUSY_FRAME,LV-BUSY_SIZE    |  start of busy frame
|
    .set    UNIMP_40_SIZE,44        |  size of orig unimp frame
    .set    UNIMP_41_SIZE,52        |  size of rev unimp frame
|
    .set    IDLE_SIZE,4        |  size of idle frame
    .set    IDLE_FRAME,LV-IDLE_SIZE    |  start of idle frame
|
|    exception vectors
|
    .set    TRACE_VEC,0x2024        |  trace trap
    .set    FLINE_VEC,0x002C        |  real F-line
    .set    UNIMP_VEC,0x202C        |  unimplemented
    .set    INEX_VEC,0x00C4
|
    .set    dbl_thresh,0x3C01
    .set    sgl_thresh,0x3F81
|

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ Read-Only ]

:: Make Dir ::
 
[ Read-Only ]
:: Make File ::
 
[ Read-Only ]

:: Go Dir ::
 
:: Go File ::
 

--[ c99shell v. 1.0 pre-release build #13 powered by Captain Crunch Security Team | http://ccteam.ru | Generation time: 0.0272 ]--