トップページ⇒tech
1001コメント220KB

【最適化機能】HSP初質51 【それは通常の3倍】

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん2006/03/17(金) 11:42:01
■とりあえずこれを嫁。
  http://www.geocities.jp/hsp_summary/law.html

 ■ 前スレ
  【オフィシャル発売】HSP初質P50【コンテスト選考】
  http://pc8.2ch.net/test/read.cgi/tech/1132612819/

 ■HSPの入手はここから(HSP2.61、HSP3.0公開中。)
  □Hot Soup Processor Page
    http://www.onionsoft.net/hsp/

 ■HSPの各種情報
  □HSP Wiki
    http://quasiquote.org/hspwiki/
    http://quasiquote.org/hspwiki/2%a4%c1%a4%e3%a4%f3%a4%cd%a4%eb%a4%ce%a5%b9%a5%ec%a5%c3%a5%c9

 ■HSPLetの入手はここから(ブラウザ上でHSPを動かす)
  □HSP BIGINNER'S CLUB
    http://www.rinku.zaq.ne.jp/ultimate/
  □HSPLet3.0
    http://www.group-finity.com/HSP/HSPLet/

 ■HSPスレまとめページ
  □Hot Soup Processor@2ch
    http://hsp2ch.hp.infoseek.co.jp/
    http://www.geocities.jp/hsp_summary/
0002デフォルトの名無しさん2006/03/17(金) 11:45:03
2げっと
0003デフォルトの名無しさん2006/03/17(金) 12:04:23
HSP最強。
射精した。
0004デフォルトの名無しさん2006/03/17(金) 12:12:40
β2が出てるんだけど最適化機能の使い方が書いてねーょ
0005デフォルトの名無しさん2006/03/17(金) 13:42:27
ここ立てたら、向こう必死になってる〜〜ワロスwww
0006デフォルトの名無しさん2006/03/17(金) 13:50:33
HSPで彼女ができそうになりました
0007”削除”希望2006/03/17(金) 14:25:26
HSP初質51
http://pc8.2ch.net/test/read.cgi/tech/1142529119/
0008デフォルトの名無しさん2006/03/17(金) 15:01:35
最適化機能って
もしかしてランタイムのサイズ以下にはならないと言うことか?
0009デフォルトの名無しさん2006/03/17(金) 15:11:45
結局ランタイム再コンパイル?
削りに削って80k
0010http://www.vector.co.jp/soft/win95/util/se072729.html2006/03/18(土) 19:24:24
64bitに対応したトリップ検索プログラムありますか?

TextSS のWindowsXP(Professional)64bit化おながいします

もしくは64bitにネイティブ対応したテキスト置換ソフトありますか?
0011デフォルトの名無しさん2006/03/19(日) 09:52:02
旅行言ってる間に#cmpoptプリプロセッサ命令の情報
入ってると思ったら未だなのね。 

つっか何処のスレ使うわけ?
0012デフォルトの名無しさん2006/03/19(日) 16:11:34
VC++ 2005 EEで作ったランタイム、R60341エラーだってさ
マニフェストの記述が違うようだ。
0013デフォルトの名無しさん2006/03/19(日) 20:49:55
まさか
#include "comctl32.as"
#include "gdi32.as"
#include "kernel32.as"

とかした時に威力を発揮するなんて事は・・・ないだろうなw


0014122006/03/19(日) 20:51:50
マニフェストの埋め込みできねぇ orz
0015デフォルトの名無しさん2006/03/20(月) 08:01:05
>>13
それ、あたりかもww
0016デフォルトの名無しさん2006/03/20(月) 09:48:39
>>14 普通にコンパイルして
mt.exe -inputresource:test.exe -manifest test.exe.manifest -outputresource:test.exe
だって
manifestはリンカが勝手に作るってwww
0017デフォルトの名無しさん2006/03/20(月) 10:01:06
warning C4996: 'strcpy' が古い形式として宣言されました。

strcpy -> strcpy_s とかwwワロスwww
0018デフォルトの名無しさん2006/03/20(月) 11:31:07
>>16 MSVCR80.dllを使うときだけね
0019デフォルトの名無しさん2006/03/22(水) 00:45:22
あまり期待してなかった日本が勝ったわけで
今日は見てたよ。
0020デフォルトの名無しさん2006/03/22(水) 17:20:20
「10月以降に再度日韓戦を」 韓国野球委員会総裁


