History log of /src/sys/arch/luna68k/dev/omrasopsvar.h |
Revision | | Date | Author | Comments |
1.8 |
| 03-Oct-2022 |
tsutsui | Remove global hwplanecount and use ri_depth in struct rasops instead.
No functional change.
|
1.7 |
| 01-Oct-2022 |
tsutsui | Remove trailing whitespaces.
|
1.6 |
| 25-Sep-2022 |
isaki | lunafb: Improve drawing performance using VRAM ROP features. - Drawing a character on 4bpp normally needs 4 times writes, but by using VRAM ROP actively, it can be reduced to write only once. The same goes for copyrows. If the whole row consists of only two colors (one foreground and one background), it can be copied by reading once and writing once, regardless of the number of planes. Only if the row consists of more than two colors, it will be copied plane by plane. - On 8bpp board, it acts as 4bpp (16 colors). - On 4bpp board on the real LUNA-I(68030/20MHz), monochrome scroll is about 4 times faster even without asm. Using asm improves it by additional 5% (asm is enabled by default). - By tsutsui@-san's report, even color scroll is about about 2 times faster on his 8bpp board on the real LUNA-II(68040). This was first developped by Y.Sugahara back in late 2019, and was modified a lot by me in 2022. http://mail-index.netbsd.org/port-luna68k/2022/09/23/msg000072.html
|
1.5 |
| 22-Sep-2019 |
rin | Spell out "Hitachi" correctly in comment. No binary changes.
|
1.4 |
| 30-Jun-2019 |
tsutsui | Pull OpenBSD/luna88k board.h to define SX9100 board device addresses.
Also replace magic addresses with macro where appropriate.
|
1.3 |
| 04-Oct-2014 |
tsutsui | branches: 1.3.20; Pull LUNA's framebuffer improvements by Kenji Aoyama from OpenBSD/luna88k.
http://marc.info/?l=openbsd-cvs&m=141199909120631&w=2 >> Use raster(logic) operation, or ROP, function on LUNA frame buffer. >> It makes 4bpp wscons putchar ~20% faster.
This Makes 4bpp wscons putchar ~30% on LUNA-II.
Also use the similar ROP in 1bpp putchar and cursor functions and the 1bpp putchar is also ~5% faster. While here, reduce diffs from OpenBSD a bit.
Tested on all 1bpp/4bpp/8bpp framebuffers.
|
1.2 |
| 28-Dec-2013 |
tsutsui | branches: 1.2.4; Add preleminary support of 4bpp LUNA framebuffer.
Changes details: - prepare and switch 4bpp rasops functions that read/write all 4 planes and also handle both fg and bg colors - make 1bpp ops use first plane on write rather than common bitmap plane (which is prepared for multiple plane write with raster ops) - prepare 4bpp allocattr function to handle ANSI 16 color text - split omrasops_init() function for each bpp - move struct hwcmap from softc to hwdevconfig to sync palette values on initialization - allow mmap(2) against all available planes
Now we can use ANSI 16 color text console and also can demonstrate mlterm-fb with color sixel graphics and wallpaper. XXX: Xserver needs much more work.
|
1.1 |
| 20-Jul-2012 |
tsutsui | branches: 1.1.2; 1.1.4; 1.1.6; 1.1.8; Switch luna68k wscons framebuffer driver to using rasops(9) APIs instead of deprecated rcons(4). This allows "options FONT_foo" in kernel config files. Mostly taken from OpenBSD/luna88k, but unnecessary MI rasops(9) stuff is omitted since omrasops.c has own raster wsdisplay_emulops functions. Tested on LUNA with 4bpp fb and LUNA-II with 1bpp fb.
|
1.1.8.1 |
| 18-May-2014 |
rmind | sync with head
|
1.1.6.3 |
| 22-May-2014 |
yamt | sync with head.
for a reference, the tree before this commit was tagged as yamt-pagecache-tag8.
this commit was splitted into small chunks to avoid a limitation of cvs. ("Protocol error: too many arguments")
|
1.1.6.2 |
| 30-Oct-2012 |
yamt | sync with head
|
1.1.6.1 |
| 20-Jul-2012 |
yamt | file omrasopsvar.h was added on branch yamt-pagecache on 2012-10-30 17:19:54 +0000
|
1.1.4.2 |
| 03-Dec-2017 |
jdolecek | update from HEAD
|
1.1.4.1 |
| 20-Aug-2014 |
tls | Rebase to HEAD as of a few days ago.
|
1.1.2.4 |
| 09-Nov-2014 |
msaitoh | Pull up following revision(s) (requested by tsutsui in ticket #1182): sys/arch/luna68k/conf/files.luna68k: revision 1.24 sys/arch/luna68k/conf/GENERIC: revision 1.113 via patch sys/arch/luna68k/dev/omrasops.c: revision 1.17-1.19 sys/arch/luna68k/dev/lunaws.c: revision 1.30 sys/arch/luna68k/dev/omkbdmap.c: revision 1.1-1.2 sys/arch/luna68k/dev/omkbdmap.h: revision 1.1 sys/arch/luna68k/dev/lunafb.c: revision 1.31-1.36 sys/arch/luna68k/dev/omrasopsvar.h: revision 1.3 - Setup Bt458 color palette to support ANSI color text on 8bpp framebuffer. Mostly taken from OpenBSD/luna88k. Also sync some comments. Tested on LUNA-II, and mlterm-fb with 8bpp wallpaper also works fine. Thanks to Kenji Aoyama (OpenBSD/luna88k maintainer) for providing his spare 8bpp board. - Use C99 struct initialization for wsdisplay_accessops. - Use kmem(9) instead of malloc(9). - Pull LUNA's keyboard driver changes from OpenBSD/luna88k. Now LUNA's keyboard works on Xorg server without tweaks by xmodmap(1) etc. - split keyboard mapping definitions to new files, omkbdmap.[ch] - add WSDISPLAY_COMPAT_RAWKBD support (actually the name is wrong; it doesn't emit raw keycode but converts MD code into PS/2 one as "raw keycode on x86" for Xorg server) - allow to enter into ddb by CTRL+ALT(zenmen)+ESC - remove unnecessary return values - Add consistent prefix to a softc member name. - Implement WSDISPLAYIO_SMODE ioctl for proper mmap and colormap handling. Tested on LUNA with 4bpp framebuffer. - allow mmap framebuffer memories only in WSDISPLAYIO_DUMBFB - initialize palette for ANSI text colors on back to WSDISPLAYIO_MODE_EMUL - Pull readability changes from OpenBSD/luna88k. Tested on LUNA-II with 8bpp framebuffer. - prepare and use unpack_attr() function to get fg and bg from attribute - use proper variable names to clarify meanings - Put dumb optimizations to avoid conditionals in putchar drawing loops. ~10% improvements of time cat results on LUNA-II 8bpp framebuffer. - Fix unintended RCS Id substitution. - Pull LUNA's framebuffer improvements by Kenji Aoyama from OpenBSD/luna88k. This Makes 4bpp wscons putchar ~30% on LUNA-II. http://marc.info/?l=openbsd-cvs&m=141199909120631&w=2 > Use raster(logic) operation, or ROP, function on LUNA frame buffer. > It makes 4bpp wscons putchar ~20% faster. Also use the similar ROP in 1bpp putchar and cursor functions and the 1bpp putchar is also ~5% faster. While here, reduce diffs from OpenBSD a bit. Tested on all 1bpp/4bpp/8bpp framebuffers. - Add options WSDISPLAY_COMPAT_RAWKBD for Xorg server.
|
1.1.2.3 |
| 12-Jan-2014 |
bouyer | Pull up following revision(s) (requested by tsutsui in ticket #1005): sys/arch/luna68k/dev/omrasops.c: revision 1.15 sys/arch/luna68k/dev/omrasops.c: revision 1.16 sys/arch/luna68k/dev/lunafb.c: revision 1.27 sys/arch/luna68k/dev/lunafb.c: revision 1.28 sys/arch/luna68k/dev/lunafb.c: revision 1.29 sys/arch/luna68k/dev/lunafb.c: revision 1.30 sys/arch/luna68k/dev/omrasopsvar.h: revision 1.2 sys/arch/luna68k/dev/omrasops.c: revision 1.14 Properly initialize the palette for while on black even on 1bpp framebuffer. Preparing for demonstration in Open Source Conference 2013 Kyoto. Fix off by one in copyrows() backward case. Make omrasops copycols() op work even if columns are not 32 bit aligned. This means command line editing works properly in any cases. The bitcopy strategies for 1bpp copycols() op are taken from recently fixed MI sys/dev/rasops/rasops_bitops.h. GETBITS() and PUTBITS() m68k asm macro are taken from hp300. Tested on both 1bpp (on LUNA-II) and 4bpp (on LUNA) framebuffers. Initialize capabilities in struct wsscreen_descr per omrasops settings. Now REVERSE characters are drawn properly. Add preleminary support of 4bpp LUNA framebuffer. Changes details: - prepare and switch 4bpp rasops functions that read/write all 4 planes and also handle both fg and bg colors - make 1bpp ops use first plane on write rather than common bitmap plane (which is prepared for multiple plane write with raster ops) - prepare 4bpp allocattr function to handle ANSI 16 color text - split omrasops_init() function for each bpp - move struct hwcmap from softc to hwdevconfig to sync palette values on initialization - allow mmap(2) against all available planes Now we can use ANSI 16 color text console and also can demonstrate mlterm-fb with color sixel graphics and wallpaper. XXX: Xserver needs much more work. Pull a fix of Bt458 (8bpp framebuffer) initialization from OpenBSD/luna88k. http://marc.info/?l=openbsd-cvs&m=138838884202196 > Correct initialization of Bt458, used in LUNA's 8bpp frame buffer. > > According to the manual, the address register does not automatically > increment when we access to the control registers. Also we disable > overlay planes, because we do not use them.
|
1.1.2.2 |
| 25-Jul-2012 |
martin | Pull up following revision(s) (requested by tsutsui in ticket #444): sys/arch/luna68k/conf/GENERIC: revision 1.99 sys/arch/luna68k/dev/lunafb.c: revision 1.26 sys/arch/luna68k/luna68k/locore.s: revision 1.48 sys/arch/luna68k/dev/lunaws.c: revision 1.24 sys/arch/luna68k/dev/omron_rfont.h: file removal sys/arch/luna68k/dev/omrasopsvar.h: revision 1.1 sys/arch/luna68k/dev/omrasops.c: revision 1.12 sys/arch/luna68k/dev/omrasops.c: revision 1.13 sys/arch/luna68k/conf/INSTALL: revision 1.6 Use & not && to mask bits. From OpenBSD/luna88k Fix typo in comment. From OpenBSD/luna88k. Switch luna68k wscons framebuffer driver to using rasops(9) APIs instead of deprecated rcons(4). This allows "options FONT_foo" in kernel config files. Mostly taken from OpenBSD/luna88k, but unnecessary MI rasops(9) stuff is omitted since omrasops.c has own raster wsdisplay_emulops functions. Tested on LUNA with 4bpp fb and LUNA-II with 1bpp fb. Make reboot(2) actually work (don't access %sp after MMU is turned off). Also cleanup spaces and #if 0'ed code. Tested on both LUNA and LUNA-II. Should be pulled up to netbsd-6.
|
1.1.2.1 |
| 20-Jul-2012 |
martin | file omrasopsvar.h was added on branch netbsd-6 on 2012-07-25 21:30:35 +0000
|
1.2.4.1 |
| 05-Oct-2014 |
martin | Pull up following revision(s) (requested by tsutsui in ticket #130): sys/arch/luna68k/dev/omrasops.c: revision 1.17 sys/arch/luna68k/dev/omrasops.c: revision 1.18 sys/arch/luna68k/dev/omrasops.c: revision 1.19 sys/arch/luna68k/dev/omrasopsvar.h: revision 1.3 sys/arch/luna68k/dev/lunafb.c: revision 1.36 Pull readability changes from OpenBSD/luna88k. - prepare and use unpack_attr() function to get fg and bg from attribute - use proper variable names to clarify meanings Tested on LUNA-II with 8bpp framebuffer. Put dumb optimizations to avoid conditionals in putchar drawing loops. ~10% improvements of time cat results on LUNA-II 8bpp framebuffer. Pull LUNA's framebuffer improvements by Kenji Aoyama from OpenBSD/luna88k. http://marc.info/?l=openbsd-cvs&m=141199909120631&w=2 > Use raster(logic) operation, or ROP, function on LUNA frame buffer. > It makes 4bpp wscons putchar ~20% faster. This Makes 4bpp wscons putchar ~30% on LUNA-II. Also use the similar ROP in 1bpp putchar and cursor functions and the 1bpp putchar is also ~5% faster. While here, reduce diffs from OpenBSD a bit. Tested on all 1bpp/4bpp/8bpp framebuffers.
|
1.3.20.1 |
| 13-Apr-2020 |
martin | Mostly merge changes from HEAD upto 20200411
|