Ejemplo n.º 1
0
boolean_t
check_nw(mach_vm_address_t addr, mach_vm_size_t size) {
	int i;
	boolean_t ret;

	for (i=0; i<size/PAGE_SIZE; i++) {
		if ((ret = check_w(addr+i*PAGE_SIZE, PAGE_SIZE))) {
			sprintf(error, "page still writable");
			return FALSE;
		}
	}
	return TRUE;
}
Ejemplo n.º 2
0
boolean_t
check_rw(mach_vm_address_t addr, mach_vm_size_t size) {
	int ret;
	int res;
	if (!(ret = check_w(addr, size))) return ret;
	if (!(ret = check_r(addr, size, &res))) return ret;
	if ((size==SUPERPAGE_SIZE) && (res!=0xfff00000)) {
		sprintf(error, "checksum error");
		return FALSE;
	}

	return TRUE;
}
Ejemplo n.º 3
0
static void end_quads() {
	int i, j, order[4] = {3, 0, 2, 1};

	/* Should be four points in the buffer */
	assert_msg(gl_vbuf_top == 4, "Wrong number of vertices.");

	gl_vbuf[order[3]].flags = PVR_CMD_VERTEX_EOL;
	/* mat_transform((vector_t*)&gl_vbuf[0].x, (vector_t*)&gl_xbuf[0].x, 4, 
sizeof(pvr_vertex_t)); */

	for (i=0; i<4; i++) {
		float x = gl_vbuf[i].x, y = gl_vbuf[i].y, z = gl_vbuf[i].z, w = 1.0f;
		mat_trans_single4(x, y, z, w);
		gl_xbuf[i].x = x;
		gl_xbuf[i].y = y;
		if (w == 1.0f)
			gl_xbuf[i].z = ((gl_viewport_scale[2] * z) + gl_viewport_offset[2]);
		else
			gl_xbuf[i].z = w;
	}

	/* Throw it all to the TA using direct render */
	if (check_w(gl_xbuf, 4))
		for (i=0; i<4; i++) {
			j = order[i];
			vert_xbuf.flags     = gl_vbuf[j].flags;
			vert_xbuf.x         = gl_xbuf[j].x;
			vert_xbuf.y         = gl_xbuf[j].y;
			vert_xbuf.z         = gl_xbuf[j].z;
			vert_xbuf.u0        = gl_vbuf[j].u;
			vert_xbuf.v0        = gl_vbuf[j].v;
			vert_xbuf.argb0     = gl_vbuf[j].argb;
			vert_xbuf.oargb0    = gl_vbuf[j].oargb;
			vert_xbuf.u1        = 0.0f;
			vert_xbuf.v1        = 0.0f;
			vert_xbuf.argb1     = 0xff00ff00;
			vert_xbuf.oargb1    = 0xffff0000;
			pvr_prim(&vert_xbuf, sizeof(pvr_vertex_tpcm_t));
		}
}
Ejemplo n.º 4
0
static void atexit_unlink_socket(void) {
    check_w(unlink(socket_name), "unlink()");
}