MOS Technology 8568

Last updated
The VDC was designed with office suite applications in mind. Shown here is SpeedScript 128, a word processor. SpeedScript 128 in action.png
The VDC was designed with office suite applications in mind. Shown here is SpeedScript 128 , a word processor.

The MOS Technology 8568 Video Display Controller (VDC) was the graphics processor responsible for the 80 column or RGBI display on the Commodore 128DCR personal computer. [1] [2] [3] [4] [5]

Contents

In the Commodore 128 service manual, this part was referred to as the "80 column CRT controller." The 8568 embodied many of the features of the older 6545E monochrome CRT controller plus RGBI color. The original ("flat") Commodore 128 and the Commodore 128D (European plastic hausing) used the 8563 video controller to generate the 80 column display. The 8568 was essentially an updated version of the 8563, combining the latter's functionality with glue logic that had been implemented by discrete components in physical proximity to the 8563. Unlike the 8563, the 8568 included an unused (in the C-128) active low interrupt request line (/INTR), which was asserted when the "ready" bit in the 8568's status register changed from 0 to 1. Reading the control register would automatically deassert /INTR. Owing to differences in pin assignments and circuit interfacing, the 8563 and 8568 are not electrically interchangeable.

The Commodore 128 had two video display modes, which were usually used singularly, but could be used simultaneously if the computer was connected to two compatible video monitors. The VIC-II chip, also found in the Commodore 64, was mapped directly into main memorythe video memory and CPUs (the 8502 and Z80A processors) shared a common 128  kB RAM, and the VIC-II control registers were accessed as memory locations (that is, they were memory mapped).

Unlike the VIC-II, the 8568 had its own local video RAM, 64K in the C-128DCR model (sold in North America) and, depending on the date of manufacture of the particular machine, either 16 or 64K in the C-128D model (marketed in Europe). Addressing the VDC's internal registers and dedicated video memory must be accomplished by indirect means. First the program must tell the VDC which of its 37 internal registers is to be accessed. Next the program must wait until the VDC is ready for the access, after which a read or write on the selected internal register may be performed. The following code is typical of a register read:

ldx#regnum;VDC register to accessstx$d600;write to control registerloopbit$d600;check bit 7 of status registerbplloop;VDC not readylda$d601;read from VDC register...

The following code is typical of a register write operation:

ldx#regnum;VDC register to write tostx$d600;write to control registerloopbit$d600;check bit 7 of status registerbplloop;VDC not readysta$d601;write to VDC register...

Owing to this somewhat cumbersome method of controlling the 8568, the maximum possible frame rate in bit-mapped mode is generally too slow for arcade-style action video games, in which bit-intensive manipulation of the display is required.

The final versions of the 8568 had the revision codes R9a or R9b appended to the part number, apparently indicating undocumented improvements.

Features

Register listing

This information was adapted from the Commodore 128 Programmer's Reference Guide [8]

