1 /* $NetBSD: ite_hy.c,v 1.12 2011/02/10 12:46:22 tsutsui Exp $ */
2
3 /*
4 * Copyright (c) 1988 University of Utah.
5 * Copyright (c) 1990, 1993
6 * The Regents of the University of California. All rights reserved.
7 *
8 * This code is derived from software contributed to Berkeley by
9 * the Systems Programming Group of the University of Utah Computer
10 * Science Department and Mark Davies of the Department of Computer
11 * Science, Victoria University of Wellington, New Zealand.
12 *
13 * Redistribution and use in source and binary forms, with or without
14 * modification, are permitted provided that the following conditions
15 * are met:
16 * 1. Redistributions of source code must retain the above copyright
17 * notice, this list of conditions and the following disclaimer.
18 * 2. Redistributions in binary form must reproduce the above copyright
19 * notice, this list of conditions and the following disclaimer in the
20 * documentation and/or other materials provided with the distribution.
21 * 3. Neither the name of the University nor the names of its contributors
22 * may be used to endorse or promote products derived from this software
23 * without specific prior written permission.
24 *
25 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
26 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
27 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
28 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
29 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
30 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
31 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
32 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
33 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
34 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
35 * SUCH DAMAGE.
36 *
37 * from: Utah $Hdr: ite_hy.c 1.1 92/01/22$
38 *
39 * @(#)ite_hy.c 8.1 (Berkeley) 6/10/93
40 */
41
42 #ifdef ITECONSOLE
43
44 #include <sys/param.h>
45
46 #include <hp300/stand/common/itereg.h>
47 #include <hp300/stand/common/grf_hyreg.h>
48
49 #include <hp300/stand/common/samachdep.h>
50 #include <hp300/stand/common/itevar.h>
51
52 void
hyper_init(struct ite_data * ip)53 hyper_init(struct ite_data *ip)
54 {
55 struct hyboxfb *regbase = (void *)ip->regbase;
56 int width;
57
58 ip->bmv = ite_dio_windowmove1bpp;
59 ite_fontinfo(ip);
60 width = ((ip->ftwidth + 7) / 8) * 8;
61 ip->cpl = (ip->fbwidth - ip->dwidth) / width;
62 ip->cblanky = ip->fonty + ((128 / ip->cpl) +1) * ip->ftheight;
63
64 regbase->nblank = 0x05;
65
66 /*
67 * Clear the framebuffer on all planes.
68 */
69 ite_dio_windowmove1bpp(ip, 0, 0, 0, 0, ip->fbheight, ip->fbwidth,
70 RR_CLEAR);
71
72 ite_fontinit1bpp(ip);
73
74 /*
75 * Stash the inverted cursor.
76 */
77 ite_dio_windowmove1bpp(ip, charY(ip, ' '), charX1bpp(ip, ' '),
78 ip->cblanky, ip->cblankx, ip->ftheight, ip->ftwidth,
79 RR_COPYINVERTED);
80 }
81 #endif
82