execbase = 4
findtask = -294
addport = -354
remport = -360
opendevice = -444
closedevice = -450

run:
 move.l execbase,a6       ;Zeiger auf Exec-Basisadresse
 sub.l  a1,a1             ;0 als Argument => eigener Task
 jsr    findtask(a6)      ;Eigene Taskadresse suchen
 move.l d0,replyport+16   ;Eigenen Task als Empfänger eintragen

 lea    replyport,a1      ;Zeiger auf Reply-Port
 jsr    addport(a6)       ;Reply-Port in globale Liste aufnehmen

 lea    diskio,a1         ;Zeiger auf IOStdReq-Struktur
 move.l #replyport,14(a1) ;Reply-Port eintragen
 move.l #0,d0             ;Laufwerk: df0:
 clr.l  d1                ;Keine Flags
 lea    trdname,a0        ;Zeiger auf Devicenamen
 jsr    opendevice(a6)    ;Trackdisk-Device öffnen
 tst.l  d0                ;Fehler aufgetreten?
 bne    error             ;Ja! Programm beenden

 lea    replyport,a1      ;Zeiger auf Replyport
 jsr    remport(a6)       ;Reply-Port aus globaler Liste entfernen

 lea    diskio,a1         ;Zeiger auf IOStdReq-Struktur
 jsr    closedevice(a6)   ;Trackdisk-Device schließen

error:
 rts                      ;Programmende

trdname: dc.b "trackdisk.device",0
even
diskio: blk.l 20,0
replyport: blk.l 8,0
