Difference between revisions of "83Plus:Basic:New Tokens on the 84 Plus"
From WikiTI
(All new tokens start with $EF) |
m (The token list is incomplete.) |
||
(8 intermediate revisions by 2 users not shown) | |||
Line 9: | Line 9: | ||
== checkTmr( == | == checkTmr( == | ||
* Hex: $EF02 | * Hex: $EF02 | ||
− | * Syntax: checkTmr(<i>offset</i> | + | * Syntax: <code>checkTmr(<i>offset</i></code> |
** offset is a decimal number to add to the value returned. | ** offset is a decimal number to add to the value returned. | ||
* Returns: Decimal value of clock ports | * Returns: Decimal value of clock ports | ||
Line 22: | Line 22: | ||
== dayOfWk( == | == dayOfWk( == | ||
* Hex: $EF06 | * Hex: $EF06 | ||
+ | * Syntax: <code>dayOfWk(<i>year</i>,<i>month</i>,<i>day</i></code> | ||
+ | * Returns: Number, where 1=Sunday, 2=Monday, 3=Tuesday et cetera | ||
== ExecLib == | == ExecLib == | ||
Line 29: | Line 31: | ||
== getDate == | == getDate == | ||
* Hex: $EF09 | * Hex: $EF09 | ||
− | * Syntax: getDate→<i>⌊ALIST</i> | + | * Syntax: <code>getDate→<i>⌊ALIST</i></code> |
* Returns: {<i>year</i>,<i>month</i>,<i>day</i>} (regardless of getDtFmt) | * Returns: {<i>year</i>,<i>month</i>,<i>day</i>} (regardless of getDtFmt) | ||
== getDtFmt == | == getDtFmt == | ||
* Hex: $EF0C | * Hex: $EF0C | ||
− | * Syntax: getDtFmt→<i>[a variable]</i> | + | * Syntax: <code>getDtFmt→<i>[a variable]</i></code> |
− | * Returns: A number which tells you what date format the user has requested to use on the MODE screen. | + | * Returns: A number which tells you what date format the user has requested to use on the MODE screen. Either 1, 2, or 3. |
==getDtStr( == | ==getDtStr( == | ||
* Hex: $EF07 | * Hex: $EF07 | ||
− | * Syntax: getDtStr(<i>date format</i> | + | * Syntax: <code>getDtStr(<i>date format</i></code> |
** I would presume <i>date format</i> is the same as the numbers used for getDtFmt | ** I would presume <i>date format</i> is the same as the numbers used for getDtFmt | ||
== getTime == | == getTime == | ||
* Hex: $EF0A | * Hex: $EF0A | ||
− | * Sintax: | + | * Sintax: <code>getTime→<i>⌊ALIST</i></code> |
* Returns: A list, in the format: {<i>hour</i>,<i>minuet</i>,<i>second</i> | * Returns: A list, in the format: {<i>hour</i>,<i>minuet</i>,<i>second</i> | ||
== getTmFmt == | == getTmFmt == | ||
* Hex: $EF0D | * Hex: $EF0D | ||
+ | * Returns: Either 12 or 24, depending on weather the user likes 12 or 24-hour mode clocks. | ||
* Notes: Works alot like getDtFmt | * Notes: Works alot like getDtFmt | ||
== getTmStr( == | == getTmStr( == | ||
* Hex: $EF08 | * Hex: $EF08 | ||
− | * Syntax: | + | * Syntax: <code>getTmStr(<i>[12|24]</i></code> |
+ | ** It takes either 12 or 24, but I would guess that there are other values you could include after that to get the seconds. | ||
== isClockOn == | == isClockOn == | ||
Line 61: | Line 65: | ||
== OpenLib( == | == OpenLib( == | ||
* Hex: $EF11 | * Hex: $EF11 | ||
− | * Notes: This is used to interface with an application. | + | * Notes: This is used to interface with an application. USBDRV8X is one of the first apps to support using this function. |
== setDate( == | == setDate( == | ||
* Hex: $EF00 | * Hex: $EF00 | ||
− | * Syntax: setDate(<i>year</i>,<i>month</i>,<i>day</i> | + | * Syntax: <code>setDate(<i>year</i>,<i>month</i>,<i>day</i></code> |
* Notes: DtFmt does not affect this. | * Notes: DtFmt does not affect this. | ||
== setDtFmt( == | == setDtFmt( == | ||
* Hex: $EF03 | * Hex: $EF03 | ||
+ | * Syntax: <code>setDtFmt(<i>[1|2|3]</i></code> | ||
+ | ** 1, 2, and 3 should be M/D/Y, D/M/Y, and Y/M/D, respectivly. | ||
* Notes: This is used to set the date format shown on the MODE screen | * Notes: This is used to set the date format shown on the MODE screen | ||
== setTime( == | == setTime( == | ||
* Hex: $EF01 | * Hex: $EF01 | ||
− | * Syntax: setTime(<i>hour</i>,<i>minuet</i>,<i>second</i> | + | * Syntax: <code>setTime(<i>hour</i>,<i>minuet</i>,<i>second</i></code> |
* Notes: This does not care about TmFmt | * Notes: This does not care about TmFmt | ||
== setTmFmt( == | == setTmFmt( == | ||
* Hex: $EF04 | * Hex: $EF04 | ||
+ | * Syntax: <code>setTmFmt(<i>[12|24]</i></code> | ||
+ | ** Takes either 12 or 24. 12 for AM/PM, 24 for 24-hour mode clock | ||
* Notes: Changes the time time format shown on the MODE screen | * Notes: Changes the time time format shown on the MODE screen | ||
Line 87: | Line 95: | ||
== timeCnv( == | == timeCnv( == | ||
* Hex: $EF05 | * Hex: $EF05 | ||
− | * Syntax: timeCnv(<i>a number of seconds</i> | + | * Syntax: <code>timeCnv(<i>[a number of seconds]</i></code> |
* Returns: A list that converts the number of seconds into {<i>days</i>,<i>hours</i>,<i>minuets</i>,<i>seconds</i> | * Returns: A list that converts the number of seconds into {<i>days</i>,<i>hours</i>,<i>minuets</i>,<i>seconds</i> | ||
* Notes: You may wish to use this with checkTmr( to bump the time up or down a few seconds | * Notes: You may wish to use this with checkTmr( to bump the time up or down a few seconds | ||
+ | |||
+ | = ti83plus.inc Addition = | ||
+ | The following lines may be added to your ti83plus.inc file. (For TASM) | ||
+ | <pre>tCheckTmr EQU EF02h | ||
+ | tClockOff EQU EF0Fh | ||
+ | tClockOn EQU EF10h | ||
+ | tDayOfWk EQU EF06h | ||
+ | tExecLib EQU EF12h | ||
+ | tGetDate EQU EF09h | ||
+ | tGtDtFmt EQU EF0Ch | ||
+ | tGetDtStr EQU EF07h | ||
+ | tGetTime EQU EF0Ah | ||
+ | tGetTmFmt EQU EF0Dh | ||
+ | tGetTmStr EQU EF08h | ||
+ | tIsClockOn EQU EF0Eh | ||
+ | tOpenLib EQU EF11h | ||
+ | tSetDate EQU EF00h | ||
+ | tSetDtFmt EQU EF03h | ||
+ | tSetTime EQU EF01h | ||
+ | tSetTmFmt EQU EF04h | ||
+ | tStartTmr EQU EF0Bh | ||
+ | tTimeCnv EQU EF05h</pre> | ||
= Notes = | = Notes = | ||
Line 95: | Line 125: | ||
ti83plus.inc does not define any tokens as starting with $EF, and all these new tokens start with $EF. $EF is the second byte of some two-byte tokens. | ti83plus.inc does not define any tokens as starting with $EF, and all these new tokens start with $EF. $EF is the second byte of some two-byte tokens. | ||
+ | |||
+ | Tokens up to 16h are valid, so the above list of tokens is incomplete. | ||
= Credits and Contributions = | = Credits and Contributions = | ||
* elfprince13 for asking | * elfprince13 for asking | ||
+ | * Calcsys, for making it easy to find the byte-codes of these tokens. |
Latest revision as of 22:46, 21 September 2009
- The title of this article is incorrect because of technical limitations. The correct title is 83Plus:Basic:New Tokens on the 84+.
The TI-84(SE) has several new tokens. These tokens will not work on the 83's.
Tokens
checkTmr(
- Hex: $EF02
- Syntax:
checkTmr(offset
- offset is a decimal number to add to the value returned.
- Returns: Decimal value of clock ports
ClockOff
- Hex: $EF0F
- Syntax: ClockOff
ClockOn
- Hex: $EF10
dayOfWk(
- Hex: $EF06
- Syntax:
dayOfWk(year,month,day
- Returns: Number, where 1=Sunday, 2=Monday, 3=Tuesday et cetera
ExecLib
- Hex: $EF12
- Notes: This is used with OpenLib(
getDate
- Hex: $EF09
- Syntax:
getDate→⌊ALIST
- Returns: {year,month,day} (regardless of getDtFmt)
getDtFmt
- Hex: $EF0C
- Syntax:
getDtFmt→[a variable]
- Returns: A number which tells you what date format the user has requested to use on the MODE screen. Either 1, 2, or 3.
getDtStr(
- Hex: $EF07
- Syntax:
getDtStr(date format
- I would presume date format is the same as the numbers used for getDtFmt
getTime
- Hex: $EF0A
- Sintax:
getTime→⌊ALIST
- Returns: A list, in the format: {hour,minuet,second
getTmFmt
- Hex: $EF0D
- Returns: Either 12 or 24, depending on weather the user likes 12 or 24-hour mode clocks.
- Notes: Works alot like getDtFmt
getTmStr(
- Hex: $EF08
- Syntax:
getTmStr([12|24]
- It takes either 12 or 24, but I would guess that there are other values you could include after that to get the seconds.
isClockOn
- Hex: $EF0E
- Notes: The way this one works, to test if the clock is on, just do
If isClockOn
orIf not(isClockOn)
.
OpenLib(
- Hex: $EF11
- Notes: This is used to interface with an application. USBDRV8X is one of the first apps to support using this function.
setDate(
- Hex: $EF00
- Syntax:
setDate(year,month,day
- Notes: DtFmt does not affect this.
setDtFmt(
- Hex: $EF03
- Syntax:
setDtFmt([1|2|3]
- 1, 2, and 3 should be M/D/Y, D/M/Y, and Y/M/D, respectivly.
- Notes: This is used to set the date format shown on the MODE screen
setTime(
- Hex: $EF01
- Syntax:
setTime(hour,minuet,second
- Notes: This does not care about TmFmt
setTmFmt(
- Hex: $EF04
- Syntax:
setTmFmt([12|24]
- Takes either 12 or 24. 12 for AM/PM, 24 for 24-hour mode clock
- Notes: Changes the time time format shown on the MODE screen
startTmr
- Hex: $EF0B
- Notes: This works just like checkTmr(0), execpt smaller.
timeCnv(
- Hex: $EF05
- Syntax:
timeCnv([a number of seconds]
- Returns: A list that converts the number of seconds into {days,hours,minuets,seconds
- Notes: You may wish to use this with checkTmr( to bump the time up or down a few seconds
ti83plus.inc Addition
The following lines may be added to your ti83plus.inc file. (For TASM)
tCheckTmr EQU EF02h tClockOff EQU EF0Fh tClockOn EQU EF10h tDayOfWk EQU EF06h tExecLib EQU EF12h tGetDate EQU EF09h tGtDtFmt EQU EF0Ch tGetDtStr EQU EF07h tGetTime EQU EF0Ah tGetTmFmt EQU EF0Dh tGetTmStr EQU EF08h tIsClockOn EQU EF0Eh tOpenLib EQU EF11h tSetDate EQU EF00h tSetDtFmt EQU EF03h tSetTime EQU EF01h tSetTmFmt EQU EF04h tStartTmr EQU EF0Bh tTimeCnv EQU EF05h
Notes
Time is not a new token for the 84.
ti83plus.inc does not define any tokens as starting with $EF, and all these new tokens start with $EF. $EF is the second byte of some two-byte tokens.
Tokens up to 16h are valid, so the above list of tokens is incomplete.
Credits and Contributions
- elfprince13 for asking
- Calcsys, for making it easy to find the byte-codes of these tokens.