Commit Graph

347 Commits

Author SHA1 Message Date
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 a44dbd9696 (screen.c) Merge all checks 2023-04-12 20:00:17 -07:00
Devine Lu Linvega 11e9b635c8 Removed mono mode to screen 2023-04-12 11:58:32 -07:00
Lior Stern 847b3f2b56 uxnemu: Add dpad support
More info about joyhats in SDL2:
	https://wiki.libsdl.org/SDL2/SDL_JoyHatEvent
2023-04-12 11:08:48 -07:00
Devine Lu Linvega 3b10969f9e Fixed issue where a screen redraw might occur after it has been unset 2023-04-02 20:27:15 -07:00
Devine Lu Linvega 8b43d0d7ae Removed redundant pixel param from screen routines 2023-03-27 08:38:54 -07:00
Sigrid Solveig Haflínudóttir 562153d09e fix a few long-standing compilation warnings 2023-03-20 16:58:09 +01:00
Deadly Headshot 05fd9771ca A more elegant solution to the Windows bugs in filepaths and MinGW compilation 2023-03-19 14:11:42 -07:00
Devine Lu Linvega 7d66d81e63 Fixed issue with datetime mask 2023-03-17 21:45:03 -07:00
Devine Lu Linvega 4f9b375895 Fixed issue with device deo mask in uxnemu 2023-03-14 12:40:31 -07:00
Devine Lu Linvega 4e77d3d5ae Renamed PEEK16/POKE16 to PEEK2/POKE2 2023-03-12 15:25:52 -07:00
Devine Lu Linvega c4856aabf0 Added missing ports in device mask 2023-03-07 19:48:24 -08:00
Devine Lu Linvega 77c8e82419 Moved dei/deo masks into emulators 2023-03-06 10:36:24 -08:00
Devine Lu Linvega 8ae1c191d7 (uxn-fast.c) Removed function pointers, instead use exterm 2023-03-05 10:44:23 -08:00
Devine Lu Linvega 268ec45780 (Screen) Use fast timer if vector short is set 2023-03-04 11:07:11 -08:00
Devine Lu Linvega aeceaf75bf Removed file dei event 2023-03-03 21:04:26 -08:00
Devine Lu Linvega 4cacc0d26b Removed unused deo param 2023-03-03 20:37:43 -08:00
Devine Lu Linvega 8f979ec0fe Use uxn-fast in bug until the callback masks are ported 2023-03-03 12:02:42 -08:00
Devine Lu Linvega 6eac5226e1 (bunnymark) Ported to immediate opcodes 2023-03-03 11:03:38 -08:00
Devine Lu Linvega 8c4b1b0592 Use switch for console_deo 2023-03-01 12:04:05 -08:00
Devine Lu Linvega dae025af20 Date and Screen devices DEI do no need device ptr 2023-03-01 11:28:14 -08:00
Devine Lu Linvega 53f3c18dcf Removed GETVEC macro 2023-03-01 10:42:03 -08:00
Devine Lu Linvega 87de244d37 Replaced some macros 2023-03-01 10:35:42 -08:00
~d6 c61be654d6 Pass through more keysyms when control is pressed. 2023-02-14 18:33:51 -08:00
Sigrid Solveig Haflínudóttir c11dcc3771 remove nonsense return 0 2023-02-07 12:08:17 +00:00
Devine Lu Linvega 0dcc3b4c2e Simplified system_cmd 2023-01-31 09:49:32 -08:00
Devine Lu Linvega e20b572c20 Moved all system memory functions into system.c 2023-01-31 09:38:06 -08:00
Devine Lu Linvega 390ae8138a Extend loaded rom size 2023-01-28 15:05:24 -08:00
Devine Lu Linvega fd84ff44d7 Initial draft for MMU 2023-01-28 14:45:31 -08:00
Devine Lu Linvega 22797644b5 Returned to simpler run function 2023-01-28 10:54:54 -08:00
Devine Lu Linvega b894ba4c57 Fixed issue with screen vector run 2023-01-27 09:36:04 -08:00
Devine Lu Linvega 63108c178a Tighter run 2023-01-26 10:56:14 -08:00
Devine Lu Linvega b5fa665cdb Reduce refresh requests without screen vector 2023-01-26 09:35:56 -08:00
Andrew Alderwick d94a84bc93 Port Audio to new devices scheme. 2023-01-02 15:01:55 +00:00
Andrew Alderwick c2b0667496 Update Copyright years. 2023-01-02 14:40:23 +00:00
Devine Lu Linvega 5ac6ff4313 All devices but audio ported to new devices scheme 2023-01-01 16:13:34 -08:00
Devine Lu Linvega 2fb5f560a7 Use the File device load_rom function 2023-01-01 14:18:27 -08:00
Devine Lu Linvega 794ce1bdfd Housekeeping 2023-01-01 13:40:58 -08:00
Devine Lu Linvega bf4ee03d27 Ported screen to new device 2023-01-01 13:34:20 -08:00
Devine Lu Linvega 7afe1f39c7 Screen device is half ported to new device handlers 2023-01-01 13:19:40 -08:00
Devine Lu Linvega 679aec047a Device memory is not a member of ram 2023-01-01 12:21:30 -08:00
Devine Lu Linvega 68d706be25 Will connect devices to devold while I migrate to new router 2023-01-01 12:12:59 -08:00
Devine Lu Linvega 0fd68e96f0 Connecting new device ports to uxn core 2023-01-01 12:04:54 -08:00
Devine Lu Linvega d1ca328b98 Removed devmouse and devctrl globals 2023-01-01 11:47:52 -08:00
Devine Lu Linvega 9aefeebf25 Removed Device struct from controller device 2023-01-01 11:37:34 -08:00
Devine Lu Linvega 062bbac37d Removed Device struct from mouse device 2023-01-01 11:31:14 -08:00
neauoire c8fc397054 Relaunch boot rom if launcher is not found 2022-11-11 21:12:30 -08:00
Devine Lu Linvega ac6e4fed10 Toggle monochromatic mode 2022-09-15 09:11:20 -07:00
Andrew Alderwick fb030288f9 Disable execution timeouts for now.
This is a quick hack to disable the execution timeout, while still
making the application able to exit if the window is requested to close.
Execution limits may be reintroduced with more debugging features, but
not enabled by default.
2022-06-13 09:15:20 +01:00
Andrew Alderwick 04352a8c89 Switch back to single thread for handling redraws.
This reverts commit a283264df2 while
keeping the enhancements made later on (detection of overlong
execution).

