Maps a function on all elements of a matrix. Modifies the matrix in-place. The function name must be a program that operates only on the X register. XEQ IND doesn't appear to work with names of built-in functions, but most built-in functions can operate directly on the matrix with similar results. Because the matrix is modified in-place, if an error occurs at any point the matrix may be partially modified. It might be good to save a copy of the original matrix. This version is somewhat improved over a previous one by using DSE instead of ISG to loop and by using -> instead of I+ to move the matrix index. Inputs: M: matrix to map over F: name of program to map Outputs: M: updated matrix Registers: 00: loop index 00 { 47-Byte Prgm } 01 LBL "MAP" 02 MVAR "M" 03 MVAR "F" 04 VARMENU "MAP" 05 STOP 06 RCL "M" 07 INDEX "M" 08 DIM? 09 + 10 1 11 + 12 STO 00 13 LBL 00 14 RCLEL 15 XEQ IND "F" 16 STOEL 17 -> 18 DSE 00 19 GTO 00 20 CLST 21 END