Subversion Repositories Kolibri OS

Rev

Rev 1795 | Rev 2291 | Go to most recent revision | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1795 Rev 2290
1
;
1
;
2
;   Compile with flat assembler
2
;   Compile with flat assembler
3
;   à®£à ¬¬ª  ¯®§¢®«ïîé ï ¯à®¨£à뢠âì ¯«¥©«¨áâ
3
;   à®£à ¬¬ª  ¯®§¢®«ïîé ï ¯à®¨£à뢠âì ¯«¥©«¨áâ
4
;    §à ¡®â «:   „¥¤Žª  :)
4
;    §à ¡®â «:   „¥¤Žª  :)
5
 
5
 
6
use32
6
use32
7
 
7
 
8
    org    0x0
8
    org    0x0
9
 
9
 
10
	    db	   'MENUET01'	    ; 8 byte id
10
	    db	   'MENUET01'	    ; 8 byte id
11
	    dd	   0x01 	    ; header version
11
	    dd	   0x01 	    ; header version
12
	    dd	   START	    ; start of code
12
	    dd	   START	    ; start of code
13
	    dd	   I_END	    ; size of image
13
	    dd	   I_END	    ; size of image
14
	    dd	   0x25000	     ; memory for app
14
	    dd	   0x25000	     ; memory for app
15
	    dd	   0x20000	     ; esp
15
	    dd	   0x20000	     ; esp
16
	    dd	   playlist,  0x0
16
	    dd	   playlist,  0x0
17
 
17
 
18
include '../../../macros.inc'
18
include '../../../macros.inc'
19
 
19
 
20
START:			   ; start of execution
20
START:			   ; start of execution
21
or   [trig_sys],40h
21
cmp  [playlist],0x00000000
-
 
22
jne  dprod
-
 
23
mcall  -1
-
 
24
dprod:
-
 
25
or   [trig_sys],40h
22
call scandr
26
call scandr
23
jmp  mmm.seach
27
jmp  mmm.seach
24
still:
28
still:
25
    not   [trig_sys]
29
    not   [trig_sys]
26
    or	 [trig_sys],400h
30
    or	 [trig_sys],400h
27
    not   [trig_sys]
31
    not   [trig_sys]
28
    or	 [trig_sys],200h
32
    or	 [trig_sys],200h
29
    call enproc
33
    call enproc
30
    call delproc
34
    call delproc
31
    mov  eax,23 		 ; wait here for event
35
    mov  eax,23 		 ; wait here for event
32
    mov  ebx,20
36
    mov  ebx,20
33
    mcall
37
    mcall
34
    cmp  eax,1			; redraw request ?
38
    cmp  eax,1			; redraw request ?
35
    je	 red
39
    je	 red
36
    cmp  eax,3			; button in buffer ?
40
    cmp  eax,3			; button in buffer ?
37
    je	button
41
    je	button
38
    test [trig_sys],200h
42
    test [trig_sys],200h
39
    jz	 next_song
43
    jz	 next_song
40
    jmp  still
44
    jmp  still
41
next_song:
45
next_song:
42
    add  [poz_butt],1
46
    add  [poz_butt],1
43
    movzx eax,[poz_song]
47
    movzx eax,[poz_song]
44
    add  eax,1
48
    add  eax,1
45
    mov  [poz_song],al
49
    mov  [poz_song],al
46
    mov  dx,255
50
    mov  dx,255
47
    mul  dx
51
    mul  dx
48
    mov  [song_poz], eax
52
    mov  [song_poz], eax
49
    movzx eax,[poz_song]
53
    movzx eax,[poz_song]
50
    sub  eax,1
54
    sub  eax,1
51
    cmp  [song_count],eax
55
    cmp  [song_count],eax
52
    ja	 .dgo
56
    ja	 .dgo
53
    mov  [poz_song],1
57
    mov  [poz_song],1
54
    mov  [song_poz],255
58
    mov  [song_poz],255
55
    mov  [poz_butt],6
59
    mov  [poz_butt],6
56
.dgo:
60
.dgo:
57
    call  load_song
61
    call  load_song
58
    call procskan
62
    call procskan
59
    call start
63
    call start
60
    or	 [trig_sys],200h
64
    or	 [trig_sys],200h
61
    call draw_window
65
    call draw_window
62
    jmp  still
66
    jmp  still
63
red:
67
red:
64
    call draw_window
68
    call draw_window
65
    jmp  still
69
    jmp  still
66
button: 		      ; button
70
button: 		      ; button
67
    mov   eax,17
71
    mov   eax,17
68
    mcall
72
    mcall
69
    cmp ah,1
73
    cmp ah,1
70
    je	close
74
    je	close
71
    cmp ah,2
75
    cmp ah,2
72
    je	mmm
76
    je	mmm
73
    cmp ah,3
77
    cmp ah,3
74
    je	mma
78
    je	mma
75
    cmp ah,4
79
    cmp ah,4
76
    je	mmd
80
    je	mmd
77
    cmp ah,5
81
    cmp ah,5
78
    je	mmf
82
    je	mmf
79
    cmp ah,38
83
    cmp ah,38
80
    jb	mma
84
    jb	mma
81
    ret
85
    ret
82
close:
86
close:
83
    mov  eax,-1
87
    mov  eax,-1
84
    mcall
88
    mcall
85
mma:
89
mma:
86
    mov [poz_butt],ah
90
    mov [poz_butt],ah
87
    mov [poz_song],ah
91
    mov [poz_song],ah
88
    sub [poz_song],5
92
    sub [poz_song],5
89
    movzx eax,[poz_song]
93
    movzx eax,[poz_song]
90
    add  eax,[sme]
94
    add  eax,[sme]
91
    mov  [poz_song],al
95
    mov  [poz_song],al
92
    mov  dx,255
96
    mov  dx,255
93
    mul  dx
97
    mul  dx
94
    mov  [song_poz], eax
98
    mov  [song_poz], eax
95
    call  load_song
99
    call  load_song
96
    call procskan
100
    call procskan
97
    call start
101
    call start
98
    or	 [trig_sys],200h
102
    or	 [trig_sys],200h
99
    call draw_window
103
    call draw_window
100
    jmp still
104
    jmp still
101
mmw:
105
mmw:
102
    mov  ebx,file_info2
106
    mov  ebx,file_info2
103
    mov  ecx,[razm_str]
107
    mov  ecx,[razm_str]
104
    add  dword [ebx+4],ecx
