A few bits of this: mov [LIMIT1],eax mov bx,[LOWER esi] ; set LIMIT2 (ddata1 descriptor) and ebx,0ffffh jnz exxis mov ebx,18*12 exxis: fastimul eax,ebx,96 add eax,[VGASTART] add eax,[SCREENSTART] mov ebx,[SCREEN_X] sar ebx,decimal_places+2 add eax,ebx mov [ddata1.limit],ax shr eax,16 and al,0fh mov [ddata1.gran],al mov ax,ddata1-gdt ; load descriptor into es mov es,ax mov [word idt+8*13],offset print_bound
mov eax,[X esi] ; get coords mov ebx,[Y esi] ...in the right places could do wonders for plex86 execution speed. Done right, assembly code can be several times faster than C. As this is an 80x86 only project, there's no reason why assembly can not be used. Small critical sections of the C source code can be commented out and replace by inline assembly. Just an idea from a (former) assembly language programmer. What do you think of it? Joaquim Carvalho