;******************************************************************************
;***            T6963C CONTROLLER
;******************************************************************************
                .SYMBOLS
;******************************************************************************
;          DEFINE  OUTPUT PORORT
;******************************************************************************
CD              REG     P3.0
FS              REG     P3.1
MD2             REG     P3.2
RESET           REG     P3.3
CE              REG     P3.4
WR              REG     P3.6
RD              REG     P3.7
STP             REG     P2.0
S_S             REG     P2.1

BCD             EQU     01H
HIGH_8BIT       EQU     7FH
LOW_8BIT        EQU     7EH
CHAR_START      EQU     7DH

MaxColumn       EQU     128
MaxRow          EQU     128

;-------------------------------------------------------------------*
                ORG     0H
                LJMP    START
                ORG     50H
START:
                CLR     RESET                   ;Reset siganl on
                NOP
                SETB    RESET                   ;Reset signal off
                SETB    MD2                     ;Set Max Column*8
                CLR     FS                      ;Set 8*8 Font
INITIAL:
                                                ;Text home address
                MOV     LOW_8BIT,#00H           ;Set text address Low bit
                MOV     HIGH_8BIT,#00H          ;Set text address Hihg bit
                LCALL   WRITE_DATA2             ;Write text home address=0000H
                MOV     A,#40H                  ;Text home address control set
                LCALL   WRITE_COMMAND
                                                ;Graphic home address
                MOV     LOW_8BIT,#00H           ;Set graphic address Low bit
                MOV     HIGH_8BIT,#40H          ;Set graphic address Hihg bit
                LCALL   WRITE_DATA2             ;Write graphic home address=4000H
                MOV     A,#42H                  ;Graphic home address control set
                LCALL   WRITE_COMMAND
                                                ;Text area column set
                MOV     LOW_8BIT,#MaxColumn/8   ;Set Low bit= MaxColumn/8
                MOV     HIGH_8BIT,#00H          ;Set Hihg bit
                LCALL   WRITE_DATA2             ;Write text area address=001FH
                MOV     A,#41H                  ;Text area control set
                LCALL   WRITE_COMMAND
                                                ;Graphics area column set
                MOV     LOW_8BIT,#MaxColumn/8   ;Set Low bit= MaxColumn/8
                MOV     HIGH_8BIT,#00H          ;Set Hihg bit
                LCALL   WRITE_DATA2             ;Write graphic area address=001FH
                MOV     A,#43H                  ;Graphic area control set
                LCALL   WRITE_COMMAND
                                                ;Mode set
                MOV     A,#80H
                LCALL   WRITE_COMMAND           ;set display mode
                                                ;Display mode set (Graphic only enable)
                MOV     A,#98H
                LCALL   WRITE_COMMAND           ;Graphic display enable

;*****************************************************************************
;               FULL ON
;*****************************************************************************
FULLON:
                MOV     LOW_8BIT,#00H           ;Set graphic address Low bit
                MOV     HIGH_8BIT,#40H          ;Set graphic address Hihg bit
                LCALL   WRITE_DATA2             ;Write graphic home address=4000H
                MOV     A,#24H                  ;Set address pointer
                LCALL   WRITE_COMMAND           ;Write to external RAM from 4000H

                MOV     A,#B0H                  ;Set auto write
                LCALL   WRITE_COMMAND

                MOV     R4,#MaxRow              ;Row loop count = 64 LINE
FLLOOP1:
                MOV     R5,#MaxColumn/8         ;Col loop count = 128/8
FLLOOP2:
                MOV     A,#FFH                  ;Set full dot on
                LCALL   WRITE_DATA              ;Auto data write
                DJNZ    R5,FLLOOP2
                DJNZ    R4,FLLOOP1

                MOV     A,#B2H
                LCALL   WRITE_COMMAND           ;Auto-write mode reset

                LCALL   DELAY                   ;Wait
                CALL    STP_SC
                SJMP    SHOWM                   ;Continue to test