This change fixes compatibility for learn-uxn and current npe.
2022-06-10 07:58:29 +01:00
Andrew Alderwick eb8c496feb Revert "Fix for hanging on quit", replacing it with improved code 2022-06-03 22:42:54 +01:00
Devine Lu Linvega 8176ab93c8 Extended timeout to 20 frames to give RPIs a chance 2022-05-31 12:29:55 -07:00
Devine Lu Linvega 56d08285b7 Fix for hanging on quit 2022-05-31 12:25:25 -07:00
Andrew Alderwick 4c59498f14 (Windows) Fix uxnemu freezing on exit. 2022-04-09 12:22:24 +01:00
Andrew Alderwick 219cfee472 (Windows) Fix output not flushing automatically. 2022-04-09 12:21:39 +01:00
Andrew Alderwick 72c7296a47 Revert "Switch to SDL Timer for redraw handler." 2022-04-09 12:19:27 +01:00
Andrew Alderwick 96f4510a03 Switch to SDL Timer for redraw handler. 2022-04-09 11:37:51 +01:00
Sigrid Solveig Haflínudóttir 2a892a23b1 uxnemu: fix a memory leak (ram) in start() and reduce types clutter 2022-03-29 19:24:15 +02:00
Andrew Alderwick 42dea5b914 Replace file_i_deo and file_i_dei. 2022-03-28 18:16:44 +01:00
Sigrid Solveig Haflínudóttir 0b75afc415 uxnemu: use read() in stdin thread and close(0) at shutdown for the thread to exit 2022-03-28 17:49:54 +02:00
Sigrid Solveig Haflínudóttir f06494477a uxnemu: fix the stuck threads on quit, SOMEWHAT
Create threads in detached mode and check if events failed to be
pushed. Stdin thread is still blocking on fread hence the "SOMEWHAT".
2022-03-28 17:24:35 +02:00
Andrew Alderwick 0e7ebb69e6 (uxnemu) Interrupt infinite loops with an error. 2022-03-27 13:53:25 +01:00
Andrew Alderwick b9ff19d857 (uxnemu) Update indentation with clang-format.
The main loop now uses SDL_WaitEvent instead of SDL_PollEvent, and the
indentation level needs to change. For clarity, the previous commit
contains the code changes, while this one updates the indentation.
2022-03-27 13:18:37 +01:00
Andrew Alderwick a283264df2 (uxnemu) Use a separate thread for triggering redraws.
The main loop now uses SDL_WaitEvent instead of SDL_PollEvent, and the
indentation level needs to change. For clarity, this commit contains the
code changes, while the next one updates the indentation.
2022-03-27 13:16:40 +01:00
Andrew Alderwick f2c644f680 Move DateTime to 0xc0, add second File to 0xb0. 2022-03-26 17:54:29 +00:00
Andrew Alderwick 27089a77e4 Prepare for more than one File device. 2022-03-17 18:35:49 +00:00
Andrew Alderwick 5dcf0a2b35 Make the UxnAudio struct private to audio.c. 2022-03-17 16:59:36 +00:00
Liam Cooke 33940d3b5b Fix blurry pixels on high-DPI displays
Creates the uxnemu window in high-DPI mode when supported. Now it looks
pixel perfect on a display with 2:1 pixel density.

