mirror of
https://github.com/A2osX/A2osX.git
synced 2024-11-29 17:50:18 +00:00
DRV:Bug fixed preventing INSDRV resuming after loading a driver
This commit is contained in:
parent
0ef0939f24
commit
b616022a9e
@ -35,11 +35,11 @@ S.LoadDrvA >PUSHA push Cmd Line for S.PStrGetTkn
|
|||||||
jsr S.LoadBinA
|
jsr S.LoadBinA
|
||||||
bcs .96
|
bcs .96
|
||||||
|
|
||||||
>STYA pCode
|
>STYA pDrv
|
||||||
stx LoadDrv.hMem
|
stx LoadDrv.hMem
|
||||||
|
|
||||||
lda LoadDrv.Args
|
lda LoadDrv.Args
|
||||||
jsr pCodeJmp call Dev.Detect
|
jsr S.LoadDrvA.Jmp call Dev.Detect
|
||||||
|
|
||||||
bcs .95
|
bcs .95
|
||||||
|
|
||||||
@ -80,28 +80,30 @@ S.LoadDrvA >PUSHA push Cmd Line for S.PStrGetTkn
|
|||||||
.99 sec
|
.99 sec
|
||||||
rts
|
rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
|
S.LoadDrvA.Jmp jmp (pDrv)
|
||||||
|
*--------------------------------------
|
||||||
LoadDrv.Cmd .BS 1
|
LoadDrv.Cmd .BS 1
|
||||||
LoadDrv.Args .BS 1
|
LoadDrv.Args .BS 1
|
||||||
LoadDrv.Path .BS 1
|
LoadDrv.Path .BS 1
|
||||||
LoadDrv.FullName .BS 1
|
LoadDrv.FullName .BS 1
|
||||||
LoadDrv.hMem .BS 1
|
LoadDrv.hMem .BS 1
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
* pCode = .DRV File Loaded Address
|
* pDrv = .DRV File Loaded Address
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
S.InsDrv ldy #H.BIN.DRV.CODE.LEN
|
S.InsDrv ldy #H.BIN.DRV.CODE.LEN
|
||||||
lda (pCode),y
|
lda (pDrv),y
|
||||||
sta R.AL
|
sta R.AL
|
||||||
iny
|
iny
|
||||||
lda (pCode),y
|
lda (pDrv),y
|
||||||
sta R.AH
|
sta R.AH
|
||||||
|
|
||||||
ldy #H.BIN.DRV.CODE.O
|
ldy #H.BIN.DRV.CODE.O
|
||||||
lda (pCode),y
|
lda (pDrv),y
|
||||||
clc
|
clc
|
||||||
adc S.LoadBinA.AuxType
|
adc S.LoadBinA.AuxType
|
||||||
sta R.BL
|
sta R.BL
|
||||||
iny
|
iny
|
||||||
lda (pCode),y
|
lda (pDrv),y
|
||||||
adc S.LoadBinA.AuxType+1
|
adc S.LoadBinA.AuxType+1
|
||||||
sta R.BH set BX=End Of Code
|
sta R.BH set BX=End Of Code
|
||||||
|
|
||||||
@ -116,11 +118,11 @@ S.InsDrv ldy #H.BIN.DRV.CODE.LEN
|
|||||||
ldy #H.BIN.DRV.CODE.O
|
ldy #H.BIN.DRV.CODE.O
|
||||||
lda S.LoadBinA.FileLen
|
lda S.LoadBinA.FileLen
|
||||||
sec
|
sec
|
||||||
sbc (pCode),y
|
sbc (pDrv),y
|
||||||
sta S.InsDrv.DRVLen
|
sta S.InsDrv.DRVLen
|
||||||
iny
|
iny
|
||||||
lda S.LoadBinA.FileLen+1
|
lda S.LoadBinA.FileLen+1
|
||||||
sbc (pCode),y
|
sbc (pDrv),y
|
||||||
sta S.InsDrv.DRVLen+1 Compute DRV Len
|
sta S.InsDrv.DRVLen+1 Compute DRV Len
|
||||||
|
|
||||||
lda DevMgr.Free
|
lda DevMgr.Free
|
||||||
@ -148,13 +150,13 @@ S.InsDrv ldy #H.BIN.DRV.CODE.LEN
|
|||||||
sta DevMgr.LastDevID
|
sta DevMgr.LastDevID
|
||||||
|
|
||||||
ldy #H.BIN.DEV.HEADER.O
|
ldy #H.BIN.DEV.HEADER.O
|
||||||
lda (pCode),y
|
lda (pDrv),y
|
||||||
clc
|
clc
|
||||||
adc pCode
|
adc pDrv
|
||||||
sta ZPQuickPtr1
|
sta ZPQuickPtr1
|
||||||
iny
|
iny
|
||||||
lda (pCode),y
|
lda (pDrv),y
|
||||||
adc pCode+1
|
adc pDrv+1
|
||||||
sta ZPQuickPtr1+1
|
sta ZPQuickPtr1+1
|
||||||
|
|
||||||
ldy #S.DEV.JMP
|
ldy #S.DEV.JMP
|
||||||
@ -169,13 +171,13 @@ S.InsDrv ldy #H.BIN.DRV.CODE.LEN
|
|||||||
sta R.DH set DX=Offset
|
sta R.DH set DX=Offset
|
||||||
|
|
||||||
ldy #H.BIN.DRV.CODE.O
|
ldy #H.BIN.DRV.CODE.O
|
||||||
lda (pCode),y
|
lda (pDrv),y
|
||||||
clc
|
clc
|
||||||
adc pCode
|
adc pDrv
|
||||||
pha
|
pha
|
||||||
iny
|
iny
|
||||||
lda (pCode),y
|
lda (pDrv),y
|
||||||
adc pCode+1
|
adc pDrv+1
|
||||||
ply
|
ply
|
||||||
|
|
||||||
jsr S.DrvRelocateYA
|
jsr S.DrvRelocateYA
|
||||||
@ -196,13 +198,13 @@ S.InsDrv ldy #H.BIN.DRV.CODE.LEN
|
|||||||
rts
|
rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
S.InsDrv.Move ldy #H.BIN.DEV.HEADER.O
|
S.InsDrv.Move ldy #H.BIN.DEV.HEADER.O
|
||||||
lda (pCode),y
|
lda (pDrv),y
|
||||||
clc
|
clc
|
||||||
adc pCode
|
adc pDrv
|
||||||
sta ZPQuickPtr1
|
sta ZPQuickPtr1
|
||||||
iny
|
iny
|
||||||
lda (pCode),y
|
lda (pDrv),y
|
||||||
adc pCode+1
|
adc pDrv+1
|
||||||
sta ZPQuickPtr1+1
|
sta ZPQuickPtr1+1
|
||||||
|
|
||||||
ldy #S.DEV.JMP Relocate Main JMP
|
ldy #S.DEV.JMP Relocate Main JMP
|
||||||
@ -230,13 +232,13 @@ S.InsDrv.Move ldy #H.BIN.DEV.HEADER.O
|
|||||||
bpl .1
|
bpl .1
|
||||||
|
|
||||||
ldy #H.BIN.DRV.CODE.O
|
ldy #H.BIN.DRV.CODE.O
|
||||||
lda (pCode),y
|
lda (pDrv),y
|
||||||
clc
|
clc
|
||||||
adc pCode
|
adc pDrv
|
||||||
sta ZPQuickPtr1
|
sta ZPQuickPtr1
|
||||||
iny
|
iny
|
||||||
lda (pCode),y
|
lda (pDrv),y
|
||||||
adc pCode+1
|
adc pDrv+1
|
||||||
sta ZPQuickPtr1+1 Make ZPQuickPtr1=DRV.CODE
|
sta ZPQuickPtr1+1 Make ZPQuickPtr1=DRV.CODE
|
||||||
|
|
||||||
lda DevMgr.Free
|
lda DevMgr.Free
|
||||||
|
Loading…
Reference in New Issue
Block a user