6502tinymachines

ベンチの早見表

印刷用: 図面一式「NES controller-port bridge, v1b」TM-NESB-001 版 P (PDF、英語)、組み上がった v1b、写真の上に検査箇所を書き出したもの (PNG)。

tools/cheatsheet.py が生成する。ピン番号と信号は回路図から、ハーネスの色は 実験ノートから、ブレークアウトのリードは立ち上げ道具自身の表から、各チップの 配線はネットリストから読んでいる。書き下ろしなのは、各ピンが実機で何をするか という説明だけだ。それはデータシートのもので、あの道具の中の一か所に置いて あり、回路図がピンを違う名で呼んでいたら拒まれる。同じ行が図面パッケージの シートになる (tools/make-package.py)。ヘッドの手 (Pi のジャンパ、PC817、 リレー) には自分の早見表がある: cheat-sheet-head.md。

シート: bench-v1b。

コントローラポート: ピン、NES のハーネス、ブレークアウト

ピン番号はこのコンソールのポート筐体に成形されているもので、信号は回路図のもの。2026-09-09 実測 (電源が来ているのは 7 ではなく 5 だ)。ハーネスの色は実験ノートのステップ 1.1 (2026-09-08) から。ブレークアウトのリードは 2026-09-09 に、ケーブルをコンソールから抜いた状態で導通を当たった。切ったケーブルのパッド側も同じ五色を運んでいる。色の規則ではなく、リードを見ること。

ピン信号NES のハーネスブレークアウトのリードブリッジでは
1GND茶黄GND レール
2CLK赤青R2-1、A1 D2 (INT0)
3OUT0橙黒U1-1、A1 D5 (T1)
4D0黄緑U2-9
5+5V白赤使わない: ブリッジは UNO の 5 V から動く
6n/c青運んでいない
7n/c紫運んでいない

電源とリセットのブレークアウト

五本そのまま通しで、前面パネルのハーネスと色を合わせてある (docs/lab/06-breakout-map-power-reset.jpg)。2026-09-17 にメーターで当たった。接地の線は一本も無い: 前面パネルは自分のパッドと筐体で接地されている。

ピンNES のハーネスブレークアウトのリード何か
1茶茶電源スイッチ
2赤赤電源スイッチ
3橙橙リセット、+ 側 (4.40 V)
4黄黄リセット、- 側、および LED
5白白LED

ヘッドの四本のジャンパ

Pi のヘッダから出た Dupont のリード四本、ブレークアウトは無し (2026-09-10)。ヘッダの位置は Pi 自身の番号だ。ここからコンソールへ行く線は無い: Pi の接地は UNO の USB ケーブルを通してしかコンソールに届かない。

Pi のピン位置行き先役目
GPIO1711PC817 モジュールの INPUT +リセット、100 ms の high
GPIO2713リレーモジュールの IN電源: high が入
5V2リレーモジュールの VCCコイルの電源
GND6PC817 の IN-、リレーの GND貸してある唯一の接地

UNO のリボン

UNO のデジタルヘッダから Dupont 九本。色はヘッダの上で読んだピンごとのもの (2026-09-11)。ネットと向こう端は回路図から。

UNO のピン色ネット行き先
D2青CON_CLKJ1-2、R2-1
D3緑TRIGR1-1
D5黄CON_OUT0J1-3、U1-1
D6橙PAD_LATCHJ2-3
D7赤PAD_CLKJ2-2
D8茶PAD_D0J2-4
D10黒RCLKU3-12
D11白MOSIU3-14
D13灰SCKU3-11

スコープ: チャネルとトリガ

2026-09-15 に配線したとおり。各プローブの着地点は、元に戻せるように基板の列で書いてある。プローブの接地は右の基板の GND レール、つまりコンソールの接地に。プローブは 10x。DS1054Z に外部トリガ入力は無い (2026-09-15 実測) ので、ブリッジの TRIG が CH1 を取る。このチャネルは、メインボードにプローブを当てるまではマスタクロックのために空けてあるものだ。立ち上げのステップ 6.1 はスコープを CH1 で仕掛け、ラッチで TRIG を撃つ。

入力信号プローブの位置なぜ
CH1TRIG中央の基板の R1: 行 a の、列 9 (緑の D3 リードの筐体) から列 6 (スコープへ行く赤のリード) までの抵抗トリガ: ラッチ T で 2.5 V の立ち上がり、874 us のあいだ 5.4 V (2026-09-15 実測)。後にはマスタクロックのチャネルとして、交代で
CH2CON_OUT0 (ラッチ)U1 のピン 1: 右の基板の列 34、U2 に向いた側 (行 f から j)ポールごとに 1 パルス、幅 3.6 us、毎秒 60.06 回。リードは 2026-09-15 の晩に新しくした
CH3コンポジット映像コンソールの映像出力、スプリッタを通してポールが着地する先の絵
CH4CON_D0U2 のピン 9: 右の基板の列 18、レール側 (行 a から e)コンソールが読み返すバイト、押下で LOW: 00 なら八ビットのあいだ high、ff なら low (2026-09-15 23:00 実測。これで二本のプローブを見分けた)
EXT TRIG無しこのスコープには無いDS1054Z に外部トリガ入力は無い (2026-09-15 実測: source EXT は拒まれた。背面の BNC は Trig Out だ)

