| ..Preface | xi |
1. Introduction to Graphics on the SPARCstation 10SX and | |
| ..SPARCstation 20 | 1-1 |
2. Reserving DRAM for SX Accelerated Applications | 2-1 |
| ..2.1 Introduction | 2-1 |
| ..2.2 Advantages of Using SXDRAM | 2-2 |
| ..2.3 When to Reserve SXDRAM | 2-2 |
| ..2.4 Calculating SXDRAM to Reserve | 2-2 |
| ..2.5 Configuring SXDRAM | 2-3 |
| .....2.5.1 Memory Bank Layout on the SPARCstation 10SX . | 2-3 |
| .....2.5.2 Memory Bank Layout on the SPARCstation 20 | 2-7 |
| .....2.5.3 System Software Constraints for SXDRAM | |
| ..........Configuration | 2-7 |
| .....2.5.4 Recommended DSIMM/VSIMM Configuration for the | |
| ..........SPARCstation 10SX | 2-8 |
| .....2.5.5 SXDRAM Configuration | 2-9 |
3. Running OpenWindows on the SPARCstation 10SX and | |
| ..SPARCstation 20 | 3-1 |
| ...3.1 CG14 Pixel Modes for Running the Window System | 3-1 |
| ...3.2 Visuals Supported By Openwindows 3.3 | 3-2 |
| ...3.3 False Color Effects | 3-3 |
4. XIL Acceleration on SX | 4-1 |
| ...4.1 SX XIL Features | 4-1 |
| .....4.1.1 Imaging Molecules | 4-5 |
5. XGL Accelerator Guide for SX | 5-1 |
| ...5.1 Overview | 5-1 |
| ...5.2 Texture Mapping | 5-3 |
| ...5.3 X Visuals | 5-3 |
| .....5.3.1 XGL_3D_CTX_JITTER_OFFSET | 5-4 |
| .....5.3.2 SIGFPE | 5-4 |
| .....5.3.3 XGL_CTX_PICK_APERTURE | 5-4 |
| .....5.3.4 XGL_DEV_COLOR_TYPE and | |
| ..........XGL_DEV_REAL_COLOR_TYPE | 5-4 |
| ...5.4 Antialiasing | 5-4 |
| ...5.5 Performance Considerations | 5-5 |
A. Boot Messages | A-1 |
| Table 2-1 SPARCstation 10SX System Memory Layout 16 MByte DSIMMs only | 2-5 |
| Table 2-2 SPARCstation 10SX System Memory Layout 1 4 MByte VSIMM, 7 16 MByte DSIMMs | 2-5 |
| Table 2-3 SPARCstation 10SX System Memory Layout 1 4 MByte VSIMM, 7 64 MByte DSIMMs | 2-6 |
| Table 2-4 Comparing Slot Locations on the SPARCstation 10SX and SPARCstation 20 | 2-7 |
| Table 4-1 Dyadic Functions | 4-2 |
| Table 4-2 Other Imaging Functions | 4-3 |
| Table 4-3 Convolution Kernel Sizes Supported on SPARCstation 10SX and SPARCstation 20 | 4-4 |
| Table 4-4 Variations of xil_lookup Supported on SPARCstation 10SX and SPARCstation 20 | 4-5 |
| Table 4-5 Variations of xil_color_convert Supported on SPARCstation 10SX and SPARCstation 20 | 4-5 |
| Table 4-6 Imaging Molecules | 4-6 |
| Figure 2-1 Memory Layout on Mother Board of SPARCstation 10SX | 2-4 |
| Typeface or Symbol | Meaning | Example | |
|---|---|---|---|
| AaBbCc123 | The names of commands, files, and directories; on-screen computer output | Edit your .login file. Use ls -a to list all files. machine_name% You have mail. | |
| AaBbCc123 | What you type, contrasted with on-screen computer output |
| |
| AaBbCc123 | Command-line placeholder: replace with a real name or value | To delete a file, type rm filename. | |
| AaBbCc123 | Book titles, new words or terms, or words to be emphasized | Read Chapter 6 in User's Guide. These are called class options. You must be root to do this. |
| Shell | Prompt |
|---|---|
| C shell prompt | machine_name% |
| C shell superuser prompt | machine_name# |
| Bourne shell and Korn shell prompt | $ |
| Bourne shell and Korn shell superuser prompt | # |
| In the U.S.A. | Outside the U.S.A. |
|---|---|
| Call 1-800-247-0250 | Call 1-801-342-3450 |
| Fax 1-801-373-6798 | Fax 1-801-373-6798 |
| World Wide Web: http://www.sun.com/sundocs/catalog.html | |
| SIMM Slots | DSIMM Size | Physical Address |
|---|---|---|
| Slot 7 | 16 MByte DSIMM | 0x1c000000 |
| Slot 3 | 16 MByte DSIMM | 0xc000000 |
| Slot 6 | 16 MByte DSIMM | 0x18000000 |
| Slot 2 | 16 MByte DSIMM | 0x8000000 |
| Slot 5 | 16 MByte DSIMM | 0x14000000 |
| Slot 1 | 16 MByte DSIMM | 0x4000000 |
| Slot 4 | 16 MByte DSIMM | 0x10000000 |
| Slot 0 | 16 MByte DSIMM | 0x0 |
| SIMM Slots | DSIMM/VSIMM Size | Physical Address |
|---|---|---|
| Slot 7 | 16 MByte DSIMM | 0x1c000000 |
| Slot 3 | 16 MByte DSIMM | 0xc000000 |
| Slot 6 | 16 MByte DSIMM | 0x18000000 |
| Slot 2 | 16 MByte DSIMM | 0x8000000 |
| Slot 5 | 16 MByte DSIMM | 0x14000000 |
| Slot 1 | 16 MByte DSIMM | 0x4000000 |
| Slot 4 | 4 MByte VSIMM | 0xf0000000 |
| Slot 0 | 16 MByte DSIMM | 0x0 |
| SIMM Slots | DSIMM/VSIMM Size | Physical Address |
|---|---|---|
| Slot 7 | 64 MByte DSIMM | 0x1c000000 |
| Slot 3 | 64 MByte DSIMM | 0xc000000 |
| Slot 6 | 64 MByte DSIMM | 0x18000000 |
| Slot 2 | 64 MByte DSIMM | 0x8000000 |
| Slot 5 | 64 MByte DSIMM | 0x14000000 |
| Slot 1 | 64 MByte DSIMM | 0x4000000 |
| Slot 4 | 4 MByte VSIMM | 0xf0000000 |
| Slot 0 | 64 MByte DSIMM | 0x0 |
| Slot Names on SPARCstation 10SX | Slot Names on SPARCstation 20 |
|---|---|
| Slot 7 | Slot 0 |
| Slot 3 | Slot 2 |
| Slot 6 | Slot 5 |
| Slot 2 | Slot 3 |
| Slot 5 (can be VSIMM 1) | Slot 6 |
| Slot 1 | Slot 1 |
| Slot 4 (can be VSIMM 0) | Slot 7 (can be VSIMM 0) |
| Slot 0 | Slot 4 (can be VSIMM 1) |
When configuring the memory subsystem with 64 MByte DSIMMs and 16 MByte DSIMMs, the following examples can be used as a guide:
System configuration: 1 VSIMM, 2 16 MByte DSIMMs, 2 64 MByte DSIMMs
Can be configured as:
1 16 MByte DSIMM in slot 0 1 16 MByte DSIMM in slot 7 1 64 MByte DSIMM in slot 6 1 64 MByte DSIMM in slot 5 1 VSIMM in slot 4
or
1 16 MByte DSIMM in slot 0 1 16 MByte DSIMM in slot 3 1 64 MByte DSIMM in slot 2 1 64 MByte DSIMM in slot 1 1 VSIMM in slot 4 or 5
# sxconfig -n |
# sxconfig -d |
# sxconfig -c |
# echo $PATH |
/bin:/etc/:/usr/bin: |
# PATH=$PATH:/platform/SUNW,SPARCstation-10,SX/sbin export PATH |
# export PATH |
# setenv PATH "$PATH /platform/SUNW,SPARCstation-10,SX/sbin" |
# sxconfig -s 16 |
# sxconfig -s 32 -f |
# halt |
ok |
ok boot disk -rv |
/platform/SUNW,SPARCstation-10,SX/sbin/cg14config -r 1280x1024@66 |
/platform/SUNW,SPARCstation-10,SX/sbin/cg14config -r 1152x900@76 |
# CG14 display adapter
class="XSCREEN" name="SUNWcg14"
ddxHandler="ddxSUNWcg14.so.1" ddxInitFunc="sunCG14Init" pixelmode= "8";
|
/usr/openwin/bin/openwin -dev /dev/fbs/cgfourteen0 defdepth 8 |
/usr/openwin/bin/openwin -dev /dev/fbs/cgfourteen0 defdepth 24 |
| XIL Function | 1 band | XIL_BYTE 3 bands | 4 bands | XIL_SHORT n bands | XIL_BYTE Child 3/4 |
|---|---|---|---|---|---|
| xil_add | x | x | x | x | x |
| xil_and | x | x | x | x | x |
| xil_multiply | x | x | x | x | x |
| xil_or | x | x | x | x | x |
| xil_subtract | x | x | x | x | x |
| xil_xor | x | x | x | x | x |
| XIL Function | 1 band | XIL_BYTE 3 bands | 4 bands | XIL_SHORT 1 band | XIL_BYTE Child3/4 |
|---|---|---|---|---|---|
| xil_add_const | x | x | x | x | x |
| xil_and_const | x | x | x | x | x |
| xil_divide_const | x | x | x | x | x |
| xil_multiply_const | x | x | x | x | x |
| xil_not | x | x | x | x | x |
| xil_or_const | x | x | x | x | x |
| xil_subtract_const | x | x | x | x | x |
| xil_subtract_from_const | x | x | x | x | x |
| xil_xor_const | x | x | x | x | x |
| xil_min | x | x | x | x | x |
| xil_max | x | x | x | x | x |
| xil_absolute | x | ||||
| xil_blend | x | x | x | x | x |
| xil_paint | x | x | x | x | x |
| xil_scale | x | x | x | x | x |
| xil_rescale | x | x | x | x | x |
| xil_set_value | x | x | x | x | x |
| xil_extrema | x | x | x | x | x |
| 1 xil_convolve | x | x | x | x | x |
| xil_rotate (Nearest Neighbor only, no ROI) | x | x | x | x | x |
| xil_affine (Nearest Neighbor only, no ROI) xil_lookup2 xil_color_convert3 | x | x | x | x | |
| 4 xil_copy | x | x | x | x | x |
| XIL Function | 1 band | XIL_BYTE 3 bands | 4 bands | XIL_SHORT 1 band | XIL_BYTE Child3/4 |
|---|---|---|---|---|---|
| xil_threshold | x | x | |||
| xil_transpose | x | x | x | x | x |
| xil_translate | x | x | x | x | x |
| xil_get_pixel | x | x | x | x | x |
| xil_put_pixel | x | x | x | x | x |
| 5 xil_band_combine 6 xil_decompress 7 xil_cast | x | x (3-band) |
| XIL Function | Kernel |
|---|---|
| xil_convolve | 3x3 |
| xil_convolve | 5x5 |
| xil_convolve | 7x7 |
| xil_convolve | 3x1/1x3 (molecule) |
| xil_convolve | 5x1/1x5 (molecule) |
| xil_convolve | 7x1/1x7 (molecule) |
| XIL Function | From-To | Bands |
|---|---|---|
| xil_lookup | 8-8 | 1 band XIL_BYTE |
| xil_lookup | 16_16 | 1 band XIL_SHORT |
| xil_lookup | 8_16 | 1 band XIL_BYTE to XIL_SHORT |
| xil_lookup | 16_8 | 1 band XIL_SHORT to XIL_BYTE |
| xil_lookup | 8_24 | 1 band to 3 bands XIL_BYTE |
| xil_lookup | 24_24 | 3 bands to 3 band XIL_BYTEs |
| xil_lookup | 8_32 | 1 band to 4 bands XIL_BYTE |
| xil_lookup | 32_32 | 4 bands to 4 band XIL_BYTE |
| Table 4-5 Variations of xil_color_convert SPARCstation 20 | Supported on SPARCstation 10SX and | |
| Source Colorspace | Destination Colorspace | |
| rgblinear | rgb709 | |
| rgblinear | ycc709 | |
| rgblinear | ycc601 | |
| rgblinear | ylinear | |
| rgblinear | cmyk | |
| ycc601 | rgb709 | |
| rgb709 | rgblinear | |
| rgb709 | ycc601 | |
| rgb709 | photoycc | |
| photoycc | rgb709 | |
| cmyk | rgblinear | |
Function | Bands (XIL_BYTE only) 1 3 4 |
|---|---|
| xil_copy+display | x x x |
| xil_rotate+display | x x x |
| xil_scale+display | x x x |
| xil_set_value+display | x x x |
| xil_translate+display | x x x |
| xil_transpose+display | x x x |
| xil_convolve+xil_convolve | x x x (for separable convolution) |
· Dots
· Antialiased dots
· Lines
· Antialiased lines
· Spans
· Triangles
· Filling
· Copying
· Accumulation buffering
XGL_3D_CTX_SURF_FACE_DISTINGUISH FALSE XGL_3D_CTX_SURF_FRONT_ILLUMINATION XGL_ILLUM_NONE XGL_3D_CTX_SURF_TMAP_PERSP_CORRECTION XGL_TEXTURE_PERSP_NONE Xgl_texture_interp_method XGL_TEXTURE_INTERP_POINT (desc.interp_info.filter1/filter2) Xgl_texture_op XGL_TEXTURE_OP_REPLACE (desc.comp_info.render_component_desc[0].texture_op) |
/platform/SUNW,SPARCstation-10,SX/sbin/cg14config -g 2.2 -u 2.2 |
| xgl_context_copy_raster() | From window raster to window raster. |
| xgl_multi_marker() | 2D circles of radii 1 to 32 pixels. |
| xgl_multi_polyline() | In 2D, thin lines, solid or patterned, containing no color or homogeneous values, and with XGL_CTX_ROP equal to XGL_ROP_COPY. In 3D, thin lines, solid or patterned, containing no color, flag, homogeneous or data values, not model clipped, clipped to +w only, and with XGL_CTX_ROP equal to XGL_ROP_COPY. |
| xgl_multi_simple_polygon() | In 3D, triangles. The hint flags must be set to XGL_FACET_FLAG_SIDES_ARE_3. |
| xgl_triangle_strip() | Triangles that have no homogeneous or data values, are not model clipped, are clipped to +w only, are 24-bit, have edges turned off, are solid and opaque, and have XGL_3D_CTX_Z_BUFFER_COMP_METHOD equal to XGL_Z_COMP_LESS_THAN_OR_EQUAL. |
| xgl_context_accumulate() | All operations. |
SunOS Release 5.3 Version alpha2.3 [UNIX(R) System V Release 4.0] Copyright (c) 1983-1993, Sun Microsystems, Inc. pac: enabled - SuperSPARC/SuperCache cpu 0: TI,TMS390Z55 (mid 8 impl 0x0 ver 0x0 clock 40 MHz) mem = 49152K (0x3000000) avail mem = 41820160 Ethernet address = 8:0:20:13:0:37 root nexus = SUNW,Premier-24 iommu0 at root: obio 0xe0000000 sbus0 at iommu0: obio 0xe0001000 espdma0 at sbus0: SBus slot f 0x400000 esp0 at espdma0: SBus slot f 0x800000 sparc ipl 4 sd0 at esp0: target 0 lun 0 sd0 is /iommu@f,e0000000/sbus@f,e0001000/espdma@f,400000/esp@f, 800000/sd@0,0 <SUN0669 cyl 1614 alt 2 hd 15 sec 54> sd2 at esp0: target 2 lun 0 sd2 is /iommu@f,e0000000/sbus@f,e0001000/espdma@f,400000/esp@f, 800000/sd@2,0 <SUN0424 cyl 1151 alt 2 hd 9 sec 80> sd3 at esp0: target 3 lun 0 sd3 is /iommu@f,e0000000/sbus@f,e0001000/espdma@f,400000/esp@f, 800000/sd@3,0 |
<SUN0424 cyl 1151 alt 2 hd 9 sec 80> sd6 at esp0: target 6 lun 0 sd6 is /iommu@f,e0000000/sbus@f,e0001000/espdma@f,400000/esp@f, 800000/sd@6,0 <> Unable to install/attach driver 'isp' root on /iommu@f,e0000000/sbus@f,e0001000/espdma@f,400000/esp@f, 800000/sd@3,0:a fstype ufs obio0 at root zs0 at obio0: obio 0x100000 sparc ipl 12 zs0 is /obio/zs@0,100000 zs1 at obio0: obio 0x0 sparc ipl 12 zs1 is /obio/zs@0,0 configuring network interfaces:ledma0 at sbus0: SBus slot f 0x400010 le0 at ledma0: SBus slot f 0xc00000 sparc ipl 6 le0 is /iommu@f,e0000000/sbus@f,e0001000/ledma@f,400010/le@f, c00000 le0. Hostname: example dump on /dev/dsk/c0t3d0s1 size 65860K Configuring the /devices directory Unable to install/attach driver 'bwtwo' Unable to install/attach driver 'audio' Unable to install/attach driver 'cgthree' st4: <Archive QIC-150> st4 at esp0: target 4 lun 0 st4 is /iommu@f,e0000000/sbus@f,e0001000/espdma@f,400000/esp@f, 800000/st@4,0 Unable to install/attach driver 'isp' SUNW,fdtwo0 at obio0: obio 0x700000 sparc ipl 11 SUNW,fdtwo0 is /obio/SUNW,fdtwo@0,700000 Unable to install/attach driver 'cgsix' Unable to install/attach driver 'vme' Unable to install/attach driver 'ipi3sc' Unable to install/attach driver 'id' Unable to install/attach driver 'vme' Unable to install/attach driver 'vmemem' sbusmem0 at sbus0: SBus slot 0 0x0 sbusmem0 is /iommu@f,e0000000/sbus@f,e0001000/sbusmem@0,0 sbusmem1 at sbus0: SBus slot 1 0x0 sbusmem1 is /iommu@f,e0000000/sbus@f,e0001000/sbusmem@1,0 sbusmem2 at sbus0: SBus slot 2 0x0 sbusmem2 is /iommu@f,e0000000/sbus@f,e0001000/sbusmem@2,0 sbusmem3 at sbus0: SBus slot 3 0x0 |
sbusmem3 is /iommu@f,e0000000/sbus@f,e0001000/sbusmem@3,0
sbusmem14 at sbus0: SBus slot e 0x0
sbusmem14 is /iommu@f,e0000000/sbus@f,e0001000/sbusmem@e,0
sbusmem15 at sbus0: SBus slot f 0x0
sbusmem15 is /iommu@f,e0000000/sbus@f,e0001000/sbusmem@f,0
Unable to install/attach driver 'xbox'
SUNW,bpp0 at sbus0: SBus slot f 0x4800000 SBus level 2 sparc ipl 3
SUNW,bpp0 is /iommu@f,e0000000/sbus@f,e0001000/SUNW,bpp@f,
4800000
Unable to install/attach driver 'pn'
Unable to install/attach driver 'lebuffer'
Unable to install/attach driver 'cgeight'
Unable to install/attach driver 'ipi3sc'
SUNW,DBRIe0 at sbus0: SBus slot e 0x10000 SBus level 5 sparc ipl 9
SUNW,DBRIe0 is /iommu@f,e0000000/sbus@f,e0001000/SUNW,DBRIe@e,
10000
MMCODEC: Manufacturer id 1, Revision 1
pseudo-device: vol0
vol0 is /pseudo/vol@0
Unable to install/attach driver 'xbox'
Unable to install/attach driver 'vme'
Unable to install/attach driver 'mcp'
Unable to install/attach driver 'vme'
Unable to install/attach driver 'mcp'
Unable to install/attach driver 'mcpzsa'
Unable to install/attach driver 'vme'
Unable to install/attach driver 'mcp'
Unable to install/attach driver 'mcpp'
SUNW,sx0 at root: obio 0x80000000 and obio 0x80001000
SUNW,sx0 is /SUNW,sx@f,80000000
cgfourteen0 at obio0: obio 0x0 and obio 0x0 sparc ipl 8
cgfourteen0 is /obio/cgfourteen@1,0
sx_cmem: Installed 112MB
Reserved 8MB
Fragment 0
Avail For System Use 104MB
pseudo-device: sx_cmem0
sx_cmem0 is /pseudo/sx_cmem@0
Unable to install/attach driver 'stc'
Unable to install/attach driver 'isp'
Unable to install/attach driver 'cgtwelve'
Unable to install/attach driver 'gt'
Unable to install/attach driver 'leo'
Unable to install/attach driver 'rtvc'
Unable to install/attach driver 'tcx'
|
Configuring the /dev directory Configuring the /dev directory (compatibility devices) The system is coming up. Please wait. ... |
| antialiasing | 5-4 |
| cg14frame buffer | 5-2 |
| cg14 visuals | 5-3 |
| cgfourteen device driver | 1-1 |
| configuring SXDRAM | 2-3 to 2-11 |
| double-buffering | 2-2 |
| false color effects | 3-3 |
| OpenWindows on SPARCstation 10SX | 3-1 |
| Scalable Memory Controller (SMC) | 1-1 |
| SIGFPE | 5-4 |
| SMC (Scalable Memory Controller) | 1-1, 2-1 |
| SPARCstation 10 | 1-1 |
| SPARCstation 10SX | 1-1 |
| .....XIL accelerator guide | 4-1 |
| SPARCstation 20 | 1-1 |
| .....XIL accelerator guide | 4-1 |
| SX hardware context | 5-2 |
| SX imaging and graphics accelerator | 1-1, 2-1 |
| SXDRAM | 2-1 to 2-11 |
| .....calculating amount to reserve | 2-2 |
| .....configuring | 2-3 to 2-11 |
| system memory controller | 1-1 |
| video RAM | 1-1 |
| video subsystem | 1-1 |
| visuals, supported by OpenWindows | 3-2 |
| VSIMM | 1-1 |
| XGL 3.0.2 accelerator guide for SX | 5-1 to 5-5 |
| XGL, use of SXDRAM by | 2-2 to 2-3 |
| XGL/SX driver | 5-2, 5-5 |
| XGL_3D_CTX_JITTER_OFFSET | 5-4 |
| XGL_CTX_PICK_APERTURE | 5-4 |
| XGL_DEV_COLOR_TYPE | 5-4 |
| XGL_DEV_REAL_COLOR_TYPE | 5-4 |
| XIL acceleration on SX | 4-1 to ?? |
| XIL accelerator guide | |
| .....SPARCstation 10SX and 20 | 4-1 |
| XIL, use of SXDRAM by | 2-2 to 2-3 |
| Z buffer | 5-2 |
| Z-buffering | 2-2 |