UBASIC on Windows NT3.51 & 4.0

 NT3.51 の DOS 窓で UBASIC を動かすと,特定のプログラムがひどく遅くなる現象が見られた。原因を調べてみると機械語レベルの命令 pushf, popf が通常の 500倍も時間がかかっていることがわかった。この命令が現れると,OS レベルで割り込みがかかり,かなり複雑な処理が行われるらしい。
 このため UBASIC 8.85 ではソースプログラムから pushf, popf を一掃した(このとき一カ所修正ミスをしたため nxtprm 関数にバグを入れてしまった)。
 ところが NT4.0 (英語版) ではこの不具合は解消されていて従来の UBASIC でも何の問題もない。しかも他にもいろいろチューニングされているようで NT3.51(日本語版)のDOS窓よりも 20% も速いプログラムもあった(ECM)。英語版と日本語版を比べているので無意味な気もするが事実だけ記しておく。(96/10/20)