All pastes #447124 Raw Edit

Untitled

public text v1 · immutable
·published 2007-04-18 20:57 UTC
rendered paste body
//OutPuts:
//port5 - x ranger
//port6 - y ranger
//Inputs:
//port0 - red - because its gray we only need this.
DATA;
alloc X,0;
alloc Y,0;
CODE;
mov #X,0;
mov #Y,0;
loopy:
mov #X,0;
loopx:
	mov port0,#X;
	mov port1,#Y;
	mov #ebx,#X;
	mul #ebx,40;
	mov port5,#ebx;
	mov #ebx,#Y;
	mul #ebx,40;
	mov port6,#ebx;
	mov eax,#X;   // EDI - Screen Byte Number
    mul eax,32;    // EDI = Y * 32 + X
    add eax,#Y;   // EDI = EDI + 65536 (Because screen is linked
    add eax,65536; //  to top of CPU ram, i.e. 65536 and so on)
    mov #edi,port0;  //   Screen[EDI] = EDX (Screen's byte EDI)
mov port2,port0;
inc #X;
cmp #X,6;
jl loopx;


inc #Y;
cmp #Y,6;
jl loopy;