みんなの「教えて(疑問・質問)」にみんなで「答える」Q&Aコミュニティ

こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

MS-DOS(NEC) において、

【アプリケーション・ツール】を
創りたい気持ちになりました。

環境下は、以下のようです。


OS:MS-DOS (NEC) ver . 6.20

仕様機種:PC-9821Ra43
http://www.pasocomclub.co.jp/datas/nec_pc_9821ra43.html


※ プログラムを創る為の

「高級言語は一体、何を使えば良いのでしょうか。」

ご鞭撻、お願いします。中古品、可です。

投稿日時 - 2012-12-29 16:55:33

QNo.7866891

困ってます

質問者が選んだベストアンサー

>プログラミングを全く、知らない、初心者であると、小生を認識して下さい。
>その上で、ご助言を頂けると、幸いです。

それではあえて書かせていただきます。

初心者といえば何でも教えてもらえると思ってるうちはプログラムを自分で組めるようにはなりません。

投稿日時 - 2013-01-14 00:00:38

お礼

その通りですね。

投稿日時 - 2013-01-14 19:19:19

ANo.14

このQ&Aは役に立ちましたか?

15人が「このQ&Aが役に立った」と投票しています

回答(14)

ANo.13

>デバイス・ドライバ創りが今の目標ですが、そこまで辿り着く前に、ハードウェアについて、多くを知らなければならぬと自己評価します。

ハードウェアについての知識などがいるかどうかは何のデバイスドライバを作るつもりなのかにもよるんですが・・・
ハードウェアを操作するためのデバイスドライバかどうかは置いとくとして、それを作るためのアセンブラなり何らかの高級言語なり扱えるんですか?

投稿日時 - 2013-01-13 21:55:41

お礼

早速のレスポンス、恐縮の限りです。

プログラミングを全く、知らない、初心者であると、小生を認識して下さい。

その上で、ご助言を頂けると、幸いです。

投稿日時 - 2013-01-13 22:06:44

ANo.12

>安易なことから、始めるしか無いのでしょうが、お奨めのプログラミング作業としては、何があるでしょうか。

ご自分で何をしたらよいのか考える事をおすすめします。
すでにヒントはいくつか出してますし。

投稿日時 - 2013-01-13 17:39:05

お礼

まだ、開発段階へとは、行けないまでの習熟度が実情です。

デバイス・ドライバ創りが今の目標ですが、そこまで辿り着く前に、ハードウェアについて、多くを知らなければならぬと自己評価します。

小生に貴重な時間を割いて頂き、誠に恐縮の限りです。

投稿日時 - 2013-01-13 19:53:59

ANo.11

MS-DOS用のデバイスドライバを作りたいのなら高級言語よりアセンブラの方が楽です。
また作りたいデバイスドライバによってはハードウェアの資料や知識なども必要になってきます。

以下、忠告
おそらく今MS-DOS用のデバイスドライバを作ったりしてる人はほとんどいないと思いますので作り方がわからないといって質問してもおそらく回答は返ってきません。その辺は古本など探すなどの自力でする覚悟はした方がいいです。

投稿日時 - 2013-01-13 10:40:50

お礼

いつも、的確なアドバイス、光栄の限りです。

今時、DOS拘泥は如何は、分かります。

ですが、自己投資額が、Windows を選択するとあっては、大変なことに至るのは、自明の理だと思えます。

なるべく、自己投資額を抑えたいのですが、デバイス・ドライバ創りは、想像を絶するほど、ハードウェアの知識がふんだんに無いと、話が進まないと思えます。

その上、現代のパーソナル・コンピュータのハード・ウェアの進化を偲べば、国民機用のハード・ウェアの詳細なマニュアルを探すことは出来ても、基本的な知識が無ければ、デバイス・ドライバを創ることは自力ではまず、不可能だと思えます。

プログラミングは全く、初心者の域どころか、白紙状態です。

安易なことから、始めるしか無いのでしょうが、お奨めのプログラミング作業としては、何があるでしょうか。

貴公の見識を仰有って頂けると、幸いです。

投稿日時 - 2013-01-13 16:39:36

ANo.10

1993念い公開されたLSI-C86は、現在でも入手できますが、
http://www.vector.co.jp/soft/maker/lsi/se001169.html
その他の製品版は「ぱそこん倶楽部」で取り扱っているようです。
http://www.pasocomclub.co.jp/list/98os.html

投稿日時 - 2013-01-12 14:40:50

お礼

おはようございます。

486HA さま、いつも、的確なアドバイス、誠に恐縮の限りです。

有り難うございます。

投稿日時 - 2013-01-13 06:09:31

ANo.9

NEC PC-9821Ra43に異なるバージョンのMS-DOSをインストールするには、
適切なパーティションの容量を確保してバージョンの古い順にインストールすれば出来るはずです。
 プログラム開発言語は、何を作成するかによって異なりますが高級かどうかより自分で使えるか重要です。
昔々、私の場合は、マシン語を直接打ち込んでシステム・モニターを作成してアセンブラーも自作しました。
 そもそも「アプリケーション・ツール」とは何をやりたいか不明です。

投稿日時 - 2013-01-11 09:27:46

補足

MS-DOS 用のデバイス・ドライバが創れると嬉しいのですが。

投稿日時 - 2013-01-12 11:25:12

お礼

486HA さま。

いつも、的確なアドバイス、恐縮の限りです。

投稿日時 - 2013-01-12 05:18:40

> MS-DOS 3.3D , MS-DOS 5.0A , MS-DOS 5.0A-H 何れもインストーラーは進まず、画面がフリーズします。

そうでしたか.
インストーラを使わずに,MS-DOSをインストールしてみてはどうでしょう.
フロッピーから MS-DOS 5.0 を起動して,フォーマット済みのハードディスクに sys コマンドでMS-DOSのシステムファイルを転送してみては?(ver.6.20が使えるなら,あえて5.0以前で頑張る必要はないですが).


> N88-日本語BASIC(86)(Ver. 6.1)
>
> 5インチディスク、2枚とマニュアル、四冊を持ち合わせていますが、
> ハードディスクにインストール作業するのは、絶望的なので、諦めた方が宜しいのでしょうか。

たしかにN88-日本語BASICは,後期PC98のハードディスクが動かない可能性が高そうですね.BASICが主流の時代には,PC用のハードディスク自体珍しいほうでしたから.

それ以前に,プログラミングの勉強が目的なら旧世代のBASICは避けるべきです.言語の設計が古典的で,初学者にあまり良い影響を与えません.


> フロッピー起動で何が悪いと怒られそうですが。

そんなことはありません.頑張ってください.

投稿日時 - 2012-12-30 21:27:47

補足

只今、

N88-日本語BASIC(86)(Ver. 6.1) の 5インチディスクを試してる所です。

投稿日時 - 2012-12-30 21:31:41

お礼

>フロッピーから MS-DOS 5.0 を起動して,フォーマット済みのハードディスクに sys コマンドでMS-DOSのシステムファイルを転送してみては?(ver.6.20が使えるなら,あえて5.0以前で頑張る必要はないですが).<

セクタが壊れてしまいます。MS-DOS ver. 5.0A で、実験してみました。

投稿日時 - 2012-12-30 21:30:42

あくまでMS-DOSのみで,高級言語による初歩の開発ということでしたら回答 No.4さんと同様,LSI-C 86 試食版がおすすめです.昔はこれが定番でした(今と違って高級言語のコンパイラは高価だったので).BASICも広く使われていましたが,プログラミングの勉強には不向きですね.


> version 6.20 以外、インストーラは進まず、フリーズしたまま...

Ra43を使ったことはないので確実なことは言えませんが,フロッピーから他のバージョン(MS-DOS 5.0など)が起動するなら,おそらくハードディスクからも起動できると思うのですが...

もしN88-日本語BASIC(DOS版)の話なら,それはN88-日本語BASICと異なりOSではなく,MS-DOS環境にインストールして起動するプログラムです.


> Ra43はMS-DOS 6.20 専用98機のひとつです。

繰り返しになってしまいますが,Windows 3.1 も OS ではなく,MS-DOS上で動かすプログラムですよ.

投稿日時 - 2012-12-30 18:57:27

補足

> 5インチディスク、【4】枚とマニュアル、四冊を持ち合わせています

のミスタイプでした。

投稿日時 - 2012-12-30 20:54:49

お礼

> Ra43を使ったことはないので確実なことは言えませんが,フロッピーから他のバージョン(MS-DOS 5.0など)が起動するなら,おそらくハードディスクからも起動できると思うのですが...

MS-DOS 3.3D , MS-DOS 5.0A , MS-DOS 5.0A-H 何れもインストーラーは進まず、画面がフリーズします。

> N88-日本語BASIC(DOS版)の話なら,それはN88-日本語BASICと異なりOSではなく,MS-DOS環境にインストールして起動するプログラムです.

N88-日本語BASIC(86)(Ver. 6.1)

5インチディスク、2枚とマニュアル、四冊を持ち合わせていますが、ハードディスクにインストール作業するのは、絶望的なので、諦めた方が宜しいのでしょうか。

フロッピー起動で何が悪いと怒られそうですが。入門ならば、上記を用いるのが筋なのかもしれません。

投稿日時 - 2012-12-30 20:37:13

> Borland C++ 4.0J ならば、ヤフーオークションに在庫があるようです。

画像を見る限りでは,4.0Jも4.5Jと同様に,MS-DOSプログラムの開発にも対応したWindows 3.1の統合開発環境のようですね.ヤフーオークションで検索すると,PC98用のWindows 3.1も見つかります.

投稿日時 - 2012-12-30 15:17:02

補足

済みません。フロッピー起動ならば、ヴァージョンを問われないようですが、ハードディスク、MO等にインストールするのであれば、Ra43の場合、version 6.20 以外、インストーラは進まず、フリーズしたままに陥ってしまいます。そもそも、Ra43が純粋のPC98機ではないからでしょう。

投稿日時 - 2012-12-30 15:35:25

お礼

早速のレスポンス、ありがとうございます。

可能な限り、Win16,Win32は避けたいです。純粋、MS-DOSを以てしてでのプログラム作りの初歩から勉強したいのですが、Ra43はMS-DOS 6.20 専用98機のひとつです。

投稿日時 - 2012-12-30 15:33:09

やはり入手できればの話になりますが Borland C++ 4.5J もおすすめです.別途,Windows 3.1 (NEC)を入手する必要もありますが.

これはMS-DOSからWindowsへの過渡期に販売された製品なので,これ1つで MS-DOS,Windows3.1,Windows95用のプログラムをそれぞれ開発できます.

また,これはGUIの統合開発環境です(Windows3.1, Windows95対応).WindowsはVer.3.1まではOSではなくMS-DOS上で動作してGUI環境を提供するミドルウェアでした.MS-DOS (NEC) ver.6.20 なら Windows 3.1 を起動できますので,MS-DOSアプリケーションを開発するときだけ GUI で,作ったプログラムを実際に使うときは Windows を終了させて MS-DOS (あるいはDOS窓)で,という開発スタイルが可能です.


> HDDがすっ飛ぶのは非常に困惑します。

これは仕方ないでしょうね.ディスクやメモリのOSによる保護機構がほとんど無いので.

普通に使っている限りはあまり神経質になる必要はありません.プログラム言語に備わっている標準関数ではなく,BIOSやI/Oポートを直接使ってディスクを操作するようなプログラムを組むときには特に要注意です.

投稿日時 - 2012-12-30 07:24:43

補足

http://hse.dyndns.org/hiroto/RFY_LAB/n88basic/para.htm

投稿日時 - 2012-12-30 21:27:57

お礼

Borland C++ 4.5J

ですか。

Borland C++ 4.0J ならば、ヤフーオークションに在庫があるようです。

投稿日時 - 2012-12-30 14:45:34

ANo.4

追加です。。

LSI-C 86 試食版もまだフリーで使えます。
http://www.vector.co.jp/soft/maker/lsi/se001169.html

tinyモデルしか作れませんが・・・

投稿日時 - 2012-12-29 19:00:36

補足

回答:No.8

の回答結果です。

Ra43 仕様です。
http://www.pasocomclub.co.jp/datas/nec_pc_9821ra43.html

プログラムが実行できない理由がわかりません。取り敢えず、

N88 - 日本語BASIC(86) 

PC-トレーニングディスクを内蔵ドライブ1に挿しました。

ですが、エラーメッセージがでます。

エラーメッセージの理由は、ディップスイッチ工場出荷状態ではなく、かつ、必要メモリ 640KB を遵守していないからだそうですが、必要条件は満たしていると思われます。

投稿日時 - 2012-12-30 22:24:17

お礼

懇切丁寧な解説、誠にありがとうございます。

投稿日時 - 2012-12-29 22:01:06

ANo.3

こんにちわ。

以下の方法が考えられるかもしれません

・Borland TurboC ? のAT版からパッチをあてる
 http://www.d8.dion.ne.jp/~ryo_k/pc98/turboc.htm


・・
どちらかといえば、FreeBSD 98 を素直にインストールしたほうが、今はいいかもしれません。
インストールすれば、少なくともgccは入ります。
ftp://ftp.jp.freebsd.org/pub/FreeBSD/ISO-IMAGES-pc98

高級言語を使うとか考える前に、Webサーバーとかも立ち上げられるようになります。
そして、世界中にある多くの高級言語も使用できます。

投稿日時 - 2012-12-29 18:59:23

お礼

> FreeBSD 98

使っています。FreeBSD 8.3 R (98) です。

ファイルサーバーとプリンタサーバには成り得ています。

投稿日時 - 2012-12-29 22:00:21

DOSだと、MS-CやQuick C、Quick BASIC、N88-BASIC(86)DOS版などがありましたが、現在入手出来るかかなり怪しい様な気がします。
(今ヤフオクを覗いてみましたが、ぱっと身は見つかりませんでした)

プログラムに必要な資料なども入手が難しいでしょうし、開発環境を整備するのに掛かる苦労(と金額)を考えると、到底ペイ出来ないと思われます。

ちなみにプログラムのご経験(せめてVC++くらい)はありますか? ご存じの通りPC-9801シリーズは運用するだけでも苦労が多い状態で、それに20世紀の開発環境は、現在のVisualStudioのような便利機能はほとんど搭載されていません。DOSの知識もそれなりに必要ですし、バグが出たら簡単にHDDがすっ飛ぶ様な環境です。

まずはWindows用のアプリでも組まれてはいかがでしょうか。

投稿日時 - 2012-12-29 17:29:13

お礼

早速のレスポンス、有り難うございます。中途半端な理解で、プログラム能力、全く在りません。

HDDがすっ飛ぶのは非常に困惑します。

投稿日時 - 2012-12-29 21:58:20

ANo.1

高級言語と言えばC言語でしょう、後はインタープリタならBAISICですが、年数が年数ですから、入手できるのか、現在の物では当然動きません(MMXやSSE等の拡張命令は当時のPCにはありませんから)。PC98用と言うことになります。

投稿日時 - 2012-12-29 17:03:22

あなたにオススメの質問