Hacker News new | ask | show | jobs
by billygoat 1660 days ago
Ah, my Atari days *swoon*. Learning 6502 assembly on an Atari when I was 14 made me the person I am today. ahahahahah

Atari 8-bit and Commodore machines (and Apple II as well) did share a common 6502 CPU, but the coprocessing chips for graphics and sound are really what separated these machines. Apple's capabilities were far inferior, but it also was released years before the others. (If I remember correctly it was 1977, 1979, and 1982 for the Apple II, Atari 8-bit, and C64).

Atari developed three specialized chips for these computers; two for graphics and one for sound, building on what they learned from the original VCS/2600 machine. Programming these machines is primarily a matter of mastering these three chips.

Unlike the 2600 game machine, there was indeed a frame buffer on the 8-bits, and Atari engineers did some really neat tricks to make interesting use of display memory, allowing programmers to display things differently in horizonal strips down the screen, trading off memory usage, pixel size, number of colors, and text display. As a kid playing lots of Atari games back then, you quickly noticed patterns in how the screen was always laid out -- scores and status along the top or bottom, fancy graphics in the middle.

Commodore's entry a couple years later was suspiciously similar in capabilities, but in a massively cost-reduced form. A big leap in sound tech, but a step sideways or backwards in graphics. In junior high we sat at different lunch tables, emotions ran pretty hot on our nerdy brains back then.

5 comments

Jack Tramiel never gave us a shiny, white telephone or mp3 player but he was very much the same conniving, non-technical pitch-man that Jobs was, less the presentation polish and boyish good looks. If you look at Commodore during and after his reign there is a marked difference. They're also both very interesting people who should be respected for what the accomplished and often vilified for how the accomplished it. Neither should be your role model IMO.
In some ways though Jobs and Tramiel are polar opposites:

Tramiel was interested "in computers for the masses, not the classes" so it was all about "rock bottom pricing" and undercutting competitors; Jobs especially in his later days was interested in premium products and eventually luxury products.

Tramiel never understood or invested in growing a platform or growing, expanding, intercompatible product line. Each Commodore machine under his watch was a brand new machine, not compatible with the others except for maybe a few peripherals.

At Atari Corp they did seem to learn a bit more on this front, with a series of models all compatible with each other... but innovation and development on the operating system basically stalled from 1985 until about 1990. TOS 1.04 was really only small incremental improvements and bug fixes over the original (quite fantastic for its time) release and it came out in 1989, 4 years after the initial launch.

And I get the impression that the early 90s push at Atari towards multitasking and major improvements in the OS might have come at the behest of his sons taking over and their attempt to try to get into the workstation and DTP market.

By 1991/92 it was too late. The Atari Falcon was an awesome computer, and the final versions of TOS/MultiTOS were respectable for their time, about equivalent on paper with Apple's MultiFinder and with Windows 3.11. But there wasn't a community of devs or a broad enough audience for the product, and Motorola had marked the 68k line for death.

> Tramiel never understood or invested in growing a platform or growing, expanding, intercompatible product line. Each Commodore machine under his watch was a brand new machine, not compatible with the others except for maybe a few peripherals.

But, iirc, very very very few computer manufacturers prioritized compatibility in that way in those days though, and for good reason, it would have be stupid expensive. Some manufacturers got around the problem (Commodore did this as a matter of fact) by incorporating all or part of the previous line in the new machines and enabling compatibility modes.

> But, iirc, very very very few computer manufacturers prioritized compatibility in that way in those days though, and for good reason, it would have be stupid expensive.

You don't recall correctly. The only major brand that didn't prioritize compatibility was Commodore.

Maintaining compatibility limited the ability to add new features but it wasn't 'stupid expensive'. What is expensive is throwing out what you have and creating something incompatible from scratch. When you have hundreds of thousands or millions of units out there, not being backward compatible means you risk losing most of those customers.

Nearly everything that ran on the original Apple II ran on the IIe and IIgs, and nearly everything that ran on the Atari 800 ran on the XL and XE models. Nearly everything that ran on the original 1981 IBM PC can run on a modern PC compatible.

Fair enough, I stand corrected, but I guess I meant maintaining compatibility when you change architectures is stupid expensive.
With that take, "very, very, very few" means none. Who did that?
Well, that's simply not true for the Atari 8-bit line (mostly compatible from 1979 right through to the XE series which continued right into the late 80s and even early 90s), the Apple II line (II, II+, IIe, IIc, IIgs, as well as cards that slotted into Macs), MSX and MSXII, and of course the 16-bit era with MS-DOS machines and Macintosh, Amiga and Atari ST lines.

