home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / sd386v50.zip / sd386src.zip / REGWIN.H < prev    next >
Text File  |  1993-08-11  |  3KB  |  73 lines

  1. /*****************************************************************************/
  2. /* File:                                             IBM INTERNAL USE ONLY   */
  3. /*   Regwin.h                                                                */
  4. /*                                                                           */
  5. /* Description:                                                              */
  6. /*   Register window stuff.                                                  */
  7. /*                                                                           */
  8. /* History:                                                                  */
  9. /*                                                                           */
  10. /*...Release 1.00 (Pre-release 107 11/13/91)                                 */
  11. /*...                                                                        */
  12. /*... 11/18/91  401   Srinivas  Floating point Register Display.             */
  13. /*...                                                                        */
  14. /*****************************************************************************/
  15.  
  16. typedef struct
  17. {
  18.  UCHAR Mantisa[8];
  19.  UCHAR Exp[2];
  20. } REG80BIT;
  21.  
  22. typedef struct _COPROCESSORREGS
  23. {
  24.  USHORT   ControlWord;
  25.  USHORT   Reserved1;
  26.  USHORT   StatusWord;
  27.  USHORT   Reserved2;
  28.  USHORT   TagWord;
  29.  USHORT   Reserved3;
  30.  ULONG    IpOffset;
  31.  USHORT   CsSelector;
  32.  USHORT   Reserved4;
  33.  ULONG    OpOffset;
  34.  USHORT   OpSelector;
  35.  USHORT   Reserved5;
  36.  REG80BIT Stack[8];
  37. } COPROCESSORREGS;
  38.  
  39. #define FCincr 4                        /* Space in columns between 2 flags  */
  40. #define FC0 0                           /* 1st flag column position          */
  41. #define FC1 (FC0+FCincr)                /* 2nd flag column position          */
  42. #define FC2 (FC1+FCincr)                /* 3rd flag column position          */
  43. #define FC3 (FC2+FCincr)                /* 4th flag column position          */
  44. #define FC4 (FC3+FCincr)                /* 5th flag column position          */
  45. #define FC5 (FC4+FCincr)                /* 6th flag column position          */
  46. #define HIGHLIGHT 0x8                   /* Mask for toggling high light bit  */
  47.  
  48. #define NO32REGS 9                      /* # of 32-bit regs in window        */
  49. #define NO16REGS 6                      /* # of 16-bit regs in window        */
  50. #define NOFREGS 7                       /* # of flags in window              */
  51. #define REGSWINWIDTH  16                /* Register Window width             */
  52. #define REGSWINLENGTH 20                /* Register Window Length            */
  53. #define REG16MODE 1                     /* editing a 16-bit reg              */
  54. #define REG32MODE 2                     /* editing a 32-bit reg              */
  55. #define FLAGSMODE 3                     /* editing a flag bit                */
  56.  
  57. #define COREGSWINWIDTH  33              /* Register Window width             */
  58. #define COREGSWINLENGTH 24              /* Register Window Length            */
  59. #define StatusRow 20
  60. #define ControlRow 22
  61. #define SPACE    0x20
  62. #define ZERO     0x30
  63. #define EMPTY    0x2E
  64. #define TAG_VALID  0
  65. #define TAG_ZERO   1
  66. #define TAG_INFIN  2
  67. #define TAG_EMPTY  3
  68. #define PRINTLEN   27
  69.  
  70. #define REPAINT    0
  71. #define REGS386BIT 1
  72. #define REGS387BIT 2
  73.