# tss.h

Go to the documentation of this file.

    00001 /*****************************************************************************************
    00002  Copyright (c) 2002-2004 The UbixOS Project
    00003  All rights reserved.
    00004
    00005  Redistribution and use in source and binary forms, with or without modification, are
    00006  permitted provided that the following conditions are met:
    00007
    00008  Redistributions of source code must retain the above copyright notice, this list of
    00009  conditions, the following disclaimer and the list of authors.  Redistributions in binary
    00010  form must reproduce the above copyright notice, this list of conditions, the following
    00011  disclaimer and the list of authors in the documentation and/or other materials provided
    00012  with the distribution. Neither the name of the UbixOS Project nor the names of its
    00013  contributors may be used to endorse or promote products derived from this software
    00014  without specific prior written permission.
    00015
    00016  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
    00017  EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
    00018  MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
    00019  THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
    00020  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
    00021  OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
    00022  HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
    00023  TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
    00024  SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
    00025
    00026  $Id: tss_8h-source.html 88 2016-01-12 00:11:29Z reddawg $
    00027
    00028 *****************************************************************************************/
    00029
    00030 #ifndef _TSS_H
    00031 #define _TSS_H
    00032
    00033 #include <ubixos/types.h>
    00034
    00035 struct tssStruct {
    00036   short back_link;
    00037   short back_link_reserved;
    00038   long  esp0;
    00039   short ss0;
    00040   short ss0_reserved;
    00041   long  esp1;
    00042   short ss1;
    00043   short ss1_reserved;
    00044   long  esp2;
    00045   short ss2;
    00046   short ss2_reserved;
    00047   long  cr3;
    00048   long  eip;
    00049   long  eflags;
    00050   long  eax,ecx,edx,ebx;
    00051   long  esp;
    00052   long  ebp;
    00053   long  esi;
    00054   long  edi;
    00055   short es;
    00056   short es_reserved;
    00057   short cs;
    00058   short cs_reserved;
    00059   short ss;
    00060   short ss_reserved;
    00061   short ds;
    00062   short ds_reserved;
    00063   short fs;
    00064   short fs_reserved;
    00065   short gs;
    00066   short gs_reserved;
    00067   short ldt;
    00068   short ldt_reserved;
    00069   short trace_bitmap;
    00070   short io_map;
    00071   char  io_space[8192];
    00072   };
    00073
    00074 struct i387Struct {
    00075   long cwd;
    00076   long swd;
    00077   long twd;
    00078   long fip;
    00079   long fcs;
    00080   long foo;
    00081   long fos;
    00082   long st_space[20];   /* 8*10 bytes for each FP-reg = 80 bytes */
    00083   };
    00084
    00085 struct i386_frame {
    00086   uInt32 gs;
    00087   uInt32 fs;
    00088   uInt32 es;
    00089   uInt32 ds;
    00090   uInt32 ss;
    00091   uInt32 edi;
    00092   uInt32 esi;
    00093   uInt32 ebp;
    00094   uInt32 esp;
    00095   uInt32 ebx;
    00096   uInt32 edx;
    00097   uInt32 ecx;
    00098   uInt32 eax;
    00099   /*
    00100   uInt32 vector;
    00101   uInt32 error_code;
    00102   */
    00103   uInt32 eip;
    00104   uInt32 cs;
    00105   uInt32 flags;
    00106   uInt32 user_esp;
    00107   uInt32 user_ss;
    00108   };
    00109
    00110 #endif
    00111
    00112 /***
    00113  $Log: tss_8h-source.html,v $
    00113  Revision 1.7  2006/12/15 17:47:07  reddawg
    00113  Updates
    00113
    00114  Revision 1.1.1.1  2006/06/01 12:46:15  reddawg
    00115  ubix2
    00116
    00117  Revision 1.2  2005/10/12 00:13:37  reddawg
    00118  Removed
    00119
    00120  Revision 1.1.1.1  2005/09/26 17:23:53  reddawg
    00121  no message
    00122
    00123  Revision 1.6  2004/07/27 07:42:29  reddawg
    00124  *burp*
    00125
    00126  Revision 1.5  2004/07/27 07:40:41  reddawg
    00127  does it compile now?
    00128
    00129  Revision 1.4  2004/07/27 07:27:50  reddawg
    00130  chg: I was fooled thought we failed but it was a casting issue
    00131
    00132  Revision 1.3  2004/07/22 20:53:07  reddawg
    00133  atkbd: fixed problem
    00134
    00135  Revision 1.2  2004/05/21 15:12:17  reddawg
    00136  Cleaned up
    00137
    00138
    00139  END
    00140  ***/