Kernel 0.93+

This commit is contained in:
Rémy GIBERT 2019-11-27 23:04:55 +01:00
parent 0fc16adc8b
commit 3115c7dff3
10 changed files with 54 additions and 26 deletions

Binary file not shown.

View File

@ -148,6 +148,7 @@ A2osX.QC.PrintYA
iny iny
dex dex
bne .1 bne .1
.9 plp .9 plp
bcc .99 bcc .99
jsr CROUT jsr CROUT
@ -170,7 +171,7 @@ MLIREADK .DA #4
MLICLOSEK .DA #1 MLICLOSEK .DA #1
.BS 1 .BS 1
*-------------------------------------- *--------------------------------------
SYSKERNEL >PSTR "SYS/KERNEL" SYSKERNEL >PSTR "sys/kernel"
*-------------------------------------- *--------------------------------------
MSG.INIT1 >PSTR "A2osX[Stage1]:Init" MSG.INIT1 >PSTR "A2osX[Stage1]:Init"
MSG.SETPREFIXOK >PSTR "Set Prefix OK" MSG.SETPREFIXOK >PSTR "Set Prefix OK"

View File

@ -531,7 +531,7 @@ MLIQUIT01 .DA #4
.DA 0 .DA 0
*-------------------------------------- *--------------------------------------
A2osX.LOGO >PSTR "A2OSX.LOGO" A2osX.LOGO >PSTR "A2OSX.LOGO"
SYS >PSTR "SYS/" SYS >PSTR "sys/"
KM.PREFIX >PSTR "KM." KM.PREFIX >PSTR "KM."
*-------------------------------------- *--------------------------------------
SCR.BASEL .HS 00.80.00.80.00.80.00.80.28.A8.28.A8.28.A8.28.A8.50.D0.50.D0.50.D0.50.D0 SCR.BASEL .HS 00.80.00.80.00.80.00.80.28.A8.28.A8.28.A8.28.A8.50.D0.50.D0.50.D0.50.D0

View File

@ -27,12 +27,12 @@ FilterMatch >LDA.G index
>SYSCALL GetMemPtr >SYSCALL GetMemPtr
>STYA ZPPtr2 >STYA ZPPtr2
* ldy #S.STAT.FSID ldy #S.STAT.FSID
* lda (ZPFileStat),y lda (ZPFileStat),y
* bne .10 not prodos... bne .10 not prodos...
* >LDYA ZPPtr2 CI compare >LDYA ZPPtr2 CI compare
* >SYSCALL strupr >SYSCALL strupr
.10 lda (ZPPtr2) Get first pattern byte .10 lda (ZPPtr2) Get first pattern byte
beq .8 Match always if empty beq .8 Match always if empty

View File

@ -1,16 +1,16 @@
NEW NEW
AUTO 3,1 AUTO 3,1
#!/bin/sh #!/BIN/SH
ECHO *** A2osX INIT Script *** ECHO *** A2osX INIT Script ***
# Main Screens # Main Screens
NOHUP getty /dev/tty1 ${ROOT}sbin/login & NOHUP GETTY /dev/tty1 ${ROOT}SBIN/LOGIN &
NOHUP getty /dev/tty2 ${ROOT}sbin/login & NOHUP GETTY /dev/tty2 ${ROOT}SBIN/LOGIN &
NOHUP getty /dev/tty3 ${ROOT}sbin/login & NOHUP GETTY /dev/tty3 ${ROOT}SBIN/LOGIN &
NOHUP getty /dev/tty4 ${ROOT}sbin/login & NOHUP GETTY /dev/tty4 ${ROOT}SBIN/LOGIN &
# Serial Login # Serial Login
#INSDRV SSC.DRV 9600,N,8,1,X #INSDRV SSC.DRV 9600,N,8,1,X
#INSDRV SSC.I.DRV 9600,N,8,1,X #INSDRV SSC.I.DRV 9600,N,8,1,X
#NOHUP getty /DEV/COM2 ${ROOT}SBIN/LOGIN & #NOHUP GETTY /DEV/COM2 ${ROOT}SBIN/LOGIN &
#INSDRV PIC.DRV #INSDRV PIC.DRV
# GUI Section # GUI Section
#INSDRV MOUSE.DRV #INSDRV MOUSE.DRV

