SDL-1.2.14
[sdl_omap.git] / src / video / xbios / SDL_xbios_blowup.h
CommitLineData
e14743d1 1/*
2 SDL - Simple DirectMedia Layer
3 Copyright (C) 1997-2009 Sam Lantinga
4
5 This library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Library General Public
7 License as published by the Free Software Foundation; either
8 version 2 of the License, or (at your option) any later version.
9
10 This library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Library General Public License for more details.
14
15 You should have received a copy of the GNU Library General Public
16 License along with this library; if not, write to the Free
17 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18
19 Sam Lantinga
20 slouken@libsdl.org
21*/
22#include "SDL_config.h"
23
24/*
25 Blowup extension definitions
26
27 Patrice Mandin
28*/
29
30#ifndef _SDL_xbios_blowup_h
31#define _SDL_xbios_blowup_h
32
33#include "SDL_xbios.h"
34
35/*--- Types ---*/
36
37typedef struct {
38 /* 64 bytes */
39 unsigned short enabled; /* Extended mode enabled ? 0=yes, <>0=no */
40 unsigned short dummy10[6];
41 unsigned short registers_0E; /* value for register 0xffff820e */
42 unsigned short registers_10; /* value for register 0xffff8210 */
43 unsigned short dummy11[23];
44
45 /* 64 bytes */
46 unsigned short width; /* width-1 */
47 unsigned short height; /* height-1 */
48 unsigned short dummy20;
49 unsigned long screensize; /* screensize in bytes */
50 unsigned short dummy21[8];
51 unsigned short virtual; /* Virtual screen ? */
52 unsigned short virwidth; /* Virtual screen width */
53 unsigned short virheight; /* Virtual screen height */
54
55 unsigned short dummy22;
56 unsigned short monitor; /* Monitor defined for this mode */
57 unsigned short extension; /* Extended mode defined ? 0=yes, 1=no */
58 unsigned short dummy23[13];
59
60 /* 64 bytes */
61 unsigned short dummy30;
62 unsigned short registers_82[6]; /* values for registers 0xffff8282-8c */
63 unsigned short dummy31[9];
64
65 unsigned short dummy32;
66 unsigned short registers_A2[6]; /* values for registers 0xffff82a2-ac */
67 unsigned short dummy33[9];
68
69 /* 64 bytes */
70 unsigned short registers_C0; /* value for register 0xffff82c0 */
71 unsigned short registers_C2; /* value for register 0xffff82c2 */
72 unsigned short dummy40[30];
73} __attribute__((packed)) blow_mode_t;
74
75typedef struct {
76 blow_mode_t blowup_modes[10];
77 unsigned char num_mode[6];
78 unsigned long dummy;
79 unsigned short montype;
80} __attribute__((packed)) blow_cookie_t;
81
82/*--- Functions prototypes ---*/
83
84void SDL_XBIOS_ListBlowupModes(_THIS, int actually_add, blow_cookie_t *cookie_blow);
85
86#endif /* _SDL_xbios_blowup_h */