今更始まったことではないがwwww

0021デフォルトの名無しさん2006/03/22(水) 22:18:47
起動時のウィンドウのチラツキが 直ってるような気がする。
0022デフォルトの名無しさん2006/03/22(水) 22:20:01
>>11
言ってる->行ってる
0023デフォルトの名無しさん2006/03/23(木) 00:53:16
おにーたまはなぜ、#cmpoptの説明を渋っているのか・・・
実は、実装されてないのでは?
0024デフォルトの名無しさん2006/03/23(木) 18:40:01
ヘルプ嫁。
まあ実装は>>13のとおりなわけだが
0025デフォルトの名無しさん2006/03/23(木) 19:12:53
おにーたま、3/20に密かに更新してたなww

■ 解説
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
スクリプトコンパイル時の動作を指定します。
オプション名、の後スペース又は TAB を入れてパラメーター
(文字列の場合は「"strings"」のように指定)を記述して下さい。
#cmpoptで指定できるキーワードは以下の通りです。

オプション | 内 容 | 初期値
------------------------------------------------------
ppout | プリプロセッサファイル出力 | 1
| (0=なし/1=出力する) |
optcode | 不要なコードの最適化 | 1
| (0=なし/1=最適化する) |
optinfo | 最適化の情報ログ出力 | 0
| (0=なし/1=出力する) |
------------------------------------------------------

以下の例では、プリプロセッサ結果をファイル出力します。

例 :
#cmpopt ppout 1

#cmpopt命令は、基本的にスクリプトの先頭に記述してください。
複数の#cmpopt命令が記述されている場合は、最後の設定が有効になります。
特定の範囲だけにオプションを適用するような書き方はできません。
0026デフォルトの名無しさん2006/03/23(木) 19:20:01
夢が・・・ゼータの夢が・・・・・_| ̄|○
0027デフォルトの名無しさん2006/03/23(木) 19:29:21
ないよりはいいが、
皆が期待していた最適化機能とは、こういう事なのか?

俺は違うな。
0028うには、HSP製?2006/03/24(金) 03:31:27

47氏の発言集の中でHSPってのが出てくるwww

まっ 最終的には違うけどねww
0029デフォルトの名無しさん2006/03/24(金) 08:22:10
では、これから
#include "comctl32.as"
#include "gdi32.as"
#include "kernel32.as"

のように書いてあるサンプルが増えるのかな。

sptrとwptrに統一してあって不都合はないのか?
0030デフォルトの名無しさん2006/03/24(金) 09:08:18
つっか最適化されてるわけ?

#cmpopt ppout 1
#cmpopt optcode 1
#cmpopt optinfo 1

#include "kernel32.as"


repeat 5
Beep 262, 500
wait 50
loop
stop

#cmpopt optinfo 1 これは (最適化の情報ログ出力)どこ?



0031デフォルトの名無しさん2006/03/24(金) 09:13:09
>>30 されてるだろ。

#cmpopt ppout 1
#cmpopt optcode 0
#cmpopt optinfo 1

#include "kernel32.as"

repeat 5
Beep 262, 500
wait 50
loop
stop

optinfo はシラネ
0032302006/03/24(金) 09:18:43
あっ・・・_| ̄|○ ・・・ほんとだ・・。
0033デフォルトの名無しさん2006/03/24(金) 18:46:28
なんか突撃してるな。
0034デフォルトの名無しさん2006/03/25(土) 14:27:41
最適化機能・・・なんの魅力もなく・・・
#uselib "user32.dll"
#func xxxxxxxxxxx
のように書く癖がついてるから・・。モジュールだって使うやつしか書かないし。
0035デフォルトの名無しさん2006/03/25(土) 17:34:47
巨人も終わったなw
0036デフォルトの名無しさん2006/03/25(土) 22:23:07
SetCooperativeLevel(hWnd, DDSCL_NORMAL)してもデスクトップに描画されます

なぜ?

