Subversion Repositories Kolibri OS

Rev

Rev 4867 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
4867 leency 1
DECIMAL
9587 vitalkrilo 2
 S" /sys/menuet.f" INCLUDED
4867 leency 3
 
4
: not_emit
5
	emit_proc DUP @ NOT SWAP ! ;
6
 
7
new_reg wnd_size
8
 
9
CREATE Music $3090 , \ $90 C, $30 C, 0 C,
10
 
11
: my_wnd
12
  12 ax 1 bx sysv DROP $805080D0 DUP $02AABBCC 200 50 << 200 DUP << 0
13
 	sys6 2 bx sysv 2DROP
14
  $10DDEEFF $"  " COUNT 8 DUP sys_print
15
 
16
  $6688DD 1 5 12 << 200 19 - 12 << 8 sys5 DROP ;
17
 
18
: my_wnd_resize
19
	200 dx 50 si 67 ax -1 DUP bx cx sysv DROP ;
20
 
21
: my_key
22
	2 sys1 8 RSHIFT DUP 96 = IF not_emit DROP ELSE Music DUP si 1+ C!
23
 55 DUP ax bx sysv DROP THEN ;
24
 
25
: my_btn
26
	17 sys1 8 RSHIFT ." Pressed button #" DUP . CR 1 = IF BYE THEN ;
27
 
28
CREATE handlers ' my_wnd , ' my_key , ' my_btn ,
29
 
30
VARIABLE hnd
31
 
32
: msg_loop_console ( subs -- )
33
	CR DUP hnd ! @EXECUTE  my_wnd_resize
34
 
35
	BEGIN
36
	10 sys1 ?DUP
37
	IF
38
	  1-
39
    CELLS hnd @ + @EXECUTE
40
    emit_proc @
41
    IF
42
    	WINDOW KEY 96 =
43
    	IF
44
    		not_emit hnd @ @EXECUTE  my_wnd_resize
45
    	ELSE
46
    	  EXIT
47
    	THEN
48
    THEN
49
  THEN
50
  AGAIN ;
51
 
52
: new_me ( new main loop)
53
  handlers msg_loop_console ;