Difference between revisions of "83Plus:Basic:New Tokens on the 84 Plus"

From WikiTI
Jump to: navigation, search
(Added a section for ti83plus.inc (TASM))
m (The token list is incomplete.)
 
(4 intermediate revisions by 2 users not shown)
Line 23: Line 23:
 
* Hex: $EF06
 
* Hex: $EF06
 
* Syntax: <code>dayOfWk(<i>year</i>,<i>month</i>,<i>day</i></code>
 
* Syntax: <code>dayOfWk(<i>year</i>,<i>month</i>,<i>day</i></code>
* Returns: Number, where 1=Monday, 2=Tuesday et cetera
+
* Returns: Number, where 1=Sunday, 2=Monday, 3=Tuesday et cetera
  
 
== ExecLib ==
 
== ExecLib ==
Line 65: Line 65:
 
== OpenLib( ==
 
== OpenLib( ==
 
* Hex: $EF11
 
* Hex: $EF11
* Notes: This is used to interface with an application. However, no apps have been released to make of this (yet) *pokes Michael Vincent with a flash drive*
+
* Notes: This is used to interface with an application. USBDRV8X is one of the first apps to support using this function.
  
 
== setDate( ==
 
== setDate( ==
Line 101: Line 101:
 
= ti83plus.inc Addition =
 
= ti83plus.inc Addition =
 
The following lines may be added to your ti83plus.inc file. (For TASM)
 
The following lines may be added to your ti83plus.inc file. (For TASM)
<pre>checkTmr( EQU EF02h
+
<pre>tCheckTmr EQU EF02h
ClockOff EQU EF0Fh
+
tClockOff EQU EF0Fh
ClockOn EQU EF10h
+
tClockOn EQU EF10h
dayOfWk( EQU EF06h
+
tDayOfWk EQU EF06h
ExecLib EQU EF12h
+
tExecLib EQU EF12h
getDate EQU EF09h
+
tGetDate EQU EF09h
getDtFmt EQU EF0Ch
+
tGtDtFmt EQU EF0Ch
getDtStr EQU EF07h
+
tGetDtStr EQU EF07h
getTime EQU EF0Ah
+
tGetTime EQU EF0Ah
getTmFmt EQU EF0Dh
+
tGetTmFmt EQU EF0Dh
getTmStr( EQU EF08h
+
tGetTmStr EQU EF08h
isClockOn EQU EF0Eh
+
tIsClockOn EQU EF0Eh
OpenLib( EQU EF11h
+
tOpenLib EQU EF11h
setDate( EQU EF00h
+
tSetDate EQU EF00h
setDtFmt( EQU EF03h
+
tSetDtFmt EQU EF03h
setTime( EQU EF01h
+
tSetTime EQU EF01h
setTmFmt( EQU EF04h
+
tSetTmFmt EQU EF04h
startTmr EQU EF0Bh
+
tStartTmr EQU EF0Bh
timeCnv( EQU EF05h</pre>
+
tTimeCnv EQU EF05h</pre>
  
 
= Notes =
 
= Notes =
Line 125: 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.
 
* Calcsys, for making it easy to find the byte-codes of these tokens.

Latest revision as of 23: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 or If 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.