Continuation of Newcons project
Newcons project aimed to replace old graphic virtual terminal named
"syscons". Its main points is: support UTF characters and to move away
dependence from fixed graphic modes (VGA, VESA) and from machine's
built-in services like BIOS.
Project originally started by Ed Schouten, and in 2013 was already have:
- UTF font with Latin, Cyrillic and some more simple character sets;
- UTF output support;
- Graphic mode support;
- Text mode support;
- Sysmouse (w/o copy-paste);
- Many more ...
New implemented items:
- History - ability to scroll via terminal history. Old, separate
history buffer was removed;
- History circle buffer - no buffer overflow, "unlimited scroll";
- VT_PROCESS mode - Way to hold terminal from switching (f.e. Xorg
use it to prevent terminal switching);
- drm2/fb_helper driver - A.K.A. KMS driver. Bind Newcons to
framebuffers "made by" drm2 covered video drivers (i915/radeon);
- Dynamic VT driver attachment, vt_allocate(...) - allow to attach
console video driver later, at point where framebuffer owner
will be initializing. (KMS and devices w/o early graphics
support).
Supported startup modes for KMS:
- Start w/o VT graphics drivers, then load KMS (kldload i915kms or
radeonkms);
- Start w/ VGA, then load KMS;
- Preload KMS, then KMS driver will be attached as output;
- Preload KMS, start w/ VGA, then KMS driver will replace VGA
output.
Any help on testing are welcomed!!!
This project is being sponsored by The FreeBSD Foundation.
Many thanks to Ed Schouten, who start Newcons project and did most work.
- Generic Framebuffer interface - simple interface to give FB
access to userland (/dev/fb*) and automatic handling by Newcons
VT(9);
- Mouse support - Copy/Paste using sysmouse;
- Improve locking;
- Bug fixes;
- HEAD Integration;
- 10.0 Integration;
- Mapping non-ASCII characters to UTF on keyboard input;
- Adapt existing screen savers.
TESTING
Please use project branch
http://svn.freebsd.org/base/user/ed/newcons/
it close enough to HEAD (at least now, 10 Oct 2013)
or HEAD with
Patch to HEAD (r256148).
In case you want to play with KMS on ATI Radeon video, you have to apply Jean's patch too:
Radeon KMS framebuffer patch