2017.3.18
前へ
次へ
ホームページトップへ戻る

マイコン独立大作戦
CRT/VGAIF+KEYIF+SDCARDIFボードの製作

〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
WindowsパソコンにUSB接続して使う現行方式はそれなりに便利ではありますが、ときとしてWindows
のしがらみから開放されて、小さいながらも独立した一個のパソコンとして機能したいと思うこともあります。
昔はそれが普通のことだったのですが、安価なCRTディスプレイが生産中止となって久しい今日ではそれ
は叶わぬことと諦めていたのですが…。
〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜

[総合第30回]


●16ビットアプリケーションが動きません

ND80Z3.5をご購入いただいたお客様から、「ND80Z3.5付属ソフト(16ビットアプリケーション)がWindows10(64ビット)で動きません。なんとか動かせる方法はありませんか」というメールをいただきました。

ですので今回は予定を変更して、その問題について書くことにいたします。

この問題は私も何年か前にWindows7(64ビット)で体験しました。
そのときにたまたま教えていただいた方法でクリアできましたので、その当時にホームページで紹介いたしました。
こちらの記事です。
「パソコンを作ろう」[第16回]

そういえばあれからもう何年も経ってしまいました。
その記事のことをND80Z3.5の付属説明書で追記したはずと思って確認したのですが、どうも書き漏らしてそのままになっていたようです。
記事にして紹介してから何年も経ってしまっておりますし、たまたまこうしてお問い合わせもいただいてしまいましたので、私自身がもう一度実際にやってみて、その手順にしたがって説明をすることにいたします。
お問い合わせをいただいたのはWindows10(64ビット)についてですが、私のところで稼動しているWindows7は全てそれぞれの役割があって動いておりますので、残念ながら無償期間中のWindows10へのアップグレードはしないまま過ぎてしまいました。
Windows10についてはちょっと何だかなあという印象ですのでいまだにWindows10はさわっておりません。
ま、だんだんとWindows10を使ってみえるお客様も増えてくることも予想されますので、そのうちWindows10マシンも入手してテストをしてみなければ、とは思っております。
そんなわけで今回再確認しましたのもWindows7(64ビット)ですから、Windows10とはちょっと環境が異なるかもしれません。
もしWindows10でうまく動かないなどのことがありましたら、何とか解決策を考えてみますので、その場合にはメールでお問い合わせください。

以前に上記の記事で紹介させていただいたのは「MSDOS.EXE」という超優れもののアプリケーションです。
昔の8086用のプログラムのように拡張子COMで示される16ビットアプリケーションはWindowsの64ビット版では実行させることができません。
当時にいろいろ調べてみましたらIntel様もMicrosoft様も、「64ビットCPUではそんなものは実行できないつくりになっておるのじゃ」とのたもうていらっしゃるようでしたので、もうそういうことならしゃあないか、と半ば諦めていたのでありましたが。

なんと私の記事をお読みになられたその「MSDOS.EXE」の作者様からメールをいただいて「私のソフトを使ってみてください」とご親切に教えていただきました。
で、さっそくそのことをホームページで紹介させていただきました。
そのあたりの経緯につきましては上記の記事の前後に書いております。
とにかくさっそくダウンロードさせていただいて、試してみての感想は「凄い!」の一言につきました。
なんでもこの方は本業のかたわら、趣味でこういうものをずっと作っていらっしゃるのだそうですね。
世の中には凄い方がいらっしゃるものとつくづく感心いたしました。

あらためて当時の記事で紹介させていただいたホームページを訪問しましたら、お引越しをされたみたいで新しいアドレスになっておりました。
こちらがお引越し先です。
http://takeda-toshiya.my.coocan.jp/

トップページの MS−DOS Player for Win32−x64 のリンクをクリックすると下のページに行きます。



今はMS−DOS Playerという名前で紹介されているようですが、アプリケーション名は以前と同じMSDOS.EXEです。
Binaries and Source Codesのリンクをクリックします。



「msdos.zipを開く」が表示されますから、「プログラムで開く」でもよいのですが、私はこういう場合はたいてい「ファイルを保存する」を選びます。
まあ、好みの問題です。

デフォルトでは「ダウンロード」に保存されます。
ですのでそのあと「ダウンロード」を開きます。

msdosフォルダができています。

msdosフォルダを開きます。


binaryフォルダを開きます。



ND80Z3.5(ND80ZV、MYCPU80、ND8080も同じ)に付属の16ビットアプリケーション(拡張子COMのプログラム)は自作の8086アセンブラで書いたものばかりですから、一番上のi86_x64を選択します(ほかのものでも多分よいと思います)。

i86_x64フォルダを開くとmsdosが見えます。

しかしこれは解凍前の圧縮ファイルのようです。

msdosをクリックすると下の表示が出ます。


Windows7はこの状態から展開まで自動でやってくれますが、Windowsのバージョンによっては解凍ツールが必要かもしれません。

「すべて展開」をクリックすると、展開先を聞かれます。



面倒なので表示されている通りのまま「展開」をクリックします。

展開作業が開始されました。


うーん。
今までと同じダウンロード>MSDOSフォルダが開きましたが…。



msdosフォルダを開いて、msdos.exeのあるところまでいって、msdosをクリックしますと、今度は展開済みなので下のように表示されました。



これでMSDOS.EXEが実行できることが確認できました。
ここでは一旦「キャンセル」をクリックします。
MSDOS.EXEはMSDOSプロンプト(DOS窓)で実行しますから、16ビットアプリケーション(ZASM.COM、ZDAS.COM、ASM80.COMなど)の置いてあるフォルダにMSDOS.EXEをコピーして、そこで実行します。
たいていはND80Z3などの名前のフォルダにしていただいているはずです。

msdosを右クリックして、開くメニューの「コピー」を選択します。


今回テストに使ったWindows7(64ビット)マシンは別の業務用なのでND80Z3フォルダはありません。
MSDOSプロンプトで開くフォルダとしてここでは「ZBK」というフォルダにmsdos.exeをコピーしました。


これで準備完了です。
さっそく試してみましょう。
MSDOSプロンプトを開いてZBKディレクトリに行きます。

ここでまずは通常の操作として、ZASMを実行してみます。
すると。

16ビットアプリケーションは実行できません、と表示されてしまいます。
「OK」をクリックしますと。
同じことがDOSプロンプトに表示されます。


そこで、マジックです。
上と同じことを、前にmsdosをつけてもう一度入力してみますと。

なんと。
今度は実行できてしまいました。
まるできつねにつままれたような気持ちです。

上では比較のために、先にmsdosをつけないでZASMを実行してみましたが、いつもそのようにする必要はありません(そのようにするのは無駄作業です)。
msdos zasm xxx.txt
msdos zdas xxx.bin
というように本来のコマンドの前にただmsdosだけをつけた形で使います。

msdos zasm xxx.txtと入力した結果、上のように表示されたらZASMが正常に実行されていますが、念のためにエクスプローラでZBKフォルダを開いてみました。

msdosをコピーした直後にはなかった、
ND3MON2O.BIN
ND3MON2O.BTK
ND3MON2O.LST
ができていることがわかります。

あらためてもう一度書きますが、MSDOS.EXEはもうそれこそ勲章ものの超優れもののアプリケーションです。
16ビットアプリをたしなむ者を勝手に代表しまして、MSDOS.EXEの作者様に心から感謝申し上げます。

CRT/VGAIF+KEYIF+SDCARDIFボードの製作[総合第30回]
2017.3.18upload

前へ
次へ
ホームページトップへ戻る