RegisterHexadecimalBit 7Bit 6Bit 5Bit 4Bit 3Bit 2Bit 1Bit 0Description
0
$00
HT7
HT6
HT5
HT4
HT3
HT2
HT1
HT0
Horizontal Total
1
$01
HD7
HD6
HD5
HD4
HD3
HD2
HD1
HD0
Horizontal Displayed
2
$02
HP7
HP6
HP5
HP4
HP3
HP2
HP1
HP0
Horizontal Sync Position
3
$03
VW3
VW2
VW1
VW0
HW3
HW2
HW1
HW0
Vertical/Horizontal Sync Width
4
$04
VT7
VT6
VT5
VT4
VT3
VT2
VT1
VT0
Vertical Total
5
$05
VA4
VA3
VA2
VA1
VA0
Vertical Adjust
6
$06
VD7
VD6
VD5
VD4
VD3
VD2
VD1
VD0
Vertical Displayed
7
$07
VP7
VP6
VP5
VP4
VP3
VP2
VP1
VP0
Vertical Sync Position
8
$08
IM1
IM0
Interlace Mode
9
$09
CTV4
CTV3
CTV2
CTV1
Character Total Vertical
10
$0A
CM1
CM0
CS4
CS3
CS2
CS1
CS0
Cursor Mode, Cursor Start Scan Line
11
$0B
CE4
CE3
CE2
CE1
CE0
Cursor End Scan Line
12
$0C
DS15
DS14
DS13
DS12
DS11
DS10
DS9
DS8
Display Start Address High Byte
13
$0D
DS7
DS6
DS5
DS4
DS3
DS2
DS1
DS0
Display Start Address Low Byte
14
$0E
CP15
CP14
CP13
CP12
CP11
CP10
CP9
CP8
Cursor Position High Byte
15
$0F
CP7
CP6
CP5
CP4
CP3
CP2
CP1
CP0
Cursor Position Low Byte
16
$10
LPV7
LPV6
LPV5
LPV4
LPV3
LPV2
LPV1
LPV0
Light Pen Vertical Position
17
$11
LPH7
LPH6
LPH5
LPH4
LPH3
LPH2
LPH1
LPH0
Light Pen Horizontal Position
18
$12
UA15
UA14
UA13
UA12
UA11
UA10
UA9
UA8
Update Address High Byte
19
$13
UA7
UA6
UA5
UA4
UA3
UA2
UA1
UA0
Update Address Low Byte
20
$14
AA15
AA14
AA13
AA12
AA11
AA10
AA9
AA8
Attribute Start Address High Byte
21
$15
AA7
AA6
AA5
AA4
AA3
AA2
AA1
AA0
Attribute Start Address Low Byte
22
$16
CTH3
CTH2
CTH1
CTH0
CDH3
CDH2
CDH1
CDH0
Character Total Horizontal, Character Display Horizontal
23
$17
CDV4
CDV3
CDV2
CDV1
CDV0
Character Display Vertical
24
$18
COPY
RVS
CBRATE
VSS4
VSS3
VSS2
VSS1
VSS0
Vertical Smooth Scrolling
25
$19
TEXT
ATR
SEMI
DBL
HSS3
HSS2
HSS1
HSS0
Horizontal Smooth Scrolling
26
$1A
FG3
FG2
FG1
FG0
BG3
BG2
BG1
BG0
Foreground/Background color
27
$1B
AI7
AI6
AI5
AI4
AI3
AI2
AI1
AI0
Address Increment per Row
28
$1C
CB15
CB14
CB13
RAM
Character Base Address
29
$1D
UL4
UL3
UL2
UL1
UL0
Underline Scan Line
30
$1E
WC7
WC6
WC5
WC4
WC3
WC2
WC1
WC0
Word Count
31
$1F
DA7
DA6
DA5
DA4
DA3
DA2
DA1
DA0
Data Register
32
$20
BA15
BA14
BA13
BA12
BA11
BA10
BA9
BA8
Block Start Address High Byte
33
$21
BA7
BA6
BA5
BA4
BA3
BA2
BA1
BA0
Block Start Address Low Byte
34
$22
DEB7
DEB6
DEB5
DEB4
DEB3
DEB2
DEB1
DEB0
Display Enable Begin
35
$23
DEE7
DEE6
DEE5
DEE4
DEE3
DEE2
DEE1
DEE0
Display Enable End
36
$24
DRR3
DRR2
DRR1
DRR0
DRAM Refresh Rate
37 [9]
$25
HSYNC
VSYNC
SYNC Polarity (undocumented)

Notes

  1. ^ In Commodore 128 terminology, the VIC-II display was called the 40 column display, and the VDC, 80 column, due to the number of columns of fixed-pitch text that could be natively displayed.
  2. ^ Commodore service manual 314001-08 (1987).
  3. ^ The 8563/8568 hardware is always visible on the address and data buses regardless of which mode in which the C-128 is operating. Hence it is possible to generate an 80 column display while running in C-64 compatibility mode. There is, of course, no C-64 operating system support.

Related Research Articles

<span class="mw-page-title-main">Commodore 64</span> 8-bit home computer introduced in 1982

The Commodore 64, also known as the C64, is an 8-bit home computer introduced in January 1982 by Commodore International. It has been listed in the Guinness World Records as the highest-selling single computer model of all time, with independent estimates placing the number sold between 12.5 and 17 million units. Volume production started in early 1982, marketing in August for US$595. Preceded by the VIC-20 and Commodore PET, the C64 took its name from its 64 kilobytes(65,536 bytes) of RAM. With support for multicolor sprites and a custom chip for waveform generation, the C64 could create superior visuals and audio compared to systems without such custom hardware.

<span class="mw-page-title-main">MOS Technology</span> Semiconductor company based in Pennsylvania, U.S.

MOS Technology, Inc. ("MOS" being short for Metal Oxide Semiconductor), later known as CSG (Commodore Semiconductor Group) and GMT Microelectronics, was a semiconductor design and fabrication company based in Audubon, Pennsylvania. It is most famous for its 6502 microprocessor and various designs for Commodore International's range of home computers.

<span class="mw-page-title-main">Commodore 128</span> Home computer released in 1985

The Commodore 128, also known as the C128, C-128, or C= 128, is the last 8-bit home computer that was commercially released by Commodore Business Machines (CBM). Introduced in January 1985 at the CES in Las Vegas, it appeared three years after its predecessor, the Commodore 64, the bestselling computer of the 1980s. Approximately 2.5 million C128s were sold during its four year production run.

<span class="mw-page-title-main">Commodore Plus/4</span> 1984 home computer by Commodore International

The Commodore Plus/4 is a home computer released by Commodore International in 1984. The "Plus/4" name refers to the four-application ROM-resident office suite ; it was billed as "the productivity computer with software built in".

<span class="mw-page-title-main">MOS Technology VIC</span>

The VIC (Video Interface Chip), specifically known as the MOS Technology 6560 (NTSC version) / 6561 (PAL version), is the integrated circuit chip responsible for generating video graphics and sound in the VIC-20 home computer from Commodore. It was originally designed for applications such as low cost CRT terminals, biomedical monitors, control system displays and arcade or home video game consoles.

