asm_i386.h 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  1. /*
  2. Copyright (C) 1996-1997 Id Software, Inc.
  3. This program is free software; you can redistribute it and/or
  4. modify it under the terms of the GNU General Public License
  5. as published by the Free Software Foundation; either version 2
  6. of the License, or (at your option) any later version.
  7. This program is distributed in the hope that it will be useful,
  8. but WITHOUT ANY WARRANTY; without even the implied warranty of
  9. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
  10. See the GNU General Public License for more details.
  11. You should have received a copy of the GNU General Public License
  12. along with this program; if not, write to the Free Software
  13. Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
  14. */
  15. #ifndef __ASM_I386__
  16. #define __ASM_I386__
  17. #ifdef ELF
  18. #define C(label) label
  19. #else
  20. #define C(label) _##label
  21. #endif
  22. //
  23. // !!! note that this file must match the corresponding C structures at all
  24. // times !!!
  25. //
  26. // plane_t structure
  27. // !!! if this is changed, it must be changed in model.h too !!!
  28. // !!! if the size of this is changed, the array lookup in SV_HullPointContents
  29. // must be changed too !!!
  30. #define pl_normal 0
  31. #define pl_dist 12
  32. #define pl_type 16
  33. #define pl_signbits 17
  34. #define pl_pad 18
  35. #define pl_size 20
  36. // hull_t structure
  37. // !!! if this is changed, it must be changed in model.h too !!!
  38. #define hu_clipnodes 0
  39. #define hu_planes 4
  40. #define hu_firstclipnode 8
  41. #define hu_lastclipnode 12
  42. #define hu_clip_mins 16
  43. #define hu_clip_maxs 28
  44. #define hu_size 40
  45. // dnode_t structure
  46. // !!! if this is changed, it must be changed in bspfile.h too !!!
  47. #define nd_planenum 0
  48. #define nd_children 4
  49. #define nd_mins 8
  50. #define nd_maxs 20
  51. #define nd_firstface 32
  52. #define nd_numfaces 36
  53. #define nd_size 40
  54. // sfxcache_t structure
  55. // !!! if this is changed, it much be changed in sound.h too !!!
  56. #define sfxc_length 0
  57. #define sfxc_loopstart 4
  58. #define sfxc_speed 8
  59. #define sfxc_width 12
  60. #define sfxc_stereo 16
  61. #define sfxc_data 20
  62. // channel_t structure
  63. // !!! if this is changed, it much be changed in sound.h too !!!
  64. #define ch_sfx 0
  65. #define ch_leftvol 4
  66. #define ch_rightvol 8
  67. #define ch_end 12
  68. #define ch_pos 16
  69. #define ch_looping 20
  70. #define ch_entnum 24
  71. #define ch_entchannel 28
  72. #define ch_origin 32
  73. #define ch_dist_mult 44
  74. #define ch_master_vol 48
  75. #define ch_size 52
  76. // portable_samplepair_t structure
  77. // !!! if this is changed, it much be changed in sound.h too !!!
  78. #define psp_left 0
  79. #define psp_right 4
  80. #define psp_size 8
  81. #endif