diff --git a/.Floppies/A2OSX.BUILD.po b/.Floppies/A2OSX.BUILD.po index 3534e8a5..78a59ea4 100644 Binary files a/.Floppies/A2OSX.BUILD.po and b/.Floppies/A2OSX.BUILD.po differ diff --git a/BIN/LSDEV.S.txt b/BIN/LSDEV.S.txt index f30fc576..ed277406 100644 --- a/BIN/LSDEV.S.txt +++ b/BIN/LSDEV.S.txt @@ -15,6 +15,7 @@ AUTO 4,1 .OR ZPBIN ZS.START ZPFDPtr .BS 2 +Index .BS 1 ZS.END .ED *-------------------------------------- @@ -28,7 +29,7 @@ CS.START cld .DA #0 .DA CS.END-CS.START Code Size (without Constants) .DA DS.END-DS.START Data SegmentSize - .DA #16 Stack Size + .DA #64 Stack Size .DA #ZS.END-ZS.START Zero Page Size .DA 0 *-------------------------------------- @@ -59,15 +60,9 @@ L.FD.T .DA FD.T.REG CS.INIT clc rts *-------------------------------------- -CS.RUN lda #1 - >STA.G Table.Index - - jsr DumpDev +CS.RUN jsr DumpDev bcs .9 - lda #2 - >STA.G Table.Index - jsr DumpNod bcs .9 @@ -78,10 +73,10 @@ CS.RUN lda #1 DumpDev >LDYA L.MSG0 >SYSCALL puts - >LDA.G Table.Index + ldx #1 + stx Index -.1 tax - lda Dev.Table-1,x +.1 lda Dev.Table-1,x sta ZPFDPtr lda Dev.Table,x sta ZPFDPtr+1 @@ -100,7 +95,7 @@ DumpDev >LDYA L.MSG0 bpl .2 >PUSHEA.G DEV.DIB - >LDA.G Table.Index + lda Index >SYSCALL GetDevStatus bcc .6 @@ -108,15 +103,17 @@ DumpDev >LDYA L.MSG0 >PUSHBI 1 >LDYA L.MSG2.ERR >SYSCALL printf - bcs .9 + bra .7 .6 jsr DumpDevDIB -.7 >INC.G Table.Index - >INC.G Table.Index - cmp #K.DEV.MAX*2+1 +.7 inc Index + inc index + + ldx Index + cpx #K.DEV.MAX*2+1 bne .1 .8 clc @@ -139,7 +136,7 @@ DumpDevFD ldy #S.FD.DEV.DRVPTR+1 >PUSHB (ZPFDPtr) S.FD.T - >PUSHB.G Table.Index + >PUSHB Index >PUSHBI 6 >LDYA L.MSG1 @@ -200,17 +197,15 @@ DumpDevDIB >PUSHB.G DEV.DIB+S.DIB.VERSION+1 DumpNod >LDYA L.MSG3 >SYSCALL puts - >LDA.G Table.Index + ldx #2 + stx Index -.1 tax - - lda Nod.Table.hPath-2,x +.1 lda Nod.Table.hPath-2,x beq .7 >SYSCALL GetMemPtr >PUSHYA - >LDA.G Table.Index - tax + ldx Index lda Nod.Table.hFD-2,x >SYSCALL GetMemPtr >STYA ZPFDPtr @@ -219,8 +214,7 @@ DumpNod >LDYA L.MSG3 tax >PUSHW L.FD.T,x - >LDA.G Table.Index - tax + ldx Index lda Nod.Table.hFD-2,x >PUSHA txa @@ -230,8 +224,10 @@ DumpNod >LDYA L.MSG3 >LDYA L.MSG4 >SYSCALL printf -.7 >INC.G Table.Index - cmp #K.NOD.MAX+2 +.7 inc index + + ldx index + cpx #K.NOD.MAX+2 bne .1 clc @@ -273,7 +269,6 @@ BLANK.DIB .DA #0 #S.DIB.S.BLOCK+S.DIB.S.WRITE+S.DIB.S.READ .DUMMY .OR 0 DS.START -Table.Index .BS 1 DEV.DIB .BS S.DIB DEV.SFLAGS .BS 9 DS.END diff --git a/SYS/KERNEL.S.INIT.txt b/SYS/KERNEL.S.INIT.txt index f80af2d0..d54e5bc9 100644 --- a/SYS/KERNEL.S.INIT.txt +++ b/SYS/KERNEL.S.INIT.txt @@ -851,11 +851,13 @@ DevMgrInit >LDYAI MSG.DEV jsr DevMgrInit.RAM bra .8 -.3 and #$F0 - cmp #$C0 - beq .4 +.3 cmp #$C8 + bcs .6 Some Prodos patched DRV - jsr DevMgrInit.USR Outside ROM space, User loaded BLK dev + cmp #$C0 + bcs .4 + + jsr DevMgrInit.USR Outside ROM space, User loaded BLK dev bra .8 .4 ldx #SmartPort.SIG-SmartPort.OFS-1 @@ -888,6 +890,9 @@ DevMgrInit >LDYAI MSG.DEV inc FD.BDEV+S.FD.DEV.DEVID Remapped SP devices.... inc FD.BDEV+S.FD.DEV.DEVID Add 2 to DEVID (2 & 3) + jsr DevMgrInit.SP + bra .8 Phantom slot... + .52 jsr DevMgrInit.SP lda #A2osX.S.SP bra .7 @@ -943,7 +948,7 @@ DevMgrInit.SP ldy #$ff .1 jsr $ffff Self Modified .DA #0 Status .DA SP.IOCTL.STATUS - bcs DevMgrInit.AddBDev.RTS +* bcs DevMgrInit.AddBDev.RTS ldx #8 >LDYAI DRV.SmartPort @@ -956,6 +961,7 @@ DevMgrInit.AddBDev sta FD.BDEV.NAME+1 SnDy lda FD.BDEV+S.FD.DEV.DEVID + and #3 Make sure 1 or 2 ora #$30 sta FD.BDEV.NAME+3 SxDn