Rev 5 | Rev 9 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed
| Rev | Author | Line No. | Line | 
|---|---|---|---|
| 1 | pmbaty | 1 | /* | 
        
| 2 |  * src/system.h | 
        ||
| 3 |  * | 
        ||
| 4 |  * Copyright (C) 1998-2002 BigOrno (bigorno@bigorno.net). All rights reserved. | 
        ||
| 5 |  * | 
        ||
| 6 |  * The use and distribution terms for this software are contained in the file | 
        ||
| 7 |  * named README, which can be found in the root of this distribution. By | 
        ||
| 8 |  * using this software in any fashion, you are agreeing to be bound by the | 
        ||
| 9 |  * terms of this license. | 
        ||
| 10 |  * | 
        ||
| 11 |  * You must not remove this notice, or any other, from this software. | 
        ||
| 12 |  */ | 
        ||
| 13 | |||
| 14 | #ifndef _SYSTEM_H | 
        ||
| 15 | #define _SYSTEM_H | 
        ||
| 16 | |||
| 5 | pmbaty | 17 | #include <stdint.h> | 
        
| 18 | typedef uint8_t U8;  | 
        ||
| 19 | typedef uint16_t U16;  | 
        ||
| 20 | typedef uint32_t U32;  | 
        ||
| 21 | typedef int8_t S8;  | 
        ||
| 22 | typedef int16_t S16;  | 
        ||
| 23 | typedef int32_t S32;  | 
        ||
| 7 | pmbaty | 24 | #ifdef WIN32 | 
        
| 25 | #include <stdio.h> // for sprintf_s() and the likes | 
        ||
| 26 | #else // !WIN32 | 
        ||
| 5 | pmbaty | 27 | #define strcpy_s(dest,size,source) strcpy (dest, source) | 
        
| 28 | #define strcat_s(dest,size,source) strcat (dest, source) | 
        ||
| 29 | #define sprintf_s(dest,size,format,...) sprintf (dest, format, __VA_ARGS__) | 
        ||
| 30 | #define strncpy_s(dest,size,source,count) strncpy (dest, source, count) | 
        ||
| 31 | #define vsprintf_s(buffer,maxsize,format,...) vsprintf(buffer,format, ##__VA_ARGS__) | 
        ||
| 32 | #define fopen_s(fp,filename,mode) *(fp) = fopen (filename, mode) | 
        ||
| 2 | pmbaty | 33 | #endif // WIN32 | 
        
| 1 | pmbaty | 34 | |
| 35 | /* this must be after typedefs because it relies on types defined above */ | 
        ||
| 36 | #include "rects.h" | 
        ||
| 37 | #include "img.h" | 
        ||
| 38 | |||
| 39 | /* | 
        ||
| 40 |  * main section | 
        ||
| 41 |  */ | 
        ||
| 42 | extern void sys_init (int, char **);  | 
        ||
| 43 | extern void sys_shutdown (void);  | 
        ||
| 2 | pmbaty | 44 | extern char *sys_getbasepath (void);  | 
        
| 1 | pmbaty | 45 | extern void sys_panic (char *, ...);  | 
        
| 46 | extern void sys_printf (char *, ...);  | 
        ||
| 47 | extern U32 sys_gettime (void);  | 
        ||
| 48 | extern void sys_sleep (int);  | 
        ||
| 49 | |||
| 50 | /* | 
        ||
| 51 |  * video section | 
        ||
| 52 |  */ | 
        ||
| 53 | extern void sysvid_init (void);  | 
        ||
| 54 | extern void sysvid_shutdown (void);  | 
        ||
| 55 | extern void sysvid_clear (void);  | 
        ||
| 56 | extern void sysvid_paint (rect_t *);  | 
        ||
| 57 | |||
| 58 | /* | 
        ||
| 59 |  * events section | 
        ||
| 60 |  */ | 
        ||
| 61 | extern void sysevt_poll (void);  | 
        ||
| 62 | extern void sysevt_wait (void);  | 
        ||
| 63 | |||
| 64 | /* | 
        ||
| 65 |  * sound section | 
        ||
| 66 |  */ | 
        ||
| 67 | typedef struct  | 
        ||
| 68 | { | 
        ||
| 69 | U8 *buf;  | 
        ||
| 70 |    U32 len; | 
        ||
| 71 |    U8 dispose; | 
        ||
| 72 | } sound_t;  | 
        ||
| 73 | |||
| 74 | extern void syssnd_init (void);  | 
        ||
| 75 | extern void syssnd_shutdown (void);  | 
        ||
| 76 | extern void syssnd_vol (S8);  | 
        ||
| 77 | extern void syssnd_toggleMute (void);  | 
        ||
| 78 | extern S8 syssnd_play (sound_t *, S8);  | 
        ||
| 79 | extern void syssnd_pause (U8, U8);  | 
        ||
| 80 | extern void syssnd_stopchan (S8);  | 
        ||
| 81 | extern void syssnd_stopsound (sound_t *);  | 
        ||
| 82 | extern void syssnd_stopall (void);  | 
        ||
| 83 | extern int syssnd_isplaying (sound_t *);  | 
        ||
| 84 | extern sound_t *syssnd_load (char *name);  | 
        ||
| 85 | extern void syssnd_free (sound_t *);  | 
        ||
| 86 | |||
| 87 | /* | 
        ||
| 88 |  * args section | 
        ||
| 89 |  */ | 
        ||
| 90 | extern int sysarg_args_period;  | 
        ||
| 91 | extern int sysarg_args_map;  | 
        ||
| 92 | extern int sysarg_args_submap;  | 
        ||
| 93 | extern int sysarg_args_nosound;  | 
        ||
| 94 | extern int sysarg_args_vol;  | 
        ||
| 95 | |||
| 96 | extern void sysarg_init (int, char **);  | 
        ||
| 97 | |||
| 98 | /* | 
        ||
| 99 |  * joystick section | 
        ||
| 100 |  */ | 
        ||
| 101 | extern void sysjoy_init (void);  | 
        ||
| 102 | extern void sysjoy_shutdown (void);  | 
        ||
| 103 | |||
| 104 | #endif |