では、 PiDP-11に、ターミナルを接続しましょう。オペレータ・コーンソールを持っていない方も、ターミナル接続で、ラズペリーパイにインストールしたPiDP-11を試すことができるので、マニュアルの通りインストールして、繋いでみてください。
ターミナルについての小歴史
PDP-11の時代の初期のミニコンピュータの入出力装置といえば、テレタイプという時代がありました。テレタイプと言っても、見たこともない人がほとんどでしょう。これです。ドン。
これがテレタイプの代表、その名もテレタイプ社製 ASR-33です。電動タイプライタに紙テープ読み取り装置と、紙テープ鑽孔装置(紙テープに穴を開ける装置)がついたものです。21世紀の現在でも、端末をttyと略すのは、テレタイプ時代の名残です。
紙テープとは、こんな感じのもので、穴の位置で、データを記録するものでした。
流石の前世紀の遺物などと呼ばれているBalconも、ASR-33は研究室の隅に、薄く埃をかぶって、廃棄処分を待っているものしか見たことはございません。
私がPDP−11を使っていた頃は、VT102というブラウン管表示装置とキーボードがついたものをターミナルとして使っていました。このVT102の前身であるVT100というモデルは、現在でもVT100互換ターミナルソフトとして、名残をとどめています。
21世紀の時代にこれらの装置は、もう入手困難になってしまいました。
実際には、21世紀のターミナルをPiDP-11に繋いで、操作してみます。
PiDP-11には、Windows PC、 Mac、 タブレットで接続することになります。装置はなんでもいいのですが、SSHプロトコールが使えるVT100互換ターミナルエミュレータが必要になります。代表的なものは、Windows では、Teraterm、puTTY, Macでは、純正のターミナルを使って、SSHでPort 22に接続します。 ユーザは、pi 、パスワードは類推困難なものにしてください。
Balconは、PiDP−11の走っているラズベリーパイに、puTTYをインストールして使っています。
sudo apt-get install puttyで簡単にインストールできます。
設定をお好みにいじって、localhostにユーザ名piでログインします。
ユーザ piで、PiDPに接続すると、こんな画面になります。(再起動した時点で、simhは、サーバとして既に走っています。)
現在、idled というデモプログラムが動いている状態です。この画面にインストールされているOSのリストも表示されています。これらのOSは、コンソールパネルがなくても問題なく使えるので試してみられるといいかもしれません。Balconは、Bare Metal で運用するので先に進みます。
コントロールキーとEキーを同時に押すと、ENABLE/HALTキーをHALT側に倒したのと同じ状態になります。(コンソールパネルがなくても使えます。)sim>は入力を即すプロンプトです。ここでコマンドを入力すると、パネルでの操作と同じように、キーボードから操作できます。
例えば、メモリに書き込んだり、メモリの内容を確認したり、プログラムを実行することができます。
簡単に、コマンドを説明します。
d 1000 063737 ↩️ ←は 1000番地 063737 を書き込む (deposit)
e 1010 ↩️ ←は 1010番地のデータを読み出す。 (examine)
e 1000-1012 ↩️ ←は1000番地から1012番地までのデータを読み出す。
g 1000 ↩️ ← 1000番地から、プログラムを開始する。 (go)
s↩️ ← 現在のプログラム・カウンターの命令を一つ実行する(single step)
c↩️← 現在のプログラム・カウンターの命令から、プログラムを実行する。(continue)
br 1006 ↩️ ← ブレーク・ポイントを1000番地に設定する。 (break point)
nob 1006 ↩️ ←ブレーク・ポイントを解除する。
show b ↩️ ←設定されたブレーク・ポイントを表示する。
などです。他にも色々な機能がありますが、simhのマニュアルをチェックしてください。
http://simh.trailing-edge.com/pdf/simh_doc.pdf
では、早速、前回の足し算のプログラムを入力してみましょう。
ざっとこんな感じです。depositでメモリーに書き込んで、examineでメモリ内容を確認しています。
実行はこんな感じ。
前回のコンソール・パネルのオペレーションと同じことができます。
(初めての機械語の巻につづく)
※コメント投稿者のブログIDはブログ作成者のみに通知されます