2021年2月28日日曜日

MUTIF09にAM9511を載せてみる

難しそうで躊躇っていたAm9511ですが、【ryu10さんのBlog】に勇気づけられ、チャレンジすることにした、そのあれこれです。



1.PCの環境と条件
  ★PC:
 win10に次のコマンドをインストール:
  msdos.exe  MS-DOS Player
  X6809.exe  Arcpitのクロス・アセンブラ
  Xgpro v10.75 Universal Programmer TL866 II PLUSの書き込みソフト
TL866 II PLUS

以下の2〜4章は 【2019年3月1日のBlog】の再掲です。


2.MUTIF09の製作

2-1. オリジナルのままの場合
「MUTIF09の 6809シングルコンピュータ 技術メモ 改訂増補第3版」の内容に従って製作した。


3. PROMに書き込む

 (1)  EPROMの場合
  ★EEPROM(32KB)
 ・CATALYST CAT28C256P-20
 ・ATMEL AT28C256 15PI
 【MUTIF09のファイルの置き棚】にある「SplusBASICV3.HEX」をEPROMの書き込む。


4. MONITORを起動する
 焼き込んだEPROMを挿入してPOWER ONで起動する。
 「U」コマンドでBASICがCOLD STARTする。
RESET 後など、BASICをHOT STARTするにはコントロールPでPC(プログラムカウンタ)をC046に設定して、G を入力する。

5.AM9511基板の製作 

  • MUTIF09基板に接続するJ1にはリードフレームを半田付けし、高さを合わせるために丸ピン24Pソケットを挿入した。
  • 今回も例によって、半田付け漏れ、不良が多かったのは当Blogの鏝しらべ不足が原因


リードフレームに丸ピンソケットを挿入

  • 緑基板
    • 裏面の赤いジャンパー線はClock Selection JP1のピン3とU4C(74HCT00)のピン10の導通が無かったので追加したもの。半田不良かパターン切れのどちらか
    • クロックは1.8432MHz
  • 黄色基板
    • 正常に導通があったのでジャンパー無し
    • クロックは2.000MHz
  • MUTIF09に実装
    • 上の基板はASSIST9+BASIC
    • 下の基板はS-BUG 1.8+BASIC
6809のMRDYへの接続は差し込み式


6.プログラムの実行

  • ASCIIART
    • ryu10さんのasciiart-apu_b1.basを走らせてみた。
    • 内部クロックではおかしな振る舞いだが、外部であれば全く問題なし
      • CPU 発振器8Mhz
        • Am9511クロック 3.57MHzで 1分44秒
        • Am9511クロック 2MHzで      1分50秒
        • Am9511クロック 1MHzで      2分00秒
      • 実行時間にあまり差がないのが不思議
    • なお、電源はUSB供給でなく専用5Vアダプターで10時間以上正常に動作。当Blogの動作環境ではMUTIF09は電源(電圧とインピーダンス)にクリティカル
    • BASIC 行番号 「240 GOTO 10」にして、無限ループで確認
    • Am9511のIC表面温度は53.8℃、冷却無しで確認

  • 基板2枚とも、Am9511基板を入れ替えて同様に動作確認




以上

2020年5月31日日曜日

SBC6809に興味がある方の参考になれば twitterは @Leo_yumesichi

SBC6809の遊々作法

       SBC6809って何?

            答えは【電脳伝説さんのホームページ】

  1. まず、作ってみる
  2. Assist09を使ってみる
  3. Microsoftの小数点BASIC9でASCIIART
  4. SWTPCのSBUGを使ってみる


2019年4月30日火曜日

SBC6809+IOのASSIST09にOMEN MicroのKILO Monitorを同居させる

当Blogで報告したSBC6809+IOのASSIST09にOMEN MicroさんのKILO Monitorを加えてみた。

🔀アークピットのアセンブラX6809.exeの作法に従ってKILO Monitor v2ソースを変更した🔀

swフォルダ(Monitor V2 )内の mon2.a09

O_assist09v7_SBC.zip(O_assist09v7.asm, O_assist09v7.HEX, O_assist09v7.LST)

