/*progress1-progress4 are just global vars
shown on the wallpaper. I use them in debugging a lot.
If you set progress1_max-progress4_max,
then a progress bar will display.
If you set progress1_t0-progress4_t0
then the elapsed time will display.
If you set progress1_tf-progress4_tf
then the estimated time will display.
*/
U0 Main1()
{
"\nWith description.\n";
PressAKey;
progress1_max=200;
StrCpy(progress1_desc,"Progress Demo"); //PROGRESS_DESC_LEN is max
while (progress1++!=progress1_max)
Sleep(20);
ProgressBarsRst;
}
Main1;
U0 Main2()
{
"\nWith description and elapsed time.\n";
PressAKey;
progress1_max=200;
progress1_t0=tS;
StrCpy(progress1_desc,"Progress Demo"); //PROGRESS_DESC_LEN is max
while (progress1++!=progress1_max)
Sleep(20);
ProgressBarsRst;
}
Main2;
U0 Main3()
{
"\nWith description, elapsed time and registry total time.\n";
PressAKey;
progress1_max=200;
progress1_t0=tS;
RegExe("DemoCompany/ProgressBars");
StrCpy(progress1_desc,"Progress Demo"); //PROGRESS_DESC_LEN is max
while (progress1++!=progress1_max)
Sleep(20);
ProgressBarsRst("DemoCompany/ProgressBars");
}
Main3;
U0 Main4()
{
"\nNo description.\n";
PressAKey;
progress1_max=200;
while (progress1++!=progress1_max)
Sleep(20);
ProgressBarsRst;
}
Main4;
"\nNow, from asm... It's handy for debugging.\n"
"Watch the progress on the wallpaper.\n";
WinBorder(ON);
PressAKey;
asm {
_PROGRESS_DEMO::
MOV RCX,12000000
@@05: MOV U64 [&progress1],RCX
CALL &Yield
LOOP @@05
MOV U64 [&progress1],RCX
RET
}
_extern _PROGRESS_DEMO U0 AsmProgressDemo();
AsmProgressDemo;