SHARP PC-1417G の使い方

SHARP PC-1417G に関する記事です。主にマニュアルを紛失して使い方がわからなくなった方への情報です。

このトピックでは文字が黄色のキーはSHIFTキーを押した後にキートップの文字のキーを押すことを意味しています。 例えば@SHIFT+Iを意味します。



SHARP PC-1417G シリーズ諸元

記事中で扱っているのは PC-1417G ですが、PC-1445 でもこのページの記事が一部通用する所があると思います。

PC-1417G には PC-1445 という兄弟機とも呼べる一般販売モデルや、前モデルの PC-1416G とその一般販売モデル PC-1440 というよく似た機種があります。

機種 アセンブリ言語 電卓機能 統計機能 定数計算
PC-1440 CAP-X あり 1 変数および 2 変数 なし
PC-1416G なし 1 変数のみ なし
PC-1445 CASL LOGIC 電卓 なし なし
PC-1417G なし 1 変数のみ あり

後に出たモデルがスーパーセットになっている訳ではありません。内部構造も PC-1440 / PC-1416G、PC-1445 / PC-1417G のような同期モデルではよく似ていますが、前後モデルではそこまで似ていません。CAP-X を CASL に変えただけのマイナーチェンジというだけではなさそうです。


スペック

SHARP PC-1417G のスペックは以下の通りです。

機能 PC-1417G PC-1445
CPU SC61860 (768KHz)
RAM 8KB
液晶ディスプレイ 24桁 / 1行
(5x7 ドットマトリクス)
インターフェィス ペリフェラルポート 11ピン (2.54mm ピッチ)
バッテリー CR2032 x 2
消費電力 0.03W
本体寸法 170(W)×72(D)×9.5(H)mm
本体重量 約150g
価格 - ¥17,800
発売年 1986 1986


使い方

とりあえず電池の入れ方からでしょうか?


電池の入れ方

電池はCR2032 が 2 枚必要です。裏蓋を外し、さらに電池押さえをスライドさせると電池を交換できます。バックアップ電池はありませんので、電池交換をすると RAM の内容が消えてしまいます。

電池交換直後は画面が化けたり、BUSY シンボル (インジケーター) が点灯したままの状態になっていたりするので、何もキーを押さずに電源スイッチの下にある ALL RESET ボタンを押してください。

今でこそ CR2032 は 100 円ショップで 3 枚 110 円で売られていたりしますけど、当時はそこそこ高かったんですよねぇ...。


電源の ON / OFF

電源の ON / OFF は本体左上のスライドスイッチで行います。

電源 ON の状態でも何もせずにしばらく放置すると勝手に電源が OFF になります (オートパワーオフ)。オートパワーオフから復帰するには、ON(BRK)を押してください。


モード切替

PC-1417G には 2 つの動作モードがあります。モード切替は本体左側にあるBASICで行います。

モード ボタン 説明
RUN モード BASIC 電卓として使ったり、プログラムの実行を行います。
PROGRAM モード プログラムの入力を行います。
CASL モード SHIFTBASIC CASL プログラムの入力や実行を行います。

BASIC の RUN / PROGRAM モードはBASICキーでトグル切り替えです。


ファイルの操作

ファイル操作は [RUN] モードで行います。

プログラムの実行

メモリ上の BASIC プログラムは RUN コマンドで実行できます。RUN コマンドの書式は以下の通りです。

RUN [{行番号 | ラベル}]

RUN コマンドは RUN モード (RUN) で実行します。プログラムモード (PRO) になっている場合にはスライドスイッチを切り替えて押して RUN モード (RUN) にする必要があります。

引数として行番号を指定すると BASIC プログラムの途中から実行する事ができます。BASIC プログラムを終了させるにはBREAK(ON) キーを押します。

データレコーダー (カセットレコーダー)

PC-1417G はメモリ上のプログラムをデータレコーダー (カセットレコーダー) へ保存したり、

CSAVE ["ファイル名"][,"パスワード"]

逆に読みこんだりできます。

CLOAD ["ファイル名"]

非公開命令ですが、メモリブロックをそのままバイナリファイルとして保存したり、

CSAVEM ["ファイル名";]開始アドレス, 終了アドレス

