Matthew Mondor [Sun, 2 Jul 2023 15:03:42 +0000 (15:03 +0000)]
AnalogTerm2: Add recording support
- Window size not padded at a multiple of 16 to be compatible with
efficient frame processing as expected by ffmpeg(1).
- The dimensions in characters and pixels are now shown at the top
left of the terminal when started.
- The -R option was added to enable the recording capability. The
fullpath to a FIFO file (see mkfifo(1)) is expected. AT2 writes
to that FIFO when recording is enabled. A recording application
is expected to already be listening on the other side.
- A record.sh example recording script, using ffmpeg(1) was added.
- README and TODO were updated.
- A bug was fixed where attempting to blank character 0 crashed
attempting to dereference a NULL pointer.
- More aliases were added to at-aliases.sh, including to enable
and disable recording, atrecord/atnorecord.
Matthew Mondor [Sun, 2 Jul 2023 09:01:54 +0000 (09:01 +0000)]
AnalogTerm2: Improve 3270gt12 font, import Canon Cat Roman font.
Matthew Mondor [Wed, 28 Jun 2023 10:40:08 +0000 (10:40 +0000)]
AnalogTerm2: Improve the 3270gt12 font.
Matthew Mondor [Wed, 28 Jun 2023 10:10:08 +0000 (10:10 +0000)]
AnalogTerm2: Improve 3270gt12 font; fix a codepoint map bug (92).
Matthew Mondor [Wed, 28 Jun 2023 06:42:28 +0000 (06:42 +0000)]
AnalogTerm2: Get rid of an older buggy 3270 font inadvertently imported
Matthew Mondor [Wed, 28 Jun 2023 06:40:06 +0000 (06:40 +0000)]
AnalogTerm2: Add a 3270 fonts collection.
Matthew Mondor [Mon, 26 Jun 2023 04:54:17 +0000 (04:54 +0000)]
AnalogTerm2: Add a "kaypro2k-long" 8x11+ font variant.
Matthew Mondor [Sun, 25 Jun 2023 20:12:00 +0000 (20:12 +0000)]
AnalogTerm2: Add the "kaypro2k" 8x8 font.
Matthew Mondor [Mon, 19 Jun 2023 16:38:26 +0000 (16:38 +0000)]
AnalogTerm2: Make variant 2 of at2 7x11 text figures 1 "Roman"
Matthew Mondor [Sun, 18 Jun 2023 05:21:57 +0000 (05:21 +0000)]
AnalogTerm2: Fix "textfigures2" 7 that was "uppercase".
Matthew Mondor [Sun, 18 Jun 2023 05:17:58 +0000 (05:17 +0000)]
AnalogTerm2: Add "textfigures2" for 7x11 font size.
Matthew Mondor [Sun, 18 Jun 2023 04:34:34 +0000 (04:34 +0000)]
AnalogTerm2: Add "text figures" for 7x11
Matthew Mondor [Sun, 18 Jun 2023 01:36:29 +0000 (01:36 +0000)]
AnalogTerm2: Add the "a2-adm" font variant.
Matthew Mondor [Sun, 18 Jun 2023 01:21:11 +0000 (01:21 +0000)]
AnalogTerm2: Import the "wargames-long" font variant.
Matthew Mondor [Sat, 17 Jun 2023 19:40:57 +0000 (19:40 +0000)]
AnalogTerm2: Improve the "wargames" font variants.
Matthew Mondor [Wed, 14 Jun 2023 14:27:17 +0000 (14:27 +0000)]
AnalogTerm2: Rework child process management.
- SIGKILL was sent to the child process if it wasn't detected to
have exited, now SIGHUP is sent to its process group instead.
- The signal handler in tty.c could perform operations that were
unsafe for a handler, these now only set flags that are processed
outside of the handler.
Matthew Mondor [Wed, 14 Jun 2023 00:14:07 +0000 (00:14 +0000)]
AnalogTerm2: Add IBM Vio fonts collection and a BDF convert script.
Thanks to Tyler Mitchell.
Matthew Mondor [Tue, 13 Jun 2023 17:56:22 +0000 (17:56 +0000)]
AnalogTerm2: Fix GNUmakefile install target for gzipped fonts.
Matthew Mondor [Tue, 13 Jun 2023 17:48:48 +0000 (17:48 +0000)]
AnalogTerm2: Compress *-ansi.txt font files with gzip.
Matthew Mondor [Tue, 13 Jun 2023 17:27:14 +0000 (17:27 +0000)]
AnalogTerm2: move fonts/9x16/*.txt -> fonts/8x16/vfont-*.txt
Matthew Mondor [Tue, 13 Jun 2023 17:12:31 +0000 (17:12 +0000)]
AnalogTerm2: Add more functionality to the font/glyph ATC sequence 65540.
- [?658467;65540h - Could already be used to reset to the default font.
- [?658467;65540;0h - Similar to the above, but does not load any default font
data, resulting in all glyphs being blanked+uninitialized.
- [?658467;65540;<n>;0h - Blank+uninitialize glyph <n> only.
- Updated tests/font-load.sh to issue a glyph blanking sequence before rows
data and fonts/*x*/*-ansi.txt font sequence files to use the feature.
- Also set to NULL some freed font related pointers for safety and debugging.
- Update README and TODO.
- Add atfontblank to at2-aliases.sh.
Matthew Mondor [Tue, 13 Jun 2023 11:44:05 +0000 (11:44 +0000)]
AnalogTerm2: Check ttys != NULL in SIGCHLD handler.
Matthew Mondor [Tue, 13 Jun 2023 11:31:49 +0000 (11:31 +0000)]
AnalogTerm2: Rework font memory management code.
Matthew Mondor [Mon, 12 Jun 2023 17:23:17 +0000 (17:23 +0000)]
AnalogTerm2: bugfix in the "wargames" 7x11 "even" font.
Matthew Mondor [Mon, 12 Jun 2023 04:06:28 +0000 (04:06 +0000)]
AnalogTerm2: Add C64 and Atari inspired 8x8 ASCII fonts
Matthew Mondor [Sun, 11 Jun 2023 21:12:00 +0000 (21:12 +0000)]
AnalogTerm2: Add a default mapping for "thin space" and "narrow NBSP".
Matthew Mondor [Sun, 11 Jun 2023 21:07:33 +0000 (21:07 +0000)]
AnalogTerm2: Add 7x11 even-descender variants of the 7x9 AT2 fonts.
Matthew Mondor [Thu, 8 Jun 2023 10:49:35 +0000 (10:49 +0000)]
Import of 2021 KITT inspired effect prototype.
Matthew Mondor [Mon, 5 Jun 2023 13:45:34 +0000 (13:45 +0000)]
AnalogTerm2: Fix a topaz-even font glyph bug.
Matthew Mondor [Mon, 5 Jun 2023 13:37:54 +0000 (13:37 +0000)]
AnalogTerm2: Add a few more screenshots showing recent features.
Matthew Mondor [Sun, 4 Jun 2023 21:44:15 +0000 (21:44 +0000)]
AnalogTerm2: Font related:
- Import a collection of 9x16 from Slackware, thanks to
Tyler Mitchell for the conversion.
- Add a small utility in tests/ to convert cp437 fonts to unicode.
- Add support for glyph remapping in tests/font-load.sh.
Matthew Mondor [Sat, 3 Jun 2023 19:33:39 +0000 (19:33 +0000)]
AnalogTerm2: Add a KayProII style 8x16 font.
Matthew Mondor [Sat, 3 Jun 2023 15:14:09 +0000 (15:14 +0000)]
AnalogTerm2: Add more box drawing glyphs to 8x11 topaz-even font.
Matthew Mondor [Sat, 3 Jun 2023 07:31:40 +0000 (07:31 +0000)]
AnalogTerm2: Make glyph remapping dynamic and add ATC 65551 to manage it.
Matthew Mondor [Fri, 2 Jun 2023 12:07:32 +0000 (12:07 +0000)]
AnalogTerm2: Add DEC Special Graphics support glyphs to 8x11 Topaz.
Matthew Mondor [Fri, 2 Jun 2023 10:41:16 +0000 (10:41 +0000)]
AnalogTerm2: Font and DEC Special Graphics related changes:
- DEC Special Graphics are now remapped to unicode glyphs internally,
and the missing related glyphs have been implemented, meaning
that under screen/tmux that also does that, they always display
correctly without extra font-specific mapping. This also allows
loaded fonts to provide their own graphics characters, that also
work in applications using the DEC feature like dialog(1).
- Copy-pasting of text under DEC Special Graphics charset used to
return the corresponding ASCII characters. These now return the
unicode characters used to map/render them.
- The NBSP (Ux00a0) character is now included as part of the Latin-1
glyphs. This allows fonts that would like to distinguish the
display of these from normal space to provide a glyph.
- Accept 'x' as an alternative to ',' for the -g command line option.
- Now check for large contiguous range blocks before glyph-order
tables for glyph lookup.
- Properly mark as "defined" altered glyphs when the default font
cannot be loaded because the font size is too small.
Matthew Mondor [Fri, 2 Jun 2023 10:28:46 +0000 (10:28 +0000)]
AnalogTerm2: Alter "3261-even" font's 'f' glyph.
Matthew Mondor [Wed, 31 May 2023 14:41:55 +0000 (14:41 +0000)]
AnalogTerm2: Add 3161-even font variant.
Matthew Mondor [Wed, 31 May 2023 07:51:50 +0000 (07:51 +0000)]
AnalogTerm2: Additional error checking and fix possible race condition.
Matthew Mondor [Tue, 30 May 2023 13:17:52 +0000 (13:17 +0000)]
AnalogTerm2: Fix 8x16 3161 font bugs.
Matthew Mondor [Mon, 29 May 2023 22:57:27 +0000 (22:57 +0000)]
AnalogTerm2: Add another IBM 3161 inspired font.
Matthew Mondor [Mon, 29 May 2023 09:40:10 +0000 (09:40 +0000)]
AnalogTerm2: 6x8 variant of the a2 font (5x8 matrix plus 1px).
Matthew Mondor [Mon, 29 May 2023 08:16:17 +0000 (08:16 +0000)]
AnalogTerm2: More "Topaz" style font variants.
Matthew Mondor [Sun, 28 May 2023 12:12:48 +0000 (12:12 +0000)]
AnalogTerm2: Add an Amiga Topaz style font.
Matthew Mondor [Sat, 27 May 2023 16:07:34 +0000 (16:07 +0000)]
AnalogTerm2: update README.
Matthew Mondor [Sat, 27 May 2023 16:06:50 +0000 (16:06 +0000)]
AnalogTerm2: Reorganize font files and install them.
Matthew Mondor [Sat, 27 May 2023 14:26:40 +0000 (14:26 +0000)]
AnalogTerm2: Add the -g option to support other font sizes.
Matthew Mondor [Sat, 27 May 2023 14:25:15 +0000 (14:25 +0000)]
AnalogTerm2: Update the a2-font.
Matthew Mondor [Sat, 27 May 2023 14:23:48 +0000 (14:23 +0000)]
AnalogTerm2: Add an ADM-3A inspired font and WarGames2 longer one.
Matthew Mondor [Wed, 17 May 2023 02:42:32 +0000 (02:42 +0000)]
AnalogTerm2: Alter the default font's asterisk glyph.
Matthew Mondor [Tue, 16 May 2023 22:04:51 +0000 (22:04 +0000)]
AnalogTerm2: Improve "archaic" font's asterisk glyph
Matthew Mondor [Tue, 16 May 2023 13:54:18 +0000 (13:54 +0000)]
AnalogTerm2: Fix a copy/pasting related bug; avoid obsolete WM hint.
Matthew Mondor [Sun, 14 May 2023 00:26:25 +0000 (00:26 +0000)]
AnalogTerm2: After trying variants, more standard "c" for "3161"
Matthew Mondor [Sat, 13 May 2023 08:47:08 +0000 (08:47 +0000)]
AnalogTerm2: Improve punctuation of 3161/3270 inspired fonts.
Matthew Mondor [Sat, 13 May 2023 07:09:30 +0000 (07:09 +0000)]
AnalogTerm2: Improve the 3161 inspired font (resolution compromises)
Matthew Mondor [Sat, 13 May 2023 06:04:03 +0000 (06:04 +0000)]
AnalogTerm2: Add a 3161 terminal family inspired font.
Matthew Mondor [Sat, 13 May 2023 04:28:08 +0000 (04:28 +0000)]
AnalogTerm2: Improve the "3270" font.
Matthew Mondor [Sat, 13 May 2023 03:36:51 +0000 (03:36 +0000)]
AnalogTerm2: Add a "3270" IBM 3270 inspired font.
Matthew Mondor [Fri, 12 May 2023 22:38:53 +0000 (22:38 +0000)]
AnalogTerm2: Improve the "serif" font.
Matthew Mondor [Fri, 12 May 2023 06:39:34 +0000 (06:39 +0000)]
AnalogTerm2: Add a new "serif" font.
Matthew Mondor [Fri, 12 May 2023 04:47:07 +0000 (04:47 +0000)]
AnalogTerm2: Improve the "archaic" font
Matthew Mondor [Thu, 11 May 2023 11:26:36 +0000 (11:26 +0000)]
AnalogTerm2: Rename a misnamed file
Matthew Mondor [Thu, 11 May 2023 10:58:11 +0000 (10:58 +0000)]
AnalogTerm2: Add the "archaic" custom font; update aliases/README/TODO
Matthew Mondor [Wed, 10 May 2023 09:53:28 +0000 (09:53 +0000)]
AnalogTerm2: Rework WarGames and Topaz fonts XYZ. Will never be
perfect considering the dimension limitations but these are more
uniform in size while still more or less representing the general
shape of the orignal.
Matthew Mondor [Wed, 10 May 2023 00:09:30 +0000 (00:09 +0000)]
AnalogTerm2: More examples in README
Matthew Mondor [Tue, 9 May 2023 19:52:28 +0000 (19:52 +0000)]
AnalogTerm2: Improve README, add/install util/example aliases
Matthew Mondor [Tue, 9 May 2023 06:50:26 +0000 (06:50 +0000)]
AnalogTerm2: Rework the default font f glyph
Matthew Mondor [Tue, 9 May 2023 05:33:16 +0000 (05:33 +0000)]
AnalogTerm2: Fix a cursor refresh bug in the [A implementation.
Matthew Mondor [Tue, 9 May 2023 04:25:12 +0000 (04:25 +0000)]
AnalogTerm2: Add a special ATC sequence to control if CIVIS allowed.
Matthew Mondor [Tue, 9 May 2023 02:41:42 +0000 (02:41 +0000)]
AnalogTerm2: Add a special ATC sequence to configure text speed.
Matthew Mondor [Tue, 9 May 2023 01:48:52 +0000 (01:48 +0000)]
AnalogTerm2: Add a font inspired by the Demon Seed 1977 film.
Matthew Mondor [Sun, 7 May 2023 20:04:18 +0000 (20:04 +0000)]
AnalogTerm2: Implement emulation input sequence timeout.
Without this a partial received sequence might appear to block
more input until a recognized end of sequence boundary character
would be read. If the timeout expires, the partial sequence is
ignored and normal input resumes.
Matthew Mondor [Sun, 7 May 2023 17:23:48 +0000 (17:23 +0000)]
AnalogTerm2: Cursor and text blinking now separately configurable.
Matthew Mondor [Sun, 7 May 2023 01:29:10 +0000 (01:29 +0000)]
AnalogTerm2: Remember blink speed setting per VT520 cursor type.
Matthew Mondor [Thu, 4 May 2023 05:32:43 +0000 (05:32 +0000)]
AnalogTerm2:
- Revert a purported bugfix that did not actually work.
- Alter X and Y glyphs of the Topaz-inspired font that could not
be properly expressed with the matrix size and looked odd.
Matthew Mondor [Tue, 2 May 2023 18:28:15 +0000 (18:28 +0000)]
AnalogTerm2: Fix a partial refresh bug affecting command line editing
Matthew Mondor [Tue, 2 May 2023 15:40:31 +0000 (15:40 +0000)]
AnalogTerm2: Altered "nosquare" font's M glyph
Matthew Mondor [Tue, 2 May 2023 07:00:02 +0000 (07:00 +0000)]
AnalogTerm2: Fix makefile install for fonts
Matthew Mondor [Tue, 2 May 2023 06:58:22 +0000 (06:58 +0000)]
AnalogTerm2: Added control sequences for uppercase and scroll skip
Matthew Mondor [Fri, 28 Apr 2023 23:15:28 +0000 (23:15 +0000)]
AnalogTerm2: Monochrome mode now simulates color intensity with luma.
Matthew Mondor [Thu, 27 Apr 2023 00:58:03 +0000 (00:58 +0000)]
AnalogTerm2: Adapt smooth scrolling disabled cursor delay to steps
Matthew Mondor [Wed, 26 Apr 2023 14:45:30 +0000 (14:45 +0000)]
AnalogTerm2: Add -2 option for 2-pixel skip smooth scrolling.
Matthew Mondor [Wed, 26 Apr 2023 05:30:24 +0000 (05:30 +0000)]
AnalogTerm2: Fix font loading bug erroneously going through mapping
Matthew Mondor [Wed, 26 Apr 2023 04:34:48 +0000 (04:34 +0000)]
AnalogTerm2:
- No longer enforce bright cursor when switching to block mode
and reflect user configuration choice instead.
- Automatically set a reasonable fullscreen window if the
dimensions are unspecified (-1).
Matthew Mondor [Wed, 26 Apr 2023 01:42:34 +0000 (01:42 +0000)]
AnalogTerm2: don't try to uppercase with -U if in DEC Gfx mode.
Matthew Mondor [Tue, 25 Apr 2023 20:01:41 +0000 (20:01 +0000)]
AnalogTerm2: Add license text headers.
Matthew Mondor [Tue, 25 Apr 2023 19:34:45 +0000 (19:34 +0000)]
AnalogTerm2: improve the smooth scrolling implementation.
Matthew Mondor [Thu, 20 Apr 2023 15:29:11 +0000 (15:29 +0000)]
AnalogTerm2: Terminal emulation improvements
- Fixes some cursor update bugs that were most noticeable when
enabling slow bps simulation.
- 'E' handling was erroneous.
Matthew Mondor [Thu, 20 Apr 2023 03:46:49 +0000 (03:46 +0000)]
AnalogTerm2: Add input control flow for smooth scrolling.
Matthew Mondor [Thu, 20 Apr 2023 01:06:53 +0000 (01:06 +0000)]
AnalogTerm2: Implement smooth scrolling support. Improve comments.
Matthew Mondor [Tue, 18 Apr 2023 11:15:32 +0000 (11:15 +0000)]
AnalogTerm2: Improve usage text.
Matthew Mondor [Tue, 18 Apr 2023 10:22:46 +0000 (10:22 +0000)]
AnalogTerm2: Support asymmetric on/off blinking parameters.
Matthew Mondor [Tue, 18 Apr 2023 02:26:36 +0000 (02:26 +0000)]
AnalogTerm2: Add -U to convert screen output to uppercase.
Matthew Mondor [Tue, 18 Apr 2023 00:35:44 +0000 (00:35 +0000)]
AnalogTerm2: Add optional low bandwidth/bps simulation.
Matthew Mondor [Mon, 17 Apr 2023 20:57:27 +0000 (20:57 +0000)]
AnalogTerm2: Improve configuration and related configuration.
- When fast/jump scroll is enabled, make the number of maximum
lines to scroll configurable.
- Increase the configuration range for -r (can now go as low
as 10fps).
- Makefile now installs example alternative font files that can
be loaded using cat(1).
- Better document the dependency of various settings on -r in
the command usage/help.
Matthew Mondor [Sun, 16 Apr 2023 09:19:07 +0000 (09:19 +0000)]
Ascender: blink avatar, add ship
Matthew Mondor [Sun, 16 Apr 2023 08:40:59 +0000 (08:40 +0000)]
Ascender: fun with collisions, now considers space empty
Matthew Mondor [Sun, 16 Apr 2023 07:07:26 +0000 (07:07 +0000)]
Ascender: more fun tests with shapes and attributes
Matthew Mondor [Sat, 15 Apr 2023 23:39:50 +0000 (23:39 +0000)]
Ascender: fun with shapes and ships
Matthew Mondor [Sat, 15 Apr 2023 20:00:01 +0000 (20:00 +0000)]
Ascender: Disable color or attributes when unsupported or asked