IC・トランジスタで出来たコンピューターを設計・製作するためのブログ

Jeans & Development 電子ブロック工房 三日坊主 フロントページ

KM-BASIC web ver 0.5 [MachiKania]

2016年2月21日

MachiKania 1.0に搭載のBASIC KM-1120に対応した、KM-BASIC web ver 0.5を公開しました。

使い方は、以前のKM-BASIC for MIPSに同梱されていた物と同じです。KM-1120で新たに追加された命令、USEPCG, PCG, WAIT, SCROLLを使えるようにして、いくらか不具合修正をしています。

以下、KM-BASIC webを使う上での注意点です。主に、MachiKania 1.0との違いについてです。

・ 割り算を行なう場合は、演算結果を()で囲って下さい。これにより、演算結果が 必ず整数になります。
・ GOSUB()関数は、一つのステートメントの中で2回以上使わないで下さい。
・ INPUT$()関数の戻り値は、変数に代入して使って下さい。直接PRINT命令を使用す ると(そういうプログラムはほとんど無いと思いますが)、同じ内容が何回も画 面に表示されます。
・ パレット番号は、15迄が有効です。

KM-BASIC web 0.5の実行及びダウンロードは、ここから出来ます。
http://hp.vector.co.jp/authors/VA016157/kmbweb05/

MachiKania ver 1.00 の紹介 [MachiKania]

2016年2月6日

ケンケンさんと共同で開発したBASIC搭載カラーゲームシステム、マチカニア(MachiKania)が、公開になりました。こちらでも、紹介させて頂きます。

マチカニアは、ビデオ端子のあるテレビと、PS/2キーボードをつなぐことで、それ単体でBASICプログラムを作成したり、色々なテレビゲームを楽しんだりすることの出来る、小型コンピューターシステムです。
2016-02-06-MachiKania.jpg
私が製作した物は、6.5 cm x 9.5 cm x 4 cmほどの小さな筐体に収まっています。
使い方やソフトのダウンロードなどはケンケンさんが公開なさっているwebページに譲るとして、ここでは、私が担当したBASIC コンパイラー KM-1120 (KM-BASIC)の技術的なことに関して述べます。

KM-BASIC for MIPS ver 1.1 [電子ブロック工房]

2015年12月23日

ケンケンさんのSDカードブートローダーのRev.2に対応し、かつ、PS/2キーボードの使用に対応した、KM-BASIC for MIPSのver 1.1を公開しました。ダウンロードの為のリンクは、記事の最後にあります。

2015-12-23-canvas.png
(キャプチャー画面は、HTML5によるエミュレーターからのものです。)

KM-BASIC for MZ80K/MZ-700 ver 0.8を公開 [Z80]

2015年12月10日

Z80用KM-BASICのver 0.8を公開しました。
http://www.vector.co.jp/soft/other/other/se499422.html

主な変更点は、以下の4つの関数を追加したことです。
・VAL()
・DEC$()
・INKEY()
・INPUT$()

初期のバージョンは、ユーザーからの入力を受け付ける機能がなく、そういったプログラムはマシン語を挿入するなどしないと出来ませんでした。これはうっかりしていました。Star Trek(ゲーム)でも作ろうかなと思って色々見ていた時に気がついた次第です。
今回のバージョンでそれを導入したので、ある程度のプログラムならまともに書けるようになったかなと思っています。

トランジスターCPU、NAND6TRの全回路図 [一般的なこと]

2015年6月21日

半導体としてトランジスターのみを使ったCPUを作成中。NAND6TRと名付けている。写真は、クロック作成部まで完成したところ。
2015-06-21-IMG_0866_s.jpg

NMOSで作った、ジョンソンカウンター [デジタル回路]

2015年5月25日

MOSFET-Nを53個用いて、3つのFFを持つジョンソンカウンターを作成した。現在作成中のトランジスターCPUのクロックシグナルを制御する、大元になる部分の回路。



トランジスターを用いた回路設計がうまく行っているように思えるので、CPUの回路全体を近々公開しようかな。

NMOSで作ったD-FF [デジタル回路]

2015年5月2日

コンピューターの原理を考える上で、フリップフロップ(FF)の理解は欠かせない。FFの安定動作は、CPU全体の安定動作に必須の条件だ。トランジスターでどの様に回路を組めば、FFが安定して動作するかを考察・実験してみた。

ほぼ出来上がっているトランジスターCPUの回路に於いて、FFはすべて、DタイプFFとして実装している。そこで、D-FFをブレッドボード上に構築して、予想したとおり動作するかどうかを、実験した。

KM-BASIC for MIPSの紹介 [PIC]

2015年4月14日

KM-BASIC for MIPSは、PIC32MX上で動く整数型BASICコンパイラーです。ケンケンさん作成のPIC32テレビゲームシステム(以下、PIC32TVGS)上で動くアプリケーションとして作成しました。表示はテキストのみですが、カラーでの表示が可能です。BASICプログラムを機械語コードにコンパイルしてから実行するので、高速な動作が特徴です。SDカードに複数のBASICプログラムを入れておき、PIC32TVGSの選択画面で選択して実行することが可能です。SDカード上のファイルの配置方法については、ダウンロードファイルのreadme.txtを参照して下さい。記事の最後に、ダウンロードのためのリンクがあります。

NAND型 CPU [CPU]

2015年3月16日

演算がNANDと左シフトのみが可能な、6ビットCPUを考えてみた。

ここのところ、PICやLPCなどの組込みマイコンと、MZ-80Kの話題ばかり続いたが、このブログは本来、副題にもあるとおり「IC・トランジスタで出来たコンピューターを設計・製作する」ためのもので、久々にその初心の話。

NANDの組み合わせだけですべての論理演算が可能であるのはよく知られていることであり、初期のコンピューターの中には、このロジックで作成されていたものもあったらしい。

ということは、CPUで使える演算子としてNANDだけを用意しておけば良いはずで、あと、上位ビットと下位ビットとの間での情報のやりとりとして、シフト演算(左シフト)があれば、すべての演算が行える。加えて、条件分岐できれば、CPUとしての体裁が整うはずである。

この、必要最小限の機能を持ったCPUを如何にシンプルな構造で構築するかというのを、この1-2週間考えていた。

LPC810を使ったコンソール(技術編) [LPC]

2015年1月20日

先日公開した、Console 810の技術的なことに関するノート。特徴は、以下の通り。

・NXPのDIP-8の石、LPC810を使用
・モニター出力はNTSCビデオ信号
・キー入力はPS/2キーボード
・9600 bpsでのシリアル入出力
<<前の記事   後の記事>>