Exemple #1
0
void dump_cg2_channel(struct cg2_channel * p) 
{
    int i;
    
    dump_group_start    ("Channel Lineup");
    dump_time           ("Modification Time", p->mod_time);
    dump_u32            ("TMS ID",            p->tmsid);
    dump_u32            ("Data Length",       p->data_len);
    for (i = 0; i < p->num_programs; i++)
        dump_fixed_program_record(&p->programs[i]);
    dump_group_end      ();
}
Exemple #2
0
void dump_program(struct program * p)
{
    if (!p->isvalid)
        return;

    dump_group_start    ("Program");
    dump_u32            ("Struct Size",        p->struct_size);
    dump_u32            ("Unknown1",           p->unknown1);
    dump_u32            ("Is Valid",           p->isvalid);
    dump_u32            ("Tuning",             p->tuning);
    dump_fixed_program_record(                &p->fixed_program_record);
    dump_group_end      ();
}
static int dump_programset_file(FILE * fp)
{
    unsigned char header[256];
    unsigned char buffer[256];
    unsigned char * bigbuf;
    unsigned char * p;
    struct fixed_program_record r;
    u32 tms_id;
    u32 length;
    int i = 0;

    while (fread(buffer, 8, 1, fp)) {
        p      = buffer;
        tms_id = rtv_to_u32(&p);
        length = rtv_to_u32(&p);

        bigbuf = malloc(length);
        expect(bigbuf != NULL);

        dump_group_start("Programset Channel");
        dump_u32        ("TMS ID", tms_id);
        dump_u32        ("Length", length);

        fread(bigbuf, length, 1, fp);
        for (p = bigbuf, parse_fixed_program_record(&p, &r, 1);
             p < bigbuf + length;
             parse_fixed_program_record(&p, &r, 1)) {
            sprintf(header, "FPR #%d", i);
            dump_group_start(header);
            dump_fixed_program_record(&r);
            dump_group_end();
            i++;
        }
        dump_group_end  ();
        free(bigbuf);
    }
    
    return 0;
}
Exemple #4
0
static void dump_block(int64_t blkno, int blksize, char *buf)
{
	size_t i;
	uint32_t *vals = (uint32_t *)buf;

	fprintf(stdout, "Dumping block %"PRId64" (%d bytes):\n", blkno,
		blksize);

	for (i = 0; i < (blksize / sizeof(uint32_t)); i++) {
		if (!(i % 4)) {
			if (i)
				fprintf(stdout, "\n");
			fprintf(stdout, "0x%08zu\t", i * sizeof(uint32_t));
		}
		dump_u32(&vals[i]);
		fprintf(stdout, " ");
	}
	fprintf(stdout, "\n");
}
Exemple #5
0
void dump_fixed_program_record(struct fixed_program_record * p) 
{
    dump_group_start    ("Program");
    dump_bitmapping     ("Flags",        p->flags, program_flags_mapping);
    dump_time           ("Event Time",   p->event_time);
    dump_u32            ("TMS ID",       p->tmsid);
    dump_u16            ("Minutes",      p->minutes);
    if (p->genre1)
        dump_mapping    ("Genre 1",      p->genre1, genre_mapping);
    if (p->genre2)
        dump_mapping    ("Genre 2",      p->genre2, genre_mapping);
    if (p->genre3)
        dump_mapping    ("Genre 3",      p->genre3, genre_mapping);
    if (p->genre4)
        dump_mapping    ("Genre 4",      p->genre4, genre_mapping);
    dump_u16            ("Record Length",p->record_len);
    if (p->flags & 0x0040)
        dump_parts      (               &p->parts);
    if (p->flags & 0x0020)
        dump_movie      (               &p->movie);
    if (p->title_len > 1)
        dump_string     ("Title",        p->datablock + p->title_offset);
    if (p->episode_len > 1)
        dump_string     ("Episode",      p->datablock + p->episode_offset);
    if (p->description_len > 1)
        dump_string     ("Description",  p->datablock + p->description_offset);
    if (p->actor_len > 1)
        dump_string     ("Actor",        p->datablock + p->actor_offset);
    if (p->guest_len > 1)
        dump_string     ("Guest",        p->datablock + p->guest_offset);
    if (p->suzuki_len > 1)
        dump_string     ("Suzuki",       p->datablock + p->suzuki_offset);
    if (p->producer_len > 1)
        dump_string     ("Producer",     p->datablock + p->producer_offset);
    if (p->director_len > 1)
        dump_string     ("Director",     p->datablock + p->director_offset);
    dump_group_end      ();
}