| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485 |
- DEFINITION MODULE FOR "C" SDL2 ;
- (*
- m2SDL - core SDL2 subsystem control, error handling and timing.
- GNU Modula-2 binding, mapped onto <SDL.h>, <SDL_error.h>, <SDL_timer.h>.
- Mapping notes
- -------------
- * CARDINAL <-> Uint32 / unsigned int
- * INTEGER <-> int
- * ADDRESS <-> opaque pointers (char *, SDL_Window * escapes via SDLVideo)
- * ARRAY OF CHAR parameters map onto (char * ) - pass string literals
- or CHAR arrays directly, as documented in the GM2 "Interface to C" node.
- *)
- FROM SYSTEM IMPORT ADDRESS;
- EXPORT UNQUALIFIED
- (* --- init flags (SDL_INIT_* from SDL.h) --- *)
- SDLInitTimer, SDLInitAudio, SDLInitVideo,
- SDLInitJoystick, SDLInitHaptic, SDLInitGameController,
- SDLInitEvents, SDLInitSensor, SDLInitEverything,
- (* --- core --- *)
- SDL_Init, SDL_InitSubSystem, SDL_QuitSubSystem,
- SDL_WasInit, SDL_Quit,
- (* --- errors --- *)
- SDL_GetError, SDL_ClearError,
- (* --- timing --- *)
- SDL_Delay, SDL_GetTicks, SDL_GetTicks64,
- SDL_GetPerformanceCounter, SDL_GetPerformanceFrequency;
- CONST
- SDLInitTimer = 000000001H; (* 0x00000001 *)
- SDLInitAudio = 000000010H; (* 0x00000010 *)
- SDLInitVideo = 000000020H; (* 0x00000020 *)
- SDLInitJoystick = 000000200H; (* 0x00000200 *)
- SDLInitHaptic = 000001000H; (* 0x00001000 *)
- SDLInitGameController = 000002000H; (* 0x00002000 *)
- SDLInitEvents = 000004000H; (* 0x00004000 *)
- SDLInitSensor = 000008000H; (* 0x00008000 *)
- SDLInitEverything = 00000F231H; (* TIMER|AUDIO|VIDEO|EVENTS|
- JOYSTICK|HAPTIC|GAMECONTROLLER|SENSOR *)
- (* int SDL_Init(Uint32 flags) *)
- PROCEDURE SDL_Init (flags: CARDINAL) : INTEGER;
- (* int SDL_InitSubSystem(Uint32 flags) *)
- PROCEDURE SDL_InitSubSystem (flags: CARDINAL) : INTEGER;
- (* void SDL_QuitSubSystem(Uint32 flags) *)
- PROCEDURE SDL_QuitSubSystem (flags: CARDINAL);
- (* Uint32 SDL_WasInit(Uint32 flags) *)
- PROCEDURE SDL_WasInit (flags: CARDINAL) : CARDINAL;
- (* void SDL_Quit(void) *)
- PROCEDURE SDL_Quit ();
- (* const char *SDL_GetError(void) *)
- PROCEDURE SDL_GetError () : ADDRESS;
- (* void SDL_ClearError(void) *)
- PROCEDURE SDL_ClearError ();
- (* void SDL_Delay(Uint32 ms) *)
- PROCEDURE SDL_Delay (ms: CARDINAL);
- (* Uint32 SDL_GetTicks(void) *)
- PROCEDURE SDL_GetTicks () : CARDINAL;
- (* Uint64 SDL_GetTicks64(void) - LONGCARD <-> unsigned long long *)
- PROCEDURE SDL_GetTicks64 () : LONGCARD;
- (* Uint64 SDL_GetPerformanceCounter(void) *)
- PROCEDURE SDL_GetPerformanceCounter () : LONGCARD;
- (* Uint64 SDL_GetPerformanceFrequency(void) *)
- PROCEDURE SDL_GetPerformanceFrequency () : LONGCARD;
- END SDL2.
|