From b476c8aa441eb999d60a201f3051620a62bba1a2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9my=20GIBERT?= Date: Sun, 20 Mar 2016 23:12:57 +0100 Subject: [PATCH] NET Drivers:code cleanup --- DRV/LANCEGS.DRV.S.txt | 61 ++--------------------- DRV/UTHERNET.DRV.S.txt | 105 +++++----------------------------------- DRV/UTHERNET2.DRV.S.txt | 60 ++--------------------- DRV/X.NET.DRV.S.txt | 61 +++++++++++++++++++++++ 4 files changed, 80 insertions(+), 207 deletions(-) create mode 100644 DRV/X.NET.DRV.S.txt diff --git a/DRV/LANCEGS.DRV.S.txt b/DRV/LANCEGS.DRV.S.txt index a142d514..5a9d5f2a 100644 --- a/DRV/LANCEGS.DRV.S.txt +++ b/DRV/LANCEGS.DRV.S.txt @@ -10,6 +10,7 @@ AUTO 6 *-------------------------------------- .INB INC/MACROS.I .INB INC/A2OSX.I + .INB INC/LIBTCPIP.I *-------------------------------------- ZPTmpPTR .EQ ZPDRV *-------------------------------------- @@ -72,10 +73,6 @@ L91C96.3.RCV .EQ $C08C L91C96.BSR .EQ $C08E *-------------------------------------- -ERRTNOFRAME .EQ 0 -ERRNOBUFFER .EQ 1 -ERRTIMEOUT .EQ 2 -*-------------------------------------- * File Header (16 Bytes) *-------------------------------------- CS.START cld @@ -149,57 +146,7 @@ Dev.Detect sta hArgs clc rts *-------------------------------------- -DecodeMac lda (ZPTmpPTR) - cmp #12 - bne .9 - - ldy #1 - ldx #0 - -.1 lda (ZPTmpPTR),y - jsr Asc2NibbleA - bcs .9 - - asl - asl - asl - asl - sta MAC,x - - iny - lda (ZPTmpPTR),y - jsr Asc2NibbleA - bcs .9 - - ora MAC,x - sta MAC,x - inx - iny - cpy #13 - bne .1 - - clc - rts - -.9 sec - rts -*-------------------------------------- -Asc2NibbleA cmp #$30 - bcc .9 - cmp #$3A - bcs .1 - and #$0F - clc - rts -.1 cmp #$41 - bcc .9 - cmp #$47 - bcs .9 - sbc #$36 - clc - rts -.9 sec - rts + .INB DRV/X.NET.DRV.S *-------------------------------------- CS.END MSG.DETECT >PSTRING "LanCeGS/SMSC91C96 Driver.\n" @@ -296,7 +243,7 @@ GETEVENT ldx DEVSLOTx0 lda L91C96.2.IST,x and #L91C96.2.IST.RCV bne GETEVENT.RxOK - lda #ERRTNOFRAME + lda #ERR.DEV.NOFRAME sec rts @@ -453,7 +400,7 @@ SEND >PULLW ZPTmpPTR bra * - lda #ERRNOBUFFER + lda #ERR.DEV.NOBUFFER sec rts diff --git a/DRV/UTHERNET.DRV.S.txt b/DRV/UTHERNET.DRV.S.txt index b830a5b7..2b098a4a 100644 --- a/DRV/UTHERNET.DRV.S.txt +++ b/DRV/UTHERNET.DRV.S.txt @@ -1,6 +1,6 @@ PR#3 PREFIX /A2OSX.SRC -NEW +LOMEM $C00 INC 1 AUTO 6 .LIST OFF @@ -10,6 +10,7 @@ AUTO 6 *-------------------------------------- .INB INC/MACROS.I .INB INC/A2OSX.I + .INB INC/LIBTCPIP.I *-------------------------------------- ZPTmpPTR .EQ ZPDRV *-------------------------------------- @@ -24,8 +25,6 @@ IntStatusQueue .EQ $C088 Interrupt Status Queue PacketPagePTR .EQ $C08A PacketPage Pointer PacketPageDATA .EQ $C08C PacketPage Data (DWORD) *-------------------------------------- -* PacketPage Offsets & Masks -*-------------------------------------- PP.ID .EQ $0000 Product ID code (RO) PP.RFBCNT .EQ $0050 Received Frame Byte Counter (RO) PP.RxCFG .EQ $0102 Receiver Configuration (RW) @@ -105,10 +104,6 @@ PP.RxLength .EQ $0402 PP.RxFrame .EQ $0404 PP.TxFrame .EQ $0A00 *-------------------------------------- -ERRTNOFRAME .EQ 0 -ERRNOBUFFER .EQ 1 -ERRTIMEOUT .EQ 2 -*-------------------------------------- * File Header (16 Bytes) *-------------------------------------- CS.START cld @@ -153,7 +148,7 @@ Dev.Detect sta hArgs >LDYA L.MSG.DETECT.KO >SYSCALL SYS.PSTROutYA - lda #DEVMGR.ERRNOHW Not Found in any slot, exiting + lda #DEVMGR.ERRNOHW sec rts @@ -179,57 +174,7 @@ Dev.Detect sta hArgs clc rts *-------------------------------------- -DecodeMac lda (ZPTmpPTR) - cmp #12 - bne .9 - - ldy #1 - ldx #0 - -.1 lda (ZPTmpPTR),y - jsr Asc2NibbleA - bcs .9 - - asl - asl - asl - asl - sta MAC,x - - iny - lda (ZPTmpPTR),y - jsr Asc2NibbleA - bcs .9 - - ora MAC,x - sta MAC,x - inx - iny - cpy #13 - bne .1 - - clc - rts - -.9 sec - rts -*-------------------------------------- -Asc2NibbleA cmp #$30 - bcc .9 - cmp #$3A - bcs .1 - and #$0F - clc - rts -.1 cmp #$41 - bcc .9 - cmp #$47 - bcs .9 - sbc #$36 - clc - rts -.9 sec - rts + .INB DRV/X.NET.DRV.S *-------------------------------------- CS.END MSG.DETECT >PSTRING "UtherNet/CS8900A Driver.\n" @@ -259,12 +204,6 @@ DRV.CS.START .DA OPEN L.DEVINFO .DA DEVINFO .DA 0 end or relocation *-------------------------------------- -* input : -* none -* output : -* CC on success -* CS on error -*-------------------------------------- OPEN jsr Reset >LDYAI PP.RxCTL >STYA PacketPagePTR,x @@ -297,19 +236,13 @@ OPEN jsr Reset clc rts *-------------------------------------- -* input : -* pEvent -* output : -* CC no event -* CS event -*-------------------------------------- GETEVENT ldx DEVSLOTx0 >LDYAI PP.RxEvent >STYA PacketPagePTR,x >LDYA PacketPageDATA,x and /PP.RxEvent.RxOK+PP.RxEvent.Brdcast+PP.RxEvent.IA bne GETEVENT.RxOK - lda #ERRTNOFRAME + lda #ERR.DEV.NOFRAME sec rts @@ -381,12 +314,6 @@ CLOSE jsr Reset clc rts *-------------------------------------- -* in: -* out: -* Y,A = BUFFER PTR -* CC on success -* CS on error -*-------------------------------------- GETINFO lda #S.DEVINFO.NET.STATUS.10 sta LINK.STATUS @@ -414,13 +341,6 @@ GETINFO lda #S.DEVINFO.NET.STATUS.10 clc rts *-------------------------------------- -* in: -* PULLW = FRAME PTR -* PULLW = FRAME LEN -* out: -* CC on success -* CS on error -*-------------------------------------- SEND >PULLW ZPTmpPTR lda (ZPTmpPTR) @@ -429,7 +349,7 @@ SEND >PULLW ZPTmpPTR lda (ZPTmpPTR),y sta FRAMELEN+1 - ldy #2+6+5 Add Src MAC Address + ldy #S.ETH.SRCMAC+5 ldx #5 .10 lda MAC,x sta (ZPTmpPTR),y @@ -452,18 +372,19 @@ SEND >PULLW ZPTmpPTR lda PacketPageDATA+1,x and /PP.BusST.Rdy4TxNOW bne SENDPREADY - bra * lda #0 + .2 dec bne .2 + dey bne .1 - bra * - lda #ERRTIMEOUT + + lda #ERR.DEV.TIMEOUT sec rts -.9 bra * - lda #ERRNOBUFFER + +.9 lda #ERR.DEV.NOBUFFER sec rts @@ -489,8 +410,6 @@ SENDPREADY ldy #2 .8 clc rts *-------------------------------------- -* PRIVATE -*-------------------------------------- Reset ldx DEVSLOTx0 >LDYAI PP.SelfCTL >STYA PacketPagePTR,x diff --git a/DRV/UTHERNET2.DRV.S.txt b/DRV/UTHERNET2.DRV.S.txt index 307d9a8e..cbc9fe37 100644 --- a/DRV/UTHERNET2.DRV.S.txt +++ b/DRV/UTHERNET2.DRV.S.txt @@ -68,10 +68,6 @@ RX.BASE .EQ $4000 TX.BASE .EQ $6000 RXTX.MASK .EQ $1FFF *-------------------------------------- -ERRTNOFRAME .EQ 0 -ERRNOBUFFER .EQ 1 -ERRTIMEOUT .EQ 2 -*-------------------------------------- * File Header (16 Bytes) *-------------------------------------- CS.START cld @@ -153,57 +149,7 @@ Dev.Detect sta hArgs clc rts *-------------------------------------- -DecodeMac lda (ZPTmpPTR) - cmp #12 - bne .9 - - ldy #1 - ldx #0 - -.1 lda (ZPTmpPTR),y - jsr Asc2NibbleA - bcs .9 - - asl - asl - asl - asl - sta MAC,x - - iny - lda (ZPTmpPTR),y - jsr Asc2NibbleA - bcs .9 - - ora MAC,x - sta MAC,x - inx - iny - cpy #13 - bne .1 - - clc - rts - -.9 sec - rts -*-------------------------------------- -Asc2NibbleA cmp #$30 - bcc .9 - cmp #$3A - bcs .1 - and #$0F - clc - rts -.1 cmp #$41 - bcc .9 - cmp #$47 - bcs .9 - sbc #$36 - clc - rts -.9 sec - rts + .INB DRV/X.NET.DRV.S *-------------------------------------- CS.END MSG.DETECT >PSTRING "UtherNetII/W5100 Driver.\n" @@ -269,7 +215,7 @@ GETEVENT ldx DEVSLOTx0 ora RXTX.Size+1 bne GETEVENT.RxOK -.9 lda #ERRTNOFRAME +.9 lda #ERR.DEV.NOFRAME sec rts @@ -391,7 +337,7 @@ SEND >PULLW ZPTmpPTR sbc RXTX.Size+1 bcs SEND.READY - lda #ERRNOBUFFER + lda #ERR.DEV.NOBUFFER sec rts diff --git a/DRV/X.NET.DRV.S.txt b/DRV/X.NET.DRV.S.txt new file mode 100644 index 00000000..d3487f16 --- /dev/null +++ b/DRV/X.NET.DRV.S.txt @@ -0,0 +1,61 @@ +PR#3 +PREFIX /A2OSX.SRC +LOMEM $C00 +INC 1 +AUTO 6 + .LIST OFF +*-------------------------------------- +DecodeMac lda (ZPTmpPTR) + cmp #12 + bne .9 + + ldy #1 + ldx #0 + +.1 lda (ZPTmpPTR),y + jsr Asc2NibbleA + bcs .9 + + asl + asl + asl + asl + sta MAC,x + + iny + lda (ZPTmpPTR),y + jsr Asc2NibbleA + bcs .9 + + ora MAC,x + sta MAC,x + inx + iny + cpy #13 + bne .1 + + clc + rts + +.9 sec + rts +*-------------------------------------- +Asc2NibbleA cmp #$30 + bcc .9 + cmp #$3A + bcs .1 + and #$0F + clc + rts +.1 cmp #$41 + bcc .9 + cmp #$47 + bcs .9 + sbc #$36 + clc + rts +.9 sec + rts +*-------------------------------------- +MAN +SAVE DRV/X.NET.DRV.S