HD63C09RPでは不安定システムで残念モード・・・

Last Updated on 2012年4月6日 by kabekin

aoyさんから教えていただいたネイティブモードに入れるマシン語で来夢来人に装着したHD63C09RPをネイティブモードに入れてみました。
ghs4gj room
S1のモニタモードは使ったことがなかったので、手探りでコマンドを調べてみる。
何らかの応答があったのがQ,E,R,D,G,X,B
色々操作してみるとEで編集でき、Dで確認できるようです。(手さぐりなので間違ってるかもしれませんが・・・)ghs4gj room
マシン語を入力し、FDに保存
実行してみたところ、確かにビープ音の音が高くなっていました。
試しに加算と乗算と表示を繰り返すソフトを作って実行時間を測ってみるとエミュレーションモードでは18.5秒かかっていたものが、ネイティブモードで16.2秒と約12パーセントの高速化。ghs4gj room
ネイティブモードに入れてメモリ上のプログラムを実行させるのは特に問題なさそう。
これはイイ!! と思っていたところ、プログラムをセーブしようとするとハングアップ・・・・
aoyさんの予想通り、09Eではない為、FDDやCMTのアクセスを伴う処理は不安定でガタガタです。
FDのロードやセーブは殆ど失敗し、CMTは勝手に巻き戻しに入ったり、早送りしたりNGです。
画面もおかしくなりハングアップもしばしば。ghs4gj room
しばらく使ってみた感じではメモリ上にロードしたプログラムの実行は特に問題なく動作しているようです。
エミュレーションモードでロードしネイティブに入れれば次回ロードするまでは正常に動作するようなので、メモリに入りきる外部にアクセスしないプログラムは使えるかもしれません。
まぁシステムとしてはこれでは不安定で使えないので09Eを入手するしかなさそうです。
この手の確認はワクワク感が半端ないです!! aoyさんありがとうございました (*^_^*)
追記
09RPでも動作するようになりました
詳しくはこちら → http://ameblo.jp/ghs4gj/entry-11176797389.html
S1の情報は入手困難ですね。
アマゾンや楽天で定期的に探すと時々入手可能のようです。(最近何冊か購入できました)
>>>日立 S1の本をアマゾンで探す
>>>日立 S1の本を楽天で探す

7件のコメント

  1. おそらくRPと言う名称だから内部クロックで動いていて、システム全体を外部クロックで同期させているS1には合わないのでは?と素人ながらも予想していたのですが、やはりI/O関係でつまづいてしまうのですね。
    何とも残念としか言いようがありません。
    今日、アキバのパーツ店を何軒か探して回りましたが、ほとんどの店には9ビットCPUは扱ってなくて、最後の店に63C09RPがありました。
    「EPは無いの?」と聞くと「そんな石は売れないからとっくに扱うのを止めた」とのことでした。
    オークションに出てくるのを待つしか無いみたいです。

  2. >aoyさん
    ネイティブモードに入ることが確認できただけでも収穫がありました(*^_^*)
    RPではダメだったよ的な実験結果も誰かのお役にたつかもしれませんし・・・
    80年代はIC変えてFDDを別の機種に接続したり人柱的な実験が楽しかったので、その頃を思い出しました。
    EPは海外にはそれなりに在庫があるようなので、数ロット単位で購入可能か海外の問屋さんに問い合わせてみます。

  3. お教えしたダンプリストは自分の2D版ディスクBASIC上にセーブされたダンプリストを書き写したものだったのですが、ちゃんとしたリストを発見しました。
    2HD版なのですが、一部書き換えで2D版にも対応するとのことです。
    もしかしたらそちらの方が暴走しないプログラムなのかもしれません。

  4. 手探りでMONコマンドを打ち込んでいるようですね。
    S1のBASICマニュアルはお持ちじゃないのでしょうか。
    お役に立てればとMONのサブコマンドをリストアップします。
    B,BL ブレークポイントを表示し設定を行います
    BP ブレークポイントを表示します
    D メモリの内容を表示します
    DL Dサブコマンドで表示する行数を設定します
    E スクリーンエディタによりメモリ内容を表示し変更を行います
    F メモリを一定のデータパターンで埋めます
    G 機械語プログラムを実行します
    H 16進数の和および差を表示します
    HC ハードコピーモードを設定します
    M,ML メモリ内容を表示し変更を行います
    MAP,MAPL 現在のメモリ空間番号または指定されたメモリ空間のマップイメージを表示し変更を行います
    MAPP 現在のメモリ空間番号または指定されたメモリ空間のマップイメージを表示します
    Q モニタモードを終了します
    R,RL レジスタの内容を表示し変更を行います
    RP レジスタの内容を表示します
    S メモリ中から一定のデータパターンを検索します
    T メモリ内容を他の番地に転送します
    TS テキスト画面の退避 回復モードを設定します
    X,XL 現在のメモリ空間のマップイメージを表示し変更を行います
    XP 現在のメモリ空間のマップイメージを表示します
    Eサブコマンドでエディットする場合のキー操作
    CTRL+A 編集モード(16進/文字)を変更します
    CTRL+B 現在表示されているメモリの256バイト前のメモリ内容を表示します
    CTRL+F 現在表示されているメモリの256バイト後のメモリ内容を表示します
    CTRL+G カーソル位置の番地にブレークポイントを設定します ブレークポイントはブレークポイント番号=5、機能=「停止」「レジスタ表示」指定、回数=0となります

  5. >aoyさん
    MONコマンドのリストありがとうございます(*^_^*)
    マシン語を扱う際の参考にしたいと思います。
    DISKBASICのマニュアルはあるのですがS1BASICのマニュアルは持っていません(^^;;;
    当時はF-BASICのマニュアルとL3の参考書をS1に置き換えてプログラムを作っていたように思います。
    F-BASICと似ていたので助かりました(*^_^*)

  6. >aoyさん
    追加情報ありがとうございます(*^_^*)
    A2E7に変更することで、正常に動作するようになりました。
    S1-DEMOで繰り返しLOADさせていますが、今のところ問題ないようです。
    RPなので、もう少し様子をみてみます。

  7. 最初の情報が自分の2Dフロッピーに記録されていたバイナリデータを書き写したものといういい加減な情報だったためにご迷惑をおかけしてしまったようで、申し訳なかったです。追加の情報は、S1クラブで6309換装ブームが起きた時にメンバーの一人がネイティブモードにする方法をBBSで説明した時のログを印刷して保存しておいたのを発見したので掲載しました。
    そちらで試されたとのことで、成功してよかったです。

aoy へ返信する コメントをキャンセル

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください