cga.h File Reference

Go to the source code of this file.

Data Structures

struct  CGA_CONTROL

Defines

#define CGA_ADDRESS_PORT   0x3d4
#define CGA_DATA_PORT   0x3d5
#define CGA_HTR   0x00
#define CGA_EHDR   0x01
#define CGA_SHBR   0x02
#define CGA_EHBR   0x03
#define CGA_SHRR   0x04
#define CGA_EHRR   0x05
#define CGA_VTR   0x06
#define CGA_OR   0x07
#define CGA_PRSR   0x08
#define CGA_MSLR   0x09
#define CGA_CSR   0x0a
#define CGA_CER   0x0b
#define CGA_SAHR   0x0c
#define CGA_SALR   0x0d
#define CGA_CLHR   0x0e
#define CGA_CLLR   0x0f
#define CGA_VRSR   0x10
#define CGA_VRER   0x11
#define CGA_VDER   0x12
#define CGA_OR   0x13
#define CGA_ULR   0x14
#define CGA_SVBR   0x15
#define CGA_EVB   0x16
#define CGA_CMCR   0x17
#define CGA_LCR   0x18

Functions

void CgaInit ()
void CgaCursorSet ()
void CgaScrollUp ()
void CgaCharPut (U8 CharValue)
void CgaScreenClean ()
void CgaBackSpace ()
void CgaChangeLine ()

Variables

CGA_CONTROL CgaCtrl


Define Documentation

#define CGA_ADDRESS_PORT   0x3d4

Definition at line 4 of file cga.h.

#define CGA_CER   0x0b

Definition at line 18 of file cga.h.

#define CGA_CLHR   0x0e

Definition at line 21 of file cga.h.

#define CGA_CLLR   0x0f

Definition at line 22 of file cga.h.

#define CGA_CMCR   0x17

Definition at line 30 of file cga.h.

#define CGA_CSR   0x0a

Definition at line 17 of file cga.h.

#define CGA_DATA_PORT   0x3d5

Definition at line 5 of file cga.h.

#define CGA_EHBR   0x03

Definition at line 10 of file cga.h.

#define CGA_EHDR   0x01

Definition at line 8 of file cga.h.

#define CGA_EHRR   0x05

Definition at line 12 of file cga.h.

#define CGA_EVB   0x16

Definition at line 29 of file cga.h.

#define CGA_HTR   0x00

Definition at line 7 of file cga.h.

#define CGA_LCR   0x18

Definition at line 31 of file cga.h.

#define CGA_MSLR   0x09

Definition at line 16 of file cga.h.

#define CGA_OR   0x13

Definition at line 26 of file cga.h.

#define CGA_OR   0x07

Definition at line 26 of file cga.h.

#define CGA_PRSR   0x08

Definition at line 15 of file cga.h.

#define CGA_SAHR   0x0c

Definition at line 19 of file cga.h.

#define CGA_SALR   0x0d

Definition at line 20 of file cga.h.

#define CGA_SHBR   0x02

Definition at line 9 of file cga.h.

#define CGA_SHRR   0x04

Definition at line 11 of file cga.h.

#define CGA_SVBR   0x15

Definition at line 28 of file cga.h.

#define CGA_ULR   0x14

Definition at line 27 of file cga.h.

#define CGA_VDER   0x12

Definition at line 25 of file cga.h.

#define CGA_VRER   0x11

Definition at line 24 of file cga.h.

#define CGA_VRSR   0x10

Definition at line 23 of file cga.h.

#define CGA_VTR   0x06

Definition at line 13 of file cga.h.


Function Documentation

void CgaBackSpace (  ) 

void CgaChangeLine (  ) 

Definition at line 74 of file cga.c.

00074                         {
00075     U8 i;
00076     
00077     i=0;
00078     while(CgaCtrl.CursorPosition>160){
00079         CgaCtrl.CursorPosition=CgaCtrl.CursorPosition-160;
00080         i++;    
00081     }
00082     CgaCtrl.CursorPosition=(i+1)*160;
00083     if(CgaCtrl.CursorPosition==4000) CgaScrollUp(); 
00084 }

void CgaCharPut ( U8  CharValue  ) 

Definition at line 46 of file cga.c.

00046                              {
00047     if((CharValue>=0x20)&&(CharValue<=0x7e)){
00048          CgaByteWrite(CgaCtrl.CursorPosition++,CharValue);
00049          CgaByteWrite(CgaCtrl.CursorPosition++,CgaCtrl.CharacterAttribute);
00050     }
00051     else{
00052          CgaByteWrite(CgaCtrl.CursorPosition++,'?');
00053          CgaByteWrite(CgaCtrl.CursorPosition++,CgaCtrl.CharacterAttribute);
00054     }
00055     if(CgaCtrl.CursorPosition==4000) CgaScrollUp();
00056 }

void CgaCursorSet (  ) 

Definition at line 24 of file cga.c.

void CgaInit (  ) 

Definition at line 14 of file cga.c.

void CgaScreenClean (  ) 

Definition at line 64 of file cga.c.

00064                          {
00065     U32 i;
00066     
00067     for(i=0;i<4000;i=i+2){
00068         CgaByteWrite(i,' ');
00069         CgaByteWrite(i+1,CgaCtrl.CharacterAttribute);
00070     }
00071     CgaCtrl.CursorPosition=0;
00072 }

void CgaScrollUp (  ) 

Definition at line 31 of file cga.c.

00031                       {
00032     U32 i;
00033     U8 ByteValue;
00034     
00035     for(i=0;i<3840;i++){
00036         ByteValue=CgaByteRead(i+160);
00037         CgaByteWrite(i,ByteValue);
00038     }
00039     for(i=3840;i<4000;i=i+2){
00040         CgaByteWrite(i,' ');
00041         CgaByteWrite(i+1,CgaCtrl.CharacterAttribute);
00042     }
00043     CgaCtrl.CursorPosition=3840;
00044 }


Variable Documentation

Definition at line 12 of file cga.c.


Generated on Sat Apr 10 23:28:06 2010 for 80X86 MULTI-TASKING OPERATION SYSTEM by  doxygen 1.5.9