mirror of
https://github.com/A2osX/A2osX.git
synced 2025-02-19 07:30:41 +00:00
KERNEL:Fix for IIgs IRQ, IPCONFIG:Added 3 DHCP retries
This commit is contained in:
parent
84d77aaf7f
commit
0ac5def14f
Binary file not shown.
@ -19,9 +19,6 @@ CORE.Init lda #SL._
|
||||
|
||||
>STA.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
|
||||
|
||||
|
@ -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
|
||||
|
||||
|
@ -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
|
||||
*--------------------------------------
|
||||
|
@ -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
|
||||
|
22
BIN/CC.S.txt
22
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
|
||||
|
@ -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
|
||||
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
Loading…
x
Reference in New Issue
Block a user