Kernel 0.9.2

This commit is contained in:
Rémy GIBERT 2018-08-24 12:20:23 +02:00
parent 27fa64618a
commit da07bf58a7
11 changed files with 112 additions and 116 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -143,16 +143,14 @@ CS.RUN >SYSCALL GetChar
.4 ldy #S.STAT.P.DRIVE
lda (ZPFileStat),y ProDOS Device ?
bne .5
bne CS.RUN.DEV
ldy #S.STAT.P.TYPE
lda (ZPFileStat),y
cmp #$0F Directory ?
bne .6
bne CS.RUN.FILE
jmp CS.RUN.DIR
.5 jmp CS.RUN.DEV
.6 jmp CS.RUN.FILE
.9 jsr LeaveSubDir
bcs .92
@ -168,10 +166,6 @@ CS.RUN >SYSCALL GetChar
.99 rts
*--------------------------------------
CS.RUN.DIR
.8 jsr GetNextEntry
clc
.9 rts
*--------------------------------------
CS.RUN.DEV
.8 jsr GetNextEntry
clc
@ -351,17 +345,14 @@ MSG.USAGE .AZ "Usage : CHTYP [File *,? wildcards allowed] [File type : 0xx (Hex
MSG.OK .AZ "[OK]"
MSG.ERR .AZ "[%h]\r\n"
MSG.FILE .AZ "CHTYP File:%S..."
Tmp .BS 1
*--------------------------------------
PRODOS.FT.COUNT .EQ 7
PRODOS.FT.ID .HS 0406FAFCFDE2FF
PRODOS.FT.COUNT .EQ 6
PRODOS.FT.ID .HS 0406FAFCFDFF
PRODOS.FT.TXT .AS "TXT"
.AS "BIN"
.AS "S-C"
.AS "ASM"
.AS "BAS"
.AS "VAR"
.AS "ATK"
.AS "SYS"
*--------------------------------------
.DUMMY

View File

@ -270,7 +270,7 @@ CS.RUN.DIR >LDA.G bAllmostAll
*--------------------------------------
CS.RUN.FILE ldy #bLong
lda (pData),y
bmi .8
bmi .1
>PUSHW ZPFileName
>PUSHBI 2
@ -283,35 +283,32 @@ CS.RUN.FILE ldy #bLong
clc
rts
.8 jsr CS.RUN.PUSHDATES
.1 jsr CS.RUN.PUSHDATES
ldy #S.STAT.SIZE+3
lda (ZPFileStat),y
ldx #4
.2 lda (ZPFileStat),y
>PUSHA
dey
lda (ZPFileStat),y
>PUSHA
dey
lda (ZPFileStat),y
>PUSHA
dey
lda (ZPFileStat),y
>PUSHA
dex
bne .2
jsr Mod2CSTR
>PUSHEA.G MOD File Mod
ldy #S.STAT.P.AUXTYPE+1
lda (ZPFileStat),y
>PUSHA
dey
lda (ZPFileStat),y
>PUSHA AuxType
dey
>PUSHA
dey Type
lda (ZPFileStat),y
jsr FileType2PSTR
>PUSHYA Type
>PUSHYA
>PUSHW ZPFileName
>PUSHBI 16
@ -427,7 +424,7 @@ CS.QUIT jsr LeaveSubDir
FileType2PSTR ldy #0
.1 cmp PRODOS.FT.HEX,y
beq .2
beq .8
iny
cpy #PRODOS.FT.TXT-PRODOS.FT.HEX
@ -438,17 +435,21 @@ FileType2PSTR ldy #0
lsr
lsr
lsr
tax
lda HEXDIGIT,x
sta PRODOS.FT.DFLT+2
ora #$30
cmp #$3A
bcc .2
adc #6
.2 sta PRODOS.FT.DFLT+2
pla
and #$0F
tax
lda HEXDIGIT,x
sta PRODOS.FT.DFLT+3
ora #$30
cmp #$3A
bcc .3
adc #6
.3 sta PRODOS.FT.DFLT+3
.2 tya
.8 tya
asl
asl CC
adc L.PRODOS.FT.TXT
@ -530,7 +531,6 @@ PRODOS.FT.TXT >PSTR "TXT"
PRODOS.FT.DFLT >PSTR "$ "
MSG.NODATE .AZ " <No-Date> "
FMT.DateTime .AZ "%d-%b-%y %H:%M"
HEXDIGIT .AS '0123456789ABCDEF'
TYPES .AS "-dbclssp"
ACCESS .AS "rwxrwxrwx"
*--------------------------------------

View File

