Hex Artifact Content
Not logged in

Artifact a18c9de5f1e10c458d2ca6d410f724b1454568a1:


0000: 28 64 65 66 69 6e 65 2d 73 64 6c 2d 66 75 6e 63  (define-sdl-func
0010: 20 73 64 6c 2d 62 6f 6f 6c 2d 74 20 73 64 6c 2d   sdl-bool-t sdl-
0020: 61 74 6f 6d 69 63 2d 74 72 79 2d 6c 6f 63 6b 20  atomic-try-lock 
0030: 28 28 6c 6f 63 6b 20 28 2a 20 73 64 6c 2d 73 70  ((lock (* sdl-sp
0040: 69 6e 2d 6c 6f 63 6b 2d 74 29 29 29 20 22 53 44  in-lock-t))) "SD
0050: 4c 5f 41 74 6f 6d 69 63 54 72 79 4c 6f 63 6b 22  L_AtomicTryLock"
0060: 29 0a 28 64 65 66 69 6e 65 2d 73 64 6c 2d 66 75  ).(define-sdl-fu
0070: 6e 63 20 76 6f 69 64 20 73 64 6c 2d 61 74 6f 6d  nc void sdl-atom
0080: 69 63 2d 6c 6f 63 6b 20 28 28 6c 6f 63 6b 20 28  ic-lock ((lock (
0090: 2a 20 73 64 6c 2d 73 70 69 6e 2d 6c 6f 63 6b 2d  * sdl-spin-lock-
00a0: 74 29 29 29 20 22 53 44 4c 5f 41 74 6f 6d 69 63  t))) "SDL_Atomic
00b0: 4c 6f 63 6b 22 29 0a 28 64 65 66 69 6e 65 2d 73  Lock").(define-s
00c0: 64 6c 2d 66 75 6e 63 20 76 6f 69 64 20 73 64 6c  dl-func void sdl
00d0: 2d 61 74 6f 6d 69 63 2d 75 6e 6c 6f 63 6b 20 28  -atomic-unlock (
00e0: 28 6c 6f 63 6b 20 28 2a 20 73 64 6c 2d 73 70 69  (lock (* sdl-spi
00f0: 6e 2d 6c 6f 63 6b 2d 74 29 29 29 20 22 53 44 4c  n-lock-t))) "SDL
0100: 5f 41 74 6f 6d 69 63 55 6e 6c 6f 63 6b 22 29 0a  _AtomicUnlock").
0110: 28 64 65 66 69 6e 65 2d 73 64 6c 2d 66 75 6e 63  (define-sdl-func
0120: 20 76 6f 69 64 20 73 64 6c 2d 6d 65 6d 6f 72 79   void sdl-memory
0130: 2d 62 61 72 72 69 65 72 2d 72 65 6c 65 61 73 65  -barrier-release
0140: 2d 66 75 6e 63 74 69 6f 6e 20 28 29 20 22 53 44  -function () "SD
0150: 4c 5f 4d 65 6d 6f 72 79 42 61 72 72 69 65 72 52  L_MemoryBarrierR
0160: 65 6c 65 61 73 65 46 75 6e 63 74 69 6f 6e 22 29  eleaseFunction")
0170: 0a 28 64 65 66 69 6e 65 2d 73 64 6c 2d 66 75 6e  .(define-sdl-fun
0180: 63 20 76 6f 69 64 20 73 64 6c 2d 6d 65 6d 6f 72  c void sdl-memor
0190: 79 2d 62 61 72 72 69 65 72 2d 61 63 71 75 69 72  y-barrier-acquir
01a0: 65 2d 66 75 6e 63 74 69 6f 6e 20 28 29 20 22 53  e-function () "S
01b0: 44 4c 5f 4d 65 6d 6f 72 79 42 61 72 72 69 65 72  DL_MemoryBarrier
01c0: 41 63 71 75 69 72 65 46 75 6e 63 74 69 6f 6e 22  AcquireFunction"
01d0: 29 0a 28 64 65 66 69 6e 65 2d 73 64 6c 2d 66 75  ).(define-sdl-fu
01e0: 6e 63 20 73 64 6c 2d 62 6f 6f 6c 2d 74 20 73 64  nc sdl-bool-t sd
01f0: 6c 2d 61 74 6f 6d 69 63 2d 63 61 73 20 28 28 61  l-atomic-cas ((a
0200: 20 28 2a 20 73 64 6c 2d 61 74 6f 6d 69 63 2d 74   (* sdl-atomic-t
0210: 29 29 20 28 6f 6c 64 76 61 6c 20 69 6e 74 29 20  )) (oldval int) 
0220: 28 6e 65 77 76 61 6c 20 69 6e 74 29 29 20 22 53  (newval int)) "S
0230: 44 4c 5f 41 74 6f 6d 69 63 43 41 53 22 29 0a 28  DL_AtomicCAS").(
0240: 64 65 66 69 6e 65 2d 73 64 6c 2d 66 75 6e 63 20  define-sdl-func 
0250: 69 6e 74 20 73 64 6c 2d 61 74 6f 6d 69 63 2d 73  int sdl-atomic-s
0260: 65 74 20 28 28 61 20 28 2a 20 73 64 6c 2d 61 74  et ((a (* sdl-at
0270: 6f 6d 69 63 2d 74 29 29 20 28 76 20 69 6e 74 29  omic-t)) (v int)
0280: 29 20 22 53 44 4c 5f 41 74 6f 6d 69 63 53 65 74  ) "SDL_AtomicSet
0290: 22 29 0a 28 64 65 66 69 6e 65 2d 73 64 6c 2d 66  ").(define-sdl-f
02a0: 75 6e 63 20 69 6e 74 20 73 64 6c 2d 61 74 6f 6d  unc int sdl-atom
02b0: 69 63 2d 67 65 74 20 28 28 61 20 28 2a 20 73 64  ic-get ((a (* sd
02c0: 6c 2d 61 74 6f 6d 69 63 2d 74 29 29 29 20 22 53  l-atomic-t))) "S
02d0: 44 4c 5f 41 74 6f 6d 69 63 47 65 74 22 29 0a 28  DL_AtomicGet").(
02e0: 64 65 66 69 6e 65 2d 73 64 6c 2d 66 75 6e 63 20  define-sdl-func 
02f0: 69 6e 74 20 73 64 6c 2d 61 74 6f 6d 69 63 2d 61  int sdl-atomic-a
0300: 64 64 20 28 28 61 20 28 2a 20 73 64 6c 2d 61 74  dd ((a (* sdl-at
0310: 6f 6d 69 63 2d 74 29 29 20 28 76 20 69 6e 74 29  omic-t)) (v int)
0320: 29 20 22 53 44 4c 5f 41 74 6f 6d 69 63 41 64 64  ) "SDL_AtomicAdd
0330: 22 29 0a 28 64 65 66 69 6e 65 2d 73 64 6c 2d 66  ").(define-sdl-f
0340: 75 6e 63 20 73 64 6c 2d 62 6f 6f 6c 2d 74 20 73  unc sdl-bool-t s
0350: 64 6c 2d 61 74 6f 6d 69 63 2d 63 61 73 2d 70 74  dl-atomic-cas-pt
0360: 72 20 28 28 61 20 28 2a 20 76 6f 69 64 2a 29 29  r ((a (* void*))
0370: 20 28 6f 6c 64 76 61 6c 20 76 6f 69 64 2a 29 20   (oldval void*) 
0380: 28 6e 65 77 76 61 6c 20 76 6f 69 64 2a 29 29 20  (newval void*)) 
0390: 22 53 44 4c 5f 41 74 6f 6d 69 63 43 41 53 50 74  "SDL_AtomicCASPt
03a0: 72 22 29 0a 28 64 65 66 69 6e 65 2d 73 64 6c 2d  r").(define-sdl-
03b0: 66 75 6e 63 20 76 6f 69 64 2a 20 73 64 6c 2d 61  func void* sdl-a
03c0: 74 6f 6d 69 63 2d 73 65 74 2d 70 74 72 20 28 28  tomic-set-ptr ((
03d0: 61 20 28 2a 20 76 6f 69 64 2a 29 29 20 28 76 20  a (* void*)) (v 
03e0: 76 6f 69 64 2a 29 29 20 22 53 44 4c 5f 41 74 6f  void*)) "SDL_Ato
03f0: 6d 69 63 53 65 74 50 74 72 22 29 0a 28 64 65 66  micSetPtr").(def
0400: 69 6e 65 2d 73 64 6c 2d 66 75 6e 63 20 76 6f 69  ine-sdl-func voi
0410: 64 2a 20 73 64 6c 2d 61 74 6f 6d 69 63 2d 67 65  d* sdl-atomic-ge
0420: 74 2d 70 74 72 20 28 28 61 20 28 2a 20 76 6f 69  t-ptr ((a (* voi
0430: 64 2a 29 29 29 20 22 53 44 4c 5f 41 74 6f 6d 69  d*))) "SDL_Atomi
0440: 63 47 65 74 50 74 72 22 29 0a                    cGetPtr").