High Resolution (hi-res, or HiRes) is one of a few display resolutions available to the Commodore 64.
High Resolution is defined as the maximum pixel density which the VIC-II can produce in a given screen area. It has a theoretical Pixel Aspect Ratio (PAR) of 1:1 with 64 elements in an 8 x 8 pixel character location. In reality, CPU clock cycles prevent a 1:1 PAR accuracy but is a fair approximation for this description and helps to contrast against other resolutions on the C64. Table 1 shows a comparison of resolutions.
|Table 1 - Resolution Comparisons|
|Relative Resolution||PAR||PAR Graphic||Elements (in 8 x 8 pixels)||Example Graphics Mode||Image Example (Blood Vanilla by Louie64)|
|High||1:1||64 (8h x 8v)||Standard Bitmap Mode|
|Medium||2:1||32 (4h x 8v)||Multicolor Bitmap Mode|
|Low||1:1||4 (2h x 2v)||Standard Character Mode|
Notably, a High Resolution output is not necessarily limited by the maximum size of the background area (320 x 200 pixels); as there are techniques which allow composite images into the border area (384 x 272 pixels). Whereas High Resolution is the highest graphical standard that the VIC-II can produce, there are output display issues. On RF display devices (such as televisions), the vertical resolution can be hard to visually define, and a clearer image will be achievable on a composite display device (such as monitors).
High Resolution images can be created statically from data in a program (such as for games or pictures), or created dynamically during program execution (such as for charts or mathematical effects). High Resolution can be applied to images made from characters, bitmaps and/or sprites.
Characters and Bitmaps
For characters and bitmaps (which are limited to the background area), a High Resolution image can be a maximum size of 320 (horizontal) x 200 (vertical) pixels. This is comparable, although not identical, to the Color Graphics Adapter (CGA) standard introduced by IBM in 1981. One limiting factor of High Resolution on a C64 is that of colour density. Although the palette of 16 colours can be used in a full screen image, for each 8 x 8 pixel character location, only 2 colors can be used; 1 for the background and 1 for the foreground. The color data for each 8 x 8 character location is taken from corresponding screen memory: the higher nibble controls the set pixel (foreground) color, and the lower nibble determines the cleared pixel (background) color.
For sprites (which are not limited to the main display area), a High Resolution image can be 24 (horizontal) x 21 (vertical) pixels; although aligned sprites can make a larger image. Again, color is a limiting factor and only 1 color can be used in a High Resolution sprite.
- built in screen modes at codebase.org
- HiRes Pictures at c64pixels.com (internet archive)
- A small introduction into graphics: Hires graphic with the C64 at cbmhardware.de