How early 8-bit arcade machines differed in design from 8-bit home computers
floooh.github.io
floooh.github.io
There's some excellent games buried away on them. This series of books in particular is amazing:
https://www.amazon.com/Untold-History-Japanese-Game-Develope...
Anyone know what the author is referring to?
- KC85/2 to /4 these were 'original' designs, even though some ideas (like the pixel/color attribute RAMs) were inspired by the ZX Spectrum. A slower Z80 CPU (1.75 MHz) but higher pixel and color resolution (e.g. a 320x256 display, compared to the Spectrum's 256x192)
- Z1013 was a most minimalistic Z80 home computer sold as a assemble-yourself-kit (the only East German computer that was really available and affordable for 'normal people')
- the Z9001 (aka KC85/1, aka KC87) was somewhere inbetween the Z1013 and KC85/2 models
- the KC Compact was an East German Amstrad CPC clone, but without custom chip (the custom gate array was 'emulated' with standard chips)
The Soviet Union built a very interesting PDP-11 compatible 16 bit home computer (https://en.wikipedia.org/wiki/Electronika_BK), and impressive demos are still written for it: https://www.youtube.com/watch?v=u_pdp1QSp70.
There were also surprising number of ZX Spectrum clones built in Eastern Europe because they didn't require custom chips, some of those designs also improved on the original Spectrum design (for instance a higher color resolution)
Bulgaria built an Apple II clone (and also built their own MOS 6502 and Motorola 6800 clone chips): https://en.wikipedia.org/wiki/Pravetz_computers
...and there's probably at least a dozen more computer models I have never heard of :)
Hahaha, this matches my own experience exactly :) Playing the likes of Dragon Ninja / Bad Dudes and then trying to reproduce them on the Spectrum. The few arcade games that did have Spectrum versions were disappointing - thinking of Green Beret for example.
Best memory might be finding a POKE for infinite lives in Commando, playing it for 3 days straight until level 70-something (the levels just looped every 5 or 10 stages, I think?), and ending up with a burned CRT. I'll never know whether the infinite lives POKE also made the game loop, or the developers never thought of including an ending in the Spectrum port.
The "native" Spectrum games were better IMO. Sir Fred comes to mind. Pentagram, Gunfright, Knight's Lore, Abu Simbel Profanation. These worked with the limitations of the hardware (most notably the colour clash), not against it.
I mean, there even was a Spectrum version of Operation Wolf, and it was kind of atrocious (but still unbelievable that they made it work on such modest hardware!)
Other games would get faster and faster, eventuallt ending up impossibly difficult.
hardware schematics, dumped rom, source of a working emulator... What do you want more ? :)
Home computer emulators need to be able to handle all the software you can throw at it, while an arcade emulator need to be able to handle on the single game ROM which ran on it. It doesn't need to handle subtle behavior of the hardware which never manifests in the game output.
(Of course, the situation is different for arcade machines which could take different ROMs.)
(I will also forever wonder why Sega's 16-bit console didn't have hardware sprite scaling and rotation, since that was the main attraction of Sega games at the time...)
I don't think it was only economic reasons, because I really doubt it would be that much more expensive to have a few tiled background layers, a few more sprites on the screen and a few more colors in a decent (i.e. not 16o pixels wide) resolution...
More colors, background layers and sprites with slow CPUs and graphics chips in the 80s usually meant having several RAM chips to have multiple memory buses and parallel accesses to video memory and more video memory in KB. That's why arcade boards were usually very large and with a lot more components when compared to home computers and home video game consoles.
Sprite scaling was added to Sega's 16-bit console with the Mega CD, it probably wasn't included with the original console so Sega could beat the competition and launch it at a competitive price in 1988 before Nintendo could launch its 16-bit console.
[1] Not real numbers.
The effect is arcade machines almost never had custom chips, but often had duck-taped-together designs that threw in extra chips to accomplish tasks.
Contrast to a machine like the Commodore 64 or Nintendo which had custom sound and graphic chips but where the overall chip count and unit cost was ruthlessly controlled.
If you're considering clones in East Europe, I think the real reason was economic. It was useless to have a complex circuit when the devices were not available. For this reason, most early clones of Sinclair Spectrum used only 7400 series circuits around Z80.
Later machines had more bandwidth and more complicated memory systems, but the limitations are still the same. You have a fixed number of bytes you can fetch from RAM per second, the TV scans out at a certain rate, and that's going to limit what you can do.
1,000,000 / 12,800 = 78.125
i.e. frame rate = 78 frames per second could be updated with that speed.
I am sure 78 frames per second are not really desirable, so the resolution could actually be doubled per scan line:
128 bytes per scan line X 200 scan lines = 25,600
1,000,000 / 25,600 = 39 frames per second.
It all comes down to expense though. You could throw the whole kitchen sink into the computer but then how much would it cost to manufacture and how much would you need to sell the thing for?
Costs need to be cut somewhere and micro computers had to additionally ship an interpreter ROM (typically some dialect of BASIC), more expansions ports (for printers, serial modems, memory expansions, additional storage devices, etc) a physical keyboard, and so on.
Plus lets also not forget that while many micros were sold as games machines - they were originally built as hybrid devices for doing work, finances, etc as well as recreation.
There was a lot of "serious business only" attitude in many of the computers those days.
On a console you typically have a circular buffer and the screen is a movable window on it, so you only have to paint one row every time.
I was envious as hell on my MSX, which had no pixel shifting at all.
Vertical scrolling changes the timing of the bad lines and horizontal scrolling the timing of the bitmap data fetched and this causes the image to come out at a different position.
There are a lot of creative tricks you can do with this though, especially with vertical scrolling.
https://www.atarimagazines.com/compute/issue67/338_1_Atari_F...
On the C64 that’s 8k which is a lot if 16k is all you get (the video chip only has enough address lines to address 16k).
On the C64 for instance the first line of a character (so one every 8) is when the graphics chip fetches the list of characters on that line and that line is a ‘bad line’ where the CPU has much less cycles. And then the CPU is stalled for 50% of the rest of the time so the graphics chip can fetch the character bitmaps indexed by the data fetched during the bad line.
Also if you look at something like the Atari 800, it had at least a subset of what you're talking about as far back as 1979. As a result it was more expensive than the competitor machines, and also many software developers didn't make good use of the features that were there.
I had connected all the above (spectrum, c64, atari) first to a 40 inch b/w tv, then to a 32 inch color tv. Guess what? the spectrum image was visibly blockly, and the c64/atari image was incredibly blocky.
Furthermore, you didn't need another 64k for video ram; there where a lot of palette tricks that could be done. Even if 64k ram were added, the price difference would be small in the end.
So I don't buy it it was the cost; most probably it was the shortsightedness of the designers.
An interview with one of the hardware designers on the Mega Drive/Genesis VDP suggests they wanted this, but that didn't have enough die space. It's also not clear how comparable to their arcade hardware this would have actually been even if it was present. Scaling and rotation requires non-sequential access to the source data which the VRAM used in the MD/Gen is not very good at. My guess is that the limitations would have been similar to what you saw with the scaling hardware on the Sega/Mega CD (i.e. relatively low frame rate due to the limited bandwidth available for updating VRAM).
I wasn't asking for the full powerdrift arcade experience, but something that can emulate it to a certain degree.
They could have gone to a 2 chip solution for the VDP and implemented scaling, but it would have substantially increased costs. Now, Nintendo did notably go with a 2 chip solution for the PPU, but they were using a lower cost CPU, launched 2 years later and sold for a higher price.
There are other places they skimped that hold up much worse than dropping scaling hardware. For instance, having seen photos of the VDP die it seems pretty clear they could have made a nice improvement to the palette hardware if they took more time to optimize the layout (though I imagine that could have taken quite a while with 80's IC design tools).
This wonderful post points out a fascinating cultural shift that I've never seen written up but is visible in the traces of various papers.
Although there was a Cambrian explosion of computer designs in the 1960s and 1970s they did follow a common evolutionary path, to whit: there really was a central processing unit, and around it fed various peripheral parts, primarily memory, I/O (channel controllers) and the like.
A lot of the vocabulary and assumptions of minicomputers and microprocessors came from this world, though the big difference in the late 60s was letting the CPU do some of the I/O (and one of the weird things about C, fundamentally a minicomputer language, was that it didn't have IO keywords or commands).
So when the Alto was designed one of the biggest weird things about it was not the bitmapped display itself but its support: the bus speed was only 3/2 the screen refresh rate! That blew people away (in fact if you wanted to do a lot of computation you'd end up blacking out most of the screen for a while).
==
The games developers went the other way: they started with hardcoded logic and only later were able to use MPUs. so to them they'd just accelerate part of the design with the computer. You can even see this as the domains started to merge; the early Atari computers like the 400 and 800 weren't only what we'd call today game consoles but had built-in sprite hardware that you could call from your programs.
Took longer to boot then I expected, but after that played quickly.