You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
435 lines
11 KiB
435 lines
11 KiB
; |
|
; qasm.inc |
|
; |
|
; Include file for asm routines. |
|
; |
|
|
|
; |
|
; !!! note that this file must match the corresponding C structures at all |
|
; times !!! |
|
; |
|
|
|
; set to 0 to skip all asm code |
|
id386 equ 1 |
|
|
|
; !!! must be kept the same as in d_iface.h !!! |
|
TRANSPARENT_COLOR equ 255 |
|
|
|
ifndef GLQUAKE |
|
externdef _d_zistepu:dword |
|
externdef _d_pzbuffer:dword |
|
externdef _d_zistepv:dword |
|
externdef _d_zrowbytes:dword |
|
externdef _d_ziorigin:dword |
|
externdef _r_turb_s:dword |
|
externdef _r_turb_t:dword |
|
externdef _r_turb_pdest:dword |
|
externdef _r_turb_spancount:dword |
|
externdef _r_turb_turb:dword |
|
externdef _r_turb_pbase:dword |
|
externdef _r_turb_sstep:dword |
|
externdef _r_turb_tstep:dword |
|
externdef _r_bmodelactive:dword |
|
externdef _d_sdivzstepu:dword |
|
externdef _d_tdivzstepu:dword |
|
externdef _d_sdivzstepv:dword |
|
externdef _d_tdivzstepv:dword |
|
externdef _d_sdivzorigin:dword |
|
externdef _d_tdivzorigin:dword |
|
externdef _sadjust:dword |
|
externdef _tadjust:dword |
|
externdef _bbextents:dword |
|
externdef _bbextentt:dword |
|
externdef _cacheblock:dword |
|
externdef _d_viewbuffer:dword |
|
externdef _cachewidth:dword |
|
externdef _d_pzbuffer:dword |
|
externdef _d_zrowbytes:dword |
|
externdef _d_zwidth:dword |
|
externdef _d_scantable:dword |
|
externdef _r_lightptr:dword |
|
externdef _r_numvblocks:dword |
|
externdef _prowdestbase:dword |
|
externdef _pbasesource:dword |
|
externdef _r_lightwidth:dword |
|
externdef _lightright:dword |
|
externdef _lightrightstep:dword |
|
externdef _lightdeltastep:dword |
|
externdef _lightdelta:dword |
|
externdef _lightright:dword |
|
externdef _lightdelta:dword |
|
externdef _sourcetstep:dword |
|
externdef _surfrowbytes:dword |
|
externdef _lightrightstep:dword |
|
externdef _lightdeltastep:dword |
|
externdef _r_sourcemax:dword |
|
externdef _r_stepback:dword |
|
externdef _colormap:dword |
|
externdef _blocksize:dword |
|
externdef _sourcesstep:dword |
|
externdef _lightleft:dword |
|
externdef _blockdivshift:dword |
|
externdef _blockdivmask:dword |
|
externdef _lightleftstep:dword |
|
externdef _r_origin:dword |
|
externdef _r_ppn:dword |
|
externdef _r_pup:dword |
|
externdef _r_pright:dword |
|
externdef _ycenter:dword |
|
externdef _xcenter:dword |
|
externdef _d_vrectbottom_particle:dword |
|
externdef _d_vrectright_particle:dword |
|
externdef _d_vrecty:dword |
|
externdef _d_vrectx:dword |
|
externdef _d_pix_shift:dword |
|
externdef _d_pix_min:dword |
|
externdef _d_pix_max:dword |
|
externdef _d_y_aspect_shift:dword |
|
externdef _screenwidth:dword |
|
externdef _r_leftclipped:dword |
|
externdef _r_leftenter:dword |
|
externdef _r_rightclipped:dword |
|
externdef _r_rightenter:dword |
|
externdef _modelorg:dword |
|
externdef _xscale:dword |
|
externdef _r_refdef:dword |
|
externdef _yscale:dword |
|
externdef _r_leftexit:dword |
|
externdef _r_rightexit:dword |
|
externdef _r_lastvertvalid:dword |
|
externdef _cacheoffset:dword |
|
externdef _newedges:dword |
|
externdef _removeedges:dword |
|
externdef _r_pedge:dword |
|
externdef _r_framecount:dword |
|
externdef _r_u1:dword |
|
externdef _r_emitted:dword |
|
externdef _edge_p:dword |
|
externdef _surface_p:dword |
|
externdef _surfaces:dword |
|
externdef _r_lzi1:dword |
|
externdef _r_v1:dword |
|
externdef _r_ceilv1:dword |
|
externdef _r_nearzi:dword |
|
externdef _r_nearzionly:dword |
|
externdef _edge_aftertail:dword |
|
externdef _edge_tail:dword |
|
externdef _current_iv:dword |
|
externdef _edge_head_u_shift20:dword |
|
externdef _span_p:dword |
|
externdef _edge_head:dword |
|
externdef _fv:dword |
|
externdef _edge_tail_u_shift20:dword |
|
externdef _r_apverts:dword |
|
externdef _r_anumverts:dword |
|
externdef _aliastransform:dword |
|
externdef _r_avertexnormals:dword |
|
externdef _r_plightvec:dword |
|
externdef _r_ambientlight:dword |
|
externdef _r_shadelight:dword |
|
externdef _aliasxcenter:dword |
|
externdef _aliasycenter:dword |
|
externdef _a_sstepxfrac:dword |
|
externdef _r_affinetridesc:dword |
|
externdef _acolormap:dword |
|
externdef _d_pcolormap:dword |
|
externdef _r_affinetridesc:dword |
|
externdef _d_sfrac:dword |
|
externdef _d_ptex:dword |
|
externdef _d_pedgespanpackage:dword |
|
externdef _d_tfrac:dword |
|
externdef _d_light:dword |
|
externdef _d_zi:dword |
|
externdef _d_pdest:dword |
|
externdef _d_pz:dword |
|
externdef _d_aspancount:dword |
|
externdef _erroradjustup:dword |
|
externdef _errorterm:dword |
|
externdef _d_xdenom:dword |
|
externdef _r_p0:dword |
|
externdef _r_p1:dword |
|
externdef _r_p2:dword |
|
externdef _a_tstepxfrac:dword |
|
externdef _r_sstepx:dword |
|
externdef _r_tstepx:dword |
|
externdef _a_ststepxwhole:dword |
|
externdef _zspantable:dword |
|
externdef _skintable:dword |
|
externdef _r_zistepx:dword |
|
externdef _erroradjustdown:dword |
|
externdef _d_countextrastep:dword |
|
externdef _ubasestep:dword |
|
externdef _a_ststepxwhole:dword |
|
externdef _a_tstepxfrac:dword |
|
externdef _r_lstepx:dword |
|
externdef _a_spans:dword |
|
externdef _erroradjustdown:dword |
|
externdef _d_pdestextrastep:dword |
|
externdef _d_pzextrastep:dword |
|
externdef _d_sfracextrastep:dword |
|
externdef _d_ptexextrastep:dword |
|
externdef _d_countextrastep:dword |
|
externdef _d_tfracextrastep:dword |
|
externdef _d_lightextrastep:dword |
|
externdef _d_ziextrastep:dword |
|
externdef _d_pdestbasestep:dword |
|
externdef _d_pzbasestep:dword |
|
externdef _d_sfracbasestep:dword |
|
externdef _d_ptexbasestep:dword |
|
externdef _ubasestep:dword |
|
externdef _d_tfracbasestep:dword |
|
externdef _d_lightbasestep:dword |
|
externdef _d_zibasestep:dword |
|
externdef _zspantable:dword |
|
externdef _r_lstepy:dword |
|
externdef _r_sstepy:dword |
|
externdef _r_tstepy:dword |
|
externdef _r_zistepy:dword |
|
externdef _D_PolysetSetEdgeTable:dword |
|
externdef _D_RasterizeAliasPolySmooth:dword |
|
|
|
externdef float_point5:dword |
|
externdef Float2ToThe31nd:dword |
|
externdef izistep:dword |
|
externdef izi:dword |
|
externdef FloatMinus2ToThe31nd:dword |
|
externdef float_1:dword |
|
externdef float_particle_z_clip:dword |
|
externdef float_minus_1:dword |
|
externdef float_0:dword |
|
externdef fp_16:dword |
|
externdef fp_64k:dword |
|
externdef fp_1m:dword |
|
externdef fp_1m_minus_1:dword |
|
externdef fp_8 :dword |
|
externdef entryvec_table:dword |
|
externdef advancetable:dword |
|
externdef sstep:dword |
|
externdef tstep:dword |
|
externdef pspantemp:dword |
|
externdef counttemp:dword |
|
externdef jumptemp:dword |
|
externdef reciprocal_table:dword |
|
externdef DP_Count:dword |
|
externdef DP_u:dword |
|
externdef DP_v:dword |
|
externdef DP_32768:dword |
|
externdef DP_Color:dword |
|
externdef DP_Pix:dword |
|
externdef DP_EntryTable:dword |
|
externdef pbase:dword |
|
externdef s:dword |
|
externdef t:dword |
|
externdef sfracf:dword |
|
externdef tfracf:dword |
|
externdef snext:dword |
|
externdef tnext:dword |
|
externdef spancountminus1:dword |
|
externdef zi16stepu:dword |
|
externdef sdivz16stepu:dword |
|
externdef tdivz16stepu:dword |
|
externdef zi8stepu:dword |
|
externdef sdivz8stepu:dword |
|
externdef tdivz8stepu:dword |
|
externdef reciprocal_table_16:dword |
|
externdef entryvec_table_16:dword |
|
externdef fp_64kx64k:dword |
|
externdef pz:dword |
|
externdef spr8entryvec_table:dword |
|
endif |
|
|
|
externdef _fpu_ceil_cw:dword |
|
externdef _fpu_chop_cw:dword |
|
externdef _snd_scaletable:dword |
|
externdef _paintbuffer:dword |
|
externdef _snd_linear_count:dword |
|
externdef _snd_p:dword |
|
externdef _snd_vol:dword |
|
externdef _snd_out:dword |
|
externdef _vright:dword |
|
externdef _vup:dword |
|
externdef _vpn:dword |
|
externdef _BOPS_Error:dword |
|
|
|
; plane_t structure |
|
; !!! if this is changed, it must be changed in model.h too !!! |
|
; !!! if the size of this is changed, the array lookup in SV_HullPointContents |
|
; must be changed too !!! |
|
pl_normal equ 0 |
|
pl_dist equ 12 |
|
pl_type equ 16 |
|
pl_signbits equ 17 |
|
pl_pad equ 18 |
|
pl_size equ 20 |
|
|
|
; hull_t structure |
|
; !!! if this is changed, it must be changed in model.h too !!! |
|
hu_clipnodes equ 0 |
|
hu_planes equ 4 |
|
hu_firstclipnode equ 8 |
|
hu_lastclipnode equ 12 |
|
hu_clip_mins equ 16 |
|
hu_clip_maxs equ 28 |
|
hu_size equ 40 |
|
|
|
; dnode_t structure |
|
; !!! if this is changed, it must be changed in bspfile.h too !!! |
|
nd_planenum equ 0 |
|
nd_children equ 4 |
|
nd_mins equ 8 |
|
nd_maxs equ 20 |
|
nd_firstface equ 32 |
|
nd_numfaces equ 36 |
|
nd_size equ 40 |
|
|
|
; sfxcache_t structure |
|
; !!! if this is changed, it much be changed in sound.h too !!! |
|
sfxc_length equ 0 |
|
sfxc_loopstart equ 4 |
|
sfxc_speed equ 8 |
|
sfxc_width equ 12 |
|
sfxc_stereo equ 16 |
|
sfxc_data equ 20 |
|
|
|
; channel_t structure |
|
; !!! if this is changed, it much be changed in sound.h too !!! |
|
ch_sfx equ 0 |
|
ch_leftvol equ 4 |
|
ch_rightvol equ 8 |
|
ch_end equ 12 |
|
ch_pos equ 16 |
|
ch_looping equ 20 |
|
ch_entnum equ 24 |
|
ch_entchannel equ 28 |
|
ch_origin equ 32 |
|
ch_dist_mult equ 44 |
|
ch_master_vol equ 48 |
|
ch_size equ 52 |
|
|
|
; portable_samplepair_t structure |
|
; !!! if this is changed, it much be changed in sound.h too !!! |
|
psp_left equ 0 |
|
psp_right equ 4 |
|
psp_size equ 8 |
|
|
|
; !!! if this is changed, it must be changed in r_local.h too !!! |
|
NEAR_CLIP equ 0.01 |
|
|
|
; !!! if this is changed, it must be changed in r_local.h too !!! |
|
CYCLE equ 128 |
|
|
|
; espan_t structure |
|
; !!! if this is changed, it must be changed in r_shared.h too !!! |
|
espan_t_u equ 0 |
|
espan_t_v equ 4 |
|
espan_t_count equ 8 |
|
espan_t_pnext equ 12 |
|
espan_t_size equ 16 |
|
|
|
; sspan_t structure |
|
; !!! if this is changed, it must be changed in d_local.h too !!! |
|
sspan_t_u equ 0 |
|
sspan_t_v equ 4 |
|
sspan_t_count equ 8 |
|
sspan_t_size equ 12 |
|
|
|
; spanpackage_t structure |
|
; !!! if this is changed, it must be changed in d_polyset.c too !!! |
|
spanpackage_t_pdest equ 0 |
|
spanpackage_t_pz equ 4 |
|
spanpackage_t_count equ 8 |
|
spanpackage_t_ptex equ 12 |
|
spanpackage_t_sfrac equ 16 |
|
spanpackage_t_tfrac equ 20 |
|
spanpackage_t_light equ 24 |
|
spanpackage_t_zi equ 28 |
|
spanpackage_t_size equ 32 |
|
|
|
; edge_t structure |
|
; !!! if this is changed, it must be changed in r_shared.h too !!! |
|
et_u equ 0 |
|
et_u_step equ 4 |
|
et_prev equ 8 |
|
et_next equ 12 |
|
et_surfs equ 16 |
|
et_nextremove equ 20 |
|
et_nearzi equ 24 |
|
et_owner equ 28 |
|
et_size equ 32 |
|
|
|
; surf_t structure |
|
; !!! if this is changed, it must be changed in r_shared.h too !!! |
|
SURF_T_SHIFT equ 6 |
|
st_next equ 0 |
|
st_prev equ 4 |
|
st_spans equ 8 |
|
st_key equ 12 |
|
st_last_u equ 16 |
|
st_spanstate equ 20 |
|
st_flags equ 24 |
|
st_data equ 28 |
|
st_entity equ 32 |
|
st_nearzi equ 36 |
|
st_insubmodel equ 40 |
|
st_d_ziorigin equ 44 |
|
st_d_zistepu equ 48 |
|
st_d_zistepv equ 52 |
|
st_pad equ 56 |
|
st_size equ 64 |
|
|
|
; clipplane_t structure |
|
; !!! if this is changed, it must be changed in r_local.h too !!! |
|
cp_normal equ 0 |
|
cp_dist equ 12 |
|
cp_next equ 16 |
|
cp_leftedge equ 20 |
|
cp_rightedge equ 21 |
|
cp_reserved equ 22 |
|
cp_size equ 24 |
|
|
|
; medge_t structure |
|
; !!! if this is changed, it must be changed in model.h too !!! |
|
me_v equ 0 |
|
me_cachededgeoffset equ 4 |
|
me_size equ 8 |
|
|
|
; mvertex_t structure |
|
; !!! if this is changed, it must be changed in model.h too !!! |
|
mv_position equ 0 |
|
mv_size equ 12 |
|
|
|
; refdef_t structure |
|
; !!! if this is changed, it must be changed in render.h too !!! |
|
rd_vrect equ 0 |
|
rd_aliasvrect equ 20 |
|
rd_vrectright equ 40 |
|
rd_vrectbottom equ 44 |
|
rd_aliasvrectright equ 48 |
|
rd_aliasvrectbottom equ 52 |
|
rd_vrectrightedge equ 56 |
|
rd_fvrectx equ 60 |
|
rd_fvrecty equ 64 |
|
rd_fvrectx_adj equ 68 |
|
rd_fvrecty_adj equ 72 |
|
rd_vrect_x_adj_shift20 equ 76 |
|
rd_vrectright_adj_shift20 equ 80 |
|
rd_fvrectright_adj equ 84 |
|
rd_fvrectbottom_adj equ 88 |
|
rd_fvrectright equ 92 |
|
rd_fvrectbottom equ 96 |
|
rd_horizontalFieldOfView equ 100 |
|
rd_xOrigin equ 104 |
|
rd_yOrigin equ 108 |
|
rd_vieworg equ 112 |
|
rd_viewangles equ 124 |
|
rd_ambientlight equ 136 |
|
rd_size equ 140 |
|
|
|
; mtriangle_t structure |
|
; !!! if this is changed, it must be changed in model.h too !!! |
|
mtri_facesfront equ 0 |
|
mtri_vertindex equ 4 |
|
mtri_size equ 16 ; !!! if this changes, array indexing in !!! |
|
; !!! d_polysa.s must be changed to match !!! |
|
mtri_shift equ 4 |
|
|
|
|