X-Git-Url: https://deadsoftware.ru/gitweb?a=blobdiff_plain;f=src%2Flib%2Fsdl2%2Fsdl2.pas;h=d5bb58e2529905e3afaf1307b3bf0a57689d3dc3;hb=1408b629ba53aad8cf198b197db1293f6f293c79;hp=92f71d93376678ee60c0049ab7c6c0c794c9808a;hpb=30bcb89f4decd5b5885ebde1fbb943b6563b1e3e;p=d2df-sdl.git diff --git a/src/lib/sdl2/sdl2.pas b/src/lib/sdl2/sdl2.pas index 92f71d9..d5bb58e 100644 --- a/src/lib/sdl2/sdl2.pas +++ b/src/lib/sdl2/sdl2.pas @@ -1,3 +1,4 @@ +{$MODE DELPHI} unit SDL2; { @@ -136,16 +137,16 @@ interface Windows; {$ENDIF} - {$IFDEF LINUX} - uses - X, - XLib; + {$IF DEFINED(UNIX)} + {$IF NOT DEFINED(HAIKU) AND NOT DEFINED(ANDROID) AND NOT DEFINED(DARWIN)} + uses + X, + XLib; + {$ENDIF} {$ENDIF} - + {$IFDEF DARWIN} uses - X, - XLib, CocoaAll; {$ENDIF} @@ -155,7 +156,9 @@ const SDL_LibName = 'SDL2.dll'; {$ENDIF} - {$IFDEF UNIX} + {$IF DEFINED(HAIKU)} + SDL_LibName = 'libSDL2.so.0'; + {$ELSEIF DEFINED(UNIX)} {$IFDEF DARWIN} SDL_LibName = 'libSDL2.dylib'; {$ELSE} @@ -209,6 +212,7 @@ const {$I sdlfilesystem.inc} {$I sdllog.inc} {$I sdlsystem.inc} +{$I sdlstdinc.inc} {$I sdl.inc} implementation @@ -241,7 +245,7 @@ end; //from "sdl_mouse.h" function SDL_Button(button: SInt32): SInt32; begin - Result := 1 shl (button - 1); + Result := 1 shl (button - 1); end; {$IFDEF WINDOWS} @@ -303,7 +307,7 @@ function SDL_LoadWAV(_file: PAnsiChar; spec: PSDL_AudioSpec; audio_buf: PPUInt8; begin Result := SDL_LoadWAV_RW(SDL_RWFromFile(_file, 'rb'), 1, spec, audio_buf, audio_len); end; - + function SDL_AUDIO_BITSIZE(x: Cardinal): Cardinal; begin Result := x and SDL_AUDIO_MASK_BITSIZE; @@ -341,29 +345,29 @@ end; //from "sdl_pixels.h" -function SDL_PIXELFLAG(X: Cardinal): Boolean; +function SDL_PIXELFLAG(X: Cardinal): Cardinal; begin - Result := (X shr 28) = $0F; + Result := (X shr 28) and $0F; end; -function SDL_PIXELTYPE(X: Cardinal): Boolean; +function SDL_PIXELTYPE(X: Cardinal): Cardinal; begin - Result := (X shr 24) = $0F; + Result := (X shr 24) and $0F; end; -function SDL_PIXELORDER(X: Cardinal): Boolean; +function SDL_PIXELORDER(X: Cardinal): Cardinal; begin - Result := (X shr 20) = $0F; + Result := (X shr 20) and $0F; end; -function SDL_PIXELLAYOUT(X: Cardinal): Boolean; +function SDL_PIXELLAYOUT(X: Cardinal): Cardinal; begin - Result := (X shr 16) = $0F; + Result := (X shr 16) and $0F; end; -function SDL_BITSPERPIXEL(X: Cardinal): Boolean; +function SDL_BITSPERPIXEL(X: Cardinal): Cardinal; begin - Result := (X shr 8) = $FF; + Result := (X shr 8) and $FF; end; function SDL_IsPixelFormat_FOURCC(format: Variant): Boolean;