;*****************************************************************************
;               SHOW MODEL NUMBER
;*****************************************************************************
SHOWM:
                MOV     LOW_8BIT,#00H           ;Set graphic address Low bit
                MOV     HIGH_8BIT,#40H          ;Set graphic address Hihg bit
                LCALL   WRITE_DATA2             ;Write graphic home address=4000H
                MOV     A,#24H                  ;Set address pointer
                LCALL   WRITE_COMMAND           ;Write to external RAM from 4000H

                MOV     A,#B0H                  ;Set auto write
                LCALL   WRITE_COMMAND

                MOV     DPTR,#SHOW_FIX
                MOV     R4,#MaxRow              ;Row loop count = 64
SMLOOP1:
                MOV     R5,#MaxColumn/8         ;Col loop count = 240/8
SMLOOP2:
                CLR     A
                MOVC    A,@A+DPTR
                LCALL   WRITE_DATA              ;Auto data write
                INC     DPTR
                DJNZ    R5,SMLOOP2
                DJNZ    R4,SMLOOP1

                MOV     A,#B2H
                LCALL   WRITE_COMMAND           ;Auto-write mode reset

                LCALL   DELAY                   ;Wait
                CALL    STP_SC
                SJMP    VLINE
;*****************************************************************************
;               VERTIAL LINE
;*****************************************************************************
VLINE:
                MOV     LOW_8BIT,#00H           ;Set graphic address Low bit
                MOV     HIGH_8BIT,#40H          ;Set graphic address Hihg bit
                LCALL   WRITE_DATA2             ;Write graphic home address=4000H
                MOV     A,#24H                  ;Set address pointer
                LCALL   WRITE_COMMAND           ;Write to external RAM from 4000H

                MOV     A,#B0H                  ;Set auto write
                LCALL   WRITE_COMMAND

                MOV     R4,#MaxRow              ;Row loop count = 64
VLLOOP1:
                MOV     R5,#MaxColumn/8         ;Col loop count = 240/8
VLLOOP2:
                MOV     A,#AAH
                LCALL   WRITE_DATA              ;Auto data write
                DJNZ    R5,VLLOOP2
                DJNZ    R4,VLLOOP1

                MOV     A,#B2H
                LCALL   WRITE_COMMAND           ;Auto-write mode reset

                LCALL   DELAY                   ;Wait
                CALL    STP_SC
                SJMP    HLINE
;*****************************************************************************
;               HORIZONTAL LINE
;*****************************************************************************
HLINE:
                MOV     LOW_8BIT,#00H           ;Set graphic address Low bit
                MOV     HIGH_8BIT,#40H          ;Set graphic address Hihg bit
                LCALL   WRITE_DATA2             ;Write graphic home address=4000H
                MOV     A,#24H                  ;Set address pointer
                LCALL   WRITE_COMMAND           ;Write to external RAM from 4000H

                MOV     A,#B0H                  ;Set auto write
                LCALL   WRITE_COMMAND

                MOV     R4,#MaxRow/2            ;Row loop count = 32
HLLOOP1:
                MOV     R5,#MaxColumn/8         ;Col loop count = 240/8
HLLOOP2:
                MOV     A,#FFH
                LCALL   WRITE_DATA              ;Auto data write
                DJNZ    R5,HLLOOP2

                MOV     R5,#MaxColumn/8         ;Col loop count = 240/8
HLLOOP3:
                MOV     A,#00H
                LCALL   WRITE_DATA              ;Auto data write
                DJNZ    R5,HLLOOP3

                DJNZ    R4,HLLOOP1

                MOV     A,#B2H
                LCALL   WRITE_COMMAND           ;Auto-write mode reset

                LCALL   DELAY                   ;Wait
                CALL    STP_SC
                SJMP    CROSS_DOT
