home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Amiga MA Magazine 1998 #6
/
amigamamagazinepolishissue1998.iso
/
coders
/
amiga-flight
/
programs
/
lights2.asm
< prev
next >
Wrap
Assembly Source File
|
1977-12-31
|
4KB
|
76 lines
*****************************************************************************
*** LIGHTS1.ASM ***
*** ***
*** Author : Pete Cheetham, Andrew Duffy ***
*** Date : November 1992, June 1994 ***
*** Desc. : This program was written to demonstrate driving the 68000 ***
*** applications board. ***
*** It counts repeatedly from 0 to 255, outputting the value ***
*** each time to the LEDs and then delaying for 0.2 seconds ***
*** before moving onto the next number. ***
*** ***
*** ©XCNT, 1992-1994. ***
*****************************************************************************
*****************************************************************************
*** Includes ***
*****************************************************************************
include "subrts.h" Included by default anyway
*****************************************************************************
*** Constants ***
*****************************************************************************
FIFTHSEC EQU 50000 Number of clock ticks in 0.2 seconds
*****************************************************************************
*** Initialisation routine ***
*****************************************************************************
move.b #APPS_ALL_IN,d0 Initialise the applications board
jsr APPS_INIT (port A all input)
movea.l #Instructs,a6 Print instructions
jsr OUTSTR
*****************************************************************************
*** Main routine ***
*****************************************************************************
move.l #FIFTHSEC,d0 Initialise delay value
move.b #0,d1 Initialise LED value
Loop move.b d1,APPS_PORTB Output it to the LEDs
bsr Delay Wait a while
add.b #1,d1 Increment LED value.
bra Loop Repeat forever
rts Exit (never gets here)
*****************************************************************************
*** Delay routine ***
*** Waits for the value in bits 23-0 of d0 clock ticks to elapse before ***
*** returning. ***
*****************************************************************************
Delay jsr START_TIMER Initialise clock and start it going
Delay1 jsr CHECK_TIMER Has countdown timer reached zero ?
beq Delay1 No, go back and wait some more
rts Return from subroutine
*****************************************************************************
*** Strings ***
*****************************************************************************
Instructs dc.b "Lights2.asm",13,10,"===========",13,10,13,10
dc.b "Ensure that the LEDs are switched on.",13,10
dc.b "This program counts repeatedly from 0 to 255, outputting the value each time",13,10
dc.b "to the LEDs and then displaying for 0.2 seconds before moving onto the next",13,10
dc.b "number."13,10,0
*****************************************************************************
*** End of file LIGHTS2.ASM. ***
*****************************************************************************