Inside X68000 非公式正誤表

DMAC デバイスコントロールレジスタ

P.44 図12

デバイスポートサイズ
   0:8ポート
   1:16ポート

デバイスポートサイズ
   0:8ビットポート
   1:16ビットポート

1997-02-22

DMAC REQG(リクエストジェネレーションメソッド)

P.49 「❺・❷ 9 | REQG(リクエストジェネレーションメソッド)」 1行目

…,外部転送要求などの転送モードを…

…,外部要求転送などの転送モードを…

1997-02-22

P.49 同 4行目

…,'10' のときには…

…,'00' のときには…

1997-02-22

DMAC STR(スタートオペレーション)

P.52 「❺・❸ 3 | STR(スタートオペレーション)」 3行目

 STR ビットを'1'にするときは,DAC レジスタへのアクセスはバイト単位で行ってくださ
い。ワードやロングワードでアクセスすると動作タイミングエラーになります。Human68K の
db.x はリード/ライトともワード単位で行われますので,db.x の me (メモリエディット)
コマンドでは DMAC にスタートをかけられません。注意してください。

 STR ビットを'1'にするときは,DMAC レジスタへのアクセスはバイト単位で行ってくださ
い。ワードやロングワードでアクセスすると動作タイミングエラーになります。           
                                                                                 
                                                                

※編注:db.x のメモリエディットはサイズを付けて mes にすればバイト単位で読み書きされる。

2023-01-27

DMAC CPR(チャンネルプライオリティレジスタ)

P.54 図18

01: 2番目に高い優先度
10: 

01: 2番目に高い優先度
10: 3番目に高い優先度

2021-02-28

DMAC Human68k の初期設定値

P.57 図21

│ EIV ┃ $0f │ $0f │ $09 │ $6b │

│ EIV ┃ $0f │ $0f │ $69 │ $6b │

1996-05-09

DMAC によるテキスト画面クリア

P.59 「❼・1 | DMAC によるテキスト画面クリア」 1行目

バイトあるのに対し,MTC は16ビット(64K   バイト)分しかないため,オペランドサ
イズをロングワードにして 64K    ×4=256K   バイトを一度に転送するようにしてみたわ

バイトあるのに対し,MTC は16ビット(64K-1バイト)分しかないため,オペランドサ
イズをロングワードにして(64K-1)×4=256K-4バイトを一度に転送するようにしてみたわ

※編注:掲載されているサンプルプログラムは、正確に言うとテキスト画面末尾の4バイト (0xe3fffc~0xe3ffff)がクリアされない。P.61の3行目を dma->dar = (unsigned char *)0xe00004; に変えればすべてクリアされるようになる。

2023-01-27

MFP レジスタ一覧

P.80 図2

タイマCコントロールレジスタ

タイマC&Dコントロールレジスタ

1997-02-22

MFP GPIP,AER,DDRのビット配置

P.81 図3

・AERレジスタ:各信号ごとに,割り込みを発生させる変化方向を設定する
                0:'0'→'1'の変化で割り込み発生
                1:'1'→'0'の変化で割り込み発生

・AERレジスタ:各信号ごとに,割り込みを発生させる変化方向を設定する
                0:'1'→'0'の変化で割り込み発生
                1:'0'→'1'の変化で割り込み発生

(情報源: X68000 関係資料正誤表) 2021-02-28

MFP IERA,IPRA,ISRA,IMRA

P.83 図4

MPSC受信バッファエンプティ(受信データ読み取り要求)割り込み

MPSC受信バッファフル(受信データ読み取り要求)割り込み

1997-02-22

MFP タイマ ディレイモード

P.88 「❻・❶ 1 | ディレイモード」 2~3行目

 たとえば,プリスケーラとして1/100を選び,タイマデータレジスタに400をセットすると,
8ビットカウンタの出力は4MHz/(400×100)=100Hzとなり,…

 たとえば,プリスケーラとして1/200を選び,タイマデータレジスタに200をセットすると,
8ビットカウンタの出力は4MHz/(200×200)=100Hzとなり,…

