목차
☑ 작품 소개
☑ 기능 설명
☑ 회 로 도
☑ 순 서 도
☑ 작품 사진
☑ 후기
☑ 프로그램
☑ 기능 설명
☑ 회 로 도
☑ 순 서 도
☑ 작품 사진
☑ 후기
☑ 프로그램
본문내용
OVCA, @A + DPTR
CALLLCD_DAT
INCDPTR
DJNZR3, LOOP2
LOOP1:MOVA, #DSPOFF
CALLLCD_CMD
CALLD1S
MOVA, #DSPON
CALLLCD_CMD
CALLD1S
DJNZR4, LOOP1
/**************** 시작화면 끝 *********************/
/****************** 패턴저장 ***********************/
MOVDPTR, #STR1; DPTR <- 등록패턴 선두 어드레스
MOVR5, #56; R5 <- 7문자 8라인
MOV R6, #40H; CG RAM 어드레스 커맨드
MOVR7, #0 ; R7 <- OFFSET
PATTERN:MOVA, R6
ADDA, R7; A <- R6 + R7
CALLLCD_CMD; CG RAM 어드레스 설정
INCR7; OFFSET +1
CLRA
MOVCA, @A + DPTR; A <- 패턴 값
CALLLCD_DAT; CG RAM <- 패턴값
INCDPTR
DJNZR5, PATTERN
/****************** 패턴 출력 ***********************/
RE:MOVR6,#0
MOVA, #01H; LCD CLEAR
CALLLCD_CMD
MOV21H, #41; 딜레이 시간 초기값
MOVR4, #09
COMM:MOVR0, #80H
MOVR1, #09; 새의 패턴이 나오는 횟수
MAIN:CALLD1S
MOVA, #0C8H; LINE 2 SELECT
CALLLCD_CMD
MOVA, #04H; 화살표 표시
CALLLCD_DAT
MOVA, R0
CALLLCD_CMD
MOVA, R1
JZDEADBIRD
MOVA, #20H
CALLLCD_DAT
MOVA, R1
JZDEADBIRD
MOVA, #0H
CALLLCD_DAT
MOVA, R1
JZDEADBIRD
MOVA, #01H
CALLLCD_DAT
MOVA, R1
JZDEADBIRD
CALLD1S
INCR0
MOVA, R0
CALLLCD_CMD
MOVA, R1
JZDEADBIRD
MOVA, #20H
CALLLCD_DAT
MOVA, R1
JZDEADBIRD
MOVA, #02H
CALLLCD_DAT
MOVA, R1
JZDEADBIRD
MOVA, #03H
CALLLCD_DAT
MOVA, R1
JZDEADBIRD
INCR0
DJNZR1, MAIN
MOVA, 21H; DELAY 시간 감소
SUBBA, #06H
MOV21H, A
COM:DJNZR4, COMM
/****************** 게임 종료후 출력되는 패턴 *****************/
CALLLN11
MOVDPTR, #CATCHED
MOVR3, #12
LOOP3:CLRA
MOVCA, @A + DPTR
CALLLCD_DAT
INCDPTR
DJNZR3, LOOP3
MOVA,20H
ADDA,#30H
CALLLCD_DAT
MOVA, #20H
CALLLCD_DAT
MOVA, #2AH
CALLLCD_DAT
MOV20H,#0
CALLLN21
MOVDPTR, #RETRY
MOVR3, #16
LOOP4:CLRA
MOVCA, @A + DPTR
CALLLCD_DAT
INCDPTR
DJNZR3, LOOP4
RESW:JBP1.1, RESW; P1포트에 연결된 스위치가 눌려지면
JMPRE; 처음으로 돌아감
/********* 새를 맞춘 뒤 출력되는 패턴 ***********/
DEADBIRD:
MOVA,20H
ADDA,#01H
MOV20H,A
DECR0
MOVA, R0
CALLLCD_CMD
MOVA, #20H
CALLLCD_DAT
MOVA, #05H
CALLLCD_DAT
MOVA, #06H
CALLLCD_DAT
CALLD1S
MOVA, R0
CALLLCD_CMD
MOVA, #20H
CALLLCD_DAT
MOVA, #20H
CALLLCD_DAT
MOVA, #20H
CALLLCD_DAT
MOVA, 21H; DELAY 시간 감소
SUBBA, #04H
MOV21H, A
JMPCOM
/*************** 스피커 출력 ****************/
SOUND:CPLP1.0 ; (+,-)설정
SOUND1:MOVR7, #3 ; R7 STEP is about 42Hz
SOUND2:DJNZR7, SOUND2 ; R6 STEP is about 3Hz
DJNZR6, SOUND1
RET
S_OUT:MOVR3, #20
AAA:MOVR6, #103 ;사운드 조정 : 반 주기(10진수)
CALLSOUND
DJNZR3, AAA
MOVR3,#20
BBB:MOVR6,#116
CALLSOUND
DJNZR3,BBB
RET
/******************** 딜레이 루틴 ******************/
D1S:MOVA, 21H;
MOVR2, A
DISLP:CALLD5MS
DJNZR2, DISLP
RET
/**************** 외부 인터럽트 ******************/
INT0_SER:CJNER0, #86H, CONT; 인터럽트 스위치가 눌려지면
MOVR1, #0; 현재 새가 출력되고 있는 번지와 비교한뒤
CALLS_OUT; 같으면 R1이 0이 되고 소리가 난뒤
CONT:RETI; 다르면 인터럽트 빠져나감
$INCLUDE(LCD.INC) ; LCD구동 프로그램
ORG5000H
STR1:DB00H, 18H, 0CH, 06H, 03H, 1FH, 07H, 00H
STR2:DB00H, 06H, 0CH, 18H, 12H, 1FH, 1CH, 00H
STR3:DB00H, 00H, 1FH, 07H, 06H, 0CH, 08H, 08H
STR4:DB00H, 02H, 1FH, 1CH, 18H, 0CH, 04H, 00H
STR5:DB04H, 0EH, 15H, 04H, 04H, 04H, 04H, 04H
STR6:DB12H, 0AH, 00H, 00H, 18H, 00H, 0AH, 12H
STR7:DB09H, 0AH, 00H, 00H, 03H, 00H, 0AH, 09H
OPENING:DB'CATCH THE BIRD!!'
OPENING1:DB' by OCHY in KUT '
RETRY:DB' RETRY? '
CATCHED:DB' * CATCHED :'
END
CALLLCD_DAT
INCDPTR
DJNZR3, LOOP2
LOOP1:MOVA, #DSPOFF
CALLLCD_CMD
CALLD1S
MOVA, #DSPON
CALLLCD_CMD
CALLD1S
DJNZR4, LOOP1
/**************** 시작화면 끝 *********************/
/****************** 패턴저장 ***********************/
MOVDPTR, #STR1; DPTR <- 등록패턴 선두 어드레스
MOVR5, #56; R5 <- 7문자 8라인
MOV R6, #40H; CG RAM 어드레스 커맨드
MOVR7, #0 ; R7 <- OFFSET
PATTERN:MOVA, R6
ADDA, R7; A <- R6 + R7
CALLLCD_CMD; CG RAM 어드레스 설정
INCR7; OFFSET +1
CLRA
MOVCA, @A + DPTR; A <- 패턴 값
CALLLCD_DAT; CG RAM <- 패턴값
INCDPTR
DJNZR5, PATTERN
/****************** 패턴 출력 ***********************/
RE:MOVR6,#0
MOVA, #01H; LCD CLEAR
CALLLCD_CMD
MOV21H, #41; 딜레이 시간 초기값
MOVR4, #09
COMM:MOVR0, #80H
MOVR1, #09; 새의 패턴이 나오는 횟수
MAIN:CALLD1S
MOVA, #0C8H; LINE 2 SELECT
CALLLCD_CMD
MOVA, #04H; 화살표 표시
CALLLCD_DAT
MOVA, R0
CALLLCD_CMD
MOVA, R1
JZDEADBIRD
MOVA, #20H
CALLLCD_DAT
MOVA, R1
JZDEADBIRD
MOVA, #0H
CALLLCD_DAT
MOVA, R1
JZDEADBIRD
MOVA, #01H
CALLLCD_DAT
MOVA, R1
JZDEADBIRD
CALLD1S
INCR0
MOVA, R0
CALLLCD_CMD
MOVA, R1
JZDEADBIRD
MOVA, #20H
CALLLCD_DAT
MOVA, R1
JZDEADBIRD
MOVA, #02H
CALLLCD_DAT
MOVA, R1
JZDEADBIRD
MOVA, #03H
CALLLCD_DAT
MOVA, R1
JZDEADBIRD
INCR0
DJNZR1, MAIN
MOVA, 21H; DELAY 시간 감소
SUBBA, #06H
MOV21H, A
COM:DJNZR4, COMM
/****************** 게임 종료후 출력되는 패턴 *****************/
CALLLN11
MOVDPTR, #CATCHED
MOVR3, #12
LOOP3:CLRA
MOVCA, @A + DPTR
CALLLCD_DAT
INCDPTR
DJNZR3, LOOP3
MOVA,20H
ADDA,#30H
CALLLCD_DAT
MOVA, #20H
CALLLCD_DAT
MOVA, #2AH
CALLLCD_DAT
MOV20H,#0
CALLLN21
MOVDPTR, #RETRY
MOVR3, #16
LOOP4:CLRA
MOVCA, @A + DPTR
CALLLCD_DAT
INCDPTR
DJNZR3, LOOP4
RESW:JBP1.1, RESW; P1포트에 연결된 스위치가 눌려지면
JMPRE; 처음으로 돌아감
/********* 새를 맞춘 뒤 출력되는 패턴 ***********/
DEADBIRD:
MOVA,20H
ADDA,#01H
MOV20H,A
DECR0
MOVA, R0
CALLLCD_CMD
MOVA, #20H
CALLLCD_DAT
MOVA, #05H
CALLLCD_DAT
MOVA, #06H
CALLLCD_DAT
CALLD1S
MOVA, R0
CALLLCD_CMD
MOVA, #20H
CALLLCD_DAT
MOVA, #20H
CALLLCD_DAT
MOVA, #20H
CALLLCD_DAT
MOVA, 21H; DELAY 시간 감소
SUBBA, #04H
MOV21H, A
JMPCOM
/*************** 스피커 출력 ****************/
SOUND:CPLP1.0 ; (+,-)설정
SOUND1:MOVR7, #3 ; R7 STEP is about 42Hz
SOUND2:DJNZR7, SOUND2 ; R6 STEP is about 3Hz
DJNZR6, SOUND1
RET
S_OUT:MOVR3, #20
AAA:MOVR6, #103 ;사운드 조정 : 반 주기(10진수)
CALLSOUND
DJNZR3, AAA
MOVR3,#20
BBB:MOVR6,#116
CALLSOUND
DJNZR3,BBB
RET
/******************** 딜레이 루틴 ******************/
D1S:MOVA, 21H;
MOVR2, A
DISLP:CALLD5MS
DJNZR2, DISLP
RET
/**************** 외부 인터럽트 ******************/
INT0_SER:CJNER0, #86H, CONT; 인터럽트 스위치가 눌려지면
MOVR1, #0; 현재 새가 출력되고 있는 번지와 비교한뒤
CALLS_OUT; 같으면 R1이 0이 되고 소리가 난뒤
CONT:RETI; 다르면 인터럽트 빠져나감
$INCLUDE(LCD.INC) ; LCD구동 프로그램
ORG5000H
STR1:DB00H, 18H, 0CH, 06H, 03H, 1FH, 07H, 00H
STR2:DB00H, 06H, 0CH, 18H, 12H, 1FH, 1CH, 00H
STR3:DB00H, 00H, 1FH, 07H, 06H, 0CH, 08H, 08H
STR4:DB00H, 02H, 1FH, 1CH, 18H, 0CH, 04H, 00H
STR5:DB04H, 0EH, 15H, 04H, 04H, 04H, 04H, 04H
STR6:DB12H, 0AH, 00H, 00H, 18H, 00H, 0AH, 12H
STR7:DB09H, 0AH, 00H, 00H, 03H, 00H, 0AH, 09H
OPENING:DB'CATCH THE BIRD!!'
OPENING1:DB' by OCHY in KUT '
RETRY:DB' RETRY? '
CATCHED:DB' * CATCHED :'
END
추천자료
균형있는 건강 운동프로그램 만들기
java를 이용한 타자연습프로그램을 만들기 flowchart,statediagram,소스
유닉스 쉘 프로그램 소스 모음
TV드라마, 오락프로그램의 텍스터 분석 - '거침없이 하이킥', '환상의 커플'
성적 관리 프로그램 발표(c언어)
2009년 1학기 청소년프로그램개발및평가 기말시험 핵심체크
2009년 1학기 청소년프로그램개발및평가 출석대체시험 핵심체크
2010년 1학기 청소년프로그램개발및평가 출석대체시험 핵심체크
2011년 2학기 영유아프로그램개발과평가 기말시험 핵심체크
email 보내기 프로그램(c언어 소스 코드)
제1장 청소년 프로그램 개발의 이해
2015년 2학기 청소년프로그램개발및평가 교재 전 범위 핵심요약노트
2017년 2학기 청소년프로그램개발및평가 교재 전 범위 핵심요약노트
2017년 2학기 청소년프로그램개발및평가 출석대체시험 핵심체크
소개글