home *** CD-ROM | disk | FTP | other *** search
/ Antic Magazine 1989 January / Antic_Magazine_1989_01_Antic_Side_B.atr / reset.m65 < prev    next >
Text File  |  2023-02-26  |  2KB  |  1 lines

  1. 0100 ;SOFT RESET, SOURCE CODE¢0110 ;BY BRAD TIMMINS¢0120 ;(c)1988, ANTIC PUBLISHING¢0130     *=  $0655¢0140 ;IOCB equates¢0150 PUTREC = $09¢0160 EOL =   $9B¢0170 ICCOM = $0342¢0180 ICSTA = $0343¢0190 ICBAL = $0344¢0200 ICBAH = $0345¢0210 ICPTL = $0346¢0220 ICPTH = $0347¢0230 ICBLL = $0348¢0240 ICBLH = $0349¢0250 AUX1 =  $034A¢0260 CIOV =  $E456¢0270 ;Program Equates¢0280 DOSINI = $0C¢0290 FLAG =  $0654¢0300 CLEAR = $7D¢0310 CONSOL = $D01F¢0320 CDOWN = $1D¢0330 ;Save old RESET vectors.¢0340 START¢0350     LDA DOSINI¢0360     STA VECTOR¢0370     LDA DOSINI+1¢0380     STA VECTOR+1¢0390 ;Replace with new address.¢0400     LDA # <NEWVEC¢0410     STA DOSINI¢0420     LDA # >NEWVEC¢0430     STA DOSINI+1¢0440 ;Print "OFF" message.¢0450     LDA # <OFF¢0460     STA ICBAL¢0470     LDA # >OFF¢0480     STA ICBAH¢0490     JSR PRINT¢0500 ;Set FLAG's value to "OFF"¢0510 ;and exit.¢0520     LDA #0¢0530     STA FLAG¢0540     RTS ¢0550 ;¢0560 ;This is executed whenever¢0570 ;RESET is pressed:¢0580 ;   Has OPTION been pressed?¢0590 ;If so, change FLAG's value:¢0600 ;  0=Continue¢0610 ;  1=Print "OFF" return to BASIC¢0620 ;¢0630 NEWVEC¢0640     LDA CONSOL¢0650     CMP #3¢0660     BNE NVEC1¢0670 ;¢0680 ;Change FLAG's value.¢0690     LDA FLAG¢0700     EOR #1¢0710     STA FLAG¢0720 NVEC1¢0730     LDA FLAG¢0740     BEQ OFF1¢0750 ;¢0760 ;Display "POKE842,12:GOTO 31000"¢0770     LDA # <GOTO¢0780     STA ICBAL¢0790     LDA # >GOTO¢0800     STA ICBAH¢0810     JSR PRINT¢0820 ;Put cursor at 2,0¢0830     LDA #2¢0840     STA 84¢0850     LDA #0¢0860     STA 85¢0870 ;Put Editor in Forced Read mode¢0880 ;and return to BASIC.¢0890     LDA #13¢0900     STA AUX1¢0910     RTS ¢0920 ;¢0930 ;Program is off. Print "OFF"¢0940 ;and exit through old vectors.¢0950 OFF1¢0960     LDA # <OFF¢0970     STA ICBAL¢0980     LDA # >OFF¢0990     STA ICBAH¢1000     JSR PRINT¢1010     JMP (VECTOR)¢1020 ;¢1030 ;IOCB PRINT subroutine¢1040 PRINT¢1050     LDA #PUTREC¢1060     STA ICCOM¢1070     LDA #0¢1080     TAX ¢1090     STA ICBLL¢1100     LDA #2¢1110     STA ICBLH¢1120     JSR CIOV¢1130     RTS ¢1140 ;¢1150 VECTOR¢1160     .WORD 0,0¢1170 GOTO¢1180     .BYTE CLEAR,CDOWN,CDOWN,CDOWN,CDOWN,"POKE842,12:GOTO 31000",EOL¢1190 OFF¢1200     .BYTE CLEAR,"Soft Reset now OFF",EOL¢1210 LABEL¢1220     *=  $02E0¢1230     .WORD START¢1240     .END ¢