108
    add  dword [ebx+4],ecx
105
    or	 [trig_sys],40h
109
    or	 [trig_sys],40h
106
    jmp  mmm.seach
110
    jmp  mmm.seach
107
    ret
111
    ret
108
mmm:
112
mmm:
109
.seach:
113
.seach:
110
    call getstring
114
    call getstring
111
    call get_drive
115
    call get_drive
112
    call put_db
116
    call put_db
113
    call draw_window
117
    call draw_window
114
    test [trig_sys],04h
118
    test [trig_sys],04h
115
    jz	 mmw
119
    jz	 mmw
116
    jmp  still
120
    jmp  still
117
mmd:
121
mmd:
118
    cmp  [poz_db3],510
122
    cmp  [poz_db3],510
119
    jb	 .emd
123
    jb	 .emd
120
    sub  [poz_db3],255
124
    sub  [poz_db3],255
121
    add  [poz_butt],1
125
    add  [poz_butt],1
122
    sub  [sme],1
126
    sub  [sme],1
123
.emd:
127
.emd:
124
    call draw_window
128
    call draw_window
125
    jmp  still
129
    jmp  still
126
mmf:
130
mmf:
127
    add  [poz_db3],255
131
    add  [poz_db3],255
128
    sub  [poz_butt],1
132
    sub  [poz_butt],1
129
    add  [sme],1
133
    add  [sme],1
130
    call draw_window
134
    call draw_window
131
    jmp  still
135
    jmp  still
132
procskan:
136
procskan:
133
    mov  [num_proc],255
137
    mov  [num_proc],255
134
qqqqq:
138
qqqqq:
135
    mov  eax,9
139
    mov  eax,9
136
    mov  ebx,pib
140
    mov  ebx,pib
137
    mov  ecx, [num_proc]
141
    mov  ecx, [num_proc]
138
    mcall
142
    mcall
139
    cld
143
    cld
140
    lea si,[pib.process_name]
144
    lea si,[pib.process_name]
141
    lea di,[minus]
145
    lea di,[minus]
142
    mov cx,7
146
    mov cx,7
143
    rep cmps byte [si],[di]
147
    rep cmps byte [si],[di]
144
    jcxz mat
148
    jcxz mat
145
    sub  [num_proc],1
149
    sub  [num_proc],1
146
    cmp  [num_proc],1
150
    cmp  [num_proc],1
147
    jne  qqqqq
151
    jne  qqqqq
148
    ret
152
    ret
149
mat:
153
mat:
150
    mov eax,18
154
    mov eax,18
151
    mov ebx,2
155
    mov ebx,2
152
    mov ecx,[num_proc]
156
    mov ecx,[num_proc]
153
    mcall
157
    mcall
154
    jmp  procskan
158
    jmp  procskan
155
scandr:
159
scandr:
156
    mov  eax,18
160
    mov  eax,18
157
    mov  ebx,11
161
    mov  ebx,11
158
    mov  ecx,1
162
    mov  ecx,1
159
    mov  edx,scan_rez
163
    mov  edx,scan_rez
160
    mcall
164
    mcall
161
    ret
165
    ret
162
mountpl:
166
mountpl:
163
    mov  cx,255
167
    mov  cx,255
164
    cld
168
    cld
165
    lea  di,[fl]
169
    lea  di,[fl]
166
    mov  al,00h
170
    mov  al,00h
167
    repne stos byte [di]
171
    repne stos byte [di]
168
    cld
172
    cld
169
    mov  cx,6
173
    mov  cx,6
170
    lea  si,[play_list]
174
    lea  si,[play_list]
171
    lea  di,[fl]
175
    lea  di,[fl]
172
    rep movs byte [di],[si]
176
    rep movs byte [di],[si]
173
    mov  cx,0
177
    mov  cx,0
174
    ret
178
    ret
175
get_drive:
179
get_drive:
176
    mov  al,byte[scan_rez+1]
180
    mov  al,byte[scan_rez+1]
177
    mov  [my_draw],al
181
    mov  [my_draw],al
178
    mov  [ns],48
182
    mov  [ns],48
179
    cmp  [my_draw],0
183
    cmp  [my_draw],0
180
    jne  .c0
184
    jne  .c0
181
    or	 [trig_sys],01h
185
    or	 [trig_sys],01h
182
.c0:
186
.c0:
183
    cmp  [my_draw],0x80
187
    cmp  [my_draw],0x80
184
    jb	 .h0
188
    jb	 .h0
185
    sub  [my_draw],0x80
189
    sub  [my_draw],0x80
186
    mov  [n_razd],1
190
    mov  [n_razd],1
187
    mov  [nd],49
191
    mov  [nd],49
188
    mov  al,[cd_0]
192
    mov  al,[cd_0]
189
    mov  [td],al
193
    mov  [td],al
190
    call  folscan
194
    call  folscan
191
.h0:
195
.h0:
192
    cmp  [trig_scan],1
196
    cmp  [trig_scan],1
193
    je	 ex1
197
    je	 ex1
194
    cmp  [my_draw],0x40
198
    cmp  [my_draw],0x40
195
    jb	 .c1
199
    jb	 .c1
196
    sub  [my_draw],0x40
200
    sub  [my_draw],0x40
197
    mov  al,byte[scan_rez+2]
201
    mov  al,byte[scan_rez+2]
198
    mov  [n_razd],al
202
    mov  [n_razd],al
199
    add  al,48
203
    add  al,48
200
    mov  [nd],al
204
    mov  [nd],al
201
    mov  al,[hd_0]
205
    mov  al,[hd_0]
202
    mov  [td],al
206
    mov  [td],al
203
    call  folscan
207
    call  folscan
204
.c1:
208
.c1:
205
    cmp  [trig_scan],1
209
    cmp  [trig_scan],1
206
    je	 ex1
210
    je	 ex1
207
    cmp  [my_draw],0x20
211
    cmp  [my_draw],0x20
208
    jb	 .h1
212
    jb	 .h1
209
    sub  [my_draw],0x20
213
    sub  [my_draw],0x20
210
    mov  [n_razd],1
214
    mov  [n_razd],1
211
    mov  [nd],49
215
    mov  [nd],49
212
    mov  al,[cd_0]
216
    mov  al,[cd_0]
213
    mov  [ns],19
217
    mov  [ns],19
214
    call  folscan
218
    call  folscan
215
.h1:
219
.h1:
216
    cmp  [trig_scan],1
220
    cmp  [trig_scan],1
