Commit Graph

1794 Commits

Author SHA1 Message Date
Sevan Janiyan 305b8469b0 Use the correct definition to obtain snprintf(3)
At some point snprintf(3) prototype became guarded off in stdio.h.
Defining _C99_SOURCE makes it visible.
On legacy Darwin, such a guard was not present so the definition
has no impact on the build, but on "modern" macos it has the desired
effect.
Build tested on OS X 10.4 and macos 10.15.
2023-05-15 08:32:48 -07:00
Sevan Janiyan b5b3177c68 Switch to using SDL_CreateRGBSurface() SDL_CreateRGBSurfaceWithFormat() was introduced in SDL 2.0.5 whereas SDL_CreateRGBSurface() is available since SDL 2.0. This allows uxn to run on legacy systems where it's not possible to reach SDL 2.0.5 but prior versions are, such as Mac OS X Tiger. 2023-05-14 19:34:55 -07:00
Sevan Janiyan 822a7fea54 Use the audio format native to host AUDIO_S16 defaults to little endian format which causes issues when running on big endian systems. Use AUDIO_S16SYS instead which sets to whatever endian the system uxn is being built on is. 2023-05-14 19:34:55 -07:00
~d6 310ba97ef6 Improve screen vector timing somewhat.
This patch tries to improve the accuracy of our
screen refresh timing. Notably, it tries to ensure
we don't introduce extra delay in our timing based
on how long the screen vector takes to evaluate.

We also try to ensure we only call SDL_Delay when
we have at least 1ms to wait.
2023-05-09 13:12:23 -07:00
Devine Lu Linvega 09d9990a62 (screen) Fixes warnings 2023-05-04 20:45:52 -07:00
Devine Lu Linvega 77edd1dbbf (screen) Renamed pixels attr to layer 2023-05-04 20:32:44 -07:00
Devine Lu Linvega d80885ee22 (screen) Housekeeping 2023-05-04 20:17:38 -07:00
Devine Lu Linvega 98bd2a7849 (screen) Use uxn_screen global 2023-05-04 17:43:44 -07:00
Devine Lu Linvega 1fdb91ecb8 (amiga.tal) Tiny refactoring 2023-05-04 17:15:27 -07:00
Devine Lu Linvega 204805b586 (amiga.tal) Do not flip rotation direction on floor collision 2023-05-04 16:25:41 -07:00
Nojus Raskevicius 64f2692734 Remove fps limit on bounce for amiga.tal 2023-05-04 15:58:34 -07:00
~d6 11a893d10d Reverse ball rotation after bouncing. 2023-05-04 15:57:00 -07:00
Devine Lu Linvega 9416a0e813 Removed layer struct 2023-05-04 11:33:31 -07:00
Devine Lu Linvega 8f98281d89 (screen) Only repaint changed pixels 2023-05-04 11:15:16 -07:00
Sigrid Solveig Haflínudóttir a740105b76 enable "install" target on Plan 9, install as games/uxn* 2023-05-02 23:01:29 +00:00
Sigrid Solveig Haflínudóttir c7f3014fe9 zoom: ignore if 0, ie if the screen is somehow TOO small to do any scaling 2023-05-02 22:53:07 +00:00
Devine Lu Linvega 83ba7e05ea Added mock behavior for the friend port 2023-05-02 10:31:33 -07:00
Matus Laslofi d2e054346f Declare snprintf to fix builds on macOS
For some reason on macOS, the functions `snprintf` and `vsnprintf` are
not in the X/Open 5 (ANSI C89) standard but rather in the X/Open
6 (ISO C99). A simplest solution seems to be to declaring the missing
functions before using them, which is what I did here. Another option
is to use the C99 standard with `#define _XOPEN_SOURCE 600`, which
seems to be an overkill for such a niche issue.

Quoting from the STANDARDS section in `man 3 snprintf` on macOS:

