83Plus:RAM:85DE

From WikiTI
Jump to: navigation, search

Synopsis

Official Name: MenuCurrent

Memory Address: 85DEh

Length: 3 bytes.

This area of memory stores the value of the current TI-OS menu.

Description

  • MenuCurrent: contains a value for the type of menu (e.g. [PRGM], [MATH]). Note that the corresponding sub-menus are also equivalent to their respective menu (e.g. [PRGM] is also the same value as [DRAW])
  • MenuCurrent+1: contains which header is selected (e.g. [NUM] in the [MATH] menu).
  • MenuCurrent+2: tells us which item in the menu is selected.

Comments

Bytes two and three (the header and item) are zero-indexed, so item #1 is $00, item #2 is $01, etc.

Once a menu is exited, these bytes are reset.

Note that under OS version 2.53MP (and presumably later), the chart below is off by one in most cases. For example, mGarbageCollect is $40 instead of $3F, and mGroupVars is $2A instead of $29. It has been confirmed that 2.55MP still contains this off-by-one bug.

Equates

Here is a list of equates related to MenuCurrent and MenuCurrent+1:

mConfirmation       EQU $01
mApps               EQU $02
mProgramHome        EQU $03
mPrgm_Run           EQU $00
mPrgm_Edit          EQU $01
mPrgm_New           EQU $02
mZoom               EQU $04
mZoom_Zoom          EQU $00
mZoom_Memory        EQU $01
mDraw               EQU $05
mDraw_Draw          EQU $00
mDraw_Points        EQU $01
mDraw_Store         EQU $02
mStatPlots          EQU $06
mStat               EQU $07
mStat_Edit          EQU $00
mStat_Calc          EQU $01
mStat_Tests         EQU $02
mMath               EQU $08
mMath_Math          EQU $00
mMath_Number        EQU $01
mMath_Complex       EQU $02
mMath_Prob          EQU $03
mTest               EQU $09
mTest_Test          EQU $00
mTest_Logic         EQU $01
mVars               EQU $0B
mVars_Vars          EQU $00
mVars_YVars         EQU $01
mMemory             EQU $0C
mMatrix             EQU $0D
mMatrix_Name        EQU $00
mMatrix_Math        EQU $01
mMatrix_Edit        EQU $02
mDistr              EQU $0E
mDistr_Distr        EQU $00
mDistr_Draw         EQU $01
mAngle              EQU $0F
mList               EQU $10
mList_Names         EQU $00
mList_Ops           EQU $01
mList_Math          EQU $02
mCalculate          EQU $11
mVarsWin            EQU $14
mVarsWin_XY         EQU $00
mVarsWin_TTh        EQU $01
mVarsWin_UVW        EQU $02
mVarsZoom           EQU $15
mVarsZoom_ZXY       EQU $00
mVarsZoom_ZT        EQU $01
mVarsZoom_UVW       EQU $02
mVarsGDB            EQU $16
mVarsPics           EQU $17
mVarsStrings        EQU $18
mVarsStat           EQU $19
mVarsStat_XY        EQU $00
mVarsStat_Sigma     EQU $01
mVarsStat_EQ        EQU $02
mVarsStat_Test      EQU $03
mVarsStat_Pts       EQU $04
mVarsTable          EQU $1A
mVarsYEqu           EQU $1B
mVarsParametric     EQU $1C
mVarsPolar          EQU $1D
mVarsFnOnOff        EQU $1E
mMemReset           EQU $1F
mMemReset_RAM       EQU $00
mMemReset_ROM       EQU $01
mMemReset_All       EQU $02
mMemMgmtDel         EQU $20
mMemResetDefaults   EQU $21
mMemResetRAMAll     EQU $23
mMemResetROMVars    EQU $24
mMemResetROMApps    EQU $25
mMemResetROMAll     EQU $26
mMemResetAll        EQU $27
mGroup              EQU $28
mGroup_New          EQU $00
mGroup_Ungroup      EQU $01
mGroupVars          EQU $29
mProgramEdit        EQU $2A
mPrgmEd_Ctrl        EQU $00
mPrgmEd_IO          EQU $01
mPrgmEd_Exec        EQU $02
mPrgmZoom           EQU $2B
mPrgmZoom_Zoom      EQU $00
mPrgmZoom_Mem       EQU $01
mPrgmDraw           EQU $2C
mPrgmDraw_Draw      EQU $00
mPrgmDraw_Pt        EQU $01
mPrgmDraw_Store     EQU $02
mPrgmStatPlot       EQU $2D
mPrgmSP_Plots       EQU $00
mPrgmSP_Type        EQU $01
mPrgmSP_Mark        EQU $02
mPrgmStat           EQU $2E
mPrgmStat_Edit      EQU $00
mPrgmStat_Calc      EQU $01
mPrgmStat_Tests     EQU $02
mPrgmMath           EQU $2F
mPrgmMath_Math      EQU $00
mPrgmMath_Num       EQU $01
mPrgmMath_Cplx      EQU $02
mPrgmMath_Prob      EQU $03
mLink               EQU $30
mLink_Send          EQU $00
mLink_Recieve       EQU $01
mLinkTrasmit        EQU $31
mLinkXmit_Xmit      EQU $01
mGarbageCollect     EQU $3F
mSelectGroupVars    EQU $40
mSelGrpVars_Sel     EQU $00
mSelGrpVars_Grp     EQU $01
mDuplicateName      EQU $42
mCatalog            EQU $45
mFinance            EQU $22
mFinance_Calc       EQU $00
mFinance_Vars       EQU $01

Credits and Contributions

  • JasonM: For providing the original description
  • Michael Vincent: For researching the MenuCurrent values (even if they weren't publicly documented :)