neauoire
d49981c4ce
Removed runes
2022-04-11 17:27:33 -07:00
neauoire
a3c42c23b9
Fixed issue with oprunes
2022-04-11 17:16:05 -07:00
neauoire
dcc37fd0d5
Added logic/arithmetic symbols to uxnasm
2022-04-11 16:07:15 -07:00
neauoire
60315ff3dc
Raised label limit in uxnasm
2022-04-11 15:34:53 -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
Andrew Alderwick
a35ef6b242
Fix build warning on Windows.
2022-04-09 11:37:06 +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
47f65c7b82
(uxncli) Load ROM using the File device functions.
2022-03-28 18:51:29 +01: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
neauoire
c4f7483027
Arranged include order
2022-03-27 09:18:02 -07: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
7ce8cc1d24
Add file reading with .File/read DEI(2).
2022-03-17 19:09:34 +00:00
Andrew Alderwick
205cc89bcb
Keep a local copy of File/name; don't try to read it beyond end of RAM.
2022-03-17 18:41:55 +00:00
Andrew Alderwick
27089a77e4
Prepare for more than one File device.
2022-03-17 18:35:49 +00:00
Andrew Alderwick
bca73244f0
Minor fix to audio.c.
2022-03-17 18:29:44 +00:00
Andrew Alderwick
a3b87e021f
Rename file_deo variables.
2022-03-17 17:08:03 +00:00
Andrew Alderwick
5dcf0a2b35
Make the UxnAudio struct private to audio.c.
2022-03-17 16:59:36 +00:00
Andrew Alderwick
1d694c43ea
Fix sprite address check.
2022-03-06 20:39:27 +00:00
Andrew Alderwick
fef8806493
Fix comment at end of uxn.h.
2022-03-06 18:02:34 +00:00
Andrew Alderwick
314dd5a431
screen/auto: Replace draft looping with block width control.
2022-03-06 18:02:34 +00:00
Andrew Alderwick
1b04e0814b
(draft) Add looping functionality to Screen/auto.
2022-03-06 13:42:59 +00:00
Bad Diode
11c9ec8b49
Add header guard to uxn.h
2022-03-05 13:58:03 -08:00
Andrew Alderwick
0c819b9f59
clang-format
2022-02-19 01:02:47 +00:00
Andrew Alderwick
550aceee23
(uxnasm) Allow writing the 0xffff byte of RAM.
2022-02-19 00:29:40 +00:00
Andrew Alderwick
8b84813c6e
(uxnasm) Raise error when memory is overwritten.
2022-02-19 00:27:28 +00:00
Andrew Alderwick
da4f0e70a5
(uxnasm) Allow returning errors from writebyte().
2022-02-19 00:26:55 +00:00
Andrew Alderwick
0ae6992089
(uxnasm) Fix calculation of usage.
2022-02-18 23:02:42 +00:00
Andrew Alderwick
f06498f6a6
Remove unused constants.
2022-02-17 18:17:17 +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
deace3b79a
Remove old debugging support.
2022-01-23 19:35:18 +00:00
Andrew Alderwick
edd05ed1d1
Fix compiler warning.
2022-01-23 11:23:52 +00:00
Andrew Alderwick
6577d3c8a0
Remove jump-based infinite loop detection.
2022-01-23 11:17:07 +00:00
Andrew Alderwick
fbd9c49f84
Fix resize when only width or height are set.
2022-01-20 01:34:44 +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
Andrew Alderwick
2c47425c41
Remove trailing space in stack printing
2022-01-14 07:59:42 +00:00
neauoire
4ea8cc2819
Removed extra specing around bytes in stack printing
2022-01-13 14:52:37 -08: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
44a7f5ef0e
Removed old debug files
2022-01-13 08:26:35 -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
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
Sigrid Solveig Haflínudóttir
927fdb497f
ppu: unite 1bpp and 2bpp into one - ppu_blit
2021-12-25 13:50:34 +01:00
Sigrid Solveig Haflínudóttir
b2bb585e1d
ppu: clear should only mark one layer as changed
2021-12-24 23:27:41 +01:00
Sigrid Solveig Haflínudóttir
db957f4dbb
ppu: resize already calls clear, no need for repetition
2021-12-24 23:27:07 +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
0a040824b7
Optimized ppu_redraw
2021-12-24 10:10:55 -08:00
neauoire
cc6f2c8b29
Inlined ppu_read
2021-12-24 10:02:23 -08: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
668eab05bf
(ppu) Minor optimisation
2021-12-24 09:29:26 -08:00
neauoire
4d2b55c188
Removed stdio from ppu
2021-12-20 09:45:56 -08:00
neauoire
5ebeaf6852
Using ppu_clear on resize
2021-12-20 09:42:29 -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
Sigrid Solveig Haflínudóttir
2dc3680bcf
emu: don't call exit(0), return 0 is enough
2021-12-16 00:49:58 +01:00
Sigrid Solveig Haflínudóttir
9bc6a83873
emu/load: use RWops - it's more portable and allows loading roms from assets of an apk on Android
2021-12-15 23:54:44 +01:00
Andrew Alderwick
62f740416d
Remove redundant declaration.
2021-12-14 23:17:32 +00:00
Andrew Alderwick
2330320985
(readability) Use preincrements throughout in void context.
2021-12-14 23:17:32 +00:00
neauoire
bae2d37fc2
(uxnasm) Only catch hex labels with slen of 2 or 4
2021-12-06 09:01:48 -08:00
Andrew Alderwick
60f04ca053
(uxnasm) Add error for relative references that are too far.
2021-12-01 11:42:44 +00:00
neauoire
da797b33c6
(uxnasm) Stop on resolve failure
2021-11-30 10:27:35 -08:00
neauoire
074a049ff2
(uxnasm) Renamed conflicting function
2021-11-29 16:19:47 -08:00
neauoire
25df420607
(uxnasm) Improved errors
2021-11-29 08:48:12 -08:00
Andrew Alderwick
6ba2af5c62
Avoid combining literals across | or $ pads.
2021-11-28 18:07:22 +00:00
neauoire
6c0e39ad6f
(uxnasm) Fixed issue with labels
2021-11-27 14:58:37 -08:00
neauoire
b4e50165b6
(uxnasm) Warn for refs size limit
2021-11-27 14:44:28 -08:00
neauoire
78853ac5c6
(uxnasm) Removed lit flag for writebyte
2021-11-27 14:20:56 -08:00
neauoire
fbbddf50d6
(uxnasm) Cleanup
2021-11-27 14:07:25 -08:00
neauoire
4b6efa6fc6
(uxnasm) Combine byte literals
2021-11-27 13:55:33 -08:00
neauoire
71e8177657
(uxnasm) Rewrite
2021-11-27 11:33:22 -08:00
neauoire
b873f04789
Added tal syntax highlight for nano
2021-11-26 08:11:18 -08:00
Devine Lu Linvega
088897c6b4
(uxnasm) Display exact numberof bytes
2021-11-24 17:12:01 -05:00
Andrew Alderwick
d4e033e715
Remove vestigial mention of "include".
2021-11-18 00:14:15 +00:00
Andrew Alderwick
c3ac41c41d
Change "include" word into ~ rune for includes.
2021-11-17 22:06:00 +00:00
Sigrid Solveig Haflínudóttir
f75f644aff
same fixes for uxncli
2021-11-17 14:29:36 +01:00
Sigrid Solveig Haflínudóttir
19c16081c6
load: don't leak file handles; don't ignore read errors
2021-11-17 14:21:27 +01:00
Sigrid Solveig Haflínudóttir
6c1720e328
datetime: don't crash if localtime failed
2021-11-17 14:14:38 +01:00
Devine Lu Linvega
170aa0f64c
Try to start boot.rom if no rom is provided
2021-11-09 10:34:10 -05:00
Sigrid Solveig Haflínudóttir
4988b2214e
uxnasm: reset scope to avoid pointing at garbage
2021-11-08 18:51:28 +01:00
Devine Lu Linvega
ef13809e08
Made reboot static
2021-11-08 12:13:43 -05:00
Devine Lu Linvega
2f8cc83aa4
Renamed reboot for restart
2021-11-08 12:12:17 -05:00
Devine Lu Linvega
737a87ac3f
Building boot on start
2021-11-08 11:21:23 -05:00
Devine Lu Linvega
85322b92ce
Progress toward boot.rom setup
2021-11-08 10:51:09 -05:00
Andrew Alderwick
d2c6d5e12d
Remove unused limits.h
2021-11-07 19:34:41 +00:00
Sigrid Solveig Haflínudóttir
fd7cf5e221
file: write: return error if fflush failed
2021-11-07 20:21:15 +01:00
Sigrid Solveig Haflínudóttir
3606081184
file: reduce casts
2021-11-07 20:06:15 +01:00
Sigrid Solveig Haflínudóttir
677b02f0a3
file: replace strncpy+strncat with a single snprintf call
2021-11-07 20:00:56 +01:00
Sigrid Solveig Haflínudóttir
90225ad773
file: replace PATH_MAX with 4096 to have the same limit everywhere (Windows has the macro set to < 300)
2021-11-07 19:32:48 +01:00
Devine Lu Linvega
42d0f65d12
Rewrote get_entry
2021-11-07 12:26:37 -05:00
Devine Lu Linvega
dee04ff44a
Renamed prepare for init
2021-11-07 10:30:56 -05:00
Andrew Alderwick
db0efaeff1
Drop redundant dirfd
2021-11-07 00:51:42 +00:00
Andrew Alderwick
ea42a0bdd7
Use basename for File/stat output
2021-11-07 00:46:18 +00:00
Andrew Alderwick
3acaaa2874
Drop fstatat for building on MSYS2
2021-11-07 00:45:55 +00:00
Sigrid Solveig Haflínudóttir
0465b68ab5
add file device build dep to mkfile; fix file_delete prototype
2021-11-07 00:12:11 +01:00
Andrew Alderwick
ede10292d6
Add flush to File device writes
2021-11-06 21:22:00 +00:00
Andrew Alderwick
a92dd9fd73
Rearranged File ports for backwards compatibility.
2021-11-06 00:51:43 +00:00
Andrew Alderwick
3a11945fec
Fix null pointer dereference if File/name not set
2021-11-05 23:26:45 +00:00
Andrew Alderwick
dc3170db98
Implement File/append flag.
2021-11-05 22:48:04 +00:00
Andrew Alderwick
c970e2c5ef
File device: drop offset shorts, add stat and delete.
2021-11-05 21:32:45 +00:00
Andrew Alderwick
9b15f90008
Rename b0 to port in dei/deo functions
2021-11-04 17:14:15 +00:00
Andrew Alderwick
287bc67e1e
Split talk functions into dei and deo; make deo functions void
2021-11-04 17:13:44 +00:00
alex wennerberg
18dddbacd6
Add [-scale] to usage string
2021-11-04 12:48:49 -04:00
Devine Lu Linvega
3bfbbbc124
Moved debugger to ppu
2021-11-04 11:42:15 -04:00
Sigrid Solveig Haflínudóttir
e21a0ed885
clang-format
2021-11-03 23:05:47 +01:00
Sigrid Solveig Haflínudóttir
5a20eb69b0
ppu: simplify ppu_set_size
2021-11-03 23:03:33 +01:00
Andrew Alderwick
38f534d9ec
Allow shifts up to 0xf in byte mode
2021-11-03 07:15:14 +00:00
Sigrid Solveig Haflínudóttir
28aaf40e6d
ppu_write: put new byte value only if it's different
2021-11-02 18:18:30 +01:00
Sigrid Solveig Haflínudóttir
ca5675419e
ppu_write: remove duplicate condition we already checked for
2021-11-02 18:15:11 +01:00
Andrew Alderwick
1bf7fb11b2
Update uxn-fast.c with new LIT opcode meanings
2021-10-30 08:55:23 +01:00
Andrew Alderwick
80b4e4f88d
Use Keep mode for all LIT opcodes
2021-10-30 00:28:33 +01:00
Devine Lu Linvega
6f872feff5
Use Keep modes for byte and short literals
2021-10-29 16:02:07 -07:00
Devine Lu Linvega
8132a09e21
Test for valid destination in uxnasm
2021-10-29 09:29:23 -07:00
neauoire
a635fea52f
Use rom name for window title
2021-10-28 09:27:39 -07:00
Claude Heiland-Allen
33e77e261c
uxnasm errors-out if too many macros
2021-10-26 09:55:57 -07:00
Claude Heiland-Allen
a373939544
uxnasm errors-out if too many labels
2021-10-26 09:54:29 -07:00
Sigrid Solveig Haflínudóttir
a3ee7ab982
emu: close audio device if used
2021-10-24 22:14:27 +02:00
Sigrid Solveig Haflínudóttir
2afded6e05
check SDL_UpdateTexture return code as well
2021-10-24 21:48:56 +02:00
Sigrid Solveig Haflínudóttir
297046ec14
check SDL_GetCurrentDisplayMode return code, keep zoom at 1 if it failed
2021-10-24 21:31:25 +02:00
neauoire
5582816943
Removed unecessary error
2021-10-24 09:09:58 -07:00
Andrew Alderwick
5807e22fef
Fixed corruption in ff00-ffff, improved checks for | and $, thanks karolbelina!
2021-10-23 23:15:07 +01:00
neauoire
6799b5f78e
Warn for out of bounds
2021-10-23 08:48:11 -07:00
neauoire
540fd70b9b
Removed unused include
2021-10-22 16:41:23 -07:00
neauoire
04e4edf05f
Fixed an issue with the ref counter in uxnasm
2021-10-17 19:10:29 -07:00
neauoire
99e38d560c
Fixed JNZ comment for uxn.c
2021-10-17 13:16:58 -07:00
Andrew Alderwick
e82acc875b
Feed extra command line arguments to Console/vector
...
Each argument is followed by a newline character.
2021-10-13 22:58:27 +01:00
neauoire
d6ef361383
Corrected raw short length
2021-10-11 13:35:01 -07:00
neauoire
037ab10b6a
Fixed issue with raw bytes in macros
2021-10-11 13:27:20 -07:00
Andrew Alderwick
55590cec7b
Fixed "while loop has empty body" warning with macOS compiler
2021-10-10 20:09:20 +01:00
Andrew Alderwick
b53d5c428b
Re-added setting border pixels to black
2021-10-09 00:03:34 +01:00
Andrew Alderwick
2006b2a6ad
Print uxnasm message to stderr
2021-10-07 22:38:25 +01:00
neauoire
d363aad7b5
Improved size report for uxnasm
2021-10-06 09:21:27 -07:00
neauoire
08fb3e7f0a
Close uxnemu on System/halt
2021-10-02 12:06:50 -07:00
neauoire
243c5866ac
Do not overdraw
2021-09-30 19:35:22 -07:00
neauoire
765724d2af
Fixed issue where macro size was too large
2021-09-30 19:21:04 -07:00
neauoire
0fe8b39447
Cleaned up PPU
2021-09-30 10:44:40 -07:00
neauoire
9de513ad47
Cleaned up ppu_read
2021-09-30 09:34:50 -07:00
neauoire
c02dc5b0e2
Fixed transparency
2021-09-29 21:00:18 -07:00
neauoire
c494e42cf2
Drawing is pixel-perfect again
2021-09-29 20:54:27 -07:00
neauoire
bac54f1fd9
Progress on new bitpacking
2021-09-29 20:44:15 -07:00
neauoire
253be6f50c
Minor cleanup
2021-09-29 20:05:26 -07:00
neauoire
92e44e4314
Merge branch 'main' of git.sr.ht:~rabbits/uxn into ppu-slow
2021-09-29 18:05:08 -07:00
neauoire
7cff22fcc8
Returned zoom functionality
2021-09-29 18:03:56 -07:00
neauoire
ecc1d7c416
Experimenting with 2 layers
2021-09-29 17:58:58 -07:00
neauoire
f3b3823b0c
The PPU require-draw flag is renamed to reqdraw
2021-09-29 16:14:13 -07:00
neauoire
7f3a889771
Removed clamp from within set_zoom
2021-09-29 16:08:36 -07:00
neauoire
8d72c36123
Moved get_pixel to ppu.c
2021-09-29 16:01:54 -07:00
neauoire
2b80b85baf
Relative labels should not incr references to parent label
2021-09-25 09:39:27 -07:00
neauoire
30c1e4dc6c
Keep vectors in memory instead of constantly peek16()
2021-09-22 12:16:16 -07:00
neauoire
0cc717b251
Removed white flash on launch
2021-09-22 11:56:27 -07:00
neauoire
659dea48d8
Renamed update_palette to set_palette
2021-09-22 11:54:25 -07:00
neauoire
f2260abed0
Moved mouse-wheel event into domouse
2021-09-22 11:53:13 -07:00
neauoire
5905afc97d
Use set_zoom() but test for gWindow before resize
2021-09-22 11:35:00 -07:00
neauoire
718a74641e
Removed flickering on initial resize
2021-09-22 11:21:57 -07:00
neauoire
2822e598ed
Minor cleanup
2021-09-22 10:57:43 -07:00
neauoire
eeeeb90542
Wait for textures and size before default zoom
2021-09-22 10:42:17 -07:00
neauoire
45a7941d7d
Merge branch 'main' of git.sr.ht:~rabbits/uxn
2021-09-22 10:13:12 -07:00
neauoire
26e9d8bf88
Set size after devices are defined
2021-09-22 10:13:02 -07:00
Andrew Alderwick
dd7401bc4c
Redraw entire screen when asked to by reqdraw
2021-09-22 16:40:42 +01:00
neauoire
43f91cecd9
Fixed crashing bug with zoom flag
2021-09-21 15:56:42 -07:00
neauoire
6f10839acf
Created a set_zoom function
2021-09-21 15:41:59 -07:00
Hannah Crawford
8b83ae7e38
Added scale (-s) flag
2021-09-21 21:27:45 +01:00
Hannah Crawford
753c5836e6
Made window resize around center
2021-09-21 21:22:40 +01:00
Andrew Alderwick
f38ba34310
clang-format
2021-09-21 21:20:22 +01:00
neauoire
68a8310830
Muted warnings
2021-09-21 10:45:56 -07:00
Sigrid Solveig Haflínudóttir
3d49536d76
ppu: keep track of the vertical region where redraw is supposed to happen
2021-09-21 19:39:00 +02:00
Andrew Alderwick
81ab3a7a74
Fixed PPU out-of-bounds crash
2021-09-20 23:12:11 +01:00
Andrew Alderwick
a8df7ca410
Fixed palette array
2021-09-20 23:02:42 +01:00
Andrew Alderwick
c0e42f1322
Switched to faster unsigned ints for PPU memory
2021-09-20 22:51:09 +01:00
Andrew Alderwick
b6fe4302d1
Switched to linear PPU memory
2021-09-20 22:51:09 +01:00
Andrew Alderwick
f77fa80d35
Replaced duplicate parts of PPU init with resize functions
2021-09-19 23:34:03 +01:00
Andrew Alderwick
a2305f2d64
Added ability to fix PPU size
...
For testing compatibility with ports that cannot change the PPU size,
the FIXED_SIZE define can be set nonzero and Screen/width,height changes
will be ignored. They can still be read to find the correct width/height
that the PPU is currently using.
2021-09-19 23:21:30 +01:00
Andrew Alderwick
332fbed11e
Only set size when Screen/height is written
2021-09-19 22:56:33 +01:00
Andrew Alderwick
c8f47d8a08
Always return current PPU size when Screen/width,height is read
2021-09-19 22:53:45 +01:00
Andrew Alderwick
15239a1fd2
Rewritten screen_talk with switch
2021-09-19 22:51:35 +01:00
Sigrid Solveig Haflínudóttir
6337680774
ppu: change the API to signal when redraw is required
...
To lower CPU load in idle mode (no changes on screen)
make ppu_pixel return non-zero when a change has been
made.
25% → 4% (piano.rom) after this change on Linux amd64,
Thinkpad X220.
2021-09-19 23:30:53 +02:00
neauoire
a5201767d7
Clear on resize
2021-09-18 17:18:20 -07:00
neauoire
8a32555893
Clear before resizing
2021-09-18 17:10:29 -07:00
neauoire
28cfb143ca
Merge branch 'main' of git.sr.ht:~rabbits/uxn
2021-09-18 16:51:50 -07:00
neauoire
bca5562eec
The screen width/height ports can be written to
2021-09-18 16:51:20 -07:00
Andrew Alderwick
b4fa6f52a8
Replaced malloc and manual initialization with calloc
2021-09-18 22:34:13 +01:00
Andrew Alderwick
e9765337f7
Initialized border color to black
2021-09-18 00:00:28 +01:00