Faits:
Faits:
A. Par jugement du 18 août 2000, le Tribunal de police du canton de Genève a condamné C._ à deux ans de réclusion, sous déduction de la détention préventive, et à cinq ans d'expulsion de Suisse, pour violation de la LStup et de l'art. 23 al. 1 LSEE. Arrêté le 9 décembre 1999 en possession de cocaïne, K._ avait identifié C._ comme son fournisseur. Sous le coup d'une interdiction d'entrée en Suisse, C._ avait été arrêté le même jour à son arrivée devant le domicile de K._ à Genève. Il avait admis connaître ce dernier, pour avoir été son compagnon de cellule, mais nié tout trafic de drogue.
Par arrêt du 23 octobre 2000, la Chambre pénale de la Cour de justice genevoise a annulé ce jugement, excepté pour l'infraction à la LSEE. Les déclarations de K._ n'étaient pas fiables. La peine a été ramenée à 45 jours d'emprisonnement.
B. Le 10 août 2001, C._ s'est adressé à la Chambre pénale genevoise en demandant notamment une indemnité de 83'960 fr. avec intérêts, à raison de la procédure pénale et de la détention préventive subie. L'indemnité comprenait 40'000 fr. de tort moral (120 jours à 120 fr. puis 154 jours à 100 fr.), 21'000 fr. de frais d'avocat (soit 60 heures au tarif usuel de 350 fr.; le requérant bénéficiait de l'assistance judiciaire mais courait le risque de devoir rembourser l'Etat en cas de retour à meilleure fortune) et 22'960 fr. de perte de gain (loyer, assurance, déménagement, mise en fourrière d'une moto, augmentation d'intérêts débiteurs). Le requérant demandait aussi une indemnité pour la procédure d'indemnisation.
Par arrêt du 26 novembre 2001, la Chambre pénale a alloué 24'725 fr. d'indemnité, plus une participation aux honoraires d'avocat de 3'000 fr. pour la procédure d'indemnisation. L'indemnité, allouée sur la base de l'art. 379 du code de procédure pénale genevois (CPP/GE), n'était pas destinée à couvrir intégralement le dommage mais était fixée ex aequo et bono. Le requérant ne pouvait prétendre à être indemnisé à raison des 45 jours de détention correspondant à la condamnation pour violation de la LSEE. Sans cette infraction, il n'aurait pas été arrêté en Suisse. Son attitude silencieuse avait par ailleurs compliqué la procédure. Le cas était toutefois exceptionnel et justifiait un dépassement du plafond de 10'000 fr. prévu par la loi. L'indemnité pour tort moral a été fixée à 20'000 fr. Le loyer, couvert par son employeur, les primes d'assurance et la taxe d'habitation, dues indépendamment de la détention, les cotisations sociales, pour la période durant laquelle le requérant était en liberté ou licitement détenu, la pension alimentaire, que le requérant n'acquittait que sporadiquement, et un prêt personnel, qui n'était pas un dommage direct, n'ont pas été indemnisés. Les frais de déménagement, par 1'214 fr. ont été couverts, ainsi qu'un emprunt de 15'100 FF, que le requérant n'avait pu rembourser en raison de sa détention. Les frais relatifs à un scooter (remise en état et frais de fourrière) ont été refusés, car le véhicule avait été récupéré tardivement et sa saisie était la conséquence de l'entrée irrégulière en Suisse. Le requérant avait bénéficié de l'assistance juridique, et la note d'honoraires n'était pas détaillée; on ignorait si elle avait été transmise au service d'assistance juridique. Au total, c'est une indemnité de 24'725 fr. qui a été allouée au requérant, plus une indemnité de 3'000 fr. pour la procédure d'indemnisation.
Par arrêt du 26 novembre 2001, la Chambre pénale a alloué 24'725 fr. d'indemnité, plus une participation aux honoraires d'avocat de 3'000 fr. pour la procédure d'indemnisation. L'indemnité, allouée sur la base de l'art. 379 du code de procédure pénale genevois (CPP/GE), n'était pas destinée à couvrir intégralement le dommage mais était fixée ex aequo et bono. Le requérant ne pouvait prétendre à être indemnisé à raison des 45 jours de détention correspondant à la condamnation pour violation de la LSEE. Sans cette infraction, il n'aurait pas été arrêté en Suisse. Son attitude silencieuse avait par ailleurs compliqué la procédure. Le cas était toutefois exceptionnel et justifiait un dépassement du plafond de 10'000 fr. prévu par la loi. L'indemnité pour tort moral a été fixée à 20'000 fr. Le loyer, couvert par son employeur, les primes d'assurance et la taxe d'habitation, dues indépendamment de la détention, les cotisations sociales, pour la période durant laquelle le requérant était en liberté ou licitement détenu, la pension alimentaire, que le requérant n'acquittait que sporadiquement, et un prêt personnel, qui n'était pas un dommage direct, n'ont pas été indemnisés. Les frais de déménagement, par 1'214 fr. ont été couverts, ainsi qu'un emprunt de 15'100 FF, que le requérant n'avait pu rembourser en raison de sa détention. Les frais relatifs à un scooter (remise en état et frais de fourrière) ont été refusés, car le véhicule avait été récupéré tardivement et sa saisie était la conséquence de l'entrée irrégulière en Suisse. Le requérant avait bénéficié de l'assistance juridique, et la note d'honoraires n'était pas détaillée; on ignorait si elle avait été transmise au service d'assistance juridique. Au total, c'est une indemnité de 24'725 fr. qui a été allouée au requérant, plus une indemnité de 3'000 fr. pour la procédure d'indemnisation.
C. C._ forme un recours de droit public contre cet arrêt. Il en demande l'annulation, ainsi que le renvoi de la cause à la cour cantonale. Il requiert l'assistance judiciaire.
La Chambre pénale et le Procureur général se réfèrent aux considérants de l'arrêt attaqué.

