DGen/SDL
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
Macros | Functions | Variables
ras-drawplane.h File Reference

Go to the source code of this file.

Macros

#define LOOKUP_YSCROLL_REC(rec_no)
#define LOOKUP_YSCROLL_REC(rec_no)
#define LOOKUP_YSCROLL_REC(rec_no)
#define LOOKUP_YSCROLL_REC(rec_no)
#define LOOKUP_YSCROLL_REC(rec_no)

Functions

 if (reg[18]&0x80)
 if (reg[12]&1)
 if (two_cell_vscroll==0) LOOKUP_YSCROLL_REC(PLANE)
 for (x=-1;(x<=w);x++)

Variables

int xsize
int ysize = sizes[((reg[16] >> 4) & 3)]
int x
int scan = 0
int w
int xstart
static int sizes [4] = { 32, 64, 64, 128 }
unsigned which
unsigned char * where = dest + (xstart + (hscroll_amount & 7)) * (int) Bpp
unsigned char * hscroll_rec_ptr = (vram + ((reg[13] << 10) & 0xfc00))
unsigned char * tiles = (vram + (reg[2] << 10))
unsigned char * tile_line = NULL
int xoff = ((-(hscroll_amount>>3) - 1)<<1) & xoff_mask
int yoff
int xoff_mask = xsize - 1
int hscroll_amount
int yscroll_amount = 0
uint8_t two_cell_vscroll = 0

Macro Definition Documentation

#define LOOKUP_YSCROLL_REC (   rec_no)
Value:
do { \
yscroll_amount = get_word(vsram + rec_no * 2) & 0x7ff; \
\
/* interlace ? */ \
if (reg[12] & 2) \
yscroll_amount >>= 1; \
\
/* Offset for the line */ \
yscroll_amount += line; \
\
yoff = ((yscroll_amount >> 3) & (ysize - 1)); \
tile_line = (tiles + ((xsize * yoff) & 0x1fff)); \
scan = (yscroll_amount & 7); \
} \
while (0)
#define LOOKUP_YSCROLL_REC (   rec_no)
Value:
do { \
yscroll_amount = get_word(vsram + rec_no * 2) & 0x7ff; \
\
/* interlace ? */ \
if (reg[12] & 2) \
yscroll_amount >>= 1; \
\
/* Offset for the line */ \
yscroll_amount += line; \
\
yoff = ((yscroll_amount >> 3) & (ysize - 1)); \
tile_line = (tiles + ((xsize * yoff) & 0x1fff)); \
scan = (yscroll_amount & 7); \
} \
while (0)
#define LOOKUP_YSCROLL_REC (   rec_no)
Value:
do { \
yscroll_amount = get_word(vsram + rec_no * 2) & 0x7ff; \
\
/* interlace ? */ \
if (reg[12] & 2) \
yscroll_amount >>= 1; \
\
/* Offset for the line */ \
yscroll_amount += line; \
\
yoff = ((yscroll_amount >> 3) & (ysize - 1)); \
tile_line = (tiles + ((xsize * yoff) & 0x1fff)); \
scan = (yscroll_amount & 7); \
} \
while (0)
#define LOOKUP_YSCROLL_REC (   rec_no)
Value:
do { \
yscroll_amount = get_word(vsram + rec_no * 2) & 0x7ff; \
\
/* interlace ? */ \
if (reg[12] & 2) \
yscroll_amount >>= 1; \
\
/* Offset for the line */ \
yscroll_amount += line; \
\
yoff = ((yscroll_amount >> 3) & (ysize - 1)); \
tile_line = (tiles + ((xsize * yoff) & 0x1fff)); \
scan = (yscroll_amount & 7); \
} \
while (0)
#define LOOKUP_YSCROLL_REC (   rec_no)
Value:
do { \
yscroll_amount = get_word(vsram + rec_no * 2) & 0x7ff; \
\
/* interlace ? */ \
if (reg[12] & 2) \
yscroll_amount >>= 1; \
\
/* Offset for the line */ \
yscroll_amount += line; \
\
yoff = ((yscroll_amount >> 3) & (ysize - 1)); \
tile_line = (tiles + ((xsize * yoff) & 0x1fff)); \
scan = (yscroll_amount & 7); \
} \
while (0)

Function Documentation

for ( x  = -1; (x <= w); x++)
if ( reg &  0x80[18])
if ( reg &  1[12])
if ( two_cell_vscroll  = =0)

Variable Documentation

int hscroll_amount
hscroll_rec_ptr = (vram + ((reg[13] << 10) & 0xfc00))
int scan = 0
int sizes[4] = { 32, 64, 64, 128 }
static
unsigned char * tile_line = NULL
tiles = (vram + (reg[2] << 10))
two_cell_vscroll = 0
int w
where = dest + (xstart + (hscroll_amount & 7)) * (int) Bpp
unsigned which
int x
xoff = ((-(hscroll_amount>>3) - 1)<<1) & xoff_mask
xoff_mask = xsize - 1
int xsize
int xstart
int yoff
int yscroll_amount = 0
ysize = sizes[((reg[16] >> 4) & 3)]