ctrlarray MACRO moveq.w #\1,d0 bsr set_up_ctrl ENDM intnarray MACRO IFEQ NARG FAIL NO PARAMETERS FOR INTIN ARRAY!!! MEXIT ENDC IFNE NARG-9 FAIL MISSING PARAMETERS FOR INTIN ARRAY!!! MEXIT ENDC ; zap_intin IFEQ \1 ifeq \2 clr.l int_in+0 elseif move.l #$\1000\2,int_in+0 endc ELSEIF move.l #$\1000\2,int_in+0 ENDC IFEQ \3 ifeq \4 clr.l int_in+4 elseif move.l #$\3\4,int_in+4 endc ELSEIF move.l #$\3000\4,int_in+4 ENDC IFEQ \5 ifeq \6 clr.l int_in+8 elseif move.l #$\5000\6,int_in+8 endc ELSEIF move.l #$\5000\6,int_in+8 ENDC IFEQ \7 ifeq \8 clr.l int_in+12 elseif move.l #$\7000\8,int_in+12 endc ELSEIF move.l #$\7000\8,int_in+12 ENDC IFEQ \9 clr.w int_in+16 ELSEIF move.w #$\9,int_in+16 ENDC ENDM zap_intin MACRO movem.l blank(pc),d0-7 movem.l d0-7,int_in+0 ENDM ; Initialise macros init_aes MACRO ctrlarray 10 bsr call_aes move.w d0,app_id ENDM menu_reg MACRO ctrlarray 35 zap_intin move.w \1,int_in+0 move.l #\2,addr_in+0 bsr call_aes move.w d0,\3 ENDM evnt_mess MACRO ctrlarray 23 zap_intin move.l #\1,addr_in+0 bsr call_aes move.w parms(pc),d0 ENDM ; file select macro fsel MACRO ctrlarray 90 ; zap_intin move.l #\1,addr_in move.l #\2,addr_in+4 ; move.l #\3,addr_in+8 bsr call_aes ENDM ; Graphics macros grph_mse MACRO ctrlarray 78 intnarray \1,0,0,0,0,0,0,0,0 IFNC '\2','' move.l #\2,addr_in ENDC bsr call_aes ENDM ; Resource macros load_rsc MACRO ctrlarray 110 move.l #\1,addr_in bsr call_aes beq resource_missing ENDM rsc_gaddr MACRO move.w #\1,int_in move.w \2,int_in+2 bsr call_aes move.l addr_out(pc),\3 ENDM rsc_free MACRO ctrlarray 111 zap_intin bsr call_aes ENDM ; Form macros form_cntr MACRO ctrlarray 54 zap_intin move.l \1,addr_in bsr call_aes move.l int_out+2(pc),\2 move.l int_out+6(pc),\2+4 ENDM form_dial MACRO ctrlarray 51 intnarray \1,0,0,0,0,0,0,0,0 move.l \2(pc),int_in+10 move.l \2+4(pc),int_in+14 bsr call_aes ENDM form_do MACRO ctrlarray 50 intnarray \1,0,0,0,0,0,0,0,0 bsr call_aes ENDM form_alrt MACRO ctrlarray 52 move.w #\2,int_in ; zap_intin move.l #\1,addr_in+0 bsr call_aes ENDM show_form MACRO lea form_tab+(\1*4)(pc),a0 bsr display_form ENDM kill_form MACRO hidemouse lea form_tab+(\1*4)(pc),a0 bsr close_form ENDM ; Object macros obj_draw MACRO ctrlarray 42 intnarray \1,\2,0,0,0,0,0,0,0 movem.l \3(pc),d0-1 movem.l d0-1,int_in+4 bsr call_aes ENDM obj_chnge MACRO move.w #\1,a4 move.w #\2,a5 move.w #\3,a6 lea form_tab+(\4*4)(pc),a0 bsr object_change ENDM ; various tedinfo MACRO lea obj_tab+((\1)*4)(pc),\2 move.l (\2),\2 ENDM ; Ugh! Alines hidemouse MACRO dc.w $a00a ENDM showmouse MACRO dc.w $a009 ENDM