ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 05.06.2020
Просмотров: 91
Скачиваний: 3
Листинг программы check.a
TestAC:
cmp.b #$0F,D1 ;Проверка конца
bne NextS ; первой строки
bsr TestBF ;Проверка флага занятости LCD
move #$00C0,IR ;Переход на начало
move.b #$40,D1 ; второй строки
bra TestCC
NextS:
cmp.b #$4E,D1 ;Проверка конца
bne NormalS ; второй строки
bsr TestBF ;Проверка флага занятости LCD
bra Finish
NormalS:
addi #$01,D1
TestCC:
cmp.b #$1F,D0 ;Проверка кода символа
bhi Next
bra Error
Next:
cmp.b #$7F,D0 ;Проверка кода символа
bls Right
cmp.b #$A0,D0 ;Проверка кода символа
bhs Right
Error:
bsr TestBF ;Проверка флага занятости LCD
bsr Tormozzz ;цикл задержки
move.b #$21,DR ;Ошибка, неверный символ
bra Conez
Right:
bsr TestBF ;Проверка флага занятости LCD
bsr Tormozzz ;цикл задержки
move.b D0,DR ;Вывод символа на экран
Conez:
rts
TestBF:
move.b #$07,D2 ;Проверка
move IR,D3 ; флага
btst D2,D3 ; занятости LCD
bne TestBF
rts
Tormozzz:
move #$FFFF,D4 ;Инициализация счётчика
Loop: ;Цикл задержки
subq #1,D4
bne Loop
rts
Finish:
SECTION init_code
DC.L $00002000 ; Init SP vector
DC.L $00001000 ; Init PC Vector