mirror of
https://github.com/SEPPDROID/Digital-Research-Source-Code.git
synced 2025-10-26 09:54:20 +00:00
Upload
Digital Research
This commit is contained in:
@@ -0,0 +1,159 @@
|
||||
|
||||
;************ bdos file system part 5 ************
|
||||
|
||||
; BDOS functions which do not require
|
||||
; ownership of the MXdisk queue
|
||||
|
||||
func24: ;return the login vector
|
||||
;======
|
||||
mov bx,dlog
|
||||
ret
|
||||
|
||||
func25: ;return selected disk number
|
||||
;======
|
||||
|
||||
if BCPM
|
||||
mov bl,p_dsk
|
||||
endif
|
||||
if BMPM
|
||||
mov si,rlr
|
||||
mov bl,p_dsk[si]
|
||||
endif
|
||||
ret
|
||||
|
||||
func26: ;set the subsequent dma address to info
|
||||
;======
|
||||
|
||||
if BCPM
|
||||
mov p_dma_off,dx
|
||||
endif
|
||||
if BMPM
|
||||
mov u_dma_ofst,dx
|
||||
endif
|
||||
ret
|
||||
|
||||
func29: ;return r/o bit vector
|
||||
;======
|
||||
mov bx,rodsk
|
||||
ret
|
||||
|
||||
func32: ;set user code
|
||||
;======
|
||||
|
||||
if BCPM
|
||||
mov al,dl
|
||||
cmp al,0ffh
|
||||
jnz setusrcode
|
||||
mov bl,p_user ;interrogate user code instead
|
||||
ret
|
||||
setusrcode:
|
||||
and al,0fh
|
||||
mov p_user,al
|
||||
ret ;jmp goback
|
||||
endif
|
||||
if BMPM
|
||||
mov si,rlr
|
||||
cmp dl,0ffh ! jne setusrcode
|
||||
mov bl,p_user[si]
|
||||
ret
|
||||
setusrcode:
|
||||
and dl,0fh
|
||||
mov p_user[si],dl
|
||||
ret
|
||||
endif
|
||||
|
||||
func44: ;set multi-sector count
|
||||
;======
|
||||
xor bx,bx
|
||||
or dl,dl
|
||||
jz return_not_ok
|
||||
cmp dl,129
|
||||
jnb return_not_ok
|
||||
if BCPM
|
||||
mov p_mult_cnt,dl
|
||||
endif
|
||||
if BMPM
|
||||
mov u_mult_cnt,dl
|
||||
endif
|
||||
ret
|
||||
return_not_ok:
|
||||
dec bx ;return BX = 0ffffh
|
||||
ret
|
||||
|
||||
func45: ;set bdos error mode
|
||||
;======
|
||||
|
||||
if BCPM
|
||||
mov p_error_mode,dl
|
||||
endif
|
||||
if BMPM
|
||||
mov u_error_mode,dl
|
||||
endif
|
||||
ret
|
||||
|
||||
func51: ; set dma base
|
||||
;======
|
||||
|
||||
if BCPM
|
||||
mov p_dma_seg,dx
|
||||
endif
|
||||
if BMPM
|
||||
mov u_dma_seg,dx
|
||||
endif
|
||||
ret
|
||||
|
||||
func52: ; get dma
|
||||
;======
|
||||
|
||||
if BCPM
|
||||
mov ax,p_dma_seg
|
||||
mov p_user_es,ax
|
||||
mov bx,p_dma_off
|
||||
endif
|
||||
if BMPM
|
||||
mov ax,u_dma_seg
|
||||
mov u_retseg,ax
|
||||
mov bx,u_dma_ofst
|
||||
endif
|
||||
ret
|
||||
|
||||
func104: ;set current date and time
|
||||
;=======
|
||||
mov si,dx
|
||||
mov di,offset tod
|
||||
pushf! cli
|
||||
push es! push ds ;save DS and ES
|
||||
if BCPM
|
||||
mov ds,p_user_ds
|
||||
endif
|
||||
if BMPM
|
||||
mov ds,u_wrkseg
|
||||
endif
|
||||
pop es
|
||||
movsw! movsw
|
||||
push es
|
||||
pop ds! pop es ;restore DS and ES
|
||||
mov byte ptr tod+4,0
|
||||
popf
|
||||
ret
|
||||
|
||||
func105: ;get current date and time
|
||||
;=======
|
||||
mov di,dx
|
||||
mov si,offset tod
|
||||
push es
|
||||
if BCPM
|
||||
mov es,p_user_ds
|
||||
endif
|
||||
if BMPM
|
||||
mov es,u_wrkseg
|
||||
endif
|
||||
pushf! cli
|
||||
movsw! movsw
|
||||
mov bl,tod+4
|
||||
popf
|
||||
pop es
|
||||
ret
|
||||
|
||||
;********** end bdos file system part 5 **********
|
||||
|
||||
Reference in New Issue
Block a user