2 Copyright (C) 1996-1997 Id Software, Inc.
4 This program is free software; you can redistribute it and/or
5 modify it under the terms of the GNU General Public License
6 as published by the Free Software Foundation; either version 2
7 of the License, or (at your option) any later version.
9 This program is distributed in the hope that it will be useful,
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 See the GNU General Public License for more details.
15 You should have received a copy of the GNU General Public License
16 along with this program; if not, write to the Free Software
17 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
33 //-------------------------------------------------------
34 // global refresh variables
35 //-------------------------------------------------------
37 // FIXME
: put all refresh variables into one contiguous block. Make into one
38 // big structure
, like cl
or sv?
41 .globl C(d_sdivzstepu)
42 .globl C(d_tdivzstepu)
44 .globl C(d_sdivzstepv)
45 .globl C(d_tdivzstepv)
47 .globl C(d_sdivzorigin)
48 .globl C(d_tdivzorigin)
50 C
(d_sdivzstepu
): .single 0
51 C
(d_tdivzstepu
): .single 0
52 C
(d_zistepu
): .single 0
53 C
(d_sdivzstepv
): .single 0
54 C
(d_tdivzstepv
): .single 0
55 C
(d_zistepv
): .single 0
56 C
(d_sdivzorigin
): .single 0
57 C
(d_tdivzorigin
): .single 0
58 C
(d_ziorigin
): .single 0
70 .globl C(d_viewbuffer)
75 C
(cacheblock
): .long 0
76 C
(cachewidth
): .long 0
77 C
(d_viewbuffer
): .long 0
78 C
(d_pzbuffer
): .long 0
79 C
(d_zrowbytes
): .long 0
83 //-------------------------------------------------------
85 //-------------------------------------------------------
89 .globl pbase, s, t, sfracf, tfracf, snext, tnext
90 .globl spancountminus1, zi16stepu, sdivz16stepu, tdivz16stepu
91 .globl zi8stepu, sdivz8stepu, tdivz8stepu, pz
103 sdivz16stepu
: .long 0
104 tdivz16stepu
: .long 0
105 spancountminus1
: .long 0
111 //-------------------------------------------------------
112 // local variables for d_draw16.s
113 //-------------------------------------------------------
115 .globl reciprocal_table_16, entryvec_table_16
116 // 1/2, 1/3, 1/4, 1/5, 1/6, 1/7, 1/8, 1/9, 1/10, 1/11, 1/12, 1/13,
117 // 1/14, and 1/15 in
0.32 form
118 reciprocal_table_16
: .long 0x40000000, 0x2aaaaaaa, 0x20000000
119 .long 0x19999999, 0x15555555, 0x12492492
120 .long 0x10000000, 0xe38e38e, 0xccccccc, 0xba2e8ba
121 .long 0xaaaaaaa, 0x9d89d89, 0x9249249, 0x8888888
141 entryvec_table_16
: .long 0, Entry2_16, Entry3_16, Entry4_16
142 .long Entry5_16, Entry6_16, Entry7_16, Entry8_16
143 .long Entry9_16, Entry10_16, Entry11_16, Entry12_16
144 .long Entry13_16, Entry14_16, Entry15_16, Entry16_16
146 //-------------------------------------------------------
147 // local variables for d_parta.s
148 //-------------------------------------------------------
149 .globl DP_Count, DP_u, DP_v, DP_32768, DP_Color, DP_Pix, DP_EntryTable
153 DP_32768
: .single 32768.0
165 DP_EntryTable
: .long DP_1x1, DP_2x2, DP_3x3, DP_4x4
168 // advancetable is
8 bytes
, but points to the middle of that range so negative
171 .globl advancetable, sstep, tstep, pspantemp, counttemp, jumptemp
172 advancetable
: .long 0, 0
180 // 1/2, 1/3, 1/4, 1/5, 1/6, and 1/7 in
0.32 form
181 .globl reciprocal_table, entryvec_table
182 reciprocal_table
: .long 0x40000000, 0x2aaaaaaa, 0x20000000
183 .long 0x19999999, 0x15555555, 0x12492492
195 entryvec_table
: .long 0, Entry2_8, Entry3_8, Entry4_8
196 .long Entry5_8, Entry6_8, Entry7_8, Entry8_8
208 .globl spr8entryvec_table
209 spr8entryvec_table
: .long 0, Spr8Entry2_8, Spr8Entry3_8, Spr8Entry4_8
210 .long Spr8Entry5_8, Spr8Entry6_8, Spr8Entry7_8, Spr8Entry8_8