When using this document, keep the following in mind:ntialGeneral Notice

1. This document is confidential. By accepting this document you acknowledge that you are boundby the terms set forth in the non-disclosure and confidentiality agreement signed separately and /inthe possession of SEGA. If you have not signed such a non-disclosure agreement, please contact
SEGA immediately and return this document to SEGA.

de2. This document may include technical inaccuracies or typographical errors. Changes are periodically made to the information herein; these changes will be incorporated in new versions of the
document. SEGA may make improvements and/or changes in the product(s) and/or the
program(s) described in this document at any time.

nfi

3. No one is permitted to reproduce or duplicate, in any form, the whole or part of this document
without SEGA’S written permission. Request for copies of this document and for technicalinformation about SEGA products must be made to your authorized SEGA Technical Services
representative.

Co

4. No license is granted by implication or otherwise under any patents, copyrights, trademarks, orother intellectual property rights of SEGA Enterprises, Ltd., SEGA of America, Inc., or any third
party.
5. Software, circuitry, and other examples described herein are meant merely to indicate the characteristics and performance of SEGA’s products. SEGA assumes no responsibility for any intellectual
property claims or other problems that may result from applications based on the examples
describe herein.

GA

6. It is possible that this document may contain reference to, or information about, SEGA products(development hardware/software) or services that are not provided in countries other than Japan.
Such references/information must not be construed to mean that SEGA intends to provide such
SEGA products or services in countries other than Japan. Any reference of a SEGA licensed product/program in this document is not intended to state or simply that you can use only SEGA’slicensed products/programs. Any functionally equivalent hardware/software can be used instead.
7. SEGA will not be held responsible for any damage to the user that may result from accidents or any
other reasons during operation of the user’s equipment, or programs according to this document.

SE

NOTE: A reader's comment/correction form is provided with thisdocument. Please address comments to :(6/27/95- 002)

SEGA of America, Inc., Developer Technical Support (att. Evelyn Merritt)
150 Shoreline Drive, Redwood City, CA 94065
SEGA may use or distribute whatever information you supply in any way
it believes appropriate without incurring any obligation to you.

SE

GA

Co

nfi

de

nti
al

TM

VDP1
User's Manual
Supplement
Doc. #ST-13-SP1-052794© 1994 SEGA. All Rights Reserved.

nti
al

READER CORRECTION/COMMENT SHEETKeep us updated!
If you should come across any incorrect or outdated information while reading through the attacheddocument, or come up with any questions or comments, please let us know so that we can make therequired changes in subsequent revisions. Simply fill out all information below and return this form to
the Developer Technical Support Manager at the address below. Please make more copies of this form if
more space is needed. Thank you.
General Information:

Phone

Document number
Document nameDate

ST-13-SP1-052794
VDP1 User's Manual Supplement

Corrections:
Correction

nfi

pg. #

GA

Co

Chpt.

de

Your NameSE

Questions/comments:

Fax:

Where to send your corrections:(415) 802-3963
Attn: Manager,
Developer Technical Support

Mail:

SEGA OF AMERICA
Attn: Manager,
Developer Technical Support
275 Shoreline Dr. Ste 500
Redwood City, CA 94065

nti
al

REFERENCES

In translating/creating this document, certain technical words and/or phrases were interpretedwith the assistance of the technical literature listed below.

Dictionary of Science and Engineering, 350,000 words, 3rd Edition
Inter Press
Tokyo, Japan
1990

2.

Computer Dictionary
Kyoritsu Publishing Co., LTD.
Tokyo, Japan
1978

3.

IBM Dictionary of Computing
McGraw-Hill, Inc.
New York, New York
1994

SE

GA

Co

nfi

de

1.

nti
al

Revision History
December 6, 1993
• Minor corrections• Total 155 pages

First Edition

March 20, 1994
• Added even/odd coordinate selection bit (EOS) to
frame buffer change mode register (FBCR)• Added high speed shrink (HSS) and pre-clipping
disable (Pclp) to draw (paint) mode word (+04H) in
the command table.
• Total 163 pages

Supplement

March 31, 1994
• Explained functions for version 0 of the VDP1 device.
• The following functions added to version 1 are notincluded in version 0:>The frame buffer change mode register (FBCR) does
not have an even/odd coordinate selection bit (EOS)
function.
>The draw (paint) mode word (+04H) in the command
table does not high speed shrink (HSS) and pre-clipping disable (Pclp) functions.
• Total 7 pages.

SE

GA

Co

nfi

de

Revision 7.1

nti
al

Table of Contents
Introduction ........................................................................................................................ i
Confirmation of Version Number ......................................................................... i

