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