最終更新:ID:InM6Emp9CA 2015年01月23日(金) 20:45:13履歴
アドレス | 名称 | データビット | R/W | |||||||
---|---|---|---|---|---|---|---|---|---|---|
FF75 | KADR-H | KA11 | KA10 | KA9 | KA8 | KA7 | KA6 | KA5 | KA4 | W |
KLEFT | LD7 | LD6 | LD5 | LD4 | LD3 | LD2 | LD1 | LD0 | R | |
FF76 | KADR-L | KA15 | KA14 | KA13 | KA12 | KA3 | KA2 | KA1 | KA0 | W |
KRIGHT | RD7 | RD6 | RD5 | RD4 | RD3 | RD2 | RD1 | RD0 | R |
- KADR-H($FF75)およびKADR-L($FF76)レジスタ
漢字コード(2バイト)を指定します。
■ご注意 指定する漢字コードはJIS漢字コードとは異なります。
詳しくは3.に示すプログラムをご覧下さい。
KADR-Hレジスタ…上位バイト
KADR-Lレジスタ…下位バイト - KLEFT($FF75)およびKRIGHT($FF76)レジスタ
漢字フォントを読み出すためのレジスタです。
KLEFTレジスタ…漢字フォントの左半分
KRIGHTレジスタ…漢字フォントの右半分 - 漢字フォントの読み出し方法
漢字フォントの読み出しプログラムを以下に示します。
プログラム例
JIS漢字コード(「BASICマニュアル?」参照)をインデックスレジスタX(IX)に格納し、以下のサブルーチン「KANJRD」により、KANBUF以下の32バイトに1文字分の漢字フォントを読み出し格納します。
KADR-H EQU $FF75 KLEFT EQU KADR-H KANJRD LDA #16 STA ROWCTR,PCR LEAU KANBUF,PCR OUTADR TFR X,D CMPA #$30 BHS OUTAD1 CMPA #$28 BHS OUTADO1 CMPA #$60 BHS OUTADO2 CMPA #$40 BHS OUTAD2 OUTAD BSR SUB BRA OUTAD8 OUTADO1 LDX #$3020 BRA OUTADR OUTADO2 ORA #$08 ANDB #$BF BRA OUTAD8 OUTAD2 BSR SUB ORB #$20 BRA OUTAD8 OUTAD1 CMPA #$40 BHS OUTAD3 CMPB #$40 BHS OUTAD4 BSR SUB ORA #$40 BRA OUTAD8 OUTAD4 CMPB #$60 BHS OUTAD5 BSR SUB ORB #$60 BRA OUTAD8 OUTAD5 BSR SUB ORB #$80 BRA OUTAD8 OUTAD3 CMPB #$40 BHS OUTAD6 BSR SUB ORB #$A0 BRA OUTAD8 OUTAD6 CMPB #$60 BHS OUTAD7 BSR SUB ORB #$C0 BRA OUTAD8 OUTAD7 BSR SUB ORB #$E0 OUTAD8 STD KADR-H TFR D,X LDD KLEFT STD 0,U++ DEC ROWCTR,PCR BEQ OUTAD9 TFR X,D INCB BRA OUTAD8 OUTAD9 RTS SUB LSLB LSLB LSLB LSLB ROLA LSLB ROLA LSLB ROLA LSLB ROLA LSLB ROLA RORB RORB RORB RORB ANDB #$10 RTS ROWCTR RMB 1 KANBUF RMB 32
コメントをかく