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
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
5ebeaf6852
Using ppu_clear on resize
2021-12-20 09:42:29 -08:00
neauoire
c4d9e52fd6
(uxnemu) Clear debugger on toggle
2021-12-19 12:20:13 -08:00
Andrew Alderwick
2330320985
(readability) Use preincrements throughout in void context.
2021-12-14 23:17:32 +00: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
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
neauoire
243c5866ac
Do not overdraw
2021-09-30 19:35:22 -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
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
8d72c36123
Moved get_pixel to ppu.c
2021-09-29 16:01:54 -07:00
Andrew Alderwick
f38ba34310
clang-format
2021-09-21 21:20:22 +01: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
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
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
bca5562eec
The screen width/height ports can be written to
2021-09-18 16:51:20 -07:00
Sigrid Solveig Haflínudóttir
ccd9aabecd
ppu: remove unused "pixels" field from Ppu; reset bg/fg to all zeroes on init
2021-09-17 20:24:50 +02:00
neauoire
478669a8ca
Reverted to a standard SDL Texture for the screen
2021-09-16 19:48:00 -07:00
neauoire
98f773c652
Removed unused hor/ver values
2021-08-01 11:38:04 -07:00
neauoire
be85023831
Prefixed function names with ppu
2021-08-01 11:33:43 -07:00
neauoire
6d8e06e879
Added alpha to blending table
2021-08-01 11:16:29 -07:00
neauoire
2d493c55bb
Removed extra table
2021-08-01 11:08:02 -07:00
neauoire
b826d78a56
Pushed new blending modes
2021-08-01 11:00:07 -07:00
neauoire
f3b237f0f9
Optimization in putchr
2021-07-31 21:29:40 -07:00
neauoire
8a8de7f142
Simpler putchr(), not the best but..
2021-07-31 17:00:25 -07:00