home *** CD-ROM | disk | FTP | other *** search
- 0 REM SCREEN THINGS (AUG 25/84)
- 1 :
- 2 REM 5 STATEMENTS, 0 FUNCTIONS
- 3 :
- 4 REM KEYWORD CHARACTERS:22
- 5 :
- 6 REM KEYWORD ROUTINE LINE SER #
- 7 REM S/GROUND GRD 2740 013
- 8 REM S/FRAME FRAM 2748 014
- 9 REM S/TEXT TEX 2756 015
- 10 REM S/CRAM CFILL 2768 016
- 11 REM S/CLS CLEA 2790 017
- 12 :
- 13 REM ==========================
- 14 :
- 25 IF PEEK(773)<192 GOTO29:REM TEST IF TRANSBASIC ALREADY ENABLED
- 26 :
- 27 _A: REM 'EXIT' STATEMENT TOKEN
- 28 :
- 29 SYS700
- 30 .OPT OO
- 31 *= $C000
- 33 T2 = 2
- 34 T3 = 3
- 35 T4 = 4
- 36 T5 = 5
- 37 T6 = 6
- 92 JMP START
- 93 JMP EXT
- 95 XTRA .BYTE 7,0
- 97 .BYTE 0
- 99 SKW = *
- 100 .ASC "ELS[197]EXI[212]"
- 104 .ASC "GROUN[196]FRAM[197]TEX[212]"
- 105 .ASC "CRA[205]CL[211]"
- 599 FKW =*
- 1097 .BYTE 0
- 1099 CMDS = *
- 1100 .WORD $A93A,EXT-1
- 1104 .WORD GRD-1,FRAM-1,TEX-1
- 1105 .WORD CFILL-1,CLEA-1
- 1599 FNCS = *
- 2100 START LDX #7
- 2102 STT1 LDA $304,X
- 2104 STA TVEC,X
- 2106 LDA NUVECS,X
- 2108 STA $304,X
- 2110 DEX
- 2112 BPL STT1
- 2114 LDA XTRA
- 2116 CLC
- 2118 ADC XTRA+1
- 2120 STA XTRA+2
- 2122 LDA #$60
- 2124 STA START
- 2126 RTS
- 2130 TVEC .WORD $A57C
- 2132 LVEC .WORD $A71A
- 2134 EVEC .WORD $A7E4
- 2136 FVEC .WORD $AE86
- 2140 NUVECS .WORD TOK,LIS,EXC,FUN
- 2144 TOK LDX #0
- 2146 LDY #0
- 2148 TK1 LDA $200,X
- 2150 CMP #$22
- 2152 BEQ TK9
- 2154 JSR CIFCHR
- 2156 BCC TK4
- 2158 STY $71
- 2160 STX T3
- 2162 LDY #0
- 2164 STY $0B
- 2166 DEY
- 2168 DEX
- 2170 TK2 INY
- 2172 INX
- 2174 TK3 LDA $200,X
- 2176 SEC
- 2178 SBC SKW,Y
- 2180 BEQ TK2
- 2182 CMP #$80
- 2184 BNE TK5
- 2186 LDA #$5F
- 2188 LDY $71
- 2190 STA $200,Y
- 2192 INY
- 2194 LDA $0B
- 2196 ADC #$3F
- 2198 TK4 INX
- 2200 STA $200,Y
- 2202 INY
- 2204 LDA $200,Y
- 2206 BNE TK1
- 2208 JMP (TVEC)
- 2212 TK5 LDX T3
- 2214 TK6 INC $0B
- 2216 LDA $0B
- 2218 CMP #$1E
- 2220 BEQ TK6
- 2222 TK7 INY
- 2224 LDA SKW-1,Y
- 2226 BPL TK7
- 2228 LDA SKW,Y
- 2230 BNE TK3
- 2232 LDY $71
- 2234 LDA $200,X
- 2236 BPL TK4
- 2240 TK8 LDA $200,X
- 2242 BEQ TK4
- 2244 CMP #$22
- 2246 BEQ TK4
- 2248 TK9 STA $200,Y
- 2250 INY
- 2252 INX
- 2254 BNE TK8
- 2258 LIS CMP #$5F
- 2260 BNE L2
- 2262 INY
- 2264 LDA ($5F),Y
- 2266 SBC #$40
- 2268 CMP #$1E
- 2270 BCC L1
- 2272 SBC #1
- 2274 L1 CMP XTRA+2
- 2276 BCC L3
- 2278 DEY
- 2280 LDA ($5F),Y
- 2282 L2 TAX
- 2284 JMP (LVEC)
- 2288 L3 STY T3
- 2290 LDY #0
- 2292 TAX
- 2294 BEQ L5
- 2296 L4 LDA SKW,Y
- 2298 PHP
- 2300 INY
- 2302 PLP
- 2304 BPL L4
- 2306 DEX
- 2308 BNE L4
- 2312 L5 LDA SKW,Y
- 2314 PHP
- 2316 AND #$7F
- 2318 JSR $AB47
- 2320 INY
- 2322 PLP
- 2324 BPL L5
- 2326 LDY T3
- 2328 L6 JMP $A700
- 2332 EXC JSR $73
- 2334 EX1 CMP #$8B
- 2336 BEQ EX8
- 2338 CMP #$5F
- 2340 BNE EX5
- 2342 JSR $73
- 2344 JSR EX2
- 2346 JMP $A7AE
- 2350 EX2 SEC
- 2352 SBC #$40
- 2354 CMP #$1E
- 2356 BCC EX3
- 2358 SBC #1
- 2360 EX3 CMP XTRA
- 2362 BCS EX7
- 2364 ASL
- 2366 TAY
- 2368 LDA CMDS+1,Y
- 2370 PHA
- 2372 LDA CMDS,Y
- 2374 PHA
- 2376 JMP $73
- 2380 EX5 LDA $7A
- 2382 BNE EX6
- 2384 DEC $7B
- 2386 EX6 DEC $7A
- 2388 JMP (EVEC)
- 2392 EX7 JMP $AF08
- 2396 EX8 JSR EX9
- 2398 JMP $A7AE
- 2402 EX9 LDA #>IFRTN-1
- 2404 PHA
- 2406 LDA #<IFRTN-1
- 2408 PHA
- 2410 JMP $73
- 2414 FUN JSR $73
- 2416 CMP #$5F
- 2418 BEQ FU2
- 2420 LDA $7A
- 2422 BNE FU1
- 2424 DEC $7B
- 2426 FU1 DEC $7A
- 2428 JMP (FVEC)
- 2432 FU2 LDA #0
- 2434 STA $0D
- 2436 JSR $73
- 2438 SEC
- 2440 SBC #$40
- 2442 CMP #$1E
- 2444 BCC FU3
- 2446 SBC #1
- 2448 FU3 SEC
- 2450 SBC XTRA
- 2452 BCC EX7
- 2454 CMP XTRA+1
- 2456 BCS EX7
- 2458 ASL
- 2460 TAY
- 2462 LDA FNCS+1,Y
- 2464 PHA
- 2466 LDA FNCS,Y
- 2468 PHA
- 2470 JMP $73
- 2474 IFRTN JSR $AD9E
- 2476 JSR $79
- 2478 CMP #$89
- 2480 BEQ IF1
- 2482 LDA #$A7
- 2484 JSR $AEFF
- 2486 IF1 JSR $79
- 2488 LDX $61
- 2490 BEQ ELSRTN
- 2492 BCS IF2
- 2494 JMP $A8A0
- 2496 IF2 PLA
- 2498 PLA
- 2500 JSR $79
- 2502 JMP EX1
- 2514 ELSRTN JSR $A8F8
- 2516 JSR $79
- 2518 CMP #0
- 2520 BNE ELS1
- 2522 RTS
- 2524 ELS1 JSR $73
- 2526 CMP #$5F
- 2528 BNE ELSRTN
- 2530 JSR $73
- 2532 CMP #$40
- 2534 BNE ELSRTN
- 2536 JSR $73
- 2538 JMP IF2
- 2542 EXT LDX #7
- 2544 EXT1 LDA TVEC,X
- 2546 STA $304,X
- 2548 DEX
- 2550 BPL EXT1
- 2552 LDA #$A2
- 2554 STA START
- 2556 JMP PDOWN
- 2560 CIFCHR CMP #$5B
- 2562 BCC CIC1
- 2564 CLC
- 2566 BCC CIC2
- 2568 CIC1 CMP #$41
- 2570 CIC2 RTS
- 2740 GRD JSR $B79E ;GET BYTE IN .X
- 2742 STX $D021 ;PUT IN BACKGROUND
- 2744 RTS ;COLOUR REGISTER
- 2746 ;
- 2748 FRAM JSR $B79E ;GET BYTE IN .X
- 2750 STX $D020 ;BUT IN BORDER
- 2752 RTS
- 2754 ;
- 2756 TEX JSR $B79E ;GET BYTE IN .X
- 2758 TXA
- 2760 AND #$0F ;PUT LOW BYTE IN
- 2762 STA $286 ;TEXT COLOUR REGISTER
- 2764 RTS
- 2766 ;
- 2768 CFILL JSR $B79E ;GET BYTE IN .X
- 2770 TXA
- 2772 LDY #0
- 2774 CF1 STA $D800,Y ;FILL COLOUR MEMORY
- 2776 STA $D900,Y
- 2778 STA $DA00,Y
- 2780 STA $DB00,Y
- 2782 INY
- 2784 BNE CF1
- 2786 RTS
- 2788 ;
- 2790 CLEA BNE CLE1 ;IF NO PARAMETERS
- 2792 JMP $E544 ;JUST CLEAR SCREEN
- 2794 CLE1 JSR $B79E ;GET A BYTE
- 2796 STX $14 ;CHECK RANGE
- 2798 CPX #$19
- 2800 BCS CLE5
- 2802 JSR $79 ;BRANCH IF NO
- 2804 BEQ CLE3 ;2ND PARAMETER
- 2806 JSR $AEFD ;CHECK FOR COMMA
- 2808 JSR $B79E ;GET SECOND PARAMETER
- 2810 CLE2 CPX $14 ;EXIT IF LESS
- 2812 BCC CLE4 ;THAN FIRST ONE
- 2814 CPX #$19 ;CHECK RANGE
- 2816 BCS CLE5
- 2818 .BYTE $2C
- 2820 CLE3 LDX #$18 ;DEFAULT 2ND PARAM
- 2822 JSR $E9FF
- 2824 DEX
- 2826 BPL CLE2
- 2828 CLE4 JMP $E56C ;RESTORE CURSOR
- 2830 CLE5 JMP $B248 ;ILLEGAL QUANTITY
- 5222 PDOWN RTS
-