@ -34,6 +34,7 @@ CS.START cld
.DA CS.QUIT
L.MSG0 .DA MSG0
L.MSG1 .DA MSG1
L.MSG2 .DA MSG2
L.MSG2.C .DA MSG2.C
L.MSG2.B .DA MSG2.B
.DA 0
@ -101,16 +102,7 @@ DumpFD ldy #S.FD.DEV.DRVPTR+1
>SYSCALL printf
rts
*--------------------------------------
DumpDIB >LDA.G DEV.DIB+S.DIB.S
bpl .1 char device...
>PUSHBI 0
>PUSHB.G DEV.DIB+S.DIB.SIZE+2
>PUSHB.G DEV.DIB+S.DIB.SIZE+1
>PUSHB.G DEV.DIB+S.DIB.SIZE
.1 >PUSHB.G DEV.DIB+S.DIB.VERSION+1
DumpDIB >PUSHB.G DEV.DIB+S.DIB.VERSION+1
>PUSHB.G DEV.DIB+S.DIB.VERSION
>PUSHEA.G DEV.DIB+S.DIB.IDS
@ -123,36 +115,44 @@ DumpDIB >LDA.G DEV.DIB+S.DIB.S
ldy #DEV.SFLAGS+7
ldx #7
.2 lsr
.1 lsr
pha
lda #'-'
bcc .3
bcc .2
lda MSG.SFLAGS,x
.3 sta (pData),y
.2 sta (pData),y
pla
dey
dex
bpl .2
bpl .1
>PUSHEA.G DEV.SFLAGS
>LDA.G DEV.DIB+S.DIB.S
bpl .4
>PUSHBI 8
>LDYA L.MSG2
>SYSCALL printf
bcs .9
>PUSHBI 12
>LDA.G DEV.DIB+S.DIB.S
bpl .4 char device...
>PUSHBI 0
>PUSHB.G DEV.DIB+S.DIB.SIZE+2
>PUSHB.G DEV.DIB+S.DIB.SIZE+1
>PUSHB.G DEV.DIB+S.DIB.SIZE
>PUSHBI 4
>LDYA L.MSG2.B
bra .8
.4 >PUSHBI 8
.4 >PUSHBI 0
>LDYA L.MSG2.C
.8 >SYSCALL printf
rts
.9 rts
*--------------------------------------
*--------------------------------------
CS.EVENT sec
rts
*--------------------------------------
@ -162,8 +162,9 @@ CS.QUIT clc
CS.END
MSG0 .AZ "ID Name Addr. Status Typ/Sub IDString Version Size (BLK)"
MSG1 .AZ "%03d %7s $%H "
MSG2.B .AZ "%s $%h/$%h %16S %03d.%03d %10u"
MSG2.C .AZ "%s $%h/$%h %16S %03d.%03d n/a"
MSG2 .AZ "%s $%h/$%h %16S %03d.%03d "
MSG2.B .AZ "%10u"
MSG2.C .AZ "n/a"
MSG.SFLAGS .AS "BWRLNEIO"
*--------------------------------------
.DUMMY

View File

@ -165,34 +165,36 @@ CS.RUN.PRINT >LEA.G MD5Buf
>SYSCALL puts
lda #0
sec
rts
* sec
* rts
*--------------------------------------
CS.DOEVENT sec
rts
*--------------------------------------
CS.QUIT >LDA.G hFullPath
beq .1
CS.QUIT ldy #hFullPath
jsr .8
>SYSCALL FreeMem
.1 >LDA.G hDataBuf
beq .2
>SYSCALL FreeMem
ldy #hDataBuf
jsr .8
.2 >LDA.G hFile
beq .3
>SYSCALL fclose
.3
.7 lda hLIBCRYPT
beq .8
.3 lda hLIBCRYPT
beq .4
>SYSCALL UnloadLib
.8 clc
.4 clc
rts
.8 lda (pData),y
beq .9
>SYSCALL FreeMem
.9 rts
*--------------------------------------
CS.END
*--------------------------------------

View File

@ -333,7 +333,7 @@ AUTO 4,1
*--------------------------------------
.MA PUSHL
ldy #3
:1 lda (pData),y
:1 lda ]1,y
>PUSHA
dey
bpl :1
@ -342,7 +342,7 @@ AUTO 4,1
.MA PULLL
ldy #0
:1 >PULLA
sta (pData),y
sta ]1,y
iny
cpy #4
bne :1
@ -350,7 +350,7 @@ AUTO 4,1
*--------------------------------------
.MA PUSHF
ldy #4
:1 lda (pData),y
:1 lda ]1,y
>PUSHA
dey
bpl :1
@ -359,7 +359,7 @@ AUTO 4,1
.MA PULLF
ldy #0
:1 >PULLA
sta (pData),y
sta ]1,y
iny
cpy #5
bne :1

View File

@ -13,6 +13,8 @@ AUTO 4,1
*--------------------------------------
TmpPtr1 .EQ $0
*--------------------------------------
BUF.PREFIX .EQ $300
*--------------------------------------
AT.INIT >LDYAI MSG.INIT
jsr PrintFYA
@ -159,8 +161,6 @@ MLIGETPREFIX.PARAMS
.DA #1
.DA BUF.PREFIX
*--------------------------------------
BUF.PREFIX .BS MLI.MAXPATH
*--------------------------------------
MAN
SAVE /A2OSX.SRC/SYS/KM.APPLETALK.S
ASM

View File

