*/共通して言えるテクニック:一般に普通のlib関数でnon-malloc化したやつのポインタ(たとえばVP(&textbox)など)を利用すると、普通よりもサイズを食います(まあ違いは1バイトとかその程度ですが)。VP(&textbox);などとstaticじゃない普通の変数にいったん代入して、execcmdのときはVP(&textbox)、普通のlib関数のときはptbox、というように使い分けるとさらにコンパクトにできることがあります。(LIB_FN_OPENWINDOW1)slotのところに1を足しておいてください(たとえばVP(0x200)の代わりに、VP(0x200+1)とする)。(LIB_PUTSTRING)文字列の部分をそのままVP("test060")などとする場合は、optに0x4000を足してください(註:より正確にはORする)。0)とVPS展開する場合は、optに0x4000を足す必要はありません。一般にVPS展開するほうがコンパクトになります。VPS展開の場合、4文字づつ書くことになりますが、切りが悪いときは後ろに0を並べておいてください。VPSでないときは最後に0x000cを追加します。以下に例を挙げておくので参考にしてください。(LIB_FN_FLUSHGRAPHBOX)最後に0x000cを追加。(LIB_FN_PUTBLOCK1)先頭にoptとして1を追加。最後に0x000cを追加。(LIB_FN_DRAWPOINTS1)最後に0x000cを追加。(LIB_FN_DRAWPOINT0)xとyのあとに、またxとyを追加(実はdrawline0でごまかしているため)。(LIB_FN_PUTBLOCK02001)先頭にoptとして0x2001を追加。(LIB_FN_PUTBLOCK02001)先頭にoptとして0x2001を追加。(LIB_FN_PUTBLOCK03001)先頭にoptとして0x3001を追加。(LIB_FN_DRAWPOINTS0)最後に0x000cを追加。(LIB_FN_DEFINESIGNAL)0p0の場合は、最後に0を2つ追加1p0の場合は、signalの前に1を追加、signalの後ろに0を追加。attr)みたいに)。(LIB_FN_UNMAPMODULE)addrの後ろに0x000cを追加。(LIB_FN_LOADFONTSET)最後に0x000cを追加。(LIB_FN_WSJIS2GG00JPN0)先頭にoptとして1を追加、sjisとgg00jpnの後ろにそれぞれ0x000cを追加。(LIB_FN_SEUC2GG00)先頭にoptとして2を追加、seucとgg00のうしろにそれぞれ0x000cを追加。(LIB_FN_DRAWLINES0)最後に0x000cを追加。(LIB_FN_CONVLINES)最後に0x000cを追加。(LIB_FN_DRAWLINES1)最後に0x000cを追加。(LIB_FN_RESIZEMODULE)sigの前に1を追加。19:56このサイトは川合秀実から委託を受けて、OSASKコミュニティによって管理・運営されています。このサイトに関するお問い合わせは掲示板にお願いいたします。