1 REM Ins{nd av Kristoffer Eriksson <5357>    1986-03-20 08.09.12
; Fil: MULTIUFD.ASM                Datum: 3 Augusti 1984
; Drivrutin f|r extra UFD-enheter. S{rskilt program m}ste anv{ndas f|r
; att l{gga upp denna rutin plus en post i enhetslistan. Ett exemplar av
; drivrutinen r{cker till flera UFD-enheter.
; Givetvis kr{vs UFD-DOS.

IO:      EQU  90
UFDENT:  EQU  24685          ; Pekare till UFD-data
LU.DCB:  EQU  +4

DRIVRUT: CALL BYT
         CALL 0              ; L{gg in adressen till UFD:-enhetens
BYT:     PUSH HL             ; drivrutiner. (Finns i enhetslistan).
         PUSH AF
         PUSH BC
         PUSH DE
         LD   DE,(UFDENT)
         LD   L,(IX+LU.DCB)  ; Pekare till drivrutinadressen i enhetslistan.
         LD   H,(IX+LU.DCB+1)
         LD   B,3
         INC  HL
         INC  HL
         INC  HL
BYTLOOP: LD   A,(DE)         ; St{ll in UFD-offset & drive. Dessa uppgifter
         LD   C,A            ; har lagts direkt efter enhetens post i
         LD   A,(HL)         ; enhetslistan.
         LD   (DE),A
         LD   (HL),C
         INC  HL
         INC  DE
         DJNZ BYTLOOP
         POP  DE
         POP  BC
         POP  AF
         POP  HL
         RET

; Utseende p} den enhetspost som ska l{nkas in i enhetslistan.

; DEVTAB_L[NK:
;+0      DEFW n{sta
;+2      DEFM "namn"
;+5      DEFW DRIVRUT
;+7      DEFB 30             ; Anger UFD-drive
;+8      DEFW Ufd_offset     ; UFD-data, speciella f|r denna rutin.
;+10     DEFB Ufd_drive
