static int HighCacheA[41+1]; // caches for high layers\r
static int HighCacheB[41+1];\r
static int HighCacheS[80+1]; // and sprites\r
-static int HighPreSpr[80*2+1]; // slightly preprocessed sprites\r
+int HighPreSpr[80*2+1]; // slightly preprocessed sprites\r
int *HighCacheS_ptr;\r
\r
#define MAX_LINE_SPRITES 30\r
-static unsigned char HighLnSpr[240][2 + MAX_LINE_SPRITES]; // sprite_count, tile_count, [spritep]...\r
+unsigned char HighLnSpr[240][2 + MAX_LINE_SPRITES]; // sprite_count, tile_count, [spritep]...\r
\r
int rendstatus = 0;\r
int DrawScanline = 0;\r
#ifdef _ASM_DRAW_C\r
void DrawWindow(int tstart, int tend, int prio, int sh);\r
void BackFill(int reg7, int sh);\r
-void DrawSprite(int *sprite, int sh, int as);\r
+void DrawAllSprites(int *hcache, int prio, int sh);\r
void DrawTilesFromCache(int *hc, int sh, int rlim);\r
void DrawSpritesFromCache(int *hc, int prio, int sh);\r
void DrawLayer(int plane_sh, int *hcache, int cellskip, int maxcells);\r
// Index + 0 : hhhhvvvv ----hhvv yyyyyyyy yyyyyyyy // v, h: vert./horiz. size\r
// Index + 4 : xxxxxxxx xxxxxxxx pccvhnnn nnnnnnnn // x: x coord + 8\r
\r
-static void PrepareSprites(int full)\r
+void PrepareSprites(int full)\r
{\r
struct PicoVideo *pvid=&Pico.video;\r
int u,link=0;\r
}\r
}\r
\r
+#ifndef _ASM_DRAW_C\r
static void DrawAllSprites(int *hcache, int prio, int sh)\r
{\r
int rs = rendstatus, scan = DrawScanline;\r
\r
// --------------------------------------------\r
\r
-#ifndef _ASM_DRAW_C\r
static void BackFill(int reg7, int sh)\r
{\r
unsigned int back;\r