Subversion Repositories Kolibri OS

Rev

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

Rev 109 Rev 485
1
;
1
;
2
;    MIXER
2
;    MIXER
3
;
3
;
4
;    Compile with FASM
4
;    Compile with FASM
5
;
5
;
6
 
6
 
-
 
7
include 'lang.inc'
-
 
8
include '..\..\..\macros.inc'
7
use32
9
 
-
 
10
 
8
 
11
use32
9
                org   0x0
12
 org	0x0
10
                db    'MENUET00'              ; 8 byte id
13
 db	'MENUET01'    ; header
11
                dd    38                      ; required os
14
 dd	0x01	      ; header version
12
                dd    START                   ; program start
15
 dd	START	      ; entry point
13
                dd    I_END                   ; program image size
16
 dd	I_END	      ; image size
14
                dd    0x1000                  ; reguired amount of memory
17
 dd	0x1000        ; required memory
15
                dd    0x1000
18
 dd	0x1000        ; esp
16
                dd    0x00000000              ; reserved=no extended header
-
 
17
 
-
 
18
include 'lang.inc'
-
 
-
 
19
 dd	0x0 , 0x0     ; I_Param , I_Path
-
 
20
 
19
include 'macros.inc'
21
 
20
 
22
 
21
START:                          ; start of execution
23
START:                          ; start of execution
22
 
24
 
23
 
25
  red:                          ; redraw
24
    call draw_window            ; at first, draw the window
26
    call draw_window            ; at first, draw the window
25
 
27
 
26
 
28
 
27
still:
29
still:
28
 
30
 
29
    mov  eax,10                 ; wait here for event
31
    mov  eax,10                 ; wait here for event
30
    int  0x40
32
    mcall
31
 
33
 
32
    cmp  eax,1                  ; redraw request ?
34
    cmp  eax,1                  ; redraw request ?
33
    jz   red
35
    jz   red
34
    cmp  eax,2                  ; key in buffer ?
36
    cmp  eax,2                  ; key in buffer ?
35
    jz   key
37
    jz   key
36
    cmp  eax,3                  ; button in buffer ?
38
    cmp  eax,3                  ; button in buffer ?
37
    jz   button
39
    jz   button
38
 
40
 
39
    jmp  still
41
    jmp  still
40
 
42
 
41
  red:                          ; redraw
-
 
42
    call draw_window
-
 
43
 
-
 
44
    jmp  still
-
 
45
 
-
 
46
  key:                          ; key
43
  key:                          ; key
47
    mov  eax,2                  ; just read it and ignore
44
    mov  eax,2                  ; just read it and ignore
48
    int  0x40
45
    mcall
49
 
46
 
50
    jmp  still
47
    jmp  still
51
 
48
 
52
  button:                       ; button
49
  button:                       ; button
53
    mov  eax,17
50
    mov  eax,17
54
    int  0x40
51
    mcall
55
 
52
 
56
    cmp  ah,1                   ; button id=1 ?
53
    cmp  ah,1                   ; button id=1 ?
57
    jnz  noclose
54
    jnz  noclose
58
    mov  eax,-1                 ; close this program
55
    or   eax,-1                 ; close this program
59
    int  0x40
56
    mcall
60
  noclose:
57
  noclose:
61
 
58
 
62
    cmp  ah,101
59
    cmp  ah,101
63
    jnz  nochange
60
    jnz  nochange
64
    mov  al,byte [usecard]
61
    mov  al,byte [usecard]
65
    cld
62
    cld
66
    inc  al
63
    inc  al
67
    and  al,3
64
    and  al,3
68
    cmp  al,0
65
    cmp  al,0
69
    jnz  nozer
66
    jnz  nozer
70
    mov  al,1
67
    mov  al,1
71
  nozer:
68
  nozer:
72
    mov  byte [usecard],al
69
    mov  byte [usecard],al
73
 
70
 
74
    call drawusedcard
71
    call drawusedcard
75
 
72
 
76
  nochange:
73
  nochange:
77
 
74
 
78
    cmp  byte [usecard],byte 1
75
    cmp  byte [usecard],byte 1
79
    jz   usesb16
76
    jz   usesb16
80
 
77
 
81
    cmp  byte [usecard],byte 2
78
    cmp  byte [usecard],byte 2
82
    jnz  nousesb16II
79
    jnz  nousesb16II
83
    jmp  usesb16II
80
    jmp  usesb16II
