Освой компьютер
ширина
move.l #$A0001,(A1)+ ;высота и флаги
move.l (A0)+,(A1)+ ;заголовок меню
lea 12(A1),A3 ;A3 = A1 + 12
move.l A3,(A1)+ ;указатель на пункт меню
clr.l (A1)+ ;зарезервированные слова
clr.l (A1)+
itemloop:
tst.l (A0) ;конец списка пунктов?
beq menuend ;да, переходим к следующему
;меню
lea 54(A1),A3 ;A3 = A1 + 54
move.l A3,(A1)+ ;указатель на следующий пункт
move.l D2,(A1)+ ;X и Y координаты
add #10,D2 ;смещение по Y
move.l #$5A000A,(A1)+ ;ширина/высота
move #$52,(A1)+ ;флаги
clr.l (A1)+ ;нет связей
lea 16(A1),A3 ;A3 = A1 + 16
move.l A3,(A1)+ ;указатель на текстовую
;структуру заголовка
clr.l (A1)+
clr.l (A1)+ ;нет \"горячей\" комбинации и
clr.l (A1)+ ;подменю
move #1,(A1)+ ;определяем структуру
;заголовка: цвета текста и
;фона
clr (A1)+ ;режим
move.l #$50003,(A1)+ ;X и Y координаты
clr.l (A1)+ ;стандартный шрифт
move.l (A0)+,(A1)+ ;текст заголовка
clr.l (A1)+ ;конец текста
bra.s itemloop ;цикл по пунктам меню
menuend:
clr.l -54(A1) ;очищаем указатель на
AMIGA: ПРОГРАММИРОВАНИЕ НА АССЕМБЛЕРЕ.
|