逆に読みこんだりする事もできます。開始アドレスを省略すると CSAVEM で保存した際の開始アドレスに読み込まれます。

CLOADM ["ファイル名";][開始アドレス]

CLOAD / CSAVE 系の命令を使うには以下のいずれかの機器が必要です。

周辺機器 カセットインターフェイス カセットレコーダ プリンタ
CE-124 - -
CE-126P -
CE-129P -

CE-124 / CE-126P と接続して使う、データレコーダ CE-152 (コンパクトカセット) / CE-127R (マイクロカセット) もあります。


[電卓] モード (BASIC)

簡易電卓として使うのであれば RUN モードにします。一般的な関数電卓とは操作方法が異なりますが、ポケコンに慣れた方はこちらの方が好みかもしれませんね。

キー キー入力 意味 備考
09 数値 -
小数点 -
EXP 指数入力 - 指数入力を行う。例えば 1.2E-4 (1.2×10-4) を入力したい場合、
 
12EXP-4
 
と入力する事で 0.00012 を入力できる。
除算 value1 value2
乗算 value1 value2
減算 value1 value2
加算 value1 value2
CL クリア - 表示されている値がクリアされる。エラー表示のクリアにも使う。
CA SHIFTCL クリアオール - すべての計算内容をクリアする
F⇔E 表示方式指定 - 押すたびに 通常表示と指数表示を切り替える。
TAB SHIFTF⇔E 小数点位指定 - 表示方式が通常表示時の小数点位を指定する。SHIFTF⇔E5 だと小数点第5位の表示となる。
( / ) 演算順序指定 - 演算の順序を指定する。例えば (1+2)*3 のような場合に使う。
CONST 定数計算 定数式 CONST 定数式の登録や確認を行う (後述)。
R・CM リコール・クリアメモリー - 独立メモリーの値を呼び出す。もう一度押すと独立メモリーの値をクリアする。
M+ メモリープラス value M+ 表示されている値を独立メモリーの値に加算する。
ENTER 計算実行 -

関数電卓のように使うにはさらに以下のキーを使います。

キー キー入力 意味 備考
DRG SHIFT 角度単位変更
DEGREE DEGREE (度) DEGREEENTER で角度の単位を度に変更。DEG のシンボルが点灯する。
RAD RAD (ラジアン) RADENTER で角度の単位をラジアンに変更。RAD のシンボルが点灯する。
GRAD GRAD (グラード) GRADENTER で角度の単位をグラードに変更。GRAD のシンボルが点灯する。

次の演算子も使えます。これらの演算子は BASIC プログラム内でも使えます。

キー キー入力 意味 備考
AND AND (論理積) value1 AND value2
NOT NOT (否定) NOT value
OR OR (論理和) value1 OR value2

次の関数も使えます。これらの関数は BASIC プログラム内でも使えます。

