このページについて(ミニコン)
JavaScriptの練習に、ミニコン(HITAC10風)の操作盤っぽいのを作ってみました。動作確認はWindowsのIE6,IE7とネスケ6でしかしていません。
最近、JavaScriptはちゃんとしたオブジェクト指向言語なんだよと教えてくれる人が増えたので(もっと早く教えてくれ)、それっぽく書いてみようとしたんですが、基本がわかってないんでダメダメな感じです。練習の前に勉強が必要ですね。
命令を実行する機能はありませんので、STARTボタンを押しても何も起こりませんが、RDM,WRM,GRES,SETPCボタンは有効ですので、IPLを覚えている人は、入力して懐かしがってください。レジスタ選択スイッチは、周りの文字をクリックすると「回り」ます。
磁心記憶装置の容量は標準の4K語です。
本当は、STARTボタンを押したら、ランプをチカチカさせながら動くようにしたいんですが…、入出力をどうするかとか課題が多そうです。
下のリンク先に、本物のHITAC10の写真があります。
コンピュータ博物館:日本のコンピュータ:ミニコンピュータ:日立:HITAC 10
コンピュータらしくてカッコイイですねえ。
IPLを忘れてしまった方のために、
っていうか、普通は最初から覚えていないと思いますが…
「高校生のFORTRAN JIS3000によるミニコンのプログラミング」
編集 東京ミニコングループ 昭晃堂
という本に、HITAC10のIPLが載っていたので、無断転載しちゃいます。
OML(オブジェクトモジュールローダ)の紙テープを、データタイプライタから読み込む場合は左側、専用の読取装置から読み込む場合は右側のコードを使用します。
光学式の読取装置は高速で快適でしたが、データタイプライタから読み込んでいた人は、ちょっとイラついていたかもしれません。
印刷して、見やすい所にセロテープで貼っておきましょう(?)
無断転載ついでに、
「ミニコンピュータの知識 -導入と活用の手びき-」
堀 重雄 秋冨 勝 共著 東京電機大学出版局
から、IPLの入力手順を…と思ったのですが、こちらの本には、「無断転載・複製を禁じます」と明記されていたので、やめておきます。
まあ、ホントは明記されてなくてもダメなんですけど…。
というわけで、仕方がないので(っていうかそもそも必要ないんですが)私の言葉でIPLの入力手順の説明を…
ポイントは、読み書きするメモリのアドレス指定にPC(プログラム・カウンタ)を流用していることでしょうか。
レジスタは貴重ですし、カウンタ機能もついているから便利!スイッチも節約できますからね。
では、テープ読取機用のIPLを入力してみましょう。
(念のためもう一度書きますが、このページにプログラムを実行する機能はありませんので、IPLを入力しても実行はできません。そもそもOMLの紙テープもありませんし…)
(1) DATA SW(データ・スイッチ)に入力を行う先頭番地(0002)16をセットします(a)。
(2) SETPC(セット・PC)ボタンを押します(b)。
これにより、DATA SWの値(0002)16が、PC(プログラム・カウンタ)にセットされます。
ロータリースイッチをPCに合わせると(c)、DATA
DISPLAY(データ・ディスプレイ)ランプで、PCの値が確認できます(d)。
(3) DATA SWに(0002)16番地に入力するコード(7024)16をセットします(e)。
(4) WRM(ライト・メモリ)ボタンを押します(f)。
これにより、DATA SWの値(7024)16が、メモリのPCが示すアドレス(0002)16に書き込まれます。
PCは自動的にカウントアップされ、(0003)16になります(g)。
(5) DATA SWに(0003)16番地に入力するコード(8804)16をセットして、WRMボタンを押します。
メモリの(0003)16番地に(8804)16が書き込まれて、PCの値が(0004)16になります。
これを繰り返して、(0010)16番地までのコードを入力します。
入力が終わったら、念のため(実行できないのに…)確認をしてみましょう。
(1) 入力の場合と同様に、DATA SWに確認を行う先頭番地(0002)16をセットし、SETPCボタンを押します。
PCに(0002)16がセットされます。
(2) RDM(リード・メモリ)ボタンを押します(e)。
これにより、メモリのPCが示すアドレス(0002)16の内容がMB(メモリ・バッファ)レジスタに読み出されます。
ロータリースイッチをMBに合わせると(f)、DATA
DISPLAYランプで値が確認できます(g)。
PCは自動的にカウントアップされ、(0003)16になります。
(3) RDMボタンを押します。
(0003)16番地の内容がMBに読み出されて、DATA
DISPLAYに表示されます。PCの値は(0004)16になります。
これを繰り返して、(0010)16番地までの内容を確認します。