nick black
004f5ca1ea
Note copyright of Mark Ferrari for jungle demo
5 years ago
nick black
bee5be9d80
chunli: finalize out
5 years ago
nick black
19db2a5675
still more chunli
5 years ago
nick black
cffd08418a
more chun li
5 years ago
nick black
bb0cdb2b88
demo: add demo_nanosleep() for HUD
5 years ago
nick black
1e403123e1
s/notcurses_render/demo_render/g pass
5 years ago
nick black
6a2dae0279
box: punch it up a little
5 years ago
nick black
eb8ecb2433
jungle: center image, use demo_render()
5 years ago
Nick Black
3d612aebcb
ruins color cycling demo #253 ( #287 )
...
* palette_set: update pal256 damage map #230
* drone: use newest builders
* palette: send oc on exit for color reset #285
* palette_new: copy existing palette in #230
* Python: use checkRGB everywhere
* more palette unit testing
* add ncplane_set_*_palindex()
* render fg palindex #230
* palette index color is out of 1000
* jungle demo works #253
5 years ago
nick black
02698ebbd1
add jungle demo
5 years ago
nick black
03e3c5406d
interrogate_term: check CCC if initc is defined
5 years ago
nick black
f450c1261a
libav: don't molest user pointer
5 years ago
nick black
c23b4196a2
notcurses-view: get status line back, urk
5 years ago
nick black
3e9347a339
palette color: unit test for alpha clear
5 years ago
nick black
f5e151e9a0
render+raster palette-index support #230
5 years ago
nick black
b02acd8631
Curry a void* to fader callbacks #284
5 years ago
nick black
d95069fb1e
fallin: more blocks, many more #283
5 years ago
nick black
ed783fe421
drop ncplane_erase() from slider
5 years ago
nick black
98fe08727b
fallen: open the curtain on patents.png
5 years ago
nick black
ff34fb387a
fallin' demo pretty much works #267
5 years ago
nick black
5d69545f22
rgb_greyscale: linear approximation to gamma decomp
5 years ago
nick black
fe2dcc3387
unibloick: call ncplane_greyscale() at start
5 years ago
nick black
1b01494c79
implement ncplane_greyscale() #280
5 years ago
nick black
3bd0732e81
notcurses_view: accept -s option
5 years ago
nick black
56479fd777
panelreel-demo: lock in border background
5 years ago
nick black
97e17c6cf5
demos: lock in some backgrounds
5 years ago
nick black
44af796e74
demos: lock in some backgrounds
5 years ago
nick black
3e6a862603
libav: require alpha 192 to be visible
5 years ago
nick black
02b845ba75
notcurses-view: quit on 'q'
5 years ago
nick black
4c7093901b
banner: print term shortname/dims
5 years ago
nick black
011f7524bb
reject bad demo spec before starting
5 years ago
nick black
df08a8fb8a
fallen demo working up through disappearance #267
5 years ago
nick black
9046bbfbe7
notcurses-view: erase screen between files
5 years ago
nick black
b3f4fbdf51
fix fallin' bug
5 years ago
nick black
55c946ca6b
fallin'
5 years ago
nick black
7860e1eace
first start of fallin' demo
5 years ago
nick black
2783a1b503
ncplane_move bugfix when already in desired config
5 years ago
nick black
08f6fa0e79
implement ncplane_dup()
5 years ago
nick black
38b2b3d075
render: fix bad reference in final pass
5 years ago
nick black
209d4f41f4
palette: add necessary predicates #230
5 years ago
nick black
0e70304596
palette indexing: set up attributes #230
5 years ago
nick black
20f4b3493c
send palette updates (initc) #230
5 years ago
nick black
dfcdd10cb5
more palette support/testing #230
5 years ago
nick black
684bcdcc8c
introduce palette256 #230
5 years ago
nick black
98446b4810
render: fix setting of channel on wide
5 years ago
nick black
97c0a34504
make pulser() available to all
5 years ago
nick black
d7d61aa669
trans: pulse up so HUD clock keeps moving
5 years ago
nick black
f953d18cfb
HUD: move to lower left
5 years ago
nick black
79c1314854
uniblock: up with the white and gold
5 years ago
nick black
fc1341ea5a
painter: skip unnecessary work
5 years ago
nick black
b2dcc7cdf2
demo: push delaymult through to ncvisuals
5 years ago
nick black
0f435240d6
xray: scroll twice as quickly
5 years ago
nick black
7295377db7
panelreeldemo: don't block on input
5 years ago
nick black
aba9a4f967
Eliminate fprintf() for ~20% FPS boost #277
...
Profiling with `perf` revealed the fprintf() inside term_esc_rgb()
to dominate our performance. Replace it with a u8->str lookup table
and a hand-assembled string fed into a single fputs(). On a 80x70
xfce4-terminal geometry, this wins 20%+ FPS on the demo, w00t!
Huzzah for profiling!
5 years ago
nick black
19c2d7d6df
demo: export delaymultiplier
5 years ago
nick black
785ef20937
view: legend visible on 80x24
5 years ago
nick black
afcd265253
handle 10^4 FPS in summary table :)
5 years ago
nick black
b8f25ff89b
Map 8-bit ffmpeg α to 2-bit notcurses α #276
5 years ago
nick black
f857edd09d
libav: render spaces when possible
5 years ago
nick black
17df279b66
libnotcurses-sys rust lowlevel bindings
5 years ago
nick black
5cf8b8327a
demo: don't overcount time in summary table
5 years ago
nick black
3011a59cbd
don't call ncplane_dim_yx() in notcurses_render_internal
5 years ago
nick black
385d37ac8c
painter: drop loop at end, nice FPS gain
5 years ago
nick black
1c17b05434
allow rtl uniblocks
5 years ago
nick black
c8f12b6412
uniblock: darken the area above the block
5 years ago
nick black
631c684a88
cut view demo runtime by 1/3
5 years ago
nick black
adf808110d
convert remaining man1 pages to pandoc
5 years ago
nick black
a419e866fe
witherworms: color/timing tweaks
5 years ago
nick black
5f58ef3a4d
implement ncvisual timescaling #275
5 years ago
nick black
dd7f8eff4b
ncvisual_stream: add timescale param
5 years ago
nick black
347f85150f
witherworms: just lighten head #272
5 years ago
Nick Black
7ec022d067
Painter's algorithm #255 ( #274 )
...
* notcursesI.avi 30 -> 60fps
* painter's algorithm works #255
5 years ago
nick black
7c687faea0
pulsing text + unit test + docs #163
5 years ago
nick black
13c2dc9841
fade: propagate fader return value
5 years ago
nick black
56a54b5441
break apart render/rasterize #155
5 years ago
nick black
1b83c8b182
uniblock: drop rtl blocks for now #183 #259
5 years ago
nick black
49d684c772
render: always restore char when recovering
5 years ago
nick black
2ebc3e2bfe
blend: conditionally blend in alpha
5 years ago
nick black
f280db744d
panelreeldemo: support abort/fail
5 years ago
nick black
6508135667
witherworm: enable mathtext
5 years ago
nick black
3faffaa847
channels_blend() : don't blend in wide status #260
5 years ago
nick black
38fb082c61
pthread_cond_timedwait() requires CLOCK_REALTIME :/
5 years ago
nick black
f8c870bb76
demo: reject multiplier <= 0
5 years ago
nick black
9b62958bd0
witherworm: support abort v failed
5 years ago
nick black
a120e40816
panelreel-demo: support abort vs fail
5 years ago
nick black
6a7d7a750c
xray: support abort vs failed
5 years ago
nick black
8b4de3f482
add internal cell_debug()
5 years ago
nick black
0f60af347d
add clipped set functions
5 years ago
nick black
c4ee0acff0
demo: support aborted vs failed
5 years ago
nick black
5742c7396c
viewdemo: support abort vs failed
5 years ago
nick black
4f629cc5b3
lighting kick!
5 years ago
nick black
b1995190c4
don't be an asshole
5 years ago
nick black
b8e11e5ef4
poc mathtext works now #260
5 years ago
nick black
f36431bc19
render: inherit wide mask on assignment #260
5 years ago
nick black
3ee48a8233
vfprintf: need a va_copy()
5 years ago
nick black
dc2f788d28
summary: match rounding #268
5 years ago
nick black
7895d06273
cursor_move(-1,-1) while invalid is invalid #270
5 years ago
nick black
fc039b034e
notcurses-demo: implement -r option
5 years ago
nick black
00e6ecac7d
fade: avoid divide by zero on empty plane #269
5 years ago
nick black
602b34bc0c
mathtext: full strings #260
5 years ago
nick black
abc17d37aa
ncplane_vprintf_prep: reprint after realloc #260
5 years ago
nick black
d055faed9a
add mathtext PoC #260
5 years ago
nick black
7d598a5033
demo: add -p to usage()
5 years ago
nick black
1be4025289
CMake: true fix for #208 , use NOTCURSES_SHARE
5 years ago
nick black
ebbac42bf6
whoomp, there it is: fix all libav timing issues #159
5 years ago
nick black
306045116f
API: always call complex from static simple
5 years ago
nick black
d8c6e2434a
demo: summary table adds render%
5 years ago
nick black
f092e62bca
demo summary: total out columns
5 years ago
nick black
a56846468e
notcurses-view: keypress skips, not aborts
5 years ago
nick black
acef43c759
avcodec_parameters_to_context() #215
5 years ago
nick black
75f0ea6ca0
HUD: print framecount
5 years ago
nick black
9677114e45
notcurses-view: support -l
5 years ago
nick black
f4cda62d63
uniblock: don't emit useless \u200e
5 years ago
nick black
309211e308
enmetric() for small values #256
5 years ago
nick black
14d7bed6db
notcurses-input: fix banner display #263
5 years ago
nick black
b37ea582a3
enmetric()ize total time output in demo summary
5 years ago
nick black
c00fc3c3f7
mask out SIGWINCH in demo #262
5 years ago
nick black
7e59cf1053
don't print Term line with suppress_banner
5 years ago
nick black
24ba1c4425
grid: fix error on superlarge geometries
5 years ago
nick black
a170e4334a
cmake: write install prefix #208
5 years ago
nick black
c8148fe949
xray: don't blend banner
5 years ago
nick black
3d02318e29
panelreel-demo: hook up pipe
5 years ago
nick black
1a2cccaa18
fold out ncplane_move_cursor_yx() wherever possible #257
5 years ago
nick black
7016e7f5da
summary: clean up table's unicode BDC
5 years ago
nick black
6cb945f3d5
panelreel: initial tablet count based on height
5 years ago
nick black
930968f31a
demo: add legend to summary table #258
5 years ago
nick black
07c175b320
refrain from using undefined terminfo capabilities #252
5 years ago
nick black
9c8ce83f95
chunli/view: trans out
5 years ago
nick black
54fb468dfe
chunli: use demo_render()
5 years ago
Nick Black
f5c6297902
Chun Li demo ( #251 )
...
* chun li demo
* ncvisual_decode: allow multiple renders of the same frame
* add -H to notcurses-demo man page
* update section 1 man page versions
5 years ago
nick black
a748dea61b
uniblock: restore colors/fade
5 years ago
nick black
5dd90f3735
add ncplane_dim_[yx] quick accessors
5 years ago
Nick Black
f6975d11d5
Docs/API sweep for 1.0.0 #244 #249 ( #250 )
...
* sync up some docs #244
* sync README and man page
* notcurses_output() man page work
* pull attr/channels from output functions #244
* witherworm: clean up explicit moves #244
* still more man page work
* notcurses_lines, last of the man pages i think
* panelreel man page #244
* debian: ruby-ronn->pandoc
* debian: full multiarch compliance
* debian: symbols file
* pandoc: fix syntax for lexgrog
* fm6.mkv: strip audio
* pandoc: fix up apropos man syntax #249
* ncurses_lines man page
5 years ago
nick black
a868a29c24
notcurses-view: support resizes post-render
5 years ago
nick black
03636b14d3
maxcolor -> trans, document loglevels
5 years ago
nick black
781a0eda44
clean up input thread in demo #246
5 years ago
nick black
bd27e056e7
don't ncvisual_decode+stream #246
5 years ago
nick black
c7558550f4
drop sprite-enhalfen
5 years ago
nick black
0de1856e38
accept a loglevel for libav
5 years ago
nick black
6518e2f888
xray: free up path accessor
5 years ago
nick black
867a0db3e9
witherworms: rewrite with ncplane_at_yx()
5 years ago
nick black
b1c16cd437
more space between instances than letters, ick
5 years ago
nick black
029142e2c2
grid demo: actually do something now
5 years ago
nick black
44da49d351
ncvisual: free up the oframe #241
5 years ago
nick black
e05ec51629
ncvisual: fix the major memory leak in streaming #241
5 years ago
nick black
bc1f9bfb43
ncvisual: free up image alloc #241
5 years ago
nick black
9fdee8f672
xray: kill obsolete FIXME and static
5 years ago
Nick Black
2fbc94e41c
Higher planes obliterate bisected wide glyphs #158 ( #243 )
...
* higher planes stomp wide glyphs
* broken unit test
* develop out widestomp PoC
* fix notcurses_at_yx()
* fix up dig_visible_cell() return value
* refuse wide glyph on last column #242
* set adjacent cell wide when rendering #158
* xray: eliminate weird color flicker
* witherworm: don't eat wide glyphs
* unit test for boxed glyph
* uniblock: no need to emit so many U+200Es
* witherworm: remove wide glyph hack
5 years ago
nick black
48177b8474
implement notcurses_at_yx()
5 years ago
nick black
35aa7f6e85
move cell_egc_copy() to internal.h
5 years ago
nick black
bdcea181a2
don't sleep without defined interval #224
5 years ago
nick black
e03653b964
fix libav when DISABLE_FFMPEG is used
5 years ago
nick black
99541cc036
pull out terminfo's cub1
5 years ago
nick black
32ff214be2
update demos for ncplane_aligned #237
5 years ago
nick black
2ea4f77875
introduce ncplane_aligned() #237
5 years ago
nick black
8926fc5879
cursor: always get cnorm/civis defs #240
5 years ago
nick black
7d4f9b5231
witherworm: message
5 years ago
nick black
bcd12279c0
ncvisual: handle plane resize #169
5 years ago
nick black
ed980f1059
pull _get from all accessors
5 years ago
nick black
014afa348b
rename ncplane default -> base #236
5 years ago
nick black
d5748c634d
ncvisual: keep duration sum for better sync #113
5 years ago
nick black
707862507d
use video pts when available #113
5 years ago
nick black
c21a04137c
curry a void* through ncvisual_stream #113
5 years ago
nick black
41153e3c7e
notcurses-view: rewrite using ncvisual_stream #113
5 years ago
nick black
db8b99d594
notcurses_render: simplify using new alpha rules
5 years ago
nick black
c0126b3389
maxcolor: add a legend for transparencies
5 years ago
nick black
924d80f0d5
don't blend default colors #235
5 years ago
nick black
46b1b8e622
notcurses_stats man page #213
5 years ago
nick black
21c3861804
s/bannner/banner/g, heh
5 years ago
nick black
e9890eefc0
general foreground elision #131
5 years ago
nick black
5b322add56
glyph-based background spec elision #131
...
When we emit a glyph that has no background pixels (i.e.
the U+2588 FULL BLOCK glyph), there's no need to emit a
background color change.
Eagle demo currently has hand-coded elision. Results from
80x70 runs using the `-c` parameter:
No optimization: 12.63MiB
Hand-optimized: 12.48MiB
New scheme, no hand-coded optimization: 12.45MiB
w00t!
5 years ago
Nick Black
ce2a390b52
Out with googletest, in with doctest #202 ( #231 )
...
* introduce doctest over googletest #202
* call dtester in in targets
* doctest conversion #202
* channel.cpp -> doctest #202
* egcpool tests -> doctest #202
* input tests to doctester
* zaxis -> doctest
* drone: always define LANG
* libav to doctest #202
* panelreel tests to doctest #202
* spec that a C++17 compiler is now required for doctest #202
* enmetric tests -> doctest #202
* fade tests -> doctest #202
* notcurses test case -> doctest #202
* last conversion to doctest #202
* finish move to doctest #202
* drone: set up make test
5 years ago
nick black
d4caefc55d
fade: throw a 10ms cap in, improves visual and lessens load
5 years ago
nick black
148114c6ca
rewrite term_esc_rgb for ~8% more FPS
5 years ago
nick black
38ace7677f
build man pages properly #213
5 years ago
nick black
132793211c
capabilities testing for fade/ffmpeg
5 years ago
nick black
3544bd86e2
witherworm: don't hide chars below message
5 years ago
nick black
fe0c18d5e4
disable eventfd in panelreel demo for now #196
5 years ago
nick black
bf49db1ae4
FreeBSD: guard all uses of _unlocked #196
5 years ago
nick black
90f750dec8
eagle: remove direct libav calls
5 years ago
nick black
af7cf118a9
HUD: properly initialize backchannel
5 years ago
nick black
09aa606281
FreeBSD: no CLOCK_MONOTONIC_RAW #196
5 years ago
nick black
caf7e41737
need struct AVFrame for sans-libav build
5 years ago
nick black
430a321557
don't import av headers in non-ffmpeg build
5 years ago
nick black
bd034c983a
input: handle modifiers+mouse (alt, shift, ctrl) #226
5 years ago
nick black
1cc100cd2d
UMOK: get endgame working once more
5 years ago
nick black
fb0e03fe89
UMOK: fadecb for faders #162
5 years ago
nick black
a218851acb
sweet-ass stats in HUD #162
5 years ago
nick black
91a00b3400
ULTRAMEGAOK: feed the HUD #162
5 years ago
nick black
9402d7e927
HUD: click on X to close HUD
5 years ago
nick black
ee99eb53c3
HUD: throw a close-X on the hud
5 years ago
nick black
b13da606f6
whiten and shrink HUD
5 years ago
nick black
7f82ac6f16
ULTRAMEGAOK: mouse-moveable HUD #162
5 years ago
nick black
13b376f94f
panelreels: fix logic error at bottom #222
5 years ago
nick black
7906989582
kill obsolete FIXME
5 years ago
nick black
4e841865b3
panelreel-tester: accept offset arguments #180
5 years ago
nick black
770cdf4773
panelreel: plug up hole at the bottom #220
5 years ago
Nick Black
4571b57ece
Rust/FreeBSD ( #221 )
...
* rust bindings
* update release documentation with Rust info
* panelreel tester: accept command-line options#180
* input: char32_t not wchar_t in output
* freebsd compilation issues #196
5 years ago
nick black
4d877603c3
maxcolor: fix direction switch
5 years ago
Nick Black
63ada9289c
Implement CELL_ALPHA_BLEND, improve transparency semantics #191 ( #219 )
...
* channels_blend() introduced
* implement CELL_ALPHA_BLEND #191
* maxcolor demo: slidingpanel
* much improved transparency semantics #191
* maxcolor: show all transparencies #191
5 years ago