Should have no effect on a 1:1 display, but I don't have access to one
to test this.
2022-02-04 08:52:31 -08:00
Andrew Alderwick 055fa9bcd0 Close some security holes. 2022-01-23 23:17:54 +00:00
Andrew Alderwick 6577d3c8a0 Remove jump-based infinite loop detection. 2022-01-23 11:17:07 +00:00
Andrew Alderwick d186b7a038 Perform resizing of SDL screen during redraw. 2022-01-20 01:24:22 +00:00
Andrew Alderwick cd0ca2eb17 Move clamp() to screen.c. 2022-01-20 01:24:20 +00:00
Andrew Alderwick cf84a5d661 Prevent invalid screen sizes. 2022-01-19 18:30:32 +00:00
neauoire fc659b9094 Removed devsystem 2022-01-13 10:55:02 -08:00
neauoire b48db8278f (monospace.tal) Added a 8x8 label drawing example 2022-01-13 10:25:31 -08:00
neauoire f1cc022e9b Uxncli now uses the system_inspect 2022-01-13 08:34:32 -08:00
neauoire 031f63a13c Print stack with DEO on 0x0f 2022-01-13 08:25:59 -08:00
neauoire ee4308196a Starting a debugging device 2022-01-12 21:22:33 -08:00
neauoire 6a6a2ec383 Removed external memory bank 2022-01-12 18:56:59 -08:00
neauoire 459855d825 Removed supervisor 2022-01-12 18:40:51 -08:00
Andrew Alderwick 41de322a75 Add support for interrupting Uxn during execution. 2022-01-12 11:33:49 +00:00
Andrew Alderwick b1ba95336c Remove unistd.h from uxnemu.c. 2022-01-11 23:50:41 +00:00
neauoire 06b694d406 Removed ram helper in uxn 2022-01-11 14:51:25 -08:00
neauoire 61c7f9f0c1 Removed device globals 2022-01-11 14:38:55 -08:00
neauoire cd30b48665 Rename memory banks 2022-01-11 14:16:27 -08:00
neauoire ede186b226 Minor cleanup 2022-01-11 11:07:25 -08:00
neauoire 38d2c7cbd7 (boot.rom) Renamed to launcher.rom 2022-01-10 20:35:34 -08:00
neauoire 5004ee1339 The file device cannot write on the supervisor 2022-01-08 10:03:21 -08:00
neauoire c866b0938a Use proper memory size 2022-01-07 16:51:43 -08:00
neauoire f5278f3a13 Removed device vector variable 2022-01-07 16:46:50 -08:00
neauoire 180984f8fb Removed device port masks 2022-01-07 11:48:09 -08:00
neauoire b328a4e87d Commented the fkey controls temporarily 2022-01-07 11:36:04 -08:00
neauoire 38334a633b Pass fn keys directly to the supervisor 2022-01-07 10:55:09 -08:00
neauoire 19a8e56cd6 Started device port masking 2022-01-07 10:02:28 -08:00
neauoire 41d0911d13 The supervisor program now uses its own vectors 2022-01-06 19:51:34 -08:00
neauoire 1a7af4d8d0 Supervisor is now watching the device page 2022-01-06 19:20:50 -08:00
neauoire 28b9265042 Let us make a device page in shadow memory 2022-01-06 18:49:54 -08:00
neauoire a82f7d79f8 Defined the location of stacks in shadow memory 2022-01-06 17:29:34 -08:00
neauoire 4c6821189e Merge branch 'main' of git.sr.ht:~rabbits/uxn 2022-01-06 14:32:35 -08:00
neauoire ed1f6e6263 Connected error reporting and the hypervisor 2022-01-06 14:32:28 -08:00