※編注:タイマデータレジスタは8ビットなので400はセットできない。結果の周波数を合わせるなら上記の設定となる。

2021-02-28

MFP UCR(USART コントロールレジスタ)

P.94 「❼・❷ 2 | WL」 2行目

'00'のときには5ビットとなります。…

'11'のときには5ビットとなります。…

(情報源: X68000 関係資料正誤表) 2021-02-28

MFP RSR(レシーバステータスレジスタ)

P.96 図11

図……11 RSR(レシーバステータスレジスタ) $E8801B

図……11 RSR(レシーバステータスレジスタ) $E8802B

1996-05-09

数値演算プロセッサ 68881 が扱うことができるデータのフォーマット

P.108 図4

   ┌┬──────┬────
   ││            │ つねに0    拡張精度実数(X)
   └┴──────┴────

bit 95      91    81 80
   ┌┬┬┬┬───┬────
   │││  │      │ つねに0    パック型式10進(P)
   └┴┴┴┴───┴────

   ┌┬──────┬────
   ││    指数    │ つねに0    拡張精度実数(X)
   └┴──────┴────

bit 95      91    80 79
   ┌┬┬┬┬───┬────
   │││  │ 指数 │ つねに0    パック型式10進(P)
   └┴┴┴┴───┴────

1997-11-17

数値演算プロセッサ オペランド CIR

P.112 図8

+$10│       オペランドCIR(W)    │

+$10│       オペランドCIR(R/W)  │

1997-11-17

数値演算プロセッサ ヌルプリミティブの内容

P.117 図10

条件判断クラブ

条件判断フラグ

(情報源: @moveccr/704853940253257728) 2021-02-28

RTC 周辺ブロック図

P.148 図1

      ┃  │    ┌──→GPIP5       ┃
 ALARM┠─┘          ┗━━━━━━┛
      ┃              ┏━━━━━━┓
CLKOUT┠──────→┃Timer-LEDの ┃

      ┃  │                        ┃
 ALARM┠─┘            ┗━━━━━━┛
      ┃                ┏━━━━━━┓
CLKOUT┠──────→┃Timer-LEDの ┃

2022-02-23

RTC RESET コントローラ

P.154 図9

 bit 7                      4     3         bit 0
┌──┬──┬──┬──┬──┬──┬──┬──┐

 bit 7                4     3               bit 0
┌──┬──┬──┬──┬──┬──┬──┬──┐

1998-11-17

PCG エリア

P.174 「❷・❸ 2 | BG画面用メモリのアドレス配置」 6行目

…1ドットあたり4バイト使用されるため,…

…1ドットあたり4ビット使用されるため,…

2021-08-22

3 画面制御

P.181 「❸・1 | CTRインタフェースの構造」 見出し

❸・1 | CTRインタフェースの構造

❸・1 | CRTインタフェースの構造

1998-12-19

CRTC 動作ポート

P.183 図13

─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┨
                                              │R │0 │F │V ┃
                                              │C │  │C │I ┃
━┷━┷━┷━┷━┷━┷━┷━┛

─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┨
                                              │R │0 │F │V ┃
                                              │C │  │C │I ┃
┗━┷━┷━┷━┷━┷━┷━┷━┷━┷━┷━┷━┷━┷━┷━┷━┛

2021-02-28

P.201 図24

                             bit7                        bit0
─┬─┬─┬─┬─┬─┬─┬─┐
              │RC│0 │FC│VI│
─┴─┴─┴─┴─┴─┴─┴─┘

 bit15                                                   bit0
┌─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┐
              │RC│0 │FC│VI│
└─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┘

2021-02-28

P.203 「1︎⃣ グラフィック画面の高速クリア」 12~13行目

を指示します。CRTC動作ポートは,バイト(8ビット)ポートであることに注意してくださ
い。高速クリア動作が…

を指示します。                                                                 
    高速クリア動作が…

2021-02-28

スプライトコントローラ

P.185 図15

│$EB0004┃ ┃TR│HR│    │ COLOR│   SPAT#  ┃
│       ┃ ┠─┴─┴──┴───┴──┬──┨
│$EB0006┃ ┃                          │ PAW

