Microsoft has released their source code of 6502 BASIC from 1977 under a MIT license. This was the ancestor of both Applesoft BASIC and Commodore BASIC.
Anonymous
User login
Please support the defense of Ukraine.
Direct or via Unclutter App
Active forum topics
Recent content
Navigation
No Ads.
No Trackers.
No Social Media.
All Content Locally Hosted.
Built on Free Software.
We have complied with zero government requests for information.
In post #1, "robespierre" wrote:
" Microsoft has released their source code of 6502 BASIC from 1977 under a MIT license ... "
Uncle Bernie comments:
If Microsoft really did release it, fine, but I would doubt this until I have it in writing on Microsoft's corporate letterhead.
To me, this github repository looks much the same (if not exactly the same !) as the one where I "found" the same source code many years ago.
Back then I did some quick research on the web and found out that the 6502 Microsoft BASIC source code has been leaked, without consent from Microsoft (the corporation), and has been vagabonding around in the internet for a long time.
Anyone with malicious intent can slap a "MIT" license to anything and then put it up on github.
So before we get too excited, and open a bottle of Champagne to celebrate, I'd think some scrutiny needs to be applied.
- Uncle Bernie
This ought to be enough in terms of scrutiny: https://opensource.microsoft.com/blog/2025/09/03/microsoft-open-source-historic-6502-basic/
It's a safe bet that it's for real:
opensource.microsoft.com/blog/2025/09/03/microsoft-open-source-historic-6502-basic/
of course they admit that much of the code was leaked previously.
In post #4, 'robespierre' wrote:
" It's a safe bet that it's for real "
Uncle Bernie comments:
Now, with the link to the official Microsoft website confirming the fact, I'm finally convinced that this is true !
This is great news !
At least one of the two components of the original Apple II firmware-in-ROM now is "free" in the sense that we (the Apple II vintage computer scene) can use it in our Apple II replicas, and, as far as I understand the LICENSE on the github, we can even sell it. Which is a requirement to make IC kits for various replica projects.
Alas, so far Apple (the corporation) did not release / "free", any of their Apple II firmware and software, and all of it still is copyrighted and this thwarts any attempt to make kits for Apple II clones. Of course, such kits could be sold with empty EPROMs or Flash EEPROMs, and left to the user / builder what to do with them. But this is not "clean" in the legal sense.
So let's hope that Apple (the corporation) follows the example of Microsoft and releases their Apple II firmware under the MIT license, too !
Then we (the Apple II vintage computer crowd) could finally make Apple II replicas available as kits, and anyone could build one. All the custom ICs these machines used have been reverse engineered and turned into FPGAs or CPLDs. All the patents on the hardware have long expired. The only missing building block is the firmware.
Now, Apple, make your move !
- Uncle Bernie
I suspect at least one of the Apple II clones has an un-encumbered ROM. Could try to track down those vendors and see if any of them are willing to release the rights.
Hong Kong based VTech (the company behind the Laser brand) and Central Point Software (famous for Copy ][ Plus) were able to create a ROM using "clean room" techniques which was compatible enough to run most software and that stood up in court to Apple's Copyright challenges back in the day. VTech is still in business although they primarily make things like toys and cordless phones now. Central Point disappeared in 1994 when it was bought out by Symantec. I doubt either VTech or Symantec care much about their Copyrights on those ROMs, but it might be difficult to get them to go to the trouble of releasing them.
Franklin Electronic Publishers is the remnants of the old Franklin Computers which made clones. Franklin was essentially forced out of the computer business by Apple legal action so I'm not sure even if they released any claims they had on the ROMs for their ACE family that it would be of significant benefit.
Most of the other clone vendors were smaller and largely they disappeared entirely a long time ago. It would be interesting to try to track any of them down to find out about ownership of any relevant IP they might have, but I suspect a lot of work and possibly not very fruitful.
Hi -
during the past week, I finally had the time to inspect what Microsoft did "throw over the fence" to us.
I found that none of the currently available (open source) 6502 macro assemblers is able to digest the original Microsoft source code, which is no surprise, as there has been half a Century since then. I am still wondering which kind of macro assembler did they use back then. It looks DEC-ish to me, but not sure - I only programmed the LSI-11 a few times, and that was in the early 1980s. Could it be that they (Microsoft) used a DEC PDP-10 or PDP-11 macro assembler and plugged in macros for each and every 6502 mnemonic ? This way any macro assembler for any CPU architecture can be beaten into submission to produce object code for any other CPU architecture. I used this trick several times but it's tedious.
So I edited the Microsoft source code a bit to conform to contemporary 6502 macro assemblers. Alas, my favorite 'atasm' only produced a 'segmentation fault' and refused to do the work. It's my favorite only because it allows me to plug in ancient 6502 code I have written over my whole life, and I did use the MAC/65 assembler from Optimized Systems Software for that purpose. 'atasm' is mostly compatible to MAC/65 - so I never had to do edits which might have broken my code due to inadvertent typos or some 'vi' commands running amok in a sneaky way. Alas, when 'atasm' does not spit out a binary for a perfectly good 6502 assembly language source file, but dies with a 'segmentation fault', this means it's not up the the job (assembling Microsoft BASIC).
The next candidate I found is DASM, which is a very popular macro assembler in the Atari VCS software developer scene. I know, it's weird that somebody writes new software for that ancient video game, but I think it has its merits as you need to 'ride the beam' and count CPU cycles to get anything out of that thing. Some people get satisfaction (and praise) from squeezing 'impossible' things out of very limited, primitive hardware. Such as these VCS hackers do, and for my own example, see my 'YAAKEN' keyboard encoder ...
But back to Microsoft BASIC and DASM. I had to add a few small but nice features to DASM to make my work on Microsoft BASIC more efficient, and I wrote a whole bunch of little tools which do most of the editing work automatically. One tool shows how the deeply nested .IF / .ENDIF blocks in the Microsoft source code really work. Otherwise they would not be human readable - they are nested too deep and sometimes over several pages.
I also found out that the Microsoft source code does not contain any of the APPLE II specific Applesoft BASIC commands such as GR, HGR, PLOT, PDL() and so on. The source code for these can be found in James P. Davis' annotated Applesoft disassembly listing here:
https://6502disassembly.com/a2-rom/
and I tapped into this ressource to add the missing Applesoft parts to the the Microsoft source code. This was tricky as all the known disassembly based works use label names which mostly don't conform to what Microsoft did use. So I wrote another little tool which would fix that by looking if a label from the Davis' code matches a label in the original Microsoft code, and then the tool would replace all the labels with the Microsoft name (that's the real deal).
State of the work as of today
This morning I got the confirmation that my edited and modernized Microsoft source code produces a 100% exactly matching binary image for the Apple ROMs from $DOOO to $FFFF. I still have to confirm that I did not break anything in the Microsoft BASIC source when a different target is selected, such as OSI, KIM and PET. This is ongoing work. I'm still stuggling with some weird conditional assembly conditions which combine several of the switches with '!' in between, I don't know yet what that means, looks like "OR" but not confirmed yet.
This said, one question:
Is there anybody out there (reading this) who is interested in getting my modified Microsoft BASIC source code which can produce a complete 'Applesoft' BASIC ? This question is justified because there are so many disassembled source codes available online which can do the same thing. The only difference is that my version is based on the "official" source code published by Microsoft in September of this year (2025). So there is no immediate benefit to be had. For me it was just a forensic style investigation how the Apple II ROMs came into being and who might own the Copyright of what. Because the ROM images are an important component of my "Replica 2e" project. With Microsoft having made the BASIC source code available under a very generous license (you can even sell binaries derived from it) I had high hopes that based on what Microsoft gave to us I could put together a ROM image not containing any code for which Apple owns the Copyright and still has not granted us (the vintage computer scene) any license to use.
The result of this investigation is that it could be done. But the outcome would not be 100% Apple II software compatible. Still, based on the insights I gained with this 'forensic' investigation, I could provide a ROM image which is "free" of Copyright infringement with the 'Replica 2e' to get builders going, and if they later want a more compatible ROM set, they can plug in whatever ROM images they find on the internet - none of my business what they will do.
I would make my version of the source code available if there is enough interest and demand to justify the extra work to make it pretty enough for publication. At the moment it's ugly because it's largely machine generated. And all the comments are gone and must be put back. I did not write the tool for this yet.
Comments invited !
- Uncle Bernie
I'd love to take a look. I've written a 65C02 assembler which is very flexible on it's input syntax. I could probably make it be able to ingest the syntax of MS's assembler code.
I think it is quite likely that MS used a PDP-11 back in the day. Bill Gates did an internship at DEC (he not surprisingly worked on DEC's BASIC interpreter) when he was a student and got in trouble with Harvard for basically using their PDP to start his company.
It wasn't Harvard, it was a company in Washington state called Computer Center Corporation they got in trouble with. This happened years before he got into Harvard while he was still a kid. It was around 1968-1969 when he was 13 or 14 years old.
That was another incident. He also got in trouble at Harvard and nearly expelled for allowing Paul Allen to use his Harvard PDP account to do work for Micro-Soft as it was known at that time.
I just read Chapter 12 of his book "Source Code". The entire chapter is about this incident. He was never even close to being expelled, it was just a possible outcome. Instead, they just gave him a slap on the wrist.
Has anyone tried using AI to improve any previously written programs whether they be basic or assembly?
I know AI is used in advanced programming, just wondering if it can be used to some sort of advantage to retro related materials.
Key words there are "his book". Yeah, like he is going to say otherwise. Other accounts differ. Basically if he hadn't come from a wealthy and influential family he probably would have been expelled. But yeah, in the end, it was more or less a slap on the wrist. The rules are different for people who have money.
I haven't. I expect it is fairly unusual and most programmers using AI assistance are usually working on much more modern technologies. That said, I don't see any reason why it wouldn't work IF the AI models have been trained on a big enough data set to include a significant of legacy code. That's the hard part, I can't see any reason why the big AI vendors would go out of their way to do that since they're unlikely to see it as being very marketable. However, I can also see that they may not always be that selective if they are ingesting huge amounts of publically accessible data like maybe old USENET postings, forums, etc. So who knows. Only real way to know would be to try it with the various different tools and see what happens.
Well, he did consult his father who is a lawyer. But I would argue that the rules are in favor for people who are smart both in terms of IQ and EQ. Being influential and having money is just the end result of these two stats being maxed out.
I am curious to what are these other accounts that differ. Can you provide sources?
In post #9, 'softwarejanitor' wrote:
" I'd love to take a look. I've written a 65C02 assembler which is very flexible on it's input syntax. I could probably make it be able to ingest the syntax of MS's assembler code. "
Uncle Bernie comments:
Thanks for your offer, but I think this would be a total waste of your time.
I found out that the original Microsoft source code in its original form is useless / unfit to generate any part of Applesoft BASIC, and this comes from changes which somebody (Microsoft or Apple ?) did within the original body of source code.
These changes are subtle and small, but must be there to generate a binary which matches the Apple ROMs. It took me 5 days of manual labor to find these differences and to incorporate them into the body of the original Microsoft source code. These changes are activated by a switch. When the switch is turned off, the assembler generates the same stuff as the original source code would do with REALIO=4 which selects the "APPLE" case but does not generate code that matches "Applesoft" exactly.
The differences mostly turn off the TTY I/O functions and add hooks to Apple's keyboard and text screen functions.
There are some changes / additions in the tokenizer to avoid trouble with ambigous keywords.
The keyword tables and their handler vector tables have been extended by Apple's added functions like GR, HGR, PDL() etc.
These added functions mostly come after the the end of the official Microsoft source code. (And I think these can be rewritten to avoid Copyright infringement but do the same thing. I have already written text, lores and hires graphics functions for my Apple-1 color graphics card and these have nothing to do with Apple's code, as they are much faster, but at the expense of more code).
The big open question is: who did these Applesoft specific extensions to the original Microsoft source code ?
If it was done by Microsoft, it's Microsoft who most likely has the Copyright on these extensions. If it was done by Apple, it is Apple (the corporation) who still has the Copyright on these extensions, and unless Apple releases these code sections under the same favorable license as Microsoft did with their official source code, these parts written by Apple must be substituted with new code.
Maybe Apple could be nudged into releasing their Apple II firmware, since Microsoft now has released their own part of it. I think Apple might have considered such a move in the past, but with large parts being copyrighted by Microsoft, any legal counsel worth their salary would strongly advise against doing this. Just because the contents of the Apple firmware ROMs is a hodgepodge of code coming from different copyright owners, and without a lot of forensic investigation work (nobody would pay money for) nobody could tell who owns the Copyright on which part(s).
This is why invested one week of my life to find out which parts are original Microsoft and which were added later. I now can replace the code sections not present in the recently released original Microsoft source code with my own stuff and have an Applesoft workalike free of Apple's copyright. Much the same thing as some Taiwanese Apple II clone manufacturer did to dodge Apple's copyright. Except that these Taiwanese certainly spent more man-hours on their effort than the one week I did spend on it ;-)
- Uncle Bernie
In post #13, 'Khaibitgfx' wrote:
" I know AI is used in advanced programming, just wondering if it can be used to some sort of advantage to retro related materials. "
Uncle Bernie comments:
IMHO, "AI" is a fraud / scam perpetrated by the usual suspects. They "train" their LLM using source code publicly available, and what the "AI" then can do is to regurgitate obfuscated code based on this "stolen" know-how, and without crediting the original author(s). In the end, it is theft of intellectual property and violation of the GPL or any other license granted by the original author(s).
Note that the perpetrators of this theft / fraud / scam make money with their "fencing" of these "stolen goods".
They should be sued into oblivion, and this is already going on all around the world. Recently, a German court decided that "AI" which regurgitated the lyrics of popular songs in a slightly obfuscated way was violating the intellectual property rights of the original artist(s) and this means the end of "AI" song writing, at least in Germany. The irony is that this practice has been done by humans since forever - this is called "to cover" songs and there even were bands who only did such "covers" of popular songs - for instance, I like Jimi Hendrix' cover version of Bob Dylan''s "All Along The Watchtower" much better than any version from the original artist (Bob Dylan). Now, today, if "AI" does such a derivative work in Germany, it's illegal and banned.
Oh, and I tried myself to use "AI" to turn ancient "C" code into modern "C" and it failed. I had to write a small tool myself to do this automatically.
As for the quality of "AI" generated code, I would not trust it, and I saw some comments along the lines that what you get from "AI" is in par with what you get from H1B "coders" from India, with their fraudulent Ph.D. diploma they bought in a Bangalore back alley behind a dumpster, it's wonky trash that needs more money to bring it up to standards than what it would have cost to have it written by a competent American programmer, but this is not how "management" works: they want the initial project plan to have the smallest possible budget, and this means outsourcing of much of the work to third world countries or incompetent impostors who were imported from those countries under a H1B visa. And then when the pile of cr@p produced in the inital project phase starts to stink to high heaven, the clever "manager" asks for more funds, blames the incompetency of the people working on the project, and tries to move the project to a different design center out of State or even out of the country. These projects are known as "challenge cups".
If you want to have good code, which works, and is well structured and well documented, don't use "AI" but use real experts who can do it well, and on time. But these experts don't work for the peanuts typically offered by the greedy corporations.
And this, Ladies and Gentlemen, is why most products you can buy today absolutely suck and are a waste of money.
- Uncle Bernie
Googling it provides lots of different accounts of it. Many say "almost expelled".
https://www.marca.com/en/technology/2025/01/26/67966d67268e3e80558b4592.html
That is one that uses those exact words, but there are many others who use similar language.
My main reason for asking about AI is that all the frebbie stuff is useless, where as if you pay the skies are bluer, or not so I am led to believe.
I do not know how to program in Applesoft, however there are few things I'd like to have made, so like every other ham and egger, give AI a try, every program ive been sent from different AIs had one thing in common, none of them worked, lol
If it's all a fraud as Uncle Bernie has said, the AI bubble will be the titanic version of burst.
I don't believe it is ALL a fraud. I think that there are some things that AI will work for. I also don't believe it is the be-all-end-all that many people believe it will and so many are betting heavily on. There are a LOT of "snake oil" products and services out there. This is no different than the last 20 big fads that have come along. There will be winners and losers. Many products and companies will disappear (and those who built products on top of them will often be SOL) and in the end only a small percentage will survive, and many of them will be bought up by the big players. We're still in the bubble and "gold rush" stage.
However, I do believe that a big bubble burst is coming because there are some serious sustainability issues with many of the players in AI right now. And as I aluded to before, the companies that crater will take others out with them. Either way, I am predicting a major recession that will make the .com crash of 2001-2003 and the housing bubble burst/"great recession" of 2008-2009 look like a church picnic. It will be much worse this time because we've already been in a full scale "Great White Collar Depression" for the past 3+ years. When AI companies start to fail it is going to make that a generalized full scale world wide economic depression that may make the 1930s look mild.
So many companies have made long term budgetary and staffing decisions based on assumptions about AI, and so much capital has been wrapped up in it that when the values crash it is going to be ugly.
This article simply references his book and no other source. It is what I found originally myself and what prompted me to read the chapter that talks about the incident.
There are other sources, this one was just at the top of search results. The story has been out there for years, way before his book came out.
Ok, but can you provide some? I am asking, because we live in an age where people who make stuff up can do it with a simple AI prompt.
Even book summary articles like the one you provided were done my someone who actually took the time to read a book. Now you just drop the PDF in the prompt and the AI has your article ready to publish in about 3 seconds.
After reading that one chapter I strongly suspect this incident was never revealed before his book came out, but I would like to know for sure.
I heard it 20+ years ago, so it was definitely out before his book, but maybe not widely known and without the details from his point of view. The search results are so polluted with recent articles that I'm having trouble finding it but it is definitely out there.
I myself haven't, but this is not the reason I strongly suspect it was not revealed before. Instead it has to do with academic privacy and the ability to pull someone else’s record - something that he also talks about at the end of the chapter.
>AI MEANING ALMOST INTELLIGENT
AI is statistics and calculus, it's math, really fast math and probablility. That's not intelligence.
> My main reason for asking about AI is that all the frebbie stuff is useless, where as if you pay the skies are bluer, or not so I am led to believe.
One would expect that the source material is better (dangerous assumption) so the code should be better.
On the topic of whether this is fraud, if you mean 1:1 replacing an engineer (hardware, software, systems, etc.) with an AI. I think that's a fraud that big business wants and may be willing to tolerate as it means short term profit. Not a whole lot of campanies care much for long term outlook.
Here's my take on AI, I've used it for outlines of presentations. That works well because I'm asking it to organize the material I know. Speeds up things, doesn't add a whole lot more knowledge but can look up resources. I'll be looking at NotebookLM (AI used differently, not for writing code). I think I have a use for that.
I've used LLM AI to bounce ideas when no one was around and found it useful there ... but I'd rather have humans. I have a brain that will suddenly flush the perfect word for the situation that I just had a moment ago. I can hammer at the AI until I get what I want. That's a bit frustrating with humans. But I can't really brain storm with an AI as it has no experiences.
I've asked AI to write short bits of code (functions, scripts, etc.) and it does okay. It will either work or need minor patching that I'll do myself rather than ask the AI again.
BUT ...
I've given it requirements (like I get at work) and initially the code looks very pretty. After a shake down I start to see the jr programmer and the mistakes and the bad style and the logic errors and the mess of math issues. I fed it information I'd give developers to fix issues and the AI doesn't fix the issue. I've given the AI the answer and it doesn't fix the issue fully. I've done this with more than one project and with different AIs including one paid for by my customer (big telecom). You can't give it a project and expect good code. Once it starts to hallucinate, I just give up.
I've worked with Python, JS and C. So it should be good with that. I tried Motorola 6800 language but that failed as expected. There's just not much out there. I've tried public (free) and I've tried private (paid, employer). Public AI I suspect has resource issues. Private AI I suspect may have a limitted amount of source material (not everything is in our private git yet).
So conclusion, management will replace replacing humans with AI, thay will probably regret it but will just hire new folks to fix that problem later. Ai is useful but it needs human intervention. As a tool it's useful but the user needs to know when and how to use it.
PS: Yes I am left to wonder if some of the issues are with me not knowing how to use the AI properly. And don't get me started on Vibe Coding, that's real fraud.
Linuxha, good input.
In post #27, "linuxha" wrote:
" So conclusion, management will replace replacing humans with AI, thay will probably regret it but will just hire new folks to fix that problem later. Ai is useful but it needs human intervention. As a tool it's useful but the user needs to know when and how to use it."
Uncle Bernie comments:
Oh, "management" in most cases never regrets anything because they have ways to dodge the wrath of their superiors.
But other than that, I concur with your conclusion (and what you wrote about the disappointment with "AI" made code - which almost never has industrial strength quality / robustness / maintainability because in the end "AI" also follows the GIGO principle: "garbage in, garbage out". And I must say that the "open source" software which "AI" was fed to be "trained" almost never is of "industrial strength" and is lacking. As "AI" can only analyze such source code examples and then morph / obfuscate the code into what you asked it for, you get low quality code which needs a lot of rework, same thing as with most code written by H1B Indians or - worse - by coding sweatshops still on the Indian subcontinent. You will *NOT* get quality code from any of these sources, Indians or "AI", although there are rare exceptions from that rule. I think it's a cultural issue and also has to do with their caste system and the IQ destroying inbreeding seen in the lower castes. The top caste (Brahmin) however is fine, very smart people and excellent scientists can be found there.
THE NATURE OF THE "AI" SCAM:
But back to AI and why I call it a "scam" or "fraud". Don't get me wrong: "AI" as we have it today is useful and has its applications and it seems it already could replace those 80% of the staff which according to the Pareto principle don't contribute much to the productivity (in some renderings, they say "20% of the staff does 80% of the work", but all this depends on the efficiency of the organization and on leadership, successful companies trim the deadwood from time to time). We could make the point that the Governments of the world do the opposite. Most of these "unproductive" or "low productive" jobs, if they just involve paper shuffling, filling out online forms and writing reports and summaries etc. can be replaced by "AI", even it its current state.
Where the "scam" / "fraud" lurks is in the financial plans of the perpetrators of the "AI" scam, which follows the same recipe of most other financial scams based on prior technological breakthroughs:
INITIAL BOOM TRIGGERED BY A TECHNOLOGICAL BREAKTHROUGH
Once a new technology becomes viable, the mass media (owned by the same prepetrators) exaggerate the usefulness and the potential of the new technology greatly (this is the "fraud" component) to draw in "investors". The whole way the financing is set up allows the perpetrators to do IPOs, attract and rake in Government subsidies, lend money at high interest (because of high risk) to the companies who develop and deploy the new technology, bundle up the debt into weird financial instruments ("CDO" etc.)
THE BUST
If the fantastical predictions don't come true, the companies never get profitable but turn into money sucking black holes, and then eventually go bust, the perpetrators already have made their "skim" (billions of US$) and don't lose much because the debt instruments already have been sold, i.e. to pension funds the same perpetrators control either directly or indirectly.
In the bust phase, the "normal" investors lose everything. But most of the the money was not wasted - it was put into building infrastructure based on the new technology.
PICKING UP THE PIECES FOR CHEAP
After the bankruptcy of the companies who built that, this infrastructure is up for grabs for billionaires who are cronies of the perpetrators, or belong to that club (you and me ain't in it). These billionaires now can pick up the pieces for pennies on the dollar and then they will own fine, modern, newly built infrastructure at a very low cost basis which makes it very cheap for users.
REVIVAL AND THE "REAL" BOOM PHASE
This is where the real "boom" of mass adoption starts but instead of the early investors (who lost everything) it's now a few billionaires who get even richer.
GENERAL EXAMPLES
The dotcom bubble was one of the recent big scams / frauds according to this recipe. The railroad bubble of the mid 1800's was another example: almost all the railroad companies went bust but the infrastructure had been built, the engines and train cars where there, ready to go, and we still use at least the tracks and the stations until today.
In my own professional realm (electronics and computers) I remember numerous smaller such bubbles, such as the supercomputer bubble, the minicomputer bubble, the digital wristwatch bubble, the pocket calculator bubble, the homecomputer bubble, and so on. All gone now and these "highways" are littered with the wreckage of countless companies which went bust. Few people got rich with these bubbles. Most lost all the money invested.
COMMON FEATURE (WATCH OUT FOR IT)
The common feature of all these tech bubbles is that the projections / forecasts were far too optimistic (intentional fraud ?), the hype was everywhere, the amount of money invested was immense, but the market prices collapsed quicker than expected (due to fierce competition or overproduction) so they were unable to recoup the investments, or the demand never took off as projected / hyped.
MORE SPECIFIC EXAMPLE: HOME COMPUTERS
For instance, the TI 99/4 disaster did cost Texas Instruments a fortune (but the company survived, of course), and is interesting to study, as are the cases of Atari, Commodore, and the numerous other homecomputer companies which went bust and are all but gone. Snarky people still claim today that Commodore never did earn a dime with their "stellar success" C-64, but due to the dubious corporate structure of Commodore (their head office was in the Bahamas) it is not possible to substantiate this claim. The alleged lack of profits on the C-64 could have been the result of "transfer pricing", a legal way to avoid paying taxes on profits, still used today by all the big corporations: the profit just appears at some subsidiary in a low tax or no tax jurisdiction (don't try this as the owner of a small business ;-)
CONCLUSION ON "AI"
Anyways, all this said, I think that "AI" is an artificially inflated and much overhyped bubble, which will most likely burst, but huge datacenters will have been built, maybe even with their own (nuclear ?) power plants, and after the bust the usual suspects will pick up the pieces for pennies on the dollar, and maybe they lease the "AI" hosted in these datacenters to totalitarian, Orwellian regimes which will use it to identify and keep track of every single person (and their dog) living in one of these totalitarian states (I won't live there, though, as there are plenty of nations who can't afford this level of surveillance ... it is said that 1/3 of the East Germans worked for the Stasi and that this Stasi was such a burden on the East German economy that it never was competitive and then collapsed).
Now you got my point of view on the "AI" topic. Now I'm going back to working on Microsoft 6502 BASIC.
Today I was able to get a matching binary for OSI BASIC in ROM ;-)
I don't think that "AI" could do this kind of work --- yet.
- Uncle Bernie
mime.png
Yes, marketing has gone way out of its way on AI. Yes, that does seem to fraud.
I wonder if Marketing just used AI and it hallucinated? ;-)
> Now you got my point of view on the "AI" topic. Now I'm going back to working on Microsoft 6502 BASIC.
> Today I was able to get a matching binary for OSI BASIC in ROM ;-)
Cool! I have to put together my OSI boards (got the triple CPU board and a Harris chip). I'd better get busy getting the parts. Working TTl is starting to be a pain to find.
This evening I finally got a "match" for the binaries of KIM-1 Microsoft BASIC. This is an interesting case because it's a RAM based BASIC, not ROM based, such as Applesoft or OSI, which all are ROM based.
I'm now working on the BASIC-in-ROM found in the first Commodore PET 2001. But there are lots and lots of mismatches. It seems that Commodore did a lot of changes to the original Microsoft source code which is unexpected because the original source as published on github contains a lot of Commodore specific code, none of which ever gets activated in any of the other selections (Applesoft, KIM and OSI).
This makes me wonder how Commodore BASIC really came into being. Who put these Commodore specific extras in ? It might be that Commodore requested them from Microsoft, Microsoft did put them in, Commodore then tooks this as a "proof of concept" and purchased their "eternal source licence" from Microsoft and then proceeded to wrangle the source such that all too many differences were introduced which can't be found in the published Microsoft source code.
This means progress may be much slower than expected. I still hope that I can get a clean rendering of PET BASIC without disturbing the original source code too much.
- Uncle Bernie
I can't tell if you're joking, or just parroting some kind of sick sklavenmoral from the American Enterprise Institute. People like BG (or Elon Musk) are the opposite of "EQ". Successful people have more in common with apex predators, as the Gervais Principle lays out concretely.
People's real personalities are on display in private settings, not in published hagiographies. From speaking to executives who had meetings with BG, he expects instant and total agreement from everyone present, and when he is not in control, he pouts, rocking back and forth while sitting on his hands and moaning to himself. That is what autism looks like.
Now I can't tell if you are joking, if you are really pitting these two under the same denominator or even suggesting that they might have anything in common, other than the fact that they both have been the richest person on Earth at some point. Hopefully you are not into the whole Bill Gates Covid conspiracy nonsense. I never met him personally, but during my time at Microsoft I had colleagues who did and they all said that he is surprisingly down-to-Earth kind of guy. Obviously not as much as Steve Wozniak, but way more than Steve Jobs.
... I am at the point now where the binary generated from the (rendered by me) original Microsoft source code matches with the ROM contents of the PET 2001 until the "official end" of the Microsoft code. But after that "end" there is more code not found in the original source code but still called from BASIC. I suspect that is "extra code" was not written by Microsoft but by Commodore. Much the same situation as with Applesoft BASIC where I had to stitch some code found on the internet to it, to make it complete and able to produce a full Apple II+ ROM image. I won't do this for the PET, as unlike with Applesoft, I'm not interested in making a "free" version of ROM images for any Commodore product. I did this PET work only to make the rendering for currently available assemblers complete, once I was at it and had built the tools for it.
Oh, and please, let's stop bickering about the personality traits of BG as seen in posts #33 and #34 above. This is off topic for this thread (and I already regret to have made comments about "AI" in this thread, despite I stand to these comments, and still believe it's a scam simple because the claims what it can do are, IMHO, extremely exaggerated. Just look at the projected "investments" they claim to do into "AI" datacenters in the next 10 years. They are astronomical and unless they show how exactly they intend to earn enough from these planned "services" to just pay the interest on their debts incurred from these investments, it's prudent to stay away from investing anything into that. In general, just look at the balance sheet of any company and find out if the purported "value" = total stock worth - debts and obligations generates a better yield for the investor than if the same "value" was invested in U.S. treasuries. This is a real eye opener. Most publicly traded companies are not worthy to invest even a dime into them, based on this rule. Most are "Zombies" which do not even make enough profit to pay enough interest on the money invested in them. Hence, all the stock price manipulations like "buybacks". Be warned !)
But back to Microsoft 6502 BASIC. It think it was not written by Bill Gates himself. I found out that the OSI BASIC has a modified "hidden message" / "easter egg" which comes up - IIRC - if you answer "A" to the request D/C/W/M. It says "Written by Richard W. Weiland". No mention of Bill Gates there. And no trace of this message on the official source code, except for mentioning Weiland / Gates as authors. The "Gates" is totally absent in the OSI ROM images. So my current theory is that Bill Gates may have written parts of the 8080 Microsoft BASIC for the Altair. And then he (BG) hired Richard W. Weiland to translate the code to 6502 assembly language. And Mr. Weiland put said "easter egg" in without mentioning Mr. Gates. Seems that this "omission" was fixed later ... would be interesting when this did happen. Just a few months ago, prior to the official release of the source code ?
Comments (on the 6502 BASIC topic only) invited !
- Uncle Bernie
Apple II Florence.png
Now if AI could actually create Apple 2 programs that actually work...
Responding to an 11/24 post here, yes I am interested in availability of a better more authoritative source listing for Applesoft, and to lesser extent other related BASIC dialects. I am maintaining an Applesoft parser and language server and documents related to them. At present I rely on the Davis disassembly to help figure out the most intricate details of the language. My guess is it will turn out the Davis version is fine for this, but that is only a guess, hence my interest.
Unravelling the history is also interesting for its own sake, at least to me.
In post #38, 'dfxgordon' wrote:
" Responding to an 11/24 post here, yes I am interested in availability of a better more authoritative source listing for Applesoft, and to lesser extent other related BASIC dialects. "
Uncle Bernie comments:
I've just finished the work on rendering the original Microsoft source code (which was written for DEC's MACRO-10 assembler) into a form understood by modern macro assemblers. I chose DASM but alas, DASM lacks some capabilitites needed, and the DASM team refused to add them despite I sent them a complete tarball with the upgrades.
So the last missing work to be done is to take my "extras" out of the rendered source code which added line numbers referring to the original source code (for better cross reference) and a visual clue as to the nesting of the various .IF / .ELSE / .ENDIF blocks, which in Microsoft BASIC is too deep for human reading without such helpers / crutches. This upgrade involved adding a few lines of code to DASM's parse() function. But it's not mandatory until you want to use the full version of my rendered source code.
What is mandatory as a DASM upgrade is the addition of the DCX directive which is like DC but inverts the MSB of the last character of a text string. A required feature for assembling Microsoft BASIC. I could have done this by butchering all the strings and adding the last character as a hex code but this would be ugly and unreadable. So I will keep the DCX and when you need it, it's just two primitive lines of code to be added to the DASM source code. It eludes me why the DASM team refused to adopt this despite they admitted that DASM's string handling capabilities are lacking. Imagine, just two lines of code to be added !
After this extra work (removing the nice extras) is done, I intend to publish the tarball of my rendered Microsoft 6502 BASIC source code here on Applefritter, as a beta test version to see if adopters run into difficulties with it.
Seems that you, 'dfxgordon', are a prime candidate as a beta tester.
Stay tuned !
- Uncle Bernie
OK staying tuned! Side comment, the licensing concerns for someone distributing retro-software that depends on, say, Apple operating systems, are yet another set that we hope the holders of these licenses might someday favorably address.
In post #40, 'dfxgordon' wrote:
" .... the licensing concerns for someone distributing retro-software that depends on, say, Apple operating systems, are yet another set that we hope the holders of these licenses might someday favorably address. "
Uncle Bernie comments:
Microsoft did the right thing which is a very generous "gift" to the retro computing community.
For the Apple II retro computing community, this deed by Microsoft is a very important milestone as it "untangles" the "Gordian Knot" in the Apple II firmware as evidenced if you look at the copyright messages on the ROMs: we can find something like:
(c) Apple 1978
(c) Microsoft 1977
On the very same ROM(s) and nobody is any the wiser which part of the code is Copyrighted by Apple and which is Copyrighted by Microsoft. (Some of the ROMs do not have any copyright message, though).
Until 3rd September 2025 we had no means to solve that mystery and neither did Apple have any reason to "release"/"free" their own part of the code. Because of the entanglement of code pieces written by Apple and code pieces written by Microsoft this simply could not be done. Too many legal issues lurking.
Now, with Microsoft's action here:
https://opensource.microsoft.com/blog/2025/09/03/microsoft-open-source-historic-6502-basic
this concern is gone for Apple and - in theory - they could proceed to "open source" / "free" their part of the Apple II firmware under the same or a similar license used by Microsoft. This would allow the retrocomputing scene to make kits for replicas of the Apple II series based on more modern ICs without weasel wording around the Copyright issue ("binaries for the ROMs can be found on the web").
I ran into this issue for my Replica 2e project which was bogged down due to these issues with the ROMs, despite I have developed a "real time code morphing" system which allows the user to run ALL versions of the Apple II firmware (from the first Apple II to the II+ to the IIe to the IIc) by using only one, arbitrarily chosen, original Apple ROM. Which can be salvaged from old decrepit Apple II which are beyond repair. However, this "real time code morphing" system never was tested in a court of law if it still could be construed to violate copyright despite it does not contain any copyrighted binary code in its own flash memory. And it is expensive to implement in terms of extra hardware needed.
This conundrum was a great motivation for me to analyze the published / "freed" Microsoft 6502 BASIC source code against the contents of the Apple II+ ROMs to see which part was written by whom and which part(s) are now "free" as per Microsoft's license. The outcome is very interesting, as the "extra layer" which was presumably added by Apple between Microsoft's code and Apple's low level device drivers ("AUTOSTART ROM") is quite small. I estimate a clean sheet replacement for these "extra layer" routines could be written in maybe two days, and would be completely different, as a more elegant coding approach could be used ... using a unified handler routine for all the extra functions requiring parsing down their parameters. Apple's original code does this piecemeal and individually for every added keyword, which is inefficient coding needing more ROM space but it can be explained by the way they likely "grew" it keyword by keyword. Since I have already written low level device drivers for my Apple-1 color graphics card project (which are much faster than Apple's) I could now make a ROM for my Replica 2e which contains no code copyrighted by Apple and still has all the Applesoft BASIC capabilities. (It would be easier and less work if Apple would "free" their firmware-in-ROM, too, as Microsoft did with Microsoft's part).
And while I was at it, and had built the little tools to automate most of the task, I also made sure that my rendering of Microsoft 6502 BASIC is able to generate matching binaries for KIM-1, OSI Superboard II, Commodore PET 2001.
I hope that other vintage computer aficionados pick up my work and migrate it to macro assemblers which work out of the box with no additions to be made. Merlin32 by BrutalDeluxe is probably the best candidate, but it did not compile on my Linux system, and I had no time to find out why. I tried a few other open source assemblers but they also didn't compile, such as complaining about C libraries being obsolete (but I have the most recent, updated ones, their scripts just did not recognize them). I'm not willing to spend my time to fix broken software made by others. DASM did compile fine right out of the box (aka tarball) and the DCX extension was easy to add (two lines of code added). The line number and nesting level indicators were added later. But now I have second thoughts about the choice of DASM, after the DASM team rejected my add-ons. Alas, I don't have the time anymore to change to another assembler - this project is already two weeks over schedule and I should be working on another project (the final version of the Apple-1 color graphics card) since two weeks.
- Uncle Bernie
I've posted the beta test version of my rendering of Microsoft's source code in a new thread:
https://www.applefritter.com/content/uncle-bernies-rendering-microsoft-6502-basic
Hopefully, it will find some beta testers.
More on this in the above new thread.
- Uncle Bernie