neauoire
a18f8697f0
(uxn.c) Removed unnecessary negation
2023-08-25 13:05:45 -07:00
neauoire
1b1c9fc710
Make emu_masks globals
2023-08-25 09:38:03 -07:00
neauoire
d3081fd93d
Zero ram on reboot
2023-08-19 07:58:44 -07:00
neauoire
15d09cf15b
Added stack pointer accessors to system device
2023-08-19 07:34:14 -07:00
neauoire
c6a628e6ae
Pre-process dei/deo masks
2023-08-17 09:25:24 -07:00
neauoire
5a77c3e1e3
Removed unused ports from system deo mask
2023-08-16 20:46:24 -07:00
neauoire
63d5dd681a
Tightened screen debugger redraw
2023-08-16 14:33:45 -07:00
neauoire
d3371d1f73
Muted warnings
2023-08-16 13:53:31 -07:00
neauoire
13bd3ce2d8
Made debugger private to screen
2023-08-16 13:46:07 -07:00
neauoire
cfe02013fd
Inlined system_cmd
2023-08-15 19:23:55 -07:00
neauoire
d8532e7c0e
system_load() is now private
2023-08-15 19:21:06 -07:00
neauoire
b737dfca85
Combined all system reboots
2023-08-15 19:19:06 -07:00
neauoire
bd8b2026b8
Keep boot rom path in system
2023-08-15 18:53:51 -07:00
neauoire
4d7ce3e893
Made a console_listen function
2023-08-15 16:24:40 -07:00
neauoire
c0d45d1440
Try loading rom during system init
2023-08-15 16:06:29 -07:00
neauoire
9a7a11003f
System device handles boot
2023-08-15 15:59:32 -07:00
neauoire
de7b24e820
Added soft reboot
2023-08-13 18:48:32 -07:00
neauoire
c7884b625f
Fixed issue where redraw region always started at 0
2023-08-10 08:47:34 -07:00
neauoire
2e25f6c27e
Added version flag to uxnemu
2023-08-08 15:56:40 -07:00
neauoire
9c25f801d0
Print system versions for uxncli with -v flag
2023-08-08 15:31:48 -07:00
neauoire
2e1b56018b
Added per-device versions
2023-08-08 14:44:17 -07:00
neauoire
97d299261f
Setting up stage to add versioning
2023-08-08 14:13:07 -07:00
neauoire
13570f790d
(screen.c) Hide stack debugger when empty
2023-08-08 10:39:11 -07:00
neauoire
7090ab72b9
Returned the on-screen debugger
2023-08-08 10:27:41 -07:00
neauoire
c68936b475
(uxn.c) Renamed POP/PUSH to POPx/PUSHx
2023-08-07 16:22:57 -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
Cellmaker
9ca8e9623d
added microtonality to the audio device
2023-07-30 15:03:34 -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
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
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
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
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
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
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
0da70d6bd1
Allow tiny sizes for the screen
2023-04-26 12:01:45 -07:00
Devine Lu Linvega
3038d5c40b
(console) Use 0x00 for no-queue
2023-04-17 11:27:54 -07:00
Devine Lu Linvega
98282cb1a6
Moved error printing to system.c
2023-04-17 11:03:11 -07:00
Devine Lu Linvega
9a882a64c7
(uxnemu) Write arguments end in console device
2023-04-17 10:41:03 -07:00