ACIA clock:1.8432MHz, Baud Rate:115.2KHz


1. PCの環境と条件
 ★PC:
 win10に次のコマンドをインストール:
  msdos.exe  MS-DOS Player
  X6809.exe  Arcpitのクロス・アセンブラ
  Xgpro v8.30 Universal Programmer TL866 II PLUSの書き込みソフト


TL866 II PLUS
  Tera Term  ターミナルソフトTera Term
   ・ TeraTerm Setup
    - Terminal
     New line Receive  : CR
    - Serial port
      Transmit delay :0msec/char 50ms/line

 ★SBCシリーズの製作:
  SBC6809 (スイッチサイエンス)
  SBC6809 Adapter Rev.02 (ORANGE pico)
  SBC-IO Rev.02  (ORANGE pico)
  SBC-BUS Rev.02 (ORANGE pico)

  参照記事:
  「電脳伝説さん」の【ホームページ】
  「レトロな雰囲気さん」の【SBC6800/SBC6809ルーズキットを動かす】
  「kuni-netさん」の【CPUボード(SBC6800)で電大版TinyBASICを動かす】

   当Blog の製作記事【SBC6809+Apaterをつくる】

2. オリジナルのASSIST09
 参照記事:
  MOTOROLA「MC6809-MC6809E Microprocessor Programming Manual」
    海外サイトの【http://www.classiccmp.org/dunfield/r/6809prog.pdf】
 その他に参照した記事
    Old68funさんの【6809/6800とFLEX】


3. mon2.a09ソースの手入れ
 ・Arcpitのアセンブラの作法に合わせて、修正
   DS -> RMB
   DB -> FCB
   .CSTR -> 最後に$00を追加
 ・O_assist09v7.LSTの 「<--」の表示がある行
 ・?、H、Sコマンドの追加
 ・ACIA のリセット
 ・BUGと思しきリスト





















4. 修正したソースはO_assist09v7.asm
5. 起動
 POWER ON でASSIST09が起動する。
 コマンド 「U」でKILO Monitor v2に移行する。
 コマンド 「U」でリストが表示され、「A」を選択するとASSIST09に戻る。
 Motorola S format ファイルの読み込みはKILO Monitor の方が早い。
  Transmit delay :0msec でOK






SBC6809(32KB) +Adapter         SBC-IO(16KB)

以上















2019年4月28日日曜日

OMEN MicroのKILO Monitor v2 をMUTIF09に移す

MUTIF09にOMEN MicroさんのKILO Monitorv2を走らせた。
合わせてNVRAMの相性問題を解消した。

OMEN Microさん、Githubのリンク先
  swフォルダ(Monitor V2 )内の mon2.a09


【omen_monV3ファイルの置き棚
M_omen_monV3.zip(omen_monV3.asm,omen_monV3.HEX,omen_monV3.LST)

1. PCの環境と条件
 当Blog 3月1日の記事と同じ

2. MUTIF09の製作
 当Blog 3月1日の記事と同じ
 ・NVRAM, DS1230Y-100+ が使用できなかった(TWITTER)が、次の改修で改善した。
 ・C6の+5V側とR2の+5V側を写真のように接続。即ち、引き回されていた+5Vラインを短縮することで、CPU, NVRAMに供給する電源電圧低下を少なくした。
 ・このための基板パターンの修正は無し

   ★TWITTERへのリンク

3. mon2.a09ソースの手入れ
 ・Arcpitのアセンブラの作法に合わせて、修正
   DS -> RMB
   DB -> FCB
   .CSTR -> 最後に$00を追加
 ・omen_monV3.LSTの 「<--」の表示がある行
 ・?、H、Sコマンドの追加
 ・ACIA のリセット
 ・バグの修正
4. 修正したソースはomen_monV3.asm
 【omen_monV3ファイルの置き棚
5. BASICのテスト
 monior コマンド 「U」でリストが表示され、「B」を選択するとBASICに移行

以上

2019年3月14日木曜日

MUTIF09のASSIST09にTRACE機能を加える

MUTIF09のPTM、NEC D8254Cのタイマーを使ってTRACE機能を実現した。


M_assist09v5.zip(M_assist09.asm,M_assist09v5.HEX,M_assist09v5.LST)
AplusBASICv5.HEX

1. PCの環境と条件
 当Blog 3月1日の記事と同じ

2. MUTIF09の製作
 ・D8254を装着
 ・D8254のOUT 0(pin 10)とMC68B09のNMI(pin2)を写真のように接続
 ・このための基板パターンの修正は無し
   ★TWITTERへのリンク

3. ASSIST09ソースの手入れ
 ・3月1日の記事のM_assist09v3.asmをD8254用に書き換え、NOPを挿入してアドレスを調整
 ・D8254のタイマー時間、「14サイクル=7μS」はCUT&TRYで設定したもので最適かどうかは不明だが、下記の写真のように1ステップ毎の実行も動作している。
 ・因みに
  - 13サイクル以下ではステップが進まず、プログラムカウンタは変化しない。
  - オリジナルのMC6840では7サイクルとなっている。
 ・ファイルのversionをM_assist09v5とした。


STROBEモードに初期化

タイマーを14サイクル(7μS)に設定
 修正したASSIST09のソース(M_assist09v5.zip)とBASICを含んだHEXファイル(AplusBASICv5.HEX -> $C000 - $FFFF)を置き棚においた。


4. BASICの動作確認
 AplusBASICv5.HEXをEEPROMに焼いて基板に装着し、VINTAGE-BASIC.netのBOUNCE.BASを走らせた。
 ASSIST09から
  >G C046↲
        でBASIC起動
 「BOUNCE.BAS」をDRAG&DROP後、写真の数値を入力


以上

2019年3月1日金曜日

SBC6809のソフトをMUFIF09に移す

MONITORとBASICをMUTIF09 シングルボードコンピュータで走らせてみた。



 MUTIF09 を作ってみた。最初に製作した時にはRAM領域を増やすためにNVRAMを試用し、基板にいくつかの修正を加えてMONITORとBASICを走らせることができた。さらに設計書通りに製作したものでも動作確認を行った。

1.PCの環境と条件
 ★PC:
 win10に次のコマンドをインストール:
  msdos.exe  MS-DOS Player
  X6809.exe  Arcpitのクロス・アセンブラ
  Xgpro v8.30 Universal Programmer TL866 II PLUSの書き込みソフト
   (v8.30から純正書き込み装置以外では動作しない仕様になった)


TL866 II PLUS

2.MUTIF09の製作

2-1. オリジナルのままの場合
「MUTIF09の 6809シングルコンピュータ 技術メモ 改訂増補第3版」の内容に従って製作した。但し、8.0MHzクリスタルオシレータが入手できなかったので、次のように修正を加え内部発振回路を利用した。

注:オリジナルのまま製作した時には、当Blogの3、4章を飛ばして「MUTIF09に移したファイルの置き棚」にある
 SplusBASICV3.HEXをEPROMに焼けば、S-BUGとBASICが起動できます。
  ・Xgproの「File Load Options」「From File Start Addr(Hex) 」-> 「C000」
                 「TO Buffer Start Addr(HEX)」-> 「4000」
   に設定して焼く。
MC6809データシートから引用

★ 基板パターンの修正
・ 表/裏面 MC6809 pin 39 をGNDから外す。


・ クリスタルとその両端にコンデンサ(18pF)を取り付ける。
・ クリスタルの一方とMC6809 pin 39 をつなぐ。
RESET SW両端の10μFはNVRAM対策用

・ 現時点では写真以外の部品は取り付けていない。


気分でつけるパスコンも装備


2-1.当Blogでの改修
「MUTIF09の 6809シングルコンピュータ 技術メモ 改訂増補第3版」の内容に従って製作したが、相違点は次の通り。
 NVRAMをEPROMの代わりにするために、Vccラインの引き回し変更やEPROMへのWR信号追加など、基板パターンの修正はやや面倒なのでここでは略すこととします。

