5,15 → 5,21 |
; MenuetOS system.inc by VT |
|
file_info_open: dd 0,0,0xffffff,0x20000,0xf0000 |
fullpath_open:; db '/HD/1/EXAMPLE.ASM' |
fullpath_open: ; db '/RD/1/EXAMPLE.ASM' |
times MAX_PATH db 0 |
|
|
file_info_write: dd 1,0,0,0,0xf0000 |
fullpath_write:; db '/HD/1/EXAMPLE' |
fullpath_write:; db '/RD/1/EXAMPLE' |
times MAX_PATH db 0 |
|
file_info_start: dd 16,0,0,0,0xf0000 |
fullpath_start:; db '/HD/1/EXAMPLE' |
file_info_start: ;this part is already rewrited to 70th function |
dd 7 |
dd 0 |
dd 0 |
dd 0 |
dd 0 |
fullpath_start: ; db '/RD/1/EXAMPLE' |
times MAX_PATH db 0 |
|
_ramdisk db '/RD/1/' |
212,9 → 218,11 |
jnz dc1 |
and [textxy],0x0000FFFF |
add [textxy],OUTPUTXY and 0xFFFF0000 + 10 |
dc2: popa |
dc2: |
popa |
ret |
dc1: mov eax,[textxy] |
dc1: |
mov eax,[textxy] |
cmp ax,word[bottom_right] |
ja dc2 |
shr eax,16 |
225,7 → 233,8 |
add [textxy],0x00060000 |
popa |
ret |
@@: mov eax,63 |
@@: |
mov eax,63 |
mov ebx,1 |
mov cl,dl |
int 0x40 |
233,16 → 242,17 |
ret |
|
|
|
display_string: |
pusha |
@@: cmp byte[esi],0 |
@@: |
cmp byte[esi],0 |
je @f |
mov dl,[esi] |
call display_character |
add esi,1 |
jmp @b |
@@: popa |
@@: |
popa |
ret |
|
display_number: |
416,33 → 426,7 |
call display_string |
jmp exit_program |
|
__draw_caption: |
; mcall 48,4 |
; mov [skinh],eax |
; mov ebx,eax |
; shr ebx,1 |
; adc ebx,1+0x000A0000-4 |
; mcall 4,,[sc.grab_text],s_title,[s_title.size] |
|
mcall 48,4 |
mov [skinh],eax |
shr eax,1 |
adc eax,0 |
add eax,1-4 |
push ax |
if center eq true |
mcall 9,PROCESSINFO,-1 |
mov ebx,[PROCESSINFO+process_information.x_size] |
shr ebx,1 |
sub ebx,header.size*6/2 + 8 |
else |
mov ebx,8 |
end if |
shl ebx,16 |
pop bx |
mcall 4,,[SYSTEMCOLORS+system_colors.grab_text] |
ret |
|
character db ?,0 |
bytes_count dd ? |
|