プログラミング

6802用アセンブラを作る(3) プロトタイプ完成

構文解析部分で少し悩みましたが、ひとまずプロトタイプはできました。パーサーを自分で作るのとは異なり、ジェネレータを使うとエラー処理をうまく書くのが難しいです。いまのところ最低限の処理しか実装していません。またたまに例外を発生しますのでお気を...
プログラミング

6802用アセンブラを作る(2) JFlexとCUPの導入

6802用アセンブラの構文解析部分を、将来の拡張性を見据えて、自前で作成するのではなく字句解析にJFlex、構文解析にCUPを使って作成することにしました。この記事ではそれぞれの導入と、それらを使った構文解析部分のプロトタイプを紹介します。...
プログラミング

6802用アセンブラを作る(1) はじめに

VIA(6522)の動作をJR-100上で試すために、マシン語をハードコーディングする必要があります。中学生の頃は16進数のマシン語コードのまま平気でハードコーディングできましたが、この歳になるとさすがにつらい。 web上ではMS-DOS用...
プログラミング

JR-100のプログラムデータを再生するツール

JR-100ではプログラムを音声データにより外部媒体(カセットテープ)に保存することが可能です。この音声データ(仕様)を再生するプログラムを作成しました。目的は、JR-100のVIAのエミュレーションを正しく行うために、VIAの仕様書を読む...
レトロPC

JR-100のセーブデータのフォーマット

JR-100でSAVEコマンド実行時に再生される音声データの形式を示す。 記録方式 FSK (Frequency Shift Keying)方式で記録する。 スペース: 1,200Hz マーク: 2,400Hz ボーレート: 600ボー 1...
電子工作

USB Type Micro BとType Aの変換アダプタ

Raspberry Pi ZeroのUSBコネクタはType Micro-Bです。これにType Aのコネクタをもつ無線LANアダプタ(PLANEX GW-USNANO2A)を、これまで変換ケーブルを使って接続していましたが、せっかくの小さ...
電子工作

Adafruitの8×8ミニLEDマトリックス制御API(Raspberry Pi用)

Adafuitの8×8のLEDマトリックスをRaspberry Piで使う方法のAPI編です。 初期セットアップの仕方は参考記事を参照してください。 この記事はサンプルコードを思いついたときに適宜追加していきます。そのため見るたびに内容が変...
おもちゃ

PSPの壁紙設定

PSPのシステムソフトウェアVer2.00から、メニュー画面に壁紙として任意の画像を設定できるようになってます(最近出荷されているPSPはすでにVer2.80になっているはず)。 「PSP 壁紙」で検索すると、山ほど壁紙提供サイトが出てきま...
プログラミング

PNG API

自前で進めている古パソコンの解析作業(古パソコンの部屋参照)を進めるにあたって、文字フォントのビットマップから画像ファイルを機械的に生成するために、ビットマップデータから画像ファイルへの変換プログラムが必要になった。ブラウザで画像が見られる...
プログラミング

MMLプレイヤ

古いパソコンのエミュレータ作成の一環として、各種音源ICのエミュレーションをしたいと思っています。また、昔さんざんいじったMMLを使って今のマシンから簡単に音楽演奏できたら楽しそうだと考えました。そこで、Javaのプログラミングテクニック向...