Shop OBEX P1 Docs P2 Docs Learn Events
Graphics and Float String problem — Parallax Forums

Graphics and Float String problem

koze85koze85 Posts: 18
edited 2010-05-25 20:09 in Propeller 1
Hello i am new to propeller and i am trying to make a project for my University
When i try to combine Graphics object and Float string object i get the following message "Objects exceed runtime memory limit by 145 longs" . These are the·only 2 objects in my project
What is wrong ???

please help !

Comments

  • wjsteelewjsteele Posts: 697
    edited 2010-05-25 13:07
    Without the code, we can't really tell, but I'm betting you've declared a buffer that is too large for the available memory you have. How big of a display buffer are you creating for your graphics?

    Bill
  • koze85koze85 Posts: 18
    edited 2010-05-25 13:36
    Just tried to include in the Graphics Demo .spin the Float string object without writing any code at all. The same happens if i try to include the Numbers object also but does not happen if i include the Float Math object.....
    I havent written any code yet.. but i will try to get info from thermocouple module DS2760 and graphically present the temp values on screen with their value and a graph over time

    Thanks for the immediate response bill
  • Mike GreenMike Green Posts: 23,101
    edited 2010-05-25 14:06
    The graphics driver, particularly the VGA version, allocates space for two display buffers to minimize flicker as it updates the display. Each buffer is 12K bytes for a total of 24K. This leaves only 8K for the program which isn't much. There's not enough room for the floating point objects. It's possible to write your program to use a single display buffer so that the graphics object does its plotting directly into the display buffer. Look at the graphics demo program. You'll see that it always copies the graphics buffer to the display buffer after updating it. You don't need to do it that way, but you'll get more flicker if you use only one buffer.
  • koze85koze85 Posts: 18
    edited 2010-05-25 14:28
    Thanks for the response but i am not using VGA driver , I am using the "tv" driver ( I am new to the propeller so if i am saying something stupid dont lauph!) I just want to disply graphically a number! convert from float to string and show it to the monitor.... And something else i loaded about 4 objects tv , graphics onewire and FloatMath and no problem only when i load these two i have problem... is it possible to load the floating object into a nother cog and to the job? thank you
  • Mike GreenMike Green Posts: 23,101
    edited 2010-05-25 14:48
    The same thing is true for the TV driver.

    Again, the problem is that the bitmap for the display occupies 12K and the graphics driver normally uses a 2nd 12K buffer.

    It's possible to load the assembly language portion of the floating point object into one or more cogs using one program and have that program load a 2nd program that also uses it, but this is not a simple task. It sounds like you're a beginner with the Propeller and what you're asking is not something for a beginner. Switch to using the display buffer directly for the graphics rather than double buffering.
  • koze85koze85 Posts: 18
    edited 2010-05-25 20:09
    I found out a graphic driver that does what Mike said i should do ... in case it might help someone http://obex.parallax.com/objects/559/

    Now i can load any other object without problem
Sign In or Register to comment.