キー キー入力 意味 備考
ABS SHIFT/ ABS (絶対値) ABS value
ACS SHIFTCOS ACS (逆余弦: arccos) ACS value
archypCOS SHIFThypCOS AHC (逆双曲線余弦) archypCOS value
archypSIN SHIFThypSIN AHS (逆双曲線正弦) archypSIN value
archypTAN SHIFThypTAN AHT (逆双曲線正接) archypTAN value
ASN SHIFTSIN ASN (逆正弦: arcsin) ASN value
ATN SHIFTTAN ATN (逆正接: arctan) ATN value
COS COS (余弦) COS value
CUB CUB (3 乗) CUB value
CUR SHIFTCUB CUR (立方根) CUR value
DEG DEG (度分秒→10進数度) DEG value
DMS SHIFTDEG DMS (10進数度→度分秒) DMS value
EXP SHIFTLN EXP (指数: ex) EXP value EXPボタンでは E が入力されるだけ。
FACT SHIFTRCP FACT (階乗: n!) value FACT
hypCOS HCS (双曲線余弦) hypCOS value
hypSIN HSN (双曲線正弦) hypSIN value
hypTAN HTN (双曲線正接) hypTAN value
INT SHIFT* INT (整数化) INT value
LN LN (自然対数: loge) LN value
LOG LOG (常用対数: log10) LOG value
NCR SHIFTNPR NCR (組み合わせ) NCR(n,r)
NPR NPR (順列) NPR(n,r)
π PI (円周率) π ※擬似変数
POL SHIFT^ POL (直交座標→極座標変換) POL(X,Y)
RCP RCP (逆数: 1/x) RCP value
REC SHIFT( REC (極座標→直交座標変換) REC(r,θ)
RND SHIFTπ RND (ランダム) RND value
X が負数の場合 直前に発生した乱数 (あるいは乱数列) と同じ乱数を発生させるために初期値を一定にする。
X が 0 から1 未満の場合 0 から 1 未満の乱数を発生させる。
X が1 以上の整数の場合 1 から X の値以下の乱数を発生させる。(1 ≦ RND X ≦ X)。
X が1 以上の実数の場合 1 から X の整数部に 1 を加えた値以下の乱数を発生させる。(1 ≦ RND X ≦ (INT X) + 1)
ただし、この場合は小数部の値によって乱数の発生に差が出る。
(-) SHIFT- SGN (符号関数) (-) value
X > 0 1
X < 0 -1
X = 0 0
SIN SIN (正弦) SIN value
冪乗 value1 value2
SHIFTSQU SQR (平方根) value
SQU SQU (2 乗) SQU value
TAN TAN (正接) TAN value
TEN SHIFTLOG TEN (指数: 10x) TEN value

※ PC-1417G のハードケースの裏は関数電卓として使うためのチートシートになっています。


統計モード

PC-1417G には統計モード (STAT) があります。統計モードに使うキーは画像の通りです。

統計モードに使うキーは以下の通りです。

キー キー入力 意味 備考
STAT SHIFTMDF 統計モード切り替え STAT のシンボル (インジケーター) が切り替わる。
DATA M+ 1 変数データ入力 value DATA
1 変数データ入力 (度数n) value n DATA 値 50 のデータを 4 件登録するには、504DATA
CD SHIFTM+ 1 変数データ削除 value CD
1 変数データ削除 (度数n) value n CD 値 50 のデータを 4 件削除するには、504CD

"1 変数"データ (x) に対する統計用のキーは次の通りです。

キー キー入力 変数 意味
) Z サンプル数
Σx SHIFT) Y サンプル (x) の総和
Σx2 SHIFTCONST X サンプル (x) の2乗和
CONST サンプル (x) の平均値
S R・CM サンプル (x) の標準偏差値。
σ SHIFTR・CM サンプル (x) の母標準偏差値。

※ 一部の統計量はメモリー (BASIC の変数) に引き継がれます。


定数計算

PC-1417G には定数計算機能があります。統計モードに使うキーは画像の通りです。

キー キー入力 意味 備考
CONST 定数登録 定数 (式) の登録を行なう。定数が登録されると CONST のシンボル (インジケーター) が点灯する。
CA SHIFTCL 定数削除 定数をクリアする。定数が消去されると CONST のシンボル (インジケーター) が消灯する。
SHIFTCONST 定数確認 現在の定数を表示する。

(2+3)+CONST」とすると、以降の計算の先頭に 5+ が追加されます。「-(2+3)CONST」とすると、以降の計算の最後に -5 が追加されます。


編集

編集に使うキーは以下の通りです。

キー キー入力 意味 備考
/ 行アップダウン PROGRAM モードで、カーソルを上下に移動する。BASIC のリストを移動するのに使われる。
/ 左右カーソルシフト カーソルを左右に移動する。ENTERで計算を実行した直後に押されると、直前に実行した計算式を呼び戻す。
DEL SHIFT 削除 カーソル位置の文字を削除する。
INS SHIFT 挿入 カーソル位置に文字を挿入できる場所を確保する。確保された場所はカーソルの形状が変わる。

定義付けキー

定義付けキーに使うキーは以下の通りです。

キー キー入力 意味 備考
DEF 定義キー 定義付けキーを押す前に押すキー。DEF のシンボルが点灯する。
A=, Z  定義付けキー DEFに続けて押されると、BASIC プログラムは対応するラベルから実行される。キーQPは定義付けキーとして使えない。

次のような BASIC プログラムがあった場合、

10: "A": PRINT "FIZZ": END
20: "S": PRINT "BUZZ": END
30: "D": PRINT "FIZZBUZZ": END

