From 518bd1a81dda3633d3b15eaa978afaa0b15c4c02 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9my=20GIBERT?= Date: Mon, 9 Dec 2019 16:53:14 +0100 Subject: [PATCH] Kernel 0.93+ --- .Floppies/A2OSX.BUILD.po | Bin 33553920 -> 33553920 bytes A2osX.S.QC.txt | 44 ++++++++++++++++++++-------------- A2osX.S.txt | 32 ++++++++++++++++++++++++- BIN/KCONFIG.S.txt | 6 ++--- ProDOS.203/ProDOS.S.txt | 2 +- ProDOS.FX/ProDOS.S.XDOS.A.txt | 5 ++++ ProDOS.FX/ProDOS.S.XDOS.E.txt | 26 +++++++++++++------- SYS/KERNEL.S.INIT.txt | 20 ++++++++-------- 8 files changed, 93 insertions(+), 42 deletions(-) diff --git a/.Floppies/A2OSX.BUILD.po b/.Floppies/A2OSX.BUILD.po index 7aad878c0f2f7bf524d6c735be0353038f8ce247..a77b2cd52c5e5f720b6d54b2222f061616061a8e 100644 GIT binary patch delta 41175 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 delta 38851 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 Ye{=3% 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 diff --git a/A2osX.S.QC.txt b/A2osX.S.QC.txt index 70a163bb..63ad40e2 100644 --- a/A2osX.S.QC.txt +++ b/A2osX.S.QC.txt @@ -37,30 +37,33 @@ A2osX.QC.Start1 sei sec >LDYAI MSG.INIT1 jsr A2osX.QC.PrintYA - sec - >LDYAI A2osX.QC.BOOT - jsr A2osX.QC.PrintYA - sec - >LDYAI A2osX.QC.ROOT - jsr A2osX.QC.PrintYA + .3 jsr MLI .DA #MLISETPREFIX .DA MLISETPREFIX00 bcc .4 + >LDYAI MSG.SETPREFIXKO + clc jsr A2osX.QC.PrintYA >LDYAI A2osX.QC.BOOT sec jsr A2osX.QC.PrintYA bra .3 + .4 >LDYAI MSG.SETPREFIXOK + clc + jsr A2osX.QC.PrintYA + >LDYAI A2osX.QC.BOOT sec jsr A2osX.QC.PrintYA + ldx A2osX.QC.BOOT stx $280 For appending SYS/KERNEL stz $2C0,x + .5 lda A2osX.QC.BOOT,x sta $280,x sta $2C0-1,x BOOT sz for KERNEL @@ -101,9 +104,7 @@ A2osX.QC.KLoad >LDYAI MSG.KLOAD cpy SYSKERNEL bne .2 stx $280 - >LDYAI $280 - clc - jsr A2osX.QC.PrintYA + jsr MLI .DA #MLIOPEN .DA MLIOPENK @@ -125,14 +126,20 @@ A2osX.QC.KLoad >LDYAI MSG.KLOAD pla plp bcc .8 -.9 pha + +.9 jsr PRBYTE + >LDYAI MSG.KLOAD.KO - clc - jsr A2osX.QC.PrintYA - pla - jsr PRBYTE sec -.8 rts + jsr A2osX.QC.PrintYA + sec + rts + +.8 >LDYAI MSG.KLOAD.OK + sec + jsr A2osX.QC.PrintYA + clc + rts *-------------------------------------- A2osX.QC.PrintYA php @@ -174,10 +181,11 @@ MLICLOSEK .DA #1 SYSKERNEL >PSTR "sys/kernel" *-------------------------------------- MSG.INIT1 >PSTR "A2osX[Stage1]:Init" -MSG.SETPREFIXOK >PSTR "Set Prefix OK" +MSG.SETPREFIXOK >PSTR "Prefix Set: " MSG.SETPREFIXKO >PSTR "Insert Vol:" -MSG.KLOAD >PSTR "Loading Kernel:" -MSG.KLOAD.KO >PSTR "Error While Loading Kernel." +MSG.KLOAD >PSTR "Loading Kernel..." +MSG.KLOAD.KO >PSTR " Error While Loading Kernel." +MSG.KLOAD.OK >PSTR "Done." MSG.INIT1OK >PSTR "A2osX[Stage1]:Complete." *-------------------------------------- .BS $1300-* diff --git a/A2osX.S.txt b/A2osX.S.txt index 2f5e19e7..03a4fb61 100644 --- a/A2osX.S.txt +++ b/A2osX.S.txt @@ -73,6 +73,7 @@ A2osX.Init1.128 jsr MLI bcs * ldx Boot.Prefix + .1 lda Boot.Prefix,x sta A2osX.QC.B.BOOT,x sta A2osX.QC.B.ROOT,x @@ -137,7 +138,9 @@ A2osX.RamDrv >LDYAI MSG.RAMDRV *-------------------------------------- A2osX.EnumKM >LDYAI MSG.KMENUM jsr PrintFYA + jsr EnumKM + bcs * *-------------------------------------- A2osX.SetupQC lda RRAMWRAMBNK2 @@ -195,6 +198,7 @@ A2osX.Screen80 lda #$8C Reset 80 col screen ($0C:HOME) bcs .98 jsr .98 bra A2osX.ScreenDLGR + .98 jsr MLI .DA #MLICLOSE .DA MLICLOSE00 @@ -343,6 +347,7 @@ EnumKM ldx #0 iny cpx SYS bne .1 + sty Boot.Prefix jsr MLI .DA #MLIOPEN @@ -352,21 +357,28 @@ EnumKM ldx #0 lda MLIOPEN01+5 sta MLIREAD01+1 sta MLICLOSE01+1 + .2 jsr MLI .DA #MLIREAD .DA MLIREAD01 bcs .98 + lda #EnumKM.EPB sta EnumKM.EC + >LDYAI A2osX.ReadBuff+4 >STYA EnumKM.BPTR + .3 >LDYA EnumKM.BPTR >STYA TmpPtr1 + lda (TmpPtr1) and #$F0 Empty ? beq .5 yes, skip + and #$C0 anything out of type 1,2 or 3 ? bne .5 yes, skip + lda (TmpPtr1) and #$0F cmp KM.PREFIX at least enough chars for KM.*? @@ -376,25 +388,34 @@ EnumKM ldx #0 lda (TmpPtr1),y cmp #$06 'BIN'? bne .5 skip + ldy KM.PREFIX + .4 lda (TmpPtr1),y cmp KM.PREFIX,y bne .5 + dey bne .4 + jsr LoadKM + .5 lda EnumKM.BPTR clc adc #EnumKM.EL sta EnumKM.BPTR bcc .6 + inc EnumKM.BPTR+1 .6 dec EnumKM.EC bne .3 + bra .2 + .98 cmp #MLI.E.EOF beq .8 + pha jsr .8 pla @@ -411,10 +432,12 @@ EnumKM.EC .BS 1 EnumKM.BPTR .BS 2 *-------------------------------------- LoadKM ldx Boot.Prefix + .1 lda Boot.Prefix,x sta KM.Filename,x dex bne .1 + ldx Boot.Prefix lda (TmpPtr1) and #$0F @@ -423,11 +446,13 @@ LoadKM ldx Boot.Prefix adc Boot.Prefix sta KM.Filename tax + .2 lda (TmpPtr1),y sta KM.Filename,x dex dey bne .2 + lda #KM.Filename pha lda /KM.Filename @@ -443,17 +468,22 @@ LoadKM ldx Boot.Prefix lda MLIOPEN02+5 sta MLIREAD02+1 sta MLICLOSE02+1 + jsr MLI .DA #MLIREAD .DA MLIREAD02 bcs .98 + jsr .9 jsr A2osX.KMLOAD + .98 pha jsr .9 pla + sec rts + .9 jsr MLI .DA #MLICLOSE .DA MLICLOSE02 @@ -530,7 +560,7 @@ MLIQUIT01 .DA #4 .DA #0 .DA 0 *-------------------------------------- -A2osX.LOGO >PSTR "A2OSX.LOGO" +A2osX.LOGO >PSTR "A2osX.logo" SYS >PSTR "sys/" KM.PREFIX >PSTR "KM." *-------------------------------------- diff --git a/BIN/KCONFIG.S.txt b/BIN/KCONFIG.S.txt index e0ec808b..815f2232 100644 --- a/BIN/KCONFIG.S.txt +++ b/BIN/KCONFIG.S.txt @@ -354,7 +354,7 @@ SLOTS .DA #0 .DA #A2osX.S.DISABLE SLOTS.MAX .EQ *-SLOTS *-------------------------------------- -FILENAME .AZ "${ROOT}A2osX.KCONFIG" +FILENAME .AZ "${ROOT}A2osX.kconfig" MSG.TOPBAR .AZ "\e[40;37m\e[7m\e[1;1HA2osX Kernel Config Utility : " MSG.TOPBAR.OK .AZ "KCONFIG File Successfully Loaded. \e[0m" MSG.TOPBAR.KO .AZ "Invalid/missing KCONFIG File. \e[0m" @@ -382,8 +382,8 @@ MSG.SLOT.CLK .AZ "Clock Card" MSG.SLOT.DIS .AZ "" MSG.PROMPT .AZ "\e[24;80H" MSG.QUIT .AZ "\ec" -MSG.QUIT.SAVED .AZ "\ecA2osX.KCONFIG file saved.\r\n\r\n" -MSG.QUIT.ERR .AZ "\ecError [$%h] while writing A2osX.KCONFIG file.\r\n\r\n" +MSG.QUIT.SAVED .AZ "\ecA2osX.kconfig file saved.\r\n\r\n" +MSG.QUIT.ERR .AZ "\ecError [$%h] while writing A2osX.kconfig file.\r\n\r\n" *-------------------------------------- .DUMMY .OR 0 diff --git a/ProDOS.203/ProDOS.S.txt b/ProDOS.203/ProDOS.S.txt index 0005bd68..e778f582 100644 --- a/ProDOS.203/ProDOS.S.txt +++ b/ProDOS.203/ProDOS.S.txt @@ -3,7 +3,7 @@ NEW .LIST OFF .OP 65816 .OR $2000 - .TF PRODOS.203,TSYS + .TF PRODOS.203TC,TSYS *-------------------------------------- .INB INC/ZP.I .INB INC/IO.I diff --git a/ProDOS.FX/ProDOS.S.XDOS.A.txt b/ProDOS.FX/ProDOS.S.XDOS.A.txt index 227173d0..ecf12ced 100644 --- a/ProDOS.FX/ProDOS.S.XDOS.A.txt +++ b/ProDOS.FX/ProDOS.S.XDOS.A.txt @@ -24,6 +24,11 @@ XDOS.MLI cld no decimal. stz p8error clear any previous errors. ldy #$01 find out if command is valid. lda (A3L),y get command # + +* cmp #$D5 +* bne .77 +* >DEBUG +*.77 lsr and hash it to a range of 0-$1F lsr lsr diff --git a/ProDOS.FX/ProDOS.S.XDOS.E.txt b/ProDOS.FX/ProDOS.S.XDOS.E.txt index 3787db07..1f862dc9 100644 --- a/ProDOS.FX/ProDOS.S.XDOS.E.txt +++ b/ProDOS.FX/ProDOS.S.XDOS.E.txt @@ -394,23 +394,31 @@ XDOS.NewLine ldy #$02 adjust newline status for open file. rts *-------------------------------------- XDOS.GetFileInfoEx - jsr lookfile see if file exists + jsr findfile see if file exists bcs .9 ldy #3 lda (A3L),y - sta .2+1 + sta zpt iny lda (A3L),y - sta .2+2 + sta zpt+1 - ldy h_entln +* ldy #S.FIEX.BLKPTR+2-1 -.1 dey - lda (zpt),y -.2 sta $ffff,y - tya - bne .1 +*.1 lda d_filid,y +* sta (zpt),y +* dey +* bpl .1 + +* ldx #7 +* ldy #S.FIEX.ACL+7 + +*.2 lda h_acl,x +* sta (zpt),y +* dex +* dey +* bpl .2 .9 rts *-------------------------------------- diff --git a/SYS/KERNEL.S.INIT.txt b/SYS/KERNEL.S.INIT.txt index cd973f9e..7d11df03 100644 --- a/SYS/KERNEL.S.INIT.txt +++ b/SYS/KERNEL.S.INIT.txt @@ -198,11 +198,13 @@ KConfigLoad >LDYAI MSG.KCREAD .DA MLIGETFILEINFOEX00 bcc .1 eor #MLI.E.BADCALL - beq .2 + beq .2 regular ProDOS -.1 ror CORE.FSID ProDOS.FX detected + ror CORE.FSID Bad file, but ProDOS.FX detected bra .9 +.1 ror CORE.FSID File Present & ProDOS.FX detected + .2 jsr MLI .DA #MLIOPEN .DA MLIOPEN00 @@ -224,13 +226,12 @@ KConfigLoad >LDYAI MSG.KCREAD bcs .9 >LDYAI MSG.KCREAD.OK - jsr PrintFYA bra .8 .9 >LDYAI MSG.KCREAD.KO - jsr PrintFYA - -.8 lda CORE.FSID + +.8 jsr PrintFYA + lda CORE.FSID beq .99 >LDYAI MSG.PRODOSFX @@ -1126,7 +1127,6 @@ MSG.IRQ.POLL .AZ " Polling Mode." MSG.EVT .AZ "Event Manager..." MSG.TSK .AZ "Task Manager..." MSG.PWD .AZ "Password Manager..." -MSG.BOOTROOT .AZ "Boot Path:%S\r\nRoot Path:%S\r\n" MSG.CTRLR .AZ "Ctrl-R Pressed, entering ROOT mode..." MSG.PWDINIT .AZ "Loading ETC/PASSWD file..." MSG.ETCINIT .AZ "Executing %s..." @@ -1172,15 +1172,15 @@ PwdMgr.ROOT.Size .EQ *-PwdMgr.ROOT *-------------------------------------- MLIGETFILEINFOEX00 .DA #2 - >PSTR "A2osX.KCONFIG" + .DA MLIOPEN00.FN .DA FIEX FIEX .BS S.FIEX *-------------------------------------- MLIOPEN00 .DA #3 - .DA .1 + .DA MLIOPEN00.FN .DA $B000 .BS 1 -.1 >PSTR "A2osX.KCONFIG" +MLIOPEN00.FN >PSTR "A2osX.kconfig" *-------------------------------------- MLIREAD00 .DA #4 .BS 1