View File

@ -629,7 +629,6 @@ S.STAT.P.DEVSTATUS .EQ 57 BYTE
S.STAT.P.DEVCNFLCT .EQ 58 BYTE S.STAT.P.DEVCNFLCT .EQ 58 BYTE
S.STAT.P.DEVBLOCKS .EQ 59 WORD S.STAT.P.DEVBLOCKS .EQ 59 WORD
S.STAT.FSID .EQ 61 BYTE S.STAT.FSID .EQ 61 BYTE
S.STAT.FSID.PRODOS .EQ 0
* *
S.STAT .EQ 64 S.STAT .EQ 64
*-------------------------------------- *--------------------------------------

View File

@ -36,6 +36,9 @@ MLISETEOF .EQ $D0
MLIGETEOF .EQ $D1 MLIGETEOF .EQ $D1
MLISETBUF .EQ $D2 MLISETBUF .EQ $D2
MLIGETBUF .EQ $D3 MLIGETBUF .EQ $D3
MLISETFILEINFOEX .EQ $D4
MLIGETFILEINFOEX .EQ $D5
*-------------------------------------- *--------------------------------------
S.FI.A .EQ $03 S.FI.A .EQ $03
S.FI.A.R .EQ $01 S.FI.A.R .EQ $01
@ -62,6 +65,8 @@ S.FI.CTIME .EQ $10
* *
S.FI .EQ $12 S.FI .EQ $12
*-------------------------------------- *--------------------------------------
S.FIEX .EQ $27
*--------------------------------------
MLI .EQ $BF00 MLI .EQ $BF00
*JSPARE .EQ $BF03 *JSPARE .EQ $BF03
DATETIME .EQ $BF06 DATETIME .EQ $BF06

View File

@ -99,8 +99,8 @@ K.ReadDir.ROOT
sta K.ReadDir.BufSize sta K.ReadDir.BufSize
bcc .2 bcc .2
inc K.ReadDir.BufSize+1 inc K.ReadDir.BufSize+1
.2
tya .2 tya
clc clc
adc #16 adc #16
tay tay
@ -391,6 +391,9 @@ K.ReadDir.ADDF
bne .1 bne .1
*-------------------------------------- *--------------------------------------
K.ReadDir.AddAccess K.ReadDir.AddAccess
ldy CORE.FSID
sta K.S.STAT+S.STAT.FSID
ldy #$1E ProDOS Access ldy #$1E ProDOS Access
lda (ZPPtr3),y lda (ZPPtr3),y

View File

@ -349,10 +349,12 @@ GP.SUB32 sec
ldx #3 ldx #3
plp plp
bcs .1 bcs .1
lda #$79 ADC Absolute,Y lda #$79 ADC Absolute,Y
.HS 2C BIT ABS .HS 2C BIT ABS
.1 lda #$F9 SBC Absolute,Y .1 lda #$F9 SBC Absolute,Y
sta .3 sta .3
.2 lda (pStack),y .2 lda (pStack),y
.3 adc ACC32,y SELF MODIFIED .3 adc ACC32,y SELF MODIFIED
sta (pStack),y sta (pStack),y
@ -583,6 +585,7 @@ CORE.TickSec .BS 1
CORE.Tick10t .BS 1 CORE.Tick10t .BS 1
CORE.CPUStatCnt .DA #100 CORE.CPUStatCnt .DA #100
CORE.LastPSID .DA #0 CORE.LastPSID .DA #0
CORE.FSID .BS 1
*-------------------------------------- *--------------------------------------
IRQ.InKernel .BS 1 IRQ.InKernel .BS 1
IRQ.InLib .BS 1 IRQ.InLib .BS 1

View File

