| History log of /src/sys/dev/wscons/wsemul_sun.c |
| Revision | | Date | Author | Comments |
| 1.34 |
| 01-Jan-2022 |
hannken | Protect KASSERT() with "#ifdef DIAGNOSTIC" as its expression is undefined otherwise.
|
| 1.33 |
| 03-Sep-2018 |
riastradh | Rename min/max -> uimin/uimax for better honesty.
These functions are defined on unsigned int. The generic name min/max should not silently truncate to 32 bits on 64-bit systems. This is purely a name change -- no functional change intended.
HOWEVER! Some subsystems have
#define min(a, b) ((a) < (b) ? (a) : (b)) #define max(a, b) ((a) > (b) ? (a) : (b))
even though our standard name for that is MIN/MAX. Although these may invite multiple evaluation bugs, these do _not_ cause integer truncation.
To avoid `fixing' these cases, I first changed the name in libkern, and then compile-tested every file where min/max occurred in order to confirm that it failed -- and thus confirm that nothing shadowed min/max -- before changing it.
I have left a handful of bootloaders that are too annoying to compile-test, and some dead code:
cobalt ews4800mips hp300 hppa ia64 luna68k vax acorn32/if_ie.c (not included in any kernels) macppc/if_gm.c (superseded by gem(4))
It should be easy to fix the fallout once identified -- this way of doing things fails safe, and the goal here, after all, is to _avoid_ silent integer truncations, not introduce them.
Maybe one day we can reintroduce min/max as type-generic things that never silently truncate. But we should avoid doing that for a while, so that existing code has a chance to be detected by the compiler for conversion to uimin/uimax without changing the semantics until we can properly audit it all. (Who knows, maybe in some cases integer truncation is actually intended!)
|
| 1.32 |
| 03-Nov-2017 |
maya | branches: 1.32.2; 1.32.4; Use c99 initializer for wsemul_ops
|
| 1.31 |
| 03-Nov-2017 |
maya | Don't #ifdef DIAGNOSTIC around KASSERTs.
the definition of KASSERT does the same thing
|
| 1.30 |
| 19-May-2017 |
macallan | add support for loading fonts in vcons and subsequently resizing screens - drivers can use this by setting VCONS_LOADFONT and WSSCREEN_RESIZE - each vcons screen can now have its own font and geometry - while there, add support for xterm's ESC[18t to report the text buffer's size
With this tou can: wsfontload -N foo /usr/share/wscons/fonts/flori.816 wsconsctl -dw font=foo currently this is limited to drivers that don't use the glyph cache, like genfb
|
| 1.29 |
| 08-Nov-2015 |
christos | Untangle.
|
| 1.28 |
| 12-Mar-2010 |
jdc | branches: 1.28.20; 1.28.38; Add mappings for KS_End/KS_KP_End, so that the `End' key actually does something.
|
| 1.27 |
| 28-Jan-2010 |
drochner | branches: 1.27.2; -rename the "KS_GROUP_Ascii" key symbol category to "Plain" because this is what it meant all the time -- it includes characters >127 -delegate translation of all key symbols >127 to the terminal emulation layer -- formerly everything non-special was passed to the tty subsystem directly, involving truncation to a "char", which effectively meant some ISO-1 assumption
|
| 1.26 |
| 16-Nov-2006 |
christos | branches: 1.26.52; 1.26.64; 1.26.72; __unused removal on arguments; approved by core.
|
| 1.25 |
| 12-Oct-2006 |
christos | - sprinkle __unused on function decls. - fix a couple of unused bugs - no more -Wno-unused for i386
|
| 1.24 |
| 28-Aug-2006 |
christos | branches: 1.24.2; 1.24.4; fix incomplete struct decl.
|
| 1.23 |
| 11-Dec-2005 |
christos | branches: 1.23.4; 1.23.8; merge ktrace-lwp.
|
| 1.22 |
| 30-May-2005 |
christos | branches: 1.22.2; add const.
|
| 1.21 |
| 30-May-2005 |
martin | Adapt to recent constification.
|
| 1.20 |
| 25-May-2005 |
martin | If the driver supports reverse, try that first - even on color displays. This removes a XXX and makes us independent of the users default colors.
|
| 1.19 |
| 03-Aug-2004 |
he | branches: 1.19.10; Remove include of "opt_wsmsgattrs.h" here, since that's already done by wsdisplayvar.h. Fixes build problem for sparc.
|
| 1.18 |
| 28-Jul-2004 |
jmmv | Implement support to dynamically change wscons console and kernel colors.
Two new ioctls are added to the wsdisplay device, named WSDISPLAY_GMSGATTRS and WSDISPLAY_SMSGATTRS, used to retrieve the actual values and set them, respectively (the name, if you are wondering, comes from "message attributes").
A new emulop is added to the underlying display driver (only vga, for now) which sets the new attribute for the whole screen, without having to clear it. This is optional, which means that this also works with other drivers that don't have this new operation.
Five new kernel options have been added, although only documented in i386 kernels (for now): - WSDISPLAY_CUSTOM_OUTPUT, which enables the ioctls described above to change the colors dynamically from userland. This is enabled by default in the GENERIC kernel (as well as others) but disabled on all INSTALL* kernels (as this feature is useless there). - WS_DEFAULT_COLATTR, WS_DEFAULT_MONOATTR, WS_DEFAULT_BG and WS_DEFAULT_FG, which specify the default colors for the console at boot time. These have the same meaning as the (already existing) WS_KERNEL_* variables.
wsconsctl is modified to add msg.default.{attrs,bg,fg} and msg.kernel.{attrs,bg,fg} to the display part, so that colors can be changed after boot.
Tested on NetBSD/i386 with vga (and vga in mono mode), and on NetBSD/mac68k. No objections in tech-kern@.
|
| 1.17 |
| 27-Sep-2002 |
provos | branches: 1.17.6; remove trailing \n in panic(). approved perry.
|
| 1.16 |
| 09-Jul-2002 |
junyoung | switch/case KNF.
|
| 1.15 |
| 04-Jul-2002 |
junyoung | alloc_attr -> allocattr
Approved by Matthias Drochner.
|
| 1.14 |
| 14-Oct-2001 |
veego | branches: 1.14.10; Fix a pasto in the last revision.
|
| 1.13 |
| 13-Oct-2001 |
augustss | ANSIfy.
|
| 1.12 |
| 21-Feb-2001 |
jdolecek | branches: 1.12.2; 1.12.4; don't panic if there is ESC in kernel output, just print a warning and ignore the ESC; also remove the #ifdef DIAGNOSTIC
|
| 1.11 |
| 05-Jan-2000 |
drochner | replace embedded _rcsid[] string by __KERNEL_RCSID(), remove _copyright[]
|
| 1.10 |
| 17-Jan-1999 |
drochner | branches: 1.10.8; define a "clear screen" command to the emulator and complete the emulation's "reset" implementations as far as useful
|
| 1.9 |
| 10-Jan-1999 |
augustss | Change from bcopy/bzero to memxxx. From PR 6778 by Erik Bertelsen <erik@q610.ebe.uni-c.dk>.
|
| 1.8 |
| 20-Jun-1998 |
drochner | Change the calling interface for text output (to the graphics driver) to take a single character at a time, where the character is an "int" now. The old interface (took a string) was never called with more than 1 char to print, and the "int" allows us to handle charsets cleanly.
|
| 1.7 |
| 20-Jun-1998 |
drochner | add some more ASCII definitions, move NP->FF for consistency
|
| 1.6 |
| 15-Jun-1998 |
drochner | Move the translation of keypad and function keys into the realm of the terminal emulation. For this, change the interface to wsdisplay_kbdinput() to take a "keysym_t" as argument. From there, the code is handed to the appropriate emulation module via a new entry point: "translate". Nuke the ioctls dealing with global assignment of character sequences to keypad/function keys. The "sun" emulation works much better now!
|
| 1.5 |
| 24-May-1998 |
drochner | fix "Cursor Next Line (CNL)" (did the opposite)
|
| 1.4 |
| 19-May-1998 |
drochner | Initialize the "curattr" member of the emulation data in early console setup -- it is used to fill empty space. Fixes 2/3 of PR kern/5457 (Jason Thorpe).
|
| 1.3 |
| 14-May-1998 |
drochner | Simple screen attribute handling for wscons. The graphics device driver passes a "default attribute" for normal text output to the wscons framework. If the emulation module needs more attributes (for different "renditions") it can allocate them via a callback. For now, only the "sun" emulation makes use of it.
|
| 1.2 |
| 27-Mar-1998 |
drochner | fix max() vs min() confusion at 2 places
|
| 1.1 |
| 22-Mar-1998 |
drochner | Initial import of cgd's new wscons code.
|
| 1.10.8.2 |
| 12-Mar-2001 |
bouyer | Sync with HEAD.
|
| 1.10.8.1 |
| 20-Nov-2000 |
bouyer | Update thorpej_scsipi to -current as of a month ago A i386 GENERIC kernel compiles without the siop, ahc and bha drivers (will be updated later). i386 IDE/ATAPI and ncr work, as well as sparc/esp_sbus. alpha should work as well (untested yet). siop, ahc and bha will be updated once I've updated the branch to current -current, as well as machine-dependant code.
|
| 1.12.4.3 |
| 10-Oct-2002 |
jdolecek | sync kqueue with -current; this includes merge of gehenna-devsw branch, merge of i386 MP branch, and part of autoconf rototil work
|
| 1.12.4.2 |
| 06-Sep-2002 |
jdolecek | sync kqueue branch with HEAD
|
| 1.12.4.1 |
| 10-Jan-2002 |
thorpej | Sync kqueue branch with -current.
|
| 1.12.2.3 |
| 18-Oct-2002 |
nathanw | Catch up to -current.
|
| 1.12.2.2 |
| 01-Aug-2002 |
nathanw | Catch up to -current.
|
| 1.12.2.1 |
| 22-Oct-2001 |
nathanw | Catch up to -current.
|
| 1.14.10.1 |
| 15-Jul-2002 |
gehenna | catch up with -current.
|
| 1.17.6.5 |
| 10-Nov-2005 |
skrll | Sync with HEAD. Here we go again...
|
| 1.17.6.4 |
| 21-Sep-2004 |
skrll | Fix the sync with head I botched.
|
| 1.17.6.3 |
| 18-Sep-2004 |
skrll | Sync with HEAD.
|
| 1.17.6.2 |
| 12-Aug-2004 |
skrll | Sync with HEAD.
|
| 1.17.6.1 |
| 03-Aug-2004 |
skrll | Sync with HEAD
|
| 1.19.10.1 |
| 07-Jun-2005 |
tron | Pull up revision 1.20 (requested by martin in ticket #374): If the driver supports reverse, try that first - even on color displays. This removes a XXX and makes us independent of the users default colors.
|
| 1.22.2.1 |
| 30-Dec-2006 |
yamt | sync with head.
|
| 1.23.8.1 |
| 03-Sep-2006 |
yamt | sync with head.
|
| 1.23.4.1 |
| 09-Sep-2006 |
rpaulo | sync with head
|
| 1.24.4.2 |
| 10-Dec-2006 |
yamt | sync with head.
|
| 1.24.4.1 |
| 22-Oct-2006 |
yamt | sync with head
|
| 1.24.2.1 |
| 18-Nov-2006 |
ad | Sync with head.
|
| 1.26.72.1 |
| 21-Apr-2010 |
matt | sync to netbsd-5
|
| 1.26.64.1 |
| 17-Mar-2010 |
snj | Pull up following revision(s) (requested by jdc in ticket #1340): sys/dev/wscons/wsemul_sun.c: revision 1.28 Add mappings for KS_End/KS_KP_End, so that the `End' key actually does something.
|
| 1.26.52.2 |
| 11-Aug-2010 |
yamt | sync with head.
|
| 1.26.52.1 |
| 11-Mar-2010 |
yamt | sync with head
|
| 1.27.2.1 |
| 30-Apr-2010 |
uebayasi | Sync with HEAD.
|
| 1.28.38.2 |
| 28-Aug-2017 |
skrll | Sync with HEAD
|
| 1.28.38.1 |
| 27-Dec-2015 |
skrll | Sync with HEAD (as of 26th Dec)
|
| 1.28.20.1 |
| 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.32.4.1 |
| 10-Jun-2019 |
christos | Sync with HEAD
|
| 1.32.2.1 |
| 06-Sep-2018 |
pgoyette | Sync with HEAD
Resolve a couple of conflicts (result of the uimin/uimax changes)
|