Subversion Repositories Kolibri OS

Rev

Rev 1779 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1779 Rev 2022
Line 1... Line 1...
1
;
1
;
2
;   application     :  3d shaking waved spiral
2
;   application     :  3d shaking waved spiral
3
;   compilator      :  fasm
3
;   compilator      :  fasm
4
;   system          :  MenuetOS
4
;   system          :  KolibriOS
5
;   author          :  macgub
5
;   author          :  macgub
6
;   email           :  macgub3@wp
6
;   email           :  macgub3@wp
Line 7... Line 7...
7
 
7
 
8
timeout equ 3
8
timeout equ 3
9
maxx equ 600        ; window size
9
maxx equ 616	    ; window size
10
maxy equ 420
10
maxy equ 420
Line 11... Line 11...
11
use32
11
use32
Line 46... Line 46...
46
    jmp  still
46
    jmp  still
Line 47... Line 47...
47
 
47
 
48
  key:                          ; key
48
  key:				; key
49
    mov  eax,2                  ; just read it and ignore
49
    mov  eax,2			; just read it and ignore
-
 
50
    int  0x40
-
 
51
    shr  eax,8
50
    int  0x40
52
    cmp  eax, 27
-
 
53
    jne  still
-
 
54
    mov  eax, -1
-
 
55
    int  0x40
Line 51... Line 56...
51
    jmp  still
56
 
52
 
57
 
53
  button:                       ; button
58
  button:			; button
Line 107... Line 112...
107
 jne oopz
112
 jne oopz
Line 108... Line 113...
108
 
113
 
109
 mov eax,7
114
 mov eax,7
110
 mov ebx,screen_buf
115
 mov ebx,screen_buf
111
 mov ecx,maxx*65536+maxy
116
 mov ecx,maxx*65536+maxy
112
 mov edx,20*65536+20
117
 mov edx,0*65536+0
Line 113... Line 118...
113
 int 0x40
118
 int 0x40
114
 
119
 
Line 363... Line 368...
363
    mov  eax,12                    ; function 12:tell os about windowdraw
368
    mov  eax,12 		   ; function 12:tell os about windowdraw
364
    mov  ebx,1                     ; 1, start of draw
369
    mov  ebx,1			   ; 1, start of draw
365
    int  0x40
370
    int  0x40
366
                                   ; DRAW WINDOW
371
								   ; DRAW WINDOW
367
    mov  eax,0                     ; function 0 : define and draw window
372
    mov  eax,0			   		   ; function 0 : define and draw window
368
    mov  ebx,100*65536+maxx+25         ; [x start] *65536 + [x size]
373
    mov  ebx,100*65536+maxx+9	   ; [x start] *65536 + [x size]
369
    mov  ecx,100*65536+maxy+25         ; [y start] *65536 + [y size]
374
    mov  ecx,100*65536+maxy+25	   ; [y start] *65536 + [y size]
370
    mov  edx,0x02000000            ; color of work area RRGGBB,8->color gl
375
    mov  edx,0x74000000 	  	   ; color of work area RRGGBB,8->color gl
371
    mov  esi,0x805080d0            ; color of grab bar  RRGGBB,8->color gl
-
 
372
    mov  edi,0x005080d0            ; color of frames    RRGGBB
376
    mov  edi,labelt
373
    int  0x40
377
    int  0x40
374
                                   ; WINDOW LABEL
378
				   ; WINDOW LABEL
375
    mov  eax,4                     ; function 4 : write text to window
-
 
376
    mov  ebx,8*65536+8             ; [x start] *65536 + [y start]
-
 
377
    mov  ecx,0x10ddeeff            ; font 1 & color ( 0xF0RRGGBB )
-
 
378
    mov  edx,labelt                ; pointer to text beginning
-
 
379
    mov  esi,labellen-labelt       ; text length
-
 
380
    int  0x40
-
 
381
                                   ; CLOSE BUTTON
-
 
382
    mov  eax,8                     ; function 8 : define and draw button
-
 
383
    mov  ebx,(maxx+25-19)*65536+12 ; [x start] *65536 + [x size]
-
 
384
    mov  ecx,5*65536+12            ; [y start] *65536 + [y size]
-
 
385
    mov  edx,1                     ; button id
-
 
386
    mov  esi,0x6688dd              ; button color RRGGBB
-
 
387
    int  0x40
-
 
388
 
-
 
389
    mov  eax,12                    ; function 12:tell os about windowdraw
379
    mov  eax,12 		   ; function 12:tell os about windowdraw
390
    mov  ebx,2                     ; 2, end of draw
380
    mov  ebx,2			   ; 2, end of draw
391
    int  0x40
381
    int  0x40
Line 392... Line 382...
392
 
382
 
Line 434... Line 424...
434
b dd 20            ; horizontal half-axle
424
b dd 20 	   ; horizontal half-axle
435
loop_counter dd 141 ; axle granularity
425
loop_counter dd 141 ; axle granularity
436
col dd 0x00ffffff
426
col dd 0x00ffffff
Line 437... Line 427...
437
 
427
 
438
labelt:
428
labelt:
439
     db   ' 3D SHAKING WAVED SPIRAL'
429
     db   ' 3D shaking waved spiral',0
440
labellen:
430
labellen:
Line 441... Line 431...
441
screen_buf:
431
screen_buf: