relnotes20J.jp
16 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
02/01/99 OS2.0J RELEASE NOTES
==============================
概要:
-----
今回の NINTENDO64 OS2.0J のリリース(RCP 2.0 用バージョン
2.0J ) は、2.0I 以降にリリースされた様々のパッチを含んでいま
す。
#ifdef SGI
2.0C リリースにおいて説明した、R4300 CPU の乗算の不具合に注
意してください。この不具合を解消するには、IRIX5.3 に含まれて
いるパッチをインストールする必要があります。簡単な説明を後述
の付録 A で行っています。より詳しいパッチインストール指示は、
そのパッチに添付されるリリースノートで説明しています(このパ
ッチはこのメディアにも含まれています)。
#endif /* SGI */
/usr/src/PR/demos の下のサンプルプログラムが一新され、今後
もサポートされるサンプルプログラムは /usr/src/PR/demos にイン
ストールされ、今後サポート対象外となるサンプルプログラムは
/usr/src/PR/demos_old に移りました。その他の詳しい構成に関し
ては、/usr/src/PR/README.jp を参照してください。
各デモソフトの説明は /usr/src/PR/demos/README_DEMOS.jp を参照
してください。
また、インストール前には /usr/src/PR を全て消去またはバック
アップしておくことをお勧めします。
これにより、古いディレクトリと新しくインストールされたディレク
トリが混在し、分かりにくくなることを事前に防ぐことができます。
/usr/src/PR/demos/README_DEMOS.jp および、/usr/src/PR/demos/
の下のいくつかのサンプルプログラムのディレクトリにある README
内に、"gload" を実行する、というような記述がありますが、これは
Indy + 開発ボード の開発環境におけるプログラムの実行方法です。
PARTNER 開発環境、及び、Monegi Smart Pack 開発環境、IS 開発環
境を使用されている方は、各々に付属のマニュアルにおけるプログラ
ムの実行方法にしたがって実行してくださるようお願いします。
#ifdef SGI
インストール時にコンフリクトが起き、「パッチが依存しているた
めに古いバージョンを消去できない」と出ることがあります。そのと
きは「パッチも消去する」を選んでください。
#endif /* SGI */
2.0I では 64DD 開発環境、n_audio 開発環境が別パッケージとなっ
ておりましたが、今回の2.0J では ultra に全て統合されました。
新しい機能:
-----------
OS
/usr/include/PR の以下に os_version.h を追加し、以下のバージ
ョンストリングを定義しました。
#define OS_MAJOR_VERSION "2.0J" /* major version */
#define OS_MINOR_VERSION 0 /* patch level */
TOOL
/usr/lib/PR 以下に dn というツールを追加しました。このツール
は開発用ディスクの一部にあった不具合を修正するためのものです。
詳しい使用方法等は「NINTENDO64 Developer News 2.0」でお知らせ
します。
新しいサンプルプログラム:
-------------------------
#ifdef SGI
gl
PARTNER-N64 用のゲームローダーです。PARTNER-N64 の HostIO 機能を
使用し、コマンドラインから ROM イメージを読み込み、実行すること
ができます。
#endif /* SGI */
変更されたサンプルプログラム:
-----------------------------
今回もっとも大きな変更点は、旧マイクロコード( Fast3D )から最
新のマイクロコード( F3DEX2 )への変更にあります。
reboot
サンプルプログラム reboot において、makefat を変更し、被起動ゲ
ームのブートセグメントのサイズを取得するようにしました。また、
使用している64DD アクセス用のモジュールを若干整備しました。
#ifdef SGI
以前は、使用する漢字を SJIS のコードで保持しておき表示していま
したが、これを変更し、EUC で保持しておき、実行時に SJIS に変換
して表示するように変更しました。
#endif /* SGI */
autofill
Fast3D.dram を Fast3D.fifo に変更しました。アーギュメント引数の
ハンドリングを行っている部分を、PIマネージャーの登録後に変更し
ました。dram_stack.c を追加し、RCP のバッファのアライメントの指
定を追加しました。
blockmonkey
Fast3D.dram を削除しました。Fast3D.xbus, Fast3D.fifo を
F3DEX2.xbus, F3DEX2.fifo に変更しました。アーギュメント引数の
ハンドリングを行っている部分を、PIマネージャーの登録後に変更し
ました。
bumpmap
Fast3D.dram を削除しました。Fast3D.xbus, Fast3D.fifo を
F3DEX2.xbus, F3DEX2.fifo に変更しました。dram_stack.c を追加し、
RCP のバッファのアライメントの指定を追加しました。
chrome
Fast3D.dram を削除しました。Fast3D.xbus, Fast3D.fifo を
F3DEX2.xbus, F3DEX2.fifo に変更しました。dram_stack.c を追加
し、RCP のバッファのアライメントの指定を追加しました。以前のバ
ージョンではアーギュメント引数処理の部分で無限ループに入ってし
まう事があったため、修正しました。アーギュメント引数のハンドリ
ングを行っている部分を、PIマネージャーの登録後に変更しました。
ddspgame
ddspgame でのディスクアクセスをモジュール化し、reboot と同じ形
でディスクにアクセスするように変更しました。
以前の ddspgame では、一部のコマンドでは実行後、エラー番号とそ
のエラーが続けて発生した場合その回数を表示していましたが、これ
をやめ、単にエラー番号のみを小さく表示するように変更しました。
また、以前のバージョンでは ERROR_DONT_STOP を定義してコンパイル
すると、エラーが起きても停止せずに次のコマンドが実行できるよう
な仕様になっていましたが、これを変更し、エラーが起きれば次のコ
マンドが実行できないような仕様に変更しました。
#ifdef SGI
以前は、使用する漢字を SJIS のコードで保持しておき表示していま
したが、これを変更し、EUC で保持しておき、実行時に SJIS に変換
して表示するように変更しました。
#endif /* SGI */
Fast3D.dram を削除しました。Fast3D.xbus, Fast3D.fifo を
F3DEX2.xbus, F3DEX2.fifo に変更しました。Lボタンで F3DEX2.xbus,
Rボタンで F3DEX2.fifo を使用するように変更しました。
ci8fb
Fast3D.dram を削除し、Fast3D.xbus を F3DEX2.fifo に変更しました。
アーギュメント引数のハンドリングを行っている部分を、PIマネージ
ャーの登録後に変更しました。dram_stack.c, rdp_output.c を追加
し、RCP のバッファのアライメントの指定を追加しました。
detail
Fast3D.dram を削除し、Fast3D.xbus を F3DEX2.xbus に変更しました。
F3DEX2.fifo を追加しました。
fogworld
Fast3D.dram と Line3D.dram を削除し、L3DEX2.fifo と F3DEX2.fifo
に変更しました。Fast3D.xbus を F3DEX2.xbus に変更しました。
gbpak
画面上のメッセージを英語で表示するモードを追加しました。make 時
に "make LANG_ENGLISH=YES" とすれば、メッセージが英語で表示され
るように変更しました。デフォルトは、今まで通り日本語です。
ground
メニューのDUMPはエミュレータ─ボードのみ対応に変更しました。
Fast3D.dram を削除しました。Fast3D.xbus を F3DEX2.xbusに変更し
ました。F3DEX2.fifo を追加しました。
gs2dex
メニューのキー操作方法の改善およびコンソールに選択メニューの表
示を追加しました。
lights
Fast3D.dram を削除しました。Fast3D.xbus を F3DEX2.xbus に変更し
ました。 F3DEX2.fifo を追加しました。パッドの上/下を押したら影
が上/下に動くようにキー操作を変更しました。dram_stack.c を追加
し、RCP のバッファのアライメントの指定を追加しました。以前のバ
ージョンではアーギュメント引数処理部分で無限ループに入ってしま
う事があったため、修正しました。
mipmap
Fast3D.dramを削除しました。Fast3D.dram を F3DEX2.xbus に変更し
ました。 F3DEX2.fifo を追加しました。
morphcube
Fast3D.xbus を F3DEX2.xbus に変更しました。
morphfaces
Fast3D.xbus を F3DEX2.xbus に変更しました。
nnsample1
F3DEX.fifo を F3DEX2.fifo に変更しました。dram_stack.c ,
rdp_output.c を追加し、RCP のバッファのアライメントの指定を追加
しました。
nnsample2
F3DEX.fifo を F3DEX2.fifo に変更しました。dram_stack.c,
rdp_output.c を追加し、RCPのバッファのアライメントの指定を追加
しました。
nosPak
Fast3D.dram を削除しました。Fast3D.xbus を F3DEX2.xbus に変更し
ました。 F3DEX2.fifo を追加しました。
dram_stack.c, rdp_output.c を追加し、RCP のバッファのアライメ
ントの指定を追加しました。以前のバージョンではアーギュメント引
数処理の部分で無限ループに入ってしまう事があったため、修正しま
した。
onetri
Fast3D.dram を削除しました。 Fast3D.xbus を F3DEX2.xbus に変更
しました。 dram_stack.c, rdp_output.c を追加し、RCP のバッファ
のアライメントの指定を追加しました。
onetri-fpal
osViExtendVStart関数を削除しました。
overlay
PC で動作するように修正しました。 Fast3D.xbus を F3DEX2.xbus に
変更しました。 rdp_output.c を追加し、 RCP のバッファのアライ
メントの指定を追加しました。以前のバージョンではアーギュメント
引数処理部分で無限ループに入ってしまう事があったため、修正しま
した。
__MWERKS__を定義すると、CodeWarriorでオーバーレイができるように
変更しました。
polyline
Fast3D.xbus を F3DEX2.xbus に変更しました。 Line3D.xbus を
L3DEX2.xbus に変更しました。
spgame
Fast3D.dram を削除しました。Fast3D.xbus を F3DEX2.xbus に変更し
ました。 dram_stack.c を追加し、RCP のバッファのアライメントの
指定を追加しました。いくつかのデッドコードを削除しました。
RDP の処理時間の計測方法をgspF3DEX2.fifoに変更したため、
osSpTaskStart() から RDP の終了までを RDP の処理時間と変更しま
した。アーギュメント引数のハンドリングを行っている部分を、PIマ
ネージャーが生成された後になるよう変更しました。
#ifdef SGI
spin
N64側の表示をF3DEX2に変更しました。
#endif /* SGI */
spritemonkey
キー操作を変更しました。
terrain
Fast3D.dram を削除しました。Fast3D.xbus を F3DEX2.xbus に変更し
ました。F3DEX2.fifo を追加しました。メニュー一覧から dumpメニュ
ーを削除しました。
texlight
Fast3D.dram を削除しました。 Fast3D.xbus を F3DEX2.xbus に変更
しました。 F3DEX2.fifo を追加しました。メニュー一覧から dump メ
ニューを削除しました。 dram_stack.c を追加し、RCP のバッファの
アライメントの指定を追加しました。いくつかのデッドコードを削除
しました。アーギュメント引数のハンドリングを行っている部分を、
PIマネージャーが生成された後になるように変更しました。
tile_rect2d
Fast3D.xbus を F3DEX2.xbus に変更しました。いくつかのデッドコー
ドを削除しました。 RCP のバッファのアライメントの指定を追加しま
した。
tile_rect3d
Fast3D.xbus を F3DEX2.xbus に変更しました。
topgun
Fast3D.dram を削除しました。Fast3D.xbus を F3DEX2.xbus に変更し
、F3DEX2.fifo を追加しました。いくつかのデッドコードを削除しま
した。 RCP のバッファのアライメントの指定を追加しました。
アーギュメント引数のハンドリングを行っている部分を、PIマネージ
ャーが生成された後になるように変更しました。
tron
Fast3D.xbus を F3DEX2.xbus に変更しました。
変更された機能:
---------------
OS
/usr/include/PR 以下の os.h を機能毎に分割しました。今まで通り
os.h をインクルードすれば問題になることはありません。
これまで、OSContStatus 構造体のメンバ変数 type の各ビットに
対して CONT_JOYPORT と CONT_ABSOLUTE をチェックしていた部分を
CONT_TYPE_MASK でマスクした後に、CONT_TYPE_NORMAL かどうか比較
するように変更しました。この仕様変更に伴い修正したサンプルプロ
グラムは、下記の通りです。
ddspgame
gbpak
eeptest
pfs
reboot
詳細は、プログラミング・マニュアル26章を参照ください。
修正された問題点:
-----------------
AUDIO
osAiSetNextBuffer の不具合を修正しました。
RCP ハードウェアには、波形データの最終アドレス(正確には最終
データの次のバイトアドレス)の下位 13 ビットが 0 である場合、
その次の波形データを DMA する際に 0x2000 バイト先のアドレスか
ら DMA するという不具合があります。
これを回避するプログラムは既にあったものの、完全に機能してい
なかった部分があり、プチノイズの原因となっていたため、これを
修正しました。( Nusystem をお使いのユーザは、旧バージョン OS
を使っても問題はありません。)
GRAPHICS
OS
デバッグライブラリを使用時、ライブラリ関数の引数として本来の
値の範囲外の値を入れたりした場合、OS 内で内部関数 __osError
がコールされます。この __osError はその旨を表示する関数なので
すが、PARTNER ではうまく動作していませんでした。これを、
PARTNER 使用時には osSyncPrintf を使用して表示するように分岐
するようにしたため、PARTNER においても正常に表示させることが
できるようになりました。
コントローラパックの I-NODE の値が 0x80 以上の場合に、
osPfsChecker() 、または、osPfsInitPak() を呼び出したとき、正
常に動作せずにハングアップする可能性があるというバグを修正し
ました。具体的な現象としては、以前のものでは、コントローラパ
ックの内容をすべて 0xff で埋めて、PC 版のサンプルプログラム
nosPak で内容を修復しようとしたときに、ハングアップしていまし
た。
#ifdef PC
NDEBUG が定義されている時の assert の動作を修正しました。
今回から libgultra.a では assert 関数 を使用できないように変
更しました。assert 関数を使用する場合は、libgultra_d.aをご使
用ください。
#endif /* PC */
TOOL
拡張された機能:
---------------
AUDIO
GRAPHICS
OS
spDraw() を、64DD 内蔵フォントが表示できるように変更しました。
64DD 内蔵フォントを使用するときは spDraw() に入れるスプライ
ト構造体の bmsiz メンバに G_IM_SIZ_4b の代わりに G_IM_SIZ_DD
を指定してください。
F3DEX2 シリーズマイクロコードのバージョンが 2.08 になりました。
詳しくは /usr/src/PR/doc/gfxucode.F3DEX2/README.jp を参照し
てください。
64DD
従来の n64mdisk は、入力となる gwrite のライン数の最大値が
1024 でしたが、これを 5120 にしました。バージョンは 1.11 にな
っています。
今後サポートされないサンプルプログラム:
---------------------------------------
下記のサンプルプログラムは、/PR/demos_old/ に移動しました。
#ifdef SGI
cptest
#endif
gtdemo
hostio
print
simple
turbomonkey
#ifdef PC
host_test
#endif
今後サポートされない機能:
-------------------------
osViExtendVStart という関数がありましたが、欧州地域での検証が
不十分という問題があり、また、あまり使われていない現状からサポ
ート対象外の関数とさせて頂きました。
注意点:
-------
#ifdef SGI
OS2.0J は、IRIX5.3, 6.2, 6.3 において動作します。IRIX6.5はサポ
ート対象外ですので、バージョンアップしないようご注意ください。
#else
OS2.0J は、Windows95, Windows98, WindowsNT4.0 SP3 において動作
します。 WindowsNT4.0 SP4 はサポート対象外ですので、バージョン
アップしないようご注意ください。
#endif
ドキュメント:
-------------
ddspgame の簡単な説明内容を変更し ddspgame/README.jp に入れま
した。
----------------------------------------------------------------------
警告:
----------------------------------------------------------------------
グラフィックス:
---------------
オーディオ:
-----------
OS:
---
デモ:
-----
ツール:
-------
デバッガ:
---------
----------------------------------------------------------------------
付録A
----------------------------------------------------------------------
以前のリリースから認識しておく必要のあった重要な注意:
-----------------------------------------------------
#ifdef SGI
アプリケーション 'spin' を実行するためには‘sgitcl’が必要
です。
このツールは IRIX5.3 のディストリビューション CD に含まれてい
ますが、便宜上このリリースにも含められています。あなたが
NINTENDO64 ソフトウェア開発環境をデフォルトのまま、インストー
ルする時にはインストールされません。
システムには IRIX パッチ patchSG0001118 をインストールする
必要があります。このパッチは、R4300 問題を回避するために、あ
なたのCコンパイラとアセンブラをフィックスするものです。この
パッチは便宜上このリリースにも入っています。NINTENDO64 ソフト
ウェア開発環境をデフォルトでインストールした場合にはこれはイ
ンストールされません。インストール指示の詳細は
patch1118/patchSG0001118/relnotes/ch1.z を見てください。
注:インストールする際にはこのパッチを選択する必要がありま
す。
‘inst’のデフォルトインストールではパッチはインストールされ
ません。従って、このパッチがインストールされるよう明示的に示
さなければなりません。(より詳しい情報は inst のオンラインマニ
ュアルにあります。)
#endif /* SGI */