Commit Graph

45 Commits

Author SHA1 Message Date
reinoud 1351706593 Fix a few race conditions ... the VSYNC update flag could be cleared
resulting in a blank screen when f.e. a setcursor ioctl was called
after the screenblanker had enabled the screen again ... the actual
switching on was then never performed at VSYNC.

A simple |= instead of = does the trick ... just leave the other bits
on please :)
2001-04-20 11:53:06 +00:00
nisimura ab8c4071cc Void-filling to honour SVIDEO ioctl call. 2001-02-19 09:11:11 +00:00
nisimura b4ef15f3bc - paint underline on text honouring WSSCREEN_UNDERLINE.
- use accellerated painting for text cursor, should improve speed.
2001-01-19 05:43:43 +00:00
nisimura bd7039cbdb - relocate the code to place sprite cursor inside interrupt handlers
called on every virtical replace.
- efforts to make the code strucutures similar across TC framebuffers.
2001-01-16 05:32:16 +00:00
nisimura 452e3d1a2f fix a typo and rearrange a comment about SFB register aliasing effect. 2001-01-15 09:41:57 +00:00
nisimura 3a6d3e0771 use ri_devcmap[] values directly, instead of calling rasops_unpack_attr().
-
2001-01-15 09:37:42 +00:00
nisimura 2e93099aff Replace sfb_copycols() which can run better job in some degree.
It still fails on certain conditions, thus is left commented out.
copycols() is done by a generic routine which works correctly.
2000-11-25 11:43:42 +00:00
nisimura 8a54846748 Fix errors in initializing the software copy of 256 entry colormap
stored in device softc.  rasops_cmap[] array is orginazed in 256
iteration of 3 byte long RBG triplet, which does not match with
struct wsdisplay_cmap design.
2000-10-27 07:24:04 +00:00
mrg a14baa8257 remove include of <vm/vm.h>. <vm/vm.h> -> <uvm/uvm_extern.h> 2000-06-28 17:05:20 +00:00
simonb 889c658b5b Change the kernel mmap interface so that the offset to map is an
"off_t" and the return value is a "paddr_t" to allow mappings
at offsets past 2^31 bytes.  Somewhat inspired by FreeBSD, which
only changed the offset to a "vm_offset_t".

Includes updates for the i386, pc532 and sh3 mmmmap from Jason Thorpe.
2000-06-26 04:55:19 +00:00
nisimura 0b765ee6f8 Retain rendering performance lossage by rasops, but suffering
flexibility in turn; this renderer is 2B stroke (less than 16 pixel
width) font only.  If 1B stroke (less than 8 pixel width) font is
ever supported, the font data should be converted into 2B stroke
during font initialization process.  'wsfont_realize()' is to be
proposed in order to have 'CPU and/or accelerator hardware friendly'
format to squeeze maxinum performance.
2000-03-16 05:48:28 +00:00
nisimura 3e02ded337 Improvement on SFB enabled copycol(); still yet under development,
it miserably fails on corner cases.
2000-02-18 06:51:51 +00:00
enami cadfd97e07 Replace WSFONT_L2R/R2L with WSDISPLAY_FONTORDER_L2R/R2L. 2000-01-07 02:57:17 +00:00
ad ea17a0d147 Remove part of a bogus comment and put it in a more appropiate spot. 1999-12-16 15:07:00 +00:00
ad f607dfe4dd - Change prefix for Bt459 register defs to BT459_IREG to indicate that
these are indirectly accessed registers.
- Add defs for directly accessed registers to bt459reg.h.
1999-12-15 15:09:36 +00:00
drochner 0893832078 update for changed struct wsdisplay_accessops:show_screen signature.
no functional changes
1999-12-06 19:25:56 +00:00
drochner c3026431e3 some cleanup:
-don't set capabilities at compile time
-since our accelerated putchar() doesn't underline, don't claim so
-remove bogus character range check - fonts are not limited to ASCII
-use rasops_unpack_attr() instead of relying on rasops internals
1999-12-04 14:01:56 +00:00
drochner a00a9ff012 Convert to use rasops/wsfont, enabling colors.
For now, only the "putchar" and "copyrows" accelerations are used.
1999-12-02 23:04:44 +00:00
nisimura 558c978dea Const poisoning. 1999-11-29 07:50:54 +00:00
nisimura 2924b6835a Fix errors in sfb_copycols() of the forward (left-to-right) case. 1999-11-09 08:25:31 +00:00
nisimura 392a4acdd7 - Remove temporary hack to recognize PMAGD since SFB+ rendering function
is found not fully upward compatible to its predecessor.  sfbp.c is now
  under development.
- Reduce copycols() malfunction, but has still lot of troubles.
1999-11-05 03:28:40 +00:00
nisimura 5cf97491d8 Add a temporary kludge to recognize PMAGD (HX+) as 'sfb' hoping 8bpp
configration of it is compatible enough with PMAGB-BA.
1999-10-27 04:32:35 +00:00
nisimura 95c618a810 - Fix bogus cursor drawn by sfb_cursor(). From eye-opening input from R.C.
Dowdeswell.
- Remove write memory barriers in sfb_copyrows() as dst. is always distant
  enough from src. for copying rows.
