Updated screen Docu
This commit is contained in:
parent
52415636f3
commit
8a1fb40613
|
@ -30,6 +30,21 @@ Depending of the mode setup, attribute bit 7 may be used for blinking thus
|
|||
only 3 bits remain for background color. Attribute bit 3 may be used for
|
||||
foreground intensity. Attribute bit 0 may be used for underline.
|
||||
|
||||
Cursor
|
||||
------
|
||||
|
||||
Moving the cursor on the framebuffer is done via two different I/O ports. The
|
||||
cursor position is a 16 bit integer that must be sent to a 8 bit I/O port.
|
||||
We do that in two turns.
|
||||
|
||||
First, we send a byte to the command port that tells it to receive the highest
|
||||
8 bits of the position, then we send the byte to data port.
|
||||
Second, we send another byte to the command port that tells it to receive the
|
||||
lowest 8 bits of the position. then we send the byte to data port.
|
||||
|
||||
The above mentioned ports are defined as macros in include/cursor.h. The
|
||||
command bytes are defined in the same header.
|
||||
|
||||
II. Implementations
|
||||
------------------
|
||||
|
||||
|
@ -39,8 +54,7 @@ There are two main operation to perform: sinit and swrite.
|
|||
sinit will initiate the screen by filing the framebuffer with whitespaces
|
||||
(ASCII character 0x20).
|
||||
|
||||
swrite will put characters on the screen without updating the cursor (will
|
||||
be fixed in future commits).
|
||||
swrite will put characters on the screen and will update the cursor too.
|
||||
|
||||
III. Further work
|
||||
-----------------
|
||||
|
|
Loading…
Reference in New Issue