2011年05月23日 snes9x with ARMedslack 13.1 on zaurus(SL-C760) [長年日記]
_ snes9x with ARMedslack 13.1 on zaurus(SL-C760)
snes9xをARMedslack 13.1でビルドしてみた。
以前にIntelマシンでビルドした手順で行うと、別のエラーが出た。以下のパッチで対応。
*** snes9x/unix/unix.cpp.ORG 2011-03-07 19:09:37.000000000 +0900 --- snes9x/unix/unix.cpp 2011-03-07 19:13:14.000000000 +0900 *************** *** 1129,1139 **** { *drive = 0; ! char *slash = strrchr (path, '/'); if (!slash) ! slash = strrchr (path, '\\'); ! char *dot = strrchr (path, '.'); if (dot && slash && dot < slash) dot = NULL; --- 1129,1139 ---- { *drive = 0; ! char *slash = (char *)strrchr (path, '/'); if (!slash) ! slash = (char *)strrchr (path, '\\'); ! char *dot = (char *)strrchr (path, '.'); if (dot && slash && dot < slash) dot = NULL;
上記でコンパイルは通るが、以下のパッチも当てないと、armプラットフォームでは正常に動かない。
*** snes9x/port.h.ORG 2011-05-16 17:48:15.000000000 +0900 --- snes9x/port.h 2011-05-21 23:32:31.000000000 +0900 *************** *** 266,274 **** #endif #if defined(__i386__) || defined(__i486__) || defined(__i586__) || \ ! defined(__WIN32__) || defined(__alpha__) #define LSB_FIRST #define FAST_LSB_WORD_ACCESS #else #define MSB_FIRST #endif --- 266,276 ---- #endif #if defined(__i386__) || defined(__i486__) || defined(__i586__) || \ ! defined(__WIN32__) || defined(__alpha__) || defined(__arm__) #define LSB_FIRST + # if !defined(__arm__) #define FAST_LSB_WORD_ACCESS + # endif #else #define MSB_FIRST #endif
以上。
で、zaurus(SL-C760)で快適に遊べるかは...微妙。