0100 ;SLOWLIST›0110 ;BY MIKE EGGERS AND MATT LOVELESS›0120 ;(c) 1987, ANTIC PUBLISHING›0130 .TITLE "SLOWLIST -- listing controller"›0140 ;›0150 SETVBV = $E45C ;Set VBLANK.›0160 XITVBV = $E462 ;VBLANK exit.›0170 CONSOL = $D01F ;Console buttons›0180 CASINI = $02 ;Cassette boot in0181 ; init. vector.›0190 BOOTF = $09 ;Boot flag›0200 SSFLAG = $02FF ;Screen start/›0210 ; stop flag.›0220 *= $0600›0230 SETUP›0240 LDA #SETUP&255 ;Lo byte of›0250 ; INIT addr.›0260 STA CASINI›0270 LDA #SETUP/256 ;Hi byte›0280 STA CASINI+1›0290 LDA BOOTF ;Cass. boot?›0300 ORA #$02›0310 STA BOOTF›0320 LDA #$04 ;Check [OPTION].›0330 BIT CONSOL›0340 BNE ON›0350 ;›0360 RTS ;If [OPTION] is›0370 ; pushed, don't›0380 ; set VBLANK›0390 ; vectors!›0400 ON›0410 LDX #VBI/256 ;Hi VBI vector.›0420 LDY #VBI&255 ;Lo VBI vector.›0430 LDA #7 ;Use deferred.›0440 JSR SETVBV›0450 ;›0460 RTS ›0470 ;›0480 VBI›0490 LDA #$02 ;Deferred VBLANK›0500 ; vectors here.›0510 BIT CONSOL ;Check [SELECT]›0520 BNE NOSELECT›0530 ;›0540 LDA CNTR ;[SELECT] pushed›0550 BEQ RESET ;Counter = 0?›0560 ;›0570 DEC CNTR ;No. Decrement.›0580 LDA #$01 ;Set SSFLAG.›0590 STA SSFLAG›0600 JMP XITVBV›0610 ;›0620 RESET›0630 LDA SPEED›0640 STA CNTR›0650 LDA #$00 ;Don't pause›0660 ; this VBLANK.›0670 STA SSFLAG›0680 JMP XITVBV›0690 ;›0700 NOSELECT›0710 LDA #$01 ;Check [START].›0720 AND CONSOL›0730 EOR #$01 ;Flip the›0740 ; [START] bit›0750 STA SSFLAG ; & set SSFLAG.›0760 JMP XITVBV›0770 ;›0780 CNTR›0790 .BYTE 0›0800 SPEED›0810 .BYTE 4 ;initial delay›0820 *= $02E0›0830 .WORD SETUP›0840 .END ›