Differences in Functions ........................................................................................... 1
1.1 Functions of Version 0 ............................................................................... 1
Even/Odd Coordinate Selection Bit (EOS) .......................................... 1
High Speed Shrink (HSS) .................................................................... 1
Pre-Clipping Disable (Pclp) ................................................................. 1
1.2 Functions Added to Version 1 .................................................................... 2
Even/Odd Coordinate Selection Bit (EOS) .......................................... 2
High Speed Shrink (HSS) .................................................................... 2
Pre-Clipping Disable (Pclp) ................................................................. 3

2.0

Using Version 0 ........................................................................................................ 4
2.1 High Speed Shrink (HSS) .......................................................................... 4
2.2 Pre-Clipping Disable (Pclp) ....................................................................... 4

3.0

Manual Changes ......................................................................................................5
3.1 Description of Changes ............................................................................. 5
Version Number (VER) ........................................................................ 5
Even/Odd Coordinate Selection Bit (EOS) .......................................... 5
High Speed Shrink (HSS) .................................................................... 5
Pre-Clipping Disable (Pclp) ................................................................. 5
Detailed Descriptions ................................................................................ 6

SE

GA

3.2

Co

nfi

de

1.0

IntroductionntialThis manual contains additional explanations of version 0 of the VDP1 device. It
explains the functions of version 0 while noting the differences between the functions of version 1 and the functions of version 0 of the VDP1 device. Refer to VDP1
User’s Manual, 1st edition, regarding version 1.

This supplement is valid only for version 0 of the VDP1 device. Refer to the appropriate manual regarding VDP1 devices other than version 0.

deConfirmation of Version NumberFirst, confirm the version number. Use the method described below to confirm theversion number.

SE

GA

Co

nfi

Version Number
The version number (VER, version number) is handled by bits 15 to 12 of the mode
register (MODR, 100016H), thus the version number of the VDP1 device is indicatedby four bits. Bits 15 to 12 indicate the version number when the mode register is readout. When the value is 0 (0000B), the version number of the VDP1 device is 0.

iDifferences in Functions

nti
al

1.0

1.1 Functions of Version 0

The differences in the functions of version 0 from the functions of version 1 are explained below. These functions are not included in the version 0 VDP1 device. Referto the VDP1 User’s Manual, 1st edition (version 1).
Even/Odd Coordinate Select Bit (EOS): bit 4deIn version 1, an even/odd coordinate selection bit (EOS) was added at bit 4 of theframe buffer change mode register (FBCR, 100002H). However, in version 0, this bit
does not have that function.

High Speed Shrink (HSS)

nfi

When writing a value to the frame buffer change mode register (FBCR) in version 0,
set bit 4 to “0”. Version 0 does not have the bit for high speed shrink (HSS) in thedraw (paint) mode word (CMDPMOD) or that function.
In version 1, high speed shrink (HSS) is added at bit 12 of the draw (paint) mode
word (CMDPMOD, +04H). However, version 0 does not have this function at this bit.

Co

When drawing (painting) a scaled sprite or distorted sprite in version 0, set bit 12 ofthe draw (paint) mode word (CMDPMOD) in the command table to “0”.
Pre-Clipping Disable (Pclp)

In version 1, pre-clipping disable (Pclp) was added at bit 11 of the draw (paint) mode
word (CMDPMOD, +04H). However, version 0 does not have this function at this bit.

SE

GA

When a draw (paint) command is used in version 0, set bit 11 of the draw (paint)mode word (CMDPMOD) in the command table to “0”.

VDP 1 User's Manual Supplement11.2 Functions Added to Version 1ntial

For reference, the functions of version 1 which were added after version 0 are explained below. These functions are not included in version 0 VDP1 devices. The
newly added functions are as follows. For more information, refer to each item.
Even/Odd Coordinate Select Bit (EOS): bit 4

An even/odd coordinate selection bit (EOS) was added at bit 4 of the frame bufferchange mode register (FBCR, 100002H).

deThis bit becomes valid when “1” is specified for high speed shrink in drawing(painting) a scaled sprite or a distorted sprite. When HSS = 1 is specified, lines withrespect to which the drawing is scaled down are drawn by sampling only pixels ateven or odd coordinates in the original picture data. The sampling of pixels at evenor odd coordinates is specified by this bit.

When HSS = 0, this bit is not referenced.
High Speed Shrink (HSS)nfi

If EOS = 0, then pixels at even coordinates are sampled, and if EOS = 1, then pixels at
odd coordinates are sampled.

High speed shrink was added at bit 12 of the draw (paint) mode word (CMDPMOD,+04H).

Co

When scaling down and drawing a scaled sprite or a distorted sprite, this bit is used
to select whether precedence is given to speed or to accuracy. This is valid only forthe drawing (painting) commands of scaled sprites and distorted sprites. Leave it
fixed at “0” for all other drawing commands.

GA

