10 REM Program Spline1 20 REM Version B1.0 30 REM Author David James 40 REM BEEBUG June 1990 50 REM Program Subject to copyright 60 : 100 adr=&70:len=&76:dots=&77 110 S%=&2C00:C%=&2F00 120 FOR I%=0 TO 2 STEP 2 130 P%=C%:[ 140 OPT I% 150 .setadr LDA adr:STA asl+1 160 LDA adr+1:STA asl+2:RTS 170 : 180 .asl ASL &FFFF,X:RTS 190 : 200 .block16 LDA #0:LDX #0 210 .L1 JSR asl:ROL A 220 CPX #&06:BNE L2 230 PHA:LDA #&78:CLC 240 ADC asl+1:STA asl+1 250 LDA #&02:ADC asl+2:STA asl+2 260 PLA 270 .L2 INX:INX 280 CPX #&10:BNE L1 290 .endblock16 LDY &78 300 STA (&74),Y:INY 310 STY &78:BNE rts 320 INC &75:.rts RTS 330 : 340 .block48 LDA #0:TAX:TAY 350 .L3 JSR asl:BCC L4 360 CLC:ADC (&72),Y 370 .L4 INX:INY 380 CPY dots:BNE L3 390 JMP endblock16 400 : 410 .data 420 EQUD &030C30C0 430 EQUD &10204080 440 EQUD &01020408 450 : 460 .blockdo LDA dots:CMP #&10 470 BNE not16 480 LDA #&07:.loop16 PHA 490 JSR setadr:JSR block16 500 PLA:SEC:SBC #1 510 BPL loop16:RTS 520 .not16 530 LDA#data MOD256:STA &72 540 LDA#data DIV256:STA &73 550 LDA dots:CMP #8 560 BNE not8 570 LDA &72:CLC 580 ADC #&04:STA &72 590 .not8 LDA #7 600 .loop48 PHA:JSR setadr 610 JSR block48 620 PLA:SEC:SBC #1:BPL loop48 630 RTS 640 : 650 .main 660 LDA #&00:STA &74:STA &78 670 LDA #S% DIV 256:STA &75 680 .mainloop JSR blockdo 690 LDA #&08:CLC:ADC adr:STA adr 700 LDA #&00:ADC adr+1:STA adr+1 710 DEC len:BNE mainloop:RTS 720 ] 730 NEXT 750 A%=0:X%=&FF 760 *KEY0"LO.""BBCBAN2""|M*T.|MFOR L%=0 TO &1700 STEP 4:L%!&E00=L%!PAGE:NEXT:PAGE=&E00|MO.|MRUN|M" 770 *FX 138 0 128