Exemple #1
0
dvalue_t* dv_symbol(char* sym) {
  dvalue_t* out = dv_init();
  out->t = SYMBOL;

  uint64_t s = symbol_encode(sym);
  if (!s) errx(1, "Invalid symbol %s", sym);
  else out->d.sym = s;

  return out;
}
Exemple #2
0
static gboolean
plugin_init (GstPlugin * plugin)
{
  dv_init (0, 0);

  if (!gst_element_register (plugin, "dvdemux", GST_RANK_PRIMARY,
          gst_dvdemux_get_type ()))
    return FALSE;

  if (!gst_element_register (plugin, "dvdec", GST_RANK_MARGINAL,
          gst_dvdec_get_type ()))
    return FALSE;

  return TRUE;
}
Exemple #3
0
int
main(int argc, char **argv)
{
	FILE *ofile;
	char fname[128];
	unsigned char bankbuf[8];
	unsigned char buf[0x2000];
	int i, j, offset, savebank;

	/* check args */
	if (((argc != 2) && (argc != 1)) ||
	    ((argc == 2) && !strcmp(argv[1], "-?"))) {
		printf("GETROM (v1.00-" GIT_VERSION ", " GIT_DATE ")\n\n");
		printf("getrom [-? (for help)] [outfile]\n\n");
		printf("outfile : file to write ROM contents into\n");
		printf("          (default is 'system.rom')\n");
		return (0);
	}

	/* filename */
	if (argc == 1) {
		strcpy(fname, "system.rom");
	}
	else {
		strcpy(fname, argv[1]);
	}

	/* init the develo box */
	if (dv_init() != DV_OK) {
		printf("can not initialize the develo box!\n");
		exit(1);
	}

	ofile = fopen(fname, "wb");

	if (dv_get_bank(bankbuf) != DV_OK) {
		printf("can't get banks\n");
		exit(1);
	}

	savebank = bankbuf[4];

	for (i = 0; i < 32; i++) {
		if (dv_set_bank(4, i) != DV_OK) {
			printf("can't set bank\n");
			exit(1);
		}

		printf("Reading bank $%2.2X", i);
		fflush(stdout);

		for (j = 0; j < 4; j++) {
			offset = j * 0x0800;

			if (get_block(buf + offset, 0x8000 + offset, 0x0800) != DV_OK) {
				printf("can't get RAM\n");
				exit(1);
			}
			printf(".");
			fflush(stdout);
		}
		printf("\n");

		for (j = 0; j < 0x2000; j++) {
			fputc(buf[j], ofile);
		}
	}

	if (dv_set_bank(4, savebank) != DV_OK) {
		printf("can't set bank back to original\n");
		exit(1);
	}

	/* ok */
	printf(" OK\n");
	return (0);
}
Exemple #4
0
int main(void)
{
	d_vector(int) v = DV_INIT;
	int *p;
	int int3[3] = {1,2,3};
	int idx;

	check_int(v.size, 0);
	check(v.data == NULL);

	dv_reserve(&v, 1);
	check(v.data != NULL);
	check_int(v.size, 0);
	check(dv_reserved(v) >= 1);

	dv_free(v);
	dv_init(&v);
	check_int(v.size, 0);
	check(v.data == NULL);

	dv_resize(&v, 2);
	check_int(v.size, 2);
	check(v.data != NULL);
	v.data[0] = 50000;
	v.data[1] = 50000;

	dv_resize(&v, 1);
	check_int(v.size, 1);
	check_int(v.data[0], 50000);
	check_int(v.data[1], 0);

	dv_clear(&v);
	check_int(v.size, 0);
	check(v.data != NULL);
	check_int(v.data[0], 0);

	dv_resize(&v, 3);
	v.data[0] = 1;
	v.data[1] = 2;
	v.data[2] = 3;
	p = dv_insert_buffer(&v, 1, 2);
    check(p == &v.data[1]);
	check_int(v.size, 5);
	check_int(v.data[0], 1);
	check_int(v.data[1], 2);
	check_int(v.data[2], 3);
	check_int(v.data[3], 2);
	check_int(v.data[4], 3);

	dv_resize(&v, 2);
	p = dv_insert_zeroed(&v, 1, 2);
    check(p == &v.data[1]);
	check_int(v.size, 4);
	check_int(v.data[0], 1);
	check_int(v.data[1], 0);
	check_int(v.data[2], 0);
	check_int(v.data[3], 2);

	dv_resize(&v, 5);
	v.data[4] = 4;
	dv_resize(&v, 1);
	p = dv_append_buffer(&v, 4);
    check(p == &v.data[1]);
	check_int(v.size, 5);
	check_int(v.data[4], 4);

	dv_resize(&v, 5);
	v.data[4] = 4;
	dv_resize(&v, 1);
	p = dv_append_zeroed(&v, 4);
    check(p == &v.data[1]);
	check_int(v.size, 5);
	check_int(v.data[4], 0);

	dv_resize(&v, 1);
	v.data[0] = 64;
	dv_append2(&v, int3, 3);
	check_int(v.size, 4);
	check_int(v.data[0], 64);
	check_int(v.data[1], 1);
	check_int(v.data[2], 2);
	check_int(v.data[3], 3);

	dv_resize(&v, 1);
	dv_append1(&v, 56);
	check_int(v.size, 2);
	check_int(v.data[1], 56);
	check_int(v.data[2], 0);

	dv_resize(&v, 1);
	generations = 0;
	v.data[0] = 64;
	dv_append(&v, generate());
	check_int(generations, 1);
	check_int(v.size, 4);
	check_int(v.data[0], 64);
	check_int(v.data[1], 1);
	check_int(v.data[2], 2);
	check_int(v.data[3], 3);

	dv_resize(&v, 1);
	v.data[0] = 64;
	dv_set2(&v, int3, 3);
	check_int(v.size, 3);
	check_int(v.data[0], 1);
	check_int(v.data[1], 2);
	check_int(v.data[2], 3);

	dv_resize(&v, 1);
	generations = 0;
	v.data[0] = 64;
	dv_set(&v, generate());
	check_int(generations, 1);
	check_int(v.size, 3);
	check_int(v.data[0], 1);
	check_int(v.data[1], 2);
	check_int(v.data[2], 3);

	dv_resize(&v, 2);
	generations = 0;
	v.data[0] = 64;
	v.data[1] = 36;
	dv_insert(&v, 1, generate());
	check_int(generations, 1);
	check_int(v.size, 5);
	check_int(v.data[0], 64);
	check_int(v.data[1], 1);
	check_int(v.data[2], 2);
	check_int(v.data[3], 3);
	check_int(v.data[4], 36);

	dv_resize(&v, 2);
	generations = 0;
	v.data[0] = 64;
	v.data[1] = 36;
	dv_insert2(&v, 1, int3, 3);
	check_int(v.size, 5);
	check_int(v.data[0], 64);
	check_int(v.data[1], 1);
	check_int(v.data[2], 2);
	check_int(v.data[3], 3);
	check_int(v.data[4], 36);

	dv_erase(&v, 1, 3);
	check_int(v.size, 2);
	check_int(v.data[0], 64);
	check_int(v.data[1], 36);

	dv_resize(&v, 3);
	v.data[0] = 45;
	v.data[1] = 35;
	v.data[2] = 45;
	dv_remove(&v, 45);
	check_int(v.size, 1);
	check_int(v.data[0], 35);

	dv_resize(&v, 3);
	v.data[0] = 45;
	v.data[1] = 35;
	v.data[2] = 45;
	dv_find(v, 35, &idx);
	check_int(idx, 1);
	dv_find(v, 55, &idx);
	check_int(idx, -1);

	dv_resize(&v, 3);
	v.data[0] = 1;
	v.data[1] = 2;
	v.data[2] = 3;
	check(dv_begins_with(v, generate()));
	check(dv_equals(v, generate()));
	check(dv_cmp(v, generate()) == 0);
	check(dv_ends_with(v, generate()));

	dv_resize(&v, 4);
	v.data[3] = 5;
	check(dv_begins_with(v, generate()));
	check(dv_cmp(v, generate()) > 0);
	check(!dv_ends_with(v, generate()));

	v.data[2] = 1;
	check(!dv_begins_with(v, generate()));
	check(dv_cmp(v, generate()) < 0);

	dv_resize(&v, 4);
	v.data[0] = 5;
	v.data[1] = 1;
	v.data[2] = 2;
	v.data[3] = 3;
	check(dv_ends_with(v, generate()));

	v.data[2] = 5;
	check(!dv_ends_with(v, generate()));

	return 0;
}
Exemple #5
0
dvalue_t* dv_bool(bool b) {
  dvalue_t* out = dv_init();
  out->t = BOOL;
  out->d.b = b;
  return out;
}
Exemple #6
0
dvalue_t* dv_float(double f) {
  dvalue_t* out = dv_init();
  out->t = FLOAT;
  out->d.f = f;
  return out;
}
Exemple #7
0
dvalue_t* dv_int(int64_t i) {
  dvalue_t* out = dv_init();
  out->t = INTEGER;
  out->d.i = i;
  return out;
}
Exemple #8
0
dvalue_t* dv_list(void* a) {
  dvalue_t* out = dv_init();
  out->t = LIST;
  out->d.a = a;
  return out;
}
Exemple #9
0
dvalue_t* dv_op(char* op) {
  dvalue_t* out = dv_init();
  out->t = OP;
  out->d.s = strdup(op);
  return out;
}
Exemple #10
0
dvalue_t* dv_string(char* str) {
  dvalue_t* out = dv_init();
  out->t = STRING;
  out->d.s = strdup(str);
  return out;
}