Le Tribunal fédéral considère en droit:
Le Tribunal fédéral considère en droit:
1. Le recours de droit public est formé en temps utile contre un arrêt final rendu en dernière instance cantonale. Le recourant, dont la démarche tend à l'obtention d'une indemnité prévue par le droit cantonal, a qualité pour agir au sens de l'art. 88 OJ.
1. Le recours de droit public est formé en temps utile contre un arrêt final rendu en dernière instance cantonale. Le recourant, dont la démarche tend à l'obtention d'une indemnité prévue par le droit cantonal, a qualité pour agir au sens de l'art. 88 OJ.
2. Le recourant se plaint d'arbitraire dans l'application de l'art. 379 CPP/GE, dont la teneur est la suivante:
1 Une indemnité peut être attribuée, sur demande, pour préjudice résultant de la détention ou d'autres actes de l'instruction, à l'accusé qui a bénéficié d'un non-lieu ou d'un acquittement dans la procédure de jugement ou après révision.
2 Le juge détermine l'indemnité dont le montant ne peut dépasser 10'000 fr. Si des circonstances particulières l'exigent, notamment à raison d'une détention prolongée, d'une instruction compliquée ou de l'ampleur des débats, l'autorité de jugement peut - dans les cas de détention - allouer à titre exceptionnel une indemnité supplémentaire. Le juge peut décider d'un autre mode de réparation du préjudice subi ou de tout autre appui nécessaire au requérant. (...)
5 L'indemnité peut être refusée ou réduite si la conduite répréhensible de l'accusé a provoqué ou entravé les opérations de l'instruction. (...)
Le recourant admet que l'indemnisation fondée sur cette disposition est en principe fixée librement. Toutefois, dans sa pratique récente, la cour cantonale prendrait en considération l'ensemble du dommage, en lui appliquant le cas échéant les facteurs de réduction. En l'espèce, tout en admettant que la situation justifiait un dépassement de la limite de 10'000 fr., la cour cantonale aurait arbitrairement réduit l'indemnité en raison du comportement du recourant. En allouant 20'000 fr. pour 274 jours de détention, elle aurait appliqué un tarif de 73 fr. par jour, alors qu'en général, elle alloue au moins 100 fr. par jour. Le recourant conteste avoir provoqué ou entravé l'enquête. La violation de l'art. 23 LSEE, admise d'emblée, ne nécessitait aucune mesure d'instruction. Pour le surplus, le comportement du recourant n'était pas répréhensible: il n'avait gardé le silence que durant les premiers jours suivant son arrestation et s'était entièrement expliqué dès sa première confrontation avec K._.
2.1 Si l'indemnisation du prévenu ensuite d'une détention en soi licite mais qui se révèle injustifiée, n'est imposée ni par le droit constitutionnel, ni par le droit conventionnel, les cantons peuvent instituer une telle garantie, dont le Tribunal fédéral examine alors la portée sous l'angle restreint de l'arbitraire (<ref-ruling> consid. 6 p. 230). Lorsque l'indemnisation est, comme en l'espèce, prévue par le droit cantonal, elle ne saurait être refusée, notamment dans les cas de libération faute de preuve, au motif que l'intéressé aurait néanmoins pu commettre l'infraction: une telle motivation violerait la présomption d'innocence. Seul un comportement fautif en relation de causalité avec le préjudice subi est propre à justifier un refus ou une réduction de l'indemnité (<ref-ruling> consid. 2b et c p. 302).
2.2 En dépit de la réduction fondée sur le comportement du recourant, la cour cantonale est allée au-delà du plafond de 10'000 fr., en allouant le double de ce montant. Au regard du droit genevois qui ne prévoit, quoi qu'en prétende le recourant, qu'une indemnisation partielle (consid. 3.1 ci-dessous), le recours n'expose pas en quoi le montant finalement accordé serait arbitraire dans son résultat. La recevabilité du grief est dès lors douteuse sous l'angle de l'art. 90 al. 1 let. b OJ. Cela étant, la réduction opérée par la Chambre pénale était en l'espèce admissible.
2.3 La cour cantonale n'a d'aucune manière laissé entendre que le recourant serait malgré tout coupable de l'infraction pour laquelle il a été acquitté. Elle a toutefois retenu que son entrée en Suisse était illégale, et que son silence avait compliqué le déroulement de la procédure.
2.4 Le silence de l'inculpé ne constitue pas, en soi, un comportement fautif, puisque le droit de se taire est garanti à tout inculpé; seul un abus de ce droit pourrait éventuellement conduire à un refus d'indemnisation (<ref-ruling> consid.2d/aa p. 172), et un tel abus n'est pas démontré en l'occurrence. Cela étant, si un comportement contraire à la seule éthique ne peut justifier le refus d'indemniser le prévenu libéré, la jurisprudence étend la notion de comportement fautif à la violation de toute norme de comportement, écrite ou non, résultant de l'ordre juridique suisse dans son ensemble (<ref-ruling> consid. 2c p. 168). Or il est interdit, en droit civil, de créer un état de fait propre à causer un dommage à autrui sans prendre les mesures nécessaires afin d'en éviter la survenance (<ref-ruling> consid. 2a/aa p. 115). De la même manière, le droit de procédure interdit implicitement de créer sans nécessité l'apparence qu'une infraction a été ou pourrait être commise, car un tel comportement est susceptible de provoquer l'intervention des autorités répressives et l'ouverture d'une procédure pénale et, partant, de causer à la collectivité le dommage que constituent les frais liés à une instruction pénale ouverte inutilement. Il y a comportement fautif, dans ce cas, lorsque le prévenu aurait dû se rendre compte, sur le vu des circonstances et de sa situation personnelle, que son attitude risquait de provoquer l'ouverture d'une enquête (arrêt du 31 mai 1994 dans la cause B., cité par Thélin, L'indemnisation du prévenu acquitté en droit vaudois, JdT 1995 III p. 98-107, par. 18 p. 104).
2.5 En l'espèce, le recourant s'est rendu en Suisse au mépris d'une interdiction d'entrée. Il s'est ensuite rendu chez K._, avec qui il avait rendez-vous. Ce dernier ayant été arrêté en possession de drogue, le soupçon s'est naturellement formé, en raison de l'entrée illicite du recourant et d'une précédente condamnation pour trafic grave de stupéfiants, que celui-ci pourrait s'adonner à de semblables agissements. Dans ces circonstances, il eût appartenu au recourant d'expliquer d'emblée les raisons de son entrée en Suisse et de son rendez-vous avec K._. Son silence initial est fautif dès lors qu'il ne pouvait lui échapper que, par son attitude, il entretenait de sérieux soupçons. Les explications tardives, après que le recourant ait été mis en cause par K._, auraient été davantage crédibles si elles avaient été données d'emblée, et non pour répondre aux accusations proférées contre lui. Le recourant ne tente d'ailleurs pas d'expliquer les raisons de son silence. Dans ces conditions, la réduction opérée par la cour cantonale n'apparaît pas arbitraire.
2.5 En l'espèce, le recourant s'est rendu en Suisse au mépris d'une interdiction d'entrée. Il s'est ensuite rendu chez K._, avec qui il avait rendez-vous. Ce dernier ayant été arrêté en possession de drogue, le soupçon s'est naturellement formé, en raison de l'entrée illicite du recourant et d'une précédente condamnation pour trafic grave de stupéfiants, que celui-ci pourrait s'adonner à de semblables agissements. Dans ces circonstances, il eût appartenu au recourant d'expliquer d'emblée les raisons de son entrée en Suisse et de son rendez-vous avec K._. Son silence initial est fautif dès lors qu'il ne pouvait lui échapper que, par son attitude, il entretenait de sérieux soupçons. Les explications tardives, après que le recourant ait été mis en cause par K._, auraient été davantage crédibles si elles avaient été données d'emblée, et non pour répondre aux accusations proférées contre lui. Le recourant ne tente d'ailleurs pas d'expliquer les raisons de son silence. Dans ces conditions, la réduction opérée par la cour cantonale n'apparaît pas arbitraire.
3. Le recourant tient aussi pour arbitraire le refus de l'indemniser pour la perte de salaire subie pendant la détention. Contrairement à ce que retient la Chambre pénale, il disposait d'un revenu mensuel de 7000 FF, ce qui ressortait des pièces produites, ainsi que du jugement d'acquittement. Les dépenses courantes mentionnées dans la requête d'indemnisation étaient censées attester l'étendue du dommage causé par la perte effective de revenus durant la détention. Le loyer, payé par l'employeur, constituait une partie de son salaire, non perçu durant la détention. L'autorité intimée aurait également omis d'allouer des intérêts moratoires, alors que si la demande d'indemnisation a été déposée tardivement, c'est à cause d'un retard à statuer en matière d'assistance juridique.
3.1 Le recourant part de la prémisse, erronée, que la Chambre pénale serait tenue d'établir, puis d'indemniser, l'intégralité du dommage. Or, la cour cantonale rappelle que le législateur genevois n'a pas voulu instituer une réparation pleine et entière en recourant à la notion d'indemnité équitable. L'autorité d'indemnisation peut fixer librement le montant de l'indemnité, selon son appréciation et sous la seule réserve de l'interdiction de l'arbitraire, sans qu'il soit absolument nécessaire d'établir avec précision l'étendue du dommage et l'existence d'un lien de causalité avec la détention et la procédure pénale. Le recourant prétend que la pratique actuelle irait dans le sens d'une indemnisation complète, mais cela ne ressort pas du tout de l'arrêt attaqué. Certes, la cour cantonale exige-t-elle du requérant qu'il allègue son dommage de manière précise et détaillée. Il ne s'agit là toutefois, dans le système d'une indemnisation partielle, que d'un élément nécessaire à la prise en compte des circonstances du cas concret, dans le cadre de l'exercice du pouvoir d'appréciation de l'autorité. Cela ne signifie pas pour autant que chaque poste du dommage doit être couvert par une indemnité équivalente. Dès lors, l'argumentation de détail fournie par le recourant tombe à faux.
3.2 Par ailleurs, contrairement à ce que soutient le recourant, sa demande d'indemnité ne précisait pas clairement à quel titre il entendait obtenir le remboursement des dépenses courantes tels que loyer, primes d'assurance et divers frais. Il expliquait avoir « dû payer » ces sommes « malgré l'absence de salaire »; il évoque certes une « perte de gain » à ce propos, mais qualifie ces dépenses de « damnum emergens » (p. 16 de la requête). La cour cantonale pouvait dès lors en déduire, sans arbitraire, que le recourant entendait ainsi obtenir le remboursement de ces dépenses, et non, comme il le prétend maintenant être indemnisé à raison d'une perte de revenus. Le recourant n'ayant pas fourni d'explications complètes sur l'ensemble de ses revenus, alors que la charge de l'allégation et de la preuve lui incombait, il ne saurait reprocher à la cour cantonale de s'être fondée sur ses propres déclarations ainsi que sur les pièces figurant au dossier. Le grief doit, lui aussi, être écarté en tant qu'il est recevable.
3.3 S'agissant des intérêts moratoires, le recourant se borne à évoquer certaines décisions allouant des intérêts. Il ne démontre pas que l'autorité intimée aurait rompu avec une pratique constante, commettant notamment une inégalité de traitement. Il ne prétend pas non plus que la cour cantonale aurait commis un déni de justice formel en omettant de statuer sur ses conclusions. Quoi qu'il en soit, ne pouvant prétendre à une indemnisation complète sur le principal, le recourant ne saurait qualifier d'arbitraire le refus d'allouer des intérêts.
3.3 S'agissant des intérêts moratoires, le recourant se borne à évoquer certaines décisions allouant des intérêts. Il ne démontre pas que l'autorité intimée aurait rompu avec une pratique constante, commettant notamment une inégalité de traitement. Il ne prétend pas non plus que la cour cantonale aurait commis un déni de justice formel en omettant de statuer sur ses conclusions. Quoi qu'il en soit, ne pouvant prétendre à une indemnisation complète sur le principal, le recourant ne saurait qualifier d'arbitraire le refus d'allouer des intérêts.
4. Sur le vu de ce qui précède, le recours de droit public doit être rejeté, dans la mesure où il est recevable. Cette issue était d'emblée prévisible, le recourant persistant à ignorer le caractère incomplet de l'indemnisation instaurée à l'art. 379 CPP/GE. Dès lors, l'assistance judiciaire doit être refusée, sans qu'il y ait lieu d'instruire sur la question de l'indigence. Un émolument judiciaire est mis à la charge du recourant qui succombe, conformément à l'art. 156 al. 1 OJ.

Par ces motifs, le Tribunal fédéral prononce:
1. Le recours est rejeté dans la mesure où il est recevable.
1. Le recours est rejeté dans la mesure où il est recevable.
2. La demande d'assistance judiciaire est rejetée.
2. La demande d'assistance judiciaire est rejetée.
3. Un émolument judiciaire de 1000 fr. est mis à la charge du recourant.
3. Un émolument judiciaire de 1000 fr. est mis à la charge du recourant.
4. Le présent arrêt est communiqué en copie au mandataire du recourant, au Procureur général et à la Chambre pénale de la Cour de justice du canton de Genève.
Lausanne, le 15 février 2002
Au nom de la Ire Cour de droit public
du Tribunal fédéral suisse
Le Président: Le Greffier: