垂直同期云々というのは、画面表示側の理屈というだけであって、あくまでボタンの方は、垂直同期に関係なく、読みに行けば常にその時の状態を返してくれる方が自然だと自分は思うんですけどね(少なくともX68000はそういうハードでした)。 …もしかして、3DSのハードウェア的にそういう仕様なのかなあ? 例えば、『ボタンの状態が読めるのは垂直帰線期間のみであり、垂直表示期間は読めないので、その間はボタンの状態変化が分からない為、仕方なく同じ値を何度も返している』…みたいな事情があったりするとか。 DSiで動くMkIIもそうだったとすると、何か、そういうようなハード上の制約に縛られているような気もしてきます。