@@ -79,6 +79,7 @@ interface
7979{ $I SDL_log.inc} // 3.1.6-prev
8080{ $I SDL_version.inc} // 3.1.6-prev
8181{ $I SDL_revision.inc} // 3.1.6-prev
82+ { $I SDL_guid.inc} // 3.1.6-prev
8283{ $I SDL_stdinc.inc} // 3.1.6-prev (unfinished)
8384{ $I SDL_rect.inc} // 3.1.6-prev
8485{ $I SDL_properties.inc} // 3.1.6-prev
@@ -87,9 +88,21 @@ interface
8788{ $I SDL_iostream.inc} // 3.1.6-prev (unfinished)
8889{ $I SDL_surface.inc} // 3.1.6-prev
8990{ $I SDL_video.inc} // 3.1.6-prev
90- { $I SDL_render.inc} // 3.1.6-prev
9191{ $I SDL_timer.inc} // 3.1.6-prev
9292{ $I SDL_error.inc} // 3.1.6-prev
93+ { $I SDL_power.inc} // 3.1.6-prev
94+ { $I SDL_audio.inc} // 3.1.6-prev
95+ { $I SDL_sensor.inc} // 3.1.6-prev
96+ { $I SDL_scancode.inc} // 3.1.6-prev
97+ { $I SDL_keycode.inc} // 3.1.6-prev
98+ { $I SDL_mouse.inc} // 3.1.6-prev
99+ { $I SDL_keyboard.inc} // 3.1.6-prev
100+ { $I SDL_joystick.inc} // 3.1.6-prev
101+ { $I SDL_pen.inc} // 3.1.6-prev
102+ { $I SDL_touch.inc} // 3.1.6-prev
103+ { $I SDL_camera.inc} // 3.1.6-prev
104+ { $I SDL_events.inc} // 3.1.6-prev
105+ { $I SDL_render.inc} // 3.1.6-prev
93106{ $I SDL_clipboard.inc} // 3.2.0
94107{ $I SDL_cpuinfo.inc} // 3.2.0
95108{ $I SDL_dialog.inc} // 3.2.0
@@ -219,6 +232,64 @@ function SDL_NS_TO_US(NS: Integer): Integer;
219232 SDL_NS_TO_US:=NS div SDL_NS_PER_US;
220233end ;
221234
235+ { Macros from SDL_audio.h }
236+ function SDL_DEFINE_AUDIO_FORMAT (signed: cuint16; bigendian: cuint16;
237+ float: cuint16; size: Integer): TSDL_AudioFormat;
238+ begin
239+ Result:=(signed shl 15 ) or (bigendian shl 12 ) or (float shl 8 ) or (size and SDL_AUDIO_MASK_BITSIZE);
240+ end ;
241+
242+ function SDL_AUDIO_BITSIZE (x: TSDL_AudioFormat): Integer;
243+ begin
244+ Result:=x and SDL_AUDIO_MASK_BITSIZE;
245+ end ;
246+
247+ function SDL_AUDIO_BYTESIZE (x: TSDL_AudioFormat): Integer;
248+ begin
249+ Result:=SDL_AUDIO_BITSIZE(x) div 8 ;
250+ end ;
251+
252+ function SDL_AUDIO_ISFLOAT (x: TSDL_AudioFormat): Integer;
253+ begin
254+ Result:=x and SDL_AUDIO_MASK_FLOAT;
255+ end ;
256+
257+ function SDL_AUDIO_ISBIGENDIAN (x: TSDL_AudioFormat): Integer;
258+ begin
259+ Result:=x and SDL_AUDIO_MASK_BIG_ENDIAN;
260+ end ;
261+
262+ function SDL_AUDIO_ISLITTLEENDIAN (x: TSDL_AudioFormat): Integer;
263+ begin
264+ Result:=not (x) and SDL_AUDIO_MASK_BIG_ENDIAN;
265+ end ;
266+
267+ function SDL_AUDIO_ISSIGNED (x: TSDL_AudioFormat): Integer;
268+ begin
269+ Result:=x and SDL_AUDIO_MASK_SIGNED;
270+ end ;
271+
272+ function SDL_AUDIO_ISINT (x: TSDL_AudioFormat): Integer;
273+ begin
274+ Result:=not (x) and SDL_AUDIO_MASK_FLOAT;
275+ end ;
276+
277+ function SDL_AUDIO_ISUNSIGNED (x: TSDL_AudioFormat): Integer;
278+ begin
279+ Result:=not (x) and SDL_AUDIO_MASK_SIGNED;
280+ end ;
281+
282+ function SDL_AUDIO_FRAMESIZE (x: TSDL_AudioSpec): Integer;
283+ begin
284+ Result:=SDL_AUDIO_BYTESIZE(x.format * x.channels);
285+ end ;
286+
287+ { Macros from SDL_keycode.h }
288+ function SDL_SCANCODE_TO_KEYCODE (X: TSDL_Scancode): TSDL_Keycode;
289+ begin
290+ Result:=X or SDLK_SCANCODE_MASK;
291+ end ;
292+
222293{ Macros from SDL_video.h }
223294function SDL_WINDOWPOS_UNDEFINED_DISPLAY (X: Integer): Integer;
224295begin
0 commit comments