2015-01-01から1年間の記事一覧

近況

デジタル処理のために結構な数の立派なICを利用する予定です。部品代が高くなりそうで参ってます。

アーケード化キットとは無関係

PCエンジンの背面コネクタを利用してアーケードゲーム用のコネクタとつなげるものが最近あるようですが*1、私とは無関係のものです。混同しないようお願いいたします。 *1:昔から似たものは存在していたようで、それを新規に作ったらしい

SuperGrafx 専用/対応ソフトは絵が不完全

残念なおしらせです。先日試作回路に SuperGrafx を接続してみましたが、VDC の映像が1つだけの状態でした。 SuperGrafx のビデオの処理の流れは下記の様になっております。 重要なのは (A) と (B) の部分で、 SuperGrafx では (B) の線が EXTBUS から出てい…

PCエンジンを720pで映しながらバックアップRAMに対応する計画

前回の投稿は多くの方々に興味を持っていただいたようでうれしい限りです。EXTBUS を使う機材はできるだけサポートしたいのですが*1、構造が簡単なバックアップ出来ないバックアップRAMに対応しました。それに伴い散在していたバグを修正して、動作が不安定…

PCエンジンを720pで映す計画

PCE 本体の背面コネクタ(EXTBUS)から出ている信号を利用することによって、アナログに変換する前のデジタル信号を 720p で映すことができました。これによって、本物のハードウェアから改造なしにほぼ鮮明な映像を液晶モニタに映すことが出来ます。このハー…

はてなダイアリーポイントプログラムの謎仕様

6月から1か月に1度、はてなダイアリーポイントプログラム レポートというメールがきていて、抽選で10ポイント入るようになった。 6月から9月まで毎月メールが来ているので毎月抽選に当選しているらしい。なんで?

Namco 108 の謎仕様

某プログラムの memory controller driver プログラムを Namco 108 系に移植しようとしたのですが、実機でうまくいきませんでした。不具合の原因を計測器を使って見ていたところ、勝手にバンクレジスタが書き換わって暴走していました。 CPU が address $8xx…

FLASHPAD の紹介ページを作りました

EPROM32 のほうがメインです。 MASKROM32 のほうは自分が頻繁に使わないし、細かすぎて大変だったし、ばくてん氏も似たものを作ってたのでそちらに任せた方がいいかな。 http://seesaawiki.jp/flashpad/(xsnakeさんへ、今週は体調が悪いです...)

052001 indexed register, exg/tfr source register

