forked from KolibriOS/kolibrios
Small fixes for sched.inc & sys32.inc
Less code, same work. Updated memmap.inc git-svn-id: svn://kolibrios.org@10 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
parent
c57ff1bc79
commit
cda72a8906
@ -40,7 +40,6 @@ irq0:
|
||||
|
||||
mov ebx,[0x3000]
|
||||
|
||||
xor esi,esi ;esi - should we change task?
|
||||
cmp [0xffff], byte 1
|
||||
je .do_not_change_task
|
||||
|
||||
@ -66,20 +65,11 @@ irq0:
|
||||
mov [0x3000],ebx
|
||||
mov [0x3010],edi
|
||||
|
||||
jmp @f
|
||||
.do_not_change_task:
|
||||
inc esi ;set don't change task flag
|
||||
@@:
|
||||
|
||||
call _rdtsc
|
||||
mov [edi+0x18],eax
|
||||
|
||||
cmp [0xffff],byte 0
|
||||
je @f
|
||||
dec byte [0xffff]
|
||||
@@:
|
||||
|
||||
|
||||
shl ebx, 3
|
||||
xor eax, eax
|
||||
add ebx, tss0
|
||||
@ -90,14 +80,15 @@ irq0:
|
||||
mov dx,0x20
|
||||
out dx,al
|
||||
|
||||
test esi,esi ; skip jmp to TSS if we aren't going to switch tasks
|
||||
jnz @f
|
||||
|
||||
.switch:
|
||||
inc [context_counter] ;noname & halyavin
|
||||
cmp [0xffff],byte 0
|
||||
je .switch
|
||||
dec byte [0xffff]
|
||||
jmp @f
|
||||
.switch:
|
||||
jmp pword [0xB000]
|
||||
|
||||
inc [context_counter] ;noname & halyavin
|
||||
@@:
|
||||
|
||||
pop es ds
|
||||
popad
|
||||
iret
|
||||
|
@ -282,12 +282,15 @@ show_error_parameters:
|
||||
mov eax,[0x3000]
|
||||
shl eax,8
|
||||
cmp [0x80000+eax+0xB0],byte 0
|
||||
jnz .system_error
|
||||
|
||||
jz @f
|
||||
mov esi,system_error
|
||||
call sys_msg_board_str
|
||||
@@:
|
||||
|
||||
mov eax,[0x3000]
|
||||
imul eax,tss_step
|
||||
mov eax,[eax+tss_data+l.eip-tss_sceleton]
|
||||
.out_eip:
|
||||
|
||||
mov [write_error_to],process_eip+43
|
||||
call writehex
|
||||
|
||||
@ -301,22 +304,13 @@ show_error_parameters:
|
||||
call sys_msg_board_str
|
||||
|
||||
ret
|
||||
|
||||
.system_error:
|
||||
mov esi,system_error
|
||||
call sys_msg_board_str
|
||||
mov eax,[0x3000]
|
||||
shl eax,7
|
||||
mov eax,[eax+0x298000+l.eip-tss_sceleton]
|
||||
jmp .out_eip
|
||||
|
||||
|
||||
|
||||
|
||||
; irq1 -> hid/keyboard.inc
|
||||
|
||||
|
||||
macro irqhh [num]
|
||||
macro irqh [num]
|
||||
{
|
||||
forward
|
||||
p_irq#num :
|
||||
@ -325,7 +319,7 @@ macro irqhh [num]
|
||||
jmp irq_c
|
||||
}
|
||||
|
||||
irqhh 2,3,4,5,6,7,8,9,10,11,12,14,15
|
||||
irqh 2,3,4,5,6,7,8,9,10,11,12,14,15
|
||||
|
||||
irq_c:
|
||||
push ds es
|
||||
@ -359,7 +353,6 @@ irqD:
|
||||
iret
|
||||
|
||||
|
||||
|
||||
irqhandler:
|
||||
|
||||
push edi
|
||||
|
@ -193,7 +193,7 @@
|
||||
; 600000 -> 6FFFFF hd cache
|
||||
;
|
||||
; 700000 -> 71ffff tcp memory (128 kb)
|
||||
; 720000 -> 75ffff interrupt stacks (256 kpl * 1024)
|
||||
; 720000 -> 75ffff free (256 kb)
|
||||
;
|
||||
; 760000 -> 76ffff !vrr driver
|
||||
; 770000 -> 777fff tcp memory ( 32 kb)
|
||||
|
Loading…
Reference in New Issue
Block a user