Category : C Source Code
Archive   : FLILIB.ZIP
Filename : AASCREEN.H

Output of file : AASCREEN.H contained in archive : FLILIB.ZIP
/* aascreen.h Copyright 1990 Dancing Flame, San Francisco */

#ifndef AASCREEN_H
#define AASCREEN_H

#ifndef AATYPES_H
#include "aatypes.h"
#endif /* AATYPES_H */

/* Graphics types */
typedef unsigned char Cmap;
typedef unsigned char Pixel;
typedef unsigned char Bitplane;

/* Constants pertaining to 320x200 256 color mode mostly */
#define AA_VGA_SCREEN ((Pixel *)0xa0000000)
#define AA_XMAX 320
#define AA_YMAX 200
#define AA_BPR 320
#define AA_COLORS 256

/* This structure is something we can draw on. A superset of Vcel
(and keep it that way or things break!) */
struct vscreen
int x, y; /* upper left corner in screen coordinates */
unsigned w, h; /* width, height */
unsigned bpr; /* bytes per row of image p */
Pixel *p; /* Starts on segment boundary */
Cmap *cmap;
long psize; /* size of pixels */
Pixel *allocedp; /* for memory based screens only */
typedef struct vscreen Vscreen;
extern Vscreen aa_screen;
extern Cmap aa_colors[]; /* software echo of color map */
Boolean aa_open_vga_screen(void); /* opens 256 color screen */
void aa_close_vga_screen(void);
/* Open a screen can draw on but not see */
Vscreen *aa_alloc_mem_screen(void);
/* For screens not full size */
Vscreen *aa_alloc_mem_cel(int x, int y, int w, int h);
void aa_free_mem_screen(Vscreen *ms); /* dispose of a memory screen */
void aa_copy_screen(Vscreen *source, Vscreen *dest);
void aa_clear_screen(Vscreen *vs);

/* Get the current video mode */
int dos_get_vmode(void);
/* Set video mode. Mode 0x13 is 320x200 256 color */
void dos_set_vmode(int mode);
/* Set the VGA color map. */
void aa_set_colors(int start, int count, Cmap *cmap);
/* Wait until in vertical blank */
void aa_wait_vblank(void);
/* Wait until out of vertical blank */
void aa_wait_no_vblank(void);

#endif /* AASCREEN_H */

  3 Responses to “Category : C Source Code
Archive   : FLILIB.ZIP
Filename : AASCREEN.H

  1. Very nice! Thank you for this wonderful archive. I wonder why I found it only now. Long live the BBS file archives!

  2. This is so awesome! 😀 I’d be cool if you could download an entire archive of this at once, though.

  3. But one thing that puzzles me is the “mtswslnkmcjklsdlsbdmMICROSOFT” string. There is an article about it here. It is definitely worth a read: