Commit Graph

243 Commits

Author SHA1 Message Date
neauoire 9737391b9f Implemented total sprite flipping in bliting 2023-08-04 11:40:24 -07:00
neauoire 14263f3a02 Updated screen device 2023-08-01 20:39:16 -07:00
neauoire 5c2c060aa3 Brought the latest changes over 2023-08-01 20:32:42 -07:00
Devine Lu Linvega b49ded302d (uxn.c) Removed z stack assignment 2023-07-22 20:58:56 -07:00
Devine Lu Linvega 7ff69378c8 uxncli: stop on EOF as there is nothing left to run (besides endless loop) 2023-07-17 20:25:28 -07:00
Devine Lu Linvega d8e78ffef0 Fixed usage 2023-06-08 09:52:11 -07:00
neauoire d5fed95ef3 Returned PADDING 2023-06-07 08:42:22 -07:00
neauoire 1892352885 More selective redraw 2023-06-05 08:55:21 -07:00
Devine Lu Linvega 5a8ee380fe Removed multiplication from SET macro in uxn core 2023-05-17 20:43:50 -07:00
Devine Lu Linvega 7377477f23 Implemented scaling 2023-05-05 17:21:46 -07:00
Devine Lu Linvega cac4e5d093 (screen) Faster implementation 2023-05-04 20:43:06 -07:00
Devine Lu Linvega f181416095 Renamed zoom for scale 2023-05-04 20:37:06 -07:00
Devine Lu Linvega 7d1c62b2cb Simplified threads implementation somewhat 2023-05-03 11:32:38 -07:00
Devine Lu Linvega 29e130ace0 Removed arguments array for friends/tasks 2023-05-03 10:26:28 -07:00
Devine Lu Linvega 1be9024704 Removed NIPk/POPk special cases once and for all(?) 2023-05-02 14:51:51 -07:00
Devine Lu Linvega 09681a54f5 Added device mask to uxncli for friend port 2023-05-02 10:25:19 -07:00
Devine Lu Linvega ae61e92585 Added special POPk/NIPk modes 2023-05-02 09:57:01 -07:00
Devine Lu Linvega e191a164ea Added multithreading port 2023-04-30 22:03:35 -07:00
Devine Lu Linvega 87a72de69e Using new core 2023-04-30 11:43:33 -07:00
Devine Lu Linvega 55178e8347 Added ZOOM support 2023-04-30 11:32:11 -07:00
Devine Lu Linvega 855b63b1ef Housekeeping 2023-04-30 10:24:14 -07:00
Devine Lu Linvega 29f057ba44 Brought changes for the console 2023-04-17 11:36:17 -07:00
Devine Lu Linvega b733d4dc5a (screen.c) Found issue with screen_fill, removed for now 2023-04-14 19:56:17 -07:00
Devine Lu Linvega da59482765 (screen.c) Less indirections 2023-04-14 10:33:51 -07:00
Devine Lu Linvega 04096fc172 Brought changes for the screen device 2023-04-13 21:58:12 -07:00
Devine Lu Linvega f4f29dea0b Fixed issue with screen fill layer 2023-04-13 09:59:23 -07:00
Devine Lu Linvega 1fb58f0f0a (screen.c) Faster drawing of pixel 2023-04-13 09:43:55 -07:00
Devine Lu Linvega 1968801862 Simplified screen device 2023-04-12 20:31:30 -07:00
Devine Lu Linvega a92e5416f9 Silenced warnings 2023-04-12 12:46:48 -07:00
Devine Lu Linvega 5b59215829 Removed mono mode 2023-04-12 12:44:49 -07:00
Devine Lu Linvega ac4ec0928a Implemented Screen/pixel fill mode 2023-04-11 15:14:32 -07:00
Devine Lu Linvega bc055f37b8 Do not share stacks 2023-04-11 09:25:31 -07:00
Devine Lu Linvega bdd6c19576 Moved emu_error to device 2023-04-10 14:32:54 -07:00
Devine Lu Linvega ed588f9190 Standardized screen device to the SDL version 2023-04-10 14:13:41 -07:00
Devine Lu Linvega adc0ccdad4 Fixed issue with DEI 2023-04-10 13:37:17 -07:00
Devine Lu Linvega 6a0b572f6d Restored old core with new DEI/DEO macros 2023-04-10 12:29:26 -07:00
Devine Lu Linvega 9a4625ba16 Ported to new core 2023-04-10 11:32:16 -07:00
Devine Lu Linvega 8260d9496f Removed POKDEV/PEKDEV macros 2023-04-10 10:53:30 -07:00
Devine Lu Linvega 7e1ac70dc2 (file) Ported to PEEK2 2023-04-10 10:50:16 -07:00
Devine Lu Linvega 1bda3b77f0 (screen) Ported screen to use PEEK2 2023-04-10 10:47:05 -07:00
Devine Lu Linvega a60a2a05d9 (mouse) Ported to POKE2 macro 2023-04-10 10:41:04 -07:00
Devine Lu Linvega 02f2769153 Cleaned up build script 2023-04-10 10:16:17 -07:00
Devine Lu Linvega 416f37c71a Removed GETVEC macro 2023-04-10 10:08:40 -07:00
Devine Lu Linvega 5917f409c5 Formatted 2023-03-18 11:12:48 -07:00
Deadly Headshot 5ef6a7a98a Added console input to uxn11 and added to buildscript the ability to build the release without installing using --release. Also added default flag variables to buildscript. 2023-03-18 11:11:46 -07:00
Devine Lu Linvega 344faceb7d (uxnasm) Fixed issue with makereference() 2023-03-01 08:57:17 -08:00
Devine Lu Linvega 903ca57ad5 (file device)Add / suffix to folder names 2023-02-17 10:08:13 -08:00
Devine Lu Linvega 8cf9d55c1c (uxncli)Use System/halt as exit code 2023-02-13 09:34:30 -08:00
Devine Lu Linvega 2039e0fb4a Named system_cmd arguments 2023-02-02 10:39:57 -08:00
Devine Lu Linvega 5ceffe233f Protected system_cmd 2023-02-02 10:18:53 -08:00
Devine Lu Linvega db4e07f5b1 Ported to last uxn core 2023-02-02 09:34:14 -08:00
Devine Lu Linvega 9d889340ea Simplified system loading 2023-02-02 08:45:03 -08:00
Devine Lu Linvega 7603ddf9cc Added MMU operation 2023-01-28 16:47:41 -08:00
Devine Lu Linvega df7cdd1ce6 Increased limit of refs 2023-01-21 18:25:15 -08:00
Devine Lu Linvega 7616af7cae Swapped JCI and JMI 2023-01-12 09:45:19 -08:00
Devine Lu Linvega 256b7cafce Call opcodes are now relative 2023-01-12 09:34:45 -08:00
Devine Lu Linvega 18ff8550c7 (uxnasm) Use correct address in symbol export 2023-01-11 21:02:29 -08:00
Devine Lu Linvega a61b1cf0ac Removed byte masks for DEI/DEO 2023-01-09 20:00:09 -08:00
Devine Lu Linvega 823e301c0b Fixed security leaks in uxnasm and uxn 2023-01-07 12:02:57 -08:00
Devine Lu Linvega a124ca95b0 Faster CALL opcodes 2023-01-03 11:09:30 -08:00
Devine Lu Linvega 194e9c8949 Housekeeping 2023-01-02 17:33:57 -08:00
Devine Lu Linvega 31360cf82d (uxnasm)Updated license 2023-01-02 16:58:36 -08:00
Devine Lu Linvega 66de46b352 (uxnasm)Added support for JMI, JCI and JSI 2023-01-02 14:15:54 -08:00
Devine Lu Linvega b762c1420a Implement full CALL opcodes stack 2023-01-02 13:32:13 -08:00
Devine Lu Linvega 09bc396402 Removed uxn c/h from clang-format coverage 2023-01-01 18:27:33 -08:00
Devine Lu Linvega 6a9fe623d8 Added support for CALL 2023-01-01 18:03:50 -08:00
Devine Lu Linvega 49f2e626fc Do not check twice for short mode in LIT opcode 2023-01-01 16:44:41 -08:00
Devine Lu Linvega deaf17c3e7 Use HALT macro 2023-01-01 16:23:21 -08:00
Devine Lu Linvega 730440b07c Do not crash on symbol gen for long file names 2023-01-01 10:49:05 -08:00
neauoire 7edbaa0a87 Updated uxnasm to create symbols 2022-12-09 19:54:04 -08:00
Devine Lu Linvega bce4438469 Removed rawchr 2022-08-14 11:32:58 -07:00
Devine Lu Linvega a4a30df07e Removed annoying debug message 2022-08-08 08:04:18 -07:00
Devine Lu Linvega d60c5a01b0 Removed optimizations from uxnasm 2022-08-06 12:17:34 -07:00
Devine Lu Linvega 7a12088bbe Disabled tail-call opt entirely 2022-08-06 11:20:09 -07:00
Devine Lu Linvega 58bf463c40 Removed tail-call optimizations with JSR JMP2r 2022-08-06 10:25:34 -07:00
phoebos 57dfcdf717 don't print .. at sandbox top level 2022-07-31 07:21:10 -07:00
Devine Lu Linvega 245ba17115 Added a copy of uxnasm 2022-07-12 21:27:52 -07:00
aabacchus 387d802819 override sandbox from load_rom 2022-06-21 08:04:31 -07:00
aabacchus d9cdf192a8 add simple file sandboxing below cwd
Uses realpath(3) libc function to find the canonical and longest part of the
pathname which exists, then checking if it starts with cwd.