RUN モードで、DEFAを押すと "FIZZ"、DEFSを押すと "BUZZ"、DEFDを押すと "FIZZBUZZ"と表示され、DEFFを押すとラベルが定義されていないのでエラーとなります。

定義付けキーと共に、AREAD 命令が使われる事があります。AREAD 命令は定義付けキーでの実行前に画面に表示されていたものを変数に読み込みます。この機能により、プログラムに引数を渡す事ができます。

AREAD 変数

次のプログラムをC・CE3DEFA で実行すると、

10 "A": AREAD V
20 PRINT V * 2

"6" が表示されます。RUN で引数を渡して実行する事はできません (そもそも "3 RUN" となってしまう)。



ハードウェア

カセットインターフェイス CE-124

CE-124 は幅広い機種で使えるカセットインターフェイスです (現物を所持していないので、サービスマニュアルの画像です)。

今となっては入手難の CE-124 を探すより、後述の『ポケ POWER +』 を購入するのが便利でいいと思います。はんだ付けが苦手でないのなら、自作してみるのも手だと思います。

ブレッドボードで構築する事もできますし、基板を使った場合でも \2,000円程度で作れます。

See also:


ポケ POWER +

ポケ POWER + は CR2032 を 2 枚使うポケコン用の外部電源です。カセットインターフェイス付きのものと付いていないものがあります。

See also:


プリンタ/カセットインターフェイス CE-126P

CE-126P はプリンタ/カセットインターフェイスです。

See also:



ソフトウェア

Pocket Tools

Pocket Tools はポケコン用の各種ツールの集合体です。CE-124 等のカセットインターフェイスさえ持っていれば、PC との連携が可能になります。

次に挙げる機能がカセットインターフェイスが利用可能な SHARP 製ポケコンすべてにおいて利用可能です。すべてです。PC-1210 から PC-850S までもれなく利用できます。

PStart.exe が Pocket Tools の本体です。実行したらまずは "Edit SHARP SETtings" で環境設定を行います。お持ちの機種のコメントをアンコメントします。PC-1417G は PC-1445 の設定が使えます。

rem set SHARPC=1100
rem set SHARPC=1246DB
rem set SHARPC=1211
rem set SHARPC=1245
rem set SHARPC=1251
rem set SHARPC=1260
rem set SHARPC=1262J
rem set SHARPC=1350
rem set SHARPC=1360K -o%KEYDIR%\KANJI.cfg
rem set SHARPC=1401
rem set SHARPC=1402
rem set SHARPC=1403
rem set SHARPC=1421
set SHARPC=1445

Pocket Tools が想定しているツールで、Pocket Tools のアーカイブに含まれていないものは以下の通りです。

用途 ソフトウェア
テキストエディタ PSPad
バイナリエディタ PSPad
WAV ファイル録音/編集 Audacity

自分の好きなツールを登録して使っても構いません。[Edit | Edit...] で、メニューの中味を編集する事ができます。


Audacity

フリーのサウンド編集ソフトです。CSAVE / CSAVEM された音声を録音/編集するのに使います。

ポケコンの CSAVE / CSAVEM を取り込む前に次の設定を行った方がいいと思います。

取り込み手順は、

  1. PC-1417G で CSAVE または CSAVEM を実行できる状態にしておく。
  2. Audacity の録音ボタン () を押す。
  3. PC-1417G 側でENTERキーを押して CSAVE または CSAVEM を実行。
  4. PC-147G 側でプロンプト (>) が表示されたら Audacity の停止ボタン (■) を押す。
  5. 取り込んだサウンドの前後にある、無音部分やノイズが乗った部分をカット (任意)。
  6. [ファイル | 書き出し | WAV として書き出し] で、*.wav 形式で保存。

となります。音声ファイルの形式は PC-147G が取り込めるのなら *.wav 以外でも構わないのですが、Pocket Tools の事を考えると *.wav 形式で保存した方が便利です。

取り込んだ音声ファイルは、Pocket Tools で BASIC ソースや SHARP バイナリに変換し、それをさらに Pocket Tools で *.wav 形式で出力する事でキレイな音声ファイルにする事ができます。実機に取り込めないような音質の悪い音声ファイルでも BASIC ソースや SHARP バイナリに変換できる事があります。音声ファイルの前後の無音部分やノイズも取り除けるのでオススメです。


