The purpose of the project was to build a display system for a VGA screen.
The figure below that demonstrates the desired system architecture. The major system components are:
- The Keyboard controller, that reads the instructions from the keyboard
- The Display controller, that controls the display connected to the system
The function of display system is to read commands via keyboard and to set the output on a VGA screen, depending on the command. The keyboard controller accepts ←, ↑, →, ↓, f and r keys, and ignores all the other keys. The image displayed on the VGA screen is a rectangle with a fixed line thickness equal to 5 pixels, whose center of gravity is always the center of the screen and whose enclosed area changes according to the commands entered from the keyboard. The initial dimensions of the rectangle are 20 by 10 pixels. The functionality of the instructions are described below:
Instruction | Scan Code | Description |
---|---|---|
↓ | 75 | Decrease height of rectangle by 10 pixels |
↑ | 72 | Increase height of rectangle by 10 pixels |
→ | 6B | Decrease length of rectangle by 10 pixels |
← | 74 | Increase length of rectangle by 10 pixels |
f | 2B | Enters flash mode |
r | 2D | Reverses colors of image |