sdl.nv
· 1.5 KiB · Text
Raw
Playground
||:: init sdl
:: create a window :window dimensions: #800 #600
:: sleep #5
:: quit
| :SDL: Init | `@c` [
if(SDL_Init(SDL_INIT_EVERYTHING) < 0) {
printf("Error initializing SDL: %s\\n", SDL_GetError());
exit(-1);
}
]
| :SDL: RenderClear :renderer: $0? | `@c` [ SDL_RenderClear((SDL_Renderer*)$(0)); ]
| :SDL: RenderPresent :renderer: $0? | `@c` [ SDL_RenderPresent((SDL_Renderer*)$(0)); ]
| :SDL: DestroyRenderer :renderer: $0 | `@c` [ SDL_DestroyRenderer((SDL_Renderer*)$(0)); ]
| :SDL: DestroyWindow :window: $0 | `@c` [ SDL_DestroyWindow((SDL_Window*)$(0)); ]
| :SDL: SetRenderDrawColor :renderer: $0? :color: # $r # $g # $b # $a |
`@c` [ SDL_SetRenderDrawColor((SDL_Renderer*)$(0), $(1), $(2), $(3), $(4)); ]
| :SDL: Quit | `@c` [ SDL_Quit(); ]
|:: init sdl |
:SDL: Init
|:: create a window :window dimensions: # $0 # $1|
`@c` [
SDL_Window *window = NULL;
SDL_Renderer *renderer = NULL;
if(SDL_CreateWindowAndRenderer($(0), $(1), 0, &window, &renderer) < 0) {
printf("Error creating window: %s\\n", SDL_GetError());
exit(-1);
}
nv_push_fact(nvs__renderer, (unsigned int)(void*)renderer);
nv_push_fact(nvs__window, (unsigned int)(void*)window);
]
`SDL` (RenderClear RenderPresent SetRenderDrawColor)
`color` #0 #0 #0 #255
|:: quit :renderer: $0? :window: $1? |
:SDL: (DestroyRenderer DestroyWindow Quit)
|:: sleep # $0 |
`@c` [sleep($(0)); ]
|| `@c.include` (SDL2/SDL unistd)
| 1 | ||:: init sdl |
| 2 | :: create a window :window dimensions: #800 #600 |
| 3 | :: sleep #5 |
| 4 | :: quit |
| 5 | |
| 6 | | :SDL: Init | `@c` [ |
| 7 | if(SDL_Init(SDL_INIT_EVERYTHING) < 0) { |
| 8 | printf("Error initializing SDL: %s\\n", SDL_GetError()); |
| 9 | exit(-1); |
| 10 | } |
| 11 | ] |
| 12 | |
| 13 | | :SDL: RenderClear :renderer: $0? | `@c` [ SDL_RenderClear((SDL_Renderer*)$(0)); ] |
| 14 | | :SDL: RenderPresent :renderer: $0? | `@c` [ SDL_RenderPresent((SDL_Renderer*)$(0)); ] |
| 15 | | :SDL: DestroyRenderer :renderer: $0 | `@c` [ SDL_DestroyRenderer((SDL_Renderer*)$(0)); ] |
| 16 | | :SDL: DestroyWindow :window: $0 | `@c` [ SDL_DestroyWindow((SDL_Window*)$(0)); ] |
| 17 | | :SDL: SetRenderDrawColor :renderer: $0? :color: # $r # $g # $b # $a | |
| 18 | `@c` [ SDL_SetRenderDrawColor((SDL_Renderer*)$(0), $(1), $(2), $(3), $(4)); ] |
| 19 | | :SDL: Quit | `@c` [ SDL_Quit(); ] |
| 20 | |
| 21 | |:: init sdl | |
| 22 | :SDL: Init |
| 23 | |
| 24 | |:: create a window :window dimensions: # $0 # $1| |
| 25 | `@c` [ |
| 26 | SDL_Window *window = NULL; |
| 27 | SDL_Renderer *renderer = NULL; |
| 28 | |
| 29 | if(SDL_CreateWindowAndRenderer($(0), $(1), 0, &window, &renderer) < 0) { |
| 30 | printf("Error creating window: %s\\n", SDL_GetError()); |
| 31 | exit(-1); |
| 32 | } |
| 33 | |
| 34 | nv_push_fact(nvs__renderer, (unsigned int)(void*)renderer); |
| 35 | nv_push_fact(nvs__window, (unsigned int)(void*)window); |
| 36 | ] |
| 37 | `SDL` (RenderClear RenderPresent SetRenderDrawColor) |
| 38 | `color` #0 #0 #0 #255 |
| 39 | |
| 40 | |:: quit :renderer: $0? :window: $1? | |
| 41 | :SDL: (DestroyRenderer DestroyWindow Quit) |
| 42 | |
| 43 | |:: sleep # $0 | |
| 44 | `@c` [sleep($(0)); ] |
| 45 | |
| 46 | || `@c.include` (SDL2/SDL unistd) |
| 47 |