2007年03月31日

NSBで配列のソート(簡易版)

プロシージャの引数に変数を指定すると、プロシージャ内で引数に加えた変更内容は、変数に反映されます。(反映させないことも可)
更に引数に配列を指定すると、プロシージャ内の引数は配列変数として機能し、その内容に加えた変更は、指定した配列に反映します。
そこで、配列内容をソートすることも、次のようなプロシージャで可能になります。

もう少し発展させて、9Bのコマンドである
SORT 配列名,開始,終了,次元,順序
を代替するプロシージャにしたいなと思っています。


'Sort sample
'http://www.geocities.co.jp/SiliconValley/unibon/asp/vbscriptsort.html のページを参考にさせていただきました。

z=array(3,1,4,2,7)
print z(0),z(1),z(2),z(3),z(4) '3 1 4 2 7
sort z
print z(0),z(1),z(2),z(3),z(4) '1 2 3 4 7

sub swap(x,y)
dim d
d = x
x = y
y = d
end sub

sub sort(a)
dim i
for i=0 to ubound(a) - 1
dim j
for j=i+1 to ubound(a)
if a(j)<a(i) then 'コピーする場合は<を半角に
call swap(a(i),a(j))
end if
next
next
end sub
-----------------
sent from W-ZERO3
posted by 万願寺 at 07:52| Comment(0) | TrackBack(1) | NS Basic/CE | このブログの読者になる | 更新情報をチェックする

今日のメビウス最終回は放送時間が違います

3月31日はとうとうウルトラマンメビウスの最終回。毎週録画でみてきたんですが、なんと今日だけ放送時間が違います。(大阪だけかも知れませんが)
いつもは毎日放送で5時半からなんですが、今日に限って5時からの30分です。危機一髪で最終回を見過ごさずに済みました。

っていうか放送時間帯が違うんだったら、前の週にしつこいくらいに告知してくれたらいいのにと思うんですが、もしかしたらCMスキップをして飛ばしてしまった罰ですか?
というわけで予約変更しました。録画予約をされてる方はご注意を。
-----------------
sent from W-ZERO3
posted by 万願寺 at 00:13| Comment(0) | TrackBack(0) | 日記・コラム・つぶやき | このブログの読者になる | 更新情報をチェックする

2007年03月30日

山之内案山子さん「BokaaN! for W-ZERO3」

