# Radeon R200 series

The R200 is the second generation of GPUs used in Radeon graphics cards and developed by ATI Technologies. This GPU features 3D acceleration based upon Microsoft Direct3D 8.1 and OpenGL 1.3, a major improvement in features and performance compared to the preceding Radeon R100 design (Radeon 7000/7200/7500). The GPU also includes 2D GUI acceleration, video acceleration, and multiple display outputs. "R200" refers to the development codename of the initially released GPU of the generation, which was released as the Radeon 8500 and Radeon 8500LE/9100. It is the basis for a variety of other succeeding products, including the higher-performance refresh R250 (Radeon 8500XT) that was ending up cancelled, and the lower-cost derivatives RV250 (Radeon 9000) and RV280 (Radeon 9200/9250).
ATI had re-branded its products in 2001, intending the 7xxx series to indicate DirectX 7.0 capabilities, 8xxx for DirectX 8.1, and so on. However, in naming the Radeon 9000/9100/9200/9250, which only had DirectX 8.1 rendering features, ATI advertised them as "DirectX 9.0 compatible" while the truly DirectX 9.0-spec Radeon 9700 was "DirectX 9.0 compliant".

## Architecture

R200's 3D hardware consists of 4 pixel pipelines, each with 2 texture sampling units. It has 2 vertex shader units and a legacy Direct3D 7 TCL unit, marketed as Charisma Engine II. It is ATI's first GPU with programmable pixel and vertex processors, called Pixel Tapestry II and compliant with Direct3D 8.1. R200 has advanced memory bandwidth saving and overdraw reduction hardware called HyperZ II that consists of occlusion culling (hierarchical Z), fast z-buffer clear, and z-buffer compression. The GPU is capable of dual display output (HydraVision) and is equipped with a video decoding engine (Video Immersion II) with adaptive hardware deinterlacing, temporal filtering, motion compensation, and iDCT.
R200 introduced pixel shader version 1.4 (PS1.4), a significant enhancement to prior PS1.x specifications. Notable instructions include "phase", "texcrd", and "texld". The phase instruction allows a shader program to operate on two separate "phases" (2 passes through the hardware), effectively doubling the maximum number of texture addressing and arithmetic instructions, and potentially allowing the number of passes required for an effect to be reduced. This allows not only more complicated effects, but can also provide a speed boost by utilizing the hardware more efficiently. The "texcrd" instruction moves the texture coordinate values of a texture into the destination register, while the "texld" instruction will load the texture at the coordinates specified in the source register to the destination register.
Compared to R100's 2x3 pixel pipeline architecture, R200's 4x2 design is more robust despite losing one texture unit per pipeline. Each pipeline can now address a total of 6 texture layers per pass. The chip achieves this by using a method known as 'loop-back'. Increasing the number of textures accessed per pass reduces the number of times the card is forced into multi-pass rendering.
The texture filtering capabilities of R200 are also improved over its predecessor. For anisotropic filtering, Radeon 8500 uses a technique similar to that used in R100, but improved with trilinear filtering and some other refinements. However, it is still highly angle-dependent and the driver sometimes forces bilinear filtering for speed. NVIDIA's GeForce4 Ti series offered a more accurate anisotropic implementation, but with a greater performance impact.
R200 has ATI's first implementation of a hardware-accelerated tessellation engine (a.k.a. higher order surfaces), called Truform, which can automatically increase the geometric complexity of 3D models. The technology requires developer support and is not practical for all scenarios. It can undesirably round-out models. As a result of very limited adoption, ATI dropped TruForm support from its future hardware.
| | DirectX 8.0 Pixel Shader 1.1 | DirectX 8.1 Pixel Shader 1.4 |
| Max. Texture Inputs | 4 | 6 |
| Max. Program Length | 12 instructions (up to 4 texture sampling, 8 color blending) | 22 instructions (up to 6 texture sampling, 8 texture addressing, 8 color blending) |
| Instruction Set | 13 address operations, 8 color operations | 12 address / color operations |
| Texture Addressing Modes | 40 | virtually unlimited |

