試してみた方が手っ取り早いという事で、
実際にやってみました。
念のため実機でも確認しましたが、Windows上での実行結果と同じで
保存データサイズ < 読み込みデータサイズ の場合は
エイカさんの予想通り、余っている箇所は0が入り他は全て同じでした。
逆に
保存データサイズ > 読み込みデータサイズ の場合
gdata(0,0,0)など両方に存在する配列の数値は一致しているものの、
読み込みデータに無い配列は切り捨てられているようです。
(無理に参照するとエラーになります)
以下確認用ソース
さすがに60とかだと確認が面倒なので
保存:dim gdata, 2, 3, 4
読込:dim gdata, 2, 3, 5
とさせていただきました。
#include "hsp3dish.as"
d1 = 2;
d2 = 3;
d3 = 4;
buf = "";
dim gdata, d1, d2, d3;
repeat d1
p1 = cnt;
repeat d2
p2 = cnt;
repeat d3
gdata(p1, p2, cnt) = rnd(100); // 適当な数値を格納
loop
loop
loop
gosub *print_data; // 全て表示
bsave "mn-gdata.sav", gdata; // 一旦保存
d3++;
dim gdata, d1, d2, d3; // 配列の要素を変更して初期化
bload "mn-gdata.sav", gdata; // 読み込み
gosub *print_data; // 全て表示
stop;
*print_data
redraw 0
color 255, 255, 255:boxf;
color 0, 0, 0:pos 0, 0;
repeat d1
p1 = cnt;
repeat d2
p2 = cnt;
repeat d3
buf += strf("%2d", gdata(p1, p2, cnt));
if( (cnt+1) == d3 ) {
buf += "\n";
}
else {
buf += ", ";
}
loop
loop
loop
buf += "============================\n";
mes buf;
redraw 1
return;
ちなみに配列が(ほぼ)一致するのは、配列の最後の数値の増減だけで
1次元目を変更
保存:dim gdata, 2, 3, 4
読込:dim gdata, 5, 3, 4
2次元目を変更
保存:dim gdata, 2, 3, 4
読込:dim gdata, 2, 5, 4
のように別の箇所が変わっていた場合は入る数値の場所が変わります。