84
  nousesb16II:
81
  nousesb16II:
85
 
82
 
86
    cmp  byte [usecard],byte 3
83
    cmp  byte [usecard],byte 3
87
    jnz  nousewss
84
    jnz  nousewss
88
    jmp  usewss
85
    jmp  usewss
89
  nousewss:
86
  nousewss:
90
 
87
 
91
 
88
 
92
 
89
 
93
; SOUND BLASTER 16
90
; SOUND BLASTER 16
94
 
91
 
95
 
92
 
96
  usesb16:
93
  usesb16:
97
 
94
 
98
 
95
 
99
    cld
96
    cld
100
 
97
 
101
    mov  al,20
98
    mov  al,20
102
    cmp  ah,al
99
    cmp  ah,al
103
    jge  nomain
100
    jge  nomain
104
 
101
 
105
    mov  ecx,0
102
    mov  ecx,0
106
    cmp  ah,12
103
    cmp  ah,12
107
    jnz  nomain12
104
    jnz  nomain12
108
    mov  ecx,3*16+3
105
    mov  ecx,3*16+3
109
  nomain12:
106
  nomain12:
110
    cmp  ah,13
107
    cmp  ah,13
111
    jnz  nomain13
108
    jnz  nomain13
112
    mov  ecx,7*16+7
109
    mov  ecx,7*16+7
113
  nomain13:
110
  nomain13:
114
    cmp  ah,14
111
    cmp  ah,14
115
    jnz  nomain14
112
    jnz  nomain14
116
    mov  ecx,11*16+11
113
    mov  ecx,11*16+11
117
  nomain14:
114
  nomain14:
118
    cmp  ah,15
115
    cmp  ah,15
119
    jnz  nomain15
116
    jnz  nomain15
120
    mov  ecx,15*16+15
117
    mov  ecx,15*16+15
121
  nomain15:
118
  nomain15:
122
 
119
 
123
    mov  eax,25
120
    mov  eax,25
124
    mov  ebx,1
121
    mov  ebx,1
125
    int  0x40
122
    mcall
126
 
123
 
127
    jmp  still
124
    jmp  still
128
 
125
 
129
  nomain:
126
  nomain:
130
 
127
 
131
    mov  al,30
128
    mov  al,30
132
    cmp  ah,al
129
    cmp  ah,al
133
    jge  nocd
130
    jge  nocd
134
 
131
 
135
    mov  ecx,0
132
    mov  ecx,0
136
 
133
 
137
    cmp  ah,22
134
    cmp  ah,22
138
    jnz  nocd12
135
    jnz  nocd12
139
    mov  ecx,3*16+3
136
    mov  ecx,3*16+3
140
  nocd12:
137
  nocd12:
141
    cmp  ah,23
138
    cmp  ah,23
142
    jnz  nocd13
139
    jnz  nocd13
143
    mov  ecx,7*16+7
140
    mov  ecx,7*16+7
144
  nocd13:
141
  nocd13:
145
    cmp  ah,24
142
    cmp  ah,24
146
    jnz  nocd14
143
    jnz  nocd14
147
    mov  ecx,11*16+11
144
    mov  ecx,11*16+11
148
  nocd14:
145
  nocd14:
149
    cmp  ah,25
146
    cmp  ah,25
150
    jnz  nocd15
147
    jnz  nocd15
151
    mov  ecx,15*16+15
148
    mov  ecx,15*16+15
152
  nocd15:
149
  nocd15:
153
 
150
 
154
    mov  eax,25
151
    mov  eax,25
155
    mov  ebx,2
152
    mov  ebx,2
156
    int  0x40
153
    mcall
157
 
154
 
158
    jmp  still
155
    jmp  still
159
 
156
 
160
  nocd:
157
  nocd:
161
 
158
 
162
 
159
 
163
    jmp  still
160
    jmp  still
164
 
161
 
165
 
162
 
166
 
163
 
167
 
164
 
168
; SOUND BLASTER 16 II
165
; SOUND BLASTER 16 II
169
 
166
 
170
  usesb16II:
167
  usesb16II:
171
 
168
 
172
    cld
169
    cld
173
 
170
 
174
    mov  al,20
171
    mov  al,20
175
    cmp  ah,al
172
    cmp  ah,al
176
    jge  IIwnomain
173
    jge  IIwnomain
177
 
174
 
178
    mov  ecx,0
175
    mov  ecx,0
179
    cmp  ah,12
