Expanded Matrix System for 9850 G ==================================== (XMS - copyright Martin Poupe 1998) How to install XMS for 9850 : (I didn`t find this way direct, you must use the PC) 1. Reset the calc 2. Send the backup to PC 3. Edit the file just received from the calc. 4. Scroll to the byte with the address 727h (head included) 5. Rewrite this and the just next byte to ffh (these 2 bytes contain the dimension of the matrix A) 6. Scroll to the last byte and add to this number 2 7. Save it and send it back to the calculator. You have just installed XMS (Matrix A: 255 x 255) Map of memory : In this calculator there is all dynamic, so I cannot write the indexes. One variable has got 10 bytes, so you got 3276.8 variables (!!??) ???? Table of files (if you create the file, matrix A is moved !) ??? Variables: A,B,C,...Y,Z,r,theta Lists: File 1: List 1, .. , List 6 .. .. File 6: List 1, .. , List 6 List Ans Matrices: Mat A =>> here is the start point for accessing RAM Mat B .. Mat Y Mat Z Mat Ans (Matrices are stored column after column) Range: XMin, XMax, XScl, Dx, Int-coefX, YMin, YMax, YScl, Dy, Int-coefY, TMin, TMax, TPitch (Dx,Dy values contain the increment for 1 pixel move, Int-coefs contain the parameter for Zoom .. to do ZOOM/INTG) Previous Range: TMin, TMax, XMin, XMax, YMin, YMax Factor: XFct, YFct Original Range: XMin, XMax, YMin, YMax, XScl, YScl Store ViewWindow 1 XMin, XMax, XScl, YMin, YMax, YScl, TMin, TMax, TPitch Store ViewWindow 2 .. Store ViewWindow 3 .. Store ViewWindow 4 .. Store ViewWindow 5 .. Store ViewWindow 6 .. Statistics (1-variable and 2-variable): x, sum of x, sum of x^2, xsn, xsn-1, n (2-variable): y, sum of y, sum of y^2, ysn, ysn-1, sum of xy, minX, maxX, minY, maxY (1-variable): minX, Q1, Med, Q3, x-xsn, x+xsn, maxX, mod Dynamic graph D Start, D End, D Pitch Table F Start, F End, F Pitch Recursion R Start, R End, a0, a1, a2 (= anStart), b0, b1, b2 (= bnStart) (^^^ here end the 10-bytes variables) Free memory ... ???? Last executed command(s) Formula for bn Formula for an Last file ... First file (if you have deleted all variables, you have only 1 file, the address of the 4-th..14-th byte in this file is Mat A[10,13]) System Stack for numbers used by computing formulas such 23+456 (if you have deleted all variables, you have only 1 file, Mat A[12,13] contains the first number (23) Mat A[13,13] contains the mantisa of the first number (2.3) Mat A[14,13] contains the second number (456) Mat A[15,13] contains the mantisa of the second number (4.56) Dynamic programing =================== 1) CASIO writes some code and then it executes: Create new file with following: "Graph Y=sin X"->Y1 1->A:Dsz A:1 and execute it. ;-> Note: the last byte of this file is "1" - DO NOT add any [EXE] or other character !! 2) How to extract the second byte from the two-bytes commands: (Very usefull for people, who has no cable or no casio-PC interface) Create new file with following: 1->A:Dsz A:x1234 where x1 is shifted command ([VARS] [F3] [F4] [F1]) and store following to graph memory Y1: "1"->Y1 (use f-mem as a clipboard) Execute the new file and then look at the Y1 the letter "x" is here !!! ;->> 3) How to run something from the middle of the file: Create new file with following: "ABCDEFGHIJKLMN"->Y2 1->A:Dsz A:Prog "DOS" where file "DOS" is some older file. And then store following to graph memory Y1: ""->Y2 and now execute the new file: Prog "DOS" is running, isn`t it ? ;->>> (But after executing Dsz A was A equal to zero, so next command was skipped...) How to display 7 rows in text mode and the 8-th row in graph mode. ================================================================== Example: ViewWindow 1,127,0,63,1,0 Green F-Line 2,63,2,56 Green F-Line 2,56,16,56 Green Text 58,4,"YES" Green F-Line 112,63,112,56 Green F-Line 112,56,126,56 Green Text 58,114,"N O" Green Text 58,43,"RESET ALL" PlotOn 1,1 ClrText Locate 1,1,"*********************" Locate 1,2,"* RESET *" Locate 1,3,"*********************" Locate 1,7,"RESET ALL MEMORIES?" Lbl 0 Getkey->K K=29=>Goto 1 K=47=>Goto 1 K<>79=>Goto 0 ClrText:Cls Locate 1,1,"*********************" For 2->I To 6 Locate 1,I,"*":Locate 21,I,"*" Next Locate 9,3,"RESET" Locate 5,5,"ALL MEMORIES!" Locate 1,7,"*********************" Stop Lbl 1 ClrText:"" \|||/ (o o) -------------------------------ooO-(_)-Ooo--------------------------------------