IC・トランジスタで出来たコンピューターを設計・製作するためのブログ
Jeans & Development | 電子ブロック工房 | 三日坊主 | フロントページ |
KM-Z80 midi 進捗:Fuzix [Z80]
2019年11月1日
KM-Z80 midi 用のアプリケーション第三弾、FZ/KM midi (Fuzix 実行環境)を製作中。特徴は、次の通り。
1)Fuzix ver 0.3 (Tom's SBC用) が走る。
2)ディスプレイは液晶表示(NTSCビデオは非対応)
3)Fuzix内ではRAM領域に64K bytesを割り当て
4)USBメモリー上のディスクイメージファイルを仮想ドライブとして使用
5)仮想ドライブは、128 Mbytes のサイズ
実行中の様子。

使用方法は、FZ/KM webとほぼ同じ。
1)Fuzix ver 0.3 (Tom's SBC用) が走る。
2)ディスプレイは液晶表示(NTSCビデオは非対応)
3)Fuzix内ではRAM領域に64K bytesを割り当て
4)USBメモリー上のディスクイメージファイルを仮想ドライブとして使用
5)仮想ドライブは、128 Mbytes のサイズ
実行中の様子。

使用方法は、FZ/KM webとほぼ同じ。
KM-Z80 midi 進捗:CP/M [PIC]
2019年9月25日
KM-Z80 midi 用のアプリケーション第二弾として、CP/KM midi (CP/M 2.2 実行環境)を製作している。特徴は、次の通り。
1)CP/M ver 2.2 (54k system) が走る
2)KM-Z80 midi 上で走る、スタンドアローン設計
3)ディスプレイは液晶表示(NTSCビデオは非対応)
4)RAM領域に56K bytesを割り当て
5)USBメモリー上のディスクイメージファイルを仮想ドライブとして使用
6)仮想ドライブは、1954K bytesの物を4つ割り当て
実行中の様子。MBASICから、STARTREKを起動した。

1)CP/M ver 2.2 (54k system) が走る
2)KM-Z80 midi 上で走る、スタンドアローン設計
3)ディスプレイは液晶表示(NTSCビデオは非対応)
4)RAM領域に56K bytesを割り当て
5)USBメモリー上のディスクイメージファイルを仮想ドライブとして使用
6)仮想ドライブは、1954K bytesの物を4つ割り当て
実行中の様子。MBASICから、STARTREKを起動した。

KM-Z80 midi 進捗:液晶表示 [PIC]
2019年9月23日
KM-Z80 midi (MZ-80K 互換機)をバージョンアップし、2019年9月現在、ver 0.4としている。ver 0.1からの変更は、以下の通り。
・アプリケーションのロード機能を追加。
・緑LEDをRB0に繋がず、トランジスターなどを用いてRB1から制御するようにした。
・液晶(ILI9341・SPI接続)表示にも対応。
・RB5とRB15の機能を入れ替えた。
・CMT機能の呼び出しの際、002xhでなく04xxhを呼び出しているプログラムに対応。
・FORMなど、分割ファイルの読み込みを行なっているプログラムに対応。
・プログラムセーブ時の不具合を解消。
・ソースコードのコンパイルにおいて、XC32 ver 1.32だけでなく上位のバージョンの XC32 コンパイラーにも対応。
・回路図微修正(LCDのバックライト電圧を3.3vに)。
写真は、SPI接続のILI9341液晶(3.2 インチ)を繋いで実行している所。

・アプリケーションのロード機能を追加。
・緑LEDをRB0に繋がず、トランジスターなどを用いてRB1から制御するようにした。
・液晶(ILI9341・SPI接続)表示にも対応。
・RB5とRB15の機能を入れ替えた。
・CMT機能の呼び出しの際、002xhでなく04xxhを呼び出しているプログラムに対応。
・FORMなど、分割ファイルの読み込みを行なっているプログラムに対応。
・プログラムセーブ時の不具合を解消。
・ソースコードのコンパイルにおいて、XC32 ver 1.32だけでなく上位のバージョンの XC32 コンパイラーにも対応。
・回路図微修正(LCDのバックライト電圧を3.3vに)。
写真は、SPI接続のILI9341液晶(3.2 インチ)を繋いで実行している所。

KM-Z80 midi 制作中 [PIC]
2019年7月15日
KM-Z80 の新しいシリーズ、midiを制作中。

特徴は、以下の通り:
1)Sharp MZ-80K 互換機
2)PIC32MX270F256Bを使用した、1チップ設計
3)USB メモリーを使って、プログラムのロードとセーブが可能
4)キーボードを内蔵しており、外付けキーボード(PS/2など)が不要
5)NTSC ビデオ出力(モノクロ;40x25文字)
6)将来的に、液晶表示にも対応予定
7)将来的に、MachiKania BASICも実行可能予定