When “1” is specified for this bit, lines with respect to which the drawing is scaled
down are drawn by sampling only the even or odd pixels of the original picture
data. The selection of even coordinates or odd coordinates is done with the even/odd coordinate selection bit (EOS) of the frame buffer change mode register (FBCR).

SE

When “0” is specified, the original picture data are sampled irrespective of even or
odd coordinates at any magnification ratio. Use “0” to give precedence to accuracy
over speed, and use “1” to give precedence to speed.

2Pre-Clipping Disable (Pclp)

nti
alPre-clipping disable (Pclp) has been added at bit 11 of the draw (paint) mode word
(CMDPMOD, 04H). This bit specifies whether pre-clipping is performed or disabled. When “0” is specified, pre-clipping is performed. When “1” is specified, preclipping is not performed.
One drawing (painting) command comprises a group of several lines, and the respective lines comprise a number of dots. Each dot is drawn (painted) based onclipping area (drawing [painting] area) information specified by the CPU.

de

A line that is completely removed from the drawing (painting) area—and an entire 1line drawing (painting) is not required—can be detected in advance, and drawing(painting) efficiency can be increased by not allowing the drawing (painting) to be
started. Also, when one end of 1 line is outside the drawing (painting) area, efficiency can be improved by starting drawing (painting) from inside the drawing(painting) area (that line is limited to vertical and horizontal directions).

nfi

The VDP1 normally performs this detection, but in the case of small elements whose
points are in the (A)—(B) or (D)—(C) direction, the overhead required for that detection (up to five CPU clock cycles for one line) becomes conspicuous and can lower
the drawing (painting) efficiency.

SE

GA

Co

In the case of large elements that extend greatly out of the drawing (painting) area, it
is more efficient to perform pre-clipping. This bit is only valid for drawing (painting) commands. Fix it to “0” for other commands.

VDP 1 User's Manual Supplement

3

2.0

Using Version 0nti
alUse version 0 as described below.
2.1 High Speed Shrink (HSS)

When drawing (painting) scaled sprites and distorted sprites reduced in version 1, it
is possible to specify high speed shrink in order to give precedence to speed.

deVersion 0 does not have this function. In order to give precedence to speed whenscaled sprites and distorted sprites are scaled down and drawn (painted), a method
other than one that scales down and draws (paints) scaled sprites and distorted
sprites is required.

2.2 Pre-Clipping Disable (Pclp)

nfi

For example, a method that draws (paints) using scaled sprites or that registers
reduced scaled sprites or distorted sprites and draws (paints) them without reduction must be used. If the drawing (painting) speed is slow in version 0, confirm
whether or not a scaled sprite or distorted sprite is being scaled down and drawn.

When pre-clipping is not required in version 1, drawing (painting) speed can beraised by specifying pre-clipping disable.

Co

Version 0 does not have this function. When drawing (painting) small horizontal orvertical lines, it is necessary to employ a method that reduces the overhead required
to detect whether drawing (painting) with pre-clipping is necessary.

SEGA

For example, measures must be taken by making several small elements large whendrawing (painting) them or exchanging left and right for up and down and increasing the size when drawing (painting) them. If the drawing (painting) speed is slow
in version 0, confirm whether or not many small elements are being drawn(painted).

4

3.0

Manual Changesntial

The manual for version 1 can be changed into the manual for version 0 by making
the following changes.
3.1 Description of Changes

The items changed include explanations of the three bits added and their functions.
The manual can be used for version 0 by deleting the explanations of these functions.
Version Number (VER)

Even/Odd Coordinate Selection Bit (EOS)deThe value of the version number (VER, bits 15-12) of the mode register (MODR,
100016H) is “0” (0000B).

High Speed Shrink (HSS)

nfi

Information regarding the even/odd coordinate selection bit (EOS, bit 4) of theframe buffer change mode register (FBCR, 100002H) is deleted. Bit 4 of FBCR is set
to “0”. Information regarding the even/odd coordinate selection bit (EOS, bit 7) of
the mode register (MODR, 100016H) is also deleted. Bit 7 of MODR becomes undefined.

Co

Information regarding high speed shrink (HSS, bit 12) of the draw (paint) mode
word (CMDPMOD, +04) is deleted. Bit 12 of CMDPMOD is set to “0” for scaled
sprites and distorted sprites. Information regarding HSS = 1 in the explanation ofend code disable is deleted. The information regarding HSS = 0 remains valid.
Pre-Clipping Disable (Pclp)

SE

GA

Information regarding pre-clipping disable (Pclp, bit 11) of the draw (paint) mode
word (CMDPMOD, +04) is deleted. Bit 11 of FBCR is set to “0” in the draw (paint)command table.

VDP 1 User's Manual Supplement53.2 Detailed Descriptionsnti
al

The items changed for version 0 and their descriptions are given in the table below.
V0 in the table refers to version 0 of the VDP1 device.
Table 3.1 Changes and Their Descriptions
35

11

