Not to forget: P2 Assembly for Education

Spin2 and uPython have the liberal arts covered. And C has general computing covered. But as an "Introduction to Assembly Programming, p101" I don't think you can beat PASM2. PASM2 is sort of RISCplus or CISCminus. So, principles of both RISC and CISC assembly programming can be briefed.

I am absolutely in love with PASM2. The beauty of being able to program without any concern for someone else's syntax has to be experienced to be fully appreciated.

While I have to admit that I'm not exactly a SmartPin wizard, the rest of PASM2 could not be easier, and it is complete. If there is something you want to do to a number... you can do it in about two clock cycles.








Comments

  • Hear, hear! I haven't wanted to leave, even for maths, just engage the cordic. I've really got used to using ORG for managing sections for cog-only tasks. I guess it's an alternative to spin's objects.

    The only niggle is the workaround, and convention, required for adjusting the sysclock PLL.

    We have the vastness of the internet and yet billions of people decided to spend most of their time within a horribly designed, fake-news emporium of a website that sucks every possible piece of personal information out of you so it can sell it to others. And they see nothing wrong with that.
  • I have seen the conversations:) but I haven't run into that yet, still on a P123A9. That would be a subroutine.
  • rjo__ wrote: »
    Spin2 and uPython have the liberal arts covered. And C has general computing covered. But as an "Introduction to Assembly Programming, p101" I don't think you can beat PASM2. PASM2 is sort of RISCplus or CISCminus. So, principles of both RISC and CISC assembly programming can be briefed.

    I am absolutely in love with PASM2. The beauty of being able to program without any concern for someone else's syntax has to be experienced to be fully appreciated.

    While I have to admit that I'm not exactly a SmartPin wizard, the rest of PASM2 could not be easier, and it is complete. If there is something you want to do to a number... you can do it in about two clock cycles.

    Ditto. Ken, even if it is just a big tutorial, it will be so helpful to users. It wasn't until I buckled down and started using ASM, that I really understood the power of the Prop 1.
    Terry's Workbench

    Feel the need for speed between your PC's com port and Prop?
    Try the FTDI 245 and the FullDuplexParallel Object.
    Check out my spin driver for the Parallax "96 x 64 Color OLED Display Module" Product ID: 28087
    22FPS video from the P2 on the Parallax "96 x 64 Color OLED Display Module" https://www.youtube.com/watch?v=ja84rf38QHM
  • I have programmed many (too many to list) micros, and minis for that matter, in assembler. The mini was the "best" by a country mile - and I must say here that P1 is in many respects quite similar. Then I think would be a race between Motorola 68705 and the Propeller 1 followed by P2. None of the others come close to the simplicity of P1 & P2.

    So, for nowadays, P1 & P2 take the cake for simplicity and regularity of instructions. If you have/need/want to learn assembler, you cannot go wrong with starting on the P1 or P2 :smiley:
    My Prop boards: P8XBlade2 , RamBlade , CpuBlade , TriBlade
    P1 Prop OS (also see Sphinx, PropDos, PropCmd, Spinix)
    Website: www.clusos.com
    P1: Tools (Index) , Emulators (Index) , ZiCog (Z80)
    P2: Tools & Code , Tricks & Traps
  • For that era, I'd strongly vote for the 68000's. They were a really elegant step up from any of the 6800 derivatives. The fully 32-bit big-endian ISA and generous general register set made it shine in assembly. If IBM had chosen the Motorola path it would have made all the difference to the PC being something decent. And would have produced an entirely different industry POV of what's normal.
    We have the vastness of the internet and yet billions of people decided to spend most of their time within a horribly designed, fake-news emporium of a website that sucks every possible piece of personal information out of you so it can sell it to others. And they see nothing wrong with that.
  • evanh wrote: »
    ...
    68000 The fully 32-bit big-endian ISA and generous general register set made it shine in assembly. If IBM had chosen the Motorola path it would have made all the difference to the PC being something decent. And would have produced an entirely different industry POV of what's normal.
    Yes, a totally different result. No page switching etc. But IBM couldn’t buy a piece of Motorola and they could buy a piece of Intel. And then they sold it :(

    My Prop boards: P8XBlade2 , RamBlade , CpuBlade , TriBlade
    P1 Prop OS (also see Sphinx, PropDos, PropCmd, Spinix)
    Website: www.clusos.com
    P1: Tools (Index) , Emulators (Index) , ZiCog (Z80)
    P2: Tools & Code , Tricks & Traps
  • evanhevanh Posts: 8,259
    edited 2019-07-09 - 11:00:41
    rjo__ wrote: »
    I have seen the conversations:) but I haven't run into that yet, still on a P123A9. That would be a subroutine.
    Not really. The default workaround approach isn't much bigger than without the flaw, a couple more instructions. The hassle is in learning and maintaining the details of the convention needed for compatibility between programs. Namely, a reserved area at the start of hubRAM is assigned for passing the config from one program to the next.
    We have the vastness of the internet and yet billions of people decided to spend most of their time within a horribly designed, fake-news emporium of a website that sucks every possible piece of personal information out of you so it can sell it to others. And they see nothing wrong with that.
  • evanhevanh Posts: 8,259
    edited 2019-07-09 - 11:24:03
    Cluso99 wrote: »
    Yes, a totally different result. No page switching etc. But IBM couldn’t buy a piece of Motorola and they could buy a piece of Intel. And then they sold it :(
    There's all sorts of rumours about what and why, including that it was the 6800 rather than 68000 ... but those rumours all should be taken with a very large bucket of salt. I would imagine component price was the main factor. The 68008 wasn't yet on the market and Intel was offering the 8088 for their cheapest option. Which in turn cheapens other areas of whole board cost.

    PS: Motorola probably never wanted to do the 68008 because the 68000 was already nerf'd to firing in halves as it was.
    We have the vastness of the internet and yet billions of people decided to spend most of their time within a horribly designed, fake-news emporium of a website that sucks every possible piece of personal information out of you so it can sell it to others. And they see nothing wrong with that.
  • Cluso99Cluso99 Posts: 15,530
    edited 2019-07-09 - 12:37:37
    There were lots of rumours, and there were some of us that had inside knowledge ;)

    Things were a lot different back then. We could talk, and did, to the bosses. My business partners had face to face meeting with Jobs and Scully. I used to speak to the design engineers on the MC68705P3S before it’s release. Same with the 88100 RISC CPU. Zilog, Rockwell, etc. Now you cannot get anywhere near people at the top of big companies, and that also means you cannot get decent info about the chips if you need to. That’s what is so refreshing with Parallax.

    BTW Somewhere I have a copy of our first framed colored Apple (Cupertino) cheque ~1983.
    My Prop boards: P8XBlade2 , RamBlade , CpuBlade , TriBlade
    P1 Prop OS (also see Sphinx, PropDos, PropCmd, Spinix)
    Website: www.clusos.com
    P1: Tools (Index) , Emulators (Index) , ZiCog (Z80)
    P2: Tools & Code , Tricks & Traps
  • But no insider on IBM's decision making.
    We have the vastness of the internet and yet billions of people decided to spend most of their time within a horribly designed, fake-news emporium of a website that sucks every possible piece of personal information out of you so it can sell it to others. And they see nothing wrong with that.
  • Not directly, no.
    Did you use any NetComm modems?
    My Prop boards: P8XBlade2 , RamBlade , CpuBlade , TriBlade
    P1 Prop OS (also see Sphinx, PropDos, PropCmd, Spinix)
    Website: www.clusos.com
    P1: Tools (Index) , Emulators (Index) , ZiCog (Z80)
    P2: Tools & Code , Tricks & Traps
  • evanhevanh Posts: 8,259
    edited 2019-07-09 - 16:04:29
    Ha, I just bought my first NetComm a couple of months back, though using it only as a fibre router with VoIP. Cheapest thing I could find with VoIP. Worked flawlessly once I separated the phones from the still energised fixed copper line. :) Can't yet buy cheap routers without an included DSL modem, I note.

    Historically, I've purchased two dialup modems. Don't remember brand of either to be honest. First one was 300 baud in mid 1980's, second one was 19200 bps in early 1990's but never worked above 14400. Needed a firmware fix I think. I went dark for a number of years after Commodore died. Next was a cable modem+Linksys router around 2000/2001.
    We have the vastness of the internet and yet billions of people decided to spend most of their time within a horribly designed, fake-news emporium of a website that sucks every possible piece of personal information out of you so it can sell it to others. And they see nothing wrong with that.
  • Cluso99Cluso99 Posts: 15,530
    edited 2019-07-09 - 16:09:27
    Pity, I was going to share an Easter egg if you had a particularly old one. There weren’t any in the SimpleModems.
    My Prop boards: P8XBlade2 , RamBlade , CpuBlade , TriBlade
    P1 Prop OS (also see Sphinx, PropDos, PropCmd, Spinix)
    Website: www.clusos.com
    P1: Tools (Index) , Emulators (Index) , ZiCog (Z80)
    P2: Tools & Code , Tricks & Traps
  • Btw, once I worked out that tech support was available I was impressed with the speed of that support. It caught me off guard that the contact details were completely non-public. But I can understand why and it did work well once I clued in to it. The interface didn't get in the way, the history was all there, the ticket details were listed, no tracking scripts, and the integration between web and email was very neat too. Including attachments.

    Positive experience - New experience for the Joe Average category for sure.
    We have the vastness of the internet and yet billions of people decided to spend most of their time within a horribly designed, fake-news emporium of a website that sucks every possible piece of personal information out of you so it can sell it to others. And they see nothing wrong with that.
  • evanh wrote: »
    rjo__ wrote: »
    I have seen the conversations:) but I haven't run into that yet, still on a P123A9. That would be a subroutine.
    Not really. The default workaround approach isn't much bigger than without the flaw, a couple more instructions. The hassle is in learning and maintaining the details of the convention needed for compatibility between programs. Namely, a reserved area at the start of hubRAM is assigned for passing the config from one program to the next.

    I think you meant to say "feature":) As I recall the conversation Chip misplaced a quark, which then found its way into the vortex and if you don't do it just right there is the possibility of butterfly beating its wings in the wrong direction... or something like that.
  • evanhevanh Posts: 8,259
    edited 2019-07-10 - 04:34:29
    :)

    I've started trying to make a callable routine for dynamic frequency selection. (My previous work had a version that was part of a big inline loop.)

    The workaround part almost disappears into the baggage of extra reserved variables, prep and recalculation. But ever then, it's not going to suit everyone because I'm only making the multiplier dynamic.

    We have the vastness of the internet and yet billions of people decided to spend most of their time within a horribly designed, fake-news emporium of a website that sucks every possible piece of personal information out of you so it can sell it to others. And they see nothing wrong with that.
  • can we start a tutorial thread. I will start it. Please look for it. Starting from the basics of high level language to low level and all of the math to explain why we:
    for example

    shift something to the left or right to make something work.
    “Light thinks it travels faster than anything but it is wrong. No matter how fast light travels, it finds the darkness has always got there first, and is waiting for it.”
    “You only live twice:
    Once when you are born
    And once when you look death in the face”
Sign In or Register to comment.