217
    je	 ex1
221
    je	 ex1
218
    cmp  [my_draw],0x10
222
    cmp  [my_draw],0x10
219
    jb	 .c2
223
    jb	 .c2
220
    sub  [my_draw],0x10
224
    sub  [my_draw],0x10
221
    mov  al,byte[scan_rez+3]
225
    mov  al,byte[scan_rez+3]
222
    mov  [n_razd],al
226
    mov  [n_razd],al
223
    add  al,48
227
    add  al,48
224
    mov  [nd],al
228
    mov  [nd],al
225
    mov  al,[hd_0]
229
    mov  al,[hd_0]
226
    mov  [td],al
230
    mov  [td],al
227
    mov  [ns],49
231
    mov  [ns],49
228
    call  folscan
232
    call  folscan
229
.c2:
233
.c2:
230
    cmp  [trig_scan],1
234
    cmp  [trig_scan],1
231
    je	 ex1
235
    je	 ex1
232
    cmp  [my_draw],0x08
236
    cmp  [my_draw],0x08
233
    jb	 .h2
237
    jb	 .h2
234
    sub  [my_draw],0x08
238
    sub  [my_draw],0x08
235
    mov  [n_razd],1
239
    mov  [n_razd],1
236
    mov  [nd],49
240
    mov  [nd],49
237
    mov  al,[cd_0]
241
    mov  al,[cd_0]
238
    mov  [td],al
242
    mov  [td],al
239
    mov  [ns],50
243
    mov  [ns],50
240
    call  folscan
244
    call  folscan
241
.h2:
245
.h2:
242
    cmp  [trig_scan],1
246
    cmp  [trig_scan],1
243
    je	 ex1
247
    je	 ex1
244
    cmp  [my_draw],0x04
248
    cmp  [my_draw],0x04
245
    jb	 .c3
249
    jb	 .c3
246
    sub  [my_draw],0x04
250
    sub  [my_draw],0x04
247
    mov  al,byte[scan_rez+4]
251
    mov  al,byte[scan_rez+4]
248
    mov  [n_razd],al
252
    mov  [n_razd],al
249
    add  al,48
253
    add  al,48
250
    mov  [nd],al
254
    mov  [nd],al
251
    mov  al,[hd_0]
255
    mov  al,[hd_0]
252
    mov  [td],al
256
    mov  [td],al
253
    mov  [ns],50
257
    mov  [ns],50
254
    call folscan
258
    call folscan
255
.c3:
259
.c3:
256
    cmp  [trig_scan],1
260
    cmp  [trig_scan],1
257
     je  ex1
261
     je  ex1
258
    cmp  [my_draw],0x02
262
    cmp  [my_draw],0x02
259
    jb	 .h3
263
    jb	 .h3
260
    sub  [my_draw],0x02
264
    sub  [my_draw],0x02
261
    mov  [n_razd],1
265
    mov  [n_razd],1
262
    mov  [nd],49
266
    mov  [nd],49
263
    mov  al,[cd_0]
267
    mov  al,[cd_0]
264
    mov  [td],al
268
    mov  [td],al
265
    mov  [ns],51
269
    mov  [ns],51
266
    call folscan
270
    call folscan
267
.h3:
271
.h3:
268
    cmp  [trig_scan],1
272
    cmp  [trig_scan],1
269
    je	 ex1
273
    je	 ex1
270
    cmp  [my_draw],0x01
274
    cmp  [my_draw],0x01
271
    jb	 ex1
275
    jb	 ex1
272
    sub  [my_draw],0x01
276
    sub  [my_draw],0x01
273
    mov  al,byte[scan_rez+5]
277
    mov  al,byte[scan_rez+5]
274
    mov  [n_razd],al
278
    mov  [n_razd],al
275
    add  al,48
279
    add  al,48
276
    mov  [nd],al
280
    mov  [nd],al
277
    mov  al,[hd_0]
281
    mov  al,[hd_0]
278
    mov  [td],al
282
    mov  [td],al
279
    mov  [ns],51
283
    mov  [ns],51
280
    call folscan
284
    call folscan
281
ex1:
285
ex1:
282
    cmp  [fold],05h
286
    cmp  [fold],05h
283
    jne  ext2
287
    jne  ext2
284
    or	 [trig_sys],04h
288
    or	 [trig_sys],04h
285
ext2:
289
ext2:
286
    cmp  [fold],0Ah
290
    cmp  [fold],0Ah
287
    jne  ext3
291
    jne  ext3
288
    or	 [trig_sys],08h
292
    or	 [trig_sys],08h
289
    jmp  eext
293
    jmp  eext
290
ext3:
294
ext3:
291
    mov  [trig_scan],0
295
    mov  [trig_scan],0
292
    not  [trig_sys]
296
    not  [trig_sys]
293
    or	 [trig_sys],0Eh
297
    or	 [trig_sys],0Eh
294
    not  [trig_sys]
298
    not  [trig_sys]
295
eext:
299
eext:
296
    ret
300
    ret
297
folscan:
301
folscan:
298
    cmp  [trig_scan],1
302
    cmp  [trig_scan],1
299
    je	 .out2
303
    je	 .out2
300
    mov  eax,70
304
    mov  eax,70
301
    mov  ebx,file_info
305
    mov  ebx,file_info
302
    mcall
306
    mcall
303
    mov  [fold],eax
307
    mov  [fold],eax
304
    cmp  [fold],0
308
    cmp  [fold],0
305
    jne  .out
309
    jne  .out
306
    mov  al,1
310
    mov  al,1
307
    mov  [trig_scan],al
311
    mov  [trig_scan],al
308
    jmp  .out2
312
    jmp  .out2
309
.out:
313
.out:
310
     mov  al,1
314
     mov  al,1
311
    sub  [n_razd],al
315
    sub  [n_razd],al
312
    mov  al,1
316
    mov  al,1
313
    sub  [nd],al
317
    sub  [nd],al
314
    cmp  [n_razd],0
318
    cmp  [n_razd],0
315
    jne  folscan
319
    jne  folscan
316
.out2:
320
.out2:
317
    ret
321
    ret
318
get_play:
322
get_play:
319
    mov  cx,255
323
    mov  cx,255
320
    lea  si,[floc]
324
    lea  si,[floc]
321
    lea  di,[playlist]
325
    lea  di,[playlist]
322
    rep movs byte [di],[si]
326
    rep movs byte [di],[si]
323
    mov  cx,0
327
    mov  cx,0
