2008-08-01から1ヶ月間の記事一覧

電子辞書

漢字ROMの使い道がないかと考えて、思いついたのが「辞書」です。 適当に検索して、Jim Breenさんという方が公開しているフリーの辞書をダウンロードしました。 http://www.csse.monash.edu.au/~jwb/wwwjdicinf.html#dicfil_tag 日本語/英語の辞書ファイル「…

漢字ROM

EDU mk2で漢字を表示させるとき、フォントデータをメモリカードから1文字ずつ取ってくるのは効率がよくありませんので、外部EEPROMにフォントデータを格納しようと思います。テストプログラム(edumk_2test)にEEPROM(24C1024または24C512)に「font.dat」を…

パックマンっぽいデモ4

LED表示用にパックマンっぽいデモをカスタマイズしました。 sample/pacpac4.txt キャラクタサイズを縮めて、小さい画面でも遊べるようにしています。 結局、昔作ったC言語版と同じような感じになりました。 あと、LED表示がやたらチカチカするので、最新版フ…

パックマンっぽい表示デモ3

パックマンっぽいデモに当たり判定を追加しました。 パワーエサも追加しました。取ると、モンスターが白くなって逃げます。 これで完成のつもりです。 絶対値を求めるために新しく搭載した「ABS」関数を使っています。今回のファームのバージョンアップ(nic…

パックマンっぽい表示デモ2

前回作ったパックマンっぽいゲームを改良して、モンスターを追加してみました。 全部で1796バイトです。あと200バイトくらいしか残ってません。 DIM D(20):DIM M(14):DIM T(4) DIM X1(4):DIM Y1(4) X1(0)=0:Y1(0)=-1 X1(1)=1:Y1(1)=0 X1(2)=0:Y1(2)=1 X1(3)=…

ファミコンの光線銃

人から頂いたファミコンと光線銃と「ダックハント」。 壊れてたので、分解して修理しました。ケーブルが断線してるだけだったので、直りました。 中身はICと光センサ(フォトトランジスタ?)、トランジスタなど、シンプルな構造です。 引き金を引くと、金属…

工作教室

秋葉原で電子工作マガジン創刊記念の工作教室があり、そこでお手伝いをさせて頂きました。 場所はラジオ会館。 普通の工作教室と違って、前半はアウトドア。 秋葉原駅前商店街振興組合さんのご協力で、実際に電気街を歩いてパーツ屋さんを紹介して頂きました…

bitmap機能アップ

今回のファームのバージョンアップ(nicobas20080824.zip)ではbitmap命令の機能をアップさせました。サンプル sample/BITMAP3.txt XOR表示に対応させました。下地で色が反転するので、レイヤーっぽく表示させることができます。書式は BITMAP 配列名,X,Y,he…

パックマンっぽい表示デモ。

上下左右スイッチを押して、迷路の中のキャラを動かすことができます。敵とかは居ません。 全部で935バイトです。 CLS DIM D(4):DIM M(14) D(0)=&B0110<<12 D(1)=&B1111<<12 D(2)=&B1111<<12 D(3)=&B0110<<12 M( 0)= &B111111111111111 M( 1)= &B10000000000…

シリアルポート経由のプログラム転送

シリアルポート経由のプログラム転送方法を紹介します。次の手順でやってみてください。 Dsub9pinストレートのシリアルケーブルを用意してパソコンとEDU mk2を接続します。 シリアルポートの「RX」のジャンパ(受信)をショートさせておきます。 EDU mk2側で…

PONGのサンプルプログラム

PONGのサンプルプログラムの行番号なしバージョンです(pong3.txt)。 行番号を取ったので、415バイトに縮まりました。内容的には4ヶ月前に公開したものと変わってません。 液晶画面だと、球がまったく見えません。LEDの使用をおすすめします。 X=9:Y=8:H=7:I=…

なんちゃってsin/cos

nicobas20080822b.zipで「なんちゃってsin/cos」を搭載させてみました。 書式は「SIN(角度)」「COS(角度)」です。 引数の角度はラジアンではなく度数。 戻り値は整数-255〜+255です。少数を扱えないので戻り値を整数にしてるのがミソです。 sin/cosもどきを…

ライフゲーム2

あと、前回作ったライフゲームをBITMAP命令に置き換えてみました(life2.txt)。 (50倍くらいに表示速度を上げてます。実際はこんなに早くありません) DIM X1(8):DIM Y1(8) DIM V(16) X1(0)=0:X1(1)= 1:X1(2)= 1:X1(3)= 1 X1(4)=0:X1(5)=-1:X1(6)=-1:X1(7)=-…

BITMAP2

BITMAP命令のパフォーマンスを知りたかったので、 サンプルプログラム(bitmap2.txt)を作りました。 DIM X(5):DIM Y(5):DIM X1(5):DIM Y1(5) DIM D(16) D(0)= &B0000111111110000 D(1)= &B0001000000001000 D(2)= &B0010000000000100 D(3)= &B010000000000001…

バージョンアップ3

先日に公開したEDU mk2用のNicoBASIC(自家製BASICインタプリタ)に不具合を見つけたので、修正しました。 ソースとバイナリです。 http://sourceforge.jp/projects/nicobasic/releases/・gosubとforを一度に一杯呼ぶと暴走する不具合。 →対策としてバッファを…

TETRISもどき

サンプルプログラムです。 昔、PIC-BASIC用に作った「ブロックの落ちるパズルゲーム」を移植しました。 CLS DIM B(3):DIM BK(3) DIM D(16):DIM V(16) *NEWGM D(0)= &B110000000011 D(1)= &B110000000011 D(2)= &B110000000011 D(3)= &B110000000011 D(4)= &B…

NicoBASICのバージョンアップ2

EDU mk2用のNicoBASIC(自家製BASICインタプリタ)をたて続けにバージョンアップしました。 ソースとバイナリです。 http://sourceforge.jp/projects/nicobasic/releases/

インベーダもどき

ちなみにインベーダもどきのプログラムを作ってみました。さっそく新機能のDIM命令を使っています。 1 DIM V(6):DIM W(6) 2 FOR I=0 TO 5 3 V(I)=I*10:W(I)=1 4 NEXT 5 X=15:Y=25 6 A=0:B=0 7 WHILE 1 8 CLS 9 LOCATE X,Y:PRINT "A" 10 IF B=0 THEN 11 IF SW…

nicoBASICのバージョンアップ

EDU mk2用NicoBASIC(自家製BASICインタプリタ)のバージョンアップです。 http://sourceforge.jp/projects/nicobasic/releases/ ・エディットできるデータの上限を1000→2000バイトに増やしました。 ・配列数の上限を50→200に増やしました。 ・配列名の上限を1…

ロボジョイくらぶ

ロボジョイくらぶで記事を書きました。 http://robojoy-club.com/challenge/challenge_c2_1.php

X1turboIII

X1エミュレータを動かすにあたって、 「X1持ってます」的な自己申告があったほうがいいんじゃないかと思って、写真に撮ってみました。 ▲X1 turbo III、CZ-870CBです。 2HDに対応したフロッピーディスクドライブを搭載しています。 初めて買った2HDのフロッピ…

ハイパーオリンピック

友達からファミコン本体とゲームを頂きました。 もらったブツの中に「ハイパーオリンピック」があったので、遊んでみました。 内容はもはや説明不要ですが、 ・100m走:RUNボタンを連打 ・走り幅跳び:RUNボタンを連打、最後にJUMPボタン ・ハードル競走:R…

メモリカード読み込み

EDU mk2用のnicoBasicにメモリカード読み込み機能(fopen、fread、fclose)を付けてみました。 まだ実験中です。 1 dim buf(40) 2 fopen "test.bmp" 3 fread buf,14 4 fclose 5 for i=0 to 13 6 print buf(i) 7 print "," 8 next ▲ファイルダンプの実行結果。 …

20世紀少年

さきほど新宿駅の交差点で20世紀少年のビラをもらいました。 配ってた人は「ともだち」マークのTシャツを着てました。漫画のほうの「20世紀少年」「21世紀少年」は前に人から借りて全部読みました。

ロボコンマガジン59

漫画「たくみさん」を2ページだけ描きました。

イタリアンフィーバー・アラソーイ

転載元:電波新聞社「マイコンBASICマガジン」 1993年2月号 題名:X1 turbo用「イタリアンフィーバー・アラソーイ」2プレイ専用対戦ゲームです。特徴はプログラムが短いこと、、、それだけです。 ▲タイトル画面。 ▲対戦中。お互いで相手に皿を投げつけます。 …

カモーン

ベーマガの投稿作品は「作者本人であること」「非営利であること」「転載元を明記すること」という条件をクリアすればwebで公開することができます。なので、公開してみました。「カモーン」は、古典的なパズルアクションゲームです。 対応機種はシャープのX…

ランダムRPG ニルナ・ノーグ

ベーマガの投稿作品は「作者本人であること」「非営利であること」「転載元を明記すること」という条件をクリアすればwebで公開することができます。なので、公開してみました。「ニルナ・ノーグ」は、マップや名前、敵の形状、攻撃パターンまですべて乱数で…

WindowsからX1へのプログラム転送

ベーマガの投稿プログラム作品をWindows上のエミュレータで動かそうという試みです。 今回はX1/X1 turboです。 まず、ベーマガのプログラムリストをスキャナでスキャンします。 そして、フリーソフトの「Softi FreeOCR.net」でテキストファイルに変換します …

ライフゲーム

nicoBasicで動くライフゲームです。 1 dim x1(8) 2 dim y1(8) 3 x1(0)=0:x1(1)= 1:x1(2)= 1:x1(3)= 1 4 x1(4)=0:x1(5)=-1:x1(6)=-1:x1(7)=-1 5 y1(0)=-1:y1(1)=-1:y1(2)=0:y1(3)= 1 6 y1(4)= 1:y1(5)= 1:y1(6)=0:y1(7)=-1 7 CLS 8 FOR I=0 TO 100 9 X= RND %…