home *** CD-ROM | disk | FTP | other *** search
- 0 rem transbasic kernel (sept 29/84) :
- 1 :
- 2 rem 2 statements, 0 functions
- 3 :
- 4 rem keyword characters: 8
- 5 :
- 6 rem keyword routine line ser #
- 7 rem s/else elsrtn 2514 001
- 8 rem s/exit ext 2542 002
- 9 :
- 10 rem utility: cifchr (2560/003)
- 11 :
- 12 rem kernel also includes modified
- 13 rem 'if' statement (ifrtn/2474/000)
- 14 :
- 25 if peek(773)<192 goto 29
- 26 :
- 27 _a
- 28 :
- 29 sys 700
- 31 *= $c000
- 32 ;
- 33 t2 = 2
- 34 t3 = 3
- 35 t4 = 4
- 36 t5 = 5
- 37 t6 = 6
- 38 ;
- 91 ;
- 92 jmp start
- 93 jmp ext
- 94 ;
- 95 xtra .byte 2,0 ; stmts,funcs
- 96 ;
- 97 .byte 0
- 98 ;
- 99 skw =*
- 100 .asc "els[197]exi[212]"
- 598 ;
- 599 fkw =*
- 1096 ;
- 1097 .byte 0
- 1098 ;
- 1099 cmds =*
- 1100 .word $a93a,ext-1
- 1598 ;
- 1599 fncs =*
- 2099 ;
- 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
- 2125 jsr morvec
- 2126 rts
- 2128 ;
- 2129 .pad
- 2130 tvec .word $a57c
- 2132 lvec .word $a71a
- 2134 evec .word $a7e4
- 2136 fvec .word $ae86
- 2138 ;
- 2140 nuvecs .word tok,lis,exc,fun
- 2142 ;
- 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)
- 2210 ;
- 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
- 2238 ;
- 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
- 2256 ;
- 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)
- 2286 ;
- 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
- 2310 ;
- 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
- 2330 ;
- 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
- 2348 ;
- 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
- 2378 ;
- 2380 ex5 lda $7a
- 2382 bne ex6
- 2384 dec $7b
- 2386 ex6 dec $7a
- 2388 jmp (evec)
- 2390 ;
- 2392 ex7 jmp $af08
- 2394 ;
- 2396 ex8 jsr ex9
- 2398 jmp $a7ae
- 2400 ;
- 2402 ex9 lda #>ifrtn-1
- 2404 pha
- 2406 lda #<ifrtn-1
- 2408 pha
- 2410 jmp $73
- 2412 ;
- 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)
- 2430 ;
- 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
- 2472 ;
- 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
- 2512 ;
- 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
- 2540 ;
- 2542 ext ldx #7
- 2544 ext1 lda tvec,x
- 2546 sta $304,x
- 2548 dex
- 2550 bpl ext1
- 2552 lda #$a2
- 2554 sta start
- 2555 jsr kilvec
- 2556 jmp pdown
- 2558 ;
- 2560 cifchr cmp #$5b
- 2562 bcc cic1
- 2564 clc
- 2566 bcc cic2
- 2568 cic1 cmp #$41
- 2570 cic2 rts
- 2572 ;
- 5222 pdown rts
- 5224 ;
- 9162 morvec = *
- 9178 rts
- 9182 kilvec = *
- 9198 rts
- 9200 ;
-