2015年4月5日日曜日

Cの関数ポインタの書き方

Cの関数ポインタの書き方。

今までたぶん、r = (*f)(1,2);みたいに書いてきた気がするけど、r = f(1,2); みたいに普通の関数を直接呼び出すのと同じ書き方ができる。

でもポインタで*fとfが同じって言うのは違和感あるよね>K&L。

昔からこうなのか、最近の仕様なのか、確認したのはXcode6.2、LLVM。

でも、そもそも2006年2月のとある記事にr=f(1,2)みたいなコードが書いてあったのを見て書き間違い?かと疑問に思ったのが発端なので、K&L時代からそうだったのかが気になるところ。だってf(1,2)って書けるなら何でわざわざ(*f)(1,2)って書くの? そのほうが如何にも関数ポインタだぞ!と叫んでいるから? 確かにそれは一理あるが。


//
//  main.m
//  STAnySome
//
//  Created by Oliva on 2015/04/04.
//  Copyright (c) 2015 Oliva. All rights reserved.
//

#import <UIKit/UIKit.h>
#import "AppDelegate.h"

int testfunc(int p1, int p2)
{
return p1*p2;
}

int main(int argc, char * argv[]) {

int (*funcp)(int p1,int p2);
funcp = testfunc;
int r = funcp(1,2);
int r2 = (*funcp)(3,4);
NSLog(@"r=%d r2=%d",r,r2);

@autoreleasepool {
    return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
}

}

2015-04-05 11:21:43.967 STAnySome[8447:2118408] r=2 r2=12


2015年4月3日金曜日

ADA MP-1とBOSS DS-2(TURBO-II)との相性が最高!

ADA MP-1を手に取ってからというもの、真空管ゲインの実在感を知り、遅まきながら感服することしきりで、YouTubeでいろんなアンプのデモやレビューを観ているうち、いつしかMesa/Boogie病にかかっていたのも束の間、それはMarshall病(主にJCM800)へと転移し、気分転換と称して度々中古品を物色する日が細々と続いてきたが、最近になってMarshall化した耳と、これは勝手な想像だが取り替えた真空管が(物理的にも自分の耳という生理的にも)いい感じに馴染んできたことによって、MP-1はおろか、スタジオに持込んでダメだしまでしたはずのMP-2までもが完全に使える音へと変化した昨今、いかがお過ごしかな自分が若干気になっていたことに、BOSS DS-2の存在がある。

自分のBOSS DS-2はMIJ(Made in Japanを英語系掲示板ではこのように表記することが多い)であるが、ACアダプタがPSA対応という、購入した御茶ノ水の某楽器店の店員さんもうなった珍しいタイプだ。普通はASAだと思っていたのだが。

なぜこれを手に入れたかというと、一番の理由はPrinceが使っているからである。今もどの程度どの曲でどう使っているのかいないのかは本当はよく知らないのだが、最近の映像でも存在は確認できる。

またBOSS DS-2 は現行品なのだが、こちらは台湾製になる。もう大分前の話になるが、音が違うとか違わないとか気になってしょうがないので、安い中古の台湾製を買って聴き比べてみた。

確かに全然違う、といっていいほど音に違いがある。しかし個体差なのか、世代差なのかは分からない。MIJのほうが音圧感があり、歪みの粒感がゴリゴリしていて芯のある感じがする。逆に台湾製はきれいさがあるように感じた。歪みの感覚が等間隔であるかのような、デジタルとまではいかないが粒がよく揃っているような感じだ。

さてADAプリアンプがMIDIアプリの実験台だけではなく、そしてもうしばらくは中古のMarshallやMesa/Boogieの出物を物色せずにいられるほど十分に使えるアンプになったこの機を利して(またいつ病が再発しないとも限らないので)、面倒くさくて一度しかやっていなかったEffect LoopにDS-2を繋いだらどんな音が出るのかでないのかを試してみた。

これがどうだい。

DS-2はもちろんトランジスタによって歪みが作られているのだが、入力がプリチューブの作り出した音であるからなのか、とにかく素晴らしい、もうこれで完全に暫くは、誰かがJCM800 2205のCombo(4212)をタダで進呈してくれるとでも言わない限り、何の不満もない状態になった。

いや正確には、次なる課題が実は発生し、それはDS-2のMIDI化という出来るんだか出来ないんだかまだ検索もしていないMODの必要性なのだが、まあ、あまりにも大変そうなので、とりあえず先々の課題の1つということで。

ちなみに物理的にノブとスイッチを動かすロボットも面白いが、できればいろんなペダルで使えるようにしたいので、デジタルで制御できるポッドに差し替えられるというのがベターかなあ。

それをラックマウントにして全面にカパってはめるようなセッティングで。DS-2だとちょうど3U。他のコンパクトペダルもBOSSは同じ大きさだと思うので。場所取るかなあ。意外とやっぱりロボットのほうが良かったりして。