Andrew Alderwick
696ef03f12
Remove goto/label for jumps.
2022-01-12 13:09:45 +00: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
5e2bb92e4c
Removed unistd from uxncli
2022-01-11 15:13:12 -08: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
Andrew Alderwick
9fcb0c335b
Remove use of snprintf.
2022-01-10 11:35:45 +00:00
Andrew Alderwick
0d242d704e
Correct cast for snprintf
2022-01-10 09:59:00 +00:00
neauoire
37497060dc
Removed stdlib from screen header
2022-01-08 19:38:53 -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
8fdb039926
Merge branch 'main' of git.sr.ht:~rabbits/uxn
2022-01-07 16:47:01 -08:00
neauoire
f5278f3a13
Removed device vector variable
2022-01-07 16:46:50 -08:00
Sigrid Solveig Haflínudóttir
eeb0dc9e45
put back newlines to avoid compilation warnings
2022-01-07 23:46:39 +01: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
4cbb661f48
Implement System/vector for debugging.
2022-01-05 17:27:24 +00:00
Andrew Alderwick
0fd288de79
Fix compiler suggestion.
2022-01-05 14:37:37 +00:00
Andrew Alderwick
291cb3d1a2
Simplify stack determination logic.
2022-01-05 14:02:06 +00:00
Andrew Alderwick
646d79fff5
Factor out common parts of system_dei/deo.
2022-01-05 13:29:18 +00:00
Andrew Alderwick
c77799dac2
Just pass an error code to uxn_halt.
2022-01-05 13:07:04 +00:00
Andrew Alderwick
c37831749f
Split uxn_halt into beginnings of System device file.
2022-01-05 13:03:17 +00:00
Andrew Alderwick
c827fdc960
Move errored stack identification to after error handling label.
...
Partial revert of commits 1ce8b9bc27
(and
c296187ea9
).
2022-01-05 01:27:27 +00:00
Andrew Alderwick
c296187ea9
Rename ERROR/err to FAULT/fault
2022-01-04 02:15:38 +00:00
Andrew Alderwick
2a825de2fd
Switch void context increments from pre to post
2022-01-04 02:05:32 +00:00
Andrew Alderwick
1ce8b9bc27
Bring back working/return stack identification on errors
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
cancel
416389bcf4
Improvements to uxn.c
2022-01-03 13:41:20 +00:00
cancel
1cab0dffeb
Removed unused fields in uxn.h
2022-01-02 23:26:13 +00:00
Andrew Alderwick
52598bdad7
Remove uxn-fast.c since new reference core is almost as fast.
2022-01-02 23:05:28 +00:00
cancel
6980abacfc
Refactor uxn.c.
2022-01-02 23:03:06 +00:00
neauoire
ecc2654165
Prefixed helpers in uxn.c
2022-01-02 11:04:13 -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
e12e07e457
mouse.c: add newline at eof
2021-12-29 18:58:31 +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
~d6
abd6a3a5da
Support nested comments in uxnasm.
...
Previously, code like this would fail with an error
about an unrecognized ) token:
( this is a ( nested ) comment )
With this patch, the above code will now work.
Relatedly, it was previously possible to write code
that compiled but was confusing:
(open parenthesis should have a space )
( in this case the ADD2 will be ignored )ADD2
( this comment with ( would have been fine )
With this commit, the first example will emit a warning
but continue to work as intended. The second and third
examples will continue searching for a matching ) token,
which due to the new nested coment behavior will probably
mean the rest of the file gets commented out.
2021-12-28 19:28:15 -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
69f72485c7
Invert y scroll
2021-12-28 10:56:53 -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
Sigrid Solveig Haflínudóttir
a8944f36ec
remove aarch64-specific logic, it has been moved to its own branch, "aarch64"
2021-12-27 13:38:44 +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
b7453e1206
ppu aarch64: sorry, neauoire
2021-12-26 14:31:24 +01:00
Sigrid Solveig Haflínudóttir
e488f76766
ppu arch64: clear "changed" on fg/bg and handle leftovers, if any
2021-12-26 14:19:02 +01:00
Sigrid Solveig Haflínudóttir
68c3a81301
ppu aarch64: clean up
2021-12-26 13:54:06 +01:00
Sigrid Solveig Haflínudóttir
6338f8d9a2
ppu_aarch64: initial version of ppu_redraw using Neon
2021-12-26 07:32:35 +01:00
Sigrid Solveig Haflínudóttir
66f5ba6e4d
apu: Uint32 already defined in uxn.h
2021-12-26 07:28:19 +01:00
Sigrid Solveig Haflínudóttir
73177d91fe
ppu: mark ppu_redraw as weak symbol so it can be overridden; move paletter to the start of Ppu struct (for alignment)
2021-12-26 07:09:12 +01:00
Sigrid Solveig Haflínudóttir
ba7e8a9fb4
uxn_eval: multiply as two uint32s to avoid UB
2021-12-25 23:29:36 +01: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
69cfef46be
ppu_palette: rewrite for more readability
2021-12-25 22:42:34 +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
37cd90bec1
ppu_blit: change type to Uint16
2021-12-25 19:00:26 +01:00
Sigrid Solveig Haflínudóttir
2c8a7ed05a
ppu_blit: tiny bit faster by doing less memory reads in the inner loop
2021-12-25 18:56:36 +01:00
Sigrid Solveig Haflínudóttir
5848fbe50b
ppu_blit: mostly cosmetic - explain blending's 4th row, gain few more cycles
2021-12-25 16:26:01 +01:00
Sigrid Solveig Haflínudóttir
8bbe5c1dfd
ppu_resize: f49143782a
was wrong. keep successfully reallocated layers
2021-12-25 16:06:30 +01:00
Sigrid Solveig Haflínudóttir
831014e811
ppu_redraw: use the same optimization that one-layer logic had
2021-12-25 15:57:43 +01:00
Sigrid Solveig Haflínudóttir
c2829ce5fe
ppu: remove the last(?) remnants of single layer logic
2021-12-25 15:12:30 +01:00
Sigrid Solveig Haflínudóttir
f49143782a
ppu_resize: don't leak if one layer failed to resize
2021-12-25 15:05:33 +01:00
Sigrid Solveig Haflínudóttir
ef2b2e881b
ppu header: remove unused macros
2021-12-25 14:48:05 +01:00