hedgewars/SDLh.pas
author nemo
Sun, 17 Mar 2013 10:13:14 -0400
changeset 8742 b7b8bd398c1b
parent 8530 66cedf3e9d1e
child 8745 b3756c3f65e5
permissions -rw-r--r--
Key returned 0 for arrows under linux. Sym works, clearer anyway.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
4
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 1
diff changeset
     1
(*
1066
1f1b3686a2b0 Update copyright headers a bit
unc0rr
parents: 945
diff changeset
     2
 * Hedgewars, a free turn based strategy game
6700
e04da46ee43c the most important commit of the year
koda
parents: 6693
diff changeset
     3
 * Copyright (c) 2004-2012 Andrey Korotaev <unC0Rr@gmail.com>
4
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 1
diff changeset
     4
 *
183
57c2ef19f719 Relicense to GPL
unc0rr
parents: 174
diff changeset
     5
 * This program is free software; you can redistribute it and/or modify
57c2ef19f719 Relicense to GPL
unc0rr
parents: 174
diff changeset
     6
 * it under the terms of the GNU General Public License as published by
57c2ef19f719 Relicense to GPL
unc0rr
parents: 174
diff changeset
     7
 * the Free Software Foundation; version 2 of the License
4
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 1
diff changeset
     8
 *
183
57c2ef19f719 Relicense to GPL
unc0rr
parents: 174
diff changeset
     9
 * This program is distributed in the hope that it will be useful,
57c2ef19f719 Relicense to GPL
unc0rr
parents: 174
diff changeset
    10
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
57c2ef19f719 Relicense to GPL
unc0rr
parents: 174
diff changeset
    11
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
57c2ef19f719 Relicense to GPL
unc0rr
parents: 174
diff changeset
    12
 * GNU General Public License for more details.
4
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 1
diff changeset
    13
 *
183
57c2ef19f719 Relicense to GPL
unc0rr
parents: 174
diff changeset
    14
 * You should have received a copy of the GNU General Public License
57c2ef19f719 Relicense to GPL
unc0rr
parents: 174
diff changeset
    15
 * along with this program; if not, write to the Free Software
57c2ef19f719 Relicense to GPL
unc0rr
parents: 174
diff changeset
    16
 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
4
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 1
diff changeset
    17
 *)
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 1
diff changeset
    18
2690
8e83c7e31720 move mixed functions in PascalExports
koda
parents: 2689
diff changeset
    19
{$INCLUDE "options.inc"}
2630
079ef82eac75 revamped file access and debug display
koda
parents: 2619
diff changeset
    20
4
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 1
diff changeset
    21
unit SDLh;
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 1
diff changeset
    22
interface
753
40fc0deb388f Start conversion to OpenGL rendering
unc0rr
parents: 500
diff changeset
    23
2599
c7153d2348f3 move compiler directives to standard pascal
koda
parents: 2592
diff changeset
    24
{$IFDEF LINUX}
6580
6155187bf599 A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents: 6551
diff changeset
    25
    {$DEFINE UNIX}
2599
c7153d2348f3 move compiler directives to standard pascal
koda
parents: 2592
diff changeset
    26
{$ENDIF}
c7153d2348f3 move compiler directives to standard pascal
koda
parents: 2592
diff changeset
    27
{$IFDEF FREEBSD}
6580
6155187bf599 A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents: 6551
diff changeset
    28
    {$DEFINE UNIX}
4
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 1
diff changeset
    29
{$ENDIF}
3385
361bd29293f4 add automatic rotation in ipad (landscape only)
koda
parents: 3354
diff changeset
    30
{$IFDEF DARWIN}
6580
6155187bf599 A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents: 6551
diff changeset
    31
    {$DEFINE UNIX}
3385
361bd29293f4 add automatic rotation in ipad (landscape only)
koda
parents: 3354
diff changeset
    32
{$ENDIF}
361bd29293f4 add automatic rotation in ipad (landscape only)
koda
parents: 3354
diff changeset
    33
{$IFDEF HAIKU}
6580
6155187bf599 A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents: 6551
diff changeset
    34
    {$DEFINE UNIX}
3385
361bd29293f4 add automatic rotation in ipad (landscape only)
koda
parents: 3354
diff changeset
    35
{$ENDIF}
4
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 1
diff changeset
    36
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 1
diff changeset
    37
{$IFDEF UNIX}
6580
6155187bf599 A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents: 6551
diff changeset
    38
    {$IFNDEF DARWIN}
8530
66cedf3e9d1e workaround static physfs static linking on linux
koda
parents: 8068
diff changeset
    39
        {necessary for statically linking physfs (divdi3 undefined)}
66cedf3e9d1e workaround static physfs static linking on linux
koda
parents: 8068
diff changeset
    40
        {$linklib stdc++}
5286
22c1f4833a86 First commit..
Xeli
parents: 5187
diff changeset
    41
    {$ENDIF}
6580
6155187bf599 A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents: 6551
diff changeset
    42
    {$IFDEF HAIKU}
6155187bf599 A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents: 6551
diff changeset
    43
        {$linklib root}
6155187bf599 A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents: 6551
diff changeset
    44
    {$ELSE}
6155187bf599 A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents: 6551
diff changeset
    45
        {$IFNDEF ANDROID}
8068
b35427506169 win build changes, fpc 2.6, CMAKE_PREFIX_PATH, glut header
koda
parents: 8046
diff changeset
    46
            {$linklib pthread}
b35427506169 win build changes, fpc 2.6, CMAKE_PREFIX_PATH, glut header
koda
parents: 8046
diff changeset
    47
        {$ENDIF}
6580
6155187bf599 A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents: 6551
diff changeset
    48
    {$ENDIF}
4
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 1
diff changeset
    49
{$ENDIF}
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 1
diff changeset
    50
2599
c7153d2348f3 move compiler directives to standard pascal
koda
parents: 2592
diff changeset
    51
{$IFDEF FPC}
6580
6155187bf599 A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents: 6551
diff changeset
    52
    {$PACKRECORDS C}
2606
ed687a8d081f updated build files for macosx and optimization system
koda
parents: 2601
diff changeset
    53
{$ELSE}
6580
6155187bf599 A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents: 6551
diff changeset
    54
    {$DEFINE cdecl attribute(cdecl)}
6974
2d3beb445d64 minor changes for more compatibilities with other compilers
koda
parents: 6972
diff changeset
    55
    type PByte = ^Byte;
2d3beb445d64 minor changes for more compatibilities with other compilers
koda
parents: 6972
diff changeset
    56
    type PInteger = ^Integer;
2d3beb445d64 minor changes for more compatibilities with other compilers
koda
parents: 6972
diff changeset
    57
    type PLongInt = ^LongInt;
2599
c7153d2348f3 move compiler directives to standard pascal
koda
parents: 2592
diff changeset
    58
{$ENDIF}
4
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 1
diff changeset
    59
1819
17dac76954d1 Patch by koda to better support Mac OS X
unc0rr
parents: 1712
diff changeset
    60
{$IFDEF DARWIN}
6580
6155187bf599 A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents: 6551
diff changeset
    61
    {$IFNDEF IPHONEOS}
6155187bf599 A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents: 6551
diff changeset
    62
        {$PASCALMAINNAME SDL_main}
6155187bf599 A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents: 6551
diff changeset
    63
        {$linkframework Cocoa}
6155187bf599 A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents: 6551
diff changeset
    64
        {$linkframework SDL}
6155187bf599 A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents: 6551
diff changeset
    65
        {$linkframework SDL_net}
6155187bf599 A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents: 6551
diff changeset
    66
        {$linkframework SDL_image}
6155187bf599 A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents: 6551
diff changeset
    67
        {$linkframework SDL_ttf}
6155187bf599 A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents: 6551
diff changeset
    68
        {$linkframework SDL_mixer}
6155187bf599 A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents: 6551
diff changeset
    69
        {$linkframework OpenGL}
6155187bf599 A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents: 6551
diff changeset
    70
    {$ENDIF}
1819
17dac76954d1 Patch by koda to better support Mac OS X
unc0rr
parents: 1712
diff changeset
    71
{$ENDIF}
2630
079ef82eac75 revamped file access and debug display
koda
parents: 2619
diff changeset
    72
1819
17dac76954d1 Patch by koda to better support Mac OS X
unc0rr
parents: 1712
diff changeset
    73
1997
cd66434351cf koda's patch
unc0rr
parents: 1947
diff changeset
    74
(*  SDL  *)
2390
57fb33ab04a4 converts some gl calls to gles
koda
parents: 2379
diff changeset
    75
const
57fb33ab04a4 converts some gl calls to gles
koda
parents: 2379
diff changeset
    76
{$IFDEF WIN32}
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
    77
    SDLLibName = 'SDL.dll';
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
    78
    SDL_TTFLibName = 'SDL_ttf.dll';
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
    79
    SDL_MixerLibName = 'SDL_mixer.dll';
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
    80
    SDL_ImageLibName = 'SDL_image.dll';
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
    81
    SDL_NetLibName = 'SDL_net.dll';
2600
7b21daf84933 revamped SDLh.pas
koda
parents: 2599
diff changeset
    82
{$ELSE}
6580
6155187bf599 A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents: 6551
diff changeset
    83
    {$IFDEF DARWIN}
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
    84
    SDLLibName = 'SDL';
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
    85
    SDL_TTFLibName = 'SDL_ttf';
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
    86
    SDL_MixerLibName = 'SDL_mixer';
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
    87
    SDL_ImageLibName = 'SDL_image';
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
    88
    SDL_NetLibName = 'SDL_net';
6580
6155187bf599 A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents: 6551
diff changeset
    89
    {$ELSE}
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
    90
    SDLLibName = 'libSDL.so';
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
    91
    SDL_TTFLibName = 'libSDL_ttf.so';
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
    92
    SDL_MixerLibName = 'libSDL_mixer.so';
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
    93
    SDL_ImageLibName = 'libSDL_image.so';
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
    94
    SDL_NetLibName = 'libSDL_net.so';
6580
6155187bf599 A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents: 6551
diff changeset
    95
    {$ENDIF}
2390
57fb33ab04a4 converts some gl calls to gles
koda
parents: 2379
diff changeset
    96
{$ENDIF}
2600
7b21daf84933 revamped SDLh.pas
koda
parents: 2599
diff changeset
    97
7b21daf84933 revamped SDLh.pas
koda
parents: 2599
diff changeset
    98
/////////////////////////////////////////////////////////////////
7b21daf84933 revamped SDLh.pas
koda
parents: 2599
diff changeset
    99
/////////////////////  CONSTANT DEFINITIONS /////////////////////
7b21daf84933 revamped SDLh.pas
koda
parents: 2599
diff changeset
   100
/////////////////////////////////////////////////////////////////
7b21daf84933 revamped SDLh.pas
koda
parents: 2599
diff changeset
   101
5046
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   102
    // SDL_Init() flags
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   103
    SDL_INIT_TIMER       = $00000001;
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   104
    SDL_INIT_AUDIO       = $00000010;
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   105
    SDL_INIT_VIDEO       = $00000020;
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   106
    SDL_INIT_JOYSTICK    = $00000200;
2633
9eb131794a6e trailing mods from previous commit
koda
parents: 2630
diff changeset
   107
{$IFDEF SDL13}
5046
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   108
    SDL_INIT_HAPTIC      = $00001000;
2633
9eb131794a6e trailing mods from previous commit
koda
parents: 2630
diff changeset
   109
{$ELSE}
5046
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   110
    SDL_INIT_CDROM       = $00000100;
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   111
    SDL_INIT_EVENTTHREAD = $01000000;
2633
9eb131794a6e trailing mods from previous commit
koda
parents: 2630
diff changeset
   112
{$ENDIF}
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   113
    SDL_INIT_NOPARACHUTE = $00100000;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   114
    SDL_INIT_EVERYTHING  = $0000FFFF;
2240
7ce9e6b7be3b -Removal of older WAV files, now useless thanks to OpenAL
koda
parents: 2200
diff changeset
   115
6282
de449b2d9607 just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents: 6281
diff changeset
   116
    SDL_ALLEVENTS        = $FFFFFFFF;
5046
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   117
    SDL_APPINPUTFOCUS    = $02;
6917
4889c2b779b4 - change uKeys to be event based rather than polling
Xeli
parents: 6900
diff changeset
   118
4889c2b779b4 - change uKeys to be event based rather than polling
Xeli
parents: 6900
diff changeset
   119
    SDL_BUTTON_LEFT      = 1;
4889c2b779b4 - change uKeys to be event based rather than polling
Xeli
parents: 6900
diff changeset
   120
    SDL_BUTTON_MIDDLE    = 2;
4889c2b779b4 - change uKeys to be event based rather than polling
Xeli
parents: 6900
diff changeset
   121
    SDL_BUTTON_RIGHT     = 3;
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   122
    SDL_BUTTON_WHEELUP   = 4;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   123
    SDL_BUTTON_WHEELDOWN = 5;
3463
23c50be687a9 update sdl functions to latest revision
koda
parents: 3405
diff changeset
   124
3349
5571592f10a8 update ifrontend to latest ammostore protocol
koda
parents: 3341
diff changeset
   125
{$IFDEF SDL13}
5004
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   126
    // SDL_Event types
5046
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   127
    SDL_FIRSTEVENT        = 0;
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   128
    SDL_QUITEV            = $100;
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   129
    SDL_WINDOWEVENT       = $200;
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   130
    SDL_SYSWMEVENT        = $201;
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   131
    SDL_KEYDOWN           = $300;
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   132
    SDL_KEYUP             = $301;
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   133
    SDL_TEXTEDITING       = $302;
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   134
    SDL_TEXTINPUT         = $303;
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   135
    SDL_MOUSEMOTION       = $400;
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   136
    SDL_MOUSEBUTTONDOWN   = $401;
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   137
    SDL_MOUSEBUTTONUP     = $402;
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   138
    SDL_MOUSEWHEEL        = $403;
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   139
    SDL_INPUTMOTION       = $500;
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   140
    SDL_INPUTBUTTONDOWN   = $501;
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   141
    SDL_INPUTBUTTONUP     = $502;
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   142
    SDL_INPUTWHEEL        = $503;
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   143
    SDL_INPUTPROXIMITYIN  = $504;
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   144
    SDL_INPUTPROXIMITYOUT = $505;
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   145
    SDL_JOYAXISMOTION     = $600;
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   146
    SDL_JOYBALLMOTION     = $601;
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   147
    SDL_JOYHATMOTION      = $602;
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   148
    SDL_JOYBUTTONDOWN     = $603;
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   149
    SDL_JOYBUTTONUP       = $604;
6282
de449b2d9607 just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents: 6281
diff changeset
   150
    SDL_FINGERDOWN        = $700;
de449b2d9607 just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents: 6281
diff changeset
   151
    SDL_FINGERUP          = $701;
de449b2d9607 just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents: 6281
diff changeset
   152
    SDL_FINGERMOTION      = $702;
de449b2d9607 just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents: 6281
diff changeset
   153
    SDL_TOUCHBUTTONDOWN   = $703;
de449b2d9607 just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents: 6281
diff changeset
   154
    SDL_TOUCHBUTTONUP     = $704;
de449b2d9607 just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents: 6281
diff changeset
   155
    SDL_DOLLARGESTURE     = $800;
de449b2d9607 just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents: 6281
diff changeset
   156
    SDL_DOLLARRECORD      = $801;
de449b2d9607 just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents: 6281
diff changeset
   157
    SDL_MULTIGESTURE      = $802;
de449b2d9607 just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents: 6281
diff changeset
   158
    SDL_CLIPBOARDUPDATE   = $900;
6551
a2f39cb9af62 fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents: 6415
diff changeset
   159
    SDL_DROPFILE          = $1000;
5046
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   160
    SDL_USEREVENT         = $8000;
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   161
    SDL_LASTEVENT         = $FFFF;