ROM の吸出し

PC-1417G に対応したエミュレータはなさそうなのですが、メモリマップが判っているので吸い出しておくといいでしょう。

PC-1417G での ROM イメージ作成手順を以下に示します。PC-1445 でも同じように ROM 吸い出しを行えます。作業は Windows 上で行います。

  1. Pocket ToolsAudacity が使える状態にしておく。
  2. 内部 ROM (0000~1FFF) を 1KB ずつ吸い出す。デジホリの blog にあった BASIC プログラムをちょっと改変したものを Pocket Tools を使って PC-1417G に転送。

    100 H=&42:L=&00
    110 D=&400
    120 G=256:A=H*G+L:E=32768*(H>=128):F=D/G
    130 B=A+32:J=B/G:K=(B-E) AND &FF
    140 C=B+16:M=C/G:N=(C-E) AND &FF
    150 POKE A,0,3,16,J,K,132,24,7
    160 POKE A+8,2,F-1,52,2,255,52,0,1
    170 POKE A+16,130,19,4,8,144,53,144,219
    180 POKE A+24,4,38,47,13,47,18,55
    190 POKE B,0,0,N,M
    200 BEEP 2:FOR I=0 TO 32-F STEP F
    210 PRINT I/F: POKE B+1,I: CALL A
    220 CSAVE M C,C+D-1: BEEP 1
    230 NEXT I: BEEP 3
    
  3. 転送した BASIC プログラムを実行すると、最初に 2 回 BEEP が鳴る。これで準備完了。ENTER を押すと CSAVEM が始まるので、Audacity で録音して WAV 形式で保存 (INT01.wav のような連番の名前にしておくと判りやすい)。1KB 毎に BEEP で止まる。これを 8 回。1 回 40 秒弱。最後に BEEP が 3 回鳴ってプロンプトが出たら終了。
  4. 保存した *.wav ファイルを Pocket Tools で SHARP バイナリ形式 (*.IMG) に変換 ("Convert wav file to binary imagefile + parameter file" を実行)。
  5. 1KB の IMG ファイルが 8 つできたと思うので、これを結合。コマンドプロンプトから、
    COPY /b INT01.IMG + INT02.IMG + INT03.IMG + INT04.IMG + INT05.IMG + INT06.IMG + INT07.IMG + INT08.IMG INTERNAL_ROM.IMG
    のようにして結合する。間違って *.CFG ファイルを指定しないように注意。これで内部 ROM イメージ INTERNAL_ROM.IMG (8KB) が完成。
  6. 2000~7FFF の領域のフィラーファイルを作成する。コマンドプロンプトから、
    fsutil file createnew FILLER.IMG 0x6000
    のようにしてフィラーファイル FILLER.IMG (24KB) を作る。
  7. 外部 ROM (8000~FFFF) を 8KB ずつ吸い出す。デジホリの blog にあった BASIC プログラムをちょっと改変したものを Pocket Tools を使って PC-1417G に転送。

    100 L=&80:H=&100:D=&20
    110 BEEP 2:FOR I=L TO H-D STEP D
    120 PRINT (I-L)/D:A=I*256:B=D*256-1
    130 CSAVE M A,A+B:BEEP 1
    140 NEXT I:BEEP 3
  8. 転送した BASIC プログラムを実行すると、最初に 2 回 BEEP が鳴る。これで準備完了。ENTER を押すと CSAVEM が始まるので、Audacity で録音して WAV 形式で保存 (EXT01.wav のような連番の名前にすると判りやすい)。8KB 毎に BEEP で止まる。これを 4 回。1 回 3 分半程度。最後に BEEP が 3 回鳴ってプロンプトが出たら終了。
  9. 保存した *.wav ファイルを Pocket Tools で SHARP バイナリ形式 (*.IMG) に変換 ("Convert wav file to binary imagefile + parameter file" を実行)。
  10. 8KB の IMG ファイルが 4 つできたと思うので、これを結合。コマンドプロンプトから、
    COPY /b EXT01.IMG + EXT02.IMG + EXT03.IMG + EXT04.IMG EXTERNAL_ROM.IMG
    のようにして結合する。間違って *.CFG ファイルを指定しないように注意。これで内部 ROM イメージ EXTERNAL_ROM.IMG (32KB) が完成。
  11. すべての ROM イメージを結合する。コマンドプロンプトから、
    COPY /b INTERNAL_ROM.IMG + FILLER.IMG + EXTERNAL_ROM.IMG pc1417gmem.bin
    のようにして結合する。これで PC-1417G の ROM イメージ pc1417gmem.bin (64KB) が完成。

