Shop OBEX P1 Docs P2 Docs Learn Events
1080p tiled GUI (with mixed signal scope demo) - Page 4 — Parallax Forums

1080p tiled GUI (with mixed signal scope demo)

124»

Comments

  • RaymanRayman Posts: 14,633
    Nice! Thanks for posting this. Great to see somebody making use of this.

    It'd be nice to have some simple, cheap probes for this. My logic analyzers have some nice ones.
    Maybe a set of 8 signal clips with 2 ground clips that plug into a Eval board header would be nice.
    Would also make it easier to connect two P2 I/O pins together so one can be output and the other input.
  • Hi
    I have done extensive research in palette construction and colour reproduction on indexed video modes
    Surprisingly the 216 websafe colours like Netscape used them + 16 greys gives the best results

    You also don’t need all 16 greys as you get some of them from the 216 colours part

    That gives you a palette if 226 colours

    Tell me if you need the exact values for the color palette
  • RaymanRayman Posts: 14,633
    Thanks, I too think something like that is best.
    Might do the Microsoft version though, only so that color #0 is black.

    I have a plan to make the color data independent of palette by specifying 24 bit colors in the upper 24 bits.
    At start up, could have the code search for any non-zero values in upper 24 bits and replace with best index from palette.
  • RaymanRayman Posts: 14,633
    These codes don't seem to have aged well...

    After a few months on neglect, I can't find any version of FastSpin that works with the latest few...
    Just managed to get this one working with FastSpin 4.21.
    But, it has VGA hard coded to basepin=8. Need to work on these a bit...

    Also, time to make compatible with the new PropTool...
  • Ahle2Ahle2 Posts: 1,179
    edited 2020-06-19 09:13
    Rayman,

    This really is a great effort and very usable for many applications. It looks great!

    /Johannes
  • RaymanRayman Posts: 14,633
    edited 2020-10-17 23:17
    Tried to get this working for both the latest Fastspin (4.4.0) and PropTool (2.3 alpha)...
    It compiles with both, but only runs correctly with Fastspin.

    I got the display to show something under PropTool, but it's not right...
  • RaymanRayman Posts: 14,633
    edited 2020-10-17 23:16
    Think I see part of the PropTool issue... Not sure there's a way to fix it...

    I'm defining form data like this:
    DAT 'Form1 Resources
                  orgh
    
    Form1
                long    1              '0 top
                long    2              '1 left
                long    cols-4     '2 width
                long    rows-3     '3 height
                long    Navy        '4 border color
                long    Silver      '5 fill color
                long    sTitleForm1     '6 title string
                long    Yellow      '7 title text color
                long    0           '8 pointer to parent or 0 for main form
                'start of object pointer list
    
                'end of object pointer  list
                long    0
    
    
    
    'Form1 String Resources
    sTitleForm1   byte  "Propeller II Mixed Signal Oscilloscope",0
    

    "long sTitleForm1" winds up being the absolute address of the string in Fastspin, but not in PNut...

    In Spin1, I would do this instead "long @ sTitleForm1", but this doesn't seem to work either...
  • evanhevanh Posts: 15,912
    edited 2020-10-17 23:55
    Cluso had something to say about that. ;)

    I didn't try to follow the arguments at the time since I'm happy doing pure pasm2.

    PS: I think it concluded in you can't use compile time immediate addressing when it's a mixed spin/pasm hubRAM address. Pnut/Proptool wants to be able to load the compiled code anywhere in hubRAM.

  • cgraceycgracey Posts: 14,151
    Surac wrote: »
    Hi
    I have done extensive research in palette construction and colour reproduction on indexed video modes
    Surprisingly the 216 websafe colours like Netscape used them + 16 greys gives the best results

    You also don’t need all 16 greys as you get some of them from the 216 colours part

    That gives you a palette if 226 colours

    Tell me if you need the exact values for the color palette

    This is interesting to me. What are these values? Getting by with 8bpp is nice.
  • cgraceycgracey Posts: 14,151
    edited 2020-10-18 01:08
    I found these Websafe colors. They are just combinations of six levels each of R, G, and B.

    6 x 6 x 6 = 216
  • RaymanRayman Posts: 14,633
    That does sound good. Also gives room for app specific colors.

    Maybe I’ll get back to that one day...
  • For websafe colors both Netscape and Microsoft had a standard. Same colors, different order, just because.

    I like what Surac is suggesting but figure you could have 32 grays, using 242 of the 256 colors? What would be the alternate use of those remaining colors?
  • evanhevanh Posts: 15,912
    edited 2020-10-18 01:54
    cgracey wrote: »
    This is interesting to me. What are these values? Getting by with 8bpp is nice.
    Here's Wikipedia's palette values. Not indexed though. It would make sense that index #0 is top-left and #215 is bottom-right but it doesn't actually say. https://en.wikipedia.org/wiki/Web_colors#Color_table

    EDIT: Oh, I guess the idea is that you dynamically map the indexes. That's a reason not to use all 256.

  • RaymanRayman Posts: 14,633
    edited 2020-10-18 14:47
    I was able to get the initial form mostly working by calling a function that replaces all the pointer values at runtime.
    This appears to work for both PropTool and FastSpin, but it's a pain...

    Also, I see there is now USB code from @garryj that compiles with the PropTool.
    So, it looks like it might be possible to make this work with PropTool.
    PUB FixForm1():i 'fix string pointers on form1 for PropTool
      pTitleForm1:=@sTitleForm1
      i:=0
      pForm1Members[i++]:=@Form1GraphicA
      pForm1Members[i++]:=@Form1GraphicB
      pForm1Members[i++]:=@Form1GraphicC
      pForm1Members[i++]:=@Form1GraphicD
      pForm1Members[i++]:=@Form1GraphicE
      pForm1Members[i++]:=@Form1GraphicF
      pForm1Members[i++]:=@Form1NumberA
      pForm1Members[i++]:=@Form1NumberB
    

    This version is close to working with PropTool... Shows digital data traces and all the text on main form is right. But, sliders and dials are broke.
    Also, mouse doesn't work...
  • RaymanRayman Posts: 14,633

    This version of mixed signal scope now works with latest Flexprop, 6.1.1
    This is with the Eval board with A/V adapter on basepin P0 and USB mouse on basepin P16.

    It actually compiles with Prop Tool 2.9.3 but the graphical elements like dials and sliders are missing.
    Sliders and dials work, you just can't see them...

    I'm going to see about implementing a web version of this so don't need A/V or Serial adapter...

Sign In or Register to comment.