Subversion Repositories Games.Prince of Persia

Rev

Rev 1 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1 Rev 8
Line 1... Line 1...
1
/*
1
/*
2
  Simple DirectMedia Layer
2
  Simple DirectMedia Layer
3
  Copyright (C) 1997-2017 Sam Lantinga <slouken@libsdl.org>
3
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
4
 
4
 
5
  This software is provided 'as-is', without any express or implied
5
  This software is provided 'as-is', without any express or implied
6
  warranty.  In no event will the authors be held liable for any damages
6
  warranty.  In no event will the authors be held liable for any damages
7
  arising from the use of this software.
7
  arising from the use of this software.
8
 
8
 
Line 83... Line 83...
83
# endif
83
# endif
84
# include <math.h>
84
# include <math.h>
85
#endif
85
#endif
86
#ifdef HAVE_FLOAT_H
86
#ifdef HAVE_FLOAT_H
87
# include <float.h>
87
# include <float.h>
-
 
88
#endif
-
 
89
#if defined(HAVE_ALLOCA) && !defined(alloca)
-
 
90
# if defined(HAVE_ALLOCA_H)
-
 
91
#  include <alloca.h>
-
 
92
# elif defined(__GNUC__)
-
 
93
#  define alloca __builtin_alloca
-
 
94
# elif defined(_MSC_VER)
-
 
95
#  include <malloc.h>
-
 
96
#  define alloca _alloca
-
 
97
# elif defined(__WATCOMC__)
-
 
98
#  include <malloc.h>
-
 
99
# elif defined(__BORLANDC__)
-
 
100
#  include <malloc.h>
-
 
101
# elif defined(__DMC__)
-
 
102
#  include <stdlib.h>
-
 
103
# elif defined(__AIX__)
-
 
104
#pragma alloca
-
 
105
# elif defined(__MRC__)
-
 
106
void *alloca(unsigned);
-
 
107
# else
-
 
108
char *alloca();
-
 
109
# endif
88
#endif
110
#endif
89
 
111
 
90
/**
112
/**
91
 *  The number of elements in an array.
113
 *  The number of elements in an array.
92
 */
114
 */
Line 326... Line 348...
326
/* Set up for C function definitions, even when using C++ */
348
/* Set up for C function definitions, even when using C++ */
327
#ifdef __cplusplus
349
#ifdef __cplusplus
328
extern "C" {
350
extern "C" {
329
#endif
351
#endif
330
 
352
 
331
#if defined(HAVE_ALLOCA) && !defined(alloca)
-
 
332
# if defined(HAVE_ALLOCA_H)
-
 
333
#  include <alloca.h>
-
 
334
# elif defined(__GNUC__)
-
 
335
#  define alloca __builtin_alloca
-
 
336
# elif defined(_MSC_VER)
-
 
337
#  include <malloc.h>
-
 
338
#  define alloca _alloca
-
 
339
# elif defined(__WATCOMC__)
-
 
340
#  include <malloc.h>
-
 
341
# elif defined(__BORLANDC__)
-
 
342
#  include <malloc.h>
-
 
343
# elif defined(__DMC__)
-
 
344
#  include <stdlib.h>
-
 
345
# elif defined(__AIX__)
-
 
346
#pragma alloca
-
 
347
# elif defined(__MRC__)
-
 
348
void *alloca(unsigned);
-
 
349
# else
-
 
350
char *alloca();
-
 
351
# endif
-
 
352
#endif
-
 
353
#ifdef HAVE_ALLOCA
353
#ifdef HAVE_ALLOCA
354
#define SDL_stack_alloc(type, count)    (type*)alloca(sizeof(type)*(count))
354
#define SDL_stack_alloc(type, count)    (type*)alloca(sizeof(type)*(count))
355
#define SDL_stack_free(data)
355
#define SDL_stack_free(data)
356
#else
356
#else
357
#define SDL_stack_alloc(type, count)    (type*)SDL_malloc(sizeof(type)*(count))
357
#define SDL_stack_alloc(type, count)    (type*)SDL_malloc(sizeof(type)*(count))
Line 442... Line 442...
442
        case 1:         *_p++ = _val;   /* fallthrough */
442
        case 1:         *_p++ = _val;   /* fallthrough */
443
        } while ( --_n );
443
        } while ( --_n );
444
    }
444
    }
445
#endif
445
#endif
446
}
446
}
447
 
-
 
448
 
447
 
449
extern DECLSPEC void *SDLCALL SDL_memcpy(SDL_OUT_BYTECAP(len) void *dst, SDL_IN_BYTECAP(len) const void *src, size_t len);
448
extern DECLSPEC void *SDLCALL SDL_memcpy(SDL_OUT_BYTECAP(len) void *dst, SDL_IN_BYTECAP(len) const void *src, size_t len);
450
 
449
 
451
extern DECLSPEC void *SDLCALL SDL_memmove(SDL_OUT_BYTECAP(len) void *dst, SDL_IN_BYTECAP(len) const void *src, size_t len);
450
extern DECLSPEC void *SDLCALL SDL_memmove(SDL_OUT_BYTECAP(len) void *dst, SDL_IN_BYTECAP(len) const void *src, size_t len);
452
extern DECLSPEC int SDLCALL SDL_memcmp(const void *s1, const void *s2, size_t len);
451
extern DECLSPEC int SDLCALL SDL_memcmp(const void *s1, const void *s2, size_t len);
453
 
452
 
-
 