※ 実機が壊れた時のために ROM を吸い出しておく事をオススメします。


内部 ROM 吸出しのチューニング

PC-1417G はメモリが多いので、一度に転送する量を増やして、取り込む回数を減らす事ができます。

機種 H の値 L の値 D の値 データ量 回数
PC-1417G&42&00&8002 KB4 回
&10004 KB2 回
PC-1417G
(16KB 化)
&22&00&20008 KB1 回

プログラムの先頭にある変数 H / L / D の初期値をお好みに合わせて書き換えてください。HL の値は RAM の先頭 + &200 くらいが目安です。



Tips

イロイロ。


ASCII コード表はどうなってるの?

こうなっています。8bit ですが、カナも英小文字もありません。

&00 の文字は NUL です。&20 の文字はスペースです。CHR$ でオレンジ色の場所のコードを指定するとエラーになります。


メモリマップはどうなってるの?

こうなっています。

PC-1417G PC-1445
内部 ROM 0000~1FFF
外部 ROM 8000~FFFF
RAM 4000~5FFF
VRAM 6000~60BF

RAM の特定の領域は決められた用途で使用されているため、基本的にユーザープログラムを置く事はできません。

PC-1417G PC-1445
フリーエリア 4002~5CCF
固定変数エリア 5CD0 (Z) ~5D9F (A)
BASIC
先頭アドレスポインタ
L: 5EE1
H: 5EE2
BASIC
終了アドレスポインタ
L: 5EE3
H: 5EE4
ストリングバッファポインタ 5EF7
変数ポインタ L: 5EFC
H: 5EFD
ストリングバッファエリア 5F60~5FAF
リザーブエリア -
SIO バッファアドレス -

VRAM はこうなっています。

リニアにはつながっておらず、頻繁にアドレスの指定が変わります。

方向 開始 終了 方向 開始 終了
1↓①6000600413↑⑥60676063
260056009146062605E
3600A600E15605D6059
4600F601316↑⑦ 606C6068
56014601817↑⑧607B6077
6↓④602D60311860766072
760326036196071606D
86037603B20↑⑤60586054
9↓③6028602C216053604F
10↓②6019601D22604E604A
11601E60222360496045
12602360272460446040

シンボルは 603C、603D と 607C、607D に割り当てられています。

603C 603D 607C 607D
7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0
RAD G DE (CAL) RUN PRO HYP SHIFT DEF STAT PRINT (SIGN) CONST ( ) [M] E CASL

次のプログラムを PC-1417G で実行すると、

100 WAIT 0: PRINT " "
110 CALL &05B9
120 POKE &6000,&FF
130 POKE &6018,&FF
140 POKE &602D,&FF
150 POKE &603B,&FF
160 POKE &6028,&FF
170 POKE &602C,&FF
180 POKE &6019,&FF
190 POKE &6027,&FF
200 POKE &6067,&FF
210 POKE &6059,&FF
220 POKE &606C,&FF
230 POKE &6068,&FF
240 POKE &607B,&FF
250 POKE &606D,&FF
260 POKE &6058,&FF
270 POKE &6040,&FF
280 GOTO 280
290 END 

最初と最後、アドレスが飛んでいる箇所の境界に縦線が表示されます。

関連する非公開命令についても述べておきます。PEEK はアドレスで指定したメモリに格納されているデータを読み出します。

PEEK アドレス

POKE はアドレスで指定したメモリにデータを格納します。

POKE アドレス,データ[,データ][,データ]...

CALL は指定したアドレスから格納されている機械語プログラムを実行します。

CALL アドレス

プログラム中 (行番号 110) の CALL &05A2 は LCD を ON にするシステムサブルーチンを呼んでいます。VRAM を一括消去する最も簡単な方法は BASIC で PRINT " " を実行する事です。