6282
de449b2d9607 just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents: 6281
diff changeset
   162
    // no compatibility events $7000
3697
d5b30d6373fc remove trailing spaces from end of line
koda
parents: 3668
diff changeset
   163
5004
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   164
    // SDL_Surface flags
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   165
    SDL_SWSURFACE   = $00000000;  //*< Not used */
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   166
    SDL_PREALLOC    = $00000001;  //*< Surface uses preallocated memory */
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   167
    SDL_RLEACCEL    = $00000002;  //*< Surface is RLE encoded */
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   168
    SDL_DONTFREE    = $00000004;  //*< Surface is referenced internally */
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   169
    SDL_SRCALPHA    = $00010000;
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   170
    SDL_SRCCOLORKEY = $00020000;
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   171
    SDL_ANYFORMAT   = $00100000;
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   172
    SDL_HWPALETTE   = $00200000;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   173
    SDL_DOUBLEBUF   = $00400000;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   174
    SDL_FULLSCREEN  = $00800000;
5004
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   175
    SDL_RESIZABLE   = $01000000;
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   176
    SDL_NOFRAME     = $02000000;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   177
    SDL_OPENGL      = $04000000;
5004
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   178
    SDL_HWSURFACE   = $08000001;  //*< Not used */
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   179
    SDL_ASYNCBLIT   = $08000000;  //*< Not used */
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   180
    SDL_RLEACCELOK  = $08000000;  //*< Not used */
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   181
    SDL_HWACCEL     = $08000000;  //*< Not used */
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   182
5046
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   183
    // SDL_Renderer flags
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   184
    SDL_RENDERER_SOFTWARE     = $00000001;     //*< The renderer is a software fallback */
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   185
    SDL_RENDERER_ACCELERATED  = $00000002;     //*< The renderer uses hardware acceleration */
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   186
    SDL_RENDERER_PRESENTVSYNC = $00000004;
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   187
5004
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   188
    // SDL_WindowFlags (enum)
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   189
    SDL_WINDOW_FULLSCREEN    = $00000001;      //*< fullscreen window, implies borderless */
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   190
    SDL_WINDOW_OPENGL        = $00000002;      //*< window usable with OpenGL context */
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   191
    SDL_WINDOW_SHOWN         = $00000004;      //*< window is visible */
5046
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   192
    SDL_WINDOW_HIDDEN        = $00000008;      //*< window is not visible */
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   193
    SDL_WINDOW_BORDERLESS    = $00000010;      //*< no window decoration */
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   194
    SDL_WINDOW_RESIZABLE     = $00000020;      //*< window can be resized */
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   195
    SDL_WINDOW_MINIMIZED     = $00000040;      //*< window is minimized */
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   196
    SDL_WINDOW_MAXIMIZED     = $00000080;      //*< window is maximized */
5004
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   197
    SDL_WINDOW_INPUT_GRABBED = $00000100;      //*< window has grabbed input focus */
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   198
    SDL_WINDOW_INPUT_FOCUS   = $00000200;      //*< window has input focus */
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   199
    SDL_WINDOW_MOUSE_FOCUS   = $00000400;      //*< window has mouse focus */
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   200
    SDL_WINDOW_FOREIGN       = $00000800;      //*< window not created by SDL */
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   201
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   202
    SDL_WINDOWPOS_CENTERED_MASK = $2FFF0000;
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   203
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   204
    // SDL_WindowEventID (enum)
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   205
    SDL_WINDOWEVENT_NONE         = 0;    //*< Never used
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   206
    SDL_WINDOWEVENT_SHOWN        = 1;    //*< Window has been shown
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   207
    SDL_WINDOWEVENT_HIDDEN       = 2;    //*< Window has been hidden
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   208
    SDL_WINDOWEVENT_EXPOSED      = 3;    //*< Window has been exposed and should be redrawn
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   209
    SDL_WINDOWEVENT_MOVED        = 4;    //*< Window has been moved to data1, data2
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   210
    SDL_WINDOWEVENT_RESIZED      = 5;    //*< Window size changed to data1xdata2
5046
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   211
    SDL_WINDOWEVENT_SIZE_CHANGED = 6;    //*< The window size has changed, [...] */
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   212
    SDL_WINDOWEVENT_MINIMIZED    = 7;    //*< Window has been minimized
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   213
    SDL_WINDOWEVENT_MAXIMIZED    = 8;    //*< Window has been maximized
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   214
    SDL_WINDOWEVENT_RESTORED     = 9;    //*< Window has been restored to normal size and position
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   215
    SDL_WINDOWEVENT_ENTER        = 10;   //*< Window has gained mouse focus
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   216
    SDL_WINDOWEVENT_LEAVE        = 11;   //*< Window has lost mouse focus
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   217
    SDL_WINDOWEVENT_FOCUS_GAINED = 12;   //*< Window has gained keyboard focus
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   218
    SDL_WINDOWEVENT_FOCUS_LOST   = 13;   //*< Window has lost keyboard focus
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   219
    SDL_WINDOWEVENT_CLOSE        = 14;   //*< The window manager requests that the window be closed */
2241
7992f7ba388d completes removal of wav files, updates SDLh and adds DEBUGFILE to hwengine when compiled in Debug mode
koda
parents: 2240
diff changeset
   220
{$ELSE}
5004
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   221
    // SDL_Event types
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   222
    SDL_NOEVENT         = 0;
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   223
    SDL_ACTIVEEVENT     = 1;
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   224
    SDL_KEYDOWN         = 2;
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   225
    SDL_KEYUP           = 3;
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   226
    SDL_MOUSEMOTION     = 4;
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   227
    SDL_MOUSEBUTTONDOWN = 5;
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   228
    SDL_MOUSEBUTTONUP   = 6;
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   229
    SDL_JOYAXISMOTION   = 7;
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   230
    SDL_JOYBALLMOTION   = 8;
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   231
    SDL_JOYHATMOTION    = 9;
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   232
    SDL_JOYBUTTONDOWN   = 10;
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   233
    SDL_JOYBUTTONUP     = 11;
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   234
    SDL_QUITEV          = 12;
5670
e01f0b6f1969 enable window resizing (tested only on linux) - fix issue 103
koda
parents: 5660
diff changeset
   235
    SDL_VIDEORESIZE     = 16;
5004
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   236
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   237
    // SDL_Surface flags
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   238
    SDL_SWSURFACE   = $00000000;
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   239
    SDL_HWSURFACE   = $00000001;
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   240
    SDL_OPENGL      = $00000002;
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   241
    SDL_ASYNCBLIT   = $00000004;
5004
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   242
    SDL_RESIZABLE   = $00000010;
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   243
    SDL_NOFRAME     = $00000020;
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   244
    SDL_HWACCEL     = $00000100;
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   245
    SDL_SRCCOLORKEY = $00001000;
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   246
    SDL_RLEACCEL    = $00004000;
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   247
    SDL_SRCALPHA    = $00010000;
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   248
    SDL_ANYFORMAT   = $00100000;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   249
    SDL_HWPALETTE   = $20000000;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   250
    SDL_DOUBLEBUF   = $40000000;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   251
    SDL_FULLSCREEN  = $80000000;
2241
7992f7ba388d completes removal of wav files, updates SDLh and adds DEBUGFILE to hwengine when compiled in Debug mode
koda
parents: 2240
diff changeset
   252
{$ENDIF}
945
4ead9cde4e14 - Start chat implementation: chat strings are on the screen
unc0rr
parents: 883
diff changeset
   253
2586
204e6b2885bc added little/big endian checks, added symbol for touch input, simplified iphoneos definitions
koda
parents: 2579
diff changeset
   254
{$IFDEF ENDIAN_LITTLE}
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   255
    RMask = $000000FF;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   256
    GMask = $0000FF00;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   257
    BMask = $00FF0000;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   258
    AMask = $FF000000;
5041
3dc6ad20cbfe Fix endianness
nemo
parents: 5018
diff changeset
   259
    RShift = 0;
3dc6ad20cbfe Fix endianness
nemo
parents: 5018
diff changeset
   260
    GShift = 8;
3dc6ad20cbfe Fix endianness
nemo
parents: 5018
diff changeset
   261
    BShift = 16;
3dc6ad20cbfe Fix endianness
nemo
parents: 5018
diff changeset
   262
    AShift = 24;
2586
204e6b2885bc added little/big endian checks, added symbol for touch input, simplified iphoneos definitions
koda
parents: 2579
diff changeset
   263
{$ELSE}
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   264
    RMask = $FF000000;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   265
    GMask = $00FF0000;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   266
    BMask = $0000FF00;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   267
    AMask = $000000FF;
5041
3dc6ad20cbfe Fix endianness
nemo
parents: 5018
diff changeset
   268
    RShift = 24;
3dc6ad20cbfe Fix endianness
nemo
parents: 5018
diff changeset
   269
    GShift = 16;
3dc6ad20cbfe Fix endianness
nemo
parents: 5018
diff changeset
   270
    BShift = 8;
3dc6ad20cbfe Fix endianness
nemo
parents: 5018
diff changeset
   271
    AShift = 0;
2586
204e6b2885bc added little/big endian checks, added symbol for touch input, simplified iphoneos definitions
koda
parents: 2579
diff changeset
   272
{$ENDIF}
2575
d06e0e829828 update color management for new sdl_image on mac
koda
parents: 2567
diff changeset
   273
7191
9419294e5f33 first attempt at implementing support for keys with modifiers
Xeli
parents: 7167
diff changeset
   274
    KMOD_NONE   = $0000;
9419294e5f33 first attempt at implementing support for keys with modifiers
Xeli
parents: 7167
diff changeset
   275
    KMOD_LSHIFT = $0001;
9419294e5f33 first attempt at implementing support for keys with modifiers
Xeli
parents: 7167
diff changeset
   276
    KMOD_RSHIFT = $0002;
9419294e5f33 first attempt at implementing support for keys with modifiers
Xeli
parents: 7167
diff changeset
   277
    KMOD_LCTRL  = $0040;
9419294e5f33 first attempt at implementing support for keys with modifiers
Xeli
parents: 7167
diff changeset
   278
    KMOD_RCTRL  = $0080;
7193
65a022bf6bde ignore keymodifers other than ctrl/alt/shift
Xeli
parents: 7191
diff changeset
   279
    KMOD_LALT   = $0400;
65a022bf6bde ignore keymodifers other than ctrl/alt/shift
Xeli
parents: 7191
diff changeset
   280
    KMOD_RALT   = $0800;
7191
9419294e5f33 first attempt at implementing support for keys with modifiers
Xeli
parents: 7167
diff changeset
   281
    KMOD_LMETA  = $0400;
9419294e5f33 first attempt at implementing support for keys with modifiers
Xeli
parents: 7167
diff changeset
   282
    KMOD_RMETA  = $0800;
9419294e5f33 first attempt at implementing support for keys with modifiers
Xeli
parents: 7167
diff changeset
   283
    KMOD_NUM    = $1000;
9419294e5f33 first attempt at implementing support for keys with modifiers
Xeli
parents: 7167
diff changeset
   284
    KMOD_CAPS   = $2000;
9419294e5f33 first attempt at implementing support for keys with modifiers
Xeli
parents: 7167
diff changeset
   285
    KMOD_MODE   = $4000;
9419294e5f33 first attempt at implementing support for keys with modifiers
Xeli
parents: 7167
diff changeset
   286
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   287
    {* SDL_mixer *}
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   288
    MIX_MAX_VOLUME = 128;
5004
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   289
    MIX_INIT_FLAC  = $00000001;
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   290
    MIX_INIT_MOD   = $00000002;
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   291
    MIX_INIT_MP3   = $00000004;
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   292
    MIX_INIT_OGG   = $00000008;
3697
d5b30d6373fc remove trailing spaces from end of line
koda
parents: 3668
diff changeset
   293
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   294
    {* SDL_TTF *}
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   295
    TTF_STYLE_NORMAL = 0;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   296
    TTF_STYLE_BOLD   = 1;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   297
    TTF_STYLE_ITALIC = 2;
2600
7b21daf84933 revamped SDLh.pas
koda
parents: 2599
diff changeset
   298
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   299
    {* SDL Joystick *}
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   300
    SDL_HAT_CENTERED  = $00;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   301
    SDL_HAT_UP        = $01;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   302
    SDL_HAT_RIGHT     = $02;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   303
    SDL_HAT_DOWN      = $04;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   304
    SDL_HAT_LEFT      = $08;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   305
    SDL_HAT_RIGHTUP   = SDL_HAT_RIGHT or SDL_HAT_UP;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   306
    SDL_HAT_RIGHTDOWN = SDL_HAT_RIGHT or SDL_HAT_DOWN;
5004
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   307
    SDL_HAT_LEFTUP    = SDL_HAT_LEFT  or SDL_HAT_UP;
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   308
    SDL_HAT_LEFTDOWN  = SDL_HAT_LEFT  or SDL_HAT_DOWN;
2600
7b21daf84933 revamped SDLh.pas
koda
parents: 2599
diff changeset
   309
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   310
    {* SDL_image *}
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   311
    IMG_INIT_JPG = $00000001;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   312
    IMG_INIT_PNG = $00000002;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   313
    IMG_INIT_TIF = $00000004;
2600
7b21daf84933 revamped SDLh.pas
koda
parents: 2599
diff changeset
   314
8742
b7b8bd398c1b Key returned 0 for arrows under linux. Sym works, clearer anyway.
nemo
parents: 8530
diff changeset
   315
    {* SDL_keysym *}
b7b8bd398c1b Key returned 0 for arrows under linux. Sym works, clearer anyway.
nemo
parents: 8530
diff changeset
   316
    SDLK_BACKSPACE = 8;
b7b8bd398c1b Key returned 0 for arrows under linux. Sym works, clearer anyway.
nemo
parents: 8530
diff changeset
   317
    SDLK_RETURN    = 13;
b7b8bd398c1b Key returned 0 for arrows under linux. Sym works, clearer anyway.
nemo
parents: 8530
diff changeset
   318
    SDLK_ESCAPE    = 27;
b7b8bd398c1b Key returned 0 for arrows under linux. Sym works, clearer anyway.
nemo
parents: 8530
diff changeset
   319
    SDLK_UP        = 273;
b7b8bd398c1b Key returned 0 for arrows under linux. Sym works, clearer anyway.
nemo
parents: 8530
diff changeset
   320
    SDLK_DOWN      = 274;
b7b8bd398c1b Key returned 0 for arrows under linux. Sym works, clearer anyway.
nemo
parents: 8530
diff changeset
   321
5724
3064ed85a5bd Changed SDL_PollEvent to SDL_PeepEvents
Xeli
parents: 5670
diff changeset
   322
2600
7b21daf84933 revamped SDLh.pas
koda
parents: 2599
diff changeset
   323
/////////////////////////////////////////////////////////////////
7b21daf84933 revamped SDLh.pas
koda
parents: 2599
diff changeset
   324
///////////////////////  TYPE DEFINITIONS ///////////////////////
7b21daf84933 revamped SDLh.pas
koda
parents: 2599
diff changeset
   325
/////////////////////////////////////////////////////////////////
7b21daf84933 revamped SDLh.pas
koda
parents: 2599
diff changeset
   326
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   327
// two important reference points for the wanderers of this area
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   328
// http://www.freepascal.org/docs-html/ref/refsu5.html
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   329
// http://www.freepascal.org/docs-html/prog/progsu144.html
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   330
3697
d5b30d6373fc remove trailing spaces from end of line
koda
parents: 3668
diff changeset
   331
type
5046
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   332
{$IFDEF SDL13}
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   333
    PSDL_Window   = Pointer;
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   334
    PSDL_Renderer = Pointer;
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   335
    PSDL_Texture  = Pointer;
5486
e75f7c3c6275 ios: this should prevent at least one of the crashes zorg spotted; also added some callbacks in SDLh; also polished project file (from -O2 to -Os)
koda
parents: 5187
diff changeset
   336
    PSDL_GLContext= Pointer;
