鳥取・岡山で楽天モバイルを使ってみた
先日、鳥取・岡山に行く機会がありました。楽天使えるか心配していたのですが、意外にも大丈夫。これなら充分に使えるんじゃないかと感じました。 山間部も大丈夫 神戸空港〜姫路市〜鳥取市〜鳥取県八頭町〜岡山県湯郷 の範囲を主に移動。八頭から湯郷まで ...
Fuzix-Compiler-Kitの6800用コンパイラ(3)(ベーシックマスター開発 その35)
Fuzix-Compiler-Kitの6800用コンパイラ(2)(ベーシックマスター開発 その34) | ず@沖縄の続き。 同じ問題を解くプログラムを走らせて EFuzix C Compiler ProjectのCコンパイラと、拙作のGAM ...
Fuzix-Compiler-Kitの6800用コンパイラ(2)(ベーシックマスター開発 その34)
Fuzix-Compiler-Kitの6800用コンパイラ(ベーシックマスター開発 その33) | ず@沖縄の続き。 まだまだ機能は足りないし、バグもあるようだけど、ある程度動くようになった。 どんなプログラムが動くのか 騎士巡歴問題が解け ...
Fuzix-Compiler-Kitの6800用コンパイラ(ベーシックマスター開発 その33)
6800用のコンパイラを探して – Fuzix/CC6303(ベーシックマスター開発 その22) | ず@沖縄の続き。 サポートルーチンを追加して、バグ取りしたら、少しは動作するようになったのでメモ。6800わかる人に手伝って欲しい。 Fu ...
MC6800のプログラミングテクニック(3) 16進数1桁からASCII文字への変換
MC6800でのプログラミングの小ネタ。0-15の数値を'0'-'9','A'-'F'に変換したい。 10進表示は面倒臭いけど、16進だと楽。小さなプログラムの動作確認に便利。 以下はBASICMASTERのモニタで使われている変換プログラ ...
MC6800のプログラミングテクニック(2) AccBを符号拡張してAccABに入れる
6809だとSign EXtend命令一発なんだけど、6800にはそんな便利な命令はないのです。 普通に分岐を書くと5bytes,00拡張で8cycle,FF拡張で10cycle。perplexity.aiに書かせると、COMAの代わりにD ...
MC6800のプログラミングテクニック(1) 16bit数値の2の補数の計算
AccABを16bitレジスタに見立てて2の補数(NEG)を計算する。素直に考えると1の補数を計算して+1なので、以下のプログラムになる。 メモリ 6bytes,実行時間 8cycle。ADDB #1 はINC Bにしたいのだが、INCでは ...
GAME68クロスコンパイラを書いてみた(3) (ベーシックマスター開発 その32)
GAME68クロスコンパイラを書いてみた(2) (ベーシックマスター開発 その21) | ず@沖縄の続き。 コンパイラの改良は意外に面白く、最適化の勉強の勉強も兼ねてあれこれ手を入れてみた。最新版は以下に置く。 BASICMASTER/GA ...
6800の分岐命令とインタプリタ(ベーシックマスター開発 その31)
MC6800の分岐命令が面倒臭いのは6800の分岐命令(ベーシックマスター開発 その30) | ず@沖縄で書いた。 MC6800でなくても、CPUの扱えるレジスタ長を超えると大小比較は面倒くさくなる。 その面倒臭さを当時のインタプリタはどう ...
6800の分岐命令(ベーシックマスター開発 その30)
6800には豊富な分岐命令がある。複数の条件フラグを参照する分岐命令もあり、プログラミングを楽にしてくれる……はずなのだけど、うっかりすると罠にハマってしまう。実際ハマった。 解説資料も少なくて、初学者の参考になるようなサイトも見つけきれな ...
簡易グラフィックスとPLOTルーチン(ベーシックマスター開発 その29)
BASICMASTERには、64x48dotの簡易グラフィックスを表示する機能がある。64x48は、今ではフォント1文字のサイズである。 それでも、この制限された狭いグラフィック表示の中で、頑張って見栄えの良い画面を作ろうとしたものだ。 簡 ...
6800のCPX命令とエミュレーター(3)(ベーシックマスター開発 その28)
6800のCPX命令とエミュレーター(2)(ベーシックマスター開発 その27) | ず@沖縄の続き。 さて、MC6800のCPX命令はわかりにくいフラグ変化があるという話をしてきた。実は、いくつかのエミュレータ実装でも誤っているものがあるの ...