ペリフェラルコネクタ (11ピン) のピンアサインは?

ペリフェラルコネクタ (11ピン) のピンアサインは以下の通りです。ピン番号は本体上から順に振っていますが、資料によってはシールドが #1、SEL1 (IB5) が #2...MTout2 が #12 になっているものがあります。

NO 端子 信号名 IN/OUT I/O
1 - MTout2 IN -
2 GND GND (+6V) -
3 VGG VGG (0V) -
4 FO1 Busy OUT OUT
5 FO2 Din OUT OUT
6 Xin MTin IN -
7 Xout MTout1 OUT -
8 IB8 Dout IN I/O
9 IB7 ACK IN I/O
10 IB6 SEL2 OUT I/O
11 IB5 SEL1 OUT I/O

通常のピンヘッダやブレッドボード用のジャンパーワイヤーを使って接続できます。


P⇔NP って何?

プリンタが接続されている時にP⇔NP(SHIFTENTER) を押すと、P というシンボルが表示され、計算過程や結果がプリンタで印字されるようになります (エラーは印字されません)。もう一度P⇔NPを押すと P のシンボルが消え、元に戻ります。


ROM バージョンを知るには?

PC-1417G には ROM バージョンはありません。


システムサブルーチンのアドレスは?

システムサブルーチンは内部 RAM に取られている演算レジスタ (8 バイト) に値を入れて呼び出します。演算レジスタは X / Y / Z の他に DRA / DRB / DRC と呼ばれる事があります。

機種 X (DRA) Y (DRB) Z (DRC)
PC-1417G &10~&17 &18~&1F &20~&27

・数値の内部表現

数値演算の場合、演算レジスタには BCD 形式で値を格納します。例えば X レジスタに格納するにはこうなります。

&10 &11 &12 &13 &14 &15 &16 &17
H L H L H L H L H L H L H L H L
指数符号 指数部 仮数符号 仮数部 補正

整数 1 はこのようになります。

&10 &11 &12 &13 &14 &15 &16 &17
H L H L H L H L H L H L H L H L
00 00 10 00 00 00 00 00

整数 12 (1.2e+1) はこのようになります。

&10 &11 &12 &13 &14 &15 &16 &17
H L H L H L H L H L H L H L H L
00 10 12 00 00 00 00 00

整数 123 (1.23e+2) はこのようになります。

&10 &11 &12 &13 &14 &15 &16 &17
H L H L H L H L H L H L H L H L
00 20 12 30 00 00 00 00

実数 0.0123 (1.23e-2) はこのようになります。

&10 &11 &12 &13 &14 &15 &16 &17
H L H L H L H L H L H L H L H L
99 80 12 30 00 00 00 00

整数 -123 (-1.23e+2) はこのようになります。

&10 &11 &12 &13 &14 &15 &16 &17
H L H L H L H L H L H L H L H L
00 28 12 30 00 00 00 00

・文字列の内部表現

例えば、X レジスタを使用する文字列の内部表現は次のようになっています。先頭 4 バイトは未使用です。

&10 &11 &12 &13 &14 &15 &16 &17
- &D0 (固定) 文字列の格納されているアドレス (LH) 文字列長

&4200 に "ABC" という文字列が書き込まれている場合、

アドレス &4200 &4201 &4202 &4203 &4204 &4205 &4206 &4207
16進値 41 42 43
文字 A B C

X レジスタの内容は次のようになります。

&10 &11 &12 &13 &14 &15 &16 &17
- - - - D0 00 42 03

・システムサブルーチン

システムサブルーチンのアドレスは次の通りです。

種別 機能 アドレス



加算 0C82
減算 84AA
乗算 84B4
除算 84BE
べき乗 84C7


EXP 84ED
SIN 84FB
COS 8502
TAN 8509
ASN 8510
ACS 8517
ATN 851E
DEG 8571
DMS 8578
ABS 8550
INT 8A65
SGN D17D
RND 857F
SQR 84F4
LOG 84E6
LN 84D0
文字 ASC
CHR$
STR$
VAL


<> D299
< D20D
> D239
= D282
<= D19C
>= D1AA

