2 // very conservative and wrong
3 #define gput_fill(w, h) (23 + (4 + (w) / 16u) * (h))
4 #define gput_copy(w, h) ((w) * (h))
5 #define gput_poly_base() (23)
6 #define gput_poly_base_t() (gput_poly_base() + 90)
7 #define gput_poly_base_g() (gput_poly_base() + 144)
8 #define gput_poly_base_gt() (gput_poly_base() + 225)
9 #define gput_quad_base() gput_poly_base()
10 #define gput_quad_base_t() gput_poly_base_t()
11 #define gput_quad_base_g() gput_poly_base_g()
12 #define gput_quad_base_gt() gput_poly_base_gt()
13 #define gput_line(k) (8 + (k))
14 #define gput_sprite(w, h) (8 + ((w) / 2u) * (h))
16 // sort of a workaround for lack of proper fifo emulation
17 #define gput_sum(sum, cnt, new_cycles) do { \
18 sum += cnt; cnt = new_cycles; \