番外編:ナウシカベンチマークの謎 SE(Second Edition)


本ページの各画面キャプチャについては、XM7ePC-8801MA, ePC-8001mkIISR および eX1(turbo)、および mbs1(model05) emulator を使用させていただきました。
PI.さん、たけがみりうさん、Takedaさん、Sasajiさん、いつも感謝しております。
(XM7/ePC88MA/ePC80mk2SR/eX1(turbo)/mbs1(model05)がなかったらこんなページを作ろうという気にはなりませんでした。^^;)
また、FM-7(77)の性能を活かしきったプログラムを作製された磯貝さんに感謝いたします。
注:テクノポリス誌1985年1月号が入手できました折、本ページの内容の全面見直しを行いました。
記録のため、従来のページ(最終更新:2014年9月7日)もココに残しておきます。(今後更新は行いません)

お急ぎの方へ。
ナウシカベンチマークとは
ナウシカベンチマークを再現
オリジナルのナウシカの絵
オリジナルのオリジナルの絵
ナウシカベンチマークの謎
(番外編)ミンキーモモベンチマーク

ナウシカベンチマークとは
●徳間書店発行のテクノポリス誌1985年1月号、同4月号に掲載されたベンチマークプログラムのひとつです。 (それ以外の号については未確認)
後述の「ガッツでCG Vol.2」掲載のナウシカのC.G.プログラム(FM-7系専用)をベースに、 当時のメジャーな8bit CPUパソコン(X1turbo、PC-8801mkII/SR、FM-77)で実行可能となるよう、 中間色ペイントルーチンをBASIC化したものです。ただしフルBASIC版ではあまりにも実行時間が長いので、 一部だけ機械語処理に変更したものも掲載されています。(4月号ではこちらのみ)
そういう経緯があるので、FM-77用であっても機械語処理はテクノポリス誌掲載版とガッツでCG Vol.2掲載版で全く異なっています。
●プログラム概要
1985年1月号 1985年4月号 ガッツでCG Vol.2
対象機種 FM-77、
X1turbo、
PC-8801mkII
PC-8801mkIISR FM-7シリーズ
ALL BASIC版 - -
一部機械語版 -
FM-7専用 - -
●中間色ペイントルーチンの違い
1985年1月号
ALL BASIC版
1985年1月号、4月号
一部機械語版
ガッツでCG Vol.2
FM-7系専用版
対象 必要なLINEのみ 必要なLINEのみ 全画面
処理 1LINE毎 1LINE毎 全画面一括
PUT@/GET@使用 ×
タイルチェンジ BASIC
(各機種共通)
機械語
(X1turboとPC-8801mkIIで共通、
FM-77ではメインCPUで実行)
機械語
(サブCPUで実行)
・ テクノポリス誌掲載の「一部機械語版」の機械語プログラムは、機種依存しないように作られているようです。
ちなみに、FM-7シリーズ用の機械語プログラムはそのままでMB-S1で使えました。
・ ガッツでCG Vol.2掲載版は、全画面対象の中間色ペイントですが、それを感じさせないほど超高速です。
●テクノポリス誌掲載のベンチマーク結果
機種 モード ナウシカ
ALL BASIC版
ナウシカ
一部機械語版
X1turbo 69:47 5:45
FM-77 43:27 2:07
PC-8801mkII 79:57 5:55
PC-8801mkIISR V1S 67:46 5:47
V1H 41:47 3:03
V2 41:37 2:53

ナウシカベンチマークを再現
●ナウシカベンチマークをエミュレータ(と実機)で再現してみました。
尚、雑誌掲載プログラムでは塗残し等のバグがありましたので、はせりんの方で勝手に修正しています。
また、テクノポリス誌1985年4月号掲載のプログラムはベンチマーク上不適切なコードが含まれていますので、
下記は全て1985年1月号掲載プログラムをベースとしています。 そのためPC-8801シリーズの結果が雑誌掲載のものより早くなっています。
今回、上記3機種(シリーズ)に加えて、Sasajiさんの協力を得てMB-S1でも実行しています。
また、Apaslothyさんに PC-8801MC, PC-8001mkIISR で実行していただけました。
御両名のご協力に感謝します。

