I got to borrow one those Burroughs machines when I was 16 from a collector and they were really well built, but not great for a teen that wanted color screens and games. I did learn a tiny bit of Fortran.
> This meant that every user could have their own unique Jonathan setup, pulling together various software platforms, storage devices, and hardware capabilities into their own personalized system. Imagining what would have been required for all this to work together gives me a headache. In addition to the shared backbone interface, there would need to be software written to make an almost-endless number of configurations work smoothly for the most demanding of users. It was all very ambitions, but perhaps a little too far-fetched.
Some examples of "nonflexibly-attached expansions" I can think of, though not arbitrarily expandable like the TI-99/4A:
* Sega Genesis (CD, 32X, Modem, Sonic & Knuckles, Game Genie, Power Base Converter -- most of which could be attached at once [1], and a few games even required both the CD and 32X)
* Nintendo GameCube (the Game Boy Player attached to the bottom) [2]
* Epson HX-20 laptop (various expansion units could attach to the side, though only one at a time) [3]
More of a “back car” - the Sinclair ZX80 and ZX81 used piggybacking RAM with passthrough to other peripherals. It was a really fragile setup - the ram pack in particular would glitch out when typing.
The ARM based Acorn Risc PC [1] from mid 90s had a case with up to 7 stackable slices. It made the internal volume larger and you installed a longer backplane for expansion cards.
Someone built a pizza oven in one of the slices [2]
The East German KC85/2../4 line was one example of this (scroll down for an 'expansion tower', theoretically such a tower could be 64 units high (the system could address up to 256 expansion modules, and one expansion unit had 4 slots):
I also remember a similar module system for the Sinclair ZX computers, but my google fu is failing me at the moment. Such 8-bit home computers usually had their entire system bus exposed via a connector at the back or side, so even if the original manufacturer didn't support a stackable module system, 3rd parties could jump in and offer a solution.
The Amiga 1000 supported sidecars but later big-box Amigas had internal expansion slots like PCs.
The wedge-shaped home computer Amiga 500 supported sidecars. I had an Amiga 500 with SCSI HD sidecar, and a video grabber which was two sidecars (one for the RGB splitter), but the HD and grabber didn't work together.
I had this as a kid, hooked up along side the voice synthesizer.
I never had a reason to actually buy an expansion card, but having the disk drive was nice, and I was the only kid I knew with a disk drive vs tape- the local library even had the ability to check out TI shareware type software via cassette.
Great platform, other than some clunky decisions up front that crippled the hardware so it didn't compete with business lines, and trying to keep out 3rd party developers.
>This meant that every user could have their own unique Jonathan setup, pulling together various software platforms, storage devices, and hardware capabilities into their own personalized system. Imagining what would have been required for all this to work together gives me a headache. In addition to the shared backbone interface, there would need to be software written to make an almost-endless number of configurations work smoothly for the most demanding of users. It was all very ambitions, but perhaps a little too far-fetched.
Sounds an awful lot like the mess which is Windows.
But it was exactly this "mess" of the accidentially opened PC platform what gave us the hardware cambrian explosion of the late 90s. Without this, Nvidia probably wouldn't exist, and everything that's not Apple would have an IBM logo slapped on ;)
There are modern systems that still use this sort of modular backplane design. MicroTCA and PXIe are the two major ones, both providing at least power and a PCIe bus on the backplane. MicroTCA supports carrying Ethernet, SATA, and PCIe on the backplane. However both of these are more intended for industrial computing. I could see a consumer variation based on MicroTCA where the chassis has a pre installed controller and backplane. The backplane would be configurable based on the CPU you are running. Higher end CPU would allow for more PCIe lanes meaning more slots, lower end would only allow for a few slots. The computer part is provided by a heavily packaged SBC containing a processor and memory. Mass storage either sits on the SBC as m.2 or as a chassis card connected via SATA or PCIe. You'd have a GPU card connected to a x16 slot (up to two of these for a large chassis). High end sound card sits on another slot. Various interface cards sit on others. You could even drop in an FPGA accelerator card.
This would all probably be too expensive for your average consumer though.
This can be solved through reasonable abstraction. Windows does it, OS X does it, earlier Mac OS and pre-Mac Apple computers did it.
Your application software doesn't need to know what exact disks you have in your system so long as it can interact with the disks through a standardized interface. Your application software doesn't need to know what other application software is running on your system so long as you can facilitate interoperability through shared resources like storage, clipboards and sockets using standardized formats and protocols. That's how systems have been designed to host arbitrary software and hardware in more than half a century.
In OS X, `ls` doesn't know that `cat` exist, and neither know anything about your SSD, yet they have absolutely no problems interoperating.
The book mentioned in the article, AppleDesign, is full of great photos (of prototypes and shipped products) and interesting stories from that era. It covers the entire Frog Design era in great detail. Highly recommended, but unfortunately quite expensive these days.
>Pleased with his concept, Fitch named it Jonathan (after himself)
While it may not have been coincidental that Fitch's name was Jonathan, another reason is that the Jonathan is a strain of apple, as is the McIntosh (spelled Macintosh for the Apple product).
There were lots of projects at Apple that never made it off the ground.
When I was there in '88-'90 I remember seeing a few prototypes of their Mobius computer - an ARM-based system that emulated an Apple II much faster, and was (unfortunately) faster than a Mac II in native mode. It got canned before they ever got around to designing a case for it, but folks who had the prototypes kept them for quite a while.
An S-100 bus computer as done by Apple! I love this form-factor even though I can understand why it didn't catch on. The early personal computer era was exciting in the same way as the early 1900s were for aeroplane design.
Maybe it wouldn't have been the nightmare the author imagines - Apple figured out how to connect all sorts of gear using Appletalk, and somebody else here pointed out that the chaos of IBM PC compatibles is probably what helped PCs really take off.
From a software perspective, yes, but give me the old serial and parallel cables any day over that damn USB-A connector that never fits in either orientation.
It wasn’t mentioned. I think they are referring to how the Jonathan’s bus is more similar to S-100 than a PC’s motherboard card bus. There was not a primary mother board that ran the bus like in Apple 2 or IBM PC
I ran TSR-80 systems and I never had a S-100, I was always fascinated how it could have multiple motherboards on it with different CPUs. I think S-100 was more similar to SCSI or Ethernet than to a PCI bus.
not really like scsi - that's more like usb with a central controller. more like VME - a bus that looked alot like a 68k bus, but supported multiple masters with a protocol to negotiate temporary ownership to assert a transaction.
there was a single address space. so every board had a set of dip switches to give it its address. which was always a big source of pain
I can't imagine apple shipping a computer product like that, so maybe you get the high bits based on what slot you're in and a config eprom to do discovery?
I could see them using something like they did with NuBus — something similar to the declaration ROMs could make this sort of configuration work nicely, as long as part makers played according to the specs.
I suspect if Apple had done this they would have had someway for the cards to auto-negotiate.
A few years after the Jonathan prototype, I remember fighting with the DIP switches on PC ISA cards and setting the the correct IRQs, and then seeing a friend drop in a NUBUS card into their Macintosh II and the hardware was magically configured. I wonder if NUBUS could have multiple masters?
IIRC, it's entirely possible to build an Apple II on an Apple II card and let it drive a completely passive backplane with slots 0 through 7. I think it'd even be possible to drive the bus from any slot.
The Jonathan bus would probably be a lot more robust, however, as power delivery was an issue on loaded Apple II's (with too much current flowing through too few VCC and GND pins).
> In addition to the shared backbone interface, there would need to be software written to make an almost-endless number of configurations work smoothly for the most demanding of users.
This describes modern devices connected via USB C or Thunderbolt, which in my experience works fine (eGPUs are a bit specific, but perhaps that will shake out). I don't think we're smarter today than back in the 68030 days; probably they would have worked it out. After all there have been any number of coprocessor cards for apple computers over the years.
That, or really, closer in timeframe, PCI cards, except the shelf is internal.
Also, Framework laptop. Or RPis with stackable HATs.
I think the concept holds water, e.g thinking of the music realm, from pedalboards to a ton of USB devices (soundcards like Scarlett or Volt, DAS...) to standard rackable items like DACs/ADCs with a ton of IO.
Instead we get peripherals with the same finish and footprint and little U-loops of thunderbolt cables mucking up the top-down view. Even the Raspberry Pi figured this out with their HAT system.
Just because an idea wasn't implemented or didn't become popular doesn't mean it's not a good idea. I have always strongly felt that expansion cards in desktop computers should work more like this rather than requiring the case to come off.
NIM modules and CAMAC modules have been popular instrumentation platforms for experimental physics since the 70's and 80's. Of course that's very far from consumer adoption but the concept kinda works. No idea if NIM modules are still in production though!
IBM had at least two computers that used this concept: The PCJr, and the IBM Convertible "laptop".
One of the many problems with sidecars is that they make the computer footprint larger. While it hypothetically allows for unlimited expansion compared to a limited number of internal slots, this would be practically limited by physical space and electrical signaling issues.
Apple might've taken over if they actually got this to production --- their competitor at the time was the IBM PC/AT with its 8 ISA slots, and Apple's bus could've become the "ISA" instead. Then again, given that these would cost a lot more for the housings compared to just a PCB with a card edge connector and mounting bracket, maybe not.
I think it is informative to look at the 1981 Macintosh business plan (https://archive.computerhistory.org/resources/text/2009/1027...) page 6 "Clustering of Retail System Prices" - Apple has a machine in the 3 top bands out of 4 (note the sub-Macintosh VLC, "Very Low Cost" targeting home market, envisioned by Jobs, in his other document from that time with 5 bands (that I couldn't find today) it was in its own sub-$1K band - ultimately came 30 years later as iPad and iPhone), and 2 pages down there is a slogan "The Advantage of a Product Line is that Each Individual Product Does not have to Do Everything". As far as I see a thing like Jonathan just didn't fit there.
1 every time u add a component to a system you double the complexity. If you build automated regression testing it becomes easy to see the impact as test runtime grows exponentially. So the definition of the interface between components must be able to isolate them from one another. We saw the consequences in PC land with cards and dip switches and irq settings and plugnplay and even pcpartsbuilder. Vs say USB c.
Like there is a spectrum between pluggable sidecars and Bluetooth. In between is open isa , scsi, adb, usb, ethernet, wireless. Each one has tradeoffs in cost per module , cost of manufacture, cost of testing, physical form (space) and user experience. The market decided where the tradeoffs mattered most and it basically rejected every single side car variation ever produced. Its a niche thing that always remains niche due to suboptimal tradeoffs for most use cases
And i bet it is mainly a version of the premature optimization issue. A side car is spending enormous manufacturing resources to optimize something people will do extremely rarely… plug parts of a cpu box machine together. If you need to frequently plug and unplug…. You are better off with some interface that uses cables and … like sequential io vs random io you wouldnt want to have to get the module from the middle of your stack. If you dont need to plug very often…. Then you wind up paying for some enormous amount of plastic molding work and pcb design and testing for something you do maybe once a year or less. Better off to just buy bare boards like in PC land. But even if you have fancy plastic cases on modules that doesnt solve the software side. So ironically the thing that makes usb great isnt just the physical design but the software isolation between subsystems .
A sidecar type design is literally just exposing the bus, and yes, it rejected exposing the bus externally over "just" providing a variety of cases to take cards internally. On the Amiga, it was literally exposing the raw CPU bus.
Most of the 1980's sidecar designs existed to provide options at a point where they were competing at price points and in market segments where that was not viable. At the same time the price points for peripherals made the extra plastic a rounding error at that point in time. I think most of these designs failed largely because the moment you got people thinking about how many extra things they might assemble to get what they want, they'd look for a machine that provides more of that out of the box instead.
Having a sidecar felt like an "escape hatch" so you didn't feel locked in when buying a fairly basic machine. If you think there's even a possibility you might need 3+, you'd be looking at a big box machine from the start.
then the question becomes.... why was the original machine not simply expandable with extra sidecars, why couldn't they upgrade their TI 99 4/a or PC Jr with sidecars so it could do the same as a machine that provided "more out of the box".
is it because CPU freq kept doubling every 18 months or whatever? but i would argue, when that doubling stopped and we reached the 5 ghz limit, we didn't see sidecars make a comeback in computer land.
the closest thing we have is external GPU which is still, after all, cabled, not sidecard.
i am making a hypothesis again that the cost of upgrading a machine with sidecars is always going to be higher than just buying a machine that allows lower cost upgrades via slots or cables.
or in Apple worldview, its better 'overall' from user experience to just buy the nextgen which has very little or no expandability. and just guess what people actually need/want based on careful research and connection with customer base.
now i dont have good data on cost of sidecard vs other interconnects but it seems inherently higher to me. thanks for the response.
It's very simple: Because these machines were for the most part cost-cut to the very bone for people to be able to afford buying them at all.
When I bought my first Amiga, an Amiga 500 was the most I could afford. When I could afford to add a (sidecar) harddrive, that was all I could afford. If I were to wait until I could afford an Amiga 2000 and an internal harddrive, that might have been cheaper than the combination but it would have meant waiting a couple of years to get one at all.
These were the market realities these machines were built for. And, yes, that made it a lot less attractive for machines targeting business customers.
But I'll note not so much because of the cost of the boxes - my first harddrive cost almost as much as Amiga had cost. Used. It'd have been almost as expensive as an expansion card for a big box, because the controller was pretty much a full computer on it's own, and the drive itself was ridiculously expensive.
Was expecting to find some modern examples of such modular computer approach in comments, but am disappointed for now. Looks like Framework laptop is closest i can think of in this regard. Which is basically just USB hub for extra ports.
Another example from mobile phones which was google modular phone prototype which also failed to reach consumers.
I would still like a backplane like this with a bunch of USB3/thunderbolt ports with lots of power available. I’m so tired of USB cables and hubs. It would be nice for our computers to be more like modular synthesizers.
In what way? "Beowulf clusters" were built out of off-the-shelf machines connected through relatively normal (if high-speed) networking, running MPI programs on Linux. That's what distinguished them from the more expensive, more custom HPC systems of the day.
In the way of it being a pipe dream relentlessly pursued…in words only…by many nerd types. So much so it turned into a meme during the 90’s. Like someone would mention a hamburger and someone else would say imagine a Beowulf cluster of those.
I kinda doubt ggp’s Plan 9-linked idea has enough legs to take it that far though.
Conceptually the Framework laptop is getting moderately close to this.
Unfortunately we have signaling over USB C or Thunderbolt so good that everything is connected by wires instead of being integrated into a "standard case design" so whilst we can (somewhat) have the expandability, we don't have the resulting neatness.
Somebody somewhere will probably see this and build the framework to build something similar out of Framework parts. That is, if it hasn't be done already.
It’s great. Almost 40 years of miniaturization, energy efficiency and price/performance improvements made it so you can achieve the Jonathan over wires that run outside of the case.
Modularity like this inside the case is cool and necessary for high bandwidth needs (gaming and hyperscalars) where you get good price/performance but they’re not business computers like The Jonathan.
108 comments
[ 2.9 ms ] story [ 203 ms ] threadhttps://archive.org/details/bitsavers_convergent5Brochure198...
Convergent extended that idea into their Megaframe, which could be expanded by adding more enclosures, each with a number of separate processors.
http://bitsavers.org/magazines/Mini-Micro_Systems/198304_Meg...
This last one lists our familiar Steve Blank as one of its authors.
It must have been a sight to behold:
https://archive.org/details/bitsavers_MiniMicroSrDigest_8947...
11 megabyte bus in 1983 is pretty impressive.
gestures at the Amigas and PCs of the time
* Sega Genesis (CD, 32X, Modem, Sonic & Knuckles, Game Genie, Power Base Converter -- most of which could be attached at once [1], and a few games even required both the CD and 32X)
* Nintendo GameCube (the Game Boy Player attached to the bottom) [2]
* Epson HX-20 laptop (various expansion units could attach to the side, though only one at a time) [3]
[1] https://www.youtube.com/watch?v=Y55ZBT_UcmU
[2] https://upload.wikimedia.org/wikipedia/commons/5/50/GameCube...
[3] http://www.decodesystems.com/epson-hx20.jpg
Someone built a pizza oven in one of the slices [2]
[1] https://en.wikipedia.org/wiki/Risc_PC
[2] https://www.houseofmabel.com/personal/computers/riscpc/
https://floooh.github.io/virtualkc/p010_kc85.html
I also remember a similar module system for the Sinclair ZX computers, but my google fu is failing me at the moment. Such 8-bit home computers usually had their entire system bus exposed via a connector at the back or side, so even if the original manufacturer didn't support a stackable module system, 3rd parties could jump in and offer a solution.
[0] https://en.wikipedia.org/wiki/PC/104
http://www.mainbyte.com/ti99/hardware/sidecar.html
The Amiga 1000 supported sidecars but later big-box Amigas had internal expansion slots like PCs. The wedge-shaped home computer Amiga 500 supported sidecars. I had an Amiga 500 with SCSI HD sidecar, and a video grabber which was two sidecars (one for the RGB splitter), but the HD and grabber didn't work together.
That being said, Apple's modular design gives me a Eurorack vibe that TI's lacks.
https://www.arcadeshopper.com/wp/ti-99-4a-faq-peripheral-exp...
The cable to connect the box to the computer console was ridiculously thick and heavy, and rarely shown in marketing photos.
I never had a reason to actually buy an expansion card, but having the disk drive was nice, and I was the only kid I knew with a disk drive vs tape- the local library even had the ability to check out TI shareware type software via cassette.
Great platform, other than some clunky decisions up front that crippled the hardware so it didn't compete with business lines, and trying to keep out 3rd party developers.
Sounds an awful lot like the mess which is Windows.
It's also a reinvention of one-bus-for-different-boxes computing from the 70s - Unibus, Massbus, and so on.
It could have been made to work, but it would have been speed-limited, and mechanically unreliable if it wasn't done exactly right.
This would all probably be too expensive for your average consumer though.
Your application software doesn't need to know what exact disks you have in your system so long as it can interact with the disks through a standardized interface. Your application software doesn't need to know what other application software is running on your system so long as you can facilitate interoperability through shared resources like storage, clipboards and sockets using standardized formats and protocols. That's how systems have been designed to host arbitrary software and hardware in more than half a century.
In OS X, `ls` doesn't know that `cat` exist, and neither know anything about your SSD, yet they have absolutely no problems interoperating.
I still lust for an Apple IIc. Never had one, my eyes go boink whenever I see one in the wild.
i wish apple would have fun with the chassis design again
While it may not have been coincidental that Fitch's name was Jonathan, another reason is that the Jonathan is a strain of apple, as is the McIntosh (spelled Macintosh for the Apple product).
When I was there in '88-'90 I remember seeing a few prototypes of their Mobius computer - an ARM-based system that emulated an Apple II much faster, and was (unfortunately) faster than a Mac II in native mode. It got canned before they ever got around to designing a case for it, but folks who had the prototypes kept them for quite a while.
Maybe it wouldn't have been the nightmare the author imagines - Apple figured out how to connect all sorts of gear using Appletalk, and somebody else here pointed out that the chaos of IBM PC compatibles is probably what helped PCs really take off.
This would've used more desk space tho.
I ran TSR-80 systems and I never had a S-100, I was always fascinated how it could have multiple motherboards on it with different CPUs. I think S-100 was more similar to SCSI or Ethernet than to a PCI bus.
there was a single address space. so every board had a set of dip switches to give it its address. which was always a big source of pain
I can't imagine apple shipping a computer product like that, so maybe you get the high bits based on what slot you're in and a config eprom to do discovery?
I suspect if Apple had done this they would have had someway for the cards to auto-negotiate.
A few years after the Jonathan prototype, I remember fighting with the DIP switches on PC ISA cards and setting the the correct IRQs, and then seeing a friend drop in a NUBUS card into their Macintosh II and the hardware was magically configured. I wonder if NUBUS could have multiple masters?
The Jonathan bus would probably be a lot more robust, however, as power delivery was an issue on loaded Apple II's (with too much current flowing through too few VCC and GND pins).
This describes modern devices connected via USB C or Thunderbolt, which in my experience works fine (eGPUs are a bit specific, but perhaps that will shake out). I don't think we're smarter today than back in the 68030 days; probably they would have worked it out. After all there have been any number of coprocessor cards for apple computers over the years.
Also, Framework laptop. Or RPis with stackable HATs.
I think the concept holds water, e.g thinking of the music realm, from pedalboards to a ton of USB devices (soundcards like Scarlett or Volt, DAS...) to standard rackable items like DACs/ADCs with a ton of IO.
https://www.reddit.com/r/VintageApple/comments/1at3bjb/jonat...
https://bitbang.social/@NanoRaptor/111761697339047308
https://bitbang.social/@NanoRaptor/111722274256144766
EDIT: Oh they're the same person as mentioned in the article! How about that.
NIM modules and CAMAC modules have been popular instrumentation platforms for experimental physics since the 70's and 80's. Of course that's very far from consumer adoption but the concept kinda works. No idea if NIM modules are still in production though!
https://en.wikipedia.org/wiki/Nuclear_Instrumentation_Module
One of the many problems with sidecars is that they make the computer footprint larger. While it hypothetically allows for unlimited expansion compared to a limited number of internal slots, this would be practically limited by physical space and electrical signaling issues.
Like there is a spectrum between pluggable sidecars and Bluetooth. In between is open isa , scsi, adb, usb, ethernet, wireless. Each one has tradeoffs in cost per module , cost of manufacture, cost of testing, physical form (space) and user experience. The market decided where the tradeoffs mattered most and it basically rejected every single side car variation ever produced. Its a niche thing that always remains niche due to suboptimal tradeoffs for most use cases
And i bet it is mainly a version of the premature optimization issue. A side car is spending enormous manufacturing resources to optimize something people will do extremely rarely… plug parts of a cpu box machine together. If you need to frequently plug and unplug…. You are better off with some interface that uses cables and … like sequential io vs random io you wouldnt want to have to get the module from the middle of your stack. If you dont need to plug very often…. Then you wind up paying for some enormous amount of plastic molding work and pcb design and testing for something you do maybe once a year or less. Better off to just buy bare boards like in PC land. But even if you have fancy plastic cases on modules that doesnt solve the software side. So ironically the thing that makes usb great isnt just the physical design but the software isolation between subsystems .
Most of the 1980's sidecar designs existed to provide options at a point where they were competing at price points and in market segments where that was not viable. At the same time the price points for peripherals made the extra plastic a rounding error at that point in time. I think most of these designs failed largely because the moment you got people thinking about how many extra things they might assemble to get what they want, they'd look for a machine that provides more of that out of the box instead.
Having a sidecar felt like an "escape hatch" so you didn't feel locked in when buying a fairly basic machine. If you think there's even a possibility you might need 3+, you'd be looking at a big box machine from the start.
is it because CPU freq kept doubling every 18 months or whatever? but i would argue, when that doubling stopped and we reached the 5 ghz limit, we didn't see sidecars make a comeback in computer land.
the closest thing we have is external GPU which is still, after all, cabled, not sidecard.
i am making a hypothesis again that the cost of upgrading a machine with sidecars is always going to be higher than just buying a machine that allows lower cost upgrades via slots or cables.
or in Apple worldview, its better 'overall' from user experience to just buy the nextgen which has very little or no expandability. and just guess what people actually need/want based on careful research and connection with customer base.
now i dont have good data on cost of sidecard vs other interconnects but it seems inherently higher to me. thanks for the response.
When I bought my first Amiga, an Amiga 500 was the most I could afford. When I could afford to add a (sidecar) harddrive, that was all I could afford. If I were to wait until I could afford an Amiga 2000 and an internal harddrive, that might have been cheaper than the combination but it would have meant waiting a couple of years to get one at all.
These were the market realities these machines were built for. And, yes, that made it a lot less attractive for machines targeting business customers.
But I'll note not so much because of the cost of the boxes - my first harddrive cost almost as much as Amiga had cost. Used. It'd have been almost as expensive as an expansion card for a big box, because the controller was pretty much a full computer on it's own, and the drive itself was ridiculously expensive.
Then you concede that it is not necessarily so.
Another example from mobile phones which was google modular phone prototype which also failed to reach consumers.
Project Ara : https://en.wikipedia.org/wiki/Project_Ara
https://newsletter.shifthappens.site/archive/the-cursed-univ...
You know some kids would have been posting GIFs of their rigs to the local BBS showing a 20 foot wide desk barely containing the machine.
I kinda doubt ggp’s Plan 9-linked idea has enough legs to take it that far though.
Unfortunately we have signaling over USB C or Thunderbolt so good that everything is connected by wires instead of being integrated into a "standard case design" so whilst we can (somewhat) have the expandability, we don't have the resulting neatness.
Modularity like this inside the case is cool and necessary for high bandwidth needs (gaming and hyperscalars) where you get good price/performance but they’re not business computers like The Jonathan.