| Age | Commit message (Collapse) | Author |
|
|
|
Otherwise, we can use memcpy safely instead of memmove.
|
|
|
|
|
|
http://mail-index.netbsd.org/source-changes-d/2019/07/29/msg011516.html
There are apparent bugs for shadow framebuffer. Sorry for the breakage.
|
|
only when font width is 12.
We need to use different devcmap for that case, if we wish to share
codes for other depths/font widths as possible as we can.
XXX
What should we do for big endian? I have no big endian machines with
24bpp framebuffer...
|
|
|
|
|
|
|
|
the following fixes:
- stop using memset to framebuffer for depth 8
- correctly support non-standard positions/lengths of RGB bits in pixel
|
|
host integer, found by kUBSan.
Pointed out by msaitoh.
|
|
Style.
|
|
- dedup ugly copy-paste
- rewrite to factorize width-optimized putchar functions
- misc style
|
|
Style.
|
|
XXX
There still remains memset in rasops8.c, which will be removed soon
when putchar_aa functions are factorized.
|
|
Also, misc style/cosmetic changes for clarity.
|
|
|
|
|
|
http://cvsweb.netbsd.org/bsdweb.cgi/src/sys/dev/rasops/rasops_putchar_width.h#rev1.2
in a correct way.
For 24bpp framebuffer, we need to use ``stamp triplets'' even for fully
blank or filled rows.
Now, background-color for white space and underline are correctly drawn.
|
|
rolled back before drawing underline.
|
|
font width is 8 or 16 on 2bpp screen.
|
|
|
|
does not work for device memory on some platforms.
Pointed out by Jared, many thanks!
|
|
1, 2, 4, 8, 15, and 32 color-depths are supported.
ANSI colors on console are functional for depth >= 4.
Graphic applications based on wsfb API should work, provided
they can correctly handle fbi_fboffset and your color depth.
wsfb driver of Xorg 1.20 and mlterm-fb (framebuffer version of
x11/mlterm) work fine for depth == 1 || depth >= 8.
For depth == 8 (256 colors), graphic applications require
colormap callback, which is currently supported for some
internal graphic adapters, and only Civic (found on Quadra
AV series) was tested. Register definition and its usage are
taken from Linux. You can easily support other adapters if
Linux supports that.
Have fun, and any problem reports are welcomed!
|
|
|
|
Modern compilers are smart enough; there's no measurable changes in
performance even on MC68040 with optimization level -Os.
Also, convert loop of byte-wise copy into memset.
|
|
- sort headers
- return error value instead of panic
- use uintptr_t for cast pointer to integer
- use macros appropriately
- use __func__
- some consistency check ifndef DEBUG
- try to avoid undefined behaviors related to shift
- convert malloc/free to kmem_alloc/kmem_free
- convert MIN to uimin
- style
|
|
Add hack so that colorbars(6) works for 24-bpp.
The code before factorization did the same in a strange way.
|
|
rasops_putchar.h and rasops_putchar_width.h, respectively.
XXX
Possibly, we can do the same for putchar_aa functions. But it is
currently missing for 24-bpp.
|
|
both little- and big-endian machines.
WIP genfb(4) driver for mac68k becomes 1.5 times faster!
|
|
|
|
- Make 32bit mask unsigned
- DPRINTF --> __nothing ifndef DEBUG_RASOPS
- "#ifdef DIAGNOSTIC if (x) panic(); #endif" --> KASSERT(!x);
- KNF
No functional changes intended.
|
|
|
|
|
|
No functional changes intended.
Requested by uwe.
|
|
|
|
Calculate them in advance even if it may be bogus.
|
|
|
|
when font width is odd.
|
|
No functional changes intended.
|
|
|
|
- u_char --> uint8_t
- u_int*_t --> uint*_t
No functional changes.
|
|
|
|
putchar functions work correctly.
|
|
|
|
|
|
Prevents segfault when underlining whitespace in the upper left cell.
|
|
|
|
- make upper 4 attribute bits available for such use
- use wscons flag names instead of literal constants.
|
|
- simplify & sanitize the unaligned case
- use only 32bit accesses
... no longer crash with odd sized fonts in 8bit
|