reverted previous revision because it destroyed sysfn 68.1

git-svn-id: svn://kolibrios.org@1272 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
Evgeny Grechnikov (Diamond) 2009-11-15 11:15:02 +00:00
parent d97477fba6
commit 7d889b7ff0

View File

@ -1,6 +1,6 @@
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; ;;
;; Copyright (C) KolibriOS team 2004-2009. All rights reserved. ;; Copyright (C) KolibriOS team 2004-2008. All rights reserved.
;; PROGRAMMING: ;; PROGRAMMING:
;; Ivan Poddubny ;; Ivan Poddubny
;; Marat Zakiyanov (Mario79) ;; Marat Zakiyanov (Mario79)
@ -18,7 +18,6 @@
;; Johnny_B ;; Johnny_B
;; SPraid (simba) ;; SPraid (simba)
;; Hidnplayr ;; Hidnplayr
;; Alexey Teplov (<Lrz>)
;; ;;
;; Data in this file was originally part of MenuetOS project which is ;; Data in this file was originally part of MenuetOS project which is
;; distributed under the terms of GNU GPL. It is modified and redistributed as ;; distributed under the terms of GNU GPL. It is modified and redistributed as
@ -3381,40 +3380,26 @@ endg
;3 - rdmsr. Counter in edx. (edx:eax) [esi:edi, edx] => [edx:esi, ecx]. Ret in ebx:eax. Block. ok. ;3 - rdmsr. Counter in edx. (edx:eax) [esi:edi, edx] => [edx:esi, ecx]. Ret in ebx:eax. Block. ok.
;4 - wrmsr. Counter in edx. (edx:eax) [esi:edi, edx] => [edx:esi, ecx]. Ret in ebx:eax. Block. ok. ;4 - wrmsr. Counter in edx. (edx:eax) [esi:edi, edx] => [edx:esi, ecx]. Ret in ebx:eax. Block. ok.
;--------------------------------------------------------------------------------------------- ;---------------------------------------------------------------------------------------------
sys_sheduler: sys_sheduler: ;noname & halyavin
;rewroterd by <Lrz> 15.11.2009 cmp eax,0
test eax,eax je shed_counter
jz shed_counter ;eax=0 cmp eax,2
dec eax je perf_control
jz not_supported ;eax=1 cmp eax,3
dec eax je rdmsr_instr
jz perf_control ;eax=2 cmp eax,4
dec eax je wrmsr_instr
jz rdmsr_instr ;eax=3 cmp eax,1
dec eax jne not_supported
jz wrmsr_instr ;eax=4 call change_task ;delay,0
; old sys_sheduler ;noname & halyavin
; cmp eax,0
; je shed_counter
; cmp eax,2
; je perf_control
; cmp eax,3
; je rdmsr_instr
; cmp eax,4
; je wrmsr_instr
; cmp eax,1
; jne not_supported
; call change_task ;delay,0
not_supported:
ret ret
shed_counter: shed_counter:
mov eax,[context_counter] mov eax,[context_counter]
mov [esp+36],eax mov [esp+36],eax
;not_supported: not_supported:
ret ret
perf_control: perf_control:
; inc eax ;now eax=3 inc eax ;now eax=3
add eax,3 ;
cmp ebx,eax cmp ebx,eax
je cache_disable je cache_disable
dec eax dec eax