しんいちさんへ
GPUTCHRを使うとは盲点でした。これならば複数のコースを選択できる上にかなり短くできますね。
ただし、表示するコースによっては周回判定が正しく行えなくなってしまいます。
コースデザインを行う際には「X座標256の位置では(見えない)縦128ドットのスタートラインがある」と考える必要があるためです。
これは可読性向上版のプログラムのコメントに記述しています。
http://petitverse.hosiken.jp/community/petitcom/diary/?read=2657128(#Y)を小さくすれば周回判定問題の出る可能性を減らせますが、そうなるとショートカット問題が発生します。
これはショートカット対策としてこの大きさにしている(コース外を自由に走れるため)のでこの値は変えることができないのです。
空白(コース外)の幅、コースの道幅もこれを元に作っていてショートカットをして元のコースに戻るまでの合計で20秒弱でかかるため「ショートカットの(ほぼ)無意味化」をしています。(コース外に出た時の最高速度を大幅に落とすことでこのショートカット対策をしている)
もちろん、デフォルトのコースの道幅は、レースゲームとしてのタイムアタックの面白さが1番でその次がショートカット対策ですが。
とはいえ、ショートカットの練習をすれば意外に早くコース復帰できることが分かったので普通に周回した場合の最速(18秒程度)よりも早く(コース復帰した上で)ゴールしないようにするためにGSPOIT(X,Y)/7の部分を「/5」くらいにする必要がありそうです。(HUCUさんのコメントに対して「ショートカット対策はバッチリしているので問題ない」と自信をもっていえなかったのはこれが原因)
理論上ショートカットができないような対策がしてあるコースであれば個人的には「/7」でも減速が大きすぎるため「/9」くらいにしたいくらいなんですが。