History of Parallax Microcontrollers and languages

Hello, I am putting together a school report for my social studies teacher. He approved the topic of 21 microcontrollers, 70's-80's Era PCs, and programming languages.

The great part, items 1-11 on the list of 21 are Parallax creations.

I would like help gathering the "stories" of the BS1, BS2s, P1, PIC, and SX microcontrollers. I am especially interested in the reasons that they were made, and how long they were in design.
«13

Comments

  • 79 Comments sorted by Date Added Votes
  • I am also researching the P2.
  • This strikes me as very odd.

    Since when did "social studies" people start thinking about micro-controllers?

    Do you really mean "History of Parallax Micro-controllers"? If so then presumably all the 21 items on the list are Parallax creations. Not just 1 to 11.

    Or do you mean "History of Micro-controllers"? If so that is a huge subject that has really changed society since the mid-nineteen-seventies. There are hundreds of micro-controllers that were around before Parallax existed.

    The first high level language targeted at microprocessors/micro-controllers was PL/M by Gary Kildall https://en.wikipedia.org/wiki/PL/M
  • Hi AC. The early history of microcomputer languages is really the history of BASIC. As Heater points out there were others, but it was BASIC which became popular via the Apple and Tandy Radio-Shack, then Commodore product lines. Until well past the mid 1980's it was considered standard for a low-end computer to boot to BASIC's READY prompt. It was self-sufficient even on very limited hardware, easy to learn, and capable of doing practical things. Even the original IBM PC came with a built-in BASIC interpreter.

    Microsoft shipped BASIC with all versions of MS-DOS and Windows (which was originally a shell running atop MS-DOS) until IIRC Windows 95. The command-line simple BASIC became QBASIC which was a full screen editor, integrated development system style stripped down version of QuickBASIC, which was a compiler as well as interpreter capable of producing standalone executable program files (aka "professional looking software.") With Windows 9x Microsoft jumped to Visual Basic, which they did not feel like giving away and became the most popular programming environment in history.

    Meanwhile, BASIC was getting serious competition from C, which was about the same age but had always been compiled, often not self-sufficient when applied to a microcomputer, and very fast and efficient compared to BASIC. Again there were other offerings but with small computers it really came down to C, usually supported by a compiler running on a "real computer," and BASIC which might be self-sufficient.

    The 1990's were a barren time for people interested in things like hobby electronics and robotics. Modern parts were getting hard to source and hard to use, documentation was unavailable or hidden behind non-disclosure agreements and steep licensing fees, and there was for practical purposes no internet as we've known it in the 21st century. The Parallax BASIC stamps were a response to this. You needed a "real computer" to program them, but no additional expensive software, documentation, or hardware programming tools. They were very limited yet capable of practical stuff. And at the time they were far more inexpensive than anything else with their capabilities. With a BASIC stamp instead of programming the PIC microcontroller, you programmed an EEPROM with byte code which was run by a very small interpreter running in the PIC. The interpreter would accept a download and program the EEPROM with your program. This avoided the need for PIC programming tools, which at the time were fairly esoteric and expensive.

    Parallax introduced more and more capable BASIC stamps, with the second generation based on SX series PIC clones that ran much faster. As I understand it the Propeller chip came about because when Chip Gracey was looking for a suitable chip for a third generation he wasn't finding anything he liked, and being a genius visionary decided to design his own microprocessor to fill what he saw as a huge gap in the market.

    Meanwhile outside of the Parallax ecosystem all versions of BASIC are fading as even the best are considered limited in capability and hard to use compared to alternatives. Instead of BASIC Chip came up with Spin for the Propeller, a fast and capable language designed for teaching essential computer development concepts as well as being practical. Arduino, which has taken over much of the BASIC Stamp market, uses a smoothed-over version of C++ for performance. And since C and C++ are now the standards in many spheres Parallax has been trying to get on board with versions for the Propeller and, presumably better supported in the hardware, P2.
  • @localroger,

    That pretty much nailed it.

    Somehow I like your writing style, stop messing around with those scales and sell some books instead... (yes, I did read and really enjoyed the stories you have written and pointed me to long ago)

    Enjoy!

    Mike
    I am just another Code Monkey.
    A determined coder can write COBOL programs in any language. -- Author unknown.
    Press any key to continue, any other key to quit

    The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this post are to be interpreted as described in RFC 2119.
  • Hi Mike -- you probably don't know about my latest writing project, so I'll just drop this here.

    https://www.reddit.com/r/HFY/comments/7b0pnx/oc_the_curators_part_1/

    I drop episode 50 tomorrow (Saturday).
  • @localroger

    cool, thank you very much!

    Enjoy!

    Mike.
    I am just another Code Monkey.
    A determined coder can write COBOL programs in any language. -- Author unknown.
    Press any key to continue, any other key to quit

    The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this post are to be interpreted as described in RFC 2119.
  • msrobotsmsrobots Posts: 2,043
    edited September 29 Vote Up0Vote Down
    Just read the first one, 50 ?, - wonderful, that will keep me reading, thank you, keep on with it

    Mike
    I am just another Code Monkey.
    A determined coder can write COBOL programs in any language. -- Author unknown.
    Press any key to continue, any other key to quit

    The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this post are to be interpreted as described in RFC 2119.
  • This report is not simply focused on Parallax peoducts. I was forced to pick only 21 items to research, so I looked through the stuff Parallax has made so far. Thank you, localroger, this is exactly what I was looking for. If you guys want, I can post the slideshow when it is done(if the forums accept Microsoft PowerPoint files).
  • It would be interesting to see what your 21 items are.
  • (if the forums accept Microsoft PowerPoint files).

    Idea: Export to pdf.

    That's supported here, and eliminates PP versioning issues too.
  • Sure AC if you can narrow the focus many of us here are old farts who lived through all of this history and we can flesh it out for you.
  • @localroger: Since the topic has wandered onto your writing, it seemed like the opportunity to clarify something that has nagged me for years...

    I once read something attributed to you. Don't remember much except that it was a fascinating story of a Las Vegas gambler. Was that autobiographical or a work of fiction?
  • localroger,
    The early history of microcomputer languages is really the history of BASIC.
    Strangely enough, this old fart who lived through all of this history has a totally different recollection of events:

    BASIC was a language that had been around for many years and had a long history before the arrival of the microprocessor. Started in the early 1960's or so on mainframe time sharing systems and then minicomputers. A means by which many students and other users could get time on those massively expensive machines.

    BASIC was my first introduction to computers and programming as a teenager in 1972. Via a teletype connected via a phone line to some far away mainframe in a different city.

    When the microprocessor arrived there was no BASIC or other high level language available to those pioneering first adopters. They just had the chips. One programmed them in assembler. If one was lucky one used a mini computer to help or a development system provided by the chip vendor. Like the Intel MDS 80: http://www.computinghistory.org.uk/det/731/Intel-MDS-80-Microcomputer-Development-System/ Very helpful at 10,000 GBP a piece!

    In my case we had no such luxury. We wrote our algorithms in an ALGOL like pseudo code. With a pencil on paper. We then compiled that into assembler manually. Then assembled that into HEX code which got entered into an EPROM programmer.

    The first high level language available for these new microprocessors was PL/M. Created by Gary Kildal, of CP/M fame, and supplied by Intel. It was great, more like the ALGOL pseudo code we had been using manually.

    Of course that was no use to anyone without a mini computer or expensive development system to run it on.

    That is where Bill Gates and co. saw an opportunity to make the microprocessor usable by the common folk. With a very minimal implementation of a language that looked like BASIC and ran on the chip itself.

    That is where BASIC finally meets the microprocessor.

  • Heater. wrote: »
    The first high level language available for these new microprocessors was PL/M. Created by Gary Kildal, of CP/M fame, and supplied by Intel.

    I've gone all misty eyed again. According to the introduction in my copy of McCraken, it was introduced in 1973.
    Heater. wrote: »
    That is where Bill Gates and co. saw an opportunity to make the microprocessor usable by the common folk. With a very minimal implementation of a language that looked like BASIC and ran on the chip itself.That is where BASIC finally meets the microprocessor.

    Tinybasic might pre-date Microsoft Basic, in the form of MITS Altair Basic, by a couple of months. But, on the whole, Basic was several years late to the micro party.
  • Hay, I think I still have a copy of McCraken somewhere.

    For sure Bill was not the only one making a BASIC for microprocessors.
  • ctwardellctwardell Posts: 1,655
    edited October 1 Vote Up0Vote Down
    Tinybasic might pre-date Microsoft Basic, in the form of MITS Altair Basic, by a couple of months. But, on the whole, Basic was several years late to the micro party.

    https://en.wikipedia.org/wiki/Tiny_BASIC

    Sounds like it did pre-date Microsoft Basic.

    Tiny Basic for the 1802 by Tom Pittman was my first exposure to BASIC.

    It has some 1802 specific extensions to support the Q output and EF1 - EF4 inputs.

    It made use of a VM, which appears to be common for many of the Tiny BASIC versions.

    C.W.

    Edit: Here is a link to Tom's site http://www.ittybittycomputers.com/IttyBitty/TinyBasic/

  • K2 wrote: »
    @localroger: Since the topic has wandered onto your writing, it seemed like the opportunity to clarify something that has nagged me for years...

    I once read something attributed to you. Don't remember much except that it was a fascinating story of a Las Vegas gambler. Was that autobiographical or a work of fiction?

    That was A Casino Odyssey which was the true-life account of how my best friend started a card counting team in the 1990's. It is cached along with a lot of my kuro5hin era stuff at localroger.com.
  • K2 wrote: »
    @localroger: Since the topic has wandered onto your writing, it seemed like the opp
  • BASIC may not have been the first language to the micro party, but by 1980 it was the entire ecosystem for practical purposes and it would set the tone throughout the 1980's, even as C became more popular as it became practical to run its compilers on the micro hardware, and laying the foundation for Visual Basic in the 1990's. Before I had access to an actual computer, around 1976 in high school we had a short mid-math course on PL/1. I have never actually written and run a PL/1 program on a real computer though. By the time I was in college in 1981 the choices for intro CS were FORTRAN and Pascal, both depending on a mainframe for actual execution. I completed my FORTRAN exercises by completing them first in BASIC on my home computer then converting them to FORTRAN after they were debugged.

    Before the triad of TRS-80/Apple/Commodore became nearly the entire market, all that was really available were very expensive boxes needing many peripherals to be useful like the Altair-8800 and a few really business class S-100 style systems that could run CP/M. Those were great if you had $10K-$20K to spend on a hobby computer, in 1970's dollars. Otherwise it was what amounted to microprocessor trainers like the COSMAC Super Elf (of which I have one in a picture frame above this desk), which you either programmed in hex or Tiny BASIC, which very definitely predated Microsoft BASIC and had a rather different philosophy of operation.
  • localroger wrote: »
    Hi Mike -- you probably don't know about my latest writing project, so I'll just drop this here.

    https://www.reddit.com/r/HFY/comments/7b0pnx/oc_the_curators_part_1/

    I drop episode 50 tomorrow (Saturday).

    I had no idea. Awesome. More when I have read.

    Do not taunt Happy Fun Ball! @opengeekorg ---> Be Excellent To One Another SKYPE = acuity_doug
    Parallax colors simplified: http://forums.parallax.com/showthread.php?123709-Commented-Graphics_Demo.spin<br>
  • I will definitely post the final presentation here.
  • Had an IMSAI loaded (by the time I got the parts Johny Cash style, one piece at at time), and I had about thousand into it. Wish I had kept it looking at the prices on ebay and elsewhere........ after the front panel, by first "terminal" was an ASR-33. And yes, with paper tape, you really could visually verify your data!
    Ordnung ist das halbe Leben
    I gave up on that half long ago.........
  • Heater. wrote: »
    This strikes me as very odd.

    Since when did "social studies" people start thinking about micro-controllers?https://en.wikipedia.org/wiki/PL/M

    I am not really a "social studies person" :).
    However, my teacher did approve of the topic when I asked him.
  • Just stumbled across a really good exploration of BASIC on early micros:



    The 8-bit Guy rules.
  • I think it may be time for a BASIC comeback...

    Not for cutting edge, but for learning...
    Prop Info and Apps: http://www.rayslogic.com/
  • BASIC was never the cutting edge, and always for learning ... which is why Parallax used it for the Stamps.
  • There is a reason it is called Beginner’s All-purpose Symbolic Instruction Code.
  • Well, BASIC was the cutting edge pedagogical language :)

    Arguably BASIC was cutting edge in the early environment of the 8 bit micros as it was the only high level language available to most people.

    Given that we now have much better languages for introducing programming to beginners there is not much need for BASIC. For example Python: https://micropython.org/, Javascript: https://www.espruino.com/

  • I can't speak to Python, having only given it a very brief look, but Javascript is a HORRIBLE language on which to learn. For all its flaws BASIC could be reliably expected to do exactly what you told it to do, and its weaknesses forced you to learn a little bit about how the computer worked. When weak typing makes it unsure whether 3+3 will yield 6 or 33, you are in a realm of hurt that has nothing to do with the fundamentals of computing.
  • Javascript is a perfectly fine language. It is powerful and expressive but in a simple way. Having always had features that other languages only recently acquired, closures, lambdas, etc. Millions of people started out programming with JS. JS makes it dead easy to handle multiple asynchronous events. And it performs very well. Yes it has it's quirks, all languages do. Until such time that people are using languages that don't silently fail in horrible ways when integers are overflowed or arrays indexed out of pounds or the hundreds of traps other languages have, they should not throw stones at JS.

    Javascript is so good that Microsoft used it to create their new Visual Studio Code editor/IDE. Which is a wonderful thing.

    Anyway we should not argue that case here, we have the "The Official JavaScript Religious War Thread." for that: https://forums.parallax.com/discussion/152201/the-official-javascript-religious-war-thread/p1 :)


Sign In or Register to comment.