│$EB0004┃ ┃VR│HR│    │ COLOR│   SPAT#  ┃
│       ┃ ┠─┴─┴──┴───┴──┬──┨
│$EB0006┃ ┃                          │ PRW

1997-05-19

BG スクロールレジスタ(BG コントロール)

P.190 図18

GB1はBGデータエリア0を使用 0  0

BG1はBGデータエリア0を使用 0  0

1997-02-10

スプライトスクロールレジスタ

P.191 図19

+4 │VR│HR│      │  COLOR │            SPAT#               │
   └─┴─┴───┴────┴────────────────┘
                                          
   ┌────────────────────────┬─┬──┐
+6 │                                                │'0│PRW │
   └────────────────────────┴─┴──┘
  /   /              /                /  ┌────────┘│
 /   /              /                /   │  ┌───────┘
                                          0  0  スプライトは表示しない
                                          0  1  BG0│BG1│SP
                                          0  0  BG0│SP│BG1
                                          0  1  SP│BG0│BG1

+4 │VR│HR│      │  COLOR │            SPAT#               │
   └─┴─┴───┴────┴────────────────┘
     /   /              /                /
   ┌────────────────────────┬─┬──┐
+6 │                                                │'0│PRW │
   └────────────────────────┴─┴──┘
  /   /              /                /  ┌────────┘│
 /   /              /                /   │  ┌───────┘
                                          0  0  スプライトは表示しない
                                          0  1  BG0│BG1│SP
                                          1  0  BG0│SP│BG1
                                          1  1  SP│BG0│BG1

※技術資料によると、+6 ビット2の'0'は拡張。

※編注:P.179にも同じ図が掲載されており、そちらは正しい表記となっている。

2023-01-27

画面スクロール

P.194 「❸・❸ | 画面スクロール」 12行目

*1,さらに,

  ,さらに,

※初版第4刷以降では修正済み(第2,3刷は不明)。

2023-11-05

BG スクロールレジスタ

P.199 図23

$EB0800 $EB0804│            │         Y座標        │
               └──────┴──────────┘
               ┌──────┬───────────┐
$EB0802 $EB0806│            │         X座標        │

$EB0800 $EB0804│            │         X座標        │
               └──────┴──────────┘
               ┌──────┬───────────┐
$EB0802 $EB0806│            │         Y座標        │

1997-02-10

テキスト画面のアクセスマスク

P.202 図27

'1'のビット……データが変更される
'0'のビット……データが変更されない

'0'のビット……データが変更される
'1'のビット……データが変更されない

1996-05-09

P.205 「1︎⃣ アクセスマスク」 8~9行目

…データを変更したいビットを'1',変更したくないビ
ットを'0'にしたマスクパターンを書き込んでおき,…

…データを変更したいビットを'0',変更したくないビ
ットを'1'にしたマスクパターンを書き込んでおき,…

1996-05-09

特殊プライオリティ

P.212 「特殊プライオリティ」 9行目~次ページ1行目

…これ以外の方法による領域指定の方法はサポートされて   
ので,…

…これ以外の方法による領域指定の方法はサポートされていない
ので,…

2023-04-11

グラフィックパレット

P.216 図36

$E82000  $00┌───            $E82002  $00┌───
  (         │                    (         │
   )        │                     )        │
$E821FC  $FF└───            $E821FE  $FF└───

$E82002  $00┌───            $E82000  $00┌───
  (         │                    (         │
   )        │                     )        │
$E821FE  $FF└───            $E821FC  $FF└───

1997-01-28

CRTC R03 の設定値の算出法

P.233 図53

         ((水平同期期間)(水平フロントポーチ))×…
〔R03〕= ─────────────────────

         ((水平同期期間)(水平フロントポーチ))×…
〔R03〕= ─────────────────────

1996-05-09

CRTC R20