エミュレータ編
エミュレータ モード他 BASIC 実行結果
eX1turbo 150917 CZ8FB02 V1.0 5:44
eX1 150917 CZ8FB01 V1.0 6:42
ePC-8801MA 150828 V1S N88-BASIC V1.93 4:44
V1H N88-BASIC V1.93 2:41
V2 N88-BASIC V2.3 2:33
ePC-8001mkIISR 151223 N80SR-BASIC V1.0 2:21
XM7 V1.1 L77a FM-77 F-BASIC V3.0 L2.0 2:08
XM7 V2.9 L77a FM77AV F-BASIC V3.3 L12 2:16
XM7 V3.4 L77a FM77AV40EX F-BASIC V3.3 L30 1:50
mbs1 model05 0.3.0 128KB RAM拡張 S1 BASIC V1.0 2:04

実機編
機種 モード他 BASIC 実行結果 ご協力
MB-S1/40 128KB RAM拡張 S1 BASIC V1.0 2:04 Sasajiさん
PC-8801MC 4MHz V1S 15KHz N88-BASIC V1.93 4:44 Apaslothyさん
4MHz V1S 24KHz N88-BASIC V1.93 4:49
4MHz V1H 24KHz N88-BASIC V1.93 2:41
4MHz V2 24KHz N88-BASIC V2.3 2:33
8MHzS V2 24KHz N88-BASIC V2.3 1:34
8MHzH V2 24KHz N88-BASIC V2.3 1:24
PC-8001mkIISR N80SR-BASIC V1.0 2:41 Apaslothyさん

各シリーズで最速の画面だけ掲載しておきます。(各画像をクリックするとフルサイズの画像になります。)
eX1turbo_CZ8FB02_NS8501
Takedaさん作のX1turboエミュレータです。
X1→X1turbo でかなり改善されていますが、残念ながら最も遅い結果となっています。

ePC-8801MA_V2_NS8501
Takedaさん作のPC-8801MAエミュレータです。
テクノポリス誌1985年4月号に掲載のプログラムは、実行途中経過の写真を取るためのもののようです。
1分経過毎に一旦止めて写真を撮って、また再開、というのをやっていたのだと思いますが、 その目的で使用されている N88-BASIC の ON TIME$ GOSUB ステートメントが曲者でした。 TIME$ OFF で止めたつもりでも、ON TIME$ GOSUB xx の命令が残っているだけで、何と時間を消費してしまいます。 (TIME$ OFF時で7秒、TIME$ ON時で20秒も!)
左の画面は1月号掲載版ですのでこの割り込みは使ってないです。
テクノポリスのベンチマークを行った人は、この割り込みのオーバーヘッドを全く考えてなかったということだと思います。
# 実機の8MHzモードではさらに倍近い速度になります。NECの面目躍如と言ったところでしょうね。

Nausicca80SR_1
Takedaさん作のPC-8001mkIISRエミュレータです。
Apaslothyさんにプログラム改良&画面取得していただきました。
エミュレータは実機より速い数字になるようです。
実機の測定結果より、PC-8001mkIISR は PC-8801mkIISR以降の機種の V1H 相当の性能と言えます。

XM7_FM77AV40EX_NS8501AV
PI.さん+りうさん作のFM-7/77AVシリーズエミュレータです。
サブシステムが強化されたFM77AVですが、メインCPUの速度低下が足を引っ張っていました。
メインCPUの速度が改善されたFM77AV40EXでは最速のポジションを奪還しています。 この辺の事情は従来ページにも記載してます。

S1_128KB_NS8501
Sasajiさん作のMB-S1エミュレータです。
FM77AV40EXが出るまでは最速でした。バランスの取れたマシンだったのだと思います。
MB-S1では拡張RAMが必須です。標準実装のRAMだけだとDISK-BASICではメモリ不足で動きませんし、 ROM-BASICでも動作が遅くなります。