324
ret
328
ret
325
getstring:
329
getstring:
326
    mov  eax,70
330
    mov  eax,70
327
    mov  ebx,file_info2
331
    mov  ebx,file_info2
328
    mov  dword [ebx+12], 255
332
    mov  dword [ebx+12], 255
329
    mov  dword [ebx+16],string1
333
    mov  dword [ebx+16],string1
330
    mov  dword [ebx+21],playlist
334
    mov  dword [ebx+21],playlist
331
    mcall
335
    mcall
332
    cmp eax,6
336
    cmp eax,6
333
    jne .pro
337
    jne .pro
334
    or	 [trig_sys],04h
338
    or	 [trig_sys],04h
335
    call draw_window
339
    call draw_window
336
    jmp  still
340
    jmp  still
337
.pro:
341
.pro:
338
 
342
 
339
    cmp  ebx,0xFFFFFFFF
343
    cmp  ebx,0xFFFFFFFF
340
    je	.exit
344
    je	.exit
341
    call rus_m
345
    call rus_m
342
    cld
346
    cld
343
    lea  di,[string1]
347
    lea  di,[string1]
344
    mov  cx,255
348
    mov  cx,255
345
    mov  al,0ah
349
    mov  al,0ah
346
    repne  scas byte  [es:di]
350
    repne  scas byte  [es:di]
347
    je	 .calc
351
    je	 .calc
348
    mov [razm_str],0
352
    mov [razm_str],0
349
    mov  ebx,file_info2
353
    mov  ebx,file_info2
350
    add  dword [ebx+4], 255
354
    add  dword [ebx+4], 255
351
    or	 [trig_sys],40h
355
    or	 [trig_sys],40h
352
    jmp mmm.seach
356
    jmp mmm.seach
353
.calc:
357
.calc:
354
     mov  [razm_str],255
358
     mov  [razm_str],255
355
     sub  [razm_str],ecx
359
     sub  [razm_str],ecx
356
.kon:
360
.kon:
357
    mov  [razm_path],0
361
    mov  [razm_path],0
358
    cld
362
    cld
359
    lea  di,[string1]
363
    lea  di,[string1]
360
    mov  ecx,0
364
    mov  ecx,0
361
.ppr:
365
.ppr:
362
    cmp byte [es:di],70h
366
    cmp byte [es:di],70h
363
    je	.s1
367
    je	.s1
364
    cmp byte [es:di],50h
368
    cmp byte [es:di],50h
365
    je	.s1
369
    je	.s1
366
    add  ecx,1
370
    add  ecx,1
367
    add  di,1
371
    add  di,1
368
    cmp  ecx,[razm_str]
372
    cmp  ecx,[razm_str]
369
    jb	.ppr
373
    jb	.ppr
370
    jmp .next
374
    jmp .next
371
.s1:
375
.s1:
372
    add  di,1
376
    add  di,1
373
    cmp  byte [es:di],33h
377
    cmp  byte [es:di],33h
374
    je	 .s2
378
    je	 .s2
375
    sub  di,1
379
    sub  di,1
376
    jmp .next
380
    jmp .next
377
    ret
381
    ret
378
.s2:
382
.s2:
379
 
383
 
380
    or	 [trig_sys],80h
384
    or	 [trig_sys],80h
381
    mov  [razm_path],ecx
385
    mov  [razm_path],ecx
382
    add  [razm_path],2
386
    add  [razm_path],2
383
 
387
 
384
;    mov  [ss2],0
388
;    mov  [ss2],0
385
    cld
389
    cld
386
    lea  di,[string1]
390
    lea  di,[string1]
387
    mov  cx,0
391
    mov  cx,0
388
    mov  [zzz],cx
392
    mov  [zzz],cx
389
.ppre:
393
.ppre:
390
    cmp byte [es:di],3Ah
394
    cmp byte [es:di],3Ah
391
    je	.se1
395
    je	.se1
392
    add  cx,1
396
    add  cx,1
393
    add  di,1
397
    add  di,1
394
    cmp  ecx,[razm_path]
398
    cmp  ecx,[razm_path]
395
    jne  .ppre
399
    jne  .ppre
396
    jmp  .mount
400
    jmp  .mount
397
.se1:
401
.se1:
398
    add  di,1
402
    add  di,1
399
    cmp  byte [es:di],5Ch
403
    cmp  byte [es:di],5Ch
400
    je	 .se2
404
    je	 .se2
401
    sub  di,1
405
    sub  di,1
402
    jmp  .mount
406
    jmp  .mount
403
.se2:
407
.se2:
404
    cmp  ecx,250
408
    cmp  ecx,250
405
    jb	 .se3
409
    jb	 .se3
406
    mov  ecx,0
410
    mov  ecx,0
407
.se3:
411
.se3:
408
    add  cx,2
412
    add  cx,2
409
;    mov  [ss2],cx
413
;    mov  [ss2],cx
410
    mov  [zzz],cx
414
    mov  [zzz],cx
411
.mount:
415
.mount:
412
    movzx  ecx,[zzz]
416
    movzx  ecx,[zzz]
413
    cmp  ecx, [razm_path]
417
    cmp  ecx, [razm_path]
414
    jb	.mount1
418
    jb	.mount1
415
    or	 [trig_sys],04h
419
    or	 [trig_sys],04h
416
    jmp  still
420
    jmp  still
417
.mount1:
421
.mount1:
418
    mov  ecx,255
422
    mov  ecx,255
419
    cld
423
    cld
420
    lea  di,[fl]
424
    lea  di,[fl]
421
    mov  al,00h
425
    mov  al,00h
422
    repne stos byte [di]
426
    repne stos byte [di]
423
    cld
427
    cld
424
    mov  ecx,[razm_path]
428
    mov  ecx,[razm_path]
425
    sub  cx,[zzz]
429
    sub  cx,[zzz]
426
    lea  si,[string1]
430
    lea  si,[string1]
427
    add  si,[zzz]
431
    add  si,[zzz]
428
    lea  di,[fl]
432
    lea  di,[fl]
429
    rep movs byte [di],[si]
433
    rep movs byte [di],[si]
430
    mov  ecx,0
434
    mov  ecx,0
431
.sl_m:
435
.sl_m:
432
    mov  ecx,0
436
    mov  ecx,0
433
    lea  di,[fl]
437
    lea  di,[fl]
434
.cikl_mx:
438
.cikl_mx:
435
    mov  al,byte[di]
439
    mov  al,byte[di]
