REM !!! MAKE SURE IN BBC BASIC OPTIONS TO DISABLE Lower Case Keywords ( OR you will have keyword errors ) REM SET GRAPHICS MODE TO 8 USING VDU VDU 22,8 REM SET LINE THICKNESS TO 1 VDU 23,23,1| REM Turn off the text cursor _ OFF VDU 5 : REM Treat text as graphics (transparent background) PROC_color("b",0,0,0):CLG PROC_notice(100,500,"Syntax Error") WAIT 0 END DEF PROC_notice(h,v,noticestring$) LOCAL ln% ln%=LEN(noticestring$) ln%=ln%*16.2 PROC_color("f",255,255,255) REM boxfill(h,v,height,stringlength) RECTANGLE FILL h-20,v-180,500,290 PROC_color("f",200,200,200):RECTANGLE FILL h-20,v-180,500,50 PROC_color("f",150,150,150):RECTANGLE h-15,v-174,492,280 MOVE h+60,v-10:PROC_color("f",0,0,0):PRINT noticestring$ ost$="":r=0:g=0:b=0:a=0:c=0:t=0 READ x,y REPEAT READ nst$,t IF nst$="0" THEN r=255:g=255:b=255 :REM 'black (set to white) 0 0 0 IF nst$="1" THEN r=192:g=128:b=64 :REM' brown 192 128 64 IF nst$="2" THEN r=64:g=64:b=192 :REM 'dark blue 64 64 192 IF nst$="3" THEN r=128:g=128:b=128:REM' dark grey 128 128 128 IF nst$="4" THEN r=128:g=0:b=0:REM 'dark red 128 0 0 IF nst$="5" THEN r=224:g=192:b=0 :REM 'dark yellow 224 192 0 IF nst$="6" THEN r=128:g=160:b=192:REM 'flat blue 128 160 192 IF nst$="7" THEN r=32:g=192:b=64 : REM 'green 32 192 64 IF nst$="8" THEN r=166:g=202:b=240: REM'light blue 166 202 240 IF nst$="9" THEN r=192:g=192:b=192:REM 'light gray 192 192 192 IF nst$="a" THEN r=192:g=224:b=0 :REM 'light green 192 224 0 IF nst$="b" THEN r=224:g=32:b=64:REM 'light red 224 32 64 IF nst$="c" THEN r=0:g=160:b=192:REM 'medblue 0 160 192 IF nst$="d" THEN r=224:g=128:b=64 :REM 'orange 224 128 64 IF nst$="e" THEN r=224:g=160:b=192:REM 'pink 224 160 192 IF nst$="f" THEN r=160:g=64:b=192:REM 'purple 160 64 192 IF nst$="g" THEN r=192:g=220:b=192:REM 'tan 192 220 192 IF nst$="h" THEN r=255:g=255:b=255:REM 'white 255 255 255 IF nst$="i" THEN r=255:g=255:b=0:REM 'yellow 255 255 0 PROC_color("f",r,g,b) FOR u=0 TO t a=a+1: MOVE h+c,v-a:DRAW h+c,v-a:IF a>x THEN c=c+1:a=0 NEXT u UNTIL nst$="100000" MOVE h-20,v+110:PROC_color("f",0,0,0):PRINT "- Notice -" ENDPROC DATA 51,51 DATA 0,303,4,2,0,45,4,6,0,42,4,8,0,39,4,11,0,37,4,13,0,34,4,16,0,32,4,12,b,0,4,4,0,29,4,13,5,1,b,0,4 DATA 4,0,27,4,12,5,4,b,0,4,4,0,24,4,13,5,6,b,0,4,4,0,21,4,13,5,9,b,0,4,4,0,19,4,13,5,11,b,0,4,4 DATA 0,16,4,13,5,14,b,0,4,4,0,14,4,13,5,16,b,0,4,4,0,11,4,13,5,19,b,0,4,4,0,9,4,12,5,22,b,0,4,4,0 DATA 6,4,13,5,18,4,2,5,2,b,0,4,4,0,4,4,12,5,20,4,4,5,1,b,0,4,4,0,3,4,11,5,4,4,15,5,1,4,4,5,1 DATA b,0,4,4,0,3,4,8,5,6,4,17,5,0,4,4,5,1,b,0,4,4,0,3,4,6,5,8,4,17,5,0,4,4,5,1,b,0,4,4,0 DATA 3,4,6,b,1,5,6,4,17,5,0,4,4,5,1,b,0,4,4,0,3,4,8,b,2,5,4,4,15,5,1,4,4,5,1,b,0,4,4,0,3 DATA 4,11,b,1,5,20,4,4,5,1,b,0,4,4,0,3,4,13,b,2,5,18,4,2,5,2,b,0,4,4,0,6,4,13,b,1,5,22,b,0,4 DATA 4,0,9,4,12,b,2,5,19,b,0,4,4,0,11,4,13,b,1,5,17,b,0,4,4,0,14,4,12,b,1,5,15,b,0,4,4,0,16,4,13 DATA b,1,5,12,b,0,4,4,0,19,4,12,b,1,5,10,b,0,4,4,0,21,4,13,b,1,5,7,b,0,4,4,0,24,4,13,b,0,5,5,b DATA 0,4,4,0,26,4,13,b,1,5,2,b,0,4,4,0,29,4,13,b,0,5,0,b,0,4,4,0,31,4,13,b,0,4,4,0,34,4,16,0,37 DATA 4,13,0,39,4,11,0,42,4,8,0,44,4,6,0,47,4,2,100000,0 REM this is the foreground and background tool. DEF PROC_color(fb$,r,g,b) IF fb$="f" OR fb$="F" THEN COLOUR 0,r,g,b : GCOL 0 IF fb$="b" OR fb$="B" THEN COLOUR 1,r,g,b : GCOL 128+1 ENDPROC