「BokaaN! for W-ZERO3」を早速ダウンロードしました。落ちもの系のパズルゲームなんですが最初は操作方法がわからず(マニュアルも読まずにやってしまいました)戸惑いましたが、わかってしまえばさくさくと進みます。うちの子などはサルになってしまいそうですが(^^ゞ

次回作のねこピラ!も公開心待ちにしています。(^^)
posted by 万願寺 at 22:04| Comment(0) | TrackBack(0) | W-ZERO3 | このブログの読者になる | 更新情報をチェックする

ソフコン応募作品一覧

「W-ZERO3ソフトウェアコンテスト」応募作品一覧が掲載されていますが、作者ホームページへのリンクだけで作品へのリンクはまだ貼られていないようです。
掲載許可依頼のメールでは、掲載許可の有無とホームページアドレスを聞かれただけで、作品への直リンクは聞かれていませんので、応募した作品をアップしていただけるもんだと思っているんですが・・・

私も含めて、作者ホームページに行っても応募作品がどこにあるかわからないページや、応募バージョンを公開しておられない方も多数おられます。(公表したバージョンの応募禁止だったため)
また、リストにある方は公開を許可された方だと思うのですが(応募作品数より少ないため)、作者ホームページを持っておられないためまったく公開されていない方もあります。

公開許可を受けられた作品は、なるべく早く公開していただきたいなと思っています。>ウィルコムファン

山之内案山子さんのBokaaN!の公開すごく楽しみです。(できればねこピラもCEで)

-----------------
sent from W-ZERO3
posted by 万願寺 at 08:11| Comment(2) | TrackBack(0) | W-ZERO3 | このブログの読者になる | 更新情報をチェックする

2007年03月28日

シャガ

img138.jpg今週に入って暖かくなり、春のにおいになってきました。一斉に草が芽を出したり花がつぼみをつけたりしはじめたんでしょう。

軒下のシャガも今年3年目になり、いっぱいつぼみをつけて立ち上がってきました。
同じく今年3年目のチューリップは、芽は出したんですがどうやら花芽はなさそうなので、花が咲くのは無理そうです。

芝生の草もいっぱい芽を出してきて、今朝は両手いっぱい草取りしました。休みにはアサガオの種も植えたいと思っています。
posted by 万願寺 at 08:07| Comment(0) | TrackBack(0) | 趣味 | このブログの読者になる | 更新情報をチェックする

2007年03月26日

9Bコマンドを代替するプロシージャ

MIザウルス用944BASICのコマンドをNS Basic用に変換するには基本的に1行づつ変換していきます。
例えば
COLORFG 255,0,0
COLORBG 0,0,255
A=COSAG(60)
B=SINAG(60)
PRINT A
PRINT B
というようなコードであれば
Output.ForeCOLOR=RGB(255,0,0)
Output.BackCOLOR=RGB(0,0,255)
A=COS(60*Atn(1)*4/180)
B=SIN(60*Atn(1)*4/180)
PRINT A
PRINT B
といった具合。
しかしこのようなコード変換をしなくとも、9Bのソースの最後の方に次のコードを挿入すれば、9Bの命令が変換なしで実行できます。

SUB COLORFG(R,G,B)
Output.ForeCOLOR=RGB(R,G,B)
END SUB
SUB COLORBG(R,G,B)
Output.BackCOLOR=RGB(R,G,B)
END SUB
FUNCTION COSAG(ag)
COSAG=COS(ag*Atn(1)*4/180)
END FUNCTION
FUNCTION SINAG(ag)
SINAG=SIN(ag*Atn(1)*4/180)
END FUNCTION

コマンドそのものを作ってしまうというのがNSBのSUBプロシージャ、FUNCTIONプロシージャというコマンドです。頻出するコマンド群をプロシージャにしてしまうと便利です。
-----------------
sent from W-ZERO3
posted by 万願寺 at 08:10| Comment(3) | TrackBack(0) | NS Basic/CE | このブログの読者になる | 更新情報をチェックする

2007年03月22日

デバイス用日本語ヘルプ ver.2007.3.22

NS BASIC Corporation(以下NSBC)にメールをしておいた方がいいんではないかという助言をいただきまして、日本語サポートへメールしてみたところ早速返事が来まして、公開してもいい旨の了解をいただきました。ただ、ファイル内にNSBCが作成したような誤解を与える文言がありましたのでそのあたりを修正しました。

私にとってNS Basic/CEはデバイス上で開発できる唯一の環境であり、それを提供してくださったNSBC、また日本語Handbookを作成されたスタッフの方には大変感謝しています。
デバイス上での開発をしておられる方自体が少ない現状においては、公式にデバイス用オンラインヘルプを作成していただくのは困難だと思いますが、モバイルプログラマーが増加して需要が高まり、公式に提供されるようになることを祈念して、普及活動に努力する所存です。
posted by 万願寺 at 18:18| Comment(0) | TrackBack(0) | NS Basic/CE | このブログの読者になる | 更新情報をチェックする

2007年03月21日

電王最後のイマジン

img136.jpg電王おもしろいですね。出てくる女の人もみんなきれいで毎週ビデオとってみてます。出てくるお姉さんは、ま、いいとして(^^;)

電車に乗ったひ弱なヒーローは、未来からくるイマジンにとりつかれて電王に変身します。ヒーローにとりつくイマジンは4人。モモタロス、ウラタロスと日本むかしばなしのヒーローから名前を付けられるんですが、次週出てくるイマジン、キンタロスは予想通りだったんですが、最後のイマジンの名前が想像できませんでした。

残るむかしばなしヒーローでメジャーなのといえば一寸法師ですが「イッスンボウス」はいまいちだし、まして「カサジゾス」はありえないし「チカラタロス、イシッコタロス、ミドッコタロス」の3人組ではマイナーすぎる。

今日、コンビニで売っていたラムネ菓子で最後のイマジンの名前がわかりました。まさか「日本むかしばなし」のオープニングから名付けるとは思いつきませんでした。
posted by 万願寺 at 15:56| Comment(2) | TrackBack(0) | 日記・コラム・つぶやき | このブログの読者になる | 更新情報をチェックする

2007年03月20日

デバイス用日本語ヘルプ ver.2007.3.20

デバイスでヘルプをみる場合、Help→Help Topicsで表示されるのですが、普通は英語で関数の解説等もほとんどされていません。日本語ヘルプはNSBCの日本語ページからダウンロードできるのですが、解説がほとんどされていないのはもちろん、バージョンも古い(NS Basic/CE 2.0)ため、活用しづらい状況です。
デスクトップIDEのヘルプがHandbookの内容が入っているのに残念な状況です。仕方なくいつも鞄にHandbookを携帯しているわけですが、ポケットに[es]をつっこんで出かけたときにはコマンドの使い方がわからず困ることがあります。

そこで日本語ヘルプを加工して、自分に使いやすいヘルプにしてみました。モバイルで開発している方はよければ試してみてください。

1)NS Basic/CEをインストールしているデバイスのフォルダ(Program Files\nsbasic\)にあるbasic.htpをbasic_org.htpに名前を変更
2)BasicHTP.zipを任意の名前でダウンロード後解凍
3)解凍されたbasic.htpを先ほどのフォルダ(Program Files\nsbasic\)にコピーします。

