Fixed SYS/KM folder

This commit is contained in:
burniouf 2022-02-04 15:57:17 +01:00
parent 3e82fe7a07
commit 0102a1c1e0
12 changed files with 178 additions and 83 deletions

Binary file not shown.

Binary file not shown.

View File

@ -2,7 +2,62 @@ NEW
AUTO 3,1 AUTO 3,1
.LIST OFF .LIST OFF
*-------------------------------------- *--------------------------------------
CC.DECL. CC.DECL jsr CC.IsLetter
bcc .10
* TODO: PREOPS ++ --.....
bcs .90
.10 >LDYA L.CC.SCSPEC
jsr CC.LookupID
bcs .20
* TODO: typedef ....
bcs .90
*--------------------------------------
.20 >LDYA L.CC.TYPEQUAL
jsr CC.LookupID
bcs .80
jsr CC.TYPE.Decl
bcs .99
ldx #SYM.SC.STATIC Y,A = Type/Qual
bit ScopenCnt
bpl .21
bit #SYM.Q.FUNC someone wants to add a local f() ?
bne .90
ldx #SYM.SC.AUTO
.21 jsr CC.SYM.New Y,A=T/Q, add with undef value...
bcs .99
.80 bit #$60
clc
rts
.90 lda #E.CSYN
sec
.99 rts
*--------------------------------------
CC.SCSPEC.AUTO
CC.SCSPEC.REGISTER
CC.SCSPEC.STATIC
CC.SCSPEC.EXTERN
CC.SCSPEC.TYPEDEF
.99 lda #E.CSYN
sec
.9 rts
*-------------------------------------- *--------------------------------------
MAN MAN
SAVE usr/src/bin/cc.s.decl SAVE usr/src/bin/cc.s.decl

View File

@ -32,6 +32,8 @@ CC.DIR.DEFINE jsr CC.CheckSpace
>STYA ZPSymID >STYA ZPSymID
jsr CC.SkipX
jsr CC.CheckSpace jsr CC.CheckSpace
bcs .99 bcs .99

View File

@ -278,8 +278,7 @@ CC.KW.RETURN ldy CStackPtr
rts rts
*-------------------------------------- *--------------------------------------
CC.KW.SIZEOF CC.KW.SIZEOF
*-------------------------------------- lda #E.CSYN
CC.KW.TYPEDEF lda #E.CSYN
sec sec
rts rts
*-------------------------------------- *--------------------------------------
@ -296,6 +295,8 @@ CC.KW.STRUCT >ENTER 4
tya tya
ldy #1 ldy #1
sta (pStack),y sta (pStack),y
jsr CC.SkipX
jsr CC.GetNextCharNB jsr CC.GetNextCharNB
bcs .99 bcs .99

View File

@ -14,7 +14,8 @@ CC.SYM.New >STYA ZPPtr2 T/Q
jsr CC.SYM.NewKey jsr CC.SYM.NewKey
bcs .9 bcs .9
>STYA ZPSymID Y,A = KeyID, X = KeyLen >STYA ZPSymID Y,A = KeyID
stx ZPPtr3+1 X = KeyLen
>LDYAI 256 >LDYAI 256
>SYSCALL GetMem >SYSCALL GetMem
@ -34,6 +35,11 @@ CC.SYM.New >STYA ZPPtr2 T/Q
sta ZPSymSize sta ZPSymSize
stz ZPSymSize+1 stz ZPSymSize+1
ldx ZPPtr3+1 Key Len
jsr CC.SYM.Link
jsr CC.SkipX
jsr CC.GetCharNB jsr CC.GetCharNB
bcs CC.SYM.SetAddr bcs CC.SYM.SetAddr
@ -174,25 +180,9 @@ CC.SYM.SetAddrL jsr CC.SYM.GetSymSizeOfInAXC
CC.SYM.NewKey >PUSHA CC.SYM.NewKey >PUSHA
>PUSHW ZPLineBufPtr >PUSHW ZPLineBufPtr
>SYSCALL SListNewKey >SYSCALL SListNewKey
bcs .9 * bcs .9
phy * clc Y,A = KeyID, X = KeyLen
pha
lda #0
ldy #SYM.Addr
sta (ZPSymBufPtr),y
iny
sta (ZPSymBufPtr),y
jsr CC.SYM.Link
jsr CC.SkipX
clc
pla Y,A = KeyID, X = KeyLen
ply
.9 rts .9 rts
*-------------------------------------- *--------------------------------------
@ -203,6 +193,12 @@ CC.SYM.Link >LDYA L.CC.LIBC
phx phx
lda #0
ldy #SYM.Addr
sta (ZPSymBufPtr),y
iny
sta (ZPSymBufPtr),y
ldx #0 ldx #0
.1 lda (ZPLookupPtr) .1 lda (ZPLookupPtr)