特徴は、以下の通り:
1)Sharp MZ-80K 互換機
2)PIC32MX270F256Bを使用した、1チップ設計
3)USB メモリーを使って、プログラムのロードとセーブが可能
4)キーボードを内蔵しており、外付けキーボード(PS/2など)が不要
5)NTSC ビデオ出力(モノクロ;40x25文字)
6)将来的に、液晶表示にも対応予定
7)将来的に、MachiKania BASICも実行可能予定
MachiKaniaで始めるオブジェクト指向プログラミング(その1) [MachiKania]
2019年5月5日
MachiKania ver 1.2から、使用しているBASICコンパイラーがオブジェクト指向に対応しています。MachiKaniaでは、クラスベースのオブジェクト指向プログラミングを採用しています。一つ前の記事では、クラスの使い方について書きました。ここでは、どの様にクラスを作製するかについて、述べます。この記事では、今までオブジェクト指向プログラミングを行なった事がない人でも分かりやすいような説明を、試みてみます。
クラスを作製し利用すると、何がどの様に便利になるのでしょうか。幾つか、挙げてみます。
1. 機能ごとにプログラムが抽象化・パッケージ化され、プログラム全体が見やすくなる
2. よく使う機能をクラスとして作製すれば、再利用が容易になる
3. 作製したクラスをライブラリー登録すれば、いつでも使える
最低でも、これだけの長所が挙げられます。一つ一つ見ていきましょう。
クラスを作製し利用すると、何がどの様に便利になるのでしょうか。幾つか、挙げてみます。
1. 機能ごとにプログラムが抽象化・パッケージ化され、プログラム全体が見やすくなる
2. よく使う機能をクラスとして作製すれば、再利用が容易になる
3. 作製したクラスをライブラリー登録すれば、いつでも使える
最低でも、これだけの長所が挙げられます。一つ一つ見ていきましょう。
MachiKaniaでクラスを使う [MachiKania]
2019年4月5日
MachiKania ver 1.2に於いて、使用しているBASICコンパイラーがオブジェクト指向に対応しました。MachiKaniaではこれまで、黎明期のパソコンで使われた行番号形式のBASICから、構造化プログラミングに対応したBASICまでを扱ってきました。これらのプログラミング形式に加えて、今後はオブジェクト指向プログラミングが出来るようになります。
さて、MachiKaniaのユーザーの皆様の中には、オブジェクト指向プログラミングに対してなじみが無いという方もいらっしゃると思います。この記事では、オブジェクト指向プログラミングとは何かに付いては置いておいて、この新しい機能を使うとMachiKaniaがどんな風に便利になるのかについて、紹介したいと思います。オブジェクト指向プログラミングになじみが深い方々も、MachiKania BASICではそれをどの様に扱うのか、参考にして頂けたらと思います。
MachiKaniaで採用しているオブジェクト指向プログラミングは、クラスベースと呼ばれるものです。従って、この新しい機能を使うには、クラスをどの様に使うかという理解が必要です。ここで、オブジェクト指向プログラミングになじみのない方は、「クラスをどの様に使うか」と言われてもと思うかも知れませんが、とにかく「クラス」なる物があって、それをどう使うのかが大事だということだけ理解しておいて下さい。
さて、MachiKaniaのユーザーの皆様の中には、オブジェクト指向プログラミングに対してなじみが無いという方もいらっしゃると思います。この記事では、オブジェクト指向プログラミングとは何かに付いては置いておいて、この新しい機能を使うとMachiKaniaがどんな風に便利になるのかについて、紹介したいと思います。オブジェクト指向プログラミングになじみが深い方々も、MachiKania BASICではそれをどの様に扱うのか、参考にして頂けたらと思います。
MachiKaniaで採用しているオブジェクト指向プログラミングは、クラスベースと呼ばれるものです。従って、この新しい機能を使うには、クラスをどの様に使うかという理解が必要です。ここで、オブジェクト指向プログラミングになじみのない方は、「クラスをどの様に使うか」と言われてもと思うかも知れませんが、とにかく「クラス」なる物があって、それをどう使うのかが大事だということだけ理解しておいて下さい。
MachiKania BASIC 高速化テクニックあれこれ [MachiKania]
2019年3月27日
MachiKania BASICは、インタープリターではなくコンパイラーです。なので、かなり高速に動作します。しかしながら、もっと速くコードの実行を行ないたいという場面もあるかも知れません。この記事では、開発者だから分かるBASICコード高速実行のテクニックについて、幾つかを紹介します。
MachiKania BASICのオブジェクト指向化について [MachiKania]
2019年3月25日
MachiKania ver 1.2以降では、BASICでのコーディングに於いて、オブジェクト指向プログラミングが行えるようになった。ここでは、その実装方法について、メモを残しておきたい。
MachiKania BASICでは、クラスベースのオブジェクト指向プログラミングを採用している。その文法などについては、ダウンロードファイルの「class.txt」ファイルを参照して頂きたい。
MachiKania BASICでは、クラスベースのオブジェクト指向プログラミングを採用している。その文法などについては、ダウンロードファイルの「class.txt」ファイルを参照して頂きたい。
あのCMのメロディー [MachiKania]
2018年5月26日
関西電気保安協会のメロディーを、MachiKaniaで。Type Z, Type N, 及び KM-BASIC webで再生及びひらがな表示が出来ます。


print music "GGEDDGEDGGAGAzA" USEPCG PCG 0x80,0x2020f42a,0x4a48b000 PCG 0x81,0x10102020,0x50528c00 PCG 0x82,0x08087e04,0x24403c00 PCG 0x83,0x00888482,0x82502000 PCG 0x84,0x0000807e,0x00000000 PCG 0x85,0x0e740a10,0x10080600 PCG 0x86,0x107c087e,0x24403c00 PCG 0x87,0x80be88be,0x88bcba00 PCG 0x88,0x207c203c,0x6ab26400 PCG 0x89,0x0008080c,0x38483400 gosub JPN for j=1 to 14 gosub wm gosub JPN next label waitk if inkey()=0 then waitk end DATA 0x8180,0,0,0x82,0,0x83,0,0x84,0 DATA 0x85,0,0x81,0,0x86,0 DATA 0x87,0,0x84,0,0x88,0,0x81,0 DATA 0x8986,0,0x84,0,0x8380,0 label JPN d=read() if d=0 then return label JPN2 print chr$(d % 256);:d=d/256 if 0<d then JPN2 goto JPN label wm i=music() label waitm2 wait 1 if i=music() then waitm2 return
ハンダゴテを買い換え [一般的なこと]
2017年5月20日