source: rtems/c/src/lib/libbsp/i386/pc386/include/crt.h @ c499856

4.115
Last change on this file since c499856 was c499856, checked in by Chris Johns <chrisj@…>, on 03/20/14 at 21:10:47

Change all references of rtems.com to rtems.org.

  • Property mode set to 100644
File size: 2.3 KB
Line 
1/**
2 * @file
3 *
4 * @ingroup i386_pc386
5 *
6 * @brief CRT controller definitions.
7 */
8
9/*
10 * crt.h  - This file contains definitions for constants related to PC console.
11 *          More information can be found at
12 *      <http://millenium.atcg.com/~taco/helppc/tables.html>
13 *
14 * Copyright (C) 1998  Eric Valette (valette@crf.canon.fr)
15 *                     Canon Centre Recherche France.
16 *
17 *  The license and distribution terms for this file may be
18 *  found in the file LICENSE in this distribution or at
19 *  http://www.rtems.org/license/LICENSE.
20 */
21
22#ifndef _CRT_H
23#define _CRT_H
24
25/*
26 * Bitmap video origins in text mode.
27 */
28
29        /* In monochrome */
30#define V_MONO  0xb0000
31        /* In color      */
32#define V_COLOR 0xb8000
33
34/*
35 * Video Option Byte location. It must be maintained
36 * by the BIOS.
37 */
38#define VIDEO_MODE_ADDR                 0x449
39/*
40 * Video controller base IO address location in
41 * BIOS data area
42 */
43#define DISPLAY_CRT_BASE_IO_ADDR        0x463
44/*
45 * Number of collums and lines locations for the
46 * actual video Configuration
47 */
48#define NB_MAX_COL_ADDR                 0x44a
49#define NB_MAX_ROW_ADDR                 0x484
50
51    /*
52     * Miscellaneous information set by the BIOS in offset video_mode,
53     */
54
55#   define VGAMODE7     0x7     /* VGA mode 7 */
56
57    /* Color codes in text mode for background and foreground. */
58#define BLACK           0x0
59#define BLUE            0x1
60#define GREEN           0x2
61#define CYAN            0x3
62#define RED             0x4
63#define MAGENTA         0x5
64#define BROWN           0x6
65#define WHITE           0x7
66
67#define GRAY            0x8
68#define LT_BLUE         0x9
69#define LT_GREEN        0xa
70#define LT_CYAN         0xb
71#define LT_RED          0xc
72#define LT_MAGENTA      0xd
73#define YELLOW          0xe
74#define LT_WHITE        0xf
75
76#define BLINK           0x8     /* Mask used to determine blinking */
77#define OFF             0
78#define ON              1
79
80/*
81 * CRT Controller register offset definitions
82 */
83
84#   define CC_CURSSTART 0x0a    /* Cursor start scan line */
85#   define CC_CURSEND   0x0b    /* Cursor end scan line */
86#   define CC_STARTADDRHI 0x0c  /* start video ram addr msb */
87#   define CC_STARTADDRLO 0x0d  /* start video ram lsb */
88#   define CC_CURSHIGH  0x0e    /* Cursor high location (8 msb) */
89#   define CC_CURSLOW   0x0f    /* Cursor low location (8 msb) */
90#   define CC_VRETSTART 0x10    /* vertical synchro start lsb */
91#   define CC_VRETEND   0x11    /* vertical syn end (also it control) */
92#   define CC_VDISPEND  0x12    /* vertical display end lsb register */
93
94#endif /* _CRT_H */
Note: See TracBrowser for help on using the repository browser.