Shop OBEX P1 Docs P2 Docs Learn Events
LCARS (test) — Parallax Forums

LCARS (test)

RaymanRayman Posts: 14,605
edited 2008-03-20 21:04 in Propeller 1
Here's something I'm been meaning to try for a while now:· LCARS interface

Basically, I'm trying to copy this:· http://www.lcarscom.net/

This is a basic test using custom proportional font and 1-bit bitmaps.

I'm pretty happy with the look, but just this basic display uses up half of all hub memory...

Maybe there are some tricks to save a little, but this is another thing that will have to wait for Prop II sad.gif

Here's a screenshot and the code:

Comments

  • VIRANDVIRAND Posts: 656
    edited 2008-03-13 20:59
    Nice!

    Ideas:
    1.You could store lots of data in SD or EEPROM memory above 32K (such as if you use a 24LC1024).
    2.You could use that Propeller as a console for another one.
  • Peter JakackiPeter Jakacki Posts: 10,193
    edited 2008-03-13 23:16
    Looks fantastic, I had just loaded it onto my iConsole when I had the engineer responsible for electronic signage turn up at the door, so I showed him your LCARS display (I corrected the starfeet.com typo). He looked at the board and at the display and exclaimed "you've got to talk to the guys doing this huge upgrade, they want to use embedded PCs yet they could use this stuff", while he was still scratching his head.

    The current version of my iCONSOLE has a prop for all the I/O and display etc that's pretty much sitting in parallel with an ARM chip IF I need a lot more application program memory than I currently could run from a prop. But I'm trying to avoid the ARM chip, but it does have 512K of Flash and my fast IVOS Forth system. I mention this because I have considered having dual props with one to handle the display etc while the other handles the application and some I/O. What is lacking until we have propII is directly addressable internal memory, and 256K is a good figure (and 16 cogs). With all this software being written on the current prop we should be able to achieve warp 9 with propII almost immediately after launch.

    *Peter*
  • Mike HuseltonMike Huselton Posts: 746
    edited 2008-03-13 23:34
    I recently purchased game programming for the propeller powered hydra by Andre LaMothe. There are plenty of ideas in the book that should be applicable to your work.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    JMH
  • RaymanRayman Posts: 14,605
    edited 2008-03-14 12:24
    I suppose it could work with one Prop dedicated to graphics. But, it would still be a stretch...

    I think I'll stick with fixed fonts until there's enough RAM to have the entire 1024x768 screen as a 1-bit bitmap. This is 98kB. This seems possible with the rumored 256kB on the Prop II.

    Quantum: This is no game! I was going to try this as an actual front end for a real system. I haven't read Andre's book, but I imagine it utilizes low resolution modes. For me, 1024x768 is really the minimum useful resolution....

    "Starfeet.com"...· I crack myself up!
  • James LongJames Long Posts: 1,181
    edited 2008-03-14 15:40
    Although I'm not really a trekkie.....ok...I am...but not in the "sense" of the word.

    That is a trip. Pretty cool.....awesome.

    James L

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    James L

    Partner/Designer
    Lil Brother LLC (SMT Assembly Services)
  • Paul BakerPaul Baker Posts: 6,351
    edited 2008-03-16 22:29
    Rayman, excellent job. You could save quite a bit of memory space by using a very judicious tile and color scheme. You have alot of black space, each of those can point to the same tile, likewize if it is a solid color for the entire tile you can point that to the same tile as the black tiles and set the color mapping to the proper color. If you were to do this you could reclaim nearly 2/3rds of the memory space back. If you have multiple screens you could devise a simple mapping plan such as an array of bytes which point to 1 of 256 tiles which can be loadd on the fly from RAM/eeprom/SD card.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Paul Baker
    Propeller Applications Engineer

    Parallax, Inc.

    Post Edited (Paul Baker (Parallax)) : 3/16/2008 10:37:45 PM GMT
  • RaymanRayman Posts: 14,605
    edited 2008-03-17 12:20
    Paul: I'm already doing all that, but the problem is the text... Each of those lines of text shown uses ~1.3kB or HUB RAM. So, ~10 kB is used just to show the limited text in this test. If this display were all the Prop needed to do, then it might just be OK. But, the system I wanted to use this for has a lot of other code to include...
  • StefanL38StefanL38 Posts: 2,292
    edited 2008-03-18 20:46
    Hello Rayman,

    so what about using one prop as the "graphic-chip" waiting for the actual text and/or graphic-commands send by the second prop that is doing all the other things?

    would this make the cost-calculation explode?

    best regards

    Stefan
  • RaymanRayman Posts: 14,605
    edited 2008-03-18 23:10
    That would be possible. But, the whole reason I like the Prop is that I don't need a whole bunch of other chips to get things done...
  • stevenmess2004stevenmess2004 Posts: 1,102
    edited 2008-03-19 10:02
    Could you try using something like DOL? This would solve some of your size problems.
  • RaymanRayman Posts: 14,605
    edited 2008-03-20 12:39
    Sorry, I'm not familiar with the term "DOL"...
  • HarleyHarley Posts: 997
    edited 2008-03-20 16:01
    Google 'says' Department of Labor.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Harley Shanko
  • stevenmess2004stevenmess2004 Posts: 1,102
    edited 2008-03-20 21:04
    Sorry, I should have given you the link. Here it is http://forums.parallax.com/showthread.php?p=701497.

    DOL can dynamically load and unload spin objects from an SD card. So if you had functions that were not needed very often you could just leave them on the SD card until they were needed reducing the amount of memory needed for code on the prop. I've got some ideas for the next version that will allow inheritance in spin objects for the next version but I've been working on the graphics driver and not had time to play with it. It also gets a bit hard to do the inheritance without pre-compiler support. It would be possible by hand but too easy to make a mistake.
Sign In or Register to comment.