1999-10-26 10:57:04 +00:00
nisimura 21636a326b Fill always erased regions with bg color. Fix an issue revealed by
"print -n '\033[7m'; ls".
1999-10-22 07:42:05 +00:00
nisimura fd3561cc02 Preliminary import of 'SFB enhanced' text renderer with many caveats
to be corrected.  Text drawing is now improved significantly, but;
cursor is drawn incorrectly, copycols() trashes a screen, 'standout
(\033[7m)' results in lines reversed entirely until '\033[0m', and
possibly more issues.  Not multi-colour, 8bpp only this moment.  Costly
write memory barrier instrunctions should be eliminated using framebuffer
address aliasing technique for NetBSD/alpha.
1999-10-19 09:51:17 +00:00
nisimura 72de8abb0c Arrange loop invariants and fix comment description error. 1999-10-08 02:08:15 +00:00
nisimura 9c2fdffad2 SFB video base register is assigned with an inialial value before use;
according to ULTRIX/OSF1 code.
1999-10-05 09:13:30 +00:00
nisimura 09a2fed6f9 - Show 1bpp for MX during configuration stage.
- Replace memory layout 'struct' with array/pointer access.
1999-06-25 03:33:20 +00:00
nisimura e3b1b88d76 - Errors in case analysis... 1999-06-11 01:44:47 +00:00
nisimura f4be9af151 - Rework copycols() with SFB ASIC calls. 1999-06-11 00:56:09 +00:00
nisimura 1d082ddc15 - Sweep abit preparing for code merge to have common 'vdacops' across
various graphics cards.
1999-05-07 08:00:30 +00:00
nisimura ed7699b360 - Unnecessary to have '#include <machine/autoconf.h>' for those. 1999-03-29 07:22:02 +00:00
mrg d2397ac5f7 completely remove Mach VM support. all that is left is the all the
header files as UVM still uses (most of) these.
1999-03-24 05:50:49 +00:00
nisimura e19cedee17 - Make sfb_emulops standard feature of sfb wscons. Scrolling is now
acceptable.  Still lacks of horizontal copy and glyph rendering with
SFB ASIC assistance.  TGA could be benefitted in the similiar way.
1999-03-02 00:22:42 +00:00
nisimura f85c9832ac - Fix cursor image validity check error in set_cursor(). 1999-03-01 02:45:04 +00:00
nisimura d6715660b7 - Introduce the first cut of faster wsdisplay_emulops exploiting SFB
accelerator potential.  Need more work to finish replacing rcons.
Premilinary tests were done with DECstation and TC Alpha.
1999-02-23 06:34:49 +00:00
nisimura c07be2882b - Make sure SFB ROP register initialized with value 3.
- Turn off video signal during hardware initialization.
1999-02-19 03:42:42 +00:00
thorpej 8ce7166aa3 __pmax__ -> pmax, like other ports. 1999-01-15 23:29:55 +00:00
drochner 1eba733d91 remove dummy "load_font" entries 1999-01-11 21:35:54 +00:00
mrg db3051d720 fix problems in many d_mmap routines:
- returned EOPNOTSUPP rather than -1.
	- no check for negative offset.
many of these fix potential security problems in these drivers.


XXX XXX XXX
the d_mmap cdev routine should be changed to have a prototype like:
	paddr_t (*d_mmap) __P((dev_t, off_t, int));

by someone!
1998-11-19 15:38:20 +00:00
nisimura 4184d87669 - Fix cursor image handling bugs escaped in last commit. 1998-11-18 12:26:31 +00:00
drochner 047a7756d8 use mi register definitions 1998-11-14 16:31:34 +00:00
nisimura 9d716ec821 - Fix many errors in cursor image manipulation. Hardware expect 2
bit/pixel format, not planer format.  Assign MSB for cursor mask and
LSB for cursor image, where 10 means mask color and 11 for image color.
Image bit order of Bt431 and Bt459 are opposite to MIPS/Alpha processors
while IMS G332 and DC503 (PCC) are indentical.
- Assume that cursor images are 32 pixel padded as ULTRIX/DU ws interface
do.  It's natural to X server.
- XXX Vast majority of codes are duplicated between mfb<->tfb and cfb<->sfb.
Code sharing might be achieved in the context of TGA/SFB+ merge.
1998-11-09 03:58:05 +00:00
nisimura 6020153959 - Assign copyright terms. 1998-10-30 00:53:12 +00:00
nisimura e29350c92c - Introduce MI NWSCONS drivers for TURBOchannel framebuffer option cards.
N.B., Digital UNIX never supports neither PMAG-AA (mfb) nor PMAG-BA (cfb)
for TC Alphas.  PMAG-DV (xcfb) is Personal DECstation built in.  All should
be good for console, but need much works for cursor/colormap completeness.
1998-10-29 12:24:24 +00:00