Sigrid Solveig Haflínudóttir
9888dcba03
DEVR: use bitwise OR to avoid C compiler (kencc) promoting types to int and doing other weird stuff
2023-08-08 04:22:10 +02:00
Sigrid Solveig Haflínudóttir
a87ececb71
remove SDL_RENDERER_TARGETTEXTURE (unused)
2023-08-08 02:49:02 +02:00
neauoire
fda12df0f1
Housekeeping
2023-08-07 16:35:34 -07:00
neauoire
c68936b475
(uxn.c) Renamed POP/PUSH to POPx/PUSHx
2023-08-07 16:22:57 -07:00
neauoire
fcf12a12dc
(uxn.c) Connected to device masks
2023-08-07 16:12:12 -07:00
neauoire
6d7696a760
(uxn.c) Reconnected old core
2023-08-07 12:20:50 -07:00
neauoire
222246748e
(screen.c) Inlined sprite drawing function
2023-08-05 10:31:22 -07:00
neauoire
789fb0cd8b
(screen.c) Faster sprite drawing
2023-08-05 09:59:08 -07:00
neauoire
b4d7818632
Added auto byte sprite flipping
2023-08-04 11:55:17 -07:00
Derek Stevens
ffc604fba3
run: set window title from rom
...
Signed-off-by: Derek Stevens <nilix@nilfm.cc>
2023-08-04 11:47:37 -07:00
neauoire
2ddc20b1b6
(uxnasm) Generalized lambdas as common labels
2023-08-02 19:48:48 -07:00
Cellmaker
9ca8e9623d
added microtonality to the audio device
2023-07-30 15:03:34 -07:00
Devine Lu Linvega
3a8cc42e0e
Better labels for lambdas
2023-07-29 16:24:39 -07:00
Devine Lu Linvega
32cc690539
(uxnasm) Lambdas support
2023-07-29 16:14:19 -07:00
Devine Lu Linvega
0efea06b46
Only update viewport rect on resize
2023-07-26 08:37:58 -07:00
Devine Lu Linvega
289d13aeb4
Returned emulator border
2023-07-25 21:43:26 -07:00
Devine Lu Linvega
12509b7e6b
Merged show() and gameloop()
2023-07-25 14:56:26 -07:00
Devine Lu Linvega
db2117ee0a
Resize emulator on start
2023-07-25 14:46:37 -07:00
Devine Lu Linvega
4286e0ba53
Grouped emulator routines together in uxnemu
2023-07-25 14:42:10 -07:00
Devine Lu Linvega
969f03e0ba
Uxnemu skips resizing window until reset vector is done.
2023-07-25 14:30:51 -07:00
Devine Lu Linvega
dcb434760b
Housekeeping
2023-07-24 09:48:49 -07:00
Devine Lu Linvega
26bc456a1b
(screen.c) Blending 00 only clears in accordance to sprite at addr
2023-07-23 19:32:41 -07:00
Devine Lu Linvega
867883409e
Emulator functions prefixed with emu_ instead of uxn_
2023-07-23 19:18:11 -07:00
Devine Lu Linvega
ec973c2ea6
Only set emu size on screen resize, no constant checks
2023-07-23 16:24:09 -07:00
Devine Lu Linvega
29e664c6b8
Do not re-set window size when unchanged
2023-07-23 16:10:48 -07:00
Devine Lu Linvega
4db53c1cc6
(uxn.c) Housekeeping
2023-07-23 11:06:21 -07:00
Devine Lu Linvega
cb41bdfa9a
(uxn.c) Removed PUSH/PUSH2 macros
2023-07-23 10:13:16 -07:00
Devine Lu Linvega
bf1ee0298d
(uxn.c) Fixed issue where JSRr was pushing to wrong stack
2023-07-23 09:57:32 -07:00
Devine Lu Linvega
db6f7d9fbf
(uxn.c) Aligned BRK/JCI/JMI
2023-07-23 09:52:20 -07:00
Devine Lu Linvega
bc4ec9ea5f
(uxn.c) JSI makes use of SET() macro
2023-07-23 09:41:11 -07:00
Devine Lu Linvega
6f15a96d91
(uxn.c) LIT opcodes use SET() macro
2023-07-23 09:36:18 -07:00
Devine Lu Linvega
b020732d6d
(uxn.c) PUT2 should use POKE2 macro
2023-07-23 09:21:09 -07:00
Devine Lu Linvega
41a3a6b358
(uxn) Removed z stack assignment
2023-07-22 20:53:23 -07:00
Devine Lu Linvega
92e06e2eda
Removed window padding
2023-07-22 19:52:17 -07:00
Sigrid Solveig Haflínudóttir
0c9e67b9be
uxncli: stop on EOF as there is nothing left to run (besides endless loop)
2023-07-17 00:52:52 +02:00
Sigrid Solveig Haflínudóttir
51d43a6989
screen: don't leak memory and don't crash if failed to adjust for new screen size
2023-07-17 00:50:19 +02:00
Sigrid Solveig Haflínudóttir
dbcb8ed050
retry_realpath: check before possibly writing out of bounds
2023-07-10 17:21:36 +00:00
Sigrid Solveig Haflínudóttir
784467564c
uxnemu: fix two warnings on 9front build
2023-07-10 15:37:42 +00:00
Sigrid Solveig Haflínudóttir
05356e23b1
capture_screen: check for errors
2023-07-10 15:35:35 +00:00
Devine Lu Linvega
ff6d9e39ca
(uxnemu) Fixes issue where non-zero console/type occurs even when empty, fixed by hikari_no_yume
2023-06-29 14:23:16 -07:00
Weeble
f5c816d215
(screen.c) Fix sprite draw at screen edge
...
Problem - Sprites can be drawn at X/Y coordinates >= 0xfff9 to appear
partially over the left/upper screen boundary. But the dirty-rectangle
calculation doesn't account for this, so these updates will only appear
on the screen if something *else* dirties this area of the screen. This
can be observed in /projects/examples/devices/screen.tal where these
edges of the screen show stale content.
Solution - Detect wrapping and expand the dirty rectangle appropriately.
Change screen_change to take Uint16 to make sure values are truncated to
the intended range. Ignore changes that are fully off the screen.
2023-06-29 07:41:42 -07:00
Devine Lu Linvega
e930804c4b
Do not print message on quit
2023-06-09 09:29:25 -07:00
Devine Lu Linvega
fe10cfecef
Improved usage standard message
2023-06-08 09:47:18 -07:00
neauoire
5dd7fec729
Removed clear between redraws and moved to set_window_size
2023-06-07 08:23:42 -07:00
neauoire
e147b46b55
Snake_cased some SDL variables
2023-06-07 08:03:28 -07:00
Devine Lu Linvega
1d4ae74e41
Removed multiplication from SET macro in uxn core
2023-05-17 20:39:03 -07:00
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