<> D294
< D1BC
> D1BE
= D246
<= D2A5
>= D197
表示 LCD ON 05B9
LCD OFF 05B5
キー スキャン 053F
サーチ 10進→2進変換
符号あり
17BD
10進→2進変換
符号なし
17C8
2進→10進変換
符号あり
151F
2進→10進変換
符号なし
1518
行番号サーチ
2進表現
C962
変数のアドレスサーチ
単純変数
1C58
変数のアドレスサーチ
配列変数
196D
印刷 プリンタリセット 9F5D
印字実行 804E

※ 引用:


CE-126P 固有の文字を印字するには?

PC-1417G では CE-126P 固有の文字 (本体の LCD では表示できない文字) を出力する事が可能です。

機械語サブルーチンを呼んでコード表を印字するコードを書いてみました。PC-1417G に CE-126P を接続した状態で次のプログラムを実行してみてください。

100 D=&80:E=&4E
110 I=&9F5D
120 O=&4200
130 F=&42:G=&0B
140 R=&10
150 POKE O+0,&10,F,G,&00,&17,&80+R,&18,&78
160 POKE O+8,D,E,&37,&20,&20,&20,&20,&20
170 POKE O+16,&20,&20,&20
180 CALL I
190 FOR Y=0 TO 15
200 FOR X=0 TO 15
210 C=X*16+Y
220 IF C=0 OR C=8 OR C=10 OR C=13 OR C=14 OR C=15 OR C=39 OR C=160 LET C=32 
230 POKE O+&13+X,C
240 NEXT X
250 CALL O
260 NEXT Y
270 END

コード表が印字されます。

呼ばれている機械語ルーチンは次のようになっています。&420B からの 24 バイトを演算レジスタ X/Y/Z にコピーし、印字実行システムサブルーチンをコールしています。

LIDP    &420B
LII     &17
LP+10   
MVWD    
CALL    &804E
RTN     

CE-126P の特殊文字は次の通りです。

16進 10進 説明
00 0 ヌル
08 8 印字データメモリクリアコマンド
0A 10 用紙送りコマンド
0D 13 印字コマンド
0E 14 (不明)
0F 15 (不明)
20 32 スペース
27 39 スペース
A0 160 スペース

カセットインターフェイス経由で保存したファイルを読み込めないのだけれど?

多くの場合、読み込み (ロード) が悪いのではなく、保存 (セーブ) したファイルに問題があるので、[マイクのプロパティ] でマイク音量を最大にし、マイクブーストも最大にして保存してみましょう。

[マイクのプロパティ] に辿り着くには、

  1. [ファイル名を指定して実行] (〔Win〕 +〔R〕) で "mmsys.cpl ,1" を実行。
  2. 目的のマイクデバイスをクリックし、右下の [プロパティ] ボタンを押下。

とするのが最も簡単です。録音レベルやマイクブーストは [レベル] タブで設定しますが、マイクブーストの設定が存在しない事もあります。

マイクブースト機能がなくても AGC (Auto Gain Control) で代用できる場合があります。

PC (のサウンドカード) に何らかの増幅機能がないと取り込みは難しいと思います。増幅機能のある USB サウンドカードを購入するか、マイクアンプを使うしかないと思います。

音質が悪い *.wav ファイルをサウンド編集ソフトでいじってもあまり状況は好転しないと思いますが、ERROR 8 で失敗するレベルの *.wav ファイルなら Pocket Tools で BASIC ソースや SHARP バイナリに変換する事はできるかもしれません。変換が可能だった場合には、それを Pocket Tools で *.wav 形式にすれば取り込めると思います。


エラーコードの意味は?

次のようになっています。

エラーコード エラー内容
1文法エラー
2演算エラー
3DIM / 範囲チェックエラー
4ライン (行番号/ラベル) エラー
5ネスト (深み) エラー
6メモリエラー (容量オーバー)
7フォーマット (書式) エラー
8入出力エラー
9その他のエラー

ハードケースの内側にエラーコードが載っています。



PC-1417G のメモリを増やすには?

PC-1417G のメモリは比較的簡単な改造で増やす事ができます。

修理記事の方に詳細があります。




ここにある情報が役に立って、「調べる手間が省けたからオマイに飯でもおごってやるよ」 というハートウォーミングな方がいらっしゃいましたら、下のボタンからどうぞ。

メニュー: