94,12 → 94,15 |
pushad |
mov edi,dword[buf_struc] |
mov ecx,buf2d_w |
cmp ecx,1 |
jl .end_create |
mov ebx,buf2d_h |
cmp ebx,1 |
jl .end_create |
imul ecx,ebx |
cmp buf2d_bits,24 |
jne @f |
lea ecx,[ecx+ecx*2] ; 24 bit = 3 |
;;;inc ecx ;§ ¯ ᮩ ¡ ©â ¢ ª®æ¥ ¡ãä¥à , çâ®-¡ë ¥ £«î稫¨ ¥ª®â®àë¥ äãªæ¨¨ ¨§®¡à ¦¥¨ïå ªà âëå 4 |
@@: |
cmp buf2d_bits,32 |
jne @f |
117,6 → 120,9 |
jmp .end_create |
@@: |
stdcall buf_clear,edi,buf2d_color ;®ç¨á⪠¡ãä¥à ä®®¢ë¬ 梥⮬ |
jmp .end_create |
.error: |
stdcall print_err,sz_buf2d_create_f_img,txt_err_size_0 |
.end_create: |
popad |
ret |
1949,9 → 1955,13 |
pushad |
mov edi,dword[buf_struc] |
cmp buf2d_bits,24 |
jne .error |
jne .error0 |
mov eax,buf2d_w |
cmp eax,1 |
jl .error1 |
mov ecx,buf2d_h |
cmp ecx,1 |
jl .error1 |
imul ecx,eax |
mov esi,ecx |
;ebx - ¯ ¬ïâì ¨§ ª®â®à®© ª®¯¨àã¥âáï |
1970,8 → 1980,11 |
mov buf2d_bits,8 |
invoke mem.realloc,buf2d_data,esi ;㬥ìè ¥¬ ¯ ¬ïâì § ¨¬ ¥¬ãî ¡ãä¥à®¬ |
jmp .end_conv |
.error: |
.error0: |
stdcall print_err,sz_buf2d_conv_24_to_8,txt_err_n24b |
jmp .end_conv |
.error1: |
stdcall print_err,sz_buf2d_conv_24_to_8,txt_err_size_0 |
.end_conv: |
popad |
ret |
3057,6 → 3070,7 |
|
include 'fun_voxel.inc' ;äãªæ¨¨ ¤«ï à ¡®âë á ¢®ªá¥«ì®© £à 䨪®© |
|
txt_err_size_0 db 'image size < 1 pixel',13,10,0 |
txt_err_n8b db 'need buffer 8 bit',13,10,0 |
txt_err_n24b db 'need buffer 24 bit',13,10,0 |
txt_err_n32b db 'need buffer 32 bit',13,10,0 |