Generate a random black and white   320x240   image continuously,
showing FPS (frames per second).



A sample image
 


include c:\cxpl\codes;          \intrinsic 'code' declarations
int CpuReg,                     \address of CPU register array (from GetReg)
    FPS,                        \frames per second, the display's update rate
    Sec,                        \current second of time (from real-time clock)
    SecOld,                     \previous second of time
    X, Y;
[SetVid($101);                  \set 640x480 graphics
CpuReg:= GetReg;                \get address of array to access CPU registers
FPS:= 0;
repeat  CpuReg(0):= $0200;      \get current time in seconds from BIOS
        SoftInt($1A);           \software interrupt
        Sec:= CpuReg(3)>>8 & $FF; \register DH contains seconds
        if Sec = SecOld then    \if same as before then
                FPS:= FPS+1     \ bump FPS counter
        else    [SecOld:= Sec;  \otherwise save old seconds and
                CrLf(6);
                IntOut(6, FPS); \ display FPS counter (once per second)
                Text(6, " FPS");
                FPS:= 0;        \ reset FPS counter
                ];
        for Y:= 0, 240-1 do     \fill image with random black and white pixels
            for X:= 0, 320-1 do
                Point(X, Y, if Ran(2) then $F\white\ else 0\black\);
until KeyHit;
SetVid(3);                      \restore normal text mode
]