Rev 623 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 623 | Rev 643 | ||
---|---|---|---|
Line -... | Line 1... | ||
- | 1 | { FreePascal 2.2.0 ª®¤¨à®¢ª cp866 ¥ ॠ«¨§®¢ . } |
|
- | 2 | {-$codepage cp866} |
|
1 | {$codepage cp866} |
3 | |
- | 4 | {$mode objfpc} |
|
2 | {$mode objfpc} |
5 | {$smartlink on} |
3 | {$smartlink on} |
6 | {$apptype console} |
4 | {$apptype console} |
7 | |
Line 5... | Line 8... | ||
5 | 8 | { ¤ ë© ¬®¬¥â à áᬠâਢ ¥âáï ¢ë¯®«¥¨¥ ¯à¨«®¤¥¨ï ⮫쪮 ª ª ª®á®«ì®¥, |
|
6 | { ¤ ë© ¬®¬¥â à áᬠâਢ ¥âáï ¢ë¯®«¥¨¥ ¯à¨«®¤¥¨ï ⮫쪮 ª ª ª®á®«ì®¥, |
9 | â.¥. ¤¨à¥ªâ¨¢ console ®¡ï§ ⥫ì , ¯®¢¥¤¥¨¥ ¯à®£à ¬¬ë ¯à¨ ®âáãâá⢨¨ í⮩ |
7 | â.¥. ¤¨à¥ªâ¨¢ concole ®¡ï§ ⥫ì , ¯®¢¥¤¥¨¥ ¯à®£à ¬¬ë ¯à¨ ®âáãâá⢨¨ í⮩ |
10 | ¤¨à¥ªâ¨¢ë ¯à¥¤®¯à¥¤¥«¨âì ¥«ì§ï. à â¨à®¢ ® ¥«ì§ï ¨á¯®«ì§®¢ âì äãªæ¨¨ |
8 | ¤¨à¥ªâ¨¢ë ¯à¥¤®¯à¥¤¥«¨âì ¥«ì§ï. à â¨à®¢ ® ¥«ì§ï ¨á¯®«ì§®¢ âì äãªæ¨¨ |
11 | Write, WriteLn, Read, ReadLn ®â®á¨â¥«ì® áâ ¤ à⮩ ª®á®«¨ ¢¢®¤ /¢ë¢®¤ . |
9 | Write, WriteLn, Read, ReadLn ®â®á¨â¥«ì® áâ ¤ à⮩ ª®á®«¨ ¢¢®¤ /¢ë¢®¤ . |
12 | } |
Line 10... | Line 13... | ||
10 | } |
13 | |
Line 19... | Line 22... | ||
19 | 22 | procedure DoPaint; |
|
20 | procedure DoPaint; |
23 | { 뢮¤ ᮤ¥à¦¨¬®£® ®ª ¯à¨«®¦¥¨ï } |
21 | { 뢮¤ ᮤ¥à¦¨¬®£® ®ª ¯à¨«®¦¥¨ï } |
24 | begin |
22 | begin |
25 | kos_begindraw(); |
23 | kos_begindraw(); |
26 | {®¯à¥¤¥«¥¨¥ ¯ à ¬¥â஢ ®ª } |
24 | {®¯à¥¤¥«¥¨¥ ¯ à ¬¥â஢ ®ª (0)} |
27 | kos_definewindow(200, 200, 200, 50, $23AABBCC); |
25 | kos_definewindow(200, 200, 200, 50, $23AABBCC); |
28 | {kos_definewindow ¥ ¨¬¥¥â ¯ à ¬¥âà ¤«ï ¢ë¢®¤ § £®«®¢ª , |
26 | {kos_definewindow ¥ ¨¬¥¥â ¯ à ¬¥âà ¤«ï ¢ë¢®¤ § £®«®¢ª , |
29 | ¤¥« ¥¬ íâ® ®â¤¥«ì®© äãªæ¨¥© kos_setcaption} |
27 | ¤¥« ¥¬ íâ® ®â¤¥«ì®© äãªæ¨¥©} |
30 | {®â®¡à ¦¥¨¥ § £®«®¢ª ®ª } |
28 | {kos_setcaption, ®â®¡à ¦¥¨¥ § £®«®¢ª ®ª (71.1)} |
31 | kos_setcaption(' '); |
29 | kos_setcaption(' '); |
32 | {¢ë¢®¤ á®®¡é¥¨ï} |
30 | {¢ë¢®¤ á®®¡é¥¨ï (4)} |
33 | kos_drawtext(3, 8, ' ¦¬¨â¥ «î¡ãî ª« ¢¨èã...'); |
31 | kos_drawtext(3, 8, ' ¦¬¨â¥ «î¡ãî ª« ¢¨èã...'); |
34 | kos_enddraw(); |
32 | kos_enddraw(); |
35 | end; |
Line 33... | Line 36... | ||
33 | end; |
36 | |
Line 42... | Line 45... | ||
42 | { áâà ¨¢ ¥¬ ¡ãä¥à ¤«ï ®â} |
45 | Notes[0] := $90; |
43 | Notes[0] := $90; |
46 | Notes[1] := Key shr 8; |
44 | Notes[1] := Key shr 8; |
47 | Notes[2] := $00; |
45 | Notes[2] := $00; |
48 | {¢®á¯à®¨§¢®¤¨¬} |
46 | {¢®á¯à®¨§¢®¤¨¬} |
49 | kos_speaker(@Notes); |
47 | kos_speak(@Notes); |
50 | end; |
48 | end; |
51 | |
Line 49... | Line 52... | ||
49 | 52 | ||
50 | 53 | function DoButton: Boolean; |
|
51 | function DoButton: Boolean; |
54 | { ¡à ¡®âª ᮡëâ¨ï ¦ â¨ï ª®¯ª¨ GUI } |
52 | { ¡à ¡®âª ᮡëâ¨ï ¦ â¨ï ª®¯ª¨ GUI } |
55 | var |
53 | var |
56 | Button: DWord; |
54 | Button: DWord; |
57 | begin |
55 | begin |
58 | {¯®«ãç¨âì ª®¤ ¦ ⮩ ª«¨¢¨è¨} |
56 | {¯®«ãç¨âì ª®¤ ¦ ⮩ ª«¨ë¨è¨} |
59 | Button := kos_getbutton(); |
57 | Button := kos_getbutton(); |
60 | {¥á«¨ [x], â® ¢¥àãâì «®¦ì, § ç¨â á¯à®¢®æ¨à®¢ âì § ªàë⨥ ¯à¨«®¦¥¨ï} |
58 | {¥á«¨ X, â® § ¢¥à襨¥ ¯à¨«®¦¥¨ï} |
61 | Result := Button <> 1; |
Line 59... | Line 62... | ||
59 | Result := Button = 1; |
62 | end; |
- | 63 | ||
- | 64 | ||
60 | end; |
65 | function ProcessMessage: Boolean; |
61 | 66 | { ¦¨¤ ¨¥ ¨ ®¡à ¡®âª ᮡë⨩. |
|
62 | 67 | ||
63 | function ProcessMessage: Boolean; |
68 | @return: ®§¢à é ¥â False, ¥á«¨ ¡ë«® ᮡë⨥ ª § ¢¥àè¥¨î ¯à¨«®¦¥¨ï. |
64 | { @return: ®§¢à é ¥â False, ¥á«¨ ¡ë«® ᮡë⨥ ª § ¢¥àè¥¨î ¯à¨«®¦¥¨ï. |
69 | @rtype: True ¨«¨ False } |
65 | @rtype: True ¨«¨ False } |
70 | var |
66 | var |
71 | Event: DWord; |
67 | Event: DWord; |
72 | begin |
68 | begin |
73 | Result := True; |
69 | Result := False; |
74 | {®¦¨¤ ¥¬ ᮡëâ¨ï ®â á¨á⥬ë} |
70 | {®¦¨¤ ¥¬ ᮡëâ¨ï ®â á¨á⥬ë} |
75 | Event := kos_getevent(); |
71 | Event := kos_getevent(); |
76 | case Event of |
72 | case Event of |
77 | SE_PAINT : DoPaint; {¯¥à¥à¨á®¢ª ®ª } |
73 | SE_PAINT : DoPaint; {¯¥à¥à¨á®¢ª ®ª } |
78 | SE_KEYBOARD: DoKey; {ᮡë⨥ ®â ª« ¢¨ âãàë} |
74 | SE_KEYBOARD: DoKey; {ᮡë⨥ ®â ª« ¢¨ âãàë} |
79 | SE_BUTTON : Result := DoButton; {ᮡ먥 ®â ª®¯ª¨, ¬®¦¥â ®¯à¥¤¥«¨âì |
Line 75... | Line 80... | ||
75 | SE_BUTTON : Result := DoButton; {ᮡ먥 ®â ª®¯ª¨, ¬®¦¥â ®¯à¥¤¥«¨âì |
80 | § ¢¥à襨¥ ¯à¨«®¦¥¨ï, ¥á«¨ ¢¥à¥â False} |
76 | § ¢¥à襨¥ ¯à¨«®¦¥¨ï, ¥á«¨ ¢¥à¥â True} |
81 | end; |
77 | end; |
82 | end; |
78 | end; |
83 | |
79 | 84 | ||
80 | - | ||
81 | procedure MainLoop; |
- | |
82 | { « ¢ë© 横« ¯à¨«®¦¥¨ï } |
- | |
83 | var |
85 | procedure MainLoop; |
84 | ThreadSlot: TThreadSlot; |
86 | { « ¢ë© 横« ¯à¨«®¦¥¨ï } |
85 | begin |
87 | var |
86 | {ᤥ« âì íâ® ®ª® ªâ¨¢ë¬} |
88 | ThreadSlot: TThreadSlot; |
87 | ThreadSlot := kos_getthreadslot(ThreadID); |
89 | begin |
Line 88... | Line 90... | ||
88 | kos_setactivewindow(ThreadSlot); |
90 | { áâà ¨¢ ¥¬ ᮡëâ¨ï, ª®â®àë¥ ¬ë £®â®¢ë ®¡à ¡ âë¢ âì} |
89 | { áâà ¨¢ ¥¬ ᮡëâ¨ï, ª®â®àë¥ ¬ë £®â®¢ë ®¡à ¡ âë¢ âì} |
91 | kos_maskevents(ME_PAINT or ME_KEYBOARD or ME_BUTTON); |
90 | kos_maskevents(ME_PAINT or ME_KEYBOARD or ME_BUTTON); |
92 | {®¡à ¡®âª ᮡë⨩} |
91 | {£« ¢ë© 横«} |
93 | while ProcessMessage do; |