453
extern DECLSPEC wchar_t *SDLCALL SDL_wcsdup(const wchar_t *wstr);
454
extern DECLSPEC size_t SDLCALL SDL_wcslen(const wchar_t *wstr);
454
extern DECLSPEC size_t SDLCALL SDL_wcslen(const wchar_t *wstr);
455
extern DECLSPEC size_t SDLCALL SDL_wcslcpy(SDL_OUT_Z_CAP(maxlen) wchar_t *dst, const wchar_t *src, size_t maxlen);
455
extern DECLSPEC size_t SDLCALL SDL_wcslcpy(SDL_OUT_Z_CAP(maxlen) wchar_t *dst, const wchar_t *src, size_t maxlen);
456
extern DECLSPEC size_t SDLCALL SDL_wcslcat(SDL_INOUT_Z_CAP(maxlen) wchar_t *dst, const wchar_t *src, size_t maxlen);
456
extern DECLSPEC size_t SDLCALL SDL_wcslcat(SDL_INOUT_Z_CAP(maxlen) wchar_t *dst, const wchar_t *src, size_t maxlen);
457
extern DECLSPEC int SDLCALL SDL_wcscmp(const wchar_t *str1, const wchar_t *str2);
457
extern DECLSPEC int SDLCALL SDL_wcscmp(const wchar_t *str1, const wchar_t *str2);
458
 
458
 
Line 499... Line 499...
499
#define M_PI    3.14159265358979323846264338327950288   /**< pi */
499
#define M_PI    3.14159265358979323846264338327950288   /**< pi */
500
#endif
500
#endif
501
#endif
501
#endif
502
 
502
 
503
extern DECLSPEC double SDLCALL SDL_acos(double x);
503
extern DECLSPEC double SDLCALL SDL_acos(double x);
-
 
504
extern DECLSPEC float SDLCALL SDL_acosf(float x);
504
extern DECLSPEC double SDLCALL SDL_asin(double x);
505
extern DECLSPEC double SDLCALL SDL_asin(double x);
-
 
506
extern DECLSPEC float SDLCALL SDL_asinf(float x);
505
extern DECLSPEC double SDLCALL SDL_atan(double x);
507
extern DECLSPEC double SDLCALL SDL_atan(double x);
-
 
508
extern DECLSPEC float SDLCALL SDL_atanf(float x);
506
extern DECLSPEC double SDLCALL SDL_atan2(double x, double y);
509
extern DECLSPEC double SDLCALL SDL_atan2(double x, double y);
-
 
510
extern DECLSPEC float SDLCALL SDL_atan2f(float x, float y);
507
extern DECLSPEC double SDLCALL SDL_ceil(double x);
511
extern DECLSPEC double SDLCALL SDL_ceil(double x);
-
 
512
extern DECLSPEC float SDLCALL SDL_ceilf(float x);
508
extern DECLSPEC double SDLCALL SDL_copysign(double x, double y);
513
extern DECLSPEC double SDLCALL SDL_copysign(double x, double y);
-
 
514
extern DECLSPEC float SDLCALL SDL_copysignf(float x, float y);
509
extern DECLSPEC double SDLCALL SDL_cos(double x);
515
extern DECLSPEC double SDLCALL SDL_cos(double x);
510
extern DECLSPEC float SDLCALL SDL_cosf(float x);
516
extern DECLSPEC float SDLCALL SDL_cosf(float x);
-
 
517
extern DECLSPEC double SDLCALL SDL_exp(double x);
-
 
518
extern DECLSPEC float SDLCALL SDL_expf(float x);
511
extern DECLSPEC double SDLCALL SDL_fabs(double x);
519
extern DECLSPEC double SDLCALL SDL_fabs(double x);
-
 
520
extern DECLSPEC float SDLCALL SDL_fabsf(float x);
512
extern DECLSPEC double SDLCALL SDL_floor(double x);
521
extern DECLSPEC double SDLCALL SDL_floor(double x);
-
 
522
extern DECLSPEC float SDLCALL SDL_floorf(float x);
-
 
523
extern DECLSPEC double SDLCALL SDL_fmod(double x, double y);
-
 
524
extern DECLSPEC float SDLCALL SDL_fmodf(float x, float y);
513
extern DECLSPEC double SDLCALL SDL_log(double x);
525
extern DECLSPEC double SDLCALL SDL_log(double x);
-
 
526
extern DECLSPEC float SDLCALL SDL_logf(float x);
-
 
527
extern DECLSPEC double SDLCALL SDL_log10(double x);
-
 
528
extern DECLSPEC float SDLCALL SDL_log10f(float x);
514
extern DECLSPEC double SDLCALL SDL_pow(double x, double y);
529
extern DECLSPEC double SDLCALL SDL_pow(double x, double y);
-
 
530
extern DECLSPEC float SDLCALL SDL_powf(float x, float y);
515
extern DECLSPEC double SDLCALL SDL_scalbn(double x, int n);
531
extern DECLSPEC double SDLCALL SDL_scalbn(double x, int n);
-
 
532
extern DECLSPEC float SDLCALL SDL_scalbnf(float x, int n);
516
extern DECLSPEC double SDLCALL SDL_sin(double x);
533
extern DECLSPEC double SDLCALL SDL_sin(double x);
517
extern DECLSPEC float SDLCALL SDL_sinf(float x);
534
extern DECLSPEC float SDLCALL SDL_sinf(float x);
518
extern DECLSPEC double SDLCALL SDL_sqrt(double x);
535
extern DECLSPEC double SDLCALL SDL_sqrt(double x);
519
extern DECLSPEC float SDLCALL SDL_sqrtf(float x);
536
extern DECLSPEC float SDLCALL SDL_sqrtf(float x);
520
extern DECLSPEC double SDLCALL SDL_tan(double x);
537
extern DECLSPEC double SDLCALL SDL_tan(double x);