P.233 図54

                                                 1  0 未定義
                                                 1  1 未定義
                                                 │ │
                                                 │ │   0  0 水平256ドット
                                                 │ │   0  1  〃 512  〃
                                                 │ │   1  0 未定義
                                                 │ │   1  1 水平768ドット
                                                 │ │  │ │
   bit 15             8    9 10                  │ │  │ bit0
  ┌───────┬──┬───┬────┬─┬───┬───┐ 
  │              │ SIZ│  COL │        │HF│  VD  │  HD  │
  └───────┴──┴───┴────┴─┴───┴───┘ 

                                                 1  0 未定義(垂直1024ドット)
                                                 1  1 未定義
                                                 │ │
                                                 │ │   0  0 水平256ドット
                                                 │ │   0  1  〃 512  〃
                                                 │ │   1  0  〃 768  〃
                                                 │ │   1  1 未定義(クロック50MHz)
                                                 │ │  │ │
   bit 15            10    9  8                  │ │  │ bit0
  ┌───────┬──┬───┬────┬─┬───┬───┐
  │              │ SIZ│  COL │        │HF│  VD  │  HD  │
  └───────┴──┴───┴────┴─┴───┴───┘

※HF=1(水平偏向周波数31.5kHz)の時、VD=%10/%11は垂直1024ドット・インタレース。

※X68000 Compact XVI及びX68030では、HD=%11はクロック50MHzモード。

bit 12,11は非公開機能。

2020-02-28

P.233 図54 下部 SIZ・COL の説明2行目

