Trasferimento di blocco di memoria tramite DMA
Introduzione
Realizza il trasferimento di un blocco di memoria su un terminale attraverso un DMA che effettua una richiesta per ogni byte. Alla fine del trasferimento viene cancellato il video.
Definizioni di etichette
ORG $8200
ter EQU $2000
dma EQU $2010
caddr EQU 0
ccount EQU 1
cntrl EQU 8
request EQU 9
mode EQU 11
nbyte EQU $9F
Inizio del programma
start
MOVE.W #ter,A0
MOVE.B #$0C,1(A0) Disabilita tastiera, eco e interruzioni; cancella video e buffer tastiera.
MOVE.W #dma,A1
MOVE.B #nbyte,ccount(A1) Carica il numero di byte da spostare nel registro conteggio.
MOVE.W #message,caddr(A1) Registro indirizzo di partenza.
MOVE.B #$00,mode(A1) Fissa il modo SINGLE, con incremento indirizzo.
MOVE.B #$80,cntrl(A1) Abilita il DMA.
MOVE.B #$08,request(A1) Effettua la richiesta sul canale 0.
Loop di attesa
loop NOP
NOP
BCC loop
Interruzione
int7
MOVE.L A0,-(A7) Salva nel SSP i registri utilizzati.
MOVE.W #ter,A0
MOVE.B #$0C,1(A0) Reinizializza il terminale.
MOVE.L (A7)+,A0 Ripristina i registri utilizzati.
RTE
Messaggio
message
DC.B ' Universita',$60,' degli Studi di Napoli',$0D,$0D
DC.B ' Federico II',$0D,$0D
DC.B ' Facolta',$60,' d',$60,' Ingegneria',$0D,$0D
DC.B 'Dipartim. d',$60,' Informatica e Sistemistica',$0D,$0D
DC.B ' ASIM',$0D
end start
-
I prezzi di trasferimento
-
Il trasferimento del lavoratore
-
Economia e management del trasferimento tecnologico
-
Management dell'innovazione e trasferimento tecnologico