Rev 1599 | Rev 1678 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 1599 | Rev 1664 | ||
---|---|---|---|
Line 56... | Line 56... | ||
56 | ;; |
56 | ;; |
57 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
57 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
Line 58... | Line 58... | ||
58 | 58 | ||
Line 59... | Line 59... | ||
59 | include 'macros.inc' |
59 | include 'macros.inc' |
Line 60... | Line 60... | ||
60 | 60 | ||
Line 61... | Line 61... | ||
61 | $Revision: 1599 $ |
61 | $Revision: 1664 $ |
Line 1024... | Line 1024... | ||
1024 | call checkmisc |
1024 | call checkmisc |
1025 | ; call checkVga_N13 |
1025 | ; call checkVga_N13 |
1026 | call stack_handler |
1026 | call stack_handler |
1027 | call checkidle |
1027 | call checkidle |
1028 | call check_fdd_motor_status |
1028 | call check_fdd_motor_status |
1029 | call check_ATAPI_device_event |
1029 | ; call check_ATAPI_device_event |
1030 | jmp osloop |
1030 | jmp osloop |
1031 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
1031 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
1032 | ; ; |
1032 | ; ; |
1033 | ; MAIN OS LOOP END ; |
1033 | ; MAIN OS LOOP END ; |
1034 | ; ; |
1034 | ; ; |
Line 4345... | Line 4345... | ||
4345 | mov [esp + 32], eax |
4345 | mov [esp + 32], eax |
4346 | ret |
4346 | ret |
Line 4347... | Line 4347... | ||
4347 | 4347 | ||
Line 4348... | Line -... | ||
4348 | align 4 |
- | |
4349 | - | ||
4350 | syscall_cdaudio: ; CD |
- | |
4351 | - | ||
4352 | cmp ebx, 4 |
- | |
4353 | jb .audio |
- | |
4354 | jz .eject |
- | |
4355 | cmp ebx, 5 |
- | |
4356 | jnz .ret |
- | |
4357 | .load: |
- | |
4358 | call .reserve |
- | |
4359 | call LoadMedium |
- | |
4360 | ;call .free |
- | |
4361 | jmp .free |
- | |
4362 | ; ret |
- | |
4363 | .eject: |
- | |
4364 | call .reserve |
- | |
4365 | call clear_CD_cache |
- | |
4366 | call allow_medium_removal |
- | |
4367 | call EjectMedium |
- | |
4368 | ; call .free |
- | |
4369 | jmp .free |
- | |
4370 | ; ret |
- | |
4371 | .audio: |
- | |
4372 | call sys_cd_audio |
- | |
4373 | mov [esp+36-4],eax |
- | |
4374 | .ret: |
- | |
4375 | ret |
- | |
4376 | - | ||
4377 | .reserve: |
- | |
4378 | call reserve_cd |
- | |
4379 | mov eax, ecx |
- | |
4380 | shr eax, 1 |
- | |
4381 | and eax, 1 |
- | |
4382 | inc eax |
- | |
4383 | mov [ChannelNumber], ax |
- | |
4384 | mov eax, ecx |
- | |
4385 | and eax, 1 |
- | |
4386 | mov [DiskNumber], al |
- | |
4387 | call reserve_cd_channel |
- | |
4388 | and ebx, 3 |
- | |
4389 | inc ebx |
- | |
4390 | mov [cdpos], ebx |
- | |
4391 | add ebx, ebx |
- | |
4392 | mov cl, 8 |
- | |
4393 | sub cl, bl |
- | |
4394 | mov al, [DRIVE_DATA+1] |
- | |
4395 | shr al, cl |
- | |
4396 | test al, 2 |
- | |
4397 | jz .free;.err |
- | |
4398 | ret |
- | |
4399 | .free: |
- | |
4400 | call free_cd_channel |
- | |
4401 | and [cd_status], 0 |
- | |
4402 | ret |
- | |
4403 | .err: |
- | |
4404 | call .free |
- | |
Line 4405... | Line 4348... | ||
4405 | ; pop eax |
4348 | align 4 |
Line 4406... | Line 4349... | ||
4406 | ret |
4349 | |
4407 | 4350 | ||
Line 4732... | Line 4675... | ||
4732 | cmp byte [BOOT_VAR+0x9030], 1 |
4675 | cmp byte [BOOT_VAR+0x9030], 1 |
4733 | jne @F |
4676 | jne @F |
4734 | ret |
4677 | ret |
4735 | @@: |
4678 | @@: |
4736 | call stop_all_services |
4679 | call stop_all_services |
4737 | push 3 ; stop playing cd |
- | |
4738 | pop eax |
- | |
4739 | call sys_cd_audio |
- | |
Line 4740... | Line 4680... | ||
4740 | 4680 | ||
4741 | yes_shutdown_param: |
4681 | yes_shutdown_param: |
Line 4742... | Line 4682... | ||
4742 | cli |
4682 | cli |