' ANAKLOK ' DIM wp%(7999),bf%(8063) wijzerplaat%=V:wp%(0) logical%=V:bf%(0) physical%=XBIOS(2) ON BREAK GOSUB stop ON ERROR GOSUB fout ' ' === draw dial === CLS PRINT AT(1,1);"Just a sec....drawing some stuff" ~XBIOS(5,L:wijzerplaat%,L:-1,-1) CLIP OFFSET 320,200 DEFLINE 1,3,2,2 RBOX -175,-175,174,174 DEFFILL 1,2,4 FILL -175,0 DEFLINE 1,7,2,2 FOR i=1 TO 60 s=SIN(i*PI/30) c=COS(i*PI/30) r=145-(10 AND i MOD 5=0) LINE s*r,-c*r,s*149,-c*149 FILL s*r,-c*r NEXT i DEFTEXT 1,16,0,26 TEXT -16,-104,"12" TEXT -8,126,"6" TEXT -128,13,"9" TEXT 114,13,40,"3" DEFTEXT 1,2,0,6 TEXT -16,-60,"jjad" ' ' === read systemclock === t=XBIOS(23) h=t DIV &H800 AND &H1F m=t DIV &H20 AND &H3F s=t*2 AND &H3F offset=(h*60+m)*60+s-TIMER/200 ' ~XBIOS(5,L:logical%,L:-1,-1) DO BMOVE wijzerplaat%,logical%,32000 count=TIMER/200+offset ' === hours === DEFLINE 1,7,2,2 h=(count/21600 MOD 2)*PI LINE 0,0,SIN(h)*90,-COS(h)*90 ' === minutes === DEFLINE 1,3,2,2 m=(count/1800 MOD 2)*PI LINE 0,0,SIN(m)*115,-COS(m)*115 ' === seconds === DEFLINE &HFFFFAAAB,1 s=(count/30 MOD 2)*PI LINE 0,0,SIN(s)*135,-COS(s)*135 ' === flip screen === BMOVE logical%,physical%,32000 LOOP ' ' === clean up a little === PROCEDURE stop CLS ~XBIOS(5,L:physical%,L:-1,-1) END RETURN ' PROCEDURE fout CLS ~XBIOS(5,L:physical%,L:-1,-1) ERROR ERR RETURN