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
LOGO.Filename .EQ $8A80 MLI.MAXPATH
KM.Filename .EQ $8B00 MLI.MAXPATH
MLIONLINE01BUF .EQ $8C00 256
*--------------------------------------
* Kernel Stage 0
*--------------------------------------
@ -561,7 +562,6 @@ MLIGETPREFIX01 .DA #1
MLIONLINE01 .DA #2
.DA #0
.DA MLIONLINE01BUF
MLIONLINE01BUF .BS 256
*--------------------------------------
MLIOPEN00 .DA #3 For DIR listing
.DA LOGO.Filename

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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