オリジナルのナウシカの絵
●テクノポリス増刊号、ガッツでC.G. Vol.2 (1984年5月発行)に掲載されてたものです。
投稿者は磯貝聡さん、当時15歳。まさかベンチマークに使われるとは思わなかったでしょうね。
今のところ、FM-7/77AVシリーズのみで実行可能です。
尚、掲載プログラムでは塗残し等のバグがありましたので はせりんの方で勝手に配色含めて修正しています。
エミュレータ モード他 BASIC 実行結果
XM7 V1.1 L77a FM-77 F-BASIC V3.0 L2.0 0:54
XM7 V2.9 L77a FM77AV F-BASIC V3.3 L12 0:43
XM7 V3.4 L77a FM77AV40EX F-BASIC V3.3 L30 0:35

最速の画面だけ掲載しておきます。
XM7_FM77AV40EX_NSGCG2AV
PI.さん+りうさん作のFM-7/77AVシリーズエミュレータです。
これに慣れちゃうと、上の方でやってるベンチマークは見てらんないです。


オリジナルのオリジナルの絵
●アニメの1シーンです。どんなシーンだったか全く記憶にありません。
NAUSICAA
・ ネットでの拾い物です。このページを作り始めた時には無かったので、 最近のものかと思います。
ガッツでCG Vol.2 や テクノポリス誌に掲載されたものは、ちょっとぽっっちゃり気味ですね。 当時のCRTは少々縦長だったのでしょうか。


せっかく元絵を拝見できたので、少々悪乗りしてガッツでCG Vol.2版に手を加えてみました。
XM7_FM77AV40EX_NSSLIM77
PI.さん+りうさん作のFM-7/77AVシリーズエミュレータです。
元々磯貝さんの作成された描画データは、横方向に x1.11 されて表示されていました。
なので、これを x1.0 に戻しただけです。
それだけではつまらないので、以下の追加修正も行っています。
・肌色を若干明るめに変更。せっかく影を付けてるのに、ほとんど差がない状態だったので。
・フクの首回りの色を元絵に合わせて変更。
・テトの配色を元絵に合わせて変更。
・タイトルの「シ」の字の跳ねが本物より長いことに(今さら)気づいたので修正。


ナウシカベンチマークの謎
●すいません、進捗ありません。m(_._)m
そもそもこのページの表題である「ナウシカベンチマークの謎」とは何だったのか、 おさらいだけしておきます。(逃)
・ 上記掲載のエミュレータでのベンチマーク結果は、ルールとして、 リセット直後、BASIC起動して最初にロード&実行して計測しています。
・ ところが、FM77AV系のF-BASIC V3.3(or 3.4)の場合は2回目以降 2-3秒 早くなるんです。(ベンチマーク結果としては初回の数字を採用)
で、これはナウシカだけでなく、下のミンキーモモも同じ症状なんです。 この辺の詳細は従来ページをご覧ください。

(番外編)ミンキーモモベンチマーク
●ミンキーモモベンチマークをエミュレータ(と実機)で再現してみました。
ミンキーモモベンチマークとは、ナウシカベンチマーク登場以前に テクノポリス誌で標準的に使われていたベンチマーク(の一つ)です。
今回、Sasajiさん、Apaslothyさんのご協力を得て MB-S1 及び PC-8801MC/PC-8001mkIISR で実行していただけました。
御両名のご協力に感謝します。

参考:テクノポリス誌掲載のベンチマーク結果
(古い男の部屋さんのページを参考にさせていただきました。)
機種 モード 1982年12月号 1983年4月号 1983年8月号 1984年3月号 1984年6月号 1984年7月号 備考
PC-8801 不明 - - - - - オリジナル
PC-8801mkII - - - 1:10前後 不明 - オリジナルと同じ?
PC-8001mkII - >1:00 1:30 - - - 4色対応、TILE PAINT、WINDOWなし
X1D - - - 1:10前後 - - POINT命令以外はPC-8801版と同等
FM-7 - 0:40 0:40 - 0:37 - TILE PAINT、WINDOWなし
FM-77 - - - - - 0:34
MB-S1/10 - - - - 0:37 -
MULTI-8 - - 0:45 - - -
PASOPIA-7 - - 0:37 - - - WINDOWなし

