diff --git a/.Floppies/A2OSX.BUILD.po b/.Floppies/A2OSX.BUILD.po index 76f09792..8e134ba8 100644 Binary files a/.Floppies/A2OSX.BUILD.po and b/.Floppies/A2OSX.BUILD.po differ diff --git a/.Floppies/A2OSX.SRC.po b/.Floppies/A2OSX.SRC.po index 0f024fff..5ca625cf 100644 Binary files a/.Floppies/A2OSX.SRC.po and b/.Floppies/A2OSX.SRC.po differ diff --git a/INC/KERNEL.I.txt b/INC/KERNEL.I.txt index a0dbc5d0..baaef7fc 100644 --- a/INC/KERNEL.I.txt +++ b/INC/KERNEL.I.txt @@ -8,7 +8,7 @@ AUTO 4,1 K.ENV.SIZE .EQ 256 K.FLT.MAX .EQ 4 K.EVT.MAX .EQ 4 -K.DEV.MAX .EQ 16 +K.DEV.MAX .EQ 32 K.PS.MAX .EQ 32 *-------------------------------------- H.BIN.T .EQ 0 @@ -121,7 +121,7 @@ Evt.Table .EQ $0D60 K.EVT.MAX*S.EVT.SIZE=4*8=32b *-------------------------------------- Flt.Table .EQ $0D80 K.FLT.MAX*S.FLT.SIZE=4*32=128b *-------------------------------------- -Dev.Table .EQ $0E00 K.DEV.MAX*S.DEV=32*16=512b +Dev.Table .EQ $0E00 K.DEV.MAX*2=32*2=64b *-------------------------------------- K.IOBuf .EQ $0F00 *-------------------------------------- diff --git a/SYS/KERNEL.S.CORE.txt b/SYS/KERNEL.S.CORE.txt index 3a204707..fdaa0d91 100644 --- a/SYS/KERNEL.S.CORE.txt +++ b/SYS/KERNEL.S.CORE.txt @@ -525,7 +525,8 @@ CORE.PSResume sei DevMgr.Stat .DA DevMgr.FreeMem DevMgr.Free .DA DevMgr.FreeMem .DA DevMgr.HiMem -DevMgr.Count .DA 0 +DevMgr.Count .DA #0 + .BS 1 *-------------------------------------- CORE.VBLState .BS 1 CORE.IRQMode .BS 1 diff --git a/SYS/KERNEL.S.DEV.txt b/SYS/KERNEL.S.DEV.txt index 0350b40f..c035fbc5 100644 --- a/SYS/KERNEL.S.DEV.txt +++ b/SYS/KERNEL.S.DEV.txt @@ -8,20 +8,19 @@ AUTO 4,1 * **Out:** * CC = OK, CS = ERROR * Y,A = DEVSLOT -* note: X Unmodified *\-------------------------------------- K.GetDevByID cmp DevMgr.Count - bcs K.GetDevDNF + bcs K.GetDev.NODEV - asl - asl - asl - asl - tay + tax - lda /Dev.Table - adc #0 - rts CC + lda Dev.Table+1,x + beq K.GetDev.NODEV + ldy Dev.Table,x + +* clc + +.9 rts CC */-------------------------------------- * # GetDevByName * **In:** @@ -32,41 +31,48 @@ K.GetDevByID cmp DevMgr.Count * Y,A = DEVSLOT *\-------------------------------------- K.GetDevByName >STYA ZPPtr1 - >LDYAI Dev.Table+S.DEV.NAME - >STYA ZPPtr2 ldx #0 + lda Dev.Table+1,x + beq .4 + ldy Dev.Table,x + + >STYA ZPPtr2 + + lda (ZPPtr2) + clc + adc #S.NODE.DEV.NAME + sta ZPPtr3 + ldy #1 + lda (ZPPtr2) + adc #0 + sta ZPPtr3+1 + .1 ldy #$ff .2 iny lda (ZPPtr1),y - cmp (ZPPtr2),y - bne .3 + cmp (ZPPtr3),y + bne .4 - ora (ZPPtr2),y Both char are 0 ? + ora (ZPPtr3),y Both char are 0 ? bne .2 no....loop - lda ZPPtr2 + lda ZPPtr3 and #$F0 tay - lda ZPPtr2+1 + lda ZPPtr3+1 clc rts -.3 lda ZPPtr2 - clc - adc #S.DEV - sta ZPPtr2 - bcc .4 - - inc ZPPtr2+1 - .4 inx + inx cpx DevMgr.Count bne .1 -K.GetDevDNF lda #MLI.E.NODEV CS from cpx/beq +K.GetDev.NODEV lda #MLI.E.NODEV + sec rts */-------------------------------------- * # GetDevStatus diff --git a/SYS/KERNEL.S.DRV.txt b/SYS/KERNEL.S.DRV.txt index 1225a07f..687b8d5c 100644 --- a/SYS/KERNEL.S.DRV.txt +++ b/SYS/KERNEL.S.DRV.txt @@ -111,7 +111,7 @@ DRV.RamDrive.Stat >PSTR "ProDOS /RAM Disk" .DA #S.DSTAT.T.RAM .DA #0 - .DA #0,#91 + .DA KVER *-------------------------------------- * DRV.BlkDevice * X = IOCTL @@ -209,7 +209,7 @@ DRV.BlkDevice.Stat >PSTR "ProDOS Block Dev" .DA #S.DSTAT.T.PRODOS .DA #0 - .DA #0,#91 + .DA KVER *-------------------------------------- * Smartport Driver *-------------------------------------- @@ -445,9 +445,6 @@ DRV.SYS.Scroll ldx #1 lda DRV.SYS.BASEH,x sta ZPDRV+3 - php - sei - ldx #DRV.SYS.Scroll-DRV.SYS.ScrollAux-1 .2 lda DRV.SYS.ScrollAux,x @@ -461,8 +458,6 @@ DRV.SYS.Scroll ldx #1 jsr $102 sta CLRWRITEAUX - plp - ldy #39 .3 lda (ZPDRV+2),y @@ -479,9 +474,6 @@ DRV.SYS.ClrLineAtX lda #$A0 ldy #39 - php - sei - .1 sta SETWRITEAUX sta (ZPDRV),y sta CLRWRITEAUX @@ -489,8 +481,6 @@ DRV.SYS.ClrLineAtX dey bpl .1 - plp - rts *-------------------------------------- DRV.SYS.Home ldx #23 @@ -523,12 +513,10 @@ DRV.SYS.SetCharAtYX bcs .2 - php - sei sta SETWRITEAUX sta (ZPDRV),y sta CLRWRITEAUX - plp + ply rts diff --git a/SYS/KERNEL.S.INIT.txt b/SYS/KERNEL.S.INIT.txt index 75963a63..8d774fc7 100644 --- a/SYS/KERNEL.S.INIT.txt +++ b/SYS/KERNEL.S.INIT.txt @@ -939,8 +939,9 @@ DevMgrInit.AddNode sta Dev.Table+1,x tya sta Dev.Table,x - inc DevMgr.Count - inc DevMgr.Count + inx + inx + stx DevMgr.Count clc rts