NEW PREFIX AUTO 4,1 .LIST OFF .OP 65C02 .OR $2000 .TF SYS/KM/KM.APPLETALK *-------------------------------------- .INB INC/MACROS.I .INB INC/IO.I .INB INC/MONITOR.I .INB INC/MLI.I *-------------------------------------- TmpPtr1 .EQ $0 *-------------------------------------- BUF.PREFIX .EQ $300 *-------------------------------------- AT.INIT >LDYAI MSG.INIT jsr PrintFYA lda #$F9 sta TmpPtr1 lda #$C7 sta TmpPtr1+1 .1 ldy #3 .2 lda (TmpPtr1),y cmp SIG.ATLK,y bne .3 dey bpl .2 ldx #0 ldy #4 lda (TmpPtr1),y cmp #1 beq .4 ldx #$80 cmp #2 beq .4 pha >LDYAI MSG.FAILED jsr PrintFYA rts .3 dec TmpPtr1+1 lda TmpPtr1+1 cmp #$C0 bne .1 >LDYAI MSG.NOHW jsr PrintFYA rts .4 stx WC.Flag tay lda TmpPtr1+1 and #$0f pha Push slot # phy Push Type # >LDYAI MSG.HWOK jsr PrintFYA >LDYA MLI+1 >STYA GO.OLDMLI+1 >STYA MLIATALK.PARAMS.OLDMLI ldy #$14 lda TmpPtr1+1 Cn sta MLIALLOCIRQ.PARAMS.SLOT >STYA GO.WSCARD+1 bit WC.Flag bmi .5 >STYA MLI+1 .5 >LDYAI MSG.ATINIT jsr PrintFYA jsr GO.WSCARD .DA #MLIATALK .DA MLIATALK.PARAMS bcs .9 >LDYAI MSG.IRQ jsr PrintFYA jsr MLI .DA #MLIALLOCIRQ .DA MLIALLOCIRQ.PARAMS bcs .9 cli >LDYAI MSG.PREFIX1 jsr PrintFYA jsr GO.OLDMLI .DA #MLIGETPREFIX .DA MLIGETPREFIX.PARAMS bcs .9 >LDYAI MSG.PREFIX2 jsr PrintFYA jsr GO.WSCARD .DA #MLISETPREFIX .DA MLIGETPREFIX.PARAMS bcs .9 >LDYAI MSG.OK jsr PrintFYA rts .9 pha >LDYAI MSG.KO jsr PrintFYA rts *-------------------------------------- GO.WSCARD jmp $ffff SELF MODIFIED GO.OLDMLI jmp $ffff SELF MODIFIED *-------------------------------------- .INB USR/SRC/SHARED/X.PRINTF.S *-------------------------------------- MSG.INIT .AZ "AppleTalk Driver For A2osX\n" MSG.FAILED .AZ "AppleTalk Workstation Card Failed Power Up Diagnostics : EC=%h.\n" MSG.NOHW .AZ "AppleTalk Workstation Card Not Found.\n" MSG.HWOK .AZ "AppleTalk Workstation Card Type #%d Found In Slot #%d.\n" MSG.ATINIT .AZ "Calling ATInit...\n" MSG.IRQ .AZ "Setting Up IRQ Vector...\n" MSG.PREFIX1 .AZ "Getting ProDOS Prefix...\n" MSG.PREFIX2 .AZ "Setting AppleTalk Prefix...\n" MSG.OK .AZ "AppleTalk Driver Successfully Installed.\n" MSG.KO .AZ "AppleTalk Driver Install Failed : EC=%h.\n" *-------------------------------------- SIG.ATLK .AS "ATLK" WC.Flag .BS 1 *-------------------------------------- MLIATALK.PARAMS .DA #0 Sync .DA #1 INIT .BS 2 RC .DA #$40 ??? from ATINIT disassembly MLIATALK.PARAMS.OLDMLI .BS 2 ??? from ATINIT disassembly .BS 5 ??? from ATINIT disassembly *-------------------------------------- MLIALLOCIRQ.PARAMS .DA #2 Param Count .BS 1 Int Num returned .DA #$19 Lo byte always $19 for WS Card MLIALLOCIRQ.PARAMS.SLOT .BS 1 hi byte : $Cn *-------------------------------------- MLIGETPREFIX.PARAMS .DA #1 .DA BUF.PREFIX *-------------------------------------- MAN SAVE USR/SRC/SYS/KM.APPLETALK.S ASM