1) changed version of a kernel - 0581
2) menu now uses the function 70
These changes will be in Kolibri 0581 (or beta2)

git-svn-id: svn://kolibrios.org@97 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
Marat Zakiyanov (Mario79) 2006-07-10 20:26:50 +00:00
parent 0727181583
commit 400f8f145d
3 changed files with 113 additions and 122 deletions

View File

@ -73,7 +73,7 @@ drawbar dd __sys_drawbar
putpixel dd __sys_putpixel
; } mike.dld
version db 'Kolibri OS version 0.5.3.1 ',13,10,13,10,0
version db 'Kolibri OS version 0.5.8.1 ',13,10,13,10,0
;dd endofcode-0x10000
;db 'Boot02'
@ -2324,7 +2324,7 @@ endg
iglobal
version_inf:
db 0,5,3,1 ; version 0.5.3.1
db 0,5,8,1 ; version 0.5.8.1
db UID_KOLIBRI
db 'Kolibri',0
version_end:

View File

@ -29,11 +29,14 @@ START: ; start of execution
mov edx, sizeof.system_colors
int 0x40
mov eax, 58 ; load MENU.DAT
mov eax, 70 ; load MENU.DAT
mov ebx, fileinfo
int 0x40
test eax, eax ; error ?
jz @f
cmp eax,6
jnz close
@@:
test ebx, ebx ; length = 0 ?
jz close
mov ecx, ebx
@ -233,26 +236,11 @@ still:
mov edi, fileinfo_start.name
rep movsb ; copy string
mov byte [edi], 0 ; store terminator
; mov eax,fileinfo_start.name
; cmp eax,'/rd/'
; jne run_hd
; mov ebx,fileinfo_start.name+6
; mov eax,19
; xor ecx,ecx
; jmp run_for_all
;run_hd:
mov eax, 58 ; start program
mov eax, 70 ; start program
mov ebx, fileinfo_start
;run_for_all:
int 0x40
mcall 5,100
; mov eax,5
; mov ebx,100
; int 0x40
; mcall 5,100
or [close_now], 1 ; set close flag
pop edi
mov [mousemask], 0
jmp close
@ -310,7 +298,7 @@ still:
cmp [thread_stack], 0x1e000
jne thread_stack_not_full
mov [thread_stack], 0xc000
mov [thread_stack], 0xE000
thread_stack_not_full:
add [thread_stack], 0x2000 ; start new thread
@ -530,24 +518,24 @@ draw_window:
;*** DATA AREA ****************************************************************
thread_stack dd 0xc000
thread_stack dd 0xE000
processes dd 0
fileinfo:
.mode dd 0 ; 0=READ
.start_block dd 0x0 ; 512 block to read 0+
.size dd (0x10000-mem_end)/512 ;0x80; blocks to read (0x10000 bytes max)
.subfunction dd 0 ; 0=READ
.start dd 0 ; start byte
.size_high dd 0 ; rezerved
.size dd 0x10000-mem_end ; blocks to read
.return dd mem_end ; return data pointer
.work dd workarea ; work area for os - 16384 bytes
.name:
db '/RD/1/MENU.DAT',0 ; ASCIIZ dir & filename
fileinfo_start:
.mode dd 16 ; 16=START APPLICATION
.start_block dd 0x0 ; nop
.size dd 0x0 ; nop
.return dd 0x0 ; nop
.work dd workarea ; work area for os - 16384 bytes
.subfunction dd 7 ; 7=START APPLICATION
.flags dd 0 ; flags
.params dd 0x0 ; nop
.rezerved dd 0x0 ; nop
.rezerved_1 dd 0x0 ; nop
.name:
times 50 db ' '
@ -563,9 +551,6 @@ sc system_colors
menu_data:
rb 0x4000 ;x10000
workarea:
rb 0x4000 ;0x10000
virtual at 0 ; PROCESSES TABLE (located at menu_data)
pointer dd ? ; +0 pointer in file
rows db ? ; +4 numer of strings

View File

@ -0,0 +1,6 @@
Changes:
11.07.06 - Mario79, application used function 70.
Earlier changes were made:
Ivan Poddubny, Mario79 and Halyavin