## Performance

Radeon 8500's biggest initial disappointment was its early driver releases. At launch, the card's performance was below expectations and it had numerous software flaws that caused problems with games. The chip's anti-aliasing support was only functional in Direct3D and was very slow. To dampen excitement for 8500, competitor nVidia released their Detonator4 driver package on the same day as most web sites previewed the Radeon 8500. nVidia's drivers were of better quality, and they also further boosted the GeForce3's performance.
Several hardware review sites noted anomalies in actual game tests with the Radeon 8500. For example, ATI was detecting the executable "Quake3.exe" and forcing the texture filtering quality to a much lower level than normally produced by the card, presumably in order to improve performance. HardOCP was the first hardware review web site to bring the issue to the community, and proved its existence by renaming all instances of "Quake" in the executable to "Quack."
However, even with the Detonator4 drivers, the Radeon 8500 was able to outperform the original GeForce3 (which the 8500 was intended to compete against) and in some circumstances its faster revision, the GeForce3 Ti500, the higher clocked derivative Nvidia had rolled out in response to the R200 project. Later, driver updates helped to further close the performance gap between the 8500 and the Ti500, while the 8500 was also significantly less expensive and offered additional multimedia features such as dual-monitor support. The greater features of the All-In-Wonder (AIW) Radeon 8500 DV and the AIW Radeon 8500 128 MB proved superior to Nvidia's Personal Cinema equivalents which used the faster GeForce 3 Ti500 and GeForce4 Ti4200. Though the GeForce3 Ti200 did become the first DirectX 8.0 card to offer 128 MB of video memory, instead of the common 64 MB norm for high-end cards of the time, it turned out that the GeForce3's limitations prevented it from taking full advantage of it, while the Radeon 8500 was able to more successfully exploit that potential.
In the end of 2001, to compete with the existing GeForce3 Ti200 and upcoming GeForce4 MX 460, ATI launched the slower-clocked 8500 LE at a comparable price, both of which it outperformed while also having a superior feature set, particularly as the MX 460 was only DirectX 7.0 compliant. The Radeon 8500 LE became popular with OEMs and enthusiasts due to its relative affordability, and overclockability to 8500 levels. Though the GeForce4 Ti4600 took the performance crown, it was a top line solution that was priced almost double that of the Radeon 8500 (MSRP of $350–399 versus US$199), so it didn't offer direct competition. With the delayed release of the potentially competitive GeForce4 Ti4200, plus ATI's initiative in rolling out 128 MB versions of the 8500/LE, this kept the R200 line popular among the mid-high performance niche market. Although the Radeon 8500/LE was scheduled to be discontinued in summer 2002, as the R200 feature set would be carried over to the slower but more economical Radeon 9000 (RV250) (see below), and to make way for the next generation Radeon 9700 (R300) as ATI's flagship card, the continued strong market demand meant that the original R200 architecture continued in production but rebranded in late 2002 from Radeon 8500LE to Radeon 9100 (to signify better performance over the RV250).
Over the years the dominant market position of GeForce 3/4 meant that not many games targeted the superior DX8.1 PS 1.4 feature level of the R200, but those that did could see significant performance gains over DX8, as certain operations could be processed in one instead of multiple passes. In these cases the Radeon 8500 may even compete with the newer GeForce4 series running a DX8 codepath. An example for such a game with multiple codepaths is Half-Life 2.
Radeon 8500 came with support for TruForm, an early implementation of Tessellation.

## Implementations
### Radeon 8500/8500 LE/9100

ATI's first R200-based card was the Radeon 8500, launched in October 2001. In December 2001, ATI launched the Radeon 8500 LE (re-released later as the Radeon 9100), an identical chip with a lower clock speed and slower memory. Whereas the full 8500 was clocked at 275 MHz core and 275 MHz RAM, the 8500LE was clocked more conservatively at 250 MHz for the core and 200 or 250 MHz for the RAM. Both video cards were first released in 64 MB DDR SDRAM configurations; the later 128 MB Radeon 8500 boards received a small performance boost resulting from a memory interleave mode.
In November 2001 was the release of the All-In-Wonder Radeon 8500 DV, with 64 MB and a slower clock speed like the 8500 LE. In 2002, three 128 MB cards were rolled out, the Radeon 8500, 8500 LE, and the All-In-Wonder Radeon 8500 128 MB which was clocked at full 8500 speeds but had fewer video-related features than the AIW 8500 DV. ATI claimed that the lower clock speed for the 8500DV was due to the FireWire interface.