436
    mov  [char_con],al
440
    mov  [char_con],al
437
    cmp  al,5Ch
441
    cmp  al,5Ch
438
    je	 .con_sl
442
    je	 .con_sl
439
    jmp  .ext6
443
    jmp  .ext6
440
.con_sl:
444
.con_sl:
441
    mov al,2Fh
445
    mov al,2Fh
442
.ext6:
446
.ext6:
443
    stos byte [di]
447
    stos byte [di]
444
    add  ecx,1
448
    add  ecx,1
445
    cmp  ecx,[razm_path]
449
    cmp  ecx,[razm_path]
446
    jb	.cikl_mx
450
    jb	.cikl_mx
447
 
451
 
448
.exit:
452
.exit:
449
    ret
453
    ret
450
.next:
454
.next:
451
    not  [trig_sys]
455
    not  [trig_sys]
452
    or	 [trig_sys],80h
456
    or	 [trig_sys],80h
453
    not  [trig_sys]
457
    not  [trig_sys]
454
    mov  ebx,file_info2
458
    mov  ebx,file_info2
455
    mov  ecx,[razm_str]
459
    mov  ecx,[razm_str]
456
    add  dword [ebx+4],ecx
460
    add  dword [ebx+4],ecx
457
    or	 [trig_sys],40h
461
    or	 [trig_sys],40h
458
    jmp mmm.seach
462
    jmp mmm.seach
459
rus_m:
463
rus_m:
460
    test  [trig_sys],40h
464
    test  [trig_sys],40h
461
    jnz   ddff
465
    jnz   ddff
462
    ret
466
    ret
463
ddff:
467
ddff:
464
    mov  ecx,0
468
    mov  ecx,0
465
    lea  di,[string1]
469
    lea  di,[string1]
466
cicl_m:
470
cicl_m:
467
    mov  al,byte[di]
471
    mov  al,byte[di]
468
    mov  [char_con],al
472
    mov  [char_con],al
469
    shr  al,4
473
    shr  al,4
470
    cmp  al,0Eh
474
    cmp  al,0Eh
471
    je	 min_sor
475
    je	 min_sor
472
    cmp  al,0Ch
476
    cmp  al,0Ch
473
    je	 min_sor
477
    je	 min_sor
474
    cmp  al,0Dh
478
    cmp  al,0Dh
475
    je	 min_sor
479
    je	 min_sor
476
    cmp  al,0Fh
480
    cmp  al,0Fh
477
    je	 min_des
481
    je	 min_des
478
    shl  al,4
482
    shl  al,4
479
    mov  al,0
483
    mov  al,0
480
    jmp  ext5
484
    jmp  ext5
481
min_sor:
485
min_sor:
482
    sub  [char_con],40h
486
    sub  [char_con],40h
483
    jmp  ext5
487
    jmp  ext5
484
min_des:
488
min_des:
485
     sub  [char_con],10h
489
     sub  [char_con],10h
486
    jmp  ext5
490
    jmp  ext5
487
ext5:
491
ext5:
488
    mov  al,[char_con]
492
    mov  al,[char_con]
489
    stos byte [di]
493
    stos byte [di]
490
    add  ecx,1
494
    add  ecx,1
491
    cmp  ecx,255
495
    cmp  ecx,255
492
    jb	cicl_m
496
    jb	cicl_m
493
    not  [trig_sys]
497
    not  [trig_sys]
494
    or	 [trig_sys],40h
498
    or	 [trig_sys],40h
495
    not  [trig_sys]
499
    not  [trig_sys]
496
    ret
500
    ret
497
 
501
 
498
put_db:
502
put_db:
499
    test [trig_sys],80h
503
    test [trig_sys],80h
500
    jz	.exit
504
    jz	.exit
501
    add  [song_count],1
505
    add  [song_count],1
502
    add  [poz_db],255
506
    add  [poz_db],255
503
    mov  ecx,255
507
    mov  ecx,255
504
    cld
508
    cld
505
    mov  ebx,[poz_db]
509
    mov  ebx,[poz_db]
506
    lea  di,[memlist+ebx]
510
    lea  di,[memlist+ebx]
507
    mov  al,00h
511
    mov  al,00h
508
    repne stos byte [di]
512
    repne stos byte [di]
509
    cld
513
    cld
510
    mov  ecx,255
514
    mov  ecx,255
511
    lea  si,[floc]
515
    lea  si,[floc]
512
    mov  ebx,[poz_db]
516
    mov  ebx,[poz_db]
513
    lea  di,[memlist+ebx]
517
    lea  di,[memlist+ebx]
514
    rep movs byte [di],[si]
518
    rep movs byte [di],[si]
515
    mov  ecx,0
519
    mov  ecx,0
516
.exit:
520
.exit:
517
    ret
521
    ret
518
load_song:
522
load_song:
519
    cld
523
    cld
520
    mov  ecx,255
524
    mov  ecx,255
521
    lea  di,[song_path]
525
    lea  di,[song_path]
522
    mov  ebx,[song_poz]
526
    mov  ebx,[song_poz]
523
    lea  si,[memlist+ebx]
527
    lea  si,[memlist+ebx]
524
    rep movs byte [di],[si]
528
    rep movs byte [di],[si]
525
    mov  ecx,0
529
    mov  ecx,0
526
    ret
530
    ret
527
start:
531
start:
528
    mov  eax,70
532
    mov  eax,70
529
    mov  ebx,folder_inf
533
    mov  ebx,folder_inf
530
    mcall
534
    mcall
531
    ret
535
    ret
532
delproc:
536
delproc:
533
    test [trig_sys],400h
537
    test [trig_sys],400h
534
    jnz   .sdf
538
    jnz   .sdf
535
    ret
539
    ret
536
.sdf:
540
.sdf:
537
       mov  [num_proc],255
541
       mov  [num_proc],255
538
.fgf:
542
.fgf:
539
    mov  eax,9
543
    mov  eax,9
540
    mov  ebx,pib
544
    mov  ebx,pib
541
    mov  ecx, [num_proc]
545
    mov  ecx, [num_proc]
542
    mcall
546
    mcall
543
    cld
547
    cld
544
    lea si,[pib.process_name]
548
    lea si,[pib.process_name]
545
    lea di,[minus]
549
    lea di,[minus]
546
    mov cx,7
550
    mov cx,7
547
    rep cmps byte [si],[di]
551
    rep cmps byte [si],[di]
548
    jcxz .qwer
