正月休みの工作

正月休みの工作でライントレーサを作ってみました。 ラインを外さないようにするため速度を落とす必要があり、また、センサーが2個でON/OFFな制御のためカクカクしているため、センサーの増設、比例制御の導入などで改善を行いたい。 材料 Arduino UNO R4 …

FM77AV40EX/SX用の512KRAMカードのテスト

メモリテストを強化しました。 https://github.com/yoichiro-ono/FM77AV40EX-RAM 実行結果 メモリテストの実行結果 問題なく動作しているようです。

FM77AV40EX/SX用の512KRAMカード

ハードウェア解説書をもとに512K-RAMカード(S-RAMカード)を作成してみました。 物理アドレスの&H40000-&HBFFFFに割当てされます。 メモリカード表面 メモリカード裏面 LEDはCE、READ、WRITEのインジケータになっています。 READ、WRITEはアドレスに関係なく…

ねんがんのマニュアルをてにいれたぞ

念願のハードウェア解説書が手に入りました。 これでFM77AV40EXの増設メモリを作れそうです。 ハードウェア解説書 コネクタの入手性が次の問題ですが。。。

FM-7 64180カード用CP/M BIOS

ある程度動く状態になりましたので、githubで公開しました。 https://github.com/yoichiro-ono/FM7-64180-CPM エスケープシーケンスが不足しているのか、サポートデバイスに問題があるのかWordmasterは動いていませんが、MBASICは動作しました。

FM-77用PS/2キーボードインターフェース

キーボード無しのFM-77を入手しましたので、PS/2キーボードI/Fを作成しました。 FM-77用PS/2キーボードI/F CPUに手持ちのMega168Pを使用し、内臓の8MHzで間に合うと思うのですが20MHzの外部クロックを付けました。 PS/2コネクタ(MiniDIN)はaitendoで安売りし…

FM-7用64180カード作成

久しぶりの更新ですが、FM-7を入手し、プロセッサ誌の64180カードを作成しました。 10MHzへの切り替えを無くし、メモリを4MBitのSRAMに変更(物理アドレスも80000-FFFFFに変更)、74LS⇒74HCT、74ALS・74F⇒74ACに変更した程度で、記事の回路ほぼそのままです。 …

豊四季タイニーベーシック

前回から随分と間が空いてしまいましたが... 豊四季タイニーベーシックを移植しました。 アセンブリ言語の勉強を兼ねてCコンパイラを使用せずに手作業でアセンブリ言語で作成しました。 https://github.com/yoichiro-ono/ttbasic6809 起動時の表示 フロー制…

VGA出力

なかなか進みませんが、SBC6809用のVGAキャラクタ表示ボードを作っています。 ようやく、Cmod S6(Spartan-6:XC6SLX4-2CPG196)からVGAで80x48文字のキャラクタ表示ができるようになりました。 文字サイズ:8x8ドットフォントの下に2ドットの空白で8x10ドット…

CFボード

CFボードでIdentifyDriveコマンドを実行するプログラムと結果です。 ASSIST09と組み合わせて使用します。 実行結果 SanDiskの512MB CompactFlashです。 CapabilitiesからLBA/DMAに対応していることがわかります。 ソース 1バイト読み込む毎にDRQをチェック…

CFボード

仕事が忙しくなかなか時間が取れません。 CFボードを作成しました。 まずはセクタ読み出しのプログラム作成予定。

メモリテスト2

前回のメモリチェックに、アドレス線のチェックと(ほぼ)全領域のチェックを追加してみました。 ・アドレス線のチェック 特開平6-110723を参考に作成 ・全領域のチェック $1000~$1FFFに対し順に$55書込・ビットの反転・コンペアを行います。 これを…

メモリテスト

6809アセンブリ言語の勉強と合わせて、 1.メモリマッピング機能のテスト ・0000-0FFFに128ページ分のRAMを順番に割付し、個別の値($80~$FF)を書き込む。 ・2000-2FFFに128ページ分のRAMを順番に割付し、書き込んだ値が読み出せることを確認する。 2.8タ…

簡単なMMU実装完了

マッピングの実装ができました。 簡単なプログラムで簡単な動作確認もできました。 1.機能 ・4kb単位でマッピング ・8タスク分のマップ情報を保持(LUT数の限界) ・FFD0:マッピング対象のタスク番号(0~7) ・FFD1:マッピング情報更新対象のタスク番号 ・FFE…

ステップ2完了

ステップ2として以下の動作が確認できました。 1.FPGAを書き換えてメモリ割付、および、FPGA用のボードに取り付けた512KByteのSRAMを利用するように変更(CPUボードのSRAMは取り外し) 0000-DFFF:RAM E000-FEFF:ROM FF00-FFEF:I/O FFF0-FFFF:ROM ※FPGA用…

ステップ1が完了

ようやく、FPGAを74138の代わりとする確認ができました。 VHC541、VHCT541を使用した5V⇒3.3V、3.3V⇒5Vの電圧変換も確認できたこととなります。 FPGAから出力した信号を74138をつけるソケットに直接流し込んでいる様子です。 この状態でBASICが起動できること…

書き込みエラー2

新しいボードを接続して書き込みをすると同じエラーが発生した。 配線がおかしいのかとボードの再配線をしたがやはりエラーが発生。 よくよく思い出してみると、書き込みエラーが発生する前にLattice Diamondをアップデート(自動でアップデートが表示された…

MachXO2

ユニバーサル基板での配線時によく考えずにピンを割り付けしていたので、ピン割付をし直して再配線します。(JTAGENBやPROGRAMNも出力の配線をしていた) とりあえずは、DONE、INITN、PROGRAMN、JTAGENBは開ける予定。

MachXO2-256書き込みエラー

MachXO2に書き込み(書き換え)を行おうとすると以下のエラーが発生し書き換えができません。 Programmer device database loaded Starting: "pgr_project open "C:/Users/******/Documents/Lattice/Decoder/impl1/impl1.xcf"" INFO - Check configuration set…

FPGA

SBC-BUSに接続するFPGAボードの作成がほぼ完了。 FPGAはLattice MachXO2-256(LCMXO2-256HC-4TG100C)で、 上側が74VHC541、下側が74VHCT541で、VHC541で5V⇒3.3V、VHCT541で3.3V⇒5Vの変換を行うつもりです。 FPGAへの入力はA0-15、D0-7、E、RW、RD、WRが接続済…

目標

1.最終目標 H/W ・512KB以上のRAMを実装 ⇒MMU的なものが必要 ⇒FPGAで作る(FPGAの勉強も兼ねる) 値段の手ごろなLCMXO2-256HC-4TG100Cを使用する ・ディスプレイ表示 ⇒ジャンクMSX2+からはぎ取ったV9958を使用する ⇒ラッチを使えばSRAMが使えるようなので628…

6309E

SBC6809組み立てついでに、6309をAliExpressで注文してみました。 9US$で10個でした。 説明では63C09Pとなっていたのですが、送られてきたものはすべて、 63C09EPでした。 10個を重ねたうえで、ラップで包まれていたのはビックリです。 そのままでは動かない…

はじめまして

ブログをはじめました! Webを眺めているとSBC8080/6800/6809など何やら楽しそうなものが目に入りました。 子供のころに機械語マニュアルを見てもさっぱり理解できなく、当時究極の8bitなどと書かれていた6809を触ってみたく思い、SBC6809および各種部品を注…