1 /* 2 * A Z-Machine 3 * Copyright (C) 2000 Andrew Hunter 4 * 5 * This library is free software; you can redistribute it and/or 6 * modify it under the terms of the GNU Lesser General Public 7 * License as published by the Free Software Foundation; either 8 * version 2.1 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 * Lesser General Public License for more details. 14 * 15 * You should have received a copy of the GNU Lesser General Public 16 * License along with this library; if not, write to the Free Software 17 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 18 */ 19 20 /* 21 * Deal with the .zoomrc file 22 */ 23 24 #ifndef __RC_H 25 #define __RC_H 26 27 #include "hash.h" 28 29 typedef struct 30 { 31 int r, g, b; 32 } rc_colour; 33 34 typedef struct 35 { 36 char* name; 37 int attributes[8]; 38 int n_attr; 39 int num; 40 } rc_font; 41 42 typedef struct 43 { 44 int interpreter; 45 int revision; 46 47 char* name; 48 49 rc_font* fonts; 50 int n_fonts; 51 52 rc_colour* colours; 53 int n_colours; 54 char* gamedir; 55 char* savedir; 56 char* sounds; 57 char* graphics; 58 59 int xsize, ysize; 60 61 int fg_col, bg_col; 62 63 int antialias; 64 } rc_game; 65 66 extern void rc_load (void); 67 extern void rc_merge (char* filename); 68 extern void rc_set_game (char* serial, int revision, int checksum); 69 extern rc_colour* rc_get_colours (int* n_cols); 70 extern rc_font* rc_get_fonts (int* n_fonts); 71 extern char* rc_get_name (void); 72 extern char* rc_get_game_name (char* serial, int revision); 73 extern int rc_get_interpreter(void); 74 extern int rc_get_antialias (void); 75 extern int rc_get_revision (void); 76 extern char* rc_get_gamedir (void); 77 extern char* rc_get_savedir (void); 78 extern int rc_get_xsize (void); 79 extern int rc_get_ysize (void); 80 extern char* rc_get_graphics (void); 81 extern char* rc_get_sounds (void); 82 extern int rc_get_foreground (void); 83 extern int rc_get_background (void); 84 85 extern hash rc_hash; 86 extern rc_game* rc_defgame; 87 extern int rc_merging; 88 89 #endif 90