552
    jcxz .qwer
549
    sub  [num_proc],1
553
    sub  [num_proc],1
550
    cmp  [num_proc],1
554
    cmp  [num_proc],1
551
    jne  .fgf
555
    jne  .fgf
552
     test [trig_sys],200h
556
     test [trig_sys],200h
553
    ret
557
    ret
554
.qwer:
558
.qwer:
555
    mov  eax,[pib+process_information.cpu_usage]
559
    mov  eax,[pib+process_information.cpu_usage]
556
    mov  [q_takt],eax
560
    mov  [q_takt],eax
557
    cmp  [q_takt],200000
561
    cmp  [q_takt],200000
558
    jb	 .asdf
562
    jb	 .asdf
559
    ret
563
    ret
560
.asdf:
564
.asdf:
561
    add   [count_err],1
565
    add   [count_err],1
562
    cmp   [count_err],6
566
    cmp   [count_err],6
563
    ja	  .djbn
567
    ja	  .djbn
564
    ret
568
    ret
565
.djbn:
569
.djbn:
566
    mov   [count_err],0
570
    mov   [count_err],0
567
    not   [trig_sys]
571
    not   [trig_sys]
568
    or	 [trig_sys],200h
572
    or	 [trig_sys],200h
569
    not   [trig_sys]
573
    not   [trig_sys]
570
    ret
574
    ret
571
enproc:
575
enproc:
572
    mov  [num_proc],255
576
    mov  [num_proc],255
573
.fgf:
577
.fgf:
574
    mov  eax,9
578
    mov  eax,9
575
    mov  ebx,pib
579
    mov  ebx,pib
576
    mov  ecx, [num_proc]
580
    mov  ecx, [num_proc]
577
    mcall
581
    mcall
578
    cld
582
    cld
579
    lea si,[pib.process_name]
583
    lea si,[pib.process_name]
580
    lea di,[minus]
584
    lea di,[minus]
581
    mov cx,7
585
    mov cx,7
582
    rep cmps byte [si],[di]
586
    rep cmps byte [si],[di]
583
    jcxz .qwer
587
    jcxz .qwer
584
    sub  [num_proc],1
588
    sub  [num_proc],1
585
    cmp  [num_proc],1
589
    cmp  [num_proc],1
586
    jne  .fgf
590
    jne  .fgf
587
    ret
591
    ret
588
.qwer:
592
.qwer:
589
    or	 [trig_sys],400h
593
    or	 [trig_sys],400h
590
    ret
594
    ret
591
 
595
 
592
;   *********************************************
596
;   *********************************************
593
;   *******  WINDOW DEFINITIONS AND DRAW ********
597
;   *******  WINDOW DEFINITIONS AND DRAW ********
594
;   *********************************************
598
;   *********************************************
595
 
599
 
596
draw_window:
600
draw_window:
597
    mov  eax,48
601
    mov  eax,48
598
    mov  ebx,3
602
    mov  ebx,3
599
    mov  ecx,sc
603
    mov  ecx,sc
600
    mov  edx,sizeof.system_colors
604
    mov  edx,sizeof.system_colors
601
    mcall
605
    mcall
602
    mov  eax,12 		   ; function 12:tell os about windowdraw
606
    mov  eax,12 		   ; function 12:tell os about windowdraw
603
    mov  ebx,1			   ; 1, start of draw
607
    mov  ebx,1			   ; 1, start of draw
604
    mcall
608
    mcall
605
				   ; DRAW WINDOW
609
				   ; DRAW WINDOW
606
    xor  eax,eax	    ; function 0 : define and draw window
610
    xor  eax,eax	    ; function 0 : define and draw window
607
    mov  ebx,100*65536+550	   ; [x start] *65536 + [x size]
611
    mov  ebx,100*65536+550	   ; [x start] *65536 + [x size]
608
    mov  ecx,100*65536+420	    ; [y start] *65536 + [y size]
612
    mov  ecx,100*65536+420	    ; [y start] *65536 + [y size]
609
    mov  edx,[sc.work]		   ; color of work area RRGGBB,8->color gl
613
    mov  edx,[sc.work]		   ; color of work area RRGGBB,8->color gl
610
    or	 edx,0x33000000
614
    or	 edx,0x33000000
611
    mov  edi,title
615
    mov  edi,header
612
    mcall
616
    mcall
613
    mov  eax,4
617
    mov  eax,4
614
    mov  ebx,5*65536+5
618
    mov  ebx,5*65536+5
615
    mov  ecx,0xC0000000
619
    mov  ecx,0xC0000000
616
    mov  edx,label1
620
    mov  edx,label1
617
    mov  edi,[sc.work]
621
    mov  edi,[sc.work]
618
    mcall
622
    mcall
619
    mov  eax,4
623
    mov  eax,4
620
    mov  ebx,300*65536+5
624
    mov  ebx,300*65536+5
621
    mov  ecx,0xC0000000
625
    mov  ecx,0xC0000000
622
    mov  edx,label5
626
    mov  edx,label5
623
    mov  edi,[sc.work]
627
    mov  edi,[sc.work]
624
    mcall
628
    mcall
625
    mov  eax,4
629
    mov  eax,4
626
    mov  ebx,300*65536+15
630
    mov  ebx,300*65536+15
627
    mov  ecx,0xC0000000
631
    mov  ecx,0xC0000000
628
    mov  edx,label6
632
    mov  edx,label6
629
    mov  edi,[sc.work]
633
    mov  edi,[sc.work]
630
    mcall
634
    mcall
631
    mov  eax,4
635
    mov  eax,4
632
    mov  ebx,25*65536+35
636
    mov  ebx,25*65536+35
633
    mov  ecx,0xC00000dd
637
    mov  ecx,0xC00000dd
634
    mov  edx,song_path
638
    mov  edx,song_path
635
    mov  edi,[sc.work]
639
    mov  edi,[sc.work]
636
    mcall
640
    mcall
637
    mov  eax,4
641
    mov  eax,4
638
    mov  ebx,100*65536+5
642
    mov  ebx,100*65536+5
639
    mov  ecx,0xC0000000
643
    mov  ecx,0xC0000000
640
    mov  edx,playlist
644
    mov  edx,playlist
641
    mov  edi,[sc.work]
645
    mov  edi,[sc.work]
642
    mcall
646
    mcall
643
    test [trig_sys],4h
647
    test [trig_sys],4h
644
    jnz   .zam1
648
    jnz   .zam1
