Difference between revisions of "83Plus:RAM:8447"

From WikiTI
Jump to: navigation, search
m (Formatting fun)
m (Synopsis: linkified GetKey)
Line 5: Line 5:
 
'''Memory Address:''' 8447h
 
'''Memory Address:''' 8447h
  
'''Length:''' 1 byte.
+
'''Length:''' 1 byte
  
This area holds the system contrast value. When you press 2nd+Up or 2nd+Down while in a GetKey, GetKey automatically increases or decreases this value and updates the LCD's contrast. The accepted range of this value is 00h ~ 27h.
+
This area holds the system contrast value. When you press 2nd+Up or 2nd+Down while in a [[83Plus:BCALLs:4972|GetKey]], GetKey automatically increases or decreases this value and updates the LCD's contrast. The accepted range of this value is 00h ~ 27h.
  
 
== Comments ==
 
== Comments ==

Revision as of 11:14, 21 April 2005

Synopsis

Official Name: contrast

Memory Address: 8447h

Length: 1 byte

This area holds the system contrast value. When you press 2nd+Up or 2nd+Down while in a GetKey, GetKey automatically increases or decreases this value and updates the LCD's contrast. The accepted range of this value is 00h ~ 27h.

Comments

Changing this value does not "instantly" update the LCD contrast; you must manually update the LCD. To set the LCD contrast to match the calculator's, add D8h to the read value and output to Port 10h:

 ld a, (contrast)
 add a, 0D8h
 out (10h), a
 CALL 000Bh ;Delay required time, or find some other way to waste/use 60 cycles.

This simple routine sets both the system contrast and the LCD contrast to whatever is in A (valid range is 00~27h, does nothing if out of range).

 cp 28h
 ret nc ;NC means >= which is bad, so bail out.
 ld (contrast), a
 push af
 add a, 0D8h
 out (10h), a
 pop af
 ret
 ;Waste/Use ~45 cycles before accessing LCD directly.