うさちゃんと一緒(31) Z80の魔改造?Rabbit4000で ECHO 再び

wiresharkECHO2flow
Joseph Halfmoon

前回「素の」telnetでラズパイ4からうさちゃんRabbit4000へ通信してみました。裏でtelnetが通信条件など双方向でネゴっていることを学びました。でも実際のデータ転送は一方通行でした。うさちゃんからのお返事はなし。今回はうさちゃん側からのお返事あり、としてみとうございます。

“うさちゃんと一緒(31) Z80の魔改造?Rabbit4000で ECHO 再び” の続きを読む

うさちゃんと一緒(30) Z80の魔改造? Rabbit4000でtelnetその2

TelnetSessionMark0
Joseph Halfmoon

前回うさちゃんRabbit4000とラズパイ4の間でtelnet接続成功したものの、通信の様子を「遠くから眺めた」だけで終わってました。今回は例によってwireshark使ってパケット毎に観察していきます。生のパケットの中身を覗くとうさちゃんが「あれはやるな、これもダメ」と文句垂れてることに気づきました。わがまま?

“うさちゃんと一緒(30) Z80の魔改造? Rabbit4000でtelnetその2” の続きを読む

うさちゃんと一緒(29) Z80の魔改造? Rabbit4000でtelnetその1

telnetFlowGraph
Joseph Halfmoon

前回はうさちゃんとftpでした。そういえばftpよりももっと簡単?telnetもやっとくべきだな~と。しかし最近「素の」telnetなど使ったことないです。普通sshだよね。実際うさちゃんの対向機ラズパイ4にはtelnetインストールしてなかったです。今回はインストールから初めて、ひさしぶりに「素の」telnet。

“うさちゃんと一緒(29) Z80の魔改造? Rabbit4000でtelnetその1” の続きを読む

うさちゃんと一緒(28) Z80の魔改造? Rabbit4000でftpクライアントその2

ftp_wireshark11
Joseph Halfmoon

前回はうさちゃんRabbit4000上のftpクライアントとラズパイ4上のftpサーバ間でファイルの転送ができるようになりました。今回は前回のftp接続の様子をラズパイ4上のwiresharkで観察してみたいと思います。前々回のDNSのようにUSPのパケット一発というわけにはいきませぬ。裏じゃいろいろやってるftp?

“うさちゃんと一緒(28) Z80の魔改造? Rabbit4000でftpクライアントその2” の続きを読む

うさちゃんと一緒(27) Z80の魔改造?Rabbit4000でftpクライアントその1

RpiFTPlog
Joseph Halfmoon

前回は、うさちゃんRabbit4000とラズパイ4の間でDNSのやり取りでした。今回からはftpしてみます。うさちゃんがクライアント、ラズパイ4がサーバという役回りです。今回はうさちゃんに書き込んだftpクライアントのサンプルプログラムで、ラズパイ4上のvsftpdサーバからファイルをゲットできることを確かめるまで。

“うさちゃんと一緒(27) Z80の魔改造?Rabbit4000でftpクライアントその1” の続きを読む

うさちゃんと一緒(26) Z80の魔改造?Rabbit4000でDNSクエリその2

resDNS
Joseph Halfmoon

前回はうさちゃんRabbit4000の投げたDNSクエリをRaspberry Pi 4上のDNSサーバでレスポンス。「行ってこい」できたところでその中身は良く見てなかったです。今回は前回と同じ設定のまま、クエリとレスポンスの中身をwiresharkで観察したいと思います。だいたいDNSパケットってUDPだったけ?わかってないデス。

“うさちゃんと一緒(26) Z80の魔改造?Rabbit4000でDNSクエリその2” の続きを読む

うさちゃんと一緒(25) Z80の魔改造? Rabbit4000でDNSクエリその1

Rabbit400DNStestBLKDIAG
Joseph Halfmoon

前回までうさちゃんRabbit4000自身を調査。今回から再びうさちゃんを使役してネットワークのロウレベルなところを直接触っていきたいとおもいます。DNS(Domain Name System)から。Raspberry Pi 4上のDNSサーバに向かってうさちゃんからQueryを投げ、ラズパイからお返事してもらうと。
“うさちゃんと一緒(25) Z80の魔改造? Rabbit4000でDNSクエリその1” の続きを読む

うさちゃんと一緒(24) Z80の魔改造?Rabbit4000でアセンブラその2

ASM2_debugger
Joseph Halfmoon

前回Rabbit4000のアセンブラをちょいと触ってみました。インラインでもインラインでなくてもCのソースと混然一体。Cからアセンブラへの敷居がとても低かったです。今回はインラインアセンブラのコードの中にCのステートメントを書ける「インラインC?」に始まって独特なところをまた触ってみたいと思います。

“うさちゃんと一緒(24) Z80の魔改造?Rabbit4000でアセンブラその2” の続きを読む

うさちゃんと一緒(23) Z80の魔改造? Rabbit4000でアセンブラしてみる

addA_asm
Joseph Halfmoon

前回までの4回でRabbit4000のオペコードマップに色を塗って「理解」したつもり。かなりな大拡張ですがアセンブラレベルでは「ほぼほぼ」Z80の上位互換にみえないこともないです(バイナリ互換ではないです。)今回からRabbit4000上でアセンブリ言語ルーチンを動作させていきたいと思います。敷居が低いんだ、これが。 “うさちゃんと一緒(23) Z80の魔改造? Rabbit4000でアセンブラしてみる” の続きを読む

うさちゃんと一緒(22) Z80の魔改造? Rabbit4000のオペコードマップその4

6DpageEC
Joseph Halfmoon

最強?のZ80後継機、Rabbit4000のオペコードマップを見てきましたが、ようやく完結です。今回はオペコードの第1バイトが0x6Dで始まるRabbit4000独自命令の面です。この面は「しがらみ」が無い分うさちゃんの「意思」がありあり。この面の全命令のニーモニックはLDなのですが、実は転送だけでもない、と。 “うさちゃんと一緒(22) Z80の魔改造? Rabbit4000のオペコードマップその4” の続きを読む