summaryrefslogtreecommitdiffstats
path: root/sys/i386/isa/vesa.c
Commit message (Collapse)AuthorAgeFilesLines
* Don't ignore VESA modes that have the NON-VGA bit set. All of the SVGAjhb2000-10-281-2/+1
| | | | | graphical modes on some systems have this bit set causing our VESA code to ignore them.
* - Include opt_vesa.h in vesa.c so that the VESA_DEBUG option is actuallyjhb2000-10-061-1/+15
| | | | | propagated from the kernel config file to the source. - Add some more debug messages to list each mode that is rejected or found.
* Use config's conditional compilation rather than using #ifdefs that makepeter2000-01-291-9/+2
| | | | | modular compilation harder. I'm doing this because people seem to like cut/pasting examples of bad practices in existing code.
* Fix the ioctl CONS_FINDMODE and its underlying subroutineyokota1999-12-071-5/+6
| | | | | | | | | | xxx_query_mode() in the vga and vesa drivers. - xxx_query_mode() returns 0 (success) and a positive error number. - Copy mode information on success. - Remove redundant structure copy. The bug first found in -STABLE by jmg.
* Do not call the VESA BIOS if the current video mode is not one ofyokota1999-09-021-0/+6
| | | | the VESA modes.
* $Id$ -> $FreeBSD$peter1999-08-281-1/+1
|
* - Set the correct value to va_line_width while in the ioctlyokota1999-08-271-6/+17
| | | | FBIO_SETLINEWIDTH.
* - Ouch! Do not assume the VESA BIOS will preserve the upper 16 bitsyokota1999-08-271-20/+20
| | | | of EAX and EBX.
* Fix some warnings, unused functions etc.peter1999-07-011-9/+17
|
* The second phase of syscons reorganization.yokota1999-06-221-102/+566
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - 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.
* Unifdef VM86.jlemon1999-06-011-4/+3
| | | | Reviewed by: silence on on -current
* Always use the module system, rather than in an #ifdef.peter1999-05-091-10/+1
|
* Follow up to the recent vm86 change in rev. 1.19.yokota1999-03-311-6/+8
| | | | | | - Make a copy of the information block returned in the vm86 space by the VESA BIOS init function. Otherwise it will be overwritten by subsequent BIOS calls in the same vm86 context.
* Another round of fix for palette loading.yokota1999-03-291-8/+39
| | | | | | - Don't try to change DAC width when unnecessary. - Convert 8 bit DAC data to 6 bit DAC data before unloading the vesa KLD module.
* Cast (u_char *) to (vm_offset_t) to silence compiler warnings.jlemon1999-03-181-6/+6
|
* Update to use the modified vm86_datacall interface.jlemon1999-03-181-21/+27
|
* Make sure the DAC palette width is restored to 6 bit.yokota1999-02-201-5/+8
|
* Oops, the last commit contained a wrong patch. This is the correct one.yokota1999-02-051-9/+24
|
* - Don't assume the line length in the video memory is always the same asyokota1999-02-051-6/+44
| | | | | | | 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.
* Don't forget copying video mode flags to the adapter info. block whenyokota1999-01-171-1/+2
| | | | changing video modes.
* Fix palette save/load functions.yokota1999-01-161-21/+41
| | | | | # They have been unchanged since the introduction of the VESA support. # But, we started seeing the problem only recently ;-<
* Oops, I accidentaly left the debug option on by default.yokota1999-01-131-2/+2
| | | | It's set to off now.
* The first stage of console driver reorganization: activate newyokota1999-01-111-132/+240
| | | | | | | | | | | | | keyboard and video card drivers. Because of the changes, you are required to update your kernel configuration file now! The files in sys/dev/syscons are still i386-specific (but less so than before), and won't compile for alpha and PC98 yet. syscons still directly accesses the video card registers here and there; this will be rectified in the later stages.
* Correct typo in macro name.des1999-01-011-2/+2
|
* Make the VESA KLD module work!yokota1998-12-301-28/+34
|
* The "easy" fixes for compiling the kernel -Wunused: remove unreferenced staticarchie1998-12-071-3/+3
| | | | and local variables, goto labels, and functions declared but not defined.
* A size field returned by the VESA BIOS is already expressed in bytes.yokota1998-10-021-2/+2
| | | | Submitted by: sos
* Yet another round of fixes for the VESA support code.yokota1998-10-011-22/+59
| | | | | | | | | | | | | | - Express various sizes in bytes, rather than Kbytes, in the video mode and adapter information structures. - Fill 0 in the linear buffer size field if the linear frame buffer is not available. - Remove SW_VESA_USER ioctl. It is still experimetal and was not meant to be released. - Fix missing cast operator. - Correctly handle pointers returned by the VESA BIOS. The pointers may point to the area either in the BIOS ROM or in the buffer supplied by the caller. - Set the destructive cursor at the right moment.
* Restore v1.3 - page align workaround moved to vm86_datacall nowache1998-09-291-14/+5
|
* cosmetique - remove unneded static in previous commitache1998-09-291-2/+2
|
* workaround painful vm86_datacall requirement that segment+offsetache1998-09-291-5/+14
| | | | must be withing the same PAGE frame
* Cosmetic change: adjust copyright notice.yokota1998-09-251-17/+14
|
* Fix and update for VESA BIOS support in syscons.yokota1998-09-231-10/+43
| | | | | | | | | | | | | | | | - Handle pixel (raster text) mode properly. - Clear screen and paint border right. - Paint text attribute (colors). - Fix off-by-one errors. - Add some sanity checks. - Fix some function prototypes. - Add some comment lines. - Define generic text mode numbers so that the user can just give "80x25", "80x60", "132x25"..., rather than "VGA_xxx", to `vidcontrol' to change the current video mode. `vidoio.c' and `vesa.c' will map these numbers to real video mode numbers appropriate and available with the given video hardware. I believe this will be useful to make syscons more portable across archtectures.
* Add VESA support to syscons.sos1998-09-151-0/+868
Kazu writes: The VESA support code requires vm86 support. Make sure your kernel configuration file has the following line. options "VM86" If you want to statically link the VESA support code to the kernel, add the following option to the kernel configuration file. options "VESA" The vidcontrol command now accepts the following video mode names: VESA_132x25, VESA_132x43, VESA_132x50, VESA_132x60, VESA_800x600 The VESA_800x600 mode is a raster display mode. The 80x25 text will be displayed on the 800x600 screen. Useful for some laptop computers. vidcontrol accepts the new `-i <info>' option, where <info> must be either `adapter' or `mode'. When the `-i adapter' option is given, vidcontrol will print basic information (not much) on the video adapter. When the `-i mode' option is specified, vidcontrol will list video modes which are actually supported by the video adapter. Submitted by: Kazutaka YOKOTA yokota@FreeBSD.ORG
OpenPOWER on IntegriCloud