this is the source for wpm door i ported to win32
program wpm;
Uses XDoor, XFileIO, xmisc, dos;
const
{$IFDEF Win32}
ostype = 'win32';
{$endif}
{$IFDEF os2}
ostype = 'OS/2';
{$endif}
{$IFDEF msdos}
ostype = 'dos';
{$endif}
{$IFDEF linux}
ostype = 'linux';
{$endif}
Var
Key : Char;
{$ifdef msdos}
sH, sM, sS, sMS, eH, eM, eS, eMS, SecondsTyped : Word;
{$endif}
{$ifdef win32}
sH,sM,sS,sMS,eH,eM,eS,eMS, secondstyped : longint;
{$endif}
{$ifdef os2}
sH,sM,sS,sMS,eH,eM,eS,eMS, secondstyped : longint;
{$endif}
Words : Integer;
Begin
doorName := '- speed finder -';
cfgName := 'WORD.CFG';
InitDoor;
cClrScr;
coutln('|15Typing speed finder |14'+ ostype +' version');
coutln('|07 press <ENTER> when you''re done.');
coutln('|08----------------------------------------------------------');
outln('');
cout('|10Press any key to begin!');
Key := inkey;
outln('');
coutln('|12Begin typing now!|15');
Words := 0;
outln('');
Gettime(sh,sm,ss,sms);
Repeat
key := inkey;
out(key);
if key = ' ' then inc(words);
Until Key = #13;
Inc(words);
Gettime(eh,em,es,ems);
secondstyped := 0;
If em > sm then secondstyped := ((60-ss)*(em-sm))+ es;
if em = sm then secondstyped := es-ss;
outln(''); outln('');
coutln('|13You wrote '+itos(words)+' words in '+itos(secondstyped)+'
seconds!');
coutln('That averages out to be '+itos(((words*60) div (secondstyped)))+'
words per minute');
outln('');
coutln('|03coded by natedogg[dem] |09win32 port |03dream
master!DoRE!demonic!nemesis');
nl;
cout('|08 ├|11press a key ');
key := inkey;
end.
|08 .|05·|13∙|15Dr|07e|08am Ma|07st|15er|13∙|05·|08.
|08 °∙|05·|13∙° |13°∙|05·|08∙°
|11 DoRE|03!|11ACiDiC|03!|11Demonic
|08[|15dreamland|09.|15darktech|09.|15org|08]
--- Mystic BBS v1.12 A36 2017/12/01 (Windows/64)
* Origin: --[!dreamland BBS dreamland.darktech.org (44:100/0)
|