Difference between revisions of "83Plus:OS:OS 2.53MP Changes"

From WikiTI
Jump to: navigation, search
(New Tokens)
m (Change memory addresses to bank A as this is more standard)
 
(14 intermediate revisions by 4 users not shown)
Line 7: Line 7:
 
* New menu Alpha+F1-F4 for use with MathPrint.  All these new tokens have been moved to logical menu, except the fraction-related tokens. These are not in the symbol section of the Catalog.
 
* New menu Alpha+F1-F4 for use with MathPrint.  All these new tokens have been moved to logical menu, except the fraction-related tokens. These are not in the symbol section of the Catalog.
 
* In MathPrint, press up to scroll through previous entries, which allows basic copy and paste.
 
* In MathPrint, press up to scroll through previous entries, which allows basic copy and paste.
* The WINDOW screen now has an option for setting ?X, but not ?Y. The ability to store directly to the ?X and ?Y tokens has always existed.
+
* The WINDOW screen now has an option for setting ΔX, but not ΔY. The ability to store directly to the ΔX and ΔY tokens has always existed.
* The TABLE screen now has a shortcut for setting ?Tbl, because going the the TBLSET menu is hard.
+
* The TABLE screen now has a shortcut for setting ΔTbl.
 
* New ZOptions under ZOOM
 
* New ZOptions under ZOOM
* Catalog help updated. Exactly what has changed remains a mystery, as the new tokens haven't been added.
+
* Catalog help updated. Exactly what has changed remains a mystery, as the new tokens haven't been added. Note that the old Catalog Help 83 app gives a version error when run. See [http://education.ti.com/educationportal/downloadcenter/SoftwareDetail.do?website=US&tabId=1&appId=164 http://education.ti.com/educationportal/downloadcenter/SoftwareDetail.do?website=US&tabId=1&appId=164] to download the latest version. It's interesting to note that even the splash screen still says "TI-83 Plus" and "(C) Texas Instruments 2009".
 +
* If an error occurred in a program, an "Error" message is displayed in place of the default "Done" message on the home screen.
 +
* When the ENTER key is pressed, e.g. to re-evaluate a command or to rerun a program, the last entry is automatically displayed. For example, if you type in 2+2 and press ENTER, it will return 4. If you press ENTER again, then, instead of simply displaying the answer on a new line, it displays the entry 2+2 again and the answer on new lines.
 +
On the old OS:
 +
2+2
 +
      4
 +
      4
 +
 
 +
On the new OS:
 +
2+2
 +
      4
 +
2+2
 +
      4
  
 
== New Tokens ==
 
== New Tokens ==
Line 16: Line 28:
 
* CLASSIC -- basic [EF 38]
 
* CLASSIC -- basic [EF 38]
 
* DEC Answer -- basic [EF 3C]
 
* DEC Answer -- basic [EF 3C]
* ?F??D -- swap between fraction and decimal [EF 31]
+
* ▶F◀▶D -- swap between fraction and decimal [EF 31]
 
* FRAC Answer -- basic [EF 3D]
 
* FRAC Answer -- basic [EF 3D]
 