6693
b6a69c0bc541 carried out some cosmetic TODOs in uTouch
koda
parents: 6663
diff changeset
   337
    TSDL_FingerId = Int64;
b6a69c0bc541 carried out some cosmetic TODOs in uTouch
koda
parents: 6663
diff changeset
   338
    TSDL_TouchId  = Int64;
5046
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   339
{$ENDIF}
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   340
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   341
    PSDL_Rect = ^TSDL_Rect;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   342
    TSDL_Rect = record
2390
57fb33ab04a4 converts some gl calls to gles
koda
parents: 2379
diff changeset
   343
{$IFDEF SDL13}
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   344
        x, y, w, h: LongInt;
2390
57fb33ab04a4 converts some gl calls to gles
koda
parents: 2379
diff changeset
   345
{$ELSE}
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   346
        x, y: SmallInt;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   347
        w, h: Word;
2390
57fb33ab04a4 converts some gl calls to gles
koda
parents: 2379
diff changeset
   348
{$ENDIF}
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   349
        end;
4
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 1
diff changeset
   350
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   351
    TPoint = record
5046
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   352
        X, Y: LongInt;
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   353
        end;
4
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 1
diff changeset
   354
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   355
    PSDL_PixelFormat = ^TSDL_PixelFormat;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   356
    TSDL_PixelFormat = record
5004
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   357
{$IFDEF SDL13}
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   358
        format: LongWord;
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   359
        palette: Pointer;
5046
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   360
        BitsPerPixel : Byte;
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   361
        BytesPerPixel: Byte;
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   362
        padding: array[0..1] of Byte;
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   363
        RMask : LongWord;
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   364
        GMask : LongWord;
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   365
        BMask : LongWord;
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   366
        AMask : LongWord;
5046
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   367
        Rloss : Byte;
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   368
        Gloss : Byte;
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   369
        Bloss : Byte;
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   370
        Aloss : Byte;
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   371
        Rshift: Byte;
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   372
        Gshift: Byte;
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   373
        Bshift: Byte;
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   374
        Ashift: Byte;
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   375
        refcount: LongInt;
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   376
        next: PSDL_PixelFormat;
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   377
{$ELSE}
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   378
        palette: Pointer;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   379
        BitsPerPixel : Byte;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   380
        BytesPerPixel: Byte;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   381
        Rloss : Byte;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   382
        Gloss : Byte;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   383
        Bloss : Byte;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   384
        Aloss : Byte;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   385
        Rshift: Byte;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   386
        Gshift: Byte;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   387
        Bshift: Byte;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   388
        Ashift: Byte;
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   389
        RMask : LongWord;
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   390
        GMask : LongWord;
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   391
        BMask : LongWord;
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   392
        AMask : LongWord;
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   393
        colorkey: LongWord;
5004
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   394
        alpha: Byte;
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   395
{$ENDIF}
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   396
        end;
4
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 1
diff changeset
   397
6974
2d3beb445d64 minor changes for more compatibilities with other compilers
koda
parents: 6972
diff changeset
   398
    TSDL_eventaction = (SDL_ADDEVENT, SDL_PEEPEVENT, SDL_GETEVENT);
4
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 1
diff changeset
   399
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   400
    PSDL_Surface = ^TSDL_Surface;
6285
2c3a6bece643 ooops :D
koda
parents: 6284
diff changeset
   401
    TSDL_Surface = record
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   402
        flags : LongWord;
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   403
        format: PSDL_PixelFormat;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   404
        w, h  : LongInt;
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   405
        pitch : {$IFDEF SDL13}LongInt{$ELSE}Word{$ENDIF};
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   406
        pixels: Pointer;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   407
        offset: LongInt;
5046
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   408
{$IFDEF SDL13}
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   409
        userdata: Pointer;
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   410
        locked: LongInt;
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   411
        lock_data: Pointer;
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   412
        clip_rect: TSDL_Rect;
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   413
        map: Pointer;
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   414
        refcount: LongInt;
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   415
{$ENDIF}
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   416
        end;
4
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 1
diff changeset
   417
2248
26e11cb27c61 real fix for iphone color (reverting previous commit)
koda
parents: 2242
diff changeset
   418
7035
823caba67738 Reflects change in previous revision to uTypes
nemo
parents: 7016
diff changeset
   419
    PSDL_Color = ^TSDL_Color;
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   420
    TSDL_Color = record
7546
b50556f2a0e8 This union hasn't been needed for 5 years, and makes using other headers harder.
nemo
parents: 7237
diff changeset
   421
            r: Byte;
b50556f2a0e8 This union hasn't been needed for 5 years, and makes using other headers harder.
nemo
parents: 7237
diff changeset
   422
            g: Byte;
b50556f2a0e8 This union hasn't been needed for 5 years, and makes using other headers harder.
nemo
parents: 7237
diff changeset
   423
            b: Byte;
b50556f2a0e8 This union hasn't been needed for 5 years, and makes using other headers harder.
nemo
parents: 7237
diff changeset
   424
            unused: Byte;
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   425
        end;
4
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 1
diff changeset
   426
2248
26e11cb27c61 real fix for iphone color (reverting previous commit)
koda
parents: 2242
diff changeset
   427
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   428
    PSDL_RWops = ^TSDL_RWops;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   429
    TSeek  = function( context: PSDL_RWops; offset: LongInt; whence: LongInt ): LongInt; cdecl;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   430
    TRead  = function( context: PSDL_RWops; Ptr: Pointer; size: LongInt; maxnum : LongInt ): LongInt;  cdecl;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   431
    TWrite = function( context: PSDL_RWops; Ptr: Pointer; size: LongInt; num: LongInt ): LongInt; cdecl;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   432
    TClose = function( context: PSDL_RWops ): LongInt; cdecl;
4
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 1
diff changeset
   433
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   434
    TStdio = record
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   435
        autoclose: {$IFDEF SDL13}Boolean{$ELSE}LongInt{$ENDIF};
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   436
        fp: Pointer;
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   437
        end;
2379
d62b1f224982 - Implement zoom reset
unc0rr
parents: 2376
diff changeset
   438
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   439
    TMem = record
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   440
        base: PByte;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   441
        here: PByte;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   442
        stop: PByte;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   443
        end;
4
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 1
diff changeset
   444
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   445
    TUnknown = record
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   446
        data1: Pointer;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   447
        end;
4
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 1
diff changeset
   448
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   449
    TSDL_RWops = record
6891
ab9843957664 Improve rendering of function types, ranges, and more
unc0rr
parents: 6879
diff changeset
   450
        seek: TSeek;
ab9843957664 Improve rendering of function types, ranges, and more
unc0rr
parents: 6879
diff changeset
   451
        read: TRead;
ab9843957664 Improve rendering of function types, ranges, and more
unc0rr
parents: 6879
diff changeset
   452
        write: TWrite;
ab9843957664 Improve rendering of function types, ranges, and more
unc0rr
parents: 6879
diff changeset
   453
        close: TClose;
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   454
        type_: LongWord;
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   455
        case Byte of
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   456
            0: (stdio: TStdio);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   457
            1: (mem: TMem);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   458
            2: (unknown: TUnknown);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   459
            end;
2379
d62b1f224982 - Implement zoom reset
unc0rr
parents: 2376
diff changeset
   460
2591
c6597b65caea other controls implementation + sdlh revisited (once again)
koda
parents: 2590
diff changeset
   461
2663
d53918cd22bb random updates for 10.6 and iphone builds
koda
parents: 2633
diff changeset
   462
{* SDL_Event type definition *}
2591
c6597b65caea other controls implementation + sdlh revisited (once again)
koda
parents: 2590
diff changeset
   463
c6597b65caea other controls implementation + sdlh revisited (once again)
koda
parents: 2590
diff changeset
   464
{$IFDEF SDL13}
5046
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   465
    TSDL_KeySym = record
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   466
        scancode: LongInt;
6917
4889c2b779b4 - change uKeys to be event based rather than polling
Xeli
parents: 6900
diff changeset
   467
        sym: LongWord;
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   468
        modifier: Word;
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   469
        unicode: LongWord;
5046
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   470
        end;
3697
d5b30d6373fc remove trailing spaces from end of line
koda
parents: 3668
diff changeset
   471
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   472
    TSDL_WindowEvent = record
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   473
        type_: LongWord;
6551
a2f39cb9af62 fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents: 6415
diff changeset
   474
        timestamp: LongWord;
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   475
        windowID: LongWord;
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   476
        event: Byte;
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   477
        padding1, padding2, padding3: Byte;
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   478
        data1, data2: LongInt;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   479
        end;
6282
de449b2d9607 just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents: 6281
diff changeset
   480
de449b2d9607 just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents: 6281
diff changeset
   481
    // available in sdl12 but not exposed
de449b2d9607 just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents: 6281
diff changeset
   482
    TSDL_TextEditingEvent = record
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   483
        type_: LongWord;
6551
a2f39cb9af62 fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents: 6415
diff changeset
   484
        timestamp: LongWord;
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   485
        windowID: LongWord;
6282
de449b2d9607 just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents: 6281
diff changeset
   486
        text: array[0..31] of Byte;
de449b2d9607 just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents: 6281
diff changeset
   487
        start, lenght: LongInt;
de449b2d9607 just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents: 6281
diff changeset
   488
        end;
de449b2d9607 just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents: 6281
diff changeset
   489
de449b2d9607 just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents: 6281
diff changeset
   490
    // available in sdl12 but not exposed
de449b2d9607 just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents: 6281
diff changeset
   491
    TSDL_TextInputEvent = record
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   492
        type_: LongWord;
6551
a2f39cb9af62 fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents: 6415
diff changeset
   493
        timestamp: LongWord;
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   494
        windowID: LongWord;
6282
de449b2d9607 just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents: 6281
diff changeset
   495
        text: array[0..31] of Byte;
de449b2d9607 just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents: 6281
diff changeset
   496
        end;
de449b2d9607 just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents: 6281
diff changeset
   497
de449b2d9607 just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents: 6281
diff changeset
   498
    TSDL_TouchFingerEvent = record
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   499
        type_: LongWord;
6551
a2f39cb9af62 fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents: 6415
diff changeset
   500
        timestamp: LongWord;
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   501
        windowId: LongWord;
6693
b6a69c0bc541 carried out some cosmetic TODOs in uTouch
koda
parents: 6663
diff changeset
   502
        touchId: TSDL_TouchId;
b6a69c0bc541 carried out some cosmetic TODOs in uTouch
koda
parents: 6663
diff changeset
   503
        fingerId: TSDL_FingerId;
6282
de449b2d9607 just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents: 6281
diff changeset
   504
        state, padding1, padding2, padding3: Byte;
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   505
        x, y: Word;
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   506
        dx, dy: SmallInt;
6282
de449b2d9607 just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents: 6281
diff changeset
   507
        pressure: Word;
de449b2d9607 just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents: 6281
diff changeset
   508
        end;
de449b2d9607 just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents: 6281
diff changeset
   509
de449b2d9607 just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents: 6281
diff changeset
   510
    TSDL_TouchButtonEvent = record
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   511
        type_: LongWord;
6551
a2f39cb9af62 fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents: 6415
diff changeset
   512
        timestamp: LongWord;
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   513
        windowId: LongWord;
6693
b6a69c0bc541 carried out some cosmetic TODOs in uTouch
koda
parents: 6663
diff changeset
   514
        touchId: TSDL_TouchId;
6282
de449b2d9607 just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents: 6281
diff changeset
   515
        state, button, padding1, padding2: Byte;
de449b2d9607 just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents: 6281
diff changeset
   516
        end;
de449b2d9607 just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents: 6281
diff changeset
   517
de449b2d9607 just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents: 6281
diff changeset
   518
    TSDL_MultiGestureEvent = record
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   519
        type_: LongWord;
6551
a2f39cb9af62 fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents: 6415
diff changeset
   520
        timestamp: LongWord;
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   521
        windowId: LongWord;
6693
b6a69c0bc541 carried out some cosmetic TODOs in uTouch
koda
parents: 6663
diff changeset
   522
        touchId: TSDL_TouchId;
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   523
        dTheta, dDist, x, y: Single;
6283
6ec7bf51e04f oops, fix the size of a few event structs i just added
koda
parents: 6282
diff changeset
   524
        numFingers, padding: Word;
6282
de449b2d9607 just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents: 6281
diff changeset
   525
        end;
de449b2d9607 just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents: 6281
diff changeset
   526
de449b2d9607 just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents: 6281
diff changeset
   527
    TSDL_DollarGestureEvent = record
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   528
        type_: LongWord;
6551
a2f39cb9af62 fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents: 6415
diff changeset
   529
        timestamp: LongWord;
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   530
        windowId: LongWord;
6283
6ec7bf51e04f oops, fix the size of a few event structs i just added
koda
parents: 6282
diff changeset
   531
        touchId: Int64;
6ec7bf51e04f oops, fix the size of a few event structs i just added
koda
parents: 6282
diff changeset
   532
        gesturedId: Int64;
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   533
        numFingers: LongWord;
6283
6ec7bf51e04f oops, fix the size of a few event structs i just added
koda
parents: 6282
diff changeset
   534
        error: Single;
6282
de449b2d9607 just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents: 6281
diff changeset
   535
        end;
de449b2d9607 just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents: 6281
diff changeset
   536
6551
a2f39cb9af62 fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents: 6415
diff changeset
   537
    TSDL_DropEvent = record
a2f39cb9af62 fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents: 6415
diff changeset
   538
        type_: LongWord;
a2f39cb9af62 fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents: 6415
diff changeset
   539
        timestamp: LongWord;
a2f39cb9af62 fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents: 6415
diff changeset
   540
        filename: PChar;
a2f39cb9af62 fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents: 6415
diff changeset
   541
        end;
a2f39cb9af62 fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents: 6415
diff changeset
   542
6282
de449b2d9607 just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents: 6281
diff changeset
   543
    TSDL_SysWMEvent = record
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   544
        type_: LongWord;
6551
a2f39cb9af62 fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents: 6415
diff changeset
   545
        timestamp: LongWord;
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   546
        msg: Pointer;
6282
de449b2d9607 just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents: 6281
diff changeset
   547
        end;
2591
c6597b65caea other controls implementation + sdlh revisited (once again)
koda
parents: 2590
diff changeset
   548
{$ELSE}
3463
23c50be687a9 update sdl functions to latest revision
koda
parents: 3405
diff changeset
   549
    TSDL_KeySym = record
23c50be687a9 update sdl functions to latest revision
koda
parents: 3405
diff changeset
   550
        scancode: Byte;
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   551
        sym: LongWord;
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   552
        modifier: LongWord;
3463
23c50be687a9 update sdl functions to latest revision
koda
parents: 3405
diff changeset
   553
        unicode: Word;
23c50be687a9 update sdl functions to latest revision
koda
parents: 3405
diff changeset
   554
        end;
23c50be687a9 update sdl functions to latest revision
koda
parents: 3405
diff changeset
   555
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   556
    TSDL_ActiveEvent = record
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   557
        type_: Byte;
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   558
        gain: Byte;
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   559
        state: Byte;
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   560
        end;
2714
c85ffe57d971 update iphone frontend to the new (silly) sdl api, code cleanups for other sections
koda
parents: 2701
diff changeset
   561
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   562
    TSDL_ResizeEvent = record
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   563
        type_: Byte;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   564
        w, h: LongInt;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   565
        end;
2591
c6597b65caea other controls implementation + sdlh revisited (once again)
koda
parents: 2590
diff changeset
   566
{$ENDIF}
c6597b65caea other controls implementation + sdlh revisited (once again)
koda
parents: 2590
diff changeset
   567
5046
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   568
    TSDL_KeyboardEvent = record
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   569
{$IFDEF SDL13}
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   570
        type_: LongWord;
