home *** CD-ROM | disk | FTP | other *** search
/ Antic Magazine 1985 December / Antic_Magazine_1985_12_Antic.atr / eprog.m65 < prev    next >
Text File  |  2023-02-26  |  7KB  |  1 lines

  1. 10 ;EPROG¢20 ;BY LARRY A. WOODGEARD¢30 ;(c) 1985, ANTIC PUBLISHING¢40 ;DEFAULT 2764¢50       *=  $6000¢60 ADDRL =   $CE¢70 ADDRH =   $CF¢80 CLK   =   $10¢90 RW1   =   $20¢0100 RW2 =   $40¢0110 EN  =   $80¢0120 PORTA = $D300¢0130 PACTL = $D302¢0140 DSUM =  $CD¢0150 ;EPROM=$6123 FOR 2764¢0160 ;EPROM=$612B FOR 2732¢0170 ;EPROM=$6133 FOR 2716¢0180 EPROM = $6123¢0190 GBUF =  $6360¢0200 GBUFL = $60¢0210 GBUFH = $63¢0220 VADDRL = $CE¢0230 VADDRH = $CF¢0240 IOCB2 = $20¢0250 ICCOM = $0342¢0260 ICBAL = $0344¢0270 ICBAH = $0345¢0280 ICBLL = $0348¢0290 ICBLH = $0349¢0300 ICAX1 = $034A¢0310 ICAX2 = $034B¢0320 CIOV =  $E456¢0330 ADTEXL = $CB¢0340 ADTEXH = $CC¢0350     JMP EPTYPE¢0360 READR¢0370 ;READ ROUTINE¢0380     LDA #$00¢0390     STA ADDRL¢0400     LDA #$70¢0410     STA ADDRH¢0420 READ LDX #$7F¢0430     JSR PORTMODE¢0440     JSR ADDROUT¢0450     LDX #$70¢0460     JSR PORTMODE¢0470     LDA #RW1¢0480     JSR CLKOUT¢0490     LDA #$0F¢0500     AND PORTA¢0510     STA DSUM¢0520     LDA #RW1+RW2¢0530     JSR CLKOUT¢0540     LDA #$0F¢0550     AND PORTA¢0560     CLC ¢0570     ASL A¢0580     ASL A¢0590     ASL A¢0600     ASL A¢0610     CLC ¢0620     ADC DSUM¢0630     LDY #$00¢0640     STA (ADDRL),Y¢0650     INC ADDRL¢0660     BNE READ¢0670     INC ADDRH¢0680     LDA ADDRH¢0690     CMP #$90¢0700     BNE READ¢0710     LDX #$00¢0720     JSR PORTMODE¢0730     BRK ¢0740 ;ADDROUT SUBROUTINE¢0750 ADDROUT¢0760     LDA #$F0¢0770     AND ADDRH¢0780     JSR DIV16¢0790     SEC ¢0800     SBC #$07¢0810     JSR CLKOUT¢0820     LDA #$0F¢0830     AND ADDRH¢0840     JSR CLKOUT¢0850     LDA #$F0¢0860     AND ADDRL¢0870     JSR DIV16¢0880     JSR CLKOUT¢0890     LDA #$0F¢0900     AND ADDRL¢0910     JSR CLKOUT¢0920     RTS ¢0930 ;CLOCK REGISTERS SUBROUTINE¢0940 CLKOUT¢0950     ORA #$00¢0960     STA PORTA¢0970     LDX #$10¢0980 DELAY1 DEX ¢0990     BNE DELAY1¢1000     ORA #CLK¢1010     STA PORTA¢1020     LDX #$10¢1030 DELAY2 DEX ¢1040     BNE DELAY2¢1050     AND #$EF¢1060     RTS ¢1070 ;PORT DIRECTION SUBROUTINE¢1080 PORTMODE¢1090     LDA #$38¢1100     STA PACTL¢1110     STX PORTA¢1120     LDA #$3C¢1130     STA PACTL¢1140     RTS ¢1150 ;DIVIDE BY 16 SUBROUTINE¢1160 DIV16¢1170     CLC ¢1180     LSR A¢1190     LSR A¢1200     LSR A¢1210     LSR A¢1220     CLC ¢1230     RTS ¢1240 PROGRAMR¢1250 ;PROGRAM ROUTINE¢1260     LDA #$00¢1270     STA ADDRL¢1280     LDA #$70¢1290     STA ADDRH¢1300     LDX #$FF¢1310     JSR PORTMODE¢1320     LDA #$00¢1330     STA PORTA¢1340     JSR SWPROG¢1350 PROGRAM¢1360     LDY #$00¢1370     LDA (ADDRL),Y¢1380     AND #$F0¢1390     JSR DIV16¢1400     JSR CLKOUT¢1410     LDY #$00¢1420     LDA (ADDRL),Y¢1430     AND #$0F¢1440     JSR CLKOUT¢1450     JSR ADDROUT¢1460     LDA #EN¢1470     STA PORTA¢1480     JSR DELAY¢1490     LDA #$00¢1500     STA PORTA¢1510     INC ADDRL¢1520     BNE PROGRAM¢1530     INC ADDRH¢1540     LDA ADDRH¢1550     CMP #$90¢1560     BNE PROGRAM¢1570     JSR PROGEND¢1580     LDX #$00¢1590     JSR PORTMODE¢1600     BRK ¢1610 DELAY¢1620     LDX #$00¢1630 START LDY #$01¢1640 DELAY3 DEY ¢1650     BNE DELAY3¢1660     DEX ¢1670     BNE START¢1680     RTS ¢1690 CKEY¢1700     LDA #TEXT6&255¢1710     STA ADTEXL¢1720     LDA #TEXT6/256¢1730     STA ADTEXH¢1740     JSR PRINTSCR¢1750 CH  LDA $D01F¢1760     CMP #$06¢1770     BNE CH¢1780     RTS ¢1790 ;EPROM VARIABLES¢1800 EPVAR LDA #$60¢1810     STA VADDRH¢1820     LDY #$00¢1830     LDX #$00¢1840 VLOOP LDA VADDR,X¢1850     STA VADDRL¢1860     LDA EPROM,X¢1870     STA (VADDRL),Y¢1880     INX ¢1890     CPX #$08¢1900     BNE VLOOP¢1910     RTS ¢1920 EP64 .BYTE $70,$07,$00,$70,$00,$80,$00,$01¢1930 EP32 .BYTE $80,$08,$00,$80,$00,$80,$00,$28¢1940 EP16 .BYTE $88,$08,$80,$88,$80,$00,$80,$28¢1950 VADDR .BYTE $08,$55,$73,$A3,$AC,$CC,$D4,$F0¢1960 OPENSCR¢1970     LDX #IOCB2¢1980     LDA #$03    OPEN CMD¢1990     STA ICCOM,X¢2000     LDA #DEVNAM&255¢2010     STA ICBAL,X¢2020     LDA #DEVNAM/256¢2030     STA ICBAH,X¢2040     LDA #$0C    WRITE CMD¢2050     STA ICAX1,X¢2060     LDA #$00¢2070     STA ICAX2,X¢2080     JSR CIOV¢2090     RTS ¢2100 PRINTSCR¢2110     LDX #IOCB2¢2120     LDA #$0B    PUT CHARACTER¢2130     STA ICCOM,X¢2140     LDA ADTEXL¢2150     STA ICBAL,X¢2160     LDA ADTEXH¢2170     STA ICBAH,X¢2180     LDY #$00    DETERMINE LENGTH¢2190 TY  LDA (ADTEXL),Y¢2200     CMP #$7C¢2210     BEQ PRINT¢2220     INY ¢2230     JMP TY¢2240 PRINT¢2250     TYA ¢2260     STA ICBLL,X¢2270     LDA #$00¢2280     STA ICBLH,X¢2290     JSR CIOV¢2300     RTS ¢2310 DEVNAM .BYTE "E:",$9B¢2320 CLOSE¢2330     LDX #IOCB2¢2340     LDA #$0C¢2350     STA ICCOM,X¢2360     JSR CIOV¢2370     RTS ¢2380 GETCHAR¢2390     LDX #IOCB2  GET CHARACTER¢2400     LDA #$07    GET CMD¢2410     STA ICCOM,X¢2420     LDA #$00¢2430     STA ICBLH,X LENGTH OF INPUT¢2440     LDA #$02¢2450     STA ICBLL,X¢2460     LDA #GBUFH¢2470     STA ICBAH,X DATA BUFFER LOC.¢2480     LDA #GBUFL¢2490     STA ICBAL,X¢2500     JSR CIOV¢2510     RTS ¢2520 EPTYPE¢2530     LDA #TEXT&255¢2540     STA ADTEXL¢2550     LDA #TEXT/256¢2560     STA ADTEXH¢2570     JSR OPENSCR¢2580     JSR PRINTSCR¢2590     JSR GETCHAR¢2600     LDA GBUF¢2610     CMP #$31¢2620     BEQ EPROM1¢2630     CMP #$32¢2640     BEQ EPROM2¢2650     JMP EPROM3¢2660 MODE¢2670     JSR EPVAR¢2680     LDA #TEXT1&255¢2690     STA ADTEXL¢2700     LDA #TEXT1/256¢2710     STA ADTEXH¢2720     JSR PRINTSCR¢2730     JSR GETCHAR¢2740     LDA GBUF¢2750     CMP #$31¢2760     BEQ SWRD¢2770     JMP PROGRAMR¢2780 EPROM1¢2790     LDA #$33¢2800     STA $6119¢2810     JMP MODE¢2820 EPROM2¢2830     LDA #$2B¢2840     STA $6119¢2850     JMP MODE¢2860 EPROM3¢2870     LDA #$23¢2880     STA $6119¢2890     JMP MODE¢2900 SWRD¢2910     LDA #TEXT2&255¢2920     STA ADTEXL¢2930     LDA #TEXT2/256¢2940     STA ADTEXH¢2950     JSR PRINTSCR¢2960     JSR CKEY¢2970     JSR WAIT¢2980     JSR CLOSE¢2990     JMP READR¢3000 SWPROG¢3010     LDA $6119¢3020     CMP #$33¢3030     BEQ SW1¢3040     CMP #$2B¢3050     BEQ SW2¢3060     JMP SW3¢3070 SW1¢3080     LDA #TEXT3&255¢3090     STA ADTEXL¢3100     LDA #TEXT3/256¢3110     STA ADTEXH¢3120     JSR PRINTSCR¢3130     JSR CKEY¢3140     JSR WAIT¢3150     RTS ¢3160 SW2¢3170     LDA #TEXT4&255¢3180     STA ADTEXL¢3190     LDA #TEXT4/256¢3200     STA ADTEXH¢3210     JSR PRINTSCR¢3220     JSR CKEY¢3230     JSR WAIT¢3240     RTS ¢3250 SW3¢3260     LDA #TEXT5&255¢3270     STA ADTEXL¢3280     LDA #TEXT5/256¢3290     STA ADTEXH¢3300     JSR PRINTSCR¢3310     JSR CKEY¢3320     JSR WAIT¢3330     RTS ¢3340 PROGEND¢3350     LDA #TEXT2&255¢3360     STA ADTEXL¢3370     LDA #TEXT2/256¢3380     STA ADTEXH¢3390     JSR PRINTSCR¢3400     JSR CKEY¢3410     JSR CLOSE¢3420     RTS ¢3430 WAIT¢3440     LDA #TEXT7&255¢3450     STA ADTEXL¢3460     LDA #TEXT7/256¢3470     STA ADTEXH¢3480     JSR PRINTSCR¢3490     RTS ¢3500 TEXT .BYTE "(1) 2716",$9B,"(2) 2732",$9B,"(3) 2764",$9B,"SELECT A NUMBER ",$7C¢3510 TEXT1 .BYTE $9B,"(1) READ",$9B,"(2) PROGRAM",$9B,"SELECT A NUMBER ",$7C¢3520 TEXT2 .BYTE $9B,"SET ALL SWITCHES DOWN",$9B,$7C¢3530 TEXT3 .BYTE $9B,"SET SWITCH 3 UP",$9B,$7C¢3540 TEXT4 .BYTE $9B,"SET SWITCH 2 UP",$9B,$7C¢3550 TEXT5 .BYTE $9B,"SET SWITCH 1,4,5 UP",$9B,$7C¢3560 TEXT6 .BYTE $9B,"PRESS צקIJפק TO CONTINUE",$9B,$7C¢3570 TEXT7 .BYTE $9B,"ONE MOMENT PLEASE...",$9B,$7C¢