A standard HP-15C as designed and manufactured by Hewlett-Packard provides 67 user data registers, of which up to 64 can be used for matrix storage. The largest square matrix the HP-15C can handle is of order 8. However, alternate HP-15C firmware is available that increases the storage capacity, and allows square matrices of greater than order 8 to be stored.
One such firmware modification, by J-F Garnier, HrastProgrammer, and Eric Smith, is available in this posting by J-F Garnier to the Museum of HP Calculators forum. This patch allows for 195 user registers, which can store up to an order 13 square matrix.
SwissMicros provides firmware supporting even more user data registers, supporting up to order 15 square matrices, for their DM15 and DM15L calculators.
To solve a system of linear equations, invert a matrix, or calculate a matrix determinant, the HP-15C transforms a square matrix into an LU decomposition, using the Doolittle method, and in the process, may perform some row interchages. The calculator was desiged and the firmware programmed to handle square matrices no larger than order 8, so the algorithm and data structure used can yield incorrect results or hang when applied to larger matrices. For more detailed information on this issue, see SwissMicros Voyager Series User Manual, Appendix B: Matrices in Extended DM15, which quotes an explanation by J. Fossy Weinzinger.
Given that the calculator cannot provide correct results for square matrices of order greater than 8, it seems desirable that attempting these operations should instead produce an error message. The calculator already gives an Error 11 indication when attempting these operations on a non-square matrix. The firmware patch presented here will result in Error 11 if the the matrix is square but larger than order 8.
This patch works in conjunction with the Garnier/HrastProgrammer/Smith patch linked above. It may or may not work with HP-15C patches from other sources. The patch is being provided for testing. It may contain errors which could cause loss of data.
Discussion of this patch may be appropriate in this Museum of HP Calculators forum thread.
Copyright 2023 Eric Smith <spacewar@gmail.com>
SPDX-License-Identifier: CC-BY-4.0
License: https://creativecommons.org/licenses/by/4.0/legalcode
Patch version 2, 2023-01-15:
address | original data | new data |
---|---|---|
03eb | 000 | 31c |
03ec | 000 | 30a |
03ed | 000 | 18d |
03ee | 000 | 0d6 |
03ef | 000 | 10a |
03f0 | 000 | 3e0 |
13f9 | 000 | 36a |
13fa | 000 | 18d |
13fb | 000 | 0d7 |
13fc | 000 | 010 |
13fd | 000 | 250 |
13fe | 000 | 3ad |
13ff | 000 | 00e |
3561 | 36a | 3e5 |
3562 | 3a0 | 04e |
THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM “AS IS” WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
Copyright 2023 Eric Smith <spacewar@gmail.com>
Last updated 2023-01-14