6917
4889c2b779b4 - change uKeys to be event based rather than polling
Xeli
parents: 6900
diff changeset
   571
//        timestamp: LongWord;
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   572
        windowID: LongWord;
6917
4889c2b779b4 - change uKeys to be event based rather than polling
Xeli
parents: 6900
diff changeset
   573
        state, repeat_ {*,padding2, padding3*}: Byte;
5046
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   574
{$ELSE}
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   575
        type_, which, state: Byte;
5046
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   576
{$ENDIF}
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   577
        keysym: TSDL_KeySym;
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   578
        end;
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   579
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   580
    TSDL_MouseMotionEvent = record
2591
c6597b65caea other controls implementation + sdlh revisited (once again)
koda
parents: 2590
diff changeset
   581
{$IFDEF SDL13}
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   582
        type_: LongWord;
6551
a2f39cb9af62 fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents: 6415
diff changeset
   583
        timestamp: LongWord;
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   584
        windowID: LongWord;
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   585
        state, padding1, padding2, padding3: Byte;
3349
5571592f10a8 update ifrontend to latest ammostore protocol
koda
parents: 3341
diff changeset
   586
        x, y, z, xrel, yrel : LongInt;
2591
c6597b65caea other controls implementation + sdlh revisited (once again)
koda
parents: 2590
diff changeset
   587
{$ELSE}
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   588
        type_, which, state: Byte;
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   589
        x, y, xrel, yrel : Word;
2591
c6597b65caea other controls implementation + sdlh revisited (once again)
koda
parents: 2590
diff changeset
   590
{$ENDIF}
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   591
        end;
2591
c6597b65caea other controls implementation + sdlh revisited (once again)
koda
parents: 2590
diff changeset
   592
5046
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   593
    TSDL_MouseButtonEvent = record
2591
c6597b65caea other controls implementation + sdlh revisited (once again)
koda
parents: 2590
diff changeset
   594
{$IFDEF SDL13}
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   595
        type_: LongWord;
6551
a2f39cb9af62 fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents: 6415
diff changeset
   596
        timestamp: LongWord;
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   597
        windowID: LongWord;
6917
4889c2b779b4 - change uKeys to be event based rather than polling
Xeli
parents: 6900
diff changeset
   598
        button, state, padding1, padding2: Byte;
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   599
        x, y: LongInt;
2591
c6597b65caea other controls implementation + sdlh revisited (once again)
koda
parents: 2590
diff changeset
   600
{$ELSE}
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   601
        type_, which, button, state: Byte;
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   602
        x, y: Word;
2591
c6597b65caea other controls implementation + sdlh revisited (once again)
koda
parents: 2590
diff changeset
   603
{$ENDIF}
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   604
        end;
2376
ece7b87f1334 Strip trailing spaces
nemo
parents: 2254
diff changeset
   605
6283
6ec7bf51e04f oops, fix the size of a few event structs i just added
koda
parents: 6282
diff changeset
   606
    TSDL_MouseWheelEvent = record
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   607
        type_: LongWord;
6283
6ec7bf51e04f oops, fix the size of a few event structs i just added
koda
parents: 6282
diff changeset
   608
{$IFDEF SDL13}
6551
a2f39cb9af62 fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents: 6415
diff changeset
   609
        timestamp: LongWord;
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   610
        windowID: LongWord;
6283
6ec7bf51e04f oops, fix the size of a few event structs i just added
koda
parents: 6282
diff changeset
   611
{$ELSE}
6ec7bf51e04f oops, fix the size of a few event structs i just added
koda
parents: 6282
diff changeset
   612
        which: Byte;
6ec7bf51e04f oops, fix the size of a few event structs i just added
koda
parents: 6282
diff changeset
   613
{$ENDIF}
6ec7bf51e04f oops, fix the size of a few event structs i just added
koda
parents: 6282
diff changeset
   614
        x, y: LongInt;
6ec7bf51e04f oops, fix the size of a few event structs i just added
koda
parents: 6282
diff changeset
   615
        end;
6ec7bf51e04f oops, fix the size of a few event structs i just added
koda
parents: 6282
diff changeset
   616
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   617
    TSDL_JoyAxisEvent = record
6551
a2f39cb9af62 fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents: 6415
diff changeset
   618
{$IFDEF SDL13}
a2f39cb9af62 fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents: 6415
diff changeset
   619
        type_: LongWord;
a2f39cb9af62 fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents: 6415
diff changeset
   620
        timestamp: LongWord;
a2f39cb9af62 fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents: 6415
diff changeset
   621
{$ELSE}
a2f39cb9af62 fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents: 6415
diff changeset
   622
        type_: Byte;
a2f39cb9af62 fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents: 6415
diff changeset
   623
{$ENDIF}
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   624
        which: Byte;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   625
        axis: Byte;
2591
c6597b65caea other controls implementation + sdlh revisited (once again)
koda
parents: 2590
diff changeset
   626
{$IFDEF SDL13}
5046
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   627
        padding1, padding2: Byte;
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   628
        value: LongInt;
2591
c6597b65caea other controls implementation + sdlh revisited (once again)
koda
parents: 2590
diff changeset
   629
{$ELSE}
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   630
        value: SmallInt;
3697
d5b30d6373fc remove trailing spaces from end of line
koda
parents: 3668
diff changeset
   631
{$ENDIF}
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   632
        end;
3697
d5b30d6373fc remove trailing spaces from end of line
koda
parents: 3668
diff changeset
   633
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   634
    TSDL_JoyBallEvent = record
6551
a2f39cb9af62 fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents: 6415
diff changeset
   635
{$IFDEF SDL13}
a2f39cb9af62 fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents: 6415
diff changeset
   636
        type_: LongWord;
a2f39cb9af62 fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents: 6415
diff changeset
   637
        timestamp: LongWord;
a2f39cb9af62 fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents: 6415
diff changeset
   638
{$ELSE}
a2f39cb9af62 fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents: 6415
diff changeset
   639
        type_: Byte;
a2f39cb9af62 fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents: 6415
diff changeset
   640
{$ENDIF}
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   641
        which: Byte;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   642
        ball: Byte;
2591
c6597b65caea other controls implementation + sdlh revisited (once again)
koda
parents: 2590
diff changeset
   643
{$IFDEF SDL13}
5046
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   644
        padding1, padding2: Byte;
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   645
        xrel, yrel: LongInt;
2591
c6597b65caea other controls implementation + sdlh revisited (once again)
koda
parents: 2590
diff changeset
   646
{$ELSE}
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   647
        xrel, yrel: SmallInt;
2591
c6597b65caea other controls implementation + sdlh revisited (once again)
koda
parents: 2590
diff changeset
   648
{$ENDIF}
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   649
        end;
2591
c6597b65caea other controls implementation + sdlh revisited (once again)
koda
parents: 2590
diff changeset
   650
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   651
    TSDL_JoyHatEvent = record
6551
a2f39cb9af62 fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents: 6415
diff changeset
   652
{$IFDEF SDL13}
a2f39cb9af62 fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents: 6415
diff changeset
   653
        type_: LongWord;
a2f39cb9af62 fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents: 6415
diff changeset
   654
        timestamp: LongWord;
a2f39cb9af62 fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents: 6415
diff changeset
   655
{$ELSE}
a2f39cb9af62 fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents: 6415
diff changeset
   656
        type_: Byte;
a2f39cb9af62 fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents: 6415
diff changeset
   657
{$ENDIF}
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   658
        which: Byte;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   659
        hat: Byte;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   660
        value: Byte;
5046
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   661
{$IFDEF SDL13}
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   662
        padding1: Byte;
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   663
{$ENDIF}
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   664
        end;
3697
d5b30d6373fc remove trailing spaces from end of line
koda
parents: 3668
diff changeset
   665
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   666
    TSDL_JoyButtonEvent = record
6551
a2f39cb9af62 fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents: 6415
diff changeset
   667
{$IFDEF SDL13}
a2f39cb9af62 fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents: 6415
diff changeset
   668
        type_: LongWord;
a2f39cb9af62 fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents: 6415
diff changeset
   669
        timestamp: LongWord;
a2f39cb9af62 fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents: 6415
diff changeset
   670
{$ELSE}
a2f39cb9af62 fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents: 6415
diff changeset
   671
        type_: Byte;
a2f39cb9af62 fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents: 6415
diff changeset
   672
{$ENDIF}
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   673
        which: Byte;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   674
        button: Byte;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   675
        state: Byte;
5046
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   676
{$IFDEF SDL13}
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   677
        padding1: Byte;
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   678
{$ENDIF}
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   679
        end;
2591
c6597b65caea other controls implementation + sdlh revisited (once again)
koda
parents: 2590
diff changeset
   680
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   681
    TSDL_QuitEvent = record
6551
a2f39cb9af62 fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents: 6415
diff changeset
   682
{$IFDEF SDL13}
a2f39cb9af62 fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents: 6415
diff changeset
   683
        type_: LongWord;
a2f39cb9af62 fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents: 6415
diff changeset
   684
        timestamp: LongWord;
a2f39cb9af62 fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents: 6415
diff changeset
   685
{$ELSE}
a2f39cb9af62 fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents: 6415
diff changeset
   686
        type_: Byte;
a2f39cb9af62 fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents: 6415
diff changeset
   687
{$ENDIF}
3349
5571592f10a8 update ifrontend to latest ammostore protocol
koda
parents: 3341
diff changeset
   688
        end;
2591
c6597b65caea other controls implementation + sdlh revisited (once again)
koda
parents: 2590
diff changeset
   689
4454
42bfc1a70968 more retina support and multitasking support
koda
parents: 4380
diff changeset
   690
    TSDL_UserEvent = record
42bfc1a70968 more retina support and multitasking support
koda
parents: 4380
diff changeset
   691
{$IFDEF SDL13}
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   692
        type_: LongWord;
6551
a2f39cb9af62 fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents: 6415
diff changeset
   693
        timestamp: LongWord;
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   694
        windowID: LongWord;
4454
42bfc1a70968 more retina support and multitasking support
koda
parents: 4380
diff changeset
   695
{$ELSE}
42bfc1a70968 more retina support and multitasking support
koda
parents: 4380
diff changeset
   696
        type_: Byte;
42bfc1a70968 more retina support and multitasking support
koda
parents: 4380
diff changeset
   697
{$ENDIF}
42bfc1a70968 more retina support and multitasking support
koda
parents: 4380
diff changeset
   698
        code: LongInt;
42bfc1a70968 more retina support and multitasking support
koda
parents: 4380
diff changeset
   699
        data1, data2: Pointer;
42bfc1a70968 more retina support and multitasking support
koda
parents: 4380
diff changeset
   700
        end;
42bfc1a70968 more retina support and multitasking support
koda
parents: 4380
diff changeset
   701
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   702
    PSDL_Event = ^TSDL_Event;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   703
    TSDL_Event = record
2591
c6597b65caea other controls implementation + sdlh revisited (once again)
koda
parents: 2590
diff changeset
   704
{$IFDEF SDL13}
3463
23c50be687a9 update sdl functions to latest revision
koda
parents: 3405
diff changeset
   705
        case LongInt of
23c50be687a9 update sdl functions to latest revision
koda
parents: 3405
diff changeset
   706
            SDL_FIRSTEVENT: (type_: LongInt);
5052
74a81c276d67 fix a couple of loose ends
koda
parents: 5050
diff changeset
   707
            SDL_WINDOWEVENT: (window: TSDL_WindowEvent);
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   708
            SDL_KEYDOWN,
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   709
            SDL_KEYUP: (key: TSDL_KeyboardEvent);
6282
de449b2d9607 just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents: 6281
diff changeset
   710
            SDL_TEXTEDITING: (edit: TSDL_TextEditingEvent);
de449b2d9607 just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents: 6281
diff changeset
   711
            SDL_TEXTINPUT: (tedit: TSDL_TextInputEvent);
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   712
            SDL_MOUSEMOTION: (motion: TSDL_MouseMotionEvent);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   713
            SDL_MOUSEBUTTONDOWN,
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   714
            SDL_MOUSEBUTTONUP: (button: TSDL_MouseButtonEvent);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   715
            SDL_MOUSEWHEEL: (wheel: TSDL_MouseWheelEvent);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   716
            SDL_JOYAXISMOTION: (jaxis: TSDL_JoyAxisEvent);
5052
74a81c276d67 fix a couple of loose ends
koda
parents: 5050
diff changeset
   717
            SDL_JOYBALLMOTION: (jball: TSDL_JoyBallEvent);
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   718
            SDL_JOYHATMOTION: (jhat: TSDL_JoyHatEvent);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   719
            SDL_JOYBUTTONDOWN,
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   720
            SDL_JOYBUTTONUP: (jbutton: TSDL_JoyButtonEvent);
5046
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   721
            SDL_QUITEV: (quit: TSDL_QuitEvent);
4454
42bfc1a70968 more retina support and multitasking support
koda
parents: 4380
diff changeset
   722
            SDL_USEREVENT: (user: TSDL_UserEvent);
6282
de449b2d9607 just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents: 6281
diff changeset
   723
            SDL_SYSWMEVENT: (syswm: TSDL_SysWMEvent);
de449b2d9607 just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents: 6281
diff changeset
   724
            SDL_FINGERDOWN,
de449b2d9607 just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents: 6281
diff changeset
   725
            SDL_FINGERUP,
de449b2d9607 just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents: 6281
diff changeset
   726
            SDL_FINGERMOTION: (tfinger: TSDL_TouchFingerEvent);
de449b2d9607 just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents: 6281
diff changeset
   727
            SDL_TOUCHBUTTONUP,
de449b2d9607 just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents: 6281
diff changeset
   728
            SDL_TOUCHBUTTONDOWN: (tbutton: TSDL_TouchButtonEvent);
de449b2d9607 just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents: 6281
diff changeset
   729
            SDL_MULTIGESTURE: (mgesture: TSDL_MultiGestureEvent);
de449b2d9607 just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents: 6281
diff changeset
   730
            SDL_DOLLARGESTURE: (dgesture: TSDL_DollarGestureEvent);
6551
a2f39cb9af62 fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents: 6415
diff changeset
   731
            SDL_DROPFILE: (drop: TSDL_DropEvent);
6280
3725cfec4542 Avoid overflowing event
nemo
parents: 6072
diff changeset
   732
            SDL_ALLEVENTS: (foo: shortstring);
2591
c6597b65caea other controls implementation + sdlh revisited (once again)
koda
parents: 2590
diff changeset
   733
{$ELSE}
3463
23c50be687a9 update sdl functions to latest revision
koda
parents: 3405
diff changeset
   734
        case Byte of
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   735
            SDL_NOEVENT: (type_: Byte);
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   736
            SDL_ACTIVEEVENT: (active: TSDL_ActiveEvent);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   737
            SDL_KEYDOWN,
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   738
            SDL_KEYUP: (key: TSDL_KeyboardEvent);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   739
            SDL_MOUSEMOTION: (motion: TSDL_MouseMotionEvent);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   740
            SDL_MOUSEBUTTONDOWN,
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   741
            SDL_MOUSEBUTTONUP: (button: TSDL_MouseButtonEvent);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   742
            SDL_JOYAXISMOTION: (jaxis: TSDL_JoyAxisEvent);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   743
            SDL_JOYHATMOTION: (jhat: TSDL_JoyHatEvent);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   744
            SDL_JOYBALLMOTION: (jball: TSDL_JoyBallEvent);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   745
            SDL_JOYBUTTONDOWN,
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   746
            SDL_JOYBUTTONUP: (jbutton: TSDL_JoyButtonEvent);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   747
            SDL_QUITEV: (quit: TSDL_QuitEvent);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   748
            //SDL_SYSWMEVENT,SDL_EVENT_RESERVEDA,SDL_EVENT_RESERVEDB
