Since you are attached to BPO engaged as a non support programmer and have an experience of four years in the similar line, your switching over to IT field as a programmer seems to be a difficult task if not impossible one. You need to review the entire situation prior to taking a final decision for the job - switch. Here are a few suggestions for your considerations-
1) You have to make some sort of financial adjustment in case you leave the present job. The other option would be to start a specialised training from NIIT, APTECH etc from where you would get enough exposure in any programming such as Oracle, C++, Java, Tester programming etc remaining in the present job.
2) Look out for the vacancies appearing in the leading Newspaper and see if your programming received from the training matches with the demand of employers. You can also get registered with Naukari.com so that you may avail of getting a job in your chosen field.
3) Initial salary offered by the Employer in the event of job- switching should not be a disheartening point for you since you are making a new entry in this field.
4) Develop your communication skill so that you presentation before the interview - board is effective . Update the knowledge of current affairs and in that way, your success in the interview multiplies.
5) Develop intimacy with the people working in the software and sometimes their referrals would ease considerably in finding a suitable job of your likeness.