645
    mov  eax,4
649
    mov  eax,4
646
    mov  ebx,5*65536+15
650
    mov  ebx,5*65536+15
647
    mov  ecx,0xC0000000
651
    mov  ecx,0xC0000000
648
    mov  edx,label3
652
    mov  edx,label3
649
    mov  edi,[sc.work]
653
    mov  edi,[sc.work]
650
    mcall
654
    mcall
651
    jmp  .zam2
655
    jmp  .zam2
652
.zam1:
656
.zam1:
653
    mov  eax,4
657
    mov  eax,4
654
    mov  ebx,5*65536+15
658
    mov  ebx,5*65536+15
655
    mov  ecx,0xC0000000
659
    mov  ecx,0xC0000000
656
    mov  edx,label2
660
    mov  edx,label2
657
    mov  edi,[sc.work]
661
    mov  edi,[sc.work]
658
    mcall
662
    mcall
659
    mov  eax,4
663
    mov  eax,4
660
    mov  ebx,5*65536+25
664
    mov  ebx,5*65536+25
661
    mov  ecx,0xC0000000
665
    mov  ecx,0xC0000000
662
    mov  edx,label4
666
    mov  edx,label4
663
    mov  edi,[sc.work]
667
    mov  edi,[sc.work]
664
    mcall
668
    mcall
665
.zam2:
669
.zam2:
666
 
670
 
667
;    mov  eax,47
671
;    mov  eax,47
668
;    mov  esi,0x50000000
672
;    mov  esi,0x50000000
669
;    mov  ecx, [trig_sys]
673
;    mov  ecx, [trig_sys]
670
;    mov  edi,[sc.work]
674
;    mov  edi,[sc.work]
671
;    mov  ebx,0x00080100
675
;    mov  ebx,0x00080100
672
;    mov  edx,385*65536+25
676
;    mov  edx,385*65536+25
673
;    mcall
677
;    mcall
674
    mov  eax,47
678
    mov  eax,47
675
    mov  esi,0x50000000
679
    mov  esi,0x50000000
676
    mov  ecx, [song_count]
680
    mov  ecx, [song_count]
677
    mov  edi,[sc.work]
681
    mov  edi,[sc.work]
678
    mov  ebx,0x00030000
682
    mov  ebx,0x00030000
679
    mov  edx,500*65536+5
683
    mov  edx,500*65536+5
680
    mcall
684
    mcall
681
    mov  eax,47
685
    mov  eax,47
682
    mov  esi,0x50000000
686
    mov  esi,0x50000000
683
    movzx  ecx, [poz_song]
687
    movzx  ecx, [poz_song]
684
    mov  edi,[sc.work]
688
    mov  edi,[sc.work]
685
    mov  ebx,0x00030000
689
    mov  ebx,0x00030000
686
    mov  edx,500*65536+15
690
    mov  edx,500*65536+15
687
    mcall
691
    mcall
688
    mov  [bbut],32
692
    mov  [bbut],32
689
    mov  [poz_but],48*65536+10
693
    mov  [poz_but],48*65536+10
690
    mov  edx,6
694
    mov  edx,6
691
butt1:
695
butt1:
692
    mov  ebx,0*65536+20
696
    mov  ebx,0*65536+20
693
    mov  ecx,[poz_but]
697
    mov  ecx,[poz_but]
694
    mov  esi,[color1]
698
    mov  esi,[color1]
695
    movzx  eax,[poz_butt]
699
    movzx  eax,[poz_butt]
696
    cmp  edx,eax
700
    cmp  edx,eax
697
    jne  .uuu
701
    jne  .uuu
698
    mov  esi,[color2]
702
    mov  esi,[color2]
699
.uuu:
703
.uuu:
700
    mov  eax,8
704
    mov  eax,8
701
    mcall
705
    mcall
702
    add  edx,1
706
    add  edx,1
703
    add  [poz_but],10*65536
707
    add  [poz_but],10*65536
704
    sub  [bbut],1
708
    sub  [bbut],1
705
    cmp  [bbut],0
709
    cmp  [bbut],0
706
    jne   butt1
710
    jne   butt1
707
    mov  eax,8
711
    mov  eax,8
708
    mov  ebx,525*65536+15
712
    mov  ebx,525*65536+15
709
    mov  ecx,45*65536+15
713
    mov  ecx,45*65536+15
710
    mov  esi,0x00aaaadd
714
    mov  esi,0x00aaaadd
711
    mov  edx,4
715
    mov  edx,4
712
    mcall
716
    mcall
713
    mov  eax,8
717
    mov  eax,8
714
    mov  ebx,525*65536+15
718
    mov  ebx,525*65536+15
715
    mov  ecx,365*65536+15
719
    mov  ecx,365*65536+15
716
    mov  esi,0x00aaaadd
720
    mov  esi,0x00aaaadd
717
    mov  edx,5
721
    mov  edx,5
718
    mcall
722
    mcall
719
    mov  [ai],32
723
    mov  [ai],32
720
    mov  [list_poz],25*65536+50
724
    mov  [list_poz],25*65536+50
721
    mov  ebx,[poz_db3]
725
    mov  ebx,[poz_db3]
722
    mov  [poz_db2],ebx
726
    mov  [poz_db2],ebx
723
list:
727
list:
724
    mov  eax,4
728
    mov  eax,4
725
    mov  ecx,0xC0000000
729
    mov  ecx,0xC0000000
726
    mov  ebx,[poz_db2]
730
    mov  ebx,[poz_db2]
727
    lea  edx,[memlist+ebx]
731
    lea  edx,[memlist+ebx]
728
    mov  ebx, [list_poz]
732
    mov  ebx, [list_poz]
729
    mov  edi,[sc.work]
733
    mov  edi,[sc.work]
730
    mcall
734
    mcall
731
    add  [list_poz],10
735
    add  [list_poz],10
732
    add  [poz_db2],255
736
    add  [poz_db2],255
733
    sub  [ai],1
737
    sub  [ai],1
734
    cmp  [ai],0
738
    cmp  [ai],0
735
    ja	list
739
    ja	list
736
    mov  eax,12 		   ; function 12:tell os about windowdraw
740
    mov  eax,12 		   ; function 12:tell os about windowdraw
737
    mov  ebx,2			   ; 2, end of draw
741
    mov  ebx,2			   ; 2, end of draw
738
    mcall
742
    mcall
739
    ret
743
    ret
740
 
744
 
741
 
745
 
742
 
746
 