5670
e01f0b6f1969 enable window resizing (tested only on linux) - fix issue 103
koda
parents: 5660
diff changeset
   749
            SDL_VIDEORESIZE: (resize: TSDL_ResizeEvent);
6280
3725cfec4542 Avoid overflowing event
nemo
parents: 6072
diff changeset
   750
            SDL_ALLEVENTS: (foo: shortstring);
2591
c6597b65caea other controls implementation + sdlh revisited (once again)
koda
parents: 2590
diff changeset
   751
{$ENDIF}
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   752
        end;
2591
c6597b65caea other controls implementation + sdlh revisited (once again)
koda
parents: 2590
diff changeset
   753
5745
71e69623be39 allow fullscreen resolution selection (but still leaves in the auto max for commodity)
koda
parents: 5724
diff changeset
   754
    TSDL_EventFilter = function( event : PSDL_Event ): Integer; cdecl;
71e69623be39 allow fullscreen resolution selection (but still leaves in the auto max for commodity)
koda
parents: 5724
diff changeset
   755
7035
823caba67738 Reflects change in previous revision to uTypes
nemo
parents: 7016
diff changeset
   756
    TByteArray = array[0..65535] of Byte;
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   757
    PByteArray = ^TByteArray;
7035
823caba67738 Reflects change in previous revision to uTypes
nemo
parents: 7016
diff changeset
   758
    TLongWordArray = array[0..16383] of LongWord;
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   759
    PLongWordArray = ^TLongWordArray;
2591
c6597b65caea other controls implementation + sdlh revisited (once again)
koda
parents: 2590
diff changeset
   760
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   761
    PSDL_Thread = Pointer;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   762
    PSDL_mutex = Pointer;
2591
c6597b65caea other controls implementation + sdlh revisited (once again)
koda
parents: 2590
diff changeset
   763
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   764
    TSDL_GLattr = (
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   765
        SDL_GL_RED_SIZE,
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   766
        SDL_GL_GREEN_SIZE,
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   767
        SDL_GL_BLUE_SIZE,
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   768
        SDL_GL_ALPHA_SIZE,
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   769
        SDL_GL_BUFFER_SIZE,
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   770
        SDL_GL_DOUBLEBUFFER,
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   771
        SDL_GL_DEPTH_SIZE,
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   772
        SDL_GL_STENCIL_SIZE,
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   773
        SDL_GL_ACCUM_RED_SIZE,
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   774
        SDL_GL_ACCUM_GREEN_SIZE,
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   775
        SDL_GL_ACCUM_BLUE_SIZE,
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   776
        SDL_GL_ACCUM_ALPHA_SIZE,
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   777
        SDL_GL_STEREO,
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   778
        SDL_GL_MULTISAMPLEBUFFERS,
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   779
        SDL_GL_MULTISAMPLESAMPLES,
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   780
        SDL_GL_ACCELERATED_VISUAL,
2617
ef0d93cd61b2 add option for vsync -- good results on mac and linux, should be harmless on others (please test)
koda
parents: 2606
diff changeset
   781
{$IFDEF SDL13}
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   782
        SDL_GL_RETAINED_BACKING,
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   783
        SDL_GL_CONTEXT_MAJOR_VERSION,
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   784
        SDL_GL_CONTEXT_MINOR_VERSION
2617
ef0d93cd61b2 add option for vsync -- good results on mac and linux, should be harmless on others (please test)
koda
parents: 2606
diff changeset
   785
{$ELSE}
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   786
        SDL_GL_SWAP_CONTROL
2617
ef0d93cd61b2 add option for vsync -- good results on mac and linux, should be harmless on others (please test)
koda
parents: 2606
diff changeset
   787
{$ENDIF}
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   788
        );
2376
ece7b87f1334 Strip trailing spaces
nemo
parents: 2254
diff changeset
   789
2252
03fd99dff989 accessory stuff for iphone
koda
parents: 2251
diff changeset
   790
{$IFDEF SDL13}
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   791
    TSDL_ArrayByteOrder = (  // array component order, low Byte -> high Byte
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   792
        SDL_ARRAYORDER_NONE,
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   793
        SDL_ARRAYORDER_RGB,
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   794
        SDL_ARRAYORDER_RGBA,
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   795
        SDL_ARRAYORDER_ARGB,
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   796
        SDL_ARRAYORDER_BGR,
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   797
        SDL_ARRAYORDER_BGRA,
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   798
        SDL_ARRAYORDER_ABGR
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   799
        );
2252
03fd99dff989 accessory stuff for iphone
koda
parents: 2251
diff changeset
   800
{$ENDIF}
4
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 1
diff changeset
   801
2600
7b21daf84933 revamped SDLh.pas
koda
parents: 2599
diff changeset
   802
// Joystick/Controller support
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   803
    PSDL_Joystick = ^TSDL_Joystick;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   804
    TSDL_Joystick = record
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   805
            end;
2600
7b21daf84933 revamped SDLh.pas
koda
parents: 2599
diff changeset
   806
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   807
    {* SDL_TTF *}
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   808
    PTTF_Font = ^TTTF_font;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   809
    TTTF_Font = record
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   810
            end;
2600
7b21daf84933 revamped SDLh.pas
koda
parents: 2599
diff changeset
   811
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   812
    {* SDL_mixer *}
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   813
    PMixChunk = ^TMixChunk;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   814
    TMixChunk = record
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   815
        allocated: LongWord;
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   816
        abuf     : PByte;
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   817
        alen     : LongWord;
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   818
        volume   : PByte;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   819
        end;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   820
    TMusic = (MUS_CMD, MUS_WAV, MUS_MOD, MUS_MID, MUS_OGG, MUS_MP3);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   821
    TMix_Fading = (MIX_NO_FADING, MIX_FADING_OUT, MIX_FADING_IN);
2600
7b21daf84933 revamped SDLh.pas
koda
parents: 2599
diff changeset
   822
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   823
    TMidiSong = record
6580
6155187bf599 A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents: 6551
diff changeset
   824
                samples : LongInt;
6155187bf599 A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents: 6551
diff changeset
   825
                events  : Pointer;
6155187bf599 A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents: 6551
diff changeset
   826
                end;
2600
7b21daf84933 revamped SDLh.pas
koda
parents: 2599
diff changeset
   827
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   828
    TMusicUnion = record
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   829
        case Byte of
6580
6155187bf599 A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents: 6551
diff changeset
   830
            0: ( midi : TMidiSong );
6155187bf599 A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents: 6551
diff changeset
   831
            1: ( ogg  : Pointer);
6155187bf599 A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents: 6551
diff changeset
   832
            end;
2600
7b21daf84933 revamped SDLh.pas
koda
parents: 2599
diff changeset
   833
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   834
    PMixMusic = ^TMixMusic;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   835
    TMixMusic = record
6580
6155187bf599 A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents: 6551
diff changeset
   836
                end;
2600
7b21daf84933 revamped SDLh.pas
koda
parents: 2599
diff changeset
   837
7180
53ffc8853008 here it is
Stepan777 <stepik-777@mail.ru>
parents: 7167
diff changeset
   838
    TPostMix = procedure(udata: pointer; stream: PByte; len: LongInt); cdecl;
53ffc8853008 here it is
Stepan777 <stepik-777@mail.ru>
parents: 7167
diff changeset
   839
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   840
    {* SDL_net *}
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   841
    TIPAddress = record
6580
6155187bf599 A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents: 6551
diff changeset
   842
                host: LongWord;
6155187bf599 A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents: 6551
diff changeset
   843
                port: Word;
6155187bf599 A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents: 6551
diff changeset
   844
                end;
2600
7b21daf84933 revamped SDLh.pas
koda
parents: 2599
diff changeset
   845
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   846
    PTCPSocket = ^TTCPSocket;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   847
    TTCPSocket = record
6580
6155187bf599 A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents: 6551
diff changeset
   848
                ready: LongInt;
6155187bf599 A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents: 6551
diff changeset
   849
                channel: LongInt;
6155187bf599 A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents: 6551
diff changeset
   850
                remoteAddress: TIPaddress;
6155187bf599 A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents: 6551
diff changeset
   851
                localAddress: TIPaddress;
6155187bf599 A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents: 6551
diff changeset
   852
                sflag: LongInt;
6155187bf599 A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents: 6551
diff changeset
   853
                end;
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   854
    PSDLNet_SocketSet = ^TSDLNet_SocketSet;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
   855
    TSDLNet_SocketSet = record
6580
6155187bf599 A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents: 6551
diff changeset
   856
                        numsockets,
6155187bf599 A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents: 6551
diff changeset
   857
                        maxsockets: LongInt;
6155187bf599 A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents: 6551
diff changeset
   858
                        sockets: PTCPSocket;
6155187bf599 A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents: 6551
diff changeset
   859
                        end;
2600
7b21daf84933 revamped SDLh.pas
koda
parents: 2599
diff changeset
   860
7b21daf84933 revamped SDLh.pas
koda
parents: 2599
diff changeset
   861
7b21daf84933 revamped SDLh.pas
koda
parents: 2599
diff changeset
   862
/////////////////////////////////////////////////////////////////
7b21daf84933 revamped SDLh.pas
koda
parents: 2599
diff changeset
   863
/////////////////////  FUNCTION DEFINITIONS /////////////////////
7b21daf84933 revamped SDLh.pas
koda
parents: 2599
diff changeset
   864
/////////////////////////////////////////////////////////////////
7b21daf84933 revamped SDLh.pas
koda
parents: 2599
diff changeset
   865
7b21daf84933 revamped SDLh.pas
koda
parents: 2599
diff changeset
   866
7b21daf84933 revamped SDLh.pas
koda
parents: 2599
diff changeset
   867
{* SDL *}
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   868
function  SDL_Init(flags: LongWord): LongInt; cdecl; external SDLLibName;
2674
2fce032f2f95 lupdate + Palewolf's updated spanish translation + other patches of mine
koda
parents: 2671
diff changeset
   869
function  SDL_InitSubSystem(flags: LongWord): LongInt; cdecl; external SDLLibName;
4
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 1
diff changeset
   870
procedure SDL_Quit; cdecl; external SDLLibName;
2671
7e0f88013fe8 smaller patches, one missing Sky-lowres, IMG_Init and Mix_Init (might require newer libraries), updates to SDL bindings, code cleanup, new compile flags
koda
parents: 2669
diff changeset
   871
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   872
procedure SDL_Delay(msec: LongWord); cdecl; external SDLLibName;
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   873
function  SDL_GetTicks: LongWord; cdecl; external SDLLibName;
4
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 1
diff changeset
   874
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 1
diff changeset
   875
function  SDL_MustLock(Surface: PSDL_Surface): Boolean;
432
b0f693024b50 Delphi mode off
unc0rr
parents: 377
diff changeset
   876
function  SDL_LockSurface(Surface: PSDL_Surface): LongInt; cdecl; external SDLLibName;
4
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 1
diff changeset
   877
procedure SDL_UnlockSurface(Surface: PSDL_Surface); cdecl; external SDLLibName;
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 1
diff changeset
   878
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 1
diff changeset
   879
function  SDL_GetError: PChar; cdecl; external SDLLibName;
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 1
diff changeset
   880
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   881
function  SDL_SetVideoMode(width, height, bpp: LongInt; flags: LongWord): PSDL_Surface; cdecl; external SDLLibName;
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   882
function  SDL_CreateRGBSurface(flags: LongWord; Width, Height, Depth: LongInt; RMask, GMask, BMask, AMask: LongWord): PSDL_Surface; cdecl; external SDLLibName;
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   883
function  SDL_CreateRGBSurfaceFrom(pixels: Pointer; width, height, depth, pitch: LongInt; RMask, GMask, BMask, AMask: LongWord): PSDL_Surface; cdecl; external SDLLibName;
4
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 1
diff changeset
   884
procedure SDL_FreeSurface(Surface: PSDL_Surface); cdecl; external SDLLibName;
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   885
function  SDL_SetColorKey(surface: PSDL_Surface; flag, key: LongWord): LongInt; cdecl; external SDLLibName;
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   886
function  SDL_SetAlpha(surface: PSDL_Surface; flag, key: LongWord): LongInt; cdecl; external SDLLibName;
2248
26e11cb27c61 real fix for iphone color (reverting previous commit)
koda
parents: 2242
diff changeset
   887
function  SDL_ConvertSurface(src: PSDL_Surface; fmt: PSDL_PixelFormat; flags: LongInt): PSDL_Surface; cdecl; external SDLLibName;
4
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 1
diff changeset
   888
105
e7cb9bb4a9de - Fixed integer->longint
unc0rr
parents: 95
diff changeset
   889
function  SDL_UpperBlit(src: PSDL_Surface; srcrect: PSDL_Rect; dst: PSDL_Surface; dstrect: PSDL_Rect): LongInt; cdecl; external SDLLibName;
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   890
function  SDL_FillRect(dst: PSDL_Surface; dstrect: PSDL_Rect; color: LongWord): LongInt; cdecl; external SDLLibName;
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   891
procedure SDL_UpdateRect(Screen: PSDL_Surface; x, y: LongInt; w, h: LongWord); cdecl; external SDLLibName;
432
b0f693024b50 Delphi mode off
unc0rr
parents: 377
diff changeset
   892
function  SDL_Flip(Screen: PSDL_Surface): LongInt; cdecl; external SDLLibName;
4
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 1
diff changeset
   893
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   894
procedure SDL_GetRGB(pixel: LongWord; fmt: PSDL_PixelFormat; r, g, b: PByte); cdecl; external SDLLibName;
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   895
procedure SDL_GetRGBA(pixel: LongWord; fmt: PSDL_PixelFormat; r, g, b, a: PByte); cdecl; external SDLLibName;
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   896
function  SDL_MapRGB(format: PSDL_PixelFormat; r, g, b: Byte): LongWord; cdecl; external SDLLibName;
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   897
function  SDL_MapRGBA(format: PSDL_PixelFormat; r, g, b, a: Byte): LongWord; cdecl; external SDLLibName;
4
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 1
diff changeset
   898
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 1
diff changeset
   899
function  SDL_DisplayFormat(Surface: PSDL_Surface): PSDL_Surface; cdecl; external SDLLibName;
35
9367f246fb5f - New rope
unc0rr
parents: 11
diff changeset
   900
function  SDL_DisplayFormatAlpha(Surface: PSDL_Surface): PSDL_Surface; cdecl; external SDLLibName;
4
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 1
diff changeset
   901
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 1
diff changeset
   902
function  SDL_RWFromFile(filename, mode: PChar): PSDL_RWops; cdecl; external SDLLibName;
432
b0f693024b50 Delphi mode off
unc0rr
parents: 377
diff changeset
   903
function  SDL_SaveBMP_RW(surface: PSDL_Surface; dst: PSDL_RWops; freedst: LongInt): LongInt; cdecl; external SDLLibName;
4
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 1
diff changeset
   904
2152
a2811690da1b Patch by koda:
unc0rr
parents: 2017
diff changeset
   905
{$IFDEF SDL13}
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   906
function  SDL_CreateWindow(title: PChar; x,y,w,h: LongInt; flags: LongWord): PSDL_Window; cdecl; external SDLLibName;
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   907
function  SDL_CreateRenderer(window: PSDL_Window; index: LongInt; flags: LongWord): PSDL_Renderer; cdecl; external SDLLibName;
5486
e75f7c3c6275 ios: this should prevent at least one of the crashes zorg spotted; also added some callbacks in SDLh; also polished project file (from -O2 to -Os)
koda
parents: 5187
diff changeset
   908
function  SDL_DestroyWindow(window: PSDL_Window): LongInt; cdecl; external SDLLibName;
4933
86bd82d58a0b update sdl apis to use the new rendering functions
koda
parents: 4911
diff changeset
   909
function  SDL_DestroyRenderer(renderer: PSDL_Renderer): LongInt; cdecl; external SDLLibName;
6021
652a199d4f38 some hopefully harmless experiments
koda
parents: 6013
diff changeset
   910
