1 /* $NetBSD: prtvid.c,v 1.2 2002/05/04 22:05:30 scw Exp $ */ 2 3 #include <stdio.h> 4 #define __DBINTERFACE_PRIVATE 5 #include <db.h> 6 #include <machine/disklabel.h> 7 8 int 9 main(argc, argv) 10 int argc; 11 char *argv[]; 12 { 13 struct cpu_disklabel *cdl; 14 15 cdl = (struct cpu_disklabel *) malloc(sizeof (struct cpu_disklabel)); 16 17 fread(cdl, sizeof(struct cpu_disklabel), 1, stdin); 18 19 if (BYTE_ORDER != BIG_ENDIAN) 20 swabvid(cdl); 21 22 printf("vid_id %s %x\n", cdl->vid_id, 23 (char *)&(cdl->vid_id[4]) - (char *)cdl); 24 printf("vid_oss %x %x\n", cdl->vid_oss, 25 (char *)&(cdl->vid_oss) - (char *)cdl); 26 printf("vid_osl %x %x\n", cdl->vid_osl, 27 (char *)&(cdl->vid_osl) - (char *)cdl); 28 printf("vid_osa_u %x %x\n", cdl->vid_osa_u, 29 (char *)&(cdl->vid_osa_u) - (char *)cdl); 30 printf("vid_osa_l %x %x\n", cdl->vid_osa_l, 31 (char *)&(cdl->vid_osa_l) - (char *)cdl); 32 printf("vid_vd %x\n", 33 (char *)&(cdl->vid_vd) - (char *)cdl); 34 printf("vid_cas %x %x\n", cdl->vid_cas, 35 (char *)&(cdl->vid_cas) - (char *)cdl); 36 printf("vid_cal %x %x\n", cdl->vid_cal, 37 (char *)&(cdl->vid_cal) - (char *)cdl); 38 printf("vid_moto %s %x\n", cdl->vid_mot, 39 (char *)&(cdl->vid_mot[0]) - (char *)cdl); 40 41 if (BYTE_ORDER != BIG_ENDIAN) 42 swabcfg(cdl); 43 44 printf("cfg_atm %x %x\n", cdl->cfg_atm, 45 (char *)&(cdl->cfg_atm) - (char *)(cdl)); 46 printf("cfg_prm %x %x\n", cdl->cfg_prm, 47 (char *)&(cdl->cfg_prm) - (char *)(cdl)); 48 printf("cfg_atw %x %x\n", cdl->cfg_atw, 49 (char *)&(cdl->cfg_atw) - (char *)(cdl)); 50 printf("cfg_rec %x %x\n",(long)cdl->cfg_rec, 51 (char *)&(cdl->cfg_rec) - (char *)(cdl)); 52 printf("cfg_spt %x %x\n", cdl->cfg_spt, 53 (char *)&(cdl->cfg_spt) - (char *)(cdl)); 54 printf("cfg_hds %x %x\n", cdl->cfg_hds, 55 (char *)&(cdl->cfg_hds) - (char *)(cdl)); 56 printf("cfg_trk %x %x\n", cdl->cfg_trk, 57 (char *)&(cdl->cfg_trk) - (char *)(cdl)); 58 printf("cfg_ilv %x %x\n", cdl->cfg_ilv, 59 (char *)&(cdl->cfg_ilv) - (char *)(cdl)); 60 printf("cfg_sof %x %x\n", cdl->cfg_sof, 61 (char *)&(cdl->cfg_sof) - (char *)(cdl)); 62 printf("cfg_psm %x %x\n", cdl->cfg_psm, 63 (char *)&(cdl->cfg_psm) - (char *)(cdl)); 64 printf("cfg_shd %x %x\n", cdl->cfg_shd, 65 (char *)&(cdl->cfg_shd) - (char *)(cdl)); 66 printf("cfg_pcom %x %x\n", cdl->cfg_pcom, 67 (char *)&(cdl->cfg_pcom) - (char *)(cdl)); 68 printf("cfg_ssr %x %x\n", cdl->cfg_ssr, 69 (char *)&(cdl->cfg_ssr) - (char *)(cdl)); 70 printf("cfg_rwcc %x %x\n", cdl->cfg_rwcc, 71 (char *)&(cdl->cfg_rwcc) - (char *)(cdl)); 72 printf("cfg_ecc %x %x\n", cdl->cfg_ecc, 73 (char *)&(cdl->cfg_ecc) - (char *)(cdl)); 74 printf("cfg_eatm %x %x\n", cdl->cfg_eatm, 75 (char *)&(cdl->cfg_eatm) - (char *)(cdl)); 76 printf("cfg_eprm %x %x\n", cdl->cfg_eprm, 77 (char *)&(cdl->cfg_eprm) - (char *)(cdl)); 78 printf("cfg_eatw %x %x\n", cdl->cfg_eatw, 79 (char *)&(cdl->cfg_eatw) - (char *)(cdl)); 80 printf("cfg_gpb1 %x %x\n", cdl->cfg_gpb1, 81 (char *)&(cdl->cfg_gpb1) - (char *)(cdl)); 82 printf("cfg_gpb2 %x %x\n", cdl->cfg_gpb2, 83 (char *)&(cdl->cfg_gpb2) - (char *)(cdl)); 84 printf("cfg_gpb3 %x %x\n", cdl->cfg_gpb3, 85 (char *)&(cdl->cfg_gpb3) - (char *)(cdl)); 86 printf("cfg_gpb4 %x %x\n", cdl->cfg_gpb4, 87 (char *)&(cdl->cfg_gpb4) - (char *)(cdl)); 88 printf("cfg_ssc %x %x\n", cdl->cfg_ssc, 89 (char *)&(cdl->cfg_ssc) - (char *)(cdl)); 90 printf("cfg_runit %x %x\n", cdl->cfg_runit, 91 (char *)&(cdl->cfg_runit) - (char *)(cdl)); 92 printf("cfg_rsvc1 %x %x\n", cdl->cfg_rsvc1, 93 (char *)&(cdl->cfg_rsvc1) - (char *)(cdl)); 94 printf("cfg_rsvc2 %x %x\n", cdl->cfg_rsvc2, 95 (char *)&(cdl->cfg_rsvc2) - (char *)(cdl)); 96 } 97 98 swabvid(cdl) 99 struct cpu_disklabel *cdl; 100 { 101 M_32_SWAP(cdl->vid_oss); 102 M_16_SWAP(cdl->vid_osl); 103 M_16_SWAP(cdl->vid_osa_u); 104 M_16_SWAP(cdl->vid_osa_l); 105 M_32_SWAP(cdl->vid_cas); 106 } 107 108 swabcfg(cdl) 109 struct cpu_disklabel *cdl; 110 { 111 printf("swapping cfg\n"); 112 113 M_16_SWAP(cdl->cfg_atm); 114 M_16_SWAP(cdl->cfg_prm); 115 M_16_SWAP(cdl->cfg_atm); 116 M_16_SWAP(cdl->cfg_rec); 117 M_16_SWAP(cdl->cfg_trk); 118 M_16_SWAP(cdl->cfg_psm); 119 M_16_SWAP(cdl->cfg_shd); 120 M_16_SWAP(cdl->cfg_pcom); 121 M_16_SWAP(cdl->cfg_rwcc); 122 M_16_SWAP(cdl->cfg_ecc); 123 M_16_SWAP(cdl->cfg_eatm); 124 M_16_SWAP(cdl->cfg_eprm); 125 M_16_SWAP(cdl->cfg_eatw); 126 M_16_SWAP(cdl->cfg_rsvc1); 127 M_16_SWAP(cdl->cfg_rsvc2); 128 } 129