743
; DATA AREA
747
; DATA AREA
744
 
748
 
745
 
749
 
746
title:         db   'à®¨£à뢠¥¬ ¯«¥©«¨áâ v 0.19 :)',0
750
header:        db   'à®¨£à뢠¥¬ ¯«¥©«¨áâ v 0.20 :)',0
747
play_list:     db   '1.kpl',0
751
play_list:     db   '1.kpl',0
748
cd_0:	       db   'c',0
752
cd_0:	       db   'c',0
749
hd_0:	       db   'h',0
753
hd_0:	       db   'h',0
750
label1:        db   '” ©« ¯«¥©«¨áâ :',0
754
label1:        db   '” ©« ¯«¥©«¨áâ :',0
751
label2:        db   '᪠­¨à®¢ ­¨¥ § ª®­ç¥­®... :)            ',0
755
label2:        db   '᪠­¨à®¢ ­¨¥ § ª®­ç¥­®... :)            ',0
752
label3:        db   '®¤®¦¤¨â¥, ¯®¦ «ã©áâ , ¨¤ñâ ᪠­¨à®¢ ­¨¥',0
756
label3:        db   '®¤®¦¤¨â¥, ¯®¦ «ã©áâ , ¨¤ñâ ᪠­¨à®¢ ­¨¥',0
753
label4:        db   '‚®á¯à®¨§¢®¤¨¬ë© ä ©«:',0
757
label4:        db   '‚®á¯à®¨§¢®¤¨¬ë© ä ©«:',0
754
label5:        db   '‚ᥣ® ä ©«®¢ ¢ ¯«¥©«¨á⥠­ ©¤¥­®:',0
758
label5:        db   '‚ᥣ® ä ©«®¢ ¢ ¯«¥©«¨á⥠­ ©¤¥­®:',0
755
label6:        db   '®¬¥à ¢®á¯à®¨§¢®¤¨¬®£® ä ©« :',0
759
label6:        db   '®¬¥à ¢®á¯à®¨§¢®¤¨¬®£® ä ©« :',0
756
minus:	       db   'ac97snd',0
760
minus:	       db   'ac97snd',0
757
player:        db   '/rd/1/ac97snd' ,0
761
player:        db   '/rd/1/ac97snd' ,0
758
my_draw        db   0
762
my_draw        db   0
759
n_razd	       db   0
763
n_razd	       db   0
760
trig_scan      db   0
764
trig_scan      db   0
761
char_con       db   0
765
char_con       db   0
762
poz_butt       db   0
766
poz_butt       db   0
763
poz_song       db   0
767
poz_song       db   0
764
count_err      dd   0
768
count_err      dd   0
765
num_proc       dd   0
769
num_proc       dd   0
766
q_takt	       dd   0
770
q_takt	       dd   0
767
razm_str       dd   0
771
razm_str       dd   0
768
fold	       dd   0
772
fold	       dd   0
769
razm_path      dd   0
773
razm_path      dd   0
770
trig_sys       dd   0
774
trig_sys       dd   0
771
poz_db	       dd   0
775
poz_db	       dd   0
772
poz_db2        dd   0
776
poz_db2        dd   0
773
poz_db3        dd   255
777
poz_db3        dd   255
774
song_poz       dd   0
778
song_poz       dd   0
775
list_poz       dd   5*65536+50
779
list_poz       dd   5*65536+50
776
song_count     dd   0
780
song_count     dd   0
777
ai	       dd   0
781
ai	       dd   0
778
st_r	       dd   0
782
st_r	       dd   0
779
bbut	       dd   0
783
bbut	       dd   0
780
poz_but        dd   0
784
poz_but        dd   0
781
sme	       dd   0
785
sme	       dd   0
782
color1	       dd   0x006666dd
786
color1	       dd   0x006666dd
783
color2	       dd   0x00dddddd
787
color2	       dd   0x00dddddd
784
ss2	       dd   0
788
ss2	       dd   0
785
zzz	       dw   22
789
zzz	       dw   22
786
scan_rez:
790
scan_rez:
787
	       db   0
791
	       db   0
788
	       db   0
792
	       db   0
789
	       db   0
793
	       db   0
790
	       db   0
794
	       db   0
791
	       db   0
795
	       db   0
792
	       db   0
796
	       db   0
793
	       db   0
797
	       db   0
794
	       db   0
798
	       db   0
795
	       db   0
799
	       db   0
796
	       db   0
800
	       db   0
797
floc:
801
floc:
798
pc:	       db   '/'
802
pc:	       db   '/'
799
td:	       db   'h'
803
td:	       db   'h'
800
dr:	       db   'd'
804
dr:	       db   'd'
801
ns	       db   48
805
ns	       db   48
802
vc:	       db   '/'
806
vc:	       db   '/'
803
nd	       db   48
807
nd	       db   48
804
ks:	       db   '/'
808
ks:	       db   '/'
805
fl:
809
fl:
806
	       rb   255
810
	       rb   255
807
playlist       rb   255
811
playlist       rb   255
808
song_path      rb   255
812
song_path      rb   255
809
folder_inf:
813
folder_inf:
810
	       dd   7
814
	       dd   7
811
	       dd   0
815
	       dd   0
812
	       dd   song_path
816
	       dd   song_path
813
	       dd   0
817
	       dd   0
814
	       dd   0
818
	       dd   0
815
	       db   0
819
	       db   0
816
	       dd   player
820
	       dd   player
817
file_info:
821
file_info:
818
	       dd   0
822
	       dd   0
819
	       dd   0
823
	       dd   0
820
	       dd   0
824
	       dd   0
821
	       dd   0
825
	       dd   0
822
	       dd   0
826
	       dd   0
823
	       db   0
827
	       db   0
824
	       dd   floc
828
	       dd   floc
825
file_info2:
829
file_info2:
826
	       dd   0
830
	       dd   0
827
	       dd   0
831
	       dd   0
828
	       dd   0
832
	       dd   0
829
	       dd   0
833
	       dd   0
830
	       dd   0
834
	       dd   0
831
	       db   0
835
	       db   0
832
	       dd   0
836
	       dd   0
833
string1        rb   255
837
string1        rb   255
834
 
838
 
835
I_END:
839
I_END:
836
 
840
 
837
 
841
 
838
 
842
 
839
temp dd ?
843
temp dd ?
840
sc system_colors
844
sc system_colors
841
pib process_information
845
pib process_information
842
memlist        rb   65536
846
memlist        rb   65536