0037デフォルトの名無しさん2006/03/26(日) 15:39:35
>36
誤爆? ここで質問してもなぁ
0038デフォルトの名無しさん2006/03/26(日) 21:50:32
WM_NOTIFY なんだな
0039デフォルトの名無しさん2006/03/26(日) 21:55:37
NMHDRなんだな
0040デフォルトの名無しさん2006/03/26(日) 21:59:17
結局ランタイム削るしかないわけで・・・

[hsp3c.hrt]
コンパクト版HSPランタイムです。
標準のHSP3から、COM関連機能、及びgrect、grotate、gsquare命令が削除されています。

ってなってるけどCOMはHSP_COM_UNSUPPORTEDでいいけど

grect、grotate、gsquareはどこを削るの?

0041デフォルトの名無しさん2006/03/26(日) 22:01:27
サイズは、12 なんだなぁ〜
0042デフォルトの名無しさん2006/03/26(日) 22:12:28
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<dependency>
<dependentAssembly>
<assemblyIdentity type="win32" name="Microsoft.VC80.CRT" version="8.0.50608.0" processorArchitecture="x86" publicKeyToken="1fc8b3b9a1e18e3b" />
</dependentAssembly>
</dependency>
<dependency>
<dependentAssembly>
<assemblyIdentity type="win32" name="Microsoft.Windows.Common-Controls" version="6.0.0.0" processorArchitecture="X86" publicKeyToken="6595b64144ccf1df" language="*" />
</dependentAssembly>
</dependency>
</assembly>
0043デフォルトの名無しさん2006/03/26(日) 22:17:31
/O1 スペースを最小化する /O2 スペースを最大化する
/Ob<n> インライン展開 (既定値 n=0) /Od 最適化を無効にする (既定)
/Og グローバルな最適化を有効にする /Oi[-] 組み込み関数を有効にする
/Os コード スペースを優先する /Ot コードのスピードを優先する
/Ox 最大限の最適化
/Oy[-] フレーム ポインタの省略を有効にする

/Ox ってどうなん?
0044デフォルトの名無しさん2006/03/27(月) 19:40:37
どこをどうすればこいつが(安藤)世界ランク3になるんだよwwww
0045デフォルトの名無しさん2006/03/27(月) 23:38:45
>>43
ttp://msdn2.microsoft.com/ja-jp/library/59a3b321(VS.80).aspx
0046デフォルトの名無しさん2006/03/28(火) 07:30:20
>>45
アリガ�d
0047デフォルトの名無しさん2006/03/28(火) 07:58:13
/Ox を /Os と組み合わせた場合は (/Oxs)、コード サイズを小さくする (サイズを最適化する) ことを優先できます。

こんな技があったのか。_| ̄|○
0048デフォルトの名無しさん2006/03/28(火) 08:12:31
IOleClientSite ってhscallbk.dllで実装?
0049デフォルトの名無しさん2006/03/28(火) 08:20:21
VC6(msvcrt.dll )だと80k切るか?

神は、おらんのか。

ちなみに、タダ最適化付けてコンパイルしてるだけww
0050デフォルトの名無しさん2006/03/28(火) 08:26:01
msvcrt.dll は "known DLL"、つまり、Windows が所有および構築するシステム コンポーネントになりました。
msvcrt.dll は、システム レベルのコンポーネントだけで使用されることを前提
としています。アプリケーションでは msvcr71.dll を使用し、再配布する必要があります。
システム ディレクトリには、msvcr71.dll のコピーを作成しないでください。
また、既にコピーが存在する場合でも、使用しないでください。
msvcr71.dll のコピーは、実行可能プログラムと共にアプリケーション ディレクトリに保存してください。
/MD スイッチを使用して Visual C++ .NET で構築したアプリケーションはすべて msvcr71.dll を使用します。

msvcr71.dllをシステムディレクトリにインストールしてしまう製品って多いような気がします。。

だと・・・同じフォルダに置けと。
0051デフォルトの名無しさん2006/03/28(火) 12:42:29
Lccは駄目なんだっけ?
0052デフォルトの名無しさん2006/03/28(火) 13:29:56
きたきた

