HC-88でプログラミング! その3

スクリーンモード4

HC-88のマニュアルが手元にない状態なのですが、資料を見ていたらどうやら拡大文字モードというモノがある事に気が付いた!

今まで、主にPX-8(海外向けのHC-80)の資料を見ていたので存在そのものに気が付いてなかった。海外の資料を見る限りSCREEN0〜3までは理解していたけれども、SCREEN4ってのが存在してた!しかも日本語モードになるとはw

 

f:id:PocketGriffon:20201014181640j:plain

この画面モードになればタッチ16での日本語入力が可能。しかもPRINT "日本語"なんて感じに全角文字を入れる事も出来る。てっきり「BASICはPX-8と全く同じ」くらいに思い込んでいたけれども、かなり拡張されているのかもしれない。

きっとこの辺りのプログラムは拡張ユニット側のROMに載っているのかも知れないけれど、解析をまーったくしていないので憶測の域を出ない。

 

f:id:PocketGriffon:20201014210240j:plain

この(SCREEN 4)モードでBASICのLISTをするとインパクトでかい!PC-1600Kでも同じ感じに見えるモードがありましたね、確か(^-^;

ROGANには優しいけれども、CTRL-Sで止めると1行しか見えないのは残念(T-T)

 

ダンププログラム仮完成!

先日から開発していたメモリのダンププログラムが、仮に完成しました。

仮に完成ってなんだ?

とりあえず動きますってバージョンw

 

f:id:PocketGriffon:20201014221650j:plain

ただ単にメモリが見えるだけのプログラムですが、64KBのメモリ空間がなんとなく分かるってのは嬉しいですね!

 

f:id:PocketGriffon:20201014221654j:plain

実は今回はこんな機能を入れてまして!

上の写真と下の写真、実は上がメインCPU(Z80)のメモリ空間、下はスレーブCPU(6301)のメモリ空間が見えているのです!

巧妙にも画面右下に「M」と「S」の違いがww

 

今回のダンププログラムはオールC言語で書いた。一部、システムコールを呼ぶ部分についてのみインラインアセンブラを使ってる。やっぱりC言語使えると違うなー。

 

HC-88でのプログラミング10/14版

今回のダンププログラム、前回のシリアル通信プログラムを通じて分かった事。

HC-88はスレーブCPUを介して表示や通信を行うのだけど、そのスレーブCPUとのやりとりがボトルネックとなり、全体的な速度が上がらない。

特にダンプの表示については、1文字ずつスレーブCPUに指令を渡していたら「なんか遅いね」程度では済まないほどの速度低下が起きる。仕方ないので、出来る限りメインCPU側でデータをまとめるなりして、出来る限り大きな単位でスレーブCPU側に渡すようにした。

そのため、キー入力に対するレスポンスが非常に悪く、「仮」と言いたくなるほどの完成度となりました…orz

 

今回の「メモリの内容を見てみたい」という目的は達成できたので、一旦ダンプ表示はキリとします。

この先はスレーブCPU側に入っているプログラムの解析をしていきたいと考えているのですが…困ったことにHC-88→ホストマシンへの通信がうまく行かず、データを引っ張ってくる事が出来ない。

これは…データを目コピーするしかない?4KBのダンプリストを??(T-T)

…ちょっと方法を考えてみますw

 

ではまた次回!(^-^)ノ