mirror of
https://github.com/A2osX/A2osX.git
synced 2024-10-10 12:23:45 +00:00
Kernel version 0.9 : TCP & MkNodA
This commit is contained in:
parent
66d20ceba0
commit
635529e795
BIN
A2OSX.BOOT.po
BIN
A2OSX.BOOT.po
Binary file not shown.
BIN
A2OSX.DEV.po
BIN
A2OSX.DEV.po
Binary file not shown.
BIN
A2OSX.SRC.po
BIN
A2OSX.SRC.po
Binary file not shown.
@ -69,6 +69,8 @@ CS.RUN >LDYA L.MSG0
|
|||||||
lda #K.SKTTABLE.SIZE
|
lda #K.SKTTABLE.SIZE
|
||||||
sta SocketCount
|
sta SocketCount
|
||||||
|
|
||||||
|
>DEBUG
|
||||||
|
|
||||||
.1 lda (ZPPTR1)
|
.1 lda (ZPPTR1)
|
||||||
beq .7
|
beq .7
|
||||||
|
|
||||||
@ -100,13 +102,15 @@ CS.RUN >LDYA L.MSG0
|
|||||||
>LDYA L.MSG1
|
>LDYA L.MSG1
|
||||||
>SYSCALL CPrintFYA
|
>SYSCALL CPrintFYA
|
||||||
|
|
||||||
.7 clc
|
.7 lda ZPPTR1
|
||||||
lda ZPPTR1
|
clc
|
||||||
adc #S.SOCKET
|
adc #S.SOCKET
|
||||||
sta ZPPTR1
|
sta ZPPTR1
|
||||||
|
|
||||||
lda ZPPTR1+1
|
lda ZPPTR1+1
|
||||||
adc /S.SOCKET
|
adc /S.SOCKET
|
||||||
sta ZPPTR1+1
|
sta ZPPTR1+1
|
||||||
|
|
||||||
dec SocketCount
|
dec SocketCount
|
||||||
bne .1
|
bne .1
|
||||||
|
|
||||||
|
@ -585,6 +585,15 @@ S.NODE.DEV .EQ 5
|
|||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
* S.NODE.LNK
|
* S.NODE.LNK
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
|
S.NODE.SSOCK.HSKT .EQ 2
|
||||||
|
*S.NODE.SSOCK.OPEN .EQ 3
|
||||||
|
*S.NODE.SSOCK.CLOSE .EQ 4
|
||||||
|
*S.NODE.SSOCK.READ .EQ 5
|
||||||
|
*S.NODE.SSOCK.WRITE .EQ 6
|
||||||
|
*S.NODE.SSOCK.STATUS .EQ 7
|
||||||
|
*
|
||||||
|
S.NODE.SSOCK .EQ 8
|
||||||
|
*--------------------------------------
|
||||||
S.NODE.FIFO.S .EQ 2
|
S.NODE.FIFO.S .EQ 2
|
||||||
S.NODE.FIFO.S.Opened .EQ 1
|
S.NODE.FIFO.S.Opened .EQ 1
|
||||||
S.NODE.FIFO.S.Closed .EQ 2
|
S.NODE.FIFO.S.Closed .EQ 2
|
||||||
|
@ -39,6 +39,7 @@ S.DHCP.OPTIONS.MASK .EQ 1
|
|||||||
S.DHCP.OPTIONS.GW .EQ 3
|
S.DHCP.OPTIONS.GW .EQ 3
|
||||||
S.DHCP.OPTIONS.DNS .EQ 6
|
S.DHCP.OPTIONS.DNS .EQ 6
|
||||||
S.DHCP.OPTIONS.DOMAIN .EQ 15
|
S.DHCP.OPTIONS.DOMAIN .EQ 15
|
||||||
|
S.DHCP.OPTIONS.MSGTYPE .EQ 53
|
||||||
S.DHCP.OPTIONS.END .EQ 255
|
S.DHCP.OPTIONS.END .EQ 255
|
||||||
*
|
*
|
||||||
S.DHCP .EQ S.UDP+240
|
S.DHCP .EQ S.UDP+240
|
||||||
|
@ -175,12 +175,21 @@ SKT.CloseA cmp #K.SKTTABLE.SIZE
|
|||||||
cmp #S.SOCKET.SOCK.RAW
|
cmp #S.SOCKET.SOCK.RAW
|
||||||
beq .8
|
beq .8
|
||||||
|
|
||||||
|
cmp #S.SOCKET.SOCK.STREAM
|
||||||
|
bne SKT.GetA.9
|
||||||
|
|
||||||
ldy #S.SOCKET.SO
|
ldy #S.SOCKET.SO
|
||||||
lda (ZPPtrSKT),y
|
lda (ZPPtrSKT),y
|
||||||
bit #S.SOCKET.SO.ACCEPTCONN
|
bit #S.SOCKET.SO.ACCEPTCONN
|
||||||
|
|
||||||
beq *
|
bne *
|
||||||
|
|
||||||
|
ldy #S.SOCKET.TCP.OPTIONS
|
||||||
|
lda (ZPPtrSKT),y
|
||||||
|
ora #S.TCP.OPTIONS.FIN
|
||||||
|
sta (ZPPtrSKT),y
|
||||||
|
clc
|
||||||
|
rts
|
||||||
|
|
||||||
.8 lda #0
|
.8 lda #0
|
||||||
sta (ZPPtrSKT)
|
sta (ZPPtrSKT)
|
||||||
@ -393,7 +402,7 @@ SKT.Write.TCP ldy #S.SOCKET.TCP.STATUS
|
|||||||
jsr SKT.AddDataToSktOut
|
jsr SKT.AddDataToSktOut
|
||||||
bcs .90
|
bcs .90
|
||||||
|
|
||||||
jsr TCP.OUT try to push, ignore error....
|
jsr TCP.OUT.ESTBLSH try to push, ignore error....
|
||||||
clc
|
clc
|
||||||
rts
|
rts
|
||||||
|
|
||||||
|
@ -73,6 +73,8 @@ TCP.IN jsr IP.FillSKT.TemplateSrcDst
|
|||||||
|
|
||||||
ldy #S.SOCKET.TCP.STATUS
|
ldy #S.SOCKET.TCP.STATUS
|
||||||
lda (ZPPtrSKT),y
|
lda (ZPPtrSKT),y
|
||||||
|
cmp #S.SOCKET.TCP.STATUS.TIMEWT
|
||||||
|
bcs *
|
||||||
asl
|
asl
|
||||||
tax
|
tax
|
||||||
jmp (L.TCP.IN.JMP,x)
|
jmp (L.TCP.IN.JMP,x)
|
||||||
@ -91,8 +93,8 @@ TCP.IN jsr IP.FillSKT.TemplateSrcDst
|
|||||||
.9 clc Discard frame
|
.9 clc Discard frame
|
||||||
rts
|
rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
TCP.IN.RST txa
|
TCP.IN.RST lda #0
|
||||||
jsr SKT.CloseA
|
sta (ZPPtrSKT)
|
||||||
clc
|
clc
|
||||||
rts
|
rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
@ -152,15 +154,7 @@ TCP.IN.JMP.LISTEN
|
|||||||
dex
|
dex
|
||||||
bpl .4
|
bpl .4
|
||||||
|
|
||||||
ldy #S.SOCKET.TCP.STATUS
|
jsr TCP.OUT.SYNACK
|
||||||
lda #S.SOCKET.TCP.STATUS.SYNRCVD
|
|
||||||
sta (ZPPtrSKT),y
|
|
||||||
|
|
||||||
ldy #S.SOCKET.TCP.OPTIONS
|
|
||||||
lda #S.TCP.OPTIONS.SYN+S.TCP.OPTIONS.ACK
|
|
||||||
sta (ZPPtrSKT),y
|
|
||||||
|
|
||||||
jsr TCP.Out
|
|
||||||
bcs .9
|
bcs .9
|
||||||
|
|
||||||
ldy #S.SOCKET.TCP.STATUS
|
ldy #S.SOCKET.TCP.STATUS
|
||||||
@ -172,10 +166,6 @@ TCP.IN.JMP.LISTEN
|
|||||||
rts
|
rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
TCP.IN.JMP.SYNSENT
|
TCP.IN.JMP.SYNSENT
|
||||||
clc
|
|
||||||
rts
|
|
||||||
*--------------------------------------
|
|
||||||
TCP.IN.JMP.SYNRCVD
|
|
||||||
ldy #S.TCP.OPTIONS only accept ACK packet
|
ldy #S.TCP.OPTIONS only accept ACK packet
|
||||||
lda (ZPFrameInPtr),y
|
lda (ZPFrameInPtr),y
|
||||||
cmp #S.TCP.OPTIONS.ACK
|
cmp #S.TCP.OPTIONS.ACK
|
||||||
@ -218,6 +208,10 @@ TCP.IN.JMP.SYNRCVD
|
|||||||
.8 clc
|
.8 clc
|
||||||
rts
|
rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
|
TCP.IN.JMP.SYNRCVD
|
||||||
|
clc
|
||||||
|
rts
|
||||||
|
*--------------------------------------
|
||||||
TCP.IN.JMP.ESTBLSH
|
TCP.IN.JMP.ESTBLSH
|
||||||
ldy #S.TCP.OPTIONS
|
ldy #S.TCP.OPTIONS
|
||||||
lda (ZPFrameInPtr),y
|
lda (ZPFrameInPtr),y
|
||||||
@ -292,15 +286,19 @@ TCP.IN.JMP.TIMEWT
|
|||||||
clc
|
clc
|
||||||
rts
|
rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
TCP.OUT ldy #S.SOCKET.TCP.OPTIONS
|
TCP.OUT.SYNACK >LDYAI 0
|
||||||
lda (ZPPtrSKT),y
|
|
||||||
bit #S.TCP.OPTIONS.SYN
|
|
||||||
beq TCP.OUT.ESTBLSH
|
|
||||||
|
|
||||||
>LDYAI 0
|
|
||||||
jsr TCP.NewFrame
|
jsr TCP.NewFrame
|
||||||
bcs .9
|
bcs .9
|
||||||
|
|
||||||
|
ldx #3
|
||||||
|
ldy #S.TCP.ACK.NUMBER+3
|
||||||
|
|
||||||
|
.1 lda TmpDWord,x
|
||||||
|
sta (ZPFrameOutPtr),y
|
||||||
|
dey
|
||||||
|
dex
|
||||||
|
bpl .1
|
||||||
|
|
||||||
ldy #S.TCP.OPTIONS
|
ldy #S.TCP.OPTIONS
|
||||||
lda #S.TCP.OPTIONS.SYN+S.TCP.OPTIONS.ACK
|
lda #S.TCP.OPTIONS.SYN+S.TCP.OPTIONS.ACK
|
||||||
sta (ZPFrameOutPtr),y
|
sta (ZPFrameOutPtr),y
|
||||||
@ -308,13 +306,13 @@ TCP.OUT ldy #S.SOCKET.TCP.OPTIONS
|
|||||||
jsr TCP.SendFrame
|
jsr TCP.SendFrame
|
||||||
bcs .9
|
bcs .9
|
||||||
|
|
||||||
ldy #S.TCP.OPTIONS
|
ldy #S.SOCKET.TCP.OPTIONS
|
||||||
lda #0
|
lda #0
|
||||||
sta (ZPFrameOutPtr),y
|
sta (ZPPtrSKT),y
|
||||||
|
|
||||||
ldy #S.SOCKET.TCP.STATUS
|
ldy #S.SOCKET.TCP.STATUS
|
||||||
lda #S.SOCKET.TCP.STATUS.SYNSENT
|
lda #S.SOCKET.TCP.STATUS.SYNSENT
|
||||||
sta (ZPFrameOutPtr),y
|
sta (ZPPtrSKT),y
|
||||||
|
|
||||||
clc
|
clc
|
||||||
.9 rts
|
.9 rts
|
||||||
@ -379,12 +377,7 @@ TCP.OUT.ESTBLSH ldy #S.SOCKET.SQ.OUTUSED
|
|||||||
|
|
||||||
ldy #S.SOCKET.TCP.OPTIONS
|
ldy #S.SOCKET.TCP.OPTIONS
|
||||||
lda (ZPPtrSKT),y
|
lda (ZPPtrSKT),y
|
||||||
bit #S.TCP.OPTIONS.ACK
|
|
||||||
beq .7
|
|
||||||
|
|
||||||
ldy #S.TCP.OPTIONS
|
ldy #S.TCP.OPTIONS
|
||||||
lda (ZPFrameOutPtr),y
|
|
||||||
ora #S.TCP.OPTIONS.ACK
|
|
||||||
sta (ZPFrameOutPtr),y
|
sta (ZPFrameOutPtr),y
|
||||||
|
|
||||||
.7 jsr TCP.SendFrame
|
.7 jsr TCP.SendFrame
|
||||||
@ -392,7 +385,15 @@ TCP.OUT.ESTBLSH ldy #S.SOCKET.SQ.OUTUSED
|
|||||||
|
|
||||||
ldy #S.SOCKET.TCP.OPTIONS
|
ldy #S.SOCKET.TCP.OPTIONS
|
||||||
lda (ZPPtrSKT),y
|
lda (ZPPtrSKT),y
|
||||||
and #$ff^S.TCP.OPTIONS.ACK
|
bit #S.TCP.OPTIONS.FIN
|
||||||
|
beq .70
|
||||||
|
|
||||||
|
ldy #S.SOCKET.TCP.STATUS
|
||||||
|
lda #S.SOCKET.TCP.STATUS.FINWT1
|
||||||
|
sta (ZPPtrSKT),y
|
||||||
|
|
||||||
|
.70 ldy #S.SOCKET.TCP.OPTIONS
|
||||||
|
lda #0
|
||||||
sta (ZPPtrSKT),y
|
sta (ZPPtrSKT),y
|
||||||
|
|
||||||
ldx #3
|
ldx #3
|
||||||
|
@ -74,12 +74,13 @@ CS.INIT >LDYA L.LIBTCPIP
|
|||||||
|
|
||||||
stz IPCFG
|
stz IPCFG
|
||||||
|
|
||||||
>LDYA A2OSX.TIMER16
|
ldx #3
|
||||||
>STYA DHCP.DISC.XID
|
|
||||||
>STYA DHCP.REQ.XID
|
.11 lda A2osX.TIMER16,x
|
||||||
>LDYA A2OSX.RANDOM16
|
sta DHCP.DISC.XID,x
|
||||||
>STYA DHCP.DISC.XID+2
|
sta DHCP.REQ.XID,x
|
||||||
>STYA DHCP.REQ.XID+2
|
dex
|
||||||
|
bpl .11
|
||||||
|
|
||||||
ldx #5
|
ldx #5
|
||||||
.2 lda IPCFG+S.IPCFG.MAC,x
|
.2 lda IPCFG+S.IPCFG.MAC,x
|
||||||
@ -134,7 +135,7 @@ CS.RUN.ROFFER >SYSCALL Sleep
|
|||||||
jsr CS.RUN.SKT.RCVD
|
jsr CS.RUN.SKT.RCVD
|
||||||
bcc .1
|
bcc .1
|
||||||
jsr Wait.Timeout
|
jsr Wait.Timeout
|
||||||
bcc CS.RUN.ROFFER
|
bne CS.RUN.ROFFER
|
||||||
|
|
||||||
lda #1
|
lda #1
|
||||||
jmp CS.RUN.KO
|
jmp CS.RUN.KO
|
||||||
@ -170,7 +171,7 @@ CS.RUN.RACK >SYSCALL Sleep
|
|||||||
jsr CS.RUN.SKT.RCVD
|
jsr CS.RUN.SKT.RCVD
|
||||||
bcc .1
|
bcc .1
|
||||||
jsr Wait.Timeout
|
jsr Wait.Timeout
|
||||||
bcc CS.RUN.RACK
|
bne CS.RUN.RACK
|
||||||
lda #2
|
lda #2
|
||||||
bra CS.RUN.KO
|
bra CS.RUN.KO
|
||||||
|
|
||||||
@ -250,49 +251,48 @@ CS.QUIT ldy #hSocket
|
|||||||
CheckDHCPOffer jsr CheckDHCPXID
|
CheckDHCPOffer jsr CheckDHCPXID
|
||||||
bcs .9
|
bcs .9
|
||||||
|
|
||||||
>LDAXI S.DHCP.OPTIONS
|
lda ZPFrameBase
|
||||||
jsr SetFramePtr1AX
|
clc
|
||||||
|
adc #S.DHCP.OPTIONS
|
||||||
|
sta ZPFramePtr
|
||||||
|
|
||||||
ldy #2 DHCPOffer ?
|
lda ZPFrameBase+1
|
||||||
|
adc /S.DHCP.OPTIONS
|
||||||
|
sta ZPFramePtr+1
|
||||||
|
|
||||||
|
lda (ZPFramePtr)
|
||||||
|
cmp #S.DHCP.OPTIONS.MSGTYPE
|
||||||
|
bne .9
|
||||||
|
|
||||||
|
ldy #2
|
||||||
lda (ZPFramePtr),y
|
lda (ZPFramePtr),y
|
||||||
cmp #S.DHCP.OPTIONS.DHCPOffer
|
cmp #S.DHCP.OPTIONS.DHCPOffer
|
||||||
bne .9
|
bne .9
|
||||||
|
|
||||||
ldy #S.DHCP.YIADDR+3
|
ldy #S.DHCP.YIADDR+3
|
||||||
ldx #3
|
ldx #3
|
||||||
|
|
||||||
.1 lda (ZPFrameBase),y
|
.1 lda (ZPFrameBase),y
|
||||||
sta DHCP.REQ.OPT.REQIP,x
|
sta DHCP.REQ.OPT.REQIP,x
|
||||||
|
sta IPCFG+S.IPCFG.IP,x
|
||||||
dey
|
dey
|
||||||
dex
|
dex
|
||||||
bpl .1
|
bpl .1
|
||||||
|
|
||||||
ldx #3
|
|
||||||
ldy #S.IPCFG.IP+3
|
|
||||||
.2 lda DHCP.REQ.OPT.REQIP,x
|
|
||||||
sta IPCFG,y
|
|
||||||
dey
|
|
||||||
dex
|
|
||||||
bpl .2
|
|
||||||
|
|
||||||
ldy #S.IP.SRC+3
|
ldy #S.IP.SRC+3
|
||||||
ldx #3
|
ldx #3
|
||||||
|
|
||||||
.3 lda (ZPFrameBase),y
|
.3 lda (ZPFrameBase),y
|
||||||
sta DHCP.REQ.OPT.SVRIP,x
|
sta DHCP.REQ.OPT.SVRIP,x
|
||||||
|
sta IPCFG+S.IPCFG.DHCPSRVR,x
|
||||||
dey
|
dey
|
||||||
dex
|
dex
|
||||||
bpl .3
|
bpl .3
|
||||||
|
|
||||||
ldx #3
|
|
||||||
ldy #S.IPCFG.DHCPSRVR+3
|
|
||||||
.4 lda DHCP.REQ.OPT.SVRIP,x
|
|
||||||
sta IPCFG,y
|
|
||||||
dey
|
|
||||||
dex
|
|
||||||
bpl .4
|
|
||||||
|
|
||||||
.5 inc ZPFramePtr skip Option 53 (DHCPOffer:530102)
|
.5 inc ZPFramePtr skip Option 53 (DHCPOffer:530102)
|
||||||
bne .6
|
bne .6
|
||||||
inc ZPFramePtr+1
|
inc ZPFramePtr+1
|
||||||
|
|
||||||
.6 lda (ZPFramePtr)
|
.6 lda (ZPFramePtr)
|
||||||
sec
|
sec
|
||||||
adc ZPFramePtr add option len + 1
|
adc ZPFramePtr add option len + 1
|
||||||
@ -377,10 +377,20 @@ GetDHCPOption.CopyIP
|
|||||||
CheckDHCPAck jsr CheckDHCPXID
|
CheckDHCPAck jsr CheckDHCPXID
|
||||||
bcs .9
|
bcs .9
|
||||||
|
|
||||||
>LDAXI S.DHCP.OPTIONS
|
lda ZPFrameBase
|
||||||
jsr SetFramePtr1AX
|
clc
|
||||||
|
adc #S.DHCP.OPTIONS
|
||||||
|
sta ZPFramePtr
|
||||||
|
|
||||||
ldy #2 DHCPAck ?
|
lda ZPFrameBase+1
|
||||||
|
adc /S.DHCP.OPTIONS
|
||||||
|
sta ZPFramePtr+1
|
||||||
|
|
||||||
|
lda (ZPFramePtr)
|
||||||
|
cmp #S.DHCP.OPTIONS.MSGTYPE
|
||||||
|
bne .9
|
||||||
|
|
||||||
|
ldy #2
|
||||||
lda (ZPFramePtr),y
|
lda (ZPFramePtr),y
|
||||||
cmp #S.DHCP.OPTIONS.DHCPAck
|
cmp #S.DHCP.OPTIONS.DHCPAck
|
||||||
bne .9
|
bne .9
|
||||||
@ -395,6 +405,7 @@ CheckDHCPAck jsr CheckDHCPXID
|
|||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
CheckDHCPXID ldy #S.DHCP.XID+3
|
CheckDHCPXID ldy #S.DHCP.XID+3
|
||||||
ldx #3
|
ldx #3
|
||||||
|
|
||||||
.1 lda (ZPFrameBase),y
|
.1 lda (ZPFrameBase),y
|
||||||
cmp DHCP.DISC.XID,x same XID ?
|
cmp DHCP.DISC.XID,x same XID ?
|
||||||
bne .9
|
bne .9
|
||||||
@ -408,25 +419,14 @@ CheckDHCPXID ldy #S.DHCP.XID+3
|
|||||||
.9 sec
|
.9 sec
|
||||||
rts
|
rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
SetFramePtr1AX clc
|
|
||||||
adc ZPFrameBase
|
|
||||||
sta ZPFramePtr
|
|
||||||
txa
|
|
||||||
adc ZPFrameBase+1
|
|
||||||
sta ZPFramePtr+1
|
|
||||||
rts
|
|
||||||
*--------------------------------------
|
|
||||||
Init.Timeout ldy #TimeOut
|
Init.Timeout ldy #TimeOut
|
||||||
lda #TIMEOUT.MAX
|
lda #TIMEOUT.MAX
|
||||||
sta (pData),y
|
sta (pData),y
|
||||||
rts
|
rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
Wait.TimeOut sec
|
Wait.TimeOut ldy #TimeOut
|
||||||
ldy #TimeOut
|
|
||||||
lda (pData),y
|
lda (pData),y
|
||||||
beq .9
|
rts
|
||||||
clc
|
|
||||||
.9 rts
|
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
CS.END
|
CS.END
|
||||||
LIBTCPIP >PSTR "libtcpip.o"
|
LIBTCPIP >PSTR "libtcpip.o"
|
||||||
@ -438,7 +438,6 @@ MSG.CFG.ND >CSTR "DHCPCLNT:No Device, exiting.\r\n"
|
|||||||
MSG.CFG.NA >CSTR "DHCPCLNT:TCPIP Already configured, exiting.\r\n"
|
MSG.CFG.NA >CSTR "DHCPCLNT:TCPIP Already configured, exiting.\r\n"
|
||||||
hLIBTCPIP .BS 1
|
hLIBTCPIP .BS 1
|
||||||
IPCFG .BS S.IPCFG
|
IPCFG .BS S.IPCFG
|
||||||
FrameLen .BS 2
|
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
Socket .DA #S.SOCKET.SOCK.DGRAM
|
Socket .DA #S.SOCKET.SOCK.DGRAM
|
||||||
.BS 3
|
.BS 3
|
||||||
|
@ -171,8 +171,24 @@ K.MkNodYA jsr K.GetDevByNameYA Ptr1=NAME
|
|||||||
* CC = OK, CS = ERROR
|
* CC = OK, CS = ERROR
|
||||||
* A = hFILE
|
* A = hFILE
|
||||||
*\--------------------------------------
|
*\--------------------------------------
|
||||||
K.MkNodA sec
|
K.MkNodA sta .1+1
|
||||||
rts
|
>PUSHWI S.NODE.SSOCK
|
||||||
|
>PUSHBI S.MEM.F.INIT0
|
||||||
|
jsr K.GetMem
|
||||||
|
bcs .9
|
||||||
|
|
||||||
|
>STYA ZPPtr1
|
||||||
|
|
||||||
|
ldy #S.NODE.T
|
||||||
|
lda #S.NODE.T.SSOCK
|
||||||
|
sta (ZPPtr1),y
|
||||||
|
|
||||||
|
ldy #S.NODE.SSOCK.HSKT
|
||||||
|
.1 lda #$ff
|
||||||
|
|
||||||
|
sta (ZPPtr1),y
|
||||||
|
txa
|
||||||
|
.9 rts
|
||||||
*/--------------------------------------
|
*/--------------------------------------
|
||||||
* #MKFIFO
|
* #MKFIFO
|
||||||
* return a S.FILE to a new FIFO
|
* return a S.FILE to a new FIFO
|
||||||
|
@ -384,22 +384,12 @@ SP.DRV.hi lda #$ff
|
|||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
BLK.DRV
|
BLK.DRV
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
EvtMgrInit
|
EvtMgrInit lda #$A5
|
||||||
* lda #10
|
sta A2osX.TIMER16
|
||||||
* sta EVTMGR.10TH.CNT WARNING!!!! WRONG BANK!!!
|
lda #$9B
|
||||||
|
sta A2osX.TIMER16+1
|
||||||
|
|
||||||
* lda A2osX.HZ
|
lda /EvtMgr.Table
|
||||||
* sta EVTMGR.HZ.CNT
|
|
||||||
|
|
||||||
lda MACHID
|
|
||||||
and #MACHID.TYPE
|
|
||||||
cmp #MACHID.TYPE.IIc
|
|
||||||
bne .8
|
|
||||||
|
|
||||||
* sta CLRIOUDIS
|
|
||||||
* sta ENBVBLIIC
|
|
||||||
|
|
||||||
.8 lda /EvtMgr.Table
|
|
||||||
sta pEvent+1
|
sta pEvent+1
|
||||||
clc
|
clc
|
||||||
rts
|
rts
|
||||||
|
@ -8,7 +8,11 @@ AUTO 6
|
|||||||
SYS.BASL0 .EQ $800
|
SYS.BASL0 .EQ $800
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
K.KernelRun jsr TSK.TskMgrRun
|
K.KernelRun jsr TSK.TskMgrRun
|
||||||
|
stx A2osX.RANDOM16
|
||||||
jsr EVT.GetEvents
|
jsr EVT.GetEvents
|
||||||
|
txa
|
||||||
|
eor KBD
|
||||||
|
sta A2osX.RANDOM16+1
|
||||||
bcs .4 CS=no event
|
bcs .4 CS=no event
|
||||||
|
|
||||||
jsr TSK.DispatchEvents
|
jsr TSK.DispatchEvents
|
||||||
@ -51,9 +55,7 @@ K.KernelRun jsr TSK.TskMgrRun
|
|||||||
.42 bit OPENAPPLE
|
.42 bit OPENAPPLE
|
||||||
bpl K.KernelRun
|
bpl K.KernelRun
|
||||||
|
|
||||||
inc A2osX.RANDOM16
|
|
||||||
lda KBD
|
lda KBD
|
||||||
sta A2osX.RANDOM16+1
|
|
||||||
|
|
||||||
bpl K.KernelRun
|
bpl K.KernelRun
|
||||||
|
|
||||||
|
@ -85,7 +85,6 @@ A2osX.D002 .EQ *
|
|||||||
.INB SYS/KERNEL.S.ARG
|
.INB SYS/KERNEL.S.ARG
|
||||||
.INB SYS/KERNEL.S.ENV
|
.INB SYS/KERNEL.S.ENV
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
.INB SYS/KERNEL.S.CNV
|
|
||||||
.INB SYS/KERNEL.S.RUN
|
.INB SYS/KERNEL.S.RUN
|
||||||
.INB SYS/KERNEL.S.EVT
|
.INB SYS/KERNEL.S.EVT
|
||||||
.INB SYS/KERNEL.S.TSK
|
.INB SYS/KERNEL.S.TSK
|
||||||
@ -100,6 +99,7 @@ A2osX.E000 .EQ *
|
|||||||
.INB SYS/KERNEL.S.DAT
|
.INB SYS/KERNEL.S.DAT
|
||||||
.INB SYS/KERNEL.S.IRQ
|
.INB SYS/KERNEL.S.IRQ
|
||||||
.INB SYS/KERNEL.S.MEM
|
.INB SYS/KERNEL.S.MEM
|
||||||
|
.INB SYS/KERNEL.S.CNV
|
||||||
.INB SYS/KERNEL.S.CHR
|
.INB SYS/KERNEL.S.CHR
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
PullPtr1Ptr2Ptr3
|
PullPtr1Ptr2Ptr3
|
||||||
|
Loading…
Reference in New Issue
Block a user