<span class="mw-page-title-main">MOS Technology VIC-II</span> Video microchip in the Commodore 64 and C128 home computers

The VIC-II, specifically known as the MOS Technology 6567/6566/8562/8564, 6569/8565/8566 (PAL), is the microchip tasked with generating Y/C video signals and DRAM refresh signals in the Commodore 64 and Commodore 128 home computers.

<span class="mw-page-title-main">Color Graphics Adapter</span> IBM PC graphic adapter and display standard

The Color Graphics Adapter (CGA), originally also called the Color/Graphics Adapter or IBM Color/Graphics Monitor Adapter, introduced in 1981, was IBM's first color graphics card for the IBM PC and established a de facto computer display standard.

Text mode is a computer display mode in which content is internally represented on a computer screen in terms of characters rather than individual pixels. Typically, the screen consists of a uniform rectangular grid of character cells, each of which contains one of the characters of a character set; at the same time, contrasted to graphics mode or other kinds of computer graphics modes.

<span class="mw-page-title-main">Commodore 65</span> Prototype computer

The Commodore 65 is a prototype computer created at Commodore Business Machines in 1990–1991. It is an improved version of the Commodore 64, and it was meant to be backwards-compatible with the older computer, while still providing a number of advanced features close to those of the Amiga.

<span class="mw-page-title-main">MOS Technology 8563</span>

The 8563 Video Display Controller (VDC) was an integrated circuit produced by MOS Technology. It was used in the Commodore 128 (C128) computer to generate an 80-column RGB video display, running alongside a VIC-II which supported Commodore 64-compatible graphics. The DCR models of the C128 used the later and more technically advanced 8568 [D]VDC controller.

<span class="mw-page-title-main">TMS9918</span> Video display controller

The TMS9918 is a video display controller (VDC) manufactured by Texas Instruments, in manuals referenced as "Video Display Processor" (VDP) and introduced in 1979. The TMS9918 and its variants were used in the ColecoVision, CreatiVision, Memotech MTX, MSX, NABU Personal Computer, SG-1000/SC-3000, Spectravideo SV-318, SV-328, Sord M5, Tatung Einstein, TI-99/4, Casio PV-2000, Coleco Adam, Hanimex Pencil II, and Tomy Tutor.

<span class="mw-page-title-main">Commodore CBM-II</span> Series of 8-bit personal computers released in 1982

The Commodore CBM-II series is a short-lived range of 8-bit personal computers from Commodore Business Machines (CBM), released in 1982 and intended as a follow-on to the Commodore PET series.

BASIC 8 – "The Enhanced Graphics System For The C128" – was an American-designed graphics system developed by Walrusoft of Gainesville, Florida and published in 1986 by Patech Software of Somerset, New Jersey. The system was an extension of Commodore's BASIC 7.0 for the Commodore 128 computer. BASIC 8.0 provided commands lacking in BASIC 7.0 to generate (color) graphics in the C128's high-resolution 80-column mode for RGB monitors.

<span class="mw-page-title-main">Video display controller</span> Type of integrated circuit

A video display controller (VDC), also called a display engine or display interface, is an integrated circuit which is the main component in a video-signal generator, a device responsible for the production of a TV video signal in a computing or game system. Some VDCs also generate an audio signal, but that is not their main function. VDCs were used in the home computers of the 1980s and also in some early video picture systems.

<span class="mw-page-title-main">Commodore 64 peripherals</span>

The Commodore 64 home computer used various external peripherals. Due to the backwards compatibility of the Commodore 128, most peripherals would also work on that system. There is also some compatibility with the VIC-20 and Commodore PET.

<span class="mw-page-title-main">Tandy Graphics Adapter</span> Computer display standard for the Tandy 1000 series

Tandy Graphics Adapter is a computer display standard for the Tandy 1000 series of IBM PC compatibles, which has compatibility with the video subsystem of the IBM PCjr but became a standard in its own right.

<span class="mw-page-title-main">Albert (computer)</span>

The Albert is an Apple II clone, released by Albert Computers, Inc., in 1983. Comparable to the Apple IIe, six models were ultimately produced.

References

  1. "MITH's Vintage Computers | MOS 8568 Graphics Microprocessor". archive.mith.umd.edu. Retrieved 2022-11-18.
  2. "Commodore 128D Computer System - Player's Choice". www.playerschoicevideogames.com. Retrieved 2022-11-18.
  3. Tabke, Brett (1996). "Commodore 8-bit IC Technical Ref".
  4. "Video display controller List of example VDCs - Exhibition". PANASYS. Retrieved 2022-11-18.
  5. "Commodore 128 (D)". www.storiainformatica.it. Retrieved 2022-11-18.
  6. "empty". Graphic Booster 128
  7. "empty". Archived from the original on 2009-10-28. 090425 geocities.com
  8. Commodore Capital, Inc., (1986). Commodore 128 programmer's reference guide. p.294, New York, NY: Bantam Books, Inc.
  9. "Uncovered: The VDC 8568's 38th register". Archived from the original on 2012-02-19. Retrieved 2008-12-30.