summaryrefslogtreecommitdiff
path: root/arch_msm7k/mddi_console.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch_msm7k/mddi_console.c')
-rw-r--r--arch_msm7k/mddi_console.c153
1 files changed, 0 insertions, 153 deletions
diff --git a/arch_msm7k/mddi_console.c b/arch_msm7k/mddi_console.c
deleted file mode 100644
index c1389ca..0000000
--- a/arch_msm7k/mddi_console.c
+++ /dev/null
@@ -1,153 +0,0 @@
-/*
- * Copyright (c) 2008, Google Inc.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * * Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in
- * the documentation and/or other materials provided with the
- * distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
- * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
- * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#include <boot/boot.h>
-#include <boot/font5x12.h>
-
-static unsigned short BGCOLOR = 0x001F;
-static unsigned short FGCOLOR = 0xFFFF;
-
-static void drawglyph(unsigned short *pixels, unsigned short paint,
- unsigned stride, unsigned *glyph)
-{
- unsigned x, y, data;
- stride -= 5;
-
- data = glyph[0];
- for(y = 0; y < 6; y++) {
- for(x = 0; x < 5; x++) {
- if(data & 1) *pixels = paint;
- data >>= 1;
- pixels++;
- }
- pixels += stride;
- }
- data = glyph[1];
- for(y = 0; y < 6; y++) {
- for(x = 0; x < 5; x++) {
- if(data & 1) *pixels = paint;
- data >>= 1;
- pixels++;
- }
- pixels += stride;
- }
-}
-
-#if 0
-static void drawtext(unsigned x, unsigned y, unsigned paint, const char *text)
-{
- unsigned short *pixels = mddi_framebuffer();
- unsigned stride = fb_width;
- char c;
-
- while((c = *text++)) {
- if((c < ' ') || (c > 127)) continue;
- c = (c - 32) * 2;
- drawglyph(pixels + y*stride + x, paint, stride, font5x12 + c);
- x += 6;
- }
-}
-#endif
-
-static int cx, cy, cmaxx, cmaxy;
-
-void console_clear(void)
-{
- unsigned short *dst = mddi_framebuffer();
- unsigned count = fb_width * fb_height;
- cx = 0;
- cy = 0;
- while(count--) *dst++ = BGCOLOR;
-}
-
-static void scroll_up(void)
-{
- unsigned short *dst = mddi_framebuffer();
- unsigned short *src = dst + (fb_width * 12);
- unsigned count = fb_height * (fb_width - 12);
-
- while(count--) {
- *dst++ = *src++;
- }
- count = fb_width * 12;
- while(count--) {
- *dst++ = BGCOLOR;
- }
-}
-
-void console_putc(unsigned c)
-{
- unsigned short *pixels;
-
- if(c > 127) return;
- if(c < 32) {
- if(c == '\n') goto newline;
- return;
- }
-
- pixels = mddi_framebuffer();
- drawglyph(pixels + cy * 12 * fb_width + cx * 6, FGCOLOR,
- fb_width, font5x12 + (c - 32) * 2);
-
- cx++;
- if(cx < cmaxx) return;
-
-newline:
- cy++;
- cx = 0;
- if(cy >= cmaxy) {
- cy = cmaxy - 1;
- scroll_up();
- }
-}
-
-void console_flush(void)
-{
- mddi_start_update();
- while(!mddi_update_done()) ;
-}
-
-void console_set_colors(unsigned bg, unsigned fg)
-{
- BGCOLOR = bg;
- FGCOLOR = fg;
-}
-
-void console_init(void)
-{
- mddi_init();
-
- cmaxx = fb_width / 6;
- cmaxy = (fb_height-1) / 12;
- cx = 0;
- cy = 0;
-
- console_clear();
- console_flush();
-}
-