176
    cmp  ah,12
180
    jnz  IIwnomain12
177
    jnz  IIwnomain12
181
    mov  ecx,50
178
    mov  ecx,50
182
  IIwnomain12:
179
  IIwnomain12:
183
    cmp  ah,13
180
    cmp  ah,13
184
    jnz  IIwnomain13
181
    jnz  IIwnomain13
185
    mov  ecx,150
182
    mov  ecx,150
186
  IIwnomain13:
183
  IIwnomain13:
187
    cmp  ah,14
184
    cmp  ah,14
188
    jnz  IIwnomain14
185
    jnz  IIwnomain14
189
    mov  ecx,200
186
    mov  ecx,200
190
  IIwnomain14:
187
  IIwnomain14:
191
    cmp  ah,15
188
    cmp  ah,15
192
    jnz  IIwnomain15
189
    jnz  IIwnomain15
193
    mov  ecx,255
190
    mov  ecx,255
194
  IIwnomain15:
191
  IIwnomain15:
195
 
192
 
196
    mov  eax,28
193
    mov  eax,28
197
    mov  ebx,1
194
    mov  ebx,1
198
    int  0x40
195
    mcall
199
 
196
 
200
    jmp  still
197
    jmp  still
201
 
198
 
202
  IIwnomain:
199
  IIwnomain:
203
 
200
 
204
    mov  al,30
201
    mov  al,30
205
    cmp  ah,al
202
    cmp  ah,al
206
    jge  IIwnocd
203
    jge  IIwnocd
207
 
204
 
208
    mov  ecx,0
205
    mov  ecx,0
209
 
206
 
210
    cmp  ah,22
207
    cmp  ah,22
211
    jnz  IIwnocd12
208
    jnz  IIwnocd12
212
    mov  ecx,50
209
    mov  ecx,50
213
  IIwnocd12:
210
  IIwnocd12:
214
    cmp  ah,23
211
    cmp  ah,23
215
    jnz  IIwnocd13
212
    jnz  IIwnocd13
216
    mov  ecx,150
213
    mov  ecx,150
217
  IIwnocd13:
214
  IIwnocd13:
218
    cmp  ah,24
215
    cmp  ah,24
219
    jnz  IIwnocd14
216
    jnz  IIwnocd14
220
    mov  ecx,200
217
    mov  ecx,200
221
  IIwnocd14:
218
  IIwnocd14:
222
    cmp  ah,25
219
    cmp  ah,25
223
    jnz  IIwnocd15
220
    jnz  IIwnocd15
224
    mov  ecx,255
221
    mov  ecx,255
225
  IIwnocd15:
222
  IIwnocd15:
226
 
223
 
227
    mov  eax,28
224
    mov  eax,28
228
    mov  ebx,2
225
    mov  ebx,2
229
    int  0x40
226
    mcall
230
 
227
 
231
    jmp  still
228
    jmp  still
232
 
229
 
233
  IIwnocd:
230
  IIwnocd:
234
 
231
 
235
 
232
 
236
    jmp  still
233
    jmp  still
237
 
234
 
238
 
235
 
239
 
236
 
240
 
237
 
241
 
238
 
242
 
239
 
243
 
240
 
244
 
241
 
245
 
242
 
246
; WINDOWS SOUND SYSTEM
243
; WINDOWS SOUND SYSTEM
247
 
244
 
248
  usewss:
245
  usewss:
249
 
246
 
250
    cld
247
    cld
251
 
248
 
252
    mov  al,20
249
    mov  al,20
253
    cmp  ah,al
250
    cmp  ah,al
254
    jge  wnomain
251
    jge  wnomain
255
 
252
 
256
    mov  ecx,255
253
    mov  ecx,255
257
    cmp  ah,12
254
    cmp  ah,12
258
    jnz  wnomain12
255
    jnz  wnomain12
259
    mov  ecx,200
256
    mov  ecx,200
260
  wnomain12:
257
  wnomain12:
261
    cmp  ah,13
258
    cmp  ah,13
262
    jnz  wnomain13
259
    jnz  wnomain13
263
    mov  ecx,150
260
    mov  ecx,150
264
  wnomain13:
261
  wnomain13:
265
    cmp  ah,14
262
    cmp  ah,14
266
    jnz  wnomain14
263
    jnz  wnomain14
267
    mov  ecx,70
264
    mov  ecx,70
268
  wnomain14:
265
  wnomain14:
