約 1,828,028 件
https://w.atwiki.jp/2ndxct/pages/2.html
メニュー トップページ XCTとは 実施要綱 参加申込 参加団体 試合ルール お問い合わせ 管理用 プラグイン紹介 メニュー メニュー2 編集
https://w.atwiki.jp/2ndxct/pages/10.html
コメントプラグイン @wikiのwikiモードでは #comment() と入力することでコメントフォームを簡単に作成することができます。 詳しくはこちらをご覧ください。 =>http //atwiki.jp/guide/17_60_ja.html たとえば、#comment() と入力すると以下のように表示されます。 名前 コメント
https://w.atwiki.jp/ops_plas/pages/13.html
ここでリンクを扱っております また相互リンクをしたい方は一番下にあるコメント欄にアドレス・タイトルを記入してください ○ 相互リンク △ 相互リンク希望中 ■ リンク切れ MGS PORTABLE OPS公式サイト KOJIMA PRPDUCTIONS EVENT SITE 2007公式サイト MGS PORTABLE OPS plus公式サイト クラン メタルギアポータブルオプス+JAPAN BASE(BLACKCA様)△ JONY本部([JONY]様)○ MPO+ 卍部隊CYBORG NINJA本部(卍MANZI卍)○ 攻略 | OPS-MANIAXーメタルギアソリッドポータブルオプス攻略サイトー(ピコピコ様?) その他 どうせならヘッドショットをねらう?(HOUND様)○ MPO交流サイト(ALPS様)○■ METAL GEAR COMMUNITY《MGC》(MILITARY様)△
https://w.atwiki.jp/mopsprogramming/pages/29.html
ループ 【以下【】の中は訳者が付け足したものです。】 コンピュータープログラムには、しばしば、特定の演算操作を一定回数繰り返すことが必要となります。 例えば、スタック上の10個の数の和を見つけることは、普通は、引き続く9個のステートメントが用いられるでしょう。 プログラマーの考え方に対して見れば、これはプログラムを何段階か必要以上に長くしてしまいます。同じステートメントを長々と続けてプログラムのサイズを大きくしてしまうようなことなしに、加法演算を作業に必要なだけの回数繰り返す簡便な方法があればいいところです。 ここで登場するのがloop構成です。 ループ(loop【環路?】)はあなたのプログラム内に、初めと終わりのある一種のメリーゴーランドを設定します。 ループの終わりには、そのループの始めに"巻き戻る(loop back)"ようにとプログラムに告げる命令があります。 出発点から終わりまでの全てのステートメントが、プログラムの実行がループ内を通る度毎に繰り返されます。 Mopsは二つの主要なループのカテゴリーをもっています:確定ループと不定ループです。 その名前が示唆するように、各カテゴリーは、ループの循環をいつやめるのかを判定する方法が異なります。 確定ループはプログラムが特定した回数しか繰り返されません。;他方、不定ループは一定の条件に適うまで(いつまでも)繰り返されます。 各ループをもうすこし詳しく見てみましょう。 確定ループ 上で述べた10個の数の加法を考えましょう。足し算が起る前にスタック上に正確に十個の数値があることが予めわかっているのですから、スタック上に9個の足し算を実行する確定ループを使うことができるでしょう。 Mopsの確定ループは、DO...LOOPステートメントから成ります。これはDOが実行される前にスタック上に二つの数値があることを期待します。その二つの数値はそのDO...LOOPステートメントが為すべき繰り返しの回数を表現します。;二番目の値(スタックの一番上)は、ループが始まる前の【ループ指標の】増分を示します。 DO ... LOOP ( n1 n2 -- ) ‘n2’ はDO と LOOPの間の演算操作を実行された後、毎回増加します。; ‘n2’が‘n1’に等しくなったならループを抜けます。 ループはコンパイルされたステートメントの中でしか働かないので、その動作の仕方を見るにはコロン定義の中に置く必要があります。 足し算を9回繰り返し実行することによってスタックの10個の数値を加算する新しいワードを定義しましょう。: ADDTEN ( n1 ... n10 -- sum ) 9 0 DO + LOOP . cr ; 実行の間、このDO...LOOPは、ループの各回ごとに0から9まで数え上げます。9回目の巡回でループは止まります。; スタックの頂上(和)が表示され、改行が実行されます。 パラメタースタックが足し算される数の全体を保管するのに用いられているのなら、Mopsはどこでループカウンターをきちんと処理しているのかと不思議に思うかもしれません。その答えは、指標付け(indexing)と呼ばれる強力な機能に関連します。これは、Mopsについて学べば学ぶほど、重要な役割を担うものとなってくるでしょう。 上の例でDO...LOOP構成の前に9と0を入力したとき、これら二つの数はあなたの知らないうちにメモリーの別の部分に自動的に移されるのです。あなたが打ち込んだ最初の数(9)は、limit(境界)と呼ばれます。というのは、この数はそのループの内容が実行されるべき回数の境界値を表しているからです。 二番目の数(0)は指標(index)と呼ばれます。この数値は、ループを通った各回毎に1だけ増やされます。ですから、上の例で最初にDO...LOOP構成を通過したときには、指標は1に増えています。;次の回には2、等々、となるわけです。(LOOPにおいて)指標が増加される度毎に、指標と境界の値が等しいかどうかチェックが行われます。 もし等しければ、DO...LOOP構成は、いまや先に進むべきときであり、再度の繰り返しのために(DOへと)巻き戻されるべきではない、ということを知ります。 この種の指標付けの面白いところは、ループの実行中に指標値をカウンターとして利用できることです。境界値と指標値をあなたがループ内で演算操作するために必要な整数とすることによって、ループをまわる各回ごとに指標値をパラメタースタック上にコピーし、その数値を、計算や、図像を配置する点、かけ算の因数などに利用することができるのです。 指標値をパラメタースタックにコピーするMopsワードは"I"【英文字のアイ】です。: I ( -- n ) 現時点の指標値をパラメタースタックにコピーします。 このワードは指標値をコピーするだけであることに注意してください。; 指標値そのものに影響を与えることはありません。いくつかの例証をみてみましょう。 ワードFIVECOUNTを定義します。これは101 から 105 までの続き数値を表示します。: FIVECOUNT 106 101 DO i . LOOP cr ; 境界は106に設定されていることに注意してください。指標は実行がLOOPに到達したときに増やされることに気をつけてください。初回の間は指標は101だったので、ワードIはその指標をパラメタースタックにコピーしました。; . コマンドが続いてそれをスクリーン上に表示しました。5回目の実行のときは、指標は105でした。実行がLOOPに至ったとき、指標は106に増やされました。この時点でいまや指標は境界値に等しくなったので、実行はこのループを抜け出したのです。 同じように、指標値は、実行前にパラメタースタック上に渡された数値と演算を実行するのに利用することができます。次の定義を見てみましょう。: TIMESTABLES ( n -- ) 13 1 DO dup i * . LOOP drop cr ; 【「予めスタックで渡された」という本文に合わせて、スタックを使うコードにしました。原文では名前付き引数を用いています。】 ‘5 timestables’と打ち込めば、1から12まで増えていく指標値にその都度5をかけて打ち出すループを12回実行します。 DO...LOOP構成の中に、前に述べた条件決定構造を含む、あらゆる種類のステートメントを置くことができます。 記述を簡潔にするためにDO...LOOP構成を使いたいけれども、LOOPが自動的に実行する1の加算とは異なる指標加算量がほしいということもあるでしょう(LOOPのときは1増やすことしかできません)。このような状況では、オプションのループ終了ワードである+LOOPを使うことができます。+LOOPの前に数値をおけば、それが何であっても、DO...LOOPが指標を調整するのに用いる加算量となります。 ループの指標を減らしていきたいときには、負の数値も用いることができます。 +LOOP ( n -- ) LOOPの代用ワード。ループの指標を‘n’だけ増やし、指標が境界に達していなければ一番近いDOまで実行を戻します。 カウントダウンを+LOOPを使って管理する方法を示しておきます。: COUNTDOWN 1 10 DO i . cr -1 +LOOP ." Ignition...Liftoff!" cr ; この場合においてはループは逆方向にカウントしますから、境界は1、指標は10です。 ループを通る各回ごとに、指標は-1の分減らされます。このプログラムは境界値1も印字することに注意してください。指標がカウントダウンされて境界値に等しくなったときには、ループは継続され、指標が境界マイナス1になるまで止まりません。これは指標が増えていっているときと状況が違います(後者では指標が境界に等しいところで止まります)。 これを考えるときに一番良い方法は、「境界」と「境界引く1」の間に"フェンス"があるのだ、と考えることです。 どちららの方向からでも指標値がそのフェンスを越えたときにループは止まるのです。 これは、指標の増大によってループの走行中に符号が変わるとき、つまり、負から正になるときでも成り立ちます。 【ちなみに+LOOPの場合、指標のステップを巡回毎に変化させることもできます。しかし、途中でステップの符号を変えること(指標値を増やしたり減らしたりすること)はできないようです。】 入れ子状ループ 一つより多いDO...LOOPが同時に走行することが必要になることもあります。IF...THEN構成の場合と同じように、DO...LOOPも互いに入れ子にすることができます。 気をつけるべきことは、一つの定義の中で各DOに対応するLOOP(または+LOOP)をそれぞれひとつ提供しなければならないということだけです。 NESTEDLOOP 1 10 DO ." Loop " i . cr 4 0 DO ." Nested LOOP " i . cr LOOP -1 +LOOP cr ; NESTEDLOOPと打ち込んで、外側のループの各1巡回が終了するまでに、内側のループがどのように繰り返されるのかを観察してください。 入れ子になった内側のループで、外側のループにアクセスしたいときには、ちょうどIと同じように、外側のループの現在の指標をパラメタースタックにコピーするワードがあります。それは、Jです。 J ( -- n ) 入れ子になったDO...LOOP構成の中で、その一つ外側のループの現在の指標値をパラメタースタックにコピーします。 言い換えれば、Jは、ちょうど一つ外の現在のDO...LOOP構成の指標を見つけて、その数値をパラメタースタックにコピーするのです。 NESTEDLOOP2 1 10 DO ." Loop " i . cr 4 0 DO ." Loop " i . ." within Loop " j . cr LOOP -1 +LOOP cr ; 注意:もし内側のループを別定義としてファクターしたならばJを使うことはできません。 — 正しい値を得ることはできないでしょう。 Jは現在の定義内の入れ子のループでしか働きません。 ループの中断 状況によっては、通常の終了前にDO...LOOPを抜け出す必要があることもあり得ます — おそらく特別な事情が起ったためでしょう。この目的のためにはワードLEAVEが利用できます。 LEAVE ( -- ) 現在のループを直ちに脱出します。 ここに、適当に修正したカウントダウンの例をまた挙げておきます。 COUNTDOWN2 1 10 DO i . cr i 7 = IF ." Aborted!!" cr LEAVE THEN -1 +LOOP ; "Ignition...Liftoff!"メッセージは取り除かなければなりませんでした。というのは、 そうしないとカウントダウンが中止された後に、そのメッセージが現れてしまうからです。 (これは実際望ましい結果ではありません。) これをもっとうまく処理する方法は、少し後で説明します。 不定ループ 不定ループはもうひとつの種類のループでMopsプログラムにおいてしばしば利用されます。 その名が示唆するように、不定ループは一定の条件が存在するまで巡回し続けます。 一回だけまわるということも、条件が起るのを待ち続けて何千回もまわるということもあります(そして許されるなら無限に続きます)。 Mopsでは、その条件とはスタックのトップにフラグがあることです。 BEGIN ( -- ) 不定ループの先頭を標します。 UNTIL ( n -- ) "n"が非ゼロ(true)ならば不定ループを抜けます; そうでなければBEGINの直後に実行を戻します。 BEGIN...UNTILによる不定ループは次のように使うことができます。: BEGIN xxx UNTIL (複数の)演算xxxは、UNTILのためにTRUEフラグがスタック上に置かれるまで(確定的な終わりはなく)繰り返し実行されます。 この構成の便利な亜種としてワードNUNTILを用いるものがあります。: NUNTIL( n -- ) UNTILの代用ワード。"n"がゼロ(FALSE)のときに不定ループを抜けます; そうでない場合はBEGINの直後に実行を戻します。 前の例の形では、UNTILの代わりにこれを用います。 BEGIN xxx NUNTIL 前と同様、演算xxxは繰り返し実行されますが、今回は、FALSEフラグがおかれるまでループは止まりません。 BEGIN...UNTIL構成の使い方の例を挙げます。 下の場合には、不定ループはあなたがキーボードで小文字の‘a’を入力するのを待ちます。 KEYオペレーションは、あなたがキーを押すまで、プログラムを停止させます。 そして、キーが押されたなら、押された文字に同値な標準的なコード番号(ASCIIと呼ばれます。— あとで説明します。)をスタックに押し込みます。スタック上の数値が十進で97(小文字の‘a’に対応するASCIIコード番号です)であるときには、スタック上に-1 (TRUEフラグ)がおかれ、ループが終了します。 それ以外の場合はスタックにはFALSEフラグがおかれ、実行はループの始めに戻ります。 BEGINTEST BEGIN key 97 = UNTIL ." Loop broken." cr ; さて、BEGINTESTと打ち込んで、キーボード上の色々な文字を押してみてください。 小文字の‘a’を押すまで、このブログラムは循環しつづけます。 実はBEGINは別種の不定ループの開始点にもなっています。 新しいワードは、次の通りです。: REPEAT ( -- ) 実行を無条件にBEGINの直後に戻します。 WHILE ( n -- ) ‘n’が非ゼロ(TRUE)である限り、ループ内の実行を続けます。 これら全部で三つのワードを組み合わせたものは、BEGIN...WHILE...REPEATループと呼ばれます。 当たり前のようですが、次のように使われます。: BEGIN xxx WHILE yyy REPEAT このステートメントは、ループを経由する毎に毎回xxxを実行しますが、実行がWHILEに達したときに、非ゼロの数値(TRUE) がスタックのトップにある場合にのみyyyは実行されます。もしも、WHILEでのフラグがゼロならば、ループを抜け、yyyが再び実行されることはありません。 ここでも、WHILEの変種としてNWHILEがあります。これは、スタック上のフラグがゼロ(FALSE)の場合にのみ、ループを継続します。 NWHILE ( n -- ) WHILEの代用ワード。‘n’がゼロ(FALSE)である限りにおいてのみBEGIN...REPEATループ内の実行を継続します。 上の新しい構成の働きを示すように、BEGINTESTを変形したのが次の例です。: BEGINTEST2 ." Type a lower-case letter a , please." cr BEGIN key 97 = NWHILE ." Wrong key!" cr REPEAT ." Thank you. Loop broken." cr ; 上の例は、小文字の‘a’を打つようにというユーザーへのメッセージから始まります。 前のBEGINTESTとは違って、このバージョンでは、間違ったキーを押したときに、ユーザーにフィードバックを提供しています。 正しいキーを押した場合には、実行はNWHILE以降を続けてエラーメッセージをプリントすることはありません。 というのは、=がTRUEフラグをスタックに残す(ユーザーが押したキーのASCIIコードナンバーが97に等しかったことを示します)ので、実行はこのループから完全に抜けて定義の最後にある最後のメッセージの印字へと続くからです。 EXIT 必ずしもループに関連するものではないのですが、ここで非常に便利なオペレーションであるEXITに言及するのがよいでしょう。 EXIT ( -- ) 現在のワード(またはメソッド)の実行を終了します。 LEAVEと違い、EXITはそこの定義を完全に抜けます。 初めのBEGINTESTをEXITを用いて書き換えた例です: BEGINTEST BEGIN key 97 = IF EXIT THEN key 98 = UNTIL ; この定義は、あなたが‘a’ (ASCIIコードナンバー97)か‘b’(ASCIIコードナンバー98)を押すまで走り続けます。次のように書くこともできます。: BEGINTEST BEGIN key 97 = IF EXIT THEN key 98 = IF EXIT THEN AGAIN ; そうです。BEGINを使うループはもう一つあります。こっそり使ってしまいました。 AGAIN ( -- ) BEGINの直後に実行を戻します。 もちろん、BEGIN...AGAINループを書いたならば、このループはEXITのような 何か特別な方法で終わらせなければなりません。 EXITをDO...LOOP内に書くときには、もうひとつ、忘れずにしなければならないことがあります。 — Mopsは(他のForthでも同じですが)DO...LOOPを実行する際にはいくつかの追加的情報を保存しています。 DO...LOOPを何か通常と違う方法で(つまり、LOOP、+LOOPまたはLEAVEを経ずして)終了させる場合は、その情報を取り除かなければなりません。そのために用いられるワードはUNLOOPです。 UNLOOP ( -- ) DO...LOOPから脱出する場合にリターンスタックから全てのループ情報を安全に取り除きます。 これをまたカウントダウンで例示しましょう。: COUNTDOWN3 1 10 DO i . cr i 7 = IF ." Aborted!!" cr UNLOOP EXIT THEN -1 +LOOP ." Ignition...Liftoff!" cr ; また"Ignition...Liftoff!"というメッセージを復活させることができたことにお気づきでしょう。しかし、ループがUNLOOPとEXITで中断されたときには、これらメッセージは全く素通りされるのです。 注意:ループをデザインするときに意図せずして無限ループをすべり込ませてしまう可能性があります。これは絶対に避けてください!不定ループのスタック演算を慎重にチェックして、あなた、または、あなたのプログラムがループを終了させることができるような条件が少なくとも一つはいつもあるようにしてください。 そうしないと、あなたのプログラムは"閉じ籠って"しまったように見え、キーボードからの入力にも無反応になる可能性があります。もしそうなってしまったら、Mopsアプリケーションを強制終了しなければならないでしょう。 チュートリアル目次へ 前へ レッスン12 次へ レッスン14
https://w.atwiki.jp/xboxcodsearch/pages/5.html
このページではXBOX360版 Call of duty BlackOps 2 で主に使用されているS&Dのカスタムマッチのルール(いわゆるプラベ)について解説します。 なおこのルールはCyACで使用されているルールが元となっています。 試合は攻撃側・防衛側ともに5名ずつの計10名で行うのが通常です。 基本ルール タイムリミット 2分 必要ラウンド数 8R ハードコア オフ S&D設定 起爆タイマー 45秒 設置タイム 5秒 解除時間 5秒 マルチボム いいえ 攻守交代 4ラウンド毎 サイレント設置 はい 全般設定 スコアストリーク 不可 プレマッチタイマー 15秒 (※1) ラウンド開始タイマー 10秒 (※1) 自動チームバランス オン チーム変更 許可 ギミックを有効にする いいえ キルカメラ いいえ (※2) 3人称観戦 不可 CODキャスト 許可 ミニマップ ノーマル リベンジボイスを流す いいえ バトルチャッター オフ アナウンサー オフ 爆発ディレイ オフ スコアストリーク・ディレイ 60秒 ※1 開催者によっては長めに設定している場合があります ※2 開催者によってはオンに設定している場合があります スポーン設定 リスポーンディレイ なし 強制リスポーン はい 集団リスポーンディレイ なし 自滅ペナルティ なし チームキルペナルティ なし 体力およびダメージ設定 体力 100% 体力自動回復 ノーマル 味方への誤射 オン チームキルのキック制限 オフ ヘッドのみ いいえ ヒットインジケーター オン カスタムクラスの使用制限について 使用可能武器 アサルトライフル MTAR M27 SCAR-H SMR AN-94 サブマシンガン VectorK10 MSMC スナイパー Ballista ハンドガン Five-seveN リーサル グレネード タクティカル スモーク フラッシュバン パーク PEAK1 装備なし PEAK2 コールドブラッド PERK3 アウェアネス アタッチメント アサルトライフル : FMJ サブマシンガン : FMJ スナイパー : FMJ ハンドガン : なし ※ 以前はハンドガンにもFMJが装着可能でしたが、現在では「なし」が主流になっています。 スコアストリーク すべて使用禁止 武器所持規制人数 アサルトライフル 制限なし サブマシンガン 2名まで スナイパー 1名まで 使用マップ AFTERMATH CARGO EXPRESS RAID STANDOFF なお、通常のプラベでは上記マップを上から順に行い、計5マップを1セット(1周)として行われています。 ちなみに1セットあたり約2時間程度です。
https://w.atwiki.jp/teihenmix/pages/152.html
566 名前:名無しさん@お腹いっぱい。[sage] 投稿日:2011/05/10(火) 20 41 55.82 ID 6h1urVG40 ▼mix音源 http //www.exout.net/~mixdown/cgi-bin/th0593.mp3.html ▼使用音源 562 RAINBOW GIRL ▼ニコニコへのうp こんなのでよければ・・・ ▼使用ソフト REAPERv3.75 ▼作業工程 ごめんね~のとこで遊びました オケがピッチ+4ってことでEQで調整しました ▼コメント 歌うまくてかっこよかったです!お遊びミックスですがぜひ聞いてみてください! コメントはしてくれると嬉しいです。 577 名前:名無しさん@お腹いっぱい。[sage] 投稿日:2011/05/11(水) 15 23 23.74 ID Yzs6j/Un0 [1/2] ▼mix音源 http //www.exout.net/~mixdown/cgi-bin/th0595.mp3.html ▼使用音源 562 RAINBOW GIRL ▼ニコニコへのうp 一応どうぞ ▼使用ソフト REAPERv0.999 Free VST ▼作業工程 EQ コンプ ディレイ リバーブ ▼コメント オケがうまくいじれませんでした 歌いい感じだったのでシンプルに 581 名前:名無しさん@お腹いっぱい。[sage] 投稿日:2011/05/11(水) 20 39 08.27 ID 0pI/HDZB0 [1/2] 562 さんの ▼曲名 RAINBOW GIRL ▼コメント ベースがでかくてキックが無いのが痛い。マイクはいい使い方してると思います。 後はロングトーンの最後がフッと消えないで綺麗に終われるようになると更に良い。 それとビブラートが綺麗に出てるんだけど変調量が小さいかな。もすこし派手にほしい。 でも声質も歌い方も好きです。 http //www.exout.net/~mixdown/cgi-bin/th0597.mp3.html 582 名前:名無しさん@お腹いっぱい。[sage] 投稿日:2011/05/11(水) 21 49 00.94 ID rSAgo9WY0 [2/3] ▼mix音源 http //www.exout.net/~mixdown/cgi-bin/th0598.mp3.html ▼使用音源 562 RAINBOW GIRL ▼ニコニコへのうp どうぞ ▼使用ソフト Cubase le フリープラグイン ▼作業工程 コンプ、EQ、ディレイ、リバーブ、ピッチ補正 ▼コメント オケの音質が良くなかったので、オリジナルに差し替えて補正しました。 素敵な歌声でしたが、ダイナミックマイクの割に周囲のノイズが入っていたので、 カーテンを閉める等の防音をした方が良いかもしれません。 キー変更が±3を超えるとマスタリングが厳しいです・・・。 587 名前:名無しさん@お腹いっぱい。[sage] 投稿日:2011/05/12(木) 00 03 40.57 ID hozg0jAO0 ▼mix音源 http //www.exout.net/~mixdown/cgi-bin/th0603.mp3.html ▼使用音源 562 RAINBOW GIRL ▼ニコニコへのうp お好きにどうぞ。 ▼使用ソフト Cubase5 ▼作業工程 オケ+4化 ボーカルノイズ除去 - EQ - Comp等 ▼コメント ピッチシフトのアルゴリズム選ぶので力尽きました。 なんかギミック入れたい展開の曲ではありますが 普通に混ぜただけです…。 596 名前:581[sage] 投稿日:2011/05/12(木) 14 47 50.96 ID I1YSiaJ00 [3/3] 562 さんの ピッチチェンジに+99cent入ってたので修正。 すごい難しいメロディと思ってた。。。 微妙なコードの隙間を潜り抜けるような。。 http //www.exout.net/~mixdown/cgi-bin/th0606.mp3.html
https://w.atwiki.jp/pakemon/pages/637.html
【067】パスとデート ◆プラヤ・デル・アルバ パスとデートするイベントです。 (スネーク限定。SINGLE限定。制限時間無限。禁止武器は危険物全般。必要装備品は彼女の求めるもの⇒ラブダンボール) 下記の「CO-OPS COMM.」を話すとパスが喜び、好感度が上がります。 「いいぞ!」「俺がついてる」「俺に任せろ!」「やったな」「おまえならやれる」「さすがだな」「よろしく!」 「いいセンスだ」「うまい!」「すごいな」「ありがとう」「さすがです」「ピース!」「ごくろう」「やるじゃないか!」「好きだ」 好感度が上がると段々パスの台詞が変化してきます。 十分に好感度を上げたら「ラブダンボール」を使用します。 するとパスもダンボールに入り、クリアとなります。 パスにセクハラしたり、不適切な言動を取るとゲームオーバーになります。 また、Sランクでクリア後、もう一度このミッションを行うと、パスが下着姿になっています。 【ミッションリザルト】 Sランククリアで「アマンダ」を入手。
https://w.atwiki.jp/starbreak/pages/149.html
Hotfoot 着弾ダメージ 爆発ダメージ 加速度 炎の数 5-25 3-7 40 20 Burner 着弾ダメージ 爆発ダメージ 加速度 炎の数 10-30 6-14 40 20 Triad 着弾ダメージ 爆発ダメージ 加速度 ミサイル数 8-25 30-70 40 3 Swarmer 着弾ダメージ 爆発ダメージ 加速度 ミサイル数 10-30 40-80 40 5 Locust 着弾ダメージ 爆発ダメージ 加速度 ミサイル数 15-45 50-100 40 7 コメントは最新10件を表示しています 全コメント 名前
https://w.atwiki.jp/mopsprogramming/pages/27.html
特殊な演算操作 【以下【】の中は訳者が付け足したものです。】 そろそろ、基礎的なMops演算操作を他にもいくつか学んでおくべきでしょう。それらは、かなり単純なので、ここで特別に触れておいても良いでしょう。ここではあまり詳しくは言いませんが、すこし自分で試してみれば、どのように働くのか、感じがつかめるでしょう。 第一の演算グループは、パラメタースタック上の上二つのアイテムの値を比較するものです。比較の結果がスタック上に置かれます。次のものが含まれます。: MIN ( n1 n2 -- n-min ) ‘n1’ と ‘n2’ の小さい方をスタック上に残します。 MAX ( n1 n2 -- n-max ) ‘n1’ と ‘n2’ の大きい方をスタック上の残します。 次のグループは、整数の符号の正負を操作します。ひとつは、スタックの一番上の数の絶対値(正)を返します。もうひとつは、スタックの一番上の数値の符号を変えます。:もとの数が正ならばそれを負に変え、負ならば正に変えるということです。次の演算子がそれです。: ABS ( n -- |n| ) ‘n’ の絶対値をスタックに残します。 NEGATE ( n -- -n ) スタック最上位の値の符号を変えます。 続いては、簡単な算術の簡略形です。これらの意味は自明だと思います。 1+ ( n -- n+1 ) スタック最上位の数値に1を加算します。 1- ( n -- n-1 ) スタック最上位の数を1減らします。 2+ ( n -- n+2 ) スタック最上位の数値に2を加算します。 2- ( n -- n-2 ) スタック最上位の数値を2減らします。 2* ( n -- 2n ) スタック最上位の数値を2倍します。 2/ ( n -- n/2 ) スタック最上位の数値を2で割ります。 3+ ( n -- n+3 ) スタック最上位の数に3を加算します。 3- ( n -- n-3 ) スタック最上位の数値を3減らします。 4+ ( n -- n+4 ) スタック最上位の数値に4を加算します。 4- ( n -- n-4 ) スタック最上位の数値を4減らします。 4* ( n -- 4n ) スタック最上位の数値を4倍します。 4/ ( n -- n/4 ) スタック最上位の数値を4で割ります。 これらの短縮系の適用は、Mopsでプログラミングすればする程、多くみられるようになるでしょう。 加法と減法の短縮系は、例えば、何らかの種類のカウンターを増やしたり減らしたりする必要がある場合に役立ちます。 テキストの表示 このチュートリアルでは、これまでは、数値をスクリーン上に表示するのに、. (ドット)コマンドを用いてきました。しかし、ひとつのプログラムにおいて何度も、テキストもスクリーン上に表示したいと思うことでしょう。それはある種の指示を表示するものかもしれませんし、純然たる数字の解答が何を表したものなのかを説明することによって、プログラムをユーザーフレンドリーにしようとするものかもしれません。後者である場合には、通常は、解答の数値は実行毎に異なるかもしれませんが、それに付帯して固定的なテキストのメッセージを表示するでしょう。テキストそれ自体については、Mopsワードである ." (ドット-クォートと読みます)を使うことができます。この後に必要なテキストメッセージを続け、最後にクォーテーションマーク(引用符) (")です。 Mopsでは、多くのコンピュータ言語におけるのと同様、引用符は、区切り文字(delimiter)として知られる、広いシンボルカテゴリーに該当します。というのは、これらは、何かを区切る(delimit)あるいはその限界を置くからです。— この場合はテキストメッセージが区切られます。この区切り文字セットの中にあるテキストは、テキスト文字列あるいは単に文字列と呼ばれます。通常のMopsワードでは、半角空白、タブ文字、あるいは改行は区切り文字です。しかし、メッセージ文字列については、普通は、半角空白文字も文字列の一部ととして含めたいので、その代わりに"を区切り文字として用いるのです。 しかし、." はMopsワードですので、空白で区切られていなければなりません。この空白は、文字列には含まれません。しかし、ひとつの空白の後の最初の文字が、(空白であったとしても)その文字列の最初の文字になります。例を挙げましょう。: HI ." Hello, this is Mops operating on the Mac." cr ; 今や、HIとMopsプロンプトの前で入力すれば、引用符の間の文字列がスクリーン上に現れます。 ここでも、." の直後の空白はメッセージの一部ではなく、." をMopsが認識できるワードとして区切るためにのみ働いていることに注意してください。もしもここに空白がなければ、Mopsは「."hello,」を1ワードとして解釈しようとするでしょう。これは明らかに、私達の望んだことではありません。 Mopsの良いところのひとつとして、新しいワードの定義の中で、以前に定義したワードを利用できるということがあります。ですから、ここで定義した HI を、もうひとつのMops定義の中に含ませることができます。例えば、 GREETING hi ." How are you?" cr ; とすれば、GREETING をMopsプロンプトで打ち込んだときにはいつも、HIのメッセージだけではなく、追加的テキストも表示します。 さて、算術演算とテキスト列に関する知識を合わせて、前のレッスンでの計算のワード ADD を"人間化"してみましょう。 新しい定義はつぎのようになります。: ADD ( n1 n2 -- ) + ." The sum is " .rc ; あるいは、前のレッスンのADDがまだ定義されているなら(そして、トリッキーなことをしたいなら)、次のようにもできます。: ADD ( n1 n2 -- ) ." The sum is " add ; 新しいワードを利用するには、Mopsプロンプトで次のようなコマンドを発行します: 10 20 add The sum is 30 明示的なスタック操作 名前付き入力引数と局所変数は、多くのスタック操作を隠してくれますが、スタック上のアイテムの順序のせいで、特定の演算操作のために、いくつかの値を明示的に動かす必要がある場合もあり得ます。逆に、スタック上に単純にもう必要のない数値があって、処分したいこともあるかも知れません。このような場合には、一連のスタック操作演算子の中から選ぶことができます。 次の三つのスタック操作演算子は、心に留めておくべきでしょう。: SWAP ( n1 n2 -- n2 n1 ) パラメタースタック上の上二つのアイテムの順序を入れ替えます。 DUP ( n -- n n ) トップスタックアイテムを複製して、新しいコピーを上におきます。 DROP ( n -- ) トップスタックアイテムを取り除きます。この直下にもうひとつアイテムがあった場合、それがトップアイテムになります。 SWAP は、例えば、二つの値がスタック上にあるのに、引き算や割り算をするのに順序が違っている場合のような、 もっと複雑な定義の中で用いられます。 実際、これは、レッスン3で引用された問題のためのあまりエレガントでない定義で用いることもできました。: 5 * 12 * 50 ------------- 40 分母をスタックの底(最初の入力)におけば、全てのかけ算を実行してから、スタック上に残った二つの数値の順序を入れ替えて、それから正しく割り算をすることができます。新しい演算は: 40 5 12 50 * * swap / これを計算するワード定義は: FORMULA3 ( denom num1 num2 num3 -- solution ) * * swap / ; DUP は、特定の計算のときに便利なことがあります。DUP の働き方を示す一つの例は、数の二乗を計算するのに利用することです。 二つの同じ数値をスタックに置くのではなく、一つだけをおいてそれを複製し、それからスタック上の二つの値をかけ算するのです。: 4 dup * 同じように、三乗計算は次のように行います: 4 dup dup * * したがって、三乗計算を行うMopsワード CUBEDは次のようにセットアップできるでしょう。: CUBED ( n -- ) dup dup * * . cr ; このとき、‘3 cubed’ とMopsプロンプトからタイプすれば、次のように答えがスクリーン上に現れるでしょう。: 3 cubed 27 上に述べたこれら以外のスタック操作演算子について、実験してみてください。いくつかの数値をスタックにおき、コマンドを実行して、Mopsウィンドウのスタックディスプレイで、何が起るのかを観察してください。必要なら、計算上の要請に応じて、二つ、またはそれ以上のスタック操作演算子を、同じMopsワード定義内に集めることもできます。 しかし、概していえば、名前付き入力引数と局所変数の方が複雑な定義内でスタック上の値を操縦するのには好ましく、それらを用いたプログラムの方が、明示的なスタック操作(ときとして、スタックジムナスティックと呼ばれます【ジムナスティックは「体操」ですが、軽業、曲芸、無理(無闇)に動かすという語感でしょうか】)を用いるプログラムより、追跡がしやすく、デバッグが容易になります。そして、名前付き引数と局所変数の方が、より直観的なので、まず最初に間違いをおかすことが少なくなります。 チュートリアル目次へ 前へ レッスン10 次へ レッスン12
https://w.atwiki.jp/ps3hack/pages/39.html
PSGrooPIC PIC18F2550等のUSBコントローラ内蔵PICを使ったPSGroove。 AT90USB等のようにブートローダが内蔵されていないので、hex書き込みには別途プログラマ(ライタ)が必要になる。 (hexと一緒にブートローダも書き込めば、次回からプログラマ不要) http //psgroopic.blogspot.com/ http //psx-scene.com/forums/showthread.php?t=65391 http //www.ps3news.com/forums/ps3-hacks/psfreedom-psgroove-ps-jailbreak-exploit-ports-development-112409.html http //www.youtube.com/watch?v=oQrL8LP08do http //www.youtube.com/watch?v=nrCfdE85uow 対応PIC搭載したボードを購入するか、自分でボードを作成する。 作成後の動作方法はAT90USB等と変わらない。 はんだ等の電子工作の知識がない人はUSBマイコンボード 完成品(PIC18F2550)とAKI-PIC2プログラマボード(PICkit2互換)を買えばok。 (多少知識があるなら、AKI-PIC2プログラマボードではなくPICKit2を買って、アダプタを自作するなりする) もしくはオークションなどで売られているものを買うべし。 知識がある人は言わずもがな、回路図を見て必要な部品を用意し作成すればok(ボードの部品=千円ぐらい) 対応PIC PIC18F2455 PIC18F2550 PIC18F4550 hex http //psgroopic.blogspot.com/ http //psx-scene.com/forums/showpost.php?p=509470 postcount=494 http //psx-scene.com/forums/showpost.php?p=509819 postcount=526 http //www.ps3news.com/forums/ps3-hacks/psfreedom-psgroove-ps-jailbreak-exploit-ports-development-112409-2.html#post302623 などなど 回路図 PSGrooPIC v1.1 http //psgroopic.blogspot.com/ http //1.bp.blogspot.com/_fvremgaSIxM/TIXz8uynxVI/AAAAAAAAACs/YgrFwmuoTw4/s1600/PSGooPIC_SCH_V1.1.png IC1:PIC18F2550 C1:470nF(0.47uF)コンデンサ C2:100nF(0.10uF)コンデンサ C3,C4:22pFコンデンサ R2:330Ωカーボン抵抗 LED:適当なLED Y1:8Mhz水晶発振子 J1:USBコネクタ pspic2 http //psx-scene.com/tmp/psx-scene/pictures/schematic.png IC1:PIC18F2550 C1,C2:22pFコンデンサ C3:220nF(0.22uF)コンデンサ R1:1KΩカーボン抵抗 LED1:適当なLED Q1:20Mhz水晶発振子 X1:USBコネクタ ブートローダ対応 http //psx-scene.com/forums/showpost.php?p=511697 postcount=645 360 USB SPI Flasher mini http //img11.imageshack.us/i/xbox360usbflashermini.png/ http //www.ps3news.com/forums/attachment.php?attachmentid=21239 d=1283726441 などなど 使用できる?市販ボード USBマイコンボード 完成品(PIC18F2550) http //akizukidenshi.com/catalog/g/gI-02161/ PIC18F-MOD-2553 ※PIC18F2550強化版「PIC18F2553」搭載。USBブートローダ書き込み済み?。動作不明 http //www.microfan.jp/shop/6_173.html PICKit2 ※ファームウェア書き換えで動作可能? http //akizukidenshi.com/catalog/g/gM-02508/ http //www.ne.jp/asahi/air/variable/picmel/integration/write/pickit2/index.html#tag1-3 http //www.ne.jp/asahi/air/variable/picmel/integration/write/pickit2/index.html#tag4-3 市販PIC18Fxxxx対応プログラマ(ライタ) PICKit2 ※別途アダプタなどが必要 http //akizukidenshi.com/catalog/g/gM-02508/ ◎アダプタ作成例 http //www.eleki-jack.com/news/2009/06/22/Elc13_042~043_toku1_M2.pdf http //www.picgames.org/modules/tinyd1/index.php?id=30 AKI-PICプログラマー Ver.4(完成ボード) http //akizukidenshi.com/catalog/g/gK-02018/ AKI-PIC2プログラマボード(PICkit2互換) http //akizukidenshi.com/catalog/g/gM-02495/ 【MPIC06-KIT】PICライターキット https //www.marutsu.co.jp/user/shohin.php?p=40073 ほぼPICキット2 http //iizukakuromaguro.ocnk.net/product/118 Microchip USB Framework http //www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE nodeId=2680 dDocName=en537044 http //amahime.main.jp/picusb/main.php?name=picusb などなど 自作PIC18Fxxxx対応プログラマ(ライタ) RCDライタ+アダプタ http //feng3.cool.ne.jp/rcd/ http //kuri6005.sakura.ne.jp/pic/index.php?%A3%B1%A3%B8F%B7%CF%A4%D8%A4%CE%BD%F1%B9%FE(%A3%D2%A3%C3%A3%C4%A5%E9%A5%A4%A5%BF)