Honestly, Commodore and Sinclair 8-bits are the outliers here? C-128 came quite late in the game.

Commodore did have a fair bit of compatibility within the PET/CBM line.

The C128 is a good example of how Commodore did compatibility wrong. Instead of creating a 100% C64 compatible mode, separate from the C128 mode, they should have taken the C64 and added a second bank of 64K of RAM, an MMU, an enhanced VIC-III with added registers for the enhanced graphics (eg. colors, resolutions, sprites), a second SID, a 2 MHz CPU, an enhanced KERNAL, and an enhanced BASIC that had the same tokens as BASIC v2. While C128 mode was very similar to the C64 mode, it wasn't enough to run hardly any C64 apps and games without modifications.

I don't blame Bil Herd for what the C128 is though. It is a great computer, especially considering he was fighting the top levels of Commodore to get it out the door. If he'd had more support, it could have been better.

I feel like the right way to do it would have been to have shipped a C64 compatibility mode in the Amiga, instead. An A500+ with a 100% C64 compatible mode capable of running a C64 in a window even, IMHO would have been great product that could have sold like gangbusters because the C64 was still a hot selling product right through the late 80s. I can't imagine it would have been that expensive to do given how well understood the C64 architecture was at that point.

Either that or have built the Amiga around a 65816 or similar instead of 68000. Like the IIgs but with even better sound and graphics.

> an enhanced VIC-III

This chip wasn't ready when they were building the C128. It was later included in the C65.

But, apart from that, there is a lot Commodore could have done incrementally with the C64, making it iteratively more functional without breaking backwards compatibility that the company simply didn't want to.

> he was fighting the top levels of Commodore

The 128 shares a lot of sins with the Apple /// and comes from a very similar story. At least Apple learned something from the /// and made the //e, //c, //c+, and the IIgs (lovely, albeit kludgy, machine, which was an absolutely idiotic project that only took resources away from the Mac). Computer for computer, an LC with Apple //e PDS board was a smarter choice.

ok, I stand corrected, but I will say that the Apple II line represented smaller iterations of the generally same architecture, right? i.e., Commodore I guess didn't iterate within the same architecture as much, breaking that compatibility more easily.
One of the key difficulties of making a faster Apple II was the time-critical routines involved in reading/writing floppies. It was not sufficient to throttle back to 1 MHz when running time-critical loops, but one would need to emulate the timing of a 6502 doing that. Commodore made a better 6502 for the C65, but it'd wouldn't work on an Apple II because it wouldn't have the same cycle timings.

The IIgs and the //c+ was faster and very compatible thanks to a crazy number of hacks in them to acommodate Woz's brilliance.

In retrospect, Apple should have released a Disk II+ that isolated the timings from the CPU and let software break. Commodore should probably have done the same.

There was a fair bit of compatibility within the PET/CBM line. Outside of that, every system had an incompatible memory map.
The C=128 had a full blown C=64 compatibility mode. It was a market failure however.
I have to laugh when people call the C128 a market failure. It sold 4.5 million units. The C64 sold 13 to 27 million units (depending on who you ask). The Apple II line sold 5.5 million units. The Sinclair ZX Spectrum sold 5 million. The MSX line sold 5 million. The Atari 8-bit line sold 3.5 million. The Tandy Color Computer line sold 3 million. The Amiga line sold 11 million (6 million were the Amiga 500 model). The Atari ST line sold 5 million.

The C128 only looks like a failure when compared to the C64 which it was compared to a lot for obvious reasons. Compared to the rest of the industry, it was a smash hit, even if most people used it in C64 mode.

If the entire Commodore 8-bit line had been backward compatible like the other manufacturer's computer lines, its total would be 20 to 36 million.

> It sold 4.5 million units

That number is very strange. It'd make it outsell the C64c over its lifetime even though both computers coexisted and Commodore killed the 128 in favor of the still more profitable 64c.

> The MSX line sold 5 million

About 9 million, according to Wikipedia, but I would bet in higher numbers because they were manufactured by a lot of different companies, marketed under lots of different brands in a lot of different countries. We know they sold 7 million in Japan alone (probably counting MSX, MSX2, 2+ and Turbo R).

The Wikipedia entry for the C=128 doesn't exactly paint its market performance in a rosy light. Software developers were also slow to adapt.