269
    cmp  ah,15
266
    cmp  ah,15
270
    jnz  wnomain15
267
    jnz  wnomain15
271
    mov  ecx,0
268
    mov  ecx,0
272
  wnomain15:
269
  wnomain15:
273
 
270
 
274
    mov  eax,27
271
    mov  eax,27
275
    mov  ebx,1
272
    mov  ebx,1
276
    int  0x40
273
    mcall
277
 
274
 
278
    jmp  still
275
    jmp  still
279
 
276
 
280
  wnomain:
277
  wnomain:
281
 
278
 
282
    mov  al,30
279
    mov  al,30
283
    cmp  ah,al
280
    cmp  ah,al
284
    jge  wnocd
281
    jge  wnocd
285
 
282
 
286
    mov  ecx,255
283
    mov  ecx,255
287
 
284
 
288
    cmp  ah,22
285
    cmp  ah,22
289
    jnz  wnocd12
286
    jnz  wnocd12
290
    mov  ecx,200
287
    mov  ecx,200
291
  wnocd12:
288
  wnocd12:
292
    cmp  ah,23
289
    cmp  ah,23
293
    jnz  wnocd13
290
    jnz  wnocd13
294
    mov  ecx,150
291
    mov  ecx,150
295
  wnocd13:
292
  wnocd13:
296
    cmp  ah,24
293
    cmp  ah,24
297
    jnz  wnocd14
294
    jnz  wnocd14
298
    mov  ecx,70
295
    mov  ecx,70
299
  wnocd14:
296
  wnocd14:
300
    cmp  ah,25
297
    cmp  ah,25
301
    jnz  wnocd15
298
    jnz  wnocd15
302
    mov  ecx,0
299
    mov  ecx,0
303
  wnocd15:
300
  wnocd15:
304
 
301
 
305
    mov  eax,27
302
    mov  eax,27
306
    mov  ebx,2
303
    mov  ebx,2
307
    int  0x40
304
    mcall
308
 
305
 
309
    jmp  still
306
    jmp  still
310
 
307
 
311
  wnocd:
308
  wnocd:
312
 
309
 
313
 
310
 
314
    jmp  still
311
    jmp  still
315
 
312
 
316
 
313
 
317
 
314
 
318
 
315
 
319
;   *********************************************
316
;   *********************************************
320
;   *******  WINDOW DEFINITIONS AND DRAW ********
317
;   *******  WINDOW DEFINITIONS AND DRAW ********
321
;   *********************************************
318
;   *********************************************
322
 
319
 
323
 
320
 
324
draw_window:
321
draw_window:
325
 
322
 
326
    mov  eax,12                    ; function 12:tell os about windowdraw
323
    mov  eax,12                    ; function 12:tell os about windowdraw
327
    mov  ebx,1                     ; 1, start of draw
324
    mov  ebx,1                     ; 1, start of draw
328
    int  0x40
325
    mcall
329
 
326
 
330
                                   ; DRAW WINDOW
327
                                   ; DRAW WINDOW
331
    mov  eax,0                     ; function 0 : define and draw window
328
    mov  eax,0                     ; function 0 : define and draw window
332
    mov  ebx,100*65536+195         ; [x start] *65536 + [x size]
329
    mov  ebx,100*65536+195         ; [x start] *65536 + [x size]
333
    mov  ecx,100*65536+140         ; [y start] *65536 + [y size]
330
    mov  ecx,100*65536+140         ; [y start] *65536 + [y size]
334
    mov  edx,[wcolor]              ; color of work area RRGGBB
331
    mov  edx,[wcolor]              ; color of work area RRGGBB
335
    mov  esi,0x8099bbff            ; color of grab bar  RRGGBB,8->color glide
332
    mov  edi,title                 ; WINDOW LABEL
336
    mov  edi,0x0099bbee            ; color of frames    RRGGBB
-
 
337
    int  0x40
-
 
338
 
-
 
339
                                   ; WINDOW LABEL
-
 
340
    mov  eax,4                     ; function 4 : write text to window
333
    mcall
341
    mov  ebx,8*65536+8             ; [x start] *65536 + [y start]
-
 
342
    mov  ecx,0x00ffffff            ; color of text RRGGBB
-
 
343
    mov  edx,labelt                ; pointer to text beginning
-
 
344
    mov  esi,labellen-labelt       ; text length
-
 
345
    int  0x40
-
 
346
 
334
 
347
                                   ; CLOSE BUTTON
