Kernel 0.94

This commit is contained in:
Rémy GIBERT 2020-03-05 17:55:02 +01:00
parent 4dbbfb31cb
commit f4e153dc33
8 changed files with 43 additions and 24 deletions

Binary file not shown.

View File

@ -26,6 +26,7 @@ A2osX.ReadBuff .EQ $8800 512 Buffer for MLIREAD01
Boot.Prefix .EQ $8A00 MLI.MAXPATH Boot.Prefix .EQ $8A00 MLI.MAXPATH
LOGO.Filename .EQ $8A80 MLI.MAXPATH LOGO.Filename .EQ $8A80 MLI.MAXPATH
KM.Filename .EQ $8B00 MLI.MAXPATH KM.Filename .EQ $8B00 MLI.MAXPATH
MLIONLINE01BUF .EQ $8C00 256
*-------------------------------------- *--------------------------------------
* Kernel Stage 0 * Kernel Stage 0
*-------------------------------------- *--------------------------------------
@ -561,7 +562,6 @@ MLIGETPREFIX01 .DA #1
MLIONLINE01 .DA #2 MLIONLINE01 .DA #2
.DA #0 .DA #0
.DA MLIONLINE01BUF .DA MLIONLINE01BUF
MLIONLINE01BUF .BS 256
*-------------------------------------- *--------------------------------------
MLIOPEN00 .DA #3 For DIR listing MLIOPEN00 .DA #3 For DIR listing
.DA LOGO.Filename .DA LOGO.Filename

View File

@ -213,18 +213,27 @@ EXP.GetLocal jsr SRC.GetNextChar
bcs EXP.EvalExitSYN bcs EXP.EvalExitSYN
tax tax
jsr SYM.LookupLocalX jsr SYM.LookupLocalX
bcc .8 bcc .8
>LDA.G ASM.PASS pass#2? >LDA.G ASM.PASS pass#2?
bne EXP.EvalExitUND bne EXP.EvalExitUND
lda #SYMG.F.FWREF
tsb SRC.ACC.F
clc clc
rts rts
.9 lda #E.SYNTAX.ERROR .9 lda #E.SYNTAX.ERROR
sec sec
.8 rts rts
.8 lda #SYMG.F.FWREF
trb SRC.ACC.F
clc
rts
*--------------------------------------- *---------------------------------------
EXP.MOD.8.3 lda SRC.ACC+2 EXP.MOD.8.3 lda SRC.ACC+2
bra EXP.MOD.8 bra EXP.MOD.8

View File

@ -239,12 +239,13 @@ SRC.ParseLine.AM
jsr SRC.AddToBuf jsr SRC.AddToBuf
.75 ldx SRC.ACC.SIZE .75 ldx #2 FWREF ...assume 2 bytes...
beq * SHOULD NEVER APPEND lda SRC.ACC.F
and #SYMG.F.FWREF
bne .72
* bne .73 ldx SRC.ACC.SIZE
* >DEBUG beq * SHOULD NEVER APPEND
* ldx #2 FWREF ...assume 2 bytes...
.73 lda SRC.ACC-1,x select shorter address .73 lda SRC.ACC-1,x select shorter address
bne .72 bne .72

View File

@ -148,6 +148,9 @@ SYM.LookupGlobal
sta SRC.ACC.F,y sta SRC.ACC.F,y
dey dey
bpl .2 bpl .2
lda #SYMG.F.FWREF
trb SRC.ACC.F
clc clc
rts rts
@ -163,6 +166,9 @@ SYM.LookupGlobal
.4 >LDA.G ASM.PASS pass#2? .4 >LDA.G ASM.PASS pass#2?
bne .9 yes, undefined symbol bne .9 yes, undefined symbol
lda #SYMG.F.FWREF
tsb SRC.ACC.F
lda #$ff lda #$ff
sta SRC.ACC sta SRC.ACC

View File

@ -46,6 +46,7 @@ ZS.END .ED
SYMG.F .EQ 0 SYMG.F .EQ 0
SYMG.F.RW .EQ %10000000 SYMG.F.RW .EQ %10000000
SYMG.F.LOCALS .EQ %01000000 SYMG.F.LOCALS .EQ %01000000
SYMG.F.FWREF .EQ %00100000
SYMG.SIZE .EQ 1 1,2,3,4 SYMG.SIZE .EQ 1 1,2,3,4
SYMG.V .EQ 2 DWORD SYMG.V .EQ 2 DWORD
* *

View File

