posted by Kroc on Thu 24th Aug 2006 20:26 UTC

"GEOS, Page 5"

3.7 The deskTop

You are quickly presented with the GEOS 'deskTop', the main interface where you'll do basic disk & file management, configuration and launching programs. The GEOS deskTop

The Commodore 64 supported several video modes. Although the resolution of the C64 was always 320x200 in aspect, the way it interpreted the screen data could be changed in a number of ways.

In order to produce the UI in GEOS, the C64's "high resolution" bit-mapped mode was utilised. A full 8 KB of memory had to be reserved to store the monochrome pixel data, where one byte represented the on/off states of 8 pixels. Rather than the screen data being ordered in a continuous stream from the left to right and then down each line, the screen data was split into 40x25 characters of 8x8 pixels. 8 bytes represented one character, running from top to bottom of the character and then left to right across the screen in characters.

Programmatically this made it difficult to draw diagonal lines unless they aligned with the 8x8 characters, but it meant that large block copies of memory were easy to do. It also meant that referencing the right hand side of the screen (whose pixel locations were greater than 255, what one byte allowed) was easy, because technically the screen was only 40 characters wide, each of eight bytes in height.

The downside is that whilst you get full fidelity to draw the letters manually and thus fit in more than 40 letters per line - it was monochrome. The mouse pointer is blue because the mouse is created using the C64's hardware sprite support. A sprite could freely be moved around without erasing and redrawing the screen contents below. The C64 itself would not be fast enough to handle redrawing screen contents in the bitmap, as the mouse moved.

Although bit-mapped graphics ate 8 KB of RAM, it meant that the programmers could erase the 4 KB of PETSCII graphics from the standard text-mode, and better use these resources for storing the OS and freeing enough RAM for any userland apps to run.

Table of contents
  1. "GEOS, Page 1"
  2. "GEOS, Page 2"
  3. "GEOS, Page 3"
  4. "GEOS, Page 4"
  5. "GEOS, Page 5"
  6. "GEOS, Page 6"
  7. "GEOS, Page 7"
  8. "GEOS, Page 8"
  9. "GEOS, Page 9"
  10. "GEOS, Page 10"
  11. "GEOS, Page 11"
  12. "GEOS, Page 12"
  13. "GEOS, Page 13"
  14. "GEOS, Page 14"
e p (14)    45 Comment(s)

Technology White Papers

See More