FAT could have even more than two images, but I guess no one looked seriously at that, even Microsoft. Apple DOS has a single image with bitmap of usage only (0/1), but there are tools which could recover a diskette, since the real links are in sectors that belong to files. In other words, the real allocation table information is scattered, so less prone to damage.
The Apple II work I did had the lowest priority of all my jobs at the time, and there may very well have been some tools for doing disk recovery, but I don't recall any. The majority of my work on the Apple II was very early on, so any tools were probably not as readily available during that time frame, and I didn't have the time nor inclination to try to teach users how to recover disks. I simply told them to always make two copies of everything, which they did and after that they'd come to me and show me a bad disk, but said their other disk was fine, so I simply told them to make a fresh copy of the good disk and continue on.
p-system is an academic exercise (maybe good to a certain extent, but far from awesome), and seeking commercial value in that on the puny PC/XT has been doomed. Speaking of p-system, does "byte sex" ring a bell?
Nope, doesn't ring a bell, but I tried my best to learn as little as possible about p-system. I actually inherited the project from someone who started it but had no formal education in writing software. He somehow thought that p-system was the way to go because Pascal looked easier to learn than the alternatives. He realized very quickly that he was in serious trouble and called me in to finish (99% of the work) the project. The moment I convinced him to port the application to PC-DOS, I never took another look at p-system again.
Well aware of that, even if I jumped on the train at the 48K stage. My profession has been mostly connected to severely constrained systems, though.
Talking about severely constrained systems, ever try to program one of the early PIC (Microchip) devices? Now those were quite a challenge, trying to write some useful code when the ROM capacity is only enough for a couple hundred instructions and you have a whopping 16 bytes of RAM. I loved those days, being trying to fit as much functionality into the smallest (cheapest) unit possible was my specialty. I don't think I was ever in as much demand as in those days. The head honchos simply loved it when I told them how much they could save by using a PIC instead of a full-blown microprocessor, or telling them how they could add unheard of functionality to their existing non-digital products for pennies in additional manufacturing cost.
Agree. I have considered all the points of the limited early hardware and the compatibility requirement. Still, it looks like a hobby work by someone who had average skills and not much incline to put effort into design. Then it shipped, and the slapping of extra crud began.
...
Good, that just about matches my personal opinion. I have tried really hard to pinpoint some good ideas in CP/M, and all I could come up with is the abstraction of BIOS, BDOS and CCP. The rest is horrible, impractical and illogical.
...
I come from different side of the Iron Curtain, so time and other properties of the continuum differ a bit. ;-)
Well, I think we're pretty much in agreement, it's just that I probably saw a lot more about what the industry was all about in it's early stages, having lived through it in the US where most of it was happening at the time.
First of all, the industry was not at all driven by businesses. Businesses who used those early computers were few and far between and quite adventurous. There was no big market for games initially, with the only games being just something extra to occupy one's time when taking a break. The industry was really driven by the hobbyists in the early stages. And you're exactly right about CP/M. It was almost certainly written by and for hobbyists. I doubt it was ever conceived as being a successful commercial product. Now, in my opinion, there are two types of people who make such products. There's the perfectionist, who's never happy until the product is perfect, and then there's the person who's challenged by trying to make something, but once they reach a certain state and can see that they've basically accomplished what they set out to do, they stop and move onto something else. I'm guessing CP/M was written by the latter, rather then the former.
With the former, you'll either never get a product to market, or by the time it's ready it'll be too late and someone else beat you to it. With the latter, you end up with some pretty horrible products, so the key is to have someone managing the development who can balance the two. Get something out to market in a reasonable time, but not so quickly that it's not well designed or not well tested. With most all of the early companies though, they were more like one or two-man shows, and they just did things their own way without any management to speak of.
Back in the early days, consumers didn't give that much thought to how well-designed or complete a software product was. People were desperate for anything. Even by the time the IBM PC was released, you could walk into a Computerland store and find commercial software products that were duped on the software developer's own PC, a typed (or dot-matrix printed) label slapped on it. A dot-matrix printed information sheet, and the whole thing stuffed into a zip-lock plastic bag and put on the shelf. Despite the complete lack of professionalism the stuff still sold like hotcakes, because people wanted software and there wasn't any competition.
These days a company trying to do anything remotely like that would be laughed at and never get even close to getting their product into the stores. Having seen this first-hand, I can realize exactly how CP/M, even though not being a well-designed product, became so universally accepted. There were probably many hobbyists who could have created a better DOS that would have run circles around CP/M. Or even PC-DOS/MS-DOS. At the time I even considered myself trying to rewrite and sell a new DOS. But I'm sure just like me, the others who could have done a better job didn't have the business skills/connections to market it. There was no internet back then to sell directly to the consumers. The thought of spending hundreds of hours to write some software, only to not be able to sell it was enough to convince me to spend my time writing software for people who paid me upfront for the projects.
I often look back on those days with some regret. Knowing what I know now, I think it actually wouldn't have been that hard to have marketed something on my own. Certainly writing a good, well-designed DOS wouldn't have been that difficult. Had someone had the courage early on to do that, and to take on Microsoft, the software industry might be a lot different today. During the CP/M days, I don't think it would have mattered a lot, but by the time IBM introduced their PC, businesses were getting very interested in using PC's, and the market for software to run those machines was about to explode. I was right there, on the ground floor, directly involved in the PC software industry, but probably like most of others like me, we were so excited about writing software for these new computers, that we overlooked the huge business potential. It was those who had a good eye on the business end as well as a good technical background who made it big.