Screensaver optimization

git-svn-id: svn://kolibrios.org@5888 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
pathoswithin 2015-11-06 16:26:35 +00:00
parent 8b4cd9218d
commit 6dfe65cba8

View File

@ -172,7 +172,7 @@ asminit1:
;-------------------------------------- ;--------------------------------------
align 4 align 4
newpage: newpage:
mov word [stringpos],10 mov [stringpos],16
;-------------------------------------- ;--------------------------------------
align 4 align 4
drawsswin: drawsswin:
@ -235,7 +235,7 @@ drawssasm:
;-------------------------------------- ;--------------------------------------
align 4 align 4
addstring: addstring:
add word [stringpos],10 add [stringpos],16
add edi,2 add edi,2
mov [stringstart],edi mov [stringstart],edi
mov dword [stringlen],1 mov dword [stringlen],1
@ -246,9 +246,13 @@ addstring:
;-------------------------------------- ;--------------------------------------
align 4 align 4
noaddstring: noaddstring:
mov ebx,10*65536 mov ebx,[stringlen]
shl ebx,19
mov bx,[stringpos] mov bx,[stringpos]
mcall 4,,0x104ba010,[stringstart],[stringlen] mov edx,[stringstart]
add edx,[stringlen]
dec edx
mcall 4,,0x104ba010,,1
inc dword [stringlen] inc dword [stringlen]
cmp [edi],byte ' ' cmp [edi],byte ' '
je drawssasm je drawssasm
@ -556,34 +560,22 @@ setf:
mcall 4,<153,47>,,,1 mcall 4,<153,47>,,,1
ret ret
;------------------------------------------------------------------------------ ;------------------------------------------------------------------------------
align 4 align 4 ; DATA AREA
; DATA AREA
buttext db 'SHOW',0
flag db 'V '
title db 'SCREENSAVER SETUP',0
setuptext db 'TYPE: < >',0
db 'TIME: < > MINUTES NEVER',0
typetext db 'BLACK SCREENCOLOR LINES ASSEMBLER '
type dd 12 type dd 12
time db 15 ; ¢à¥¬ï ¤® § ¯ã᪠ § áâ ¢ª¨ ¢ ¬¨­ãâ å
delay dd 100 delay dd 100
lx1 dd 10 lx1 dd 10
lx2 dd 40 lx2 dd 40
ly1 dd 50 ly1 dd 50
ly2 dd 100 ly2 dd 100
addx1 dd 1 addx1 dd 1
addx2 dd 1 addx2 dd 1
addy1 dd 1 addy1 dd 1
addy2 dd 1 addy2 dd 1
stringlen dd 1 stringlen dd 1
stringstart dd 0 stringstart dd 0
stringpos dw 10
stringpos dw 16
time db 15 ; ¢à¥¬ï ¤® § ¯ã᪠ § áâ ¢ª¨ ¢ ¬¨­ãâ å
params db 0 ;if bit 0 set-ssaver works if bit 1 set-setup works params db 0 ;if bit 0 set-ssaver works if bit 1 set-setup works
fileinfo: fileinfo:
@ -593,32 +585,28 @@ fileinfo:
.size: dd 0 .size: dd 0
.point: dd 0 .point: dd 0
db '/sys/macros.inc',0 db '/sys/macros.inc',0
;------------------------------------------------------------------------------
align 4
IM_END:
; UNINITIALIZED DATA:
buttext db 'SHOW',0
flag db 'V '
title db 'SCREENSAVER SETUP',0
setuptext db 'TYPE: < >',0
db 'TIME: < > MINUTES NEVER',0
typetext db 'BLACK SCREENCOLOR LINES ASSEMBLER '
;-------------------------------
IM_END: ; UNINITIALIZED DATA
top_right_corner rd 1
align 4
lcolor dd ? lcolor dd ?
x_max dw ? ; à §¬¥àë íªà ­  x_max dw ? ; à §¬¥àë íªà ­ 
y_max dw ? y_max dw ?
top_right_corner rd 1
;------------------------------------------------------------------------------
align 4
I_Param: I_Param:
fileinfo_buffer: fileinfo_buffer:
rb 40 rb 40
;------------------------------------------------------------------------------ ;-------------------------------
align 4
rb 512 rb 512
sthread_stack_top: sthread_stack_top:
;------------------------------------------------------------------------------
align 4
rb 512 rb 512
thread_stack_top: thread_stack_top:
;------------------------------------------------------------------------------
align 4
rb 512 rb 512
stack_top: stack_top:
I_END: I_END:
;------------------------------------------------------------------------------