the main version is simply the software build version. it is checked by the s-on hboot to make sure that we do not roll back our firmware to what HTC considers inferior and obsolete(and in some cases,exploitable

) older software/firmware.
the first place it is checked is the "android info" text document. this is simply a small text file that is packaged inside of hboot flashable PH98IMG files. if the file fails this check,and finds the "main version" in the text document to be lower than the software on the phone,it will either return siliently to the hboot screen without explanation,or it will spit out a "main version older!" error.
here is a very basic android info text document i always use in making up PH98IMG files:
Code:
modelid: PH9810000
cidnum: VZW__001
mainver: 2.01.605.11
hbootpreupdate:12
heres the one that comes inside the 2.11.605.01 RUU:
Code:
modelid: PH9810000
cidnum: VZW__001
mainver: 2.01.605.11
hbootpreupdate:12
DelCache:1
DelFat:1
you will sometimes see different "hboot preupdate" numbers,and different things inside. i havent messed with them enuff to know(or care

) what it all means.
*you can use the directions at the end of the post to find out what your main version info is,if you need to(or maybe i should move those directions up here? hmm).
if you find yourself with a main version error you will need to do ONE of the following 2 things:
1)edit the android info text document
to alot of folks this is the easier thing to do. just like it sounds,you need to edit the main version number of the text file to be
equal to or
greater than your softwares main version.
i.e.,if you are on 1.02.605.6,your main version could be 1.02.605.6, 2.01.605.11, or 3.xx.xxx.x
-take the .zip file you want to flash,and unzip it. you can unzip many files without anything special in windows 7. if youre on xp,or for signed files that you cant simply right click,then "extract" you may need a utility such as 7-zip.
-open the unzipped folder and click on the android info text document to open with your favorite text editor.
-change the main version number to be = or > than yours.
Code:
modelid: PH9810000
cidnum: VZW__001
mainver: 2.01.605.11 <- edit this number
hbootpreupdate:12
-save the text document. close it. open it again for peace of mind that it changed

-rezip your file. in windows 7 this is as easy a highlighting the android info document,and any images. right click,click "send to" then "compressed(zipped) folder". older versions of windows may need a seperate utility.
your file *should* flash now.
*or
2)edit the main version on your phone
a)old school method
download
this modified misc image from
this threadon xda. make sure to click the "thanks" button for mrbracht.

-place the modified misc image onto your SD card,and make sure it is named " miscnew "
*next you must be booted into a rooted operating system.
-put the phone in charge only mode,plug it in if its not.
-open a cmd window as described in post 1
-change to your mini-adb_vigor directory
cd c:\mini-adb_vigor
-make sure youre connected
adb devices
-open a root shell. have your phone awake and unlocked before doing this,as sometimes you will have to allow a supeuser pop up if youre running a stock rom.
adb shell (prompt should change to a
# .if your prompt only changes to a $,then type
su )
-write the new misc image:
dd if=/sdcard2/miscnew.img of=/dev/block/mmcblk0p24
-exit out of your adb shell
exit (may have to type this a second time)
-reboot
adb reboot
your main version should now be set to 1.00.000.0. you should now be able to flash literally anything without altering stupid text documents
heres what it will look like(red are my inputs):
Code:
Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation. All rights reserved.
C:\Users\Scott>cd c:\mini-adb_vigor
c:\mini-adb_vigor>adb devices
* daemon not running. starting it now *
* daemon started successfully *
List of devices attached
HTxxxxxxxxxx device
c:\mini-adb_vigor>adb shell
root@android:/ # dd if=/sdcard2/miscnew.img of=/dev/block/mmcblk0p24
dd if=/sdcard2/miscnew.img of=/dev/block/mmcblk0p24
32763+0 records in
32763+0 records out
16774656 bytes transferred in 4.858 secs (3452996 bytes/sec)
root@android:/ # exit
exit
c:\mini-adb_vigor>adb reboot
b) flash "main version low zip" method
credits:
drellisdee for coming up with
this main version tool
con247 for using it to create a flashable zip to change main version to a generic 1.00.000.0 in
this post
*assumtions:
-that you rooted with the guide in this first post,and thus have adb/fastboot set up in the "mini-adb_vigor" file on the root of your C drive.
-that you are using amon ra recovery image
1)
download this file:
-
main version tool
2)
change main version:
-place "SetMainVersionLOW.zip" on the root of your phones SD card
-open a cmd window as described in post 1
-change to mini-adb directory:
cd c:\mini-adb_vigor
-check connectivity
adb devices
-boot to bootloader
adb reboot bootloader
-launch recovery
fastboot boot recovery-ra-vigor-3.14-gnm.img
-using the phones amon ra menu options,flash "SetMainVersionLOW.zip" just like you would any other rom. no need to wipe anything,just flash it.
-boot back into bootloader
adb reboot bootloader
-check main version
fastboot getvar all
-if your main version is now 1.00.000.0 then procede with whatever you needed to change the main version for
*how to check your main version
-open a cmd window as described in post 1
-change to mini-adb directory:
cd c:\mini-adb_vigor
-check connection
adb devices
-boot to fastboot
adb reboot bootloader
-enter:
fastboot getvar all
-check your mainver number
heres what it will look like(red are my inputs,blue are simply additional comments):
Code:
c:\mini-adb_vigor>adb devices
List of devices attached
HTxxxxxxxxxx device
c:\mini-adb_vigor>adb reboot bootloader
c:\mini-adb_vigor>fastboot getvar all
INFOversion: 0.5
INFOversion-bootloader: 2.11.0000
INFOversion-baseband: N/A
INFOversion-cpld: None
INFOversion-microp: None
INFOversion-main: 1.00.000.0 <-this is the number you want to check
INFOserialno: HT19WS213284
INFOimei: 990000336304110
INFOproduct: vigor
INFOplatform: HBOOT-8260
INFOmodelid: PH9810000
INFOcidnum: VZW__001
INFObattery-status: good
INFObattery-voltage: 4061mV
INFOpartition-layout: Generic
INFOsecurity: on
INFObuild-mode: SHIP
INFOboot-mode: FASTBOOT
INFOcommitno-bootloader: dirty-bc948b45
INFOhbootpreupdate: 11
INFOgencheckpt: 0
all: Done!
finished. total time: 0.534s
c:\mini-adb_vigor>fastboot reboot