Faits:
A. Le 26 novembre 2010, peu après 18h, X._ a participé, avec six à neuf comparses armés, à l'attaque d'un bureau de change à Chêne-Bourg. Après avoir neutralisé l'agent de sécurité et fait sauter la vitrine à l'explosif, X._ est entré dans le bureau avec une hache afin de prendre l'argent dans les caisses. Plusieurs policiers, dont A._ et B._, alertés par le bruit de l'explosion, se sont rendus sur les lieux et ont essuyé des tirs de fusil d'assaut de la part des complices qui faisaient le guet. Ceux-ci ayant pris la fuite, X._ a été interpellé alors qu'il sortait du bureau avec un sac. Ne réagissant pas aux sommations, il s'est enfui en courant, puis s'est emparé d'un véhicule en ayant fait sortir la passagère qui s'y trouvait. Lors du démarrage, il heurta une passante et roula à deux reprises sur ses jambes. Durant ces manoeuvres, les deux agents, arrivés à proximité ouvrirent le feu, respectivement à huit et deux reprises, le blessant quatre fois aux bras. Après avoir heurté un véhicule et tenté d'en voler un autre, il fut arrêté alors qu'il s'enfuyait à pied. Il a été inculpé de brigandage aggravé, de mise en danger de la vie d'autrui et d'emploi d'explosifs notamment.
B. Le 21 février 2011, X._ a déposé plainte pénale contre les deux policiers précités pour délit manqué de meurtre et mise en danger de la vie d'autrui.
Par décision du 24 janvier 2012, le Ministère public genevois a refusé d'entrer en matière sur cette plainte. Les policiers étaient intervenus alors que l'intéressé venait de participer à une agression mettant en danger de nombreuses vies, et alors qu'il tentait de fuir sans se soucier des autres personnes. L'usage de l'arme de service tendait à défendre l'agent B._ - qui se trouvait derrière le véhicule alors que celui-ci s'élançait en marche arrière -, à empêcher l'intéressé d'écraser une nouvelle fois la passante sur laquelle il avait roulé à deux reprises, ainsi qu'à éviter sa fuite. L'intervention était proportionnée.
Par arrêt du 19 mars 2012, la Chambre pénale de recours de la Cour de justice du canton de Genève a rejeté le recours formé par X._ contre cette décision. Celle-ci avait été rendue près d'une année et sans acte d'instruction spécifique, mais cela n'affectait pas sa validité. Sa motivation était suffisante en fait et en droit. L'intervention des policiers était justifiée compte tenu de la menace que représentait l'intéressé.
C. Par acte du 7 mai 2011, X._ forme un recours en matière pénale par lequel il demande que l'ordonnance de non-entrée en matière soit déclarée irrecevable (subsidiairement, que l'arrêt cantonal soit annulé) et que la cause soit renvoyée au Ministère public pour ouverture d'une instruction. Il requiert en outre l'assistance judiciaire.
La Chambre pénale persiste dans les considérants de son arrêt. Le Procureur général conclut au rejet du recours.

