home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Amiga MA Magazine 1998 #6
/
amigamamagazinepolishissue1998.iso
/
coders
/
amiga-flight
/
programs
/
control.asm
< prev
next >
Wrap
Assembly Source File
|
1977-12-31
|
5KB
|
131 lines
*****************************************************************************
*** CONTROL.ASM ***
*** ***
*** Author : Andrew Duffy ***
*** Date : January 1993 ***
*** Desc. : This program demonstrates how to control the motor and ***
*** heater using APPS_PORTA. ***
*** ***
*** ©XCNT, 1992-1994. ***
*****************************************************************************
*****************************************************************************
*** Includes ***
*****************************************************************************
include "subrts.h" Included by default anyway
*****************************************************************************
*** Initialisation routine ***
*****************************************************************************
move.b #APPS_MOTOR+APPS_HEATER,d0 Initialise the applications board
jsr APPS_INIT (using motor and heater)
move.b #0,APPS_PORTA Turn everything off
movea.l #Instructs,a6 Print instructions
jsr OUTSTR
*****************************************************************************
*** Main control routine ***
*****************************************************************************
Main jsr INCH
bclr #5,d0 Convert to upper case
cmp.b #'F',d0
beq Mot_For
cmp.b #'B',d0
beq Mot_Bac
cmp.b #'S',d0
beq Mot_Sto
bset #5,d0 Convert back to normal case
cmp.b #'1',d0
beq Heat_On
cmp.b #'2',d0
beq Heat_Off
cmp.b #'.',d0 Was full stop pressed ?
bne Main If not then loop again
*****************************************************************************
*** Turn everything off ***
*****************************************************************************
move.b #0,APPS_PORTA Turn everything off
rts Exit
*****************************************************************************
*** Motor forward routine ***
*****************************************************************************
Mot_For bclr #6,APPS_PORTA Clear bit 6 of Port A
bset #7,APPS_PORTA Set bit 7 of Port A
movea.l #Forwards,a6 Output forward message
jsr OUTSTR
bra Main Continue at main
*****************************************************************************
*** Motor backward routine ***
*****************************************************************************
Mot_Bac bclr #7,APPS_PORTA Clear bit 7 of Port A
bset #6,APPS_PORTA Set bit 6 of Port A
movea.l #Backwards,a6 Output backward message
jsr OUTSTR
bra Main Continue at main
*****************************************************************************
*** Motor stopped routine ***
*****************************************************************************
Mot_Sto bclr #7,APPS_PORTA Clear bit 7 of Port A
bclr #6,APPS_PORTA Clear bit 6 of Port A
movea.l #Stopped,a6 Output stopped message
jsr OUTSTR
bra Main Continue at main
*****************************************************************************
*** Heater on routine ***
*****************************************************************************
Heat_On bset #5,APPS_PORTA Set bit 5 of Port A
movea.l #On,a6 Output on message
jsr OUTSTR
bra Main Continue at main
*****************************************************************************
*** Heater off routine ***
*****************************************************************************
Heat_Off bclr #5,APPS_PORTA Clear bi 5 of Port A
movea.l #Off,a6 Output off message
jsr OUTSTR
bra Main Continue at main
*****************************************************************************
*** Strings ***
*****************************************************************************
Instructs dc.b "Control.asm",13,10,"===========",13,10,13,10
dc.b "Ensure that the Motor and Heater are switched on.",13,10
dc.b "Press F to make motor go forwards, B to make motor go backwards, S to stop.",13,10
dc.b "Press 1 to turn heater on, 2 to turn heater off.",13,10
dc.b "Press full stop to quit.",13,10,13,10
dc.b "Motor Status : Stopped",13,10
dc.b "Heater Status : Off",13,10,0
even
Forwards dc.b 27,"[9;17fGoing fowards ",13,10,0
even
Backwards dc.b 27,"[9;17fGoing backwards",13,10,0
even
Stopped dc.b 27,"[9;17fStopped ",13,10,0
even
On dc.b 27,"[10;17fOn ",13,10,0
even
Off dc.b 27,"[10;17fOff",13,10,0
*****************************************************************************
*** End of file CONTROL.ASM. ***
*****************************************************************************