@ -151,11 +151,11 @@ Kernel.Init3C >PUSHBI 0
jsr PwdMgrInit jsr PwdMgrInit
* lda KBD lda KBD
* bpl .7 bpl .7
* sta KBDSTROBE sta KBDSTROBE
* cmp #146 CTRL-R for ROOT mode cmp #146 CTRL-R for ROOT mode
* bne .7 bne .7
>PUSHBI 0 >PUSHBI 0
>LDYAI MSG.CTRLR >LDYAI MSG.CTRLR
@ -194,6 +194,16 @@ KConfigLoad >LDYAI MSG.KCREAD
jsr PrintFYA jsr PrintFYA
jsr MLI jsr MLI
.DA #MLIGETFILEINFOEX
.DA MLIGETFILEINFOEX00
bcs .1
>LDYAI MSG.PRODOSFX
jsr PrintFYA
inc CORE.FSID
.1 jsr MLI
.DA #MLIOPEN .DA #MLIOPEN
.DA MLIOPEN00 .DA MLIOPEN00
bcs .9 bcs .9
@ -1076,6 +1086,7 @@ TClock.SIG.Cnt .EQ *-TClock.SIG
*-------------------------------------- *--------------------------------------
MSG.Init2 .AZ "A2osX[Stage2]:Init\nRelocating Kernel...\n" MSG.Init2 .AZ "A2osX[Stage2]:Init\nRelocating Kernel...\n"
MSG.HZ .AZ "Kernel SYS Timer Set For %d0 hz Machine.\n" MSG.HZ .AZ "Kernel SYS Timer Set For %d0 hz Machine.\n"
MSG.PRODOSFX .AS "Running under ProDOS FX! Enabling lowercase mode.\n"
MSG.KCREAD .AZ "Reading Kernel Config File..." MSG.KCREAD .AZ "Reading Kernel Config File..."
MSG.KCREAD.OK .AZ "OK\n" MSG.KCREAD.OK .AZ "OK\n"
MSG.KCREAD.KO .AZ "\nError While Reading Kernel Config File, Using Default.\n" MSG.KCREAD.KO .AZ "\nError While Reading Kernel Config File, Using Default.\n"
@ -1134,12 +1145,12 @@ DEV.CONSOLE .AZ "/dev/console"
RAMx .AZ "/RAMx" RAMx .AZ "/RAMx"
I.ENV.BOOT .AZ "BOOT" I.ENV.BOOT .AZ "BOOT"
I.ENV.ROOT .AZ "ROOT" I.ENV.ROOT .AZ "ROOT"
I.ENV.PATH .AZ "PATH=${BOOT}sbin/:${BOOT}bin/" I.ENV.PATH .AZ "PATH=${BOOT}SBIN/:${BOOT}BIN/"
I.ENV.LIB .AZ "LIB=${BOOT}lib/" I.ENV.LIB .AZ "LIB=${BOOT}LIB/"
I.ENV.DRV .AZ "DRV=${BOOT}drv/" I.ENV.DRV .AZ "DRV=${BOOT}DRV/"
CTRLR.SHELL .AZ "${BOOT}BIN/SH" CTRLR.SHELL .AZ "${BOOT}BIN/SH"
ETCINIT.CMDLINE .AZ "${ROOT}etc/init" ETCINIT.CMDLINE .AZ "${ROOT}ETC/INIT"
ETCPASSWD .AZ "${ROOT}etc/passwd" ETCPASSWD .AZ "${ROOT}ETC/PASSWD"
*-------------------------------------- *--------------------------------------
PwdMgr.ROOT .DA #S.SESSION.P.ROOT PwdMgr.ROOT .DA #S.SESSION.P.ROOT
.DA #0 UID .DA #0 UID
@ -1150,6 +1161,12 @@ PwdMgr.ROOT .DA #S.SESSION.P.ROOT
.AZ "${ROOT}bin/sh" SHELL .AZ "${ROOT}bin/sh" SHELL
PwdMgr.ROOT.Size .EQ *-PwdMgr.ROOT PwdMgr.ROOT.Size .EQ *-PwdMgr.ROOT
*-------------------------------------- *--------------------------------------
MLIGETFILEINFOEX00
.DA #2
>PSTR "A2osX.KCONFIG"
.DA FIEX
FIEX .BS S.FIEX
*--------------------------------------
MLIOPEN00 .DA #3 MLIOPEN00 .DA #3
.DA .1 .DA .1
.DA $B000 .DA $B000