There are a lot of occasions where Mufasa may throw exceptions.
Consider the following program:
program new; var bmp:integer; x, y:integer; begin bmp:=bitmapfromstring(200, 200, ''); x := -1; y := -1; fastsetpixel(bmp, x, y, clwhite); end.
Now, when we execute this with MML, we get this:
Error: Exception: You are accessing an invalid point, (-1,-1) at bitmap[0] at line 8
Further expanding the example:
program new;
var
bmp:integer;
x, y:integer;
begin
bmp:=bitmapfromstring(200, 200, '');
x := -1;
y := -1;
try
fastsetpixel(bmp, x, y, clwhite);
except
writeln('We failed to do a setpixel with x = ' + inttostr(x) +
', y = ' + inttostr(y));
end;
end.
Results in:
Compiled succesfully in 8 ms. We failed to do a setpixel with x = .-1, y = -1 Succesfully executed