A2osX/SYS/KERNEL.S.DRV.txt

75 lines
1.3 KiB
Plaintext
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

PR#3
PREFIX /A2OSX.BUILD
LOMEM $A00
INC 1
AUTO 6
*--------------------------------------
* K.LoadDrvYA
* in :
* Y,A = PTR To Full Cmd Line PStrArray
* out :
* none
*--------------------------------------
K.LoadDrvYA >STYA K.LoadDrv.CmdArray
>LDYAI ENV.DRV push ENVNAME=DRV
>SYSCALL GetEnvYA get value for ENV=DRV
bcs .9
>PUSHYA Push $DRV value
>PUSHW K.LoadDrv.CmdArray (ARG[0] = DRVNAME)
jsr K.FileSearch find Driver in $DRV
bcs .9
stx .99+1
jsr K.LoadExeYA Y,A =filename full path
bcs .98
>STYA pDrv
stx .97+1
>LDYA K.LoadDrv.CmdArray Advance to ARG[1]
>STYA ZPPtr1
lda ZPPtr1
sec
adc (ZPPtr1)
sta ZPPtr1
bcc .1
inc ZPPtr1+1
.1 >LDYA ZPPtr1
jsr pDrvJmp call Dev.Detect
bcs .96
jsr BIN.InstallDRV
bcs .96
jsr .96 Cleanup...
lda #0 Make sure RC = 0 if success
clc
.9 rts
.96 pha
.97 lda #$ff
jsr K.FreeMemA
pla
.98 pha
.99 lda #$ff
jsr K.FreeMemA
pla
sec
rts
*--------------------------------------
K.LoadDrv.CmdArray .BS 2
*--------------------------------------
MAN
SAVE /A2OSX.SRC/SYS/KERNEL.S.DRV
LOAD /A2OSX.SRC/SYS/KERNEL.S
ASM