From e115340e9a3ef3d9be23eaba100e2001d78a2c44 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9my=20GIBERT?= Date: Wed, 29 Jan 2020 13:33:33 +0100 Subject: [PATCH] Kernel 0.93++ --- .Floppies/A2OSX.BUILD.po | Bin 33553920 -> 33553920 bytes ProDOS.FX/ProDOS.S.LDR.txt | 53 ++++++++++++++++++++++++------------- 2 files changed, 35 insertions(+), 18 deletions(-) diff --git a/.Floppies/A2OSX.BUILD.po b/.Floppies/A2OSX.BUILD.po index 58d96b725ac228ea54241748050b884b73eb449b..cc86c8ed5da4d1596e5c2c1735a35283b490518b 100644 GIT binary patch delta 8092 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 W`U~|p>L1iKRKK7LRzJbDss96%g%jHV delta 7364 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 diff --git a/ProDOS.FX/ProDOS.S.LDR.txt b/ProDOS.FX/ProDOS.S.LDR.txt index 5bcaedfb..30f97bf9 100644 --- a/ProDOS.FX/ProDOS.S.LDR.txt +++ b/ProDOS.FX/ProDOS.S.LDR.txt @@ -600,13 +600,30 @@ LDR.AddExtraDevs sta LDR.SlotIdx .1 ldx LDR.SlotIdx - ldy LDR.SlotDevType-1,x - bne .8 + lda LDR.SlotDevType-1,x + beq .8 lda LDR.SlotDevCnt-1,x cmp #3 bcc .8 +* pha + +* lsr +* lsr +* lsr +* lsr +* ora #$30 +* jsr LDR.PrintA +* pla +* pha + +* and #$0F +* ora #$30 +* jsr LDR.PrintA +* >DEBUG + +* pla jsr LDR.AddExtraSPDevs .8 dec LDR.SlotIdx @@ -665,31 +682,31 @@ LDR.AddSPDevs jsr LDR.SetDevID setup the devid byte from attributes lda LDR.SPStatus.Buf beq LDR.AddExtraDevs.RTS no devices, so done. - sta LDR.DevCnt - +* sta LDR.DevCnt ldx LDR.SlotIdx inc LDR.SlotDevType-1,x set as smartport -.3 inc LDR.SPStatus.U +*.3 inc LDR.SPStatus.U - jsr spvect call to get the device status - .HS 00 this is a status call - .DA LDR.SPStatus.P - bcs .7 +* jsr spvect call to get the device status +* .HS 00 this is a status call +* .DA LDR.SPStatus.P +* bcs .7 * lda LDR.SPStatus.Buf * bpl .7 not a block device - ldx LDR.SlotIdx - inc LDR.SlotDevCnt-1,x +* ldx LDR.SlotIdx +* inc LDR.SlotDevCnt-1,x -.7 dec LDR.DevCnt - bne .3 +*.7 dec LDR.DevCnt +* bne .3 - ldx LDR.SlotIdx - lda LDR.SlotDevCnt-1,x - beq LDR.AddBlkDevs.RTS +* ldx LDR.SlotIdx +* lda LDR.SlotDevCnt-1,x +* beq LDR.AddBlkDevs.RTS + sta LDR.SlotDevCnt-1,x cmp #2 CC/CS, add 1 or 2 devs *-------------------------------------- LDR.AddBlkDevs php how many drives (carry). @@ -762,8 +779,8 @@ LDR.AddExtraSPDevs .1 jsr spvect do status call .HS 00 .DA LDR.SPStatus.P -* lda LDR.SPStatus.Buf is this a block device? -* bpl .2 + lda LDR.SPStatus.Buf is this a block device? + bpl .2 jsr LDR.MountSPDevs bcs .8