・abcdw017アーカイブについて 2009.10.05 川合秀実 このソフトウェアはバイナリもソースもドキュメントもすべて川合に最終的な著作権 があり、ライセンスはKL-01です。 --- abcdw017の(abcdw016に対しての)バージョンアップ点は、mandel59さんが指摘した 問題を解決したこと(POSIX環境で画面消去がうまく行かない場合がある、関数load_g01 の変数宣言に問題がある)、そして乱数の種を提供するAPIを用意したことです。 なおPOSIX周りについては、mandel59さんによるバグ修正をほぼそのまま使わせてもら っています。 今回も仕様の拡張のみで仕様変更は無いので、abcdw009以降対応のすべてのアプリが そのまま動きます(バイナリ互換)。 なお、コンパイル方法が少し変わりました。普通にmakeで作ると、キー入力などが有 効になりません。これは GO の標準ライブラリに windows.h などが無いためです。それ でもしこれらの機能を有効にしたバージョンをmakeしたければ、以下のようにしてくだ さい。 Windowsの場合: (MinGWを使って) >gcc -Os -DUSE_WIN32 -o efg01 efg01.c tek.c _gasfunc.s >strip efg01.exe >upx -9 efg01.exe Linuxなどの場合: (gccの3.x系で) >gcc -Os -DUSE_POSIX -o efg01 efg01.c tek.c gasfunc.s >strip efg01 >upx -9 efg01 Linuxなどの場合: (gccの4.x系で:gcc-4.xはif文の最適化コンパイルにバグがある模様) >gcc -O0 -DUSE_POSIX -o efg01 efg01.c tek.c gasfunc.s >strip efg01 >upx -9 efg01 --- guigui01.hは書き足りないところを補いました。guigui01フォルダのほかのものは abcdw009のものを使ってください。 --- 以下は簡単なアプリの説明です。このアーカイブに入っていないものもあります。 <非tolsetアプリ> アプリ名 サイズ 最新 ソース 説明 hello 16 abcdw012 abcdw012 "hello, world\n"を表示する helloc1 67 abcdw012 abcdw012 helloのC版 helloc 68 abcdw009 abcdw009 ソースが普通のhelloc1 chars 13 abcdw009 abcdw009 キャラクタコード0x20から0x7eを出力 echo 6 abcdw009 なし コマンドライン引数のエコーバック echoc 50 abcdw009 abcdw009 echoのC版 pi 189 abcdw014 abcdw009 円周率算出(高負荷テスト用) calc 1,503 abcdw014 abcdw009 コマンドライン計算機(.hrbベンチマーク用) calc1 86 abcdw012 abcdw012 calcを.g01向けに作り直したもの cpyc 119 abcdw014 abcdw009 tolsetのcpyのC版 makefntc 188 abcdw014 abcdw009 tolsetのmakefontのC版 dmparg 1,082 abcdw014 abcdw009 コマンドライン引数のテスト calendar 358 abcdw014 abcdw014 カレンダー表示 calendrc 538 abcdw014 abcdw014 calendarのC版 cntup0 997 abcdw016 abcdw016 数を数える(sleep1のテスト) testkey0 995 abcdw016 abcdw016 キー入力のテスト・C版 testkey1 118 abcdw016 abcdw016 キー入力のテスト・C版 cclsc 65 abcdw016 abcdw016 コンソールのcls・C版 ccolorc 120 abcdw016 abcdw016 コンソールのカラー設定・C版 tcns00 206 abcdw017 abcdw017 コンソールの色見本・C版 tcns01 232 abcdw016 abcdw016 テンキーで@が歩く・C版 tcns02 484 abcdw017 abcdw017 一人テニスゲーム・C版 tcns03 467 abcdw017 abcdw017 文字早うちゲーム・C版 tcns04 595 abcdw017 abcdw017 走って星を集めるゲーム・C版 (註)pi.hrbは229バイト。calc.hrbは1668バイト。 tcns01は、テンキーの2468で動く。スペースで色変わる。Enterで終了。 tcns02は、テンキーの46で動く。 tcns03は、落ちてくる文字を入力する。大文字小文字の区別なし。だんだん速く なって難しくなる。誤入力すると減点。1とIや0とOの区別が難しい。フォント によっては見分けられず、両方押してみるしかないかもしれない。 tcns04は、テンキーの2468で動く。壁にぶつかるか、自分の軌跡にぶつかると 終了。バックすれば即死。 <tolsetアプリ> アプリ名 サイズ 最新 ソース 説明 cpy 45 abcdw009 abcdw009 ファイルのコピーと連結とtek圧縮解除 bim2g01 1,542 abcdw014 abcdw009 .g01用リンカ nask 22,824 abcdw014 abcdw009 NASM風アセンブラ gas2nask 4,559 abcdw014 abcdw009 cc1の出力をnask用に変換 obj2bim 6,272 abcdw014 abcdw009 OSASK/.hrb/.g01共用リンカ naskcnv0 1,491 abcdw014 abcdw009 ASKAの出力をnask用に変換 sjisconv 376 abcdw014 abcdw009 cc1やccp0の前に使うプリプリプロセッサ golib00 2,386 abcdw014 abcdw009 ライブラリアン bim2hrb 384 abcdw014 abcdw009 .hrb用リンカ makefont 72 abcdw009 abcdw009 テキストデータからフォントデータを作る bin2obj 477 abcdw014 abcdw009 ファイルの.obj化(char配列化) aksa 4,700 abcdw014 abcdw009 逆ASKA(逆アセンブラ) bin2ucc 436 abcdw014 abcdw011 ファイルのCソース化(char配列化) hexdump 168 abcdw014 abcdw014 ファイルの16進ダンプ表示 rjcg01 225 abcdw014 abcdw014 .g01ファイルにrjcをかける(普通は使わない) tekmin0 174 abcdw014 abcdw014 mini-tek5生成ツール(前処理) tekmin1 497 abcdw014 abcdw014 mini-tek5生成ツール(後処理) mtek2org 534 abcdw014 abcdw014 tek圧縮解除(mini-tek5にも対応) --- 次回予告 おやすみ中。春が来たらまた再開予定。 --- ・リンク http://osask.jp/boyaki04.html http://wiki.osask.jp/?GUIGUI01/man0000 http://wiki.osask.jp/?GUIGUI01/memo02 http://wiki.osask.jp/?GUIGUI01/memo04 http://wiki.osask.jp/?GUIGUI01/memo14 http://wiki.osask.jp/?GUIGUI01/memo22 http://wiki.osask.jp/?OSASK-HB http://wiki.osask.jp/?OSASK-HB/0001 http://community.osdev.info/?GO