### Radeon 8500 XT (canceled)

An updated chip, the Radeon 8500 XT (R250) was planned for a mid-2002 release, to compete against the GeForce4 Ti line, particularly the top line Ti4600 (which retailed for an MSRP of $350–399 USD). Prerelease information touted a 300 MHz core and RAM clock speed for the "R250" chip.
A Radeon 8500 running at 300 MHz clock speeds would have hardly defeated the GeForce4 Ti4600, let alone a newer card from NVIDIA. At best it could have been a better performing mid-range solution than the lower-complexity Radeon 9000 (RV250, see below), but it would also have cost more to produce and would have been poorly suited to the Radeon 9000's dual laptop/desktop roles due to die size and power draw. Notably, overclockers found that Radeon 8500 and Radeon 9000 could not reliably overclock to 300 MHz without additional voltage, so undoubtedly R250 would have had similar issues because of its greater complexity and equivalent manufacturing technology, and this would have resulted in poor chip yields, and thus, higher costs.
ATI, perhaps mindful of what had happened to 3dfx when they took focus off their "Rampage" processor, abandoned the R250 refresh in favor of finishing off their next-generation DirectX 9.0 card which was released as the Radeon 9700. This proved to be a wise move, as it enabled ATI to take the lead in development for the first time instead of trailing NVIDIA. The new Radeon 9700 flagship, with its next-generation architecture giving it unprecedented features and performance, would have been superior to any R250 refresh, and it easily took the performance crown from the Ti4600.

### Radeon 9000

The Radeon 9000 (RV250) was launched alongside the Radeon 9700. This chip was a significant redesign of Radeon 8500 (R200) to reduce production cost and power consumption, as its low power usage made it suitable for mobile applications. Among hardware removed is one of the two texture units, the "TruForm" function, Hierarchical-Z, the DirectX 7 TCL unit and one of the two vertex shaders.
In games, the Radeon 9000 performs similarly to the GeForce4 MX 440 (NV17). Its main advantage over the MX 440 was that it had a full DirectX 8.1 vertex and pixel shader implementation. The 9000 succeeded the Radeon 7500 (RV200) in the mainstream market segment, with the latter being moved to the budget segment. While the 9000 was not quite as fast as the 8500LE (R200) or the Nvidia GeForce3 Ti200 (NV20), the 8500LE and Ti200 were to be discontinued, though the 8500LE was reintroduced in late 2002 as the 9100 due to strong market demand.

### Radeon 9200

A later revision of the 9000 was the Radeon 9200 (RV280) released April 16, 2003, which aside from supporting AGP 8X, was identical. There was also a cheaper version, the 9200SE, which had a 20% lower clock speed and only had a 64-bit memory bus. Another board, called the Radeon 9250 was launched in July 2004, being simply a slightly lower-clocked RV280.

## Laptop versions

Derived from the desktop Radeon 9000, the Mobility Radeon 9000 was launched in early summer 2002, succeeding the Mobility Radeon 7500 as ATI's flagship mobile GPU. The Mobility Radeon 9000 was the first DirectX 8 compliant GPU for notebook applications. It outperformed the nVidia GeForce 2 Go and was more feature-rich than the GeForce 4 Go, based on the GeForce 2 MX (NV11) and GeForce 4 MX (NV17), respectively, both of which were only DirectX 7 compliant. The Mobility Radeon 9000 shipped in laptops within seven days of ATI's announcement. Nvidia's response was the GeForce4 4200 Go (NV28M), launched in late 2002, featuring the same feature-set and similar performance compared to the desktop GeForce 4 Ti4200 (NV28), so it was DirectX 8 compliant while being significantly faster than the Mobility Radeon 9000. However, the GeForce4 4200 Go, aside from a reduced clock speed, had thermal output similar to its desktop counterpart, and also lacked power-saving circuitry like the MX-based GeForce4 4x0 Go series or the Mobility Radeon 9000, making the 4200 Go unpopular with laptop OEMs.
A Mobility Radeon 9200 later followed as well, derived from the desktop 9200. The Mobility Radeon 9200 was also used in many Apple laptops, including the Apple iBook G4.

