Source-Changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
CVS commit: src/sys
Module Name: src
Committed By: tsutsui
Date: Sun Sep 20 10:29:12 UTC 2026
Modified Files:
src/sys/arch/news68k/conf: GENERIC GENERIC_TINY INSTALL files.news68k
src/sys/arch/news68k/dev: kb.c kb_hb.c kb_kbc.c kbvar.h
src/sys/arch/news68k/news68k: machdep.c
src/sys/dev/wscons: wsconsio.h
Added Files:
src/sys/arch/news68k/dev: fbbm.c nwb225reg.h
Log Message:
news68k: add wsdisplay(9) support for NWB-225 framebuffer console
In its 27th year in the NetBSD source tree, news68k finally
gets wsdisplay(9) support for its native framebuffer console.
Character output is implemented directly by the driver and
does not rely on PROM routines.
Add fbbm(4) driver for the NWB-225 framebuffer used on NWS-1750.
The NWB-225 does not provide a CPU-accessible linear framebuffer
so we cannot use MI rasops(9) to support wscons(9). Instead,
implement wsdisplay_emulops directly with the board's ROP engine,
using VRAM-to-VRAM copy, constant fill, and host-to-VRAM write
operations for cursor handling, scrolling, erasing, and putchar.
The ROP programming sequences and function encodings were taken
from NEWS-OS binaries and the NWS-1750 PROM, and checked against
the ROP command model documented in the Sony NWS-15x0 service manual.
The initial console support uses printable US-ASCII glyphs from the
framebuffer's built-in KROM and supports only normal and reverse
attributes. It does not provide a general-purpose framebuffer mapping,
downloadable fonts, or X server support (yet).
Tested the basic wsdisplay(9) VT100 operations on an NWB-225 on
my NWS-1750, including character output, normal and reverse text,
partial and full-screen erasing, horizontal and vertical copies,
cursor handling, and repeated scrolling.
Demonstrated at Open Source Conference 2026 Hiroshima with the
private (not committed) FBBMIO_HWRITE ioctl for transferring
1-bpp host bitmap rectangles to the framebuffer for 'monoGIFplay',
a monochrome animated GIF player for 1-bpp framebuffers.
To generate a diff of this commit:
cvs rdiff -u -r1.142 -r1.143 src/sys/arch/news68k/conf/GENERIC
cvs rdiff -u -r1.94 -r1.95 src/sys/arch/news68k/conf/GENERIC_TINY
cvs rdiff -u -r1.67 -r1.68 src/sys/arch/news68k/conf/INSTALL
cvs rdiff -u -r1.58 -r1.59 src/sys/arch/news68k/conf/files.news68k
cvs rdiff -u -r0 -r1.1 src/sys/arch/news68k/dev/fbbm.c \
src/sys/arch/news68k/dev/nwb225reg.h
cvs rdiff -u -r1.9 -r1.10 src/sys/arch/news68k/dev/kb.c
cvs rdiff -u -r1.16 -r1.17 src/sys/arch/news68k/dev/kb_hb.c
cvs rdiff -u -r1.12 -r1.13 src/sys/arch/news68k/dev/kb_kbc.c
cvs rdiff -u -r1.3 -r1.4 src/sys/arch/news68k/dev/kbvar.h
cvs rdiff -u -r1.143 -r1.144 src/sys/arch/news68k/news68k/machdep.c
cvs rdiff -u -r1.132 -r1.133 src/sys/dev/wscons/wsconsio.h
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Home |
Main Index |
Thread Index |
Old Index