朝日新聞社長の長男を逮捕
0053デフォルトの名無しさん2006/03/28(火) 21:06:16
なんのネタもなく・・・・DirectDrawでもやろうかね。。
0054デフォルトの名無しさん2006/03/28(火) 23:27:22
リソースにバージョン情報を入れるか入れないか・・・
0055あえて言おう2006/03/28(火) 23:36:56
カスであると。
0056デフォルトの名無しさん2006/03/29(水) 00:25:11
すげっ Let's HSPUPX! v1.8は3.0にも対応か

43.6kまで圧縮できたww(msvcrt.dll &msvcr71.dll )

でも、msvcr80.dllはだめなようだ
0057デフォルトの名無しさん2006/03/29(水) 06:45:56

callfuncの引数の順番を変えてほしすぃ。
0058デフォルトの名無しさん2006/03/29(水) 10:35:39
本スレ
http://pc8.2ch.net/test/read.cgi/tech/1142529119/l50
0059デフォルトの名無しさん2006/03/29(水) 12:01:46
16&$ff の&$ff とは?
0060デフォルトの名無しさん2006/03/29(水) 19:41:34
TVに突撃房がいるw。

おれじゃないけどね
0061デフォルトの名無しさん2006/03/29(水) 20:21:20
IP表示なんでしない?
0062デフォルトの名無しさん2006/03/29(水) 21:04:40
犯人は、やつかww
あいつ性格ワリーって言ってたからな。

大学院生だかなんだか知らんが、ろくなやつ居ねーな
0063デフォルトの名無しさん2006/03/30(木) 05:47:05
ちょっちーのページにサンプルあるな。

OSVERSIONINFOEX
0064デフォルトの名無しさん2006/03/30(木) 19:20:41
削除依頼完了
0065釣れまくり!!!!!!!2006/03/31(金) 10:03:46
釣れまくり!!!!!!!
0066デフォルトの名無しさん2006/03/31(金) 14:20:55
まぁ、テスト中だしねw
止める気にもならんわwww

つか、ぱっと見てタイトルしか見えないから不快感もない