(古い記事の書き直しで、古い記事は削除しました。)indexed register の bit6:4 と exg/tfr の immediate のうち source register (tfr では bit6:4, exg では bit6:4 と bit2:0 の両方)の数値の割り振りは同じです。 [indexed RRR register field, exg/tfr …

052001 software note

052001 の命令セットは 6809 を参考にした CPU で独自に拡張が加えられています。 opcode と addressing mode の扱いを変更し、 prebyte を廃止 6809 での extened, DP addressing mode の2つを indexed へ統合 8bit 出力ポートを内蔵 DP を 16bit に拡張 CP…

052001 hardware note

外形: PGA64 ピンに関しては Fujitsu の PGA-64C-A02 と同じ 電源: DC +5V IO 電圧: 74LSがつながっていたり 3.3V を H レベルと認識するのでたぶん TTL level ピン詳細 name io description ------------------------------------- R9:0 ? 用途不明. 全て 5…

052001 opcode list

先日までの調査は 1 memory access に対し DTAC で CPU を停め PC へデータを送り、応答を出してから DTAC を出していたのですが、 DTAC を無視する memory cycle があることや memory wait がないのに AS の期間が長いという問題に対処出来ませんでした。調…

052001 operation (bcc/daa)

前回の未調査分からの続きです。 0x60-0x7f op name mode ~ |operation/note ---------------------------------- bxx r8 3/3|if(cond){pc += signed(r8);}else{ dummycycle;} lbxx r16 1/2|if(cond){pc += r16;}else{ dummycycle; pc += 1} 60 bra r8 3/3|c…

052001 operation 一覧

branch と daa 以外は大体調べました。長いので 0x20 ごとに区切ります。 op: opcode name: 基本 6809 と同じだが、独自拡張はMAMEの物だったりそれを改称したもの mode: addressing mode inh: inherent ind: indexed r8: relative signed 8bit r16: relativ…

052001 の indexed

情報整理できました。 7654 3210|d==0 # ~ _|d==1 # ~ _|operation(d=0) ---------+------------+--------------+------------ 0000_d111|n16 2 1 0|[n16] 4 0 0|ea = {mem0,mem1} 1xxx_d100|DP,n8 1 3 0|[DP,n8] 3 2 0|ea = {dp[15:8], mem} 0RRR_d000|,R+ …

FF3 の stack 関連のバグ

FF2 での技が FF3 で応用出来るか簡単に調べました. stack の概要 基本は FF2 と同じです。 FF3 の場合は stack push と pop で SE が異なるのでわかりやすいです。 vector table に書かれた NMI address は $0100, それに加え IRQ/BRK address $0103 になり…

FF2 の glitched TAS がついに公開された その2

昨日の続きです。 誤動作途中への MMC1 レジスタへの書き込み $A028 の誤ったプログラムを実行した結果の UNDEFINED の逆アセンブルを修正します。 S:0E $9B84:60 RTS (jsr からの復帰ではないので from 表示がない) (割り込み発生前のstatus register と PC…

FF2 の glitched TAS がついに公開された その1

http://www.nicovideo.jp/watch/sm26713886わずかながらですがピロ彦さんに協力させていただきました。なるほどわからんとおっしゃる方にはさらにわからない説明をいたします。 デジョンの魔法とスタック構造 FF1 から FF4 までは街やダンジョンでどのフロア…

SMD FLASH device memo

FLASHPAD-MARKROM32 で対応している device について説明していきます。 MX29F040TC-70 (Macronix) http://akizukidenshi.com/catalog/g/gI-01447/ 2個で300円と安価です。なおこれは現行製品の MX29F040CTC (C がついてる) とは別製品のようです。この旧製…

FME-7 基板にも試した

やはり慣れないと見た目がよくないのと、この写真で見て FLASHPAD の左下に空き地があるのでここに CE#, OE#, WE# のpadを移動したほうがよかったですね。

FLASHPAD-MARKROM32 を試した

この基板は表面実装の flash memory を利用した基板で、doi_kotsubu さんが発案されたゲームについていた ROM を外さなくていいというアイディアを応用したものとなっております。今回はお試しということで UOROM (星霊狩り) と FME-7 搭載基板 (バーコード…

FME-7 採用基板での flash 化

flashpad-maskrom32 の評価を兼ねてやりました。わりとうまくいってるのですが、 charcter ROM の erase の動作が1度目は必ず失敗し、2度目以降が安定するのが謎。 program flash memory の配線 A18 = GND A17:13 = program ROM A17:13 (from FME-7) CE# = n…

flashpad-maskrom32 の配線が終わる

合間を見つけて地味にやっていたのですが、先ほど終わりました。 先日記載したとおり、この基板は MASKROM が載っている裏側に貼り付ける基板なのでピン配置が逆になります。 配線を最初からし直したことや渦を巻くような配線なのか、バス周りは意外ときれい…

namcot 163 dump 不備

xsnake さんの報告の理由を調べたところ、 CPU address $c800-$dfff で取得する data が不安定になっていました。 この address は $c800-$dfff となりますが、 A15 = 0 の場合 (カートリッジの信号では ROMSEL# = H)は $4800-$5fff となり、この address は…

flashpad-maskrom32

前回の設計からときどき考えていて、あまりいいネタが浮かばなかったのですがたまたま twitter をみてたら斬新なアイディアを @Doi_Kotsubu さんが考えていました。 ROM の裏に flash 基板を貼る 何をやっているかを書いてみます。 mask ROM は外さない 外さ…