MoonWing
[CGO]CGOptimizer麦茶v1.00β2
- 2010年7月31日 12:00 AM
- CGOptimizer麦茶
CGOptimizer麦茶の開発版を更新しました。
今回の更新では暫定的に下記のJpeg系ツールを追加しました。
暫定対応のため、細かくパラメータ設定ができません。
また、開発版のため、不具合を含んでいる場合がありますので使用時に画像のバックアップを行うようにしてください。
[ZCFS]ZenCoding for SakuraEditor Ver 0.0.3
- 2010年7月30日 12:00 AM
- ソフト
ZenCoding for SakuraEditor を更新しました。


更新内容
- 置換時の選択範囲削除を削除。
(これにより、Ctrl+Z時の挙動が変わります。) - 置換後にキャレット位置を移動
- 英語で寄付方法を追記
Windowsのバージョン取得
- 2010年7月29日 12:00 AM
- 資料
使うことなんてないと思うけれど、一応メモ。
Windows系コンパイラなら問題なくコンパイルできると思う。
一応、MinGWでコンパイル、動作確認は行った。
#include <windows.h>
#include <stdio.h>
int main(void)
{
unsigned int GV = GetVersion();
printf("GetVersion API(GV) = %08X\n\n", GV);
printf("_winver = %08X\n", _winver);
printf("_winmajor = %08X\n", _winmajor);
printf("_winminor = %08X\n", _winminor);
printf("_osver = %08X\n\n", _osver);
printf("(( GV << 8 ) | (( GV >> 8 ) & 0XFF)) & 0XFFFF = %08X (= _winver)\n",
(( GV << 8 ) | (( GV >> 8 ) & 0XFF)) & 0XFFFF );
printf("GV & 0XFF = %08X (= _winmajor)\n",
GV & 0XFF );
printf("( GV >> 8 ) & 0XFF = %08X (= _winminor)\n",
(( GV >> 8 ) & 0XFF));
printf("GV >> 16 = %08X (= _osver)\n\n\n",
(GV >> 16) );
// Windows version(_winmajor, _winminor, _osver)
printf("This system is [");
if ( _osver < 0X8000 ) {
// NT Group (_osver LowWORD MSB = 0)
switch (_winmajor) {
case 3:
case 4:
printf ("Windows NT %u.%u Build %u",
_winmajor, _winminor, _osver);
break;
case 5:
switch (_winminor) {
case 0:
printf ("Windows 2000 Build %u", _osver);
break;
case 1:
printf ("Windows XP Build %u", _osver);
break;
case 2:
printf ("Windows Server 2003 family Build %u",
_osver);
break;
default:
printf ("NT Group Windows Build %u", _osver);
}
break;
case 6:
switch (_winminor) {
case 0:
printf ("Windows Vista or Windows Server 2008 Build %u", _osver);
break;
case 1:
printf ("Windows 7 Build %u", _osver);
break;
default:
printf ("NT Group Windows Build %u", _osver);
}
break;
default:
printf ("NTGroup Windows Build %u", _osver);
}
}
else {
switch (_winmajor ) {
case 0: //Win32s Group
case 1:
case 2:
case 3:
printf ("Win32s Build %u", _osver & 0X7FFF);
break;
case 4: // 9X Group (_osver is invalid.)
switch (_winminor) {
case 0:
printf ("Windows 95 Build ----");
break;
case 10:
printf ("Windows 98 Build ----");
break;
case 90:
printf ("Windows Me Build ----");
break;
default: // To make sure
printf ("Newer than Windows Me");
}
break;
default: // To make sure
printf ("Newer than Windows Me");
}
}
printf("]");
return 0;
}
インタラクションデザインの教科書を読み終えて
- 2010年7月28日 12:00 AM
- レビュー
|
インタラクションデザインの教科書 (DESIGN IT! BOOKS)
発売:毎日コミュニケーションズ 2008-08-22 |
|
|
|
インタラクションデザインの入門にもってこいの一冊。
内容は考え方と担当するところを丁寧に書いてくれている。
まさに、必要な知識を吸収するのに最適な本。
インタラクションにスポットを当てているけれど、
Webアプリ開発者および、デザイナーも読んでほしい。
仕事の進め方も例を上げながら記述されていて実にわかりやすい。
どんなふうに仕事してるのとか?
インタラクションデザイナーって必要なの?
って時にこの本を差し出したい。これを読めば説明はいらない。
それぐらいにまとまっていてわかりやすくて、読みやすい本。
かなりいい本でした。
すでに、在庫が少なくなりAmazonでは2倍の値がついてるけれど、
ジュンク堂で何冊か残っていて定価で買えたのはほんとうに運が良かった。
[CGO]CGOptimizer麦茶v1.00β1
- 2010年7月27日 12:00 AM
- CGOptimizer麦茶
CGOptimizer麦茶の開発版を更新しました。
Download(CGOptimizer.zip)
今回の更新では暫定的に下記のPNG系ツールを3つ追加しました。
暫定対応のため、細かくパラメータ設定ができません。
また、開発版のため、不具合を含んでいる場合がありますので使用時に画像のバックアップを行うようにしてください。
mimo UM-740のインストール
同梱されているドライバCDは文字化けする上、UM-740が存在せず、UM-750となっており、
しかも、インストールを行うとAvira AntiVirに引っかかる危なさ。
これではまったくもって、信用できないため、Webから新しいドライバを入手してインストールした。
- ドライバの入手
- DisplayDriver
DisplayLink(DisplayLink-5.3.25973.exe) - TouchScreenDriver
mimo(091204a_touch_setup_v040106.zip)
- DisplayDriver
- 注意
グラフィックボードのドライバに依存してるため、グラフィックドライバのバージョンが古いとディスプレイアダプタのエラーを起こす場合がある。
上手く動作しない場合は、グラフィックスドライバを更新してみること。
JpegopitmをMinGWでコンパイルその2
- 2010年7月23日 12:00 AM
- ソフト
Jpegoptim.cの変更なんだけど下記の変更のほうが修正個所が1か所にまとまるしいいかも。
@@ -53,6 +53,39 @@
#define ICC_IDENT_STRING "ICC_PROFILE\0"
#define ICC_IDENT_STRING_SIZE 12
+#ifdef WIN32
+#define uid_t int
+#define gid_t int
+#define ROOT_UID 0
+#define ROOT_GID 0
+#define realpath(N,R) _fullpath((R),(N),_MAX_PATH)
+uid_t getuid(void)
+{
+ return ROOT_UID;
+}
+uid_t geteuid(void)
+{
+ return ROOT_UID;
+}
+gid_t getgid(void)
+{
+ return ROOT_GID;
+}
+gid_t getegid(void)
+{
+ return ROOT_GID;
+}
+int setuid(uid_t uid)
+{
+ return (uid == ROOT_UID ? 0 : -1);
+}
+int setgid(gid_t gid)
+{
+ return (gid == ROOT_GID ? 0 : -1);
+}
+
+#endif
+
void fatal(const char *msg);
struct my_error_mgr {
JpegopitmをMinGWでコンパイル
- 2010年7月22日 12:00 AM
- ソフト
Jpegoptimのコンパイルにちょっと躓いたのでメモ。
- msys/src/配下にjpegoptim-1.2.3を解凍して配置
- msysを起動して、下記のコマンドを入力
$ cd /src/jpegoptim-1.2.3/ $ autoconf $ configure - configureが通らず、下記のエラーが出る
configure: error: cannot find install-sh, install.sh, or shtool in aux "."/aux - configure.inを下記のように修正する
@@ -3,7 +3,7 @@ dnl Process this file with autoconf to produce a configure script. AC_INIT(jpegoptim.c) AC_CONFIG_HEADER(config.h) -AC_CONFIG_AUX_DIR(aux) +AC_CONFIG_AUX_DIR(sub) AC_CANONICAL_HOST - subフォルダを作成し、install-sh等を適当な場所から持ってくる(例ではJpeglibから)
$ mkdir sub $ cp ../jpeg-6bx/install-sh ../jpeg-6bx/config.sub ../jpeg-6bx/config.guess ./sub - 再度、configureファイルを生成して、configureを実行
$ autoconf $ configure - configureが通ったら、makeを実行する。すると下記のエラーが出る
jpegoptim.c:354: undefined reference to 'realpath' jpegoptim.c:354: undefined reference to 'realpath' - jpegoptim.cを下記のように修正する
@@ -351,7 +351,11 @@ } break; case 'd': - if (realpath(optarg,dest_path)==NULL || !is_directory(dest_path)) { +#ifdef WIN32 + if (_fullpath(dest_path,optarg,MAXPATHLEN)==NULL || !is_directory(dest_path)) { +#else + if (realpath(optarg,dest_path)==NULL || !is_directory(dest_path)) { +#endif fatal("invalid argument for option -d, --dest"); } if (verbose_mode) @@ -441,8 +445,13 @@ fatal("splitdir() failed!"); strncpy(newname,argv[i],sizeof(newname)); } - snprintf(tmpfilename,sizeof(tmpfilename), +#ifdef WIN32 + snprintf(tmpfilename,sizeof(tmpfilename), + "%sjpegoptim-%d.tmp", tmpdir, (int)getpid()); +#else + snprintf(tmpfilename,sizeof(tmpfilename), "%sjpegoptim-%d-%d.tmp", tmpdir, (int)getuid(), (int)getpid()); +#endif } retry_point: - 再度、makeでコンパイルが通った。
auxというのはBSD系の名残でinstall-shなどの補助スクリプトが各のされているフォルダなのだが、
WindowsではauxというフォルダはDOSの特殊フォルダの名残で作成できない。
そこで、参照先を”sub”に変更し、新たに”sub”フォルダを作成し、GNU系ソフトに同梱されている補助スクリプト類を格納した。
また、コンパイル時にエラーになったrealpathやgetuidはPOSIX系の関数で
Windowsには存在しないため同様の動作するものに置き換えたり削除したりしている。
今回の例ではコンパイルを通すためにrealpathを_fullpathに置き換えたけれどもっときれいに書き直した方がいいな
QEMUのコンパイル
QEMUの最新版がほしかったので自分でコンパイルしてみたときのメモ。
- コンパイル環境構築
- MinGW+MSYS+zlib
- 猫科研究パック(msys_felidlabo_a007.7z)をダウンロード
- msys_felidlabo_a007.7zを解凍し、作成されたmsysフォルダをc:/などマルチバイト文字およびスペースを含まないパスに格納(例:”c:/msys”)
- msys/_felidlabo/04_gccinstall.batを実行し、GCCをインストール
- coreutils-ext
- coreutils-5.97-3-msys-1.0.13-ext.tar.lzmaをダウンロード
- coreutils-5.97-3-msys-1.0.13-ext.tar.lzmaを解凍し、binの中をmsys/bin/にコピー(pr.exeは上書きでよい)
※.tar.lzmaの解凍方法がわからない場合は、7-Zipを使用する
※coreutils-extを入れないとQEMUのmakeで下記のエラーとなる/pc-bios/optionrom/signrom.sh: line 31: * 512 - 1 : syntax error: operand expected (error token is "* 512 - 1 ") make[1]: *** [multiboot.bin] Error 1 rm multiboot.o multiboot.raw multiboot.img make: *** [romsubdir-optionrom] Error 2
- SDL
- SDL-1.2.14.zipをダウンロード
- SDL-1.2.14.zipを解凍し、SDL-1.2.14フォルダをmsys/src/へ移動
- msys/msys.batを起動し、下記のコマンドでSDLをコンパイル
/src/SDL-1.2.14/configure --prefix=/mingw --disable-shared make make install
- MinGW+MSYS+zlib
- コンパイル
- qemu-0.12.4.tar.gzをダウンロード
- qemu-0.12.4.tar.gzを解凍し、qemu-0.12.4フォルダをmsys/へ移動
- msys/msys.batを起動し、下記のコマンドでQEMUをコンパイル
mkdir /home/***/QEMU /qemu-0.12.4/configure --prefix=/home/***/QEMU --target-list=i386-softmmu make make install - /msys/home/***/QEMU/にコンパイルされた実行ファイル等が格納されている
英語の勉強に役立つサイトまとめ
- 2010年7月14日 12:00 AM
- 資料
まだ全部試せたわけじゃないけれど、基本的に無料で集めたつもり。
個人学習
- 有名な学習サイト(旧:iKnow)
smart.fm - PVを見て、英語を聞き取り、単語を入力して学べる
Lyrics Training - マイク入力を利用して発音を採点
EnglishCentral - 世界の超一流の人物のスピーチを字幕付きで
TED.com - Youtube動画レッスン
コミュニティ
いいサイトや、使ってみた感想などありましたらここを参照した方へのアドバイスになりますので
コメントに書いていただけると助かります。
- 検索
- フィード
- メタ情報