Considérant en droit:
1. L'arrêt attaqué a été rendu dans le cadre d'une procédure pénale, de sorte que le recours en matière pénale au sens de l'<ref-law> est ouvert
1.1 S'agissant de la confirmation d'une décision de non-entrée en matière sur une plainte pénale, l'arrêt attaqué a un caractère final (<ref-law>) et émane de l'autorité cantonale de dernière instance (<ref-law>). Le recourant a agi en temps utile (<ref-law>).
1.1 S'agissant de la confirmation d'une décision de non-entrée en matière sur une plainte pénale, l'arrêt attaqué a un caractère final (<ref-law>) et émane de l'autorité cantonale de dernière instance (<ref-law>). Le recourant a agi en temps utile (<ref-law>).
1.2 Selon l'art. 81 al. 1 let. a et b ch. 5 LTF, la partie plaignante qui a participé à la procédure de dernière instance cantonale est habilitée à recourir au Tribunal fédéral si la décision attaquée peut avoir des effets sur le jugement de ses prétentions civiles. Constituent de telles prétentions celles qui sont fondées sur le droit civil, telles les prétentions en réparation du dommage et du tort moral au sens des <ref-law>.
1.2.1 Le recourant admet que, s'agissant d'actes commis par des agents de l'Etat, il ne dispose pas de prétentions civiles au sens de l'art. 81 al. 1 let. b ch. 5 LTF. Il estime toutefois qu'en application des art. 10 al. 3 Cst., 7 Pacte ONU II, 2 et 3 CEDH et 13 par. 1 de la Convention des Nations Unies contre la torture et autres peines ou traitements cruels, inhumains ou dégradants, il devrait se voir reconnaître un droit de recours, dès lors que les agissements dénoncés l'ont mis en danger de mort.
1.2.2 La jurisprudence fondée sur les dispositions précitées reconnaît aux personnes qui se prétendent victimes de traitements prohibés, d'une part, le droit de porter plainte et, d'autre part, un droit propre à une enquête prompte et impartiale devant aboutir, s'il y a lieu, à la condamnation pénale des responsables. La victime de tels traitements peut également bénéficier d'un droit de recours, en vertu des mêmes dispositions (<ref-ruling> consid. 3.1 p. 88).
1.2.3 Au stade de la recevabilité, il n'y a pas lieu d'examiner si les actes dénoncés sont effectivement constitutifs de violations des dispositions précitées, si leurs auteurs ont agi de manière proportionnée et peuvent être mis au bénéfice de faits justificatifs. Il y a donc lieu d'entrer en matière.
2. Invoquant les art. 309 al. 4 et 310 al. 1 let. a CPP, le recourant relève en premier lieu qu'une ordonnance de non-entrée en matière doit être rendue "immédiatement". Près d'une année après le dépôt de sa plainte, le recourant estime qu'il pouvait prétendre à ce qu'une instruction soit ouverte.
2.1 Une ordonnance de non-entrée en matière, au sens de l'<ref-law>, est rendue immédiatement par le ministère public lorsqu'il apparaît notamment, à réception de la plainte ou après une procédure préliminaire limitée aux investigations de la police (art. 300 al. 1 et 306 s. CPP), que les éléments constitutifs de l'infraction ou les conditions à l'ouverture de l'action pénale ne sont manifestement pas réunis (al. 1 let. a), qu'il existe des empêchements de procéder (let. b) ou qu'il y a lieu de renoncer à l'ouverture d'une poursuite pénale pour des motifs d'opportunité (let. c). Le ministère public ne peut donc pas rendre une telle ordonnance après avoir ouvert une instruction au sens de l'<ref-law> (CORNU, Commentaire romand CPP, n° 2 ad art. 310).
2.2 En l'occurrence, la plainte a été formée le 21 février 2011 et la décision de non-entrée en matière a été rendue le 24 janvier 2012, Entretemps, aucune décision formelle d'ouverture d'une instruction n'a été prise par le Ministère public, avec la mention des prévenus et des infractions qui leur sont imputées comme l'exige l'<ref-law>. Quand bien même il s'est écoulé près d'une année entre le dépôt de la plainte et l'ordonnance de non-entrée en matière, la procédure n'a pas dépassé le stade de l'investigation policière. Contrairement à ce que soutient le recourant, le simple écoulement du temps ne saurait donner droit à l'ouverture d'une instruction. Le grief doit être écarté.
3. Invoquant l'<ref-law> et le principe "in dubio pro duriore", le recourant estime que les conditions d'une non-entrée en matière ne seraient pas réunies, car la situation de fait ne serait pas claire: il y aurait de nombreuses contradictions (reconnues par la cour cantonale) entre les déclarations des intéressés, s'agissant des circonstances dans lesquelles les coups de feu ont été tirés. Le recourant prétend qu'il s'apprêtait à démarrer en marche avant, de sorte que ni l'agent B._, ni la passante n'étaient plus menacés. L'auteur du rapport balistique aurait par ailleurs dû être entendu afin de déterminer les intentions des tireurs et les risques encourus. L'appréciation juridique se baserait ainsi sur un état de fait contesté. Les conséquences graves de l'acte dénoncé imposeraient également d'entrer en matière sur la plainte, l'autorité ne pouvant sans autre retenir la version la plus favorable aux policiers.
3.1 Selon l'<ref-law>, le ministère public rend immédiatement une ordonnance de non-entrée en matière s'il ressort de la dénonciation ou du rapport de police que les éléments constitutifs de l'infraction ou les conditions à l'ouverture de l'action pénale ne sont manifestement pas réunis (let. a). Il peut faire de même en cas d'empêchement de procéder (let. b) ou en application de l'<ref-law> (let. c). Le ministère public doit ainsi être certain que les faits ne sont pas punissables (<ref-ruling> consid. 2.3 p. 287 et les références citées).
Le principe "in dubio pro duriore" découle du principe de la légalité (art. 5 al. 1 Cst. et 2 al. 2 CPP en relation avec les art. 319 al. 1 et 324 CPP; <ref-ruling> consid. 4.2 p. 91). Il signifie qu'en principe, un classement ou une non-entrée en matière ne peuvent être prononcés par le ministère public que lorsqu'il apparaît clairement que les faits ne sont pas punissables ou que les conditions à la poursuite pénale ne sont pas remplies. Le ministère public et l'autorité de recours disposent, dans ce cadre, d'un pouvoir d'appréciation que le Tribunal fédéral revoit avec retenue. La procédure doit se poursuivre lorsqu'une condamnation apparaît plus vraisemblable qu'un acquittement ou lorsque les probabilités d'acquittement et de condamnation apparaissent équivalentes, en particulier en présence d'une infraction grave (<ref-ruling> consid. 4.1.2 p. 91; <ref-ruling> consid. 2.5 p. 288).
3.2 En l'occurrence, l'arrêt attaqué ne retient que les faits qui ont été clairement établis durant l'enquête dirigée contre le recourant. Celui-ci a pris part à une attaque d'un bureau de change, à l'explosif et à l'arme de guerre. Alors qu'il sortait du bureau de change, il a été interpellé par les deux policiers qui lui ont adressé les sommations d'usage. Malgré cela, il s'est enfui, s'est emparé d'un véhicule après avoir fait fuir sa passagère et a tenté de démarrer alors qu'il était mis en joue par les agents, situés à l'avant et à l'arrière du véhicule. Lors de son démarrage, il a embouti une borne puis a enclenché la marche arrière. Durant cette manoeuvre, il a bousculé l'agent B._ et heurté une passante avec la portière restée ouverte, fait chuter celle-ci et roulé à deux reprises sur ses jambes lors de nouvelles manoeuvres. Conformément à ce que soutient le recourant, c'est bien au moment de repartir en avant que les coups de feu ont été tirés, à une distance très réduite.
Les faits déterminants apparaissent dès lors suffisamment établis et les critiques du recourant sur ce point sont sans fondement.
3.3 Il en va de même de l'application du droit. La jurisprudence rendue à propos des art. 2 par. 2 CEDH et 10 al. 1 Cst. autorise en effet l'usage de l'arme lorsqu'il s'agit d'empêcher la fuite d'un individu soupçonné d'une infraction grave et présentant un danger particulier pour la vie ou l'intégrité corporelle d'autrui (<ref-ruling> consid. 4.2 p. 96). Selon l'art. 3 de l'arrêté du Département cantonal de justice et police du 30 août 1976 concernant l'usage des armes à feu, le recours aux armes, proportionné aux circonstances, est autorisé comme ultime moyen notamment lorsqu'une personne, ayant commis ou étant fortement soupçonnée d'avoir commis un crime ou un délit grave, tente de se soustraire par la fuite à l'arrestation (let. a) ou lorsque la police peut ou doit déduire de renseignements communiqués ou de ses propres constatations, qu'une personne, faisant courir à autrui un danger grave et imminent pour sa vie ou sa santé, tente de se soustraire par la fuite à une arrestation (let. b).
3.4 En l'occurrence, compte tenu de la violence de l'attaque (même si le recourant lui-même n'était armé que d'une hache au moment de pénétrer dans le bureau de change), du refus constant d'obtempérer aux sommations des agents et de l'attitude du recourant au volant du véhicule dont il s'était emparé, il était manifeste que celui-ci était déterminé à prendre la fuite par n'importe quel moyen, au mépris de la sécurité, voire de la vie d'autrui. C'est donc dans l'intention évidente d'empêcher la fuite d'un individu considéré à juste titre comme dangereux que les policiers ont fait usage de leur arme. Il est par ailleurs établi que les policiers n'ont pas visé les organes vitaux du recourant, celui-ci n'ayant été atteint qu'aux bras. Dans ces circonstances, le Ministère public et la cour cantonale pouvaient retenir à juste titre qu'une condamnation apparaissait d'emblée exclue: en présence des faits justificatifs prévus à l'<ref-law>, et les policiers ayant agi de manière proportionnée, les conditions posées à l'<ref-law> pouvaient être considérées comme réunies.
4. Sur le vu de ce qui précède, le recours doit être rejeté. Le recourant a demandé l'assistance judiciaire. Celle-ci lui a été refusée pour la procédure de recours cantonale, mais lui a été accordée pour la procédure pénale dont il fait l'objet, ainsi que pour les besoins de celle relative à sa propre plainte. Elle peut dès lors également lui être accordée à ce stade, même si les chances de succès étaient d'emblée réduites. Me Yaël Hayat est désignée comme avocate d'office, rétribuée par la caisse du Tribunal fédéral. Il n'est pas perçu de frais judiciaires.

Par ces motifs, le Tribunal fédéral prononce:
1. Le recours est rejeté.
2. La demande d'assistance judiciaire est admise; Me Yaël Hayat est désignée comme avocate d'office du recourant et ses honoraires, supportés par la caisse du Tribunal fédéral, sont fixés à 1'500 francs.
3. Il n'est pas perçu de frais judiciaires.
4. Le présent arrêt est communiqué à la mandataire du recourant, au Ministère public de la République et canton de Genève et à la Cour de justice de la République et canton de Genève, Chambre pénale de recours.
Lausanne, le 6 septembre 2012
Au nom de la Ire Cour de droit public
du Tribunal fédéral suisse
Le Président: Fonjallaz
Le Greffier: Kurz