On Mon, 25 May 2020 at 20:53, Jim Brain via cctalk <cctalk@classiccmp.org> wrote:
> Too late to fix silicon, the 6522 issue surfaced. What 6522 issue? This is way more depth about a machine I never owned than I personally ever knew, I have to admit... > Oh, and re-use all the VIC peripherals to save NRE costs! I had to look that up. Still, that degree of backwards-compatibility helps adoption of a new model. ZX Spectrum owners could keep their ZX Printer from their ZX81, for instance, and BASIC programs would still run. (Although I think you had to re-enter them all -- not sure about tape storage compatibility.) > Done, except Japan > didn't see any need for it, so they deleted it. Argh! But I thought the Japanese model didn't sell? > As noted above, there was a famous meeting (at least for Commodore), > where Peddle and others were talking about a color version of the PET. News to me! > Remember, Jack did calculators and typewriters, Peddle had done a lot of > the evangelizing for a computer. But, Peddle was an engineer, and his > machines we heavy, expensive, and complicated (dual CPUs in the drive, > anyone!). I must admit, even in 1983 or something, that seemed extravagant to me. I know that the Apple LaserWriter was a more powerful computer than the Mac that drove it, but there were sound engineering reasons for that -- but most 8-bit machines' standard floppy drives didn't have CPUs, so why did the Commodore ones need them? Later I learned about Woz' ingenuity in the Apple ][ drive design. I appreciate that it was a machine from 5 full years before my ZX Spectrum, but still, for all the stories about the amazing ingenious cost-savings in the Apple ][, it was a very expensive computer indeed when I was a schoolboy. Perhaps the single most expensive home computer there was. > A few folks hacked up a color PET > proto, using a video IC that had been designed for game consoles but no > one bought it, and pitched that it would work on a TV, was MOS IP, etc. > Those folks won. Michael Tomczak(sp?) advocated for the better KB, > seeing the ZX81 one and others of the time (the PET chicklet KB as > well). I think they were already thinking of a 40 col machine at that > moment, but needed an entry point. The VIC was it. Aha, I see. Well, for all that it didn't appeal to me, I think it was a decent design and it sold well. _At the time_ the deficiency of the 1541 disk drive didn't seem important -- it was a motorcycle-priced accessory for a car-priced computer, so almost nobody I knew owned one. It was extravagant beyond imagination. But given that the C64 was massively better than the VIC-20 in every other way, the fact that it had the same BASIC seemed a massive flaw. And, as has been pointed out, there were speedup options for the C64's disks. A better replacement BASIC is one thing -- if you don't have it, then you can't use BASIC listings that require it, so the mass market will only support the lowest common denominator. But a faster disk drive -- why not? So long as they can load the same disks as everyone else, fine. It doesn't move the baseline so it's not a problem. > I guess your point is that you don't agree with Jack's priorities. The > VIC was a rush job, costs had to be low. BASIC v2 just fit in an 8kB > ROM, and KERNAL fit in another 8kB. 8kB ROM was easy to make in house. > Notice they used 2 ROMs instead of 1 16kB one. It was all about low NRE > costs, using stuff off the shelf. Putting a third 8kB ROM in there for > better BASIC was just an unneeded IC, plus someone would need to write > the A/V code (CBM did not have a A/V capable BASIC at that time). But CBM didn't write it in the first place, did they? It's MS BASIC. I've read about the ROM sizes before, so there, I concede. My personal reference points are the Spectrum and the BBC Micro. In the Spectrum, there's no split between OS and BASIC -- they're the same chunk of code, and it all fits in 16 KB leaving 48 KB of memory map free for RAM. The initial models of Spectrum (16KB & 48KB) had no bank switching support at all, AFAIK. The Spectrum 128 had the same BASIC (with a few extra commands to handle a RAMdisk and sound chip) but a better _editor_ -- so it just had 2 different ROMs and paged them in and out according to what mode it was in, since it needed bank-switching anyway to support the RAMdisk. The sad thing was that Sinclair didn't include the better graphics modes from the failed US model Spectrum, the Timex-Sinclair 2068. This also had the ability to page RAM in in place of the ROM, to run CP/M -- something the Spectrum didn't get until the Amstrad Spectrum +3 in 1987. To this day I see the Spectrum 128 as a massive missed opportunity -- if they'd only included the improvements from the only other official successor to the original model, it would have been a much more capable and more desirable machine. Anyway, back to 6502 machines: the BBC Micro split the OS (MOS) and BASIC (BBC BASIC) into different ROMs, just as the Commie 64 did. However, Acorn's ROMs were 16 KB each not 8 KB each. That meant that with both MOS and BBC BASIC paged in, the base model BBC Micro had only 32 KB of memory map left for RAM, and that really wasn't enough. Its highest-res graphics mode took ±20 KB of RAM, leaving a paltry 11KB for programs. But I guess all this is unknown and irrelevant in the USA, where Acorn barely sold at all and Sinclair did poorly. Given that the functionality of the Commodore OS and BASIC seemed so feeble compared to that of the Beeb, I remain surprised to this day that CBM couldn't squeeze all that into 16KB. > You and I had different youths. I paid $332USD for one in 1982 or > something, and BASIC was the last thing on my mind. Even if £1=$2 back then, that's still twice what my parents paid for my first Spectrum, a 2nd hand rubber-keyboard 48 KB model. When you bear in mind that most things in the UK cost more than in the UK -- US gasoline is about ⅓-¼ of the price of European petrol, a $10 pair of Wranglers would cost £40 in the UK, etc. -- then you can see that you were buying a much more expensive computer than I was. > We know that now, but at the time, I don't think that was known. Fair. > Regardless, you assume most early teens cared about the BASIC maturity, > and I posit they did not. C64 buyers bought for the games, and folks > quickly moved to ML if they wanted A/V. Maybe in your neck of the > woods, things were different, but US buyers bought it to play. Also fair. It's all most British schoolkids wanted, yes. I collected games like some kids collected stamps: it was fun to have a good collection, swap and trade, to have the latest or rarities -- but you don't actually _use_ the stamps in your collection, do you? I didn't actually _play_ all the games. Most I loaded once, had a look and then never opened again. > I remember it differently. We oohed for a few minutes at the BASIC > command, then we just copied an ML routine from COMPUTE's! Gazette into > our app to get even fast circles and squares, and moved on. BASIC (and > ML) was a means to an end. We wanted our masterpiece to emerge, and we > really didn't care how it materialized. We even looked at the more > complete BASICs as a crutch (which I actually think they were/are), > since those programmers never dipped into ML to get the real speed! > (Yeah, I know we vehemently will disagree on that point, but we all have > our opinions) No, it's legitimate. I looked at machine code and decided not to bother. It was too hard, and what I wanted to do was explore coding -- patterns, fractals and cellular automata and things. I had no interest in writing games and still don't, so I wasn't overly concerned with execution speed. Instead I bought Beta BASIC, which gave me 64-column text, named procedures and so on and I was happy. https://en.wikipedia.org/wiki/Beta_BASIC > At the time, there was no distinction. There were personal computers, > and some people were using them for business. Apple IIs were finding > work, why not the Commodore? Oh well. Seems absurd to me, but hey. > I'll partially concede, at least after Jack left. I think Jack knew > what people wanted. He made, after all, one of the highest selling home > computers of the day, if not for all time. He wanted the own the rest > of the market, which the 116 would do by kicking the remaining low cost > entries to the curb. BUt, once he started phoning it in, while secretly > planning his departure, he did not have a protege to take the reins. Good point. > I don't think things were that malicious. I see it more as "Hey! Market > opportunity. How fast can we enter this space?". And we, hungry teens > with persuasion skills and our parent's concern that if their child > didn't learn this emerging computer thing they'd be destined for poverty > for all time made sales fly! *Nod* > I can appreciate your advocacy of BASIC. I cannot agree with it, and I > liked BASIC (on many machines) growing up. Once I entered software > development as a vocation, I found BASIC had set up bad habits that it > took years to unwind. I still have a fondness for the language, but I > don't think it was all that educational. It was brute force, overly > verbose at times, hard to follow in programs of anything above trivial > sizes, etc. But, it must have it's sheering section, and so I defer to you. I do not know what a "sheering section" means. A lot of people still sneer at BASIC even now, decades after its slide into obscurity, but I personally think it was a classic design. There's a lot of stuff that people do not notice, let alone appreciate, when today they advocate Python, say. Traditional BASIC needs no concept of "files" or "editors". Type some code, it executes. Prefix it with a number, it is stored for later. Different numbers allow the sequence of the code to be set or changed, and give a simple, obvious way to control the path of execution. Once you remove that, there is a _massive_ extra layer of cognitive load imposed: "this language runs code from a thing called a 'file'. It executes it line by line. You use another program called an 'editor' to create that file. Files are kept in 'folders' and need to be given unique names. Ah, no, if you want to move from one part of a program to another, you need to set a 'label' in in the code, and jump to that... or name your 'routine' which makes it into a 'producedure' and then call the procedure by name..." This is a hell of a lot to teach and to learn. I know; I may write docs now, but before that, I was a software trainer and had to get adults to absorb, use and retain this stuff. It's _hard_. It seems utterly trivial to pro techies but it is not. It's very abstruse and theoretical to non-techies. Kemeny & Kurtz thought about this stuff, and devised simple solutions. Guido van Rossum didn't. He was writing a different kind of tool, and exposing the arcana of the C 'printf()' functions to his users was not a problem for him. It really _is_ if you are 7 years old and trying to learn this stuff. This kind of cognitive disconnect is what killed Novell. "Hey, we'll add features to Netware 4 that will make it much easier for our big enterprise customers..." "But they make it much *harder* for a mom-and-pop business with 1 server!" "Aw, doesn't matter, they'll learn..." [2 years pass] "Hey, where did our market share go? Why is everyone buying NT 4 Server now? What happened? OMG why are we going bankrupt?!" BASIC made learning programming easy. The result was a whole generation of kids in the 1980s learned to program and started tech companies, and many became wealthy or changed whole national economies. Today, you need to learn to use a computer first before you can learn to program, consumer computers aren't programmable at all, and hey, look at that, modern software is crappy unreliable bloatware that needs constant patching and vast upgrades. Meanwhile people who remember when computers were simple collect old ones and form active communities online, discussing historical trivial like the memory maps of 8-bit machines from 40 years ago. What a mystery! Whatever could have happened? What could have caused this? Nobody knows! It's insoluble! > Yes, I'll agree when I think of bare-minimum, my first thought is the > Sinclair. Maybe I should rephrase to be "the minimum to put in the > machine that will offer selling points over competitors". :-( I think this is a difference of national economies at work again. You casually mention buying a $350 computer when you were a kid. Good for you. If computers never got cheaper than $350 then I would never have got a computer when I was a kid, and today I'd be a marine biologist as I had planned. In other words, this was a life-altering difference. The model of machine I got was half the price of yours, brand new, and there was no way my family could have afforded that _new_ at full price. It was, after all, a toy for a child. But second hand, at £80, it was just barely doable. Probably the most expensive gift I'd ever had in my life until then. These things were _vastly_ expensive luxury products back then, or at least they were for British children. Yet you or your family paid in real terms between 4× to 8× as much and you didn't mind that it had some very serious drawbacks which you discuss in great detail? That's astonishing to me. If I or my parents were spending this very significant sum, perhaps a month's income for the whole family, then I want something as rounded, as balanced, as capable in every aspect as can possibly be done for the price. Yet you say "yeah, well, the BASIC was crappy and the disk drives were kinda crappy but I didn't care." This is really quite profoundly shocking to me. > If you mean putting the Z80 in there? Bil agrees with you. He hated the > entire idea, and the engineering effort he expended to do it. But, when > Marketing has promised it, evidently at Commodore, you made it happen. > Hats off the engineers at CSG/MOS/CBM. Again, I guess we are looking at this in very different ways. For you, these seem to be small, unimportant issues. For me, at the time, given the amount of money involved, they would be deal-breakers. > Since I've sometimes had to do the bidding of the pointy haired boss, I > admire the technical aspects of the decision. But, I agree with you it > was a bad idea, if only because Commodore didn't vertically integrate > the Z80, so it had to be sourced from Zilog, and it was lots more > expensive that the 6502. So, instead of hanging this cart off the back > for the few dozen folks who actually cared to do CP/M on the 128, and > paid for the privilege of the Z80, CBM had to source one for each 128 > and keep the overall costs down in spite of it. Legend goes that CBM > Europe threatened to rip the z80 out of every C128 they sold in Europe, > I think because they had dissed it in competitor systems like the > Sinclair, etc. (You can't actually do so, as the Z80 actually runs first > in the C128, to work around an issue with another almost never used > Commodore cartridge that had to work on Day 1: it's either Magic Voice > or Super Expander, I forget which. Again, Commodore promised *ALL* > Commodore released carts would be compatible [ except the CP/M cart, > which they could ignore, on a technicality], and Bil had to use the Z80 > to boot the machine to accommodate that one cart!) Astonishing. But then corporate decision-making often astonishes me. Then again, baffling corporate/governmental decision making has brought the world to the very brink of collapse, and I am not at all sure that my baby daughter Ada -- named for Baroness Lovelace, of course -- will live to the age that I was when I chose a Spectrum over a C64. :-( -- Liam Proven – Profile: https://about.me/liamproven Email: lpro...@cix.co.uk – gMail/gTalk/gHangouts: lpro...@gmail.com Twitter/Facebook/LinkedIn/Flickr: lproven – Skype: liamproven UK: +44 7939-087884 – ČR (+ WhatsApp/Telegram/Signal): +420 702 829 053