From 0ac5def14fac9082c120db5ca790b823c06471ef Mon Sep 17 00:00:00 2001 From: burniouf Date: Fri, 6 Jan 2023 23:07:00 +0100 Subject: [PATCH] KERNEL:Fix for IIgs IRQ, IPCONFIG:Added 3 DHCP retries --- .Floppies/A2OSX.BUILD.po | Bin 33553920 -> 33553920 bytes BIN/CC.S.CORE.txt | 18 +++++-- BIN/CC.S.F.txt | 4 +- BIN/CC.S.SCOPE.txt | 102 +++++++++++++++++---------------------- BIN/CC.S.SYM.txt | 4 +- BIN/CC.S.txt | 22 +++++---- BIN/IPCONFIG.S.DHCP.txt | 6 +++ BIN/IPCONFIG.S.txt | 2 + SYS/KERNEL.S.INIT.txt | 10 +++- 9 files changed, 91 insertions(+), 77 deletions(-) diff --git a/.Floppies/A2OSX.BUILD.po b/.Floppies/A2OSX.BUILD.po index c64a2073e81a78e77b4319d7e042e45fed7cb1d3..02d5aa6d09f127abef02d0907365ae94e8b0a208 100644 GIT binary patch delta 46158 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 W7s1~IrwRTcI1}<1YQGTOivI&uQ2jUn delta 45710 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