> ...the snprintf() and vsnprintf() functions conform to ISO/IEC
> 9899:1999 (“ISO C99”)...
2023-05-01 09:27:49 -07:00
Devine Lu Linvega ce0cc5a352 Do not center on resize 2023-04-26 12:04:44 -07:00
Devine Lu Linvega 0da70d6bd1 Allow tiny sizes for the screen 2023-04-26 12:01:45 -07:00
Devine Lu Linvega ebf31ecb03 (uxnemu) Removed debug line 2023-04-22 14:57:26 -07:00
Devine Lu Linvega 40d6c889bc Set Console/type after memory is initialized 2023-04-22 14:56:12 -07:00
Devine Lu Linvega 3038d5c40b (console) Use 0x00 for no-queue 2023-04-17 11:27:54 -07:00
Devine Lu Linvega d8bee29626 (console) Use 0x1 for no-args 2023-04-17 11:19:37 -07:00
Devine Lu Linvega 98282cb1a6 Moved error printing to system.c 2023-04-17 11:03:11 -07:00
Devine Lu Linvega b76b7b6e9b (console.tal) Test argument queue 2023-04-17 10:55:45 -07:00
Devine Lu Linvega 9a882a64c7 (uxnemu) Write arguments end in console device 2023-04-17 10:41:03 -07:00
Devine Lu Linvega 1bf0ffc5e5 (uxnemu) Display usage when no roms and no params 2023-04-17 10:29:39 -07:00
Devine Lu Linvega 453f491918 (uxnemu) Display new zoom values in usage 2023-04-17 09:59:00 -07:00
Devine Lu Linvega 72e23f0260 (uxnemu) Simplified boot sequence 2023-04-17 09:48:27 -07:00
Devine Lu Linvega d1dc143912 (uxnemu) Only set zoom scale once on boot 2023-04-17 09:36:55 -07:00
Devine Lu Linvega 6021b2b63d (console.tal) Fixed underflow error on quit 2023-04-16 22:07:47 -07:00
Devine Lu Linvega a9527fbd95 (console.tal) Added input type port to example 2023-04-16 22:03:44 -07:00
Devine Lu Linvega fbba9b304d (console) Implemented 0x17 port with stream type based on design by zzo38 2023-04-16 21:13:50 -07:00
Devine Lu Linvega 5e927cdfde (datetime.tal) Added day of the year 2023-04-16 14:51:00 -07:00
Devine Lu Linvega 04c6472819 (datetime.tal) Created a test file for the datetime device 2023-04-16 14:39:20 -07:00
Devine Lu Linvega c70ba4238a (system.tal) Made example dynamic 2023-04-15 20:06:34 -07:00
Devine Lu Linvega 07f9785fab (quine.tal) Added quine example 2023-04-15 12:44:36 -07:00
Devine Lu Linvega 32fa0f95c3 (uxn.c) Catch div-by-zero errors 2023-04-15 09:52:08 -07:00
Devine Lu Linvega 14b704fd01 (system.tal) Added error handler example 2023-04-15 09:49:58 -07:00
Devine Lu Linvega 25cc4a1329 (screen.tal) Improved screen testing rom 2023-04-14 19:51:05 -07:00
Devine Lu Linvega c7203de2ea (uxn.c) Less indirections in uxn core 2023-04-14 10:30:08 -07:00
Devine Lu Linvega 99874908e4 (screen.c) Skip blit when color is 0 2023-04-14 10:19:57 -07:00
Devine Lu Linvega 0f75b123a4 (screen) sprite address wrapping 2023-04-14 10:05:15 -07:00
Devine Lu Linvega 04554dd1d3 (screen.c) Reduced number of variables indirections 2023-04-14 09:51:50 -07:00
Devine Lu Linvega b6e6839d25 (screen.c) Removed pixel function 2023-04-13 21:57:17 -07:00
Devine Lu Linvega d0db4f9223 (screen.c) Improved readability of the code 2023-04-13 21:33:16 -07:00
Devine Lu Linvega 891204610a Fixed issue with screen/fill layer 2023-04-13 09:58:09 -07:00
Devine Lu Linvega 2acc7edb6f Added comment for blending LUT 2023-04-13 09:53:05 -07:00
Devine Lu Linvega d043ce633d (screen.c) Faster drawing of pixel 2023-04-13 09:42:59 -07:00