view src/gba/GBAGfx.cpp @ 38:b374503a5b31

video does not appear to de-sync after 3 minutes of playing and several random battles.
author Robert McIntyre <rlm@mit.edu>
date Mon, 05 Mar 2012 15:06:22 -0600
parents f9f4f1b99eed
children
line wrap: on
line source
1 #include "../Port.h"
2 #include "GBAGfx.h"
4 int coeff[32] = {
5 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,
6 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16
7 };
9 // some of the rendering code in gfx.h (such as mode 0 line 1298)
10 // renders outside the given buffer (past 239) which corrupts other memory,
11 // so rather than find all places in that code that need to be fixed,
12 // just give it enough extra scratch space to use
14 u32 line0[240+LINE_BUFFER_OVERFLOW_LEEWAY];
15 u32 line1[240+LINE_BUFFER_OVERFLOW_LEEWAY];
16 u32 line2[240+LINE_BUFFER_OVERFLOW_LEEWAY];
17 u32 line3[240+LINE_BUFFER_OVERFLOW_LEEWAY];
18 u32 lineOBJ[240+LINE_BUFFER_OVERFLOW_LEEWAY];
19 u32 lineOBJWin[240+LINE_BUFFER_OVERFLOW_LEEWAY];
20 u32 lineMix[240+LINE_BUFFER_OVERFLOW_LEEWAY];
21 bool gfxInWin0[240+LINE_BUFFER_OVERFLOW_LEEWAY];
22 bool gfxInWin1[240+LINE_BUFFER_OVERFLOW_LEEWAY];
24 int gfxBG2Changed = 0;
25 int gfxBG3Changed = 0;
27 int gfxBG2X = 0;
28 int gfxBG2Y = 0;
29 int gfxBG2LastX = 0;
30 int gfxBG2LastY = 0;
31 int gfxBG3X = 0;
32 int gfxBG3Y = 0;
33 int gfxBG3LastX = 0;
34 int gfxBG3LastY = 0;
35 int gfxLastVCOUNT = 0;