procedure SDL_SetWindowSize(window: PSDL_Window; w, h: LongInt); cdecl; external SDLLibName;
6281
dc9c44f47e75 avoid linking compatible code from sdl library, let's provide our own
koda
parents: 6280
diff changeset
   911
function  SDL_GetCurrentVideoDriver:Pchar; cdecl; external SDLLibName;
5486
e75f7c3c6275 ios: this should prevent at least one of the crashes zorg spotted; also added some callbacks in SDLh; also polished project file (from -O2 to -Os)
koda
parents: 5187
diff changeset
   912
e75f7c3c6275 ios: this should prevent at least one of the crashes zorg spotted; also added some callbacks in SDLh; also polished project file (from -O2 to -Os)
koda
parents: 5187
diff changeset
   913
function  SDL_GL_CreateContext(window: PSDL_Window): PSDL_GLContext; cdecl; external SDLLibName;
e75f7c3c6275 ios: this should prevent at least one of the crashes zorg spotted; also added some callbacks in SDLh; also polished project file (from -O2 to -Os)
koda
parents: 5187
diff changeset
   914
procedure SDL_GL_DeleteContext(context: PSDL_GLContext); cdecl; external SDLLibName;
e75f7c3c6275 ios: this should prevent at least one of the crashes zorg spotted; also added some callbacks in SDLh; also polished project file (from -O2 to -Os)
koda
parents: 5187
diff changeset
   915
function  SDL_GL_SwapWindow(window: PSDL_Window): LongInt; cdecl; external SDLLibName;
5505
a55aab592950 Ditch the renderer system in sdl1.3 and use the 'old fashioned' sdl/opengl context. This gives us more flexibility and less problem in receiving video events (expecially on mobile platform) as well as not having to care to reset the gl context every time sdl interferes.
koda
parents: 5486
diff changeset
   916
function  SDL_GL_SetSwapInterval(interval: LongInt): LongInt; cdecl; external SDLLibName;
5177
b850b544addc remove unusued voices also for ios
koda
parents: 5103
diff changeset
   917
4933
86bd82d58a0b update sdl apis to use the new rendering functions
koda
parents: 4911
diff changeset
   918
procedure SDL_VideoQuit; cdecl; external SDLLibName;
4911
5d10bd725efe update libs and move the multiwindow handling from internal libsdl mods to proper apis usage
koda
parents: 4454
diff changeset
   919
function  SDL_GetNumVideoDisplays: LongInt; cdecl; external SDLLibName;
5486
e75f7c3c6275 ios: this should prevent at least one of the crashes zorg spotted; also added some callbacks in SDLh; also polished project file (from -O2 to -Os)
koda
parents: 5187
diff changeset
   920
procedure SDL_ShowWindow(window: PSDL_Window); cdecl; external SDLLibName;
2716
b9ca1bfca24f complete the replacement of init/free wrappers for every unit
koda
parents: 2714
diff changeset
   921
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   922
function  SDL_SetRenderDrawColor(renderer: PSDL_Renderer; r,g,b,a: Byte): LongInt; cdecl; external SDLLibName;
5187
b01ab1ef01fb make sdl1.3 window creation code more readable
koda
parents: 5177
diff changeset
   923
function  SDL_GetRenderer(window: PSDL_Window): PSDL_Renderer; cdecl; external SDLLibName;
4933
86bd82d58a0b update sdl apis to use the new rendering functions
koda
parents: 4911
diff changeset
   924
function  SDL_RenderFillRect(renderer: PSDL_Renderer; rect: PSDL_Rect): LongInt; cdecl; external SDLLibName;
86bd82d58a0b update sdl apis to use the new rendering functions
koda
parents: 4911
diff changeset
   925
function  SDL_RenderClear(renderer: PSDL_Renderer): LongInt; cdecl; external SDLLibName;
86bd82d58a0b update sdl apis to use the new rendering functions
koda
parents: 4911
diff changeset
   926
procedure SDL_RenderPresent(renderer: PSDL_Renderer); cdecl; external SDLLibName;
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   927
function  SDL_RenderReadPixels(renderer: PSDL_Renderer; rect: PSDL_Rect; format: LongInt; pixels: Pointer; pitch: LongInt): LongInt; cdecl; external SDLLibName;
5187
b01ab1ef01fb make sdl1.3 window creation code more readable
koda
parents: 5177
diff changeset
   928
function  SDL_RenderSetViewport(window: PSDL_Window; rect: PSDL_Rect): LongInt; cdecl; external SDLLibName;
2697
75880595a9f1 code cleanup and opengles optimizations
koda
parents: 2690
diff changeset
   929
75880595a9f1 code cleanup and opengles optimizations
koda
parents: 2690
diff changeset
   930
function  SDL_GetRelativeMouseState(x, y: PLongInt): Byte; cdecl; external SDLLibName;
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   931
function  SDL_PixelFormatEnumToMasks(format: TSDL_ArrayByteOrder; bpp: PLongInt; Rmask, Gmask, Bmask, Amask: PLongInt): Boolean; cdecl; external SDLLibName;
5004
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
   932
5046
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
   933
procedure SDL_WarpMouseInWindow(window: PSDL_Window; x, y: LongInt); cdecl; external SDLLibName;
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   934
function  SDL_SetHint(name, value: PChar): Boolean; cdecl; external SDLLibName;
6281
dc9c44f47e75 avoid linking compatible code from sdl library, let's provide our own
koda
parents: 6280
diff changeset
   935
procedure SDL_StartTextInput; cdecl; external SDLLibName;
5724
3064ed85a5bd Changed SDL_PollEvent to SDL_PeepEvents
Xeli
parents: 5670
diff changeset
   936
6974
2d3beb445d64 minor changes for more compatibilities with other compilers
koda
parents: 6972
diff changeset
   937
function  SDL_PeepEvents(event: PSDL_Event; numevents: LongInt; action: TSDL_eventaction; minType, maxType: LongWord): LongInt; cdecl; external SDLLibName;
6341
ccc0a58e123d slight cleanup, fix compiling with sdl-1.2
koda
parents: 6338
diff changeset
   938
function  SDL_CreateThread(fn: Pointer; name: PChar; data: Pointer): PSDL_Thread; cdecl; external SDLLibName;
5724
3064ed85a5bd Changed SDL_PollEvent to SDL_PeepEvents
Xeli
parents: 5670
diff changeset
   939
{$ELSE}
6341
ccc0a58e123d slight cleanup, fix compiling with sdl-1.2
koda
parents: 6338
diff changeset
   940
function  SDL_CreateThread(fn: Pointer; data: Pointer): PSDL_Thread; cdecl; external SDLLibName;
6974
2d3beb445d64 minor changes for more compatibilities with other compilers
koda
parents: 6972
diff changeset
   941
function  SDL_PeepEvents(event: PSDL_Event; numevents: LongInt; action: TSDL_eventaction; mask: LongWord): LongInt; cdecl; external SDLLibName;
2671
7e0f88013fe8 smaller patches, one missing Sky-lowres, IMG_Init and Mix_Init (might require newer libraries), updates to SDL bindings, code cleanup, new compile flags
koda
parents: 2669
diff changeset
   942
{$ENDIF}
2714
c85ffe57d971 update iphone frontend to the new (silly) sdl api, code cleanups for other sections
koda
parents: 2701
diff changeset
   943
2242
2e8251933b71 initial support for touch input
koda
parents: 2241
diff changeset
   944
function  SDL_GetMouseState(x, y: PLongInt): Byte; cdecl; external SDLLibName;
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   945
function  SDL_GetKeyName(key: LongWord): PChar; cdecl; external SDLLibName;
6900
26873e68034f - Added support for keyboards on android
Xeli
parents: 6891
diff changeset
   946
function  SDL_GetScancodeName(key: LongWord): PChar; cdecl; external SDLLibName;
6917
4889c2b779b4 - change uKeys to be event based rather than polling
Xeli
parents: 6900
diff changeset
   947
function  SDL_GetKeyFromScancode(key: LongWord): LongInt; cdecl; external SDLLibName;
4889c2b779b4 - change uKeys to be event based rather than polling
Xeli
parents: 6900
diff changeset
   948
4
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 1
diff changeset
   949
2428
6800f8aa0184 Huge Smaxx patch with some fixes by me:
unc0rr
parents: 2390
diff changeset
   950
procedure SDL_PumpEvents; cdecl; external SDLLibName;
432
b0f693024b50 Delphi mode off
unc0rr
parents: 377
diff changeset
   951
function  SDL_PollEvent(event: PSDL_Event): LongInt; cdecl; external SDLLibName;
2590
e7e87e3c67db touch control completely revamped
koda
parents: 2586
diff changeset
   952
function  SDL_WaitEvent(event: PSDL_Event): LongInt; cdecl; external SDLLibName;
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   953
procedure SDL_SetEventFilter(filter: TSDL_EventFilter); cdecl; external SDLLibName;
4
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 1
diff changeset
   954
432
b0f693024b50 Delphi mode off
unc0rr
parents: 377
diff changeset
   955
function  SDL_ShowCursor(toggle: LongInt): LongInt; cdecl; external SDLLibName;
4
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 1
diff changeset
   956
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   957
procedure SDL_WM_SetIcon(icon: PSDL_Surface; mask : Byte); cdecl; external SDLLibName;
4
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 1
diff changeset
   958
procedure SDL_WM_SetCaption(title: PChar; icon: PChar); cdecl; external SDLLibName;
2674
2fce032f2f95 lupdate + Palewolf's updated spanish translation + other patches of mine
koda
parents: 2671
diff changeset
   959
function  SDL_WM_ToggleFullScreen(surface: PSDL_Surface): LongInt; cdecl; external SDLLibName;
4
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 1
diff changeset
   960
6330
1bde8940e1bb merge fix
Xeli
parents: 6328
diff changeset
   961
procedure SDL_WaitThread(thread: PSDL_Thread; status: PLongInt); cdecl; external SDLLibName;
433
9f8f22094c0e AI thinks in separate thread
unc0rr
parents: 432
diff changeset
   962
function  SDL_CreateMutex: PSDL_mutex; cdecl; external SDLLibName;
9f8f22094c0e AI thinks in separate thread
unc0rr
parents: 432
diff changeset
   963
procedure SDL_DestroyMutex(mutex: PSDL_mutex); cdecl; external SDLLibName;
9f8f22094c0e AI thinks in separate thread
unc0rr
parents: 432
diff changeset
   964
function  SDL_LockMutex(mutex: PSDL_mutex): LongInt; cdecl; external SDLLibName name 'SDL_mutexP';
9f8f22094c0e AI thinks in separate thread
unc0rr
parents: 432
diff changeset
   965
function  SDL_UnlockMutex(mutex: PSDL_mutex): LongInt; cdecl; external SDLLibName name 'SDL_mutexV';
9f8f22094c0e AI thinks in separate thread
unc0rr
parents: 432
diff changeset
   966
2252
03fd99dff989 accessory stuff for iphone
koda
parents: 2251
diff changeset
   967
function  SDL_GL_SetAttribute(attr: TSDL_GLattr; value: LongInt): LongInt; cdecl; external SDLLibName;
7016
8b34f46e10c1 HAPPY 7000th COMMIT HEDGEWARS
koda
parents: 6990
diff changeset
   968
procedure SDL_GL_SwapBuffers; cdecl; external SDLLibName;
753
40fc0deb388f Start conversion to OpenGL rendering
unc0rr
parents: 500
diff changeset
   969
7180
53ffc8853008 here it is
Stepan777 <stepik-777@mail.ru>
parents: 7167
diff changeset
   970
procedure SDL_LockAudio; cdecl; external SDLLibName;
53ffc8853008 here it is
Stepan777 <stepik-777@mail.ru>
parents: 7167
diff changeset
   971
procedure SDL_UnlockAudio; cdecl; external SDLLibName;
53ffc8853008 here it is
Stepan777 <stepik-777@mail.ru>
parents: 7167
diff changeset
   972
2591
c6597b65caea other controls implementation + sdlh revisited (once again)
koda
parents: 2590
diff changeset
   973
function  SDL_NumJoysticks: LongInt; cdecl; external SDLLibName;
c6597b65caea other controls implementation + sdlh revisited (once again)
koda
parents: 2590
diff changeset
   974
function  SDL_JoystickName(idx: LongInt): PChar; cdecl; external SDLLibName;
c6597b65caea other controls implementation + sdlh revisited (once again)
koda
parents: 2590
diff changeset
   975
function  SDL_JoystickOpen(idx: LongInt): PSDL_Joystick; cdecl; external SDLLibName;
c6597b65caea other controls implementation + sdlh revisited (once again)
koda
parents: 2590
diff changeset
   976
function  SDL_JoystickOpened(idx: LongInt): LongInt; cdecl; external SDLLibName;
c6597b65caea other controls implementation + sdlh revisited (once again)
koda
parents: 2590
diff changeset
   977
function  SDL_JoystickIndex(joy: PSDL_Joystick): LongInt; cdecl; external SDLLibName;
c6597b65caea other controls implementation + sdlh revisited (once again)
koda
parents: 2590
diff changeset
   978
function  SDL_JoystickNumAxes(joy: PSDL_Joystick): LongInt; cdecl; external SDLLibName;
c6597b65caea other controls implementation + sdlh revisited (once again)
koda
parents: 2590
diff changeset
   979
function  SDL_JoystickNumBalls(joy: PSDL_Joystick): LongInt; cdecl; external SDLLibName;
c6597b65caea other controls implementation + sdlh revisited (once again)
koda
parents: 2590
diff changeset
   980
function  SDL_JoystickNumHats(joy: PSDL_Joystick): LongInt; cdecl; external SDLLibName;
c6597b65caea other controls implementation + sdlh revisited (once again)
koda
parents: 2590
diff changeset
   981
function  SDL_JoystickNumButtons(joy: PSDL_Joystick): LongInt; cdecl; external SDLLibName;
2428
6800f8aa0184 Huge Smaxx patch with some fixes by me:
unc0rr
parents: 2390
diff changeset
   982
procedure SDL_JoystickUpdate; cdecl; external SDLLibName;
2591
c6597b65caea other controls implementation + sdlh revisited (once again)
koda
parents: 2590
diff changeset
   983
function  SDL_JoystickEventState(state: LongInt): LongInt; cdecl; external SDLLibName;
c6597b65caea other controls implementation + sdlh revisited (once again)
koda
parents: 2590
diff changeset
   984
function  SDL_JoystickGetAxis(joy: PSDL_Joystick; axis: LongInt): LongInt; cdecl; external SDLLibName;
c6597b65caea other controls implementation + sdlh revisited (once again)
koda
parents: 2590
diff changeset
   985
function  SDL_JoystickGetBall(joy: PSDL_Joystick; ball: LongInt; dx: PInteger; dy: PInteger): Word; cdecl; external SDLLibName;
c6597b65caea other controls implementation + sdlh revisited (once again)
koda
parents: 2590
diff changeset
   986
function  SDL_JoystickGetHat(joy: PSDL_Joystick; hat: LongInt): Byte; cdecl; external SDLLibName;
c6597b65caea other controls implementation + sdlh revisited (once again)
koda
parents: 2590
diff changeset
   987
function  SDL_JoystickGetButton(joy: PSDL_Joystick; button: LongInt): Byte; cdecl; external SDLLibName;
c6597b65caea other controls implementation + sdlh revisited (once again)
koda
parents: 2590
diff changeset
   988
procedure SDL_JoystickClose(joy: PSDL_Joystick); cdecl; external SDLLibName;
2428
6800f8aa0184 Huge Smaxx patch with some fixes by me:
unc0rr
parents: 2390
diff changeset
   989
5565
1a326ba319c9 smaller code cleanup
koda
parents: 5505
diff changeset
   990
{$IFDEF WIN32}
3153
adfe8a91658f Engine:
smxx
parents: 2948
diff changeset
   991
