7- 44
MC68349 USER'S MANUAL
MOTOROLA
* Initialize destination operand address
* Destination address is equal to $8000.
MOVE.L
DARADD,DMADAR1(A0)
* Initialize the byte transfer count register
* The number of bytes to be transferred is $64 or 50 words
MOVE.L
NUMBYTE,DMABTC1(A0)
* Channel control reg. init. and Start DMA transfers
* No interrupts are enabled, destination (write) cycle.
* Source address is not incremented. Increment the destination address.
* Source size is word, destination size is word. REQ is internal.
* 100% of bus bandwidth, dual-address transfers, start the DMA transfers.
MOVE.W
#$068D,DMACCR1(A0)
***************************************************************************
END
***************************************************************************
Example 4: Cycle Steal Request Generation, Dual-Address Transfers.
***************************************************************************
* MC68349 basic DMA channel register initialization example code.
* This code is used to initialize the 68349's internal DMA channel
* registers, providing basic functions for operation.
* The code sets up channel 1 for external cycle steal request generation,
* dual-address transfers. DMA 16-bit wide data from an odd address to an
* even address. Control signals are asserted on the DMA read cycle.
***************************************************************************
* SIM49 equates
***************************************************************************
MBAR
EQU $0003FF00 Address of SIM49 Module Base Address Reg.
MODBASE
EQU $FFFFF000 SIM49 MBAR address value
***************************************************************************
* DMA Channel 1 equates
DMACH1
EQU $780
Offset from MBAR for channel 1 regs
DMAMCR1
EQU $0
MCR for channel 1
* Channel 1 register offsets from channel 1 base address
DMAINT1
EQU $4
interrupt register channel 1
DMACCR1
EQU $8
control register channel 1
DMACSR1
EQU $A
status register channel 1
DMAFCR1
EQU $B
function code register channel 1
DMASAR1
EQU $C
source address register channel 1
DMADAR1
EQU $10
destination address register channel 1
DMABTC1
EQU $14
byte transfer count register channel 1