toge's diary

コンピュータ関連の趣味をつらつらと。

Framewave 1.0

http://framewave.sourceforge.net/

AMDが公開したらしいので触ってみた。

FW_1.0_Lin32.tar.gzを落としてきて、展開。
展開したディレクトリで以下のコマンドを実行する。

cd FW_1.0_Lin32/lib
ln -sf ./libfwBase.so.1.0.0 libfwBase.so
ln -sf ./libfwImage.so.1.0.0 libfwImage.so
ln -sf ./libfwJPEG.so.1.0.0 libfwJPEG.so
ln -sf ./libfwSignal.so.1.0.0 libfwSignal.so
ln -sf ./libfwVideo.so.1.0.0 libfwVideo.so
ln -sf ./libfwBase.so.1.0.0 libfwBase.so.1
ln -sf ./libfwImage.so.1.0.0 libfwImage.so.1
ln -sf ./libfwJPEG.so.1.0.0 libfwJPEG.so.1
ln -sf ./libfwSignal.so.1.0.0 libfwSignal.so.1
ln -sf ./libfwVideo.so.1.0.0 libfwVideo.so.1

あとは、以下のようなコードが動けばオッケー。

#include <stdio.h>
#include "fwBase.h"

int main()
{
  fwStaticInit();

  const FwLibraryVersion* version = fwGetLibVersion();
  printf("%s %s Ver.%d.%d(Build %d.%d@%s) for %s\n",
         version->Name, version->Version,
         version->major, version->minor,
         version->majorBuild, version->build,
         version->BuildDate, version->targetCpu);

  FwCpuType type = fwGetCpuType();

  switch (type)
  {
  case fwCpuUnknown:
    printf("cpu   : unknown\n");
    break;
  case fwCpuSSE:
    printf("cpu   : SSE\n");
    break;
  case fwCpuSSE2:
    printf("cpu   : SSE2\n");
    break;
  case fwCpuSSE3:
    printf("cpu   : SSE3\n");
    break;
  case fwCpuFamily10h:
    printf("cpu   : Family10h\n");
    break;
  }

  printf("clock : %llu since power on\n", fwGetCpuClocks());

  return 0;
}

なんか色々できるみたいなのでちまちま勉強しよう。Core2Duoでもちゃんと動くといいな。