Commit Graph

18 Commits

Author SHA1 Message Date
Kazutaka YOKOTA
6e8394b8ba The second phase of syscons reorganization.
- Split syscons source code into manageable chunks and reorganize
  some of complicated functions.

- Many static variables are moved to the softc structure.

- Added a new key function, PREV.  When this key is pressed, the vty
  immediately before the current vty will become foreground.  Analogue
  to PREV, which is usually assigned to the PrntScrn key.
  PR: kern/10113
  Submitted by: Christian Weisgerber <naddy@mips.rhein-neckar.de>

- Modified the kernel console input function sccngetc() so that it
  handles function keys properly.

- Reorganized the screen update routine.

- VT switching code is reorganized.  It now should be slightly more
  robust than before.

- Added the DEVICE_RESUME function so that syscons no longer hooks the
  APM resume event directly.

- New kernel configuration options: SC_NO_CUTPASTE, SC_NO_FONT_LOADING,
  SC_NO_HISTORY and SC_NO_SYSMOUSE.
  Various parts of syscons can be omitted so that the kernel size is
  reduced.

  SC_PIXEL_MODE
  Made the VESA 800x600 mode an option, rather than a standard part of
  syscons.

  SC_DISABLE_DDBKEY
  Disables the `debug' key combination.

  SC_ALT_MOUSE_IMAGE
  Inverse the character cell at the mouse cursor position in the text
  console, rather than drawing an arrow on the screen.
  Submitted by: Nick Hibma (n_hibma@FreeBSD.ORG)

  SC_DFLT_FONT
  makeoptions "SC_DFLT_FONT=_font_name_"
  Include the named font as the default font of syscons.  16-line,
  14-line and 8-line font data will be compiled in.  This option replaces
  the existing STD8X16FONT option, which loads 16-line font data only.

- The VGA driver is split into /sys/dev/fb/vga.c and /sys/isa/vga_isa.c.

- The video driver provides a set of ioctl commands to manipulate the
  frame buffer.

- New kernel configuration option: VGA_WIDTH90
  Enables 90 column modes: 90x25, 90x30, 90x43, 90x50, 90x60.  These
  modes are mot always supported by the video card.
  PR: i386/7510
  Submitted by: kbyanc@freedomnet.com and alexv@sui.gda.itesm.mx.

- The header file machine/console.h is reorganized; its contents is now
  split into sys/fbio.h, sys/kbio.h (a new file) and sys/consio.h
  (another new file).  machine/console.h is still maintained for
  compatibility reasons.

- Kernel console selection/installation routines are fixed and
  slightly rebumped so that it should now be possible to switch between
  the interanl kernel console (sc or vt) and a remote kernel console
  (sio) again, as it was in 2.x, 3.0 and 3.1.

- Screen savers and splash screen decoders
  Because of the header file reorganization described above, screen
  savers and splash screen decoders are slightly modified.  After this
  update, /sys/modules/syscons/saver.h is no longer necessary and is
  removed.
1999-06-22 14:14:06 +00:00
Kazutaka YOKOTA
5c539f036d Print verbose messages when there is error.
Oked by: des
1999-06-16 14:04:45 +00:00
Poul-Henning Kamp
2447bec829 Simplify cdevsw registration.
The cdevsw_add() function now finds the major number(s) in the
struct cdevsw passed to it.  cdevsw_add_generic() is no longer
needed, cdevsw_add() does the same thing.

cdevsw_add() will print an message if the d_maj field looks bogus.

Remove nblkdev and nchrdev variables.  Most places they were used
bogusly.  Instead check a dev_t for validity by seeing if devsw()
or bdevsw() returns NULL.

Move bdevsw() and devsw() functions to kern/kern_conf.c

Bump __FreeBSD_version to 400006

This commit removes:
        72 bogus makedev() calls
        26 bogus SYSINIT functions

if_xe.c bogusly accessed cdevsw[], author/maintainer please fix.

I4b and vinum not changed.  Patches emailed to authors.  LINT
probably broken until they catch up.
1999-05-31 11:29:30 +00:00
Poul-Henning Kamp
4e2f199e0c This commit should be a extensive NO-OP:
Reformat and initialize correctly all "struct cdevsw".

        Initialize the d_maj and d_bmaj fields.

        The d_reset field was not removed, although it is never used.

I used a program to do most of this, so all the files now use the
same consistent format.  Please keep it that way.

Vinum and i4b not modified, patches emailed to respective authors.
1999-05-30 16:53:49 +00:00
Dag-Erling Smørgrav
7a19b7ed76 PCX loader for pseudo-device splash. 1999-04-12 13:39:11 +00:00
Dag-Erling Smørgrav
601752d5a7 Centralize and reorganize a few macros. 1999-04-12 13:34:58 +00:00
Kazutaka YOKOTA
ccd4815963 Make the splash screen alternate "fade out" and "fade in" action at
regular intervals, when the module is used as a screen saver.

Submitted by: asami
1999-03-29 15:13:53 +00:00
Kazutaka YOKOTA
11b5621ee0 Don't free() a NULL pointer! 1999-03-09 14:23:14 +00:00
Kazutaka YOKOTA
1c27745f73 - Don't assume the line length in the video memory is always the same as
the screen width.
- Store the current video mode information in the `video_adapter' struct.
- The size of the `v_offscreensize' field in the VESA mode information
  block is u_int16, not u_int8.
1999-02-05 11:52:13 +00:00
Kazutaka YOKOTA
6dab3d1e54 Oops, one line was accidentally commented out in the previous commit. 1999-01-26 10:00:02 +00:00
Kazutaka YOKOTA
325fca905e Add VESA mode support. If the VESA support is compiled into the kernel
or the VESA KLD is preloaded by the boot loader, you can load a 256 color
BMP file larger than 320x200.
1999-01-21 18:29:33 +00:00
Kazutaka YOKOTA
f359876ff1 syscons
- Bring down the splash screen when a vty is opened for the first
  time.
- Make sure the splash screen/screen saver is stopped before
  switching vtys.
- Read and save initial values in the BIOS data area early.
  VESA BIOS may change BIOS data values when switching modes.
- Fix missing '&' operator.
- Move ISA specific part of driver initialization to syscons_isa.c.

atkbd
- kbdtables.h is now in /sys/dev/kbd.

all
- Adjust for forthcoming alpha port.  Submitted by: dfr
1999-01-19 11:31:22 +00:00
Kazutaka YOKOTA
15401862e4 Calculate the number of bitmap colors in the correct way.
The bug found by: Kevin Street <street@iname.com>
1999-01-13 09:59:30 +00:00
Kazutaka YOKOTA
90500a9d1a Clean up warnings: get conditional compilation right so that a local
function won't be defined unless it is actually used.
Requested by: eivind
1999-01-12 10:35:58 +00:00
Kazutaka YOKOTA
61329bcee4 Update the pointer into the bitmap correctly. The previous code
had the pointer off by 4 bytes if the width of the bitmap is
a multiple of four.
1999-01-11 17:32:22 +00:00
Kazutaka YOKOTA
1243dad08d Add splash screen module. This version has rather limited
capabilities, but should be a good start... Well, sort of.

It can handle W*ndows 256 color BMP file.  (Other color depth probably
won't work.) The size of the image must be 320x200 or less.  *sigh*
1999-01-11 03:34:56 +00:00
Kazutaka YOKOTA
559e7c1b0c Oops, I committed wrong version of these files in the last commit!
Here are the correct, and up-top-date ones.
1999-01-11 03:06:28 +00:00
Kazutaka YOKOTA
617b908036 Add the new keyboard driver and video card driver. They will be
used by console drivers.

(They are not yet activated yet.  Wait for announcement later.)
1999-01-09 02:44:50 +00:00