Kernel 0.93

This commit is contained in:
Rémy GIBERT 2019-06-20 08:39:28 +02:00
parent f57cb61132
commit e886397238
6 changed files with 52 additions and 44 deletions

Binary file not shown.

View File

@ -364,26 +364,20 @@ READ php
ldx DEVSLOTx0
lda /PP.RxEvent
lda /PP.RxStatus+$8000
sta PacketPagePTR+1,x
lda #PP.RxEvent
lda #PP.RxStatus
sta PacketPagePTR,x
lda PacketPageDATA+1,x
ldy PacketPageDATA,x
and /PP.RxEvent.RxOK+PP.RxEvent.IA+PP.RxEvent.Brdcast+PP.RxEvent.Runt
bne .1
beq READWRITE.9
lda #E.NODATA
.9 plp
sec
rts
lda PacketPageDATA+1,x discard RxStatus
lda PacketPageDATA,x
.1 lda RTDATA+1,x discard RxStatus
lda RTDATA,x
lda RTDATA+1,x get RxLength
lda PacketPageDATA+1,x get RxLength
ldy #S.IOCTL.BYTECNT+1
sta (ZPIOCTL),y
@ -391,7 +385,7 @@ READ php
lsr
pha
lda RTDATA,x
lda PacketPageDATA,x
dey
sta (ZPIOCTL),y
tay
@ -430,11 +424,11 @@ READ php
inc Counter+1
beq .8
.3 lda RTDATA,x
.3 lda PacketPageDATA,x
sta (ZPBufPtr),y
iny
lda RTDATA+1,x
lda PacketPageDATA+1,x
sta (ZPBufPtr),y
iny
bne .2
@ -445,7 +439,13 @@ READ php
plp
clc
rts
.9 rts
READWRITE.9 lda #E.NODATA
plp
sec
rts
*--------------------------------------
WRITE php
sei
@ -497,7 +497,7 @@ WRITE php
lda PacketPageDATA+1,x
ldy PacketPageDATA,x
and /PP.BusST.Rdy4TxNOW
beq WRITE.9
beq READWRITE.9
ldy #S.IOCTL.BUFPTR
lda (ZPIOCTL),y
@ -540,12 +540,6 @@ WRITE php
.8 plp
clc
rts
WRITE.9 lda #E.NODATA
plp
sec
rts
*--------------------------------------
DRV.CS.END
DEVSLOTx0 .BS 1

View File

@ -7,12 +7,27 @@ NEW
* **In:**
* ## RETURN VALUE
*\--------------------------------------
ARP.Clear ldx #K.ARPCACHE.SIZE*S.ARPCACHE
.1 stz ARP.CACHE-1,x
dex
ARP.Clear lda hARPCache
bne .1
clc
>LDYAI K.ARPCACHE.SIZE*S.ARPCACHE
>SYSCALL2 GetMem0
bcs .9
stx hARPCache
rts
.1 jsr ARP.GetCache
lda #0
tay
.2 sta (ZPCachePtr),y
iny
cpy #K.ARPCACHE.SIZE*S.ARPCACHE
bne .1
clc
.9 rts
*/--------------------------------------
* # ARP.Query
* Query ARP Cache and returns HW address
@ -92,9 +107,12 @@ ARP.ADD.I sta ARP.TmpCache
* ## RETURN VALUE
* Y,A = PTR to ARP.CACHE
*\--------------------------------------
ARP.GetCache >LDYA L.ARP.CACHE
clc
rts
ARP.GetCache lda hARPCache
>SYSCALL2 GetMemPtr
bcs .9
>STYA ZPCachePtr
.9 rts
*--------------------------------------
* PRIVATE
*--------------------------------------
@ -248,8 +266,7 @@ ARP.QUERY.I jsr ARP.FIND.BY.IP
sec
.99 rts
*--------------------------------------
ARP.FIND.BY.IP >LDYA L.ARP.CACHE
>STYA ZPCachePtr
ARP.FIND.BY.IP jsr ARP.GetCache
ldx #K.ARPCACHE.SIZE
@ -281,8 +298,7 @@ ARP.FIND.BY.IP >LDYA L.ARP.CACHE
sec
rts
*--------------------------------------
ARP.FIND.FREE >LDYA L.ARP.CACHE
>STYA ZPCachePtr
ARP.FIND.FREE jsr ARP.GetCache
lda #$ff
sta TmpDWord
@ -330,8 +346,7 @@ ARP.FIND.FREE >LDYA L.ARP.CACHE
.8 clc
rts
*--------------------------------------
ARP.EXPIRE >LDYA L.ARP.CACHE
>STYA ZPCachePtr
ARP.EXPIRE jsr ARP.GetCache
ldx #K.ARPCACHE.SIZE

View File

@ -1230,6 +1230,7 @@ SKT.NewTCB ldx #S.SOCKET.TCP.INTAIL
>LDYAI K.TCP.WSIZE
>STYA SKT.Cache+S.SOCKET.TCP.INFREE
.DO AUXPIPE=1
>SYSCALL2 NewStkObj
.ELSE

View File

@ -1,11 +1,11 @@
NEW
AUTO 3,1
.LIST OFF
.LIST OFF
.OP 65C02
.OR $2000
.TF LIB/LIBTCPIP
*--------------------------------------
AUXPIPE .EQ 0
AUXPIPE .EQ 1
IPDEBUG .EQ 0
*--------------------------------------
.MA ADC16
@ -33,7 +33,6 @@ IPDEBUG .EQ 0
.INB INC/IO.I
.FIN
.INB INC/A2OSX.I
* .INB INC/MLI.I
.INB INC/MLI.E.I
.INB INC/NIC.I
.INB INC/ETH.I
@ -131,7 +130,6 @@ L.ARP.REP .DA ARP.REP
L.SA.LOCAL .DA SA.LOCAL
L.SA.REMOTE .DA SA.REMOTE
L.DNS.MSG .DA DNS.MSG
L.ARP.CACHE .DA ARP.CACHE
L.DNS.CACHE .DA DNS.CACHE
L.SKT.Table .DA SKT.Table
L.HST.SScanF .DA HST.SScanF
@ -412,7 +410,6 @@ FD.SSOCK.SIZE .EQ *-FD.SSOCK
IOCTL .BS S.IOCTL
DCB.NIC .BS S.DCB.NIC
IPCFG .BS S.IPCFG
ARP.CACHE .BS K.ARPCACHE.SIZE*S.ARPCACHE
DNS.CACHE .BS K.DNSCACHE.SIZE*S.DNSCACHE
*--------------------------------------
ARP.REQ .HS FFFFFFFFFFFF S.ETH.DSTMAC
@ -459,6 +456,7 @@ FRM.QUEUE.LenL .BS K.FRMQUEUE.SIZE
FRM.QUEUE.LenH .BS K.FRMQUEUE.SIZE
*--------------------------------------
RefCount .DA #0
hARPCache .DA #0
DYNPORT.LAST .DA K.DYNPORT.START
hDNSSocket .BS 1
DNS.TmpCache .BS S.DNSCACHE

View File

@ -406,13 +406,13 @@ K.SYSCALL.BANK .DA #RRAMWRAMBNK1 $00
.DA #$80
.DA #0
.DA #$80
.DA #$40 NewStkObj
.DA #$C0 NewStkObj
.DA #$80
.DA #0
.DA #$80
.DA #$40 GetStkObjPtr
.DA #$C0 GetStkObjPtr
.DA #$80
.DA #$40 FreeStkObj
.DA #$C0 FreeStkObj
.DA #$80
*--------------------------------------
.DA #0 $F0 : SLIST