View File

@ -155,6 +155,7 @@ J.CC.cBOPS .DA CC.BOPS.cMUL
.DA CC.BOPS.LOR .DA CC.BOPS.LOR
L.CC.DIRS .DA CC.DIRS L.CC.DIRS .DA CC.DIRS
L.CC.KW .DA CC.KW L.CC.KW .DA CC.KW
L.CC.SCSPEC .DA CC.SCSPEC
L.CC.TYPEQUAL .DA CC.TYPEQUAL L.CC.TYPEQUAL .DA CC.TYPEQUAL
L.CC.TYPESPEC .DA CC.TYPESPEC L.CC.TYPESPEC .DA CC.TYPESPEC
L.CC.TYPES .DA CC.TYPES L.CC.TYPES .DA CC.TYPES
@ -174,7 +175,6 @@ J.CC.KW .DA CC.KW.IF
.DA CC.KW.RETURN .DA CC.KW.RETURN
*-------------------------------------- *--------------------------------------
.DA CC.KW.SIZEOF .DA CC.KW.SIZEOF
.DA CC.KW.TYPEDEF
.DA CC.KW.STRUCT .DA CC.KW.STRUCT
*-------------------------------------- *--------------------------------------
J.CC.KW.END .DA CC.KW.IF.END J.CC.KW.END .DA CC.KW.IF.END
@ -183,6 +183,11 @@ J.CC.KW.END .DA CC.KW.IF.END
.DA CC.KW.DO.END .DA CC.KW.DO.END
.DA CC.KW.FOR.END .DA CC.KW.FOR.END
*-------------------------------------- *--------------------------------------
J.CC.SCSPEC .DA CC.SCSPEC.AUTO
.DA CC.SCSPEC.REGISTER
.DA CC.SCSPEC.STATIC
.DA CC.SCSPEC.EXTERN
.DA CC.SCSPEC.TYPEDEF
J.CC.TYPEQUAL .DA CC.TYPE.CONST J.CC.TYPEQUAL .DA CC.TYPE.CONST
.DA CC.TYPE.VOLATILE .DA CC.TYPE.VOLATILE
J.CC.TYPESPEC .DA CC.TYPE.SIGNED J.CC.TYPESPEC .DA CC.TYPE.SIGNED
@ -839,11 +844,15 @@ CC.KW >PSTR "if"
>PSTR "continue" >PSTR "continue"
>PSTR "return" >PSTR "return"
>PSTR "sizeof" >PSTR "sizeof"
>PSTR "typedef"
>PSTR "struct" >PSTR "struct"
.HS 00 .HS 00
*-------------------------------------- *--------------------------------------
* Type Declaration CC.SCSPEC >PSTR "auto"
>PSTR "register"
>PSTR "static"
>PSTR "extern"
>PSTR "typedef"
.HS 00
*-------------------------------------- *--------------------------------------
CC.TYPEQUAL >PSTR "const" ALL CC.TYPEQUAL >PSTR "const" ALL
>PSTR "volatile" >PSTR "volatile"

View File

