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
Sigrid Solveig Haflínudóttir
d21bfb20e0
SDL_PIXELFORMAT_XRGB8888 → SDL_PIXELFORMAT_RGB888 (for older SDL2 versions)
2022-01-06 18:24:35 +01:00
neauoire
3cc2ba98f0
First hypervisor
2022-01-05 20:44:33 -08:00
neauoire
b9a37077c3
Started work on the hypervisor
2022-01-05 19:48:51 -08:00
Sigrid Solveig Haflínudóttir
4cd52209ac
make the SDL texture XRGB8888 (no alpha) and remove padding pixels from it
2022-01-05 22:45:49 +01:00
Andrew Alderwick
f48a09c482
Stop LeakSanitizer complaining about Uxn's RAM.
2022-01-05 18:18:13 +00:00
Andrew Alderwick
646d79fff5
Factor out common parts of system_dei/deo.
2022-01-05 13:29:18 +00:00
Andrew Alderwick
c37831749f
Split uxn_halt into beginnings of System device file.
2022-01-05 13:03:17 +00:00
Andrew Alderwick
2a825de2fd
Switch void context increments from pre to post
2022-01-04 02:05:32 +00:00
Andrew Alderwick
7e3353ea72
Rename u->ram.dat to u->ram, u->ram.ptr to pc.
2022-01-04 01:40:48 +00:00
Andrew Alderwick
205f63cc43
Clear up SDL_KEYDOWN/SDL_TEXTINPUT logic
2022-01-04 01:12:17 +00:00
neauoire
4789d8ccef
Removed peek16
2022-01-03 13:29:47 -08:00
neauoire
0ee477615b
Removed poke16
2022-01-03 13:23:57 -08:00
neauoire
cca1253376
Use calloc for memory array
2022-01-01 15:20:48 -08:00
Sigrid Solveig Haflínudóttir
22c6e07fca
emu: make sure to handle key down event if the same key is up at the same frame
2021-12-29 23:32:18 +01:00
Sigrid Solveig Haflínudóttir
2b1e7fe20f
emu: use SDL_BUTTON macro to get bitmask from a mouse button event
2021-12-29 18:47:54 +01:00
Sigrid Solveig Haflínudóttir
148dae4ebd
fix a few "set and not used" warnings
2021-12-29 18:33:23 +01:00
neauoire
385fa44f9d
Prefixed globals with uxn_
2021-12-29 09:11:03 -08:00
neauoire
51b55f3d99
Do not check for erroring video twice
2021-12-28 17:38:55 -08:00
neauoire
a747e4b20a
Fixed issue with screen resize
2021-12-28 17:22:40 -08:00
neauoire
c3506869b5
Renamed Apu to Audio
2021-12-28 13:47:35 -08:00
neauoire
7b33cf3d95
Renamed PPU to Screen
2021-12-28 13:37:26 -08:00
neauoire
2a9fc00441
Renamed mouse mod to mouse scroll
2021-12-28 11:21:56 -08:00
neauoire
a1dc75a2bc
Implemented scroll x/y
2021-12-28 10:45:34 -08:00
neauoire
8488ce64a4
Moved the emulator controls together
2021-12-27 13:59:22 -08:00
neauoire
004fa800ef
Fixed issue with function keys
2021-12-27 13:50:39 -08:00
neauoire
3c47876d5e
Start button is now HOME
2021-12-27 13:42:36 -08:00
neauoire
51b9c699b8
Mini fix to controller button order
2021-12-27 13:37:37 -08:00
neauoire
87507f7f03
Added joystick support
2021-12-27 11:44:57 -08:00
neauoire
9f743399b1
Added gamepad support
2021-12-27 10:04:24 -08:00
neauoire
4a223f91b5
The screen is now a member of Ppu
2021-12-27 09:57:48 -08:00
neauoire
fe75479fae
Moved controller device to devices/controller.c
2021-12-27 09:24:43 -08:00
Sigrid Solveig Haflínudóttir
a12781f23a
get_button: do not pass the whole event struct on the stack
2021-12-27 15:24:22 +01:00
neauoire
32c18e82ca
Started extracting the controller device
2021-12-26 21:33:23 -08:00
neauoire
89c07988ac
Moved mouse to devices/
2021-12-26 21:02:24 -08:00
neauoire
13fd0d9724
Moved file APIs in device/file
2021-12-26 20:26:27 -08:00
Andrew Alderwick
d9e619d8a1
Revert "emu: use SDL_clamp" since that function is not available in Debian's SDL.
...
This reverts commit a967525caf
.
2021-12-26 21:14:41 +00:00
Sigrid Solveig Haflínudóttir
d8667dca0b
emu event loop: peek for a key up only on key down event
2021-12-25 22:58:10 +01:00
Sigrid Solveig Haflínudóttir
8d4e7d54e1
emu: use SDL_Quit directly and let SDL handle shutdown itself
2021-12-25 21:44:19 +01:00
Sigrid Solveig Haflínudóttir
2f7bfd4122
emu: set_zoom: window is always there, remove useless check
2021-12-25 21:37:22 +01:00
Sigrid Solveig Haflínudóttir
a967525caf
emu: use SDL_clamp
2021-12-25 21:28:02 +01:00
Sigrid Solveig Haflínudóttir
f436ebff12
emu: shut up -Wtypedef-redefinition with SDL headers when using clang
2021-12-25 21:27:23 +01:00
Sigrid Solveig Haflínudóttir
927fdb497f
ppu: unite 1bpp and 2bpp into one - ppu_blit
2021-12-25 13:50:34 +01:00
neauoire
8a25a5e387
Renamed layer.p to layer.pixels
2021-12-24 12:01:10 -08:00
Sigrid Solveig Haflínudóttir
f79b092e71
ppu: separate reqdraw for fg and bg
2021-12-24 20:45:31 +01:00
neauoire
3fb4d40eb0
Split pixels into fg/bg
2021-12-24 09:59:18 -08:00
neauoire
250e338d07
Redraw is now part of the PPU
2021-12-24 09:46:21 -08:00
neauoire
0794070adf
Palette is now part of the PPU
2021-12-24 09:39:51 -08:00
neauoire
4d2b55c188
Removed stdio from ppu
2021-12-20 09:45:56 -08:00
neauoire
6c64678829
Merge branch 'main' of git.sr.ht:~rabbits/uxn
2021-12-19 12:20:21 -08:00
neauoire
c4d9e52fd6
(uxnemu) Clear debugger on toggle
2021-12-19 12:20:13 -08:00
Sigrid Solveig Haflínudóttir
1e224079ed
emu: when both key down and key up are generated on the same frame, skip the up until the next one
2021-12-19 20:40:20 +01:00
Sigrid Solveig Haflínudóttir
73c1ecccc0
emu: handle files dropped by loading it as a ROM
2021-12-16 17:29:09 +01:00
Sigrid Solveig Haflínudóttir
2cf6da4a55
emu: use "Back" on android to restart the rom for now
2021-12-16 01:05:59 +01:00