Subversion Repositories Kolibri OS

Rev

Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
31 halyavin 1
write_score:
2
 
3
    mov  eax,13
4
    mov  ebx,((LEN_X-BORDER_LEFT-BORDER_RIGHT)*ADOBE_SIZE+X_LOCATION*2-3)*65536+95	   ;clear box to write new score
5
    mov  ecx,20*65536+((LEN_Y-BORDER_TOP-BORDER_BOTTOM)*ADOBE_SIZE+Y_LOCATION-20)
6
    mov  edx,0x00000000
7
    int  40h
8
 
9
    mov  ebx,((LEN_X-BORDER_LEFT-BORDER_RIGHT)*ADOBE_SIZE+X_LOCATION*2)*65536+25	 ; draw info text with function 4
10
    mov  ecx,0xffff00		   ; color
11
    mov  edx,scoretext
12
    mov  esi,linestext-scoretext
13
    mov  eax,4
14
    int  0x40
15
 
16
    mov  eax,[score]
17
    call number_to_str
18
 
19
 
20
    mov  ebx,((LEN_X-BORDER_LEFT-BORDER_RIGHT)*ADOBE_SIZE+X_LOCATION*2+35)*65536+25	    ; draw info text with function 4
21
    mov  ecx,0xffff00		   ; color
22
    mov  edx,number_str
23
    mov  esi,[size_of_number_str]
24
    mov  eax,4
25
    int  0x40
26
 
27
    mov  ebx,((LEN_X-BORDER_LEFT-BORDER_RIGHT)*ADOBE_SIZE+X_LOCATION*2)*65536+35	 ; draw info text with function 4
28
    mov  ecx,0xffff00		   ; color
29
    mov  edx,linestext
30
    mov  esi,speedtext-linestext
31
    mov  eax,4
32
    int  0x40
33
 
34
    mov  eax,[lines]
35
    call number_to_str
36
 
37
 
38
    mov  ebx,((LEN_X-BORDER_LEFT-BORDER_RIGHT)*ADOBE_SIZE+X_LOCATION*2+35)*65536+35	    ; draw info text with function 4
39
    mov  ecx,0xffff00		   ; color
40
    mov  edx,number_str
41
    mov  esi,[size_of_number_str]
42
    mov  eax,4
43
    int  0x40
44
 
45
    mov  ebx,((LEN_X-BORDER_LEFT-BORDER_RIGHT)*ADOBE_SIZE+X_LOCATION*2)*65536+45	 ; draw info text with function 4
46
    mov  ecx,0xffff00		   ; color
47
    mov  edx,speedtext
48
    mov  esi,leveltext-speedtext
49
    mov  eax,4
50
    int  0x40
51
 
52
    mov  eax,[speed]
53
    call number_to_str
54
 
55
 
56
    mov  ebx,((LEN_X-BORDER_LEFT-BORDER_RIGHT)*ADOBE_SIZE+X_LOCATION*2+35)*65536+45	    ; draw info text with function 4
57
    mov  ecx,0xffff00		   ; color
58
    mov  edx,number_str
59
    mov  esi,[size_of_number_str]
60
    mov  eax,4
61
    int  0x40
62
 
63
    mov  ebx,((LEN_X-BORDER_LEFT-BORDER_RIGHT)*ADOBE_SIZE+X_LOCATION*2)*65536+55	 ; draw info text with function 4
64
    mov  ecx,0xffff00		   ; color
65
    mov  edx,leveltext
66
    mov  esi,startgame-leveltext
67
    mov  eax,4
68
    int  0x40
69
 
70
    mov  eax,[level]
71
    call number_to_str
72
 
73
 
74
    mov  ebx,((LEN_X-BORDER_LEFT-BORDER_RIGHT)*ADOBE_SIZE+X_LOCATION*2+35)*65536+55	    ; draw info text with function 4
75
    mov  ecx,0xffff00		   ; color
76
    mov  edx,number_str
77
    mov  esi,[size_of_number_str]
78
    mov  eax,4
79
    int  0x40
80
 
81
    call draw_next_block
82
 
83
ret
84
 
85
 
86
number_to_str:
87
 
88
    mov edi,end_number_str-1
89
    mov ecx,9;size_of_number_str
90
    mov ebx,10
91
    cld
92
  new_digit:
93
    xor edx,edx
94
    div ebx
95
    add dl,'0'
96
    mov [edi],dl
97
    dec edi
98
    loop new_digit
99
 
100
ret