To LUGNET HomepageTo LUGNET News HomepageTo LUGNET Guide Homepage
 Help on Searching
 
Post new message to lugnet.robotics.nxtOpen lugnet.robotics.nxt in your NNTP NewsreaderTo LUGNET News Traffic PageSign In (Members)
 Robotics / NXT / 401
400  |  402
Subject: 
Re: What do these macros do?
Newsgroups: 
lugnet.robotics.nxt, lugnet.robotics
Date: 
Sun, 21 Jan 2007 10:11:19 GMT
Viewed: 
13674 times
  
In lugnet.robotics.nxt, John Hansen wrote:
Unfortunately, there isn't really an easier way to clear the screen other than
to use some sort of system call which draws on the screen.  That's because only
those system calls set the display as "dirty" and if that doesn't happen then
the firmware will not do the right thing when you draw directly to the screen
memory.  There isn't any way to directly set the dirty flag because it is not
exposed via the IOMAP structure.

John Hansen

Thanks for your response, John.

That tip about the dirty flag not being IOMAPpable is very, very useful; I could
have wasted a lot of time working that out the hard way.

I'm working on a graphical display widget to show a 'radar' (well, sonar) screen
on a portion of the full screen.  I was trying to figure out how to cleanly and
quickly redraw the radar screen when new data became available.

My experience with the IOMAP calls is that they're pretty slow - it must be
doing some costly address lookup each time?  Anyway, I'm leaning toward storing
a <=800 byte copy of screen memory down in local memory, and just making one to
eight syscalls to copy the relevant portions, rather than trying to write a
smaller but significant number of individual bytes.

I guess I should do some time trials to test this theory out :)

Just received my rechargeable battery, colour sensor and compass.  Time for
mischief.

Jeff Elliott



Message has 1 Reply:
  RE: What do these macros do? [IOMAP Access Execution Times
 
(...) You're right. IOMapRead and IOMapWrite are very slow functions. They're slow because you pass a character string for the name of the module you want to access; the NXT-G firmware runs through the list of modules looking for a match on the (...) (17 years ago, 21-Jan-07, to lugnet.robotics.nxt, lugnet.robotics)

Message is in Reply To:
  Re: What do these macros do?
 
(...) Lots of very cool stuff deleted. Sorry I missed your original message, Jeff. You can write to both the Normal and Popup screen memory and toggle back and forth between which one gets displayed. This code flips between the two buffers for 10 (...) (17 years ago, 16-Jan-07, to lugnet.robotics.nxt, lugnet.robotics)

12 Messages in This Thread:




Entire Thread on One Page:
Nested:  All | Brief | Compact | Dots
Linear:  All | Brief | Compact

This Message and its Replies on One Page:
Nested:  All | Brief | Compact | Dots
Linear:  All | Brief | Compact
    

Custom Search

©2005 LUGNET. All rights reserved. - hosted by steinbruch.info GbR