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; }
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; }
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); }
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; }
dvalue_t* dv_bool(bool b) { dvalue_t* out = dv_init(); out->t = BOOL; out->d.b = b; return out; }
dvalue_t* dv_float(double f) { dvalue_t* out = dv_init(); out->t = FLOAT; out->d.f = f; return out; }
dvalue_t* dv_int(int64_t i) { dvalue_t* out = dv_init(); out->t = INTEGER; out->d.i = i; return out; }
dvalue_t* dv_list(void* a) { dvalue_t* out = dv_init(); out->t = LIST; out->d.a = a; return out; }
dvalue_t* dv_op(char* op) { dvalue_t* out = dv_init(); out->t = OP; out->d.s = strdup(op); return out; }
dvalue_t* dv_string(char* str) { dvalue_t* out = dv_init(); out->t = STRING; out->d.s = strdup(str); return out; }