Hacker News new | ask | show | jobs
by mrandish 768 days ago
Yes, it's a little confusing because these Yamaha VDPs were a mostly backward compatible product line which evolved over time, starting with the v9918 in the TI 99/4. The MSX2+ featured the v9958 which did have 8 sprites (with rotation), tilemaps plus line, row and column scroll. https://en.wikipedia.org/wiki/Yamaha_V9958. It didn't have specific hardware for per-scanline mode switches (ala Amiga's Copper chip) but you could still accomplish such effects by old-school "baby-sitting the beam". Technically, the 6309 was specced running at up to 3.5 MHz, so we'd be overclocking it by 0.08 MHz to get it at the NTSC color burst frequency making such Copper-like timing tricks even easier to do with just the CPU, but we already know it'll easily run at that. Tangentially, this is the same reason the Amiga under-clocked an 8 MHz 68000 CPU to 7.16 MHz (2x color burst).

The confusing part is that, while the v9990 was the last, most advanced chip in the line - it ended up being artificially compromised because it was supposed to ship as the backward-compatible v9978 chip that MSX3 was going to be based on. But that chip ended up being late, so as a stopgap MSX2+ was created instead, with more RAM and an additional RISC CPU bolted on but no new VDP. Shortly after, the market moved on and MSX3 was cancelled. ASCII (who controlled the MSX platform rights) was still pissed at Yamaha for being late on the design (which they blamed for largely killing MSX's chance at survival by delaying MSX3 to death). So, when Yamaha later asked if they could offer the now-complete v9978 to other manufacturers, ASCII required them to remove some of the backward compatible aspects, including the sprites, tiles, scrolling and some bitmap stuff. So, the v9990 ended up shipping with more advanced features in some ways but in other ways nerfed by the arbitrary removal of some capabilities which were already in the base v9958 design before the v9978 improvements were even added.

As it turned out, the v9990 chip was never adopted by any computer platform and was only used in some low-volume MSX expansion cards made by small third-party add-on companies (which is what OP has in his system). Thus, the only computers actually running a v9990 are MSX2 machines which already have a v9958. So those systems have the best of both (since one can overlay on the other).

So, when we talk about the fantasy "Ultimate 8-bit", what we'd really like to spec is the v9978 which existed as finished prototypes in Yamaha engineering but never actually shipped in volume. If we want to stick with a hard "must have been a shipping part" rule, then we'd be left with speccing a v9958 + v9990 (as the OP has). The v9978 was basically just the intersection of those two feature sets, except in one chip. While no samples of the v9978 exist in the wild, the datasheet does exist: https://www.datasheets360.com/pdf/1236193767330354046

Such a 6309 + v9978 + OP4 system with 128K RAM in an Atari XEGS-like hybrid console/computer design and based on the highly-evolved MSX2+ Extended Basic ROMs (the pinnacle of MSFT's ROMs for home computers) would have been a world-beater. It could have shipped in 1988 at $149 in volume ($199 with keyboard) and easily blown away it's 8-bit console and computer competition. With clever coding, games would have looked very close to what the state-of-the-art Amiga could do and in terms of multimedia images, it's 15-bit 32,768 color stills would be even better than the Amiga's 12-bit HAM mode, yet available at less than a quarter of the Amiga 500's $800 MSRP.

Best of all it would have been a game and demo coders dream, with video and sound hardware to handle best-in-class game generation (8 sprites, tilemaps, row, line and column scroll, blitter, palette cycling, scanline interrupt mode tricks, etc), DX7-type FM synthesis and noise generation AND a "68000 Jr"-class CPU running like a bat out of hell with enough headroom to render a lot of high-value real-time objects over the tilemap and under the sprites. That's a killer combination the world never got in 8-bit platforms and didn't get in 16-bit until the Sega Mega Drive (aka Genesis). In the 8-bit era, whether computer or game console, we either got good graphics and sound hardware OR we got a powerful CPU but never both in the same machine where they could work together. It's the combination of the two that unlocked such unprecedented and surprising performance in the Amiga and, later, the Sega Genesis. And at $149 this machine could easily have been a best-seller by Xmas 1988 and had runway for a terrific 3+ year lifecycle. Even at Xmas 1992 it would still have been competitive, if not class-leader, at $99 with a mature game library.

1 comments

The problem with an 8-bit CPU like the Z80 will have a hard time to control all that hardware. Indeed, KAI magazine, who make lots of games that support both the v9990 and OPL4 state exactly that.
Yes, I agree. That's why I specced the 6809/6309 instead of the Z80. Clock for clock the 6309 is nearly twice as performant as the Z80 even though it's also an 8-bit CPU.