R0(アドレス: E82400H

R0(アドレス:$E82400 

(情報源: @moveccr/759951285030313984) 2021-02-28

768×512ドットモードでの65536色表示(V1.C)

P.250 リスト6   12,16,21行目

12:    short   *vram, *crtcr20, *vcr1, *palette;

16:    vcr1    = (short *)0xe82400;    /* Video Controller R1  */

21:    *vcr1   = 3;

12:    short   *vram, *crtcr20, *vcr0, *palette;

16:    vcr0    = (short *)0xe82400;    /* Video Controller R0  */

21:    *vcr0   = 3;

(情報源: @moveccr/759951978990415873) 2021-02-28

BG画面設定&スクロール(S1.C)

P.253 リスト8   13~14,24~25行目

13:    volatile unsigned short *videor3 = (unsigned short *)0x00e82600;
14:    volatile unsigned short *videor2 = (unsigned short *)0x00e82500;

24:        *videor3 |= 0x40;
25:        *videor2 = (*videor2 & 0xff) | 0x1200;

13:    volatile unsigned short *videor2 = (unsigned short *)0x00e82600;
14:    volatile unsigned short *videor1 = (unsigned short *)0x00e82500;

24:        *videor2 |= 0x40;
25:        *videor1 = (*videor1 & 0xff) | 0x1200;

2021-03-01

OPM ステータスレジスタ

P.267 図6

┬───┬───┐
│1ST(A)1ST(B)│
┴───┴───┘
   │       │ 
   └┐     1:タイマ B オーバフロー発生
     │     0:タイマ B はオーバフローしていない
1:タイマ A オーバフロー発生

┬───┬───┐
│IST(B)IST(A)│
┴───┴───┘
   │       │ 
   └┐     1:タイマ A オーバフロー発生
     │     0:タイマ A はオーバフローしていない
1:タイマ B オーバフロー発生

2021-02-28

OPM タイマ制御レジスタ

P.273 「❷・❻ 6 | タイマ制御レジスタ」 3~7行目

                                                       …,ステータスレジスタの1
STビットを'1'にセットします。
 ビット4,5はステータスレジスタの1STビットをクリアするための制御ビットで,ビット
4がタイマA,ビット5がタイマBの1STビットクリアに使用されます。このビットを'1'に
すると、該当する1STビットがクリアされます。

                                                       …,ステータスレジスタのI
STビットを'1'にセットします。
 ビット4,5はステータスレジスタのISTビットをクリアするための制御ビットで,ビット
4がタイマA,ビット5がタイマBのISTビットクリアに使用されます。このビットを'1'に
すると、該当するISTビットがクリアされます。

2021-02-28

OPM 汎用出力端子

P.292 「❸・2 | ADPCM 関係のレジスタ」 4行目

をOPMの汎用出力端子CT2で行えるようにしています。

をOPMの汎用出力端子CT1で行えるようにしています。

(情報源: X68000 関係資料正誤表) 2021-02-28

P.293 図32

┌────┬─────┬──┬──┬──
│アドレス│READ/WRITE│bit7│ 6  │ 5
┝━━━━┿━━━━━┿━━┿━━┿━━
│$E90003 │     W    │CT2CT1 │
└────┴─────┴──┴──┴──

┌────┬─────┬──┬──┬──
│アドレス│READ/WRITE│bit7│ 6  │ 5
┝━━━━┿━━━━━┿━━┿━━┿━━
│$E90003 │     W    │CT1CT2 │
└────┴─────┴──┴──┴──

(情報源: X68000 関係資料正誤表) 2021-02-28

ADPCM パンポット

P.296 図36

┬───┬───┐
│   PCM PAN    │
┴───┴───┘
    └─┬─┘
     ADPCM 出力制御
       11: 左右ともOFF
       10: のみON
       01: のみON
       00: 左右ともON

┬───┬───┐
│   PCM PAN    │
┴───┴───┘
    └─┬─┘
     ADPCM 出力制御
       11: 左右ともOFF
       10: のみON
       01: のみON
       00: 左右ともON

2023-10-17

キーボード/マウス関連ポート

P.355 図2

┌────┬────┬─
│デバイス│アドレス│
├────┼────┼─
│        │$E80027 │
│        ├────┼─
│        │$E80029 │
│        ├────┼─
│   MFP  │$E8002B │
│        ├────┼─
│        │$E8002D │
│        ├────┼─
│        │$E8002E │
├────┼────┼─

┌────┬────┬─
│デバイス│アドレス│
├────┼────┼─
│        │$E88027 │
│        ├────┼─
│        │$E88029 │
│        ├────┼─
│   MFP  │$E8802B │
│        ├────┼─
│        │$E8802D │
│        ├────┼─
│        │$E8802E │
├────┼────┼─

1996-05-09

キー配列とキーコード

P.358 図6

┌──┬────┬─────┐
│かな│ローマ字│ かな入力 │
└──┴────┴─────┘

┌──┬────┬─────┐
│かな│ローマ字│コード入力│
└──┴────┴─────┘

(情報源: X68000 関係資料正誤表) 2021-02-28

キーボードへの制御コマンド

P.359 図7

├──┼──┼──┼──┼──┼──┼──┼──╂
│ '0'│ '1'│ '0'│ '1'│ '0'│ '1'│  BRIGTH  ┃
├──┼──┼──┼──┼──┼──┼──┼──╂

├──┼──┼──┼──┼──┼──┼──┼──╂
│ '0'│ '1'│ '0'│ '1'│ '0'│ '1'│  BRIGHT  ┃
├──┼──┼──┼──┼──┼──┼──┼──╂

1997-02-22

ディスプレイ制御信号

P.366 図20 ディスプレイへの送出データ

図20(もしくは考え方によっては図19)には、情報が足りていません。 ただしSHARP製テレビのリモコン信号の資料がなく、正しい信号の処理がわからないので参考情報とします。

Kビットの値が'0'か'1'のどちらかであるかを確定させるため、その直後に 「250μsの信号'1'のパルス」を送出する必要があります。

実際にX68000/X68030のROMのIOCS _TVCTRLでは、このパルスを送出するためにKビットの後にデータ'0' があるかのように扱って合計13ビットを処理するコードになっています。

参考リンク: @kani7/1543599638024159233 @kg68k/1543637666096238593

2022-07-18

マウスのステータスデータ

P.368 図22

┬──┬──┐
│SW-L│SW-R│
┴──┴──┘
   │    │
   │    1:スイッチON
   │    0:スイッチOFF
1:スイッチON
0:スイッチOFF

┬──┬──┐
│SW-R│SW-L│
┴──┴──┘
   │    │
   │    1:スイッチON
   │    0:スイッチOFF
1:スイッチON
0:スイッチOFF

1996-05-09

本体内蔵 FDD の仕様

P.390 図2

├─────────────╂
│メ デ ィ ア 回 転 ┃
├─────────────╂

├─────────────╂
│メ デ ィ ア 回 転 ┃
├─────────────╂

(情報源: X68000 関係資料正誤表) 2021-02-28

I/O コントローラ

P.393 ❸・❶4 | 割り込みステータスレジスタ

…,割り込みの要求状態は下位4ビットで読み出すことが…

…,割り込みの要求状態は上位4ビットで読み出すことが…

(情報源: @moveccr/1526183129030852608) 2022-05-17

FDC ステータスレジスタ

P.397 図11

1:FCDからホストへの転送

1:FDCからホストへの転送

(情報源: X68000 関係資料正誤表) 2021-02-28

フロッピーディスクのトラックフォーマット

P.402 図17

               ├───┬───┬─
               │  $4E │  $00 │
MFMフォーマット│ ×$80│ ×2  │
               └───┴───┴─

               ├───┬───┬─
               │  $4E │  $00 │
MFMフォーマット│ ×80 │ ×12 │
               └───┴───┴─

(情報源: @moveccr/1518510814134943744) 2022-04-26

FDC - READ DATA コマンド

P.404 図19

┼──┼──┼──┼──┼──┼──┼──┼──┼───────
│'0' │ MF │'0' │'0' │'0' │'0' │'1' │'0' │             
┼──┼──┼──┼──┼──┼──┼──┼──┼───────

┼──┼──┼──┼──┼──┼──┼──┼──┼───────
│ MT │ MF │ SK │'0' │'0' │'1' │'1' │'0' │ SK:Skip DDAM
┼──┼──┼──┼──┼──┼──┼──┼──┼───────

※初版第4刷以降では修正済み(第2,3刷は不明)。

2021-02-28

FDC - WRITE DELETED DATA コマンド

P.411 図25

┼──┼──┼──┼──┼──┼──┼──┼──┼
│ MT │ MF │ SK │'0' │'0''1''1''0' │
┼──┼──┼──┼──┼──┼──┼──┼──┼

┼──┼──┼──┼──┼──┼──┼──┼──┼
│ MT │ MF │'0' │'0' │'1''0''0''1' │
┼──┼──┼──┼──┼──┼──┼──┼──┼

※初版第2刷ではSKのみ修正済み。

1996-05-09

FDC - READ DIAGNOSTIC コマンド

P.412 図26

┼──┼──┼──┼──┼──┼──┼──┼──┼
│ MT │ MF │'0' │'0' │'1' │'0' │'0''1' │
┼──┼──┼──┼──┼──┼──┼──┼──┼

┼──┼──┼──┼──┼──┼──┼──┼──┼
│'0' │ MF │'0' │'0' │'0' │'0' │'1''0' │
┼──┼──┼──┼──┼──┼──┼──┼──┼

※初版第2刷ではMTのみ修正済み。

※初版第4刷以降では修正済み(第3刷は不明)。

1996-05-09

FDC - SENSE INTERRUPT STATUS コマンド

P.417 図32

├────╂
│E-PHASE ┃
└────┸

├────╂
│R-PHASE ┃
└────┸

(情報源: X68000 関係資料正誤表) 2021-02-28

FDC - RESET STANDBY コマンド

P.420 「❺・15 | RESTE STANDBY コマンド」 見出し

❺・15 | RESTE STANDBY コマンド

❺・15 | RESET STANDBY コマンド

1998-12-19

SCSI-ROM 識別ラベル

P.466 「❷・1 | SCSI関連ポート,割り込み」 5行目

5バイトに'SCSIIN'という文字列が、CZ-6BS1では$EA0044からの5バイトに…

6バイトに'SCSIIN'という文字列が、CZ-6BS1では$EA0044からの6バイトに…

1997-05-04

SCSI 同期データ転送要求メッセージ / EXTENDED IDENTIFY メッセージ

P.507 図44、図45

図44と図45が入れ替わっている。

(情報源: X680x0の部屋&似非プログラミング講座) 2021-04-17

SCSIディスクからの指定ブロック読み出し

P.515 リスト1   5行目

5:    dma->cpr = 0x08;

5:    dma->cpr = 0x03;

2021-04-11