--------- ---- -- ---- ----- --- ---- ----- COPYRIGHT 1975 BY BILL GATES AND PAUL ALLEN --------- ---- -- ---- ----- --- ---- ----- ORIGINALLY WRITTEN ON THE PDP-10 FROM FEBRUARY 9 TO APRIL 9 1975 BILL GATES WROTE A LOT OF STUFF. PAUL ALLEN WROTE A LOT OF OTHER STUFF AND FAST CODE.
Microsoft GW-Basic Interpreter Source Code
31–40 of 101 posts
Re: Microsoft GW-Basic Interpreter Source Code
#32On the very first day our household had a PC, they called "the guy". "The guy" was supposedly a PC guru, and he explained to me how to load a program in GW basic. And he put GW Basic in my autoexec.bat so it would launch automatically.
On day #2, I had gotten hold of some games on the school yard and naturally attempted to load them in GW basic: "LOAD a:\alleycat.exe". It didn't work well.
But I quickly saw the errors of my ways, and was soon whipping up really cool programs in GW Basic, and playing IBM Alley Cat in black, white, cyan and magenta.
Good times. Sometimes I think IT as a whole went down hill from there.
Re: Microsoft GW-Basic Interpreter Source Code
#33Earlier quoted context omitted.
Well, they get out of date because the code around it changes. If the code doesn't change either... I do agree with you though that commenting is a good thing.
Updating comments as needed is just something I consider part of being a professional programmer.
With just the slightest amount of professionalism, you can keep them up to date, and only a real psychopath would update code without updating the comments directly above it.
(So, of course, 50% of programmers don't...)
Re: Microsoft GW-Basic Interpreter Source Code
#34For awhile googling for GWBasic would find my homepage. (I used to have a video call widget and my username was "GWBasic.") Someone once emailed me looking for support for GWBasic. They apparently got ahold of an old GWBasic program that was saved in an encrypted manner. It was run-only but they couldn't list out the source code. I just dug out my old GWBasic manual. The command was "Save P"
https://groups.google.com/g/comp.os.msdos.misc/c/PA9sve0eKAk
Re: Microsoft GW-Basic Interpreter Source Code
#35--------- ---- -- ---- ----- --- ---- ----- COPYRIGHT 1975 BY BILL GATES AND PAUL ALLEN --------- ---- -- ---- ----- --- ---- ----- ORIGINALLY WRITTEN ON THE PDP-10 FROM FEBRUARY 9 TO APRIL 9 1975 BILL GATES WROTE A LOT OF STUFF. PAUL ALLEN WROTE A LOT OF OTHER STUFF AND FAST CODE.
They wrote this in two months? In assembly? Impressive! I wonder if they used code generators or wrote plain assembly?
Re: Microsoft GW-Basic Interpreter Source Code
#36--------- ---- -- ---- ----- --- ---- ----- COPYRIGHT 1975 BY BILL GATES AND PAUL ALLEN --------- ---- -- ---- ----- --- ---- ----- ORIGINALLY WRITTEN ON THE PDP-10 FROM FEBRUARY 9 TO APRIL 9 1975 BILL GATES WROTE A LOT OF STUFF. PAUL ALLEN WROTE A LOT OF OTHER STUFF AND FAST CODE.
They wrote this in two months? In assembly? Impressive! I wonder if they used code generators or wrote plain assembly?
It was a skill pretty much everyone knew.
Re: Microsoft GW-Basic Interpreter Source Code
#37All of the "comments are useless because they get out of date" folks should look at this code, which is still comprehensible 40 years later because of the comments.
Well, they get out of date because the code around it changes. If the code doesn't change either... I do agree with you though that commenting is a good thing.
Recent contract at a big Fortune50 company, and they forbid developers from using comments - "any code that you think needs some explanation should be put in a separate readme file in a 'docs' directory off of the root" - how can that be better, or more useful, than a couple of lines of comments right above the code in question?
They didn't want us to use comments, because they were afraid the code would change, and the comments would become out of date - so put those comments in a separate file, that almost nobody will remember to read, much less update, and that would solve the problem.
You can't make this stuff up, utter insanity.
Re: Microsoft GW-Basic Interpreter Source Code
#38--------- ---- -- ---- ----- --- ---- ----- COPYRIGHT 1975 BY BILL GATES AND PAUL ALLEN --------- ---- -- ---- ----- --- ---- ----- ORIGINALLY WRITTEN ON THE PDP-10 FROM FEBRUARY 9 TO APRIL 9 1975 BILL GATES WROTE A LOT OF STUFF. PAUL ALLEN WROTE A LOT OF OTHER STUFF AND FAST CODE.
They wrote this in two months? In assembly? Impressive! I wonder if they used code generators or wrote plain assembly?
Today you could spend as much time getting the build to work with npm or maven for something very simple.
Macro assemblers are nowhere near as much fun on the x86 (and other 80's era micros) as they are on something like the IBM 360 or AVR8 with a big register file... If you've got 32 registers you can write macros where the register names are parameters and avoid a lot of the meaningless activity involved in "calling conventions" in programming languages like C.
Re: Microsoft GW-Basic Interpreter Source Code
#39Earlier quoted context omitted.
Well, they get out of date because the code around it changes. If the code doesn't change either... I do agree with you though that commenting is a good thing.
I couldn't agree more - and think it is asinine to tell developers to not comment code; most of the comments I write, are for me as much as for the next person who works on it. I find them invaluable. Recent contract at a big Fortune50 company, and they forbid developers from using comments - "any code that you think needs some explanation should be put in a separate readme file in a 'docs' directory off of the root"…
Re: Microsoft GW-Basic Interpreter Source Code
#40--------- ---- -- ---- ----- --- ---- ----- COPYRIGHT 1975 BY BILL GATES AND PAUL ALLEN --------- ---- -- ---- ----- --- ---- ----- ORIGINALLY WRITTEN ON THE PDP-10 FROM FEBRUARY 9 TO APRIL 9 1975 BILL GATES WROTE A LOT OF STUFF. PAUL ALLEN WROTE A LOT OF OTHER STUFF AND FAST CODE.
According to Paul Allen's book [1] about his time at Microsoft (admittedly a biased source), his particularly critical contribution was an 8088 emulator/simulator for the PDP-10. That allowed them to write and even interactively debug (if I remember right) BASIC for the 8088 on the PDP. It would've been hopeless to develop directly on a microcomputer, so they would've had to have written on the minicomputer, transfer…
https://www.filfre.net/2013/03/the-top-of-its-game/
which used virtual machine technology to deliver games developed on a Decsystem 20 to many different kinds of Micro.
When Microsoft BASIC came out in 1976 it was rare for a micro to fill out the 16-bit address space with a full 64k. I had a TRS-80 Color Computer which ran a multitasking operating system
https://en.wikipedia.org/wiki/OS-9
With 64k of RAM I wrote a FORTH interpreter that ran under OS-9 with a good standard library in about 3000 lines of assembly. OS-9 looked a lot like UNIX or VMS. Dev tools in 1984 were good enough that writing a BASIC interpreter on a micro in assembly would have been straightforward, I'm sure you could on a C-64.
No way you could do that on the base configuration Altair that Microsoft BASIC originally targeted.
The first time I used emulation was circa 1987 when I developed a BASIC program for a high school teacher who had a Z-80 based CP/M system on my generic 286 machine... Even then there was a CP/M emulator for the 286 which could destroy any Z-80 machine on the market -- even though the protected mode of the 286 was as "brain damaged" as Bill Gates said it was, the raw performance of the 286 was the beginning of the end for the 6502, 68--, 68---, Z80 and all the other architectures.