[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 2chのread.cgiへ]
Update time : 05/09 09:01 / Filesize : 272 KB / Number-of Response : 983
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

Pascal の初心者用の質問・相談所



1 名前:デフォルトの名無しさん [02/01/02 01:46]
Pascal の初心者用の質問・相談所
コンソールのみ。GUI は扱いません。
「Cをやったけど難しいので、やっぱりPascalからぼちぼちやるぅ」という人向け。

コンパイラダウンロード
www.vector.co.jp/vpack/filearea/win95/prog/pascal/index.html

ちなみにDelphiは
「モナーの *やさしい* Delphi質問スレ」
pc.2ch.net/test/read.cgi/tech/1003113413/

92 名前:デフォルトの名無しさん mailto:sage [02/01/10 01:32]
>>87
なんでファイルをいちいちOpenしたりCloseしたりしなくてはならないのですか?
なんでFindFirstしたらFindCloseしないといけないのとか。
なんでAllocしたらFreeしないといけないのとか。

と似たようなものですな(w

93 名前:アライグマPascal mailto:sage [02/01/10 08:02]
>91
Windowプログラムもつくれますよ。

94 名前:デフォルトの名無しさん [02/01/10 09:13]
おい!>>2>>4!!
貴様ら!!!!逝ってよしです。

ていうか、ム板にそんなもの貼ってうれしいんですか。

95 名前:デフォルトの名無しさん [02/01/19 03:15]
community.borland.com/article/images/20803/tp55.zip
ここから Turbo Pascal 5.5 がダウンロードできます。
割れではないです。


96 名前:デフォルトの名無しさん [02/01/19 03:26]
ところで今のDelphiのObjectPascalと、
Turbo Pascal 5.5 との互換性がどれぐらいあるのか、
誰か説明できる人いないかな?

97 名前:デフォルトの名無しさん [02/01/19 03:27]
ダウンロードしたけど、インストールの途中で先に進めません(死


98 名前:デフォルトの名無しさん mailto:sage [02/01/19 03:28]
>>96
Object PascalはTPのほぼスーパーセット。
ライブラリは除く。

99 名前:デフォルトの名無しさん mailto:sage [02/01/19 03:30]
>94
何これ?

100 名前:デフォルトの名無しさん [02/01/19 17:06]
インストールの途中で先に進めなくなるけど、シカトして、TPフォルダの中のEXEを実行したら、ちゃんとインストールされてました!
コンパイル&実行までできました!
あとはTurbo Pascalの本買ってこよ。
Pascal そのものの本はあんまりないけど、Turbo Pascal の本はいっぱいあるし。




101 名前:91 [02/01/19 18:17]
>>93 そうなんですか。実行ファイルにcigwinがいるとかいわなそうだし
テンプレートそろえてエディターがRADのものがあれば
FreePascalのほうがdelphiよりよさそうですね、
要は一般的なサンプルが少なくて古典的なものばかりだということなんでしょうか
GUIアプリでGLUTあたりをかますものであれば大体なんでもできそう

102 名前:デフォルトの名無しさん mailto:sage [02/01/19 18:25]
エディターがRAD ってのがなんか無理めな話しのような・・・

Delphiは 実行時型情報と
 DLL にコンパイルして設計時にも動作するコンポーネントという概念
 それをサポートするツールが組み合わさってRADになってるんだから

103 名前:デフォルトの名無しさん mailto:sage [02/01/19 20:01]
いったい何をどう評価すればFreePascal>>>Delphiになるんだ??

104 名前:アライグマPascal [02/01/19 23:13]
>101
くどいけど、Win32環境でのプログラミングならDev-Pascalを使った方が、
素のFreePascalを使うよりFreePascal&統合開発環境である関係上多少使いやすい
とおもいます。

GUIのためにGTKをつかうひな形が用意されているのですが、GTKをまったく
知らないので私は使いこなせない状況です。

105 名前:デフォルトの名無しさん mailto:sage [02/01/19 23:17]
FreePascalってなんて読んでる?俺はフリッパー

106 名前:デフォルトの名無しさん [02/01/22 00:52]
Turbo Pascal の本はなんでめちゃめちゃ高いのが多いんだ。


107 名前:デフォルトの名無しさん mailto:sage [02/01/31 15:13]
>>105
俺はフリパ。
同じく、FreeBSDはフリビ、
でもFreeDOSはそのままフリードス。



108 名前:デフォルトの名無しさん [02/01/31 20:00]
アマゾンでTurbo Pascal の本を探した。
みんな7か6対応の本ばっかりで、5対応の本があんまりない。
漏れがダウンロードしたのは5だから、できれば5の本がいい。
それとも、7と5であんまり変わってないなら、7の本を買おうと思うが、そのへんどうなんでしょう。


109 名前:デフォルトの名無しさん mailto:sage [02/01/31 21:02]
オーム社「TURBO Pascal プログラミング」間野浩太郎監修、内田智史著 \3,600
は4までが対象だけど、これでは古すぎるかな

110 名前:デフォルトの名無しさん [02/01/31 21:05]
5.5からオブジェクト指向を搭載、って書いてあるので、たぶん、4と5.5はだいぶ違うと予想されるのですよ。
5.5と7の違いがよくわからん。




111 名前:デフォルトの名無しさん mailto:sage [02/01/31 21:15]
今調べたら、
「TURBO PASCAL 5.5 OOP GUIDE」BORLAND刊」
というのを見つけた。そうだ。ボーランドの本を使えばいいのだ。
まだ売ってるのかわからんが。


112 名前:デフォルトの名無しさん mailto:sage [02/01/31 21:47]
>>108
オブジェクト指向を使わないのなら、TP4-7は大して変わらないと思われ。

113 名前:デフォルトの名無しさん [02/01/31 21:57]
>>112
ありがとう。そんなら、7の本を買う。


114 名前:デフォルトの名無しさん mailto:sage [02/01/31 22:15]
古本屋いけ。

115 名前:デフォルトの名無しさん [02/01/31 23:45]
パスカルの本買いたいけど、なんであんないバカ高いんだろ。
言語がフリーでも意味ないじゃん。

『Oh! Pascal!/Book and Pc/DOS Disk』
Doug Cooper (著); ペーパーバック
通常4〜14日以内に発送
価格: ¥9,093

『Turbo Pascal』
Elliot B. Koffman (著); ペーパーバック
通常4〜14日以内に発送
価格: ¥9,600
手数料: +¥960

『Using Turbo Pascal 6.0 - 7.0』
Julien Hennefeld (著); ペーパーバック
通常4〜14日以内に発送
価格: ¥10,260
手数料: +¥1,026

『Turbo Pascal』
Samuel L. Marateck (著); ペーパーバック
通常4〜14日以内に発送
価格: ¥14,467

『Turbo Pascal, an Introduction to the Art and Science of Programming (The Benjamin/Cummings Series in Structured Programming)』
Walter J. Savitch (著); ペーパーバック
通常4〜14日以内に発送
価格: ¥8,933
手数料: +¥894


116 名前:デフォルトの名無しさん mailto:sage [02/01/31 23:49]
>パスカルの本買いたいけど、なんであんないバカ高いんだろ。
これだけ読んで、
高いといっても5000から6000円程度だろ
とレスを付けようとして続きをみてびっくり。
それぞれ1000ページくらいの大作なのだろう。

117 名前:デフォルトの名無しさん mailto:sage [02/02/01 01:18]
>>115
無理にメリケンの本を買おうとするから高いのであって
ニポーンの本で我慢(?)すればそこまで高くはないよ

118 名前:デフォルトの名無しさん mailto:sage [02/02/01 04:17]
じゃなくて、洋古書は売れないと高くなるの。
どの本も大昔の書籍だってこと、わかっているのかな?
なぜ Delphi ではなく TurboPascal を求める?


119 名前:デフォルトの名無しさん [02/02/02 00:00]
だってDelphiなんて、GUIだとか余計なことがイパーイついてて本質が見えないじゃないか。


120 名前:デフォルトの名無しさん mailto:sage [02/02/02 01:29]
>>119
自分で制限可能だよ。
まあやろうとしてることはコイツらと変わらんが

Delphiで小さな実行ファイルを作ろう
pc.2ch.net/test/read.cgi/tech/1009080085/



121 名前:デフォルトの名無しさん mailto:sage [02/02/02 03:38]
だからといって古いソフトを持ち出さなくても...
弘法筆を選ばず。本質が見える人は GUI がついていても道を見失うことはない。
初心者であれば手軽に手に入る,最新の道具で入門をしなされ。



122 名前:デフォルトの名無しさん mailto:sage [02/02/02 08:22]
TurboPascalの入門というかPascalをテーマにしたHPを作りたいのですがいいですか?

123 名前:デフォルトの名無しさん mailto:sage [02/02/02 15:20]
ようするに Delphiでも新規作成で その他->コンソールアプリケーションを選べば
 VCLによらない素のpascalで遊べます

コンソールが不要な SDK方式でのGUI を作りたければ、
 コンソールアプリを選んだ後 {$APPTYPE CONSOLE} を自分で削除すればいいのです


124 名前:デフォルトの名無しさん mailto:sage [02/02/02 23:30]
TP5.5は、統合環境がWin9xのDOSプロンプトでは動かないよね。
つまりデバッガを使いたければDOSモードへ行かねばならない。
これからPascalを始めようとする人には、あまり向いていないと思うよ。

125 名前:デフォルトの名無しさん mailto:sage [02/02/03 00:25]
>>122
作るのは貴方の勝手です。ご自由に・・・

126 名前:デフォルトの名無しさん [02/02/04 08:00]
>87
ふむふむ、確かにFreePascalでもGraphユニットやCtrユニットが用意されているね。
Turboとの互換を考慮してとおもうけど。
GraphDeviceあたりの型を、エラーを参考にShortInt型に書き換えるだけで、きちんと
グラフィックが描ける。英語版のTP5.5をゲットしてDosプロンプトで動かすより、
こちらの方が簡単みたい。
>122
私もTPやFPをネタにコツコツとHPを作ってみようと思っています。

127 名前:デフォルトの名無しさん mailto:sage [02/02/04 10:19]
>>124
ガセ。正しく環境を作れば動く。
DPMI 関連の資料をよく読んで。

128 名前:デフォルトの名無しさん [02/02/04 12:21]
C:>US
C:>TP
:
:
C:>JP
C:>EXIT


129 名前:デフォルトの名無しさん [02/02/04 12:56]
>128
USモードじゃ日本語つかえんぞゴラァ!

130 名前:デフォルトの名無しさん mailto:sage [02/02/04 13:13]
え?TP5.5 って、US のミュージアムから落とした物のこと?
じゃしょうがない。US モードにするしかないだろ。



131 名前:ふむふむ(納得) [02/02/04 13:48]
英語版のTP5.5でも日本語はつかえるけど、GraphやCrtユニットは日本語対応じゃ
ないので、日本語文字列はWriteLnなどの手続きでコンソール上に出力することしかできない。

132 名前:124 [02/02/04 21:18]
>>127
今まで知らなかった。ご指摘ありがとう。
DOSプロンプトのプロパティで「必要に応じてMS-DOSモードを実行」を外したら動いた。

>>131
DirectVideo := False;
とすれば、Crtユニットによるテキスト出力がBIOS経由になるから、
DOS/V BIOSのおかげで、Writelnで日本語文字が出力できるようになるよ。
GraphユニットのOutTextでの日本語出力は、無理そうだね。

133 名前:デフォルトの名無しさん mailto:sage [02/02/04 21:21]
昔のPascalなんてコンパイル速度が速いだけしか取り柄が無いよ

134 名前:デフォルトの名無しさん mailto:sage [02/02/04 21:49]
Delphi6パーソナルを使った pascalのスタート教室

1) FILE-> 新規作成->その他->コンソールアプリケーションを選びます
 すると
program Project1;

{$APPTYPE CONSOLE}

uses
SysUtils;

begin
{ TODO -oUser -cConsole Main : この下にコードを記述してください }
end.
とソースが表示されます
 program Project1;  uses SysUtils; はボーランドによる拡張ですから取り去ってかまいません
{$APPTYPE CONSOLE} も取り去ってかまいませんが、代わりにコンパイルオプションでコンソール
アプリである事を指示する必要があります

結局、最初に書くアプリは これでいいでしょう 
{$APPTYPE CONSOLE}
begin
writeln('こんにちは');
readln;
end.

この2行を入力した後、F9 を押せば実行出来ます

135 名前:ふむふむ(納得) [02/02/04 21:49]
>132
ふむふむ、自分はまだGraphユニットとCrtユニットを完全に理解していなかった
ようです。サンプルコードを希望します。

自分はPC-9800シリーズ用のTP6プロフェッショナル版をもっていますが、
引っ越しのどさくさでソフトはあれど、マニュアルをすべて無くしてしまったのです。
TP6のマニュアルに書かれていたクラスの概念はとても分かりやすかっただけに、
すご〜〜〜〜く、残念です。

だれかGraphユニットとCrtユニットの詳しい解説をサンプルを使って説明して
くれませんか!!

136 名前:デフォルトの名無しさん mailto:sage [02/02/04 21:52]
さて、>>134の方法で作成した場合、ソースは dprの拡張子となっています。

Delphi IDEを使わない方法を説明します。

まず メモ帳でも好きなエディタでも、 ファイル名.pas としてファイルを作成し
begin
writeln('こんにちは');
end.
と3行入力し、保存して下さい。
コマンドラインから
 DCC32 -CC ファイル名.pas として改行すれば
ファイル名.exeが作成されます


137 名前:デフォルトの名無しさん mailto:sage [02/02/04 22:04]
uses を使わない場合に使えるのは system unit の関数だけです

uses SysUtils ;が 追加された状態では、abort; Ansi/Unicode文字列処理や時間などの関数が追加されます





138 名前:デフォルトの名無しさん mailto:sage [02/02/04 22:10]
コンソールアプリであっても、グラフィック画面を扱いたくなります
Windowsの場合、コンソールにグラフィックを表示する事は出来ません。
そこで、別窓を出してグラフィックを出すか
あるいは、BMPファイルを作成して後でビュアーで見るという方法が簡単です

Delphiのフォーム機能をグラフィック画面としてコンソールアプリから使う方法を説明します



139 名前:デフォルトの名無しさん mailto:sage [02/02/04 22:20]
まずは、IDEからコンソールアプリを作成した直後
新規作成でフォームを作成して下さい

そして以下のように入力して実行してみて下さい

program Project1;
{$APPTYPE CONSOLE}
uses
SysUtils,
Forms,//<----この行を追加
Unit1 in 'Unit1.pas' {Form1};

begin
Form1:= TForm1.Create(nil); //<<--この行以下を追加
Form1.Show;
Form1.Canvas.Ellipse(20,20,100,100);//円の描画
Form1.Caption:= 'こんにちは';
readln;
end.

実行すると、コンソールと同時にタイトルがこんにちは となった フォームが表示された筈です
このフォームはクリックに応答しませんし、他の窓に隠れると再表示もされません
が、とりあえずこれで遊ぶには十分に便利な筈です



140 名前:124 mailto:sage [02/02/04 22:42]
>>135
>TP6のマニュアルに書かれていたクラスの概念はとても分かりやすかっただけに、
おお、同意。なんか執筆者のすごい熱意が感じられる文章だった。

Crtユニットを使って日本語を出力する例。
TP5.5、Win95のDOSプロンプトにて確認しました。JPモードで実行して下さい。

program test;
uses Crt;
begin
  DirectVideo := False;
  GotoXY(30,10);
  TextColor(Red);
  Write('こんにちは');
end.

2バイト目が'のコード番号と一致するような日本語文字を文字列中に入れる場合には注意。
コンパイラがその'を文字列の終わりと認識するのを防ぐため、'を一つ追加してやる必要がある。



141 名前:デフォルトの名無しさん [02/02/04 22:43]
ターボパスカルって、いまC#作ってる人と同じ人が作ったの?


142 名前:動物アイゴー協会 mailto:sage [02/02/04 22:47]
あらいぐまパスカルとかパトラッシュ思い出すんだけど。


143 名前:デフォルトの名無しさん mailto:sage [02/02/04 22:49]
さて、>>139の方法はあまりにも無理やりで作法としてよくありません。
そこで、コンソールアプリからBMPファイルを作成して表示させる方法を説明します

まず、新規作成でコンソールアプリを新しく作った後

uses
windows, //WindowsのAPIを使います
ShellApi, //ShellExecuteを使う為に
Graphics, //TBitMapを使う為に
SysUtils;
var bmp:TBitmap;
begin
 bmp:=TBitmap.Create;
 with bmp do try
  Width :=100;
  Height:=100;
  PixelFormat:= pf1bit;
  Canvas.Ellipse(1,1,100,100);//円を描く
  Canvas.TextOut(5,5,'こんにちは');
  SaveToFile('temp.bmp');
 finally free;end;
 ShellExecute(0,'Open','temp.bmp',nil,nil,SW_SHOW);
end.
として実行してみて下さい
このコードはコンソールを使用していませんから、コンソールアプリである必要もありませんから
{$APPTYPE CONSOLE} も取り去って大丈夫です


144 名前:デフォルトの名無しさん mailto:sage [02/02/04 23:16]
>>139 の方法がなぜ良くないかをまず説明します

 Windowsでは複数の窓があるように見せていますが、実際の表示デバイスはせいぜい1つです
 他の窓に隠された部分が また表示されるのは、アプリケーションが努力しなければなりません
 その為の仕掛けをメッセージループと呼びます
 窓はメッセージを受信する仕掛けをもち、再描画しろというメッセージにしたがって画面を自分で
 描くわけです。
また、キーボードが押された、マウスが押されたもメッセージにより処理されます。
Delphiでは application.ProcessMessages; で明示的にそのメッセージループを呼び出す事も
出来ます。コンソールアプリでapplication.ProcessMessages;を定期的に呼び出せば、作成した
フォームはマウスを受け付ける事が出来るようになります。が、それをしても >>139のように描画
処理をベタに書いたのでは 他の窓に隠れると2度と表示出来ない事にかわりはありません。
この部分をイベント駆動にしなければならないのです。
 それがフォームにある OnPaintイベントです。






145 名前:デフォルトの名無しさん mailto:sage [02/02/04 23:35]
>>143 のコードを説明しょうと思いましたが、
 Delphi6のIDE上で F1を押せば知りたい情報は殆ど出て来る筈です

bmp.PixelFormat:= pf1bit; はモノクロビットマップを作るという意味になります
その他の多色形式はヘルプを見て下さい


ShellExecuteは 作成した temp.bmpをそのパソコンに設定された方法で
  開くためのAPIです

円以外のグラフィック描画命令は TCanvas でヘルプを見て下さい
線の色の設定や線の太さは Canvas.Pen で設定します
面の 〜 は Canvas.Brush で行います
文字の〜は Canvas.Fontで行います

146 名前:デフォルトの名無しさん mailto:sage [02/02/05 00:40]
なんかものすごく丁寧に説明されてる方がおられるようですが、
ひょっとして穂積○平さん?

147 名前:ふむふむ(納得) [02/02/05 07:56]
>140
サンキュー

今、FreePascalでGraphユニットを使って日本語をなんとかグラフィックと
混在表示できないか検証中です。やっぱ、outTextでは文字化けしますね。
(Win2000のコンソール画面で検証)

148 名前:デフォルトの名無しさん mailto:sage [02/02/05 08:50]
人のやる事にああだこうだは言いたくないけど、今更DOSアプリの研究してどうすんの?
それはもうコンソールアプリじゃないよ
そこらへんやりこむにはインラインアセンブラ使うしかなくなるしさあ

pascalの勉強ならDelphi6パーソナルで始めたらいいじゃない


149 名前:デフォルトの名無しさん mailto:sage [02/02/05 11:52]
>>148
禿同。
コンソールアプリでもない機種依存アプリでしかない。Windows が動かないほど
古いマシンでの話ならともかく Win の DOS-BOX で動かそうとしているようだから
意図がわからない。

本質的なプログラムをしたいなら、Graph がどうこうとか言ってる場合じゃないとおもうが。


150 名前:ふむふむ(納得) [02/02/05 12:15]
>148
>149

私も含めてTPやFPを使っている人は、これで飯を食っているわけじゃないとおもいますけどね。
ただ、知的好奇心を満たすため、また昔を懐かしみたいがために、前記のツールでコツコツとコードを書いて
遊んでいるとおもいます。

>148
私はアセンブリ言語はサパーリわかりませんので、インラインアセンブラは未体験ですけど、
使いこなせたらおもしろそうですね。
>148
我が家には486・33MHzマシンもペン150MHzマシンもあります。再利用を考え中です。
FPですが、LinuxやDOS、OS/2、旧バージョンはアミーガでも稼働できるそうなので、
ツールになれたらそれらのOSでも楽しめそうです。(私はOS/2も持っています)
個人的にはBeOS(瀕死状態ですが)、今後発表される予定のFreeBeOSにFPが移植されたら
有り難いのですが・・・・。



151 名前:デフォルトの名無しさん mailto:sage [02/02/05 12:20]
昔の書籍のリストを実行させたいのなら、意味がある。

152 名前:148 mailto:sage [02/02/05 12:44]
棘の道だなと思うけど、それが好きなんだと言われたらしょうがない話しだからもう言わない

ワンダーウイッチ開発をTPで出来るように環境を整えるとかの方向なら面白いとは思うんだけど・・・

153 名前:デフォルトの名無しさん mailto:sage [02/02/05 13:08]
>>150
486の33Mを生かしたいなら kylixやればいいのに
486では開発出来ないだろうけど、作った実行ファイルは実行出来るだろうに

154 名前:ネタsage mailto:sage [02/02/05 13:25]
>>142
♪神サマありがと〜お、ボクにともだちをくれ〜て〜〜〜。
♪パスカルに〜あわせてくれて、パスカルに〜あわせてくれて
♪パスカルに〜あわせてくれて、パスカ〜ルにあわせてく〜れ〜〜て〜〜


155 名前:デフォルトの名無しさん mailto:sage [02/02/05 13:39]
2ch だしぃ... どれが誰だかわからないけど

>119 :デフォルトの名無しさん :02/02/02 00:00
>だってDelphiなんて、GUIだとか余計なことがイパーイついてて本質が見えないじゃないか。

ってのがあるから、「Graph/CRT でごそごそやるくらいなら Delphi つかったら?」
といっているの。いまどき SVGA どまりのグラフィクスでもないでしょ?

156 名前:ふむふむ(納得) [02/02/05 13:49]
>154
♪ごめんね素直じゃなくって。夢の中なら言える。
♪思考回路はショート寸前。あなたに会いたいよ。

 「美少女戦士セーラー・パスカル」
                  ヘジに替わってデバッグよ!

>153
   kylixはFreeBSDでは動かないのではないかと思います。
   私はlinuxよりFreeBSD派です。(ごめんなさい)  
   それより486でlinuxやFreeBSDを使うということはXはあきらめろ
   ということになりそうです。

157 名前:デフォルトの名無しさん mailto:sage [02/02/05 14:06]
で、結局、何をしたいのか?

158 名前:デフォルトの名無しさん mailto:sage [02/02/05 18:46]
>>157
Delphi以外でPascalの勉強だろ?

159 名前:ふむふむ(納得) [02/02/05 21:19]
ちがうってば

DelphiでもTPでもFPでも、とにかく手持ちの処理系を使った
Pascalの学習さ。


160 名前:デフォルトの名無しさん mailto:sage [02/02/06 00:22]
Graph ユニットや CRT ユニットの使い方を学ぶのが Pascal の学習か?と聞いているんだよ。



161 名前:デフォルトの名無しさん mailto:sage [02/02/06 01:18]
それは一つの手段でしょ.
なんでそんなに突っかかるのか小一時間(略

162 名前:デフォルトの名無しさん mailto:sage [02/02/06 07:58]
Pascalは、処理系を作るのが学習です。

163 名前:デフォルトの名無しさん [02/02/06 08:06]
>140
win2000のコンソール画面(JPモード)では文字化けします。
対策はやっぱり、旧Winと文字コードの取り扱いがちがうから無理でしょうか?

164 名前:ヒロシ [02/02/06 18:57]
⊂(□ー□⊂⌒`つ≡≡≡≡≡≡<ヒロシ(164)ゲト!!!

165 名前:アライグマPascal [02/02/15 12:00]
今、PascalプログラミングのHPを作っています。
昔のTurboPascalを思い出す懐かしいやつです。
今年の8月頃Openの予定です。

166 名前:424 [02/02/15 12:17]
なんかフリーのSRPG作成ツール無い?
(SRC以外で)
ガチャポン戦士3作りたくなった


167 名前:424 [02/02/15 12:18]
pascal板かここ・・・
すいません、逝ってきます。

168 名前:デフォルトの名無しさん [02/02/15 15:07]
「PASCAL でガチャポン戦士をつくるうっっ!!」
この壮大な計画を遂行するため、424は立ち上がった、、、
歴史は動き始めた、、、

169 名前:424 [02/02/15 15:21]
ツールが見つかりません。
逝ってきます。

170 名前:アライグマPascal [02/02/18 10:01]
今ちょこちょこっとHPをつくっています。実はOpenしたのですが、まだ
コンテンツが激貧なのでURLは秘密です。古いPascalの簡単なサンプルを
公開・保存する場にしたいと思っています。



171 名前:デフォルトの名無しさん mailto:sage [02/02/18 13:58]
確か、フランスのボーランドサイトから、仏語版のTP7がダウンできるはず(FREE)
 NECRT.TPU という、CRT互換unitをダウンすれば、日本語だって出力可能

おいらは統合環境は使わないから、これで問題なし

172 名前:デフォルトの名無しさん mailto:sage [02/02/18 23:37]
>>170
楽しみにしているぞゴルァ。

>>171
フランスのBorlandからわけのわからないメールが届くようになるという
諸刃の剣。

173 名前:アライグマPascal [02/02/19 08:18]
たいへん。Dev-PascalのURLが使えなくなりました。移動したのか?
それともなくなったのか?

174 名前:アライグマPascal mailto:sage [02/02/23 01:09]
復活したもようですね。


175 名前:デフォルトの名無しさん mailto:sage [02/02/23 01:47]
>>145
「ヘルプを見て下さい」ばかりだと、このスレ意味なしだと思いません?

コンソールアプリにこだわりながら、なおかつ、TCanvas を論じている
こと自体に無理があるのでは?


176 名前:アライグマPascal [02/02/23 23:38]
本家からFreePascalをダウンロードして、エディタはCPadあたりを
利用して以下のソースをコンパイル。

program test;
uses Graph;
var
GraphDriver:smallint;
begin
GraphDriver := Detect;
InitGraph(GraphDriver,30012,'');
SetColor(4);
circle(300,200,100);
readln();
CloseGraph;

end.

画面に赤い円が表示されたら成功。(懐かしいでしょ)

177 名前:デフォルトの名無しさん mailto:sage [02/02/23 23:57]
赤い玉が出てくるの?

178 名前:デフォルトの名無しさん [02/02/23 23:58]
>>5
いまさらなつっこみで悪いんだが・・・

absolute変数があったり、
「Mem[****] := ****」とか「Port[**] := **」なんてことができたり
inline手続きがあったりするので
PascalはCよりもっと危険なのでは?

Cじゃメモリの番地を直接指定して書き込みするなんてことはできない
ポインタを介して間接的なやりかたでやらねばならないぶん、
Pascalよりも安全性はほんの少し高いとも言えないか?

Delphiはともかく、DOS時代のTurbo Pascalなんて、
ハードウェアを直接いじるような目的で使われることが多かったし、
実際、procedureの中身はアセンブラソースをasmとendで括っただけなんていう
ほとんど高級アセンブラ的なPascalの使い方をしてるソフトが
数多くまかり通ってたものだが


179 名前:デフォルトの名無しさん mailto:sage [02/02/24 00:20]
>178
>PascalはCよりもっと危険なのでは?
なんでやねん。
危険なのは(言語を問わず)ハードを直接操作することでしょ。
高級なことやりたいんなら危険専用の命令である
inline/absolute/asm使わなければそれで十分安全性を確保できる。

それに対してCは高級・低級ともにポインタ使わざるを得ないから
高級な目的で書かれたコードですら安全とはいいかねる。

180 名前:デフォルトの名無しさん mailto:sage [02/02/24 03:12]
178 の理屈だと

XXX 言語はインラインアセンブラがあるから、特権命令も記述できるので
一行でハングアップするコードがかける。危険!

ということもできそうだが、さすがにこれには同意しまい?



181 名前:アライグマPascal [02/02/24 06:25]
したらばBBSでもおねがいしましたが、みなさん、昔のBASICゲームプログラムの
ソースをもっていませんか?ベーマガに載っていた、1画面プログラムみたいなものです。
音やスプライト機能はできないと思いますが、なんとかPascalで書き直してみたいと
思っています。ここにソースをアップしてみんなで考えたら、勉強のネタとして
おもしろいと思います。

182 名前:デフォルトの名無しさん mailto:sage [02/02/25 10:24]
1 COLOR15,1,1:SCREEN5,1,0:R=RND(-14):FOR
I=0TO212:P=PEEK(I+800):PSET(P,I),IMOD3+2
:NEXT:FORI=0TO7:VPOKE30721+I,255:VPOKE30
736+I,24:NEXT:OPEN"GRP:"AS1:SOUND6,18
2 DEFFNS=RND(1)*175+25:DEFFNR=(INT(RND(1
)*10)-5)/10:C=FNR:D=FNR:G=FNS:H=FNS:Y=99
3 LINE(E,200)-(E+20,212),1,BF:FORI=2TO4:
COLOR=(I,0,I*2-2,I*2-1):CIRCLE(G-I,H-I),
(6-I)*2,I:PAINT(G-I,H-I),I:NEXT:LINE(G,2
00)-(G+20,212),5,BF:SOUND7,183:X=120:E=G
4 S=STICK(0):A=(S>5ANDV>-8)-(S>1ANDS<5AN
DV<8):B=((S=8ORS=1ORS=2)ANDW>-8)-(S>3AND
S<7ANDW<8):V=V+A+C:W=W+B+D:X=X-V:Y=Y-W
5 VDP(24)=(Y+149)MOD255:PUTSPRITE0,(X,Y)
,10,0:PUTSPRITE2,(X,Y+B*9),ABS(B)*9,2
6 PUTSPRITE1,(X+A*14,Y+8),ABS(A)*9,1:IFP
OINT(X+8,Y+18)=5THENN=N+1:BEEP:GOTO2
7 SOUND8,-(S>0)*13-(S/2=S\2)*2:IFX>4ANDX
<238ANDY>-10ANDY<194THEN4ELSEFORI=0TO50
8 D=RND(1)*31:SOUND6,D:SOUND8,15:VDP(24)
=ABS((Y+D\3+144)MOD256):NEXT:Y=Y+(Y<0)*Y
9 PSET(80,99):PRINT#1,"GAME OVER";N+1
10 SOUND8,0:FORI=0TO255STEP.5:Y=Y+I:Y=Y+
(Y>255)*Y:VDP(24)=Y:NEXT:POKE-869,1:RUN


183 名前:アライグマPascal [02/02/26 21:55]
どうもありがとうございます、しかし・・・。

peek、poke、sound、vdpなど、移植が難しいコマンドが目白押しですね。
参考にさせていただきます。


184 名前:デフォルトの名無しさん [02/02/26 23:08]
peek pokeは全然難しくない
むしろBASICより簡単だ。メモリ配列に代入するだけで済む
Mem[$****] := hoge    hoge := Mem[$****]

スプライトは無理だけど重ね合わせ処理で代用できるでしょ

185 名前:デフォルトの名無しさん mailto:sage [02/02/26 23:14]
>むしろBASICより簡単だ。メモリ配列に代入するだけで済む
その副作用は一切無視?

186 名前:デフォルトの名無しさん [02/02/26 23:50]
>>185
BASICのプログラムをPascalで書き直すって言ってるんだから
元と同等のことをやればよいだけだろ
BASICと同様の単純なシステム上の話じゃないのか?
WindowsだのUNIXだのの上ではもちろんそんな乱暴なことは許されないけど、
単純なシステム上ならそういう乱暴な方法でしかゲームは書けないよ


187 名前:デフォルトの名無しさん mailto:sage [02/02/27 00:03]
>182のBASICが動くパソコン用のPascalコンパイラなんてまずないだろ。
ハードが変わったらpeek,poke(Mem)の移植性なんて皆無。
大体MemってTP専用じゃなかったか?

188 名前:デフォルトの名無しさん [02/02/27 00:22]
そうかbasicで組むときpeek使うと移植性が低くなるのか
でもBASICなんてもともと移植性なんか関係無いし。


189 名前:デフォルトの名無しさん mailto:sage [02/02/27 00:34]
>>182
MSX-BASICか・・・どこから引っ張り出してきたのやら。
って優花、ベーマガのサイトに行けばダウソ出来るじゃん。

190 名前:デフォルトの名無しさん [02/02/27 00:36]
BASICが主流だった当時はそういう乱暴な方法でしかゲームは作れなかったんだから仕方ない

TPだってMS-DOSがグラフィックやサウンドの機能をサポートしてなかったから
やっぱりMem配列とかの乱暴な手段は必須だった




191 名前:がうがう ◆gu5gIE4w [02/02/28 20:46]
初めまして。このたび、HP200LXを手に入れたんですが、これと
同時にBorland C++ Suite を何故か、購入しちゃって、これにBP7が
入ってまして、pascalをやりたくなったんですが

1.HP200LXぐらいのスペックだとPASCALって厳しいですか?

2.CGAですが、付属のCGA.BGIでは、遅いと思われます?

3.Cと比べてどれくらいの実行速度なんでしょうか?

今から始めるので、何も分からなくて恥ずかしいのですがよかったら
上記のことを教えてくださいまし

勉強をかねて、上から線が降りてきてそれをよけるような簡単なものと
三角関数を使ったRPN電卓を作りたいなと思います。

このスレッドが消えませんように……




192 名前:デフォルトの名無しさん mailto:sage [02/02/28 20:51]
>>191
1. 2. は知らんけど

>3.Cと比べてどれくらいの実行速度なんでしょうか?
一般論としては引数を全部スタックに積むCより
3つまで(だったかな)ならCPUのレジスタを直接使うPASCALの方が
より高速になりうる・・・と聞いたけど






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<272KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef