はじめまして。
どこにも情報が無いのでご存知の方教えてください。
会社で使っている試験装置はPC-98のDISK-BASIC(DOSではない)で動いています。
データはすべてDISK-BASICでフォーマットしたフロッピーに入っています。
このデータを最終的にはPC/AT機で読みたいのです。
DOS上のN88BASICに変換ソフトがついていたと思うのですが、
これを使うしかないのでしょうか?
データはバイナリ形式で保存されているのですが、プログラムとデータを
上記ソフトで変換すればDOS上のN88BASICでそのまま使えるものなんでしょうか?
ご教授のほど、よろしくお願いします。
- re: やす さん
投稿日:1999年08月25日(水) 20時06分43秒
最初の質問に対して:DISK-BASIC上でプログラム及びデータをアスキーセーブをします。その上で
DOS上のN88BASICに付属の変換ソフト(名前は失念)で変換できます。ただし、
日本語部分は変換できません。
また、互換性はありますが完全互換ではありません。
2つ目の質問:WIN95以上で使用したい場合、DOSーBASIC 互換のソフトが
販売されています。(名前は失念、どなたかアドバイスを)
- re: さいた さん
投稿日:1999年08月25日(水) 20時13分14秒
その種の変換ソフトは、現在では入手できるか疑問です。
正規ユーザーなら、BASICに付属している変換ソフトを使うのが確実でしょう。
まず、BASIC上でバイナリー(正確にはPコードつまり中間言語)になっているプログラムをソースリストのテキストファイルにしてセーブします。Aセーブですね。
それから、BASICフォーマットのデススク上のファイルをDOSフォーマットのディスクに変換(転送)します。これはDOSのBASICに付属しているツールでOKです。
これで、DOS上のBASICでも、DOS上のエディターでも、使用できるようになります。
ただ、元のBASICのプログラムがPセーブ、つまりソースリストを隠して読めなくする形でセーブされている場合、変換ソフトでは変換できません。
昔は、それをうち破るツールがあったのですが、今では手にはいるか疑問です。
なお、BASICのプログラムは、DOS−BASICではそのままでは動かない場合が非常に多いです。
その辺は、DOS−BASICのマニュアルに書いてあるはずです。
それと、ハードウエアに依存する処理をしている場合は、当時と違うハードウエアでは動かないはずです。
同じ9801でも、たとえばBX以前とXa/Wでは、ハードウエアが非常に違いますから…
- re: かすが☆ さん
投稿日:1999年08月25日(水) 20時34分39秒
>昔は、それをうち破るツールがあったのですが、今では手にはいるか疑問です
もしもこれがない場合、マシン語(monモード)でPセーブのフラグを消して
あげればいいのですけど、最近のマシンはワームスタートがない(と、思う)
ので、お手上げかもしれませんね。
最近忘れてしまっているベーシックですが、
アスキーセーブは、
(c)save "test.bas" a
でしたっけ?懐かしいですねぇ。。。
- re: YU さん
投稿日:1999年08月25日(水) 21時51分17秒
Pセーブのフラグ解除は、DISK BASICのワークエリアを1個所書きかえるだけなので、POKE一発で可能です、ウォームスタートも必要ありません。
ところで、最初の質問は「データを移植したい」ということで、プログラムには触れていませんし、Pセーブかどうかも書かれていません。
ちゃんと必要なレスを返しましょう。
データをコンバートするフリーソフトは、あるかも知れませんが、ちょっと探してみた範囲では見つからなかったので、自分で作るか、DOS版BASICを買うしかないかも知れません。
N88-BASIC形式のフロッピーディスクは、フォーマットが公開されていますから、PC-98上で動作する変換ソフトを作るのは、それほど大変なことではありません。
また、DOS版のN88-BASICは現行商品ですから、注文すれば確実に入手することが可能です。変換ソフトを作るのが面倒なら、DOS版のBASICを買うしかないでしょう。
- re: やす さん
投稿日:1999年08月25日(水) 22時07分30秒
上のYUさんのご指摘があり、私の書き方が悪かったのかと思い、もう一度はしょらずに書きます。(ただうろ覚えな所があるのはご容赦)。
DOS-BASICはPC/ATでは動きませんが、単にデーターを読むだけだったらアスキーセーブ
でDISK-BASICソフト及びデータをコンバートは先ほど書いたように難しくありません。
しかしPC/AT機でソフトを含めて動かすには、WIN95または98で動かすことができる「BASIC98(?)」と言うソフトを買うしかありません。データを移すことができたなら、エクセルなどを使って、計算した方が楽な場合が多いと思います。
- re: bvv5 さん
投稿日:1999年08月25日(水) 22時21分45秒
Pセーブの解除方法です。
記憶は確かではないのですが
DISKBASIC(86)の方(98版)でしたら
DEF SEG=&H60
POKE &H6D7,0
でOKです。(DISKBASIC)
また、MS−DOS版BASICは
DEF SEG=SEGPTR(7)
POKE &H6D7,0
です。
変換をすると日本語が、正しく変換できません。
もとの、DISK版のプリントアウトをとっておいてそれを見ながら手で直すことになります。
ただ、みなさんが仰るとおり表計算ソフトなり、VBなりで組み直さないと使えないと思います。
- re: 63C09 さん
投稿日:1999年08月25日(水) 22時53分24秒
Pセーブのフラグは、 def seg と poke でリセットできます。
(たった今確認しました)
質問内容がわかり難いので、以下の問に Yes No で答えてください。
1.データは、ランダムファイルですか?シーケンシャルですか?
2.また、そのフォーマット(データの種類と並び) はわかりますか?
3.AT互換機で使いたいのは、データだけですか?プログラムもですか?
4.3が データだけなら、質問は終わりです
5.プログラムのリストはみれますか?
6.みれない場合は
A:立ち上げると、プログラムが実行してしまい、[STOP]キーが効かない
B: list [リターン] で、Illegal function call になる
のどちらですか?
(A、Bどちらでも解決方法はあります)
7.プログラム中に、 def seg poke peek call bload bsave in out がありますか?(WINDOWS では使えない命令 [何か忘れているような])
質問はここまでです
さて
2が 不明なら、データの再利用はできません。
また、7が YES なら、プログラムを作り替える必要があります。
(def seg=&h60 : poke &h43a ?? を除く)
ここは無事通過したものとします。
あとは、
必要なら、DISK BASIC上で、すべての BASIC プログラムを別のディスクにアスキーセーブをします。
(FILES で、 拡張子の前に、ピリオドのあるファイルが プログラムです)
データを、MS-DOS の fileconv を使ってデータを MS-DOS 形式に変換します。
(fileconv の使用方法は DOS のマニュアルを見てください)
プログラムも必要なら、一緒に変換しておきます。
これで、AT互換機で読めるようになりました。
プログラムは、F-BASIC V6 や、 BASIC98 を使えば、windows で動作できると思います。
EPSON の 98V はどうなんだろう?
- re: Ce2使い さん
投稿日:1999年08月25日(水) 22時59分58秒
ベクターに↓のようなソフトを見つけたのですが、お役に立つでしょうか?
http://www.vector.co.jp/soft/dos/prog/se008030.html?g
http://www.vector.co.jp/soft/dos/prog/se074519.html?g