forked from KolibriOS/kolibrios
RTL for FP 2.2.0
git-svn-id: svn://kolibrios.org@643 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
@@ -1,10 +1,13 @@
|
||||
{$codepage cp866}
|
||||
|
||||
{ ‚ FreePascal 2.2.0 ª®¤¨à®¢ª cp866 ¥ ॠ«¨§®¢ . }
|
||||
{-$codepage cp866}
|
||||
|
||||
{$mode objfpc}
|
||||
{$smartlink on}
|
||||
{$apptype console}
|
||||
|
||||
{ <20> ¤ ë© ¬®¬¥â à áᬠâਢ ¥âáï ¢ë¯®«¥¨¥ ¯à¨«®¤¥¨ï ⮫쪮 ª ª ª®á®«ì®¥,
|
||||
â.¥. ¤¨à¥ªâ¨¢ concole ®¡ï§ ⥫ì , ¯®¢¥¤¥¨¥ ¯à®£à ¬¬ë ¯à¨ ®âáãâá⢨¨ í⮩
|
||||
â.¥. ¤¨à¥ªâ¨¢ console ®¡ï§ ⥫ì , ¯®¢¥¤¥¨¥ ¯à®£à ¬¬ë ¯à¨ ®âáãâá⢨¨ í⮩
|
||||
¤¨à¥ªâ¨¢ë ¯à¥¤®¯à¥¤¥«¨âì ¥«ì§ï. ƒ à â¨à®¢ ® ¥«ì§ï ¨á¯®«ì§®¢ âì äãªæ¨¨
|
||||
Write, WriteLn, Read, ReadLn ®â®á¨â¥«ì® áâ ¤ à⮩ ª®á®«¨ ¢¢®¤ /¢ë¢®¤ .
|
||||
}
|
||||
@@ -21,13 +24,13 @@ procedure DoPaint;
|
||||
{ ‚뢮¤ ᮤ¥à¦¨¬®£® ®ª ¯à¨«®¦¥¨ï }
|
||||
begin
|
||||
kos_begindraw();
|
||||
{®¯à¥¤¥«¥¨¥ ¯ à ¬¥â஢ ®ª (0)}
|
||||
{®¯à¥¤¥«¥¨¥ ¯ à ¬¥â஢ ®ª }
|
||||
kos_definewindow(200, 200, 200, 50, $23AABBCC);
|
||||
{kos_definewindow ¥ ¨¬¥¥â ¯ à ¬¥âà ¤«ï ¢ë¢®¤ § £®«®¢ª ,
|
||||
¤¥« ¥¬ íâ® ®â¤¥«ì®© äãªæ¨¥©}
|
||||
{kos_setcaption, ®â®¡à ¦¥¨¥ § £®«®¢ª ®ª (71.1)}
|
||||
¤¥« ¥¬ íâ® ®â¤¥«ì®© äãªæ¨¥© kos_setcaption}
|
||||
{®â®¡à ¦¥¨¥ § £®«®¢ª ®ª }
|
||||
kos_setcaption('<27><>ˆŒ…<C592> <20><>Žƒ<C5BD>€ŒŒ›');
|
||||
{¢ë¢®¤ á®®¡é¥¨ï (4)}
|
||||
{¢ë¢®¤ á®®¡é¥¨ï}
|
||||
kos_drawtext(3, 8, '<27> ¦¬¨â¥ «î¡ãî ª« ¢¨èã...');
|
||||
kos_enddraw();
|
||||
end;
|
||||
@@ -44,7 +47,7 @@ begin
|
||||
Notes[1] := Key shr 8;
|
||||
Notes[2] := $00;
|
||||
{¢®á¯à®¨§¢®¤¨¬}
|
||||
kos_speak(@Notes);
|
||||
kos_speaker(@Notes);
|
||||
end;
|
||||
|
||||
|
||||
@@ -53,27 +56,29 @@ function DoButton: Boolean;
|
||||
var
|
||||
Button: DWord;
|
||||
begin
|
||||
{¯®«ãç¨âì ª®¤ ¦ ⮩ ª«¨ë¨è¨}
|
||||
{¯®«ãç¨âì ª®¤ ¦ ⮩ ª«¨¢¨è¨}
|
||||
Button := kos_getbutton();
|
||||
{¥á«¨ X, â® § ¢¥à襨¥ ¯à¨«®¦¥¨ï}
|
||||
Result := Button = 1;
|
||||
{¥á«¨ [x], â® ¢¥àãâì «®¦ì, § ç¨â á¯à®¢®æ¨à®¢ âì § ªàë⨥ ¯à¨«®¦¥¨ï}
|
||||
Result := Button <> 1;
|
||||
end;
|
||||
|
||||
|
||||
function ProcessMessage: Boolean;
|
||||
{ @return: ‚®§¢à é ¥â False, ¥á«¨ ¡ë«® ᮡë⨥ ª § ¢¥àè¥¨î ¯à¨«®¦¥¨ï.
|
||||
{ ަ¨¤ ¨¥ ¨ ®¡à ¡®âª ᮡë⨩.
|
||||
|
||||
@return: ‚®§¢à é ¥â False, ¥á«¨ ¡ë«® ᮡë⨥ ª § ¢¥àè¥¨î ¯à¨«®¦¥¨ï.
|
||||
@rtype: True ¨«¨ False }
|
||||
var
|
||||
Event: DWord;
|
||||
begin
|
||||
Result := False;
|
||||
Result := True;
|
||||
{®¦¨¤ ¥¬ ᮡëâ¨ï ®â á¨á⥬ë}
|
||||
Event := kos_getevent();
|
||||
case Event of
|
||||
SE_PAINT : DoPaint; {¯¥à¥à¨á®¢ª ®ª }
|
||||
SE_KEYBOARD: DoKey; {ᮡë⨥ ®â ª« ¢¨ âãàë}
|
||||
SE_BUTTON : Result := DoButton; {ᮡ먥 ®â ª®¯ª¨, ¬®¦¥â ®¯à¥¤¥«¨âì
|
||||
§ ¢¥à襨¥ ¯à¨«®¦¥¨ï, ¥á«¨ ¢¥à¥â True}
|
||||
§ ¢¥à襨¥ ¯à¨«®¦¥¨ï, ¥á«¨ ¢¥à¥â False}
|
||||
end;
|
||||
end;
|
||||
|
||||
@@ -83,17 +88,14 @@ procedure MainLoop;
|
||||
var
|
||||
ThreadSlot: TThreadSlot;
|
||||
begin
|
||||
{ᤥ« âì íâ® ®ª® ªâ¨¢ë¬}
|
||||
ThreadSlot := kos_getthreadslot(ThreadID);
|
||||
kos_setactivewindow(ThreadSlot);
|
||||
{ áâà ¨¢ ¥¬ ᮡëâ¨ï, ª®â®àë¥ ¬ë £®â®¢ë ®¡à ¡ âë¢ âì}
|
||||
kos_maskevents(ME_PAINT or ME_KEYBOARD or ME_BUTTON);
|
||||
{£« ¢ë© 横«}
|
||||
while not ProcessMessage do;
|
||||
{®¡à ¡®âª ᮡë⨩}
|
||||
while ProcessMessage do;
|
||||
end;
|
||||
|
||||
|
||||
begin
|
||||
WriteLn('Look for a new window, I''m just a konsole, hi mike ;-)');
|
||||
WriteLn('Look for a new window, I''m just a konsole ;-)');
|
||||
MainLoop;
|
||||
end.
|
||||
|
||||
Reference in New Issue
Block a user