function SDL_putenv(const text: PChar): LongInt; cdecl; external SDLLibName;
adfe8a91658f Engine:
smxx
parents: 2948
diff changeset
   992
function SDL_getenv(const text: PChar): PChar; cdecl; external SDLLibName;
5565
1a326ba319c9 smaller code cleanup
koda
parents: 5505
diff changeset
   993
{$ENDIF}
3153
adfe8a91658f Engine:
smxx
parents: 2948
diff changeset
   994
7167
0b3b306f129a Android: added a callback to java to determine dpi/dip how much we should scale the ui
Xeli
parents: 7049
diff changeset
   995
5052
74a81c276d67 fix a couple of loose ends
koda
parents: 5050
diff changeset
   996
{* Compatibility between SDL-1.2 and SDL-1.3 *}
7049
35d762458d66 minor changes for warnings and a variables scope
koda
parents: 7035
diff changeset
   997
procedure SDL_WarpMouse(x, y: Word); {$IFDEF SDL13}inline{$ELSE}cdecl; external SDLLibName{$ENDIF};
5052
74a81c276d67 fix a couple of loose ends
koda
parents: 5050
diff changeset
   998
function  SDL_GetKeyState(numkeys: PLongInt): PByteArray; cdecl; external SDLLibName {$IFDEF SDL13} name 'SDL_GetKeyboardState'{$ENDIF};
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
   999
function  SDL_AllocFormat(format: LongWord): PSDL_PixelFormat; {$IFDEF SDL13}cdecl; external SDLLibName;{$ENDIF}
6285
2c3a6bece643 ooops :D
koda
parents: 6284
diff changeset
  1000
procedure SDL_FreeFormat(pixelformat: PSDL_PixelFormat); {$IFDEF SDL13}cdecl; external SDLLibName;{$ENDIF}
6281
dc9c44f47e75 avoid linking compatible code from sdl library, let's provide our own
koda
parents: 6280
diff changeset
  1001
function  SDL_VideoDriverName(namebuf: PChar; maxlen: LongInt): PChar; {$IFNDEF SDL13}cdecl; external SDLLibName;{$ENDIF}
dc9c44f47e75 avoid linking compatible code from sdl library, let's provide our own
koda
parents: 6280
diff changeset
  1002
function  SDL_EnableUNICODE(enable: LongInt): LongInt; {$IFNDEF SDL13}cdecl; external SDLLibName;{$ENDIF}
6976
koda
parents: 6974
diff changeset
  1003
function  SDL_EnableKeyRepeat(timedelay, interval: LongInt): LongInt; {$IFNDEF SDL13}cdecl; external SDLLibName;{$ENDIF}
5052
74a81c276d67 fix a couple of loose ends
koda
parents: 5050
diff changeset
  1004
74a81c276d67 fix a couple of loose ends
koda
parents: 5050
diff changeset
  1005
(*  SDL_ttf  *)
2600
7b21daf84933 revamped SDLh.pas
koda
parents: 2599
diff changeset
  1006
function  TTF_Init: LongInt; cdecl; external SDL_TTFLibName;
2515
51d3f4b6293a revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents: 2477
diff changeset
  1007
procedure TTF_Quit; cdecl; external SDL_TTFLibName;
2671
7e0f88013fe8 smaller patches, one missing Sky-lowres, IMG_Init and Mix_Init (might require newer libraries), updates to SDL bindings, code cleanup, new compile flags
koda
parents: 2669
diff changeset
  1008
6286
835392304f81 and while we are giving SDLh.pas all this love, let's fix the signature of one SDL_ttf calls
koda
parents: 6285
diff changeset
  1009
function  TTF_SizeUTF8(font: PTTF_Font; const text: PChar; w, h: PLongInt): LongInt; cdecl; external SDL_TTFLibName;
2665
50b4e544c163 complete transition of longword->sdl_color for TTF bindings
koda
parents: 2664
diff changeset
  1010
2664
949c189ba568 powerpc and gameserver compilation disabled temporarily
koda
parents: 2663
diff changeset
  1011
function  TTF_RenderUTF8_Solid(font: PTTF_Font; const text: PChar; fg: TSDL_Color): PSDL_Surface; cdecl; external SDL_TTFLibName;
2665
50b4e544c163 complete transition of longword->sdl_color for TTF bindings
koda
parents: 2664
diff changeset
  1012
function  TTF_RenderUTF8_Blended(font: PTTF_Font; const text: PChar; fg: TSDL_Color): PSDL_Surface; cdecl; external SDL_TTFLibName;
2664
949c189ba568 powerpc and gameserver compilation disabled temporarily
koda
parents: 2663
diff changeset
  1013
function  TTF_RenderUTF8_Shaded(font: PTTF_Font; const text: PChar; fg, bg: TSDL_Color): PSDL_Surface; cdecl; external SDL_TTFLibName;
2515
51d3f4b6293a revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents: 2477
diff changeset
  1014
8028
dc30104660d3 Engine loads fine with basic config
unc0rr
parents: 8025
diff changeset
  1015
function  TTF_OpenFontRW(src: PSDL_RWops; freesrc: LongBool; size: LongInt): PTTF_Font; cdecl; external SDL_TTFLibName;
2515
51d3f4b6293a revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents: 2477
diff changeset
  1016
procedure TTF_SetFontStyle(font: PTTF_Font; style: LongInt); cdecl; external SDL_TTFLibName;
51d3f4b6293a revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents: 2477
diff changeset
  1017
51d3f4b6293a revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents: 2477
diff changeset
  1018
(*  SDL_mixer  *)
6072
e3dc802965d6 a little code cleanup
koda
parents: 6021
diff changeset
  1019
function  Mix_Init(flags: LongInt): LongInt; {$IFDEF SDL_MIXER_NEWER}cdecl; external SDL_MixerLibName;{$ENDIF}
e3dc802965d6 a little code cleanup
koda
parents: 6021
diff changeset
  1020
procedure Mix_Quit; {$IFDEF SDL_MIXER_NEWER}cdecl; external SDL_MixerLibName;{$ENDIF}
2671
7e0f88013fe8 smaller patches, one missing Sky-lowres, IMG_Init and Mix_Init (might require newer libraries), updates to SDL bindings, code cleanup, new compile flags
koda
parents: 2669
diff changeset
  1021
2515
51d3f4b6293a revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents: 2477
diff changeset
  1022
function  Mix_OpenAudio(frequency: LongInt; format: Word; channels: LongInt; chunksize: LongInt): LongInt; cdecl; external SDL_MixerLibName;
51d3f4b6293a revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents: 2477
diff changeset
  1023
procedure Mix_CloseAudio; cdecl; external SDL_MixerLibName;
7180
53ffc8853008 here it is
Stepan777 <stepik-777@mail.ru>
parents: 7167
diff changeset
  1024
function  Mix_QuerySpec(frequency: PLongInt; format: PWord; channels: PLongInt): LongInt; cdecl; external SDL_MixerLibName;
2515
51d3f4b6293a revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents: 2477
diff changeset
  1025
51d3f4b6293a revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents: 2477
diff changeset
  1026
function  Mix_Volume(channel: LongInt; volume: LongInt): LongInt; cdecl; external SDL_MixerLibName;
2665
50b4e544c163 complete transition of longword->sdl_color for TTF bindings
koda
parents: 2664
diff changeset
  1027
function  Mix_SetDistance(channel: LongInt; distance: Byte): LongInt; cdecl; external SDL_MixerLibName;
2515
51d3f4b6293a revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents: 2477
diff changeset
  1028
function  Mix_VolumeMusic(volume: LongInt): LongInt; cdecl; external SDL_MixerLibName;
51d3f4b6293a revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents: 2477
diff changeset
  1029
51d3f4b6293a revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents: 2477
diff changeset
  1030
function  Mix_AllocateChannels(numchans: LongInt): LongInt; cdecl; external SDL_MixerLibName;
51d3f4b6293a revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents: 2477
diff changeset
  1031
procedure Mix_FreeChunk(chunk: PMixChunk); cdecl; external SDL_MixerLibName;
51d3f4b6293a revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents: 2477
diff changeset
  1032
procedure Mix_FreeMusic(music: PMixMusic); cdecl; external SDL_MixerLibName;
51d3f4b6293a revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents: 2477
diff changeset
  1033
51d3f4b6293a revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents: 2477
diff changeset
  1034
function  Mix_LoadWAV_RW(src: PSDL_RWops; freesrc: LongInt): PMixChunk; cdecl; external SDL_MixerLibName;
8046
4d3415927d2c Use (undocumented) Mix_LoadMUS_RW to load music
unc0rr
parents: 8028
diff changeset
  1035
function  Mix_LoadMUS_RW(src: PSDL_RWops): PMixMusic; cdecl; external SDL_MixerLibName;
2515
51d3f4b6293a revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents: 2477
diff changeset
  1036
51d3f4b6293a revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents: 2477
diff changeset
  1037
function  Mix_Playing(channel: LongInt): LongInt; cdecl; external SDL_MixerLibName;
51d3f4b6293a revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents: 2477
diff changeset
  1038
function  Mix_PlayingMusic: LongInt; cdecl; external SDL_MixerLibName;
51d3f4b6293a revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents: 2477
diff changeset
  1039
function  Mix_FadeInMusic(music: PMixMusic; loops: LongInt; ms: LongInt): LongInt; cdecl; external SDL_MixerLibName;
51d3f4b6293a revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents: 2477
diff changeset
  1040
51d3f4b6293a revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents: 2477
diff changeset
  1041
function  Mix_PlayChannelTimed(channel: LongInt; chunk: PMixChunk; loops: LongInt; ticks: LongInt): LongInt; cdecl; external SDL_MixerLibName;
51d3f4b6293a revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents: 2477
diff changeset
  1042
function  Mix_PlayMusic(music: PMixMusic; loops: LongInt): LongInt; cdecl; external SDL_MixerLibName;
51d3f4b6293a revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents: 2477
diff changeset
  1043
function  Mix_PausedMusic(music: PMixMusic): LongInt; cdecl; external SDL_MixerLibName;
51d3f4b6293a revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents: 2477
diff changeset
  1044
function  Mix_PauseMusic(music: PMixMusic): LongInt; cdecl; external SDL_MixerLibName;
51d3f4b6293a revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents: 2477
diff changeset
  1045
function  Mix_ResumeMusic(music: PMixMusic): LongInt; cdecl; external SDL_MixerLibName;
51d3f4b6293a revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents: 2477
diff changeset
  1046
function  Mix_HaltChannel(channel: LongInt): LongInt; cdecl; external SDL_MixerLibName;
6362
ceacd1b61833 modify ReleaseSound so that it performs a partial release of unused sounds, useful for responding to memory warnings
koda
parents: 6329
diff changeset
  1047
function  Mix_HaltMusic: LongInt; cdecl; external SDL_MixerLibName;
2515
51d3f4b6293a revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents: 2477
diff changeset
  1048
4956
48e1f9a04c28 usound: added function for loops with fade in and out
koda
parents: 4933
diff changeset
  1049
function  Mix_FadeInChannelTimed(channel: LongInt; chunk: PMixChunk; loops: LongInt; fadems: LongInt; ticks: LongInt): LongInt; cdecl; external SDL_MixerLibName;
48e1f9a04c28 usound: added function for loops with fade in and out
koda
parents: 4933
diff changeset
  1050
function  Mix_FadeOutChannel(channel: LongInt; fadems: LongInt): LongInt; cdecl; external SDL_MixerLibName;
48e1f9a04c28 usound: added function for loops with fade in and out
koda
parents: 4933
diff changeset
  1051
7180
53ffc8853008 here it is
Stepan777 <stepik-777@mail.ru>
parents: 7167
diff changeset
  1052
procedure Mix_SetPostMix( mix_func: TPostMix; arg: pointer); cdecl; external SDL_MixerLibName;
53ffc8853008 here it is
Stepan777 <stepik-777@mail.ru>
parents: 7167
diff changeset
  1053
2515
51d3f4b6293a revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents: 2477
diff changeset
  1054
(*  SDL_image  *)
6072
e3dc802965d6 a little code cleanup
koda
parents: 6021
diff changeset
  1055
function  IMG_Init(flags: LongInt): LongInt; {$IFDEF SDL_IMAGE_NEWER}cdecl; external SDL_ImageLibName;{$ENDIF}
e3dc802965d6 a little code cleanup
koda
parents: 6021
diff changeset
  1056
procedure IMG_Quit; {$IFDEF SDL_IMAGE_NEWER}cdecl; external SDL_ImageLibName;{$ENDIF}
2671
7e0f88013fe8 smaller patches, one missing Sky-lowres, IMG_Init and Mix_Init (might require newer libraries), updates to SDL bindings, code cleanup, new compile flags
koda
parents: 2669
diff changeset
  1057
2600
7b21daf84933 revamped SDLh.pas
koda
parents: 2599
diff changeset
  1058
function  IMG_Load(const _file: PChar): PSDL_Surface; cdecl; external SDL_ImageLibName;
8022
10b3b93c1f56 - Add physfsrwops library
unc0rr
parents: 7565
diff changeset
  1059
function  IMG_Load_RW(rwop: PSDL_RWops; freesrc: LongBool): PSDL_Surface; cdecl; external SDL_ImageLibName;
2600
7b21daf84933 revamped SDLh.pas
koda
parents: 2599
diff changeset
  1060
function  IMG_LoadPNG_RW(rwop: PSDL_RWops): PSDL_Surface; cdecl; external SDL_ImageLibName;
8022
10b3b93c1f56 - Add physfsrwops library
unc0rr
parents: 7565
diff changeset
  1061
function  IMG_LoadTyped_RW(rwop: PSDL_RWops; freesrc: LongBool; type_: PChar): PSDL_Surface; cdecl; external SDL_ImageLibName;
2592
d86618629e20 fix missing land on ppc
koda
parents: 2591
diff changeset
  1062
2515
51d3f4b6293a revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents: 2477
diff changeset
  1063
(*  SDL_net  *)
2600
7b21daf84933 revamped SDLh.pas
koda
parents: 2599
diff changeset
  1064
function  SDLNet_Init: LongInt; cdecl; external SDL_NetLibName;
2515
51d3f4b6293a revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents: 2477
diff changeset
  1065
procedure SDLNet_Quit; cdecl; external SDL_NetLibName;
51d3f4b6293a revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents: 2477
diff changeset
  1066
2600
7b21daf84933 revamped SDLh.pas
koda
parents: 2599
diff changeset
  1067
function  SDLNet_AllocSocketSet(maxsockets: LongInt): PSDLNet_SocketSet; cdecl; external SDL_NetLibName;
2671
7e0f88013fe8 smaller patches, one missing Sky-lowres, IMG_Init and Mix_Init (might require newer libraries), updates to SDL bindings, code cleanup, new compile flags
koda
parents: 2669
diff changeset
  1068
function  SDLNet_ResolveHost(var address: TIPaddress; host: PChar; port: Word): LongInt; cdecl; external SDL_NetLibName;
2600
7b21daf84933 revamped SDLh.pas
koda
parents: 2599
diff changeset
  1069
function  SDLNet_TCP_Accept(server: PTCPsocket): PTCPSocket; cdecl; external SDL_NetLibName;
7b21daf84933 revamped SDLh.pas
koda
parents: 2599
diff changeset
  1070
function  SDLNet_TCP_Open(var ip: TIPaddress): PTCPSocket; cdecl; external SDL_NetLibName;
7b21daf84933 revamped SDLh.pas
koda
parents: 2599
diff changeset
  1071
function  SDLNet_TCP_Send(sock: PTCPsocket; data: Pointer; len: LongInt): LongInt; cdecl; external SDL_NetLibName;
7b21daf84933 revamped SDLh.pas
koda
parents: 2599
diff changeset
  1072
