|
|
1.1 ! root 1: /* $Id: vidmodes.h,v 1.10 2005/10/14 06:21:15 deuce Exp $ */ ! 2: ! 3: /**************************************************************************** ! 4: * @format.tab-size 4 (Plain Text/Source Code File Header) * ! 5: * @format.use-tabs true (see http://www.synchro.net/ptsc_hdr.html) * ! 6: * * ! 7: * Copyright 2004 Rob Swindell - http://www.synchro.net/copyright.html * ! 8: * * ! 9: * This library is free software; you can redistribute it and/or * ! 10: * modify it under the terms of the GNU Lesser General Public License * ! 11: * as published by the Free Software Foundation; either version 2 * ! 12: * of the License, or (at your option) any later version. * ! 13: * See the GNU Lesser General Public License for more details: lgpl.txt or * ! 14: * http://www.fsf.org/copyleft/lesser.html * ! 15: * * ! 16: * Anonymous FTP access to the most recent released source is available at * ! 17: * ftp://vert.synchro.net, ftp://cvs.synchro.net and ftp://ftp.synchro.net * ! 18: * * ! 19: * Anonymous CVS access to the development source and modification history * ! 20: * is available at cvs.synchro.net:/cvsroot/sbbs, example: * ! 21: * cvs -d :pserver:[email protected]:/cvsroot/sbbs login * ! 22: * (just hit return, no password is necessary) * ! 23: * cvs -d :pserver:[email protected]:/cvsroot/sbbs checkout src * ! 24: * * ! 25: * For Synchronet coding style and modification guidelines, see * ! 26: * http://www.synchro.net/source.html * ! 27: * * ! 28: * You are encouraged to submit any modifications (preferably in Unix diff * ! 29: * format) via e-mail to [email protected] * ! 30: * * ! 31: * Note: If this box doesn't appear square, then you need to fix your tabs. * ! 32: ****************************************************************************/ ! 33: ! 34: #ifndef _VIDMODES_H_ ! 35: #define _VIDMODES_H_ ! 36: ! 37: #if (defined CIOLIB_IMPORTS) ! 38: #undef CIOLIB_IMPORTS ! 39: #endif ! 40: #if (defined CIOLIB_EXPORTS) ! 41: #undef CIOLIB_EXPORTS ! 42: #endif ! 43: ! 44: #include "ciolib.h" ! 45: ! 46: struct video_params { ! 47: int mode; ! 48: int palette; ! 49: int cols; ! 50: int rows; ! 51: int curs_start; ! 52: int curs_end; ! 53: int charheight; ! 54: int charwidth; ! 55: }; ! 56: ! 57: struct video_stats { ! 58: int rows; ! 59: int cols; ! 60: int curs_row; ! 61: int curs_col; ! 62: int curs_start; ! 63: int curs_end; ! 64: int default_curs_start; ! 65: int default_curs_end; ! 66: int mode; ! 67: int charheight; ! 68: int charwidth; ! 69: int blink; ! 70: int currattr; ! 71: int scaling; ! 72: unsigned char *palette; ! 73: unsigned short *vmem; ! 74: }; ! 75: ! 76: /* Entry type for the DAC table. */ ! 77: struct dac_colors { ! 78: unsigned char red; ! 79: unsigned char green; ! 80: unsigned char blue; ! 81: }; ! 82: ! 83: enum { ! 84: MONO_PALETTE ! 85: ,GREYSCALE_PALETTE ! 86: ,COLOUR_PALETTE ! 87: }; ! 88: ! 89: extern struct video_params vparams[36]; ! 90: #define NUMMODES (sizeof(vparams) / sizeof(struct video_params)) ! 91: extern unsigned char palettes[3][16]; ! 92: extern struct dac_colors dac_default16[16]; ! 93: extern struct dac_colors dac_default256[16]; ! 94: extern char vga_font_bitmap[4096]; ! 95: extern char vga_font_bitmap14[3584]; ! 96: extern char vga_font_bitmap8[2048]; ! 97: ! 98: #ifdef __cplusplus ! 99: extern "C" { ! 100: #endif ! 101: int find_vmode(int mode); ! 102: int load_vmode(struct video_stats *vs, int mode); ! 103: #ifdef __cplusplus ! 104: } ! 105: #endif ! 106: ! 107: #endif
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.