1982年12月号に掲載されたPC-8801用プログラムがオリジナルです。
PC-8801系とX1系のみ、このオリジナル版(TILE PAINT、WINDOW使用)を継承しています。
これを「フルスペック版」と呼ぶことにします。
4色しか使えないPC-8001mkIIは仕方ないとして、それ以外の機種は、1983年4月号掲載のFM-7版
(TILE PAINT、WINDOWを使わない)をベースにベンチマークされています。 (PASOPIA-7のみTILE PAINT使用)
こちらを「サブセット版」と呼ぶことにします。

1984年当時は、「フルスペック版」を実行できる PC-8801系とX1系が遅かったため、
他の機種で「サブセット版」を使うようになったのだと推察できますが、この「サブセット版」
はよけいな2度塗りなどしていて、本来の性能を活かせていないです。
特に、MB-S1は「フルスペック版」を実行する能力があるのに、遅い「サブセット版」で評価されており、
性能が過小評価されていた、という悲しい事実があります。
また、PC-8801系はハード的に、X1系はソフト的にスピードアップされているので、
「フルスペック版」(相当)で横並びでベンチマークすべき、という判断をしました。

BASIC仕様の違い
機能 FM77 FM77AV PC80SR PC88 X1/X1T S1
LABEL x x x o o x
POINT x x o o x o
WINDOW x x x o o o
TILE PAINT x o o o o o
WHILE/WEND o o x o o o
変数名 16 40 2 40 240 16

そこで、今回は Apaslothyさんの協力を得て、テクノポリス誌1984年3月号に掲載されていたプログラムを
ベースに、あらためてベンチマークをやってみました。

エミュレータ編(1984年3月号版ベース)
エミュレータ モード他 BASIC 実行結果 備考・ご協力
eX1turbo 150917 CZ8FB02 V1.0 0:26
eX1 150917 CZ8FB01 V2.0 0:25
CZ8FB01 V1.0 2:03
ePC-8801MA 150828 V1S N88-BASIC V1.93 (mkII用システム) 0:51 @load.n88実行
V1H N88-BASIC V1.93 (mkII用システム) 0:28 @load.n88実行
V2 N88-BASIC V2.3 (FH用システム) 0:17
ePC-8001mkIISR 151223 N80SR N80SR-BASIC V1.0 0:27 Apaslothyさん,疑似WINDOW
XM7 V1.1 L77a FM-8 (CPU低速、サブ中速) F-BASIC V1.05 (MaskROM版SUB) 0:53 ナウシカTILE PAINT,
疑似WINDOW
FM-7 (CPU高速、サブ中速) F-BASIC V3.01 (Type_C SUB) 0:29
FM-77 (サブ高速) F-BASIC V3.02 (Type_C SUB) 0:26
XM7 V2.9 L77a FM77AV F-BASIC V3.3 L12 (Type_A SUB) 0:18 疑似WINDOW
XM7 V3.4 L77a FM77AV40EX F-BASIC V3.3 L30 (Type_A SUB) 0:14
mbs1 model05 0.3.0 128KB RAM S1 BASIC V1.0 0:16

