NEW AUTO 3,1 .LIST OFF .OP 65C02 .OR $2000 .TF bin/atlogon *-------------------------------------- .INB inc/macros.i .INB inc/a2osx.i .INB inc/mli.i .INB inc/mli.e.i .INB inc/appletalk.i *-------------------------------------- .DUMMY .OR ZPBIN ZS.START ZPAtlkParams .BS 2 ZPPTR1 .BS 2 ZPPTR2 .BS 2 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 Code Length To Relocate .DA 0 Data Segment to Allocate .DA 0 .DA 0 *-------------------------------------- * Relocation Table *-------------------------------------- .1 .DA CS.INIT .DA CS.RUN .DA CS.DOEVENT .DA CS.QUIT L.MSG.NOATK .DA MSG.NOATK L.MSG.ATKERR .DA MSG.ATKERR L.MSG.USAGE .DA MSG.USAGE L.MSG.GETINFO .DA MSG.GETINFO .DA 0 *-------------------------------------- CS.INIT clc rts *-------------------------------------- CS.RUN ldy #S.PS.ARGC lda (pPs),y beq CS.RUN.USAGE jsr CS.RUN.GetInfo bcs .9 jsr CS.RUN.LookupName bcs .9 jsr CS.RUN.FILogin bcs .9 lda #0 sec .9 rts *-------------------------------------- CS.RUN.USAGE >PUSHW L.MSG.USAGE >PUSHBI 0 >SYSCALL PrintF lda #E.SYN sec rts *-------------------------------------- CS.RUN.GetInfo lda #AT.GetInfo >STA.G P.GetInfo+1 >LEA.G P.GetInfo 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 .9 pha >LDYA L.MSG.NOATK >SYSCALL PutS pla sec rts *-------------------------------------- CS.RUN.LookupName lda #1 >SYSCALL ArgV >STYA.G P.LookupName+$08 lda #4 >STA.G P.LookupName+$C RetInt >STA.G P.LookupName+$D RetCnt >LDYAI 64 >STYA.G P.LookupName+$10 BufLen >LDYA.G NameBuf >STYA ZPPTR1 >STYA.G P.LookupName+$12 BufPtr lda #1 >STA.G P.LookupName+$16 MaxMatch >LEA.G P.LookupName ldx #AT.LookupName jmp CS.RUN.GOATLK *-------------------------------------- CS.RUN.FILogin >LEA.G P.FILogin+$4 >STYA ZPPTR2 ldy #3 .1 lda (ZPPTR1),y sta (ZPPTR2),y dey bpl .1 >LDYAI 64 >STYA.G P.FILogin+$E >LEA.G ReplyBuf >STYA.G P.FILogin+$10 >LEA.G P.FILogin ldx #AT.FILogin jmp CS.RUN.GOATLK *-------------------------------------- CS.RUN.GOATLK >STYA ZPAtlkParams ldy #1 txa sta (ZPAtlkParams),y >LDYA ZPAtlkParams jsr A2osX.ATKCALL bcc .9 pha >PUSHW L.MSG.ATKERR ldy #1 lda (ZPAtlkParams),y >PUSHA ldy #3 lda (ZPAtlkParams),y >PUSHA dey lda (ZPAtlkParams),y >PUSHA >PUSHBI 3 >SYSCALL PrintF pla sec .9 rts *-------------------------------------- CS.DOEVENT sec rts *-------------------------------------- CS.QUIT clc rts *-------------------------------------- CS.END MSG.NOATK .AZ "AppleTalk Not Loaded." 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" MSG.USAGE .AZ "Usage : ATLOGON [USER] [PASSWORD]" *-------------------------------------- .DUMMY .OR 0 DS.START P.GetInfo .BS $0F P.LookupName .BS $17 P.FILogin .BS $19 ZoneBuf .BS 33 NameBuf .BS 64 ReplyBuf .BS 64 DS.END .ED *-------------------------------------- MAN SAVE usr/src/bin/atlogon.s ASM