A2osX/LIB/LIBETALK.S.txt

94 lines
1.9 KiB
Plaintext
Raw Normal View History

2019-01-05 20:33:08 +00:00
NEW
PREFIX
AUTO 4,1
.LIST OFF
.OP 65C02
.OR $2000
.TF LIB/LIBETALK
*--------------------------------------
.INB INC/MACROS.I
.INB INC/A2OSX.I
.INB INC/NIC.I
.INB INC/ETH.I
*--------------------------------------
ZPFrameInPtr .EQ ZPLIB
ZPFrameInLen .EQ ZPLIB+2
ZPDataInPtr .EQ ZPLIB+4
ZPDataInLen .EQ ZPLIB+6
ZPFrameOutPtr .EQ ZPLIB+8
ZPFrameOutLen .EQ ZPLIB+10
ZPDataOutPtr .EQ ZPLIB+12
ZPDataOutLen .EQ ZPLIB+14
ZPIOCTL .EQ ZPLIB+16
*--------------------------------------
* File Header (16 Bytes)
*--------------------------------------
CS.START cld
jmp (.1,x)
.DA #$61 6502,Level 1 (65c02)
.DA #1 BIN Layout Version 1
.DA 0
.DA CS.END-CS.START
.DA 0
.DA 0
.DA 0
*--------------------------------------
* Relocation Table
*--------------------------------------
.1 .DA LIB.LOAD
.DA LIB.UNLOAD
.DA SETCFG
.DA GETCFG
.DA INCOMING
.DA PULSE
*--------------------------------------
.DA 0
*--------------------------------------
LIB.LOAD clc
rts
*--------------------------------------
LIB.UNLOAD clc
rts
*--------------------------------------
SETCFG
*--------------------------------------
GETCFG
*--------------------------------------
INCOMING sta hFrameIn
>PULLW ZPIOCTL
ldy #S.IOCTL.BUFPTR+3
ldx #3
.1 lda (ZPIOCTL),y
sta ZPFrameInPtr,x
dey
dex
bpl .1
sec
rts
*--------------------------------------
* Expire = every sec
* Retry = every 100 msec
*--------------------------------------
PULSE and #S.EVT.F.T1SEC
beq .1
.1 clc
rts
*--------------------------------------
CS.END
*--------------------------------------
hFrameIn .BS 1
*--------------------------------------
MAN
SAVE USR/SRC/LIB/LIBETALK.S
ASM