・ 部品の変更 
 U11 27128   ->  NVRAM DS1230Y
 U10 62256   ->  NVRAM DS1230Y
 U1   クリスタルオシレータ8.0Mz  ->  クリスタル 8.0MHz, 12pF 2個
 当Blogでは、NVRAMを初めて扱うが、採用した理由は
  - RAM,ROMで共用できること。
  - 従って、GALを書き換えればRAM領域が拡張できること
  - access timeが100nSであること
  - TL866 II PLUSでデータが書き込めること
  - 海外から購入すれば、それなりの価格で入手できたこと
からである
 POWER ON時には、NVRAMはVccを監視してアクティブになる。従って、CPUが先にアクティブにならないようにCPUのRESETボタンの両端に10μFのコンデンサを追加して対処した。
DS1230Yデータシートより引用
DCジャックとLEDを取り付け

IC実装

3. S-BUGソースの手入れ

 (1) ACIAアドレスを$B000に


 (2)BASIC起動時にCOLD STARTになるようにBASICのFLAGをクリア


 (3) BASICを起動するために「U」コマンドの開始番地を設定


★ BASIC
 (4) ACIAアドレスを$B000に

 (5) メモリアドレスを$C000に
★ アセンブルする
 (6) S-BUG
  win10の コマンドプロンプトで次のように入力する。
 >msdos X6809 /H  M_SBUGV3.asm  M_SBUGV3.HEX  M_SBUGV3.LST
 参照記事(Arcpitクロスアセンブラの使い方など)
  「Old MC6800さん」の【MIKBUGプチ拡張】
  「DAIさん」の【適当にためしながら学ぶ電子工作お勉強室
 (7)  BASIC
  同様に、
 >msdos X6809 /H  M_BASIC9$C0.asm  M_BASIC9$C0.HEX  M_BASIC9$C0.LST

4. PROM、NVRAMに書き込む

 (1)  EPROMの場合
  ★EEPROM(32KB)
 ・CATALYST CAT28C256P-20
 ・ATMEL AT28C256 15PI

 
  BASIC -> S-BUGの順に読み込む



S-BUGを読み込む時にはDisableにする




 (2) NVRAMの場合
   ★NVRAM(32KB)
 ・DS1230y-100+
   Select IC を変更すれば、あとはEPROMと同じ手順

5. MONITORを起動する
 焼き込んだPROMまたはNVRAMを挿入してPOWER ONで起動する。
 「U」コマンドでBASICがCOLD STARTする。
 注:当Blogの所有するNVRAMは難なく起動したが、EPROMは起動するCHIPとそうでないCHIPがあった。
 注追記 '19.04.16 :上記のNVRAMは、ROM,RAMとも「DS1230Y-100+」。しかし RAM部分のみ新たな「DS1230Y-70IND+」 に差し替えるとどのEPROM CHIPでも動作した。アクセスタイムの違いか? ややこしそうなので何故かは追跡しない。
 注追記 '19.04.28:NVRAMの問題(TWITTER)は次の改修で改善した。これでDS1230Y-100+」も使え、とりあえず解消
 ・C6の+5V側とR2の+5V側を写真のように接続。即ち、引き回されていた+5Vラインを短縮することで、CPU, NVRAMに供給する電源電圧低下を少なくした。



   ★TWITTERへのリンク

RESET 後など、BASICをHOT STARTするにはコントロールPでPC(プログラムカウンタ)をC046に設定して、G を入力する。

★ BASICプログラムの動作例(VINTAGE-BASIC.netより引用したLIFE.BAS)


LIFEを走らせた

最終的に2パターンに辿り着く

もう一つのパターン
6. ASSIST09ソースの手入れ

 このASSIST09には下記の記事から引用させていただいて「F」、「X」コマンドを追加した。この記事でコマンドの追加の仕方が参考になったので「?」(HELP)コマンドも加えてみた。





完動した2式

以上

MUTIF09にAM9511を載せてみる

難しそうで躊躇っていたAm9511ですが、 【ryu10さんのBlog】 に勇気づけられ、チャレンジすることにした、そのあれこれです。 【MUTIF09のファイルの置き棚】 1.PCの環境と条件   ★PC:  win10に次のコマンドをインストール:   msdos.exe  ...

これまでによく読まれた記事