mirror of
https://github.com/A2osX/A2osX.git
synced 2024-09-29 09:55:53 +00:00
Kernel 0.93+
This commit is contained in:
parent
5ee518ca8d
commit
fe9f2700ec
Binary file not shown.
Binary file not shown.
@ -109,12 +109,13 @@ Dev.ParseArgs >LDYA ARGS
|
||||
|
||||
beq .8 No user MAC specified
|
||||
|
||||
>PUSHW L.MAC5
|
||||
>PUSHW L.MAC4
|
||||
>PUSHW L.MAC3
|
||||
>PUSHW L.MAC2
|
||||
>PUSHW L.MAC1
|
||||
>PUSHW L.MAC0
|
||||
ldx #10
|
||||
|
||||
.2 >PUSHW L.MAC0,x
|
||||
dex
|
||||
dex
|
||||
bpl .2
|
||||
|
||||
>PUSHBI 12 6 x byte PTRs
|
||||
>PUSHW L.SSCANF.MAC
|
||||
>LDYA ZPArgPtr
|
||||
|
@ -114,6 +114,7 @@ Dev.ParseArgs >LDYA ARGS
|
||||
>STYA ZPArgPTR
|
||||
lda (ZPArgPTR)
|
||||
bne .1
|
||||
|
||||
lda A2osX.RANDOM16
|
||||
eor A2osX.TIMER16
|
||||
sta DCB+S.DCB.NIC.MAC+3
|
||||
@ -123,12 +124,14 @@ Dev.ParseArgs >LDYA ARGS
|
||||
sta DCB+S.DCB.NIC.MAC+5
|
||||
clc
|
||||
rts
|
||||
.1 >PUSHW L.MAC5
|
||||
>PUSHW L.MAC4
|
||||
>PUSHW L.MAC3
|
||||
>PUSHW L.MAC2
|
||||
>PUSHW L.MAC1
|
||||
>PUSHW L.MAC0
|
||||
|
||||
.1 ldx #10
|
||||
|
||||
.2 >PUSHW L.MAC0,x
|
||||
dex
|
||||
dex
|
||||
bpl .2
|
||||
|
||||
>PUSHBI 12 6 x byte PTRs
|
||||
>PUSHW L.SSCANF.MAC
|
||||
>LDYA ZPArgPtr
|
||||
|
@ -142,12 +142,13 @@ Dev.ParseArgs >LDYA ARGS
|
||||
clc
|
||||
rts
|
||||
|
||||
.1 >PUSHW L.MAC5
|
||||
>PUSHW L.MAC4
|
||||
>PUSHW L.MAC3
|
||||
>PUSHW L.MAC2
|
||||
>PUSHW L.MAC1
|
||||
>PUSHW L.MAC0
|
||||
.1 ldx #10
|
||||
|
||||
.2 >PUSHW L.MAC0,x
|
||||
dex
|
||||
dex
|
||||
bpl .2
|
||||
|
||||
>PUSHBI 12 6 x byte PTRs
|
||||
>PUSHW L.SSCANF.MAC
|
||||
>LDYA ZPArgPtr
|
||||
@ -186,8 +187,9 @@ ZPBufPtr .EQ ZPDRV+2
|
||||
Counter .EQ ZPDRV+4
|
||||
Offset .EQ ZPDRV+6
|
||||
RXTX.Size .EQ ZPDRV+8
|
||||
BUF.Size .EQ ZPDRV+10
|
||||
.DO U2AI=1
|
||||
RX.IP .EQ ZPDRV+10
|
||||
RX.IP .EQ ZPDRV+12
|
||||
.FIN
|
||||
*--------------------------------------
|
||||
DRV.CS.START cld
|
||||
@ -372,7 +374,7 @@ CLOSE ldx DEVSLOTx0
|
||||
*--------------------------------------
|
||||
READWRITE.9 lda #E.NODATA
|
||||
|
||||
READWRITE.99 plp
|
||||
plp
|
||||
sec
|
||||
rts
|
||||
*--------------------------------------
|
||||
@ -403,32 +405,70 @@ READ php
|
||||
.DO U2AI=1
|
||||
ldy #0
|
||||
|
||||
.10 lda W5100.DR,x
|
||||
.10 lda W5100.DR,x IPRAW:Get Source IP
|
||||
sta RX.IP,y
|
||||
iny
|
||||
cpy #4
|
||||
bne .10
|
||||
|
||||
ldy W5100.DR,x get RX.Size HI
|
||||
sty RXTX.Size+1
|
||||
lda W5100.DR,x get RX.Size HI (not including 6 bytes Header)
|
||||
sta RXTX.Size+1
|
||||
eor #$ff
|
||||
sta Counter+1
|
||||
lda W5100.DR,x get RX.Size LO
|
||||
sta RXTX.Size
|
||||
eor #$ff
|
||||
sta Counter
|
||||
|
||||
eor #$ff
|
||||
|
||||
clc
|
||||
adc #S.IP
|
||||
pha
|
||||
tya
|
||||
sta BUF.Size
|
||||
ldy #S.IOCTL.BYTECNT
|
||||
sta (ZPIOCTL),y
|
||||
|
||||
iny
|
||||
|
||||
lda RXTX.Size+1
|
||||
adc /S.IP
|
||||
ply
|
||||
.ELSE
|
||||
lda W5100.DR,x get RX.Size HI
|
||||
sta BUF.Size+1
|
||||
|
||||
lda RXTX.Size
|
||||
clc
|
||||
adc #6 IPRAW: Add 6 bytes to Total Size
|
||||
sta RXTX.Size
|
||||
|
||||
lda RXTX.Size+1
|
||||
adc #0
|
||||
sta RXTX.Size+1
|
||||
ldy W5100.DR,x get RX.Size LO
|
||||
sty RXTX.Size
|
||||
|
||||
.ELSE
|
||||
lda W5100.DR,x get RX.Size HI (Frame size + 2)
|
||||
sta RXTX.Size+1
|
||||
lda W5100.DR,x get RX.Size LO
|
||||
sta RXTX.Size
|
||||
|
||||
ldy #S.IOCTL.BYTECNT
|
||||
sec
|
||||
sbc #2 MACRAW:strip 2 bytes Header from Size
|
||||
sta (ZPIOCTL),y
|
||||
sta BUF.Size
|
||||
eor #$ff
|
||||
sta Counter
|
||||
|
||||
iny
|
||||
lda RXTX.Size+1
|
||||
sbc #0
|
||||
sta (ZPIOCTL),y
|
||||
sta BUF.Size+1
|
||||
eor #$ff
|
||||
sta Counter+1
|
||||
.FIN
|
||||
|
||||
>LDYA BUF.Size
|
||||
>SYSCALL2 getmem
|
||||
bcs READWRITE.99
|
||||
bcs .9
|
||||
|
||||
>STYA ZPBufPtr
|
||||
phx
|
||||
@ -440,39 +480,6 @@ READ php
|
||||
pla
|
||||
sta (ZPIOCTL),y
|
||||
|
||||
ldy #S.IOCTL.BYTECNT
|
||||
.DO U2AI=1
|
||||
lda RXTX.Size
|
||||
sta (ZPIOCTL),y
|
||||
eor #$ff
|
||||
sta Counter
|
||||
eor #$ff
|
||||
clc
|
||||
adc #6 Total Size : Add 6 bytes for IPRAW
|
||||
sta RXTX.Size
|
||||
iny
|
||||
|
||||
lda RXTX.Size+1
|
||||
eor #$ff
|
||||
sta Counter+1
|
||||
eor #$ff
|
||||
adc #0
|
||||
sta RXTX.Size+1
|
||||
.ELSE
|
||||
lda RXTX.Size
|
||||
sec
|
||||
sbc #2 Header Size : strip 2 bytes for MACRAW
|
||||
sta (ZPIOCTL),y
|
||||
eor #$ff
|
||||
sta Counter
|
||||
iny
|
||||
|
||||
lda RXTX.Size+1
|
||||
sbc #0
|
||||
sta (ZPIOCTL),y
|
||||
eor #$ff
|
||||
sta Counter+1
|
||||
.FIN
|
||||
.DO U2AI=1
|
||||
ldx #3
|
||||
ldy #S.IP.SRC+3
|
||||
@ -502,7 +509,7 @@ READ php
|
||||
bne .2
|
||||
|
||||
inc ZPBufPtr+1
|
||||
bne .2
|
||||
bra .2
|
||||
|
||||
.4 >AR.SELECT S0.RX.RD
|
||||
|
||||
@ -526,6 +533,10 @@ READ php
|
||||
plp
|
||||
clc
|
||||
rts
|
||||
|
||||
.9 plp
|
||||
sec
|
||||
rts
|
||||
*--------------------------------------
|
||||
WRITE php
|
||||
sei
|
||||
@ -548,6 +559,7 @@ WRITE php
|
||||
sta RXTX.Size+1
|
||||
eor #$ff
|
||||
sta Counter+1
|
||||
|
||||
ldx DEVSLOTx0
|
||||
|
||||
>AR.SELECT S0.TX.FSR
|
||||
@ -563,6 +575,7 @@ WRITE php
|
||||
|
||||
.DO U2AI=1
|
||||
>AR.SELECT S0.DIPR
|
||||
|
||||
ldy #S.IP.DST
|
||||
|
||||
.1 lda (ZPBufPtr),y
|
||||
@ -572,6 +585,7 @@ WRITE php
|
||||
bne .1
|
||||
|
||||
>AR.SELECT S0.PROTO
|
||||
|
||||
ldy #S.IP.PROTOCOL
|
||||
lda (ZPBufPtr),y
|
||||
sta W5100.DR,x
|
||||
|
@ -45,14 +45,18 @@ FRM.NewIP stx .8+1
|
||||
>STYA ZPDataOutLen
|
||||
cpx #S.IP.PROTOCOL.TCP
|
||||
bne .1
|
||||
|
||||
lda #S.TCP
|
||||
bra .4
|
||||
|
||||
.1 cpx #S.IP.PROTOCOL.UDP
|
||||
bne .2
|
||||
|
||||
lda #S.UDP
|
||||
bra .4
|
||||
|
||||
.2 lda #S.IP
|
||||
bra .4
|
||||
|
||||
.4 sta .5+1 save Header len for reset later
|
||||
clc
|
||||
adc ZPDataOutLen
|
||||
@ -63,6 +67,7 @@ FRM.NewIP stx .8+1
|
||||
sta ZPFrameOutLen+1
|
||||
>SYSCALL2 getmem
|
||||
bcs .9
|
||||
|
||||
stx hFrameOut
|
||||
>STYA ZPFrameOutPtr
|
||||
|
||||
@ -74,6 +79,7 @@ FRM.NewIP stx .8+1
|
||||
iny
|
||||
dex
|
||||
bne .6
|
||||
|
||||
tya
|
||||
* clc
|
||||
adc ZPFrameOutPtr
|
||||
@ -84,6 +90,7 @@ FRM.NewIP stx .8+1
|
||||
lda IPCFG+S.NETCFG.DevFlags
|
||||
and #S.DCB.NIC.FLAGS.IPOFFLOAD
|
||||
bne .7
|
||||
|
||||
ldy #S.ETH.EII.TYPE
|
||||
lda /S.ETH.EII.TYPE.IP
|
||||
sta (ZPFrameOutPtr),y
|
||||
@ -107,8 +114,11 @@ FRM.NewIP stx .8+1
|
||||
ldx IP.ID+1
|
||||
inc
|
||||
bne .61
|
||||
|
||||
inx
|
||||
|
||||
stx IP.ID+1
|
||||
|
||||
.61 sta IP.ID
|
||||
sta (ZPFrameOutPtr),y
|
||||
dey
|
||||
|
@ -87,11 +87,14 @@ CS.RUN >PUSHBI 0
|
||||
>LDYA L.MSG.TOPBAR.KO
|
||||
|
||||
.2 >SYSCALL printf
|
||||
|
||||
>PUSHBI 0
|
||||
>LDYA L.MSG.KCONF
|
||||
>SYSCALL printf
|
||||
|
||||
>LDYAI A2osX.KCONFIG
|
||||
jsr CS.RUN.DumpConfYA
|
||||
|
||||
>PUSHBI 0
|
||||
>LDYA L.MSG.STATUSBAR
|
||||
>SYSCALL printf
|
||||
@ -99,6 +102,7 @@ CS.RUN >PUSHBI 0
|
||||
CS.RUN.REPaint >PUSHBI 0
|
||||
>LDYA L.MSG.FCONF
|
||||
>SYSCALL printf
|
||||
|
||||
>LDYA ZPCfgPtr
|
||||
jsr CS.RUN.DumpConfYA
|
||||
|
||||
@ -150,6 +154,7 @@ CS.RUN.Loop >SYSCALL GetChar
|
||||
inc
|
||||
sta (ZPCfgPtr),y
|
||||
jmp CS.RUN.REPaint
|
||||
|
||||
.5 cmp #'1'
|
||||
bcc CS.RUN.Loop
|
||||
cmp #'8'
|
||||
@ -158,10 +163,12 @@ CS.RUN.Loop >SYSCALL GetChar
|
||||
clc
|
||||
adc #8
|
||||
tay
|
||||
|
||||
lda (ZPCfgPtr),y
|
||||
eor #$FF
|
||||
sta (ZPCfgPtr),y
|
||||
jmp CS.RUN.REPaint
|
||||
|
||||
.8 >PUSHBI 0
|
||||
>LDYA L.MSG.QUIT
|
||||
.9 >SYSCALL printf
|
||||
@ -200,17 +207,27 @@ CS.RUN.Load >PUSHEA.G StatBuf
|
||||
>STYA ZPCfgPtr
|
||||
* clc
|
||||
rts
|
||||
|
||||
.99 >LDYAI 16
|
||||
>SYSCALL GetMem
|
||||
|
||||
>STYA ZPCfgPtr
|
||||
stx hFileBuf
|
||||
|
||||
ldy #15
|
||||
ldy #0
|
||||
.1 lda A2osX.KCONFIG,y
|
||||
sta (ZPCfgPtr),y
|
||||
dey
|
||||
bpl .1
|
||||
iny
|
||||
cpy #9
|
||||
bne .1
|
||||
|
||||
lda #0
|
||||
|
||||
.2 sta (ZPCfgPtr),y
|
||||
iny
|
||||
cpy #16
|
||||
bne .2
|
||||
|
||||
sec
|
||||
rts
|
||||
*--------------------------------------
|
||||
@ -277,6 +294,7 @@ CS.RUN.DumpConfYA
|
||||
>PUSHBI 1
|
||||
>LDYA L.MSG.TTYS
|
||||
>SYSCALL printf
|
||||
|
||||
ldy #9 Slot 1
|
||||
.1 lda (ZPTmp1),y
|
||||
ldx #SLOTS.MAX-1
|
||||
@ -285,6 +303,7 @@ CS.RUN.DumpConfYA
|
||||
beq .3
|
||||
dex
|
||||
bne .2
|
||||
|
||||
.3 phy
|
||||
txa
|
||||
asl
|
||||
@ -348,8 +367,8 @@ MSG.PMODE .AZ " Preemptive Mode : %s\r\n"
|
||||
MSG.TTYS .AZ " #TTYs : %d\r\n"
|
||||
MSG.ENABLED .AZ "Enabled "
|
||||
MSG.DISABLED .AZ "Disabled"
|
||||
MSG.SLOT .AZ " Slot #%d : %s\r\n"
|
||||
MSG.SLOT.NODEV .AZ "<Enabled> "
|
||||
MSG.SLOT .AZ " Slot #%d : %s\e[K\r\n"
|
||||
MSG.SLOT.NODEV .AZ "<Enabled>"
|
||||
MSG.SLOT.Z80 .AZ "Z80 CPU Board"
|
||||
MSG.SLOT.VSD .AZ "SSC Shared Driver for VSDRIVE"
|
||||
MSG.SLOT.ATK .AZ "AppleTalk Board"
|
||||
|
@ -21,16 +21,21 @@ AT.INIT >LDYAI MSG.INIT
|
||||
sta TmpPtr1
|
||||
lda #$C7
|
||||
sta TmpPtr1+1
|
||||
|
||||
.1 ldy #3
|
||||
|
||||
.2 lda (TmpPtr1),y
|
||||
cmp SIG.ATLK,y
|
||||
bne .3
|
||||
|
||||
dey
|
||||
bpl .2
|
||||
|
||||
ldy #4
|
||||
lda (TmpPtr1),y
|
||||
|
||||
ldx #0
|
||||
|
||||
cmp #1
|
||||
beq .4
|
||||
ldx #$80
|
||||
@ -41,6 +46,7 @@ AT.INIT >LDYAI MSG.INIT
|
||||
>LDYAI MSG.FAILED
|
||||
jsr PrintFYA
|
||||
rts
|
||||
|
||||
.3 dec TmpPtr1+1
|
||||
lda TmpPtr1+1
|
||||
cmp #$C0
|
||||
@ -48,6 +54,7 @@ AT.INIT >LDYAI MSG.INIT
|
||||
>LDYAI MSG.NOHW
|
||||
jsr PrintFYA
|
||||
rts
|
||||
|
||||
.4 stx WC.Flag
|
||||
tay
|
||||
lda TmpPtr1+1
|
||||
|
Loading…
Reference in New Issue
Block a user