PNut/Spin2 Latest Version (v34z - Lots of DEBUG display stuff)

12829303234

Comments

  • Wuerfel_21 wrote: »

    WINE is 100% borked on MacOS because the idiots at Apple removed 32bit compatibility in 10.15. You can obviously install Linux in a VM or with bootcamp and run WINE on that, which is still probably preferable to doing the same with Windows.

    Ok, well I am still running 10.10, so I might still be in luck. It looked like WINE still supports that version in their docs when I browsed them. I'll have to give it a go when I get a chance.
    @rogloh - yep, WIne is much improved these days, I can run just about anything. I have USBx mapped as COMx using "ln -s /dev/ttyUSBx COMx" etc. I'm just using PNut as is, no external loaders.
    That sounds great. I would have simply expected serial USB HW + WINE would just be broken. Does PropTool also work okay too?
  • I didn't test v34yy (I missed that one and now there's v34z) but I tested v34z on VirusTotal (1 out of 69 engines detected; VBA (the one we don't trust) is the only one detecting).

    I also digitally signed it, repackaged, retested on VirusTotal (same result), tested on Win 10 with latest Defender updates (from early am 9/10/2020; no problem detected) and published it here: https://github.com/parallaxinc/propeller/releases

    As a matter of course, I'm also publishing the SHA256 hashes of the .exe and the .zip on that releases page for user-side verification.
  • JonnyMac wrote: »
    Crikey! Windows Defender wants to delete PNut again! Rev"yy" still works until I reboot.
    Rename it YYZ -- maybe WD will think it's Canadian and therefore "nice." :)

    LOL, obviously you're familiar with Toronto and Pearson airport.
  • Also "z" is OK here. No AV complains (at least for now)
  • I didn't test v34yy (I missed that one and now there's v34z) but I tested v34z on VirusTotal (1 out of 69 engines detected; VBA (the one we don't trust) is the only one detecting).

    I also digitally signed it, repackaged, retested on VirusTotal (same result), tested on Win 10 with latest Defender updates (from early am 9/10/2020; no problem detected) and published it here: https://github.com/parallaxinc/propeller/releases

    As a matter of course, I'm also publishing the SHA256 hashes of the .exe and the .zip on that releases page for user-side verification.

    v34z did not wake up Windows Defender. Yeah!
  • kwinn wrote: »
    JonnyMac wrote: »
    Crikey! Windows Defender wants to delete PNut again! Rev"yy" still works until I reboot.
    Rename it YYZ -- maybe WD will think it's Canadian and therefore "nice." :)

    LOL, obviously you're familiar with Toronto and Pearson airport.

    I had to look that up. Last time I flew into Toronto was 1987. For some reason there was not beer sales at the time. I used to empty my minibar and bring the contents to the customer. I was their best friend. :)
  • Publison wrote: »
    kwinn wrote: »
    JonnyMac wrote: »
    Crikey! Windows Defender wants to delete PNut again! Rev"yy" still works until I reboot.
    Rename it YYZ -- maybe WD will think it's Canadian and therefore "nice." :)

    LOL, obviously you're familiar with Toronto and Pearson airport.

    I had to look that up. Last time I flew into Toronto was 1987. For some reason there was not beer sales at the time. I used to empty my minibar and bring the contents to the customer. I was their best friend. :)

    Good lesson on how to win friends and influence people.
  • pilot0315pilot0315 Posts: 652
    edited 2020-09-15 - 19:07:10
    cgracey wrote: »
    I made a little program that illustrates the hub RAM interface to the cogs. This was done using the PLOT display.

    Here is a video of it running. This demonstrates what is hard to explain, even with a picture:



    Here is the program:
    _clkfreq = 10_000_000
    
    PUB go() | i, j, k
    
      debug("`plot myplot size 600 650 update", dly(300))
      debug("`myplot offset 300 300 polar -128 -32 linecolor $FFFFFF textsize 16 textstyle 1")
      k~
      repeat
        debug("`myplot clear")
        debug("`myplot text 300 0 30 3 $FFFF7F 'The Eggbeater Interface'")
        if k & 16
          j++
        repeat i from 0 to 7	'draw spokes if RAMs are still
          debug(ifnot(k & 16), "`myplot linesize 12 100 ", sdec_(i*16), " to 200 ", sdec_(i*16), " linesize 3")
        debug("`myplot fillcolor $003F7F ovalfill 0 0 200 200")
        debug("`myplot text 24 0 11 '16K x 32' text 0 0 'Hub RAMs' text 24 64 11 '(address LSBs)'")
        repeat i from 0 to 7	'draw RAMs and cogs
          debug("`myplot fillcolor $007F7F ovalfill 100 ", sdec_(i*16-j), " 50 50 text '", i | "0", "'")
          debug("`myplot fillcolor $7F0000 ovalfill 200 ", sdec_(-i*16), " 80 80 text 'Cog", sdec_(i), "'")
        k++
        debug("`myplot update")
        waitms(20)
    

    Polar coordinates made this really easy.

    @cgracey
    Question.
    Am I missing something? I have tried several of the examples in the Pnutz file and am using the Parallax serial terminal. I get nothing. Is there a debug terminal that is supposed to pop up or do I need something else?
    Also where are the commands for debug I would like to use it to print. I assume that it is similar to full duplex serial in some way?
    Thanks
  • pilot0315 wrote: »
    cgracey wrote: »
    I made a little program that illustrates the hub RAM interface to the cogs. This was done using the PLOT display.

    Here is a video of it running. This demonstrates what is hard to explain, even with a picture:



    Here is the program:
    _clkfreq = 10_000_000
    
    PUB go() | i, j, k
    
      debug("`plot myplot size 600 650 update", dly(300))
      debug("`myplot offset 300 300 polar -128 -32 linecolor $FFFFFF textsize 16 textstyle 1")
      k~
      repeat
        debug("`myplot clear")
        debug("`myplot text 300 0 30 3 $FFFF7F 'The Eggbeater Interface'")
        if k & 16
          j++
        repeat i from 0 to 7	'draw spokes if RAMs are still
          debug(ifnot(k & 16), "`myplot linesize 12 100 ", sdec_(i*16), " to 200 ", sdec_(i*16), " linesize 3")
        debug("`myplot fillcolor $003F7F ovalfill 0 0 200 200")
        debug("`myplot text 24 0 11 '16K x 32' text 0 0 'Hub RAMs' text 24 64 11 '(address LSBs)'")
        repeat i from 0 to 7	'draw RAMs and cogs
          debug("`myplot fillcolor $007F7F ovalfill 100 ", sdec_(i*16-j), " 50 50 text '", i | "0", "'")
          debug("`myplot fillcolor $7F0000 ovalfill 200 ", sdec_(-i*16), " 80 80 text 'Cog", sdec_(i), "'")
        k++
        debug("`myplot update")
        waitms(20)
    

    Polar coordinates made this really easy.

    @cgracey
    Question.
    Am I missing something? I have tried several of the examples in the Pnutz file and am using the Parallax serial terminal. I get nothing. Is there a debug terminal that is supposed to pop up or do I need something else?
    Also where are the commands for debug I would like to use it to print. I assume that it is similar to full duplex serial in some way?
    Thanks

    Do you have that latest download?

    https://drive.google.com/file/d/1ZVc9mplxXAkQ2Occ1BvgfCQ3g9CzxdF-/view
  • Publison wrote: »
    pilot0315 wrote: »
    cgracey wrote: »
    I made a little program that illustrates the hub RAM interface to the cogs. This was done using the PLOT display.

    Here is a video of it running. This demonstrates what is hard to explain, even with a picture:



    Here is the program:
    _clkfreq = 10_000_000
    
    PUB go() | i, j, k
    
      debug("`plot myplot size 600 650 update", dly(300))
      debug("`myplot offset 300 300 polar -128 -32 linecolor $FFFFFF textsize 16 textstyle 1")
      k~
      repeat
        debug("`myplot clear")
        debug("`myplot text 300 0 30 3 $FFFF7F 'The Eggbeater Interface'")
        if k & 16
          j++
        repeat i from 0 to 7	'draw spokes if RAMs are still
          debug(ifnot(k & 16), "`myplot linesize 12 100 ", sdec_(i*16), " to 200 ", sdec_(i*16), " linesize 3")
        debug("`myplot fillcolor $003F7F ovalfill 0 0 200 200")
        debug("`myplot text 24 0 11 '16K x 32' text 0 0 'Hub RAMs' text 24 64 11 '(address LSBs)'")
        repeat i from 0 to 7	'draw RAMs and cogs
          debug("`myplot fillcolor $007F7F ovalfill 100 ", sdec_(i*16-j), " 50 50 text '", i | "0", "'")
          debug("`myplot fillcolor $7F0000 ovalfill 200 ", sdec_(-i*16), " 80 80 text 'Cog", sdec_(i), "'")
        k++
        debug("`myplot update")
        waitms(20)
    

    Polar coordinates made this really easy.

    @cgracey
    Question.
    Am I missing something? I have tried several of the examples in the Pnutz file and am using the Parallax serial terminal. I get nothing. Is there a debug terminal that is supposed to pop up or do I need something else?
    Also where are the commands for debug I would like to use it to print. I assume that it is similar to full duplex serial in some way?
    Thanks

    Do you have that latest download?

    https://drive.google.com/file/d/1ZVc9mplxXAkQ2Occ1BvgfCQ3g9CzxdF-/view

    I downloaded it again in a different file. The only things that work is the hdmi spiral and the blinker. Nothing else works.
    The PST shows nothing on all other demos.
  • pilot0315pilot0315 Posts: 652
    edited 2020-09-16 - 03:48:05
    @Publison
    @cgracey
    I copied and pasted the above code into Pnut_34z and nothing happens. Is there a new serial terminal?
    What am I missing?
    Thanks.

    I think I found it. control f10 has the debug. did not see that.
    Thanks.

    Got it working. Just need more info on debug to be able to use it.
    Where is the command list.
    Thanks
  • @Publison
    Getting it. I appreciate your patience.
  • @cgracey I just wanted to comment on your DEBUG_BITMAP_HSV16_Demo.spin2 demo. When I ran it, the only display I saw was the DEBUG Output window. The other 5 windows weren't visible. After scratching my head a bit I remembered you have that large monitor. The 5 windows were opening up at either y=2000 or y=2300 which were below my tiny 2736 x 1824 display. To complicate the situation the recommended (default) scale for the Surface was 200% which basically cut the display area by 4 (1368 x 912). Just thought I'd mention this in case anyone else was having the same problem. Once I adjusted the 'Y' parameter they looked GREAT.
  • CJMJ wrote: »
    @cgracey I just wanted to comment on your DEBUG_BITMAP_HSV16_Demo.spin2 demo. When I ran it, the only display I saw was the DEBUG Output window. The other 5 windows weren't visible. After scratching my head a bit I remembered you have that large monitor. The 5 windows were opening up at either y=2000 or y=2300 which were below my tiny 2736 x 1824 display. To complicate the situation the recommended (default) scale for the Surface was 200% which basically cut the display area by 4 (1368 x 912). Just thought I'd mention this in case anyone else was having the same problem. Once I adjusted the 'Y' parameter they looked GREAT.

    I'm sorry I left such large coordinates in there. I think most files have them. I will make them smaller in future releases. I am glad you realized what the problem was.
  • cgracey wrote: »
    CJMJ wrote: »
    @cgracey I just wanted to comment on your DEBUG_BITMAP_HSV16_Demo.spin2 demo. When I ran it, the only display I saw was the DEBUG Output window. The other 5 windows weren't visible. After scratching my head a bit I remembered you have that large monitor. The 5 windows were opening up at either y=2000 or y=2300 which were below my tiny 2736 x 1824 display. To complicate the situation the recommended (default) scale for the Surface was 200% which basically cut the display area by 4 (1368 x 912). Just thought I'd mention this in case anyone else was having the same problem. Once I adjusted the 'Y' parameter they looked GREAT.

    I'm sorry I left such large coordinates in there. I think most files have them. I will make them smaller in future releases. I am glad you realized what the problem was.

    Could you make the coordinates the P2 sends relative to some base coordinate that is specified on the PC and not by the P2?
  • Perhaps putting the window coordinates into CONstant definitions would be helpful.
  • cgracey wrote: »
    CJMJ wrote: »
    @cgracey I just wanted to comment on your DEBUG_BITMAP_HSV16_Demo.spin2 demo. When I ran it, the only display I saw was the DEBUG Output window. The other 5 windows weren't visible. After scratching my head a bit I remembered you have that large monitor. The 5 windows were opening up at either y=2000 or y=2300 which were below my tiny 2736 x 1824 display. To complicate the situation the recommended (default) scale for the Surface was 200% which basically cut the display area by 4 (1368 x 912). Just thought I'd mention this in case anyone else was having the same problem. Once I adjusted the 'Y' parameter they looked GREAT.

    I'm sorry I left such large coordinates in there. I think most files have them. I will make them smaller in future releases. I am glad you realized what the problem was.

    Could you make the coordinates the P2 sends relative to some base coordinate that is specified on the PC and not by the P2?

    That's a great idea. I will use special CON symbols for that: DEBUG_X and DEBUG_Y.
  • cgraceycgracey Posts: 13,050
    edited 2020-09-17 - 19:37:26
    I bought a program for $49 called reaConverter that is good at batch-processing BMPs to make animated PNGs and GIFs.

    It turns out that you can put animated PNGs into Google Docs. I just put one into the silicon doc that shows the cog-hub interaction. After getting rid of the outlines around the circles and cutting the frames by half, it was able to really squeeze the animated PNG down to 150KB.

    Here is the file. I don't know how the forum software will respond to it, but if you drag it onto your browser, it will probably play.

    HubInterface.png

    By the way, we were wondering the other day about the proper order of the cogs in this animation. I looked at the Verilog code and realized it was wrong. It is actually as shown in this new animation.
    600 x 650 - 149K
  • The forum seems to have dropped the frames. When I download the image and open it in my browser is doesn't animate.
  • Roy Eltham wrote: »
    The forum seems to have dropped the frames. When I download the image and open it in my browser is doesn't animate.

    The program that presents the PNG can ignore the animation aspect. It seems that the forum software treats it as a static image. And there's no way to download the file. If you go to the silicon doc, though, you can see it animating. I wish the forum software would handle it correctly.
  • I looked in the Silicon doc and I see the static image, no animating.
  • Roy Eltham wrote: »
    I looked in the Silicon doc and I see the static image, no animating.

    I concur.
  • Cluso99Cluso99 Posts: 16,598
    edited 2020-09-17 - 22:03:17
    Needs a comment that the hub (cyan) is rotating anti-clockwise and the number in the cyan circle is the lowest hub address bits b2:0. Cannot check if this is in the docs atm.

    When it works, this animation will be a fantastic demo. Much easier to understand.
  • ElectrodudeElectrodude Posts: 1,427
    edited 2020-09-17 - 22:15:20
    I can't see the animation either when I view the image by itself. My browser shows other animated PNGs fine.

    Imagemagick can make PNG and GIF animations out of BMPs for free.

    None of the software on my computer will show me the animation. Chrome and VLC understand it's an animation; Chrome thinks it's a zero-length video, while VLC thinks it's a ten second static video. Everything else seems to think it's just a simple image. Most of the programs I tried will show me other animated PNGs just fine.
  • Well, when I insert the animated PNG, I see it animating. However, when I open the document from elsewhere, it is a static image. Man, this would be so awesome if it just worked.
  • Can you insert an image link to a web hosted image?
    Probably need both because for the link to work you need to be on the internet.
  • I've tried that, too, but it didn't work. Why does it animate when I insert it, but if I reopen the doc, it is still?
  • ElectrodudeElectrodude Posts: 1,427
    edited 2020-09-17 - 22:18:30
    I think this reaConverter program is producing buggy APNGs. Other APNGs work fine on my computer. Try generating it with something else, such as Imagemagick.

    https://www.imagemagick.org/Usage/anim_basics/
  • Roy ElthamRoy Eltham Posts: 2,910
    edited 2020-09-17 - 22:40:59
    I tried making an animated PNG and attached it below. I used an online one called ezgif.com.
    Hopefully it works?
    Nope, the forum clobbers the animation.

    I downloaded the image from the forum after attaching it, and it's just the first frame of the animation. File size I uploaded was 806k (the forum says that's the file size too), the downloaded one is 221k.

    forum clobbers gif's too (kind of expected).

    edit: removed failed image tests.
  • Nada.
Sign In or Register to comment.