U1: 74HCT04、+5V で

六回路のインバータ、独立したゲートが六つ。HCT の入力は TTL のレベルで切り替わる (2.0 V から high) ので、コンソールの NMOS の OUT0 線に座っている: OUT0 が high でレジスタが読み込むので、その反転が 165 の active-low のロードになる。使っているゲートは一つ。残る五つの入力は CMOS なので、浮かせてはいけない: 空いている A 入力はそれぞれ GND に落とし、その Y は開けたままにする。

ピン名前実機ではこのベンチでは
11Aゲート 1 の入力CON_OUT0: J1-3、A1 D5 (T1)
21Yゲート 1 の出力、1A の反転/PL: U2-1
32Aゲート 2 の入力GND レール
42Yゲート 2 の出力接続なし
53Aゲート 3 の入力GND レール
63Yゲート 3 の出力接続なし
7GND接地GND レール
84Yゲート 4 の出力接続なし
94Aゲート 4 の入力GND レール
105Yゲート 5 の出力接続なし
115Aゲート 5 の入力GND レール
126Yゲート 6 の出力接続なし
136Aゲート 6 の入力GND レール
14VCC電源、4.5 から 5.5 V。ピンのところで GND へ 100 nF+5V レール

U2: 74HC165、+5V で (TI の袋のもの)

8 ビットのパラレルイン、シリアルアウトのシフトレジスタ: パッドの 4021 を 74 のパッケージにしたものだ。/PL が low のあいだ、八つの入力 A から H はそのまま各段へ写される (透過なので、ロードの前にバイトが落ち着いていなければならない)。/PL が high なら、CP の立ち上がりごとに一つ QH の方へずれ、A には DS が引き込まれる。QH は段 H を見せるので、H が最初に出るビット、A が八番目だ。だからパッドの順序 A、B、Select、Start、上、下、左、右は、H から A へ下る形で配線されている。/CE が high だとクロックは止まったままだ。

ピン名前実機ではこのベンチでは
1/PLパラレルロード、active low: low のあいだ入力が写される/PL: U1-2
2CPシフトクロック、立ち上がり、/CE が low のときCP: R2-2、C4-1
3Eパラレル入力 E、四番目に出るビットQ_START: U3-3
4Fパラレル入力 F、三番目に出るビットQ_SEL: U3-2
5Gパラレル入力 G、二番目に出るビットQ_B: U3-1
6Hパラレル入力 H、最初に出るビット (ロード後の QH)Q_A: U3-15
7/QH反転したシリアル出力接続なし
8GND接地GND レール
9QHシリアル出力: 段 HCON_D0: J1-4
10DSシリアル入力: 八発目のクロックの後に A へ入るGND レール
11Aパラレル入力 A、八番目に出るビットQ_RIGHT: U3-7
12Bパラレル入力 B、七番目に出るビットQ_LEFT: U3-6
13Cパラレル入力 C、六番目に出るビットQ_DOWN: U3-5
14Dパラレル入力 D、五番目に出るビットQ_UP: U3-4
15/CEクロックイネーブル、active low: high が CP を止めるGND レール
16VCC電源、2 から 6 V。ピンのところで GND へ 100 nF+5V レール

U3: 74HC595、+5V で

出力ラッチ付きの 8 ビットのシリアルイン、パラレルアウトのシフトレジスタ。SRCLK の立ち上がりごとに SER が QA の段へ入る。各段は、RCLK の立ち上がりが八つを一度に出力ラッチへ写すまで見えないままで、これがバイトをコンソールに対して不可分にしている: 165 は書き途中のバイトを決して見ない。/OE が low で出力が入り、/SRCLR が low でシフトの段が消える (ラッチは消えない)。QH' は八番目の段で、二枚目の 595 を繋ぐためのものだ。

ピン名前実機ではこのベンチでは
1QBラッチされた出力 BQ_B: U2-5
2QCラッチされた出力 CQ_SEL: U2-4
3QDラッチされた出力 DQ_START: U2-3
4QEラッチされた出力 EQ_UP: U2-14
5QFラッチされた出力 FQ_DOWN: U2-13
6QGラッチされた出力 GQ_LEFT: U2-12
7QHラッチされた出力 HQ_RIGHT: U2-11
8GND接地GND レール
9QH'ラッチ前の段 H: 繋いだ 595 へのシリアル出力接続なし
10/SRCLRシフトレジスタのクリア、active low: 動かすには high に留める+5V レール
11SRCLKシフトクロック、立ち上がり: SER が A へ、A が B へ、と続くSCK: A1 D13 SCK
12RCLKラッチクロック、立ち上がり: 八つの段すべてを出力へRCLK: A1 D10
13/OE出力イネーブル、active low: low で QA から QH を駆動するGND レール
14SERシリアルデータ入力、SRCLK の立ち上がりで標本化されるMOSI: A1 D11 MOSI
15QAラッチされた出力 AQ_A: U2-6
16VCC電源、2 から 6 V。ピンのところで GND へ 100 nF+5V レール

ビルド時に nes-bench/docs/cheat-sheet.md から取り込んでいる。写しはリポジトリの一つだけだ。報告には私たちの間の言葉がいくつか残っている: 報告書で使われる言葉。