HP-41
HP-41Cは63レジスタのメモリを搭載していたが、ユーザーの多くは4つの拡張スロット全てをメモリ拡張(64レジスタ×4)に使ったため、他のモジュールを装備できないでいた。そこでHPは容量を4倍の256レジスタにしたメモリモジュールを発売し、1個で最大の319レジスタまでメモリ容量を拡張できるようにした。
HP-41CV(V はローマ数字の5を意味する)は当初から最大の319レジスタまでメモリを搭載し、HP-41Cに比べてメモリ容量が5倍になっており、同時に4つの拡張スロットが全て空いていた。
仕様上、メモリはそれ以上拡張できないため、HPは補助記憶装置として使える拡張メモリモジュールを設計した。そのメモリには直接アクセスできないが、その内容を本体のメモリにロードしたり、本体のメモリ上の内容をそこにセーブできる。したがって、拡張メモリモジュール上の内容は言わばファイルである。拡張メモリは最大600レジスタまで拡張可能となっている。
HP-41シリーズの最後のモデル HP-41CX ではその拡張メモリも124レジスタ内蔵し、他にも時計機能などの追加機能を内蔵していた。1983年に発売され、1990年に販売終了となった。
ヒューレット・パッカードはキーに関数名が刻印されていないバージョンも発売しており、常にキーをカスタマイズして使用する用途を意図していた。HP-41Cの社内コード名が "coconut" だったことから、この関数名が刻印されていないバージョンは "blanknut" と呼んでいた。
英数字ディスプレイによって関数名をフルに入力できるようになり、プログラムの編集も大いに改善された。それまでの数字しか表示できないプログラム電卓では、キーの位置を表す数の羅列になっていた。それをユーザーはマニュアルにある対応表を見ながら解釈する必要があった。さらに言えば、ユーザーはその数の羅列について、関数を表す数と実際の数を区別する必要があった。
HP-41C は14セグメントディスプレイで文字を表示する(7セグメントディスプレイに似ているが、7セグメントでは基本的に数字しか表示できない)。また、当時はLED表示が多かったが、HP-41C は消費電力を抑えるために液晶を使っている。このディスプレイによってアルファベットの大文字と数字と一部の記号を表示できるが、例えば "5" と "S" を区別するために若干のデザイン的工夫が必要になっている。また、アルファベットの小文字は表示できない("a" から "e" までの小文字は表示可能)。ライバルのシャープが1980年にリリースした PC-1211 は5×7ドットのドットマトリクス液晶を使い、今日コンピュータで表示するのとほとんど同じように文字を表示できた。HPがドットマトリクスを採用したのは1984年の HP-71B からである。
HP-41C には巨大なユーザーコミュニティが形成された。世界中の愛好者が新たなプログラミング方法を発見し、独自の拡張モジュールを作り、クロックアップ(オーバークロック)に挑戦した。
コミュニティの発見の1つにエディタのバグを利用して特殊な関数をキーに割り当てる方法がある。重要な関数としてバイトジャンパーと呼ばれるものがあり、プログラムの命令を通常では許されない方法で編集できる。この機能を使って命令列を生成することを「合成的プログラミング (synthetic programming)」と呼ぶ。合成的プログラミングではオペレーティングシステムが確保しているメモリにアクセスでき、マシンを完全にロックするなど様々な奇妙なことが可能である。ヒューレット・パッカードは公式には合成的プログラミングをサポートしなかったが、特に禁止もしなかった。そして最終的にはユーザーグループに対して内部文書を開示した。