まだすべてのコマンドについての解説は出来てないんですが、とりあえずと言うことで、おいおい改訂していきます。

またヘルプ内リンクジャンプは出来ないようですので、上下カーソルで移動しなければなりません。ヘルプ表示直後に目次が以下のように表示されます。

・ファンクション(関数) ↓08/10 ↑22/24

これは「ファンクション(関数)」を表示するには縦表示なら「↓」を8回、横表示なら「↓」を10回、文末からなら縦表示で「↑」を22回、横表示で「↑」を24回クリックするって言う意味です。
少しは早く目的のコマンドを表示できるかと。
posted by 万願寺 at 20:50| Comment(1) | TrackBack(1) | NS Basic/CE | このブログの読者になる | 更新情報をチェックする

温故知新

保育園の発表会のビデオをDVDに焼き付けるのに、ビデオを撮ったおかあさんから、mpegファイルをUSBメモリーでもらったんですが、パソコンへコピーしている途中に「パラメータが違います。」ってエラーが出て読み込めません。4つのUSB端子のどこに挿してもだめで再起動も効果なし。

途方に暮れかけたところで、ダメもとで埃をかぶったメビウスノート(もともとWindows98だったものを2000、XPとバージョンアップしてきたもの)に読み込んでみました。すると、何度試してもだめだった70MBのmpegファイルを一発読み込み。

早速ノートとデスクトップをランでつなぎ、70MBと700MBの2つの動画を取り込みました。
やっぱりパソコンは新しければすべていいってもんではないなぁと、しみじみ思った今日この頃です。

-----------------
sent from W-ZERO3
posted by 万願寺 at 08:29| Comment(0) | TrackBack(0) | パソコン・インターネット | このブログの読者になる | 更新情報をチェックする

2007年03月18日

「史上の人達」紹介感謝します。

X01HTの日記
へぼの壷
W-ZERO3 ツールMEMO
で「史上の人達 Ver.1.1」の紹介をしていただいています。作ったアプリを、紹介いただいたり、感想メールをもらったりという反応が感じられるのが、何より励みになります。どうもありがとうございました。