function  SDLNet_TCP_Recv(sock: PTCPsocket; data: Pointer; len: LongInt): LongInt; cdecl; external SDL_NetLibName;
2515
51d3f4b6293a revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents: 2477
diff changeset
  1073
procedure SDLNet_TCP_Close(sock: PTCPsocket); cdecl; external SDL_NetLibName;
51d3f4b6293a revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents: 2477
diff changeset
  1074
procedure SDLNet_FreeSocketSet(_set: PSDLNet_SocketSet); cdecl; external SDL_NetLibName;
2600
7b21daf84933 revamped SDLh.pas
koda
parents: 2599
diff changeset
  1075
function  SDLNet_AddSocket(_set: PSDLNet_SocketSet; sock: PTCPSocket): LongInt; cdecl; external SDL_NetLibName;
7b21daf84933 revamped SDLh.pas
koda
parents: 2599
diff changeset
  1076
function  SDLNet_CheckSockets(_set: PSDLNet_SocketSet; timeout: LongInt): LongInt; cdecl; external SDL_NetLibName;
2630
079ef82eac75 revamped file access and debug display
koda
parents: 2619
diff changeset
  1077
2515
51d3f4b6293a revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents: 2477
diff changeset
  1078
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
  1079
procedure SDLNet_Write16(value: Word; buf: Pointer);
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
  1080
procedure SDLNet_Write32(value: LongWord; buf: Pointer);
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
  1081
function  SDLNet_Read16(buf: Pointer): Word;
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
  1082
function  SDLNet_Read32(buf: Pointer): LongWord;
3663
8c28abf427f5 reduce the number of keywords used and switch to BMP format for screenshots
koda
parents: 3598
diff changeset
  1083
4
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 1
diff changeset
  1084
implementation
6974
2d3beb445d64 minor changes for more compatibilities with other compilers
koda
parents: 6972
diff changeset
  1085
{$IFDEF SDL13}
7049
35d762458d66 minor changes for warnings and a variables scope
koda
parents: 7035
diff changeset
  1086
uses strings, uVariables, uStore;
5046
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
  1087
6974
2d3beb445d64 minor changes for more compatibilities with other compilers
koda
parents: 6972
diff changeset
  1088
// compatible functions
7049
35d762458d66 minor changes for warnings and a variables scope
koda
parents: 7035
diff changeset
  1089
procedure SDL_WarpMouse(x, y: Word); inline;
5046
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
  1090
begin
7049
35d762458d66 minor changes for warnings and a variables scope
koda
parents: 7035
diff changeset
  1091
    WarpMouse(x, y);
5046
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
  1092
end;
6281
dc9c44f47e75 avoid linking compatible code from sdl library, let's provide our own
koda
parents: 6280
diff changeset
  1093
dc9c44f47e75 avoid linking compatible code from sdl library, let's provide our own
koda
parents: 6280
diff changeset
  1094
function SDL_VideoDriverName(namebuf: PChar; maxlen: LongInt): PChar;
dc9c44f47e75 avoid linking compatible code from sdl library, let's provide our own
koda
parents: 6280
diff changeset
  1095
var name : PChar = nil;
dc9c44f47e75 avoid linking compatible code from sdl library, let's provide our own
koda
parents: 6280
diff changeset
  1096
begin
dc9c44f47e75 avoid linking compatible code from sdl library, let's provide our own
koda
parents: 6280
diff changeset
  1097
    name:= SDL_GetCurrentVideoDriver();
dc9c44f47e75 avoid linking compatible code from sdl library, let's provide our own
koda
parents: 6280
diff changeset
  1098
    if (name <> nil) and (namebuf <> nil) then
dc9c44f47e75 avoid linking compatible code from sdl library, let's provide our own
koda
parents: 6280
diff changeset
  1099
        begin
dc9c44f47e75 avoid linking compatible code from sdl library, let's provide our own
koda
parents: 6280
diff changeset
  1100
        strlcopy(namebuf, name, maxlen);
6990
40e5af28d026 change every return value into a more pascal-ish form, using the name of the fucntion (helps the parser and macpas compaitilibity)
koda
parents: 6982
diff changeset
  1101
        SDL_VideoDriverName:= namebuf
6281
dc9c44f47e75 avoid linking compatible code from sdl library, let's provide our own
koda
parents: 6280
diff changeset
  1102
        end;
6990
40e5af28d026 change every return value into a more pascal-ish form, using the name of the fucntion (helps the parser and macpas compaitilibity)
koda
parents: 6982
diff changeset
  1103
    SDL_VideoDriverName:= name;
6281
dc9c44f47e75 avoid linking compatible code from sdl library, let's provide our own
koda
parents: 6280
diff changeset
  1104
end;
dc9c44f47e75 avoid linking compatible code from sdl library, let's provide our own
koda
parents: 6280
diff changeset
  1105
dc9c44f47e75 avoid linking compatible code from sdl library, let's provide our own
koda
parents: 6280
diff changeset
  1106
function SDL_EnableUNICODE(enable: LongInt): LongInt;
dc9c44f47e75 avoid linking compatible code from sdl library, let's provide our own
koda
parents: 6280
diff changeset
  1107
begin
7049
35d762458d66 minor changes for warnings and a variables scope
koda
parents: 7035
diff changeset
  1108
    enable:= enable; // avoid hint
6281
dc9c44f47e75 avoid linking compatible code from sdl library, let's provide our own
koda
parents: 6280
diff changeset
  1109
    SDL_StartTextInput();
6990
40e5af28d026 change every return value into a more pascal-ish form, using the name of the fucntion (helps the parser and macpas compaitilibity)
koda
parents: 6982
diff changeset
  1110
    SDL_EnableUNICODE:= 0;
6281
dc9c44f47e75 avoid linking compatible code from sdl library, let's provide our own
koda
parents: 6280
diff changeset
  1111
end;
dc9c44f47e75 avoid linking compatible code from sdl library, let's provide our own
koda
parents: 6280
diff changeset
  1112
6974
2d3beb445d64 minor changes for more compatibilities with other compilers
koda
parents: 6972
diff changeset
  1113
function SDL_EnableKeyRepeat(timedelay, interval: LongInt): LongInt;
6281
dc9c44f47e75 avoid linking compatible code from sdl library, let's provide our own
koda
parents: 6280
diff changeset
  1114
begin
6974
2d3beb445d64 minor changes for more compatibilities with other compilers
koda
parents: 6972
diff changeset
  1115
    timedelay:= timedelay;  // avoid hint
2d3beb445d64 minor changes for more compatibilities with other compilers
koda
parents: 6972
diff changeset
  1116
    interval:= interval;    // avoid hint
6990
40e5af28d026 change every return value into a more pascal-ish form, using the name of the fucntion (helps the parser and macpas compaitilibity)
koda
parents: 6982
diff changeset
  1117
    SDL_EnableKeyRepeat:= 0;
6281
dc9c44f47e75 avoid linking compatible code from sdl library, let's provide our own
koda
parents: 6280
diff changeset
  1118
end;
5046
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
  1119
{$ELSE}
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
  1120
const conversionFormat: TSDL_PixelFormat = (
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
  1121
        palette: nil; BitsPerPixel: 32; BytesPerPixel: 4;
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
  1122
        Rloss: 0; Gloss: 0; Bloss: 0; Aloss: 0;
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
  1123
        Rshift: RShift; Gshift: GShift; Bshift: BShift; Ashift: AShift;
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
  1124
        RMask: RMask; GMask: GMask; BMask: BMask; AMask: AMask;
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
  1125
        colorkey: 0; alpha: 255);
6982
8d41d22a291d breaking news, we don't support typed consts anymore
koda
parents: 6976
diff changeset
  1126
8d41d22a291d breaking news, we don't support typed consts anymore
koda
parents: 6976
diff changeset
  1127
function SDL_AllocFormat(format: LongWord): PSDL_PixelFormat;
5046
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
  1128
begin
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
  1129
    format:= format;
6990
40e5af28d026 change every return value into a more pascal-ish form, using the name of the fucntion (helps the parser and macpas compaitilibity)
koda
parents: 6982
diff changeset
  1130
    SDL_AllocFormat:= @conversionFormat;
5046
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
  1131
end;
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
  1132
5052
74a81c276d67 fix a couple of loose ends
koda
parents: 5050
diff changeset
  1133
procedure SDL_FreeFormat(pixelformat: PSDL_PixelFormat);
5046
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
  1134
begin
6974
2d3beb445d64 minor changes for more compatibilities with other compilers
koda
parents: 6972
diff changeset
  1135
    pixelformat:= pixelformat;  // avoid hint
5046
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
  1136
end;
fc6639d56799 this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents: 5041
diff changeset
  1137
{$ENDIF}
4
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 1
diff changeset
  1138
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 1
diff changeset
  1139
function SDL_MustLock(Surface: PSDL_Surface): Boolean;
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 1
diff changeset
  1140
begin
6072
e3dc802965d6 a little code cleanup
koda
parents: 6021
diff changeset
  1141
    SDL_MustLock:=
5004
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
  1142
{$IFDEF SDL13}
6072
e3dc802965d6 a little code cleanup
koda
parents: 6021
diff changeset
  1143
        ((surface^.flags and SDL_RLEACCEL) <> 0)
5004
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
  1144
{$ELSE}
6072
e3dc802965d6 a little code cleanup
koda
parents: 6021
diff changeset
  1145
        ( surface^.offset <> 0 ) or (( surface^.flags and (SDL_HWSURFACE or SDL_ASYNCBLIT or SDL_RLEACCEL)) <> 0)
5004
2efa6a414518 update some sdl-1.3 bindings (working up to rev 5296)
koda
parents: 4976
diff changeset
  1146
{$ENDIF}
4
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 1
diff changeset
  1147
end;
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 1
diff changeset
  1148
6072
e3dc802965d6 a little code cleanup
koda
parents: 6021
diff changeset
  1149
{$IFNDEF SDL_MIXER_NEWER}
e3dc802965d6 a little code cleanup
koda
parents: 6021
diff changeset
  1150
function  Mix_Init(flags: LongInt): LongInt;
e3dc802965d6 a little code cleanup
koda
parents: 6021
diff changeset
  1151
begin
6990
40e5af28d026 change every return value into a more pascal-ish form, using the name of the fucntion (helps the parser and macpas compaitilibity)
koda
parents: 6982
diff changeset
  1152
    Mix_Init:= flags;
6072
e3dc802965d6 a little code cleanup
koda
parents: 6021
diff changeset
  1153
end;
e3dc802965d6 a little code cleanup
koda
parents: 6021
diff changeset
  1154
e3dc802965d6 a little code cleanup
koda
parents: 6021
diff changeset
  1155
procedure Mix_Quit;
e3dc802965d6 a little code cleanup
koda
parents: 6021
diff changeset
  1156
begin
e3dc802965d6 a little code cleanup
koda
parents: 6021
diff changeset
  1157
end;
e3dc802965d6 a little code cleanup
koda
parents: 6021
diff changeset
  1158
{$ENDIF}
e3dc802965d6 a little code cleanup
koda
parents: 6021
diff changeset
  1159
e3dc802965d6 a little code cleanup
koda
parents: 6021
diff changeset
  1160
{$IFNDEF SDL_IMAGE_NEWER}
e3dc802965d6 a little code cleanup
koda
parents: 6021
diff changeset
  1161
function  IMG_Init(flags: LongInt): LongInt;
e3dc802965d6 a little code cleanup
koda
parents: 6021
diff changeset
  1162
begin
6990
40e5af28d026 change every return value into a more pascal-ish form, using the name of the fucntion (helps the parser and macpas compaitilibity)
koda
parents: 6982
diff changeset
  1163
    IMG_Init:= flags;
6072
e3dc802965d6 a little code cleanup
koda
parents: 6021
diff changeset
  1164
end;
e3dc802965d6 a little code cleanup
koda
parents: 6021
diff changeset
  1165
e3dc802965d6 a little code cleanup
koda
parents: 6021
diff changeset
  1166
procedure IMG_Quit;
e3dc802965d6 a little code cleanup
koda
parents: 6021
diff changeset
  1167
begin
e3dc802965d6 a little code cleanup
koda
parents: 6021
diff changeset
  1168
end;
e3dc802965d6 a little code cleanup
koda
parents: 6021
diff changeset
  1169
{$ENDIF}
e3dc802965d6 a little code cleanup
koda
parents: 6021
diff changeset
  1170
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
  1171
procedure SDLNet_Write16(value: Word; buf: Pointer);
459
95163c6efa69 Do not use SDL_Net's to/from network byte order conversion functions
unc0rr
parents: 433
diff changeset
  1172
begin
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
  1173
    PByteArray(buf)^[1]:= value;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
  1174
    PByteArray(buf)^[0]:= value shr 8
459
95163c6efa69 Do not use SDL_Net's to/from network byte order conversion functions
unc0rr
parents: 433
diff changeset
  1175
end;
95163c6efa69 Do not use SDL_Net's to/from network byte order conversion functions
unc0rr
parents: 433
diff changeset
  1176
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
  1177
procedure SDLNet_Write32(value: LongWord; buf: Pointer);
459
95163c6efa69 Do not use SDL_Net's to/from network byte order conversion functions
unc0rr
parents: 433
diff changeset
  1178
begin
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
  1179
    PByteArray(buf)^[3]:= value;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
  1180
    PByteArray(buf)^[2]:= value shr  8;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
  1181
    PByteArray(buf)^[1]:= value shr 16;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
  1182
    PByteArray(buf)^[0]:= value shr 24
459
95163c6efa69 Do not use SDL_Net's to/from network byte order conversion functions
unc0rr
parents: 433
diff changeset
  1183
end;
95163c6efa69 Do not use SDL_Net's to/from network byte order conversion functions
unc0rr
parents: 433
diff changeset
  1184
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
  1185
function SDLNet_Read16(buf: Pointer): Word;
459
95163c6efa69 Do not use SDL_Net's to/from network byte order conversion functions
unc0rr
parents: 433
diff changeset
  1186
begin
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
  1187
    SDLNet_Read16:= PByteArray(buf)^[1] or
459
95163c6efa69 Do not use SDL_Net's to/from network byte order conversion functions
unc0rr
parents: 433
diff changeset
  1188
                 (PByteArray(buf)^[0] shl 8)
95163c6efa69 Do not use SDL_Net's to/from network byte order conversion functions
unc0rr
parents: 433
diff changeset
  1189
end;
95163c6efa69 Do not use SDL_Net's to/from network byte order conversion functions
unc0rr
parents: 433
diff changeset
  1190
6284
f571ba93d9db fix signedness of sdl bindings
koda
parents: 6283
diff changeset
  1191
function SDLNet_Read32(buf: Pointer): LongWord;
459
95163c6efa69 Do not use SDL_Net's to/from network byte order conversion functions
unc0rr
parents: 433
diff changeset
  1192
begin
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2800
diff changeset
  1193
    SDLNet_Read32:=  PByteArray(buf)^[3] or
459
95163c6efa69 Do not use SDL_Net's to/from network byte order conversion functions
unc0rr
parents: 433
diff changeset
  1194
                  (PByteArray(buf)^[2] shl  8) or
95163c6efa69 Do not use SDL_Net's to/from network byte order conversion functions
unc0rr
parents: 433
diff changeset
  1195
                  (PByteArray(buf)^[1] shl 16) or
95163c6efa69 Do not use SDL_Net's to/from network byte order conversion functions
unc0rr
parents: 433
diff changeset
  1196
                  (PByteArray(buf)^[0] shl 24)
95163c6efa69 Do not use SDL_Net's to/from network byte order conversion functions
unc0rr
parents: 433
diff changeset
  1197
end;
95163c6efa69 Do not use SDL_Net's to/from network byte order conversion functions
unc0rr
parents: 433
diff changeset
  1198
4
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 1
diff changeset
  1199
end.
2241
7992f7ba388d completes removal of wav files, updates SDLh and adds DEBUGFILE to hwengine when compiled in Debug mode
koda
parents: 2240
diff changeset
  1200