@ -21,12 +21,11 @@ MEM.BestScore .EQ ZPMemMgrTmp1
* YA = ptr * YA = ptr
* X = hMem * X = hMem
*\-------------------------------------- *\--------------------------------------
MEM.OldSize .BS 2
MEM.NewSize .BS 2 MEM.NewSize .BS 2
*-------------------------------------- *--------------------------------------
K.Realloc >PULLW MEM.NewSize K.Realloc >PULLW MEM.NewSize
>PULLA >PULLA Src hMem
K.Realloc.I tax K.Realloc.I tax
jsr MEM.GetMemByID jsr MEM.GetMemByID
@ -38,8 +37,6 @@ K.Realloc.I tax
lda (ZPMemMgrSPtr),y lda (ZPMemMgrSPtr),y
ply ply
>STYA MEM.OldSize
jsr MEM.MoveToAux x = Src hMem, YA = Old size jsr MEM.MoveToAux x = Src hMem, YA = Old size
bcs .99 bcs .99

View File

@ -118,8 +118,8 @@ SLISTX.SListAddData
jsr SLIST.Select jsr SLIST.Select
jsr SLIST.SkipKey jsr SLIST.SkipKey
>LDYA SLIST.KeyID Save DataLen location * >LDYA SLIST.KeyID Save DataLen location
>STYA SLIST.KeyID.Save to update later * >STYA SLIST.KeyID.Save to update later
ldy SLIST.BytePtr ldy SLIST.BytePtr
lda (ZPSListDBlkPtr),y lda (ZPSListDBlkPtr),y
@ -153,15 +153,14 @@ SLISTX.SListAddData
bne .2 bne .2
inc ZPSListDataLen+1 inc ZPSListDataLen+1
beq .8 beq .8
.2 jsr SHARED.FORPNT.GetNext .2 jsr SHARED.FORPNT.GetNext
jsr SLIST.AddBlockByte jsr SLIST.AddDataByte
bcc .1 bcc .1
rts rts
.8 lda #0 .8 lda #0
jsr SLIST.AddBlockByte Add an extra 0 to stop Search here jmp SLIST.AddDataByte Add an extra 0 to stop Search here
clc
rts
*-------------------------------------- *--------------------------------------
SLISTX.SListSetData SLISTX.SListSetData
jsr SLIST.Select jsr SLIST.Select
@ -231,14 +230,17 @@ SLISTX.SListNewKey
jsr SLIST.Search jsr SLIST.Search
bcc .99 bcc .99
>LDYA SLIST.KeyID
>STYA SLIST.KeyID.Save End of list
lda SLIST.KeyLen lda SLIST.KeyLen
jsr SLIST.AddBlockByte jsr SLIST.AddDataByte
bcs .9 bcs .9
ldy #0 ldy #0
.1 jsr SHARED.TXTPTR.GetY .1 jsr SHARED.TXTPTR.GetY
jsr SLIST.AddBlockByte jsr SLIST.AddDataByte
bcs .9 bcs .9
iny iny
@ -246,15 +248,15 @@ SLISTX.SListNewKey
bne .1 bne .1
lda #0 Data Len = 0 lda #0 Data Len = 0
jsr SLIST.AddBlockByte jsr SLIST.AddDataByte
bcs .9 bcs .9
lda #0 lda #0
jsr SLIST.AddBlockByte jsr SLIST.AddDataByte
bcs .9 bcs .9
lda #0 Next Len = 0 lda #0 Next Len = 0
jsr SLIST.AddBlockByte jsr SLIST.AddDataByte
bcs .9 bcs .9
>LDYA SLIST.KeyID.Save >LDYA SLIST.KeyID.Save
@ -439,7 +441,7 @@ SLIST.ToNextByte
pla pla
.8 rts .8 rts
*-------------------------------------- *--------------------------------------
SLIST.AddBlockByte SLIST.AddDataByte
phy phy
ldy SLIST.BytePtr ldy SLIST.BytePtr
sta (ZPSListDBlkPtr),y sta (ZPSListDBlkPtr),y
@ -453,9 +455,12 @@ SLIST.AddBlockByte
>STYA ZPSListDBlkPtr >STYA ZPSListDBlkPtr
txa txa
inc SLIST.BlockPtr inc SLIST.BlockPtr
ldy SLIST.BlockPtr ldy SLIST.BlockPtr
cpy #$4A
bcc .55
>DEBUG
.55
sta (ZPSListIBlkPtr),y sta (ZPSListIBlkPtr),y
* stz SLIST.BytePtr * stz SLIST.BytePtr