1: 2004-07-23 (金) 02:08:42 [5] | |||
---|---|---|---|
Line 1: | Line 1: | ||
+ | * tek5/stk5における、eoptの簡単な見極め方 | ||
+ | -(by [[K]], 2004.07.23) | ||
+ | -初めに注意 | ||
+ | --OSASKアプリのMakefileを覗いたことがある人は分かると思いますが、OSASKアプリを生成する場合にbim2binは2度使われます。これを区別してeoptを使い分けるのがコツです。 | ||
+ | ---1回目は、bim→orgのとき | ||
+ | ---2回目は、org→binのとき | ||
+ | |||
+ | -ええと、以下のことは1バイトでも小さくしたい、というとき以外は気にすることはありません。デフォルトではベストではないにしても、たいていのものにそれなりにマッチするようになっていて、十分に小さくなります。 | ||
+ | -もっと小さくしたいなんていうときに、じゃあtek0を試してみようとか、プログラムをちょっと書き換えてやろうとか、そういう風に考えることがあるかと思いますが、そんなときあれこれ試す前に、以下のeoptやrjcを使えば簡単に(ちょっとは)改善できますよ、ということです。ここまでやらなきゃ恥だとか、試すことが推奨されるとか、そんなわけじゃありません。 | ||
+ | --時間をかけて自動でそこまでやることもあるまい、ということで手動オプションになっているくらいなのですから。 | ||
+ | |||
+ | *** OSASKアプリ編 | ||
+ | -bim→org | ||
+ | --eoptをつけなくてもたいていベストの結果になります。だからいじる必要なしです。 | ||
+ | --tek0時代のアプリを再makeする場合は、bim2binのデフォルトがtek5になっているので、-tek0をつけて強制的にtek0にするか、もしくはobj2bimでのスタックが36k以上になっていることを確認してください(tek5を利用する場合にかきり、最小スタックは4kではなく36kです)。 | ||
+ | -org→binのとき | ||
+ | --超小さいアプリ: (eoptなしで圧縮したときに500バイト以下) | ||
+ | rjc:0 eopt:-pb0_-lc0 | ||
+ | --小さいアプリ: (eoptなしで圧縮したときに10KB以下) | ||
+ | eopt:-pb0_-lc2 | ||
+ | --大きいアプリ: (eoptなしで圧縮したときに100KB以下) | ||
+ | eopt:-pb0_-lc4 | ||
+ | --超大きいアプリ: (eoptなしで圧縮したときに100KB以上) | ||
+ | eopt:-pb0_-lc8 | ||
+ | |||
+ | *** データ編 | ||
+ | -sarやSF16アーカイブの場合は、その中身を構成するファイルのうちで、一番影響がありそうなものを想定して、それにあわせてパラメータを選ぶといいでしょう。 | ||
+ | --普通のテキストファイルや、16色もしくは256色BMP、もしくは実行コード。つまり基本的に1バイト単位か、もしくはファイル構造に明確な周期が存在しないもの(以下にどれにも該当しない周期の場合もこれにするのが良さそう)。 | ||
+ | eopt:-pb0 | ||
+ | --全部全角でしかも改行コードがCRLF(WindowsやMS-DOSでの標準改行コード)で、TABなどを一切使っていないもの。もしくは16ビットカラーのBMP。つまり基本的に2バイト単位でデータが構成されているもの。 | ||
+ | eopt:-pb1 | ||
+ | --バイナリデータなどで、データ構造が4バイト単位になっているもの。 | ||
+ | eopt:-pb2 | ||
+ | --バイナリデータなどで、データ構造が8バイト単位になっているもの。 | ||
+ | eopt:-pb3 | ||
+ | --バイナリデータなどで、データ構造が16バイト単位になっているもの(例:JPN16V00.FNTとか)。 | ||
+ | eopt:-pb4 | ||
+ | |||
+ | * こめんと欄 | ||
+ | #comment |
(This host) = http://osask.net