@ -60,6 +60,9 @@ L.TYPES .DA TYPE.UNKNOWN
.DA TYPE.IIe .DA TYPE.IIe
.DA TYPE.IIc .DA TYPE.IIc
.DA TYPE.IIgs .DA TYPE.IIgs
L.SUBT.ROM .DA SUBT.ROM
L.SUBT.IIE .DA SUBT.ENH
.DA SUBT.LCCARD
L.CPUS .DA CPU.65C02 L.CPUS .DA CPU.65C02
.DA CPU.65R02 .DA CPU.65R02
.DA CPU.65816 .DA CPU.65816
@ -87,13 +90,13 @@ CS.RUN ldy #S.PS.ARGC
cmp #'-' cmp #'-'
bne .99 bne .99
ldy #1 ldy #1
lda (ZPPtr1),y lda (ZPPtr1),y
beq .99 beq .99
jsr CS.RUN.CheckOpt jsr CS.RUN.CheckOpt
bcc .1 bcc .1
.99 >PUSHW L.MSG.USAGE .99 >PUSHW L.MSG.USAGE
>PUSHBI 0 >PUSHBI 0
>SYSCALL PrintF >SYSCALL PrintF
@ -112,38 +115,33 @@ CS.RUN ldy #S.PS.ARGC
*-------------------------------------- *--------------------------------------
CS.RUN.PRINT bit bHostName CS.RUN.PRINT bit bHostName
bpl .1 bpl .1
jsr CS.RUN.GetHostName jsr CS.RUN.GetHostName
bcs .1 bcs .1
>LDYA pData >LDYA pData
jsr CS.RUN.PRINTYA jsr CS.RUN.PRINTYA
.1 bit bMachineType .1 bit bMachineType
bpl .2 bpl .2
lda A2osX.HWType jsr CS.RUN.TYPESUBT
asl
tax
>LDYA L.TYPES,x
jsr CS.RUN.PRINTYA
.2 bit bCPUType .2 bit bCPUType
bpl .3 bpl .3
lda A2osX.CPUTYPE lda A2osX.CPUTYPE
asl asl
and #$0F and #$0F
tax tax
>LDYA L.CPUS-2,x >LDYA L.CPUS-2,x
jsr CS.RUN.PRINTYA jsr CS.RUN.PRINTYA
.3 bit bCPUSpeed .3 bit bCPUSpeed
bpl .4 bpl .4
>PUSHW L.CPU.SPEED >PUSHW L.CPU.SPEED
>PUSHW A2osX.CPUSPEED >PUSHW A2osX.CPUSPEED
>PUSHBI 2 >PUSHBI 2
@ -151,14 +149,14 @@ CS.RUN.PRINT bit bHostName
.4 bit bAltCPU .4 bit bAltCPU
bpl .5 bpl .5
.5 bit bKernelVersion .5 bit bKernelVersion
bpl .6 bpl .6
>PUSHW L.KERNEL.VER >PUSHW L.KERNEL.VER
>PUSHW A2osX.KVER >PUSHW A2osX.KVER
>PUSHBI 2 >PUSHBI 2
@ -166,19 +164,19 @@ CS.RUN.PRINT bit bHostName
.6 bit bKernelBuild .6 bit bKernelBuild
bpl .60 bpl .60
jsr CS.RUN.GetBuild jsr CS.RUN.GetBuild
bcs .60 bcs .60
>LDYA pData >LDYA pData
jsr CS.RUN.PRINTYA jsr CS.RUN.PRINTYA
.60 bit bKernelMode .60 bit bKernelMode
bpl .7 bpl .7
ldx #0 ldx #0
bit A2osX.IRQMode bit A2osX.IRQMode
bpl .61 bpl .61
@ -190,18 +188,18 @@ CS.RUN.PRINT bit bHostName
inx inx
inx inx
.61 >LDYA L.KERNEL.MODES,x .61 >LDYA L.KERNEL.MODES,x
jsr CS.RUN.PRINTYA jsr CS.RUN.PRINTYA
.7 bit bKernelClk .7 bit bKernelClk
bpl .8 bpl .8
.8 >PUSHW L.MSG.CRLF .8 >PUSHW L.MSG.CRLF
>PUSHBI 0 >PUSHBI 0
>SYSCALL PrintF >SYSCALL PrintF
lda #0 lda #0
sec sec
@ -210,7 +208,7 @@ CS.RUN.PRINT bit bHostName
CS.RUN.GetHostName CS.RUN.GetHostName
>LDYA L.ETCHOSTNAME >LDYA L.ETCHOSTNAME
bra CS.RUN.GetFile bra CS.RUN.GetFile
CS.RUN.GetBuild >LDYA L.ETCVERSION CS.RUN.GetBuild >LDYA L.ETCVERSION
CS.RUN.GetFile stz hFILE CS.RUN.GetFile stz hFILE
@ -218,18 +216,18 @@ CS.RUN.GetFile stz hFILE
>PUSHYA >PUSHYA
>PUSHBI O.RDONLY >PUSHBI O.RDONLY
>PUSHBI 0 >PUSHBI 0
sta (pData) sta (pData)
>PUSHWZ >PUSHWZ
>SYSCALL FOpen >SYSCALL FOpen
bcs .9 bcs .9
sta hFILE sta hFILE
>LEA.G FGetSBuf >LEA.G FGetSBuf
>STYA ZPPtr1 >STYA ZPPtr1
.1 >PUSHB hFILE .1 >PUSHB hFILE
>PUSHW ZPPtr1 >PUSHW ZPPtr1
>PUSHWI 64 >PUSHWI 64
@ -238,40 +236,71 @@ CS.RUN.GetFile stz hFILE
lda (ZPPtr1) lda (ZPPtr1)
beq .1 beq .1
cmp #'#' cmp #'#'
beq .1 beq .1
ldy #$ff ldy #$ff
.2 iny .2 iny
lda (ZPPtr1),y lda (ZPPtr1),y
sta (pData),y sta (pData),y
bne .2 bne .2
.8 clc .8 clc
.9 php .9 php
pha pha
lda hFILE lda hFILE
beq .90 beq .90
>SYSCALL FClose >SYSCALL FClose
.90 pla .90 pla
plp plp
rts rts
*-------------------------------------- *--------------------------------------
CS.RUN.TYPESUBT lda A2osX.HWType
asl
tax
>LDYA L.TYPES,x
jsr CS.RUN.PRINTYA
lda A2osX.HWType
beq .8 Unknown
cmp #A2osX.HWType.IIc
bcc .1
>PUSHW L.SUBT.ROM //c & IIgs
>PUSHB A2osX.HWSubT
>PUSHBI 1
>SYSCALL PrintF
rts
.1 lda A2osX.HWSubT //e
beq .8
asl
tax
>PUSHW L.SUBT.IIE-2,x
>PUSHBI 0
>SYSCALL PrintF
.8 rts
*--------------------------------------
CS.RUN.PRINTYA >PUSHYA CS.RUN.PRINTYA >PUSHYA
>PUSHBI 0 >PUSHBI 0
CS.RUN.PRINTF lda Count CS.RUN.PRINTF lda Count
beq .1 beq .1
lda #C.SPACE lda #C.SPACE
>SYSCALL PutChar >SYSCALL PutChar
.1 >SYSCALL PrintF .1 >SYSCALL PrintF
inc Count inc Count
@ -279,11 +308,11 @@ CS.RUN.PRINTF lda Count
CS.DOEVENT sec CS.DOEVENT sec
rts rts
*-------------------------------------- *--------------------------------------
CS.QUIT CS.QUIT
.8 clc .8 clc
rts rts
*-------------------------------------- *--------------------------------------
CS.RUN.CheckOpt ldy #1 CS.RUN.CheckOpt ldy #1
lda (ZPPtr1),y lda (ZPPtr1),y
ldx #OptionVars-OptionList-1 ldx #OptionVars-OptionList-1
@ -335,6 +364,9 @@ TYPE.UNKNOWN .AZ "Unknown_HW"
TYPE.IIe .AZ "Apple//e" TYPE.IIe .AZ "Apple//e"
TYPE.IIc .AZ "Apple//c" TYPE.IIc .AZ "Apple//c"
TYPE.IIgs .AZ "AppleIIgs" TYPE.IIgs .AZ "AppleIIgs"
SUBT.ROM .AZ "_ROM%h"
SUBT.ENH .AZ "_Enh"
SUBT.LCCARD .AZ "_LCCard"
CPU.65C02 .AZ "65c02" CPU.65C02 .AZ "65c02"
CPU.65R02 .AZ "65r02" CPU.65R02 .AZ "65r02"
CPU.65816 .AZ "65816" CPU.65816 .AZ "65816"

