トップページ⇒tech
245コメント68KB

356byte以下でWIN起動テトリス作れや!

■ このスレッドは過去ログ倉庫に格納されています
0001テトリンNGNG
windows上で起動できて
さらに実行ファイルが356byte(kbyteぢゃネーゾ!)
以下でつくれる日本人いる?いねーだろーなー!
けっ!

元ネタ↓
http://www.cybertrails.com/~fys/hugi/hcompo.htm
0153デフォルトの名無しさんNGNG
┃                  ┃    . . .... ..: : :: :: ::: :::::: ::::
┃                  ┃         Λ_Λ . . . .: : :
┃      ┌┐┌┬┬┬┨        /:彡ミ゛ヽ;)ー、 . :: 
┃┌┐┌┼┼┼┼┴┴┨       / :::/:: ヽ、ヽ、 ::i . .::
┠┼┼┼┼┼┼┼┬┐┃       / :::/;;:   ヽ ヽ ::l .
┠┼┼┼┼┼┼┼┼┤┃  ̄ ̄ ̄(_,ノ  ̄ ̄ ̄ヽ、_ノ ̄ ̄
┠┼┼┼┼┼┼┼┼┤┃
┠┼┼┼┼┼┼┼┼┤┃  
┠┼┼┼┼┼┼┼┼┤┃
┗┷┷┷┷┷┷┷┷┷┛       こ の ス レ 終 了
0154デフォルトの名無しさんNGNG
>>152のって何言語ですか?

また、文字を表示するためには下のをどう直せばよいでしょう。
<script>
function test()
{
document.body.innerHTML="test";
}
</script>
0155デフォルトの名無しさんNGNG
>>154
JavaScript。といってもIEでしか動かないまでに切り詰められているがな

あとHTMLが……。document.writeでもしとけばぁ
0156デフォルトの名無しさんNGNG
>>154
お答えありがとうございました。
言語が分かったので勉強できます。

訂正をしていただいた部分は良く分からなかったので、
勉強して理解してから試してみます。
0157デフォルトの名無しさんNGNG
>>155
Mozilla/Solaris でも動いたよ!



なんか動きが変だが...
0158デフォルトの名無しさんNGNG
テトリス繋がりで貼っておきます。
http://homepage2.nifty.com/arika_download/mpeg/Death-Gm05.mpg
0159デフォルトの名無しさんNGNG
>>158
速過ぎ!
0160デフォルトの名無しさんNGNG
ついでにこれも
http://homepage3.nifty.com/arika_download_04/mpeg/tgm.mpg
http://homepage3.nifty.com/arika_download_04/mpeg/tgm2master.mpg
0161デフォルトの名無しさんNGNG
テトリスは飽きた。
オセロ(リバーシ)を作ろう。
0162デフォルトの名無しさんNGNG
近所にTAPないですの。
TGMならあるがな
0163デフォルトの名無しさんNGNG
基板買え
0164デフォルトの名無しさんNGNG
>>30
0165デフォルトの名無しさんNGNG
最終結果「糞。」
0166デフォルトの名無しさんNGNG
>>161
今更だけど、オセロなら、結構簡単に作れると思われ
0167デフォルトの名無しさんNGNG
CPU対戦型の将棋とか
0168 ◆yNziqY67mU NGNG
http://up.isp.2ch.net/up/19d808d1f810.lzh

たたきage
0169 ◆yNziqY67mU NGNG
DLL のシンボルが容量食う。

汚くてもAdustWindow, RegisterClass, CreateWindowを省いて
代わりにデスクトップのHDC取って、そこに描画してしまうのがいいだろうか。

うまい人がやれば2KBは越えられそうだが
流石にWindowsアプリで1KB以下は難しいと思われ。
0170デフォルトの名無しさんNGNG
>>169
4K Intro なんかだと "EDIT" クラス使うのが定石.
MessageBox で AA 表示するだけのやつ 256b で作ったことはあるが
テトリス 356b は厳しいな.
この手のネタは .com に圧縮する Packer 使うのが主流だけど
邪道な気がして自分は好きじゃない.
1K でよければチャレンジしてみる.
0171 ◆yNziqY67mU NGNG
>>170
> "EDIT" クラス使うのが定石
なるほど。
コントロールウィンドウを親ウィンドウの代わりにできるのか。知らなかった。

> MessageBox で AA 表示するだけのやつ 256b で作ったことはあるが
俺がやるとexeのヘッダとMessageBoxAシンボルだけで400byteちょっとあるんだが、
ネタじゃなければどうやるのか興味がある。

> この手のネタは .com に圧縮する Packer 使うのが主流だけど
> 邪道な気がして自分は好きじゃない.
後半は禿同。
圧縮はデコーダが容量を食いそうな悪寒。

何はともあれ1KBチャレンジに期待。
0172デフォルトの名無しさんNGNG
> ネタじゃなければどうやるのか興味がある。

このへん参照.
276b "Hello!"
http://pe.blazlabs.com/276.html
Assembly Journal: Issue 2 (直リン不可ぽい)
http://asmjournal.freeservers.com/

ASM Journal のほうは目茶参考になるのでオススメ. 今日は寝る.
0173 ◆yNziqY67mU NGNG
>>172
素晴らしい。
.exeのヘッダもメモリに乗るのか。納得。
おみそれいたしやした。
0174デフォルトの名無しさんNGNG
>>169-173
元ネタみれば分かるけど、実際に作るのは
Winアプリではなく、Dosアプリ(しかもEXEではなくCOM)で良い
取りあえず、"__here__"って所から、ダウンロード&解凍し
g3(359バイトで最小なので)の中にあるentry.comを実行してみそ
(使用するキーはj,k,l,space,esc)
ついでに、エスケープシーケンスは使ってない模様なので
挑戦するなら、ソース(24jul2003.asm)を参考にすると良いと思われ
0175 ◆yNziqY67mU NGNG
>>174
元ネタは知ってるが、スレタイを尊重すべきだろ。
というか挑戦したいだろ。
356byteは無理だけどな。
0176174NGNG
>>176
>というか挑戦したいだろ。
分からない事はないが、俺は、5行オセロに挑戦中だから
挑戦したいとは思わない(←全く無関係)

>スレタイを尊重すべきだろ
WIN起動(アプリではない)テトリスと書いてあるので
WINで起動さえすれば、DOSでもWINでもかまわないはずなので、
本当に、スレタイを尊重するのなら、
実行ファイルを作るだけで、かなり消費するWINは向いてないと思われ

まぁ、どうせ、2chなんだから、そこまで、気にする必要は無いし、
多分、誰も挑戦しないと思うから、WINアプリで、
何処まで縮められるかと言うのも面白いと思うけどね
0177170NGNG
あと224バイトが縮まらん
http://up.isp.2ch.net/up/0f0101f42716.exe
0178 ◆yNziqY67mU NGNG
>>177
すごい。
これを逆汗できるフリーウェアないかな。

>>176
頑張っても10.6行。くそう、修行が足りないな。
0179デフォルトの名無しさんNGNG
>>178
diswinだめ?
0180デフォルトの名無しさんNGNG
もう消えてる?再アプきぼんぬ
0181 ◆yNziqY67mU NGNG
>>179
diswinとやらを使ってみたが駄目っぽい。
コードがヘッダに食い込んでる時点でまともなファイルじゃないからな。

>>168を>>172のアドバイスで改良してみたやつはdiswin通った。
もっとも、逆汗通らなくなることが予想ついてたから
ヘッダはデータ領域としてしか使ってないが。
0182170NGNG
1,097 bytes
http://up.isp.2ch.net/up/2e966f572953.exe

作る前は Win32 テトリス 1KB なんて余裕じゃネーノ, とか思ってたが
実は絶妙な難易度の課題かもしれない.
もう少し気の長いアプロダあったら教えてくれ. 消えるの早杉.
0183デフォルトの名無しさんNGNG
ishかBase64でここに貼り付けるとか
0184デフォルトの名無しさんNGNG
ちょっと色が見難いけど普通に遊べる。すげぇ
0185デフォルトの名無しさんNGNG
無理な注文をしてみる。
・点数表示(簡易なもので可
・次に出るブロックの予告表示
0186170NGNG
1,020 bytes. とりあえず目標達成.

begin-base64 755 tetris.exe
TVpLRVJORUwzMi5ETEwAAFBFAABMAQEAKAAAAJIBAAAAAAAAwAAPAQsBTG9h
ZExpYnJhcnlBAABQAAAAEAAAAEVESVQAAEAAABAAAAACAAC/AABCAFfrSAQA
AAAAAAAAAAABBAAAAQDu7u7uAgDu7gAAEAAAEAAAAAAQAAAQAADu7u7uDQAA
AAAAAAAAAAAAvAAAACgAAAAAAAAAAAAAAL6jAUAAvRgAQABW/1UAicOshMB1
+4oGhMB0CFZT/1UEq+vtRooG6zgCAAAAGAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAALwAAAAoAAAAAAAABAAAAQAAAAAAAAAAAITAdaZb6I4BAADrBOAA
AOCNe1z+yDHJsRerg8coq+L5sQzzq41zJMZGCHjGRgzkagBoAADIEFb/UwRq
AGgAAEAAagBqAItGDCtGBFCLRggrBlBqIGogaAAAyBBqAGhAAEAAagD/Uwho
5wJAAGj8////UFD/UxSJQyj/UwyNcyxqAGoAagBW/1MYhcB0Blb/Uxzr7MNH
ZXRQcm9jQWRkcmVzcwBHZGkzMgBTdHJldGNoRElCaXRzAABVc2VyMzIAQWRq
dXN0V2luZG93UmVjdABDcmVhdGVXaW5kb3dFeEEAU2V0V2luZG93TG9uZ0EA
RGVmV2luZG93UHJvY0EAR2V0REMAR2V0TWVzc2FnZUEARGlzcGF0Y2hNZXNz
YWdlQQBQb3N0UXVpdE1lc3NhZ2UAAABgi0tQhcl0Io17WLEED74HUVCZsQn3
+WnwkQAAAFhpwAwAAAAp8Fmq4uNhw7rYAAAAMcCxC40ECouEgxwBAACFwHQC
4vCFyXUXidCNvIMcAQAAjXfQsQzzpYPoDH3t69GD6gx9zItDUECD+AZ+AjHA
iUNQZsdDVO3/i0tQiwSN1wNAAIlDWFZXjXNYMcAxybEED79TVA++PkYB+o2U
kxwBAAALAot7UIu/owFAADE64uBfXsNgieW7AABCAIt1KIt9LIP+AnUFagD/
UyCD/g90EoH+AAEAAHUDiXtIYf8lEABCAGi5AkAAi0NYUIt7SI1zVIsu/1Qk
BI1TTItLPInIKwItyAAAAH4HiQq/KAAAAIP/JnUF6Ob+//+D/yV1A2b/DoP/
J3UDZv8Gg/8odQVmgQYMADHAiUNI/1QkBIXAdBv/VCQEiWtUiwQkiUNY/1Qk
BIP/KHUF6ND+//+DxAhoIADMAGoAaL8DQACNgxwBAABQahNqCmoBagFo5AAA
AGp4agBqAP9zKP8T6xQoAAAADAAAAOz///8BACAAAwAAAGHCEAAAAQwNAAEL
DP8AAQ3/AAwN/v8AAf8AAQv/AAEMAAD/AAD/AAD/
====
0187170NGNG
>>185 スマンあと4バイトじゃ無理
0188デフォルトの名無しさんNGNG
昔256ステップのプログラム電卓で色々ゲームを作ったのを思い出した。
懐かしいな〜
0189デフォルトの名無しさんNGNG
アプロダどぞ
http://cloud.prohosting.com/2chpup0/cgi-bin/uploader/uploader.cgi
0190170NGNG
>>189
ををっ, まだあったのカー!
てゆーか自分そこの某スレ301なんですが...
0191デフォルトの名無しさんNGNG
ああー、そうでしたか。
AA compoの人のうちの誰かだとは思ってましたが。

メンテだけはやってますんで
http://cloud.prohosting.com/2chparty/
0192デフォルトの名無しさんNGNG
>>170氏
すんません、
  ■■
■■  ←これの色が背景と区別できません_| ̄|○
0193デフォルトの名無しさんNGNG
↑訂正

■■
  ■■ こっちでした
0194デフォルトの名無しさんNGNG
神が降臨してる・・・?
0195デフォルトの名無しさんNGNG
>>170
WIN98SEで動かないんだけど、
もしかしてXPじゃないと動かないとか…?
0196デフォルトの名無しさんNGNG
とりあえず人を小馬鹿にしてる上に
DOSゲーをWinアプリと勘違いしてる>>1は>>170に頭を下げて謝れ。
0197170NGNG
977 bytes. 無駄が沢山あった.
http://cloud.prohosting.com/2chpup0/cgi-bin/uploader/archive/001.exe

>>189
アプロダ数年ぶりに使わせて頂きました.

>>192
少しはマシな配色になったと思うがどうだろう.
カラーテーブルがブロックパターンを兼ねてるのであまり自由が効かず.

>>195
スマン 2000/XP 専用. 今回 XP でしか動作確認してないので自信無い.
95/98/Me 互換考えると 40 bytes 位増える. てゆーかもう環境無いし.
0198デフォルトの名無しさんNGNG
>>197
うおおおおお!
Win2000で起動!


不正な命令なんだとか。
CS:1dd8
IP:019c
OP:63 68 70 75 70

凄すぎて何が悪いのかワカランです
0199170NGNG
>>198 確認 thx. いま心当たりを直すからちょと待って.
0200170NGNG
>>198 どうでしょう. 4 bytes 増えちゃうけど.
http://cloud.prohosting.com/2chpup0/cgi-bin/uploader/archive/002.exe
0201デフォルトの名無しさんNGNG
>>200
んー・・
同じエラーが出て止まりますね。

私の環境が特殊!?
0202170NGNG
>>201
いやーどっちかというとウチの US 版 XP のほうが特殊.
1020b のほうはどうですか?

これ作っててぶっ飛んだとき, "エラーレポートを送信しますか?" って出て
うっかり一回送信しちまった. どこに何が送られたのだろう...
0203デフォルトの名無しさんNGNG
>>202
1020bって言うと>>186ですよね。
これをバイナリエディタで書くんですか?
実行まで漕ぎ付けない・・・
0204170NGNG
>>203 uudecode してウプしました
http://cloud.prohosting.com/2chpup0/cgi-bin/uploader/archive/003.exe
0205デフォルトの名無しさんNGNG
>>204
なんかスイマセン(´Д`;)

そして動きませんでした
やっぱり同じエラーですね
0206170NGNG
>>205 ゚Д゚;)ガーソ! 出直してきます. 付き合わせてスマソ.
0207デフォルトの名無しさんNGNG
XP SP1で>>170のは動いたよ
これ凄いねえ
0208デフォルトの名無しさんNGNG
>>197
うおおおお。すげぇ当方XPで動いたっす。
何で書いてるンだろう。Cだよね、やっぱ。
0209デフォルトの名無しさんNGNG
>>186 >>197 >>200 >>182
Windows XP SP1(日本語版)で動作を確認しました

>>208
さすがに、DOSのヘッダ領域にまでDLLのインポートテーブルを置いてくれるCコンパイラはないかとw
asmで吐いてバイナリエディタで修正かな?
0210192-193NGNG
>>197
見やすい配色になりました 感謝m(_ _)m
0211デフォルトの名無しさんNGNG
<body onKeyDown=K=event.keyCode><script>X=[Z=[B=A=12]];h=e=K=t=P=0;function Y()
{C=[d=K-38];c=0;for(i=4;i--*K;K-13?c+=!Z[h+p+d]:c-=!Z[h+(C[i]=p*A-Math.round(p/
A)*145)])p=B[i];!t|c+4?c-4?0:h+=d:B=C;for(f=K=i=0;i<4;f+=Z[A+p])X[p=h+B[i++]]=1
if(e=!e){if(f|B){for(l=228;i--;)Z[h+B[i]]=k=1;for(B=[[-7,-20,6,17,-9,3,6][t=++t
%7]-4,0,1,t-6?-A:-1];l--;h=5)if(l%A)l-=l%A*!Z[l];else for(P+=k++,j=l+=A;--j>A;)
Z[j]=Z[j-A]}h+=A}for(i=S="";i<240;X[i]=Z[i]|=++i%A<2|i>228)i%A?0:S+="<br>",S+=X
[i]?"■":"_";document.body.innerHTML=S+P;Z[5]||setTimeout(Y,99-P)}Y()</script>
<EMBED SRC="makaimura.mid" AUTOSTART="TRUE" LOOP="TRUE" style="DISPLAY:NONE;">
0212デフォルトの名無しさんNGNG
>>211 >>44
0213170NGNG
900 bytes 達成.
http://cloud.prohosting.com/2chpup0/cgi-bin/uploader/archive/004.exe

>>208-209
ヘッダからテトリス本体まで全部 NASM で書いてます.
逆汗するなら, エントリポイントは 48h なので
ndisasm -b 32 -e 48h -o 400048h 004.exe 等とすれば良.

キリが良いし飽きたのでコレで最後にする.
198 氏の環境で動かなかったのが心残りだ.
0214デフォルトの名無しさんNGNG
>>213
(´・ω・`)あらま
漏れとしては
回転ボタンを方向キー以外(SPACE)に変えて欲しかった
着地判定時間をもう少し甘くしてほすかった

乙かれー
0215198NGNG
>>213
乙です。
最後の望みをかけてダウン・・・さて・・・


(゚∀゚)!!
動いた!!!動きましたよ!!!

スゴイ(ノ∀`)∴・。
900byteに収まるのが信じられん・・・
しかもカラフルだし、アリエンワールド展開中。
逆汗とかして勉強してみます(`・ω・´)シャキーン
0216170NGNG
おまけ.
http://cloud.prohosting.com/2chpup0/cgi-bin/uploader/archive/005.exe
Win32 Executable はどこまで小さくなるか試しに作ったもの. たぶん限界.
0217デフォルトの名無しさんNGNG
あれ?WinXPだと、Alignment考えなくていいのか
Win2000だとどうしても500Byte超えちゃってたから
0218170NGNG
>>217
http://mipagina.cantv.net/numetorl869/ssflat_pe.zip
この中の info.txt に解説がありますが, 要は
IMAGE_DIRECTORY_ENTRY_IAT を指定すりゃヘッダ領域が read/write になって
ImportDescriptor とか ThunkData 置けるよ, ということです.
0219デフォルトの名無しさんNGNG
このスレ神がいるょぅ。・゚・(ノД`)・゚・。
0220デフォルトの名無しさんNGNG
>>218
ガーソ しらなんだ

ていうか、そのサイトアツイね
http://mipagina.cantv.net/numetorl869/flatpe.html
0221デフォルトの名無しさんNGNG
>>62
見つけました。
PICでテトリス
http://www.geocities.co.jp/SiliconValley-Sunnyvale/4889/video_pic/index.htm
0222デフォルトの名無しさんNGNG
奥が深い。。。
0223デフォルトの名無しさんNGNG
もっとあるよ
http://www.colinfahey.com/2003jan_tetris/tetris_inspired_projects.htm
0224デフォルトの名無しさんNGNG
ひぃ。ヘッダ領域に色々置くのか。
漏れはPEの構造少し学んだだけでオナカイッパイだったよ。
0225デフォルトの名無しさんNGNG
>>223
2.5-Dテトリス楽しかったー

1-Dテトリス萌え
0226デフォルトの名無しさんNGNG
4Dtetris warata
0227デフォルトの名無しさんNGNG
1Dテトリス遊び方がわからん、、、
ハイスコア=忍耐力?
0228デフォルトの名無しさんNGNG
>>227
ハイスコア=PCの安定性と心の余裕
0229デフォルトの名無しさんNGNG
ほしゅ
0230つ(*゚ー゚) しぃ豆 ◆FTP/Z/SD72 NGNG
>>218が無くなってる・・・。
0231デフォルトの名無しさんNGNG
>220
0232デフォルトの名無しさんNGNG
>>230
てゆーかあるけど・・?
0233つ(*゚ー゚) しぃ豆 ◆FTP/Z/SD72 NGNG
>>213だった。
0234デフォルトの名無しさんNGNG
aruyo
0235つ(*゚ー゚) しぃ豆 ◆FTP/Z/SD72 NGNG
IEからダウンロードするのか。
ネスケでやったら大変なことに。
0236デフォルトの名無しさんNGNG
>>1の中で一番軽い359byteのテトリスのソースコード↓

h90%勒 u�ソ ケ .ーヘ装ー|儿iタヘ$@Pアム竰銅 鈩 rムア
暁*フQA礒エヘt闢 u袖sHuエタ: 闖 聹゚YQク + rム^ウ
エ 6tィアト串t嵯 オ�^ム肭鏤 � A ミ3Qア`恚�Dモネ%,�t�ニ@sツ塗0 r:t抃拌I簣Yテ佻,uPーヘ,テ`奮ウ
咸�`葬0ヘヘ)a粽キ7ソネウー|�G`願2 ,r+ ,0�A" a+�U�y焉�簷ヘ;�aテY袢僂`エxh 玉`a�@JuJテ
0237デフォルトの名無しさんNGNG
今日はじめてこのスレの存在を知った。
こんなに感動したのは久しぶりですよ。
0238デフォルトの名無しさんNGNG
>>236
それって言語何?
0239デフォルトの名無しさんNGNG
「しぃ豆たんハァハァ」で1000を目指してみようかしらん。
0240デフォルトの名無しさんNGNG
WINつってもDOS起動か。びっくりした
0241デフォルトの名無しさんNGNG
結局170が最強って事でFA?
0242あぼーんNGNG
あぼーん
0243デフォルトの名無しさんNGNG
↑
なにがあったのだw
0244デフォルトの名無しさんNGNG
定期健診でカキコ
0245デフォルトの名無しさんNGNG
最近は誰も何もつくってないの?
■ このスレッドは過去ログ倉庫に格納されています