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