;*****************************************************************************
;               CROSS DOT
;*****************************************************************************
CROSS_DOT:
                MOV     LOW_8BIT,#00H           ;Set graphic address Low bit
                MOV     HIGH_8BIT,#40H          ;Set graphic address Hihg bit
                LCALL   WRITE_DATA2             ;Write graphic home address=4000H
                MOV     A,#24H                  ;Set address pointer
                LCALL   WRITE_COMMAND           ;Write to external RAM from 4000H

                MOV     A,#B0H                  ;Set auto write
                LCALL   WRITE_COMMAND

                MOV     R4,#MaxRow/2            ;Row loop count = 32
CDLOOP1:
                MOV     R5,#MaxColumn/8         ;Col loop count = 240/8
CDLOOP2:
                MOV     A,#AAH
                LCALL   WRITE_DATA              ;Auto data write
                DJNZ    R5,CDLOOP2

                MOV     R5,#MaxColumn/8         ;Col loop count = 240/8
CDLOOP3:
                MOV     A,#55H
                LCALL   WRITE_DATA              ;Auto data write
                DJNZ    R5,CDLOOP3

                DJNZ    R4,CDLOOP1

                MOV     A,#B2H
                LCALL   WRITE_COMMAND           ;Auto-write mode reset

                LCALL   DELAY                   ;Wait
                CALL    STP_SC
                SJMP    SHOWCHAR                ;Continue to test
;*****************************************************************************
;               8*8 Character pattern test (Text)
;*****************************************************************************
SHOWCHAR:
                MOV     A,#94H
                LCALL   WRITE_COMMAND          ;Text display only

                MOV     LOW_8BIT,#00H          ;Set text address Low bit
                MOV     HIGH_8BIT,#00H         ;Set text address Hihg bit
                LCALL   WRITE_DATA2            ;Write text home address=0000H
                MOV     A,#24H                 ;Address pointer set
                LCALL   WRITE_COMMAND          ;Set address pinter = Text home

                MOV     A,#B0H
                LCALL   WRITE_COMMAND          ;Set auto-write mode on
                MOV     R3,#2
SCLOOP3:
                MOV     CHAR_START,#00H        ;Display from 00
                MOV     R4,#MaxRow/16          ;Row loop count = 4
SCLOOP1:
                MOV     R5,#MaxColumn/8        ;Col loop count = 30
SCLOOP2:
                MOV     A,CHAR_START
                LCALL   WRITE_DATA             ;Auto data write
                INC     CHAR_START
                DJNZ    R5,SCLOOP2
                DJNZ    R4,SCLOOP1
                DJNZ    R3,SCLOOP3

                MOV     A,#B2H
                LCALL   WRITE_COMMAND          ;Auto-write mode reset

                LCALL   DELAY                  ;Wait
                CALL    STP_SC

                LJMP    START                  ;Continue test
;*****************************************************************************
;               Subroutine
;*****************************************************************************
S_DATA_WRITE:
                LCALL   WRITE_DATA2             ;Write graphic home address
                MOV     A,#24H                  ;Set address pointer
                LCALL   WRITE_COMMAND           ;Write to external RAM from

                CLR     A
                MOVC    A,@A+DPTR
                LCALL   WRITE_DATA              ;Data write

                MOV     A,#C4H                  ;Data write & inc ADP
                LCALL   WRITE_COMMAND

                RET
;*****************************************************************************
WRITE_DATA2:
                MOV     A,LOW_8BIT
                CALL    WRITE_DATA              ;Write first data

                MOV     A,HIGH_8BIT
                CALL    WRITE_DATA              ;Write second data

                RET

;*****************************************************************************
;       DELAY
;*****************************************************************************
DELAY:
                CALL       CBCD
                MOV        R4,BCD
LOPC:
                MOV        R5,#2FH
LOPB:
                MOV        R6,#0FFH
LOPA:
                DJNZ       R6,LOPA
                DJNZ       R5,LOPB
                DJNZ       R4,LOPC
                RET
;*****************************************************************************
WRITE_COMMAND:
                SETB       CD
                CLR        CE
                CLR        WR
                MOV        P1,A
                SETB       CE
                SETB       WR
                RET