https://en.wikipedia.org/wiki/Commodore_128#Market_performan...

C128 only sold on its name, scamming potential buyers into thinking it was a 2x better C64. Maybe 1% of owners ever ran it in C128 mode.
It was also a product that didn't happen while Tramiel was at Commodore.
I remember one of the documentaries he was openly talking about how he locked out competitors when at atari. He did it by buying up fab space in any company that could make something for a competitor.
"After the 400 and 800 launched, power users awed by Star Raiders proved eager to flex the machine’s advanced capabilities. But Atari, following its closed model with the 2600, had never intended to spill the secrets of the HCS architecture outside of special agreements with contracted developers. Crawford recalls, “There were about half a dozen people I knew who’d been bugging me for that information, and I had told them, ‘No, I can’t tell you anything.'”

Ironic that it was the Atari that seemed like the "closed system" then. I had a 400 with the horrible membrane keyboard (hey, it was cheap) but there was no documentation on how to program it outside of BASIC.

"Mapping the Atari"; Ian Chadwick, 1983. A must have, so very sought after.
Since I was an Apple II person, I had What's Where in the Apple II.

Which is, surprisingly, available: https://www.lulu.com/en/gb/shop/phil-daley-and-william-f-lue...

For Commodore, we had the Commodore Inner Space Anthology, put out by the wonderful people who published The Transactor magazine (http://csbruce.com/cbm/transactor/).
That book was amazing. The Atari Assembler cartridge and magazines completed the picture of what you could do with the Atari 8-bit. I know there was another book I loved, but I cannot remember its name. I have them in a storage garage along with my 400 and 130XE.

I had friends who had the Action language cartridge but I never got to play with that one. Apparently there was information there about the machines internals.

Before that, De Re Atari.
I had an 800XL myself <3. Because my parents couldn't afford the more popular commodore 64 here. The commodore had a 6510 by the way but it was almost the same.

The display list interrupt was indeed really cool, combining different strips of video modes. The one thing I did miss was combining different text colours on the same line. The commodore could do this, the Atari couldn't.

Better graphics and a faster CPU in exchange for worse sound. Not a bad bargain, IMHO.

My daily driver back then was a II+ clone.

The sound wasn't as good as the SID, but it was still better than any other sound chip at the time. It had four voices when most chips had three and two of the 8-bit channels could be combined into a 16-bit channel, giving one 16-bit channel and two 8-bit channels, or two 16-bit channels, giving much better sound quality.
The Ataris had Player-Missile graphics, sort of like sprites that were specially/easily handled. I seem to recall that there was one player (16px wide x screen height) and 4 missiles(4 px wide x screen height) that could be cheaply moved back and forth across the screen. There was some collision detection between them and other things that were on the screen.

The Apples had several graphics modes, many of which were strange and somewhat pointless on a green screen (yay for some colors in even columns, some in odd), but nothing special to accelerate games IIRC. On the other hand, they had a lot more memory and they felt about a generation ahead. The 800 seemed like an advanced 2600, but the Apple felt like a real computer.

However, speaking of generations ahead -- the Atari 400 beat the 2016 MBP to the punch in the horrible flat keyboard race.

Ah yes, the player/missile graphics :) Actually there were 4 "players" 8 px wide (although you could of course put several side by side) and 4 "missiles" 2 px wide (the name already gave away that you couldn't draw much more than a bullet with 2 px of width). The width of the "sprites" could also be stretched, but you could only move them horizontally in BASIC - for vertical movement you had to actually move the sprite's bytes in memory, and BASIC was too slow to do that smoothly. I had a 800 XE (the German version of the 130 XE - the same Atari ST lookalike design, but only 64 K) and programmed some games/"demos" in BASIC which I still fondly remember. One of them was a train with a steam engine and 3 carriages (the four "players", the carriages were double-width) which rolled over the screen. Another was a game in which you could bet money on one of four snails (again the four players) - the snails would move a random (small) amount, then pause for a second, then move another random amount, until they all reached the finish line. Nerve-racking action!
4 players, 4 missiles. The missiles could be combined to a 5th player if you wanted.

The players only had one color and there was a fixed size in pixels. (you could cheat this a bit if you really worked with the display list.)

Edit: as corrected below, each player was (or could be) a different color, but was only allowed one color.

The players could be different colors from each other.

Memory addresses 704d-707d are the color registers for Players 1-4.

I had Atari AND Commodore. People had minds blown that you could have both...