CODE
{$appl Thir}
program Thireus(cmd);
{$i PalmAPI2.pas}
{$i PPlib.pas}
procedure write(S: string;X,Y:integer);
var
N: integer;
begin
N:=length(S);
WinDrawChars(S,N,X,Y);
end;
Procedure DrawCell(u,v,X,Y: Integer);
Var
Rec: RectangleType;
begin
With Rec do begin
topLeft.X := X;
topLeft.y := Y;
extent.x := u;
extent.y := v;
WinDrawRectangle(Rec,0);
end;
end;
var
Cmd: UInt16;
Wrt,oldScale: integer;
procedure go;
label
1;
var
i,x,y: integer;
x_n,x_nn,y_n,a_0,b_0: real;
a: Boolean;
w,wt,dep1,dep2: UInt32;
mode: WinScreenModeOperation;
begin
a:=true;
w:=320;
wt:=480;
dep1:=8;
dep2:=16;
mode:=winScreenModeSet;
WinScreenMode(mode,w,wt,dep1,a);
WinScreenMode(mode,w,wt,dep2,a);
WinSetBackColor(255);
WinSetForeColor(255);
WinSetTextColor(0);
WinPushDrawState;
oldScale := WinSetCoordinateSystem(0);
for x:=0 to 320 do begin
b_0 := (x-160)/150;
for y:=0 to 480 do begin
a_0 := -(y-240+100)/150;
i:=0;
x_n := 0;
y_n := 0;
while i<100 do begin
x_nn := x_n;
x_n := x_n*x_n - y_n*y_n + a_0;
y_n := 2*x_nn*y_n + b_0;
if (x_n*x_n + y_n*y_n) > 4 then begin
WinSetForeColor(100-i);
DrawCell(1,1,x,y);
i:=100;
end;
i:=i+1;
end;
end;
write('Currently running on column '+intToString(x)+' ',0,0);
if KeyCurrentState<>0 then begin
goto 1;
end;
end;
// WinDrawLine(0,0,160,225);
1:
WinPopDrawState;
end;
begin
go;
while KeyCurrentState=0 do;
// if cmd=sysAppLaunchCmdNormalLaunch then begin
// Wrt:=SysTaskDelay(10*SysTicksPerSecond);
// end;
end.
program Thireus(cmd);
{$i PalmAPI2.pas}
{$i PPlib.pas}
procedure write(S: string;X,Y:integer);
var
N: integer;
begin
N:=length(S);
WinDrawChars(S,N,X,Y);
end;
Procedure DrawCell(u,v,X,Y: Integer);
Var
Rec: RectangleType;
begin
With Rec do begin
topLeft.X := X;
topLeft.y := Y;
extent.x := u;
extent.y := v;
WinDrawRectangle(Rec,0);
end;
end;
var
Cmd: UInt16;
Wrt,oldScale: integer;
procedure go;
label
1;
var
i,x,y: integer;
x_n,x_nn,y_n,a_0,b_0: real;
a: Boolean;
w,wt,dep1,dep2: UInt32;
mode: WinScreenModeOperation;
begin
a:=true;
w:=320;
wt:=480;
dep1:=8;
dep2:=16;
mode:=winScreenModeSet;
WinScreenMode(mode,w,wt,dep1,a);
WinScreenMode(mode,w,wt,dep2,a);
WinSetBackColor(255);
WinSetForeColor(255);
WinSetTextColor(0);
WinPushDrawState;
oldScale := WinSetCoordinateSystem(0);
for x:=0 to 320 do begin
b_0 := (x-160)/150;
for y:=0 to 480 do begin
a_0 := -(y-240+100)/150;
i:=0;
x_n := 0;
y_n := 0;
while i<100 do begin
x_nn := x_n;
x_n := x_n*x_n - y_n*y_n + a_0;
y_n := 2*x_nn*y_n + b_0;
if (x_n*x_n + y_n*y_n) > 4 then begin
WinSetForeColor(100-i);
DrawCell(1,1,x,y);
i:=100;
end;
i:=i+1;
end;
end;
write('Currently running on column '+intToString(x)+' ',0,0);
if KeyCurrentState<>0 then begin
goto 1;
end;
end;
// WinDrawLine(0,0,160,225);
1:
WinPopDrawState;
end;
begin
go;
while KeyCurrentState=0 do;
// if cmd=sysAppLaunchCmdNormalLaunch then begin
// Wrt:=SysTaskDelay(10*SysTicksPerSecond);
// end;
end.
Donc les corrections que je souhaîte apporter dans un premier temps, est-ce que vous pouvez m'aider?
(1) Passer en mode hires+ sans que l'écran ne tombe en 8bits... Pour le moment je n'ai trouvé que cette méthode
(2) Cacher la barre de statut
(3) Des couleurs en 16Bits
Merci si vous pouvez m'apporter un peu d'aide