Commit Graph

993 Commits

Author SHA1 Message Date
neauoire 3b526bbed6 (screen.c) Always cache value before PEEK/POKE 2023-08-30 12:06:04 -07:00
neauoire f4caad2d51 (uxn.h) Removed unused macro 2023-08-30 11:46:00 -07:00
neauoire 107a25295b (mouse.c) Do not use POKE2 macro 2023-08-30 11:25:15 -07:00
neauoire 1adb6a8cf0 (uxn.c) Do no check for underflow for push-only opcodes 2023-08-30 11:09:46 -07:00
neauoire 55aae6fee9 (uxn.c) Always cache address before PEEK2 2023-08-30 10:49:00 -07:00
neauoire e35501976c (uxn.c) Standardized setter macros 2023-08-30 10:40:04 -07:00
neauoire e5617f83c9 Removed redundant macros 2023-08-30 10:16:38 -07:00
neauoire aeb38c0819 (uxn.c) Cache intermediary result in POKE2 usage 2023-08-30 09:52:47 -07:00
neauoire 07dc45c0e7 (uxn.c) Faster stack registers 2023-08-30 09:40:45 -07:00
neauoire d974111939 (uxn.c) Catch underflow with JCI 2023-08-30 09:24:09 -07:00
neauoire c9183a02e5 (uxn.c) Only one writing macro per line 2023-08-29 10:48:19 -07:00
neauoire 7992d54115 (uxn.c) Removed needless masking of opcode lookup 2023-08-29 09:41:00 -07:00
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 ddd3a46156 Standardized main() in uxncli and uxnemu 2023-08-15 18:47:34 -07:00
neauoire b66d3f2612 Abstracted emu_end() 2023-08-15 18:44:16 -07:00
neauoire 4d7ce3e893 Made a console_listen function 2023-08-15 16:24:40 -07:00
neauoire 8d4074b372 Removed console queue from emu_start 2023-08-15 16:11:21 -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 a77434a671 Reset device page on soft reboot 2023-08-13 21:11:18 -07:00
neauoire de7b24e820 Added soft reboot 2023-08-13 18:48:32 -07:00
neauoire a394dcb999 Updated date 2023-08-10 08:50:14 -07:00
neauoire c7884b625f Fixed issue where redraw region always started at 0 2023-08-10 08:47:34 -07:00
neauoire 015072fea4 (uxn.c) Removed offset in PUT() 2023-08-09 19:43:28 -07:00
neauoire 18302105c6 (uxn.c) PUT2 should not use POKE 2023-08-09 19:38:18 -07:00
neauoire b610a88083 (uxn.c) Faster SET() macro 2023-08-09 19:31:33 -07:00
neauoire 23203381a7 (uxn.c) Aligned macros 2023-08-09 16:18:35 -07:00
neauoire 1bd67977fb (uxn.c) Added missing labels 2023-08-09 16:11:38 -07:00
neauoire 837b839b4c (uxn.c) Using tnl core 2023-08-09 13:20:03 -07:00
neauoire e90c716cdc Merged POP2 calls 2023-08-08 20:00:27 -07:00
neauoire 5675d8e65d (uxn.c) Merged PUSH calls 2023-08-08 19:53:23 -07:00
neauoire b523162cf8 (uxn.c) Joined POP22 PUSH22 2023-08-08 19:38:09 -07:00
neauoire 52fac7c52b Faster Pushxx 2023-08-08 17:23:18 -07:00
neauoire 901f76ed52 Merged POPxPOPx and PUSHxPUSHx 2023-08-08 17:13:39 -07:00
neauoire a11660f57d (uxnasm.c) Fixed issue with lambda 2023-08-08 16:46:35 -07:00
neauoire d15b2367f3 (uxnasm.c) Added comma after date 2023-08-08 16:39:33 -07:00
neauoire c26de05efa Added version to uxnasm 2023-08-08 16:35:35 -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 27ff275cea Merge branch 'main' of git.sr.ht:~rabbits/uxn 2023-08-08 09:23:49 -07:00
neauoire a1d2bfbbb0 Removed DEI/DEO from uxn-tnl core 2023-08-08 09:23:11 -07:00
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