A2osX/BIN/ATBROWSE.S.txt

247 lines
4.7 KiB
Plaintext
Raw Normal View History

NEW
2019-05-02 09:52:32 +00:00
AUTO 3,1
.LIST OFF
.OP 65C02
.OR $2000
2020-08-04 07:10:48 +00:00
.TF bin/atbrowse
*--------------------------------------
2020-08-04 07:10:48 +00:00
.INB inc/macros.i
.INB inc/a2osx.i
.INB inc/mli.i
.INB inc/mli.e.i
.INB inc/appletalk.i
*--------------------------------------
2020-08-04 07:10:48 +00:00
.DUMMY
.OR ZPBIN
ZS.START
2020-08-06 20:01:14 +00:00
ZPAtlkParams .BS 2
2020-08-04 07:10:48 +00:00
ZPPTR1 .BS 2
ZPPTR2 .BS 2
hBuf .BS 1
ZS.END .ED
*--------------------------------------
* 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 CS
.DA DS.END-DS.START DS
2019-10-21 19:40:50 +00:00
.DA #64 SS
.DA #4 ZP
.DA 0
*--------------------------------------
* Relocation Table
2019-10-03 06:25:27 +00:00
*--------------------------------------
.1 .DA CS.INIT
.DA CS.RUN
.DA CS.DOEVENT
.DA CS.QUIT
L.MSG.NOATK .DA MSG.NOATK
2020-08-06 20:01:14 +00:00
L.MSG.ATKERR .DA MSG.ATKERR
2020-08-23 19:46:37 +00:00
L.MSG.GETINFO .DA MSG.GETINFO
L.MSG.MYZONE .DA MSG.MYZONE
L.SEARCH.STRING .DA SEARCH.STRING
L.MSG.DUMP0 .DA MSG.DUMP0
L.MSG.DUMP .DA MSG.DUMP
.DA 0
*--------------------------------------
CS.INIT clc
2020-08-23 19:46:37 +00:00
CS.INIT.RTS rts
*--------------------------------------
2020-09-05 18:44:58 +00:00
CS.RUN jsr CS.RUN.GetInfo
bcs .9
jsr CS.RUN.GetMyZone
jsr CS.RUN.LookupName
lda #0
sec
.9 rts
*--------------------------------------
CS.RUN.GetInfo lda #AT.GetInfo
>STA.G P.GetInfo+1
>LEA.G P.GetInfo
2019-10-21 19:40:50 +00:00
2020-09-05 18:44:58 +00:00
jsr A2osX.ATKCALL
bcs .9
>PUSHW L.MSG.GETINFO
>PUSHB.G P.GetInfo+$09 THIS-NET
>PUSHB.G P.GetInfo+$08 THIS-NET
>PUSHB.G P.GetInfo+$0E NODE
>PUSHB.G P.GetInfo+$0A BRIDGE
>PUSHB.G P.GetInfo+$0D HARDWARE ID
>PUSHB.G P.GetInfo+$0C HARDWARE ID
>PUSHB.G P.GetInfo+$0B ROM VERSION
>PUSHBI 7
>SYSCALL PrintF
rts
2020-09-05 18:44:58 +00:00
.9 pha
>LDYA L.MSG.NOATK
>SYSCALL PutS
pla
sec
rts
*--------------------------------------
CS.RUN.GetMyZone
>LEA.G ZoneBuf
>STYA.G P.GetMyZone+$08
lda #4
>STA.G P.GetMyZone+$0C RetInt
>STA.G P.GetMyZone+$0D RetCnt
>LEA.G P.GetMyZone
ldx #AT.GetMyZone
jsr CS.RUN.GOATLK
bcs .9
>PUSHW L.MSG.MYZONE
>PUSHEA.G ZoneBuf
>PUSHBI 2
>SYSCALL PrintF
.9 rts
*--------------------------------------
CS.RUN.LookupName
>LDYA L.SEARCH.STRING
>STYA.G P.LookupName+$08 Entry Name Ptr
lda #4
2020-08-23 19:46:37 +00:00
>STA.G P.LookupName+$0C RetInt
>STA.G P.LookupName+$0D RetCnt
>LDYAI 1024
>STYA.G P.LookupName+$10 BufLen
2020-08-04 07:10:48 +00:00
>LDYAI 1024
2020-02-28 07:21:46 +00:00
>SYSCALL GetMem
bcs .99
2019-10-21 19:40:50 +00:00
>STYA ZPPTR1
2020-08-04 07:10:48 +00:00
stx hBuf
2020-08-06 20:01:14 +00:00
>STYA.G P.LookupName+$12 BufPtr
lda #16
>STA.G P.LookupName+$16 MaxMatch
2019-10-21 19:40:50 +00:00
>LEA.G P.LookupName
2020-08-23 19:46:37 +00:00
ldx #AT.LookupName
2020-08-06 20:01:14 +00:00
jsr CS.RUN.GOATLK
2019-10-21 19:40:50 +00:00
.99 bcs .9
>LDYA L.MSG.DUMP0
2020-08-17 20:47:31 +00:00
>SYSCALL PutS
bcs .9
2019-10-21 19:40:50 +00:00
2020-09-07 20:40:50 +00:00
>LDA.G P.LookupName+$17
beq .8
2020-08-04 07:10:48 +00:00
.1 >PUSHW L.MSG.DUMP
ldy #0
.2 >PUSHB (ZPPTR1),y
iny
cpy #5
bne .2
lda ZPPTR1
clc
adc #5
sta ZPPTR2
lda ZPPTR1+1
adc #0
sta ZPPTR2+2
>PUSHW ZPPTR2
2020-08-04 07:10:48 +00:00
>PUSHBI 7
2020-02-28 07:21:46 +00:00
>SYSCALL PrintF
bcs .9
2019-10-21 19:40:50 +00:00
lda ZPPTR2
sec
adc (ZPPTR2)
sta ZPPTR1
lda ZPPTR2+1
adc #0
sta ZPPTR1+1
>DEC.G P.LookupName+$17
2020-08-04 07:10:48 +00:00
bne .1
2019-10-21 19:40:50 +00:00
2020-09-05 18:44:58 +00:00
.8 clc
2020-08-23 19:46:37 +00:00
.9 rts
*--------------------------------------
2020-08-06 20:01:14 +00:00
CS.RUN.GOATLK >STYA ZPAtlkParams
2020-08-23 19:46:37 +00:00
ldy #1
txa
sta (ZPAtlkParams),y
>LDYA ZPAtlkParams
2020-08-06 20:01:14 +00:00
jsr A2osX.ATKCALL
bcc .9
pha
>PUSHW L.MSG.ATKERR
2020-09-05 18:44:58 +00:00
ldy #1
lda (ZPAtlkParams),y
>PUSHA
2020-08-06 20:01:14 +00:00
ldy #3
lda (ZPAtlkParams),y
>PUSHA
dey
lda (ZPAtlkParams),y
>PUSHA
2020-09-05 18:44:58 +00:00
>PUSHBI 3
2020-08-17 20:47:31 +00:00
>SYSCALL PrintF
2020-08-06 20:01:14 +00:00
pla
sec
.9 rts
*--------------------------------------
CS.DOEVENT sec
rts
*--------------------------------------
2020-08-04 07:10:48 +00:00
CS.QUIT lda hBuf
beq .8
2018-07-18 15:30:42 +00:00
>SYSCALL FreeMem
2020-08-06 20:01:14 +00:00
.8 clc
rts
*--------------------------------------
CS.END
2020-08-04 07:10:48 +00:00
MSG.NOATK .AZ "AppleTalk Not Loaded."
2020-09-05 18:44:58 +00:00
MSG.ATKERR .AZ "AppleTalk Call %h, ERR:%H\r\n"
MSG.GETINFO .AS "Network/Node:$%h%h/$%h\r\n"
.AS "Bridge : $%h\r\n"
.AZ "HWID/ROMVER :$%h%h/$%h\r\n"
2020-08-23 19:46:37 +00:00
MSG.MYZONE .AZ "Zone Name :%S\r\n"
SEARCH.STRING >PSTR "=:=@*"
2020-08-04 07:10:48 +00:00
MSG.DUMP0 .AZ "Net Nod SkT En# Name"
MSG.DUMP .AZ "%H $%h $%h $%h %S\r\n"
*--------------------------------------
.DUMMY
.OR 0
DS.START
P.GetInfo .BS $0F
2020-08-23 19:46:37 +00:00
P.GetMyZone .BS $0F
P.LookupName .BS $17
2020-08-23 19:46:37 +00:00
ZoneBuf .BS 33
2020-08-17 20:47:31 +00:00
DS.END .ED
*--------------------------------------
MAN
2020-08-04 07:10:48 +00:00
SAVE usr/src/bin/atbrowse.s
ASM