Difference between revisions of "83Plus:Ports:02"
From WikiTI
(Changed the purpose of bit 1) |
m (Added link to port 2f) |
||
Line 9: | Line 9: | ||
=== Read Values === | === Read Values === | ||
* Bit 0: Set if the batteries are good. Reset if the batteries are low. The calculator will refuse to Garbage Collect or receive a FLASH App or OS when the batteries are low. | * Bit 0: Set if the batteries are good. Reset if the batteries are low. The calculator will refuse to Garbage Collect or receive a FLASH App or OS when the batteries are low. | ||
− | * '''83+SE / 84+ only:''' Bit 1: At 15mhz this bit resets for a set delay after a command or data is sent to the lcd, otherwise this bit is always set. | + | * '''83+SE / 84+ only:''' Bit 1: At 15mhz this bit resets for a set delay after a command or data is sent to the lcd, otherwise this bit is always set. The amount of delay is controlled by [[83Plus:Ports:2F|port 2F]]. |
* Bit 5: Set for TI-84+ and TI-84+ SE calculators. Reset for TI-83+ and TI-83+ SE calculators. | * Bit 5: Set for TI-84+ and TI-84+ SE calculators. Reset for TI-83+ and TI-83+ SE calculators. | ||
* Bit 7: Reset for a TI-83+ Basic. Set for everything else. | * Bit 7: Reset for a TI-83+ Basic. Set for everything else. |
Revision as of 22:40, 7 August 2005
Contents
Synopsis
Port Number: 02h
Function: Calculator Status Information
This port reports various status information, including battery strength, LCD driver status, and calculator type.
Read Values
- Bit 0: Set if the batteries are good. Reset if the batteries are low. The calculator will refuse to Garbage Collect or receive a FLASH App or OS when the batteries are low.
- 83+SE / 84+ only: Bit 1: At 15mhz this bit resets for a set delay after a command or data is sent to the lcd, otherwise this bit is always set. The amount of delay is controlled by port 2F.
- Bit 5: Set for TI-84+ and TI-84+ SE calculators. Reset for TI-83+ and TI-83+ SE calculators.
- Bit 7: Reset for a TI-83+ Basic. Set for everything else.
Write Values
- No useful effect.
Comments
See Port 21h for how to distinguish the 84+ Basic from the 84+ SE.
Examples
Battery checking
push af in a, (2) and 01h call nz, BatteriesGood call z, BatteriesLow pop af
LCD Testing
push af WaitLoop: in a, (2) and 02h jr z, WaitLoop ;Send a command, like 03 (LCD "On"). call LCDIsReady pop af
Device checking
This example also uses Port 21h.
in a, (2) rlca ;Roll bit 7 into carry. jp nc, Regular83Plus and 40h ;Test bit 5, now rotated into bit 6. jp z, Silver83Plus in a, (21h) and 03h jp z, Regular84Plus jp nz, Silver84Plus
Credits and Contributions
- Michael Vincent: Documentation of port 2 located here.