Rev 651 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 651 | Rev 1092 | ||
---|---|---|---|
Line 5... | Line 5... | ||
5 | org 0x0 |
5 | org 0x0 |
6 | db 'MENUET01' ; 8 byte id |
6 | db 'MENUET01' ; 8 byte id |
7 | dd 0x01 ; version |
7 | dd 0x01 ; version |
8 | dd START ; program start |
8 | dd START ; program start |
9 | dd I_END ; image size |
9 | dd I_END ; image size |
10 | dd 0x80000 ; reguired amount of memory |
10 | dd mem ; reguired amount of memory |
11 | dd 0x80000 ; stack pointer |
11 | dd mem ; stack pointer |
12 | dd I_Param,0 |
12 | dd I_Param,0 |
Line 13... | Line 13... | ||
13 | 13 | ||
14 | include 'lang.inc' |
14 | include 'lang.inc' |
15 | include '..\..\..\macros.inc' |
15 | include '..\..\..\macros.inc' |
Line 112... | Line 112... | ||
112 | mov ecx,256 |
112 | mov ecx,256 |
113 | mov edx,256 |
113 | mov edx,256 |
114 | mcall |
114 | mcall |
Line 115... | Line 115... | ||
115 | 115 | ||
116 | mov ebx,5 |
116 | mov ebx,5 |
117 | mov ecx,0x40000 ; <<< 0x40000 for blue, 0x40000+1 for red, |
117 | mov ecx,image + 0 ; <<< +0 for blue, +1 for red, |
118 | ; <<< 0x40000+2 for green background at boot |
118 | ; <<< +2 for green background at boot |
119 | mov edx,0 |
119 | mov edx,0 |
120 | mov esi,256*3*256 |
120 | mov esi,256*3*256 |
Line 121... | Line 121... | ||
121 | mcall |
121 | mcall |
Line 129... | Line 129... | ||
129 | 129 | ||
130 | mov eax,-1 |
130 | mov eax,-1 |
Line 131... | Line -... | ||
131 | mcall |
- | |
132 | - | ||
133 | - | ||
134 | - | ||
135 | set_picture: |
- | |
136 | - | ||
137 | mov eax,image+99-3*16 |
- | |
138 | mov ebx,0x40000+255*3+255*3*256 |
- | |
139 | newpix: |
- | |
140 | mov ecx,[eax] |
- | |
141 | mov [ebx],cx |
- | |
142 | shr ecx,16 |
- | |
143 | mov [ebx+2],cl |
- | |
144 | add eax,3 |
- | |
145 | sub ebx,3 |
- | |
146 | cmp ebx,0x40002 |
- | |
147 | jge newpix |
- | |
148 | - | ||
149 | ret |
- | |
150 | - | ||
151 | - | ||
152 | load_texture: |
- | |
153 | - | ||
154 | call gentexture |
- | |
155 | call set_picture |
- | |
156 | - | ||
157 | ret |
131 | mcall |
Line 158... | Line 132... | ||
158 | 132 | ||
Line 159... | Line 133... | ||
159 | 133 | ||
Line 231... | Line 205... | ||
231 | ; * component for every pixel is evaluated * |
205 | ; * component for every pixel is evaluated * |
232 | ; * according to the squared distance from * |
206 | ; * according to the squared distance from * |
233 | ; * the closest point in 'ptarray'. * |
207 | ; * the closest point in 'ptarray'. * |
234 | ; ********************************************* |
208 | ; ********************************************* |
Line -... | Line 209... | ||
- | 209 | ||
235 | 210 | load_texture: |
|
Line 236... | Line 211... | ||
236 | gentexture: |
211 | gentexture: |
237 | 212 | ||
Line 276... | Line 251... | ||
276 | 251 | ||
277 | mov edi,24 ; 50 = max shaded distance |
252 | mov edi,24 ; 50 = max shaded distance |
Line 278... | Line 253... | ||
278 | idiv edi |
253 | idiv edi |
279 | 254 | ||
280 | pop edi |
255 | pop edi |
Line 281... | Line 256... | ||
281 | mov [image+51+edi],eax |
256 | mov [image+edi],eax |
282 | add edi,3 |
257 | add edi,3 |
283 | 258 | ||
Line 309... | Line 284... | ||
309 | 284 | ||
Line 310... | Line 285... | ||
310 | 285 | ||
311 | draw_image: |
286 | draw_image: |
312 | 287 | ||
313 | mov eax,7 |
288 | mov eax,7 |
314 | mov ebx,0x40000 |
289 | mov ebx,image |
Line 315... | Line 290... | ||
315 | mov ecx,256*65536+255 |
290 | mov ecx,256*65536+255 |
Line 528... | Line 503... | ||
528 | arrays dd ptarray,ptarray2,ptarray3,ptarray4,ptarray5,ptarray6 |
503 | arrays dd ptarray,ptarray2,ptarray3,ptarray4,ptarray5,ptarray6 |
529 | dd ptarray7,ptarray8,ptarray9 |
504 | dd ptarray7,ptarray8,ptarray9 |
Line 530... | Line 505... | ||
530 | 505 | ||
Line 531... | Line 506... | ||
531 | ptarray: |
506 | ptarray: |
532 | 507 | ||
533 | dd 150,50 |
508 | dd 105,205 |
534 | dd 120,30 |
509 | dd 135,225 |
535 | dd 44,180 |
510 | dd 211,75 |
536 | dd 50,66 |
511 | dd 205,189 |
537 | dd 27,6 |
512 | dd 228,249 |
538 | dd 95,212 |
513 | dd 160,43 |
539 | dd 128,177 |
514 | dd 127,78 |
540 | dd 201,212 |
515 | dd 54,43 |
541 | dd 172,201 |
516 | dd 83,54 |
542 | dd 250,100 |
517 | dd 5,155 |
543 | dd 24,221 |
518 | dd 231,34 |
544 | dd 11,123 |
519 | dd 244,132 |
545 | dd 248,32 |
520 | dd 7,223 |
Line 546... | Line 521... | ||
546 | dd 34,21 |
521 | dd 221,224 |
Line 547... | Line 522... | ||
547 | dd 777 ; <- end of array |
522 | dd 777 ; <- end of array |
548 | 523 | ||
549 | ptarray2: |
524 | ptarray2: |
Line 550... | Line 525... | ||
550 | 525 | ||
Line 551... | Line 526... | ||
551 | dd 0,0,50,50,100,100,150,150,200,200,250,250 |
526 | dd 255,255,205,205,155,155,105,105,55,55,5,5 |
552 | dd 50,150,150,50,200,100,100,200 |
527 | dd 205,105,105,205,55,155,155,55 |
553 | dd 777 |
528 | dd 777 |
Line 554... | Line 529... | ||
554 | 529 | ||
Line 555... | Line 530... | ||
555 | ptarray3: |
530 | ptarray3: |
556 | 531 | ||
557 | dd 55,150,150,55,200,105,105,200 |
532 | dd 200,105,105,200,55,150,150,55 |
Line 558... | Line 533... | ||
558 | dd 30,30,220,220 |
533 | dd 225,225,35,35 |
Line 559... | Line 534... | ||
559 | dd 777 |
534 | dd 777 |
560 | 535 | ||
561 | ptarray4: |
536 | ptarray4: |
Line 562... | Line 537... | ||
562 | 537 | ||
Line 563... | Line 538... | ||
563 | dd 196,0,196,64,196,128,196,196 |
538 | dd 59,255,59,191,59,127,59,59 |
564 | dd 64,32,64,96,64,150,64,228 |
539 | dd 191,223,191,159,191,105,191,27 |
565 | dd 777 |
540 | dd 777 |
Line 566... | Line 541... | ||
566 | 541 | ||
Line 567... | Line 542... | ||
567 | ptarray5: |
542 | ptarray5: |
Line 568... | Line 543... | ||
568 | 543 | ||
569 | dd 196,0,196,64,196,128,196,196 |
544 | dd 59,255,59,191,59,127,59,59 |
570 | dd 64,0,64,64,64,128,64,196 |
545 | dd 191,255,191,191,191,127,191,59 |
571 | dd 777 |
546 | dd 777 |
572 | 547 | ||
573 | ptarray6: |
548 | ptarray6: |
574 | 549 | ||
Line 575... | Line 550... | ||
575 | dd 49,49,128,50,210,50 |
550 | dd 206,206,127,205,45,205 |
Line 576... | Line 551... | ||
576 | dd 50,128,128,128,210,128 |
551 | dd 205,127,127,127,45,127 |
Line 577... | Line 552... | ||
577 | dd 50,210,128,210,210,210 |
552 | dd 205,45,127,45,45,45 |
578 | 553 | ||
579 | dd 777 |
554 | dd 777 |
580 | 555 | ||
581 | ptarray7: |
556 | ptarray7: |
582 | 557 | ||
583 | dd 0,0 |
558 | dd 255,255 |
584 | dd 196,196,64,64 |
559 | dd 59,59,191,191 |
585 | dd 128,0 |
560 | dd 127,255 |
586 | dd 0,128 |
561 | dd 255,127 |
Line 587... | Line 562... | ||
587 | dd 64,64,196,64 |
562 | dd 191,191,59,191 |
Line 588... | Line 563... | ||
588 | dd 196,196,64,196 |
563 | dd 59,59,191,59 |
Line 589... | Line 564... | ||
589 | dd 128,128 |
564 | dd 127,127 |
Line 590... | Line 565... | ||
590 | 565 | ||
591 | dd 777 |
566 | dd 777 |
Line 592... | Line 567... | ||
592 | 567 | ||
Line 593... | Line 568... | ||
593 | ptarray8: |
568 | ptarray8: |
- | 569 | ||
Line -... | Line 570... | ||
- | 570 | dd 255, 127 |
|
- | 571 | dd 255, 127 |
|
- | 572 | dd 127, 255 |