View File

@ -3,7 +3,7 @@ NEW
.LIST OFF .LIST OFF
.OP 65C02 .OP 65C02
.OR $2000 .OR $2000
.TF sys/km.appletalk .TF sys/km/km.appletalk
*-------------------------------------- *--------------------------------------
.INB inc/macros.i .INB inc/macros.i
.INB inc/io.i .INB inc/io.i

View File

@ -3,7 +3,7 @@ NEW
.LIST OFF .LIST OFF
.OP 65C02 .OP 65C02
.OR $2000 .OR $2000
.TF sys/km.nsc .TF sys/km/km.nsc
*-------------------------------------- *--------------------------------------
.INB inc/macros.i .INB inc/macros.i
.INB inc/io.i .INB inc/io.i

View File

@ -3,7 +3,7 @@ NEW
.LIST OFF .LIST OFF
.OP 65C02 .OP 65C02
.OR $2000 .OR $2000
.TF sys/km.ramworks .TF sys/km/km.ramworks
*-------------------------------------- *--------------------------------------
.INB inc/macros.i .INB inc/macros.i
.INB inc/io.i .INB inc/io.i

View File

@ -3,7 +3,7 @@ NEW
.LIST OFF .LIST OFF
.OP 65C02 .OP 65C02
.OR $2000 .OR $2000
.TF sys/km.vsdrive .TF sys/km/km.vsdrive
*-------------------------------------- *--------------------------------------
.INB inc/macros.i .INB inc/macros.i
.INB inc/io.i .INB inc/io.i