## Models

* All models are manufactured with a 150 nm fabrication process
| Model | Launch | Code name | Bus interface | Core clock (MHz) | Memory clock (MHz) | Core config$^1$ | Fillrate | Fillrate | Fillrate | Fillrate | Memory | Memory | Memory | Memory | Performance (FLOPS) | TDP (Watts) |
| Model | Launch | Code name | Bus interface | Core clock (MHz) | Memory clock (MHz) | Core config$^1$ | MOperations/s | MPixels/s | MTexels/s | MVertices/s | Size (MiB) | Bandwidth (GB/s) | Bus type | Bus width (bit) | Performance (FLOPS) | TDP (Watts) |
| Radeon 8500 | August 14, 2001 | R200 (chaplin) | AGP 4×, PCI | 275 | 275 | 4:2:8:4 | 1100 | 1100 | 2200 | 137.5 | 64, 128 | 8.8 | DDR | 128 | ? | 33 |
| Radeon 8500 LE | October 30, 2001 | R200 (chaplin) | AGP 4×, PCI | 250 | 200 250 | 4:2:8:4 | 1000 | 1000 | 2000 | 125 | 64, 128 | 8 | DDR | 128 | ? | ? |
| Radeon 9000 | August 1, 2002 | RV250 (iris) | AGP 4×, PCI | 250 | 200 | 4:1:4:4 | 1000 | 1000 | 1000 | 50 | 64, 128 | 6.4 | DDR | 128 | ? | ? |
| Radeon 9000 Pro | August 1, 2002 | RV250 (iris) | AGP 4×, PCI | 275 | 275 | 4:1:4:4 | 1100 | 1100 | 1100 | 68.75 | 64, 128 | 8.8 | DDR | 128 | ? | ? |
| Radeon 9100 | April 1, 2003 | R200 (chaplin) | AGP 4×, PCI | 250 | 200 250 | 4:2:8:4 | 1000 | 1000 | 2000 | 125 | 64, 128 | 8.0 4.0 | DDR | 128 |
| Radeon 9100 | April 1, 2003 | R200 (chaplin) | AGP 4×, PCI | 250 | 200 250 | 4:2:8:4 | 1000 | 1000 | 2000 | 125 | 64, 128 | 8.0 4.0 | DDR | 128 64 | ? | ? |
| Radeon 9200 | April 1, 2003 | RV280 (argus) | AGP 8×, PCI | 250 | 200 | 4:1:4:4 | 1000 | 1000 | 1000 | 62.5 | 64, 128, 256 | 6.4 | DDR | 128 | ? | ? |
| Radeon 9200 SE | March 1, 2003 | RV280 (argus) | AGP 8×, PCI | 200 | 166 | 4:1:4:4 | 800 | 800 | 800 | 50 | 64, 128, 256 | 2.67 | DDR | 64 | ? | ? |
| Radeon 9250 | March 1, 2004 | RV280 (argus) | AGP 8×, PCI | 240 | 200 | 4:1:4:4 | 960 | 960 | 960 | 60 | 64, 128, 256 | 3.2, 6.4 | DDR | 64, 128 | ? | ? |
| Radeon 9250 SE | 2004 | RV280 (argus) | AGP 8x | | | 4:1:4:4 | | | | | 64, 128, 256 | | DDR | 64 | ? | ? |
$^1$ Pixel shaders : Vertex shaders : Texture mapping units : Render output units

### IGP (9000 series)