なお今回バージョンアップ内容についてはW-ZERO3 ツールMEMOでまとめてくださっています。私も把握していませんでした。(^^;)

-----------------
sent from W-ZERO3
posted by 万願寺 at 13:57| Comment(0) | TrackBack(0) | NS Basic/CE | このブログの読者になる | 更新情報をチェックする

2007年03月17日

ソフトバンクショップにて

親に渡してあるケータイにスパムメールが頻繁にくるようになったのでなんとかならないかとソフトバンクのショップに行ったんですけど、なんのことか理解してもらえずすごすごと帰ってきました。
「スパイメール?いたずらメールのことですか?」「ええまあ」
いたずらメールとスパムメールは違うと思うのですが、そこから説明してると日が暮れると思ったのですが、そこから丁寧に説明すべきだったのかも・・・いずれにしても答えは出そうにありませんでしたが。

ウィルコムに比べてケータイのショップは対応がいいかなと思っていたのですが、担当者によるんでしょうね。
まこれで、ソフトバンクケータイを1回線解約する決心が付いたわけでよしとしましょう(-_-;)

-----------------
sent from W-ZERO3
posted by 万願寺 at 14:09| Comment(0) | TrackBack(0) | 携帯・デジカメ | このブログの読者になる | 更新情報をチェックする

2007年03月16日

史上の人達 Ver.1.1(NS Basic/CE@W-ZERO3[es])

【名称】
史上の人達 Ver.1.1

【概要】
日本史の主な事件と、その時代に生きた人物の年齢を一覧で表示します。カーソル操作によって時代を行き来します。人物をクリックするとその人の生きた時代の事件を表示します。

【開発環境】
NS Basic/CE version 6.5.3
W-ZERO3[es]

