Original BCALLs: 4CABh: 7B:5B17h ;pass key in A and it calls 4E25h and 4E22h, MIGHT be small edit buffer related 4CBAh: 7B:5CD9h ;restores everything that 4CC3h and 4CE7h backed up 4CC3h: 7B:5C78h ;backs up LCD to appBackUpScreen, backs up flags, penCol, and other stuff, too (likely related to mysterious context) 4CC6h: 7B:5CCCh ;displays a small string, set 1,(iy+2Ah), BCALL 5206h, and jump to _errchkalphabox 4CC9h: 7B:5F44h ;xor a \ call 4CF6h \ ret 4CCCh: 7B:5EA9h ;buffer-related, displays stuff in small font 4CD2h: 7B:5D31h ;buffer-related, displays stuff in small font, BCALLs 4CD5h 4CD5h: 7B:603Ah ;displays a token string in small font among other junk, BCALLs 4D1Ah 4CDEh: 7B:5CD9h ;same as 4CBAh 4CE7h: 7B:5C78h ;same as 4CC3h 4CEAh: 7B:6623h ;displays string in small font, buffer-related, calls _setupEditEqu on the _DialogInit var, might fall through to _errchkalphabox 4CF0h: 7B:5D13h ;token-related, messes with penCol, might even display it 4CF3h: 7B:5E27h ;does...uh...something, with the edit buffer and alters (curUnder) (that's probably its purpose) 4CF6h: 7B:5F45h ;displays a small string, maybe other stuff, possibly edit buffer related, A is input 4CF9h: 7B:6034h ;variant on 4CD5h, but it starts out with A=0 and B=0 instead of B=1 4CFCh: 7B:6119h ;probably simple enough...calls _cursorLeft, messes with buffer pointers, and _GetPrevTok 4CFFh: 7B:6165h ;probably the exact same thing as 4CFCh except _cursorRight 4D02h: 7B:61A6h ;screws with flags and penCol and then jumps to BCALL 4D05h 4D05h: 7B:6216h ;more penCol crap, calls _BUFPEEK1 and 4D08h 4D08h: 7B:6255h ;call _SGetTokStrng \ BCALL 4D0Eh \ ret 4D0Bh: 7B:625Ch ;calls _GetPrevtok twice, _SGetTokStrng, _LoadPattern, _SGetTokStrng again, res 6,(iy+2Ah), 4D0Eh, and 4D05h 4D0Eh: 7B:6298h ;messes with length-indexed string, looks at 5,(iy+2Ah) 4D11h: 7B:62B7h ;res 5,(iy+2Ah) among other things, you pass a character in A and it...does something, calls _VPutMap 4D14h: 7B:62F1h ;definitely displays something and copies 9 bytes from 81B9h back one, calls 4D17h 4D17h: 7B:6339h ;small edit buffer related, probably a wrapper to _AppScreenUpDown 4D1Ah: 7B:635Dh ;messes with penCol, BCALLs 4D1Dh 4D1Dh: 7B:6394h ;displays something to the LCD, turns on run indicator, does crazy computing with ramCode, probably small edit buffer related 4D20h: 7B:6461h ;res 6,(iy+2Ah) and other junk, calls 4D08h, lots of edit buffer calls and uses 4D08h 4D23h: 7B:6497h ;decreases SmallEditRowCount and other junk, uses 4D14h 4D2Ch: 7B:6656h ;restores and then saves display at appBackUpScreen, calls _AppScreenUpDown1 and _ClearRow 4D3Bh: 06:5EDCh ;ex de,hl \ call _BufClear \ ex de,hl \ set 0,(iy+0Ch) \ call _rclToQueue \ res 0,(iy+0Ch) \ ret c \ ld hl,(rclQueue) \ ld (editCursor),hl 4D74h: 7B:6E8Ah ;B is input, displays a string or something 4D8Fh: 7B:79D5h ;mouse-related 4D92h: 04:40ADh ;I don't know...uses unknown values at 9775h, 966Dh, 966Ch, and 9668h to compute something 4DA1h: 7B:6E8Bh ;same as 4D74h except it doesn't start out with "ld a,b" 4DA7h: 7B:753Dh ;messes with data pointed to by HL and DE, will alter the HL one 4DAAh: 7B:7549h ;mouse-related 4DADh: 7B:7586h ;mouse-related 4DB0h: 7B:75BAh ;mouse-related 4DB3h: 7B:75CFh ;mouse-related 4DB6h: 7B:75D3h ;mouse-related 4DB9h: 7B:75F5h ;mouse-related 4DBCh: 7B:75F2h ;mouse-related 4DDDh: 7B:6C0Ah ;definitely table/list editor related, uses 4DEFh, 4E31h, and 4E46h 4DE6h: 7B:6C2Dh ;installs a cursor hook 4DECh: 7B:6E84h ;ld b,a \ ld a,d \ BCALL 4DEFh \ ret nz \ (fall through to 4D74h) 4DEFh: 7B:6F96h ;calls cell override 4E19h: 7B:6BB6h ;this is _getcurmodecellflag (don't know what it is, but the name is probably right) 4E1Ch: 7B:6B63h ;ld a,(curModeCell) \ call _CellBoxManager \ (and other junk involving a keypress) 4E22h: 7B:6B96h ;you pass it something in A and it goes crazy if it's 29h, otherwise calls _CellkHandle and returns A=28h 4E25h: 7B:6C58h ;disables the cursor hook and does other crap 4E2Eh: 7B:6643h ;ld hl,(8160h) \ ld de,(8172h) \ ld a,(curModeCell) \ push af \ BCALL 4E37h \ pop af \ ld (curModeCell),a \ ret 4E31h: 7B:6BE4h ;gets a byte and might call 4E46h (no clue) 4E34h: 7B:6E45h ;you pass it something in A and B, it calls _drawCell B times 4E37h: 7B:6E24h ;pass it something in HL and DE, calls _ClearRect, maybe _DrawRectBorder, and calls 4E31h, then falls through to 4E34h 4E40h: 7B:722Fh ;stores a bunch of bytes...somewhere, an ASCII string is involved at some point 4E46h: 7B:7240h ;slightly different from 4E40h throughout, just as nonsensical 4E49h: 7B:6C0Dh ;looks at iy+2Bh, calls 4EDFh, 4E31h, and 4E46h, I put "maybe lookup" in the notes for this for some reason 4EAFh: 02:6D02h ;this is a scary subroutine in _YToX, has something to do with negative numbers or non-integers or something 4F9Fh: 75:4449h ;ld hl,92C6h \ ld a,(9C25h) \ res 2,a \ cp (hl) \ ret 4FA2h: 75:41E1h ;short and simple, no clue what it means 503Eh: 03:569Fh : :`(, some scary math/graph thing (very serious screwing around/reading floating-point values with the FPS) 505Fh: 79:5157h ;displays menu onscreen, 5,(iy+11h) for names (85F2h is first), set up menuCurrent vector (for top item), curRow and 984Ah are top of screen 5062h: 79:5144h ;sets up menu with names, works well for Mem Mgmt/Del menu (why did I say that?), definitely want to come back to this (and 505Fh) 5068h: 79:5B96h ;displays either the top of Y= editor (stat plot stuff), or full or partial list editor based on flags set/reset 50ADh: 06:56DFh ;no clue, is bottom half of FormBase, calls FormReal, has A and IX inputs, maybe others OS 2.30+ BCALLs: 50FEh: 02:6EC8h ;with C=0, this is LogX without the ERR:DOMAIN on negative number. Bits 0 and 1 of C make it behave differently at the end. No clue. 5104h: 75:4994h ;displays minX/Q1/Med/Q3/maxX= and number in OP1 5107h: 75:49F7h ;probably displays "n=" and other math junk. 510Dh: 04:688Bh ;scary, does 12 different things, A=0 is _CHKTEXTCURS, A=1 gets graph center to (OP1,OP5), etc. 5110h: 04:5E5Ah ;math thing with OP1-OP5, has HL input of floating point number 5119h: 06:496Eh ;math/graph/edit buffer related, no clue 5134h: 79:6D89h ;sets up new program/new group context, selectable somehow, probably leaves memory open 5137h: 02:78F1h ;I don't get it...: _OP1ToOP4 \ _InvOP1S \ _Plus1 \ _OP1ExOP4 \ _Plus1 \ _OP4ToOP2 (OP1 = (OP1+1), OP2 = (-OP1+1)) 513Dh: 79:7348h ;same as above but skips a couple checks (which do scary math) 5140h: 79:733Ch ;who knows, but jumps to certain code based on A, 20h to 2Dh, ErrArgument otherwise 518Eh: 04:7F1Dh ;does 10 different things, likely all math/graph related 5194h: 03:4A04h ;A must be non-zero or ERR:DOMAIN, uses var name in OP3 for something, screws with edit buffer pointers, calls _rclToQueue, _finishoutput (and _Disp) 51A3h: 03:6DA0h ;does seven different things, likely all reset var content like stuff 51B5h: 05:6CB5h ;some crazy insane math thing, stat plot related 51C1h: 78:7D70h ;displays LinReg (ax+b) stuff and sets up homescreen program edit, but don't know the inputs 51D0h: 03:7C4Ah ;I really have no idea, screws around a lot with flags and window/prompt cols/rows, maybe Rcl-related 51D3h: 05:48D2h ;a funky merging of 4FA5h, but still no clue what it is 51D6h: 77:5CE0h ;subroutine of app init for mode context, just lets you customize a little more...just needs research into the inputs 51D9h: 06:6D70h ;displays a bunch of small font stuff, might be graph/math related, calls localize hook 51EBh: 05:42DDh ;I don't know, but returns if currently in one of two contexts (best guess is that it has to do with the matrix editor) 51EEh: 05:656Ah ;table editor related, somehow (maybe stat plot related) 51F4h: 75:4596h ;displays STAT PLOTS info 51FAh: 77:605Ah ;basically sets up the time setting menu, you need to init the mode context first and stuff...just needs research, related to 51D6h 51FDh: 75:40DCh ;involves displaying cursor on large font option, stat plot stuff 5203h: 75:4216h ;checks whether current context is...something, probably stat plot related 5206h: 03:48DEh ;I have no clue, but it screws with edit buffer and calls _SEQSOLVE (possibly errors out if (parseVar+1) <> 0, and calls _cxRedisp...internal context use) 5209h: 03:47AEh ;res 0,(iy+0Eh) \ call _BufToTop \ (restore curCol or penCol) \ call _SEQSOLVE \ ret 520Ch: 06:6E21h ;edit buffer related, displays stuff 520Fh: 03:4622h ;res 1,(iy+0Eh) \ ret, might mean buffer was just cleared 5224h: 05:75F7h ;stores junk to "zone 1", AKA RAM pages 3/2, somehow math-related (stat plot related?) I can't for the life of me find where this is being called...522Ah is its opposite 5227h: 05:763Fh ;stores junk to "zone 1", AKA RAM pages 3/2, somehow graph-related (stat plot related?) 522Ah: 03:646Fh ;calls 5296h, then does some odd list stuff...it displays a stat plot list or something wonky 5239h: 05:54C0h ;probably graph/table related, touches RAM pages 3/2 if 84+ or SE (maybe even list editor related) 523Ch: 05:56E0h ;don't know, table/list editor related, but installs _sysErrHandler around the whole function (yeah...list (or matrix?) editor related) 523Fh: 03:66ABh ;this is _PREVPLOT except it doesn't make a check to make sure (curGStyle) is 7Fh or 51h, which would otherwise cause it to immediately return...don't know what that means, though 5245h: 05:5AADh ;some kinda table/list editor wrapper to _GET_FORM_NUM, Z set if not found, or something 524Bh: 06:6E1Bh ;don't know, but calls _InitNumVec 524Eh: 75:434Bh ;crazy math stuff that uses nameBuff quite a bit 5251h: 75:4A6Ch ;so much math, it hurts my eyes so I'm skipping it, probably uses lists 5299h: 05:75F7h ;crazy isnane stuff related to 52CCh. 529Fh: 75:4D52h ;math junk which displays stuff 52A2h: 75:4DCCh ;whole bunch of variable math and stuff 52A5h: 75:55F3h ;no clue, but it's got a mathy error handler 52A8h: 75:5672h ;probably more math crap like 52ABh 52ABh: 75:56E4h ;probably inserts a number into an edit buffer, has potential to be interesting 52AEh: 03:6552h ;stat plot related, displays junk 52B4h: 05:64D4h ;displays graphing junk (stat plot related) 52BAh: 03:6240h ;insane list checking stuff. This is looking like it has to do with stat plots. 52C0h: 05:7644h ;crazy stuff related to 52CCh. 52C3h: 05:5A8Ch ;this parses a formula (a little wrapper for _PARSE_FORMULA), but there's probably a little more to it than that. 52CCh: 05:75FCh ;copies all the table stuff from system RAM to pages 83h/82h and backs up iy+tblFlags...why? No clue, and no details on specifics. OS 2.40+ BCALLs: 52CFh: 03:6632h ;push hl \ call _CpyTo2FPS5 \ ld de,(OP2+4) \ ld hl,5 \ add hl,de \ ld de,(OP2+2) \ or a \ sbc hl,de \ ex de,hl \ pop hl \ jp _cpHLDE 52D2h: 03:6621h ;dec hl \ push hl \ call _CpyTo2FPS5 \ pop hl \ push hl \ ld de,(OP2) \ add hl,de \ dec hl \ ld a,h \ or l \ pop hl \ ret 52E1h: 74:5B9Fh ;bit 4,(9C75h) (this is DEFINITELY returning the status of something when acting as a TI-SmartView Input Pad...this bit is bit 1 of the data byte from a PC HID Set Report request) 83+/SE Boot Code BCALLs: 804Eh: 7F:4924h ;does something with calc ID and WriteValidationNumber 8066h: 7F:4F82h ;scanning for certificate fields 8069h: 7F:4EF0h ;scanning for certificate fields 84+/SE Only Boot Code BCALLs: 810Bh: 6F:6297h ;set 1,(81h) and wait...I honestly don't know what this is, it's used in the OS in peripheral init just before waiting on frame counter to start, and when killing USB (only it doesn't?)