タイトルをもっと派手にせんと
0067デフォルトの名無しさん2006/03/31(金) 14:22:52
>>65 また、貴様かー(;´д`)ゞラジャ
0068デフォルトの名無しさん2006/03/31(金) 21:51:18
暇なら、うきにサンプルでもあげてください。
0069デフォルトの名無しさん2006/03/31(金) 21:54:38
>>68
あの背景色が見づらくて書く気になんねー。

せめて白にしてくれ。
0070デフォルトの名無しさん2006/03/31(金) 23:02:04
HSPでスクリーンショットを撮る方法を教えてください
0071デフォルトの名無しさん2006/03/31(金) 23:11:14
デスクトップのhDCを取得する
BitBltで適当なBufferのhDCにSRCCOPYする
そのBufferをBmpsaveする
0072デフォルトの名無しさん2006/03/32(土) 03:20:56
ちょっちーのページに 2.xも3.0もサンプルがあるじゃん。
見ればwww

0073デフォルトの名無しさん2006/03/32(土) 13:46:56
CreateThreadとhscallbkで
まるちできっかな〜っとやってみたらだめだった。

つか、WM_CREATEがとんでこないんだけどwww
0074デフォルトの名無しさん2006/03/32(土) 13:52:13
>>73
マルチもどきなら  run "MENU2.AX","-s" で出来。。。?
0075デフォルトの名無しさん2006/03/32(土) 14:53:25
execと共有メモリを使った方がまだまし
0076デフォルトの名無しさん2006/03/32(土) 16:18:51
共有メモリか・・
ちょっとやってみっかなw
0077デフォルトの名無しさん2006/03/32(土) 23:21:03
アジ真にオモロイ記事が載っているが、どうもなぁw

4/1だしwww
0078デフォルトの名無しさん2006/04/02(日) 17:30:45
HSPのtitle に 1.2.3......って表示させたいんだけど。
うまくいかねー

#include <windows.h>
typedef struct {
HWND hwnd;
BOOL (WINAPI *pSetWindowText)(HWND, LPCTSTR);
VOID (WINAPI *pSleep)(DWORD);
int cnt;
} _DATA;
void ooo(_DATA *pData)
{
int kkk=0;
while (pData->cnt== 0) {
pData->pSetWindowText(pData->hwnd,(LPCTSTR)kkk);
kkk++;
pData->pSleep(500);
}
return ;
}
0079デフォルトの名無しさん2006/04/02(日) 19:58:04
( ゚д゚)
0080デフォルトの名無しさん2006/04/02(日) 20:01:01
HSPで変数aにいろいろなものを代入後、変数aを初期化したいのですが、
初期化方法は
a=""
でOKなのでしょうか。
0081デフォルトの名無しさん2006/04/02(日) 20:30:27
ここに答えられる香具師はおらんよw
0082782006/04/02(日) 21:26:16
出来たーwwww
0083デフォルトの名無しさん2006/04/02(日) 21:47:42
見るからに無限ループになりそうだけどwww
0084デフォルトの名無しさん2006/04/02(日) 22:03:58
>>83 そこら辺は、大丈夫だぁw
3.0になってからコード埋め込む羽目になるとは。
ない物ねだりw
0085デフォルトの名無しさん2006/04/03(月) 01:03:42
タイトルバーをつまむと
処理がとまるww

何とかしてほしい
他言語はどうなんだろうな。

0086デフォルトの名無しさん2006/04/03(月) 01:06:39
一緒に



す・る・な。
0087デフォルトの名無しさん2006/04/03(月) 04:41:16
>>85
ググってみたらあった。
0088デフォルトの名無しさん2006/04/03(月) 09:02:46
2xでも止まるのか

screen 2
screen 0
repeat

gsel 0,0:title ""+cnt
await 0
gsel 2,0:title ""+cnt
wait 10
loop
stop
0089デフォルトの名無しさん2006/04/03(月) 13:16:33
まるちもヤってみたら意外と簡単だったな。

0090デフォルトの名無しさん2006/04/03(月) 14:41:58
残念。まるち
終了時に落とし穴がw

まぁ、暇潰しだからどうでもいいけと
使える事が解っただけでも
0091デフォルトの名無しさん2006/04/03(月) 16:31:59
>>85
普通のプログラムはメッセージが着てもいないときに処理を行わないので止まる止まらない以前の話。
(逆に、タイトルバークリック中でもメッセージが来れば処理は実行される。)

メッセージが着ていないときに処理を行いたいなら別スレ立てるべきで、UIスレッドで何でもやろうとしてるHSPの実装上の問題。
マルチスレッドにすると排他制御がいろいろ厄介だしパフォーマンスも大幅に下がるからやりたくないのはわかるが。

マルチスレッドが嫌ならWM_NCLBUTTONDOWNのメッセージハンドラをオーバーライドして自前で移動するようにすれば簡単に解決なんだけどなぁ。
0092デフォルトの名無しさん2006/04/03(月) 16:32:29
まるちなんてよっぽどの暇人にしかバレないよ。
0093デフォルトの名無しさん2006/04/03(月) 16:35:28
あそこの掲示板そのよっぽどの暇人が巣食ってるからなぁ。
誰とは言わないがkz3とか。
0094デフォルトの名無しさん2006/04/03(月) 17:00:12
質問があります

コンパイル+実行、実行、コンパイルのみ、すべて試したのですが、
「#Error 38 in line 14 (fl.hsp)
-->外部DLLの呼び出しに失敗しました」
とでます。
#uselib "HMemory.dll"
#func RM ReadMemory $5
#func WM WriteMemory $5
#func WMS WriteMemoryS $5
#func GID GetID $5
#func DRM DReadMemory $5
#func DWM DWriteMemory $5
#func DWMS DWriteMemoryS $5
#func EP ExePro $5

pname = "FrontLinetito.EXE"

put = $0186A0
WM put,"FrontLine.exe",$0043A6B0,3
put = $0186A0
WM put,"FrontLine.exe",$0043A6E9,3
put = $0186A0
WM put,"FrontLine.exe",$0043A720,3
put = $0186A0
WM put,"FrontLine.exe",$0043A759,3
put = $0186A0
WM put,"FrontLine.exe",$0043A790,3
OS Windows98 SE
HSPver 3.
■ このスレッドは過去ログ倉庫に格納されています