Prints a warning to stderr if an attempt is made to access a file outside the
sandbox.
2022-06-21 08:03:38 -07:00
Devine Lu Linvega fdb52a7480 Added window padding 2022-06-15 09:10:13 -07:00
Devine Lu Linvega 0c6dec9fc8 Device ids error report should be in 16th 2022-06-14 10:52:18 -07:00
Devine Lu Linvega 5d837313e5 Added warning for incompatible emulator devices 2022-06-14 10:47:52 -07:00
Devine Lu Linvega 2a1a506524 F2 should display the stacks even if empty 2022-06-13 12:20:20 -07:00
Devine Lu Linvega 707efa223a Removed unecessary struct 2022-06-13 12:07:49 -07:00
Devine Lu Linvega 1d01e74635 Typedef for Dei/Deo 2022-06-13 12:06:16 -07:00
Devine Lu Linvega 507a4b838c uxn_boot() now expects dei/deo fn pointers 2022-06-13 11:59:42 -07:00
Devine Lu Linvega d118cc3813 Renamed viewport to display 2022-06-13 11:29:16 -07:00
Devine Lu Linvega 48ca266a46 Minor housekeeping 2022-06-13 11:21:15 -07:00
Devine Lu Linvega 406d2fb327 Improved hot reload 2022-06-13 11:08:33 -07:00
Devine Lu Linvega 2b55c0732d Print erroring rom 2022-06-13 10:46:18 -07:00
Devine Lu Linvega eaaed92aeb Reload initial rom when boot.rom is not found 2022-06-13 10:43:43 -07:00
Devine Lu Linvega 245ad452a2 Keep rom path in memory 2022-06-13 10:37:18 -07:00
Devine Lu Linvega 95a28d6b4d Removed err4, display only stack when not empty on debug 2022-06-13 10:32:59 -07:00
Devine Lu Linvega 4d252e3109 Returned busy stack erroring while I finish Inle 2022-06-13 08:31:46 -07:00
Devine Lu Linvega 70ccb4fa68 Removed err4 2022-06-12 14:13:07 -07:00
Devine Lu Linvega 5b96cefb3a Added error code for stack busy 2022-06-12 09:12:13 -07:00
Devine Lu Linvega 15dcde5ae9 Improved gameloop 2022-06-03 14:55:46 -07:00
Devine Lu Linvega 3f32b9f6f9 Stop on System/halt 2022-06-03 14:54:40 -07:00
neauoire 9137114bd2 Simplified LIT opcode 2022-04-18 12:32:42 -07:00
neauoire d8f27c84ab Swapped opcodes 2022-04-18 09:28:14 -07:00
james palmer a339014fdd Show rom name in window title. 2022-04-12 10:33:10 -07:00
james palmer 53f57d4878 Fix typo in Uxn11 usage message. It is no-longer uxncli. 2022-04-12 10:33:10 -07:00
james palmer c68645a08f Fix segmentation fault on first boot.
When emu_start() is first called, the Uxn struct is uninitialised stack data.
This meant the u->ram pointer would be an invalid address so the program would crash
with a segmentation fault when attempting to free it. By setting it to NULL, we avoid this
because calling free() on a NULL pointer is a no-op.
2022-04-12 10:33:10 -07:00
neauoire 1acef2aaed Added instruction code to error report 2022-04-10 10:31:18 -07:00
neauoire c704491d79 Allow the system device to handle errors 2022-04-10 09:42:56 -07:00
neauoire aed26e5bd0 Housekeeping 2022-04-07 09:33:52 -07:00
neauoire 60b20eaaf7 Added Fn keys controls 2022-04-05 20:06:42 -07:00
neauoire eb8e241b50 Renamed a few functions in uxn11 2022-04-05 19:40:49 -07:00
neauoire de3b0246e9 Added mouse scroll 2022-04-05 19:31:53 -07:00
neauoire 18058c14f1 Fixed issue with uxncli 2022-04-05 19:13:14 -07:00
neauoire c9ad8e9e43 Ported uxncli to latest device I/O 2022-04-05 12:08:49 -07:00
neauoire 725bc38aba Removed Devices 2022-04-05 11:42:50 -07:00
neauoire dba7b1f486 Began moving some devices to a ram page 2022-04-05 11:01:23 -07:00
neauoire 121f61e459 Removed uxn_port 2022-04-05 10:48:13 -07:00
neauoire 5d80ab088c Removed individual dei/deo 2022-04-05 10:43:26 -07:00
neauoire 038eaf0724 Removed global devices 2022-04-05 10:37:40 -07:00
neauoire c990a2a407 Removed a few indirections 2022-04-05 10:30:17 -07:00
neauoire 574c4250c3 Removed system as Device 2022-04-05 09:35:49 -07:00
neauoire 8ca86ea9b2 Removed console as Device 2022-04-05 09:29:06 -07:00
neauoire b0c840437a Removed screen as Device 2022-04-05 09:22:33 -07:00
neauoire ab6ce6ba5a Removed mouse as Device 2022-04-05 09:17:08 -07:00
neauoire 9c34a59741 Removed controller as Device 2022-04-05 09:10:29 -07:00
neauoire 621308986c Removed datetime as Device 2022-04-05 09:01:05 -07:00
neauoire dbd430026d Added the missing device initializers 2022-04-04 20:04:32 -07:00
neauoire e5492665c0 Broken, cancel please hold me tight 2022-04-04 19:57:44 -07:00
neauoire defceb7851 Stacks are mapped in ram 2022-03-30 10:37:47 -07:00
neauoire 461bb5ae32 Protect macros 2022-03-28 11:51:15 -07:00
neauoire a593db30f7 Use the file device load for roms 2022-03-28 11:03:02 -07:00
neauoire 21d8f344ac Minor cleanup 2022-03-28 10:31:31 -07:00
neauoire 2074c2cbd6 Replace file_i_deo and file_i_dei. 2022-03-28 10:22:23 -07:00
neauoire 387f3c7e21 Completed file implementation 2022-03-28 09:51:38 -07:00
neauoire 96b49d496e Fixed issue with controller/key 2022-03-28 09:39:05 -07:00
neauoire 7886b543d4 Removed cursor 2022-03-27 19:47:05 -07:00
neauoire a5d1172d22 Added timer 2022-03-27 19:10:32 -07:00
neauoire 91c94af9f8 Added Controller/key 2022-03-27 14:29:46 -07:00
neauoire c58fecb85e Started file, fixed issue with mouse 2022-03-27 10:01:06 -07:00
neauoire ea1ce67d05 Cleanup 2022-03-27 09:11:14 -07:00
phoebos ceb7bfff0b handle WM_DELETE_WINDOW 2022-03-27 08:43:33 -07:00
neauoire a1ade4ce45 Implemented mouse 2022-03-26 21:03:03 -07:00
neauoire f494421979 Implemented controller 2022-03-26 20:20:29 -07:00
neauoire a34ceda22c Starting controller 2022-03-26 19:58:48 -07:00
neauoire 51542bc5ef Removed uxncli 2022-03-26 18:46:17 -07:00
neauoire ac45af6746 Updated screen device to latest specs 2022-03-26 18:32:46 -07:00