私が書き、公開しているソースは、「ソースを見た人、つまりあなた自身が思いついたもの」 と同等に扱って欲しいと思ってます。だから、私の名前を消去する他は一字一句変えずにビルドして シェアウェアとして売り出そうと、特許を出願しようと、勝手にして下さいって勢い。 わしゃそんなヘタレコード思いつかねーよ、という突っ込みは却下。
特許云々については出願するのは勝手ですが、私のソースが先に存在していたならば、 「(日本で言えば)特許法の第二十九条」 に基づいて蹴られることを期待しています。マトモに法律が運用されてれば問題ないところを、 わざわざライセンスで縛る気はしません。 相手が著作権を主張してこっちが訴えられたりするかも…という懸念についてもほぼ同様。
…だって、そこから利益をあげるつもりでもない限り、アイディアは徹底的に共有した方が楽しいでしょ? 私が「こんなん作ってみたけどどーよ?」って振ってみたら誰かがそれを活かして凄いもんを作り上げたりしてくれたらさ。 その時、足かせになる条件があったりしたら面白くない。
それに、自分のソースを誰かが密かに勝手に利用していたとしても、 別に私が何か損害を被るわけでもないですし。
Public Domain にせず修正BSDライセンスを適用する気持ちは、わかる気がするんです。 「そこに俺がいた」って印を残したいってことですよね、たぶん。 でもそれ以上にややこしい[フリー]ソフトウェアライセンスとなると、疑問。 ソースを公開しないっていうのなら、またそれはそれでありだと思うんですけどね。
Delphi 6 Personal のセットアップがようやく完了。 さて、こいつで何をしてくれようか。
Borlandの開発環境==強力なライブラリ・コンポーネント、 ってイメージが(偏見かもしれませんが)私の中にはあります。 そもそも自分で一からカリカリ書くならVC++で十分なので、 せっかく Delphi を使うんだから、コンポーネントを組み合わせて遊びまくりたい気がする。
今私が使ってるマシンはGateway製なのですが、日本撤退らしい。
ゲートウェイカントリーの雰囲気とか、牛柄とか、特徴があって結構好きだったんですけどねぇ、…Dellと比べて。 巻き返しを期待。
1,2,3のゲームブックは全部やってます。 今は3しか手元に残してないけど。
影の騎士が無限ループで出てくる箇所(下巻)があるんですが、 そこでいちいち真面目に戦闘の手順を踏んで倒してレベルを上げまくったりした記憶が…。 アホか>昔の俺。
「面白い文章」なんざ書く気もないし、「面白い文章」なんて、ネタがあろうがなかろうがそもそもそんなもの私にゃ書けやしない。 けれど、「文章」なら書く気はあるし、「文章」はネタがあった方がずっと書きやすい。 で、私にとっては、「糞つまんねー文章」でもなんでも存在するだけで「面白い」。
…ってな感じ。
referrer漏れでこんなページが引っかかってた。 不況だねぇ。
ここ、日記…ではないつもりなんですが、まぁ、一応毎日更新しようと心がけてはいます。 その目標は達成できてないけどね。 一日一回巡回するたびにどこかしら更新されているページってのは、 多少中身がヘタレてても、とりあえず常に新しいものに接することができる、それだけで面白いと思うので。 WWWCに突っ込んでおいて、ソフトがバージョンアップされた時だけ見に来られる、 って無機質なサイトじゃつまらないでしょ?
で、毎日更新するにはネタが要ります。自分の「日記」にしてしまえば毎日書けるような人も世の中にはいるようですが、 「起床→朝食→PC弄ったり本を読んだり→昼食→PC弄ったり本を読んだり→散歩→夕食→PC弄ったり本を読んだり→就寝」 がループしているだけの夏休みではどうしようもありません。
時事問題に対して自分の考えを書いてみる、という手もあります。 時々書こうとはしているんですが、実際テキストにおこしてみると、非常に陳腐に見えて恥ずかしいので速攻で削除したりしています。
んで、結局、見つけたサイトを適当にリンクしてお終い!というパターンばっかりに収束してゆく、と。
なんだかなぁ。
D言語…。 templateは無いと絶対やだー、と個人的には思います。
Delphi6 大人気ですね。ちっとも繋がらない…。
多言語多言語〜。 Windowsが全部やってくれるだけなので技術的には全然大したことではないんですけど、なんだか見た目が楽しい。
さて。テキストの横幅計算が面倒だーーーーーー!
七行プログラミング @ 2chプログラム技術版 で久々に面白いのが出ている模様。
「7行オセロ、人間対無能AI」。すげー。
「はちがつはつか」ってなんだかリズムがいいね。 と君が言ったから八月二十日は八月二十日
謎。
BURN-Proof の BURN って BufferUnderRuN の略だったとは!
太陽系に似た惑星系発見だそうな。 45光年って、結構近くにあるもんですね。 今回のこの星に生命が存在する確率は限りなく低いだろうけど、この分なら、宇宙人も意外と近所にごろごろ転がってるのかも知れません。
あー今度は不可思議なダンジョン2 Ver0.70βが出てるー。やらねば。
…こうしてK.INABAの10代最後の夏休みは至って非生産的に過ぎてゆくのでした…。
ここんとこ1週間くらい、 友人に勧められて Kanon をやってました。 おかげで最近はVisual C++がうちのマシンで起動してるのを見たことがありません。 ソフトの開発が停滞してるのはきっとそのせいです。 …というわけで、Noahのバージョンアップが遅いという苦情はその[数字三文字+感嘆符]なハンドルの某友人までどうぞ<ぉ。
まぁ、Noahの関連づけのUIをどうするか悩んでたりする、というのもあります。 本当に「何でも関連づけ」られるようにするのか、b2eが存在するものに絞るのか。 『コンボボックスで選んでボタンで』形式にするのか、『IE4依存でチェックリストボックスを使う』のか、など。 ソフトの外見を考えるのは苦手〜。
で、話を戻しましょう。Kanon。シナリオがいい。巧い。不覚にもマジ泣きしかけましたよ。 作為的すぎてどう頑張っても感情移入できないような分岐もあるにはあったけれど(^^;、 真琴とかあゆの話辺りは完璧ではないかと。 正直、キャラ萌えしてお終いなビジュアルノベルかと思ってましたが、自分でやってみるもんですね。
待て、待たれよ。ムーノーローカルがあと1週間でフィナーレってマジですか。 残念だ。遺憾であります。
色々いじってたらこのページの表示がかなり遅くなった気がします。 クライアント側だろうがなんだろうが重い物は重かったか。 私が耐えきれなくなったら元に戻しちゃいます。
内輪向け: 御来光の写真、現像してみたらこんなのばっかり。 ちょっと面白いが。
帰還。筋肉痛で足が痛い。日焼けで顔痛い。目まで紫外線で焼けてて痛い。
とりあえず寝ます。zzz...
さて、ちょっと山登ってきます。
まったくコードを書かずに頭の中だけで考えている状況。 内部をUnicodeにしても、出力用変換テーブルがWindows標準のだけじゃあ EUC-JP と ISO-2022-JP-1 (いわゆるEUCとJISの拡張版ね。)すらフルサポートできないことに気づいた。JISの補助漢字が捨てられてしまう…。 そこだけ自前で変換することも可能だけど、エディタ本体より大きなバイナリが要りそうだ。
結論。Muleはすげぇ。
tolstojというテキストエディタを発見。 非GNU GPLでソースが手に入るWindows用エディタは最近かなり珍しくなってしまった気がするので、嬉しい。 ただし、日本語非対応。
それはそれとして。Uranus 2(仮) を開発開始しました。VC++のワークスペースを作っただけですけど。
が達成出来たらいいなぁと思っていますがたぶん無理。 Noahと違ってUranusは、常にK.INABAの技術力の限界付近でコーディングしてますので、「やろうと思う」と「やる」が一致しません(汗。
クリアー!!LV36が三人、LV35が一人。16時間ちょい。
戦闘システム。2Dマップを使いつつDQ/FF的にシンプルに操作出来るのが良い感じ。 MC自動回復って甘すぎじゃないかと思ってたんですが、なんかボスも雑魚敵もやたらと強くて上手いことバランスが取れてますね。 つーか期待以上に面白いですこのゲーム。
知り合いの福島県人は皆あっさりとしてますけど… (←引っ張ってみる(笑))
普通に読んでプラスの意味の単語を使ってるときはマジで賞賛してマス。
さてでは改めてCres三昧へ〜。
さて、7月30日。
私もそろそろこの夏期待の新作RPGをプレイ開始することにいたしましょう!
…ということで数日の間Cresteajuにはまる予定なので探さないで下さい。
おぉ、模様替えですか? その色合いも素敵ですね。
書き直しでmel2。
そして助言の続きを実行してみる。
staticをつけたら増えたぁ…、と思ったら.dataセクションに配置されるようになってるだけでした。
最初の連発movは消えているので、const char * const
に直して解決!
見事に少し小さくなりました。ありがとうございます!なるほどstaticかぁ…。
VC++も512バイト単位で出力します。実質サイズ以降を私が勝手に削除してるだけ。(ヤバ
CharNext()は、Light版に限り意図的に外してます。
その代わりにmelmel.exe のファイル名を変えないこと!
という無茶苦茶な注意事項を増やしてしまってますけれど。
あと、コマンドラインで実行ファイル名や書庫名を相対パス指定されると動かないです。
普通に見れば確かに十分バグですね。
けれど、ソフトの性質上許される範囲かな…と考えて、仕様ということにしています。
さて、CharNext() を外した理由ですが、まず、 一つ目のループはargv[0]の中で最後の \ の出現箇所を見つけるものです。 しかし最終 \ より後ろは"melmel.exe"しか入っていないことになっているので、 MultiByte文字中の0x5cにぶつかることはあり得ません。
二つ目はargv[1]の最後のドット以降にMultiByte文字があると問題になるのですが、 例えば「ziぷ」という拡張子のファイルをzipと判定できないとマズいかというと、私はそうは思いません。 (他種の書庫と誤判定してしまう可能性があるのは問題ですが、 かと言ってzipと判定してしまうのも同程度に問題があるでしょう。 …というかそもそもmelmelの判定ルーチンが無茶苦茶すぎるんですけどね)
また、ここが一番の難点なのですが、今のコードでは終端 \0 や " をTailByteに含む文字が存在した場合もバグります。 が、現在のところWindowsのANSIコードページとなっている文字セットでそのような文字を含む物はなかったはずです。 はずですというのがいい加減でスミマセン。 えーと、今わかる範囲で少なくとも ShiftJIS, GBK, Big5, UHC は無事。
static と const については後で試してみます〜。
ExitProcess()を呼ばないとマズいことが起こったのでとりあえず呼んでおいたほうが。
っと、びいさんどうもありがとうございます。
ここら辺は手抜きしない方がよいんですね。残念。
例外処理やRTTIはオフにしておいたせいか、Cとしてビルドしても変わりないようでした。
そろそろソースも無茶苦茶になってきた1.25KB。 ExitProcess() 等を呼ばなくても大丈夫なことが保証されてればもう少し縮むんですが、どうなんだろう。 少なくともFreeLibraryは要らない気がしてきた。
WinCE 3.0 が SharedSource に、か。 えーと、しかし、WindowsMEで動くPlatform Builderは無いのかコラ〜。
まぁ、ソースが存在する楽しさってハック出来ることだけでもないですし。
Visual C++の小技というページを見かけて試してみたら、 下の、1.36KBまで減りました。更に最後のフォルダ開きをやめれば1.28KB!/GFでコンパイルして文字列を.rdataに追い込み、リンカに.rdataと.textをマージさせてます。 目から鱗。
やっぱアセンブラ等も知っておいた方がずっと面白そうだ。
melmel☆Light。 ノーマル版の方は、あれは自分にとっては必要十分な機能を持った実用的な解凍ソフトだったりします。 で、本気でサイズのために実用性を捨てるとこうなりました、というのがこのLight版。 1.58KB。統合アーカイバDLL利用でlzh/zip/cab/arj/rar/tar系/yz1/ish/uue対応。
サイズのためにちょっと魂を売ってGPLになってしまっていたり、 C++でしか書けない雑魚ことK.INABAの作ですからまだまだ詰めが甘かったりしますが、 あまり鋭い突っ込みを入れないでくださいネ。
unimpが更新されているのを発見。Method2(BWT)書庫が展開できないバグが修正されたらしい。 期末試験が終わり次第、XacRettに取り込む予定です。
yz1/yz2のやまざき氏による、データ圧縮の基礎という文書が公開されてました。 こんなの見ていると、またオリジナルの圧縮アルゴリズムを考えたくなってきてしまうではないか。
バージョン表記。 私は、「変更が加わったことがわかる」「小さい変更なのか大きい変更なのかがわかる」の2点さえはっきりしていれば、 どんどんオリジナルで面白い表記をやってほしいと思うんですけどねぇ。いちユーザーの立場からすると。 ま、どーでもいいや。
ちなみに、私が今までに公開したソフトのバージョン番号付けは、次のようになってます。 一応分類はしてみましたが、実はその時の気分次第で決めてるのであんまり一貫性はないんです…。
なんだか最近、すがすがしいほどにIEが墜ちるのですが。大丈夫かおい。