> ModeDemo ? Demonstrate software and hardware display mode extensions : (*mode$="MODE ": 10: 8:>20:mode$="|" 2 mode$="|" <mode$+"8": F:: loop%=0 31 P(loop%7)=0:font Z#mode%=loop%+(loop%16)*5: flag d-flag:mode%:mode$+(mode%):demo(mode%) n : : x: !font: A%=163 175: 23,A% ;(A%8)*3,(A%8)*3,(A%8)*3,((A%2)*3.5)((A%4)*60)24 3(A%1)*24,(A%1)*24,(A%1)*24,(A%1)*24: A%: : % 1,1,1,1,1,1,1,0,1,1,0,1,1,1,1,0 % 1,1,0,1,1,0,1,0,1,0,0,1,1,0,1,0 : demo(mode%) base=(mode%7)+1 -(mode%7)=3 (mode%6)=6: 19,0,4,0,0,0 :columns=20*2^(2-((mode%7)3)):(mode%7)=6:columns=40 scolours="0204160202040208041616040416040805131605051305080904160909040908",(((mode%2)16)(mode%15))*2+1,2) )A%=135:disp%=((&FFF4)&FF0000)65536 Eclrs%=colours:mode%<96:A%=160:X%=96:clrs%=((&FFF4)&FF00)256+1 : 2colours=2 :back=128:fore=1:white=7:num$="two" "3colours=4 :back=129:fore=3:white=3:num$="four" ,3colours=5 :back=129:fore=0:white=4:num$="five" 64colours=8 :back=128:fore=7:white=7:num$="eight" @3colours=9 :back=128:fore=7:white=7:num$="nine" J1colours=13:back=130:fore=0:white=7:num$="13" T1colours=16:back=130:fore=0:white=7:num$="16" ^colmax=colours-1 hPcolmax<2 clrs%<>colours:colmax=3:back=128+clrs%-2:fore=back 131:white=7 rcolmax>13:colmax=7 |:  back: fore ""columns-2,"")"";  mode%<8:columns=80:(21); columns=20:(6); )columns>20:((7-(mode%+num$))/2); mode%=11:(9);  mode%>95:columns=80:(3); "MODE ";mode%; Hcolumns=20:(columns--1);"";(2-num$/2)columns;" cols, ";num$; Qcolumns>20:" ";2-((num$+mode%)1),"-");" ";columns;" columns and ";num$; )>columns-8:" clrs"; " colours"; .mode%<8 columns<80:(columns--1);""; ,mode%>7:columns<80:"";(-(mode%=9));  mode%>7:columns=80:" - "; %mode%=12:"Small-memory MODE 1"; 'mode%=13:"Small-mem'y MODE 2 "; &(mode%&FE)=14:(10); 0 mode%>95:columns<80:(4); :6mode%>7:mode%<>12:num$;"-colour MODE ";mode%7; D`(mode%&78)=8:mode%<11 mode%=12:" ";1-(mode%=9),"-");" ";columns;"-column MODE ";base; N2mode%>95:" - MODE &";~mode%&68;"+";mode%7; X!mode%>7:(columns--1);""; bm((mode%disp%)&F0) clrs%<>colours:""((columns-20)/2);"Dropping to MODE ";disp%;(columns--1);""; l""columns-2,"")""; v: width=columns colmax  A=0 colmax:""; width=26:(11); width=20:(4); "width=13:((columns 4)-1); "width=10:((columns 4)-4); width=6 :(3); width=5 :(7); width=3 :(1); width=2 :(5);  B=0-(colmax>8) colmax C=(A+B) colours colours=9: 0 9mode%<96: 128+(C 7): (colours-C-1) 7 128+C  !width>19:" COLOUR ";C;3; 2width<20:((width+1)-1);~C;((width+1)-1);  : back: fore *(columns--1);""; 4:""columns-2,"")""; > 128: white Hcolumns>20:*. R%">*BMPSave MODE";mode%;"/bmp";8 \\pr("Press SPACE... Press SPACE... Press SPACE...",columns/5*4-2),colmax+2*(clrs%=2)) f white p,(500)=83:"BMPSave MODE"+mode%+"/bmp" z : 4pr(A$,N): A=1 A$: A N+1:A$,A,1);::