Sega
Equipment

The heart of the developer: the Sega Saturn devs

Before the fifth generation, the hardware of consoles was about equal in performance and differed very little. The same cannot be said about 32/64-bit machines, which started to flood the market from the beginning of 1993. That’s when the carefree Sega vs. Nintendo contests turned into an all-versus-all struggle. The fifth generation created an avalanche of changes in the industry, with every manufacturer trying to make their system more powerful than the competitors. So in just three years, the segment split into outspoken leaders led by Sony and outsiders led by Atari. The 32-bit bar was set exorbitantly high for the debutants of the generation, burying the dreams of the few gamers who believed in the power of the Atari Jaguar, 3DO and 32X.

Fortunately, healthy competition has highlighted the best of the best. And that’s what we’re going to talk about now, and more specifically, the devs to those systems.

So the company, once called Service Games, but known to all as Sega, not just kept up with the trends, but led in this direction the most active work. The key to success was Sega’s arcade legacy of machines such as the Sega System 1, Sega System 2, Sega System 16, ultimately leading to the creation of the pioneering Sega Genesis console hardware of 1988. That same year Sega System 24 was released, and two years later Sega System 32, which had a 32-bit RISC processor in its womb. Sega was so tightly focused on hardware that soon there were arcade cabinets running full 3D polygonal graphics. The Sega Model 1 and then the Sega Model 2 that replaced it weren’t just successful, they were revolutionary machines for 1990 and 1993 respectively.

Needless to say, the Sega Saturn architecture borrowed heavily from at least four Sega arcade systems. Saturn multiprocessor circuit included 2x Hitachi SH-2 CPUs, 3x DSP-mathematical coprocessors, and also 2x video processors (VDP1 and VDP2) which worked in tandem and were responsible for rendering foreground and background, polygons and sprites. As a consequence, the quadrangle polygonal engine was developed based on the Sega Model 1 engine, and a separate GPU for 2D backgrounds was based on the Sega System 24 GPU.

But it wasn’t just the layout that made Sega Saturn tricky for third-party developers. The lack of an operating system and a complex programming environment requiring assembly language knowledge made it noticeably difficult to support the console at the start of sales. The only development tool at the time was the Sega Saturn Programming Box from Sophia Systems in Japan, but even it did not support the C language. This development station, which looked like an industrial computer, not only had an impressive appearance, but also an astronomical price of $30,000. Not surprisingly, the latter did not allow the system to spread properly among small studios and independent developers.

Interestingly, some Sega Saturn Programming Box kits had only one SH-2 CPU, even though the exterior was the same. All ports and switches were located on the front panel: two connectors for gamepads, SCSI II, AV-out, a VCD port for connecting a CD emulator, Serial, as well as power, reset buttons and toggle switches for enabling/disabling third-party devices and modes. The system was “omnivorous” and ran software not only from CD-R, but also from any region (PAL, NTSC).

In addition to the programming tool, Sophia Systems released the Sega Saturn Graphics Box, a graphics station for game designers and the Sega Saturn Sound Box for sound engineers and composers. External similarities kinned the two systems to their parent, combining them into a trio of early 1994-1995 game developer’s kits.

In mid-1995, the Sega Sophia was superseded by the cheaper Saturn CardDev, which could work both with the Sega Saturn Programming Box and directly with the Sega Saturn debug console. The Saturn CardDev was produced in two revisions: revision A (by Sega of America) and revision B (by parent company Cross products). Because of power supply problems, revision A was highly unreliable, it was revision B that became popular. The devkit was connected to the computer via a SCSI interface (via the SCSI Card Kit integrated into the PC), and to the console – via a connector for a cartridge. The development environment was the SNASM2 software, which worked directly with the SH-2 processors.

Speaking of SNASM2. Cross products developed a whole family of devkits not only for Sega, but also for Philips CD-I and Atari Jaguar. The SNASM2 Saturn Development System was very similar to the SNASM2 32X Development System architecture, and was a very handy development tool. SNASM2 included an assembler for SH-2 and 60k processors, a powerful multiprocessor linker, and a GNU compiler that let you work directly with assembler, C and a combination of the two. Split-screen enabled real-time code debugging on a single monitor.

The advanced station interface connected to the Saturn CD Switch debug console via an NMI loop, allowing the programmer to address each processor on the console. Otherwise, the SNASM2 Saturn Development System duplicated its own Saturn CardDev developments. I should note that these devs were appreciated by Sega. So they did not hesitate to buy Cross products company, so that in the future development machines and development consoles were produced under the Japanese brand. By the way, Saturn CD Switch, like Sega Saturn Programming Box, was “region free” and could run debugging games not only from CD-R, but also from an external drive. And that drive was the so-called Mirage Universal CD emulator, designed specifically for real-time CD-ROM emulation. It had a capacity of 1 Gb and could hold up to two games.

But perhaps the most extravagant debugging tool was the Sega Saturn Address checker from IS Electronics. There were several revisions of the device, from a horizontally oriented machine almost a meter long to the standard Sega Saturn debugging machine.

And the console version was similar to the Saturn CD Switch except that it had 32 LEDs, an LED reset switch, and a toggle switch for switching regions on the right front. The 32 LEDs were located on a small board where two Lattice ispLSI 1032 chips performed real-time memory address checking. The LEDs were only illuminated when the machine was accessing forbidden areas of RAM, thus signaling errors reached. The original (“long”) revision of the Sega Saturn Address checker had only a SCSI port instead of a series of LEDs, and the SH-2 processors were mounted on removable boards – just like the Sega Saturn Programming Box layout.

Separately, Hitachi’s E7000 debugging microcomputer, which worked in tandem with the Sega Saturn Programming Box or Sega Saturn Address checker, is worth mentioning. But after the success of CardDev and SNASM2, the insanely expensive E7000 never really caught on with independent developers.

I should point out that Cross products aren’t the only ones who were able to make the most of the Sega Saturn hardware. Psygnosis, in collaboration with SN Systems, created the unique PSY-Q Saturn system, which made life easier for Sega Saturn game developers. Using the same development approach, Psygnosis has achieved an optimal programming environment in C for both the Sony PlayStation, and the Sega Saturn.

What made this system stand out was its low cost, as it was a retail Sega Saturn, a PSY-Q developer cartridge, and a SCSI Adapter Card to connect the workstation to the console. But unfortunately, only three projects in the extensive game library were developed using this programming tool: Bubble Bobble also featuring Rainbow Islands, Batman Forever – The Arcade Game, and Battle Stations.