-
 
348
    mov  eax,8                     ; function 8 : define and draw button
-
 
349
    mov  ebx,(195-19)*65536+12     ; [x start] *65536 + [x size]
-
 
350
    mov  ecx,5*65536+12            ; [y start] *65536 + [y size]
-
 
351
    mov  edx,1                     ; button id
-
 
352
    mov  esi,0x22aacc              ; button color RRGGBB
-
 
353
;    int  0x40
-
 
354
 
335
 
355
    mov  edx,16                    ; button id
336
    mov  edx,16                    ; button id
356
    mov  ebx,10*65536
337
    mov  ebx,10*65536
357
 
338
 
358
  newbut:
339
  newbut:
359
 
340
 
360
    push edx
341
    push edx
361
    push ebx
342
    push ebx
362
 
343
 
363
    mov  esi,[bcolor]
344
    mov  esi,[bcolor]
364
 
345
 
365
    mov  eax,8                     ; function 8 : define and draw button
346
    mov  eax,8                     ; function 8 : define and draw button
366
    mov  bx,22                     ; [x start] *65536 + [x size]
347
    mov  bx,22                     ; [x start] *65536 + [x size]
367
    mov  ecx,35*65536+8            ; [y start] *65536 + [y size]
348
    mov  ecx,35*65536+8            ; [y start] *65536 + [y size]
368
    dec  edx
349
    dec  edx
369
    int  0x40
350
    mcall
370
    mov  eax,8                     ; function 8 : define and draw button
351
    mov  bx,22                     ; [x start] *65536 + [x size]
371
    mov  bx,22                     ; [x start] *65536 + [x size]
-
 
372
    mov  ecx,45*65536+8            ; [y start] *65536 + [y size]
352
    mov  ecx,45*65536+8            ; [y start] *65536 + [y size]
373
    dec  edx
353
    dec  edx
374
    int  0x40
354
    mcall
375
    mov  eax,8                     ; function 8 : define and draw button
355
    mov  bx,22                     ; [x start] *65536 + [x size]
376
    mov  bx,22                     ; [x start] *65536 + [x size]
-
 
377
    mov  ecx,55*65536+8            ; [y start] *65536 + [y size]
356
    mov  ecx,55*65536+8            ; [y start] *65536 + [y size]
378
    dec  edx
357
    dec  edx
379
    int  0x40
358
    mcall
380
    mov  eax,8                     ; function 8 : define and draw button
359
    mov  bx,22                     ; [x start] *65536 + [x size]
381
    mov  bx,22                     ; [x start] *65536 + [x size]
-
 
382
    mov  ecx,65*65536+8            ; [y start] *65536 + [y size]
360
    mov  ecx,65*65536+8            ; [y start] *65536 + [y size]
383
    dec  edx
361
    dec  edx
384
    int  0x40
362
    mcall
385
    mov  eax,8                     ; function 8 : define and draw button
363
    mov  bx,22                     ; [x start] *65536 + [x size]
386
    mov  bx,22                     ; [x start] *65536 + [x size]
-
 
387
    mov  ecx,75*65536+8            ; [y start] *65536 + [y size]
364
    mov  ecx,75*65536+8            ; [y start] *65536 + [y size]
388
    dec  edx
365
    dec  edx
389
    int  0x40
366
    mcall
390
 
367
 
391
    pop  ebx
368
    pop  ebx
392
    pop  edx
369
    pop  edx
393
 
370
 
394
    add  ebx,30*65536
371
    add  ebx,30*65536
395
    add  edx,10
372
    add  edx,10
396
 
373
 
397
    cmp  edx,16+6*10
374
    cmp  edx,16+6*10
398
    jz   butdone
375
    jz   butdone
399
 
376
 
400
    jmp  newbut
377
    jmp  newbut
401
 
378
 
402
  butdone:
379
  butdone:
403
 
380
 
404
 
381
 
405
    mov  eax,4                     ; function 4 : write text to window
382
    mov  eax,4                     ; function 4 : write text to window
406
    mov  ebx,10*65536+104          ; [x start] *65536 + [y start]
383
    mov  ebx,10*65536+104          ; [x start] *65536 + [y start]
407
    mov  ecx,0x00ffffff            ; color of text RRGGBB
384
    mov  ecx,0x00ffffff            ; color of text RRGGBB
408
    mov  edx,text                  ; pointer to text beginning
385
    mov  edx,text                  ; pointer to text beginning
