;****************************************************************************** ; LC7981 CONTROLLER ;****************************************************************************** .SYMBOLS ;****************************************************************************** ; DEFINE OUTPUT PORORT ;****************************************************************************** RS REG P3.0 CS REG P3.1 RES REG P3.2 E REG P3.4 R_W REG P3.7 STP REG P2.0 S_S REG P2.1 BCD EQU 01H COMM_REG EQU 7FH DATA_REG EQU 7EH CHAR_START EQU 7DH SP_DATA EQU 7CH TMP_DATA EQU 7BH MaxColumn EQU 240 MaxRow EQU 64 MaxColumn_1 EQU 239 MaxRow_1 EQU 63 ;-------------------------------------------------------------------* ORG 0H LJMP START ORG 50H START: CLR RES ;Reset siganl on SETB RES ;Reset signal off INITIAL: MOV COMM_REG,#00H ;Command code--Mode control MOV DATA_REG,#32H ;Set 00110010 LCALL CP_COMMAND ;Command complete MOV COMM_REG,#01H ;Character pitch setting MOV DATA_REG,#77H ;Set 10010111 LCALL CP_COMMAND ;Command complete MOV COMM_REG,#02H ;Character number setting MOV DATA_REG,#29 ;240/8=30 Char in one line LCALL CP_COMMAND ;Command complete MOV COMM_REG,#03H ;Display duty setting MOV DATA_REG,#MaxRow_1 ;Set 1/160 duty LCALL CP_COMMAND ;Command complete MOV COMM_REG,#08H ;Display low address setting MOV DATA_REG,#00H ;Low address start from 00H LCALL CP_COMMAND ;Command complete MOV COMM_REG,#09H ;Display high address setting MOV DATA_REG,#00H ;High address start from 00 LCALL CP_COMMAND ;Command complete ;***************************************************************************** ; FULL ON ;***************************************************************************** FULLON: MOV COMM_REG,#0AH ;Cursor low address setting MOV DATA_REG,#00H ;Low address start from 00H LCALL CP_COMMAND ;Command complete MOV COMM_REG,#0BH ;Cursor high address setting MOV DATA_REG,#00H ;High address start from 00 LCALL CP_COMMAND ;Command complete MOV R4,#MaxRow ;Row loop count FLLOOP1: MOV R5,#MaxColumn/8 ;Col loop count FLLOOP2: MOV COMM_REG,#0CH ;Write data command MOV DATA_REG,#FFH ;Set full dot on LCALL CP_COMMAND ;Command complete DJNZ R5,FLLOOP2 DJNZ R4,FLLOOP1 LCALL DELAY ;Wait CALL STP_SC SJMP SHOWM ;***************************************************************************** ; SHOW MODEL NUMBER ;***************************************************************************** SHOWM: MOV COMM_REG,#0AH ;Cursor low address setting MOV DATA_REG,#00H ;Low address start from 00H LCALL CP_COMMAND ;Command complete MOV COMM_REG,#0BH ;Cursor high address setting MOV DATA_REG,#00H ;High address start from 00 LCALL CP_COMMAND ;Command complete MOV DPTR,#SHOW_WG MOV R4,#MaxRow ;Row loop count SMLOOP1: MOV R5,#MaxColumn/8 ;Col loop count SMLOOP2: MOV A,#00H MOVC A,@A+DPTR LCALL SWAP_DATA MOV COMM_REG,#0CH ;Write data command MOV DATA_REG,TMP_DATA ;Set full dot on LCALL CP_COMMAND ;Command complete INC DPTR DJNZ R5,SMLOOP2 DJNZ R4,SMLOOP1 LCALL DELAY ;Wait CALL STP_SC SJMP VLINE ;***************************************************************************** ; VERTICAL LINE ;***************************************************************************** VLINE: MOV COMM_REG,#0AH ;Cursor low address setting MOV DATA_REG,#00H ;Low address start from 00H LCALL CP_COMMAND ;Command complete MOV COMM_REG,#0BH ;Cursor high address setting MOV DATA_REG,#00H ;High address start from 00 LCALL CP_COMMAND ;Command complete MOV R4,#MaxRow ;Row loop count VLLOOP1: MOV R5,#MaxColumn/8 ;Col loop count VLLOOP2: MOV COMM_REG,#0CH ;Write data command MOV DATA_REG,#55H ;Set full dot on LCALL CP_COMMAND ;Command complete DJNZ R5,VLLOOP2 DJNZ R4,VLLOOP1 LCALL DELAY ;Wait CALL STP_SC SJMP HLINE ;***************************************************************************** ; HORIZONTAL LINE ;***************************************************************************** HLINE: MOV COMM_REG,#0AH ;Cursor low address setting MOV DATA_REG,#00H ;Low address start from 00H LCALL CP_COMMAND ;Command complete MOV COMM_REG,#0BH ;Cursor high address setting MOV DATA_REG,#00H ;High address start from 00 LCALL CP_COMMAND ;Command complete MOV R4,#MaxRow/2 ;Row loop count HLLOOP1: MOV R5,#MaxColumn/8 ;Col loop count HLLOOP2: MOV COMM_REG,#0CH ;Write data command MOV DATA_REG,#FFH LCALL CP_COMMAND ;Command complete DJNZ R5,HLLOOP2 MOV R5,#MaxColumn/8 ;Col loop count HLLOOP3: MOV COMM_REG,#0CH ;Write data command MOV DATA_REG,#00H LCALL CP_COMMAND ;Command complete DJNZ R5,HLLOOP3 DJNZ R4,HLLOOP1 LCALL DELAY ;Wait CALL STP_SC SJMP CROSS_DOT ;***************************************************************************** ; CROSS DOT ;***************************************************************************** CROSS_DOT: MOV COMM_REG,#0AH ;Cursor low address setting MOV DATA_REG,#00H ;Low address start from 00H LCALL CP_COMMAND ;Command complete MOV COMM_REG,#0BH ;Cursor high address setting MOV DATA_REG,#00H ;High address start from 00 LCALL CP_COMMAND ;Command complete MOV R4,#MaxRow/2 ;Row loop count CDLOOP1: MOV R5,#MaxColumn/8 ;Col loop count CDLOOP2: MOV COMM_REG,#0CH ;Write data command MOV DATA_REG,#55H LCALL CP_COMMAND ;Command complete DJNZ R5,CDLOOP2 MOV R5,#MaxColumn/8 ;Col loop count CDLOOP3: MOV COMM_REG,#0CH ;Write data command MOV DATA_REG,#AAH LCALL CP_COMMAND ;Command complete DJNZ R5,CDLOOP3 DJNZ R4,CDLOOP1 LCALL DELAY ;Wait CALL STP_SC SJMP SHOWCHAR ;Continue to test ;***************************************************************************** ; 8*8 Character pattern test (Text) ;***************************************************************************** SHOWCHAR: MOV COMM_REG,#00H ;Command code--Mode control MOV DATA_REG,#30H ;Set 00110010 LCALL CP_COMMAND ;Command complete MOV COMM_REG,#0AH ;Cursor low address setting MOV DATA_REG,#00H ;Low address start from 00H LCALL CP_COMMAND ;Command complete MOV COMM_REG,#0BH ;Cursor high address setting MOV DATA_REG,#00H ;High address start from 00 LCALL CP_COMMAND ;Command complete MOV CHAR_START,#20H ;Display from 20H MOV R4,#MaxRow/8 ;Row loop count SCLOOP1: MOV R5,#MaxColumn/8 ;Col loop count SCLOOP2: MOV COMM_REG,#0CH ;Write data command MOV DATA_REG,CHAR_START LCALL CP_COMMAND ;Command complete INC CHAR_START DJNZ R5,SCLOOP2 DJNZ R4,SCLOOP1 LCALL DELAY ;Wait CALL STP_SC LJMP START ;Continue test ;***************************************************************************** ; Subroutine ;***************************************************************************** ;***************************************************************************** ; 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 ;***************************************************************************** CP_COMMAND: MOV A,COMM_REG LCALL WRITE_COMMAND MOV A,DATA_REG LCALL WRITE_DATA RET ;***************************************************************************** WRITE_COMMAND: CLR CS CLR R_W SETB RS SETB E MOV P1,A CLR E RET ;***************************************************************************** WRITE_DATA: CLR CS CLR R_W CLR RS SETB E MOV P1,A CLR E RET ;***************************************************************************** ; Swap Data ;***************************************************************************** SWAP_DATA: MOV TMP_DATA,#00H SWAP A ;Swap high4 and low4 MOV SP_DATA,A MOV R0,#3 SP_DB7: RR A ;Move bit7 and bit3 DJNZ R0,SP_DB7 ANL A,#00010001B ORL A,TMP_DATA MOV TMP_DATA,A MOV A,SP_DATA RR A ANL A,#00100010B ORL A,TMP_DATA MOV TMP_DATA,A MOV A,SP_DATA ;Move bit5 and bit1 RL A ANL A,#01000100B ORL A,TMP_DATA MOV TMP_DATA,A MOV A,SP_DATA MOV R0,#3 SP_DB4: RL A ;Move bit4 and bit0 DJNZ R0,SP_DB4 ANL A,#10001000B ORL A,TMP_DATA MOV TMP_DATA,A 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_WG: DB 008h,042h,010h,084h,021h,008h,042h,010h DB 084h,021h,008h,042h,010h,084h,021h,008h DB 042h,010h,084h,021h,008h,042h,010h,084h DB 021h,008h,042h,010h,084h,02Ah,008h,042h DB 010h,084h,021h,008h,042h,010h,084h,021h DB 008h,042h,010h,084h,021h,008h,042h,010h DB 084h,021h,008h,042h,010h,084h,021h,008h DB 042h,010h,084h,025h,000h,040h,010h,004h DB 001h,000h,040h,010h,004h,001h,000h,040h DB 010h,004h,001h,000h,040h,010h,004h,001h DB 000h,040h,010h,084h,001h,000h,040h,010h DB 004h,00Ah,000h,040h,010h,004h,001h,000h DB 040h,010h,004h,001h,000h,040h,010h,004h DB 001h,000h,040h,010h,004h,001h,000h,040h DB 010h,004h,001h,000h,040h,010h,004h,005h DB 0C0h,000h,000h,000h,000h,000h,000h,000h DB 000h,000h,000h,000h,000h,000h,000h,000h DB 000h,000h,000h,000h,000h,000h,000h,000h DB 000h,000h,000h,000h,000h,00Ah,000h,000h DB 000h,000h,000h,000h,000h,000h,000h,000h DB 000h,000h,000h,000h,000h,000h,000h,000h DB 000h,000h,000h,000h,000h,000h,000h,000h DB 000h,000h,000h,005h,002h,0AAh,0AAh,0AAh DB 0AAh,0A0h,000h,0AAh,0AAh,0AAh,0AAh,0A8h DB 000h,00Ah,0AAh,0AAh,0AAh,0AAh,000h,002h DB 0AAh,0AAh,0AAh,0AAh,000h,000h,0AAh,0AAh DB 0AAh,0AAh,001h,055h,055h,055h,055h,043h DB 0B8h,055h,055h,055h,055h,050h,0BBh,085h DB 055h,055h,055h,054h,02Eh,0E1h,055h,055h DB 055h,054h,03Bh,0B8h,055h,055h,055h,055h DB 002h,0AAh,0AAh,0AAh,0AAh,0A2h,028h,0AAh DB 0AAh,0AAh,0AAh,0A8h,0AAh,08Ah,0AAh,0AAh DB 0AAh,0AAh,028h,0A2h,0AAh,0AAh,0AAh,0AAh DB 00Ah,0A8h,0AAh,0AAh,0AAh,0AAh,0F1h,055h DB 055h,055h,055h,043h,0A8h,055h,055h,055h DB 055h,050h,0AAh,085h,055h,055h,055h,054h DB 02Eh,0A1h,055h,055h,055h,054h,03Ah,0A8h DB 055h,055h,055h,055h,002h,0AAh,0AAh,0AAh DB 0AAh,0A0h,0A8h,0AAh,0AAh,0AAh,0AAh,0A8h DB 0AAh,08Ah,0AAh,0AAh,0AAh,0AAh,022h,0A2h DB 0AAh,0AAh,0AAh,0AAh,022h,0A8h,0AAh,0AAh DB 0AAh,0AAh,001h,055h,055h,055h,055h,043h DB 0B8h,055h,055h,055h,055h,050h,0BBh,085h DB 055h,055h,055h,054h,02Eh,0E1h,055h,055h DB 055h,054h,03Bh,0B8h,055h,055h,055h,055h DB 002h,0AAh,0AAh,0AAh,0AAh,0A0h,000h,0AAh DB 0AAh,0AAh,0AAh,0A8h,000h,00Ah,0AAh,0AAh DB 0AAh,0AAh,000h,002h,0AAh,0AAh,0AAh,0AAh DB 000h,000h,0AAh,0AAh,0AAh,0AAh,001h,055h DB 055h,055h,055h,040h,000h,055h,055h,055h DB 055h,050h,000h,005h,055h,055h,055h,054h DB 000h,001h,055h,055h,055h,054h,000h,000h DB 055h,055h,055h,055h,0C2h,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,001h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 002h,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,001h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,002h,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0F1h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 002h,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,001h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,002h,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,001h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,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,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,001h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,002h,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,001h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 002h,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0F1h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,002h,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,001h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 002h,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,001h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,0C2h,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,001h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 002h,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,001h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,002h,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0F1h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 002h,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,001h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,002h,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,001h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,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,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,000h,000h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,000h,000h,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,001h,0DCh,055h,055h,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 001h,014h,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0F1h,0D4h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,000h,054h,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,001h,0DCh,055h,055h,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 000h,000h,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,000h,000h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,0C2h,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,001h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 002h,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,001h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,002h,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0F1h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh,0AAh DB 0AAh,0AAh,055h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h DB 055h,055h,055h,055h,055h,055h,055h,055h END