Hex Artifact Content
Not logged in

Artifact 5294a4bcc23c8d45440856837172d8fe4ea101d4:


0000: 28 64 65 66 69 6e 65 2d 73 64 6c 2d 66 75 6e 63  (define-sdl-func
0010: 20 28 2a 20 73 64 6c 2d 6d 75 74 65 78 2d 74 29   (* sdl-mutex-t)
0020: 20 73 64 6c 2d 63 72 65 61 74 65 2d 6d 75 74 65   sdl-create-mute
0030: 78 20 28 29 20 22 53 44 4c 5f 43 72 65 61 74 65  x () "SDL_Create
0040: 4d 75 74 65 78 22 29 0a 28 64 65 66 69 6e 65 2d  Mutex").(define-
0050: 73 64 6c 2d 66 75 6e 63 20 69 6e 74 20 73 64 6c  sdl-func int sdl
0060: 2d 6c 6f 63 6b 2d 6d 75 74 65 78 20 28 28 6d 75  -lock-mutex ((mu
0070: 74 65 78 20 28 2a 20 73 64 6c 2d 6d 75 74 65 78  tex (* sdl-mutex
0080: 2d 74 29 29 29 20 22 53 44 4c 5f 4c 6f 63 6b 4d  -t))) "SDL_LockM
0090: 75 74 65 78 22 29 0a 28 64 65 66 69 6e 65 2d 73  utex").(define-s
00a0: 64 6c 2d 66 75 6e 63 20 69 6e 74 20 73 64 6c 2d  dl-func int sdl-
00b0: 74 72 79 2d 6c 6f 63 6b 2d 6d 75 74 65 78 20 28  try-lock-mutex (
00c0: 28 6d 75 74 65 78 20 28 2a 20 73 64 6c 2d 6d 75  (mutex (* sdl-mu
00d0: 74 65 78 2d 74 29 29 29 20 22 53 44 4c 5f 54 72  tex-t))) "SDL_Tr
00e0: 79 4c 6f 63 6b 4d 75 74 65 78 22 29 0a 28 64 65  yLockMutex").(de
00f0: 66 69 6e 65 2d 73 64 6c 2d 66 75 6e 63 20 69 6e  fine-sdl-func in
0100: 74 20 73 64 6c 2d 75 6e 6c 6f 63 6b 2d 6d 75 74  t sdl-unlock-mut
0110: 65 78 20 28 28 6d 75 74 65 78 20 28 2a 20 73 64  ex ((mutex (* sd
0120: 6c 2d 6d 75 74 65 78 2d 74 29 29 29 20 22 53 44  l-mutex-t))) "SD
0130: 4c 5f 55 6e 6c 6f 63 6b 4d 75 74 65 78 22 29 0a  L_UnlockMutex").
0140: 28 64 65 66 69 6e 65 2d 73 64 6c 2d 66 75 6e 63  (define-sdl-func
0150: 20 76 6f 69 64 20 73 64 6c 2d 64 65 73 74 72 6f   void sdl-destro
0160: 79 2d 6d 75 74 65 78 20 28 28 6d 75 74 65 78 20  y-mutex ((mutex 
0170: 28 2a 20 73 64 6c 2d 6d 75 74 65 78 2d 74 29 29  (* sdl-mutex-t))
0180: 29 20 22 53 44 4c 5f 44 65 73 74 72 6f 79 4d 75  ) "SDL_DestroyMu
0190: 74 65 78 22 29 0a 28 64 65 66 69 6e 65 2d 73 64  tex").(define-sd
01a0: 6c 2d 66 75 6e 63 20 28 2a 20 73 64 6c 2d 73 65  l-func (* sdl-se
01b0: 6d 2d 74 29 20 73 64 6c 2d 63 72 65 61 74 65 2d  m-t) sdl-create-
01c0: 73 65 6d 61 70 68 6f 72 65 20 28 28 69 6e 69 74  semaphore ((init
01d0: 69 61 6c 5f 76 61 6c 75 65 20 75 69 6e 74 33 32  ial_value uint32
01e0: 29 29 20 22 53 44 4c 5f 43 72 65 61 74 65 53 65  )) "SDL_CreateSe
01f0: 6d 61 70 68 6f 72 65 22 29 0a 28 64 65 66 69 6e  maphore").(defin
0200: 65 2d 73 64 6c 2d 66 75 6e 63 20 76 6f 69 64 20  e-sdl-func void 
0210: 73 64 6c 2d 64 65 73 74 72 6f 79 2d 73 65 6d 61  sdl-destroy-sema
0220: 70 68 6f 72 65 20 28 28 73 65 6d 20 28 2a 20 73  phore ((sem (* s
0230: 64 6c 2d 73 65 6d 2d 74 29 29 29 20 22 53 44 4c  dl-sem-t))) "SDL
0240: 5f 44 65 73 74 72 6f 79 53 65 6d 61 70 68 6f 72  _DestroySemaphor
0250: 65 22 29 0a 28 64 65 66 69 6e 65 2d 73 64 6c 2d  e").(define-sdl-
0260: 66 75 6e 63 20 69 6e 74 20 73 64 6c 2d 73 65 6d  func int sdl-sem
0270: 2d 77 61 69 74 20 28 28 73 65 6d 20 28 2a 20 73  -wait ((sem (* s
0280: 64 6c 2d 73 65 6d 2d 74 29 29 29 20 22 53 44 4c  dl-sem-t))) "SDL
0290: 5f 53 65 6d 57 61 69 74 22 29 0a 28 64 65 66 69  _SemWait").(defi
02a0: 6e 65 2d 73 64 6c 2d 66 75 6e 63 20 69 6e 74 20  ne-sdl-func int 
02b0: 73 64 6c 2d 73 65 6d 2d 74 72 79 2d 77 61 69 74  sdl-sem-try-wait
02c0: 20 28 28 73 65 6d 20 28 2a 20 73 64 6c 2d 73 65   ((sem (* sdl-se
02d0: 6d 2d 74 29 29 29 20 22 53 44 4c 5f 53 65 6d 54  m-t))) "SDL_SemT
02e0: 72 79 57 61 69 74 22 29 0a 28 64 65 66 69 6e 65  ryWait").(define
02f0: 2d 73 64 6c 2d 66 75 6e 63 20 69 6e 74 20 73 64  -sdl-func int sd
0300: 6c 2d 73 65 6d 2d 77 61 69 74 2d 74 69 6d 65 6f  l-sem-wait-timeo
0310: 75 74 20 28 28 73 65 6d 20 28 2a 20 73 64 6c 2d  ut ((sem (* sdl-
0320: 73 65 6d 2d 74 29 29 20 28 6d 73 20 75 69 6e 74  sem-t)) (ms uint
0330: 33 32 29 29 20 22 53 44 4c 5f 53 65 6d 57 61 69  32)) "SDL_SemWai
0340: 74 54 69 6d 65 6f 75 74 22 29 0a 28 64 65 66 69  tTimeout").(defi
0350: 6e 65 2d 73 64 6c 2d 66 75 6e 63 20 69 6e 74 20  ne-sdl-func int 
0360: 73 64 6c 2d 73 65 6d 2d 70 6f 73 74 20 28 28 73  sdl-sem-post ((s
0370: 65 6d 20 28 2a 20 73 64 6c 2d 73 65 6d 2d 74 29  em (* sdl-sem-t)
0380: 29 29 20 22 53 44 4c 5f 53 65 6d 50 6f 73 74 22  )) "SDL_SemPost"
0390: 29 0a 28 64 65 66 69 6e 65 2d 73 64 6c 2d 66 75  ).(define-sdl-fu
03a0: 6e 63 20 75 69 6e 74 33 32 20 73 64 6c 2d 73 65  nc uint32 sdl-se
03b0: 6d 2d 76 61 6c 75 65 20 28 28 73 65 6d 20 28 2a  m-value ((sem (*
03c0: 20 73 64 6c 2d 73 65 6d 2d 74 29 29 29 20 22 53   sdl-sem-t))) "S
03d0: 44 4c 5f 53 65 6d 56 61 6c 75 65 22 29 0a 28 64  DL_SemValue").(d
03e0: 65 66 69 6e 65 2d 73 64 6c 2d 66 75 6e 63 20 28  efine-sdl-func (
03f0: 2a 20 73 64 6c 2d 63 6f 6e 64 2d 74 29 20 73 64  * sdl-cond-t) sd
0400: 6c 2d 63 72 65 61 74 65 2d 63 6f 6e 64 20 28 29  l-create-cond ()
0410: 20 22 53 44 4c 5f 43 72 65 61 74 65 43 6f 6e 64   "SDL_CreateCond
0420: 22 29 0a 28 64 65 66 69 6e 65 2d 73 64 6c 2d 66  ").(define-sdl-f
0430: 75 6e 63 20 76 6f 69 64 20 73 64 6c 2d 64 65 73  unc void sdl-des
0440: 74 72 6f 79 2d 63 6f 6e 64 20 28 28 63 6f 6e 64  troy-cond ((cond
0450: 20 28 2a 20 73 64 6c 2d 63 6f 6e 64 2d 74 29 29   (* sdl-cond-t))
0460: 29 20 22 53 44 4c 5f 44 65 73 74 72 6f 79 43 6f  ) "SDL_DestroyCo
0470: 6e 64 22 29 0a 28 64 65 66 69 6e 65 2d 73 64 6c  nd").(define-sdl
0480: 2d 66 75 6e 63 20 69 6e 74 20 73 64 6c 2d 63 6f  -func int sdl-co
0490: 6e 64 2d 73 69 67 6e 61 6c 20 28 28 63 6f 6e 64  nd-signal ((cond
04a0: 20 28 2a 20 73 64 6c 2d 63 6f 6e 64 2d 74 29 29   (* sdl-cond-t))
04b0: 29 20 22 53 44 4c 5f 43 6f 6e 64 53 69 67 6e 61  ) "SDL_CondSigna
04c0: 6c 22 29 0a 28 64 65 66 69 6e 65 2d 73 64 6c 2d  l").(define-sdl-
04d0: 66 75 6e 63 20 69 6e 74 20 73 64 6c 2d 63 6f 6e  func int sdl-con
04e0: 64 2d 62 72 6f 61 64 63 61 73 74 20 28 28 63 6f  d-broadcast ((co
04f0: 6e 64 20 28 2a 20 73 64 6c 2d 63 6f 6e 64 2d 74  nd (* sdl-cond-t
0500: 29 29 29 20 22 53 44 4c 5f 43 6f 6e 64 42 72 6f  ))) "SDL_CondBro
0510: 61 64 63 61 73 74 22 29 0a 28 64 65 66 69 6e 65  adcast").(define
0520: 2d 73 64 6c 2d 66 75 6e 63 20 69 6e 74 20 73 64  -sdl-func int sd
0530: 6c 2d 63 6f 6e 64 2d 77 61 69 74 20 28 28 63 6f  l-cond-wait ((co
0540: 6e 64 20 28 2a 20 73 64 6c 2d 63 6f 6e 64 2d 74  nd (* sdl-cond-t
0550: 29 29 20 28 6d 75 74 65 78 20 28 2a 20 73 64 6c  )) (mutex (* sdl
0560: 2d 6d 75 74 65 78 2d 74 29 29 29 20 22 53 44 4c  -mutex-t))) "SDL
0570: 5f 43 6f 6e 64 57 61 69 74 22 29 0a 28 64 65 66  _CondWait").(def
0580: 69 6e 65 2d 73 64 6c 2d 66 75 6e 63 20 69 6e 74  ine-sdl-func int
0590: 20 73 64 6c 2d 63 6f 6e 64 2d 77 61 69 74 2d 74   sdl-cond-wait-t
05a0: 69 6d 65 6f 75 74 20 28 28 63 6f 6e 64 20 28 2a  imeout ((cond (*
05b0: 20 73 64 6c 2d 63 6f 6e 64 2d 74 29 29 20 28 6d   sdl-cond-t)) (m
05c0: 75 74 65 78 20 28 2a 20 73 64 6c 2d 6d 75 74 65  utex (* sdl-mute
05d0: 78 2d 74 29 29 20 28 6d 73 20 75 69 6e 74 33 32  x-t)) (ms uint32
05e0: 29 29 20 22 53 44 4c 5f 43 6f 6e 64 57 61 69 74  )) "SDL_CondWait
05f0: 54 69 6d 65 6f 75 74 22 29 0a                    Timeout").