* logBASE( -- log to any base, logBASE(x,base [EF 34]
 
* logBASE( -- log to any base, logBASE(x,base [EF 34]
 
* MATHPRINT  -- basic [EF 37]
 
* MATHPRINT  -- basic [EF 37]
 
* n'''/'''d - normal fraction, numerator n'''/'''d denominator [EF 2E]
 
* n'''/'''d - normal fraction, numerator n'''/'''d denominator [EF 2E]
* ?n'''/'''d??Un'''/'''d -- swap between improper and proper fractions in MathPrint [EF 30]
+
* ▶n'''/'''d◀▶Un'''/'''d -- swap between improper and proper fractions in MathPrint [EF 30]
 
* randIntNoRep( -- gives a list of random integers, with dimension high-low+1 randIntNoRep(low,high [EF 35]
 
* randIntNoRep( -- gives a list of random integers, with dimension high-low+1 randIntNoRep(low,high [EF 35]
 
* remainder( --  essentially modulo, x % y, remainder(x,y [EF 32]
 
* remainder( --  essentially modulo, x % y, remainder(x,y [EF 32]
* summation  ?( --  ?(expression,variable,start,end [EF 33]
+
* summation  ∑( --  ∑(expression,variable,start,end [EF 33]
 
* Un'''/'''d -- mixed number, whole Un/d numerator n/d denominator [EF 2F]
 
* Un'''/'''d -- mixed number, whole Un/d numerator n/d denominator [EF 2F]
 
* ZFrac1'''/'''2, -- delta-x,y = 1/2, graph centered [EF 18]
 
* ZFrac1'''/'''2, -- delta-x,y = 1/2, graph centered [EF 18]
Line 36: Line 48:
 
** _, EF2F, not the same as printing _. New font codepoint 0F5h.
 
** _, EF2F, not the same as printing _. New font codepoint 0F5h.
 
** '''/''', EF2E, not the same as division /. New font codepoint 0F6h.
 
** '''/''', EF2E, not the same as division /. New font codepoint 0F6h.
* box, EF1E. New font codepoint 0F7h.
+
* ⬚box, EF1E. New font codepoint 0F7h.
  
 
== Flags ==
 
== Flags ==
* 5, (iy+44h) controls MathPrint. You should clear the screen if you change this flag.
+
* 5, (iy+44h) MathPrint. You should clear the screen as well as fill [[83Plus:RAM:966E|CmdShadow]] and [[83Plus:RAM:8508|TextShadow]] 20h's if you change this flag.
 
* 0, (iy+48h) controls the fraction mode
 
* 0, (iy+48h) controls the fraction mode
 
* bits 1 and 4 of (iy+47h) are related to when the OS decides to format an answer as a fraction
 
* bits 1 and 4 of (iy+47h) are related to when the OS decides to format an answer as a fraction
Line 49: Line 61:
  
 
== Memory ==
 
== Memory ==
* RAM page 3, 977Eh–9A7Dh -- previous entries. Destroying this causes crashes.
+
* RAM page 3, 577Eh–5A7Dh -- previous entries. Destroying this causes crashes.
* RAM page 3, 9A7Eh–9D7Dh -- homescreen graph buffer. Zero after destroying to prevent flicker.
+
* RAM page 3, 5A7Eh–5D7Dh -- homescreen graph buffer. Zero after destroying to prevent flicker.
 
+
  
 
= Compatibility Issues =
 
= Compatibility Issues =
* Programs using the homescreen may be very broken graphically. This includes applicaions that do strange things on the homescreen. Users should disable MathPrint before running them, and programs should definitely clear the screen first thing. Whether or not this is sufficient to ensure normal operation or if disabling MathPrint too is required requires further investigation; it appears that just clearing the screen is enough for now.
+
* Programs using the homescreen may be very broken graphically. This includes applications that do strange things on the homescreen. Users should disable MathPrint before running them, and programs should definitely clear the screen first thing. Whether or not this is sufficient to ensure normal operation or if disabling MathPrint too is required requires further investigation; it appears that just clearing the screen is enough for now.
 
* Programs that encounter an error on the graphscreen may end up with the graphscreen contents in the homescreen buffer
 
* Programs that encounter an error on the graphscreen may end up with the graphscreen contents in the homescreen buffer
 
* In Omnicalc, parenthesis assistant does not work properly. (Display error)
 
* In Omnicalc, parenthesis assistant does not work properly. (Display error)
Line 61: Line 72:
 
* Omnicalc's partial line clearing (always enabled) crashes or glitches when you try to use it in MathPrint.
 
* Omnicalc's partial line clearing (always enabled) crashes or glitches when you try to use it in MathPrint.
 
* All custom fonts of Omnicalc will need to be updated with the new font codepoints or else MathPrint will not look right.
 
* All custom fonts of Omnicalc will need to be updated with the new font codepoints or else MathPrint will not look right.
* Calcutil will not run at all correctly and will crash your calculator when you turn it off and back on.
+
* Calcutil will sometimes not run correctly and will crash your calculator when you turn it off and back on. This doesn't happen on some user's calculators.
 
* ld a,1 \ ld (appInfo+2),a \ bcall($50CB) no longer unlocks the flash ROM.
 
* ld a,1 \ ld (appInfo+2),a \ bcall($50CB) no longer unlocks the flash ROM.
 
+
* Outputting something at the end of a program no longer prevents the "Done" message from displaying.
  
 
= Performance Issues =
 
= Performance Issues =
Line 74: Line 85:
 
* MathPrint Bug: When a list is displayed as a result, you can't take it back for you new entry: selecting it and pressing enter doesn't work
 
* MathPrint Bug: When a list is displayed as a result, you can't take it back for you new entry: selecting it and pressing enter doesn't work
 
* MathPrint can't handle overly complex expressions; specifically, nesting multiple levels of fractions and the pretty printed FUNC symbols will eventually cause the calculator to refuse to let you nest any further. In practice, this limit may rarely, if ever, be encountered in the classroom. If your expression is starting to require vertical scrolling, expect to encounter the old out-of-memory checkered box soon. Try to recall this expression and it won't get fully MathPrintified.
 
* MathPrint can't handle overly complex expressions; specifically, nesting multiple levels of fractions and the pretty printed FUNC symbols will eventually cause the calculator to refuse to let you nest any further. In practice, this limit may rarely, if ever, be encountered in the classroom. If your expression is starting to require vertical scrolling, expect to encounter the old out-of-memory checkered box soon. Try to recall this expression and it won't get fully MathPrintified.
 +
* It is not possible to calculate the inverse of a matrix in MathPrint mode. This is because the OS converts the <sup>-1</sup> token into the into the token sequence ^(-1), and there appears to be no way to override this behavior. This is because the OS interprets (and has always interpreted) the <sup>-1</sup> token as a request for the inverse, whereas it thinks using ^ means you want to raise the matrix to a power, and giving it a negative number means division.
 +
* There are definitely stability issues with MathPrint, even without the help of assembly programs.

Latest revision as of 11:42, 4 March 2020

2.53 has been released officially. Merger with 83Plus:OS:VersionDifferences will happen when it happens.

To disable MathPrint: Press MODE, up, and select CLASSIC, not MATHPRINT.

Added Features

  • MathPrint is TI's own pretty printing. All the cool companies are using CamelCaps!
  • New menu Alpha+F1-F4 for use with MathPrint. All these new tokens have been moved to logical menu, except the fraction-related tokens. These are not in the symbol section of the Catalog.
  • In MathPrint, press up to scroll through previous entries, which allows basic copy and paste.
  • The WINDOW screen now has an option for setting ΔX, but not ΔY. The ability to store directly to the ΔX and ΔY tokens has always existed.
  • The TABLE screen now has a shortcut for setting ΔTbl.
  • New ZOptions under ZOOM
  • Catalog help updated. Exactly what has changed remains a mystery, as the new tokens haven't been added. Note that the old Catalog Help 83 app gives a version error when run. See http://education.ti.com/educationportal/downloadcenter/SoftwareDetail.do?website=US&tabId=1&appId=164 to download the latest version. It's interesting to note that even the splash screen still says "TI-83 Plus" and "(C) Texas Instruments 2009".
  • If an error occurred in a program, an "Error" message is displayed in place of the default "Done" message on the home screen.
  • When the ENTER key is pressed, e.g. to re-evaluate a command or to rerun a program, the last entry is automatically displayed. For example, if you type in 2+2 and press ENTER, it will return 4. If you press ENTER again, then, instead of simply displaying the answer on a new line, it displays the entry 2+2 again and the answer on new lines.

On the old OS:

2+2
      4
      4

On the new OS:

2+2
      4
2+2
      4

New Tokens

  • AUTO Answer -- basic [EF 3B]
  • CLASSIC -- basic [EF 38]
  • DEC Answer -- basic [EF 3C]
  • ▶F◀▶D -- swap between fraction and decimal [EF 31]
  • FRAC Answer -- basic [EF 3D]
  • logBASE( -- log to any base, logBASE(x,base [EF 34]
  • MATHPRINT -- basic [EF 37]
  • n/d - normal fraction, numerator n/d denominator [EF 2E]
  • ▶n/d◀▶Un/d -- swap between improper and proper fractions in MathPrint [EF 30]
  • randIntNoRep( -- gives a list of random integers, with dimension high-low+1 randIntNoRep(low,high [EF 35]
  • remainder( -- essentially modulo, x % y, remainder(x,y [EF 32]
  • summation ∑( -- ∑(expression,variable,start,end [EF 33]
  • Un/d -- mixed number, whole Un/d numerator n/d denominator [EF 2F]
  • ZFrac1/2, -- delta-x,y = 1/2, graph centered [EF 18]
  • ZFrac1/3, -- delta-x,y = 1/3, graph centered [EF 19]
  • ZFrac1/4, -- delta-x,y = 1/4, graph centered [EF 1A]
  • ZFrac1/5, -- delta-x,y = 1/5, graph centered [EF 1B]
  • ZFrac1/8, -- delta-x,y = 1/8, graph centered [EF 1C]
  • ZFrac1/10, -- delta-x,y = 1/10, graph centered [EF 1D]
  • ZQuadrant1, [EF 17]
  • fraction related tokens
    • _, EF2F, not the same as printing _. New font codepoint 0F5h.
    • /, EF2E, not the same as division /. New font codepoint 0F6h.
  • ⬚box, EF1E. New font codepoint 0F7h.

Flags

  • 5, (iy+44h) MathPrint. You should clear the screen as well as fill CmdShadow and TextShadow 20h's if you change this flag.
  • 0, (iy+48h) controls the fraction mode
  • bits 1 and 4 of (iy+47h) are related to when the OS decides to format an answer as a fraction
  • 4, (iy+45h): set this to disable the message about shortcut menus from Press-to-Test. Not affected by Reset Defaults, though MathPrint is.

Bcalls

96 new bcalls added.

  • 5410h -- alpha menu reminder pop up

Memory

  • RAM page 3, 577Eh–5A7Dh -- previous entries. Destroying this causes crashes.
  • RAM page 3, 5A7Eh–5D7Dh -- homescreen graph buffer. Zero after destroying to prevent flicker.

Compatibility Issues

  • Programs using the homescreen may be very broken graphically. This includes applications that do strange things on the homescreen. Users should disable MathPrint before running them, and programs should definitely clear the screen first thing. Whether or not this is sufficient to ensure normal operation or if disabling MathPrint too is required requires further investigation; it appears that just clearing the screen is enough for now.
  • Programs that encounter an error on the graphscreen may end up with the graphscreen contents in the homescreen buffer
  • In Omnicalc, parenthesis assistant does not work properly. (Display error)
  • In Omnicalc's entries menu: Using the entries menu without MathPrint symbols has some display issues, and when selecting an entry, it crashes.
  • In Omnicalc's entries menu: With MathPrint symbols in the entries log, there are serious display issues accompanied with a dramatic crash.
  • Omnicalc's partial line clearing (always enabled) crashes or glitches when you try to use it in MathPrint.
  • All custom fonts of Omnicalc will need to be updated with the new font codepoints or else MathPrint will not look right.
  • Calcutil will sometimes not run correctly and will crash your calculator when you turn it off and back on. This doesn't happen on some user's calculators.
  • ld a,1 \ ld (appInfo+2),a \ bcall($50CB) no longer unlocks the flash ROM.
  • Outputting something at the end of a program no longer prevents the "Done" message from displaying.

Performance Issues

  • Disp and Output may be up to 4× slower than on previous OS version when MathPrint is enabled (see TI-84+ OS v2.53 Leaked)
  • When MathPrint is enabled, when you go to the "Y=" menu to type a function, it's displaying slowly the Y1, Y2, Y3, Y4 etc.


Bugs

This is for bugs or strange functionality. Note the above "Compatibility Issues" section; use that for issues with third-party software.

  • MathPrint Bug: When a list is displayed as a result, you can't take it back for you new entry: selecting it and pressing enter doesn't work
  • MathPrint can't handle overly complex expressions; specifically, nesting multiple levels of fractions and the pretty printed FUNC symbols will eventually cause the calculator to refuse to let you nest any further. In practice, this limit may rarely, if ever, be encountered in the classroom. If your expression is starting to require vertical scrolling, expect to encounter the old out-of-memory checkered box soon. Try to recall this expression and it won't get fully MathPrintified.
  • It is not possible to calculate the inverse of a matrix in MathPrint mode. This is because the OS converts the -1 token into the into the token sequence ^(-1), and there appears to be no way to override this behavior. This is because the OS interprets (and has always interpreted) the -1 token as a request for the inverse, whereas it thinks using ^ means you want to raise the matrix to a power, and giving it a negative number means division.
  • There are definitely stability issues with MathPrint, even without the help of assembly programs.