409
    mov  esi,29
386
    mov  esi,29
410
    int  0x40
387
    mcall
411
 
388
 
412
    mov  eax,8                     ; function 8 : define and draw button
389
    mov  eax,8                     ; function 8 : define and draw button
413
    mov  ebx,(5)*65536+185         ; [x start] *65536 + [x size]
390
    mov  ebx,(5)*65536+185         ; [x start] *65536 + [x size]
414
    mov  ecx,120*65536+14          ; [y start] *65536 + [y size]
391
    mov  ecx,120*65536+14          ; [y start] *65536 + [y size]
415
    mov  edx,101                   ; button id
392
    mov  edx,101                   ; button id
416
    mov  esi,[bcolor]              ; button color RRGGBB
393
    mov  esi,[bcolor]              ; button color RRGGBB
417
    int  0x40
394
    mcall
418
 
395
 
419
    call drawusedcard
396
    call drawusedcard
420
 
397
 
421
    mov  eax,12                    ; function 12:tell os about windowdraw
398
    mov  eax,12                    ; function 12:tell os about windowdraw
422
    mov  ebx,2                     ; 2, end of draw
399
    mov  ebx,2                     ; 2, end of draw
423
    int  0x40
400
    mcall
424
 
401
 
425
    ret
402
    ret
426
 
403
 
427
 
404
 
428
drawusedcard:
405
drawusedcard:
429
 
406
 
430
    pusha
407
    pusha
431
 
408
 
432
    mov  eax,13
409
    mov  eax,13
433
    mov  ebx,14*65536+160
410
    mov  ebx,14*65536+160
434
    mov  ecx,123*65536+10
411
    mov  ecx,123*65536+10
435
    mov  edx,[bcolor]
412
    mov  edx,[bcolor]
436
    int  0x40
413
    mcall
437
 
414
 
438
    mov  eax,[usecard]
415
    mov  eax,[usecard]
439
    mov  edx,c3
416
    mov  edx,c3
440
 
417
 
441
    cmp  al,1
418
    cmp  al,1
442
    jnz  nosbc
419
    jnz  nosbc
443
    mov  edx,c1
420
    mov  edx,c1
444
  nosbc:
421
  nosbc:
445
    cmp  al,2
422
    cmp  al,2
446
    jnz  nosbcII
423
    jnz  nosbcII
447
    mov  edx,c2
424
    mov  edx,c2
448
  nosbcII:
425
  nosbcII:
449
    cmp  al,3
426
    cmp  al,3
450
    jnz  nowssc
427
    jnz  nowssc
451
    mov  edx,c3
428
    mov  edx,c3
452
  nowssc:
429
  nowssc:
453
 
430
 
454
    mov  eax,4
431
    mov  eax,4
455
    mov  ebx,14*65536+123
432
    mov  ebx,14*65536+123
456
    mov  ecx,0x00ffffff
433
    mov  ecx,0x00ffffff
457
    mov  esi,30
434
    mov  esi,30
458
    int  0x40
435
    mcall
459
 
436
 
460
    popa
437
    popa
461
 
438
 
462
    ret
439
    ret
463
 
440
 
464
 
441
 
465
 
442
 
466
; DATA AREA
443
; DATA AREA
467
 
444
 
468
bcolor  dd  0x5577c8
445
bcolor  dd  0x5577c8
469
 
446
 
470
wcolor  dd  0x03000000
447
wcolor  dd  0x13000000
471
 
448
 
472
 
449
 
473
text:
450
text:
474
    db 'MAIN  CD  WAVE MPU4 AUX1 AUX2'
451
    db 'MAIN  CD  WAVE MPU4 AUX1 AUX2'
475
 
452
 
476
c1  db 'SOUND BLASTER 16 - MIXER I    '
453
c1  db 'SOUND BLASTER 16 - MIXER I    '
477
c2  db 'SOUND BLASTER 16 - MIXER II   '
454
c2  db 'SOUND BLASTER 16 - MIXER II   '
478
c3  db 'WINDOWS SOUND SYSTEM          '
455
c3  db 'WINDOWS SOUND SYSTEM          '
479
 
456
 
480
 
457
 
481
usecard dd 0x1
458
usecard dd 0x1
482
 
459
 
483
labelt:
-
 
484
    db   'MIXER'
460
title    db   'MIXER',0
485
labellen:
-
 
486
 
461
 
487
I_END:
462
I_END: