TSG 部報 198 号・分科会のご紹介


分科会のご紹介

わたる

 TSG活動の中心となる分科会ですが、とりあえず現在では 次のような分科会の開催が予定されています。詳しいことは 各紹介文をみて頂くことにしましょう。


C/C++ 言語分科会

わたる

 「便利なフリーウェアやゲームの作者に自分もなりたい。」 と思っている人は結構多いのではないでしょうか? けれどプログラムの作り方を知らなければ、どうしようもありませんね。 それから、プログラミング言語を一つ知っていると全然知らないとでは、 コンピュータの便利さに雲泥の違いが出るものなのです。 また、本当に凄いホームページを作るためには、 プログラムを作れる必要があることは知っていましたか?

 そう言うわけで、プログラミングをちゃんと勉強したい人にお勧めなのが この分科会です。C/C++分科会は、プログラミングの基本中の基本である C言語とC++言語の勉強会です。

 市販されているC言語やC++言語の解説書のうち評判の良いものは、 DOSやUNIXのある程度の理解を前提にして書かれている場合がほとんどです。 またプログラムの例題が非常につまらなく、それでやる気がそがれてしまうことも 少なくありません。当分科会ではプログラミングどころか コンピュータも初めてという人のために、とても易しいレベルから始める予定です。 応用例の紹介や、パソコンとUNIXの基礎知識含めて説明します。 CやC++言語を単なる知識に終わらせずに、 実用的な能力として身に付けることを目指します。 また、良質なプログラムを作るための作法であるオブジェクト指向の概念も 理解できるよう工夫するつもりです。

 分科会の開催時刻は参加者の都合によって決めますが、 たぶん放課後になります。場所は情報教育南棟か部室です。 この分科会に入らなくても、昼休みなどの空き時間に部室でたいていのことは 教えてもらえますが、なるべく参加することをお勧めします。 駒場祭の準備が始まる頃にはきっと立派なプログラマになれるでしょう。


Windows 分科会

はと

ども、Windows分科会責任者のはとです。

この分科会では、Windowsプログラミングを勉強します。

「教える」じゃなくて「勉強する」なんですね〜 ^^; (僕も初心者なのだ)

内容は、Windowsプログラムの基本をやってから、何かゲームでも作れたらい いなと思ってますが実際の活動は人が集まってから考えます。

高度な事は全然しません(できない ^^;) が 98のWin95上でVisual C++ を使うそ うなので、C言語を知らないと何やってんだかわからないと思います。あ、C++ は別に分からなくてもいいです。(僕もよく知りませんから ^^;)

これは勉強会ですから、集まった人達でWindowsの研究をしていきたいと思い ます。

例えば、現段階では Visual C++ のみの環境ですが、Visual Basic や Delphi など他言語を使う人がいれば、そちらのほうでの開発もやってみたいと思って います。


    //スペースが余ったのでおまけプログラム
    #include<windows.h>

    int PASCAL WinMain(HINSTANCE,HINSTANCE,LPSTR,int)
    {
        return MessageBox(NULL,"Hello Windows World!",
                               "Windows分科会",MB_OK);
    }


86 アセンブラ分科会

竹島,高野

リアルモードのパート(竹島)
 アセンブラの利点は、ハードや G-VRAM に直接アクセスした高速でコンパクト なプログラムを書くことができることです。その代わり、CPU の命令1つ1つを 直接書くという性質上、いくつもの命令を組み合わせないとプログラムになり ません。アセンブラでプログラムを作るのは大変な作業なのです。現在、プロ グラムをC言語等で書くのも、プログラムを作る作業をすこしでも軽減するた めです。しかし、例えばC言語でPC98シリーズの G-VRAM に直接書き込みを行 う場合、ポインタにアドレスを代入し、1データずつ転送しなければなりませ ん。この部分にアセンブラを使えば、ストリング命令で高速に転送ができます。 8086系リアルモードや仮想86の場合、コンパイラによってはC言語ではセグメ ントを1回ごとに切り替えるのでさらに遅くなってしまいます。このように高 速化が必要な部分だけでもアセンブラで書けば、他の部分をCで書いても相当 高速になります。また、アセンブラで書いたプログラムのサイズは、C言語で 書いたプログラムに比べて相当小さくなります。常駐プログラムやデバイスド ライバはアセンブラでなければ書けません。(C言語で書くと、サイズが大き くなり、しかも非常に遅くなります)

プロテクトモードのパート(高野)
 GNUアセンブラーを使ってプロテクトモードのアセンブラをやります。プロテ クトモードのアセンブラーはリアルモードに比べてメモリなどの管理が非常に 大変なので、直接アセンブラーで書くと言うよりはむしろdjgpp上でインライ ンアセンブラーをやります。プロテクトモードの利点といったらやはりメモリ の上限がないに等しいと言うことでしょう。(理論的には4Gバイトの上限はあ りますが… )C言語上でプロテクトモードのプログラミングをするとして もアセンブラの知識は必要です。たとえば割り込みのルーチンを書くにしても 8086のセグメントにに相当するセレクターの概念とかの考え方が必要ですし、 DPMIとVCPIの違いも知らなくてはなりません。プロテクトモードの仕組みを知 ることで、Windows95などの最新OSの仕組みもわかるようになります。


TOWNS 分科会

宮本

 初めまして、こんにちは、TOWNSユーザー(←ここが重要) の宮本です。ここを読む人は非常に限定される(すなわちTOWNSユーザー)と思いま すが、たくさんの人に読んでもらうことを期待して、TOWNSが、いかなるマシーンで あるかを少し書いてみたいいと思います。ところで筆者は、非常に国語が弱かったので文章が異様になるかもしれませんが、そこのところは、勘弁してやってください。

 皆さんご存じの通り、今、CMで宣伝しているFM-Vを作った富士通が、7年前頃に 出したのがこのFM-TOWNSです。当初はFM-7の実績もあったことから、68000を使ったホビーパソコンということだったのだそうですけれど、噂によると、当時の 課長の鶴の一声で一転。バブルの真っ只中にあったこともあり最新鋭の80386を使い、 CD-ROMを標準装備という豪華な仕様になったのだそうです。その仕様を少し書い てみると・・・、SCSI標準装備(初代機のみオプション)、メモリはSIMM、当た り前ですがCDは標準装備でCPUは全て386以上であるので、プロテクトモード(つ まり32ビットOS)で動作するものがほとんどです。(それとあまり知られていないで すが、純正品を使っているぶんには面倒な設定などがいらないということもあります。つ まり今風に言うと p&p ということです。)ようするに現在主流である仕様そのものな のです。(逆に言うと、これだけのパワーを持ってして今の様な状態というのは・・・(笑)。)

 そこでみんなでこのTOWNSを盛り上げよう、というのが、このTOWNS分科会の 主旨なのですが、経験者(所有者)はもちろん未経験者も大歓迎です。具体的には、High-Cによるプログラムを予定しています。(ちなみに筆者はTOWNSと心中する覚 悟で開発を行っています。と言ってもべつに本当に死んでしまうという意味ではない(笑)。 その証拠にこのような状態になってから、TOWNSに○0万円投資してしまった 。)ところで、こんな偉そうなことを言っていますが、実は筆者も1年前までは、TOWNSをまるっきりゲーム専用機にしていました。それに、このサークルの先輩方ときたら 、我が町川越のちょもらんま氏、SKY-DUALやOh! TOWNS誌でお馴染みのMakken氏、同じくOh! TOWNS誌のMalar氏など、筆者のような技量ではと ても後を継げないような、そうそうたるメンバーなのです。つまるところTOWNSに興 味があればだれでもOK!ということです。

 話は変わりまして、近況というか今開発しているものを少し書かして頂きますと横スク ロールのシューティングゲームを作ろうという壮大な計画を立てているのですが、運と体 力があれば、これが読まれるころにはデモがそこで動いているでしょう (^o^; そしてそ の後で駒祭用のゲームでも誰かと共同開発できたらなぁ・・・と思っています。

みなさん、一緒にTOWNSでゲームをつくりましょう!!!。

 と、ここで本当は終わりにしようと思っていましが、最近になって、高校時代の友人が fMSXのソース(おおもとの作者は外国の方のようですが親切にもほとんど全てANSI C で書いているのでI/O周りを書きかえればどの機種でもできるようになっています。事 実そのソースにはIBM PC/AT版とUNIX版がありました。他のメジャーな機種 はほとんど全てが移植されているようですが、何故かそのドキュメントにはTOWNS版 がありませんでした。)を持っていましたので、それを筆者と友人たちでせこせこ移植し てゲームが動く(実際にパッドで遊べる)程度になりました。(ただしfm音源周りと、 キーボード周りはまだ未完成。)おおもとの作者はフリーウェアを希望しているようなの で、これを読んでいるTOWNSユーザーの皆さん、ご希望ならば、無償で配付します。 また、ほとんど目安ぐらいにしかならないとおもいますが、FM-TOWNS II HA(486DX2-66) でグラデウィスなどのMSX1用ソフトがまともに動きますが、MSX2用は、Pentiumと言えども まともなスピードを得るのは難しいでしょう、とい うような感じです。(なにせ汎用的なCでかいてあるもんで、もし他の移植を考えないな らば画面関係やz80のエミューレートのところで、もっと速くできるでしょう。)

 最後になりましたが、ここまで読んでいただき、ありがとうございました。それでは、 さようなら。


Java Applet分科会

わたる

 Java、HotJavaという言葉を新聞や書店で見かけたことはありませんか?
Javaはインターネット上の異機種間分散環境を見据えた、 未来志向のプログラミング言語です。簡単に言いいますと、 従来の言語によるネットワーク・プログラミングではデータのやりとりしか できなかったのに対し、Javaはプログラムの実行コード本体を送ることができます。 開発キットは今年の1月の終わりにリリースされたばかりで、大変新しい言語です。

 この分科会で取り扱うAppletとはJavaのプログラムの一種であり、 ホームページに張り付けて使います。これによって既存のHTMLとCGIの環境とは 一線を画した、animationやinteractivityに富むホームページを作ることが できるのです。

 Javaはversion 1.0がリリースされたとは言え、依然として発展途上の言語です。 またAppletを使ったホームページも世界的に見てまだまだ多いとは言えません。 そのために資料の不足や開発環境にきつい制限があり、 Javaの勉強をするのはなかなか大変なのが実状です。 最近書店に増えてきた解説書も、開発キットのTutorialを元ネタにした 内容の薄いものばかりで、頼りにはなりません。 また、Javaと同じ目標をめざした他の言語が登場してきており、 Javaが標準的な地位を獲得するかどうかもわかりません。 Javaの将来はまだ不透明なのです。

 それでも敢えて報われないかも知れない困難に挑戦し、未開拓の言語を切り開いてみたいと言う方の参加を待っています。


HTML 分科会へのお誘い

かもしま

 えーと、いきなりですが、あなたはHTMLなるものをご存知ですか? TSGに興味を持た れてこの部報を手にとっている新入生の方の中には結構ご存知の方もいらっしゃるかも 知れませんね。HTMLとは、HyperText Markup Language の略で、世間で「netsurf」やら 「世界に向けて情報発信」やら騒いでいる (^^; Internet の WWW (World Wide Web) というサ ービスで閲覧される文書を記述するのに用いられる言語のことをいいます。

 HTMLでは、文書の中に整形や他の文書へのリンクといったコマンドを埋め込む形式を とっています。例えば <BR> が強制改行を表したり、 <A HREF="http://www.hoge.co.jp/foo.html">www.hoge.co.jp というアドレスにあるコンピュータの foo.html という文書へ のリンクを表すと言った具合です。こういう形式は、慣れてしまえば非常に効率よく文 章を書くことができますが、いかんせん見たままの形で編集できなかったり、あるいは コマンドを覚えるのが面倒だと言うために難しいと思われがちなようです。

 そこで、HTML分科会では、HTMLの基本的な文法について、主に情報教育棟(ここではWWWを利用することができます)で実際にホームページをへろへろと作りながら学んでいこ うと思います。まあ実はHTMLはすごく簡単なので、そんなに長い期間に渡ってやるつも りはありませんし、WWWの上にはHTMLの書き方について書かれた文書は星の数ほど存在す るので、もっと色々と知りたいことがある人はそちらを参照することもできます。ある いは今話題のJavaに興味があるならば、後にJava分科会も開かれるらしいのでそちらに 参加するというのも良いでしょう。

 もともとHTMLというのは人に書けと言われて書くものではありませんし、書きたいと 思うならば人に教わらなくても自分でWWWを果てしなくさまよいながら気に入ったページ の書き方を参考にすれば良いまでの話です。よって実際の分科会では、HTMLの書き方そ のものよりも情報教育棟のUNIXマシンの使い方も含めたWWWの楽しみ方の方に重点を置く つもりです。ですから当分ホームページを作る気はないという方にも多少は役に立つで しょう。お暇な方は是非ご参加ください。


テキスト処理分科会

Aleph-NULL

 例えば何枚ものレシートを、買った金額毎に 集計するとき、あなたはどうしますか?

 あるいは、何万行ものデータの中から、 「TSG」と「東京都」を含むデータのみを とり出すとき、どうしますか?

 住所録の「郵便番号」と「住所」を全部入れ変えろ といわれたら?

 ちょっと昔の「03-123-4567」とかいう名簿を 東京の3桁の人だけ「03-3123-4567」に直すには?

 こんな処理を、いちいちワープロの検索機能に頼って 手作業でやってたのでは話になりませんね。

 こういった処理は、コンピュータに任せてしまいたい 所ですが、ワープロ・エディタでは力不足ですし、 かといってプログラムを組むには単純な処理の割に えらく面倒です。

 こういう時は、sed, awk, grep, perl といったツールの出番です。 上の例はそれぞれ、


 % jgawk '{y[$1]+=$2} END{for (a in y) print a,y[a]}' data
		
 % grep 'TSG' <data | grep '東京都'
		
 % jgawk 'print $1,$3,$2,$4,$5' data.txt
		
 % sed -e 's/03-\([0-9][0-9][0-9]\)-/03-3\1-/g' <data
 のように「たった1行で」処理できます。

 しかし、これらのツールがはやらない理由には、 「正規表現」とよばれる条件の設定が解りにくいことでしょう。

 この分科会では、正規表現の使いこなしと、 grep, sed, awk, perl といったツールを用いて、いろいろな処理を「いかに 楽をして行うか」を説明します。

 ほとんど予備知識なくてもわかるような分科会にしようとおもっています。 気軽に参加してください。


TeX 分科会

Aleph-NULL

 TeX (テフ)というのは、端的に言えば文書整形ソフトです。 この部報も TeX で作っています。*1

 元々は、アメリカの数学者 Donald E. Knuth が自分の数学本を書くに当たって つくったものです。

 そんなわけで、TeX は数学者の為のもので、一般には近寄りがたいと 思われているようです。しかし、それは誤りです。とっつきにくいことは確かですが、 (特に理系の人間には)極めて使い易くできています。

特徴をあげると、

  1. 欧文や数式に極めて強い
  2. 見掛けにとらわれずに論理的に文書を作ることに集中できる
  3. 使用環境に依存しない
  4. フォントまで含めてフリーである

 といったところがあげられます。

 (1) はもともとアメリカ人が出版用に作ったものですから、欧文のプロポーショナル や数式の出力は極めて満足の行くものです。

とか、

 とかいったものを、いとも簡単に入力できます。この部報の後ろの方の記事にも 何ヶ所か数式が出て来ますが、本文中にこんなのがごちゃごちゃ でてきたら、普通のワープロでは手におえません。

 (2) は LaTeX という普通使うマクロパッケージで、「ここから章が始まる」 「ここは引用」とか指定していくと、あとは勝手に形態を整えてくれるというものです。

 (3) も重要で、MS-DOS パソコンでも UNIX ワークステーションでも、 家の 180dpi のドットプリンタでも 3200dpi の写植機でも同等の出力が 得られます。家で 180dpi で推敲して、本番はディスクで結果を持ち込んで 写植機にかけてもらうとかいうことも可能です。

 こんなにいいとこばかりの TeX ですが、やっぱりめんどくさそうと言う イメージが強いんですねぇ。残念なことです。

 というわけで、この分科会では、この強力な TeX を自分でつかいこなすべく、 解説をこころみていきます。担当は私、「TeX にすっかりのめりこんでしまった」 編集長 Aleph-NULL が行います。参加をお待ちしています。


鉄拳分科会

ZERO

主曰く 人は パンのみにで 生きるにあらず
されど また曰く
人民に パンと 自由を!
市民に 娯楽を!

 例えどのような状況下にあれ、人は生きることから始めねばならず、生きる為に娯楽 を求めることは天地自然の理である。向かいて天に恥じること無し。まして東大生に於 いてをや、日頃の勉学に備え健康な肉体と健全な精神を保持する事は神聖なる義務であ る。その根幹が娯楽に置かれてある限り、これを軽視する傾向は厳に戒められねばなり ません。

 これから私が語る恐怖の事件、TSGを震撼させたあの忌まわしい事件こそ、その何 よりの証であり、学問を追求する東大生と雖も、この人生最大のテーマからは逃れ得ぬ 凡俗の徒に過ぎぬことを我々に示すものであります。

 全ての事件がそうであるように、それもまた、ありふれた日常の一コマから始まった のです。

 そもそもの事件の始まりは、現3年生の「基金」により、SONYが世に送り出した 傑作ゲーム機・PlayStationが学館305に位置するTSG部室に導入され たことに端を発する。当初は部員の私有物の数日間の滞在こそあれ、これといって目玉 ソフトの常駐はなかった。

 しかし、まず手始めにnamcoの秀作レーシングゲーム・リッジレーサーが導入さ れ、次いで新入部員 (現2年生) らが部室に出入りを繰り返すようになったころ、畠山 氏 (現2年生) が彼の好意から鉄拳を部室に持ち込んだ。しかし、このことこそが数人の若きTSG部員を鉄拳猿へと変貌させた忌まわしい事件の決定的な要因となった。

 現在鉄拳分科会を構成する4人のうち、Mは既にその前から鉄拳を始めていたような ので取りあえず横に置いておくが、KとHはTSGの部室に出入りするようになってか らあっという間に鉄拳猿へと変貌した。特にHたるや、出なくて良い授業が彼の高校時 代に比べて余りにも多すぎることを良いことに、夏学期の間の必修以外の時間はほぼ部 室に常駐して鉄拳の修行に勤めた (必修の時間すらも!)。

 KやMも勿論部室に来れば鉄拳である。現3年生のW氏を中心に鉄拳愛好会(仮称)が 結成され、昼夜を問わず鉄拳が部室で行われ、一時期などはPS=鉄拳なる「PSの方 程式」が成立するほどPSでは鉄拳のCDしか回らなかった。zERO DEVIDE も導入されたが結局鉄拳にはかなわず、潰えた。鉄拳こそが正義であり、例えPSで他 のゲームをしていようとも、鉄拳愛好会員が部室にやってくるや、まるでそれが徴発で あり、それが当然であるかのごとく、PSのふたが開けられ、鉄拳に変えられた。そし て、ぷよぷよ人間であったGも部室にいれば目に入ってくる鉄拳の画像に洗脳され、現 在では立派な鉄拳分科会員である。

 鉄拳の修行道場と化したTSG部室。彼らの鉄拳熱は止まるところを知らず、3/29に 発売が予定されている「鉄拳2」についても発売当日の導入が予定され、駒場祭打ち上 げコンパ時に設立が決定された鉄拳分科会は、事実上その役割を終え、引き続き名称を 変えることなく鉄拳2を修練・研究の対象とし、存続することになった。

 以上があの忌まわしい事件の全貌である。

 TSGとは「Theoretical Science Groupe」の略称であるというのがタテマエだが、 実状は「Tennis, Ski & Game」であると語る事情通もいる。しかし、正式には「鉄拳最強グループ」の略称であると語る人物もいる。

 その真偽のほどは別として、分科会の人間ははっきりいって異常だ。勿論、その異常 の中には強さも含まれるが、彼らの大半は空中コンボの研究家である。一発食らったら もうおしまいなど日常茶飯事で、Hなどはしょっちゅういぢめられている。

 こう書くと「鉄拳分科会の人間は異常だ」と思われるかもしれないが、心配には当た らない。何故なら、この分科会の人間は別にキャラクターに異常な愛情を注ぎそれを表 現(同人誌・フィギュア等)している訳ではないからである。単純に強さを求める。それ が鉄拳分科会の存在意義である。無論、強さを求めるだけではなく、単に遊びたいだけ でも構わない。

 また、こういったものは上手な人間とやってこそ上達するのである。「家にあるから いいや」と思っているあなた、井の中の蛙で終わってはならない!

 例えば、格闘ゲームが苦手で○ト II を代表とする2次元格闘ゲーム全盛期には乱入す ることもおぼつかなかった人間であったHは、鉄拳分科会の前身である鉄拳愛好会のお かげでゲーセンで乱入することができるようになった。後にHは語る。「1人でやって いるだけでは上達しない!」と。

 入り方は至って簡単、部室にあるPSで鉄拳または鉄拳2をプレイすればいい。対戦 相手が欲しければ、昼休みや4限や5限の終了後なら誰か必ずいる筈だ。勿論、他の分 科会のように決められた曜日や時間などは設定されてはいない。ただひたすら鉄拳をや る、それがこの分科会の活動内容だ。勿論、そのプレイの中で様々な技を研究するのは 格闘ゲームの常であるが。相手が自分の知らない技を出した場合は相手に聞き、それを 自分のものにする。それによってみんなで強くなろうというというのがこの分科会の設 立趣旨である。

 暇な空き時間の多い駒場生活、まずは暇つぶしにでも覗いて見てはいかが。


落ちモノ分科会

竹島

 落ちモノ分科会は、ぷよやぱずるだま等の落ちモノを遊ぶだけの分科会です。 一応、目標は、だれかがぷよ等で遊んでいたら、参加すること、積極的に連鎖を 作ることです。つまり遊ぶだけですね。305には活動に必要なゲーム機がちゃんと 用意されています。また、落ちモノは種類を問いません。(某ぱずるだまでも可) ゲーマーな人、こわれている人大歓迎です(もちろん、そうでない人も歓迎します) 活動内容は、未定です。(きっとつぶれますね、この分科会)参加者がいたら 考えます。やっぱり、どうすれば大連鎖が組めるかを追及することに なるんでしょうか。うーむ。やっぱ未定ということで(^^; なんか得体のしれない、存在すらあやしい分科会ですが、とりあえず参加して くださいね :) ということで、おしまい。



[総目次へ]

g541119@komaba.ecc.u-tokyo.ac.jp