70 ' INTERLACE DEMO 80 ' Amstrad Action Issue 46 90 ' By John Valentine 100 GOSUB 550:MODE 2 110 SYMBOL AFTER 0 120 CALL &BC06,&C0:CLS:CALL &BC06,&40:CLS 130 CALL &BD19:EVERY 1 GOSUB 140:GOTO 200 140 IF f=0 THEN OUT &BC00,5:OUT &BD00,5:CALL &BC06,&C0:f=1 ELSE OUT &BC00,5:OUT &BD00,4:CALL &BC06,&40:f=0 150 RETURN 200 FOR row=0 to 7:FOR col=0 TO 31 210 m$=CHR$(row*32+col):x=col*2+7:y=row+3 220 GOSUB 510:NEXT:NEXT 230 FOR a=1 to 25:m$=CHR$(246):x=0:GOSUB 510 240 m$=CHR$(247):x=79:GOSUB 510:NEXT 250 x=15:y=20:m$="Interlace demo - " 260 m$=m$+"Let your CPC imitate an Amiga!" 270 GOSUB 510 280 GOTO 280 500 ' TEXT ROUTINE (x,y,m$) 510 FOR n=1 TO LEN(m$) 520 CALL &8000,x,y,ASC(MID$(m$,n,1)) 530 x=x+1:IF x>79 THEN x=0:y=y+1:IF y=25 THEN y=0 540 NEXT:RETURN 550 FOR n=1 to 14:t=0:for a=1 to 8 560 READ N$:p=VAL("&"+n$) 570 POKE &8000+add,p:t=t+p:add=add+1:NEXT 580 READ tt:IF tt<>t then PRINT"ERROR IN LINE";1000+lin*10:LIST 1000- 590 lin=lin+1:NEXT 600 RETURN 1000 DATA DD,66,04,DD,6E,02,CD,1A,891 1010 DATA BC,11,00,08,19,7C,E6,3F,655 1020 DATA F6,C0,67,22,67,80,11,00,823 1030 DATA 10,19,7C,E6,3F,F6,40,67,871 1040 DATA 22,6B,80,DD,7E,00,CD,A5,986 1050 DATA BB,2B,06,00,23,7E,ED,5B,725 1060 DATA 67,80,12,23,7E,ED,5B,6B,845 1070 DATA 80,12,E5,CD,46,80,E1,04,1007 1080 DATA 78,FE,04,20,E7,C9,2A,6B,991 1090 DATA 80,11,00,08,19,7C,E6,3F,595 1100 DATA F6,40,67,22,6B,80,2A,67,827 1110 DATA 80,11,00,08,19,7C,E6,3F,595 1120 DATA F6,C0,67,22,67,80,C9,E4,1235 1130 DATA E9,00,00,E4,79,00,00,20,614