Difference between revisions of "83Plus:BCALLs:50B3"

From WikiTI
Jump to: navigation, search
 
m (80F3 added)
 
(5 intermediate revisions by 2 users not shown)
Line 3: Line 3:
 
'''Official Name:''' Chk_Batt_Low
 
'''Official Name:''' Chk_Batt_Low
  
'''BCALL Address:''' 50B3
+
'''BCALL Address:''' 50B3,50B6,80F0,80F3
  
 
Check the batteries.
 
Check the batteries.
Line 20: Line 20:
 
This is not just checking bit 0 of port 2.
 
This is not just checking bit 0 of port 2.
 
It puts the calculator into a special mode, creates a delay, polls bit 0 of port 2, and puts the calculator back to normal.
 
It puts the calculator into a special mode, creates a delay, polls bit 0 of port 2, and puts the calculator back to normal.
 +
BCALLing 50B6 is slightly different from 50B3 because a small delay is done before the routine.
 +
BCALLs 80F0 and 80F3 are the boot page versions of these routines.
  
 
== Example ==
 
== Example ==

Latest revision as of 22:45, 5 November 2006

Synopsis

Official Name: Chk_Batt_Low

BCALL Address: 50B3,50B6,80F0,80F3

Check the batteries.

Inputs

  • None

Outputs

  • Z=1: Batteries are low
  • Z=0: Batteries are good

Registers Destroyed

  • All

Comments

This is not just checking bit 0 of port 2. It puts the calculator into a special mode, creates a delay, polls bit 0 of port 2, and puts the calculator back to normal. BCALLing 50B6 is slightly different from 50B3 because a small delay is done before the routine. BCALLs 80F0 and 80F3 are the boot page versions of these routines.

Example

B_CALL Chk_Batt_Low
ret z
B_CALL ChkFindSym
ret c
ld a,b
or a
ret nz
AppOnErr errHand
B_CALL Arc_Unarc
AppOffErr
errHand:
ret