;*****************************************************************************
WRITE_DATA:
                CLR        CD
                CLR        CE
                CLR        WR
                MOV        P1,A
                SETB       CE
                SETB       WR
                RET
;*****************************************************************************
READ_STATUS:
                SETB       CD
                CLR        CE
                CLR        RD
                MOV        P1,A
                SETB       CE
                SETB       WR
                RET
;*****************************************************************************
READ_DATA:
                CLR        CD
                CLR        CE
                CLR        RD
                MOV        P1,A
                SETB       CE
                SETB       RD
                RET
;*****************************************************************************
;       Procedure of step by step   and  scan
;*****************************************************************************
STP_SC:
                MOV        C,S_S
                JC         STEP
                RET

STEP:           MOV        C,STP
                MOV        R5,#0FH
LOPE:           MOV        R6,#0FFH
LOPH:           DJNZ       R6,LOPH
                DJNZ       R5,LOPE
                JNB        S_S,LOUT
                JNC        STEP
LOUT:
                RET
;*****************************************************************************
;       BCD DELAY TIME SELECT
;*****************************************************************************
CBCD:
                PUSH       A
                MOV        A,P0
                ANL        A,#0FH
                RL         A
                RL         A
                MOV        BCD,A
                POP        A
                RET

;*****************************************************************************
;       SHOW DISPLAY DATA AREA
;*****************************************************************************
SHOW_FIX:
          DB      0FFh,0FFh,0FFh,0FFh,0FFh,0FFh,0FFh,0FFh
          DB      0FFh,0FFh,0FFh,0FFh,0FFh,0FFh,0FFh,0FFh
          DB      088h,042h,010h,084h,021h,008h,042h,010h
          DB      084h,021h,008h,042h,010h,084h,021h,009h
          DB      080h,040h,010h,004h,001h,000h,040h,010h
          DB      004h,001h,000h,040h,010h,004h,001h,001h
          DB      080h,040h,010h,004h,001h,000h,040h,010h
          DB      004h,001h,000h,040h,010h,004h,001h,001h
          DB      0C0h,000h,000h,000h,000h,000h,000h,000h
          DB      000h,000h,000h,000h,000h,000h,000h,001h
          DB      080h,000h,000h,000h,000h,000h,000h,000h
          DB      000h,000h,000h,000h,000h,000h,000h,001h
          DB      082h,0AAh,0AAh,0AAh,0AAh,0A0h,000h,0AAh
          DB      0AAh,0AAh,0AAh,0A8h,000h,00Ah,0AAh,0ABh
          DB      081h,055h,055h,055h,055h,043h,0B8h,055h
          DB      055h,055h,055h,050h,0BBh,085h,055h,055h
          DB      082h,0AAh,0AAh,0AAh,0AAh,0A2h,028h,0AAh
          DB      0AAh,0AAh,0AAh,0A8h,0AAh,08Ah,0AAh,0ABh
          DB      0F1h,055h,055h,055h,055h,043h,0A8h,055h
          DB      055h,055h,055h,050h,0AAh,085h,055h,055h
          DB      082h,0AAh,0AAh,0AAh,0AAh,0A0h,0A8h,0AAh
          DB      0AAh,0AAh,0AAh,0A8h,0AAh,08Ah,0AAh,0ABh
          DB      081h,055h,055h,055h,055h,043h,0B8h,055h
          DB      055h,055h,055h,050h,0BBh,085h,055h,055h
          DB      082h,0AAh,0AAh,0AAh,0AAh,0A0h,000h,0AAh
          DB      0AAh,0AAh,0AAh,0A8h,000h,00Ah,0AAh,0ABh
          DB      081h,055h,055h,055h,055h,040h,000h,055h
          DB      055h,055h,055h,050h,000h,005h,055h,055h
          DB      0C2h,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh
          DB      0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0ABh
          DB      081h,055h,055h,055h,055h,055h,055h,055h
          DB      055h,055h,055h,055h,055h,055h,055h,055h
          DB      082h,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh
          DB      0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0ABh
          DB      081h,055h,055h,055h,055h,055h,055h,055h
          DB      055h,055h,055h,055h,055h,055h,055h,055h
          DB      082h,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh
          DB      0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0ABh
          DB      0F1h,055h,055h,055h,055h,055h,055h,055h
          DB      055h,055h,055h,055h,055h,055h,055h,055h
          DB      082h,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh
          DB      0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0ABh
          DB      081h,055h,055h,055h,055h,055h,055h,055h
          DB      055h,055h,055h,055h,055h,055h,055h,055h
          DB      082h,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh
          DB      0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0ABh
          DB      081h,055h,055h,055h,055h,055h,055h,055h
          DB      055h,055h,055h,055h,055h,055h,055h,055h
          DB      0C2h,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh
          DB      0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0ABh
          DB      081h,055h,055h,055h,055h,055h,055h,055h
          DB      055h,055h,055h,055h,055h,055h,055h,055h
          DB      082h,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh
          DB      0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0ABh
          DB      081h,055h,055h,055h,055h,055h,055h,055h
          DB      055h,055h,055h,055h,055h,055h,055h,055h
          DB      082h,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh
          DB      0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0ABh
          DB      0F1h,055h,055h,055h,055h,055h,055h,055h
          DB      055h,055h,055h,055h,055h,055h,055h,055h
          DB      082h,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh
          DB      0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0ABh
          DB      081h,055h,055h,055h,055h,055h,055h,055h
          DB      055h,055h,055h,055h,055h,055h,055h,055h
          DB      082h,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh
          DB      0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0ABh
          DB      081h,055h,055h,055h,055h,055h,055h,055h
          DB      055h,055h,055h,055h,055h,055h,055h,055h
          DB      0C2h,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh
          DB      0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0ABh
          DB      081h,055h,055h,055h,055h,055h,055h,055h
          DB      055h,055h,055h,055h,055h,055h,055h,055h
          DB      082h,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh
          DB      0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0ABh
          DB      081h,055h,055h,055h,055h,055h,055h,055h
          DB      055h,055h,055h,055h,055h,055h,055h,055h
          DB      082h,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh
          DB      0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0ABh
          DB      0F1h,055h,055h,055h,055h,055h,055h,055h
          DB      055h,055h,055h,055h,055h,055h,055h,055h
          DB      082h,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh
          DB      0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0ABh
          DB      081h,055h,055h,055h,055h,055h,055h,055h
          DB      055h,055h,055h,055h,055h,055h,055h,055h
          DB      082h,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh
          DB      0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0ABh
          DB      081h,055h,055h,055h,055h,055h,055h,055h
          DB      055h,055h,055h,055h,055h,055h,055h,055h
          DB      0C2h,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh
          DB      0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0ABh
          DB      080h,000h,005h,055h,055h,055h,055h,055h
          DB      055h,055h,055h,055h,055h,055h,055h,055h
          DB      080h,000h,00Ah,0AAh,0AAh,0AAh,0AAh,0AAh
          DB      0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0ABh
          DB      080h,01Dh,0C5h,055h,055h,055h,055h,055h
          DB      055h,055h,055h,055h,055h,055h,055h,055h
          DB      080h,011h,04Ah,0AAh,0AAh,0AAh,0AAh,0AAh
          DB      0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0ABh
          DB      0F0h,01Dh,045h,055h,055h,055h,055h,055h
          DB      055h,055h,055h,055h,055h,055h,055h,055h
          DB      080h,005h,04Ah,0AAh,0AAh,0AAh,0AAh,0AAh
          DB      0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0ABh
          DB      080h,01Dh,0C5h,055h,055h,055h,055h,055h
          DB      055h,055h,055h,055h,055h,055h,055h,055h
          DB      080h,000h,00Ah,0AAh,0AAh,0AAh,0AAh,0AAh
          DB      0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0ABh
          DB      080h,000h,005h,055h,055h,055h,055h,055h
          DB      055h,055h,055h,055h,055h,055h,055h,055h
          DB      0C2h,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh
          DB      0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0ABh
          DB      081h,055h,055h,055h,055h,055h,055h,055h
          DB      055h,055h,055h,055h,055h,055h,055h,055h
          DB      082h,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh
          DB      0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0ABh
          DB      081h,055h,055h,055h,055h,055h,055h,055h
          DB      055h,055h,055h,055h,055h,055h,055h,055h
          DB      082h,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh
          DB      0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0ABh
          DB      0F1h,055h,055h,055h,055h,055h,055h,055h
          DB      055h,055h,055h,055h,055h,055h,055h,055h
          DB      082h,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh
          DB      0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0ABh
          DB      081h,055h,055h,055h,055h,055h,055h,055h
          DB      055h,055h,055h,055h,055h,055h,055h,055h
          DB      082h,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh
          DB      0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0ABh
          DB      081h,055h,055h,055h,055h,055h,055h,055h
          DB      055h,055h,055h,055h,055h,055h,055h,055h
          DB      0C2h,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh
          DB      0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0ABh
          DB      081h,055h,055h,055h,055h,055h,055h,055h
          DB      055h,055h,055h,055h,055h,055h,055h,055h
          DB      082h,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh
          DB      0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0ABh
          DB      081h,055h,055h,055h,055h,055h,055h,055h
          DB      055h,055h,055h,055h,055h,055h,055h,055h
          DB      082h,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh
          DB      0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0ABh
          DB      0F1h,055h,055h,055h,055h,055h,055h,055h
          DB      055h,055h,055h,055h,055h,055h,055h,055h
          DB      082h,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh
          DB      0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0ABh
          DB      081h,055h,055h,055h,055h,055h,055h,055h
          DB      055h,055h,055h,055h,055h,055h,055h,055h
          DB      082h,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh
          DB      0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0ABh
          DB      081h,055h,055h,055h,055h,055h,055h,055h
          DB      055h,055h,055h,055h,055h,055h,055h,055h
          DB      0C2h,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh
          DB      0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0ABh
          DB      081h,055h,055h,055h,055h,055h,055h,055h
          DB      055h,055h,055h,055h,055h,055h,055h,055h
          DB      082h,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh
          DB      0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0ABh
          DB      081h,055h,055h,055h,055h,055h,055h,055h
          DB      055h,055h,055h,055h,055h,055h,055h,055h
          DB      082h,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh
          DB      0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0ABh
          DB      0F1h,055h,055h,055h,055h,055h,055h,055h
          DB      055h,055h,055h,055h,055h,055h,055h,055h
          DB      082h,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh
          DB      0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0ABh
          DB      081h,055h,055h,055h,055h,055h,055h,055h
          DB      055h,055h,055h,055h,055h,055h,055h,055h
          DB      082h,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh
          DB      0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0ABh
          DB      081h,055h,055h,055h,055h,055h,055h,055h
          DB      055h,055h,055h,055h,055h,055h,055h,055h
          DB      0C2h,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh
          DB      0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0ABh
          DB      081h,055h,055h,055h,055h,055h,055h,055h
          DB      055h,055h,055h,055h,055h,055h,055h,055h
          DB      082h,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh
          DB      0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0ABh
          DB      081h,055h,055h,055h,055h,055h,055h,055h
          DB      055h,055h,055h,055h,055h,055h,055h,055h
          DB      082h,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh
          DB      0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0ABh
          DB      0F1h,055h,055h,055h,055h,055h,055h,055h
          DB      055h,055h,055h,055h,055h,055h,055h,055h
          DB      082h,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh
          DB      0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0ABh
          DB      081h,055h,055h,055h,055h,055h,055h,055h
          DB      055h,055h,055h,055h,055h,055h,055h,055h
          DB      082h,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh
          DB      0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0ABh
          DB      081h,055h,055h,055h,055h,055h,055h,055h
          DB      055h,055h,055h,055h,055h,055h,055h,055h
          DB      0C2h,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh
          DB      0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0ABh
          DB      080h,000h,005h,055h,055h,055h,055h,055h
          DB      055h,055h,055h,055h,055h,055h,055h,055h
          DB      080h,000h,00Ah,0AAh,0AAh,0AAh,0AAh,0AAh
          DB      0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0ABh
          DB      080h,05Dh,0C5h,055h,055h,055h,055h,055h
          DB      055h,055h,055h,055h,055h,055h,055h,055h
          DB      080h,055h,04Ah,0AAh,0AAh,0AAh,0AAh,0AAh
          DB      0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0ABh
          DB      0F0h,055h,045h,055h,055h,055h,055h,055h
          DB      055h,055h,055h,055h,055h,055h,055h,055h
          DB      080h,055h,04Ah,0AAh,0AAh,0AAh,0AAh,0AAh
          DB      0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0ABh
          DB      080h,05Dh,0C5h,055h,055h,055h,055h,055h
          DB      055h,055h,055h,055h,055h,055h,055h,055h
          DB      080h,000h,00Ah,0AAh,0AAh,0AAh,0AAh,0AAh
          DB      0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0ABh
          DB      080h,000h,005h,055h,055h,055h,055h,055h
          DB      055h,055h,055h,055h,055h,055h,055h,055h
          DB      0C2h,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh
          DB      0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0ABh
          DB      081h,055h,055h,055h,055h,055h,055h,055h
          DB      055h,055h,055h,055h,055h,055h,055h,055h
          DB      082h,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh
          DB      0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0ABh
          DB      081h,055h,055h,055h,055h,055h,055h,055h
          DB      055h,055h,055h,055h,055h,055h,055h,055h
          DB      082h,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh
          DB      0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0ABh
          DB      0F1h,055h,055h,055h,055h,055h,055h,055h
          DB      055h,055h,055h,055h,055h,055h,055h,055h
          DB      082h,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh
          DB      0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0ABh
          DB      081h,055h,055h,055h,055h,055h,055h,055h
          DB      055h,055h,055h,055h,055h,055h,055h,055h
          DB      082h,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh
          DB      0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0ABh
          DB      081h,055h,055h,055h,055h,055h,055h,055h
          DB      055h,055h,055h,055h,055h,055h,055h,055h
          DB      0C2h,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh
          DB      0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0ABh
          DB      081h,055h,055h,055h,055h,055h,055h,055h
          DB      055h,055h,055h,055h,055h,055h,055h,055h
          DB      082h,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh
          DB      0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0ABh
          DB      081h,055h,055h,055h,055h,055h,055h,055h
          DB      055h,055h,055h,055h,055h,055h,055h,055h
          DB      082h,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh
          DB      0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0ABh
          DB      0F1h,055h,055h,055h,055h,055h,055h,055h
          DB      055h,055h,055h,055h,055h,055h,055h,055h
          DB      082h,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh
          DB      0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0ABh
          DB      081h,055h,055h,055h,055h,055h,055h,055h
          DB      055h,055h,055h,055h,055h,055h,055h,055h
          DB      082h,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh
          DB      0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0ABh
          DB      081h,055h,055h,055h,055h,055h,055h,055h
          DB      055h,055h,055h,055h,055h,055h,055h,055h
          DB      0C2h,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh
          DB      0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0ABh
          DB      081h,055h,055h,055h,055h,055h,055h,055h
          DB      055h,055h,055h,055h,055h,055h,055h,055h
          DB      082h,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh
          DB      0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0ABh
          DB      0FFh,0FFh,0FFh,0FFh,0FFh,0FFh,0FFh,0FFh
          DB      0FFh,0FFh,0FFh,0FFh,0FFh,0FFh,0FFh,0FFh

        END