Item
(Chapter 4 System Registers)
System Registers

38

Top
figureFrame buffer change mode
register

44

—

57

FigureMode register

Version number
Even/odd coordinate selection bit(Chapter 5 Tables)
Command table

66

Figure5.5

79

Figure
7
10

81
82

—
—

High speed shrink

83—Pre-clipping disable

86

Top
table

End code disable(Chapter 6 Command Tables)
CMDPMODGA
SE
6Delete change timing of even/odd coordinate selection bit(EOS).
This bit is not defined in version 0.
Delete even/odd coordinate selection bit (EOS).
Set bit 4 to "0".
This bit is not defined in V0.
Delete explanation of function of even/odd coordinate
selection bit (EOS).
Set bit to "0".
This bit is not defined in V0.
Delete even/odd coordinate selection bit (EOS).
Bit 7 is undefined.
This bit is not defined in V0.
The value of bits 15-12 is "0" (0000B).
Delete even/odd coordinate selection bit (EOS).

Delete HSS (high speed shrink) from bit 12 and Pclp (preclipping) from bit 11 of the draw (paint) mode word
(CMDPMOD, +04H).
Set both bits 11 and 12 to "0".
These bits are not defined in V0.
Delete HSS (high speed shrink) from bit 12 and Pclp (preclipping disable) from bit 11.
Set both bits 12 and 11 to "0".
These bits are not defined in V0.
Delete the explanation of the function of high speed shrink(HSS).
Set bit 12 to "0".
This bit is not defined in V0.
Delete the explanation of the function of pre-clipping(Pclp).
Set bit 11 to "0".
This bit is not defined in V0.
Delete end code processing when HSS is "1".
HSS is not defined in V0.
Set HSS to "0".

Co

11
15

Even/odd coordinate selection bit

Description

de

Line

nfi

Page

(Continued on next page.)Table 3.1 Changes and Their Descriptions (continued)

118

Figure17

120
121

Figure5122

Figure16

124

Figure19
Figure
13

126

128
130

Figure13
Figure13

Item(Chapter 7 Commands)
Normal sprite draw (paint)command
Scaled sprite draw (paint)command(Specification of two coordinate
points)Scaled sprite draw (paint)command(Specification of zoom point)
Distorted sprite draw (paint)command
Polygon draw (paint) command

Polyline draw (paint) command
Line draw (paint) command(Chapter 8 Quick Reference)
Frame buffer change mode
register
Even/odd coordinate selection bit

Figure139

Bottomtable
Figure142

4FigureEven/odd coordinate selection bit
Command table

146

FigureDraw (paint) mode word

2

High speed shrink

3Pre-clipping disable

147

Top
table

End code disable

152

Bottomtable
FigureNormal sprite draw (paint)command
Scaled sprite draw (paint)commandDistorted sprite draw (paint)command
Polygon draw (paint) command

GA

153
154

155

right 12
right 33
right 42

162

Delete even/odd coordinate selection bit (EOS).
Set bit 4 of MODR to "0".
Delete even/odd coordinate selection bit (EOS).
Set bit 4 of MODR to "0".
Delete even/odd coordinate selection bit (EOS).
Bit 7 of MODR is undefined.
Delete even/odd coordinate selection bit (EOS).
Delete HSS and Pclp from CMDPMOD.
Set both bits 11 and 12 of CMDPMOD to "0".
Delete HSS (high speed shrink) from bit 12 and Pclp (preclipping disable) from bit 11.
Set both bits 12 and 11 to "0".
Delete high speed shrink (HSS).
Set bit 12 of CMDPMOD to "0".
Delete pre-clipping (Pclp).
Set bit 11 of CMDPMOD to "0".
Delete end code processing when HSS is "1".
HSS is not defined in V0.
Set HSS to "0".
Delete Pclp from CMDPMOD.
Set bit 11 of CMDPMOD to "0".
Delete HSS and Pclp from CMDPMOD.
Set bits 12 and 11 of CMDPMOD to "0".
Delete Pclp from CMDPMOD.
Set bit 11 of CMDPMOD to "0".

Polyline draw (paint) command

Line draw (paint) command(Index)
Index

SE

161

Top
figureBottomfigureTopfigureBottomfigureDelete Pclp from CMDPMOD.
Delete definition of Pclp.
Set bit 11 of CMDPMOD to "0".

Co

Mode register

Delete Pclp from CMDPMOD.
Delete Pclp definition.
Set bit 11 of CMDPMOD to "0".
Delete HSS and Pclp from CMDPMOD.
Delete definition of HSS and Pclp.
Set bits 12 and 11 of CMDPMOD to "0".

nfi

135

Description

nti
al

Line

de

Page

VDP 1 User's Manual Supplement

Delete "even/odd coordinate selection."
Delete "high speed shrink."
Delete "pre-clipping".

7