2006/06/16(金) [n年前の日記]
#3 [iappli] class を融合中
class の数を減らすと何百 byte 単位でサイズ削減できることに気づいた。ので、そのあたりの作業をひたすら行ったり。もはやソースの可読性はほとんどなし。トホ。
携帯の Java は、Java に非ず。どこの世界に、「class を作るな」「class を作ると動かないぞ *1 」なんて Java があるのかと。
感覚的には 8bit PC 時代の BASIC に近いのかもしれない。ワーク等を配列だけで持ってどうにかする、みたいな。int x[敵の数] とか int y[敵の数」とか。そんな書き方を半強制されるあたり、下手するとアセンブラより制限がキツイかも。アセンブラですら構造体っぽいワークの割り振りは当たり前なのに。…どういう書き方で何byte消費するかハッキリしてないあたりも厳しい。これまたアセンブラなら、命令表を見れば byte 数だって書いてあるのに。と言っても、さすがに並列処理するCPU向けにアセンブラでガリガリと、てなわけにはいかんわな。各機種で違うCPUも載ってるのだろうし。…せめてもうちょっと、byte数を容易に算出できる方法がないものか。
考えてみると。30Kbyteってのは、MZ-700の総メモリ容量の半分程度ですよ。Hu-BASICをロードした状態で空いてるメモリ、とかそんな感じ。でも、MZ-700 が手の中にすっぽり入ってしまったと考えると、それはそれでかなり凄いことのような。が、しかし、30Kbyte って、JPEGのエロ画像1枚ですら「それじゃ足りねえ」と言われるサイズだよな…。
携帯の Java は、Java に非ず。どこの世界に、「class を作るな」「class を作ると動かないぞ *1 」なんて Java があるのかと。
感覚的には 8bit PC 時代の BASIC に近いのかもしれない。ワーク等を配列だけで持ってどうにかする、みたいな。int x[敵の数] とか int y[敵の数」とか。そんな書き方を半強制されるあたり、下手するとアセンブラより制限がキツイかも。アセンブラですら構造体っぽいワークの割り振りは当たり前なのに。…どういう書き方で何byte消費するかハッキリしてないあたりも厳しい。これまたアセンブラなら、命令表を見れば byte 数だって書いてあるのに。と言っても、さすがに並列処理するCPU向けにアセンブラでガリガリと、てなわけにはいかんわな。各機種で違うCPUも載ってるのだろうし。…せめてもうちょっと、byte数を容易に算出できる方法がないものか。
考えてみると。30Kbyteってのは、MZ-700の総メモリ容量の半分程度ですよ。Hu-BASICをロードした状態で空いてるメモリ、とかそんな感じ。でも、MZ-700 が手の中にすっぽり入ってしまったと考えると、それはそれでかなり凄いことのような。が、しかし、30Kbyte って、JPEGのエロ画像1枚ですら「それじゃ足りねえ」と言われるサイズだよな…。
*1: サイズ制限に引っかかるから。
[ ツッコむ ]
以上です。