Faits: Faits: A. B._, ressortissant du Kosovo né en 1971, résidant à Genève depuis 1992 et au bénéfice d'une admission provisoire, a été arrêté le 20 octobre 2000 peu après le cambriolage d'une villa à Cologny. La femme de ménage prétendit - selon sa déclaration à la police - l'avoir reconnu en raison de son habillement, de certains détails physiques et de sa voix. B._ nia les faits, affirmant qu'il travaillait alors sur un chantier. Il fut inculpé, le 22 octobre 2000, de vol et dommages à la propriété, ainsi que d'infraction à la LSEE. Lors d'une confrontation du 1er novembre 2000, la femme de ménage contesta avoir reconnu B._ - elle avait signé sa déclaration à la police sans la relire - et prétendit au contraire avoir déclaré qu'il n'était pas le voleur. Par ailleurs, selon les documents remis à la demande de son défenseur, l'intéressé n'avait pas quitté le chantier où il travaillait le jour du cambriolage. Il fut immédiatement remis en liberté. Le 23 février 2001, le Procureur général classa la procédure. Sur recours de l'inculpé, la Chambre d'accusation prononça un non-lieu, la prévention faisant défaut tant pour le cambriolage que pour l'infraction à la LSEE. Le 23 février 2001, le Procureur général classa la procédure. Sur recours de l'inculpé, la Chambre d'accusation prononça un non-lieu, la prévention faisant défaut tant pour le cambriolage que pour l'infraction à la LSEE. B. Le 29 mai 2002, B._ adressa à la Chambre pénale de la Cour de justice genevoise une demande d'indemnité de 25'252 fr. 40, soit 12'000 fr. de tort moral, 2'600 fr. pour les treize jours de détention et 10'652,40 fr. de frais d'avocat. Un premier arrêt du 23 septembre 2002, lui allouant 8'000 fr. d'indemnité, a été cassé par le Tribunal fédéral (arrêt du 29 janvier 2003), pour motivation insuffisante. Statuant à nouveau par arrêt du 24 mars 2003, la Chambre pénale estima que la durée de la détention (13 jours) et la nature de la procédure ne constituaient pas des circonstances particulières justifiant un dépassement du maximum de 10'000 fr., ou du barème de 100 fr. par jour de détention pour la réparation du tort moral. L'action en responsabilité de l'Etat était ouverte pour obtenir réparation des actes illicites éventuellement commis par les magistrats. Les frais d'avocat auraient pu être pris en charge par l'assistance judiciaire. L'indemnité globale a été fixée à 8000 fr. Une indemnité de dépens de 1500 fr. a été allouée. Statuant à nouveau par arrêt du 24 mars 2003, la Chambre pénale estima que la durée de la détention (13 jours) et la nature de la procédure ne constituaient pas des circonstances particulières justifiant un dépassement du maximum de 10'000 fr., ou du barème de 100 fr. par jour de détention pour la réparation du tort moral. L'action en responsabilité de l'Etat était ouverte pour obtenir réparation des actes illicites éventuellement commis par les magistrats. Les frais d'avocat auraient pu être pris en charge par l'assistance judiciaire. L'indemnité globale a été fixée à 8000 fr. Une indemnité de dépens de 1500 fr. a été allouée. C. B._ forme un recours de droit public contre ce dernier arrêt. Il en requiert l'annulation, ainsi que le renvoi de la cause à la cour cantonale pour nouvelle décision dans le sens des considérants. Il demande l'assistance judiciaire. Le Procureur général conclut au rejet du recours dans la mesure où il est recevable. La Chambre pénale se réfère à son arrêt.