* All models are manufactured with a 150 nm fabrication process
* Based on the Radeon 9200
| Model | Launch | Code name | Bus interface | Core clock (MHz) | Memory clock (MHz) | Core config$^1$ | Fillrate | Fillrate | Fillrate | Fillrate | Memory | Memory | Memory | Memory |
| Model | Launch | Code name | Bus interface | Core clock (MHz) | Memory clock (MHz) | Core config$^1$ | MOperations/s | MPixels/s | MTexels/s | MVertices/s | Size (MiB) | Bandwidth (GB/s) | Bus type | Bus width (bit) |
| Radeon 9000 | 2003 | RC350 | FSB | 300 | 400 | 4:1:2:2 | 600 | 600 | 600 | 75 | 16 - 128 | 3.2 | DDR | 64 |
| Radeon 9100 | 2003 | RS300 (superman) | FSB | 300 | 400 | 4:1:2:2 | 600 | 600 | 600 | 75 | 16 - 128 | 6.4 | DDR | 128 |
| Radeon 9100 Pro | May 3, 2004 | RS350 | FSB | 300 | 400 | 4:1:2:2 | 600 | 600 | 600 | 75 | 16 - 128 | 6.4 | DDR | 128 |
$^1$ Pixel shaders : Vertex shaders : Texture mapping units : Render output units

### Mobility Radeon series

These GPUs are either integrated into the mainboard or occupy a Mobile PCI Express Module (MXM).
| Model | Launch | Model number | Code name | Fab (nm) | Bus interface | Core clock (MHz) | Memory clock (MHz) | Core config$^1$ | Fillrate | Fillrate | Memory | Memory | Memory | Memory | API compliance (version) | API compliance (version) | Notes |
| Model | Launch | Model number | Code name | Fab (nm) | Bus interface | Core clock (MHz) | Memory clock (MHz) | Core config$^1$ | Pixel (GP/s) | Texture (GT/s) | Size (MB) | Bandwidth (GB/s) | Bus type | Bus width (bit) | Direct3D | OpenGL | Notes |
| Mobility Radeon 9000 | Aug 2002 | M9 | RV250 | 150 | AGP 4× | 200 | 250 | 1:4:4:4 | 1.0 | 32 64 | 3.2 6.4 | DDR | 64 128 | 1.0 | 8.1 | 1.4 | PowerPlay 3.0, Fullstream |
| Mobility Radeon 9200 | Mar 2003 | M9+ | RV280 | 150 | AGP 8× | 250/250 | 200/220 | 1:4:4:4 | 1.0 | 32 64 | 3.2/3.52 6.4/7.04 | DDR | 64 128 | 1.0 | 8.1 | 1.4 | PowerPlay 3.0, Fullstream |
$^1$ Vertex shaders : Pixel shaders : Texture mapping units : Render output units.

## Drivers
### Unix-related operating systems

The open source drivers from X.org/Mesa support almost all features provided by the R200 hardware. They are shipped by default on most BSDs and Linux systems. Newer ATI Catalyst drivers do not offer support for any R500 or older architecture product.
The PowerPC-based Mac mini and iBook G4, which run on Mac OS X, were supplied with Radeon 9200 GPUs; the final Power Mac G4 "Mirrored Drive Door" systems had the 9000 and 9000 Pro cards available as a BTO option.

### Windows drivers

This series of Radeon graphics cards is supported by AMD under Microsoft Windows operating systems including Windows XP (except x64), Windows 2000, Windows Me, and Windows 98. Other operating systems may have support in the form of a generic driver that lacks complete support for the hardware. Driver development for the R200 line ended with the Catalyst 6.11 drivers for Windows XP.

### Classic Mac OS

The Radeon 9250 was the final ATI card to officially support Mac OS 9.

### AmigaOS

The R200 series of Radeon graphics cards is supported by the Amiga operating system, Release 4 and higher. 2D graphics are fully supported by all cards in the family, with 3D acceleration support for the 9000, 9200, and 9250-series of cards.

### MorphOS

The R200 series of Radeon graphics cards is supported by MorphOS