Article # 543, added by Geoworks, historical record
| first | previous | index | next | last |

Dual video mode on the Nokia 9000 Communicator



* Nokia 9000i Communicator operates 4-color mode most of the time,
  because it is faster.

* Any application can switch the system into 8-color mode for as
  long as it wishes. This is done by sending the message
  MSG_GEN_APPLICATION_CHANGE_DISPLAY_MODE, which is defined in
  gAppC.goh. The DisplayMode type is defined in win.h.

* The system keeps track of how many applications wish to be in
  high definition mode, and stays in that mode as long as at least
  one application so wishes.

* When switching from low-def to hi-def mode, no existing pixels
  will change color. Only newly drawn pixels will be seen in the
  additional four shades of gray.

* It is up to the application developer to decide when it is
  appropriate to switch into and out of hidef mode. The app may or
  may not choose to relinquish hidef mode when it is not visible to
  the user. If the app does not switch back to low-def mode before
  exiting, the system will be stuck in hidef mode until a reboot.

* There is a sample application in Appl/SDK_9000/HiDef.geo

---------------------------------------

Q. At what point can I set the hidef mode for my app?

A. You need to intercept any one message which occurs before you
   try to draw the hidef graphic. It will do no harm to intercept
   multiple messages. There is no need to balance the mode change
   calls, as long as they are all to the same applicatoin object.


Q. What is the default mode?

A. The default mode is low-definition.


Q. Since when has the hidef mode been available? What happens if I
   send the message in versions of the OS before the hidef feature
   was added?

A. The mode switching has been available since whatever build came
   next after March 3, 1997. If you try to use the message
   MSG_GEN_APPLICATION_CHANGE_DISPLAY_MODE on an earlier build,
   nothing will happen since the message will just be ignored.

   While it is true that nothing bad will happen if you send a
   non-existent message to his application object, it is also true
   that by referring to that message, your application will have a
   protocol such that it probably will not load on a pre-Nokia 9000i
   system.