@ -13,23 +13,23 @@ AUTO 4,1
*--------------------------------------
TmpPtr1 .EQ $0
TmpPtr2 .EQ $2
offset .EQ $4
*--------------------------------------
NSC.Init >LDYAI NSC.MSG0
jsr NSC.Print
lda MACHID
and #MACHID.CLK Clock already installed ?
beq .1
>LDYAI NSC.MSG1
jsr NSC.Print
rts
jmp NSC.Print
.1 jsr NSC.Detect
bcc .2
>LDYAI NSC.MSG2
jsr NSC.Print
rts
jmp NSC.Print
.2 jsr NSC.Install
@ -38,8 +38,10 @@ NSC.Init >LDYAI NSC.MSG0
sta MACHID
>LDYAI NSC.MSG3
jsr NSC.Print
rts
jmp NSC.Print
*--------------------------------------
DS1216E.DATA1 .EQ $10
DS1216E.DATA2 .EQ $18
*--------------------------------------
NSC.Detect php
sei
@ -116,19 +118,16 @@ NSC.Detect php
.9 clc
rts
*--------------------------------------
DS1216E.DATA1 .BS 8
DS1216E.DATA2 .BS 8
*--------------------------------------
NSC.Install lda DATETIME+1
sta TmpPtr1
sec
sbc #NSCDRV.B.START
sta NSCDRV.OFFSET
sta offset
lda DATETIME+2
sta TmpPtr1+1
sbc /NSCDRV.B.START
sta NSCDRV.OFFSET+1
sta offset+1
ldy #1
@ -136,6 +135,7 @@ NSC.Install lda DATETIME+1
.1 lda NSCDRV.RELOC,x
beq .2
sta TmpPtr2
inx
lda NSCDRV.RELOC,x
@ -143,11 +143,11 @@ NSC.Install lda DATETIME+1
lda (TmpPtr2)
clc
adc NSCDRV.OFFSET
adc offset
sta (TmpPtr2)
lda (TmpPtr2),y
adc NSCDRV.OFFSET+1
adc offset+1
sta (TmpPtr2),y
inx
@ -156,12 +156,12 @@ NSC.Install lda DATETIME+1
.2 lda RRAMWRAMBNK1
lda RRAMWRAMBNK1
.3 ldy #0
.3 ldy #NSCDRV.SIZE-1 always < 128
.7 lda NSCDRV.B.START,y
sta (TmpPtr1),y
iny
cpy #NSCDRV.SIZE
bne .7
dey
bpl .7
lda RROMBNK1
@ -169,7 +169,6 @@ NSC.Install lda DATETIME+1
sta DATETIME
rts
*--------------------------------------
NSCDRV.OFFSET .BS 2
NSCDRV.RELOC .DA NSCDRV.R1+1
.DA NSCDRV.R2+1
.DA NSCDRV.R3+1
@ -179,24 +178,26 @@ NSCDRV.RELOC .DA NSCDRV.R1+1
.DA NSCDRV.R7+1
.DA NSCDRV.R8+1
.DA NSCDRV.R9+1
.DA 0
.DA #0
*--------------------------------------
NSC.Print sta TmpPtr1
stx TmpPtr1+1
NSC.Print sty TmpPtr1
sta TmpPtr1+1
ldy #0
.1 lda (TmpPtr1),y
beq .9
ora #$80
beq .8
jsr COUT
iny
bne .1
.9 jmp CROUT
.8 jmp CROUT
*--------------------------------------
NSC.MSG0 .AZ "NSC ('No-Slot-Clock'/DS1216E) Driver For A2osX"
NSC.MSG1 .AZ "A Clock Driver Is Already Installed."
NSC.MSG2 .AZ "DS1216E Chip Not Detected."
NSC.MSG3 .AZ "DS1216E Driver Successfully Installed."
NSC.MSG0 .AZ -"NSC 'No-Slot-Clock'/DS1216E Driver For A2osX"
NSC.MSG1 .AZ -"Clock Already Present!"
NSC.MSG2 .AZ -"No DS1216E Detected!"
NSC.MSG3 .AZ -"DS1216E Driver Successfully Installed."
*--------------------------------------
* Driver For DS1216E
*--------------------------------------

View File

@ -407,13 +407,14 @@ CS.QUIT >LDA.G PAK.hFileName
CS.END
LIBPAK .AZ "libpak.o"
hLIBPAK .BS 1
MSG1 .AS "PrintF:%e, %e, %e\r\n"
.AS "%e, %e\r\n"
.AZ "StrToF:%e, %e\r\n"
MSG1 .AS "PrintF:\r\n"
.AS " %e, %e, %e, %e, %e\r\n"
.AS "StrToF:\r\n"
.AZ " %e, %e\r\n"
MSG2 .AZ "PI/3=%e\r\n"
MSG3 .AZ "COS(PI/3)=%e\r\n"
MSG4 .AZ "Long=%L\r\n"
MSG5 .AZ "Float=%e\r\n"
MSG4 .AZ "LRIntF(99,999,999.9)=%L\r\n"
MSG5 .AZ "Float(123456789)=%e\r\n"
CONST.PI .AZ "3.141592653"
CONST.3 .AZ "3"
FLOAT1 .HS 9B3EBC1FFD 99,999,999.9