【インストール/アンインストール方法】
(1)インストール
NS Basic/CEのランタイムが必要です。
NS Basic/CE Downloads(http://www.nsbasic.com/ce/support/downloads.html)からRuntimeFat.ppc.exeをActiveSyncインストール済みパソコンにダウンロード(W-ZERO3の場合)し実行してください。
SijoHito.zipをW-ZEORO3に任意のファイル名でダウンロード後、解凍ツールで展開します。
SijoHito(SijoHito.nsb)をファイルエクスプローラーから実行すると起動します。
(2)アンインストール
SijoHito.nsb SijoHitoJ.csv SijoHitoT.csvを削除します。

【操作説明】
(1)画面構成
右年 :表示年の直前の事件
表示年:その年の事件
右年 :表示年の直後の事件
-----------------
表示年に生きていた人 年齢 その人の説明
-----------------
年表
(2)操作方法
カーソル↓ 1年後
カーソル↑ 1年前
カーソル→ 10年後
カーソル← 10年前
VOL- 百年後
VOL+ 百年前
決定 事件メニュ-(決定キーで選択)
人にタッチ その人の生きた時代メニュー(同上)
年表にタッチ タッチした年に移動

【取り扱い上の注意】

【その他】
W-ZERO3[es]でのみ動作を確認しています。
当アプリはフリーウェアです。
もしよろしければご感想などいただけるとうれしいです。
インストールの仕方が面倒くさくて申し訳ありません。
posted by 万願寺 at 07:16| Comment(15) | TrackBack(1) | NS Basic/CE | このブログの読者になる | 更新情報をチェックする

2007年03月15日

惜しくもソフコン落選

なんの連絡もありませんので、箸にも棒にもかからなかったんではないかと思われるのですが、ま、自分の中では「惜しくも」落選してしまった「史上の人達」なんですが、アップしておこうと、バージョンアップしたNSBで実行してみたら、オープニングの操作表示の文字が米粒のように小さくなっていました。

ver6.0@W-ZERO3[es]で組んでいたときに、PictureBoxにDrawTextで文字を書くときにやたらサイズがでかくなってしまうため、操作表示の文字サイズはFontSize 6にしていました。
どうやらそれがver6.5で改善されたようです。ver6.0でFontSize 6で表示した文字の大きさはver6.5ではFontSize 12になります。

そのあたりを修正して、近日公開します。

-----------------
sent from W-ZERO3
posted by 万願寺 at 08:32| Comment(1) | TrackBack(0) | NS Basic/CE | このブログの読者になる | 更新情報をチェックする

2007年03月14日

フルパスでファイルを指定する場合

ファイルを指定する場合フルパスで指定しないとだめみたいなんですが、ファイルの所在が結構わかりづらいような気がします。

W-ZERO3でBASIC EditorのSave Asで保存する場合は、

フォルダ:なし 場所:メインメモリ の場合
\My Documents\○.nsb
フォルダ:なし 場所:miniSD彊爪 の場合
\miniSD彊爪\○.nsb
フォルダ:NSB 場所:メインメモリ の場合
\My Documents\NSB\○.nsb
フォルダ:NSB 場所:miniSD彊爪 の場合
\miniSD彊爪\NSB\○.nsb

って具合です。ちなみに
\NSB\○.nsb
に保存してファイラ等から実行することは出来ますが、BASIC Editorで読み込み等が出来ないため、モバイル開発をする場合、作成途中のファイルを置くには便利が悪いと思います。

nsbファイルの保存場所は
msgbox currentpath
ってコマンドを追加して実行すればみることが出来ます。
-----------------
sent from W-ZERO3
posted by 万願寺 at 07:52| Comment(0) | TrackBack(0) | NS Basic/CE | このブログの読者になる | 更新情報をチェックする

2007年03月13日

ファイルから読み込むサブルーチン

MI-Zaurus用開発言語944BASICなら、配列変数にファイルを読み込むにはDIMであらかじめ配列を宣言しておけば、
LOADCSV "ファイル名",二次元配列名
LOADTEXT "ファイル名",一次元配列名
とするだけで良かったので簡単だったのですが、NSBでは結構面倒くさい。
で、汎用的なサブルーチンを作ってみました。
ソースの最後(ビジュアルデザイナー生成コードの前)にでも
'*** Babs LOADCSV LOADTEXT Code ***
以下の行をコピーしてもらったら、サンプルのようなコードだけでファイルを読み込むことが出来ます。もしよければ使ってみてください。


=======LoadSample.nsb======
DIM yomyo(300),i
LOADTEXT "YomyouHaD.csv",yomyo
FOR i=0 TO 10
OUTPUT.DRAWTEXT yomyo(i)
NEXT

'*** Babs LOADCSV LOADTEXT Code ***
'あらかじめDIMによる読み込むデータ数以上の
'配列の確保が必要です。
'LOADCSV "ファイル名",二次元配列名
'LOADTEXT "ファイル名",一次元配列名

DIM babP
SUB LOADCSV(babF,babV)
DIM babw,babi,babj
ADDFILE
File.Open babP & babF,1
If File.lof > 0 Then
While Not File.EOf
babw = SPLIT(File.LineInputString(),",")
FOR babj=0 TO UBOUND(babw)
babV(babj,babi)=babw(babj)
NEXT
babi=babi+1
Wend
End If
File.Close
END SUB

SUB LOADTEXT(babF,babV)
DIM babw,babi
ADDFILE
File.Open babP & babF,1
If File.lof > 0 Then
While Not File.EOf
babV(babi) = File.LineInputString()
babi=babi+1
Wend
End If
File.Close
END SUB

SUB ADDFILE
IF ISEMPTY(babP) THEN
AddObject "filesystem"
AddObject "file","file"
END IF
babP = Left(currentpath,instrrev(currentpath,"\"))
END SUB
'*** End Babs Code ***
posted by 万願寺 at 08:08| Comment(0) | TrackBack(0) | NS Basic/CE | このブログの読者になる | 更新情報をチェックする

2007年03月12日

太閤さんの兜

img120.jpg父から頼まれて、去年、大阪城天守閣に電話して太閤さんの兜の写真を送っていただいたんですが、先日実家に帰りましたらこんなんを作っておりました。多趣味な古希です。
posted by 万願寺 at 17:54| Comment(0) | TrackBack(0) | 日記・コラム・つぶやき | このブログの読者になる | 更新情報をチェックする

画像を表示する方法

そのうち画像を使ったアプリもNSBで作りたいとは思っているのですが、長男の卒園を控えてなかなか開発の時間がとれなくて・・・。(歴史に興味を持ちはじめて、そちらにはまってるともいえるのですが)

とりあえず画像表示方法を検討してみました。
コマンドは1行で済みます。(ファイルをロードするときのような準備は要りません。)

output.picturebox ファイル名,画像左上座標横,画像左上座標縦
ただしファイル名はフルパスで指定する必要があるようです。カレント(nsbファイルと同じフォルダの中)にあるファイルを表示するなら、

cPath = Left(currentpath,instrrev(currentpath,"\"))
output.drawpicture cPath&"test.bmp",0,0

とこんな感じ。

output.drawpicture cPath&"test.jpg",100,0
output.drawpicture cPath&"test.gif",200,0

っていう風にビットマップ(bmp)ファイルだけではなく、jpeg(jpg)ファイルやgifファイルも同様に表示できます。
-----------------
sent from W-ZERO3
posted by 万願寺 at 06:43| Comment(1) | TrackBack(1) | NS Basic/CE | このブログの読者になる | 更新情報をチェックする

2007年03月11日

ID-01 OSインストール

img119.jpg組立作業も佳境には入ってきまして、52号でOSのインストール。
CDからパソコンを経由して、USBとシリアルケーブルでID-01に送るんですが、今時のパソコンにシリアル端子みたいついていませんので、数年前まで使っていたメビウスノートを引っ張りだしてきました。ところがCDドライブが壊れていて読み込めません(T_T)
結局、旧ノートと現役パソコンをLANでつないで、パソコンのCDドライブから何とかOSのインストールが完了しました。
posted by 万願寺 at 08:26| Comment(2) | TrackBack(1) | ロボット・工作 | このブログの読者になる | 更新情報をチェックする

2007年03月09日

今更ながらNS Basic/CE 6.5 にバージョンアップ

NS Basic/CE のバージョンが7になったため、パッケージで購入したバージョン6が無料バージョンアップ対象から外れてしまいました。せめて無料でできる最終バージョンにしたいとkuranetさんところで相談したところ日本語サポートのことを助言いただき、メールしてみました。
nipponsupport@nsbasic.com

サポートより、バージョン6.5のインストールファイルのリンク先とパスワードの返信をもらって無事ダウンロードできました。

インストール方法はこちらを参照して。
Windows Mobile 5 とPocket PC のインストール
パソコン用のバージョンアップにはシリアル番号は必要ありませんでしたが、デバイス側には必要でした。
また、BASICをスタートメニューに設定していたのですが、バージョンアップ後起動できなくなったため、「設定」→「メニュー」からチェックをはずそうとしたのですが、出来ませんでした。ファイラで\Windows\スタート メニュー\BASIC.lnkを削除しました。あらかじめチェックをはずしておいたら良かったのかもしれません。

6.0.3であったバージョンが6.5.3にあがりました。日本語パッケージ版を購入された方でバージョンアップされてない方はは、一度サポートへメールされてみてはいかがかと思います。機能的にどう向上したかは定かではありません。(^^;)
-----------------
sent from W-ZERO3
posted by 万願寺 at 08:50| Comment(3) | TrackBack(0) | NS Basic/CE | このブログの読者になる | 更新情報をチェックする