実機編(1984年3月号版ベース)
機種 モード他 BASIC 実行結果 備考・ご協力
MB-S1/40 128KB RAM拡張 S1 BASIC V1.0 0:16 Sasajiさん
PC-8801MC 4MHz V1S 15KHz N88-BASIC V1.93 (FR用システム) 0:47 Apaslothyさん,
@load.v1実行
4MHz V1S 24KHz N88-BASIC V1.93 (FR用システム) 0:52
4MHz V1H 24KHz N88-BASIC V1.93 (FR用システム) 0:29
4MHz V2 24KHz N88-BASIC V2.3 (FR用システム) 0:17 Apaslothyさん
8MHzS V2 24KHz N88-BASIC V2.3 (FR用システム) 0:10
8MHzH V2 24KHz N88-BASIC V2.3 (FR用システム) 0:09
PC-8001mkIISR N80SR N80SR-BASIC V1.0 0:28 Apaslothyさん


各シリーズで最速の画面だけ掲載しておきます。(各画像をクリックするとフルサイズの画像になります。)
eX1_CZ8FB01V2_MM8403X1
Takedaさん作のX1turboエミュレータです。
Hu-BASIC(CZ8FB01) V1.0 ではかなり遅かったのですが、V2.0 で劇的に高速化されています。
X1turbo もほぼ同じ速度なのですが、僅差で X1 の方が速かったのでこちらを掲載しています。
X1が遅かったのはハードのせいじゃなくて、ソフトのせいだったようです。

ePC-8801MA_V2_MM8403
Takedaさん作のPC-8801MAエミュレータです。
V2モード(4MHz)でかなり高速化されています。
8MHzのモードは Apaslothy さんに実機計測していただきましたが、だんとつで最速です。

MM8403_NSR
Takedaさん作のPC-8001mkIISRエミュレータです。
Apaslothyさんにプログラム改良&画面取得していただきました。
エミュレータは実機より速い数字になるようです。
実機の測定結果より、PC-8001mkIISR は PC-8801mkIISR以降の機種の V1H 相当の性能と言えます。

XM7_FM77AV40EX_MM8403AV
PI.さん+りうさん作のFM-7/77AVシリーズエミュレータです。
WINDOW機能がないため、その分遅くなっています。
PC-8801FH/MH(8MHz機)には追いつけませんでした。
F-BASIC 3.x系はWINDOW機能ありませんので、LINE文やCIRCLE文、PAINT文の中で座標変換してます。
(表では疑似WINDOWと書いてますが)
また画面掲載してませんが、FM-7/77版では TILE PAINT は上の方のナウシカベンチマークの機械語プログラムを
取り込んでいます。またパレット機能を使わなくなったのでFM-8でも動くようになりました。

S1_128KB_MM8403W
Sasajiさん作のMB-S1エミュレータです。
実は、PC-8801FH/MH(8MHz機)が出るまでは最速だったのに、実力を活かせない「サブセット版」で評価されていた
という悲しい現実があります。



尚、本ページの各表の作成にはThinkさんのCSV→Table変換サイトのお世話になりました。
ありがとうございました。

F-BASIC詳細編を覗いてみる F-BASIC詳細編(その2:デモ画面集)を覗いてみる
FM77AVシリーズ システムディスク編を覗いてみる
FM77AVシリーズ デモ・入門ディスク編を覗いてみる
CP/M-80編を覗いてみる
OS-9編を覗いてみる
Flex編を覗いてみる
F-BASIC ファイルシステム(およびその上位互換)上に構築されたOS、開発システム
番外編(その1:ナウシカベンチマークの謎)を覗いてみる 従来ページ
番外編(その2:勝手に誤記修正編)を覗いてみる
番外編(その3:6809用MMU考察)を覗いてみる
番外編(その4:FM-77 謎のS1スイッチ)を覗いてみる
番外編(その5:FM-7,8シリーズのROM一覧)を覗いてみる
番外編(その6:FM-77用拡張メモリ他について)を覗いてみる
番外編(その7:FM-8/7/77/77AVシリーズの微妙な非互換性)を覗いてみる
緊急特集:MB22603の秘密 を覗いてみる
緊急特集2:FM-8ブートROMの秘密 を覗いてみる
超番外編:レベル3BASICとF-BASIC を覗いてみる
入り口ページに戻る


ご意見、ご要望はこちらまで(笑)
thasegaw@hotmail.com