こんばんは、アップロードしていたファイルですが、またバグ入りでした・・。
申し訳ありません、試してみてダメだった方には、大変ご迷惑おかけいたしました!。
以前から2度ほど試して(自分用に作成)みたこともありましたが、どちらもうまくいきませんでした・・。
ここでバグを見つけられれば良かったのですが?、一度は作成に成功していたので、ま〜いいか?と放置していました。
コメント欄でkuran_kuran様に、指摘されてもう一度試してみましたが、うまくいきませんでした。
今更ですが記事と見比べたところ、バグ(打ち込みミス)発見!・・、一度目に作成した後で作成キットをアップロードするときに、ファイルを間違えてアップしたようです。
作成キット自体は以前と同じフォルダにあります、ファイルは更新しましたので、試しに作ってみようという方は、もう一度試してください。
お詫びの意味で?、今回完成版のイメージもアップロードしました、シャープ様改変した物をアップロード配布してゴメンナサイ・・。
https://www.dropbox.com/sh/b53a9e9b015p9na/AAD06gi9wdDCES4Chd90raHca?dl=0
↑ ↑ ↑
こちらで作成キットはダウンロード出来ます。
同じ場所にこちらの方で作成したディスクイメージもダウンロード出来ます。
使い方ですが、ダウンロードしたディスクイメージをエミュレータのFD1に食わせた後、IPLリセットで起動するはずです。
起動画面も改変しましたので、確認してみてください?、起動出来ましたら、ファンクションキーF10を押します。
FAST RUNプログラムがロードされます、ここでファンクションキーF1を押すと、実行されてファンクションキーF1〜F3が定義されます、F1でCMTのモードになりセーブ・ロードは、テープが対象になります。
F2はドライブ選択です、押すごとに対象がFD1・FD2交互に切り替わります、ドライブ3・4には対応しません。
F3でDISK BASICでのDIRコマンドです、ですがあくまでもテープBASICですので、表示はシーケンシャルです。
お持ちのBASICプログラムをディスクにセーブしたい場合、F1でCMTモードにした後、LOADコマンドでテープからロードした後に
F2キーを押し対象のフロッピーディスクFD1・FD2を選びセーブコマンドでDISKにセーブできます。
F3 DISK BASICでの DIRコマンドですDISKにセーブされたファイルを表示します LOADコマンドを使うと選択されているFD1・FD2からロード出来ます、SAVEコマンドも同じく、選択されているFD1・FD2へセーブ出来ます。
DISKへのセーブはテープと違い基本的にベリファイの必要はありません!、ベリファイを行うと良くないことが起こるって説明されてました、確実性のためベリファイを行っていた、テープユーザーの方は注意してください。
BASICとマシン語ファイルで構成されたプログラムの場合、まずBASICプログラムをセーブ後すぐ後に続けてマシン語ファイルをセーブしておけば、BASICプログラム中でロードしている、マシン語ファイルを(ファイル名で指定)ロードして、実行されるはずです。
電波新聞社発売のパックマンはこの方法でDISK化出来ます、マシン語ファイルのロード・セーブはモニタのコマンドそのままでFD1・FD2の選択されたドライブにセーブできます。(電波新聞社発売のパックマンってカラー TAPE BASIC 1Z002 対象だったっけ?)
ここが本物のMZ-2Z001(DISK BASIC)との違いです、ですがMZ-2Z001のように一旦カセットにセーブする必要が無いので弱点にはならないかも?。
ファイルタイプ BTX・OBJの後についている*はライトプロテクトのマークです、重要なシステムファイルなので、プロテクトしておきました(システムのBASICとFAST RUNファイル)
マシン語のファイルを扱うために、MONコマンドでモニタモードに入った場合、BASICへの復帰にはJコマンドから$12A2を実行してください、こうするとファンクションキーの設定がクリアされません!。($12A0でBASICに戻るとクリアされます!)
また解らない所があれば、コメント欄に書き込んでもらえれば、お答えできると思います。
試したけれど出来なかった方には、ご迷惑をおかけしました。
疑問点が有ればコメント欄に質問をよろしくお願いします。
MZ-2200のモニタプログラムはディスクBASIC(MZ-2Z001)であっても
テープにしか対応してないので使いづらかったのですが
これからはモニタでディスクにセーブできるので凄く便利になりました。
そうですよね!、S-BASIC(MZ-001・MZ-002)にSAVEMコマンドが有れば良かったんですけどね・・、ただDISKアクセス部分がメモリを食っているので、フリーエリアが減ったのは、少しザンネン・・。
10Keyの部分は過去記事のコメント欄に作者様のコメントがありますので、参考にするとヒントになると思います。
DISK化の記事をよく読んでいると、パッチを当てているのは、モニタ部分のようです、試しに同じやり方でMZ-1Z002もDISK化出来ました・・(笑)当時のコメントでそう書かれていたと、思いましたが試してませんでした。
MZ-1Z003は残念ながら失敗でした。
MZ-1Z003ではUSR($F2800)でファイル一覧は出るのですがSAVE, LOADできませんでした。
10Keyとディスクアクセス部はどちらも逆アセンブルして解析中なのですが
ディスクアクセス部がちゃんと元の初期化アドレスを呼ぶようになってて
そこからランチャ初期化も呼んでるように見えるんですよ。
それだけみると動きそうなもんなんですけどね。謎です。
残念w
とりあえずMZ-1Z002のDISK化成功おめでとうございます!。
MZ-1Z003ですが倍精度BASICですね、SAVE・LOADする場合にBASICからモニタコールしているアドレスが同じなら、1Z001・1Z002のように動作するはずですので、BASIC側が変わったのかな?、画像で見ただけだけど、モニタは1Z001Mの様だし・・?、パスカルのモニタはF-DOSと同じ2Z-004Aだったと思うのでコールアドレスをパッチで対応してるのだと?思っています、SuperColorBASICはシャープ作でもありませんので??です。
10Keyを搭載したMZ-1Z001をDISK化した場合に
なぜか MT、 D1、 D2という風に1文字表示されなくなっていました。
今までの経験上こういう事が起きると内部では壊れていた事が多かったので
動かないといっていました。
実際EmuZ-2200のデバッガで追ってみた所
キーボードを押した処理にランチャを入れているので
文字入力されたことになって(?)00Hのキャラクタが画面に表示されてしまい
1文字消えていただけでした。
なのでCMTやFDなどの表示は消えますがDISKの機能は問題なく動いていました。
ちょっと見栄えが悪いですが、仕方ないかなーと思います。
時間があったら中を見てちゃんと動くようにしたいなぁ…
という事でなんとか10Keyランチャー付きDISK対応版が動作しました。
手順は
(1)バイナリエディタで「10key launch Set Up.mzt」の014CH〜のJunpTableを書き換える。
私は以下のように書き換えました
; [9][8][00][.][+][-][0][1]
; DW 0C7CH, 4CC4H, 4CC4H, 4CC4H, 4CC4H, 4CC4H, 4CC4H, 0F529H
014C 7C 0C C4 4C
0150 C4 4C C4 4C
0154 C4 4C C4 4C
0158 C4 4C 29 F5
; [2][3][4][5][6][7]
; DW 0F4D5H, 0F280H, 0CEEH, 4CC4H, 4CC4H, 4CC4H
015C D5 F4 80 F2
0160 EE 0C C4 4C
0164 C4 4C C4 4C
これで以下のようになります
SHIFT+4: 40桁
SHIFT+8: 80桁
SHIFT+1: CMT切り替え
SHIFT+2: FD切り替え
SHIFT+3: ディレクトリ表示
(2)(1)で書き換えた10key launch Set Up.mztを使ってMZ-1Z001を10Key対応にする。
(3)(2)で作った10Key対応版MZ-1Z001をDISK対応版に書き換える
一応10Key版が動作したようで、おめでとうございます!。
起動後F10・F1を押すことなく、ドライブ切り替え・DIR表示ができるのは、とても便利ですね!。
使うのは自分なので、多少は無視でもいいかな?と思います。
先頭の1文字が表示されないってことですので、表示文字数を1文字分多く仕込んでおくってのは?、無理かな??適当に書いているんですけど・・。
これでディスクも対応できればすごくいい感じになるかも?
まだ、出来たような気がする程度なので気長にお待ちくださいませw
1文字多く仕込むのは私も考えました。
しかし文字を出しているのは今解析中の10Keyではなくて
Disk対応プログラムの方なんですよね…。
ありゃ・・、そうだったんですね!、私はファンクションキーの1〜3が使えなくてもいいし?、元々はF1=RUN・F2=覚えていない・F3=CONSOLEとかだったと思うので?、使えなくていいや!と割り切っていて、解析もやっていなかったりします、実機時代に使っていたものは、起動するだけで、F1〜F3にコマンドが対応してて、起動後にF10・F1を押さなくても使えたような気がします、10Key作者のMicky Newさんがコメント欄観てたら、助言があるかも知れません?、Youtbeにも動画上がってたと思うので、連絡できるようなら?質問してみるのもいいかも??。
EmuZ-2200で直接メモリを書き換えて"CMT"を" CMT", "FD"を" FD"という風にスペースを入れて書き換えこれを読んでいる番地を書き換えると動作しました。
所がDISK化 テープBASIC作成キットの1Z001 DISC GEN.wavを書き換えるとうまくいかないという状態です。いゃあ、難しいですねw
正直ファンクションキーでも良いのですがせっかくだから色々確認中です。
Micky NewさんをYoutubeで検索してみましたが見つかりませんでした…。
すぐに動かないと不都合ってわけでもありませんし気長にやってみますね。
あと、このページのダウンロードリンク見れないかもしれません。
何回か押してみたけどエラーなってしまいます。
ダウンロードリンク修正してみました!、どんな具合でしょうか?、気長に試していれば、いつか解決策が思いついたりします。
以前の記事でのコメントを当たってゆくのも、いいかも知れません?。
夜遅く対応ありがとうございました。
過去コメントも確認してみますね。
>
https://www.youtube.com/watch?v=kAEfUQfb1p0 こちらでMikey New さんアップの動画が見れました、Youtubeのコメ欄にコメントは書き込めると思います、が本人がYoutubeのコメント欄確認していないと、気付かないかも?。
CMTやFD1/2、ファイル一覧時のVOLの文字の前にスペースを入れました。
これでランチャで操作できるようになって良い感じです。
*L
FILE NAME:
LOADING 1Z001 DISC GEN
*M
M-ADR.$F34A
F34A 56 20
F34B 4F 56
F34C 4C 4F
F34D 2E 4C
F34E 20 [Break]
*M
M-ADR.$F566
F566 72 73
F567 F5 [Break]
*M
M-ADR.$F56F
F56F 46 20
F570 44 46
F571 0D 44
F572 43 0D
F573 4D 20
F574 54 43
F575 0D 4D
F576 CD 54
F577 29 0D
F578 F5 CD
F579 00 29
F57A 00 F5
F57B 00 [Break]
ここでCMTにBASIC、FD1に書き込むフロッピィディスクをセット
*J
J-ADR.$EF00
>
おめでとうございます!、自力でなんとか出来ちゃうと、凄く気分がいいんですよね!、その瞬間のためにハマっちゃうんです。
MZ−1Z001_DISK・MZ−1Z002_DISK ライフを楽しんでくださいませ!。
ついでにリンクもしておきました。
またMZ-2000について面白いことがあったら教えてください!
よろしくお願いします〜
おはようございます、ホームページ観て驚きました・・、MZ-2000エミュレータを使い始めたころ、よく参照させて頂いてたページじゃないですか!。
恐れ多いことです?、倍精度BASICとか並のマニアだと知りえない?、話もあったので、へ〜!っと思っていましたが・・。
実機のころ1枚のFDから5種類のテープBASICを起動出来るもの(本体はシャープ純正のDIISK BASICだったと思います)が回って来てたので、倍精度BASICを知ってはいましたが・・。
MZ-2000系だと、モニタ作業用のDISK MONITORなんかも、便利ですね。
キャリーラボ社の統合ツールのC-DOSとかも遊んでみるには、面白そうです、こちらもMikey New さんが復活してくれたんですけどね。
そうそう、DISK化テープBASICはファイル名の頭に#を付けてセーブするとプロテクト属性付加、もう一度同じ操作でプロテクト属性解除、&をつけてセーブすることで、ファイル削除できます。
弱小当ブログページですが、こちらこそ今後もよろしくお願いいたします。