All pastes #2045926 Raw Edit

Untitled

public text v1 · immutable
#2045926 ·published 2011-04-13 10:55 UTC
rendered paste body
termineertaak: ; Opgave 3
;
; gooit de taak die deze routine oproept uit de takenlijst
; en zet de uitvoering verder met een andere taak uit de takenlijst

	mov	[Huidige_Taak], dword 0

; Nu moeten we zoeken een andere taak om uit te voeren.
	
	push	eax
	push	ecx
	mov	eax, [Huidige_Taak]
	mov	ecx, [Huidige_Tick]

.zoeker:
	add	eax, 8
	cmp	eax, takenlijst + (MAX_TAKEN * 8)
	jl	.verder_zoeken
	lea	eax, [takenlijst]

.verder_zoeken:
	cmp	dword[eax], 0
	je	.zoeker
	cmp	dword[eax+4], ecx
	jg	.zoeker

; Nieuwe taak is gevonden.

	mov	[Huidige_Taak], eax
	mov	esp, [eax]
	pop	ecx
	pop	eax
	ret