%Wq2HiE_ZX! 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.G CC.hSyms - ldy #CC.ScopeIDs - sty ScopePtr - >LDYAI 256 >SYSCALL GetMem bcs .9 @@ -34,9 +31,17 @@ CORE.Init lda #SL._ >SYSCALL GetMem bcs .9 + >STYA ScopeStk + txa + >STA.G CC.hScopeStk + + >LDYAI 256 + >SYSCALL GetMem + bcs .9 + >STYA StmtStk txa - >STA.G CC.hStack + >STA.G CC.hStmtStk lda #CC.LookupIdx tay @@ -72,7 +77,10 @@ CORE.Quit jsr FIO.FClose .5 jsr SYM.LookupFree bcc .5 - >LDA.G CC.hStack + >LDA.G CC.hScopeStk + jsr .7 + + >LDA.G CC.hStmtStk .7 beq .8 diff --git a/BIN/CC.S.F.txt b/BIN/CC.S.F.txt index 0efea3f8..463eb616 100644 --- a/BIN/CC.S.F.txt +++ b/BIN/CC.S.F.txt @@ -44,7 +44,7 @@ F.Decl jsr SCOPE.New jsr CC.IsLetter bcs .2 - jsr F.NewArg will update LocalPtr,LocalFrame + jsr F.NewArg will update LocalPtr,FrameSize bcs .99 .2 jsr CC.GetCharNB @@ -117,7 +117,7 @@ F.Def >LDA.G CC.bInitCode -.2 >LDA.G CC.LocalFrame +.2 >LDA.G CC.FrameSize jsr CODE.LDAI A = f() ARGS size bcs .99 diff --git a/BIN/CC.S.SCOPE.txt b/BIN/CC.S.SCOPE.txt index 0f1fb500..3fbcbee6 100644 --- a/BIN/CC.S.SCOPE.txt +++ b/BIN/CC.S.SCOPE.txt @@ -1,28 +1,22 @@ NEW AUTO 3,1 *-------------------------------------- -SCOPE.New ldy ScopePtr - cpy #CC.ScopeIDs+SCOPE.MAX*2 +SCOPE.New >INCW.G CC.ScopeID + + lda ScopePtr + clc + adc #SCOPE bcs .9 - iny - iny - sty ScopePtr + sta ScopePtr - >INCW.G CC.ScopeID + ldy #CC.ScopeID+3 - >LDA.G CC.ScopeID +.1 lda (pData),y + pha + dey + bpl .1 - ldy ScopePtr - sta (pData),y - - >LDA.G CC.ScopeID+1 - - ldy ScopePtr - iny - sta (pData),y - - @@ -37,19 +31,17 @@ SCOPE.New ldy ScopePtr jsr CODE.AddLocal bcs .99 - .DO _DBG_SCOPE=1 >PUSHW L.MSG.DEBUG.SCIN jsr SCOPE.Push lda ScopePtr - sec - sbc #CC.ScopeIDs + lsr lsr >PUSHA >PUSHB.G CC.LocalPtr - >PUSHB.G CC.LocalFrame + >PUSHB.G CC.FrameSize >PUSHBI 5 >SYSCALL PrintF >DEBUG @@ -67,50 +59,46 @@ SCOPE.Close lda #'F' define FRAME SIZE jsr SYM.NewLabelA bcs SCOPE.New.RTS - >LDA.G CC.LocalFrame + >LDA.G CC.FrameSize jsr CODE.RemLocal bcs SCOPE.New.RTS .DO _DBG_SCOPE=1 - >PUSHW L.MSG.DEBUG.SCOUT - jsr SCOPE.Push - lda ScopePtr - sec - sbc #CC.ScopeIDs - lsr - >PUSHA - - >PUSHB.G CC.LocalPtr - >PUSHB.G CC.LocalFrame - >PUSHBI 5 - >SYSCALL PrintF + >PUSHW L.MSG.DEBUG.SCOUT + jsr SCOPE.Push + lda ScopePtr + lsr + lsr + >PUSHA + + >PUSHB.G CC.LocalPtr + >PUSHB.G CC.FrameSize + >PUSHBI 5 + >SYSCALL PrintF .FIN - ldy ScopePtr - cpy #CC.ScopeIDs + lda ScopePtr beq * - dey - dey - sty ScopePtr + sec + sbc #SCOPE + sta ScopePtr inc bLocalScope .DO _DBG_SCOPE=1 - - >PUSHW L.MSG.DEBUG.SC - jsr SCOPE.Push - - lda ScopePtr - sec - sbc #CC.ScopeIDs - lsr - >PUSHA - - >PUSHB.G CC.LocalPtr - >PUSHB.G CC.LocalFrame - >PUSHBI 5 - >SYSCALL PrintF + >PUSHW L.MSG.DEBUG.SC + jsr SCOPE.Push + + lda ScopePtr + lsr + lsr + >PUSHA + + >PUSHB.G CC.LocalPtr + >PUSHB.G CC.FrameSize + >PUSHBI 5 + >SYSCALL PrintF >DEBUG .FIN @@ -120,11 +108,11 @@ SCOPE.Close lda #'F' define FRAME SIZE *-------------------------------------- SCOPE.Push ldy ScopePtr -SCOPE.PushY iny - lda (pData),y +SCOPE.PushY iny #SCOPE.ID+1 + lda (ScopeStk),y >PUSHA - dey - lda (pData),y + dey #SCOPE.ID + lda (ScopeStk),y >PUSHA rts *-------------------------------------- diff --git a/BIN/CC.S.SYM.txt b/BIN/CC.S.SYM.txt index 281b37a5..d4915a14 100644 --- a/BIN/CC.S.SYM.txt +++ b/BIN/CC.S.SYM.txt @@ -216,7 +216,7 @@ SYM.SetAddrL ldy #SYM.SizeOf+1 lda (ZPSymBufPtr),y clc - >ADC.G CC.LocalFrame + >ADC.G CC.FrameSize sta (pData),y clc @@ -640,7 +640,7 @@ SYM.NewLabelA bit bPass2 lda #SYM.SC.AUTO sta (pData),y - >LDA.G CC.LocalFrame + >LDA.G CC.FrameSize ldy #CC.LabelBuf+SYM.Addr sta (pData),y bra .2 diff --git a/BIN/CC.S.txt b/BIN/CC.S.txt index 5deb2fba..9a4d8123 100644 --- a/BIN/CC.S.txt +++ b/BIN/CC.S.txt @@ -70,6 +70,12 @@ SU.F.BitO .EQ 4 SU.F.BitW .EQ 5 SU.F.Name .EQ 6 *-------------------------------------- +SCOPE.ID .EQ 0 +SCOPE.LocalPtr .EQ 2 +SCOPE.FrameSize .EQ 3 +* +SCOPE .EQ 4 +*-------------------------------------- STMT.hMEM .EQ 3 switch/case STMT.MemPtr .EQ 2 STMT.TERM .EQ 1 @@ -94,14 +100,13 @@ ZPCCCode .BS 2 ZPCCConst .BS 2 ZPCCData .BS 2 +ScopePtr .BS 1 +StmtPtr .BS 1 +ScopeStk .BS 2 StmtStk .BS 2 ZPLineBufPtr .BS 2 ZPLookupPtr .BS 2 - -ScopePtr .BS 1 -StmtPtr .BS 1 - ZPSymBufPtr .BS 2 ZPLookupSymPtr .BS 2 @@ -544,7 +549,7 @@ PrintVerboseMsg >PUSHA >PUSHB.G CC.LocalPtr - >PUSHB.G CC.LocalFrame + >PUSHB.G CC.FrameSize >PUSHBI 5 >SYSCALL PrintF * >DEBUG @@ -1131,16 +1136,15 @@ CC.hDefines .BS 1 CC.SaveDefine .BS 2 CC.hTags .BS 1 -CC.hStack .BS 1 +CC.hScopeStk .BS 1 +CC.hStmtStk .BS 1 CC.hSyms .BS 1 CC.ScopeID .BS 2 CC.LocalPtr .BS 1 -CC.LocalFrame .BS 1 +CC.FrameSize .BS 1 -CC.ScopeIDs .BS 2+SCOPE.MAX*2 2 bytes Global+ MAX locals -CC.ScopePtrs .BS 2+SCOPE.MAX*2 CC.bInitCode .BS 1 *-------------------------------------- CC.hSymBuf .BS 1 diff --git a/BIN/IPCONFIG.S.DHCP.txt b/BIN/IPCONFIG.S.DHCP.txt index dd59ac32..e6ab84f4 100644 --- a/BIN/IPCONFIG.S.DHCP.txt +++ b/BIN/IPCONFIG.S.DHCP.txt @@ -60,6 +60,9 @@ DHCP.RUN >PUSHBI S.SOCKET.T.DGRAM >SYSCALL PutS >SLEEP + + lda #3 + sta RetryCount DHCP.RUN.SDISC >PUSHB hSocket >PUSHW L.DHCP.DISC @@ -77,6 +80,9 @@ DHCP.RUN.SDISC >PUSHB hSocket DHCP.RUN.ROFFER jsr DHCP.RUN.SKT.RECV bcc .1 + dec RetryCount + bne DHCP.RUN.SDISC + lda #1 jmp DHCP.RUN.KO diff --git a/BIN/IPCONFIG.S.txt b/BIN/IPCONFIG.S.txt index 0ce79dc2..50368769 100644 --- a/BIN/IPCONFIG.S.txt +++ b/BIN/IPCONFIG.S.txt @@ -33,6 +33,8 @@ hFrame .BS 1 ZPFrameBase .BS 2 ZPFramePtr .BS 2 +RetryCount .BS 1 + bDHCP .BS 1 bETC .BS 1 bSET .BS 1 diff --git a/SYS/KERNEL.S.INIT.txt b/SYS/KERNEL.S.INIT.txt index 95aea358..3350dd77 100644 --- a/SYS/KERNEL.S.INIT.txt +++ b/SYS/KERNEL.S.INIT.txt @@ -882,6 +882,7 @@ IrqMgrInit >LDYAI MSG.IRQ >MLICALL MLIALLOCIRQ bcs .9 + lda K.MLI.PARAMS+1 sta IRQ.INTNUM @@ -906,12 +907,13 @@ IrqMgrInit >LDYAI MSG.IRQ >STYA CORE.Quit+3 >LDYAI MSG.IRQ.IIGS + sec bra .8 .9 plp sec rts - +*-------------------------------------- .1 cmp #A2osX.HWType.IIc beq .2 @@ -928,6 +930,7 @@ IrqMgrInit >LDYAI MSG.IRQ >STYA CORE.Quit+3 >LDYAI MSG.IRQ.CLOCK + sec bra .8 .2 php @@ -956,6 +959,7 @@ IrqMgrInit >LDYAI MSG.IRQ >STYA CORE.Quit+3 >LDYAI MSG.IRQ.MOUSE + sec bra .8 .7 jsr IrqMgrInit.HZ2Tick @@ -963,8 +967,10 @@ IrqMgrInit >LDYAI MSG.IRQ lda #"P" sta IRQ.Mode >LDYAI MSG.IRQ.POLL + clc -.8 >SYSCALL2 puts +.8 ror A2osX.IRQMode + >SYSCALL2 puts clc rts